:root {
  color-scheme: dark;
  --void: #080604;
  --ash: #15100d;
  --iron: #241a14;
  --iron-2: #342217;
  --blood: #8f1712;
  --blood-bright: #cf2b1f;
  --ember: #ff8a24;
  --gold: #d9a441;
  --bone: #ead8ad;
  --muted: #a99373;
  --green: #66d37a;
  --line: rgba(217, 164, 65, .26);
  --line-strong: rgba(255, 138, 36, .45);
  --shadow: 0 28px 80px rgba(0, 0, 0, .72);
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  background: var(--void);
}

body {
  min-height: 100vh;
  margin: 0;
  color: var(--bone);
  background:
    radial-gradient(circle at 50% 0%, rgba(207, 43, 31, .28), transparent 34rem),
    radial-gradient(circle at 80% 18%, rgba(255, 138, 36, .14), transparent 24rem),
    linear-gradient(180deg, rgba(8, 6, 4, .55), rgba(8, 6, 4, .92)),
    url("bg03.jpg") center / cover fixed no-repeat;
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing: 0;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: radial-gradient(circle at center, black, transparent 78%);
}

a {
  color: #ffbd61;
  text-decoration-color: rgba(255, 189, 97, .45);
  text-underline-offset: .22em;
}

a:hover {
  color: #ffe0a1;
  text-decoration-color: rgba(255, 224, 161, .75);
}

.overlay,
.d2-page {
  min-height: 100vh;
  background:
    linear-gradient(180deg, rgba(8, 6, 4, .56), rgba(8, 6, 4, .86) 42%, rgba(8, 6, 4, .96));
}

.d2-shell {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}

.d2-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 22px 0;
}

.d2-brand {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  color: var(--bone);
  text-decoration: none;
}

.d2-brand img {
  width: 58px;
  height: auto;
  filter: drop-shadow(0 0 22px rgba(207, 43, 31, .6));
}

.d2-brand span {
  display: block;
  font-size: .75rem;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .16em;
}

.d2-brand strong {
  display: block;
  color: var(--bone);
  font-size: clamp(1rem, 2vw, 1.35rem);
  line-height: 1.05;
}

.d2-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.d2-nav a,
.d2-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 16px;
  border: 1px solid rgba(217, 164, 65, .35);
  border-radius: 4px;
  color: var(--bone);
  background: linear-gradient(180deg, rgba(52, 34, 23, .9), rgba(20, 13, 9, .92));
  box-shadow: inset 0 1px 0 rgba(255, 232, 171, .12), 0 8px 24px rgba(0, 0, 0, .35);
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.d2-nav a:hover,
.d2-btn:hover {
  border-color: rgba(255, 138, 36, .7);
  color: #fff4d6;
  background: linear-gradient(180deg, rgba(119, 26, 18, .98), rgba(50, 17, 12, .98));
}

.d2-btn-primary {
  border-color: rgba(255, 138, 36, .7);
  background: linear-gradient(180deg, #c72b20, #6e120e 58%, #2b0c08);
  color: #fff4d6;
}

.d2-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(300px, .72fr);
  gap: clamp(26px, 5vw, 58px);
  align-items: center;
  padding: clamp(22px, 5vw, 54px) 0 48px;
}

.d2-hero-simple {
  grid-template-columns: minmax(0, 1fr);
  min-height: clamp(430px, 58vh, 680px);
  align-content: center;
  text-align: center;
}

.d2-hero-simple .d2-lead {
  margin-right: auto;
  margin-left: auto;
}

.d2-hero-simple .d2-actions {
  justify-content: center;
}

.d2-hero::after {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--line-strong), transparent);
}

.d2-kicker {
  margin: 0 0 14px;
  color: var(--gold);
  font-size: .8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .18em;
}

.d2-title {
  margin: 0;
  max-width: 840px;
  color: #f6d489;
  font-size: clamp(3rem, 9vw, 6.8rem);
  line-height: .82;
  text-transform: uppercase;
  text-shadow: 0 4px 0 #210805, 0 0 34px rgba(207, 43, 31, .72);
}

.d2-lead {
  max-width: 720px;
  margin: 24px 0 0;
  color: #d6c19a;
  font-size: clamp(1.05rem, 2vw, 1.35rem);
  line-height: 1.65;
}

.d2-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.d2-panel {
  position: relative;
  border: 1px solid var(--line);
  border-radius: 6px;
  background:
    linear-gradient(180deg, rgba(45, 28, 18, .9), rgba(12, 9, 7, .94)),
    radial-gradient(circle at 50% 0%, rgba(207, 43, 31, .16), transparent 24rem);
  box-shadow: var(--shadow), inset 0 0 0 1px rgba(255, 232, 171, .05);
}

.d2-panel::before {
  content: "";
  position: absolute;
  inset: 8px;
  border: 1px solid rgba(217, 164, 65, .14);
  pointer-events: none;
}

.d2-panel-content {
  position: relative;
  padding: clamp(18px, 4vw, 30px);
}

.d2-logo-card {
  min-height: 390px;
  display: grid;
  place-items: center;
  overflow: hidden;
}

.d2-logo-card img {
  width: min(80%, 340px);
  filter: drop-shadow(0 24px 50px rgba(0, 0, 0, .9)) drop-shadow(0 0 28px rgba(207, 43, 31, .7));
}

.d2-rune-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.d2-rune {
  padding: 14px 10px;
  border: 1px solid rgba(217, 164, 65, .2);
  border-radius: 4px;
  background: rgba(0, 0, 0, .24);
  text-align: center;
}

.d2-rune b {
  display: block;
  color: #f0c46e;
  font-size: 1.3rem;
}

.d2-rune span {
  color: var(--muted);
  font-size: .78rem;
}

.d2-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  padding: 40px 0 26px;
}

.d2-card {
  min-height: 156px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: linear-gradient(180deg, rgba(34, 22, 15, .9), rgba(9, 7, 6, .92));
  box-shadow: 0 18px 45px rgba(0, 0, 0, .42);
  text-decoration: none;
}

.d2-card:hover {
  border-color: var(--line-strong);
  transform: translateY(-2px);
}

.d2-card h2,
.d2-heading {
  margin: 0 0 10px;
  color: #f3c76f;
  font-size: clamp(1.35rem, 2.6vw, 2.1rem);
  line-height: 1.1;
  text-shadow: 0 0 18px rgba(207, 43, 31, .36);
}

.d2-card p {
  margin: 0;
  color: #c8b18b;
  line-height: 1.55;
}

.d2-content {
  padding: 34px 0 56px;
}

.d2-page-title {
  margin: 18px 0 28px;
  color: #f4c66e;
  font-size: clamp(2.2rem, 6vw, 4.2rem);
  line-height: .95;
  text-align: center;
  text-transform: uppercase;
  text-shadow: 0 3px 0 #210805, 0 0 28px rgba(207, 43, 31, .62);
}

.d2-section {
  margin-bottom: 18px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: rgba(11, 8, 6, .78);
  box-shadow: inset 0 0 38px rgba(0, 0, 0, .28);
}

.d2-section h2,
.d2-section h3 {
  color: #f0bd5f;
}

.d2-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: rgba(8, 6, 4, .82);
  box-shadow: var(--shadow);
}

table {
  border-collapse: collapse;
  color: var(--bone);
}

th {
  background: linear-gradient(180deg, #8f1712, #4b0d09);
  color: #fff0c2;
  text-transform: uppercase;
  letter-spacing: .04em;
}

td,
th {
  border-color: rgba(217, 164, 65, .16) !important;
}

tbody tr {
  background: rgba(12, 9, 7, .66);
}

tbody tr:nth-child(even) {
  background: rgba(32, 20, 13, .62);
}

tbody tr:hover {
  background: rgba(111, 24, 16, .55) !important;
}

code {
  padding: .12em .38em;
  border: 1px solid rgba(217, 164, 65, .25);
  border-radius: 4px;
  color: #ffe0a1;
  background: rgba(0, 0, 0, .4);
}

.d2-footer {
  padding: 28px 0 38px;
  color: #88745b;
  text-align: center;
}

.period-name {
  color: #f0c46e;
  font-weight: 700;
}

.players-list {
  max-width: 320px;
  overflow-x: auto;
  white-space: nowrap;
}

.character-hero {
  margin-bottom: 22px;
  text-align: center;
}

.character-title {
  margin-top: 0;
  margin-bottom: 18px;
}

.character-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.character-badges span,
.achievement,
.equipment-slot,
.inventory-item {
  border: 1px solid rgba(217, 164, 65, .24);
  border-radius: 4px;
  background: rgba(0, 0, 0, .28);
  box-shadow: inset 0 1px 0 rgba(255, 232, 171, .08);
}

.character-badges span {
  padding: 9px 13px;
  color: #f4d79a;
  font-weight: 700;
}

.character-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
  margin-bottom: 18px;
}

.character-stats {
  display: grid;
  gap: 10px;
  margin: 0;
}

.character-stats div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(217, 164, 65, .14);
}

.character-stats dt {
  color: var(--muted);
}

.character-stats dd {
  margin: 0;
  color: #ffe0a1;
  font-weight: 700;
  text-align: right;
}

.achievement-list {
  display: grid;
  gap: 10px;
}

.achievement {
  padding: 13px;
}

.achievement strong {
  display: block;
  color: #f0c46e;
}

.achievement span {
  color: #c8b18b;
  font-size: .92rem;
}

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

.equipment-slot {
  min-height: 74px;
  padding: 12px;
}

.equipment-slot span {
  display: block;
  color: var(--muted);
  font-size: .82rem;
}

.equipment-slot strong {
  display: block;
  margin-top: 6px;
  color: #f4d79a;
}

.inventory-grid {
  display: grid;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  gap: 4px;
  padding: 10px;
  border: 1px solid rgba(217, 164, 65, .22);
  border-radius: 4px;
  background: rgba(0, 0, 0, .32);
}

.inventory-grid span {
  aspect-ratio: 1;
  border: 1px solid rgba(217, 164, 65, .18);
  background: linear-gradient(180deg, rgba(52, 34, 23, .5), rgba(8, 6, 4, .72));
}

.inventory-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.inventory-item {
  padding: 11px;
  color: #f4d79a;
}

.decoder-note {
  margin: 0 0 16px;
  padding: 12px;
  border: 1px solid rgba(255, 138, 36, .32);
  border-radius: 4px;
  color: #ffd48b;
  background: rgba(111, 24, 16, .28);
}

.item-card {
  min-height: 72px;
  padding: 11px;
  border: 1px solid rgba(217, 164, 65, .22);
  border-radius: 4px;
  background: rgba(0, 0, 0, .32);
  color: #ead8ad;
}

.item-card strong {
  display: block;
  color: #ead8ad;
  line-height: 1.2;
}

.item-card-head {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.item-icon {
  width: 42px;
  height: 42px;
  object-fit: contain;
  border: 1px solid rgba(217, 164, 65, .18);
  border-radius: 4px;
  background: radial-gradient(circle, rgba(217, 164, 65, .14), rgba(0, 0, 0, .42));
}

.item-icon-empty::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  margin: 11px auto;
  border: 1px solid rgba(217, 164, 65, .32);
  transform: rotate(45deg);
}

.item-card .item-type,
.item-card .item-req {
  display: block;
  margin-top: 4px;
  color: #9f8a68;
  font-size: .82rem;
}

.item-card ul {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
  color: #9ed3ff;
  font-size: .86rem;
  line-height: 1.35;
}

.item-card li + li {
  margin-top: 3px;
}

.item-empty {
  min-height: auto;
  color: #806f58;
}

.item-magic strong {
  color: #7ca7ff;
}

.item-rare strong {
  color: #fff06c;
}

.item-set strong {
  color: #39d56f;
}

.item-unique strong {
  color: #c69355;
}

.item-runeword strong {
  color: #d9b46c;
}

.item-group-title {
  margin: 22px 0 10px;
  color: #f0c46e;
  font-size: 1.2rem;
}

#monitoring-content section {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: linear-gradient(180deg, rgba(29, 18, 13, .9), rgba(8, 6, 4, .94)) !important;
  box-shadow: var(--shadow);
}

#chart-container,
#statistics-content table {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: rgba(10, 7, 5, .88) !important;
  box-shadow: var(--shadow);
}

#chart-container {
  color: var(--bone);
}

.forum-post-layout {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 18px;
}

.forum-author-card {
  min-height: 220px;
  padding: 14px;
  border: 1px solid rgba(217, 164, 65, .36);
  border-radius: 4px;
  background:
    radial-gradient(circle at 50% 18%, rgba(217, 164, 65, .16), transparent 42%),
    linear-gradient(180deg, rgba(36, 20, 13, .92), rgba(5, 4, 3, .86));
  text-align: center;
}

.forum-avatar {
  display: grid;
  place-items: center;
  width: 84px;
  height: 84px;
  margin: 0 auto 12px;
  border: 2px solid rgba(236, 186, 89, .58);
  border-radius: 4px;
  color: #ffe4a3;
  font-family: var(--display-font, Georgia, serif);
  font-size: 2.2rem;
  text-decoration: none;
  box-shadow: inset 0 0 22px rgba(0, 0, 0, .72), 0 0 22px rgba(217, 99, 28, .18);
}

.forum-avatar-amazon { background: linear-gradient(135deg, #243522, #8a5f2d); }
.forum-avatar-sorceress { background: linear-gradient(135deg, #172b4f, #7c234f); }
.forum-avatar-necromancer { background: linear-gradient(135deg, #151819, #56615d); }
.forum-avatar-paladin { background: linear-gradient(135deg, #493d1d, #9f7d32); }
.forum-avatar-barbarian { background: linear-gradient(135deg, #401d18, #9b3c20); }
.forum-avatar-druid { background: linear-gradient(135deg, #1f3a25, #6a4c27); }
.forum-avatar-assassin { background: linear-gradient(135deg, #1f1d35, #3b6d6a); }
.forum-avatar-unknown { background: linear-gradient(135deg, #1b1612, #443124); }

.forum-author-name {
  display: block;
  color: #ffd36f;
  font-size: 1.08rem;
  font-weight: 700;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.forum-role {
  display: inline-block;
  margin-top: 7px;
  padding: 3px 8px;
  border: 1px solid rgba(217, 164, 65, .3);
  border-radius: 3px;
  background: rgba(0, 0, 0, .35);
  font-size: .78rem;
  text-transform: uppercase;
}

.forum-role-admin { color: #ff7668; }
.forum-role-moderator { color: #8fc6ff; }
.forum-role-user { color: #d2c2a0; }

.forum-character-mini {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(217, 164, 65, .18);
  color: #cbb996;
  font-size: .86rem;
}

.forum-character-mini a,
.forum-character-mini span,
.forum-character-mini strong,
.forum-character-mini em,
.forum-character-empty {
  display: block;
}

.forum-character-mini a {
  color: #ffcf74;
  font-weight: 700;
  text-decoration: underline;
}

.forum-character-mini strong {
  color: #f3ddaa;
  font-style: normal;
}

.forum-character-mini em {
  margin-top: 3px;
  font-style: normal;
}

.forum-character-mini .is-alive { color: #7feb8b; }
.forum-character-mini .is-dead { color: #ff756d; }

.forum-character-empty {
  margin-top: 14px;
  color: #806f58;
  font-size: .86rem;
}

.forum-post-body {
  min-width: 0;
}

.forum-moderation {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(217, 164, 65, .18);
  color: #d7c7a5;
  font-size: .9rem;
}

.forum-moderation label {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  padding: 6px 9px;
  border: 1px solid rgba(217, 164, 65, .24);
  border-radius: 4px;
  background: rgba(0, 0, 0, .28);
}

@media (max-width: 860px) {
  .d2-topbar,
  .d2-hero {
    grid-template-columns: 1fr;
  }

  .d2-topbar {
    align-items: flex-start;
  }

  .d2-nav {
    justify-content: flex-start;
  }

  .d2-grid {
    grid-template-columns: 1fr;
  }

  .d2-logo-card {
    min-height: 260px;
  }

  .character-layout {
    grid-template-columns: 1fr;
  }

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

@media (max-width: 560px) {
  .d2-shell {
    width: min(100% - 22px, 1180px);
  }

  .d2-nav a,
  .d2-btn {
    width: 100%;
  }

  .d2-actions {
    display: grid;
  }

  .d2-title {
    font-size: clamp(2.45rem, 15vw, 4.2rem);
  }

  .d2-rune-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.forum-page a{transition:.15s ease;color:#f5c96b}.forum-page a:hover{color:#ffe7a3}.forum-hero{overflow:hidden;position:relative}.forum-hero:before{content:"";position:absolute;inset:-80px;background:radial-gradient(circle at 20% 20%,rgba(245,180,65,.22),transparent 34%),radial-gradient(circle at 90% 30%,rgba(145,19,19,.28),transparent 34%);pointer-events:none}.forum-hero-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px}.forum-kicker{text-transform:uppercase;letter-spacing:.18em;color:#c78a35;font-size:12px;font-weight:800}.forum-subtitle{color:#b9aa91;margin-top:8px}.forum-stats-mini{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:10px}.forum-stats-mini div{border:1px solid rgba(197,138,53,.35);background:rgba(0,0,0,.24);border-radius:16px;padding:14px;text-align:center}.forum-stats-mini strong{display:block;font-size:26px;color:#f8d681;line-height:1}.forum-stats-mini span{font-size:12px;color:#9f927f}.forum-toolbar{display:flex;gap:14px;align-items:center;justify-content:space-between}.forum-search{display:flex;gap:10px;flex:1;max-width:620px}.forum-search input,.forum-form input,.forum-form textarea,.forum-form select,.forum-moderation select{width:100%;background:rgba(0,0,0,.45);border:1px solid rgba(180,119,37,.65);color:#ffe7b1;border-radius:12px;padding:12px 14px;outline:none}.forum-search input:focus,.forum-form input:focus,.forum-form textarea:focus,.forum-form select:focus{border-color:#f0c86c;box-shadow:0 0 0 3px rgba(240,200,108,.12)}.forum-toolbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.forum-current-user{color:#a99b87;font-size:14px}.forum-alert{text-align:center;border-radius:12px}.forum-alert-error{color:#ffb0a5}.forum-alert-ok{color:#8ff0b0}.forum-breadcrumb{font-size:13px;color:#8f8272;margin-bottom:12px}.forum-home-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px}.forum-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.forum-section-card{display:block;text-decoration:none}.forum-section-card .d2-panel-content{display:flex;gap:16px;min-height:170px}.forum-section-icon{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,rgba(151,43,20,.5),rgba(0,0,0,.2));border:1px solid rgba(224,164,72,.35);font-size:28px;flex:0 0 auto}.forum-section-card p,.forum-section-head p{color:#a99b87;margin:0 0 12px}.forum-card-stats{display:flex;gap:14px;color:#9e907d;font-size:13px}.forum-latest{margin-top:12px;color:#7f7467;font-size:13px}.forum-sidebar{align-self:start;position:sticky;top:16px}.forum-latest-list{display:flex;flex-direction:column;gap:10px}.forum-latest-list a{display:block;border:1px solid rgba(180,119,37,.25);background:rgba(0,0,0,.22);border-radius:12px;padding:12px;text-decoration:none}.forum-latest-list strong{display:block;color:#f5c96b}.forum-latest-list span{display:block;color:#8d8172;font-size:12px;margin-top:4px}.forum-section-head,.forum-thread-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.forum-thread-title{font-size:1.8rem!important}.forum-meta{color:#978a78;font-size:14px}.forum-thread-list{display:flex;flex-direction:column;gap:10px}.forum-thread-row{display:grid;grid-template-columns:44px minmax(0,1fr) 120px;gap:14px;align-items:center;border:1px solid rgba(160,103,34,.32);background:linear-gradient(90deg,rgba(0,0,0,.34),rgba(50,18,10,.18));border-radius:16px;padding:14px;text-decoration:none}.forum-thread-row:hover{border-color:rgba(245,201,107,.72);transform:translateY(-1px)}.forum-thread-row.is-unread{box-shadow:inset 3px 0 0 #e2a341}.forum-thread-icon{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);border:1px solid rgba(245,201,107,.22)}.forum-thread-main{min-width:0}.forum-thread-main strong{display:block;color:#f2d086;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.forum-thread-main em{display:block;color:#8f8272;font-size:12px;font-style:normal;margin-top:4px}.forum-thread-count{text-align:right;color:#8e8375;font-size:12px}.forum-thread-count b{color:#f5c96b}.forum-post-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px}.forum-author-card{border-right:1px solid rgba(180,119,37,.25);padding-right:18px;text-align:center}.forum-avatar{width:72px;height:72px;margin:0 auto 10px;border-radius:22px;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:900;text-decoration:none;color:#120906!important;background:linear-gradient(145deg,#c9953b,#743018);box-shadow:0 10px 30px rgba(0,0,0,.28)}.forum-avatar-amazon{background:linear-gradient(145deg,#ccaa51,#476d35)}.forum-avatar-sorceress{background:linear-gradient(145deg,#7dc7ff,#254983)}.forum-avatar-necromancer{background:linear-gradient(145deg,#9f9ab9,#322947)}.forum-avatar-paladin{background:linear-gradient(145deg,#f1dc81,#765921)}.forum-avatar-barbarian{background:linear-gradient(145deg,#e76c3c,#682112)}.forum-avatar-druid{background:linear-gradient(145deg,#9ac47a,#4d3b1d)}.forum-avatar-assassin{background:linear-gradient(145deg,#d6d6d6,#484848)}.forum-avatar-unknown{background:linear-gradient(145deg,#786a5c,#2d2924)}.forum-author-name{display:block;font-weight:800;font-size:16px;text-decoration:none}.forum-role{display:inline-block;margin-top:7px;padding:3px 9px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;border:1px solid rgba(245,201,107,.25);color:#baa17a}.forum-role-admin{color:#ffb45e;border-color:#ff8d2e}.forum-role-moderator{color:#9bd7ff;border-color:#4ba8ef}.forum-character-mini{margin-top:14px;border:1px solid rgba(180,119,37,.2);background:rgba(0,0,0,.18);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:3px;color:#8f8272;font-size:12px}.forum-character-mini a{font-weight:800}.forum-character-mini strong{color:#d4c0a0}.forum-character-mini em{font-style:normal}.is-dead{color:#ff8175}.is-alive{color:#8ee28e}.forum-character-empty{margin-top:12px;color:#776d61;font-size:12px}.forum-post-top{display:flex;justify-content:space-between;gap:12px;color:#80766b;font-size:13px;margin-bottom:14px}.forum-message{color:#ddd0bd;line-height:1.75;font-size:15px}.forum-message blockquote{border-left:3px solid #9b6426;padding-left:12px;color:#b7a994}.forum-code{background:#070503;border:1px solid rgba(180,119,37,.35);border-radius:12px;padding:12px;overflow:auto;white-space:pre-wrap}.forum-post-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px;color:#8d8172;font-size:13px}.forum-post-actions form{display:inline}.forum-post-actions button,.forum-report button{background:none;border:0;color:#e99b69;cursor:pointer;padding:0}.forum-report{display:flex;gap:8px;margin-top:8px}.forum-report input{background:rgba(0,0,0,.4);border:1px solid rgba(180,119,37,.4);border-radius:8px;color:#ffe7b1;padding:6px 8px}.forum-deleted{color:#776d61}.forum-form{display:flex;flex-direction:column;gap:16px}.forum-form label span{display:block;color:#9b8e7d;font-size:13px;margin-bottom:6px}.forum-form textarea{min-height:150px}.forum-form-hint{color:#7f7467;font-size:13px}.forum-moderation{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.forum-moderation label{color:#c0b19b}.forum-inline-delete{margin-top:12px}.forum-danger{border-color:#8a3025!important;color:#ff8d7f!important}.forum-section-title{font-weight:800;color:#d9b870;margin-bottom:12px}.forum-post.is-deleted{opacity:.74}@media(max-width:1050px){.forum-home-grid{grid-template-columns:1fr}.forum-sidebar{position:static}.forum-sections{grid-template-columns:1fr}.forum-hero-inner{flex-direction:column;align-items:flex-start}.forum-stats-mini{width:100%}}@media(max-width:760px){.forum-toolbar,.forum-section-head,.forum-thread-head{flex-direction:column;align-items:stretch}.forum-search{max-width:none}.forum-stats-mini{grid-template-columns:1fr 1fr 1fr}.forum-thread-row{grid-template-columns:38px 1fr}.forum-thread-count{grid-column:2;text-align:left}.forum-post-layout{grid-template-columns:1fr}.forum-author-card{border-right:0;border-bottom:1px solid rgba(180,119,37,.25);padding-right:0;padding-bottom:16px}.forum-hero .d2-page-title{font-size:2rem!important}}@media(max-width:480px){.forum-stats-mini{grid-template-columns:1fr}.forum-section-card .d2-panel-content{flex-direction:column}.forum-search{flex-direction:column}}

.forum-shell {
  padding-bottom: 48px;
}

.forum-hero {
  margin-bottom: 24px;
  overflow: hidden;
}

.forum-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  gap: 28px;
  align-items: center;
}

.forum-eyebrow {
  margin: 0 0 12px;
  color: var(--gold);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .2em;
}

.forum-title {
  margin: 0;
  color: #f2d085;
  font-size: clamp(2.2rem, 5vw, 4rem);
  line-height: .95;
  text-transform: uppercase;
  text-shadow: 0 4px 0 #220a07, 0 0 32px rgba(207, 43, 31, .36);
}

.forum-lead,
.forum-section-copy,
.forum-thread-intro {
  color: #cdbb99;
  line-height: 1.7;
}

.forum-lead {
  margin: 18px 0 0;
  max-width: 780px;
}

.forum-thread-intro {
  margin: 14px 0 0;
}

.forum-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.forum-stat-card {
  padding: 16px;
  border: 1px solid rgba(217, 164, 65, .26);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(8, 6, 4, .56), rgba(33, 20, 13, .85));
}

.forum-stat-card span,
.forum-thread-stats span,
.forum-thread-last span,
.forum-side-list span {
  display: block;
  color: #97856a;
  font-size: .76rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.forum-stat-card strong {
  display: block;
  margin-top: 8px;
  color: #f5d995;
  font-size: 1.35rem;
}

.forum-alert {
  color: #ffb9ab;
  font-weight: 700;
}

.forum-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
  color: #8e7f68;
  font-size: .86rem;
}

.forum-thread-head,
.forum-toolbar,
.forum-toolbar-compact {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.forum-toolbar,
.forum-toolbar-compact {
  align-items: center;
  flex-wrap: wrap;
}

.forum-thread-actions,
.forum-form-actions,
.forum-shortcuts,
.forum-thread-badges,
.forum-toolbar-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.forum-section-title {
  margin: 0;
  color: #efcf87;
  font-size: clamp(1.7rem, 3.4vw, 2.4rem);
  line-height: 1.05;
}

.forum-section-copy {
  margin: 10px 0 0;
}

.forum-main-grid,
.forum-home-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
}

.forum-block-title {
  margin: 0 0 14px;
  color: #f0cd82;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.forum-search-form,
.forum-form-stack {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.forum-search-form {
  flex: 1;
  min-width: min(100%, 420px);
  flex-direction: row;
  align-items: center;
}

.forum-field span {
  display: block;
  margin-bottom: 6px;
  color: #a39379;
  font-size: .85rem;
}

.forum-input {
  width: 100%;
  min-height: 46px;
  padding: 12px 14px;
  border: 1px solid rgba(217, 164, 65, .45);
  border-radius: 14px;
  color: #f7ddb0;
  background: rgba(0, 0, 0, .38);
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.forum-input:focus {
  border-color: rgba(255, 201, 107, .88);
  box-shadow: 0 0 0 3px rgba(255, 201, 107, .1);
  background: rgba(0, 0, 0, .5);
}

.forum-textarea {
  resize: vertical;
  min-height: 160px;
}

.forum-chip,
.forum-badge,
.forum-page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 7px 12px;
  border-radius: 999px;
  border: 1px solid rgba(217, 164, 65, .28);
  background: rgba(0, 0, 0, .24);
  color: #d8c39d;
  font-size: .82rem;
  text-decoration: none;
}

.forum-chip.is-active,
.forum-page-link.is-active,
.forum-badge.is-fresh {
  border-color: rgba(255, 138, 36, .64);
  background: rgba(143, 23, 18, .42);
  color: #ffe2ad;
}

.forum-badge.is-danger {
  border-color: rgba(255, 101, 101, .42);
  color: #ffb0a3;
}

.forum-badge.is-muted {
  color: #b8a58a;
}

.forum-mini-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 14px;
  color: #9c8a70;
  font-size: .9rem;
}

.forum-thread-list,
.forum-category-list,
.forum-activity-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.forum-thread-row,
.forum-category-card,
.forum-post-card {
  overflow: hidden;
}

.forum-thread-row.is-unread {
  border-color: rgba(255, 168, 61, .56);
}

.forum-thread-grid,
.forum-category-grid {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) 120px 180px;
  gap: 18px;
  align-items: center;
}

.forum-category-grid {
  grid-template-columns: minmax(0, 1fr) 120px 220px;
}

.forum-thread-dot {
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: rgba(217, 164, 65, .25);
  box-shadow: inset 0 0 0 1px rgba(255, 232, 171, .06);
}

.forum-thread-dot.is-hot {
  background: radial-gradient(circle at 35% 35%, #ffd99d, #cf2b1f 70%);
  box-shadow: 0 0 18px rgba(207, 43, 31, .36);
}

.forum-thread-content h3,
.forum-category-grid h3 {
  margin: 0;
  font-size: 1.1rem;
}

.forum-thread-content p,
.forum-category-grid p {
  margin: 8px 0 0;
  color: #bca98a;
  line-height: 1.6;
}

.forum-thread-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 12px;
  color: #8f7f67;
  font-size: .84rem;
}

.forum-thread-stats,
.forum-thread-last,
.forum-side-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.forum-thread-stats strong,
.forum-thread-last strong,
.forum-side-list strong {
  display: block;
  margin-top: 4px;
  color: #eed18e;
  line-height: 1.35;
}

.forum-thread-last a {
  margin-top: 4px;
}

.forum-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 18px;
}

.forum-post-card {
  margin-bottom: 16px;
}

.forum-post-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 16px;
  color: #8e7f68;
  font-size: .85rem;
}

.forum-post-content {
  color: #dfcfb9;
  line-height: 1.8;
}

.forum-post-deleted {
  color: #8f8069;
  font-style: italic;
}

.forum-post-notice {
  margin-bottom: 12px;
  padding: 10px 12px;
  border: 1px solid rgba(170, 64, 48, .38);
  border-radius: 10px;
  color: #d99a84;
  background: rgba(60, 15, 10, .24);
  font-size: .86rem;
}

.forum-post-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 16px;
}

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

.forum-action-input {
  width: min(260px, 100%);
  padding: 8px 10px;
}

.forum-chip-danger {
  border-color: rgba(220, 90, 70, .55);
  color: #ff9b86;
}

.forum-edit-form {
  margin-top: 4px;
}

.forum-empty-state {
  color: #b4a182;
  text-align: center;
  line-height: 1.7;
}

.forum-activity-item {
  display: block;
  padding: 12px 14px;
  border: 1px solid rgba(217, 164, 65, .18);
  border-radius: 14px;
  background: rgba(0, 0, 0, .22);
  text-decoration: none;
}

.forum-activity-item strong {
  display: block;
  color: #f1cf87;
}

.forum-activity-item span {
  display: block;
  margin-top: 6px;
  color: #90816a;
  font-size: .82rem;
}

.forum-side-list div {
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(217, 164, 65, .12);
}

.forum-side-list div:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.forum-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ceb690;
}

@media (max-width: 1080px) {
  .forum-hero-grid,
  .forum-main-grid,
  .forum-home-grid {
    grid-template-columns: 1fr;
  }

  .forum-sidebar {
    position: static;
  }
}

@media (max-width: 820px) {
  .forum-thread-grid,
  .forum-category-grid {
    grid-template-columns: 1fr;
  }

  .forum-thread-state {
    display: none;
  }

  .forum-thread-stats,
  .forum-thread-last {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;
  }
}

@media (max-width: 720px) {
  .forum-thread-head,
  .forum-toolbar,
  .forum-toolbar-compact,
  .forum-search-form {
    flex-direction: column;
    align-items: stretch;
  }

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

  .forum-pagination {
    justify-content: center;
  }
}

body.forum-discourse {
  --forum-bg: #111820;
  --forum-bg-soft: #17212b;
  --forum-top: #0b1118;
  --forum-row: #1b2733;
  --forum-row-hover: #223240;
  --forum-border: rgba(150, 166, 184, .18);
  --forum-text: #d7e0ea;
  --forum-muted: #8c9aaa;
  --forum-link: #36a2e8;
  --forum-accent: #f0b35a;
  color: var(--forum-text);
  background: var(--forum-bg);
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}

body.forum-discourse::before {
  display: none;
}

body.forum-discourse .d2-page {
  background:
    linear-gradient(180deg, rgba(12, 18, 25, .96), rgba(17, 24, 32, .98)),
    url("bg03.jpg") center top / cover fixed no-repeat;
}

body.forum-discourse .d2-shell {
  width: min(1110px, calc(100% - 32px));
}

body.forum-discourse .d2-topbar {
  width: 100%;
  max-width: none;
  padding: 0 24px;
  min-height: 64px;
  background: var(--forum-top);
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}

body.forum-discourse .d2-brand img {
  width: 38px;
  filter: none;
}

body.forum-discourse .d2-brand span {
  color: #8fa1b4;
  font-size: .68rem;
  letter-spacing: .08em;
}

body.forum-discourse .d2-brand strong {
  color: #f5f8fb;
  font-size: 1.1rem;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 700;
}

body.forum-discourse .d2-nav a,
body.forum-discourse .d2-btn {
  min-height: 36px;
  padding: 8px 12px;
  border: 0;
  border-radius: 3px;
  color: #c8d2dd;
  background: transparent;
  box-shadow: none;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: .87rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
}

body.forum-discourse .d2-nav a:hover,
body.forum-discourse .d2-btn:hover {
  color: #fff;
  background: rgba(255, 255, 255, .08);
  transform: none;
}

body.forum-discourse .d2-btn-primary {
  color: #101820;
  background: var(--forum-accent);
  font-weight: 700;
}

body.forum-discourse .d2-btn-primary:hover {
  color: #101820;
  background: #ffc676;
}

body.forum-discourse .forum-shell {
  padding-top: 28px;
  padding-bottom: 40px;
}

body.forum-discourse .forum-discourse-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 22px;
}

body.forum-discourse .forum-discourse-head h1 {
  margin: 0;
  color: #f5f8fb;
  font-size: clamp(1.8rem, 4vw, 2.55rem);
  line-height: 1.1;
  font-weight: 500;
}

body.forum-discourse .forum-discourse-head p {
  max-width: 760px;
  margin: 8px 0 0;
  color: var(--forum-muted);
  line-height: 1.5;
}

body.forum-discourse .forum-discourse-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 18px;
  border-bottom: 1px solid var(--forum-border);
}

body.forum-discourse .forum-discourse-tabs a {
  padding: 12px 14px;
  border-bottom: 3px solid transparent;
  color: #aebccc;
  text-decoration: none;
  font-weight: 600;
}

body.forum-discourse .forum-discourse-tabs a:hover,
body.forum-discourse .forum-discourse-tabs a.is-active {
  color: #fff;
  border-bottom-color: var(--forum-accent);
}

body.forum-discourse .d2-panel {
  border: 1px solid var(--forum-border);
  border-radius: 3px;
  background: rgba(23, 33, 43, .86);
  box-shadow: none;
}

body.forum-discourse .d2-panel::before {
  display: none;
}

body.forum-discourse .d2-panel-content {
  padding: 18px;
}

body.forum-discourse .forum-home-grid,
body.forum-discourse .forum-main-grid {
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 26px;
}

body.forum-discourse .forum-discourse-table-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 90px 240px;
  gap: 18px;
  padding: 0 14px 10px;
  color: var(--forum-muted);
  border-bottom: 1px solid var(--forum-border);
  font-size: .82rem;
  font-weight: 700;
  text-transform: uppercase;
}

body.forum-discourse .forum-category-list,
body.forum-discourse .forum-thread-list {
  gap: 0;
}

body.forum-discourse .forum-category-card {
  border-bottom: 1px solid var(--forum-border);
  background: rgba(23, 33, 43, .78);
}

body.forum-discourse .forum-category-card:hover,
body.forum-discourse .forum-thread-row:hover {
  background: var(--forum-row-hover);
}

body.forum-discourse .forum-category-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 90px 240px;
  gap: 18px;
  align-items: center;
  min-height: 86px;
  padding: 14px;
}

body.forum-discourse .forum-category-main {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

body.forum-discourse .forum-category-marker {
  width: 10px;
  height: 46px;
  margin-top: 3px;
  border-radius: 1px;
  background: var(--forum-accent);
}

body.forum-discourse .forum-category-grid h3,
body.forum-discourse .forum-thread-content h3 {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 600;
}

body.forum-discourse .forum-category-grid h3 a,
body.forum-discourse .forum-thread-content h3 a,
body.forum-discourse .forum-thread-last a,
body.forum-discourse .forum-activity-item strong {
  color: var(--forum-link);
  text-decoration: none;
}

body.forum-discourse .forum-category-grid p,
body.forum-discourse .forum-thread-content p {
  margin: 6px 0 0;
  color: #a8b5c3;
  font-size: .92rem;
  line-height: 1.45;
}

body.forum-discourse .forum-thread-stats {
  gap: 2px;
  color: var(--forum-muted);
  text-align: right;
}

body.forum-discourse .forum-thread-stats strong {
  margin: 0;
  color: #dce6ef;
  font-size: 1.05rem;
}

body.forum-discourse .forum-thread-stats span,
body.forum-discourse .forum-thread-last span,
body.forum-discourse .forum-side-list span {
  color: var(--forum-muted);
  font-size: .78rem;
  text-transform: none;
  letter-spacing: 0;
}

body.forum-discourse .forum-thread-last {
  gap: 4px;
  min-width: 0;
}

body.forum-discourse .forum-thread-last strong {
  margin: 0;
  color: #dce6ef;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.forum-discourse .forum-sidebar {
  position: sticky;
  top: 80px;
}

body.forum-discourse .forum-block-title,
body.forum-discourse .forum-section-title {
  color: #f4f7fa;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0;
}

body.forum-discourse .forum-section-copy,
body.forum-discourse .forum-lead,
body.forum-discourse .forum-thread-intro {
  color: var(--forum-muted);
}

body.forum-discourse .forum-breadcrumbs {
  color: var(--forum-muted);
}

body.forum-discourse .forum-breadcrumbs a,
body.forum-discourse a {
  color: var(--forum-link);
}

body.forum-discourse .forum-chip,
body.forum-discourse .forum-badge,
body.forum-discourse .forum-page-link {
  min-height: 30px;
  border: 1px solid rgba(150, 166, 184, .22);
  border-radius: 3px;
  color: #c7d2de;
  background: rgba(255, 255, 255, .04);
  font-size: .84rem;
}

body.forum-discourse .forum-chip.is-active,
body.forum-discourse .forum-page-link.is-active,
body.forum-discourse .forum-badge.is-fresh {
  border-color: rgba(240, 179, 90, .56);
  background: rgba(240, 179, 90, .12);
  color: #ffd9a0;
}

body.forum-discourse .forum-input {
  border: 1px solid rgba(150, 166, 184, .28);
  border-radius: 3px;
  color: var(--forum-text);
  background: #101820;
}

body.forum-discourse .forum-input:focus {
  border-color: #4fb3f2;
  box-shadow: 0 0 0 2px rgba(79, 179, 242, .16);
}

body.forum-discourse .forum-thread-row {
  border: 0;
  border-bottom: 1px solid var(--forum-border);
  border-radius: 0;
  background: rgba(23, 33, 43, .78);
}

body.forum-discourse .forum-thread-row.is-unread {
  border-color: var(--forum-border);
  box-shadow: inset 4px 0 0 var(--forum-accent);
}

body.forum-discourse .forum-thread-grid {
  grid-template-columns: 22px minmax(0, 1fr) 110px 190px;
}

body.forum-discourse .forum-post-layout {
  grid-template-columns: 178px minmax(0, 1fr);
}

body.forum-discourse .forum-author-card {
  border-right-color: var(--forum-border);
}

body.forum-discourse .forum-post-content {
  color: #dbe3ec;
}

body.forum-discourse .forum-activity-item {
  border: 0;
  border-top: 1px solid var(--forum-border);
  border-radius: 0;
  background: transparent;
}

body.forum-discourse .forum-activity-item:first-child {
  border-top: 0;
}

body.forum-discourse .d2-footer {
  color: var(--forum-muted);
  border-top-color: var(--forum-border);
}

@media (max-width: 980px) {
  body.forum-discourse .forum-home-grid,
  body.forum-discourse .forum-main-grid,
  body.forum-discourse .forum-discourse-table-head,
  body.forum-discourse .forum-category-grid,
  body.forum-discourse .forum-thread-grid {
    grid-template-columns: 1fr;
  }

  body.forum-discourse .forum-discourse-table-head {
    display: none;
  }

  body.forum-discourse .forum-thread-stats {
    text-align: left;
  }

  body.forum-discourse .forum-sidebar {
    position: static;
  }
}

@media (max-width: 680px) {
  body.forum-discourse .d2-topbar,
  body.forum-discourse .forum-discourse-head {
    flex-direction: column;
    align-items: stretch;
    padding-top: 14px;
    padding-bottom: 14px;
  }

  body.forum-discourse .forum-post-layout {
    grid-template-columns: 1fr;
  }

  body.forum-discourse .forum-author-card {
    border-right: 0;
    border-bottom: 1px solid var(--forum-border);
    padding-right: 0;
    padding-bottom: 14px;
  }
}

body.forum-io {
  --io-bg: #080706;
  --io-panel: rgba(18, 14, 11, .92);
  --io-panel-2: rgba(28, 20, 15, .94);
  --io-line: rgba(163, 113, 55, .34);
  --io-line-soft: rgba(163, 113, 55, .18);
  --io-gold: #d6a44f;
  --io-gold-soft: #b9873f;
  --io-text: #d8c8aa;
  --io-muted: #8e8170;
  --io-link: #d7a24b;
  color: var(--io-text);
  background:
    radial-gradient(circle at 50% 0, rgba(126, 38, 22, .22), transparent 30rem),
    #070604;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}

body.forum-io::before {
  display: none;
}

body.forum-io .d2-page {
  min-height: 100vh;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, .12), rgba(0, 0, 0, .82) 320px),
    url("bg03.jpg") center top / cover fixed no-repeat;
}

body.forum-io .d2-shell {
  width: min(1220px, calc(100% - 28px));
}

body.forum-io .d2-topbar {
  max-width: none;
  width: 100%;
  min-height: 62px;
  padding: 0 22px;
  background: rgba(10, 8, 7, .94);
  border-bottom: 1px solid rgba(214, 164, 79, .26);
}

body.forum-io .d2-brand img {
  width: 42px;
  filter: drop-shadow(0 0 14px rgba(214, 117, 43, .45));
}

body.forum-io .d2-brand span {
  color: #8d7860;
  font-size: .68rem;
  letter-spacing: .08em;
}

body.forum-io .d2-brand strong {
  color: #f0d89b;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 1.22rem;
  letter-spacing: .02em;
}

body.forum-io .d2-nav a,
body.forum-io .d2-btn {
  min-height: 34px;
  padding: 8px 12px;
  border: 1px solid transparent;
  border-radius: 2px;
  color: #c9b99a;
  background: transparent;
  box-shadow: none;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: .88rem;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
}

body.forum-io .d2-nav a:hover,
body.forum-io .d2-btn:hover {
  color: #ffe0a1;
  border-color: var(--io-line);
  background: rgba(70, 43, 24, .48);
  transform: none;
}

body.forum-io .d2-btn-primary {
  color: #160f09;
  border-color: #e4b85e;
  background: linear-gradient(180deg, #e1b75d, #ad7731);
}

body.forum-io .d2-btn-primary:hover {
  color: #160f09;
  background: linear-gradient(180deg, #f0c878, #c58a3c);
}

body.forum-io a {
  color: var(--io-link);
  text-decoration: none;
}

body.forum-io a:hover {
  color: #ffe0a1;
}

body.forum-io .forum-shell {
  padding-top: 18px;
  padding-bottom: 42px;
}

body.forum-io .forum-io-head {
  margin-bottom: 16px;
}

body.forum-io .forum-io-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
  color: var(--io-muted);
  font-size: .84rem;
}

body.forum-io .forum-io-titlebar {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px;
  border: 1px solid var(--io-line);
  background: linear-gradient(180deg, rgba(35, 24, 17, .95), rgba(13, 10, 8, .95));
}

body.forum-io .forum-io-titlebar h1 {
  margin: 0;
  color: #f2d79a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.7rem, 4vw, 2.45rem);
  font-weight: 700;
  line-height: 1.1;
}

body.forum-io .forum-io-titlebar p {
  margin: 8px 0 0;
  color: #ad9c80;
  line-height: 1.5;
}

body.forum-io .forum-io-counter {
  min-width: 92px;
  text-align: center;
  color: var(--io-muted);
}

body.forum-io .forum-io-counter strong {
  display: block;
  color: #f0cf84;
  font-size: 2rem;
  line-height: 1;
}

body.forum-io .forum-io-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

body.forum-io .forum-search-form {
  flex: 1;
  display: flex;
  flex-direction: row;
  min-width: 0;
  gap: 8px;
}

body.forum-io .forum-input {
  border: 1px solid rgba(163, 113, 55, .45);
  border-radius: 2px;
  color: #ead8ba;
  background: rgba(8, 7, 6, .82);
}

body.forum-io .forum-input:focus {
  border-color: #d6a44f;
  box-shadow: 0 0 0 2px rgba(214, 164, 79, .14);
}

body.forum-io .forum-home-grid,
body.forum-io .forum-main-grid {
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 18px;
}

body.forum-io .forum-io-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

body.forum-io .forum-io-feature-card {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px 12px;
  align-items: center;
  min-height: 92px;
  padding: 14px;
  border: 1px solid var(--io-line);
  background: linear-gradient(180deg, rgba(34, 23, 16, .94), rgba(15, 11, 8, .94));
}

body.forum-io .forum-io-feature-card:hover {
  border-color: rgba(214, 164, 79, .68);
  background: linear-gradient(180deg, rgba(48, 31, 20, .96), rgba(18, 13, 9, .96));
}

body.forum-io .forum-io-feature-icon {
  grid-row: span 2;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(214, 164, 79, .42);
  color: #17100a;
  background: linear-gradient(180deg, #d6a44f, #875a25);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.45rem;
  font-weight: 900;
}

body.forum-io .forum-io-feature-card strong {
  color: #f0d89b;
  font-size: 1.02rem;
}

body.forum-io .forum-io-feature-card em {
  color: var(--io-muted);
  font-size: .83rem;
  font-style: normal;
}

body.forum-io .forum-io-section-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin: 18px 0 10px;
  padding: 14px 16px;
  border: 1px solid var(--io-line);
  background: rgba(13, 10, 8, .9);
}

body.forum-io .forum-io-section-head-small {
  margin-top: 24px;
}

body.forum-io .forum-io-section-head h2 {
  margin: 0;
  color: #f0d89b;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.45rem;
}

body.forum-io .forum-io-section-head p {
  margin: 4px 0 0;
  color: var(--io-muted);
}

body.forum-io .forum-io-sortbox {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 10px;
  padding: 12px 14px;
  border: 1px solid var(--io-line-soft);
  color: var(--io-muted);
  background: rgba(12, 9, 7, .74);
  font-size: .88rem;
}

body.forum-io .forum-chip,
body.forum-io .forum-badge,
body.forum-io .forum-page-link {
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid rgba(163, 113, 55, .38);
  border-radius: 2px;
  color: #c9b99a;
  background: rgba(30, 21, 15, .8);
}

body.forum-io .forum-chip.is-active,
body.forum-io .forum-page-link.is-active,
body.forum-io .forum-badge.is-fresh {
  color: #160f09;
  border-color: #d6a44f;
  background: #d6a44f;
}

body.forum-io .forum-io-topic-list {
  gap: 8px;
}

body.forum-io .forum-io-topic-card {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) 145px 82px;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid var(--io-line-soft);
  background: rgba(16, 12, 9, .9);
}

body.forum-io .forum-io-topic-card:hover {
  border-color: var(--io-line);
  background: rgba(28, 20, 14, .95);
}

body.forum-io .forum-io-topic-icon {
  width: 42px;
  height: 42px;
  border: 1px solid rgba(214, 164, 79, .34);
  background:
    radial-gradient(circle at 50% 42%, rgba(255, 213, 118, .58), transparent 0 20%, rgba(114, 34, 20, .8) 21% 52%, transparent 53%),
    linear-gradient(180deg, #21150e, #090706);
}

body.forum-io .forum-io-topic-main h3 {
  margin: 0;
  font-size: 1.02rem;
  font-weight: 700;
}

body.forum-io .forum-io-topic-main p {
  margin: 6px 0 0;
  color: #a9977d;
  line-height: 1.45;
}

body.forum-io .forum-io-topic-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
  color: var(--io-muted);
  font-size: .82rem;
}

body.forum-io .forum-io-topic-last {
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: var(--io-muted);
  font-size: .84rem;
}

body.forum-io .forum-io-topic-stats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2px;
  color: var(--io-muted);
  text-align: right;
  font-size: .75rem;
}

body.forum-io .forum-io-topic-stats strong {
  color: #e8cf98;
  font-size: .98rem;
}

body.forum-io .forum-category-list,
body.forum-io .forum-activity-list {
  gap: 8px;
}

body.forum-io .forum-category-card,
body.forum-io .d2-panel {
  border: 1px solid var(--io-line-soft);
  border-radius: 2px;
  background: rgba(16, 12, 9, .9);
  box-shadow: none;
}

body.forum-io .d2-panel::before {
  display: none;
}

body.forum-io .d2-panel-content {
  padding: 16px;
}

body.forum-io .forum-category-grid {
  grid-template-columns: minmax(0, 1fr) 98px 230px;
  gap: 14px;
  align-items: center;
  padding: 12px;
}

body.forum-io .forum-category-main {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr);
  gap: 12px;
}

body.forum-io .forum-category-marker {
  width: 7px;
  height: 46px;
  background: linear-gradient(180deg, #d6a44f, #7a401f);
}

body.forum-io .forum-category-grid h3,
body.forum-io .forum-thread-content h3 {
  margin: 0;
  font-size: 1rem;
}

body.forum-io .forum-category-grid p,
body.forum-io .forum-thread-content p {
  margin: 5px 0 0;
  color: #a9977d;
  line-height: 1.45;
}

body.forum-io .forum-thread-stats,
body.forum-io .forum-thread-last,
body.forum-io .forum-side-list {
  gap: 4px;
}

body.forum-io .forum-thread-stats {
  text-align: right;
}

body.forum-io .forum-thread-stats strong,
body.forum-io .forum-thread-last strong,
body.forum-io .forum-side-list strong {
  margin: 0;
  color: #e8cf98;
}

body.forum-io .forum-thread-stats span,
body.forum-io .forum-thread-last span,
body.forum-io .forum-side-list span {
  color: var(--io-muted);
  font-size: .78rem;
  text-transform: none;
  letter-spacing: 0;
}

body.forum-io .forum-sidebar {
  position: sticky;
  top: 78px;
  align-self: start;
}

body.forum-io .forum-block-title,
body.forum-io .forum-section-title {
  color: #f0d89b;
  font-family: Georgia, "Times New Roman", serif;
  text-transform: none;
  letter-spacing: 0;
}

body.forum-io .forum-activity-item {
  border: 1px solid var(--io-line-soft);
  border-radius: 2px;
  background: rgba(10, 8, 6, .54);
}

body.forum-io .forum-activity-item strong {
  color: var(--io-link);
}

body.forum-io .forum-activity-item span,
body.forum-io .forum-empty-state,
body.forum-io .forum-section-copy,
body.forum-io .forum-thread-intro,
body.forum-io .forum-post-meta {
  color: var(--io-muted);
}

body.forum-io .forum-post-content {
  color: #d8c8aa;
}

body.forum-io .d2-footer {
  color: var(--io-muted);
  border-top-color: var(--io-line-soft);
}

@media (max-width: 1050px) {
  body.forum-io .forum-home-grid,
  body.forum-io .forum-main-grid {
    grid-template-columns: 1fr;
  }

  body.forum-io .forum-sidebar {
    position: static;
  }
}

@media (max-width: 820px) {
  body.forum-io .forum-io-feature-grid,
  body.forum-io .forum-category-grid,
  body.forum-io .forum-io-topic-card {
    grid-template-columns: 1fr;
  }

  body.forum-io .forum-thread-stats,
  body.forum-io .forum-io-topic-stats {
    text-align: left;
  }
}

@media (max-width: 640px) {
  body.forum-io .d2-topbar,
  body.forum-io .forum-io-titlebar,
  body.forum-io .forum-io-actions,
  body.forum-io .forum-search-form,
  body.forum-io .forum-io-section-head {
    flex-direction: column;
    align-items: stretch;
  }

  body.forum-io .d2-topbar {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}

body.d2io-forum {
  --d2io-bg: #080604;
  --d2io-panel: rgba(17, 13, 10, .96);
  --d2io-panel-2: rgba(28, 20, 14, .96);
  --d2io-line: rgba(176, 119, 49, .34);
  --d2io-line-soft: rgba(176, 119, 49, .18);
  --d2io-gold: #d4a34d;
  --d2io-gold-2: #f0c870;
  --d2io-text: #d8c8aa;
  --d2io-muted: #94846d;
  --d2io-red: #9c2f20;
  min-height: 100vh;
  margin: 0;
  color: var(--d2io-text);
  background:
    linear-gradient(180deg, rgba(8, 6, 4, .72), rgba(8, 6, 4, .96) 360px),
    url("bg03.jpg") center top / cover fixed no-repeat,
    var(--d2io-bg);
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  letter-spacing: 0;
}

body.d2io-forum::before {
  display: none;
}

body.d2io-forum a {
  color: var(--d2io-gold);
  text-decoration: none;
}

body.d2io-forum a:hover {
  color: #ffe1a3;
}

.d2io-top {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 62px;
  padding: 0 22px;
  border-bottom: 1px solid var(--d2io-line);
  background: rgba(8, 6, 4, .96);
  backdrop-filter: blur(8px);
}

.d2io-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 190px;
  color: var(--d2io-gold-2);
  font-weight: 800;
}

.d2io-logo img {
  width: 40px;
  height: auto;
  filter: drop-shadow(0 0 14px rgba(211, 86, 30, .5));
}

.d2io-logo span span {
  color: #a88d66;
  font-weight: 700;
}

.d2io-mainnav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 4px;
}

.d2io-mainnav a {
  padding: 10px 11px;
  border: 1px solid transparent;
  color: #cbb997;
  font-size: .9rem;
  font-weight: 700;
}

.d2io-mainnav a:hover,
.d2io-mainnav a.is-active {
  border-color: var(--d2io-line);
  color: #fff0c7;
  background: rgba(77, 48, 25, .48);
}

.d2io-wrap {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr) 280px;
  gap: 18px;
  width: min(1380px, calc(100% - 28px));
  margin: 18px auto 42px;
}

.d2io-leftnav,
.d2io-right {
  position: sticky;
  top: 82px;
  align-self: start;
}

.d2io-leftnav {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px;
  border: 1px solid var(--d2io-line-soft);
  background: rgba(10, 8, 6, .72);
}

.d2io-leftnav strong {
  margin: 12px 8px 5px;
  color: #f0c870;
  font-size: .78rem;
  text-transform: uppercase;
}

.d2io-leftnav strong:first-child {
  margin-top: 0;
}

.d2io-leftnav a {
  padding: 7px 8px;
  color: #bda98a;
  font-size: .9rem;
}

.d2io-leftnav a:hover {
  background: rgba(77, 48, 25, .42);
}

.d2io-main {
  min-width: 0;
}

.d2io-crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 12px;
  color: var(--d2io-muted);
  font-size: .84rem;
}

.d2io-heading,
.d2io-block-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 12px;
  padding: 16px 18px;
  border: 1px solid var(--d2io-line);
  background: linear-gradient(180deg, rgba(36, 25, 17, .96), rgba(12, 9, 7, .96));
}

.d2io-heading h1,
.d2io-block-title h2,
.d2io-panel h2,
.d2io-reply h2 {
  margin: 0;
  color: #f1d18e;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  line-height: 1.08;
}

.d2io-heading h1 {
  font-size: clamp(1.75rem, 4vw, 2.55rem);
}

.d2io-heading p,
.d2io-block-title p {
  margin: 7px 0 0;
  color: #a7967b;
  line-height: 1.5;
}

.d2io-bigcount {
  min-width: 86px;
  color: var(--d2io-muted);
  text-align: center;
}

.d2io-bigcount strong {
  display: block;
  color: #f0c870;
  font-size: 2rem;
  line-height: 1;
}

.d2io-btn,
.d2io-filter button,
.d2io-postactions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 7px 12px;
  border: 1px solid var(--d2io-line);
  color: #d8c8aa;
  background: rgba(28, 20, 14, .9);
  font-weight: 700;
  cursor: pointer;
}

.d2io-btn-primary {
  color: #180f08;
  border-color: #e3b75d;
  background: linear-gradient(180deg, #e3b75d, #a66d2c);
}

.d2io-btn:hover,
.d2io-filter button:hover,
.d2io-postactions button:hover {
  color: #fff0c7;
  background: rgba(77, 48, 25, .72);
}

.d2io-btn-primary:hover {
  color: #180f08;
  background: linear-gradient(180deg, #f0c870, #bd8035);
}

.d2io-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.d2io-feature,
.d2io-forum-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 5px 12px;
  align-items: center;
  min-height: 94px;
  padding: 13px;
  border: 1px solid var(--d2io-line);
  background: linear-gradient(180deg, rgba(30, 21, 15, .96), rgba(11, 8, 6, .96));
}

.d2io-feature:hover,
.d2io-forum-card:hover {
  border-color: rgba(240, 200, 112, .7);
  background: linear-gradient(180deg, rgba(45, 29, 18, .98), rgba(15, 10, 7, .98));
}

.d2io-feature > span,
.d2io-forum-card > span,
.d2io-topic-icon,
.d2io-avatar {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(240, 200, 112, .35);
  color: #170f08;
  background: linear-gradient(180deg, #d4a34d, #825225);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.35rem;
  font-weight: 900;
}

.d2io-feature strong,
.d2io-forum-card strong {
  color: #f0d49a;
}

.d2io-feature em,
.d2io-feature small,
.d2io-forum-card em,
.d2io-forum-card small {
  color: var(--d2io-muted);
  font-size: .82rem;
  font-style: normal;
}

.d2io-feature em,
.d2io-forum-card em {
  line-height: 1.35;
}

.d2io-red > span,
.d2io-topic-icon.d2io-red { background: linear-gradient(180deg, #c05a35, #6c2217); }
.d2io-green > span,
.d2io-topic-icon.d2io-green { background: linear-gradient(180deg, #98a85d, #42572b); }
.d2io-blue > span,
.d2io-topic-icon.d2io-blue { background: linear-gradient(180deg, #6c99bd, #253d60); }
.d2io-purple > span,
.d2io-topic-icon.d2io-purple { background: linear-gradient(180deg, #9b7eb8, #45305c); }
.d2io-gray > span,
.d2io-topic-icon.d2io-gray { background: linear-gradient(180deg, #a09584, #4a423a); }
.d2io-brown > span,
.d2io-topic-icon.d2io-brown { background: linear-gradient(180deg, #b18048, #5c351c); }

.d2io-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  padding: 11px 12px;
  border: 1px solid var(--d2io-line-soft);
  color: var(--d2io-muted);
  background: rgba(12, 9, 7, .76);
}

.d2io-filter input,
.d2io-filter select,
.d2io-form input,
.d2io-form textarea,
.d2io-form select,
.d2io-postactions input {
  min-height: 34px;
  border: 1px solid rgba(176, 119, 49, .42);
  color: #ead8ba;
  background: rgba(5, 4, 3, .85);
  padding: 7px 9px;
  outline: none;
}

.d2io-filter input:focus,
.d2io-form input:focus,
.d2io-form textarea:focus,
.d2io-form select:focus {
  border-color: var(--d2io-gold-2);
}

.d2io-filter-static form {
  display: flex;
  gap: 6px;
  margin-left: auto;
}

.d2io-topic-list {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.d2io-topic {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) 145px 74px 74px;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid var(--d2io-line-soft);
  background: rgba(15, 11, 8, .92);
}

.d2io-topic:hover {
  border-color: var(--d2io-line);
  background: rgba(29, 20, 13, .96);
}

.d2io-topic.is-unread {
  box-shadow: inset 3px 0 0 var(--d2io-gold);
}

.d2io-topic h3 {
  margin: 0;
  font-size: 1.02rem;
  line-height: 1.25;
}

.d2io-topic h3 span {
  margin-right: 6px;
  padding: 2px 5px;
  border: 1px solid rgba(176, 119, 49, .35);
  color: #d8c8aa;
  font-size: .68rem;
  text-transform: uppercase;
}

.d2io-topic p {
  margin: 6px 0 0;
  color: #a7967b;
  line-height: 1.4;
}

.d2io-topic-main > div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 7px;
  color: var(--d2io-muted);
  font-size: .82rem;
}

.d2io-topic-last,
.d2io-topic-metric {
  display: flex;
  flex-direction: column;
  gap: 3px;
  color: var(--d2io-muted);
  font-size: .8rem;
}

.d2io-topic-metric {
  text-align: right;
}

.d2io-topic-metric strong {
  color: #e9cf95;
  font-size: 1rem;
}

.d2io-all-title {
  margin-top: 18px;
}

.d2io-forum-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.d2io-panel {
  margin-bottom: 12px;
  padding: 14px;
  border: 1px solid var(--d2io-line-soft);
  background: rgba(15, 11, 8, .9);
}

.d2io-panel h2 {
  margin-bottom: 10px;
  font-size: 1.15rem;
}

.d2io-panel p {
  color: var(--d2io-muted);
}

.d2io-side-topic {
  display: block;
  padding: 9px 0;
  border-top: 1px solid var(--d2io-line-soft);
}

.d2io-side-topic:first-of-type {
  border-top: 0;
}

.d2io-side-topic strong,
.d2io-side-topic span {
  display: block;
}

.d2io-side-topic span {
  margin-top: 3px;
  color: var(--d2io-muted);
  font-size: .8rem;
}

.d2io-pages {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 10px 0;
}

.d2io-pages a {
  min-width: 30px;
  padding: 6px 9px;
  border: 1px solid var(--d2io-line-soft);
  color: #cbb997;
  text-align: center;
  background: rgba(15, 11, 8, .9);
}

.d2io-pages a.is-active {
  color: #170f08;
  border-color: var(--d2io-gold-2);
  background: var(--d2io-gold);
}

.d2io-posts {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.d2io-post {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  border: 1px solid var(--d2io-line-soft);
  background: rgba(15, 11, 8, .92);
}

.d2io-post aside {
  padding: 14px;
  border-right: 1px solid var(--d2io-line-soft);
  text-align: center;
  background: rgba(8, 6, 4, .34);
}

.d2io-avatar {
  margin: 0 auto 9px;
}

.d2io-author {
  display: block;
  font-weight: 800;
}

.d2io-post aside span {
  display: block;
  margin-top: 5px;
  color: var(--d2io-muted);
  font-size: .8rem;
}

.d2io-postbody {
  min-width: 0;
  padding: 14px 16px;
}

.d2io-postmeta,
.d2io-postactions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  color: var(--d2io-muted);
  font-size: .82rem;
}

.d2io-postmeta {
  margin-bottom: 12px;
}

.d2io-message {
  color: #dfcfb6;
  line-height: 1.7;
}

.d2io-postactions {
  margin-top: 14px;
}

.d2io-postactions form {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.d2io-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.d2io-form label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: #cdbb99;
}

.d2io-form textarea {
  min-height: 160px;
  resize: vertical;
}

.d2io-alert {
  margin-bottom: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(196, 67, 44, .42);
  color: #ffb4a3;
  background: rgba(79, 21, 13, .36);
}

.d2io-muted {
  color: var(--d2io-muted);
}

.d2io-modbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
  padding: 10px 12px;
  border: 1px solid var(--d2io-line-soft);
  background: rgba(12, 9, 7, .76);
}

@media (max-width: 1180px) {
  .d2io-wrap {
    grid-template-columns: minmax(0, 1fr) 270px;
  }

  .d2io-leftnav {
    display: none;
  }
}

@media (max-width: 920px) {
  .d2io-wrap {
    grid-template-columns: 1fr;
  }

  .d2io-right {
    position: static;
  }

  .d2io-feature-grid,
  .d2io-forum-grid {
    grid-template-columns: 1fr;
  }

  .d2io-topic {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .d2io-topic-last,
  .d2io-topic-metric {
    grid-column: 2;
    flex-direction: row;
    text-align: left;
  }
}

@media (max-width: 680px) {
  .d2io-top,
  .d2io-heading,
  .d2io-block-title,
  .d2io-filter,
  .d2io-filter-static form {
    flex-direction: column;
    align-items: stretch;
  }

  .d2io-mainnav {
    justify-content: flex-start;
  }

  .d2io-post {
    grid-template-columns: 1fr;
  }

  .d2io-post aside {
    border-right: 0;
    border-bottom: 1px solid var(--d2io-line-soft);
  }
}
