/*
 * Modern Forum 1.1.9
 * A restrained, reversible visual layer for XenForo 1.5.
 */

.oafModern {
    --oaf-navy: #0b334d;
    --oaf-blue: #12679a;
    --oaf-blue-dark: #0c537d;
    --oaf-orange: #d87818;
    --oaf-gold: #eeb52c;
    --oaf-red: #d84a3c;
    --oaf-ink: #18242d;
    --oaf-muted: #42545f;
    --oaf-line: #dce5ea;
    --oaf-soft: #f5f8fa;
    --oaf-warm: #fbf5ea;
    --oaf-white: #ffffff;
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    color: var(--oaf-ink);
}

.oafModern body {
    background: #242729;
    color: var(--oaf-ink);
    font-family: inherit;
}

/* Optional XenForo-style desktop canvas. Outer surface colors remain fluid. */
@media (min-width: 801px) {
    .oafModern.oafModernCentered .pageWidth {
        box-sizing: border-box;
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: var(--oaf-modern-page-max, 1600px) !important;
        width: calc(100% - 32px) !important;
    }
}

.oafModern a {
    color: var(--oaf-blue);
}

.oafModern a:hover,
.oafModern a:focus {
    color: var(--oaf-blue-dark);
}

.oafModern a:focus-visible,
.oafModern button:focus-visible,
.oafModern input:focus-visible,
.oafModern select:focus-visible,
.oafModern textarea:focus-visible {
    outline: 3px solid rgba(238, 181, 44, .7);
    outline-offset: 2px;
}

/* Masthead and navigation: retain the existing structure, remove the dated bevels. */
.oafModern #header,
.oafModern #logoBlock,
.oafModern #logoBlock .pageContent {
    background: #252729 !important;
    background-image: none !important;
    box-shadow: none !important;
}

.oafModern:where(:not(.oafModernStandard)) #logoBlock,
.oafModern:where(:not(.oafModernStandard)) #logoBlock .pageContent {
    height: 78px !important;
    min-height: 78px;
}

.oafModern:where(:not(.oafModernStandard)) #logo {
    height: 78px !important;
    line-height: 78px !important;
}

.oafModern:where(:not(.oafModernStandard)) #logo img {
    width: auto;
    max-height: 64px;
}

.oafModern .navTabs {
    background: var(--oaf-navy) !important;
    background-image: none !important;
    border: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, .18) !important;
    box-shadow: none !important;
}

.oafModern .navTabs .navLink,
.oafModern .navTabs .SplitCtrl {
    text-shadow: none !important;
}

.oafModern .navTabs .navTab.PopupClosed:hover,
.oafModern .navTabs .navTab.selected .navLink,
.oafModern .navTabs .navTab.selected .SplitCtrl {
    background: #edf5f9 !important;
    background-image: none !important;
    color: var(--oaf-navy) !important;
}

.oafModern .navTabs .navTab.PopupClosed:hover .navLink,
.oafModern .navTabs .navTab.PopupClosed:hover .SplitCtrl,
.oafModern .navTabs .navTab.PopupOpen .navLink,
.oafModern .navTabs .navTab.PopupOpen .SplitCtrl {
    color: var(--oaf-navy) !important;
    text-shadow: none !important;
}

.oafModern .navTabs .navTab.PopupClosed:hover .arrowWidget,
.oafModern .navTabs .navTab.PopupOpen .arrowWidget {
    border-top-color: var(--oaf-navy) !important;
}

.oafModern .navTabs .navTab.selected .tabLinks,
.oafModern .navTabs .navTab.selected .tabLinks .primaryContent {
    background: #e7f1f6 !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: inset 0 -1px 0 #cbdde7 !important;
}

.oafModern .navTabs .navTab.selected .tabLinks a {
    color: var(--oaf-blue-dark) !important;
    text-shadow: none !important;
}

/*
 * XenForo 1 initially paints these member utilities in the Forums submenu,
 * then moves them into its overflow menu. Keep them overflow-only from the
 * first paint so the content destinations never slide when ResponsiveNav
 * completes. XenForo clones the hidden links into the separate ... popup.
 */
.oafModernNavSearch.LoggedIn .navTabs .navTab.forums.selected .forumsTabLinks li:has(> a[href*="forums/-/mark-read"]),
.oafModernNavSearch.LoggedIn .navTabs .navTab.forums.selected .forumsTabLinks li:has(> a[href*="search/?type=post"]),
.oafModernNavSearch.LoggedIn .navTabs .navTab.forums.selected .forumsTabLinks li:has(> a[href*="watched/forums"]),
.oafModernNavSearch.LoggedIn .navTabs .navTab.forums.selected .forumsTabLinks li:has(> a[href*="watched/threads"]),
.oafModernNavSearch.LoggedIn .navTabs .navTab.forums.selected .forumsTabLinks li.oafSubNavUtility {
    display: none !important;
}

.oafModernNavSearch.LoggedIn .navTabs .navTab.forums.selected .forumsTabLinks li.oafStableSubNavOverflow {
    display: list-item !important;
}

/*
 * XenForo's stock row reserves 275px for #searchBar. Search now lives in the
 * visitor navigation, so that reservation only causes avoidable wrapping and
 * a late ResponsiveNav rewrite. Give every selected submenu its real width.
 */
.oafModernNavSearch #navigation.withSearch .navTabs .navTab.selected .blockLinksList {
    margin-right: 8px !important;
}

/* Main canvas and common XenForo surfaces. */
.oafModern #content .pageContent,
.oafModern .mainContent,
.oafModern .mainContainer {
    background-color: var(--oaf-white);
}

.oafModern .sectionMain,
.oafModern .primaryContent,
.oafModern .secondaryContent {
    background-image: none !important;
    box-shadow: none !important;
}

.oafModern .sectionMain {
    border-color: var(--oaf-line) !important;
}

/*
 * XenForo and several sidebar add-ons use their own pale gray utility text.
 * Keep dates and metadata secondary without letting normal-size copy fall
 * below comfortable reading contrast on OAF's white and soft-blue surfaces.
 */
.oafModern .muted,
.oafModern .faint,
.oafModern .DateTime,
.oafModern .pairsInline dt,
.oafModern .pairsJustified dt,
.oafModern .meta {
    color: var(--oaf-muted) !important;
}

/*
 * Member cards use XenForo's charcoal overlay rather than OAF's light content
 * surfaces. Restore a dedicated high-contrast palette after the global muted
 * treatment above so profile labels and recent-activity text remain legible.
 */
.oafModern .xenOverlay.memberCard .muted,
.oafModern .xenOverlay.memberCard .faint,
.oafModern .xenOverlay.memberCard .DateTime,
.oafModern .xenOverlay.memberCard .pairsInline dt,
.oafModern .xenOverlay.memberCard .pairsRows dt,
.oafModern .xenOverlay.memberCard .pairsJustified dt,
.oafModern .xenOverlay.memberCard .userTitle,
.oafModern .xenOverlay.memberCard .lastActivity {
    color: #b8c3ca !important;
}

.oafModern .xenOverlay.memberCard .pairsInline dd,
.oafModern .xenOverlay.memberCard .pairsRows dd,
.oafModern .xenOverlay.memberCard .pairsJustified dd {
    color: #f4f6f7 !important;
}

.oafModern .xenOverlay.memberCard a,
.oafModern .xenOverlay.memberCard .userLinks a,
.oafModern .xenOverlay.memberCard .userInfo h3 a {
    color: #b9dcf0 !important;
}

.oafModern .xenOverlay.memberCard a:hover,
.oafModern .xenOverlay.memberCard a:focus {
    color: #ffffff !important;
}

.oafModern .button,
.oafModern .callToAction span,
.oafModern a.callToAction {
    background: var(--oaf-white) !important;
    background-image: none !important;
    border-color: #b9cbd5 !important;
    border-radius: 2px !important;
    box-shadow: none !important;
    color: var(--oaf-blue-dark) !important;
    text-shadow: none !important;
}

.oafModern .button.primary,
.oafModern .callToAction.primary span,
.oafModern a.callToAction.primary {
    background: var(--oaf-blue) !important;
    border-color: var(--oaf-blue) !important;
    color: #fff !important;
}

/* Category headings become quiet editorial dividers with an editorial accent. */
.oafModern .nodeList .categoryStrip,
.oafModern .nodeList .categoryStrip .nodeTitle,
.oafModern .nodeList .categoryStrip .nodeDescription,
.oafModern .discussionList .sectionHeaders,
.oafModern .subHeading {
    background: var(--oaf-warm) !important;
    background-image: none !important;
    color: #4a3928 !important;
    text-shadow: none !important;
}

/* Read thread titles retain enough weight and contrast to remain comfortably legible. */
.oafModern .discussionListItem .title > a.PreviewTooltip {
    color: var(--oaf-blue-dark) !important;
}

.oafModern .discussionListItem:not(.unread) .title > a.PreviewTooltip {
    font-weight: 500 !important;
}

.oafModern .nodeList .categoryStrip {
    border: 0 !important;
    border-radius: 0 !important;
    border-left: 4px solid transparent !important;
    border-top: 1px solid #eadbc2 !important;
    border-bottom: 1px solid #eadbc2 !important;
    padding: 11px 12px !important;
}

.oafModern.oafModernCategoryAccents .nodeList .categoryStrip {
    border-left-color: var(--oaf-orange) !important;
}

.oafModern .nodeList .categoryStrip .nodeTitle {
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.oafModern .nodeList .categoryStrip .nodeDescription {
    font-size: 12px !important;
    line-height: 1.45 !important;
    margin-top: 2px;
}

.oafModern .nodeList .categoryStrip .button,
.oafModern .nodeList .categoryStrip a.button {
    background: #fffaf4 !important;
    border-color: var(--oaf-orange) !important;
    color: #874a0d !important;
}

/*
 * Compact category bars align their accent with the Featured Work panel.
 * Use XenForo's native structure as well as the enhancement classes so the
 * final geometry is present in the first render, before JavaScript runs.
 */
.oafModernCompactCategories #content.forum_list .nodeList.sectionMain,
.oafModernCompactCategories #content.forum_list .sectionMain.oafCategorySection {
    padding-top: 0 !important;
}

.oafModernCompactCategories #content.forum_list .nodeList > .category,
.oafModernCompactCategories #content.forum_list .oafCategoryNode {
    margin-bottom: 0 !important;
}

.oafModernCompactCategories #content.forum_list .sectionMain .categoryStrip,
.oafModernCompactCategories #content.forum_list .sectionMain .oafCategoryBar {
    box-sizing: border-box;
    height: auto !important;
    /* Include the section's 10px padding and 1px border so the accent rule
       shares the exact outer edge of Featured Work. */
    margin-left: -11px !important;
    margin-right: -11px !important;
    min-height: 0 !important;
    padding: 10px 20px !important;
    position: relative;
}

.oafModernCompactCategories #content.forum_list .sectionMain .categoryStrip:has(.oafModernCategorySubmit),
.oafModernCompactCategories #content.forum_list .sectionMain .oafCategoryBar--hasAction {
    padding-right: 218px !important;
}

.oafModernCompactCategories #content.forum_list .sectionMain .categoryStrip:not(:has(.nodeDescription)),
.oafModernCompactCategories #content.forum_list .sectionMain .oafCategoryBar--compact {
    padding-bottom: 8px !important;
    padding-top: 8px !important;
}

.oafModernCompactCategories .categoryStrip .categoryText,
.oafModernCompactCategories .categoryStrip .nodeText,
.oafModernCompactCategories .categoryStrip .nodeTitle,
.oafModernCompactCategories .categoryStrip .nodeDescription,
.oafModernCompactCategories .oafCategoryBar .categoryText,
.oafModernCompactCategories .oafCategoryBar .nodeText,
.oafModernCompactCategories .oafCategoryBar .nodeTitle,
.oafModernCompactCategories .oafCategoryBar .nodeDescription {
    height: auto !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

.oafModernCompactCategories .categoryStrip .nodeDescription,
.oafModernCompactCategories .oafCategoryBar .nodeDescription {
    margin-top: 3px !important;
}

.oafModernCompactCategories .categoryStrip .button,
.oafModernCompactCategories .categoryStrip a.button,
.oafModernCompactCategories .categoryStrip .callToAction,
.oafModernCompactCategories .oafCategoryBar .button,
.oafModernCompactCategories .oafCategoryBar a.button,
.oafModernCompactCategories .oafCategoryBar .callToAction {
    margin: 0 !important;
    position: absolute !important;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

/* Forum nodes: retain density, improve rhythm and hierarchy. */
.oafModern .nodeList {
    border-color: var(--oaf-line) !important;
}

.oafModern .nodeList .node,
.oafModern .nodeList .node.level_2,
.oafModern .nodeList .node.level-n {
    background: var(--oaf-white) !important;
    background-image: none !important;
    border-color: var(--oaf-line) !important;
}

.oafModern .nodeList .node:hover {
    background: #fbfdfe !important;
}

.oafModern .node .nodeInfo {
    min-height: 62px;
}

.oafModern .node .nodeText {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
}

.oafModern .node .nodeTitle,
.oafModern .node .nodeTitle a {
    color: #466273 !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
}

.oafModern .node.unread .nodeTitle,
.oafModern .node.unread .nodeTitle a,
.oafModern .node .unread .nodeTitle,
.oafModern .node .unread .nodeTitle a {
    color: #075d8f !important;
    font-weight: 700 !important;
}

.oafModern .node .nodeStats,
.oafModern .node .nodeDescription,
.oafModern .node .subForumList {
    color: var(--oaf-muted) !important;
    line-height: 1.4 !important;
}

.oafModern .node .nodeStats dd,
.oafModern .node .nodeStats .pairsInline dd {
    color: #273640 !important;
}

.oafModern .node .nodeControls {
    opacity: .42;
    transition: opacity .15s ease;
}

/* XenForo themes place the redundant create-thread pencil in different
 * containers. Remove it anywhere inside a forum row; the main forum icon is
 * the only forum-row posting shortcut. */
.oafModern .node a[href*="create-thread"]:not(.oafNodePostLink),
.oafModern .node a[href*="create_thread"]:not(.oafNodePostLink),
.oafModern .node a[href*="post-thread"]:not(.oafNodePostLink),
.oafModern .node a[href*="add-thread"]:not(.oafNodePostLink),
.oafModern .node .nodeControls .oafRedundantPostControl {
    display: none !important;
}

.oafModern .node .nodeIcon .oafNodePostLink {
    border-radius: 50%;
    inset: 2px;
    position: absolute;
    z-index: 3;
}

.oafModern .node .nodeIcon.oafNodeIconPostable {
    cursor: pointer;
}

.oafModern .node .nodeIcon.oafNodeIconPostable:hover .oafNodeGlyph,
.oafModern .node .nodeIcon.oafNodeIconPostable:has(.oafNodePostLink:focus-visible) .oafNodeGlyph {
    background: #e2f2fa;
    border-color: #75b6d8;
    color: #075d8f;
}

/* The posting link covers the full icon hit area. Do not draw a focus box
 * around that invisible rectangle: Chrome can restore pointer focus when a
 * history/BFCache page is shown again. Keyboard focus is rendered on the
 * visible glyph itself, where it is centered and meaningful. */
.oafModern .node .nodeIcon .oafNodePostLink:focus,
.oafModern .node .nodeIcon .oafNodePostLink:focus-visible {
    outline: none !important;
    outline-offset: 0 !important;
}

.oafModern .node .nodeIcon:has(.oafNodePostLink:focus-visible) .oafNodeGlyph {
    box-shadow: 0 0 0 2px #1478ad;
}

.oafModern .node:hover .nodeControls {
    opacity: .85;
}

.oafModern .node .nodeLastPost {
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-left: 1px solid var(--oaf-line) !important;
    box-shadow: none !important;
    color: var(--oaf-muted) !important;
}

.oafModern .node .nodeLastPost .lastThreadTitle,
.oafModern .node .nodeLastPost .lastThreadTitle a {
    color: var(--oaf-blue-dark) !important;
    font-weight: 600;
}

.oafModern .node .nodeIcon,
.oafModern .node .nodeIcon > a {
    background: none !important;
    background-image: none !important;
}

.oafModern .node .nodeIcon {
    align-items: center;
    display: flex;
    height: 42px !important;
    justify-content: center;
    margin-top: 10px !important;
    position: relative;
    width: 46px !important;
}

.oafModern .node .nodeIcon:not(:has(.oafNodeGlyph))::before {
    background-color: #edf3f6;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23587584' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='12' rx='2'/%3E%3Cpath d='M8 17v3l4-3M8 9h8M8 12h5'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 23px 23px;
    border: 1px solid #b6cad4;
    border-radius: 50%;
    box-sizing: border-box;
    content: "";
    display: block;
    height: 38px;
    width: 38px;
}

.oafModern .node .nodeIcon:not(:has(.oafNodeGlyph)) > a {
    inset: 0;
    position: absolute;
}

.oafModern .node.unread .nodeIcon:not(:has(.oafNodeGlyph))::before {
    background-color: #edf3f6;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23587584' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='12' rx='2'/%3E%3Cpath d='M8 17v3l4-3M8 9h8M8 12h5'/%3E%3C/svg%3E");
    border-color: #b6cad4;
    box-shadow: none;
}

.oafModern .node .nodeIcon > a {
    align-items: center;
    display: flex !important;
    height: 42px !important;
    justify-content: center;
    width: 46px !important;
}

.oafModern .oafNodeGlyph {
    align-items: center;
    background: #edf3f6;
    border: 1px solid #b6cad4;
    border-radius: 50%;
    color: #587584;
    display: inline-flex;
    height: 36px;
    justify-content: center;
    position: relative;
    transition: background-color .15s ease, border-color .15s ease, color .15s ease;
    width: 36px;
}

.oafModern .oafNodeGlyph svg {
    display: block;
    height: 23px;
    width: 23px;
}

.oafModern .node.unread .oafNodeGlyph,
.oafModern .node .unread .oafNodeGlyph {
    background: #edf3f6;
    border-color: #b6cad4;
    box-shadow: none;
    color: #587584;
}

/* Featured Work: an editorial lead item, not another pale-blue utility box. */
.oafModern #content.forum_list .mainContent > h1:first-of-type,
.oafModern #content.forum_list .ctaFtTitleForumList,
.oafModern .oafFeaturedHeading {
    color: var(--oaf-ink) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: -.01em;
    margin-bottom: 8px !important;
}

.oafModern #content.forum_list .mainContent > h1:first-of-type + .sectionMain,
.oafModern #content.forum_list .ctaFtBlock,
.oafModern .oafFeaturedWork,
.oafModern .featuredWork,
.oafModern .featuredThread {
    background: #f7fafb !important;
    background-image: none !important;
    border: 1px solid var(--oaf-line) !important;
    border-radius: 0 !important;
    border-left: 4px solid transparent !important;
    box-shadow: none !important;
}

/* CTA Featured Threads wraps the real block in a padded sectionMain. Keep
 * that structural wrapper, but let the block itself own the only visible
 * border and accent so no oversized frame or empty lower gutter remains. */
.oafModern.oafModernFeaturedWorkAccent #content.forum_list .ctaFtBlock {
    border-left-color: var(--oaf-blue) !important;
}

.oafModern #content.forum_list .sectionMain.ctaFtContainer {
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.oafModern #content.forum_list .mainContent > h1:first-of-type + .sectionMain img,
.oafModern #content.forum_list .ctaFtBlock img,
.oafModern .oafFeaturedWork img,
.oafModern .featuredWork img,
.oafModern .featuredThread img {
    border: 1px solid #cad8df !important;
    box-shadow: none !important;
}

/* Sidebar: primary discovery modules lead; utility modules recede. */
.oafModernSidebar .sidebar .section {
    margin-bottom: 14px !important;
}

.oafModernSidebar .sidebar .section .secondaryContent,
.oafModernSidebar .sidebar .section .primaryContent {
    background: #f7fafb !important;
    background-image: none !important;
    border: 1px solid #e2e9ed !important;
    box-shadow: none !important;
    color: var(--oaf-muted) !important;
}

/* Optional, deliberately uniform sidebar accent. 1.0.31 removed the old
 * widget-specific bars; this switch restores the visual device consistently. */
.oafModernSidebar.oafModernSidebarAccents .sidebar .section .secondaryContent,
.oafModernSidebar.oafModernSidebarAccents .sidebar .section .primaryContent {
    border-left: 4px solid var(--oaf-blue) !important;
}

.oafModernSidebar .sidebar .section h3,
.oafModernSidebar .sidebar .section .heading,
.oafModernSidebar .sidebar .section .secondaryContent h3 {
    background: transparent !important;
    border-bottom: 1px solid #d9e4e9 !important;
    color: var(--oaf-blue-dark) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .01em;
    padding-bottom: 7px !important;
    text-transform: none;
}

/*
 * Some Widget Framework renderers wrap the title in a link while XenForo's
 * board-statistics title is plain text. Make both forms inherit the same
 * heading treatment instead of allowing the linked headings to fall back to
 * the theme's lighter, normal-weight link style.
 */
.oafModernSidebar .sidebar .section h3 a,
.oafModernSidebar .sidebar .section .heading a,
.oafModernSidebar .sidebar .section .secondaryContent h3 a {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
}

.oafModernSidebar .sidebar .muted,
.oafModernSidebar .sidebar .faint,
.oafModernSidebar .sidebar .minorHeading,
.oafModernSidebar .sidebar .DateTime,
.oafModernSidebar .sidebar .pairsInline dt,
.oafModernSidebar .sidebar .pairsJustified dt,
.oafModernSidebar .sidebar .meta,
.oafModernSidebar .sidebar .footnote,
.oafModernSidebar .sidebar .userTitle,
.oafModernSidebar .sidebar .resourceDetails,
.oafModernSidebar .sidebar .messageMeta,
.oafModernSidebar .sidebar .additionalRow {
    color: var(--oaf-muted) !important;
    line-height: 1.35;
}

/* Protect the smallest add-on metadata from dropping below a readable size. */
.oafModernSidebar .sidebar .minorHeading,
.oafModernSidebar .sidebar .DateTime,
.oafModernSidebar .sidebar .pairsInline dt,
.oafModernSidebar .sidebar .pairsJustified dt,
.oafModernSidebar .sidebar .footnote,
.oafModernSidebar .sidebar .userTitle,
.oafModernSidebar .sidebar .resourceDetails,
.oafModernSidebar .sidebar .messageMeta,
.oafModernSidebar .sidebar .additionalRow {
    font-size: max(11px, 100%) !important;
}


/*
 * Forum-home account treatment and modern quick actions. The action row is
 * emitted by XenForo's forum_list template, so it is present at first paint.
 */
.oafModernQuickActions #content.forum_list .sidebar .visitorPanel,
.oafModernQuickActions #content.forum_list .sidebar #visitorPanel,
.oafModernQuickActions #content.forum_list .sidebar .oafVisitorPanelHidden {
    display: none !important;
}

.oafModern .oafNavAvatar {
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 50%;
    box-sizing: border-box;
    display: inline-block;
    flex: 0 0 24px;
    height: 24px;
    margin: -4px 7px -4px 0;
    object-fit: cover;
    vertical-align: middle;
    width: 24px;
}

/* Reserve the forum-home account-avatar width before JavaScript clones it. */
.oafModernQuickActions .navTabs .navTab.account .navLink:not(:has(.oafNavAvatar))::before {
    content: "";
    display: inline-block;
    flex: 0 0 24px;
    height: 24px;
    margin: -4px 7px -4px 0;
    width: 24px;
}

.oafModern .navTabs .navTab.account {
    max-width: none !important;
    width: auto !important;
}

.oafModern .navTabs .navTab.account .navLink {
    align-items: center;
    display: flex !important;
    max-width: none !important;
    overflow: visible !important;
    width: auto !important;
}

.oafModern .navTabs .oafNavUsername {
    color: inherit !important;
    display: inline-block !important;
    max-width: 150px;
    opacity: 1 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    visibility: visible !important;
    white-space: nowrap;
}

/* Compact visitor utilities preserve their native links and unread counters. */
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="conversations"]),
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="/inbox"]),
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="account/alerts"]),
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="/alerts"]),
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="bookmark"]) {
    box-sizing: border-box;
    min-width: 40px !important;
    width: 40px !important;
}

.oafModernCompactNavIcons .navTabs .visitorTabs a.navLink[href*="conversations"],
.oafModernCompactNavIcons .navTabs .visitorTabs a.navLink[href*="/inbox"],
.oafModernCompactNavIcons .navTabs .visitorTabs a.navLink[href*="account/alerts"],
.oafModernCompactNavIcons .navTabs .visitorTabs a.navLink[href*="/alerts"],
.oafModernCompactNavIcons .navTabs .visitorTabs a.navLink[href*="bookmark"] {
    align-items: center;
    box-sizing: border-box;
    display: flex !important;
    font-size: 0 !important;
    height: 100%;
    justify-content: center;
    min-width: 40px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 40px !important;
}

.oafModernCompactNavIcons .navTabs .oafNavUtility .oafNavUtilityLink {
    align-items: center;
    display: flex !important;
    font-size: 0 !important;
    justify-content: center;
    box-sizing: border-box;
    height: 100%;
    min-width: 40px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 40px !important;
}

.oafModernCompactNavIcons .navTabs .oafNavUtility {
    box-sizing: border-box;
    min-width: 40px !important;
    width: 40px !important;
}

.oafModernCompactNavIcons .oafNavUtilityIcon,
.oafModernNavSearch .oafSearchIcon {
    color: inherit;
    display: inline-block;
    flex: 0 0 auto;
    height: 20px;
    line-height: 1;
    width: 20px;
}

.oafModernCompactNavIcons .oafNavUtilityIcon svg,
.oafModernNavSearch .oafSearchIcon svg {
    display: block;
    height: 20px;
    width: 20px;
}

.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="conversations"]) .itemCount,
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="/inbox"]) .itemCount,
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="account/alerts"]) .itemCount,
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="/alerts"]) .itemCount,
.oafModernCompactNavIcons .navTabs .visitorTabs .navTab:has(> a.navLink[href*="bookmark"]) .itemCount,
.oafModernCompactNavIcons .navTabs .oafNavUtility .itemCount {
    font-size: 10px !important;
}

/* Move XenForo's own search form into a predictable top-navigation popover. */
.oafModernNavSearch #searchBar {
    display: none !important;
}

.oafModernNavSearch .navTabs .visitorTabs:not(:has(.oafSearchTab)) {
    box-sizing: border-box;
    padding-right: 100px !important;
}

.oafModernNavSearch .navTabs .oafSearchTab {
    box-sizing: border-box;
    height: 25px !important;
    min-width: 100px;
    position: relative;
    width: 100px;
}

.oafModernNavSearch .navTabs .oafSearchToggle {
    align-items: center;
    appearance: none;
    background: transparent !important;
    border: 0 !important;
    box-sizing: border-box;
    color: #dbeaf2 !important;
    cursor: pointer;
    display: flex !important;
    font: inherit;
    gap: 8px;
    height: 25px !important;
    line-height: inherit;
    margin: 0;
    padding-left: 15px !important;
    padding-right: 15px !important;
    text-shadow: none !important;
    width: 100%;
}

.oafModernNavSearch .navTabs .oafSearchToggle:hover,
.oafModernNavSearch .navTabs .oafSearchToggle:focus,
.oafModernNavSearch .navTabs .oafSearchTab.is-open .oafSearchToggle {
    background: #17658f !important;
    color: #fff !important;
    outline: none;
}

.oafModernNavSearch #searchBar.oafSearchPopover {
    background: #fff !important;
    border: 1px solid #b9ced9 !important;
    border-radius: 0 0 4px 4px;
    box-shadow: 0 9px 24px rgba(8, 36, 54, .24) !important;
    box-sizing: border-box;
    display: none !important;
    left: auto !important;
    margin: 0 !important;
    max-width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    padding: 10px !important;
    position: absolute !important;
    right: 0 !important;
    top: 100% !important;
    width: 390px !important;
    z-index: 10000 !important;
}

.oafModernNavSearch .oafSearchTab.is-open #searchBar.oafSearchPopover {
    display: block !important;
}

.oafModernNavSearch #searchBar.oafSearchPopover #QuickSearchPlaceholder {
    display: none !important;
}

.oafModernNavSearch #searchBar.oafSearchPopover #QuickSearch {
    background: #edf5f9 !important;
    border: 1px solid #c9dce6 !important;
    border-radius: 3px;
    box-sizing: border-box;
    display: block !important;
    left: auto !important;
    margin: 0 !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
    min-width: 0 !important;
    padding: 12px !important;
    width: 100% !important;
}

.oafModernNavSearch #searchBar.oafSearchPopover form,
.oafModernNavSearch #searchBar.oafSearchPopover .primaryControls,
.oafModernNavSearch #searchBar.oafSearchPopover .secondaryControls,
.oafModernNavSearch #searchBar.oafSearchPopover .controlsWrapper {
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box;
    float: none !important;
    left: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    position: static !important;
    right: auto !important;
    width: 100% !important;
}

.oafModernNavSearch #searchBar.oafSearchPopover .secondaryControls {
    border-top: 1px solid #c9dce6 !important;
    margin-top: 10px !important;
    padding-top: 10px !important;
}

.oafModernNavSearch #searchBar.oafSearchPopover .buttonContainer,
.oafModernNavSearch #searchBar.oafSearchPopover .submitUnit {
    box-sizing: border-box;
    display: flex;
    gap: 6px;
    margin: 10px 0 0 !important;
    width: 100% !important;
}

.oafModernNavSearch #searchBar.oafSearchPopover #QuickSearchQuery,
.oafModernNavSearch #searchBar.oafSearchPopover input.textCtrl {
    box-sizing: border-box;
    max-width: none !important;
    width: 100% !important;
}

.oafModernNavSearch #searchBar.oafSearchPopover label,
.oafModernNavSearch #searchBar.oafSearchPopover .explain {
    color: var(--oaf-ink) !important;
    text-shadow: none !important;
}

/* Keep contextual controls readable anywhere the modern link color is used. */
.oafModern .xenTooltip,
.oafModern #QuoteSelected,
.oafModern .tooltip--selectToQuote {
    background: var(--oaf-blue-dark) !important;
    background-image: none !important;
    border-color: var(--oaf-navy) !important;
    box-shadow: 0 3px 10px rgba(8, 36, 54, .24) !important;
    color: #fff !important;
    text-shadow: none !important;
}

.oafModern .xenTooltip a,
.oafModern .xenTooltip span,
.oafModern #QuoteSelected,
.oafModern #QuoteSelected a,
.oafModern #QuoteSelected span,
.oafModern .tooltip--selectToQuote,
.oafModern .tooltip--selectToQuote a,
.oafModern .tooltip--selectToQuote span {
    color: #fff !important;
    text-shadow: none !important;
}

.oafModern #QuoteSelected .arrow,
.oafModern .tooltip--selectToQuote .tooltip-arrow {
    border-bottom-color: var(--oaf-blue-dark) !important;
    color: var(--oaf-blue-dark) !important;
}

.oafModern .oafQuickActions {
    display: flex;
    gap: 8px;
    margin: 8px 0 10px;
    width: 100%;
}

/*
 * XenForo serializes the sidebar after the long forum-node list. On desktop,
 * render the real action row earlier in that source and position it over the
 * reserved sidebar column. The sidebar itself creates the reservation as soon
 * as its opening tag is parsed, so no late JavaScript insertion can move its
 * widgets. If a customized template omits the early row, the compatibility
 * fallback replaces this reservation with a real sidebar row in one paint.
 */
@media (min-width: 801px) {
    /*
     * Align the visitor controls with the navigation's outer content edge
     * without making visitorTabs a positioning container. XenForo places the
     * selected Inbox/Conversations tabLinks inside this list; position:relative
     * would constrain that submenu to the compact visitor-control width and
     * collapse every destination into its overflow menu.
     *
     * The equal and opposite margins keep XenForo's measured outer width
     * unchanged while moving the rendered group 25px to the right.
     */
    .oafModern:where(:not(.oafModernStandard)) .navTabs .visitorTabs {
        left: auto;
        margin-left: 25px;
        margin-right: -25px;
        position: static;
    }

    .oafModernQuickActions #content.forum_list .pageContent {
        position: relative;
    }

    .oafModernQuickActions #content.forum_list .oafQuickActions--early {
        margin: 0;
        position: absolute;
        right: 20px;
        top: 18px;
        width: 250px;
        z-index: 2;
    }

    .oafModernQuickActions #content.forum_list .sidebar::before {
        content: "";
        display: block;
        height: 42px;
        margin: 8px 0 10px;
        visibility: hidden;
    }

    .oafModernQuickActions.oafQuickActionsFallback #content.forum_list .sidebar::before {
        display: none;
    }
}

.oafModern .oafQuickActions .oafQuickAction {
    align-items: center;
    display: flex !important;
    flex: 1 1 50%;
    font-size: 14px !important;
    font-weight: 650 !important;
    justify-content: center;
    line-height: 1.2 !important;
    min-height: 42px;
    padding: 8px 10px !important;
    text-align: center;
}

.oafModern .oafQuickActions .oafQuickAction--newPosts {
    background: #f7fafb !important;
    border-color: #b8cfda !important;
    color: var(--oaf-blue-dark) !important;
}

.oafModern .oafQuickActions .oafQuickAction--submit {
    background: var(--oaf-blue) !important;
    border-color: var(--oaf-blue) !important;
    color: #fff !important;
}

.oafModern .oafQuickActions .oafQuickAction:hover,
.oafModern .oafQuickActions .oafQuickAction:focus {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28) !important;
    filter: brightness(.96);
}

/* Member-facing Forum Guide. */
.oafModern .oafForumGuide {
    max-width: 900px;
}

.oafModern .oafForumGuideIntro {
    color: var(--oaf-muted);
    font-size: 15px;
    line-height: 1.55;
    margin: 0 0 16px;
}

.oafModern .oafForumGuideSection {
    padding: 18px 20px !important;
}

.oafModern .oafForumGuideSection h2 {
    color: var(--oaf-blue-dark);
    font-size: 18px;
    margin: 0 0 8px;
}

.oafModern .oafForumGuideSection p,
.oafModern .oafForumGuideSection li {
    line-height: 1.55;
}

.oafModern .oafForumGuideSection ul {
    margin-bottom: 0;
    margin-top: 8px;
    padding-left: 22px;
}

.oafModern .oafForumGuideToc {
    background: #f2f8fb;
    border: 1px solid var(--oaf-line);
    border-left: 4px solid var(--oaf-blue);
    margin: 0 0 16px;
    padding: 14px 18px;
}

.oafModern .oafForumGuideToc h2 {
    color: var(--oaf-blue-dark);
    font-size: 16px;
    margin: 0 0 8px;
}

.oafModern .oafForumGuideToc ul {
    column-count: 2;
    column-gap: 32px;
    margin: 0;
    padding-left: 20px;
}

.oafModern .oafForumGuideToc li {
    break-inside: avoid;
    line-height: 1.55;
}

.oafModern .oafForumGuideCallout {
    background: #fffaf4;
    border-left: 4px solid var(--oaf-orange);
    margin: 12px 0;
    padding: 10px 12px;
}

.oafModern .oafForumGuideActions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0 0;
}

.oafModern .oafForumGuideActions a {
    background: #f7fafb;
    border: 1px solid #b9cbd5;
    border-radius: 2px;
    display: inline-block;
    font-weight: 600;
    padding: 7px 10px;
}

.oafModern .oafForumGuideGlossary dt {
    color: var(--oaf-blue-dark);
    font-weight: 700;
    margin-top: 9px;
}

.oafModern .oafForumGuideGlossary dd {
    margin-left: 0;
}

.oafModern .oafForumGuideTop {
    display: block;
    font-size: 11px;
    margin-top: 12px;
    text-align: right;
}

/* Category and forum-view posting actions should read as primary actions. */
.oafModern .oafCategoryBar .oafModernCategorySubmit > span {
    background: #fffaf4 !important;
    border-color: var(--oaf-orange) !important;
    color: #874a0d !important;
    font-weight: 650 !important;
    text-shadow: none !important;
}

.oafModern .oafCategoryBar .oafModernCategorySubmit:hover > span,
.oafModern .oafCategoryBar .oafModernCategorySubmit:focus > span {
    background: #f7ead8 !important;
    border-color: #b85f0b !important;
    color: #6f3a0c !important;
}

.oafModernEmphasizePostThread #content.forum_view a.callToAction,
.oafModernEmphasizePostThread #content.forum_view a.callToAction > span {
    background: var(--oaf-blue) !important;
    background-image: none !important;
    border-color: var(--oaf-blue-dark) !important;
    color: #fff !important;
    text-shadow: none !important;
}

.oafModernEmphasizePostThread #content.forum_view a.callToAction {
    border-radius: 3px !important;
    box-shadow: 0 1px 2px rgba(11, 51, 77, .18) !important;
    min-width: 152px;
    text-align: center;
}

.oafModernEmphasizePostThread #content.forum_view a.callToAction > span {
    font-weight: 700 !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

.oafModernEmphasizePostThread #content.forum_view a.callToAction:hover,
.oafModernEmphasizePostThread #content.forum_view a.callToAction:focus,
.oafModernEmphasizePostThread #content.forum_view a.callToAction:hover > span,
.oafModernEmphasizePostThread #content.forum_view a.callToAction:focus > span {
    background: var(--oaf-blue-dark) !important;
    border-color: var(--oaf-navy) !important;
    color: #fff !important;
}

/* Self-contained, permission-aware Submit Work chooser. */
.oafModern .oafSubmitWorkChooser {
    background: #fff;
    border: 0;
    border-radius: 0 0 4px 4px;
    box-sizing: border-box;
    color: var(--oaf-ink);
    margin: 0;
    max-height: 76vh;
    max-width: 94vw;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    width: 780px;
}

.oafModern .oafSubmitWorkGroup {
    display: block;
    margin: 0;
    padding: 0;
}

.oafModern .oafSubmitWorkCategory {
    background: #edf5f9;
    border-bottom: 1px solid #c8dce6;
    display: block;
    padding: 10px 15px 9px;
}

.oafModern .oafSubmitWorkCategory h3 {
    color: var(--oaf-blue);
    font-size: 17px;
    font-weight: 650;
    margin: 0;
}

.oafModern .oafSubmitWorkCategory .description,
.oafModern .oafSubmitWorkForum .description {
    color: var(--oaf-muted) !important;
    display: block;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.35;
    margin-top: 2px;
}

.oafModern .xenOverlay .oafSubmitWorkChooser a.oafSubmitWorkForum,
.oafModern .oafSubmitWorkChooser a.oafSubmitWorkForum {
    background: #fff;
    border-bottom: 1px solid var(--oaf-line);
    color: var(--oaf-blue) !important;
    display: block;
    min-height: 38px;
    padding: 9px 92px 8px 15px;
    position: relative;
    text-decoration: none !important;
}

.oafModern .oafSubmitWorkChooser a.oafSubmitWorkForum.noCount {
    padding-right: 15px;
}

.oafModern .xenOverlay .oafSubmitWorkChooser a.oafSubmitWorkForum:hover,
.oafModern .xenOverlay .oafSubmitWorkChooser a.oafSubmitWorkForum:focus,
.oafModern .oafSubmitWorkChooser a.oafSubmitWorkForum:hover,
.oafModern .oafSubmitWorkChooser a.oafSubmitWorkForum:focus {
    background: #f1f7fa;
    color: var(--oaf-blue-dark) !important;
}

.oafModern .oafSubmitWorkForumText,
.oafModern .oafSubmitWorkForumText > strong {
    color: inherit !important;
    display: block;
}

.oafModern .oafSubmitWorkForumText > strong {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
}

.oafModern .oafSubmitWorkCount {
    color: var(--oaf-muted) !important;
    position: absolute;
    right: 15px;
    text-align: right;
    top: 9px;
    width: 62px;
}

.oafModern .oafSubmitWorkCount span,
.oafModern .oafSubmitWorkCount strong {
    display: block;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.3;
}

.oafModern .oafSubmitWorkCount strong {
    color: var(--oaf-ink) !important;
    font-size: 13px;
}

.oafModern .oafSubmitWorkEmpty {
    color: var(--oaf-muted);
    padding: 22px 18px;
    text-align: center;
}

.oafModernSidebar .sidebar .avatar img,
.oafModernSidebar .sidebar .avatar .img,
.oafModern .avatar img,
.oafModern .avatar .img {
    box-shadow: none !important;
}

/* Search, fields, and footer. */
.oafModern .textCtrl,
.oafModern input.textCtrl,
.oafModern textarea.textCtrl,
.oafModern select.textCtrl {
    background: #fff !important;
    border-color: #cbd8df !important;
    border-radius: 2px !important;
    box-shadow: none !important;
}

.oafModern #searchBar .textCtrl {
    border-color: #d5dfe4 !important;
}

.oafModern .footer,
.oafModern .footerLegal {
    background: var(--oaf-navy) !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.oafModern .footerLegal {
    background: #252729 !important;
}

.oafModern .footer a,
.oafModern .footerLegal a {
    color: #dbeaf2 !important;
    text-shadow: none !important;
}

.oafModern .footer a:hover,
.oafModern .footer a:focus,
.oafModern .footerLegal a:hover,
.oafModern .footerLegal a:focus {
    color: #fff !important;
    text-decoration: underline;
}

@media (max-width: 800px) {
    .oafModern .oafForumGuideToc ul {
        column-count: 1;
    }

    .oafModern .oafForumGuideSection {
        padding: 14px !important;
    }

    .oafModern:where(:not(.oafModernStandard)) #logoBlock,
    .oafModern:where(:not(.oafModernStandard)) #logoBlock .pageContent {
        height: 66px !important;
        min-height: 66px;
    }

    .oafModern:where(:not(.oafModernStandard)) #logo {
        height: 66px !important;
        line-height: 66px !important;
    }

    .oafModern:where(:not(.oafModernStandard)) #logo img {
        max-height: 54px;
    }

    .oafModern .node .nodeText {
        margin-left: 57px !important;
    }

    .oafModern .node .nodeIcon,
    .oafModern .node .nodeIcon > a {
        width: 40px !important;
    }

    .oafModern .oafNodeGlyph {
        height: 32px;
        width: 32px;
    }

    .oafModern .node .nodeIcon:not(:has(.oafNodeGlyph))::before {
        background-size: 20px 20px;
        height: 34px;
        width: 34px;
    }

    .oafModern .oafNodeGlyph svg {
        height: 20px;
        width: 20px;
    }

    .oafModernCompactCategories #content.forum_list .sectionMain .categoryStrip,
    .oafModernCompactCategories #content.forum_list .sectionMain .oafCategoryBar,
    .oafModernCompactCategories #content.forum_list .sectionMain .oafCategoryBar--hasAction {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 10px 12px !important;
    }

    .oafModernCompactCategories .categoryStrip .button,
    .oafModernCompactCategories .categoryStrip a.button,
    .oafModernCompactCategories .categoryStrip .callToAction,
    .oafModernCompactCategories .oafCategoryBar .button,
    .oafModernCompactCategories .oafCategoryBar a.button,
    .oafModernCompactCategories .oafCategoryBar .callToAction {
        display: inline-block !important;
        margin-top: 8px !important;
        position: static !important;
        transform: none;
    }

    .oafModern .oafSubmitWorkChooser {
        max-height: 88vh;
        width: 94vw;
    }

    .oafModern .oafSubmitWorkCategory {
        padding-left: 12px;
        padding-right: 12px;
    }

    .oafModern .oafSubmitWorkChooser a.oafSubmitWorkForum {
        padding-left: 12px;
        padding-right: 74px;
    }

    .oafModern .oafSubmitWorkCount {
        right: 12px;
        width: 52px;
    }

    .oafModern .navTabs .oafNavUsername,
    .oafModernNavSearch .oafSearchLabel {
        display: none !important;
    }

    .oafModernNavSearch .navTabs .oafSearchTab {
        min-width: 40px;
        width: 40px;
    }

    .oafModernNavSearch #searchBar.oafSearchPopover {
        right: 0 !important;
        width: calc(100vw - 16px) !important;
    }

    .oafModernNavSearch .navTabs .visitorTabs:not(:has(.oafSearchTab)) {
        padding-right: 40px !important;
    }
}


/* Purpose-built phone layout ------------------------------------------------
 * These rules intentionally change geometry below 600px instead of merely
 * shrinking the desktop composition. */
@media (max-width: 600px) {
    /* Center the native XenForo masthead when the standalone presentation is
     * using the customized header geometry. */
    .oafModern:where(:not(.oafModernStandard)) #logoBlock .pageContent {
        align-items: center;
        display: flex;
        justify-content: center;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .oafModern:where(:not(.oafModernStandard)) #logo {
        align-items: center;
        display: flex !important;
        float: none !important;
        justify-content: center;
        margin: 0 auto !important;
        padding: 0 !important;
        text-align: center;
        width: 100% !important;
    }

    .oafModern:where(:not(.oafModernStandard)) #logo img {
        display: block;
        margin: 0 auto !important;
        max-height: 48px !important;
        max-width: 72vw !important;
        object-fit: contain;
        object-position: center center;
        width: auto !important;
    }

    /* CTA Featured Threads places its content directly beside the panel's
     * accent edge on narrow screens. Give the content its own breathing room
     * without moving the accent or creating a second frame. */
    .oafModern #content.forum_list .ctaFtBlock,
    .oafModern #content.forum_list .oafFeaturedWork,
    .oafModern #content.forum_list .featuredWork,
    .oafModern #content.forum_list .featuredThread {
        box-sizing: border-box;
        padding-left: 12px !important;
        padding-right: 10px !important;
    }

    /* Keep long featured excerpts from consuming most of the first screen. */
    .oafModern #content.forum_list .ctaFtBlock .meta,
    .oafModern #content.forum_list .oafFeaturedWork .meta,
    .oafModern #content.forum_list .featuredWork .meta,
    .oafModern #content.forum_list .featuredThread .meta {
        line-height: 1.45 !important;
        margin-top: 4px !important;
        padding-right: 4px;
    }

    .oafModern #content.forum_list .ctaFtBlock .messageText,
    .oafModern #content.forum_list .ctaFtBlock .excerpt,
    .oafModern #content.forum_list .ctaFtBlock .snippet,
    .oafModern #content.forum_list .oafFeaturedWork .messageText,
    .oafModern #content.forum_list .featuredWork .messageText,
    .oafModern #content.forum_list .featuredThread .messageText {
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        display: -webkit-box;
        overflow: hidden;
    }

    /* Mobile sectionMain still has 10px inner padding plus a 1px border. The
     * previous mobile reset put the category heading inside that padding.
     * Restore the same full-bleed alignment used on desktop. */
    .oafModernCompactCategories #content.forum_list .sectionMain .categoryStrip,
    .oafModernCompactCategories #content.forum_list .sectionMain .oafCategoryBar,
    .oafModernCompactCategories #content.forum_list .sectionMain .oafCategoryBar--hasAction {
        margin-left: -11px !important;
        margin-right: -11px !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .oafModernCompactCategories .categoryStrip .nodeTitle,
    .oafModernCompactCategories .oafCategoryBar .nodeTitle {
        font-size: 13px !important;
        letter-spacing: .045em;
    }

    /* Secondary navigation is a destination list, not a wrapping paragraph.
     * Preserve one row and let narrow phones scroll it horizontally. */
    .oafModern .navTabs .navTab.selected .tabLinks,
    .oafModern .navTabs .navTab.selected .tabLinks .primaryContent {
        overflow: hidden !important;
    }

    .oafModern .navTabs .navTab.selected .tabLinks ul,
    .oafModern .navTabs .navTab.selected .tabLinks .blockLinksList {
        -webkit-overflow-scrolling: touch;
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none;
        white-space: nowrap !important;
    }

    .oafModern .navTabs .navTab.selected .tabLinks ul::-webkit-scrollbar,
    .oafModern .navTabs .navTab.selected .tabLinks .blockLinksList::-webkit-scrollbar {
        display: none;
    }

    .oafModern .navTabs .navTab.selected .tabLinks li,
    .oafModern .navTabs .navTab.selected .tabLinks .blockLinksList > li {
        flex: 0 0 auto !important;
    }

    /* Forum icons double as posting controls when enabled. On touch screens
     * keep the full icon area at least 44px in each dimension. */
    .oafModern .node .nodeIcon,
    .oafModern .node .nodeIcon > a {
        height: 44px !important;
        width: 44px !important;
    }

    .oafModern .node .nodeText {
        margin-left: 61px !important;
    }

    .oafModern .node .nodeIcon .oafNodePostLink {
        inset: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .oafModern .oafNodeGlyph,
    .oafModern .node .nodeControls {
        transition: none;
    }
}
