Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* CSS placed here will be applied to all skins */
body.skin-holdfast .hf-upcoming-release-image {
  flex: 0 0 320px;
  max-width: 320px;
  overflow: hidden;
  display: flex;
  align-items: stretch;
}

body.skin-holdfast .hf-upcoming-release-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
  display: block;
}

.toc,
#toc,
.toctoggle,
.mw-table-of-contents-container {
  display: none !important;
}

.wn-task-table td {
  vertical-align: top;
}

.wn-status {
  padding: 4px 8px;
  border-radius: 4px;
  font-weight: bold;
  display: inline-block;
}

/* Status colors */
.wn-task.wn-status-not-started .wn-status-cell {
  color: #b00020;
  font-weight: bold;
}

.wn-task.wn-status-in-progress .wn-status-cell {
  color: #b26a00;
  font-weight: bold;
}

.wn-task.wn-status-done .wn-status-cell {
  color: #1b7f3a;
  font-weight: bold;
}

.hf-social-card-icon img {
  width: 40px;
  height: 40px;
  object-fit: contain;
  display: block;
  margin: 0 auto;
}

/* ===== Game Modes Page ===== */
.hf-game-modes-page .hf-gm-hero {
  background: linear-gradient(135deg, #2F2D2B 0%, #46463E 70%, #886D00 100%);
  border: 1px solid #BFB69C;
  color: #FFFFFF;
  margin: 14px 0 18px;
  padding: 20px;
}

.hf-game-modes-page .hf-gm-kicker {
  color: #E0BA3A;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.hf-game-modes-page .hf-gm-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 8px;
}

.hf-game-modes-page .hf-gm-text {
  color: #EEEDEB;
  font-size: 14px;
  line-height: 21px;
  max-width: 780px;
}

.hf-game-modes-page .hf-gm-facts,
.hf-game-modes-page .hf-gm-card-grid {
  display: grid;
  gap: 12px;
  margin: 16px 0;
}

.hf-game-modes-page .hf-gm-facts {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.hf-game-modes-page .hf-gm-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.hf-game-modes-page .hf-gm-card-grid-small {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.hf-game-modes-page .hf-gm-fact,
.hf-game-modes-page .hf-gm-card {
  background: #F2F0EA;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #BFB69C;
  color: #1E1E1D;
  padding: 12px 14px;
}

.hf-game-modes-page .hf-gm-card:hover {
  border-left-color: #C9A227;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
}

.hf-game-modes-page .hf-gm-fact span,
.hf-game-modes-page .hf-gm-card-title {
  color: #886D00;
  display: block;
  font-weight: 700;
}

.hf-game-modes-page .hf-gm-fact span {
  font-size: 12px;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.hf-game-modes-page .hf-gm-card-title {
  border-bottom: 1px solid #BFB69C;
  font-size: 17px;
  line-height: 22px;
  margin-bottom: 8px;
  padding-bottom: 6px;
}

.hf-game-modes-page .hf-gm-code {
  background: #2d2926;
  color: #e2c275;
  display: inline-block;
  font-family: monospace;
  font-size: 12px;
  margin-bottom: 6px;
  padding: 3px 6px;
}

.hf-game-modes-page .hf-gm-value {
  color: #555555;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.hf-game-modes-page .hf-gm-desc {
  font-size: 13px;
  line-height: 19px;
}

.hf-game-modes-page .hf-gm-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 18px;
}

.hf-game-modes-page .hf-gm-chip-list span {
  background: #F2F0EA;
  border: 1px solid #d5d0c8;
  border-left: 3px solid #BFB69C;
  color: #1E1E1D;
  display: inline-block;
  font-size: 13px;
  line-height: 18px;
  padding: 5px 8px;
}

.hf-game-modes-page .hf-gm-chip-list span:hover {
  border-left-color: #C9A227;
}

.hf-game-modes-page .hf-gm-mode-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 16px;
  margin: 16px 0;
}

.hf-game-modes-page .hf-gm-mode-card {
  background: linear-gradient(180deg, #F2F0EA 0%, #EEEDEB 100%);
  border: 1px solid #d5d0c8;
  border-left: 4px solid #BFB69C;
  color: #1E1E1D;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px;
}

.hf-game-modes-page .hf-gm-mode-card:hover {
  border-left-color: #C9A227;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
}

.hf-game-modes-page .hf-gm-image-box {
  align-items: center;
  background: linear-gradient(135deg, #2F2D2B 0%, #46463E 100%);
  border: 1px solid #BFB69C;
  color: #E0BA3A;
  display: flex;
  font-weight: 700;
  justify-content: center;
  min-height: 150px;
  overflow: hidden;
  text-align: center;
  text-transform: uppercase;
}

.hf-game-modes-page .hf-gm-image-box img {
  display: block;
  height: 100% !important;
  object-fit: cover;
  width: 100% !important;
}

.hf-game-modes-page .hf-gm-map-heading {
  color: #886D00;
  font-size: 12px;
  font-weight: 700;
  margin-top: 4px;
  text-transform: uppercase;
}

.hf-game-modes-page .hf-gm-map-list {
  background: #FFFFFF;
  border-top: 1px solid #d5d0c8;
  font-size: 13px;
  line-height: 20px;
  margin-top: 6px;
  padding: 8px;
}

.hf-game-modes-page .hf-gm-map-list a {
  background: #FFFFFF;
  border: 1px solid #d5d0c8;
  color: #886D00 !important;
  display: inline-block;
  font-weight: 700;
  margin: 0 4px 6px 0;
  padding: 3px 7px;
  text-decoration: none;
}

.hf-game-modes-page .hf-gm-map-list a:hover {
  border-color: #C9A227;
  color: #5f4c00 !important;
}

/* ===== Beginner's Guide Page ===== */
.hf-beginners-page .hf-bg-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #1f5d8f 100%);
  border: 1px solid #bfb69c;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  color: #ffffff;
  margin: 14px 0 18px;
  overflow: hidden;
  padding: 22px;
  position: relative;
}

.hf-beginners-page .hf-bg-hero:after {
  background: radial-gradient(circle at center, rgba(224, 186, 58, 0.24), rgba(224, 186, 58, 0));
  content: "";
  height: 180px;
  position: absolute;
  right: -70px;
  top: -70px;
  width: 180px;
}

.hf-beginners-page .hf-bg-kicker {
  color: #e0ba3a;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  margin-bottom: 8px;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}

.hf-beginners-page .hf-bg-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 8px;
  max-width: 780px;
  position: relative;
  z-index: 1;
}

.hf-beginners-page .hf-bg-text {
  color: #eeedeb;
  font-size: 14px;
  line-height: 21px;
  max-width: 820px;
  position: relative;
  z-index: 1;
}

.hf-beginners-page .hf-bg-facts,
.hf-beginners-page .hf-card-grid {
  display: grid;
  gap: 12px;
  margin: 16px 0;
}

.hf-beginners-page .hf-bg-facts {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.hf-beginners-page .hf-bg-fact,
.hf-beginners-page .hf-card {
  background: #f2f0ea;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #bfb69c;
  color: #1e1e1d;
  padding: 12px 14px;
}

.hf-beginners-page .hf-bg-fact span {
  color: #886d00;
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.hf-beginners-page .hf-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.hf-beginners-page .hf-card {
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.hf-beginners-page .hf-card:hover {
  border-left-color: #c9a227;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.14);
  transform: translateY(-2px);
}

.hf-beginners-page .hf-card-image {
  align-items: stretch;
  background:
    linear-gradient(135deg, rgba(191, 182, 156, 0.18), rgba(30, 30, 29, 0.1)),
    #1e1e1d;
  display: flex;
  justify-content: center;
  height: 130px;
  margin: -12px -14px 10px;
  overflow: hidden;
}

.hf-beginners-page .hf-card-image:empty {
  display: none;
}

.hf-beginners-page .hf-card-image p,
.hf-beginners-page .hf-card-image a,
.hf-beginners-page .hf-card-image .mw-file-description {
  display: block;
  height: 100%;
  line-height: 0;
  margin: 0;
  width: 100%;
}

.hf-beginners-page .hf-card-image img {
  display: block;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
  width: 100% !important;
}

.hf-beginners-page .hf-card-title {
  border-bottom: 1px solid #bfb69c;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  margin-bottom: 8px;
  padding-bottom: 6px;
}

.hf-beginners-page .hf-card-title a {
  color: #886d00;
}

.hf-beginners-page .hf-card-desc {
  font-size: 13px;
  line-height: 19px;
}

.hf-beginners-page .hf-relpage-section {
  border-left-color: #1f5d8f;
}

.hf-beginners-page .hf-relpage-section-body > p:first-child,
.hf-beginners-page .hf-relpage-section-body > ul:first-child,
.hf-beginners-page .hf-relpage-section-body > ol:first-child {
  margin-top: 0;
}

.hf-beginners-page .hf-relpage-section-body b,
.hf-beginners-page .hf-relpage-section-body strong {
  color: #1f5d8f;
}

.hf-beginners-page .hf-relpage-section-body > p:has(b),
.hf-beginners-page .hf-relpage-section-body > p:has(strong) {
  background: linear-gradient(90deg, rgba(31, 93, 143, 0.12), rgba(201, 162, 39, 0.06));
  border-left: 4px solid #1f5d8f;
  color: #1e1e1d;
  font-size: 15px;
  font-weight: 700;
  margin: 14px 0 8px;
  padding: 8px 10px;
}

.hf-beginners-page .hf-relpage-section-body ul,
.hf-beginners-page .hf-relpage-section-body ol {
  background: #f7f4ec;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #c9a227;
  margin: 12px 0;
  padding: 10px 12px 10px 30px;
}

.hf-beginners-page .hf-relpage-section-body li {
  margin: 5px 0;
}

.hf-beginners-page .wikitable {
  border: 1px solid #bfb69c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
  margin: 14px 0;
  width: 100%;
}

.hf-beginners-page .wikitable th {
  background: #2f2d2b !important;
  color: #e0ba3a !important;
  font-weight: 700;
}

.hf-beginners-page .wikitable td {
  background: #f7f4ec;
  border-color: #d5d0c8;
}

/* ===== Mechanics Page ===== */
.hf-mechanics-page .hf-mech-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #886d00 100%);
  border: 1px solid #bfb69c;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  color: #ffffff;
  margin: 14px 0 18px;
  overflow: hidden;
  padding: 22px;
  position: relative;
}

.hf-mechanics-page .hf-mech-hero:after {
  background: radial-gradient(circle at center, rgba(224, 186, 58, 0.24), rgba(224, 186, 58, 0));
  content: "";
  height: 180px;
  position: absolute;
  right: -70px;
  top: -70px;
  width: 180px;
}

.hf-mechanics-page .hf-mech-kicker {
  color: #e0ba3a;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  margin-bottom: 8px;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}

.hf-mechanics-page .hf-mech-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 8px;
  max-width: 780px;
  position: relative;
  z-index: 1;
}

.hf-mechanics-page .hf-mech-text {
  color: #eeedeb;
  font-size: 14px;
  line-height: 21px;
  max-width: 820px;
  position: relative;
  z-index: 1;
}

.hf-mechanics-page .hf-mech-facts,
.hf-mechanics-page .hf-card-grid {
  display: grid;
  gap: 12px;
  margin: 16px 0;
}

.hf-mechanics-page .hf-mech-facts {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.hf-mechanics-page .hf-mech-fact,
.hf-mechanics-page .hf-card {
  background: #f2f0ea;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #bfb69c;
  color: #1e1e1d;
  padding: 12px 14px;
}

.hf-mechanics-page .hf-mech-fact span {
  color: #886d00;
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.hf-mechanics-page .hf-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.hf-mechanics-page .hf-card {
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.hf-mechanics-page .hf-card:hover {
  border-left-color: #c9a227;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.14);
  transform: translateY(-2px);
}

.hf-mechanics-page .hf-card-image {
  align-items: stretch;
  background:
    linear-gradient(135deg, rgba(191, 182, 156, 0.18), rgba(30, 30, 29, 0.1)),
    #1e1e1d;
  display: flex;
  height: 130px;
  justify-content: center;
  margin: -12px -14px 10px;
  overflow: hidden;
}

.hf-mechanics-page .hf-card-image:empty {
  display: none;
}

.hf-mechanics-page .hf-card-image p,
.hf-mechanics-page .hf-card-image a,
.hf-mechanics-page .hf-card-image .mw-file-description {
  display: block;
  height: 100%;
  line-height: 0;
  margin: 0;
  width: 100%;
}

.hf-mechanics-page .hf-card-image img {
  display: block;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
  width: 100% !important;
}

.hf-mechanics-page .hf-card-title {
  border-bottom: 1px solid #bfb69c;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  margin-bottom: 8px;
  padding-bottom: 6px;
}

.hf-mechanics-page .hf-card-title a {
  color: #886d00;
}

.hf-mechanics-page .hf-card-desc {
  font-size: 13px;
  line-height: 19px;
}

.hf-mechanics-page .hf-relpage-section {
  border-left-color: #886d00;
}

.hf-mechanics-page .hf-relpage-section-body > p:first-child,
.hf-mechanics-page .hf-relpage-section-body > ul:first-child,
.hf-mechanics-page .hf-relpage-section-body > ol:first-child {
  margin-top: 0;
}

/* ===== Directory Hub Pages ===== */
.hf-directory-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #6f2f2f 100%);
  border: 1px solid #bfb69c;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  color: #ffffff;
  margin: 14px 0 18px;
  overflow: hidden;
  padding: 22px;
  position: relative;
}

.hf-classes-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #886d00 100%);
}

.hf-roleplay-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #1f5d8f 100%);
}

.hf-linebattle-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #6f4c2f 100%);
}

.hf-ui-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #3f6542 100%);
}

.hf-faq-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #6f4c2f 100%);
}

.hf-shooting-page .hf-directory-hero,
.hf-melee-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #6f2f2f 100%);
}

.hf-defences-page .hf-directory-hero,
.hf-auxiliary-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #886d00 100%);
}

.hf-horseback-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #5b3f2a 100%);
}

.hf-cavalry-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #5b3f2a 100%);
}

.hf-music-page .hf-directory-hero,
.hf-voice-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #1f5d8f 100%);
}

.hf-crewmen-page .hf-directory-hero {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #1f5d8f 100%);
}

.hf-directory-page .hf-directory-hero:after {
  background: radial-gradient(circle at center, rgba(224, 186, 58, 0.24), rgba(224, 186, 58, 0));
  content: "";
  height: 180px;
  position: absolute;
  right: -70px;
  top: -70px;
  width: 180px;
}

.hf-directory-page .hf-directory-kicker {
  color: #e0ba3a;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  margin-bottom: 8px;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}

.hf-directory-page .hf-directory-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 8px;
  max-width: 780px;
  position: relative;
  z-index: 1;
}

.hf-directory-page .hf-directory-text {
  color: #eeedeb;
  font-size: 14px;
  line-height: 21px;
  max-width: 820px;
  position: relative;
  z-index: 1;
}

.hf-directory-page .hf-directory-facts,
.hf-directory-page .hf-card-grid {
  display: grid;
  gap: 12px;
  margin: 16px 0;
}

.hf-directory-page .hf-directory-facts {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.hf-directory-page .hf-directory-fact,
.hf-directory-page .hf-card {
  background: #f2f0ea;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #bfb69c;
  color: #1e1e1d;
  padding: 12px 14px;
}

.hf-directory-page .hf-directory-fact span {
  color: #886d00;
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.hf-directory-page .hf-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.hf-directory-page .hf-card {
  align-items: stretch;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.36), rgba(191, 182, 156, 0.1)),
    #f2f0ea;
  display: grid;
  gap: 12px;
  grid-template-columns: 76px minmax(0, 1fr);
  min-height: 98px;
  position: relative;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.hf-directory-page .hf-card:hover {
  border-left-color: #c9a227;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
  transform: translateY(-2px);
}

.hf-directory-page .hf-card-image {
  align-items: center;
  background:
    radial-gradient(circle at 65% 20%, rgba(224, 186, 58, 0.22), rgba(224, 186, 58, 0) 42%),
    linear-gradient(135deg, #46463e 0%, #2f2d2b 100%);
  border: 1px solid rgba(30, 30, 29, 0.22);
  display: flex;
  height: 76px;
  justify-content: center;
  overflow: hidden;
  position: relative;
  width: 76px;
}

.hf-directory-page .hf-card-image:empty {
  display: none;
}

.hf-directory-page .hf-card-image:empty + .hf-card-body {
  grid-column: 1 / -1;
}

.hf-directory-page .hf-card-image p,
.hf-directory-page .hf-card-image a,
.hf-directory-page .hf-card-image .mw-file-description {
  display: block;
  height: 100%;
  line-height: 0;
  margin: 0;
  width: 100%;
}

.hf-directory-page .hf-card-image img {
  display: block;
  height: 100% !important;
  max-height: 74px;
  max-width: 74px;
  object-fit: contain;
  object-position: center;
  width: 100% !important;
}

.hf-directory-page .hf-card-body {
  min-width: 0;
}

.hf-directory-page .hf-card-title {
  border-bottom: 1px solid rgba(191, 182, 156, 0.8);
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  margin: 0 0 6px;
  padding-bottom: 5px;
}

.hf-directory-page .hf-card-title a {
  color: #886d00;
}

.hf-directory-page .hf-card-desc {
  color: #3a3935;
  font-size: 13px;
  line-height: 18px;
}

.hf-directory-page .hf-relpage-section {
  border-left-color: #886d00;
}

.hf-roleplay-page .hf-relpage-section {
  border-left-color: #1f5d8f;
}

.hf-linebattle-page .hf-relpage-section {
  border-left-color: #6f4c2f;
}

.hf-ui-page .hf-relpage-section {
  border-left-color: #3f6542;
}

.hf-faq-page .hf-relpage-section {
  border-left-color: #6f4c2f;
}

.hf-shooting-page .hf-relpage-section,
.hf-melee-page .hf-relpage-section {
  border-left-color: #6f2f2f;
}

.hf-defences-page .hf-relpage-section,
.hf-auxiliary-page .hf-relpage-section {
  border-left-color: #886d00;
}

.hf-horseback-page .hf-relpage-section {
  border-left-color: #5b3f2a;
}

.hf-cavalry-page .hf-relpage-section {
  border-left-color: #5b3f2a;
}

.hf-music-page .hf-relpage-section,
.hf-voice-page .hf-relpage-section {
  border-left-color: #1f5d8f;
}

.hf-crewmen-page .hf-relpage-section {
  border-left-color: #1f5d8f;
}

.hf-directory-page .hf-relpage-section-body > p:first-child,
.hf-directory-page .hf-relpage-section-body > ul:first-child,
.hf-directory-page .hf-relpage-section-body > ol:first-child {
  margin-top: 0;
}

.hf-directory-page .hf-relpage-section-body ul,
.hf-directory-page .hf-relpage-section-body ol {
  background: #f7f4ec;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #c9a227;
  margin: 12px 0;
  padding: 10px 12px 10px 30px;
}

.hf-directory-page .hf-relpage-section-body li {
  margin: 5px 0;
}

.hf-directory-page .hf-relpage-section-body h3 {
  background: linear-gradient(90deg, rgba(136, 109, 0, 0.12), rgba(201, 162, 39, 0.06));
  border-left: 4px solid #886d00;
  color: #1e1e1d;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  margin: 16px 0 8px;
  padding: 8px 10px;
}

.hf-shooting-page .hf-relpage-section-body h3 {
  background: linear-gradient(90deg, rgba(111, 47, 47, 0.14), rgba(201, 162, 39, 0.06));
  border-left-color: #6f2f2f;
}

.hf-auxiliary-page .hf-relpage-section-body h3 {
  background: linear-gradient(90deg, rgba(136, 109, 0, 0.14), rgba(201, 162, 39, 0.06));
  border-left-color: #886d00;
}

.hf-shooting-page .hf-directory-fact span,
.hf-shooting-page .hf-card-title a {
  color: #6f2f2f;
}

.hf-auxiliary-page .hf-directory-fact span,
.hf-auxiliary-page .hf-card-title a {
  color: #886d00;
}

.hf-shooting-page .hf-card:hover {
  border-left-color: #6f2f2f;
}

.hf-auxiliary-page .hf-card:hover {
  border-left-color: #886d00;
}

.hf-directory-page .wikitable {
  border: 1px solid #bfb69c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
  margin: 14px 0;
  width: 100%;
}

.hf-directory-page .wikitable th {
  background: #2f2d2b !important;
  color: #e0ba3a !important;
  font-weight: 700;
}

.hf-directory-page .wikitable td {
  background: #f7f4ec;
  border-color: #d5d0c8;
}

/* ===== Musician Tunes Page ===== */
.hf-music-page .hf-music-table-note {
  color: #3a3935;
  font-size: 13px;
  line-height: 19px;
}

.hf-music-page .hf-music-table-note {
  background: #f2f0ea;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #1f5d8f;
  margin: 12px 0;
  padding: 9px 11px;
}

.hf-music-page .hf-relpage-section-body h3 {
  background: linear-gradient(90deg, rgba(31, 93, 143, 0.14), rgba(201, 162, 39, 0.06));
  border-left-color: #1f5d8f;
}

.hf-music-page .hf-music-tune-table th,
.hf-music-page .hf-music-class-table th {
  white-space: nowrap;
}

.hf-music-page .hf-music-tune-table td:first-child {
  color: #1f5d8f;
  font-weight: 800;
  text-align: right;
  white-space: nowrap;
  width: 1%;
}

.hf-music-page .hf-music-tune-table td:nth-child(2) {
  color: #6d5700;
  font-weight: 700;
}

.hf-music-page .hf-music-tune-table td:nth-child(3),
.hf-music-page .hf-music-tune-table td:nth-child(5),
.hf-music-page .hf-music-class-table td:first-child {
  font-weight: 700;
}

.hf-music-page .hf-music-tune-table tr:hover td,
.hf-music-page .hf-music-class-table tr:hover td {
  background: #fff8dc;
}

/* ===== Factions Page ===== */
.hf-factions-page .hf-faction-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.hf-factions-page .hf-faction-grid-small {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.hf-factions-page .hf-faction-card {
  background: linear-gradient(180deg, #F2F0EA 0%, #EEEDEB 100%);
  border: 1px solid #d5d0c8;
  border-top: 4px solid #BFB69C;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
  color: #1E1E1D;
  display: flex;
  flex-direction: column;
  min-height: 230px;
  padding: 18px;
}

.hf-factions-page .hf-faction-card:hover {
  border-top-color: #C9A227;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.14);
}

.hf-factions-page .hf-faction-crest {
  align-items: center;
  background: #FFFFFF;
  border: 1px solid #BFB69C;
  display: flex;
  height: 144px;
  justify-content: center;
  margin-bottom: 14px;
}

.hf-factions-page .hf-faction-crest img {
  max-height: 120px;
  width: auto;
}

.hf-factions-page .hf-faction-name {
  border-bottom: 1px solid #BFB69C;
  color: #886D00;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
  margin-bottom: 10px;
  padding-bottom: 8px;
}

.hf-factions-page .hf-faction-note {
  color: #1E1E1D;
  font-size: 14px;
  line-height: 21px;
}

/* ===== Sidebar Current Page Highlight ===== */
body.skin-holdfast[class*="Beginner"] .hf-sidebar-list a[href*="Beginner"],
body.skin-holdfast[class*="User_Interface"] .hf-sidebar-list a[href*="User_Interface"],
body.skin-holdfast[class*="Factions"] .hf-sidebar-list a[href*="Factions"],
body.skin-holdfast[class*="Weapons"] .hf-sidebar-list a[href*="Weapons"],
body.skin-holdfast[class*="Game_Modes"] .hf-sidebar-list a[href*="Game_Modes"],
body.skin-holdfast[class*="Game_Types"] .hf-sidebar-list a[href*="Game_Types"],
body.skin-holdfast[class*="Maps"] .hf-sidebar-list a[href*="Maps"],
body.skin-holdfast[class*="Known_Issues"] .hf-sidebar-list a[href*="Known_Issues"],
body.skin-holdfast[class*="Frequently_Asked_Questions"] .hf-sidebar-list a[href*="Frequently_Asked_Questions"],
body.skin-holdfast[class*="FAQ"] .hf-sidebar-list a[href*="Frequently_Asked_Questions"],
body.skin-holdfast[class*="Shooting"] .hf-sidebar-list a[href*="Shooting"],
body.skin-holdfast[class*="Melee"] .hf-sidebar-list a[href*="Melee"],
body.skin-holdfast[class*="Artillery"] .hf-sidebar-list a[href*="Artillery"],
body.skin-holdfast[class*="Defences"] .hf-sidebar-list a[href*="Defences"],
body.skin-holdfast[class*="Horseback_Riding"] .hf-sidebar-list a[href*="Horseback_Riding"],
body.skin-holdfast[class*="Auxiliary"] .hf-sidebar-list a[href*="Auxiliary"],
body.skin-holdfast[class*="Orders"] .hf-sidebar-list a[href*="Orders"],
body.skin-holdfast[class*="Traits"] .hf-sidebar-list a[href*="Traits"],
body.skin-holdfast[class*="Naval_Combat"] .hf-sidebar-list a[href*="Naval_Combat"],
body.skin-holdfast[class*="Ships"] .hf-sidebar-list a[href*="Ships"],
body.skin-holdfast[class*="Musician_Tunes"] .hf-sidebar-list a[href*="Musician_Tunes"],
body.skin-holdfast[class*="Voice_Commands"] .hf-sidebar-list a[href*="Voice_Commands"],
body.skin-holdfast[class*="page-Command"] .hf-sidebar-list a[href*="Command"],
body.skin-holdfast[class*="Rank_and_File"] .hf-sidebar-list a[href*="Rank_and_File"],
body.skin-holdfast[class*="Skirmisher"] .hf-sidebar-list a[href*="Skirmisher"],
body.skin-holdfast[class*="Support"] .hf-sidebar-list a[href*="Support"],
body.skin-holdfast[class*="Cavalry"] .hf-sidebar-list a[href*="Cavalry"],
body.skin-holdfast[class*="Crewmen"] .hf-sidebar-list a[href*="Crewmen"],
body.skin-holdfast[class*="Linebattle"] .hf-sidebar-list a[href*="Linebattle"],
body.skin-holdfast[class*="Crews"] .hf-sidebar-list a[href*="Crews"],
body.skin-holdfast[class*="Organized_Events"] .hf-sidebar-list a[href*="Organized_Events"],
body.skin-holdfast[class*="Regiment_Schedule"] .hf-sidebar-list a[href*="Regiment_Schedule"],
body.skin-holdfast[class*="Regiment_Roster"] .hf-sidebar-list a[href*="Regiment_Roster"],
body.skin-holdfast[class*="SDK_user_guide"] .hf-sidebar-list a[href*="SDK_user_guide"],
body.skin-holdfast[class*="SDK_upgrade_guide"] .hf-sidebar-list a[href*="SDK_upgrade_guide"],
body.skin-holdfast[class*="Script_Modding_Guide"] .hf-sidebar-list a[href*="Script_Modding_Guide"],
body.skin-holdfast[class*="Map_Editing"] .hf-sidebar-list a[href*="Map_Editing"],
body.skin-holdfast[class*="Workshop_Discord"] .hf-sidebar-list a[href*="Workshop_Discord"],
body.skin-holdfast[class*="Mods_and_Consoles"] .hf-sidebar-list a[href*="Mods_and_Consoles"],
body.skin-holdfast[class*="Server_Hosting"] .hf-sidebar-list a[href*="Server_Hosting"],
body.skin-holdfast[class*="page-Server_Configuration"]:not([class*="Server_Configuration_Enums"]) .hf-sidebar-list a[href*="Server_Configuration"],
body.skin-holdfast[class*="Server_Config_Templates"] .hf-sidebar-list a[href*="Server_Config_Templates"],
body.skin-holdfast[class*="Spawnable_Props"] .hf-sidebar-list a[href*="Spawnable_Props"],
body.skin-holdfast[class*="Remote_Console_Commands"] .hf-sidebar-list a[href*="Remote_Console_Commands"],
body.skin-holdfast[class*="Server_Configuration_Enums"] .hf-sidebar-list a[href*="Server_Configuration_Enums"],
body.skin-holdfast[class*="Admin_Features"] .hf-sidebar-list a[href*="Admin_Features"] {
  background: rgba(201, 162, 39, 0.22) !important;
  border-left: 3px solid #C9A227;
  color: #FFFFFF !important;
  font-weight: 700 !important;
  padding-left: 6px;
  text-decoration: none;
}

/* ===== Linebattle Page ===== */
.hf-linebattle-page .hf-lb-hero {
  background: linear-gradient(135deg, #2F2D2B 0%, #46463E 68%, #886D00 100%);
  border: 1px solid #BFB69C;
  color: #FFFFFF;
  padding: 20px;
  margin-bottom: 18px;
}

.hf-linebattle-page .hf-lb-kicker {
  color: #E0BA3A;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.hf-linebattle-page .hf-lb-hero-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 8px;
}

.hf-linebattle-page .hf-lb-hero-text {
  color: #EEEDEB;
  font-size: 14px;
  line-height: 21px;
  max-width: 760px;
}

.hf-linebattle-page .hf-lb-facts,
.hf-linebattle-page .hf-lb-rule-grid,
.hf-linebattle-page .hf-lb-card-grid {
  display: grid;
  gap: 12px;
  margin: 16px 0;
}

.hf-linebattle-page .hf-lb-facts {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.hf-linebattle-page .hf-lb-rule-grid,
.hf-linebattle-page .hf-lb-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.hf-linebattle-page .hf-lb-fact,
.hf-linebattle-page .hf-lb-rule,
.hf-linebattle-page .hf-lb-role-card,
.hf-linebattle-page .hf-lb-phase {
  background: #F2F0EA;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #BFB69C;
  color: #1E1E1D;
  padding: 12px 14px;
}

.hf-linebattle-page .hf-lb-fact span {
  color: #886D00;
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.hf-linebattle-page .hf-lb-phase-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 14px;
}

.hf-linebattle-page .hf-lb-phase {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 12px;
  align-items: start;
}

.hf-linebattle-page .hf-lb-phase-num {
  align-items: center;
  background: #C9A227;
  color: #1E1E1D;
  display: flex;
  font-weight: 700;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.hf-linebattle-page .hf-lb-rule strong,
.hf-linebattle-page .hf-lb-role-card h3 {
  color: #886D00;
}

.hf-linebattle-page .hf-lb-role-card h3 {
  font-size: 16px;
  line-height: 22px;
  margin: 0 0 8px 0;
}

.hf-linebattle-page .hf-lb-note {
  background: #FFF8DC;
  border: 1px solid #C9A227;
  color: #1E1E1D;
  margin-top: 14px;
  padding: 12px 14px;
}

.hf-linebattle-page .hf-lb-terms th {
  background: #46463E;
  color: #FFFFFF;
}

.hf-linebattle-page .hf-lb-terms td:first-child {
  color: #886D00;
  font-weight: 700;
  width: 140px;
}

/* ===== Server Hosting: Admin, Ban & Mute Files ===== */
.hf-admin-files-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 16px 0;
}

.hf-admin-file-card {
  background: #F2F0EA;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #BFB69C;
  padding: 12px 14px;
}

.hf-admin-file-card-important {
  border-left-color: #C9A227;
}

.hf-admin-file-name {
  color: #886D00;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  margin-bottom: 4px;
}

.hf-admin-file-desc {
  color: #1E1E1D;
  font-size: 13px;
  line-height: 18px;
}

.hf-admin-file-note {
  background: #FFF8DC;
  border: 1px solid #C9A227;
  border-radius: 4px;
  color: #1E1E1D;
  margin-top: 16px;
  padding: 12px 14px;
}

/* ===== Known Issues & Solutions Page ===== */
body.skin-holdfast[class*="page-Known_Issues"] .hf-content {
  width: auto;
  height: auto;
  margin-top: 40px;
  padding: 40px 0 0 0;
  overflow: visible;
  display: flex;
  justify-content: center;
}

body.skin-holdfast[class*="page-Known_Issues"] .mw-body-content {
  width: 100%;
  margin: 0;
  display: flex;
  justify-content: center;
}

body.skin-holdfast[class*="page-Known_Issues"] .mw-parser-output {
  width: 100%;
  display: flex;
  justify-content: center;
}

body.skin-holdfast[class*="page-Known_Issues"] #toc,
body.skin-holdfast[class*="page-Known_Issues"] #firstHeading {
  display: none;
}

/* ===== Server Config Templates Page ===== */
/* Body selectors cover direct article/template views. The wrapper class below
   keeps the code colors working anywhere the template is transcluded. */
body.skin-holdfast[class*="Server_Config_Templates"] .hf-content {
  width: auto;
  height: auto;
  margin-top: 40px;
  padding: 40px 0 0 0;
  overflow: visible;
  display: flex;
  justify-content: center;
}

body.skin-holdfast[class*="Server_Config_Templates"] .mw-body-content,
body.skin-holdfast[class*="Server_Config_Templates"] .mw-parser-output {
  width: 100%;
  margin: 0;
  display: flex;
  justify-content: center;
}

body.skin-holdfast[class*="Server_Config_Templates"] #toc,
body.skin-holdfast[class*="Server_Config_Templates"] #firstHeading {
  display: none;
}

/* Collapsible template headings inside Server Config Templates */
.hf-server-config-templates-page .hf-issue-block {
  border: 1px solid #d5d0c8;
  background: #EEEDEB;
  margin: 0.8em 0;
  position: relative;
}

.hf-server-config-templates-page .hf-issue-heading {
  background: #F2F0EA !important;
  color: #886D00 !important;
  border-left: 4px solid #C9A227;
  border-bottom: 1px solid #BFB69C;
  padding: 10px 96px 10px 14px;
  font-weight: 700;
  line-height: 20px;
}

.hf-server-config-templates-page .hf-issue-heading a {
  color: #C9A227 !important;
}

.hf-server-config-templates-page .mw-collapsible-toggle {
  color: #C9A227 !important;
  float: none !important;
  position: absolute !important;
  top: 0;
  right: 14px;
  left: auto !important;
  min-height: 40px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  line-height: 20px;
  margin: 0 !important;
  z-index: 2;
}

.hf-server-config-templates-page .mw-collapsible-content {
  padding: 12px 14px;
}

/* Code blocks inside Server Config Templates */
.hf-server-config-templates-page .hf-relpage-section-body pre,
.hf-server-config-templates-page .hf-relpage-section-body .hf-code,
body.skin-holdfast[class*="Server_Config_Templates"] .hf-relpage-section-body pre,
body.skin-holdfast[class*="Server_Config_Templates"] .hf-relpage-section-body .hf-code {
  background: #1c1a18 !important;
  color: #e5e7eb !important;
  padding: .8em 1em;
  border-radius: .6em;
  overflow: auto;
  line-height: 1.45;
  font-size: .9em;
  border: 1px solid #3d3632;
  margin: 0.8em 0;
}

.hf-server-config-templates-page .hf-relpage-section-body code,
body.skin-holdfast[class*="Server_Config_Templates"] .hf-relpage-section-body code {
  background: #2d2926 !important;
  color: #e2c275 !important;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: .88em;
}

/* ===== Admin Features Page ===== */
.hf-admin-features-page .hf-admin-hero {
  background:
    radial-gradient(circle at top right, rgba(224, 186, 58, 0.2), rgba(224, 186, 58, 0) 34%),
    linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #8a3327 100%);
  border: 1px solid #bfb69c;
  border-left: 5px solid #c9a227;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  color: #ffffff;
  margin: 14px 0 16px;
  overflow: hidden;
  padding: 20px 22px;
  position: relative;
}

.hf-admin-features-page .hf-admin-kicker {
  color: #e0ba3a;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .11em;
  margin-bottom: 8px;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}

.hf-admin-features-page .hf-admin-title {
  font-size: 24px;
  font-weight: 800;
  line-height: 30px;
  margin-bottom: 8px;
  max-width: 860px;
  position: relative;
  z-index: 1;
}

.hf-admin-features-page .hf-admin-text {
  color: #eeedeb;
  font-size: 14px;
  line-height: 21px;
  max-width: 900px;
  position: relative;
  z-index: 1;
}

.hf-admin-features-page .hf-admin-facts {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin: 0 0 18px;
}

.hf-admin-features-page .hf-admin-fact {
  background: #f2f0ea;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #bfb69c;
  color: #1e1e1d;
  font-size: 13px;
  line-height: 19px;
  padding: 12px 14px;
}

.hf-admin-features-page .hf-admin-fact span {
  color: #886d00;
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.hf-admin-features-page .hf-relpage-section {
  border-left-color: #8a3327;
}

.hf-admin-features-page .hf-relpage-section-body > p:first-child,
.hf-admin-features-page .hf-relpage-section-body > ul:first-child,
.hf-admin-features-page .hf-relpage-section-body > ol:first-child {
  margin-top: 0;
}

.hf-admin-features-page .hf-relpage-section-body b,
.hf-admin-features-page .hf-relpage-section-body strong {
  color: #8a3327;
}

.hf-admin-features-page .hf-relpage-section-body pre {
  background: #1c1a18 !important;
  border: 1px solid #3d3632;
  border-left: 4px solid #c9a227;
  border-radius: .35em;
  color: #e5e7eb !important;
  font-size: .9em;
  line-height: 1.45;
  margin: 10px 0 14px;
  overflow: auto;
  padding: .85em 1em;
}

.hf-admin-features-page .hf-relpage-section-body code {
  background: #2d2926 !important;
  border-radius: 4px;
  color: #e2c275 !important;
  font-size: .88em;
  padding: 2px 6px;
}

.hf-admin-features-page .hf-admin-label {
  background: linear-gradient(90deg, rgba(138, 51, 39, 0.12), rgba(201, 162, 39, 0.08));
  border-left: 4px solid #8a3327;
  color: #1e1e1d;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .06em;
  margin: 16px 0 8px;
  padding: 8px 10px;
  text-transform: uppercase;
}

.hf-admin-features-page .hf-admin-note {
  background: #f7f4ec;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #c9a227;
  color: #1e1e1d;
  line-height: 20px;
  margin: 14px 0 10px;
  padding: 10px 12px;
}

.hf-admin-features-page .wikitable {
  border: 1px solid #bfb69c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
  margin: 14px 0;
  width: 100%;
}

.hf-admin-features-page .wikitable caption {
  background: #f2f0ea;
  border: 1px solid #bfb69c;
  border-bottom: 0;
  color: #886d00;
  font-weight: 800;
  padding: 8px 10px;
  text-align: left;
}

.hf-admin-features-page .wikitable th {
  background: #2f2d2b !important;
  color: #e0ba3a !important;
  font-weight: 800;
}

.hf-admin-features-page .wikitable td {
  background: #f7f4ec;
  border-color: #d5d0c8;
  vertical-align: top;
}

.hf-admin-features-page .hf-relpage-section-body ul,
.hf-admin-features-page .hf-relpage-section-body ol {
  background: #f7f4ec;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #c9a227;
  margin: 12px 0;
  padding: 10px 12px 10px 30px;
}

.hf-admin-features-page .hf-relpage-section-body li {
  margin: 5px 0;
}

/* ===== Remote Console Commands Page ===== */
.hf-remote-console-page .hf-rc-hero {
  background:
    radial-gradient(circle at top right, rgba(224, 186, 58, 0.2), rgba(224, 186, 58, 0) 34%),
    linear-gradient(135deg, #2f2d2b 0%, #46463e 68%, #1f5d8f 100%);
  border: 1px solid #bfb69c;
  border-left: 5px solid #c9a227;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  color: #ffffff;
  margin: 14px 0 16px;
  overflow: hidden;
  padding: 20px 22px;
  position: relative;
}

.hf-remote-console-page .hf-rc-kicker {
  color: #e0ba3a;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .11em;
  margin-bottom: 8px;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}

.hf-remote-console-page .hf-rc-title {
  font-size: 24px;
  font-weight: 800;
  line-height: 30px;
  margin-bottom: 8px;
  max-width: 860px;
  position: relative;
  z-index: 1;
}

.hf-remote-console-page .hf-rc-text {
  color: #eeedeb;
  font-size: 14px;
  line-height: 21px;
  max-width: 920px;
  position: relative;
  z-index: 1;
}

.hf-remote-console-page .hf-rc-facts {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  margin: 0 0 18px;
}

.hf-remote-console-page .hf-rc-fact {
  background: #f2f0ea;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #bfb69c;
  color: #1e1e1d;
  font-size: 13px;
  line-height: 19px;
  padding: 12px 14px;
}

.hf-remote-console-page .hf-rc-fact span {
  color: #886d00;
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.hf-remote-console-page .hf-relpage-section {
  border-left-color: #1f5d8f;
}

.hf-remote-console-page .hf-relpage-section-body > p:first-child,
.hf-remote-console-page .hf-relpage-section-body > ul:first-child,
.hf-remote-console-page .hf-relpage-section-body > ol:first-child {
  margin-top: 0;
}

.hf-remote-console-page .hf-relpage-section-body h3,
.hf-remote-console-page .hf-relpage-section-body h4 {
  background: linear-gradient(90deg, rgba(31, 93, 143, 0.12), rgba(201, 162, 39, 0.06));
  border-left: 4px solid #1f5d8f;
  color: #1e1e1d;
  font-size: 16px;
  font-weight: 800;
  line-height: 22px;
  margin: 18px 0 10px;
  padding: 8px 10px;
}

.hf-remote-console-page .hf-relpage-section-body h4 {
  border-left-color: #c9a227;
  font-size: 14px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.hf-remote-console-page .hf-relpage-section-body pre,
.hf-remote-console-page .hf-relpage-section-body .hf-code {
  background: #1c1a18 !important;
  border: 1px solid #3d3632;
  border-left: 4px solid #c9a227;
  border-radius: .35em;
  color: #e5e7eb !important;
  font-size: .9em;
  line-height: 1.45;
  margin: 10px 0 14px;
  overflow: auto;
  padding: .85em 1em;
}

.hf-remote-console-page .hf-relpage-section-body code {
  background: #2d2926 !important;
  border-radius: 4px;
  color: #e2c275 !important;
  font-size: .88em;
  padding: 2px 6px;
}

.hf-remote-console-page .hf-rc-label {
  background: linear-gradient(90deg, rgba(31, 93, 143, 0.12), rgba(201, 162, 39, 0.08));
  border-left: 4px solid #1f5d8f;
  color: #1e1e1d;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .06em;
  margin: 16px 0 8px;
  padding: 8px 10px;
  text-transform: uppercase;
}

.hf-remote-console-page .hf-rc-note {
  background: #f7f4ec;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #c9a227;
  color: #1e1e1d;
  font-weight: 700;
  line-height: 20px;
  margin: 14px 0 10px;
  padding: 10px 12px;
}

.hf-remote-console-page .wikitable {
  border: 1px solid #bfb69c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
  margin: 14px 0 18px;
  width: 100%;
}

.hf-remote-console-page .wikitable th {
  background: #2f2d2b !important;
  color: #e0ba3a !important;
  font-weight: 800;
  vertical-align: top;
}

.hf-remote-console-page .wikitable td {
  background: #f7f4ec;
  border-color: #d5d0c8;
  line-height: 1.45;
  vertical-align: top;
}

.hf-remote-console-page .wikitable tr:hover td {
  background: #f2f0ea;
}

.hf-remote-console-page .wikitable th.code,
.hf-remote-console-page .wikitable td:first-child {
  font-family: monospace;
}

.hf-remote-console-page .wikitable td:first-child {
  color: #6f5600;
  font-weight: 700;
}

.hf-remote-console-page .hf-relpage-section-body ul,
.hf-remote-console-page .hf-relpage-section-body ol {
  background: #f7f4ec;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #c9a227;
  margin: 12px 0;
  padding: 10px 12px 10px 30px;
}

.hf-remote-console-page .hf-relpage-section-body li {
  margin: 5px 0;
}

/* ===== Server Configuration Enums Page ===== */
.hf-server-configuration-enums-page .hf-enum-hero {
  background:
    radial-gradient(circle at top left, rgba(224, 186, 58, 0.18), transparent 34%),
    linear-gradient(135deg, rgba(47, 45, 43, 0.98), rgba(30, 30, 29, 0.95));
  border: 1px solid rgba(191, 182, 156, 0.55);
  border-left: 5px solid #c9a227;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22);
  color: #f4efe1;
  margin: 0 0 18px;
  padding: 18px 20px;
}

.hf-server-configuration-enums-page .hf-enum-kicker {
  color: #e0ba3a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.hf-server-configuration-enums-page .hf-enum-title {
  font-size: 22px;
  font-weight: 800;
  line-height: 28px;
  max-width: 880px;
}

.hf-server-configuration-enums-page .hf-enum-note {
  color: #d7cfba;
  font-size: 13px;
  line-height: 19px;
  margin-top: 8px;
  max-width: 900px;
}

.hf-server-configuration-enums-page .hf-enum-block {
  background: linear-gradient(180deg, rgba(242, 240, 234, 0.98), rgba(238, 237, 235, 0.96));
  border: 1px solid rgba(191, 182, 156, 0.72);
  border-left: 5px solid #c9a227;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.12);
  margin-bottom: 16px;
  overflow: hidden;
  position: relative;
}

.hf-server-configuration-enums-page .hf-enum-block .hf-issue-heading {
  background:
    linear-gradient(90deg, rgba(30, 30, 29, 0.96), rgba(47, 45, 43, 0.94)),
    linear-gradient(90deg, rgba(201, 162, 39, 0.3), rgba(201, 162, 39, 0));
  border-bottom: 1px solid rgba(191, 182, 156, 0.65);
  color: #f4efe1;
  font-size: 15px;
  font-weight: 800;
  line-height: 20px;
  margin: 0;
  padding: 10px 110px 10px 14px;
}

.hf-server-configuration-enums-page .mw-collapsible-toggle {
  color: #e0ba3a !important;
  float: none !important;
  font-size: 11px;
  font-weight: 800;
  line-height: 18px;
  margin: 0 !important;
  position: absolute !important;
  right: 16px;
  text-transform: uppercase;
  top: 11px;
  z-index: 2;
}

.hf-server-configuration-enums-page .mw-collapsible-toggle a {
  color: #e0ba3a !important;
}

.hf-server-configuration-enums-page .hf-enum-block .mw-collapsible-content {
  color: #1e1e1d;
  font-size: 13px;
  line-height: 18px;
  padding: 12px 14px 14px;
}

.hf-server-configuration-enums-page .hf-enum-block .mw-collapsible-content > p:first-child {
  background: rgba(201, 162, 39, 0.09);
  border: 1px solid rgba(191, 182, 156, 0.55);
  border-left: 4px solid #c9a227;
  color: #3a352f;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.45;
  margin: 0 0 12px;
  padding: 10px 12px;
}

.hf-server-configuration-enums-page .wikitable {
  background: transparent;
  border: 0;
  border-collapse: separate;
  border-spacing: 0 6px;
  margin: 12px 0 18px;
  width: 100%;
}

.hf-server-configuration-enums-page .hf-enum-table-label,
.hf-server-configuration-enums-page .wikitable caption {
  background: linear-gradient(90deg, rgba(136, 109, 0, 0.16), rgba(201, 162, 39, 0.04));
  border: 1px solid rgba(191, 182, 156, 0.65);
  border-left: 4px solid #886d00;
  color: #1e1e1d;
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .03em;
  margin: 12px 0 6px;
  padding: 7px 9px;
  text-align: left;
}

.hf-server-configuration-enums-page .hf-enum-table-label + .wikitable {
  margin-top: 0;
}

.hf-server-configuration-enums-page .wikitable th {
  background: #2f2d2b;
  border: 0;
  color: #e0ba3a;
  font-size: 11px;
  letter-spacing: .04em;
  padding: 7px 9px;
  text-align: left;
  text-transform: uppercase;
}

.hf-server-configuration-enums-page .wikitable td {
  background: #f8f5ec;
  border-bottom: 1px solid rgba(191, 182, 156, 0.72);
  border-top: 1px solid rgba(191, 182, 156, 0.72);
  color: #1e1e1d;
  font-size: 12px;
  line-height: 17px;
  padding: 8px 10px;
  vertical-align: top;
}

.hf-server-configuration-enums-page .wikitable tr td:first-child {
  border-left: 3px solid rgba(201, 162, 39, 0.7);
  color: #886d00;
  font-weight: 800;
  white-space: nowrap;
}

.hf-server-configuration-enums-page .wikitable td:nth-child(2),
.hf-server-configuration-enums-page .wikitable td:nth-child(3) {
  color: #886d00;
}

.hf-server-configuration-enums-page #weapon .wikitable td:last-child,
.hf-server-configuration-enums-page #ship-name .wikitable td:nth-child(2),
.hf-server-configuration-enums-page #carryable-object .wikitable td:nth-child(2),
.hf-server-configuration-enums-page #buff-type .wikitable td:nth-child(2),
.hf-server-configuration-enums-page #high-command-order .wikitable td:nth-child(2),
.hf-server-configuration-enums-page #trait .wikitable td:nth-child(2),
.hf-server-configuration-enums-page #buff-property-type .wikitable td:nth-child(2) {
  color: #6d5700;
  font-family: ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  font-weight: 700;
}

.hf-server-configuration-enums-page #weapon .wikitable td:last-child {
  border-left: 3px solid rgba(201, 162, 39, 0.7);
}

.hf-server-configuration-enums-page .wikitable tr td:last-child {
  border-right: 1px solid rgba(191, 182, 156, 0.72);
}

.hf-server-configuration-enums-page .wikitable tr:hover td {
  background: #fff8dc;
}

.hf-server-configuration-enums-page code {
  background: #2d2926 !important;
  border: 1px solid rgba(224, 186, 58, 0.36);
  border-radius: 4px;
  color: #e2c275 !important;
  display: inline-block;
  font-size: 11px;
  line-height: 15px;
  margin: 1px 0;
  padding: 2px 6px;
}

.hf-server-configuration-enums-page #gamemodes,
.hf-server-configuration-enums-page #map-names,
.hf-server-configuration-enums-page #faction-winner,
.hf-server-configuration-enums-page #class,
.hf-server-configuration-enums-page #weapon,
.hf-server-configuration-enums-page #weapon-classes,
.hf-server-configuration-enums-page #faction,
.hf-server-configuration-enums-page #attacking-defending {
  border-left-color: #c9a227;
}

.hf-server-configuration-enums-page #voice-phrases,
.hf-server-configuration-enums-page #player-actions,
.hf-server-configuration-enums-page #instruments,
.hf-server-configuration-enums-page #instrument-songs {
  border-left-color: #4b7f9f;
}

.hf-server-configuration-enums-page #ship-type,
.hf-server-configuration-enums-page #ship-renderer-color,
.hf-server-configuration-enums-page #ship-name,
.hf-server-configuration-enums-page #emplacement,
.hf-server-configuration-enums-page #sapper-build-mode,
.hf-server-configuration-enums-page #nature-presets,
.hf-server-configuration-enums-page #explosion-type,
.hf-server-configuration-enums-page #carryable-object {
  border-left-color: #6a8f3a;
}

.hf-server-configuration-enums-page #buff-type,
.hf-server-configuration-enums-page #high-command-order,
.hf-server-configuration-enums-page #trait,
.hf-server-configuration-enums-page #buff-property-type {
  border-left-color: #8f4b9f;
}

.hf-server-configuration-enums-page #festive-season {
  border-left-color: #8f2f1f;
}

/* ===== Class Pages ===== */
.hf-class-info {
  background:
    linear-gradient(135deg, rgba(47, 45, 43, 0.96) 0%, rgba(70, 70, 62, 0.96) 68%, rgba(136, 109, 0, 0.92) 100%);
  border: 1px solid #bfb69c;
  border-left: 5px solid #c9a227;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
  color: #ffffff;
  margin: 14px 0 18px;
  overflow: hidden;
  padding: 14px;
  position: relative;
}

.hf-class-info:after {
  background: radial-gradient(circle at center, rgba(224, 186, 58, 0.20), rgba(224, 186, 58, 0));
  content: "";
  height: 160px;
  pointer-events: none;
  position: absolute;
  right: -65px;
  top: -70px;
  width: 160px;
}

.hf-class-info-header,
.hf-class-info-badges,
.hf-class-info-stats,
.hf-class-info-equip {
  position: relative;
  z-index: 1;
}

.hf-class-info-header {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 12px;
}

.hf-class-info-header-label,
.hf-class-info-equip-label,
.hf-class-info-stat-label {
  color: #e0ba3a;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.hf-class-info-faction,
.hf-class-info-badge,
.hf-class-info-equip-item {
  background: rgba(242, 240, 234, 0.10);
  border: 1px solid rgba(191, 182, 156, 0.45);
  color: #f4efe1;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 700;
  line-height: 17px;
  margin: 0 5px 6px 0;
  padding: 4px 8px;
}

.hf-class-info-faction img {
  height: 18px;
  object-fit: contain;
  width: 18px;
}

.hf-class-info-badge.hf-badge-ability {
  background: rgba(201, 162, 39, 0.18);
  border-color: rgba(224, 186, 58, 0.6);
  color: #fff3c4;
}

.hf-class-info-stats {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  margin: 10px 0;
}

.hf-class-info-stat {
  background: rgba(30, 30, 29, 0.55);
  border: 1px solid rgba(191, 182, 156, 0.35);
  padding: 8px 10px;
}

.hf-class-info-stat-value {
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  line-height: 23px;
}

.hf-class-info-stat-bonus {
  color: #89d185;
}

.hf-class-info + .hf-card-grid,
.hf-class-info ~ .hf-card-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
  margin: 18px 0 6px;
}

.hf-class-info + .hf-card-grid .hf-uniform-card,
.hf-class-info ~ .hf-card-grid .hf-uniform-card {
  background: linear-gradient(180deg, #2f2d2b 0%, #1e1e1d 100%);
  border: 1px solid #4b4638;
  border-top: 3px solid #bfb69c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.16);
  display: flex;
  flex-direction: column;
  margin: 0;
  max-width: 280px;
  min-height: 258px;
  min-width: 0;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
  width: 100%;
}

.hf-class-info + .hf-card-grid .hf-uniform-card:hover,
.hf-class-info ~ .hf-card-grid .hf-uniform-card:hover {
  border-top-color: #e0ba3a;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.24);
  transform: translateY(-2px);
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image {
  background:
    linear-gradient(135deg, rgba(191, 182, 156, 0.16), rgba(30, 30, 29, 0.08)),
    #171716;
  border-bottom: 1px solid #4b4638;
  height: 190px;
  position: relative;
}

.hf-uniform-card-era {
  background: rgba(23, 23, 22, 0.88);
  border: 1px solid rgba(191, 182, 156, 0.45);
  border-top: none;
  border-left: none;
  border-radius: 0 0 6px 0;
  color: #e0ba3a;
  font-size: 10px;
  font-weight: 700;
  left: 0;
  letter-spacing: .06em;
  line-height: 1;
  padding: 5px 8px;
  pointer-events: none;
  position: absolute;
  text-transform: uppercase;
  top: 0;
  z-index: 2;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image p,
.hf-class-info + .hf-card-grid .hf-uniform-card-image a,
.hf-class-info + .hf-card-grid .hf-uniform-card-image span,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image p,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image a,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image span {
  line-height: 1.25 !important;
  white-space: normal !important;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image p,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image p {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 100%;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image a.new,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image a.new {
  align-items: center;
  box-sizing: border-box;
  color: #e0ba3a !important;
  display: flex !important;
  font-size: 11px;
  font-weight: 700;
  height: 100%;
  justify-content: center;
  line-height: 1.25 !important;
  min-width: 0;
  overflow-wrap: anywhere !important;
  padding: 12px;
  text-align: center;
  text-decoration: none;
  white-space: normal !important;
  width: 100%;
  word-break: break-word;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image a.new:hover,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image a.new:hover {
  background: rgba(224, 186, 58, 0.08);
  color: #fff3c4 !important;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image img,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image img {
  object-fit: contain;
  padding: 8px;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-label,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-label {
  color: #f4efe1;
  font-size: 13px;
  font-weight: 700;
  line-height: 17px;
  overflow-wrap: break-word;
  padding: 10px 10px 4px;
  white-space: normal;
  word-break: break-word;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-requirement,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-requirement {
  color: #d9c78c;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 14px;
  overflow-wrap: break-word;
  padding: 0 10px 10px;
  white-space: normal;
  word-break: break-word;
}

/* ===== Artillery Page ===== */
.hf-artillery-page .hf-relpage-section {
  border-left-color: #8f2f1f;
}

.hf-artillery-page .hf-relpage-section-body > p:first-child,
.hf-artillery-page .hf-relpage-section-body > ul:first-child {
  margin-top: 0;
}

.hf-artillery-page .hf-relpage-section-body b,
.hf-artillery-page .hf-relpage-section-body strong {
  color: #8f2f1f;
}

.hf-artillery-page .hf-relpage-section-body > p:has(b),
.hf-artillery-page .hf-relpage-section-body > p:has(strong) {
  background: linear-gradient(90deg, rgba(143, 47, 31, 0.12), rgba(201, 162, 39, 0.06));
  border-left: 4px solid #8f2f1f;
  color: #1e1e1d;
  font-size: 15px;
  font-weight: 700;
  margin: 14px 0 8px;
  padding: 8px 10px;
}

.hf-artillery-page .hf-relpage-section-body ul {
  background: #f7f4ec;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #c9a227;
  margin: 12px 0;
  padding: 10px 12px 10px 28px;
}

.hf-artillery-page .hf-relpage-section-body li {
  margin: 5px 0;
}

.hf-artillery-page .wikitable {
  border: 1px solid #bfb69c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
  margin: 14px 0;
  width: 100%;
}

.hf-artillery-page .wikitable th {
  background: #2f2d2b !important;
  color: #e0ba3a !important;
  font-weight: 700;
}

.hf-artillery-page .wikitable td {
  background: #f7f4ec;
  border-color: #d5d0c8;
}

.hf-artillery-page .hf-class-info {
  background:
    linear-gradient(135deg, rgba(47, 45, 43, 0.98) 0%, rgba(70, 70, 62, 0.96) 58%, rgba(143, 47, 31, 0.94) 100%);
  border-left-color: #8f2f1f;
}

.hf-artillery-page .hf-class-info:after {
  background: radial-gradient(circle at center, rgba(201, 162, 39, 0.24), rgba(143, 47, 31, 0));
}

.hf-artillery-page .hf-class-info-badge.hf-badge-ability {
  background: rgba(143, 47, 31, 0.26);
  border-color: rgba(224, 186, 58, 0.62);
}

.hf-artillery-page .hf-card-grid .hf-uniform-card {
  border-top-color: #8f2f1f;
}

.hf-artillery-page .hf-card-grid .hf-uniform-card:hover {
  border-top-color: #e0ba3a;
}

/* ===== Naval Combat Page ===== */
.hf-naval-page .hf-relpage-section {
  border-left-color: #1f5d8f;
}

.hf-naval-page .hf-relpage-section-body > p:first-child,
.hf-naval-page .hf-relpage-section-body > ul:first-child,
.hf-naval-page .hf-relpage-section-body > ol:first-child {
  margin-top: 0;
}

.hf-naval-page .hf-relpage-section-body b,
.hf-naval-page .hf-relpage-section-body strong {
  color: #1f5d8f;
}

.hf-naval-page .hf-relpage-section-body > p:has(b),
.hf-naval-page .hf-relpage-section-body > p:has(strong) {
  background: linear-gradient(90deg, rgba(31, 93, 143, 0.12), rgba(201, 162, 39, 0.06));
  border-left: 4px solid #1f5d8f;
  color: #1e1e1d;
  font-size: 15px;
  font-weight: 700;
  margin: 14px 0 8px;
  padding: 8px 10px;
}

.hf-naval-page .hf-relpage-section-body ul,
.hf-naval-page .hf-relpage-section-body ol {
  background: #f7f4ec;
  border: 1px solid #d5d0c8;
  border-left: 4px solid #c9a227;
  margin: 12px 0;
  padding: 10px 12px 10px 30px;
}

.hf-naval-page .hf-relpage-section-body li {
  margin: 5px 0;
}

.hf-naval-page .wikitable {
  border: 1px solid #bfb69c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
  margin: 14px 0;
  width: 100%;
}

.hf-naval-page .wikitable th {
  background: #2f2d2b !important;
  color: #e0ba3a !important;
  font-weight: 700;
}

.hf-naval-page .wikitable td {
  background: #f7f4ec;
  border-color: #d5d0c8;
}

.hf-naval-page .wikitable tr:hover td {
  background: #fff8dc;
}

.hf-naval-page .hf-ship-section .hf-relpage-section-body {
  min-height: 150px;
}

.hf-naval-page .hf-ship-image-card {
  align-items: center;
  background:
    radial-gradient(circle at center, rgba(31, 93, 143, 0.38), rgba(30, 30, 29, 0.96) 64%),
    #1e1e1d;
  border: 1px solid #4b4638;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.22);
  box-sizing: border-box;
  display: flex;
  float: right;
  height: 118px;
  justify-content: center;
  margin: -42px 0 12px 18px;
  overflow: hidden;
  padding: 12px;
  width: 170px;
}

.hf-naval-page .hf-ship-image-card a,
.hf-naval-page .hf-ship-image-card .mw-file-description {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  width: 100%;
}

.hf-naval-page .hf-ship-image-card img,
.hf-naval-page .hf-ship-image-card img.mw-file-element {
  height: 94px !important;
  max-height: 94px !important;
  max-width: 145px !important;
  object-fit: contain;
  width: auto !important;
}

/* ===== Weapons Page ===== */
.hf-weapons-page .hf-weapons-hero {
  background: linear-gradient(135deg, #1e1e1d 0%, #2f2d2b 58%, #886d00 100%);
  border: 1px solid #bfb69c;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  color: #ffffff;
  margin: 14px 0 20px;
  overflow: hidden;
  padding: 22px;
  position: relative;
}

.hf-weapons-page .hf-weapons-hero:after {
  background: radial-gradient(circle at center, rgba(224, 186, 58, 0.22), rgba(224, 186, 58, 0));
  content: "";
  height: 180px;
  position: absolute;
  right: -70px;
  top: -70px;
  width: 180px;
}

.hf-weapons-page .hf-weapons-kicker {
  color: #e0ba3a;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  margin-bottom: 8px;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}

.hf-weapons-page .hf-weapons-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 8px;
  max-width: 760px;
  position: relative;
  z-index: 1;
}

.hf-weapons-page .hf-weapons-text {
  color: #eeedeb;
  font-size: 14px;
  line-height: 21px;
  max-width: 820px;
  position: relative;
  z-index: 1;
}

.hf-weapons-page .hf-weapons-text code {
  background: rgba(30, 30, 29, 0.72);
  color: #e0ba3a;
  padding: 2px 6px;
}

.hf-weapons-page .hf-card-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  margin: 18px 0 6px;
}

.hf-weapons-page .hf-card-grid .hf-uniform-card {
  background: linear-gradient(180deg, #2f2d2b 0%, #1e1e1d 100%);
  border: 1px solid #4b4638;
  border-top: 3px solid #bfb69c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.16);
  display: flex;
  flex-direction: column;
  margin: 0;
  min-height: 246px;
  overflow: hidden;
  position: relative;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
  width: auto;
}

.hf-weapons-page .hf-card-grid .hf-uniform-card:hover {
  border-top-color: #e0ba3a;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.24);
  transform: translateY(-2px);
}

.hf-weapons-page .hf-uniform-card-image {
  background:
    linear-gradient(135deg, rgba(191, 182, 156, 0.16), rgba(30, 30, 29, 0.08)),
    #171716;
  border-bottom: 1px solid #4b4638;
  height: 136px;
}

.hf-weapons-page .hf-uniform-card-image:empty:before {
  color: #bfb69c;
  content: "Image pending";
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 136px;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}

.hf-weapons-page .hf-uniform-card-image p {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  line-height: 1.25 !important;
  margin: 0;
  padding: 0;
  width: 100%;
}

.hf-weapons-page .hf-uniform-card-image a,
.hf-weapons-page .hf-uniform-card-image span {
  line-height: 1.25 !important;
  white-space: normal !important;
}

.hf-weapons-page .hf-uniform-card-image a.new {
  align-items: center;
  box-sizing: border-box;
  color: #e0ba3a !important;
  display: flex !important;
  font-size: 11px;
  font-weight: 700;
  flex-wrap: wrap;
  height: 100%;
  justify-content: center;
  letter-spacing: .02em;
  line-height: 1.25 !important;
  min-width: 0;
  overflow-wrap: anywhere !important;
  padding: 12px;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  word-break: break-word;
  width: 100%;
}

.hf-weapons-page .hf-uniform-card-image a.new:hover {
  background: rgba(224, 186, 58, 0.08);
  color: #fff3c4 !important;
}

.hf-weapons-page .hf-uniform-card-image img {
  filter: saturate(1.05) contrast(1.02);
  object-fit: contain;
  padding: 8px;
}

.hf-weapons-page .hf-uniform-card-label {
  align-content: start;
  display: grid;
  flex: 1;
  gap: 8px;
  padding: 10px 10px 4px;
  text-align: left;
}

.hf-weapons-page .hf-uniform-card-requirement {
  background: rgba(191, 182, 156, 0.14);
  border: 1px solid #4b4638;
  color: #d7cfba;
  font-size: 11px;
  font-weight: 700;
  line-height: 15px;
  margin: 0 10px 10px;
  padding: 3px 6px;
  width: fit-content;
}

.hf-weapons-page .hf-weapon-label {
  color: #f4efe1;
  display: block;
  font-size: 13px;
  font-weight: 700;
  line-height: 17px;
}

.hf-weapons-page .hf-weapon-added,
.hf-weapons-page .hf-weapon-dlc {
  border: 1px solid #4b4638;
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  line-height: 15px;
  padding: 3px 6px;
  width: fit-content;
}

.hf-weapons-page .hf-weapon-added {
  background: rgba(201, 162, 39, 0.18);
  color: #e0ba3a;
}

.hf-weapons-page .hf-weapon-dlc {
  background: rgba(191, 182, 156, 0.14);
  color: #d7cfba;
}

.hf-weapons-page .hf-weapon-enum {
  background: #171716;
  border: 1px solid #4b4638;
  color: #e0ba3a;
  display: none;
  font-size: 10px;
  line-height: 14px;
  overflow-wrap: anywhere;
  padding: 5px 6px;
  white-space: normal;
}

/* ===== Orders / Traits & Abilities Pages ===== */
.hf-orders-page .hf-relpage-section,
.hf-traits-abilities-page .hf-relpage-section {
  border-left-color: #c9a227;
}

.hf-orders-page .hf-relpage-section-body > p:first-child,
.hf-traits-abilities-page .hf-relpage-section-body > p:first-child {
  background:
    linear-gradient(135deg, rgba(47, 45, 43, 0.96), rgba(70, 70, 62, 0.92)),
    linear-gradient(90deg, rgba(224, 186, 58, 0.14), rgba(224, 186, 58, 0));
  border: 1px solid rgba(191, 182, 156, 0.55);
  border-left: 4px solid #c9a227;
  color: #f4efe1;
  line-height: 1.6;
  margin-top: 0;
  padding: 14px 16px;
}

.hf-orders-page .wikitable,
.hf-traits-abilities-page .wikitable {
  background: transparent;
  border: 0;
  border-collapse: separate;
  border-spacing: 0 10px;
  margin: 14px 0 22px;
  width: 100%;
}

.hf-orders-page .wikitable th,
.hf-traits-abilities-page .wikitable th {
  background: linear-gradient(135deg, #2f2d2b 0%, #46463e 100%) !important;
  border: 0 !important;
  color: #e0ba3a !important;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  padding: 11px 14px;
  text-transform: uppercase;
}

.hf-orders-page .wikitable th:first-child,
.hf-traits-abilities-page .wikitable th:first-child {
  border-radius: 8px 0 0 8px;
}

.hf-orders-page .wikitable th:last-child,
.hf-traits-abilities-page .wikitable th:last-child {
  border-radius: 0 8px 8px 0;
}

.hf-orders-page .wikitable td,
.hf-traits-abilities-page .wikitable td {
  background: linear-gradient(180deg, #fbf8ef 0%, #f0eadc 100%);
  border-bottom: 1px solid #d5d0c8 !important;
  border-top: 1px solid #d5d0c8 !important;
  color: #2f2d2b;
  line-height: 1.55;
  padding: 13px 14px;
  vertical-align: middle;
}

.hf-orders-page .wikitable td:first-child,
.hf-traits-abilities-page .wikitable td:first-child {
  background:
    radial-gradient(circle at center, rgba(224, 186, 58, 0.22), rgba(224, 186, 58, 0) 64%),
    linear-gradient(180deg, #2f2d2b 0%, #1e1e1d 100%);
  border-left: 1px solid #d5d0c8 !important;
  border-radius: 10px 0 0 10px;
  height: 86px;
  min-width: 86px;
  overflow: hidden;
  position: relative;
  text-align: center;
  width: 86px;
}

.hf-orders-page .wikitable td:last-child,
.hf-traits-abilities-page .wikitable td:last-child {
  border-radius: 0 10px 10px 0;
  border-right: 1px solid #d5d0c8 !important;
}

.hf-orders-page .wikitable tr:hover td,
.hf-traits-abilities-page .wikitable tr:hover td {
  background: linear-gradient(180deg, #fffaf0 0%, #f6edda 100%);
  box-shadow: 0 7px 18px rgba(47, 45, 43, 0.12);
}

.hf-orders-page .wikitable tr:hover td:first-child,
.hf-traits-abilities-page .wikitable tr:hover td:first-child {
  background:
    radial-gradient(circle at center, rgba(224, 186, 58, 0.30), rgba(224, 186, 58, 0) 66%),
    linear-gradient(180deg, #3b3832 0%, #1e1e1d 100%);
}

.hf-orders-page .wikitable img,
.hf-traits-abilities-page .wikitable img {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  height: 84px !important;
  left: 50%;
  object-fit: contain;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 84px !important;
  z-index: 1;
}

.hf-orders-page .wikitable td:first-child img:first-of-type,
.hf-traits-abilities-page .wikitable td:first-child img:first-of-type {
  height: 74px !important;
  opacity: 0.96;
  width: 74px !important;
  z-index: 0;
}

.hf-orders-page .wikitable td:first-child img:last-of-type,
.hf-traits-abilities-page .wikitable td:first-child img:last-of-type {
  height: 84px !important;
  width: 84px !important;
  z-index: 1;
}

.hf-orders-page .wikitable td:first-child a,
.hf-traits-abilities-page .wikitable td:first-child a {
  display: inline;
  height: auto;
  position: static;
  width: auto;
}

.hf-orders-page .wikitable td:first-child a.new,
.hf-traits-abilities-page .wikitable td:first-child a.new {
  display: inline-block;
  font-size: 10px;
  line-height: 1.1;
  overflow-wrap: anywhere;
  position: relative;
  z-index: 2;
}

.hf-orders-page .wikitable b,
.hf-orders-page .wikitable strong,
.hf-traits-abilities-page .wikitable b,
.hf-traits-abilities-page .wikitable strong {
  color: #8f6f00;
  font-weight: 800;
}

.hf-orders-page .wikitable td:nth-child(2),
.hf-traits-abilities-page .wikitable td:nth-child(2) {
  color: #1e1e1d;
  font-size: 15px;
  font-weight: 800;
  min-width: 170px;
}

.hf-orders-page .wikitable td:last-child,
.hf-traits-abilities-page .wikitable td:last-child {
  font-size: 13px;
}

.hf-orders-page #captain-orders .wikitable td:first-child,
.hf-orders-page #midshipman-orders .wikitable td:first-child {
  width: 96px;
}

/* ===== Shared Image Card Redesign ===== */
.hf-beginners-page .hf-card-grid,
.hf-mechanics-page .hf-card-grid,
.hf-directory-page .hf-card-grid {
  gap: 16px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.hf-beginners-page .hf-card,
.hf-mechanics-page .hf-card,
.hf-directory-page .hf-card {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(191, 182, 156, 0.1)),
    #f2f0ea;
  border: 1px solid #c9c1b2;
  border-left: 4px solid #bfb69c;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  color: #1e1e1d;
  display: flex;
  flex-direction: column;
  min-height: 260px;
  overflow: hidden;
  padding: 0;
  position: relative;
}

.hf-beginners-page .hf-card:hover,
.hf-mechanics-page .hf-card:hover,
.hf-directory-page .hf-card:hover {
  border-left-color: #c9a227;
  box-shadow: 0 7px 18px rgba(0, 0, 0, 0.16);
  transform: translateY(-2px);
}

.hf-beginners-page .hf-card-image,
.hf-mechanics-page .hf-card-image,
.hf-directory-page .hf-card-image {
  align-items: center;
  background:
    radial-gradient(circle at 72% 18%, rgba(224, 186, 58, 0.25), rgba(224, 186, 58, 0) 42%),
    linear-gradient(135deg, #46463e 0%, #2f2d2b 100%);
  border: 1px solid rgba(30, 30, 29, 0.35);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
  display: flex;
  height: 160px;
  justify-content: center;
  margin: 10px 10px 0;
  overflow: hidden;
  position: relative;
  width: auto;
}

.hf-beginners-page .hf-card-image:empty,
.hf-mechanics-page .hf-card-image:empty,
.hf-directory-page .hf-card-image:empty {
  display: none;
}

.hf-beginners-page .hf-card-image:empty + .hf-card-body,
.hf-mechanics-page .hf-card-image:empty + .hf-card-body,
.hf-directory-page .hf-card-image:empty + .hf-card-body {
  padding-top: 14px;
}

.hf-beginners-page .hf-card-image p,
.hf-beginners-page .hf-card-image a,
.hf-beginners-page .hf-card-image .mw-file-description,
.hf-mechanics-page .hf-card-image p,
.hf-mechanics-page .hf-card-image a,
.hf-mechanics-page .hf-card-image .mw-file-description,
.hf-directory-page .hf-card-image p,
.hf-directory-page .hf-card-image a,
.hf-directory-page .hf-card-image .mw-file-description {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  line-height: 0;
  margin: 0;
  width: 100%;
}

.hf-beginners-page .hf-card-image img,
.hf-mechanics-page .hf-card-image img,
.hf-directory-page .hf-card-image img {
  display: block;
  height: 100% !important;
  max-height: none;
  max-width: none;
  object-fit: contain;
  object-position: center;
  padding: 8px;
  width: 100% !important;
}

.hf-beginners-page .hf-card-body,
.hf-mechanics-page .hf-card-body,
.hf-directory-page .hf-card-body {
  padding: 13px 14px 15px;
}

.hf-beginners-page .hf-card-title,
.hf-mechanics-page .hf-card-title,
.hf-directory-page .hf-card-title {
  border-bottom: 1px solid rgba(191, 182, 156, 0.9);
  font-size: 17px;
  font-weight: 800;
  line-height: 22px;
  margin: 0 0 8px;
  padding-bottom: 7px;
}

.hf-beginners-page .hf-card-desc,
.hf-mechanics-page .hf-card-desc,
.hf-directory-page .hf-card-desc {
  color: #3a3935;
  font-size: 13px;
  line-height: 19px;
}

.hf-class-info + .hf-card-grid,
.hf-class-info ~ .hf-card-grid {
  gap: 16px;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

.hf-class-info + .hf-card-grid .hf-uniform-card,
.hf-class-info ~ .hf-card-grid .hf-uniform-card {
  background:
    linear-gradient(180deg, #34322f 0%, #1e1e1d 100%);
  border: 1px solid #5b5444;
  border-top: 4px solid #bfb69c;
  box-shadow: 0 5px 16px rgba(0, 0, 0, 0.2);
  min-height: 316px;
  overflow: hidden;
}

.hf-class-info + .hf-card-grid .hf-uniform-card:hover,
.hf-class-info ~ .hf-card-grid .hf-uniform-card:hover {
  border-top-color: #e0ba3a;
  box-shadow: 0 9px 22px rgba(0, 0, 0, 0.28);
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image {
  background:
    radial-gradient(circle at 70% 18%, rgba(224, 186, 58, 0.2), rgba(224, 186, 58, 0) 42%),
    linear-gradient(135deg, #46463e 0%, #171716 100%);
  border: 1px solid rgba(191, 182, 156, 0.22);
  border-bottom-color: #5b5444;
  height: 238px;
  margin: 0;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-figure img,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-figure img {
  height: 100% !important;
  object-fit: contain;
  padding: 10px;
  width: 100% !important;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-caption,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-caption {
  align-items: flex-start;
  display: flex;
  gap: 9px;
  padding: 12px 12px;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-crest,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-crest {
  flex: 0 0 52px;
  line-height: 0;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-crest img,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-crest img {
  display: block;
  height: auto !important;
  max-height: 72px;
  object-fit: contain;
  width: 52px !important;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-text,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-text {
  min-width: 0;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-label,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-label {
  color: #fff4d6;
  font-size: 14px;
  line-height: 18px;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-requirement,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-requirement {
  margin-top: 4px;
  padding: 0;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-bg,
.hf-class-info + .hf-card-grid .hf-uniform-card-figure,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-bg,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-figure {
  align-items: center;
  display: flex;
  inset: 0;
  justify-content: center;
  position: absolute;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image:has(.hf-uniform-card-bg),
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image:has(.hf-uniform-card-bg) {
  background: #171716;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image:has(.hf-uniform-card-bg)::before,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image:has(.hf-uniform-card-bg)::before {
  background:
    linear-gradient(90deg, rgba(255, 238, 184, 0.14) 0%, rgba(201, 162, 39, 0.07) 30%, rgba(23, 23, 22, 0) 62%);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 0;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-bg,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-bg {
  filter: brightness(2.05) saturate(1.18) contrast(1.02);
  opacity: 1;
  z-index: 1;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-figure,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-figure {
  z-index: 2;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-bg p,
.hf-class-info + .hf-card-grid .hf-uniform-card-figure p,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-bg p,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-figure p {
  height: 100%;
  width: 100%;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-bg img,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-bg img {
  height: 100% !important;
  object-fit: cover;
  object-position: left center;
  padding: 0;
  width: 100% !important;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-bg-missing,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-bg-missing {
  bottom: 8px;
  position: absolute;
  right: 8px;
  z-index: 3;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image .hf-uniform-card-bg-missing a,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image .hf-uniform-card-bg-missing a {
  background: rgba(23, 23, 22, 0.88);
  border: 1px solid rgba(224, 186, 58, 0.68);
  border-radius: 4px;
  color: #e0ba3a !important;
  display: inline-block !important;
  font-size: 10px;
  font-weight: 800;
  height: auto !important;
  letter-spacing: .05em;
  line-height: 1;
  padding: 6px 8px;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  width: auto !important;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-image .hf-uniform-card-bg-missing a:hover,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-image .hf-uniform-card-bg-missing a:hover {
  background: rgba(224, 186, 58, 0.14);
  color: #fff3c4 !important;
}

.hf-class-info + .hf-card-grid .hf-uniform-card-figure img,
.hf-class-info ~ .hf-card-grid .hf-uniform-card-figure img {
  filter: brightness(1.06) saturate(1.14) contrast(1.1);
  height: 100% !important;
  object-fit: contain;
  padding: 10px;
  width: 100% !important;
}

/* ===== Modding Guide Pages (Script Modding Guide (WIP), Uniform Modding, Map Making Guide) ===== */
.mw-parser-output .hf-modding-page .hf-sm-hero,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-hero,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-hero,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-hero {
  background:
    radial-gradient(circle at top left, rgba(224, 186, 58, 0.18), transparent 34%),
    linear-gradient(135deg, rgba(47, 45, 43, 0.98), rgba(30, 30, 29, 0.95));
  border: 1px solid rgba(191, 182, 156, 0.55);
  border-left: 5px solid #c9a227;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22);
  color: #f4efe1;
  margin: 0 0 18px;
  padding: 18px 20px;
}

.mw-parser-output .hf-modding-page .hf-sm-kicker,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-kicker,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-kicker,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-kicker {
  color: #e0ba3a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.mw-parser-output .hf-modding-page .hf-sm-title,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-title,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-title,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-title {
  font-size: 22px;
  font-weight: 800;
  line-height: 28px;
  max-width: 880px;
}

.mw-parser-output .hf-modding-page .hf-sm-note-text,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-note-text,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-note-text,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-note-text {
  color: #d7cfba;
  font-size: 13px;
  line-height: 19px;
  margin-top: 8px;
  max-width: 900px;
}

.mw-parser-output .hf-modding-page .hf-sm-hero a,
.mw-parser-output .hf-modding-page .hf-sm-hero a:visited,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-hero a,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-hero a:visited,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-hero a,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-hero a:visited,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-hero a,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-hero a:visited {
  color: #e0ba3a !important;
}

.mw-parser-output .hf-modding-page .hf-sm-hero a:hover,
.mw-parser-output .hf-modding-page .hf-sm-hero a:focus,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-hero a:hover,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-hero a:focus,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-hero a:hover,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-hero a:focus,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-hero a:hover,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-hero a:focus {
  color: #fff3c4 !important;
}

.mw-parser-output .hf-modding-page .hf-sm-facts,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-facts,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-facts,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-facts {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  margin-top: 14px;
}

.mw-parser-output .hf-modding-page .hf-sm-fact,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-fact,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-fact,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-fact {
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(191, 182, 156, 0.35);
  border-left: 3px solid #c9a227;
  color: #f4efe1;
  font-size: 13px;
  font-weight: 700;
  line-height: 18px;
  padding: 9px 12px;
}

.mw-parser-output .hf-modding-page .hf-sm-fact span,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-fact span,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-fact span,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-fact span {
  color: #e0ba3a;
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  margin-bottom: 3px;
  text-transform: uppercase;
}

.mw-parser-output .hf-modding-page .hf-sm-fact a,
.mw-parser-output .hf-modding-page .hf-sm-fact a:visited,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-fact a,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-fact a:visited,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-fact a,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-fact a:visited,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-fact a,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-fact a:visited {
  color: #e0ba3a !important;
}

.mw-parser-output .hf-modding-page .hf-sm-fact a:hover,
.mw-parser-output .hf-modding-page .hf-sm-fact a:focus,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-fact a:hover,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-fact a:focus,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-fact a:hover,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-fact a:focus,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-fact a:hover,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-fact a:focus {
  color: #fff3c4 !important;
}

/* Callout boxes */
.mw-parser-output .hf-modding-page .hf-sm-callout,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-callout,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-callout,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-callout {
  background: rgba(201, 162, 39, 0.09);
  border: 1px solid rgba(191, 182, 156, 0.55);
  border-left: 4px solid #c9a227;
  color: #3a352f;
  font-size: 13px;
  line-height: 1.5;
  margin: 14px 0;
  padding: 11px 14px;
}

.mw-parser-output .hf-modding-page .hf-sm-info,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-info,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-info,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-info {
  background: rgba(84, 110, 140, 0.10);
  border-left-color: #546e8c;
}

.mw-parser-output .hf-modding-page .hf-sm-tip,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-tip,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-tip,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-tip {
  background: rgba(88, 129, 87, 0.12);
  border-left-color: #588157;
}

.mw-parser-output .hf-modding-page .hf-sm-warn,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-warn,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-warn,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-warn {
  background: rgba(201, 162, 39, 0.13);
  border-left-color: #c9a227;
}

.mw-parser-output .hf-modding-page .hf-sm-danger,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-danger,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-danger,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-danger {
  background: rgba(156, 60, 47, 0.10);
  border-left-color: #9c3c2f;
}

.mw-parser-output .hf-modding-page .hf-sm-verify,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-verify,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-verify,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-verify {
  background: rgba(108, 84, 140, 0.10);
  border-left-color: #6c548c;
}

/* Inline status badges */
.mw-parser-output .hf-modding-page .hf-sm-badge,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-badge,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-badge,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-badge {
  border-radius: 3px;
  display: inline-block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 14px;
  padding: 2px 7px;
  text-transform: uppercase;
  vertical-align: 2px;
  white-space: nowrap;
}

.mw-parser-output .hf-modding-page .hf-sm-badge-verify,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-badge-verify,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-badge-verify,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-badge-verify {
  background: rgba(108, 84, 140, 0.16);
  border: 1px solid #6c548c;
  color: #58447a;
}

.mw-parser-output .hf-modding-page .hf-sm-badge-deprecated,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-badge-deprecated,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-badge-deprecated,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-badge-deprecated {
  background: rgba(156, 60, 47, 0.14);
  border: 1px solid #9c3c2f;
  color: #8a3327;
}

.mw-parser-output .hf-modding-page .hf-sm-badge-server,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-badge-server,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-badge-server,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-badge-server {
  background: rgba(84, 110, 140, 0.16);
  border: 1px solid #546e8c;
  color: #43586f;
}

/* Dark code blocks */
.mw-parser-output .hf-modding-page .hf-relpage-section-body pre,
.mw-parser-output .hf-modding-page .hf-relpage-section-body .hf-code,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body pre,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body .hf-code,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body pre,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body pre,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code {
  background: #1c1a18 !important;
  color: #e5e7eb !important;
  padding: .8em 1em;
  border-radius: .6em;
  overflow: auto;
  line-height: 1.45;
  font-size: .9em;
  border: 1px solid #3d3632;
  border-left: 4px solid #c9a227;
  margin: 0.8em 0;
}

.mw-parser-output .hf-modding-page .hf-relpage-section-body pre a,
.mw-parser-output .hf-modding-page .hf-relpage-section-body pre a:visited,
.mw-parser-output .hf-modding-page .hf-relpage-section-body .hf-code a,
.mw-parser-output .hf-modding-page .hf-relpage-section-body .hf-code a:visited,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body pre a,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body pre a:visited,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body .hf-code a,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body .hf-code a:visited,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body pre a,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body pre a:visited,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code a,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code a:visited,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body pre a,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body pre a:visited,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code a,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code a:visited {
  color: #e0ba3a !important;
}

.mw-parser-output .hf-modding-page .hf-relpage-section-body pre a:hover,
.mw-parser-output .hf-modding-page .hf-relpage-section-body pre a:focus,
.mw-parser-output .hf-modding-page .hf-relpage-section-body .hf-code a:hover,
.mw-parser-output .hf-modding-page .hf-relpage-section-body .hf-code a:focus,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body pre a:hover,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body pre a:focus,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body .hf-code a:hover,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body .hf-code a:focus,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body pre a:hover,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body pre a:focus,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code a:hover,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code a:focus,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body pre a:hover,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body pre a:focus,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code a:hover,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body .hf-code a:focus {
  color: #fff3c4 !important;
}

.mw-parser-output .hf-modding-page .hf-relpage-section-body code,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body code,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body code,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body code {
  background: #2d2926 !important;
  color: #e2c275 !important;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: .88em;
}

.mw-parser-output .hf-modding-page .hf-relpage-section-body code a,
.mw-parser-output .hf-modding-page .hf-relpage-section-body code a:visited,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body code a,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body code a:visited,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body code a,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body code a:visited,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body code a,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body code a:visited {
  color: #e0ba3a !important;
}

.mw-parser-output .hf-modding-page .hf-relpage-section-body code a:hover,
.mw-parser-output .hf-modding-page .hf-relpage-section-body code a:focus,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body code a:hover,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body code a:focus,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body code a:hover,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body code a:focus,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body code a:hover,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body code a:focus {
  color: #fff3c4 !important;
}

.mw-parser-output .hf-modding-page .hf-sm-callout code,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-sm-callout code,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-sm-callout code,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-sm-callout code {
  background: rgba(30, 30, 29, 0.85) !important;
}

/* Section body rhythm */
.mw-parser-output .hf-modding-page .hf-relpage-section-body h3,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body h3,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body h3,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body h3 {
  border-bottom: 1px solid rgba(191, 182, 156, 0.6);
  color: #1e1e1d;
  font-size: 17px;
  margin: 20px 0 8px;
  padding-bottom: 4px;
}

.mw-parser-output .hf-modding-page .hf-relpage-section-body h4,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body h4,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body h4,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body h4 {
  color: #886d00;
  font-size: 14px;
  margin: 16px 0 6px;
}

.mw-parser-output .hf-modding-page .hf-relpage-section-body ul,
.mw-parser-output .hf-modding-page .hf-relpage-section-body ol,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body ul,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body ol,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body ul,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body ol,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body ul,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body ol {
  margin: 8px 0 12px 1.4em;
}

.mw-parser-output .hf-modding-page .hf-relpage-section-body li,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .hf-relpage-section-body li,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .hf-relpage-section-body li,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .hf-relpage-section-body li {
  margin-bottom: 5px;
  line-height: 1.5;
}

/* Tables (troubleshooting, scene objects, version history) */
.mw-parser-output .hf-modding-page .wikitable,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .wikitable,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .wikitable,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .wikitable {
  border: 1px solid #bfb69c;
  border-collapse: collapse;
  margin: 12px 0 18px;
  width: 100%;
}

.mw-parser-output .hf-modding-page .wikitable th,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .wikitable th,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .wikitable th,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .wikitable th {
  background: linear-gradient(90deg, rgba(30, 30, 29, 0.96), rgba(47, 45, 43, 0.94));
  border: 1px solid #3d3632;
  color: #f4efe1;
  font-size: 13px;
  padding: 8px 10px;
  text-align: left;
}

.mw-parser-output .hf-modding-page .wikitable th a,
.mw-parser-output .hf-modding-page .wikitable th a:visited,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .wikitable th a,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .wikitable th a:visited,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .wikitable th a,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .wikitable th a:visited,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .wikitable th a,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .wikitable th a:visited {
  color: #e0ba3a !important;
}

.mw-parser-output .hf-modding-page .wikitable th a:hover,
.mw-parser-output .hf-modding-page .wikitable th a:focus,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .wikitable th a:hover,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .wikitable th a:focus,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .wikitable th a:hover,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .wikitable th a:focus,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .wikitable th a:hover,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .wikitable th a:focus {
  color: #fff3c4 !important;
}

.mw-parser-output .hf-modding-page .wikitable td,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .wikitable td,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .wikitable td,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .wikitable td {
  background: rgba(242, 240, 234, 0.7);
  border: 1px solid #d5d0c8;
  font-size: 13px;
  line-height: 1.45;
  padding: 7px 10px;
  vertical-align: top;
}

.mw-parser-output .hf-modding-page .wikitable tr:nth-child(even) td,
body.skin-holdfast[class*="Uniform_Modding"] .mw-parser-output .wikitable tr:nth-child(even) td,
body.skin-holdfast[class*="Script_Modding_Guide"] .mw-parser-output .wikitable tr:nth-child(even) td,
body.skin-holdfast[class*="Map_Making_Guide"] .mw-parser-output .wikitable tr:nth-child(even) td {
  background: rgba(238, 237, 235, 0.95);
}

/* ===== Regiment Roster Page ===== */
.hf-regiment-roster-page .hf-relpage-section {
  border-left-color: #886d00;
}

.hf-roster-filters {
  border-top: 1px solid rgba(191, 182, 156, 0.55);
  margin-top: 14px;
  padding-top: 12px;
}

.hf-filter-title {
  color: #e0ba3a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.hf-filter-group {
  margin: 0 0 12px;
}

.hf-filter-label {
  color: #d7cfba;
  font-size: 11px;
  font-weight: 700;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.hf-filter-options {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.hf-filter-btn,
.hf-filter-reset,
.hf-rentry-add-btn,
.hf-rentry-edit-btn,
.hf-rentry-delete-btn {
  cursor: pointer;
  display: inline-block;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}

.hf-filter-btn,
.hf-filter-reset,
.hf-rentry-add-btn {
  background: rgba(242, 240, 234, 0.08);
  border: 1px solid rgba(191, 182, 156, 0.38);
  color: #1e1e1d;
  margin: 0 6px 6px 0;
  padding: 7px 9px;
}

.hf-filter-btn:hover,
.hf-filter-btn.active,
.hf-filter-reset:hover,
.hf-rentry-add-btn:hover {
  background: rgba(224, 186, 58, 0.18);
  border-color: #c9a227;
  color: #1e1e1d;
}

.hf-roster-table-header,
.hf-rentry-row {
  align-items: stretch;
  display: grid;
  grid-template-columns: minmax(52px, .55fr) minmax(132px, 1.45fr) minmax(68px, .65fr) repeat(5, minmax(82px, .9fr)) repeat(2, minmax(58px, .58fr)) minmax(54px, .5fr);
}

.hf-regiment-roster-page .hf-relpage-content {
  overflow-x: auto;
}

.hf-roster-table-header {
  background: linear-gradient(90deg, rgba(30, 30, 29, 0.96), rgba(47, 45, 43, 0.94));
  border: 1px solid #3d3632;
  color: #e0ba3a;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .01em;
  margin: 0 0 10px;
  min-width: 1120px;
  text-transform: uppercase;
}

.hf-roster-table-header .hf-rentry-col,
.hf-roster-table-header a,
.hf-roster-table-header a:visited,
.hf-roster-table-header a:hover,
.hf-roster-table-header a:focus {
  color: #e0ba3a !important;
}

.hf-roster-list {
  display: grid;
  gap: 7px;
}

.hf-rentry-row {
  background: rgba(242, 240, 234, 0.88);
  border: 1px solid #d5d0c8;
  border-left: 4px solid #bfb69c;
  color: #1e1e1d;
  font-size: 10.5px;
  line-height: 1.25;
  min-width: 1120px;
}

.hf-rentry-row:hover {
  border-left-color: #c9a227;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.hf-rentry-col {
  border-right: 1px solid rgba(191, 182, 156, 0.48);
  overflow-wrap: anywhere;
  padding: 6px 6px;
}

.hf-rentry-col:last-child {
  border-right: 0;
}

.hf-rentry-col-name {
  font-weight: 800;
}

.hf-rentry-name-link {
  color: #6f5600;
}

.hf-rentry-badge {
  border-radius: 999px;
  display: inline-block;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .03em;
  padding: 3px 6px;
  text-transform: uppercase;
  white-space: nowrap;
}

.hf-rentry-badge-Active {
  background: rgba(88, 129, 87, 0.16);
  border: 1px solid #588157;
  color: #355d34;
}

.hf-rentry-badge-Inactive,
.hf-rentry-badge-Unknown {
  background: rgba(136, 109, 0, 0.14);
  border: 1px solid #886d00;
  color: #6f5600;
}

.hf-rentry-badge-Disbanded {
  background: rgba(156, 60, 47, 0.12);
  border: 1px solid #9c3c2f;
  color: #8a3327;
}

.hf-rentry-col-actions {
  white-space: nowrap;
}

.hf-rentry-edit-btn {
  color: #6f5600;
  margin-right: 5px;
}

.hf-rentry-delete-btn {
  color: #8a3327;
}

.hf-inline-trait-icon {
  display: inline-block;
  position: relative;
  width: 32px;
  height: 32px;
  vertical-align: middle;
}

.hf-inline-trait-icon .hf-inline-trait-container,
.hf-inline-trait-icon .hf-inline-trait-symbol {
  position: absolute;
  left: 50%;
  top: 50%;
  margin: 0;
  transform: translate(-50%, -50%);
}

.hf-inline-trait-icon .hf-inline-trait-container {
  width: 32px;
  height: 32px;
}

.hf-inline-trait-icon .hf-inline-trait-symbol {
  width: 18px;
  height: 18px;
}