/*
 * CoreHub Forum — klasyczny układ społecznościowy
 * Autorski interfejs bez zewnętrznych grafik i brandingu.
 */

.forum-pro-hero {
  padding: 22px 0 16px !important;
}

.forum-pro-hero > .container,
.forum-layout.container {
  width: min(1480px, calc(100% - 36px)) !important;
  max-width: none !important;
}

.forum-pro-hero .eyebrow {
  display: none;
}

.forum-pro-hero h1 {
  margin: 22px 0 8px;
  font-size: clamp(30px, 3.8vw, 50px);
  letter-spacing: -.045em;
}

.forum-pro-hero > .container > p {
  max-width: 920px;
  margin: 0;
  color: var(--muted);
  font-size: 15px;
}

.forum-pro-topbar {
  display: block !important;
  padding: 0 !important;
  overflow: visible !important;
  border-radius: 14px !important;
  background: #11151b !important;
}

.forum-nav-head {
  min-height: 72px;
  display: grid;
  grid-template-columns: auto minmax(260px, 540px) auto;
  align-items: center;
  gap: 22px;
  padding: 12px 16px;
}

.forum-mini-brand {
  min-width: max-content;
}

.forum-mini-brand span {
  width: 40px !important;
  height: 40px !important;
}

.forum-mini-brand strong {
  font-size: 15px;
  letter-spacing: -.01em;
}

.forum-global-search {
  min-width: 0;
  display: flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 9px;
  overflow: hidden;
  background: #0c0f13;
}

.forum-global-search input {
  width: 100%;
  min-width: 0;
  height: 42px;
  padding: 0 14px;
  border: 0;
  outline: 0;
  color: var(--ink);
  background: transparent;
}

.forum-global-search input::placeholder {
  color: #77818c;
}

.forum-global-search button {
  width: 46px;
  height: 42px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 0;
  border-left: 1px solid var(--line);
  color: var(--muted-strong);
  background: #171b21;
  cursor: pointer;
}

.forum-global-search button:hover {
  color: #fff;
  background: #20262e;
}

.forum-search-icon {
  width: 17px;
  height: 17px;
  display: inline-block;
  border: 2px solid currentColor;
  border-radius: 50%;
  position: relative;
}

.forum-search-icon::after {
  content: "";
  width: 7px;
  height: 2px;
  position: absolute;
  right: -6px;
  bottom: -3px;
  border-radius: 4px;
  background: currentColor;
  transform: rotate(45deg);
}

.forum-account-box {
  min-width: max-content;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.forum-account-box .profile-hover-menu {
  position: relative;
}

.forum-account-box .profile-hover-trigger {
  min-height: 44px;
  gap: 9px;
  padding: 8px 12px;
  border: 1px solid var(--line) !important;
  border-radius: 10px !important;
  color: var(--ink) !important;
  background: #fff !important;
}

.forum-account-box .profile-hover-trigger .mini-avatar {
  width: 28px;
  height: 28px;
  border-radius: 7px;
}

.forum-account-box .profile-hover-trigger .rank-username {
  font-size: 13px;
  line-height: 1;
}

.forum-account-box .profile-hover-dropdown {
  right: 0;
  left: auto;
  min-width: 260px;
  z-index: 40;
}

.forum-account-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 11px;
  border: 1px solid var(--line);
  border-radius: 9px;
  color: var(--muted-strong);
  background: #171b21;
  font-size: 13px;
  font-weight: 800;
}

.forum-account-link:hover {
  color: #fff;
  border-color: var(--line-strong);
}

.forum-account-link .forum-mini-avatar {
  width: 26px;
  height: 26px;
  border-radius: 6px;
}

.forum-primary-nav {
  min-height: 48px;
  display: flex;
  align-items: stretch;
  gap: 2px;
  padding: 0 10px;
  border-top: 1px solid #315eab;
  border-radius: 0 0 13px 13px;
  background: #326fce;
}

.forum-primary-nav a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  color: rgba(255, 255, 255, .86);
  border-bottom: 3px solid transparent;
  font-size: 13px;
  font-weight: 850;
}

.forum-primary-nav a:hover,
.forum-primary-nav a.is-active {
  color: #fff;
  border-bottom-color: #fff;
  background: rgba(0, 0, 0, .1);
}

.forum-primary-nav .forum-nav-create {
  margin-left: auto;
  color: #fff;
}

.forum-breadcrumbs {
  margin: 16px 0 0 !important;
  padding: 10px 13px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: var(--surface);
  font-size: 12px;
}

.forum-breadcrumbs a {
  text-decoration: none !important;
}

.forum-breadcrumbs a:hover {
  color: var(--accent-text);
}

.forum-layout {
  grid-template-columns: minmax(0, 1fr) 318px !important;
  gap: 18px !important;
  align-items: start;
  margin-top: 2px;
}

.forum-main {
  gap: 12px !important;
}

.forum-toolbar {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 0 !important;
  padding: 11px 14px !important;
  border-radius: 10px !important;
  font-size: 13px;
}

.forum-toolbar .btn {
  min-height: 36px;
  padding: 8px 12px;
}

.forum-board {
  margin-bottom: 0 !important;
  border-radius: 11px !important;
}

.forum-board-head {
  min-height: 70px;
  align-items: center !important;
  padding: 14px 17px !important;
  border-bottom-color: #2d3744 !important;
  border-left: 4px solid var(--accent);
  background: #18202b !important;
}

.forum-board-title,
.forum-board-head h2 {
  color: #f4f7fb;
  font-size: 18px !important;
  font-weight: 850;
}

.forum-board-head p {
  margin-top: 4px !important;
  color: #8f9ba9 !important;
  font-size: 12px;
}

.forum-board-meta {
  gap: 6px !important;
}

.forum-board-meta span {
  min-width: 66px !important;
  padding: 6px 8px !important;
  border-radius: 7px !important;
  background: #11171f !important;
}

.forum-board-meta strong {
  font-size: 13px;
}

.forum-board-meta small {
  font-size: 10px !important;
}

.forum-subcategories {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
  gap: 0 !important;
  padding: 0 !important;
  background: #12171e !important;
}

.forum-subcategories a {
  min-height: 68px;
  justify-content: center;
  padding: 12px 15px !important;
  border: 0 !important;
  border-right: 1px solid var(--line) !important;
  border-bottom: 1px solid var(--line) !important;
  border-radius: 0 !important;
  background: #12171e !important;
}

.forum-subcategories a:hover {
  background: #181e26 !important;
}

.forum-subcategories strong {
  color: #e9edf2;
  font-size: 13px;
}

.forum-subcategories small,
.forum-subcategories span {
  font-size: 11px;
}

.forum-topic-table-head,
.forum-topic-line {
  grid-template-columns: minmax(280px, 1.55fr) minmax(100px, .38fr) 72px minmax(135px, .46fr) !important;
}

.forum-topic-table-head {
  min-height: 37px;
  align-items: center;
  padding: 8px 15px !important;
  color: #8995a3 !important;
  border-bottom: 1px solid var(--line);
  background: #10151b !important;
  font-size: 10px !important;
}

.forum-topic-line {
  min-height: 66px !important;
  padding: 10px 15px !important;
  border-top: 0 !important;
  border-bottom: 1px solid var(--line);
  background: #14191f;
}

.forum-topic-line:last-child {
  border-bottom: 0;
}

.forum-topic-line:hover {
  background: #1a2028 !important;
}

.forum-topic-name {
  grid-template-columns: 1fr;
}

.forum-topic-name strong,
.forum-topic-title-link {
  color: #eaf0f8;
  font-size: 14px !important;
}

.forum-topic-name small,
.forum-topic-line small {
  color: #7f8995 !important;
  font-size: 10.5px !important;
}

.forum-topic-line > span:nth-child(2),
.forum-topic-line > span:nth-child(4) {
  font-size: 11px;
}

.forum-count-pill {
  min-width: 42px !important;
  width: max-content;
  padding: 5px 8px !important;
  border-radius: 999px !important;
  color: var(--muted-strong);
  background: #10151b !important;
}

.forum-board-actions {
  min-height: 50px;
  align-items: center;
  padding: 8px 12px !important;
  background: #10151b !important;
}

.forum-topic-empty {
  padding: 24px;
  background: #14191f;
}

.forum-category-pagination {
  margin: 12px;
}

.forum-sidebar {
  top: 90px !important;
  gap: 12px !important;
}

.forum-widget {
  padding: 0 !important;
  overflow: hidden;
  border-radius: 10px !important;
}

.forum-widget > h3 {
  margin: 0 !important;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  color: #eef2f7;
  background: #18202b;
  font-size: 13px;
}

.forum-widget > p,
.forum-widget > .forum-activity-list,
.forum-widget > .forum-online-list,
.forum-widget > .forum-stat-grid {
  margin: 0;
  padding: 12px;
}

.forum-activity-list {
  gap: 7px !important;
}

.forum-activity-item {
  padding: 8px !important;
  border: 0 !important;
  border-radius: 7px !important;
  background: #151a21 !important;
}

.forum-activity-item:hover {
  background: #1c232c !important;
}

.forum-activity-item strong {
  font-size: 12px !important;
}

.forum-activity-item small,
.forum-activity-item em {
  font-size: 10.5px !important;
}

.forum-stat-grid {
  gap: 7px !important;
}

.forum-stat-grid div {
  padding: 10px !important;
  border-radius: 7px !important;
  background: #151a21 !important;
}

.forum-stat-grid strong {
  font-size: 18px !important;
}

.forum-stat-grid small {
  font-size: 10px;
}

.forum-role-legend {
  padding: 14px 16px !important;
  border-radius: 10px !important;
}

.forum-role-legend h2 {
  margin-bottom: 10px;
  font-size: 14px;
}

.forum-layout .glow-name,
.forum-layout .profile-hover-name,
.forum-pro-hero .glow-name {
  color: var(--glow, var(--ink)) !important;
  text-shadow: none !important;
}

.forum-post {
  grid-template-columns: 190px minmax(0, 1fr) !important;
  gap: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 10px !important;
}

.forum-post-list-head,
.forum-comments-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 15px !important;
  margin-bottom: 0 !important;
  border-radius: 10px !important;
}

.forum-post-list-head h2,
.forum-comments-head h2 {
  margin: 0;
  font-size: 17px;
}

.forum-post-list-head p,
.forum-comments-head p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 11px;
}

.forum-post > aside {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  padding: 18px 14px;
  border-right: 1px solid var(--line);
  background: #11161c;
  text-align: center;
}

.forum-post .forum-avatar {
  width: 92px;
  height: 92px;
  border-radius: 9px;
}

.forum-post-author {
  font-size: 14px !important;
}

.forum-post > aside > small {
  color: var(--muted);
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.forum-author-stats {
  width: 100%;
  gap: 5px !important;
}

.forum-author-stats span {
  padding: 7px !important;
  border-radius: 6px !important;
  font-size: 12px;
}

.forum-post-body {
  gap: 0 !important;
  background: #151a21;
}

.forum-post-meta {
  min-height: 42px;
  align-items: center;
  padding: 10px 14px;
  background: #10151b;
}

.forum-post-meta small,
.forum-post-meta a {
  font-size: 11px;
}

.forum-post-actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.forum-post-actions button,
.forum-post-actions a {
  padding: 4px 7px;
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--muted-strong);
  background: #171d24;
  font: inherit;
  font-size: 10.5px;
  font-weight: 800;
  cursor: pointer;
}

.forum-post-actions button:hover,
.forum-post-actions a:hover {
  color: #fff;
  border-color: var(--line-strong);
}

.forum-post-body > .page-content,
.forum-post-body > .empty-state,
.forum-post-body > .forum-post-tags,
.forum-post-body > .beer-lock,
.forum-post-body > .forum-inline-action {
  margin-left: 16px;
  margin-right: 16px;
}

.forum-post-body > .page-content {
  min-height: 120px;
  padding: 18px 0;
  font-size: 14px;
}

.forum-post-detail-link {
  display: flex;
  justify-content: flex-end;
  margin: 0 16px 14px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}

.forum-post-detail-link .btn span {
  min-width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: #0e1318;
  font-size: 10px;
}

.forum-single-post .forum-post-body > .page-content {
  min-height: 220px;
}

.forum-comments {
  margin: 16px !important;
  padding-top: 14px !important;
}

.forum-comments-page {
  padding: 0 !important;
  overflow: hidden;
  border-radius: 10px !important;
}

.forum-comments-head {
  border-bottom: 1px solid var(--line);
  background: #18202b;
}

.forum-comments-list {
  display: grid;
  gap: 8px;
  padding: 14px;
}

.forum-comment-compose {
  margin: 0 14px 14px;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #11161c;
  scroll-margin-top: 100px;
}

.forum-comment-compose h3 {
  margin: 0;
  font-size: 15px;
}

.forum-comment-compose textarea {
  width: 100%;
  resize: vertical;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: #0e1217;
}

.forum-comment-login {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 14px 14px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #11161c;
}

.forum-comment-login p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.forum-comment {
  border-radius: 8px !important;
  background: #11161c !important;
}

.forum-comment-form {
  border-radius: 8px !important;
}

.forum-form {
  padding: 18px !important;
  border-radius: 10px !important;
}

.forum-form h2 {
  margin-top: 0;
  font-size: 18px;
}

.forum-search-page,
.forum-members-page,
.forum-activity-page {
  display: grid;
  gap: 12px;
}

.forum-search-panel {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(130px, .36fr) minmax(130px, .36fr) auto;
  gap: 9px;
  padding: 14px !important;
}

.forum-search-panel input,
.forum-search-panel select {
  min-width: 0;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: #0e1217;
}

.forum-result-list {
  display: grid;
  gap: 0;
}

.forum-result {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 15px;
  border-bottom: 1px solid var(--line);
  background: #14191f;
}

.forum-result:last-child {
  border-bottom: 0;
}

.forum-result:hover {
  background: #1a2028;
}

.forum-result-copy {
  min-width: 0;
}

.forum-result-avatar-link {
  display: grid;
  place-items: center;
  color: inherit;
  text-decoration: none;
}

.forum-result-title-link,
a.forum-result-time {
  color: inherit;
  text-decoration: none;
}

.forum-result-title-link:hover,
a.forum-result-time:hover {
  color: #fff;
}

.forum-result-copy strong {
  display: block;
  color: #eaf0f8;
  font-size: 13px;
}

.forum-result-copy p,
.forum-result-copy small {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 11px;
}

.forum-result-time {
  min-width: max-content;
  color: var(--muted);
  font-size: 10.5px;
}

.forum-member-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.forum-member-card {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #14191f;
}

.forum-member-card:hover {
  border-color: var(--line-strong);
  background: #1a2028;
}

.forum-member-card .forum-mini-avatar-lg {
  width: 54px;
  height: 54px;
  border-radius: 8px;
}

.forum-member-card small {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 10.5px;
}

.forum-section-title {
  margin: 0;
  padding: 12px 15px;
  border-bottom: 1px solid var(--line);
  color: #eef2f7;
  background: #18202b;
  font-size: 14px;
}

@media (max-width: 1120px) {
  .forum-nav-head {
    grid-template-columns: auto minmax(220px, 1fr);
  }

  .forum-account-box {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  .forum-layout {
    grid-template-columns: 1fr !important;
  }

  .forum-sidebar {
    position: static !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .forum-member-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .forum-pro-hero > .container,
  .forum-layout.container {
    width: min(100% - 20px, 1480px) !important;
  }

  .forum-nav-head {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .forum-mini-brand,
  .forum-account-box {
    justify-content: flex-start;
  }

  .forum-primary-nav {
    min-height: auto;
    padding: 6px;
    overflow-x: auto;
  }

  .forum-primary-nav a {
    min-height: 40px;
    padding: 0 11px;
    white-space: nowrap;
  }

  .forum-primary-nav .forum-nav-create {
    margin-left: 0;
  }

  .forum-pro-hero h1 {
    margin-top: 16px;
    font-size: 30px;
  }

  .forum-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .forum-post-list-head,
  .forum-comments-head,
  .forum-comment-login {
    align-items: stretch;
    flex-direction: column;
  }

  .forum-toolbar .actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .forum-topic-table-head {
    display: none;
  }

  .forum-topic-line {
    grid-template-columns: 1fr auto !important;
    gap: 6px 10px !important;
  }

  .forum-topic-line > span:nth-child(2) {
    grid-column: 1;
  }

  .forum-topic-line > span:nth-child(3) {
    grid-column: 2;
    grid-row: 1 / 3;
  }

  .forum-topic-line > span:nth-child(4) {
    grid-column: 1 / -1;
  }

  .forum-board-meta {
    display: none !important;
  }

  .forum-board-actions {
    justify-content: stretch !important;
  }

  .forum-board-actions .btn {
    flex: 1;
  }

  .forum-sidebar {
    grid-template-columns: 1fr;
  }

  .forum-post {
    grid-template-columns: 1fr !important;
  }

  .forum-post > aside {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    justify-items: start;
    text-align: left;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding: 12px;
  }

  .forum-post .forum-avatar {
    width: 58px;
    height: 58px;
    grid-row: 1 / 4;
  }

  .forum-post > aside .status-badge {
    grid-column: 3;
    grid-row: 1;
  }

  .forum-author-stats {
    grid-column: 2 / -1;
  }

  .forum-search-panel {
    grid-template-columns: 1fr;
  }

  .forum-result {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .forum-result-time {
    grid-column: 2;
  }

  .forum-member-grid {
    grid-template-columns: 1fr;
  }
}

/* Ekran tworzenia tematu — układ CoreHub CMS. */
.forum-compose-hero > .container,
.forum-compose-shell {
  width: min(1480px, calc(100% - 36px)) !important;
  max-width: none !important;
}

.forum-compose-hero {
  padding-bottom: 10px !important;
}

.forum-compose-shell {
  padding: 8px 0 44px;
}

.forum-compose-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 13px;
  color: #111827;
  background: #fff;
}

.forum-compose-tabs {
  min-height: 66px;
  display: flex;
  align-items: stretch;
  gap: 4px;
  padding: 0 10px;
  background: #465466;
}

.forum-compose-tabs button {
  min-width: 138px;
  padding: 0 24px;
  border: 0;
  color: #f7f9fb;
  background: transparent;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.forum-compose-tabs button.is-active {
  margin-top: 10px;
  color: #111827;
  border-radius: 9px 9px 0 0;
  background: #fff;
}

.forum-compose-tabs button:disabled {
  opacity: .72;
  cursor: default;
}

.forum-compose-body {
  display: grid;
  gap: 14px;
  padding: 28px 20px 22px;
}

.forum-compose-label {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin-top: 3px;
  font-size: 15px;
  font-weight: 800;
}

.forum-compose-label strong {
  color: #f06a76;
  font-size: 10px;
  letter-spacing: .025em;
}

.forum-compose-body > input,
.forum-compose-body > select {
  width: 100%;
  min-height: 48px;
  padding: 11px 14px;
  border: 1px solid var(--line-strong);
  border-radius: 7px;
  color: #111827;
  background: #fff;
  font: inherit;
  outline: 0;
}

.forum-compose-body > input:focus,
.forum-compose-body > select:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(75, 141, 248, .14);
}

.forum-compose-title {
  font-size: 17px !important;
}

.forum-compose-tag {
  width: max-content;
  max-width: 100%;
  position: relative;
  display: inline-flex;
  align-items: center;
  border-radius: 6px;
  color: var(--accent-text);
  background: var(--accent-soft);
  cursor: pointer;
}

.forum-compose-tag > span {
  padding: 10px 14px;
  pointer-events: none;
}

.forum-compose-tag select {
  max-width: 180px;
  min-height: 40px;
  padding: 8px 28px 8px 8px;
  border: 0;
  border-left: 1px solid var(--line);
  color: var(--accent-text);
  background: transparent;
  font: inherit;
  cursor: pointer;
}

.forum-compose-card .rich-editor {
  border-radius: 7px;
  border-color: var(--line-strong);
}

.forum-compose-card .rich-toolbar {
  min-height: 54px;
  align-items: center;
  gap: 4px;
  padding: 8px 10px;
  background: var(--surface-muted);
}

.forum-compose-card .rich-toolbar button,
.forum-compose-card .rich-toolbar select,
.forum-compose-card .rich-toolbar input {
  min-height: 34px;
  border-radius: 5px;
}

.forum-compose-card .rich-toolbar select {
  width: auto;
  min-width: 112px;
  padding: 5px 28px 5px 8px;
}

.forum-compose-card .rich-toolbar input[type="color"] {
  width: 34px;
  min-width: 34px;
  padding: 4px;
  cursor: pointer;
}

.rich-toolbar-divider {
  width: 1px;
  height: 28px;
  margin: 0 4px;
  background: var(--line);
}

.rich-toolbar-gif {
  width: auto !important;
  padding-inline: 7px !important;
  font-size: 10px;
  letter-spacing: .02em;
}

.forum-compose-card .rich-area {
  min-height: 330px;
  color: #111827;
  background: #fff;
}

.forum-compose-card .rich-area.is-invalid {
  box-shadow: inset 0 0 0 2px #e75b69;
}

.forum-compose-upload {
  min-height: 82px;
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 15px 18px;
  overflow: hidden;
  border: 1px dashed var(--line-strong);
  border-radius: 8px;
  color: var(--muted-strong);
  background: var(--surface-muted);
  cursor: pointer;
}

.forum-compose-card .rich-editor + .forum-compose-upload {
  margin-top: -15px;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0 0 7px 7px;
}

.forum-compose-card .rich-editor:has(+ .forum-compose-upload) {
  border-radius: 7px 7px 0 0;
}

.forum-compose-upload > span:first-child {
  font-size: 28px;
}

.forum-compose-upload strong,
.forum-compose-upload small {
  display: block;
}

.forum-compose-upload small {
  margin-top: 4px;
  color: var(--muted);
}

.forum-compose-upload input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.forum-compose-follow {
  width: max-content;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 5px;
  cursor: pointer;
}

.forum-compose-follow input {
  position: absolute;
  opacity: 0;
}

.forum-compose-follow > span[aria-hidden="true"] {
  width: 42px;
  height: 23px;
  position: relative;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  background: var(--surface-muted);
  transition: .18s ease;
}

.forum-compose-follow > span[aria-hidden="true"]::after {
  content: "";
  width: 17px;
  height: 17px;
  position: absolute;
  top: 2px;
  left: 3px;
  border-radius: 50%;
  background: #fff;
  transition: .18s ease;
}

.forum-compose-follow input:checked + span {
  border-color: var(--accent);
  background: var(--accent);
}

.forum-compose-follow input:checked + span::after {
  transform: translateX(17px);
}

.forum-compose-submit {
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 18px 20px;
  border-top: 1px solid var(--line);
}

.forum-compose-submit .btn {
  min-width: 116px;
  justify-content: center;
}

@media (max-width: 760px) {
  .forum-compose-hero > .container,
  .forum-compose-shell {
    width: min(100% - 20px, 1480px) !important;
  }

  .forum-compose-tabs {
    min-height: 56px;
  }

  .forum-compose-tabs button {
    min-width: 112px;
    padding: 0 16px;
  }

  .forum-compose-body {
    padding: 20px 12px;
  }

  .forum-compose-card .rich-area {
    min-height: 260px;
  }

  .forum-compose-upload {
    align-items: flex-start;
  }
}

/* Dopieszczenie forum: stabilna lista tematów, jasne pola formularzy i nowoczesne SVG. */
.forum-nav-icon,
.forum-btn-icon,
.forum-table-icon,
.forum-meta-icon,
.forum-count-icon,
.forum-heading-icon,
.forum-label-icon,
.forum-tab-icon,
.forum-tag-icon,
.forum-upload-icon,
.forum-follow-icon,
.forum-empty-icon {
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
  display: inline-block;
  vertical-align: -.16em;
}

.forum-nav-icon {
  width: 16px;
  height: 16px;
  stroke-width: 2.2;
}

.forum-btn-with-icon,
.forum-account-link,
.forum-primary-nav a,
.forum-topic-meta-inline,
.forum-topic-author,
.forum-topic-last,
.forum-compose-tabs button,
.forum-compose-label,
.forum-compose-tag > span,
.forum-follow-text,
.forum-topic-empty a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.forum-btn-with-icon {
  justify-content: center;
}

.forum-btn-icon {
  width: 17px;
  height: 17px;
  stroke-width: 2.35;
}

.forum-heading-title {
  display: flex !important;
  align-items: center;
  gap: 10px;
}

.forum-heading-icon {
  width: 22px;
  height: 22px;
  color: var(--accent);
  stroke-width: 2.15;
}

.forum-table-icon {
  width: 14px;
  height: 14px;
  margin-right: 6px;
  color: var(--accent);
  stroke-width: 2.25;
}

.forum-topic-table-category .forum-topic-table-head,
.forum-topic-table-category .forum-topic-line {
  grid-template-columns: minmax(0, 1fr) minmax(128px, .32fr) 92px minmax(190px, .42fr) !important;
  gap: 14px !important;
  align-items: center !important;
}

.forum-topic-table-category .forum-topic-table-head > span,
.forum-topic-table-category .forum-topic-line > span,
.forum-topic-name,
.forum-topic-last > span {
  min-width: 0;
}

.forum-topic-table-category .forum-topic-table-head > span {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

.forum-topic-table-category .forum-topic-line {
  overflow: hidden;
}

.forum-topic-name {
  display: grid !important;
  gap: 6px;
}

.forum-topic-name strong,
.forum-topic-title-link {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.forum-topic-title-link {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #1f5fae !important;
  font-weight: 900;
  text-decoration: none !important;
}

.forum-topic-title-link:hover {
  color: #174a90 !important;
}

.forum-topic-title-link .forum-topic-title-colored {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.forum-topic-meta-inline {
  min-width: 0;
  flex-wrap: wrap;
  gap: 5px 7px;
}

.forum-meta-icon {
  width: 13px;
  height: 13px;
  color: var(--muted);
  stroke-width: 2.15;
}

.forum-meta-separator {
  color: var(--muted);
}

.forum-topic-author {
  min-width: 0;
  overflow: hidden;
}

.forum-topic-author a,
.forum-topic-author .glow-name,
.forum-topic-author .rank-username-link {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.forum-topic-posts {
  justify-self: center;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.forum-count-icon {
  width: 14px;
  height: 14px;
  opacity: .75;
}

.forum-topic-last {
  justify-content: flex-start;
  min-width: 0;
}

.forum-topic-last > span {
  display: grid;
  gap: 2px;
  overflow: hidden;
}

.forum-topic-last strong,
.forum-topic-last small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.forum-topic-empty {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 28px !important;
  color: var(--muted-strong);
  background: #fff !important;
}

.forum-empty-icon {
  width: 28px;
  height: 28px;
  color: var(--accent);
}

.forum-compose-tabs button {
  justify-content: center;
}

.forum-tab-icon {
  width: 18px;
  height: 18px;
}

.forum-label-icon {
  width: 17px;
  height: 17px;
  color: var(--accent);
  stroke-width: 2.2;
}

.forum-tag-icon {
  width: 15px;
  height: 15px;
}

.forum-upload-icon {
  width: 26px;
  height: 26px;
  color: var(--accent);
  stroke-width: 2;
}

.forum-follow-text {
  min-width: 0;
}

.forum-follow-icon {
  width: 16px;
  height: 16px;
  color: var(--accent);
}

.forum-compose-card input:not([type="checkbox"]):not([type="file"]),
.forum-compose-card select,
.forum-compose-card textarea,
.forum-compose-card .rich-area,
.forum-form input,
.forum-form textarea,
.forum-form select,
  .forum-search-panel input,
  .forum-search-panel select {
  color: #111827 !important;
  background: #fff !important;
  border-color: #cfd6df !important;
  caret-color: #111827 !important;
}

.forum-compose-card input::placeholder,
.forum-compose-card textarea::placeholder,
.forum-form input::placeholder,
.forum-form textarea::placeholder,
.forum-search-panel input::placeholder {
  color: #6b7280 !important;
}

.forum-compose-card .rich-editor {
  color: #111827 !important;
  background: #fff !important;
  border-color: #cfd6df !important;
}

.forum-compose-card .rich-toolbar {
  background: #f6f8fb !important;
  border-color: #d9e0e8 !important;
}

.forum-compose-card .rich-toolbar button,
.forum-compose-card .rich-toolbar select,
.forum-compose-card .rich-toolbar input {
  color: #111827 !important;
  background: #fff !important;
  border-color: #cfd6df !important;
}

@media (max-width: 760px) {
  .forum-topic-table-category .forum-topic-line {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .forum-topic-name strong,
  .forum-topic-title-link,
  .forum-topic-title-link .forum-topic-title-colored {
    white-space: normal;
  }

  .forum-topic-author {
    grid-column: 1 !important;
  }

  .forum-topic-table-category .forum-topic-posts {
    display: none !important;
  }

  .forum-topic-last {
    grid-column: 1 !important;
  }

  .forum-topic-empty {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* CoreHub CMS — forum, konto, wiadomości i pliki. */
.forum-pro-hero {
  padding: 0 0 18px !important;
  background: #eef1f5 !important;
}

.forum-pro-hero > .container,
.forum-layout.container,
.forum-messenger-shell,
.files-market-layout {
  width: min(1680px, calc(100% - 44px)) !important;
  max-width: none !important;
}

.forum-ipb-topbar {
  margin-top: 20px;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.forum-ipb-topbar .forum-nav-head {
  min-height: 86px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 0 8px 18px;
  background: #fff;
}

.forum-mini-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #26364a !important;
}

.forum-mini-brand span {
  color: #fff !important;
  background: linear-gradient(135deg, #168ad9, #0d66a8) !important;
}

.forum-mini-brand .forum-mini-logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: inherit !important;
  background: transparent !important;
}

.forum-mini-logo img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: contain !important;
}

.forum-mini-brand strong {
  font-size: 24px !important;
  letter-spacing: -.04em;
}

.forum-mini-brand small {
  display: block;
  margin-top: 2px;
  color: #7d8996;
  font-size: 12px;
  font-weight: 800;
}

.forum-top-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  min-width: max-content;
}

.forum-add-action,
.forum-icon-action {
  position: relative;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 11px;
  border-radius: 4px;
  color: #26364a !important;
  background: transparent;
  font-size: 14px;
  font-weight: 900;
}

.forum-icon-action {
  width: 42px;
  justify-content: center;
  padding: 0;
  border-left: 1px solid #d9dee5;
}

.forum-icon-action svg,
.forum-add-action svg {
  width: 20px;
  height: 20px;
}

.forum-icon-action em {
  min-width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  position: absolute;
  top: 2px;
  right: 2px;
  border-radius: 999px;
  color: #fff;
  background: #e23f50;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
}

.forum-hover-popover {
  position: relative;
}

.forum-top-flyout,
.forum-account-box .profile-hover-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 90;
  min-width: 340px;
  border: 1px solid #dfe4ea !important;
  border-radius: 2px !important;
  color: #26364a !important;
  background: #fff !important;
  box-shadow: 0 22px 50px rgba(31, 45, 61, .18) !important;
}

.forum-hover-popover:not(:hover) .forum-top-flyout {
  display: none;
}

.forum-top-flyout::before,
.forum-account-box .profile-hover-dropdown::before {
  content: "";
  position: absolute;
  top: -8px;
  right: 34px;
  border-right: 8px solid transparent;
  border-bottom: 8px solid #fff;
  border-left: 8px solid transparent;
}

.forum-top-flyout header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border-bottom: 1px solid #e8edf2;
}

.forum-top-flyout > p,
.forum-top-flyout footer {
  margin: 0;
  padding: 18px;
  text-align: center;
}

.forum-top-flyout footer {
  border-top: 1px solid #e8edf2;
  background: #f8fafc;
}

.forum-flyout-row,
.forum-add-flyout a {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px 10px;
  padding: 12px 18px;
  border-bottom: 1px solid #edf1f5;
  color: #26364a !important;
}

.forum-flyout-row span,
.forum-add-flyout a svg {
  grid-row: 1 / 3;
}

.forum-flyout-row small {
  color: #7f8b99;
}

.forum-lang-flags {
  display: inline-flex;
  gap: 6px;
  padding-left: 8px;
  border-left: 1px solid #d9dee5;
}

.forum-lang-flags b {
  font-size: 11px;
  color: #8a1d2a;
}

.forum-ipb-topbar .forum-primary-nav {
  min-height: 52px;
  align-items: center;
  gap: 0;
  padding: 0 max(16px, calc((100vw - 1680px) / 2 + 16px));
  border: 0;
  border-radius: 0;
  background: #0f70aa !important;
}

.forum-ipb-topbar .forum-primary-nav a {
  min-height: 52px;
  padding: 0 18px;
  color: rgba(255,255,255,.88) !important;
  border: 0;
  font-size: 14px;
}

.forum-ipb-topbar .forum-primary-nav a:hover,
.forum-ipb-topbar .forum-primary-nav a.is-active {
  color: #fff !important;
  background: rgba(0,0,0,.12);
}

.forum-ipb-topbar .forum-global-search {
  width: min(360px, 34vw);
  margin-left: auto;
  border: 0;
  border-radius: 999px;
  background: #fff !important;
}

.forum-ipb-topbar .forum-global-search input {
  height: 36px;
  color: #17202a !important;
  background: #fff !important;
}

.forum-ipb-topbar .forum-global-search button {
  height: 36px;
  color: #17202a;
  background: #fff !important;
}

.forum-secondary-nav {
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 0 max(18px, calc((100vw - 1680px) / 2 + 18px));
  border-bottom: 1px solid #dfe5ec;
  background: #fff;
}

.forum-secondary-nav a {
  color: #6e7885;
  font-size: 13px;
  font-weight: 800;
}

.forum-page-tools {
  display: flex;
  justify-content: flex-end;
  gap: 24px;
  padding: 18px 0 0;
}

.forum-page-tools a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #7f8b99;
  font-size: 13px;
  font-weight: 850;
}

.forum-ipb-notices {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
}

.forum-profile-completion {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 3px;
  background: #fff;
  box-shadow: 0 1px 0 rgba(31,45,61,.04);
}

.forum-progress {
  min-width: min(760px, 55vw);
  height: 24px;
  position: relative;
  margin-top: 12px;
  overflow: hidden;
  border-radius: 3px;
  background: #d9eaf8;
}

.forum-progress i {
  display: block;
  height: 100%;
  background: #1b86c8;
}

.forum-progress span {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  padding-left: 10px;
  color: rgba(255,255,255,.86);
  font-size: 12px;
  font-weight: 800;
}

.forum-strip-ad {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-radius: 4px;
  color: var(--notice-text, #fff) !important;
  background: var(--notice-bg, #2388c2);
  font-weight: 900;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--notice-bg, #2388c2) 18%, transparent);
}

.forum-strip-ad.is-muted {
  background: var(--notice-bg, #858d96);
}

.forum-strip-ad strong {
  position: absolute;
  right: 18px;
  font-size: 34px;
  line-height: 1;
}

.forum-toolbar h1,
.forum-topic-hero-card h1 {
  margin: 0;
  color: #111827;
  font-size: 28px;
  letter-spacing: -.04em;
}

.forum-toolbar small,
.forum-topic-hero-card p,
.forum-topic-hero-card small {
  color: #6f7d8b;
}

.forum-view-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.forum-view-actions button {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 4px;
  color: #526170;
  background: #fff;
}

.forum-view-actions button.is-active {
  color: #fff;
  background: #1f84c4;
}

.forum-board {
  overflow: hidden;
  border-radius: 3px !important;
  border: 1px solid #e0e5eb !important;
  background: #fff !important;
}

.forum-board-head {
  min-height: 58px;
  padding: 16px 20px !important;
  border-left: 0 !important;
  border-bottom: 1px solid #e7ecf1 !important;
  background: #fff !important;
}

.forum-board-head h2,
.forum-board-title {
  color: #17202a !important;
  font-size: 19px !important;
}

.forum-board-head p {
  color: #7d8794 !important;
}

.forum-index-head {
  min-height: 34px;
  padding: 0 18px;
  color: #8b97a4;
  background: #f6f8fb;
  border-bottom: 1px solid #e7ecf1;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.forum-index-row {
  min-height: 108px;
  grid-template-columns: 58px minmax(0, 1fr) 120px 120px minmax(240px, .48fr) !important;
  gap: 16px !important;
  padding: 18px 20px !important;
  border-bottom: 1px solid #edf1f5 !important;
  background: #fff !important;
}

.forum-index-row:hover,
.forum-topic-line:hover {
  background: #fbfdff !important;
}

.forum-index-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #fff;
  background: #0f7dbb;
  font-size: 21px;
}

.forum-index-main > a {
  color: #17202a !important;
  font-size: 19px;
  font-weight: 900;
}

.forum-index-main p {
  margin: 5px 0 0;
  color: #687586;
}

.forum-subforum-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin-top: 8px;
}

.forum-subforum-links span {
  color: #91a0ae;
}

.forum-subforum-links a {
  position: relative;
  color: #2f3b49 !important;
  font-size: 12px;
  font-weight: 850;
}

.forum-subforum-links a::before {
  content: "";
  width: 7px;
  height: 7px;
  display: inline-block;
  margin-right: 5px;
  border-radius: 999px;
  background: #0f7dbb;
}

.forum-index-count {
  display: grid;
  align-content: center;
  justify-items: center;
  color: #17202a;
  font-size: 20px;
}

.forum-index-count small {
  color: #8a96a4;
  font-size: 12px;
  font-weight: 700;
}

.forum-index-last {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  color: #5f6e7f;
}

.forum-index-last a {
  color: #26364a !important;
  font-weight: 850;
}

.forum-topic-hero-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 24px 28px !important;
  border-radius: 3px !important;
}

.forum-topic-rating {
  min-width: 170px;
  color: #9aa5b1;
  text-align: right;
}

.forum-topic-rating b:first-of-type {
  color: #ffae16;
}

.forum-topic-line {
  background: #fff !important;
  border-bottom-color: #edf1f5 !important;
}

.forum-topic-title-link {
  color: #17202a !important;
}

.forum-topic-line small,
.forum-topic-last {
  color: #7c8895 !important;
}

.forum-post {
  border: 1px solid #e1e7ee !important;
  border-radius: 3px !important;
  background: #fff !important;
}

.forum-post > aside,
.forum-post-body,
.forum-post-meta {
  background: #fff !important;
}

.forum-post > aside {
  border-right-color: #e7ecf1 !important;
}

.forum-post-meta {
  border-bottom: 1px solid #edf1f5;
}

.forum-post-body > .page-content {
  color: #1f2937;
  font-size: 15px;
}

.forum-sidebar {
  top: 16px !important;
  gap: 14px !important;
}

.forum-widget {
  border: 1px solid #e1e7ee !important;
  border-radius: 3px !important;
  background: #fff !important;
}

.forum-widget > h3 {
  color: #17202a !important;
  background: #fff !important;
  border-bottom-color: #edf1f5;
  font-size: 18px;
}

.forum-activity-item {
  grid-template-columns: 42px minmax(0, 1fr);
  background: #fff !important;
  border-bottom: 1px solid #edf1f5 !important;
}

.forum-status-widget input,
.forum-message-search input {
  width: 100%;
  min-height: 38px;
  border: 1px solid #dfe5ec;
  border-radius: 3px;
  color: #17202a;
  background: #fff;
}

.forum-status-row {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 10px;
  padding: 12px;
  border-top: 1px solid #edf1f5;
}

.forum-status-row p {
  margin: 0;
  color: #4b5968;
  font-size: 13px;
}

.forum-donation-widget p {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 16px;
}

.profile-rank-summary {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 14px;
  padding: 18px;
  border-bottom: 1px solid #edf1f5;
}

.profile-rank-medal {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, #b7bdc4, #808891);
}

.profile-rank-summary span,
.profile-rank-summary small {
  color: #7d8794;
}

.profile-rank-summary strong {
  display: block;
  color: #1f2937;
  font-size: 16px;
}

.profile-rank-bar {
  height: 8px;
  overflow: hidden;
  margin: 10px 0 6px;
  border-radius: 999px;
  background: #e7ecf1;
}

.profile-rank-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #9aa3ad;
}

.profile-hover-section {
  display: block;
  padding: 12px 18px 8px;
  color: #17202a;
  background: #f4f6f8;
  font-size: 12px;
  text-transform: uppercase;
}

.profile-hover-menu .profile-hover-dropdown {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(6px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.profile-hover-menu:hover .profile-hover-dropdown,
.profile-hover-menu:focus-within .profile-hover-dropdown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.profile-hover-links a {
  padding: 12px 18px !important;
}

.forum-messenger-shell {
  display: grid;
  gap: 14px;
  padding-bottom: 48px;
}

.forum-messenger-card {
  padding: 0 !important;
  overflow: hidden;
  border-radius: 3px !important;
}

.forum-messenger-head {
  min-height: 82px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px;
  border-bottom: 1px solid #edf1f5;
}

.forum-messenger-head h1 {
  margin: 0;
  font-size: 30px;
}

.forum-messenger-layout {
  min-height: 620px;
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
}

.forum-messenger-layout .conversation-list {
  align-content: start;
  border-right: 1px solid #edf1f5;
  background: #fff;
}

.forum-message-filters {
  display: flex;
  gap: 8px;
  padding: 14px 18px;
  border-bottom: 1px solid #edf1f5;
}

.forum-message-filters button {
  min-height: 34px;
  border: 1px solid #dfe5ec;
  border-radius: 3px;
  background: #fff;
  font-size: 11px;
  font-weight: 900;
}

.forum-empty-inbox {
  padding: 36px 18px;
  text-align: center;
}

.forum-message-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 46px;
  gap: 10px;
  margin-top: auto;
  padding: 16px 18px;
  border-top: 1px solid #edf1f5;
}

.forum-message-search button {
  border: 0;
  border-radius: 3px;
  color: #0f70aa;
  background: #eef7ff;
}

.conversation-main {
  padding: 24px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.forum-message-empty-state {
  min-height: 470px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 12px;
  color: #7c8895;
  text-align: center;
}

.forum-message-empty-state svg {
  width: 104px;
  height: 104px;
  color: #8795a5;
}

.forum-compose-message label {
  display: grid;
  gap: 8px;
  color: #17202a;
  font-weight: 900;
}

.forum-compose-message label strong {
  color: #a53844;
  font-size: 10px;
}

.rich-editor-ipb {
  overflow: hidden;
  border: 1px solid #b9d8ef;
  border-radius: 4px;
  background: #fff;
}

.rich-editor-ipb .rich-toolbar {
  min-height: 54px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3px;
  padding: 8px 10px;
  border-bottom: 1px solid #e6edf4;
}

.rich-editor-ipb .rich-toolbar button {
  min-width: 34px;
  min-height: 34px;
  border: 0;
  border-radius: 3px;
  color: #344255;
  background: #fff;
  font-weight: 900;
}

.rich-editor-ipb .rich-toolbar select,
.rich-editor-ipb .rich-toolbar input[type="color"] {
  min-height: 34px;
  border: 1px solid #d8e2ec;
  border-radius: 5px;
  color: #344255;
  background: #fff;
  font-weight: 800;
}

.rich-editor-ipb .rich-toolbar select {
  width: auto;
  min-width: 86px;
  padding: 5px 28px 5px 8px;
}

.rich-editor-ipb .rich-toolbar input[type="color"] {
  width: 34px;
  min-width: 34px;
  padding: 4px;
}

.rich-editor-ipb .rich-toolbar button:hover {
  background: #eef4fb;
}

.rich-editor-ipb .rich-area {
  min-height: 230px;
  padding: 18px;
  color: #17202a;
  outline: 0;
}

.rich-attachment-hint {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-top: 1px solid #edf1f5;
  background: #f8fbff;
}

.forum-edit-post-link {
  color: #145ea8 !important;
  font-weight: 900;
}

.forum-edit-post-form {
  display: grid;
  gap: 12px;
  margin: 10px 0 16px;
  padding: 14px;
  border: 1px solid #cfe0ef;
  border-radius: 14px;
  background: #f8fbff;
}

.forum-edit-post-form h3 {
  margin: 0;
  color: #17202a;
}

.forum-edit-post-form p {
  margin: 3px 0 0;
  color: #7d8794;
  font-size: 12px;
}

.forum-edit-post-form .rich-area {
  min-height: 180px;
}

.rich-attachment-hint strong {
  font-size: 30px;
}

.rich-attachment-hint span {
  display: grid;
  gap: 4px;
  color: #344255;
  font-weight: 800;
}

.rich-attachment-hint small {
  color: #778492;
}

.rich-attachment-hint button {
  margin-left: auto;
  min-height: 36px;
  border: 1px solid #dfe5ec;
  border-radius: 3px;
  background: #fff;
}

.files-market-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 22px;
  padding-bottom: 48px;
}

.files-market-main {
  display: grid;
  gap: 16px;
}

.files-featured,
.file-carousel {
  padding: 0 !important;
  overflow: hidden;
  border-radius: 3px !important;
}

.files-featured h2,
.file-carousel h2 {
  margin: 0;
  padding: 18px 20px;
  border-bottom: 1px solid #edf1f5;
  font-size: 20px;
}

.file-tile-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 18px;
  padding: 20px;
}

.file-tile {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.files-featured > .file-tile {
  grid-template-columns: 190px minmax(0, 1fr);
  padding: 22px;
}

.file-tile-preview {
  aspect-ratio: 1 / .75;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 3px;
  background: #e9eef6;
}

.file-tile-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.file-tile-preview svg {
  width: 42px;
  height: 42px;
  color: #b8c3cf;
}

.file-tile-title {
  color: #17202a !important;
  font-size: 16px;
  font-weight: 900;
}

.file-tile small,
.file-tile p,
.file-tile footer span {
  color: #6f7d8b;
}

.file-tile footer {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.file-tile footer strong {
  color: #a53844;
}

.files-market-sidebar {
  display: grid;
  align-content: start;
  gap: 14px;
}

.corehub-shop-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 22px;
  padding-bottom: 48px;
}

.corehub-shop-main {
  display: grid;
  align-content: start;
  gap: 16px;
  min-width: 0;
}

.corehub-shop-main > .flash {
  margin: 0;
  padding: 11px 14px;
  border: 1px solid #b9dfcf;
  border-radius: 4px;
  background: #effaf5;
  color: #176c50;
  font-weight: 700;
}

.corehub-shop-count {
  color: #526170;
  font-size: 14px;
  font-weight: 800;
}

.corehub-product-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.corehub-product-card {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 16px;
  min-width: 0;
  padding: 20px;
  border: 1px solid #e2e7ed;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(22, 33, 45, .05);
}

.corehub-product-mark {
  display: grid;
  width: 64px;
  height: 64px;
  place-items: center;
  border-radius: 4px;
  background: #242b35;
  color: #ffd21f;
  font-size: 20px;
  font-weight: 900;
}

.corehub-product-copy {
  min-width: 0;
}

.corehub-product-copy small,
.corehub-product-copy p,
.corehub-product-card footer small,
.corehub-cart header p,
.corehub-cart-line small,
.corehub-demo-note {
  color: #6f7d8b;
}

.corehub-product-copy h2 {
  margin: 5px 0 8px;
  font-size: 19px;
  letter-spacing: 0;
}

.corehub-product-copy p {
  margin: 0;
  line-height: 1.55;
}

.corehub-product-card > footer {
  grid-column: 1 / -1;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid #edf1f5;
}

.corehub-product-card > footer > div,
.corehub-product-card > footer form {
  display: flex;
  align-items: center;
  gap: 9px;
}

.corehub-product-card > footer > div {
  align-items: flex-start;
  flex-direction: column;
  gap: 2px;
}

.corehub-product-card > footer strong {
  color: #17202a;
  font-size: 18px;
}

.corehub-product-card > footer label {
  display: grid;
  gap: 3px;
  color: #6f7d8b;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.corehub-product-card > footer input {
  width: 62px;
  min-height: 36px;
  padding: 6px 8px;
  border: 1px solid #ccd4dd;
  border-radius: 3px;
}

.corehub-shop-sidebar {
  min-width: 0;
}

.corehub-cart {
  position: sticky;
  top: 16px;
  overflow: hidden;
}

.corehub-cart > header,
.corehub-cart > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 17px 18px;
}

.corehub-cart > header {
  border-bottom: 1px solid #edf1f5;
}

.corehub-cart > header h2,
.corehub-cart > header p {
  margin: 0;
}

.corehub-cart > header h2 {
  font-size: 17px;
  letter-spacing: 0;
}

.corehub-cart > header p {
  margin-top: 3px;
  font-size: 12px;
}

.corehub-cart > header > span {
  display: grid;
  flex: 0 0 32px;
  height: 32px;
  place-items: center;
  border-radius: 50%;
  background: #135bec;
  color: #fff;
  font-weight: 900;
}

.corehub-cart-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 18px;
  border-bottom: 1px solid #edf1f5;
}

.corehub-cart-line > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.corehub-cart-line strong {
  overflow-wrap: anywhere;
}

.corehub-cart-line button {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #a53844;
  cursor: pointer;
}

.corehub-cart-line button svg {
  width: 18px;
  height: 18px;
}

.corehub-cart > footer {
  border-top: 1px solid #dfe5ec;
  font-size: 17px;
}

.corehub-cart-empty,
.corehub-demo-note {
  margin: 0;
  padding: 16px 18px;
}

.corehub-cart-clear {
  padding: 0 18px 12px;
}

.corehub-cart-clear .btn {
  width: 100%;
}

.corehub-demo-note {
  border-top: 1px solid #edf1f5;
  font-size: 12px;
  line-height: 1.5;
}

.files-currency {
  display: flex;
  justify-content: center;
  gap: 18px;
  padding: 16px;
}

.files-category-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 16px 18px;
  list-style: none;
}

.files-category-list li,
.files-side-file {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
  color: #344255 !important;
}

.files-category-list span {
  color: #17202a;
  font-weight: 900;
}

.files-side-file {
  display: grid;
  padding: 12px 18px;
  border-top: 1px solid #edf1f5;
}

.files-browse-link {
  display: block;
  padding: 14px 18px;
  border-top: 1px solid #edf1f5;
  text-align: center;
}

.files-empty {
  padding: 28px;
  color: #7f8b99;
}

@media (max-width: 980px) {
  .forum-ipb-topbar .forum-nav-head,
  .forum-top-actions,
  .forum-page-tools,
  .forum-profile-completion,
  .forum-topic-hero-card {
    align-items: stretch;
    flex-direction: column;
  }

  .forum-ipb-topbar .forum-primary-nav,
  .forum-secondary-nav {
    overflow-x: auto;
    justify-content: flex-start;
  }

  .forum-ipb-topbar .forum-global-search {
    min-width: 260px;
  }

  .forum-layout,
  .files-market-layout,
  .forum-messenger-layout {
    grid-template-columns: 1fr !important;
  }

  .forum-index-row {
    grid-template-columns: 46px minmax(0, 1fr) !important;
  }

  .forum-index-count,
  .forum-index-last {
    grid-column: 2;
    justify-items: start;
  }
}

/* CoreHub forum polish pass: calmer typography, clean menus, fixed members grid */
.top-nav a,
.site-footer a,
.forum-primary-nav a,
.forum-secondary-nav a,
.forum-page-tools a,
.forum-subforum-links a,
.forum-toolbar a,
.profile-hover-menu a,
.forum-breadcrumbs a {
  text-decoration: none !important;
}

.top-nav a span,
.site-footer a span,
.forum-primary-nav a span,
.forum-secondary-nav a span,
.forum-page-tools a span {
  text-decoration: none !important;
}

.forum-secondary-nav a,
.forum-page-tools a,
.forum-subforum-links a,
.forum-index-count small,
.forum-topic-line small,
.forum-toolbar small,
.forum-widget small,
.forum-member-card small {
  font-weight: 500 !important;
}

.forum-toolbar h1,
.forum-topic-hero-card h1,
.forum-index-main > a,
.forum-topic-title-link,
.forum-post-author,
.forum-user-link .rank-username,
.rank-username-link {
  font-weight: 750 !important;
}

.forum-member-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  gap: 14px !important;
}

.forum-member-card {
  min-height: 96px;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  padding: 16px !important;
  border-color: #e6ebf1 !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .05);
}

.forum-member-card:hover {
  background: #fbfdff !important;
  border-color: #cfe0f5 !important;
  transform: translateY(-1px);
}

.forum-member-card .forum-mini-avatar-lg {
  width: 64px !important;
  height: 64px !important;
  border-radius: 14px !important;
  background: #f3f6fb !important;
  color: #17202a !important;
}

.forum-section-title {
  color: #17202a !important;
  background: #f3f7fb !important;
  font-weight: 700 !important;
}

.forum-layout input,
.forum-layout textarea,
.forum-layout select,
.forum-messenger-shell input,
.forum-messenger-shell textarea,
.forum-messenger-shell select,
.files-market-layout input,
.files-market-layout textarea,
.files-market-layout select {
  color: #17202a !important;
  background: #fff !important;
  border-color: #d8e2ee !important;
}

.forum-topic-side-actions {
  display: grid;
  justify-items: end;
  gap: 12px;
}

.forum-solved-jump,
.forum-solved-chip,
.forum-solution-label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: max-content;
  border-radius: 999px;
  color: #fff !important;
  background: linear-gradient(135deg, #29a47b, #16865f);
  box-shadow: 0 10px 22px rgba(22, 134, 95, .22);
  text-decoration: none !important;
  font-weight: 700;
}

.forum-solved-jump {
  padding: 9px 13px;
}

.forum-solved-chip {
  margin-left: 8px;
  padding: 4px 9px;
  font-size: 11px;
}

.forum-solution-label {
  padding: 5px 10px;
  font-size: 12px;
}

.forum-post.is-solution {
  border-color: #58b99a !important;
  box-shadow: 0 0 0 3px rgba(88, 185, 154, .14), 0 18px 48px rgba(15, 23, 42, .06);
}

.forum-post.is-solution .forum-post-meta {
  background: #f2fbf7 !important;
}

.forum-topic-comments {
  display: grid;
  gap: 10px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #edf1f5;
}

.forum-topic-comment {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  padding: 12px;
  border: 1px solid #edf1f5;
  border-radius: 14px;
  background: #fbfdff;
}

.forum-topic-comment.is-solution {
  border-color: #58b99a;
  background: #f2fbf7;
  box-shadow: 0 0 0 3px rgba(88, 185, 154, .12);
}

.forum-topic-comment header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 5px;
}

.forum-topic-comment time {
  color: #8b97a4;
  font-size: 12px;
}

.forum-comment-inline-form {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px dashed #cbd9e8;
  border-radius: 14px;
  background: #fff;
}

.forum-comment-inline-form textarea {
  min-height: 82px;
  resize: vertical;
}

.forum-comment-inline-form button {
  justify-self: end;
}

.forum-chatbox {
  overflow: hidden;
  margin-top: 18px;
  padding: 0 !important;
}

.forum-chatbox header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 18px 20px;
  border-bottom: 1px solid #edf1f5;
}

.forum-chatbox h2 {
  margin: 0;
  color: #17202a;
  font-size: 18px;
  font-weight: 750;
}

.forum-chatbox header p {
  margin: 4px 0 0;
  color: #748293;
}

.forum-chat-mute,
.forum-chat-emoji,
.forum-chat-delete {
  border: 0;
  background: transparent;
  cursor: pointer;
}

.forum-chat-notice {
  padding: 12px 20px;
  color: #5f6b7a;
  background: #fffde0;
  text-align: center;
}

.forum-chat-messages {
  max-height: var(--shoutbox-height, 360px);
  overflow-y: auto;
  background: #fff;
}

.shoutbox-slot-left,
.shoutbox-slot-right {
  margin-top: 0;
}

.forum-layout:has(.shoutbox-slot-left) {
  grid-template-columns: 318px minmax(0, 1fr) !important;
}

.forum-layout:has(.shoutbox-slot-left) .forum-sidebar {
  order: 1;
}

.forum-layout:has(.shoutbox-slot-left) .forum-main {
  order: 2;
}

.shoutbox-slot-floating {
  position: fixed !important;
  right: 22px;
  bottom: 22px;
  width: min(420px, calc(100vw - 32px));
  max-height: min(620px, calc(100vh - 44px));
  margin: 0 !important;
  z-index: 10000;
  border: 1px solid rgba(16, 24, 40, .12);
  border-radius: 18px !important;
  box-shadow: 0 26px 80px rgba(15, 23, 42, .24);
  animation: shoutboxFloatIn .28s ease-out both;
}

.shoutbox-slot-floating .forum-chat-messages {
  max-height: min(var(--shoutbox-height, 360px), calc(100vh - 238px));
}

.shoutbox-slot-floating .forum-chat-notice {
  display: none;
}

@keyframes shoutboxFloatIn {
  from {
    opacity: 0;
    transform: translateY(16px) scale(.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@media (max-width: 900px) {
  .forum-layout:has(.shoutbox-slot-left) {
    grid-template-columns: 1fr !important;
  }

  .forum-layout:has(.shoutbox-slot-left) .forum-main,
  .forum-layout:has(.shoutbox-slot-left) .forum-sidebar {
    order: initial;
  }

  .shoutbox-slot-floating {
    right: 12px;
    bottom: 12px;
    width: calc(100vw - 24px);
    max-height: calc(100vh - 24px);
  }
}

.forum-mini-avatar-fallback {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, #10a37f, #1883c3);
  font-weight: 800;
}

.forum-chat-row {
  position: relative;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  padding: 12px 20px;
  border-bottom: 1px solid #edf1f5;
}

.forum-chat-row header {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0;
  border: 0;
}

.forum-chat-row time {
  color: #8b97a4;
  font-size: 12px;
}

.forum-chat-row p {
  margin: 4px 0 0;
  color: #2f3b49;
}

.forum-chat-mention {
  color: #146fb0;
  font-weight: 700;
}

.forum-chat-delete {
  position: absolute;
  top: 10px;
  right: 12px;
  color: #a0a9b6;
  font-size: 18px;
}

.forum-chat-empty,
.forum-chat-login {
  margin: 0;
  padding: 20px;
  color: #7a8796;
}

.forum-chat-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px 48px;
  gap: 8px;
  padding: 14px;
  border-top: 1px solid #edf1f5;
  background: #fbfdff;
}

.forum-chat-form input {
  min-height: 46px;
  padding: 0 14px;
  border: 1px solid #dbe5ef;
  border-radius: 10px;
  color: #17202a;
  background: #fff;
}

.forum-chat-form button {
  min-height: 46px;
  border-radius: 10px;
}

.forum-chat-form button[type="submit"] {
  border: 0;
  color: #fff;
  background: #1883c3;
}

.user-autocomplete-popover {
  position: absolute;
  z-index: 10020;
  overflow: hidden;
  border: 1px solid #dce6f1;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 55px rgba(15, 23, 42, .18);
}

.user-suggest-row {
  width: 100%;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 3px 10px;
  align-items: center;
  padding: 10px 12px;
  border: 0;
  border-bottom: 1px solid #eef2f7;
  color: #17202a;
  background: #fff;
  text-align: left;
  cursor: pointer;
}

.user-suggest-row:last-child {
  border-bottom: 0;
}

.user-suggest-row:hover,
.user-suggest-row.is-active {
  background: #f2f7fc;
}

.user-suggest-row img,
.user-suggest-row > span {
  width: 38px;
  height: 38px;
  grid-row: span 2;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #eef4fb;
  object-fit: cover;
  font-weight: 750;
}

.user-suggest-row strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 750;
}

.user-suggest-row small,
.user-suggest-empty {
  color: #718093;
}

.user-suggest-empty {
  padding: 12px 14px;
}

.files-submit-card {
  margin-bottom: 16px;
}

.files-submit-form {
  margin-top: 12px;
}

.file-tile footer .btn {
  margin-left: auto;
  padding: 8px 12px;
  text-decoration: none !important;
}

.forum-index-row {
  grid-template-columns: 58px minmax(0, 1fr) 104px 104px minmax(300px, .54fr) !important;
}

.forum-index-last {
  min-width: 0;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  align-items: center;
}

.forum-index-last-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
  align-content: center;
}

.forum-index-last-title {
  min-width: 0;
  display: block;
  overflow: hidden;
  color: #17202a !important;
  text-overflow: ellipsis;
  line-height: 1.28;
  font-size: 14px;
  font-weight: 750 !important;
}

.forum-index-last-meta {
  min-width: 0;
  display: flex !important;
  align-items: center;
  gap: 5px;
  margin: 0 !important;
  color: #7c8895 !important;
  line-height: 1.2;
}

.forum-index-last-meta .rank-username-link {
  max-width: 120px;
  display: inline-flex;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.forum-index-last-meta > span {
  color: #7c8895;
  white-space: nowrap;
}

.forum-index-last .forum-topic-tag,
.forum-index-last .forum-topic-icon {
  display: none !important;
}

.forum-topic-tag-image {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  margin: 0 6px 0 0 !important;
  padding: 0 !important;
  color: inherit !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transform: translateY(-1px);
}

.forum-topic-tag-image img {
  display: block !important;
  width: auto !important;
  height: 22px !important;
  max-width: 160px !important;
  object-fit: contain !important;
}

.forum-topic-hero-card .forum-topic-tag-image img,
.forum-topic-page h1 .forum-topic-tag-image img {
  height: 26px !important;
  max-width: 190px !important;
}

.forum-topic-tag{text-decoration:none}
.forum-post-tags a{display:inline-flex;align-items:center;gap:4px;text-decoration:none}
.forum-tag-hero{position:relative;isolation:isolate;overflow:hidden}.forum-tag-hero-cover{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}.forum-tag-hero.has-cover::after{content:"";position:absolute;z-index:-1;inset:0;background:rgba(15,23,42,.76)}
.forum-tag-hero-content{position:relative}.forum-tag-hero.has-cover .forum-tag-hero-content,.forum-tag-hero.has-cover .forum-tag-hero-content a,.forum-tag-hero.has-cover .forum-tag-hero-content p{color:#fff}.forum-tag-titleline{display:flex;min-width:0;align-items:center;gap:10px;margin-top:18px;color:inherit;font-size:clamp(26px,5vw,44px);font-weight:900;line-height:1.12}.forum-tag-titleline>span:last-child{min-width:0;overflow-wrap:anywhere}.forum-tag-titleline .forum-topic-tag{font-size:12px}.forum-tag-hero-stats{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.forum-tag-hero-stats span{padding:5px 9px;border:1px solid currentColor;border-radius:4px;font-size:11px;font-weight:800;opacity:.9}.forum-tag-page{display:grid;gap:14px}.forum-related-tags>div{display:flex;flex-wrap:wrap;gap:7px;padding-top:12px}.forum-related-tags .forum-topic-tag{margin:0}.forum-tag-page .forum-result-copy{min-width:0}
@media(max-width:640px){.forum-tag-titleline{align-items:flex-start;flex-direction:column;font-size:28px}.forum-tag-hero-stats{margin-top:10px}.forum-tag-page .forum-result{align-items:flex-start}.forum-tag-page .forum-result-time{width:100%;margin-left:52px}}

.forum-trending-hero{border-bottom:1px solid var(--line);background:#11161c}.forum-trending-heading{display:grid;grid-template-columns:54px minmax(0,1fr);gap:16px;align-items:center;margin-top:20px}.forum-trending-heading>span{display:grid;width:54px;height:54px;place-items:center;border:1px solid #e4ba42;border-radius:8px;background:#f3c84f;color:#17130a}.forum-trending-heading>span svg{width:26px;height:26px}.forum-trending-heading small{color:#e5be50;font-size:11px;font-weight:800;text-transform:uppercase}.forum-trending-heading h1{margin:3px 0 7px;font-size:34px;letter-spacing:0}.forum-trending-heading p{max-width:760px;margin:0;color:var(--muted);line-height:1.55}.forum-trending-layout{align-items:start}.forum-trending-page{min-width:0}.forum-trending-list-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px;border-bottom:1px solid var(--line)}.forum-trending-list-head .forum-section-title{margin:0}.forum-trending-list-head p{margin:5px 0 0;color:var(--muted);font-size:11px}.forum-trending-list-head>span{min-width:max-content;padding:5px 8px;border:1px solid var(--line);border-radius:4px;color:var(--muted);font-size:10px;font-weight:800}.forum-trending-list{display:grid}.forum-trending-item{display:grid;grid-template-columns:34px 38px minmax(0,1fr) 34px;gap:12px;align-items:start;padding:16px 18px;border-bottom:1px solid var(--line);background:#14191f}.forum-trending-item:last-child{border-bottom:0}.forum-trending-item:hover{background:#181f27}.forum-trending-item.is-pinned{box-shadow:inset 3px 0 #e4ba42}.forum-trending-rank{display:grid;width:32px;height:32px;place-items:center;border:1px solid #3b4653;border-radius:6px;color:#d7dee8;font-size:12px;font-weight:900}.forum-trending-type{display:grid;width:38px;height:38px;place-items:center;border-radius:7px;background:#252e38;color:#91b7f8}.forum-trending-type svg{width:18px;height:18px}.forum-trending-copy{min-width:0}.forum-trending-copy>div:first-child{display:flex;flex-direction:column;gap:3px}.forum-trending-copy>div:first-child small{color:#91b7f8;font-size:9px;font-weight:800;text-transform:uppercase}.forum-trending-copy>div:first-child a{color:#edf3fa;font-size:14px;font-weight:800;line-height:1.35;text-decoration:none;overflow-wrap:anywhere}.forum-trending-copy>div:first-child a:hover{color:#fff;text-decoration:underline}.forum-trending-copy>p{margin:7px 0 0;color:#adb7c4;font-size:11px;line-height:1.55}.forum-trending-meta,.forum-trending-signals{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:9px;color:var(--muted);font-size:10px}.forum-trending-meta span,.forum-trending-signals span{display:inline-flex;align-items:center;gap:4px}.forum-trending-meta svg,.forum-trending-signals svg{width:12px;height:12px}.forum-trending-signals em{padding:3px 6px;border-radius:4px;background:#242c35;color:#c2ccd8;font-style:normal}.forum-trending-open{display:grid;width:32px;height:32px;place-items:center;border-radius:6px;color:#9eabb9;text-decoration:none}.forum-trending-open:hover{background:#28323d;color:#fff}.forum-trending-open svg{width:17px;height:17px}.forum-trending-widget-list{display:grid}.forum-trending-widget-list>a{display:grid;grid-template-columns:25px minmax(0,1fr);gap:8px;align-items:start;padding:9px 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.forum-trending-widget-list>a:last-child{border-bottom:0}.forum-trending-widget-list>a>strong{display:grid;width:24px;height:24px;place-items:center;border-radius:5px;background:#f3c84f;color:#19150a;font-size:10px}.forum-trending-widget-list>a>span{min-width:0;color:#e6edf5;font-size:11px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.forum-trending-widget-list small{display:block;margin-top:3px;color:var(--muted);font-size:9px;font-weight:500}.forum-trending-widget .forum-widget-link{margin-top:9px}
@media(max-width:720px){.forum-trending-heading{grid-template-columns:42px minmax(0,1fr);gap:11px}.forum-trending-heading>span{width:42px;height:42px}.forum-trending-heading>span svg{width:21px;height:21px}.forum-trending-heading h1{font-size:27px}.forum-trending-list-head{align-items:flex-start;flex-direction:column}.forum-trending-item{grid-template-columns:28px 34px minmax(0,1fr);gap:9px;padding:14px 12px}.forum-trending-rank{width:27px;height:27px}.forum-trending-type{width:34px;height:34px}.forum-trending-copy{grid-column:3}.forum-trending-open{grid-column:3;justify-self:end;margin-top:-30px}.forum-trending-meta{display:grid;grid-template-columns:1fr}.forum-trending-signals{padding-right:38px}}

@media (max-width: 980px) {
  .forum-index-row {
    grid-template-columns: 46px minmax(0, 1fr) !important;
  }

  .forum-index-last {
    grid-column: 2;
    justify-items: start;
  }
}

@media (max-width: 760px) {
  .forum-nav-head,
  .forum-pro-topbar,
  .forum-account-box,
  .forum-mini-brand {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .forum-mini-brand {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 40px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    row-gap: 1px !important;
    align-items: center !important;
  }

  .forum-mini-brand > span {
    grid-row: 1 / span 2;
  }

  .forum-mini-brand strong,
  .forum-mini-brand small {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .forum-mini-brand strong {
    font-size: 20px !important;
  }

  .forum-account-box .profile-hover-dropdown {
    width: min(340px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    right: 0 !important;
    left: auto !important;
  }
}

/* CoreHub rich editor — klasyczny układ IPBoard/Invision */
.rich-editor-ipb {
  overflow: hidden !important;
  border: 1px solid #cfd9e5 !important;
  border-radius: 4px !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04) !important;
}

.rich-editor-ipb .rich-toolbar {
  min-height: 50px !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
  padding: 7px 10px !important;
  border-bottom: 1px solid #dfe7f0 !important;
  background: linear-gradient(180deg, #ffffff 0%, #f6f8fb 100%) !important;
}

.rich-editor-ipb .rich-toolbar-group {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin: 3px 8px 3px 0;
  padding-right: 8px;
  border-right: 1px solid #dce4ee;
}

.rich-editor-ipb .rich-toolbar-group:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: 0;
}

.rich-editor-ipb .rich-toolbar-button,
.rich-editor-ipb .rich-toolbar button {
  width: auto !important;
  min-width: 32px !important;
  min-height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 8px !important;
  border: 0 !important;
  border-radius: 3px !important;
  color: #344255 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

.rich-editor-ipb .rich-toolbar-button:hover,
.rich-editor-ipb .rich-toolbar button:hover {
  background: #eaf1f8 !important;
  color: #0f172a !important;
}

.rich-editor-ipb .rich-toolbar-button:focus-visible,
.rich-editor-ipb .rich-toolbar-select:focus-visible,
.rich-editor-ipb .rich-color-button:focus-within {
  outline: 2px solid rgba(37, 99, 235, .35) !important;
  outline-offset: 1px !important;
}

.rich-editor-ipb .rich-toolbar-gif {
  min-width: 42px !important;
  padding-inline: 9px !important;
  border: 1px solid #dce4ee !important;
  border-radius: 3px !important;
  background: #fff !important;
  color: #1f2937 !important;
  font-size: 11px !important;
  letter-spacing: .04em !important;
}

.rich-editor-ipb .rich-toolbar-select {
  min-height: 32px !important;
  width: auto !important;
  min-width: 92px !important;
  padding: 5px 28px 5px 9px !important;
  border: 1px solid #d8e2ec !important;
  border-radius: 3px !important;
  color: #344255 !important;
  background: #fff !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
}

.rich-editor-ipb .rich-toolbar-font {
  min-width: 126px !important;
}

.rich-editor-ipb .rich-toolbar-format,
.rich-editor-ipb .rich-toolbar-size {
  min-width: 96px !important;
}

.rich-editor-ipb .rich-color-button {
  position: relative;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
  color: #344255;
  background: transparent;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
}

.rich-editor-ipb .rich-color-button::after {
  content: "";
  position: absolute;
  right: 7px;
  bottom: 5px;
  left: 7px;
  height: 3px;
  border-radius: 999px;
  background: #111827;
}

.rich-editor-ipb .rich-color-highlight::after {
  background: #fff3a3;
}

.rich-editor-ipb .rich-color-button:hover {
  background: #eaf1f8;
}

.rich-editor-ipb .rich-color-button input[type="color"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  cursor: pointer !important;
}

.rich-editor-ipb .rich-area,
.rich-editor-ipb .rich-preview {
  min-height: 240px !important;
  padding: 18px 20px !important;
  color: #17202a !important;
  background: #fff !important;
  outline: 0 !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

.rich-editor-ipb .rich-area:empty::before {
  content: attr(data-placeholder);
  color: #9aa7b6;
  pointer-events: none;
}

.rich-editor-ipb .rich-area.is-invalid {
  box-shadow: inset 0 0 0 2px #e75b69 !important;
}

.rich-editor-ipb .rich-area blockquote,
.rich-editor-ipb .rich-preview blockquote {
  margin: 14px 0;
  padding: 13px 16px;
  border-left: 4px solid #c9d5e3;
  border-radius: 3px;
  background: #f1f5fa;
  color: #344255;
}

.rich-editor-ipb .rich-area pre,
.rich-editor-ipb .rich-preview pre {
  overflow: auto;
  margin: 14px 0;
  padding: 14px 16px;
  border-radius: 4px;
  background: #17202a;
  color: #f8fafc;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  line-height: 1.6;
}

.rich-editor-ipb .rich-editor-table,
.rich-editor-ipb .rich-preview table {
  width: 100%;
  margin: 14px 0;
  border-collapse: collapse;
}

.rich-editor-ipb .rich-editor-table td,
.rich-editor-ipb .rich-preview td,
.rich-editor-ipb .rich-preview th {
  min-width: 90px;
  padding: 10px 12px;
  border: 1px solid #d8e2ec;
}

.rich-editor-ipb .rich-preview {
  display: none;
}

.rich-editor-ipb.is-preview-mode .rich-area {
  display: none !important;
}

.rich-editor-ipb.is-preview-mode .rich-preview {
  display: block !important;
}

.rich-preview-empty {
  margin: 0;
  color: #8b97a6;
  font-style: italic;
}

.forum-compose-card .rich-editor-ipb .rich-area {
  min-height: 330px !important;
}

.forum-compose-card .rich-editor-ipb + .forum-compose-upload {
  margin-top: -1px !important;
  border: 1px solid #cfd9e5 !important;
  border-top: 0 !important;
  border-radius: 0 0 4px 4px !important;
  background: #eef4fb !important;
}

.forum-compose-card .rich-editor-ipb:has(+ .forum-compose-upload) {
  border-radius: 4px 4px 0 0 !important;
}

@media (max-width: 760px) {
  .rich-editor-ipb .rich-toolbar {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  .rich-editor-ipb .rich-toolbar-group {
    flex: 0 0 auto;
  }

  .rich-editor-ipb .rich-area,
  .rich-editor-ipb .rich-preview {
    min-height: 210px !important;
    padding: 15px !important;
    font-size: 15px !important;
  }
}
