/* =========================
   FORUM ALERT SYSTEM
   ========================= */

.forum-alert {
  position: relative;
  margin-bottom: 1rem;
  padding: 8px 12px 8px 36px;
  border-radius: 4px;
  font-size: 0.9rem;
  line-height: 1.4;
  background: rgba(120,120,120,0.18); /* neutral / secondary */
  color: #e6e6e6;
  border-left: 4px solid rgba(180,180,180,0.6);
}

/* icon */
.forum-alert::before {
  content: "\f05a"; /* info-circle */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 12px;
  top: 9px;
  font-size: 0.9rem;
  opacity: 0.85;
}

/* -------------------------
   VARIANTS
   ------------------------- */

/* ERROR / RED */
.forum-alert--error {
  background: rgba(232, 0, 0, 0.25);
  border-left-color: rgba(255, 80, 80, 0.85);
  color: #ffe3e3;
}
.forum-alert--error::before {
  content: "\f071"; /* exclamation-triangle */
  color: #ffd24a;
}

/* WARNING / YELLOW */
.forum-alert--warning {
  background: rgba(255, 196, 0, 0.22);
  border-left-color: rgba(255, 200, 60, 0.85);
  color: #fff3c4;
}
.forum-alert--warning::before {
  content: "\f06a"; /* exclamation-circle */
  color: #ffd24a;
}

/* SUCCESS / GREEN */
.forum-alert--success {
  background: rgba(28, 232, 0, 0.25);
  border-left-color: rgba(80, 220, 120, 0.85);
  color: #eaffea;
}
.forum-alert--success::before {
  content: "\f058"; /* check-circle */
  color: #8dffb1;
}

/* INFO / BLUE */
.forum-alert--info {
  background: rgba(70, 100, 140, 0.25);
  border-left-color: rgba(120, 170, 255, 0.85);
  color: #d6e6ff;
}
.forum-alert--info::before {
  content: "\f05a"; /* info-circle */
  color: #9ec7ff;
}

/* SPECIAL / PURPLE */
.forum-alert--special {
  background: rgba(155, 100, 255, 0.25);
  border-left-color: rgba(190, 150, 255, 0.85);
  color: #efe6ff;
}
.forum-alert--special::before {
  content: "\f0eb"; /* lightbulb */
  color: #d6b8ff;
}


a.ignored-message-toggle,a.ignored-message-toggle:visited {
  color: var(--link-primary) !important;
  text-decoration: none !important;
  cursor: pointer !important;
}
a.ignored-message-toggle:hover,a.ignored-message-toggle:focus,a.ignored-message-toggle:active {
  color: var(--link-secondary) !important;
  text-decoration: none !important;
}

#ForumAdmins td, #ForumMods td, #ForumLocalMods td {
  border: none;
}
.forumMods {
  border-bottom: 1px solid #3b3b3b;
  margin-bottom: 20px;
}

.online {
  color: green;
}

.pagination {
    padding: 25px 0;
}


.cc-details {
	margin: .4em 0 .4em;
	padding: 1%;
}

.cc-details__summary {
  background: var(--bg-secondary);
  padding: 15px 15px 15px 45px;
  font-size: 15px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  position: relative;
  border-radius: 5px;
  cursor: pointer;
  outline: none;
}
.cc-details[open] .cc-details__summary {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.cc-details__summary::-webkit-details-marker {
	display: none;
}
.cc-details__summary:before{
  color: #808080;
  display: block;
  float: left;
  margin: 0px 10px 0 -20px;
  padding: 0;
  font-family: "Font Awesome 5\ Free";
  font-weight: 900;
  content: "\f055";
}

.cc-details[open] .cc-details__summary:before {
  color: #808080;
  display: block;
  float: left;
  margin: 0px 10px 0 -20px;
  padding: 0;
  font-family: "Font Awesome 5\ Free";
  font-weight: 900;
  content: "\f056";
}


.cc-details .cc-details__content {
  padding: 15px 35px;
  color: white;
  border-top: 0;
  background: var(--bg-secondary);
}





/* bbcode */
.smiley {
  display: inline-block;
  position: relative;
  width: 15px;
  height: 15px;

}

.smiley::before {
    content: "";
    width: 15px;
    height: 15px;
    background: url(../images/smileys.gif);
    position: absolute;
    top: 0;
    left: 0;
}
.sm0::before { background-position: 0px; }
.sm1::before { background-position: 135px; }
.sm2::before { background-position: 120px; }
.sm3::before { background-position: 105px; }
.sm4::before { background-position: 90px; }
.sm5::before { background-position: 75px; }
.sm6::before { background-position: 60px; }
.sm7::before { background-position: 45px; }
.sm8::before { background-position: 30px; }
.sm9::before { background-position: 15px; }
.heart::before {background:none; content:"<3";width:17px;}




.bb-container__button-wrapper .btn-group {
  margin-bottom: 5px;
}
#bb-button--color-select {
    position: relative;
    height: 100%;
}

.spoiler-container {
  position: relative;
}
.spoiler-header--title {
  color: #ffc81a;
  margin-right: .71429em;
  display: inline;
  text-transform: uppercase;
  font-weight: bold;
}
.spoiler-header--title::before {
  content: "\f071";
  position: relative;
  top: .07143em;
  margin-right: .21429em;
  font-family: 'Font Awesome 5 Free';
  font-size: 1.04286em;
}
.spoiler-contents:not(.spoiler-contents--show) {
  height: 0;
  visibility: hidden;
  overflow: hidden;
  border-width: 0;
  padding-top: 0;
  padding-bottom: 0;
  opacity: 0;
  transform: scaleY(0);
  -ms-transform: scaleY(0);
}
.spoiler-contents.spoiler-contents--show {
  display: block;
  border: 1px solid rgba(255,255,255,0.1);
  background-color: rgba(255,255,255,0.05);
  padding: 20px 0 20px 20px;
  transition: transform .2s, padding .2s, border-width .2s, opacity .6s;

}




.quote,
.quote > .quote > .quote {
  background: rgb(238 238 238 / 2%);
  border: 1px solid #515151;
  display: block;
  margin: 10px 0 10px 10px;
  padding: 10px;
}
.quote > .quote,
.quote > .quote > .quote > .quote {
    background-color: rgb(255,255,255,0.03);
}


.current-page {
  text-align: center;
  margin-bottom: 10px;
  padding-bottom: 10px;
}
.forum-pagination__form {
  display: inline-block;
}
.forum-pagination__input-number {
  min-width: 45px !important;
}


/* ============================
   COMMUNITY FORUMS
   ============================ */

#forum-communities {
  border-top: 1px solid rgba(255,255,255,.5);
}

.visibleCmSection {
  border-bottom: 1px solid rgba(255,255,255,.5);
}

.invisibleCmSection,
.cmName,
.hideCommunityMessage {
  display: none;
}

.showCommunityMessage {
  margin-right: 5px;
}

#active-community-message {
  color: white;
  font-weight: bold;
}

#active-community-message a {
  text-decoration: underline;
}

#forum-communities .forum-category__title {
  position: relative;
}

@media (min-width: 800px) {
  #forum-community__selection {
    position: absolute;
    top: 0;
    right: 0;
    width: 30%;
    z-index: 300;
  }
  .forum-title .is-solution {
    font-size: 1rem;
    position: relative;
    top: -6px;
  }
}

/* ============================
   FORUM CATEGORY WRAPPER
   ============================ */

.forum-category--list {
  width: 100%;
}

.forum-category {
  margin: 0 auto;
  padding: 24px;
}

@media (max-width: 800px) {
  .forum-category {
    max-width: 100%;
    padding: 16px;
  }
}

.forum-category__title {
  position: relative;
  cursor: pointer;
}

.forum-category__title-name {
  width: calc(100% - 40px);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.forum-category__expand {
  position: absolute;
  right: 0;
  top: 0;
  font-size: 1.6rem;
}

.forum-category__expand::before {
  content: "\f0d8";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.forum-category--min .forum-category__container {
  display: none;
}

.forum-category--min .forum-category__expand::before {
  content: "\f0d7";
}

/* ============================
   FORUM LIST (BOARDS)
   ============================ */

.forum-category-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.forum-row {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  gap: 16px;
  align-items: center;

  padding: 16px 12px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  transition: background 0.2s ease;
}

.forum-row:hover {
  background: linear-gradient(
    to right,
    rgba(255,255,255,0.04),
    rgba(255,255,255,0)
  );
}

/* Forum icon */
.forum-row--img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  filter: drop-shadow(0 0 6px rgba(80,160,255,0.25));
}

/* Info block */
.forum-row--info {
  min-width: 0;
}

.forum-row--name {
  font-size: 1.2rem;
  font-weight: normal;
  text-transform: uppercase;
  line-height: 1.1;
}

.forum-row--desc {
  font-size: 0.9rem;
  opacity: 0.85;
}

/* Meta */
.forum-row--meta {
  display: flex;
  gap: 20px;
  font-size: 0.85rem;
  text-align: right;
}

/* Mobile layout */
@media (max-width: 800px) {
  .forum-row {
    grid-template-columns: 32px 1fr;
    grid-template-areas:
      "icon info"
      "meta meta";
  }

  .forum-row--meta {
    grid-area: meta;
    justify-content: space-between;
    padding-top: 8px;
    margin-top: 8px;
    border-top: 1px solid rgba(255,255,255,0.1);
  }

  .forum-row--img {
    width: 30px;
    height: 30px;
  }

  .forum-row--name {
    font-size: 1.05rem;
  }
}

/* =========================
   BOARD STATISTICS
   ========================= */

#board-statistics {
  margin-top: 24px;
}

/* Container alignment */
#board-statistics .forum-category {
  max-width: 80%;
  margin: 0 auto;
  padding: 20px;
}

@media (max-width: 800px) {
  #board-statistics .forum-category {
    max-width: 100%;
    padding: 16px;
  }
}

/* Grid layout for stats */
#board-statistics .forum-category__container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

@media (min-width: 900px) {
  #board-statistics .forum-category__container {
    grid-template-columns: 1fr 1fr;
  }
}

/* Individual stat blocks */
#board-statistics .online-user-total {
  padding: 16px 18px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 6px;
}

/* Slight distinction for admin-only block */
#board-statistics .user-total--today {
  background: rgba(214,180,111,0.08);
  border-color: rgba(214,180,111,0.35);
}

/* Headings */
#board-statistics .online-user-total h5 {
  margin: 0 0 6px 0;
  font-size: 0.85rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--h1to6);
}

/* Description text */
#board-statistics .online-user-total p {
  margin: 0 0 10px 0;
  font-size: 0.8rem;
  color: var(--color-secondary);
}

/* User list container */
#board-statistics .online-user-total > div {
  font-size: 0.78rem;
  line-height: 1.6;
  word-break: break-word;
}

/* User links */
#board-statistics .online-user-total a {
  color: var(--link-primary);
  text-decoration: none;
  margin-right: 4px;
  white-space: nowrap;
}

#board-statistics .online-user-total a:hover {
  color: var(--link-secondary);
  text-decoration: underline;
}

/* Private users */
#board-statistics .online-user-total span {
  opacity: 0.6;
  margin-right: 4px;
}

/* Mobile tightening */
@media (max-width: 600px) {
  #board-statistics .online-user-total {
    padding: 14px;
  }

  #board-statistics .online-user-total > div {
    font-size: 0.75rem;
  }
}


/* ===========================
   THREAD LIST HEADER
   =========================== */

.thread-list--header {
  display: grid;
  grid-template-columns: 1fr 140px 220px;
  align-items: center;
  margin-bottom: 10px;
  font-size: 0.8rem;
  opacity: 0.75;
}

.list-header--item-topics {
  text-align: left;
}

.list-header--item-replies,
.list-header--item-last-post {
  text-align: right;
}

@media (max-width: 800px) {
  .thread-list--header {
    display: none;
  }
}


/* =========================
   THREAD LISTING CONTAINER
   ========================= */

.thread-listing {
  margin-top: 20px;
  width: 100%;
}


/* =========================
   THREAD LIST HEADER
   ========================= */

.thread-list--header {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  font-size: 0.8rem;
  opacity: 0.75;
  width: 100%;
}

.list-header--item {
  display: block;
}

.list-header--item-topics {
  flex: 1;
}

.list-header--item-replies {
  width: 90px;
  text-align: right;
}

.list-header--item-last-post {
  width: 200px;
  text-align: right;
}

/* Hide entire header on mobile */
@media (max-width: 800px) {
  .thread-list--header {
    display: none;
  }
}


/* =========================
   THREAD ROW BASE
   ========================= */

.forum-thread {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 12px 6px;
  border-top: 1px solid rgba(255,255,255,0.08);
  transition: background 0.2s ease;
}

.forum-thread:hover {
  background: linear-gradient(
    to right,
    rgba(255,255,255,0.05),
    rgba(255,255,255,0)
  );
}

/* Sticky thread */
.forum-thread--sticky {
  background: rgba(255,255,255,0.04);
}

/* Hidden thread (mods/admins) */
.forum-thread--hidden {
  background: rgba(108, 0, 0, 0.32);
}

.forum-thread--hidden:hover {
  background: rgba(140, 0, 0, 0.45);
}


/* =========================
   THREAD INFO (LEFT COLUMN)
   ========================= */

.forum-thread__info {
  flex: 1;
  min-width: 0;
}

.forum-thread__name {
  margin: 0 0 4px 0;
  font-size: 1.05rem;
  line-height: 1.3;
  font-weight: normal;
  text-transform: uppercase;

  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.forum-title .is-solution {
  font-size: 0.75rem;
  position: relative;
  top: -3px;
}

/* Thread title link */
.forum-thread__name a {
  color: var(--link-primary);
  text-decoration: none;
}

.forum-thread__name a:hover {
  color: var(--link-secondary);
  text-decoration: underline;
}

/* Icons inside title */
.forum-thread__name img,
.forum-thread__name i {
  font-size: 0.9rem;
  opacity: 0.85;
}

/* Solution indicator */
.forum-thread__name .is-solution {
  color: #f0c04a;
}

/* Marks badge */
.forum-thread__meta--marks {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 6px;
  color: #ffd261;
  font-size: 1.35rem;
  filter: drop-shadow(0 0 3px rgba(255, 210, 97, 0.5));
}

.forum-thread__meta--marks span {
  position: absolute;
  font-size: 0.7rem;
  font-weight: 600;
  color: #000;
}

/* Description */
.forum-thread__desc {
  margin: 0;
  font-size: 0.8rem;
  color: var(--color-secondary);
}


/* =========================
   POSTS + LAST POST COLUMNS
   ========================= */

.forum-thread__posts,
.forum-thread__last-post {
  text-align: right;
  font-size: 0.75rem;
  color: var(--color-secondary);
  white-space: nowrap;
}

.forum-thread__posts {
  width: 90px;
}

.forum-thread__last-post {
  width: 200px;
}

.forum-thread__last-post a {
  color: var(--link-primary);
  text-decoration: none;
}

.forum-thread__last-post a:hover {
  color: var(--link-secondary);
  text-decoration: underline;
}


/* =========================
   RESPONSIVE BEHAVIOR
   ========================= */


/* Mobile layout */
@media (max-width: 801px) {
  .forum-thread {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .list-header--item-replies {
    display: none;
  }
  .forum-thread__posts {
    text-align:left;
  }


  .forum-thread__last-post {
    display: block;
    width: 100%;
    text-align: left;
    font-size: 0.75rem;
    color: var(--color-secondary);
  }

  .forum-thread__name {
    font-size: 1.2rem;
  }
}
.forum-thread__posts::before {
  content: attr(data-posts) " posts · ";
  opacity: 1;
}


/* Mobile: merge posts into mobile last-post */
@media (max-width: 800px) {
  .forum-thread__last-post {
    text-align: left;
  }
}


/* ============================
   FORUM CONTROLS
   ============================ */

.forum-controls {
  margin-bottom: 20px;
}

.forum-jump {
  display: block;
}

#forum-picker {
  height: 28px;
  font-size: 0.8rem;
}

.forum-buttons {
  display: block;
}

@media (min-width: 800px) {
  .forum-buttons {
    float: right;
  }

  .forum-jump {
    display: inline-block;
    width: 200px;
  }
}

/* ============================
   LINKS
   ============================ */

.preview-link {
  color: var(--link-primary);
}

.preview-link:hover {
  color: var(--link-secondary);
  text-decoration: none;
}


/* thread page */
.thread-title {
  font-size: 2em;
}

.thread-controls--first-admin { display: none; }

.thread-controls {
  position: relative;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  margin-bottom: 10px;

  background: var(--bg-tertiary);
  border-top: 2px solid var(--h1to6);

  transition: max-height 0.35s ease;
}

.thread-controls::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--h1to6);
}

.thread-controls.show-tools {
  max-height: 800px; /* plenty without being silly */
}


.mod-tool-container {
  padding: 12px 16px;
  margin: 0 auto;
  text-align:right;
}

.thread-view__option {
  margin-right: 10px;
}

@media (max-width: 800px) {
  .thread-controls {
    text-align: center;
  }

  .thread-view__option {
    display: block;
    margin-bottom: 8px;
  }

  .thread-view__option:not(.thread-view__option--move) {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.15);
    padding: 10px 12px;
    border-radius: 6px;

    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }

  .thread-view__option--move {
    display: block;
    width: 100%;
  }

  .thread-view__option--move .button.small {
    width: 100%;
    margin-bottom: 6px;
  }
}

@media (min-width: 800px) {
  #toggle-moderation {
    display: none;
  }

  .thread-controls {
    max-height: none;
    overflow: visible;
  }

  .thread-view__option {
    display: inline-block;
  }

  .thread-view__option--move {
    display: inline-block;
  }

  .thread-view__option-select {
    width: 250px;
    display: inline-block;
  }
}

#toggle-moderation.active i {
  transform: rotate(180deg);
  transition: transform 0.25s ease;
}


.thread-view__option-select {
  margin-bottom: 5px;
}
.forum-pagination--container .pagination {
  padding: 0px;
}



.thread-options {
  padding: 20px;
}
/* =========================================================
   FORUM POSTS – COMPLETE, CLEANED, FEATURE-PRESERVING
   ========================================================= */

/* -------------------------
   POST CARD CONTAINER
   ------------------------- */

.forum-post {
  max-width: 1200px;
  margin: 0 auto 24px;
  background: rgba(10,15,25,0.85);
  border: 1px solid rgba(255,255,255,0.1);
  border-left: 4px solid rgba(255,255,255,0.1);
  border-radius: 8px;
  overflow: hidden;
}

/* Role accents */
.forum-post--admin {
  border-left-color: #d6b46f;
  border-color: rgba(214,180,111,0.35);
}

.forum-post--lmod {
  border-left-color: #b06fd3;
  border-color: rgba(176,111,211,0.35);
}

.forum-post--fmod {
  border-left-color: #4cc832;
  border-color: rgba(76,200,50,0.35);
}

.forum-post--hidden,
.forum-post--moved {
  border-left-color: transparent;
  border-color: rgba(255,255,255,0.12);
}
.forum-post--admin,
.forum-post--lmod,
.forum-post--fmod {
  background-clip: padding-box;
}


/* -------------------------
   SPECIAL STATES
   ------------------------- */

.forum-post--moved {
  background:
    linear-gradient(136deg,
      transparent 10%,
      rgba(1,61,106,0.26) 40%,
      transparent 71%
    ),
    rgba(7,29,60,0.85);
}

.forum-post--hidden {
  background:
    linear-gradient(136deg,
      transparent 10%,
      rgba(106,1,1,0.26) 40%,
      transparent 71%
    ),
    rgba(47,3,3,0.85);
}

/* -------------------------
   CORE LAYOUT
   ------------------------- */

.forum-post__wrapper {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 24px;
  padding: 20px 24px;
}

/* -------------------------
   LEFT COLUMN – AUTHOR
   ------------------------- */

.forum-post__left {
  text-align: center;
}

.post-header__name {
  font-size: 1.15rem;
  font-weight: 600;
  margin-bottom: 4px;
}

.post-header__name a {
  color: #f1c96b;
  text-decoration: none;
}

.post-verified-icon {
  font-size: 0.85rem;
  color: #01a4ff;
  margin-left: 4px;
}

/* Role label */
.header-user__modtype {
  display: block;
  margin-top: 4px;
  font-size: 0.65rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  opacity: 0.85;
}
.forum-post--admin .header-user__modtype {
  color: #d6b46f;
}

.forum-post--lmod .header-user__modtype {
  color: #b06fd3;
}

.forum-post--fmod .header-user__modtype {
  color: #4cc832;
}



.forum-post--admin .header-user__modtype::before { content: "Forum Admin"; }
.forum-post--lmod  .header-user__modtype::before { content: "Local Mod"; }
.forum-post--fmod  .header-user__modtype::before { content: "Forum Mod"; }

/* Membership */
.header-user__membership {
  font-size: 0.75rem;
  color: #98c7f2;
  margin-bottom: 6px;
}

/* Avatar */
.header-avatar {
  width: 96px;
  height: 96px;
  margin: 10px auto;
  border-radius: 4px;
}

/* -------------------------
   POST COUNT / RANK PILL
   ------------------------- */

.header-meta.post-count-container {
  display:block;
}

.header-meta.post-count-rank {
  display: inline-flex;
  align-items: center;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.4;
  white-space: nowrap;
  border: 1px solid rgba(255,255,255,0.08);
}

.header-meta.post-count-rank::before {
  content: "";
  width: 6px;
  height: 6px;
  margin-right: 6px;
  border-radius: 50%;
  background: currentColor;
  opacity: 0.75;
}

/* Threshold text */
.rank-threshold {
  margin-left: 6px;
  font-size: 0.65em;
  font-weight: 500;
  opacity: 0.75;
}
.rank-threshold::after {
  content: " posts";
  opacity: 0.6;
}

/* -------------------------
   RANK COLORS (FULL SET)
   ------------------------- */

.post-rank--bronze      { background:#7a4a2e; color:#f2e2d2; }
.post-rank--iron        { background:#5c5f63; color:#e0e0e0; }
.post-rank--steel       { background:#6e7681; color:#f4f6f8; }
.post-rank--silver      { background:#aeb6c2; color:#1a1f26; }
.post-rank--gold        { background:#c9a13a; color:#2b1d05; }

.post-rank--mithril     { background:#3a3b56; color:#eaf5ff; }
.post-rank--adamant     { background:#3e6f4e; color:#e9fff1; }
.post-rank--rune        { background:#2f5f88; color:#e4f1ff; }
.post-rank--orikalkum   { background:#5b1f1f; color:#ffe7de; }
.post-rank--necronium   { background:#1f2e2a; color:#e6e9ec; }
.post-rank--bane        { background:#31354f; color:#ffe6e6; }
.post-rank--elder-rune  { background:#186b93; color:#e8fff8; }

.post-rank--primal      { background:#8a3f2f; color:#f2f2f2; }
.post-rank--platinum    { background:#d6dde6; color:#1b1f26; }

.post-rank--opal        { background:#eceff3; color:#1e2229; }
.post-rank--jade        { background:#9eb082; color:#e6fff3; }
.post-rank--red-topaz   { background:#c1618a; color:#fff1eb; }
.post-rank--sapphire    { background:#1e4fa3; color:#e7f0ff; }
.post-rank--emerald     { background:#178f55; color:#eafff3; }
.post-rank--ruby        { background:#a0182f; color:#ffe6ea; }
.post-rank--diamond     { background:#f7f9fc; color:#1c2026; }

.post-rank--dragonstone {
  background: linear-gradient(135deg, #760fb7, #2a0461);
  color:#ffe8f5;
}

.post-rank--moonstone {
  background: linear-gradient(135deg, #83abaf, #28a1a4,#04343e);
  color:#1a1e26;
}

.post-rank--onyx {
  background:#0e0e10;
  color:#e0e0e0;
  border-color: rgba(255,255,255,0.15);
}

.post-rank--hydrix {
  background: linear-gradient(135deg, #d4b13f, #8c6b14);
  color:#1a1403;
  border-color: rgba(255,215,100,0.5);
  box-shadow:
    0 0 10px rgba(212,177,63,0.6),
    inset 0 0 6px rgba(255,255,255,0.4);
}

/* Prestige */
.post-rank--platinum.prestige,
.post-rank--hydrix.prestige {
  box-shadow:
    0 0 6px rgba(255,255,255,0.5),
    inset 0 0 4px rgba(255,255,255,0.4);
}



/* -------------------------
   USER BADGES
   ------------------------- */

.user-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  margin-top: 10px;
}

.user-badge__icon,
.user-badge__rank {
  width: 40px;
  opacity: 0.4;
  transition: opacity 0.3s ease;
}
.user-badge__icon:hover,
.user-badge__rank:hover {
  opacity: 1;
}


/* -------------------------
   RIGHT COLUMN – POST BODY
   ------------------------- */

.forum-post__meta {
  margin-bottom: 10px;
  font-size: 0.85rem;
  color: var(--color-secondary);
}

/* OP + solution */
.forum-post__meta .original-poster {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  background: #1671a4;
  color: #fff;
  text-align: center;
  transform: rotate(45deg);
}
.forum-post__meta .original-poster span {
  display: block;
  transform: rotate(-45deg);
  font-size: 0.75rem;
  position: relative;
  top: 1px;
}@media (max-width: 992px) {

  /* Reset any legacy positioning */
  .forum-post__left,
  .post-header__name,
  .post-header__meta,
  .user-badges {
    position: static !important;
    float: none !important;
  }

  /* Mobile header layout */
  .forum-post__left {
    display: grid;
    grid-template-columns: 64px 1fr;
    grid-template-rows: auto auto auto;
    column-gap: 12px;
    row-gap: 4px;
    align-items: center;
    text-align: left;
  }

  /* Avatar */
  .post-header__avatar {
    grid-row: 1 / span 3;
    margin: 0;
  }

  .header-avatar {
    width: 64px;
    height: 64px;
  }

  /* Username */
  .post-header__name {
    font-size: 1rem;
    line-height: 1.2;
    margin: 0;
    word-break: break-word;
  }

  /* Mod role */
  .header-user__modtype {
    font-size: 0.7rem;
    margin: 0;
  }

  /* Meta row */
  .post-header__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    font-size: 0.75rem;
    margin-top: 4px;
  }

  /* Rank pill stays inline */
  .header-meta.post-count-rank {
    margin: 0;
  }

  /* Badges sit inline under name */
  .user-badges {
    display: flex;
    gap: 6px;
    width: auto;
    margin-top: 4px;
  }

  .user-badge__icon,
  .user-badge__rank {
    width: 32px;
  }
}

/* user badge usersettings styling */
.badge-selector .badge-item {
  display: inline-block;
}

.badge-selector .badge-item .badge-item__label {
    padding: 5px;
    border: 1px solid #878787;
    border-radius: 5px;
    background-color: transparent;
    transition: 0.3s ease;
    cursor: pointer;
}
.badge-selector .badge-item--check:checked + .badge-item__label {
    border: 1px solid #5775a9;
    background-color: #222247;
    transition: 0.3s ease;
}


/* -------------------------
   POST CONTENT
   ------------------------- */

.post-body__content {
  min-height: 120px;
  word-break: break-word;
}

/* -------------------------
   SIGNATURE
   ------------------------- */

.post-body__signature {
  margin-top: 14px;
  padding-top: 8px;
  border-top: 1px solid rgba(255,255,255,0.15);
  font-size: 0.8rem;
  opacity: 0.85;
}

/* -------------------------
   FOOTER CONTROLS
   ------------------------- */

   .forum-post__footer {
     margin-top: 20px;
    padding-top: 14px;
    border-top: 1px solid rgba(214,180,111,0.25);
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 12px;
   }

   /* LEFT = ICON ACTIONS */
   .forum-post__footer .controls-left {
     display: flex;
     align-items: center;
     gap: 8px;
     order: 1;
   }

   /* RIGHT = TEXT ACTIONS */
   .forum-post__footer .controls-right {
     display: flex;
     align-items: center;
     gap: 14px;
     order: 2;

   }

   /* Text links look intentional, not random */
   .forum-post__footer .post-controls--link {
     font-size: 1rem;
     color: #7fb7ff;
     text-decoration: none;
     padding: 2px 5px;
     cursor: pointer;
   }

   .forum-post__footer .post-controls--link:hover {
     color: #cfe4ff;
   }
   .post-control--left-option {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 30px;
     height: 30px;
     border-radius: 50%;
     background: linear-gradient(#111827, #2c406c);
     border: 1px solid #71610b;
     color: #fff !important;
     font-size: 0.75rem;
     transition: 0.3s ease;
     cursor: pointer;

   }
   .post-control--left-option:hover {
     background: linear-gradient(#2c406c, #111827);
     border-color: #bbb;
   }

   .post-control--next-admin {
     display: none;
   }
/* -------------------------
   MOBILE
   ------------------------- */

@media (max-width: 992px) {
  .forum-post__wrapper {
    grid-template-columns: 1fr;
  }
  .forum-post {
    border-radius: 0;
  }
  .forum-post__left {
    text-align: left;
  }
  .user-badges {
    justify-content: flex-start;
  }
}



#post-container__area {
  margin-bottom: 20px;
}

#quick-find-code {
  text-align: center;
  color: #c7c7c7;
}

button.back-to-top {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 16px;
    background: transparent none repeat 0 0 / auto auto padding-box border-box scroll;
    background: initial;
    border: none;
    position: relative;
    top: -16px;
    margin: 0 auto -16px;
}

.back-to-top svg {
    width: 13px;
    height: 6px;
    margin-bottom: 16px;
}

.back-to-top span {
    font-family: Normative Pro, Segoe UI, Arial, sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: #b4b4b4;
    color: #70cddf;
    transition: color .2s ease-in-out;
}

.back-to-top:hover span {
    color: #fff;
}






/* search threads */




/*signature stuff */
.reply-box--signature .signature-edit {
  height: 88px;
  resize: none;
}


/* User Settings */

.settings-options {
  list-style: none;
  padding: 0;
}
.settings-options li {
  display: inline-block;
  min-width: 180px;
  text-align: center;
}
@media only screen and (max-width: 800px) {
  .settings-options li {
    display: block;
    text-align: left;
    margin-bottom: 10px;
  }
}


/* inbox messages */
.inbox-container__scroll-box {
  max-height: 24rem;
  overflow-y: auto!important;
}

@media only screen and (min-width: 800px) {
  .inbox-row__date-mobile {
    display: none;
  }

}

@media only screen and (max-width: 800px) {

  .inbox-row__date-desktop {
    display: none;
  }
}



.inbox-message.staff-box .post-body__content {
  color: goldenrod;
}
.inbox-message.ticket-box .post-body__content {
  color: #8585ff;
}


/* account history */
#offence-status {
    clear:both;
    display: inline-block;
}
.offence-status {
    display: inline-block;
    float: left;
    margin-bottom: 10px;
    margin-left: 10px;
    width: 175px;
    height: 50px;
    border: 2px solid grey;
    border-right: 1px solid grey;
    border-left: 1px solid grey;
    border-radius: 6px;
    opacity: 0.3;
    text-align: center;
    line-height: 3;
    color: #181818;
    font-size: 17px;
}
.status-red { background: linear-gradient(#570000, #800303, #870000, #a00); color: white;}
.status-orange { background: linear-gradient(#573400, #804a03, #875b00, #a60); }
.status-yellow { background: linear-gradient(#575600, #807a03, #8f8c00, #a6aa00); }
.status-green { background: linear-gradient(#005700, #038003, #008700, #0a0); }

.active { opacity: 1 !important; }

.strikethrough td {
    text-decoration: line-through;
}

.greentext {
  color: green;
}
.yellowtext {
  color: yellow;
}
.orangetext {
  color: orange;
}
.redtext, .banned-note {
  color: red;
}
.banned-note {
  font-style: italic;
}


.offence-box {
  margin-top: 20px;
}
.offence-evidence-container p {
  margin-bottom: 0;
}
.offence-evidence {
  background: #1d1d1d8c;
  border: 1px solid #4c4c4c;
  padding: 10px;
}



/* === Rank Progress (Bootstrap override) === */

.rank-progress-bar {
  width: 100%;
  margin-top: 6px;
}

/* Force bootstrap progress to behave properly */
.rank-progress-bar .progress {
  display: block;            /* important */
  width: 100%;
  height: 12px;

  background: rgba(255,255,255,0.12);
  border-radius: 6px;
  overflow: hidden;

  border: 1px solid rgba(218, 184, 104, 0.5);
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.6);
}

/* Actual fill bar */
.rank-progress-bar .progress-bar.post-bar {
  height: 100%;
  display: block;

  background: linear-gradient(
    to right,
    #2f8cff,
    #39acff
  );

  box-shadow:
    0 0 8px rgba(57, 172, 255, 0.45),
    inset 0 0 2px rgba(255,255,255,0.35);

  transition: width 0.4s ease;
}
/* === Rank Progress (Bootstrap override) === */

.rank-progress-bar {
  width: 100%;
  margin-top: 6px;
}

/* Force bootstrap progress to behave properly */
.rank-progress-bar .progress {
  display: block;            /* important */
  width: 100%;
  height: 12px;

  background: rgba(255,255,255,0.12);
  border-radius: 6px;
  overflow: hidden;

  border: 1px solid rgba(218, 184, 104, 0.5);
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.6);
}

/* Actual fill bar */
.rank-progress-bar .progress-bar.post-bar {
  height: 100%;
  display: block;

  background: linear-gradient(
    to right,
    #2f8cff,
    #39acff
  );

  box-shadow:
    0 0 8px rgba(57, 172, 255, 0.45),
    inset 0 0 2px rgba(255,255,255,0.35);

  transition: width 0.4s ease;
}
.rank-progress-bar:hover .progress-bar {
  box-shadow:
    0 0 12px rgba(57,172,255,0.7),
    inset 0 0 2px rgba(255,255,255,0.4);
}
