:root{--dsc-accent:var(--primary-color,#0088cc);--dsc-bg:#fff;--dsc-bg-soft:#f6f7f8;--dsc-text:#222;--dsc-muted:#6b747c;--dsc-border:#e4e6e8;--dsc-header:#fff;--dsc-row-hover:#f8f9fa}
html[data-bs-theme="dark"],[data-theme="dark"],body.dark-theme,.theme-dark{--dsc-bg:#242628;--dsc-bg-soft:#1f2022;--dsc-text:#f0f1f2;--dsc-muted:#a0a6ac;--dsc-border:#3b3e41;--dsc-header:#242628;--dsc-row-hover:#2c2e31}
*{box-sizing:border-box}html,body{min-height:100%}body.discourse-theme{margin:0;background:var(--dsc-bg)!important;color:var(--dsc-text)!important;font-family:Arial,Helvetica,sans-serif!important;font-size:15px;line-height:1.4}
body.discourse-theme>nav.navbar{background:var(--dsc-header)!important;border-bottom:1px solid var(--dsc-border)!important;box-shadow:0 1px 4px rgba(0,0,0,.08)!important;min-height:64px;padding:0!important;position:sticky;top:0;z-index:1000}
body.discourse-theme>nav.navbar .container-fluid{max-width:1180px!important;margin:auto!important;padding:0 20px!important;min-height:64px}
body.discourse-theme .navbar-brand{color:var(--dsc-text)!important;font-weight:700!important;font-size:20px!important;white-space:nowrap}
body.discourse-theme .navbar-brand img{max-height:42px!important;width:auto!important}
body.discourse-theme .navbar-nav .nav-link{color:var(--dsc-muted)!important;border-radius:4px;padding:9px 10px!important}
body.discourse-theme .navbar-nav .nav-link:hover{background:var(--dsc-bg-soft)!important;color:var(--dsc-text)!important}
body.discourse-theme #header-search-input{width:250px!important;background:var(--dsc-bg-soft)!important;color:var(--dsc-text)!important;border:1px solid var(--dsc-border)!important;border-radius:4px!important;padding-left:36px!important}
body.discourse-theme main.container,body.discourse-theme main.theme-layout-wide,body.discourse-theme main[class*="theme-layout-"]{width:100%!important;max-width:1180px!important;margin:0 auto!important;padding:38px 20px 70px!important;display:block!important}
body.discourse-theme .premium-footer{display:none!important}
.dsc-page{display:block!important;width:100%!important;min-width:0!important}
.dsc-page-titlebar{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:32px!important;margin-bottom:32px!important}
.dsc-page-titlebar h1{margin:0 0 4px!important;color:var(--dsc-text)!important;font-size:32px!important;line-height:1.15!important;font-weight:700!important}.dsc-page-titlebar p{margin:0!important;color:var(--dsc-muted)!important}
.dsc-page-search{position:relative!important;width:360px!important;max-width:100%!important}.dsc-page-search i{position:absolute!important;left:13px!important;top:50%!important;transform:translateY(-50%)!important;color:var(--dsc-muted)!important}.dsc-page-search input{width:100%!important;height:42px!important;border:1px solid var(--dsc-border)!important;background:var(--dsc-bg)!important;color:var(--dsc-text)!important;border-radius:4px!important;padding:0 14px 0 38px!important;font-size:15px!important}
.dsc-navline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;border-bottom:1px solid var(--dsc-border)!important;margin-bottom:0!important}.dsc-navtabs{display:flex!important;align-items:center!important;gap:4px!important;flex-wrap:wrap!important}.dsc-navtabs a{display:block!important;color:var(--dsc-text)!important;text-decoration:none!important;padding:13px 14px 11px!important;border-bottom:3px solid transparent!important;font-size:16px!important}.dsc-navtabs a:hover{background:var(--dsc-bg-soft)!important}.dsc-navtabs a.active{color:var(--dsc-accent)!important;border-color:var(--dsc-accent)!important;font-weight:700!important}
.dsc-new-topic{display:inline-flex!important;align-items:center!important;gap:7px!important;background:var(--dsc-accent)!important;color:#fff!important;text-decoration:none!important;border-radius:4px!important;padding:10px 14px!important;font-weight:700!important;white-space:nowrap!important}
.dsc-topic-table{width:100%!important;display:block!important;border:0!important;background:transparent!important}.dsc-topic-header,.dsc-topic-row{display:grid!important;grid-template-columns:minmax(0,1fr) 150px 76px 76px 112px!important;width:100%!important;min-width:0!important;align-items:center!important}.dsc-topic-header{min-height:48px!important;color:var(--dsc-muted)!important;border-bottom:2px solid var(--dsc-border)!important;font-size:13px!important}.dsc-topic-header>div{padding:0 12px!important}.dsc-topic-header>div:nth-child(n+2){text-align:center!important}.dsc-topic-body{display:block!important;width:100%!important}.dsc-topic-row{min-height:84px!important;border-bottom:1px solid var(--dsc-border)!important;background:var(--dsc-bg)!important;border-radius:0!important;box-shadow:none!important;margin:0!important;padding:0!important}.dsc-topic-row:hover{background:var(--dsc-row-hover)!important}.dsc-topic-row>div{min-width:0!important;padding:13px 12px!important}.dsc-topic-copy{display:block!important;width:auto!important;max-width:none!important}.dsc-topic-titleline{display:flex!important;align-items:baseline!important;gap:7px!important;min-width:0!important}.dsc-topic-titleline>i{font-size:12px!important;color:var(--dsc-muted)!important;flex:0 0 auto!important}.dsc-topic-titleline .dsc-solved{color:#2ca55f!important}.dsc-topic-title{display:block!important;color:var(--dsc-text)!important;text-decoration:none!important;font-size:18px!important;font-weight:500!important;line-height:1.25!important;white-space:normal!important;overflow:visible!important;word-break:normal!important}.dsc-topic-row.is-unread .dsc-topic-title{font-weight:700!important}.dsc-topic-meta{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;margin-top:6px!important;color:var(--dsc-muted)!important;font-size:13px!important;overflow:hidden!important;white-space:nowrap!important}.dsc-category{display:inline-flex!important;align-items:center!important;gap:5px!important;color:var(--dsc-muted)!important;text-decoration:none!important;flex:0 0 auto!important}.dsc-category span{width:9px!important;height:9px!important;display:inline-block!important}.dsc-tag{background:var(--dsc-bg-soft)!important;color:var(--dsc-muted)!important;text-decoration:none!important;padding:2px 6px!important;border-radius:3px!important;font-size:11px!important;flex:0 0 auto!important}.dsc-excerpt{overflow:hidden!important;text-overflow:ellipsis!important;color:var(--dsc-muted)!important}.dsc-users{display:flex!important;justify-content:center!important;align-items:center!important;width:auto!important;max-width:none!important}.dsc-users a{display:block!important;margin-left:-7px!important}.dsc-users a:first-child{margin-left:0!important}.dsc-users img{display:block!important;width:32px!important;height:32px!important;object-fit:cover!important;border-radius:50%!important;border:2px solid var(--dsc-bg)!important}.dsc-stat{text-align:center!important;color:var(--dsc-muted)!important;font-size:15px!important;width:auto!important;max-width:none!important}.dsc-activity{text-align:center!important;width:auto!important;max-width:none!important}.dsc-activity a{display:block!important;color:var(--dsc-muted)!important;text-decoration:none!important;white-space:nowrap!important}.dsc-activity small{display:block!important;color:var(--dsc-muted)!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.dsc-empty{display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important;padding:70px 20px!important;color:var(--dsc-muted)!important}.dsc-empty i{font-size:32px!important}.dsc-load-more{text-align:center!important;padding:24px!important}
/* keep all internal pages readable */
body.discourse-theme .card{background:var(--dsc-bg)!important;color:var(--dsc-text)!important;border:1px solid var(--dsc-border)!important;border-radius:4px!important;box-shadow:none!important}
body.discourse-theme .text-muted{color:var(--dsc-muted)!important}
/* Do not globally recolor anchors or button-like links. Flatboard's native button variants keep their own colors. */
body.discourse-theme .dsc-page a:not(.btn):not(.button):not([class*="btn-"]){color:inherit}
body.discourse-theme .dsc-topic-title,
body.discourse-theme .dsc-navtabs a.active{color:var(--dsc-accent)!important}
body.discourse-theme .dsc-category,
body.discourse-theme .dsc-activity a{color:var(--dsc-muted)!important}
body.discourse-theme .dsc-new-topic{color:#fff!important}

@media(max-width:900px){body.discourse-theme main.container,body.discourse-theme main[class*="theme-layout-"]{padding:24px 14px 50px!important}.dsc-page-titlebar{align-items:stretch!important;flex-direction:column!important}.dsc-page-search{width:100%!important}.dsc-topic-header,.dsc-topic-row{grid-template-columns:minmax(0,1fr) 74px 86px!important}.dsc-topic-header>div:nth-child(2),.dsc-topic-header>div:nth-child(4),.dsc-topic-row>.dsc-users,.dsc-topic-row>.dsc-stat:nth-of-type(4){display:none!important}.dsc-topic-header>div:nth-child(3){grid-column:2!important}.dsc-topic-header>div:nth-child(5){grid-column:3!important}.dsc-topic-title{font-size:16px!important}.dsc-excerpt{display:none!important}}
@media(max-width:600px){body.discourse-theme>nav.navbar .container-fluid{padding:0 12px!important}.dsc-navline{align-items:flex-start!important;flex-direction:column!important;padding-bottom:12px!important}.dsc-new-topic{align-self:flex-end!important}.dsc-page-titlebar h1{font-size:26px!important}.dsc-topic-header,.dsc-topic-row{grid-template-columns:minmax(0,1fr) 70px!important}.dsc-topic-header>div:nth-child(3),.dsc-topic-row>.dsc-stat{display:none!important}.dsc-topic-header>div:nth-child(5){grid-column:2!important}.dsc-topic-meta .dsc-tag{display:none!important}}


/* v2.1.2 shared navigation and contrast fixes */
.dsc-category-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;padding-top:28px}.dsc-category-list{min-width:0}.dsc-section-head{display:grid;grid-template-columns:minmax(0,1fr) 80px;padding:10px 16px;color:var(--dsc-muted);border-bottom:2px solid var(--dsc-border);font-size:13px}.dsc-section-head span:last-child{text-align:right}.dsc-category-row{position:relative;display:grid!important;grid-template-columns:6px minmax(0,1fr) 80px;gap:16px;align-items:center;padding:20px 16px 20px 0;border-bottom:1px solid var(--dsc-border);color:var(--dsc-text)!important;text-decoration:none!important}.dsc-category-row:hover{background:var(--dsc-row-hover)}.dsc-category-stripe{align-self:stretch;min-height:60px}.dsc-category-main{display:flex;flex-direction:column;gap:5px}.dsc-category-main strong{font-size:20px;color:var(--dsc-text)!important}.dsc-category-main small{font-size:14px;color:var(--dsc-muted)!important}.dsc-category-count{text-align:right;color:var(--dsc-muted)!important;font-size:18px}.dsc-category-aside{align-self:start;border:1px solid var(--dsc-border);background:var(--dsc-bg);padding:24px;border-radius:4px}.dsc-category-aside h2{font-size:18px;color:var(--dsc-text)!important}.dsc-category-aside p{color:var(--dsc-muted)!important}.dsc-aside-link{display:inline-block;color:var(--dsc-accent)!important;font-weight:700;text-decoration:none}.dsc-tag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:28px}.dsc-tag-card{display:flex!important;align-items:center;justify-content:space-between;gap:16px;padding:18px;border:1px solid var(--dsc-border);background:var(--dsc-bg);color:var(--dsc-text)!important;text-decoration:none!important;border-radius:4px}.dsc-tag-card:hover{background:var(--dsc-row-hover)}.dsc-tag-card small{color:var(--dsc-muted)!important}.dsc-tag-chip{font-weight:700;border-left:5px solid var(--tag-color);padding-left:9px;color:var(--dsc-text)!important}
body.discourse-theme input,body.discourse-theme select,body.discourse-theme textarea{background-color:var(--dsc-bg)!important;color:var(--dsc-text)!important;border-color:var(--dsc-border)!important}body.discourse-theme input::placeholder,body.discourse-theme textarea::placeholder{color:var(--dsc-muted)!important;opacity:1}body.discourse-theme .dropdown-menu,body.discourse-theme .modal-content,body.discourse-theme .list-group-item{background:var(--dsc-bg)!important;color:var(--dsc-text)!important;border-color:var(--dsc-border)!important}body.discourse-theme .dropdown-item,body.discourse-theme .dropdown-item-text,body.discourse-theme label,body.discourse-theme .form-label,body.discourse-theme .form-text{color:var(--dsc-text)!important}body.discourse-theme .form-text,body.discourse-theme small.text-muted{color:var(--dsc-muted)!important}body.discourse-theme .dropdown-item:hover{background:var(--dsc-row-hover)!important;color:var(--dsc-text)!important}
.theme-color-reset-btn{display:inline-flex;align-items:center;justify-content:center;margin-left:10px;padding:5px 9px;border:1px solid #6c757d;border-radius:4px;background:transparent;color:inherit;font-size:12px;line-height:1.2;cursor:pointer}.theme-color-reset-btn:hover{background:rgba(127,127,127,.15)}
@media(max-width:900px){.dsc-category-layout{grid-template-columns:1fr}.dsc-category-aside{display:none}.dsc-tag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.dsc-tag-grid{grid-template-columns:1fr}.dsc-navtabs{width:100%;overflow-x:auto;flex-wrap:nowrap!important}.dsc-navtabs a{white-space:nowrap}.dsc-new-topic{margin-left:auto}}

/* v2.1.3 participant stack and readable truncation */
.dsc-users{display:flex!important;align-items:center;justify-content:flex-start;min-width:118px;white-space:nowrap;padding-left:8px}
.dsc-users a{display:block;position:relative;margin-left:-8px;border-radius:50%;line-height:0}
.dsc-users a:first-child{margin-left:0}
.dsc-users img{width:32px!important;height:32px!important;object-fit:cover;border-radius:50%!important;border:2px solid var(--dsc-surface,#fff);background:var(--dsc-surface,#fff)}
.dsc-topic-main{min-width:0}
.dsc-topic-title,.dsc-topic-meta,.dsc-excerpt{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.dsc-users{min-width:74px}.dsc-users a:nth-child(n+4){display:none}}

/* v2.1.4: keep EasyMDE/CodeMirror typing surface clickable */
body.discourse-theme .EasyMDEContainer,
body.discourse-theme .EasyMDEContainer .CodeMirror,
body.discourse-theme .EasyMDEContainer .CodeMirror-scroll,
body.discourse-theme .EasyMDEContainer .CodeMirror-lines,
body.discourse-theme .EasyMDEContainer .CodeMirror-code,
body.discourse-theme .EasyMDEContainer .CodeMirror-cursors,
body.discourse-theme .EasyMDEContainer .CodeMirror textarea {
    pointer-events: auto !important;
}
body.discourse-theme .EasyMDEContainer .CodeMirror {
    position: relative !important;
    z-index: 2 !important;
    min-height: 220px;
}
body.discourse-theme .EasyMDEContainer .editor-preview:not(.editor-preview-active),
body.discourse-theme .EasyMDEContainer .editor-preview-side:not(.editor-preview-active-side) {
    pointer-events: none !important;
}
body.discourse-theme textarea.markdown-editor {
    pointer-events: auto !important;
    position: relative;
    z-index: 1;
}


/* v2.1.8: compact Discourse-style footer */
body.discourse-theme .dsc-site-footer{
  display:block!important;
  margin-top:auto!important;
  background:var(--dsc-bg-soft)!important;
  color:var(--dsc-text)!important;
  border-top:1px solid var(--dsc-border)!important;
  padding:0!important;
}
body.discourse-theme .dsc-footer-inner{max-width:1180px;margin:0 auto;padding:34px 20px 20px}
body.discourse-theme .dsc-footer-grid{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(150px,.55fr) minmax(150px,.55fr);gap:42px;align-items:start}
body.discourse-theme .dsc-footer-brand strong{display:block;font-size:18px;color:var(--dsc-text)!important;margin-bottom:8px}
body.discourse-theme .dsc-footer-brand p{max-width:520px;margin:0;color:var(--dsc-muted)!important;font-size:14px;line-height:1.55}
body.discourse-theme .dsc-footer-links{display:flex;flex-direction:column;gap:8px}
body.discourse-theme .dsc-footer-links a{color:var(--dsc-muted)!important;text-decoration:none!important;font-size:14px}
body.discourse-theme .dsc-footer-links a:hover{color:var(--dsc-accent)!important;text-decoration:underline!important}
body.discourse-theme .dsc-footer-custom{padding-bottom:24px;margin-bottom:26px;border-bottom:1px solid var(--dsc-border);color:var(--dsc-text)}
body.discourse-theme .dsc-footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:28px;padding-top:16px;border-top:1px solid var(--dsc-border);color:var(--dsc-muted)!important;font-size:12px}
@media(max-width:700px){body.discourse-theme .dsc-footer-grid{grid-template-columns:1fr;gap:22px}body.discourse-theme .dsc-footer-bottom{flex-direction:column;gap:6px}}


/* v2.3.0 stability: respect configured colors and branding */
body.discourse-theme .navbar-brand .navbar-logo{max-width:70vw;object-fit:contain;display:block}
body.discourse-theme .dsc-page a:not(.btn):not(.dsc-new-topic){color:var(--dsc-accent)}
body.discourse-theme .dsc-page a:not(.btn):not(.dsc-new-topic):hover{color:var(--dsc-accent);text-decoration:underline}
body.discourse-theme .dsc-site-footer{background:var(--dsc-bg-soft);color:var(--dsc-text)}


/* v2.3.1 regression containment: this theme must never alter another theme. */
body.discourse-theme .dsc-site-footer .dsc-footer-custom h1,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h2,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h3,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h4,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h5,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h6 {
  font-size: .95rem;
  line-height: 1.3;
  margin-bottom: .75rem;
}
body.discourse-theme .dsc-site-footer .dsc-footer-custom { font-size: .875rem; }
body.discourse-theme .dsc-site-footer .dsc-footer-custom a { text-decoration: underline; }
body.discourse-theme .navbar-brand .navbar-logo { max-height: none !important; object-fit: contain; }


/* v2.3.3 regression fixes: native editor, compact reply avatar, readable footer */
body.discourse-theme .reply-placeholder-flatboard {
  display: block;
  width: 100%;
  cursor: text;
}
body.discourse-theme .reply-placeholder-flatboard .d-flex {
  align-items: center !important;
}
body.discourse-theme .reply-placeholder-flatboard img.avatar,
body.discourse-theme .reply-placeholder-flatboard img.avatar-sm {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  object-fit: cover !important;
  border-radius: 50% !important;
}
body.discourse-theme .reply-form-flatboard {
  width: 100%;
}
body.discourse-theme .dsc-site-footer .dsc-footer-custom,
body.discourse-theme .dsc-site-footer .dsc-footer-custom p,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h1,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h2,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h3,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h4,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h5,
body.discourse-theme .dsc-site-footer .dsc-footer-custom h6,
body.discourse-theme .dsc-site-footer .dsc-footer-custom .social-links a {
  color: var(--dsc-text) !important;
}
body.discourse-theme .dsc-site-footer .dsc-footer-custom a:not(.btn) {
  color: var(--dsc-accent) !important;
}
body.discourse-theme .dsc-site-footer .dsc-footer-custom h5 {
  font-size: .9rem !important;
}
