/* === SW FORUM BASELINE (RESET PROTECTION) === */

.sw-forum,
.sw-forum *,
.sw-forum *::before,
.sw-forum *::after {
  box-sizing: border-box;
}

/* Tables */
.sw-forum table {
  border-collapse: separate;
  border-spacing: 0;
}

/* Restore spacing nuked by resets */
.sw-forum th,
.sw-forum td {
  padding: 10px;
}

/* Typography */
.sw-forum p {
  margin: 1em 0;
}

.sw-forum ul,
.sw-forum ol {
  margin-left: 20px;
  padding-left: 20px;
}

.sw-forum h1,
.sw-forum h2,
.sw-forum h3 {
  margin: 0.5em 0;
}


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

.sw-forum .forum_table_wrap_left {
  border-radius: var(--radius, 8px);
  background-color: var(--color-secondary, #c4c4c4);
  margin: 5px 0;
}

.sw-forum .forum_table_wrap_left_bottom {
  height: 10px;
  background-color: var(--color-secondary, #c4c4c4);
  border-bottom-left-radius: var(--radius, 8px);
  border-bottom-right-radius: var(--radius, 8px);
}


/* =========================
   TABLE
   ========================= */

.sw-forum .forum_table th {
  text-align: left;
}

.sw-forum .forum_table thead tr th:first-child {
  border-top-left-radius: var(--radius, 8px);
}

.sw-forum .forum_table thead tr th:last-child {
  border-top-right-radius: var(--radius, 8px);
}


.sw-forum .forum_table thead {
  color: #ffffff;
  background-color: var(--color-secondary, #c4c4c4);
}

.sw-forum .forum_table tbody {
  background-color: var(--color-surface, #e9e9e9);
  color: var(--color-text, #000);
}

.sw-forum .forum_table tr.odd,
.sw-forum .forum_table tr.odd td {
  background-color: var(--color-bg-alt, #f3f3f3);
}

.sw-forum .forum_table .thread_author {
  font-size: 10px;
}


/* =========================
   THREAD / POSTS
   ========================= */

.sw-forum .forum_thread,
.sw-forum .forum_thread_post {
  background-color: var(--color-surface, #F8F8F8);
  border: 1px solid var(--color-border, #777777);
  margin-bottom: 1.5ex;
  padding: 1ex;
  border-radius: var(--radius, 8px);
}

.sw-forum .forum_thread h1,
.sw-forum .forum_thread_post h1 {
  font-size: 14px;
}

.sw-forum .forum_thread h2,
.sw-forum .forum_thread_post h2 {
  font-size: 13px;
}

.sw-forum .forum_thread h3,
.sw-forum .forum_thread_post h3 {
  font-size: 12px;
}


/* =========================
   SEARCH + LINKS
   ========================= */

.sw-forum .forum_search_form {
  text-align: right;
  padding: 5px;
}

.sw-forum #forum_top_links,
.sw-forum #forum_bottom_links {
  text-align: right;
  padding: 2px;
}

.sw-forum #forum_top_links {
  margin-bottom: 5px;
}

.sw-forum #forum_bottom_links {
  margin-top: 5px;
}

.sw-forum .forum_search_form input[type="text"],
.sw-forum .forum_search_form input[type="submit"] {
  width: auto;
}
/* =========================
   QUOTES
   ========================= */

.sw-forum .forum_table_wrap_left .quote {
  border: 1px solid var(--color-border, #ddd);
  background-color: var(--color-bg-alt, #d8d8d8);
  padding: 5px;
  border-radius: var(--radius-sm, 5px);
}


/* =========================
   LINKS (IMPORTANT)
   ========================= */

.sw-forum a {
  color: var(--color-link, #2c3e50);
}

.sw-forum a:hover {
  color: var(--color-link-hover, #f39c12);
}