/* ==========================================================================
   База знаний WoW Classic X5 — WOW-180
   Стиль интерфейса клиента WoW: золотые кнопки, панели с рамкой, свиток квеста,
   тултипы предметов. Шрифты: Philosopher (заголовки), Alegreya Sans (текст).
   ========================================================================== */
:root {
  --kb-bg: #0b0806;
  --kb-panel-1: #21170d;
  --kb-panel-2: #140e08;
  --kb-edge: #5e4520;
  --kb-edge-2: #8a6a32;
  --kb-gold: #ffd100;
  --kb-gold-2: #ffb627;
  --kb-ember: #ff9d1c;
  --kb-text: #e6d9bc;
  --kb-text-2: #c9b994;
  --kb-muted: #a8977a;
  --kb-dim: #8f7f62;
  --kb-line: #2e2213;
  --kb-head: 'Philosopher', 'Cinzel', Georgia, serif;
  --kb-sans: 'Alegreya Sans', 'Roboto', 'Segoe UI', sans-serif;
}

.main-content:has(> .kb) { padding: 0; }
body:has(.kb) {
  background: radial-gradient(1200px 600px at 50% -10%, rgba(255,140,20,.10), transparent 60%), var(--kb-bg);
  background-attachment: scroll;
}
.kb { color: var(--kb-text); font-family: var(--kb-sans); font-size: 17px; line-height: 1.55; }
.kb a { color: var(--kb-gold-2); }
.kb a:hover { color: #ffe28a; }
.kb ::selection { background: var(--kb-ember); color: #1a0d00; }
.kb-wrap { max-width: 1440px; margin: 0 auto; padding: 0 24px; }
.kb-block { padding-top: 48px; }
.kb-block--cta { padding-top: 64px; }

/* ---------- Кнопки в стиле клиента WoW (глобально для всего сайта) ---------- */
.wow-btn, .btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 10px 22px; min-height: 40px;
  font-family: var(--kb-head); font-weight: 700; font-size: 15px; letter-spacing: .03em; text-transform: none;
  color: var(--kb-gold) !important; text-shadow: 0 1px 0 #000; text-decoration: none; cursor: pointer;
  background: linear-gradient(180deg, #4a1f12 0%, #2c120a 55%, #1a0905 100%);
  border: 1px solid #8a6a32; border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,210,130,.25), inset 0 -2px 0 rgba(0,0,0,.45), 0 0 0 1px #000, 0 3px 10px rgba(0,0,0,.45);
  transition: filter .15s, border-color .15s, transform .1s;
  white-space: nowrap;
}
.wow-btn:hover, .btn:hover { filter: brightness(1.18); border-color: #ffb627; color: #ffe680 !important; }
.wow-btn:active, .btn:active { transform: translateY(1px); filter: brightness(.95); }
.wow-btn--gold, .btn-primary {
  color: #2b1200 !important; text-shadow: 0 1px 0 rgba(255,236,190,.7);
  background: linear-gradient(180deg, #ffe58f 0%, #ffbb2e 40%, #f08a0e 60%, #c4600a 100%);
  border: 1px solid #3a1a00;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65), inset 0 -2px 0 rgba(110,40,0,.45), 0 0 0 1px #d19a35, 0 0 0 3px #1a1006, 0 4px 16px rgba(255,140,0,.3);
}
.wow-btn--gold:hover, .btn-primary:hover { color: #2b1200 !important; filter: brightness(1.1); }
.wow-btn--lg { padding: 13px 30px; font-size: 17px; }
.wow-btn--sm { padding: 5px 12px; min-height: 32px; font-size: 14px; }
.wow-btn--block { display: flex; width: 100%; }

/* ---------- Панели / иконки ---------- */
.wow-panel {
  background: linear-gradient(180deg, var(--kb-panel-1), var(--kb-panel-2));
  border: 1px solid var(--kb-edge);
  box-shadow: 0 0 0 1px #000, inset 0 1px 0 rgba(255,210,130,.08), 0 8px 24px rgba(0,0,0,.45);
}
.wow-ico {
  flex: none; width: 40px; height: 40px; background: #2a1d10;
  border: 1px solid #000; border-radius: 3px; box-shadow: 0 0 0 1px var(--kb-edge-2);
}
.wow-ico--lg { width: 52px; height: 52px; box-shadow: 0 0 0 2px var(--kb-edge-2), 0 0 0 3px #000; }

/* ---------- Крошки / заголовки секций ---------- */
.kb-crumbs { display: flex; flex-wrap: wrap; gap: 8px; font-size: 14px; color: var(--kb-muted); padding-top: 18px; }
.kb-crumbs a { color: var(--kb-muted); }
.kb-crumbs a:hover { color: var(--kb-gold); }
.kb-crumbs > span:last-child { color: var(--kb-text); }
.kb-sectitle { display: flex; align-items: center; gap: 18px; margin-bottom: 26px; }
.kb-sectitle span { flex: 1; height: 1px; background: linear-gradient(90deg, transparent, var(--kb-edge-2)); }
.kb-sectitle span:last-child { background: linear-gradient(270deg, transparent, var(--kb-edge-2)); }
.kb-sectitle i { color: #c9922e; font-size: 12px; font-style: normal; }
.kb-sectitle h2 { margin: 0; font-family: var(--kb-head); font-size: 32px; color: var(--kb-gold); text-shadow: 0 2px 0 #000; }

/* ---------- Hero главной Базы знаний ---------- */
.kb-hero { position: relative; overflow: hidden; border-bottom: 1px solid #4a3519; }
.kb-hero__bg { position: absolute; inset: 0; background: center 30%/cover no-repeat; opacity: .5; }
.kb-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,8,6,.35) 0%, rgba(11,8,6,.8) 65%, var(--kb-bg) 100%); }
.kb-hero__inner { position: relative; z-index: 1; max-width: 1240px; margin: 0 auto; padding: 8px 24px 52px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 18px; }
.kb-hero--compact .kb-hero__inner { padding-bottom: 36px; }
.kb-hero .kb-crumbs { justify-content: center; }
.kb-kicker { display: flex; align-items: center; gap: 12px; color: var(--kb-ember); font-family: var(--kb-head); font-size: 15px; letter-spacing: .2em; text-transform: uppercase; }
.kb-kicker span { width: 40px; height: 1px; background: #c9922e; }
.kb-hero__title { margin: 0; font-family: var(--kb-head); font-weight: 700; font-size: clamp(34px, 5vw, 60px); line-height: 1.05; color: var(--kb-gold); text-shadow: 0 3px 0 #000, 0 0 40px rgba(255,140,0,.35); text-wrap: balance; }
.kb-hero--compact .kb-hero__title { font-size: clamp(30px, 4vw, 46px); }
.kb-hero__lead { margin: 0; max-width: 660px; font-size: 19px; line-height: 1.5; color: var(--kb-text); }

/* ---------- Поиск ---------- */
.kb-search { position: relative; width: 100%; }
.kb-search--big { max-width: 760px; margin-top: 6px; }
.kb-search__field {
  display: flex; align-items: center; gap: 10px; padding: 0 6px 0 14px; height: 42px;
  background: #0a0705; border: 1px solid #6b4f24; box-shadow: inset 0 2px 6px rgba(0,0,0,.8);
}
.kb-search--big .kb-search__field {
  height: 62px; padding: 0 8px 0 18px; gap: 12px; background: linear-gradient(180deg, #070504, #17110b); border-color: #d19a35;
  box-shadow: 0 0 0 1px #000, 0 0 0 4px #2a1d0f, 0 0 0 5px #6b4f24, inset 0 2px 10px rgba(0,0,0,.85), 0 0 36px rgba(255,140,0,.18);
}
.kb-search input { flex: 1; min-width: 0; height: 100%; background: transparent; border: 0; outline: 0; color: #fff3d6; font: 16px var(--kb-sans); }
.kb-search--big input { font-size: 19px; }
.kb-search input::placeholder { color: var(--kb-dim); }
.kb-search input::-webkit-search-cancel-button { filter: sepia(1) saturate(4) hue-rotate(-10deg); }
.kb-search:not(.kb-search--big) .wow-btn { padding: 4px 12px; min-height: 30px; font-size: 13px; }
.kb-search--big .wow-btn { height: 44px; padding: 0 26px; }
.kb-search__key { padding: 2px 8px; border: 1px solid #6b4f24; color: var(--kb-muted); font-size: 13px; border-radius: 3px; }
.kb-drop {
  position: absolute; z-index: 60; top: calc(100% + 10px); left: 0; right: 0; text-align: left;
  background: linear-gradient(180deg, #21170d, #120c07); border: 1px solid #d19a35;
  box-shadow: 0 0 0 1px #000, 0 0 0 4px #2a1d0f, 0 24px 50px rgba(0,0,0,.75);
}
.kb-drop[hidden] { display: none; }
.kb-drop__item { display: flex; align-items: center; gap: 14px; padding: 10px 16px; border-bottom: 1px solid var(--kb-line); color: var(--kb-text) !important; }
.kb-drop__item:hover { background: rgba(255,157,28,.12); }
.kb-drop__item img { width: 34px; height: 34px; border: 1px solid #000; box-shadow: 0 0 0 1px var(--kb-edge-2); border-radius: 2px; }
.kb-drop__item span { display: flex; flex-direction: column; min-width: 0; }
.kb-drop__item b { font-weight: 500; color: #ffe7a8; font-size: 16px; }
.kb-drop__item small { color: var(--kb-muted); font-size: 13px; }
.kb-drop__empty { padding: 16px; color: var(--kb-muted); }
.kb-drop__all { width: 100%; padding: 12px 16px; text-align: left; background: rgba(0,0,0,.25); border: 0; color: var(--kb-gold-2); font: 500 15px var(--kb-sans); cursor: pointer; }
.kb-drop__all:hover { color: #ffe28a; }
.kb-chips { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; max-width: 820px; }
.kb-chips > span { font-size: 15px; color: var(--kb-muted); margin-right: 4px; }
.kb-chip { padding: 6px 14px; background: rgba(20,14,8,.75); border: 1px solid #6b4f24; border-radius: 3px; color: var(--kb-text) !important; font-size: 15px; }
.kb-chip:hover { border-color: var(--kb-gold-2); color: var(--kb-gold) !important; }

/* ---------- Разделы (карточки) ---------- */
.kb-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 16px; }
.kb-cat { display: flex; flex-direction: column; gap: 12px; padding: 18px 18px 16px; transition: border-color .15s, box-shadow .15s; }
.kb-cat:hover { border-color: #d19a35; box-shadow: 0 0 0 1px #000, inset 0 1px 0 rgba(255,210,130,.12), 0 0 22px rgba(255,150,0,.2); }
.kb-cat__head { display: flex; gap: 14px; align-items: center; }
.kb-cat__head span { display: flex; flex-direction: column; gap: 2px; }
.kb-cat h3 { margin: 0; font-family: var(--kb-head); font-size: 21px; color: var(--kb-gold); text-shadow: 0 1px 0 #000; }
.kb-cat small { font-size: 14px; color: var(--kb-muted); }
.kb-cat p { margin: 0; font-size: 15px; line-height: 1.45; color: var(--kb-text-2); }
.kb-cat__top { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--kb-line); }
.kb-cat__top a { display: flex; align-items: baseline; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--kb-line); color: #ece0c4 !important; font-size: 15px; }
.kb-cat__top a:hover { color: var(--kb-gold) !important; }
.kb-cat__top i { color: #c9922e; font-size: 9px; font-style: normal; }
.kb-more { margin-top: auto; font-weight: 500; font-size: 15px; }

/* ---------- Путь новичка / Популярное ---------- */
.kb-duo { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 440px), 1fr)); gap: 20px; }
.kb-box { padding: 24px; }
.kb-box h2 { margin: 0 0 4px; font-family: var(--kb-head); font-size: 26px; color: var(--kb-gold); text-shadow: 0 2px 0 #000; }
.kb-box__sub { margin: 0 0 14px; font-size: 15px; color: var(--kb-muted); }
.kb-step, .kb-pop { display: flex; gap: 16px; align-items: center; padding: 11px 10px; margin: 0 -10px; color: var(--kb-text) !important; border-radius: 3px; }
.kb-pop { border-bottom: 1px solid var(--kb-line); margin: 0; padding: 10px 0; }
.kb-step:hover, .kb-pop:hover { background: rgba(255,157,28,.08); }
.kb-step__n { width: 34px; height: 34px; flex: none; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(circle at 35% 30%, #ffe58f, #f0a00e 60%, #9a4a00); border: 1px solid #2a1600; box-shadow: 0 0 0 1px #d19a35; font: 700 16px var(--kb-head); color: #2b1200; }
.kb-step__body { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.kb-step__body b { font-size: 17px; font-weight: 500; color: #ffe7a8; }
.kb-step__body small { font-size: 14px; color: var(--kb-muted); }
.kb-step__min { font-size: 13px; color: var(--kb-dim); white-space: nowrap; }
.kb-pop__rank { width: 30px; flex: none; font: 700 26px var(--kb-head); color: var(--kb-ember); text-align: center; text-shadow: 0 2px 0 #000; }

/* ---------- Классы ---------- */
.kb-classes { display: grid; grid-template-columns: repeat(auto-fill, minmax(124px, 1fr)); gap: 12px; }
.kb-class { display: flex; flex-direction: column; align-items: center; gap: 9px; padding: 16px 8px 14px; background: linear-gradient(180deg, #1d140b, #110c07); border: 1px solid #4a3519; box-shadow: 0 0 0 1px #000; }
.kb-class:hover { border-color: #d19a35; background: linear-gradient(180deg, #2a1d10, #140e08); }
.kb-class img { width: 54px; height: 54px; border-radius: 50%; border: 2px solid #000; box-shadow: 0 0 0 2px var(--cc), 0 0 14px rgba(0,0,0,.6); }
.kb-class b { font: 700 16px var(--kb-head); color: var(--cc); text-shadow: 0 1px 0 #000; }
.kb-class small { font-size: 13px; color: var(--kb-dim); }

/* ---------- Журнал статей ---------- */
.kb-journal { display: flex; gap: 20px; align-items: flex-start; flex-wrap: wrap; scroll-margin-top: 90px; }
.kb-journal__side { flex: 1 1 250px; max-width: 100%; position: sticky; top: 90px; }
.kb-tabs { padding: 8px; display: flex; flex-direction: column; }
.kb-tab { display: flex; align-items: center; gap: 10px; padding: 7px 10px; border: 1px solid transparent; color: #d8c9a8 !important; font-size: 16px; }
.kb-tab img { width: 22px; height: 22px; border: 1px solid #000; box-shadow: 0 0 0 1px #6b4f24; }
.kb-tab span { flex: 1; }
.kb-tab small { font-size: 13px; color: var(--kb-dim); }
.kb-tab:hover { color: var(--kb-gold) !important; }
.kb-tab.is-active { background: linear-gradient(90deg, rgba(255,157,28,.22), rgba(255,157,28,.04)); border-color: var(--kb-edge-2); color: var(--kb-gold) !important; }
.kb-journal__main { flex: 999 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.kb-journal__bar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; min-height: 34px; }
.kb-journal__title { font-size: 17px; color: var(--kb-text); }
.kb-reset { padding: 4px 12px; border: 1px solid #6b4f24; border-radius: 3px; font-size: 14px; }
.kb-list { background: linear-gradient(180deg, #1b130b, #110c07); }
.kb-row { display: flex; gap: 14px; align-items: center; padding: 13px 16px; border-bottom: 1px solid #2a1f12; color: var(--kb-text) !important; }
.kb-row:hover { background: rgba(255,157,28,.07); }
.kb-row__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.kb-row__title { font-size: 18px; font-weight: 500; color: #ffe7a8; }
.kb-row__desc { font-size: 15px; line-height: 1.4; color: #b8a888; }
.kb-row__meta { display: flex; gap: 14px; flex-wrap: wrap; font-size: 13px; color: var(--kb-dim); }
.kb-row__arrow { color: #c9922e; font-size: 22px; }
.kb-new { padding: 1px 7px; margin-left: 6px; font: normal 700 11px var(--kb-sans); letter-spacing: .04em; color: #2b1200; background: linear-gradient(180deg, #ffe58f, #f08a0e); border-radius: 2px; vertical-align: middle; }
.kb-empty { padding: 40px 20px; display: flex; flex-direction: column; align-items: center; gap: 14px; text-align: center; color: var(--kb-muted); }
.kb-empty b { font: 22px var(--kb-head); color: var(--kb-gold); }
.kb-pager { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; justify-content: center; padding-top: 8px; color: var(--kb-muted); }

/* ---------- Квест-CTA (свиток) ---------- */
.kb-quest {
  max-width: 900px; margin: 8px auto 0; padding: 32px 38px 30px; display: flex; flex-direction: column; gap: 14px;
  background: linear-gradient(180deg, #f1e2b8, #d9c088); color: #2b1a08; border: 1px solid #6b4f24;
  box-shadow: 0 0 0 1px #000, 0 0 0 5px #3b2a14, 0 0 0 6px #c9922e, 0 0 0 7px #000, 0 24px 60px rgba(0,0,0,.6), inset 0 0 70px rgba(120,80,20,.35);
  scroll-margin-top: 90px;
}
.kb-article .kb-quest { margin: 8px 7px 0; max-width: none; }
.kb-quest__head { display: flex; align-items: center; gap: 16px; }
.kb-quest__mark { font: 700 56px/1 var(--kb-head); color: var(--kb-gold); -webkit-text-stroke: 2px #3a1e00; text-shadow: 0 3px 0 #3a1e00; }
.kb-quest__kicker { font-size: 14px; letter-spacing: .14em; text-transform: uppercase; color: #7a5520; font-weight: 700; }
.kb-quest__title { margin: 2px 0 0 !important; font: 700 clamp(24px, 3vw, 32px) var(--kb-head) !important; color: #3a1e00 !important; text-shadow: none !important; border: 0 !important; padding: 0 !important; }
.kb-quest__text { margin: 0; font-size: 18px; line-height: 1.55; color: #2b1a08; }
.kb-quest__label { font: 700 18px var(--kb-head); color: #3a1e00; }
.kb-quest__goals { margin: 0; padding-left: 22px; font-size: 17px; line-height: 1.6; color: #2b1a08; }
.kb-quest__goals a { color: #7a3a00 !important; text-decoration: underline; text-decoration-color: rgba(122,58,0,.4); }
.kb-quest__goals code { background: rgba(60,35,8,.12); padding: 1px 6px; color: #3a1e00; font-size: 15px; }
.kb-quest__rewards { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
.kb-reward { display: flex; align-items: center; gap: 10px; padding: 6px; background: rgba(60,35,8,.12); border: 1px solid rgba(90,55,15,.35); font-size: 16px; font-weight: 700; color: #3a1e00; }
.kb-reward img { width: 38px; height: 38px; border: 1px solid #000; box-shadow: 0 0 0 1px var(--kb-edge-2); border-radius: 2px; }
.kb-quest__actions { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; padding-top: 6px; }
.kb-copy { display: inline-flex; align-items: center; gap: 10px; padding: 10px 14px; background: rgba(60,35,8,.12); border: 1px dashed #7a5520; font: 14px ui-monospace, Menlo, Consolas, monospace; color: #3a1e00; cursor: pointer; }
.kb-copy b { font-family: var(--kb-sans); color: #9a4a00; }
.kb-copy--dark { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; width: 100%; background: #0a0705; border: 1px solid #4a3519; color: var(--kb-text-2); font-size: 12px; text-align: left; }
.kb-copy--dark b { color: var(--kb-gold-2); font-size: 13px; }

/* ==========================================================================
   Макет статьи
   ========================================================================== */
.kb-layout { display: grid; grid-template-columns: 270px minmax(0, 1fr) 250px; gap: 28px; align-items: start; margin-top: 18px; }
.kb-nav, .kb-aside { position: sticky; top: 86px; max-height: calc(100vh - 100px); overflow: auto; scrollbar-width: thin; scrollbar-color: #6b4f24 transparent; }
.kb-aside { display: flex; flex-direction: column; gap: 16px; overflow: visible; }
.kb-nav__panel { padding: 0 0 6px; }
.kb-nav__summary { list-style: none; padding: 12px 14px; font: 700 16px var(--kb-head); color: var(--kb-gold); border-bottom: 1px solid var(--kb-line); cursor: pointer; }
.kb-nav__summary::-webkit-details-marker { display: none; }
.kb-nav__search { padding: 12px; border-bottom: 1px solid var(--kb-line); }
.kb-nav__search .kb-search__field .wow-btn { display: none; }
.kb-nav__cats, .kb-nav__items { list-style: none; margin: 0; padding: 0; }
.kb-nav__cats { padding: 6px 0; }
.kb-nav__cat { display: flex; align-items: center; gap: 10px; padding: 7px 14px; color: var(--kb-gold) !important; font: 16px var(--kb-head); }
.kb-nav__cat:hover { background: rgba(255,157,28,.07); }
.kb-nav__sign { width: 16px; height: 16px; flex: none; display: grid; place-items: center; border: 1px solid var(--kb-edge-2); background: #0a0705; color: var(--kb-gold-2); font: 13px/1 monospace; }
.kb-nav__name { flex: 1; }
.kb-nav__cat small { font-family: var(--kb-sans); font-size: 13px; color: var(--kb-dim); }
.kb-nav__items { padding: 2px 0 8px; }
.kb-nav__items a { display: block; padding: 5px 14px 5px 40px; font-size: 15px; line-height: 1.3; color: var(--kb-text-2) !important; }
.kb-nav__items a:hover { color: var(--kb-gold) !important; }
.kb-nav__items a.is-current { color: var(--kb-gold) !important; background: rgba(255,157,28,.12); box-shadow: inset 2px 0 0 var(--kb-ember); }
.kb-nav__items .kb-nav__all { color: var(--kb-gold-2) !important; font-weight: 500; }

.kb-article { min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.kb-head { position: relative; min-height: 250px; display: flex; align-items: flex-end; overflow: hidden; border: 1px solid var(--kb-edge); box-shadow: 0 0 0 1px #000, 0 0 0 4px #1a1006, 0 0 0 5px #5e4520, 0 14px 40px rgba(0,0,0,.6); margin: 5px; }
.kb-head__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.kb-head__scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,8,6,.15) 0%, rgba(11,8,6,.55) 45%, rgba(11,8,6,.95) 100%); }
.kb-head__inner { position: relative; z-index: 1; padding: 26px 28px 24px; display: flex; flex-direction: column; gap: 12px; }
.kb-head__cat { display: inline-flex; align-items: center; gap: 12px; font: 15px var(--kb-head); letter-spacing: .14em; text-transform: uppercase; color: var(--kb-ember) !important; text-shadow: 0 1px 2px #000; }
.kb-head__title { margin: 0; font: 700 clamp(30px, 3.6vw, 46px)/1.1 var(--kb-head); color: var(--kb-gold); text-shadow: 0 3px 0 #000, 0 0 30px rgba(0,0,0,.8); text-wrap: balance; }
.kb-badges { display: flex; gap: 8px; flex-wrap: wrap; margin-top: -8px; }
.kb-badges span { padding: 5px 12px; background: #140e08; border: 1px solid #4a3519; font-size: 14px; color: var(--kb-text-2); }
.kb-badges b { color: #ffe7a8; font-weight: 500; }
.kb-lead p { margin: 0 0 10px; font-size: 20px; line-height: 1.55; color: #ece0c4; }
.kb-lead p:first-child::first-letter { float: left; font: 700 54px/0.9 var(--kb-head); color: var(--kb-gold); padding: 6px 8px 0 0; text-shadow: 0 2px 0 #000; }

.kb-toc { padding: 16px; display: flex; flex-direction: column; }
.kb-aside__title { font: 16px var(--kb-head); color: var(--kb-gold); margin-bottom: 10px; }
.kb-toc a { padding: 6px 0 6px 12px; font-size: 15px; line-height: 1.3; color: var(--kb-text-2) !important; border-left: 2px solid #3b2a14; }
.kb-toc a:hover, .kb-toc a.is-active { color: var(--kb-gold) !important; border-left-color: var(--kb-ember); }
.kb-toc--inline { display: none; padding: 0; }
.kb-toc--inline summary { padding: 12px 16px; font: 700 16px var(--kb-head); color: var(--kb-gold); cursor: pointer; }
.kb-toc--inline ol { margin: 0; padding: 0 16px 14px 36px; }
.kb-toc--inline li a { border: 0; padding: 4px 0; display: block; }
.kb-playbox { padding: 16px; display: flex; flex-direction: column; gap: 12px; background: linear-gradient(180deg, #2a1b0c, #160f08); border-color: var(--kb-edge-2); box-shadow: 0 0 0 1px #000, 0 0 24px rgba(255,140,0,.12); }
.kb-online { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--kb-text-2); }
.kb-online i { width: 8px; height: 8px; border-radius: 50%; background: #3ee03e; box-shadow: 0 0 8px #3ee03e; }
.kb-playbox__title { font: 19px/1.2 var(--kb-head); color: var(--kb-gold); }

/* ---------- Тело статьи: типографика ---------- */
.kb-body { display: flex; flex-direction: column; gap: 34px; }
.kb-sec { scroll-margin-top: 90px; display: flex; flex-direction: column; gap: 14px; }
.kb-h2 { margin: 0; display: flex; align-items: center; gap: 14px; padding-bottom: 10px; border-bottom: 1px solid #4a3519; font: 700 28px/1.2 var(--kb-head); color: var(--kb-gold); text-shadow: 0 2px 0 #000; position: relative; }
.kb-h2::after { content: ""; position: absolute; left: 0; bottom: -1px; width: 120px; height: 1px; background: linear-gradient(90deg, var(--kb-ember), transparent); }
.kb-h2 .wow-ico { width: 36px; height: 36px; }
.kb-h2__gem { font-style: normal; font-size: 14px; color: #c9922e; }
.kb-body p, .kb-faq p { margin: 0; font-size: 18px; line-height: 1.7; color: var(--kb-text); }
.kb-body p + p { margin-top: 2px; }
.kb-body strong { color: #fff0c8; font-weight: 700; }
.kb-body h3 { margin: 10px 0 0; font: 700 21px var(--kb-head); color: #ffe7a8; text-shadow: 0 1px 0 #000; }
.kb-body a.text-primary, .kb-body a { color: var(--kb-gold-2); text-decoration: underline; text-decoration-color: rgba(255,182,39,.35); text-underline-offset: 3px; }
.kb-body a:hover { color: #ffe28a; text-decoration-color: #ffe28a; }
.kb-body .icon-chip, .kb-body a.icon-chip { text-decoration: none; }
.kb-body ul.list-check, .kb-ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
.kb-body ul.list-check li, .kb-ul li { display: block; position: relative; padding: 0 0 0 24px; border: 0; font-family: var(--kb-sans); font-size: 18px; line-height: 1.6; color: var(--kb-text); }
.kb-body ul.list-check li::before, .kb-ul li::before { content: "◆"; position: absolute; left: 2px; top: 0; width: auto; height: auto; margin: 0; background: none; transform: none; box-shadow: none; color: var(--kb-ember); font-size: 10px; line-height: 2.9; }
.kb-body ol.list-steps { list-style: none; counter-reset: st; margin: 0; padding: 0; display: flex; flex-direction: column; border: 1px solid #4a3519; background: #120d08; }
.kb-body ol.list-steps li { counter-increment: st; display: flex; gap: 14px; align-items: baseline; padding: 11px 16px; border-bottom: 1px solid #2a1f12; font-size: 17px; line-height: 1.55; }
.kb-body ol.list-steps li:last-child { border-bottom: 0; }
.kb-body ol.list-steps li::before { content: counter(st); flex: none; min-width: 30px; height: 26px; display: inline-grid; place-items: center; font: 700 15px var(--kb-head); color: #2b1200; background: linear-gradient(180deg, #ffe58f, #f08a0e); border: 1px solid #3a1a00; border-radius: 2px; }

/* Таблицы — как окно клиента */
.kb-body .table-wrap { overflow-x: auto; border: 1px solid var(--kb-edge); box-shadow: 0 0 0 1px #000; background: #0f0a06; }
.kb-body .table-wrap { margin: 0; border-radius: 0; }
.kb-body .content-table { width: 100%; border-collapse: collapse; font-family: var(--kb-sans); font-size: 16px; }
.kb-body .content-table th { background: linear-gradient(180deg, #3d2b17, #24180c); color: var(--kb-gold); font: 700 15px var(--kb-head); text-align: left; padding: 10px 14px; border-bottom: 1px solid var(--kb-edge-2); white-space: nowrap; }
.kb-body .content-table td { padding: 9px 14px; border-bottom: 1px solid #2a1f12; color: var(--kb-text); vertical-align: top; line-height: 1.5; }
.kb-body .content-table tr:nth-child(even) td { background: rgba(255,210,130,.03); }
.kb-body .content-table tr:hover td { background: rgba(255,157,28,.07); }

/* Выноски */
.kb-body .callout { display: flex; gap: 14px; padding: 16px 18px; background: linear-gradient(180deg, rgba(255,157,28,.12), rgba(255,157,28,.04)); border: 1px solid var(--kb-edge-2); border-radius: 0; box-shadow: 0 0 0 1px #000; }
.kb-body .callout-icon { flex: none; width: 26px; height: 26px; color: var(--kb-ember); }
.kb-body .callout-label { display: block; font: 700 15px var(--kb-head); color: var(--kb-ember); margin-bottom: 4px; }
.kb-body .callout p { font-size: 17px; color: #ffe7a8; }
.kb-body .callout-warn { background: linear-gradient(180deg, rgba(220,40,20,.14), rgba(220,40,20,.04)); border-color: #8a3a22; }
.kb-body .callout-warn .callout-icon, .kb-body .callout-warn .callout-label { color: #ff7a52; }
.kb-body .callout-info { background: linear-gradient(180deg, rgba(60,140,255,.12), rgba(60,140,255,.03)); border-color: #2c4f7a; }
.kb-body .callout-info .callout-icon, .kb-body .callout-info .callout-label { color: #7cb8ff; }

/* Картинки и скриншоты — рамка как у окна игры */
.kb-body .content-figure, .kb-body figure { margin: 4px 0; padding: 6px; background: #0a0705; border: 1px solid var(--kb-edge); box-shadow: 0 0 0 1px #000, 0 0 0 4px #1a1006, 0 0 0 5px #4a3519, 0 10px 30px rgba(0,0,0,.5); }
.kb-body figure img { display: block; width: 100%; height: auto; max-height: 560px; object-fit: cover; }
.kb-body figcaption { padding: 8px 4px 2px; font-size: 14px; color: var(--kb-muted); font-style: italic; text-align: center; }
.kb-body .content-gallery { display: grid; gap: 14px; }
.kb-body .content-gallery--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.kb-body .content-gallery--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.kb-body .content-gallery figure img { aspect-ratio: 16 / 10; }
.kb-body .inline-img { border: 1px solid var(--kb-edge); }
.kb-body pre.content-code { background: #070504; border: 1px solid #4a3519; padding: 14px 16px; overflow-x: auto; color: #e9f5d0; font-size: 14px; }
.kb-body code { background: rgba(0,0,0,.35); border: 1px solid #3b2a14; padding: 1px 6px; font-size: .9em; color: #ffe7a8; }
.kb-body pre code { background: none; border: 0; padding: 0; }

/* Иконки движка (чипы/гриды) */
.kb-body .icon-chip { display: inline-flex; align-items: center; gap: 6px; padding: 1px 8px 1px 2px; background: rgba(0,0,0,.35); border: 1px solid #3b2a14; border-radius: 3px; vertical-align: middle; color: #ffe7a8; }
.kb-body .icon-chip .wow-icon { width: 24px; height: 24px; border: 1px solid #000; box-shadow: 0 0 0 1px var(--kb-edge-2); }
.kb-body .icon-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.kb-body .icon-card { display: flex; gap: 12px; align-items: flex-start; padding: 12px; background: linear-gradient(180deg, #1d140b, #110c07); border: 1px solid #4a3519; box-shadow: 0 0 0 1px #000; }

/* ---------- Игровые тултипы предметов/способностей ---------- */
.wow-tt-grid { display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-start; }
.wow-tt { display: inline-flex; gap: 6px; align-items: flex-start; vertical-align: top; max-width: 360px; font-family: Verdana, 'Alegreya Sans', sans-serif; }
.wow-tt__icon img { display: block; width: 44px; height: 44px; border: 1px solid #000; border-radius: 4px; box-shadow: 0 0 0 1px #6f6f6f; }
.wow-tt__box { display: flex; flex-direction: column; gap: 1px; min-width: 230px; padding: 8px 10px; background: rgba(8,8,24,.94); border: 1px solid #c8c8c8; border-radius: 4px; box-shadow: 0 0 0 1px #000, inset 0 0 0 1px #5a5a6a, 0 6px 18px rgba(0,0,0,.6); font-size: 13px; line-height: 1.45; color: #fff; }
.wow-tt__name { font-size: 15px; font-weight: 700; margin-bottom: 1px; }
.wow-tt__line { color: #fff; }
.wow-tt__line--split { display: flex; justify-content: space-between; gap: 18px; }
.wow-tt__line--sub { color: #fff; opacity: .9; }
.wow-tt__line.g { color: #1eff00; }
.wow-tt__line.y { color: #ffd100; }
.q-poor .wow-tt__name, .wow-link.q-poor { color: #9d9d9d; }
.q-common .wow-tt__name, .wow-link.q-common { color: #ffffff; }
.q-uncommon .wow-tt__name, .wow-link.q-uncommon { color: #1eff00; }
.q-rare .wow-tt__name, .wow-link.q-rare { color: #0070dd; }
.q-epic .wow-tt__name, .wow-link.q-epic { color: #a335ee; }
.q-legendary .wow-tt__name, .wow-link.q-legendary { color: #ff8000; }
.q-artifact .wow-tt__name, .wow-link.q-artifact { color: #e6cc80; }
.q-spell .wow-tt__name { color: #fff; }
.q-epic .wow-tt__icon img { box-shadow: 0 0 0 1px #a335ee; }
.q-rare .wow-tt__icon img { box-shadow: 0 0 0 1px #0070dd; }
.q-legendary .wow-tt__icon img { box-shadow: 0 0 0 1px #ff8000; }
.q-uncommon .wow-tt__icon img { box-shadow: 0 0 0 1px #1eff00; }
.wow-link { display: inline-flex; align-items: center; gap: 4px; font-weight: 700; vertical-align: baseline; text-shadow: 0 1px 0 #000; }
.wow-link img { width: 18px; height: 18px; border: 1px solid #000; border-radius: 2px; vertical-align: -3px; }

/* ---------- FAQ / связанные / пред-след ---------- */
.kb-faq { gap: 10px; }
.kb-faq__item { background: linear-gradient(180deg, #1d140b, #120c07); border: 1px solid #4a3519; }
.kb-faq__item summary { list-style: none; display: flex; align-items: center; gap: 12px; padding: 13px 16px; cursor: pointer; font-size: 18px; font-weight: 500; color: #ffe7a8; }
.kb-faq__item summary::-webkit-details-marker { display: none; }
.kb-faq__item summary i { font: normal 700 20px var(--kb-head); color: var(--kb-gold); }
.kb-faq__item[open] summary { border-bottom: 1px solid var(--kb-line); }
.kb-faq__a { padding: 12px 16px 16px 42px; }
.kb-faq__a p { font-size: 17px; line-height: 1.6; color: #d8c9a8; }
.kb-related { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.kb-rel { display: flex; gap: 12px; align-items: center; padding: 12px; color: var(--kb-text) !important; text-decoration: none !important; }
.kb-rel:hover { border-color: #d19a35; }
.kb-rel span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.kb-rel b { font-size: 16px; font-weight: 500; line-height: 1.25; color: #ffe7a8; }
.kb-rel small { font-size: 13px; color: var(--kb-dim); }
.kb-prevnext { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.kb-prevnext a { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; color: var(--kb-text) !important; }
.kb-prevnext a:hover { border-color: #d19a35; }
.kb-prevnext small { font-size: 13px; color: var(--kb-dim); }
.kb-prevnext b { font-size: 16px; font-weight: 500; color: #ffe7a8; }
.kb-prevnext__next { text-align: right; grid-column: 2; }

/* ---------- Адаптив ---------- */
@media (max-width: 1240px) {
  .kb-layout { grid-template-columns: 250px minmax(0, 1fr); }
  .kb-aside { display: none; }
  .kb-toc--inline { display: block; }
}
@media (max-width: 900px) {
  .kb-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .kb-nav { position: static; max-height: none; order: 2; }
  .kb-article { order: 1; }
  .kb-wrap { padding: 0 14px; }
  .kb-head { min-height: 190px; }
  .kb-head__inner { padding: 18px; }
  .kb-body p, .kb-ul li, .kb-body ul.list-check li { font-size: 17px; }
  .kb-lead p { font-size: 18px; }
  .kb-quest { padding: 24px 20px; }
  .kb-body .content-gallery--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kb-journal__side { position: static; }
  .kb-search--big .kb-search__key { display: none; }
}
@media (max-width: 560px) {
  .kb-body .content-gallery--2, .kb-body .content-gallery--3 { grid-template-columns: 1fr; }
  .kb-prevnext { grid-template-columns: 1fr; }
  .kb-prevnext__next { grid-column: auto; }
  .kb-search--big .kb-search__field { height: 54px; }
  .kb-search--big .wow-btn { padding: 0 14px; }
  .wow-tt { max-width: 100%; }
}

/* ---------- Шапка сайта: эмблема бренда ---------- */
.nav-brand__emblem { width: 34px; height: 34px; flex: none; filter: drop-shadow(0 0 10px rgba(255,150,0,.35)); }
@media (min-width: 981px) {
  .navbar .container { max-width: 1440px; flex-wrap: nowrap; }
  .nav-menu a { padding: 10px 12px; letter-spacing: .16em; }
}

/* ==========================================================================
   Единый стиль главных страниц (WOW-180, правка 2): главная, «Скачать»,
   «Регистрация», «Подключение» и футер — те же фон, панели, шрифты и
   заголовки, что в Базе знаний. Переопределяет wowx5-theme.css.
   ========================================================================== */
body {
  background: radial-gradient(1200px 600px at 50% -10%, rgba(255,140,20,.10), transparent 60%), var(--kb-bg);
  background-attachment: scroll;
  color: var(--kb-text); font-family: var(--kb-sans); font-size: 17px;
}
.main-content:has(> .page-section:first-child), .main-content:has(> .hero:first-child) { padding-top: 0; }

/* Hero главной: игровой арт + затемнение как в шапке БЗ */
.hero { padding: 72px 0 88px; border-bottom: 1px solid #4a3519; }
.hero::before {
  background:
    linear-gradient(180deg, rgba(11,8,6,.30) 0%, rgba(11,8,6,.62) 70%, var(--kb-bg) 100%),
    linear-gradient(90deg, rgba(11,8,6,.88) 0%, rgba(11,8,6,.35) 45%, transparent 60%, rgba(11,8,6,.75) 100%),
    image-set(url("/assets/images/wow-classic-bg.webp") type("image/webp"), url("/assets/images/wow-classic-bg.jpg") type("image/jpeg")) center/cover no-repeat;
  background-color: var(--kb-bg);
}
.hero-title, .section-title, .cta-banner h3 {
  font-family: var(--kb-head); font-weight: 700; letter-spacing: 0;
  background: none; -webkit-text-fill-color: currentColor; filter: none;
  color: var(--kb-gold); text-wrap: balance;
}
.hero-title { font-size: clamp(40px, 5.2vw, 66px); line-height: 1.05; text-shadow: 0 3px 0 #000, 0 0 40px rgba(255,140,0,.35); }
.hero-subtitle, .section-subtitle { font-family: var(--kb-sans); font-size: 19px; line-height: 1.5; color: var(--kb-text); }
.hero-benefits li { font-family: var(--kb-sans); font-size: 17px; color: var(--kb-text); }
.hero-benefits li::before, .list-check li::before { background: var(--kb-gold-2); box-shadow: 0 0 6px rgba(255,150,0,.5); }

/* Надзаголовок «— ТЕКСТ —» вместо пилюль */
.hero-badge, .pill {
  display: inline-flex; align-items: center; gap: 12px; padding: 0; margin-bottom: 18px;
  background: none; border: 0; border-radius: 0;
  font-family: var(--kb-head); font-size: 15px; font-weight: 700; letter-spacing: .2em; color: var(--kb-ember);
}
.hero-badge::before, .pill::before, .pill::after { content: ""; width: 40px; height: 1px; border-radius: 0; background: #c9922e; box-shadow: none; }

/* Заголовки секций как «Разделы» в БЗ */
.section-title { font-size: clamp(30px, 3.4vw, 40px); line-height: 1.15; margin-bottom: 12px; text-shadow: 0 2px 0 #000; }
.section-header::after { content: "◆"; display: block; margin: 16px auto 0; max-width: 360px; font-size: 12px; line-height: 1; color: #c9922e;
  background: linear-gradient(90deg, transparent, var(--kb-edge-2) 30%, transparent 46%, transparent 54%, var(--kb-edge-2) 70%, transparent) center/100% 1px no-repeat; }

/* Hero внутренних страниц: фон-скриншот Штормграда, как в шапке БЗ */
.main-content > .page-section:first-child { position: relative; padding-top: 0; }
.main-content > .page-section:first-child::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 560px; pointer-events: none;
  background: linear-gradient(180deg, rgba(11,8,6,.5) 0%, rgba(11,8,6,.82) 62%, var(--kb-bg) 100%),
    url("/assets/images/kb-hero.jpg?v=2") center 35%/cover no-repeat;
  border-bottom: 0;
}
.main-content > .page-section:first-child > .container { position: relative; z-index: 1; }
.main-content > .page-section:first-child > .container > .section-header { padding-top: 64px; }
.page-section .section-title { font-size: clamp(34px, 4.6vw, 56px); line-height: 1.08; text-shadow: 0 3px 0 #000, 0 0 40px rgba(255,140,0,.35); }

/* Панели — как карточки разделов БЗ */
.feature-card, .step-card, .content-card, .card, .hero-card, .cta-banner {
  background: linear-gradient(180deg, var(--kb-panel-1), var(--kb-panel-2));
  border: 1px solid var(--kb-edge); border-radius: 0;
  box-shadow: 0 0 0 1px #000, inset 0 1px 0 rgba(255,210,130,.08), 0 8px 24px rgba(0,0,0,.45);
}
.feature-card:hover, .step-card:hover, .content-card:hover {
  transform: none; border-color: #d19a35;
  box-shadow: 0 0 0 1px #000, inset 0 1px 0 rgba(255,210,130,.12), 0 0 22px rgba(255,150,0,.2);
}
.feature-card::before { opacity: .45; }
.hero-card { background: linear-gradient(180deg, rgba(33,23,13,.92), rgba(20,14,8,.95)); }
.hero-card::after { opacity: .08; }
.cta-banner { background: radial-gradient(80% 120% at 0% 50%, rgba(255,140,20,.14), transparent), linear-gradient(180deg, var(--kb-panel-1), var(--kb-panel-2)); }
.cta-banner h3 { font-size: 32px; text-shadow: 0 2px 0 #000; }
.cta-banner p { font-family: var(--kb-sans); font-size: 17px; color: var(--kb-text-2); }

.feature-title, .feature-card h3, .step-card h3, .content-card h3, .card h3, .hero-card h3 {
  font-family: var(--kb-head); font-size: 21px; font-weight: 700; letter-spacing: 0; text-transform: none;
  color: var(--kb-gold); text-shadow: 0 1px 0 #000;
}
.content-card h3, .hero-card h3 { border-bottom-color: var(--kb-line); }
.feature-copy, .feature-card p, .step-card p, .content-card p, .card p, .list-check li {
  font-family: var(--kb-sans); font-size: 16px; line-height: 1.5; color: var(--kb-text-2);
}
.list-check li { border-bottom-color: var(--kb-line); }
.content-card a, .card p a { color: var(--kb-gold-2); }

/* Иконки фич — игровые иконки вместо эмодзи */
.feature-icon { width: auto; height: auto; background: none; box-shadow: none; border-radius: 0; display: block; margin-bottom: 16px; font-size: 0; }
.feature-icon .wow-ico { display: block; }
.step-number { color: #2b1200; background: linear-gradient(180deg, #ffe58f 0%, #ffbb2e 40%, #f08a0e 60%, #c4600a 100%); box-shadow: 0 0 0 1px #3a1a00, 0 0 0 3px #1a1006, 0 0 0 4px #d19a35, 0 4px 14px rgba(255,140,0,.3); font-family: var(--kb-head); }

/* Статы, подписи, поля */
.stat-grid, .stats-section { background: var(--kb-line); border-color: var(--kb-edge); }
.stat-card, .stats-card-alt { background: rgba(0,0,0,.35); }
.stat-label, .stats-card-alt h3, .realmlist-card label, .label {
  font-family: var(--kb-head); font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--kb-muted);
}
.label { color: var(--kb-gold-2); }
.stat-value, .stats-card-alt .value { font-family: var(--kb-head); color: var(--kb-gold); text-shadow: 0 2px 0 #000, 0 0 18px rgba(255,140,0,.3); }
.stat-note, .stats-card-alt p { font-family: var(--kb-sans); font-size: 14px; color: var(--kb-muted); }
.input, .realmlist-input {
  background: #0d0906; border: 1px solid var(--kb-edge); border-radius: 0; color: var(--kb-text);
  box-shadow: inset 0 2px 6px rgba(0,0,0,.6);
}
.input { font-family: var(--kb-sans); font-size: 17px; }
.realmlist-input { color: var(--kb-gold-2); }
.input:focus, .realmlist-input:focus { border-color: #d19a35; box-shadow: inset 0 2px 6px rgba(0,0,0,.6), 0 0 0 1px #d19a35, 0 0 16px rgba(255,150,0,.2); }
.copy-btn {
  font-family: var(--kb-head); font-size: 15px; letter-spacing: .03em; text-transform: none; border-radius: 4px;
  color: #2b1200; text-shadow: 0 1px 0 rgba(255,236,190,.7);
  background: linear-gradient(180deg, #ffe58f 0%, #ffbb2e 40%, #f08a0e 60%, #c4600a 100%);
  border: 1px solid #3a1a00; box-shadow: inset 0 1px 0 rgba(255,255,255,.65), inset 0 -2px 0 rgba(110,40,0,.45), 0 0 0 1px #d19a35;
}
.copy-btn:hover { filter: brightness(1.1); }
.text-muted-foreground { color: var(--kb-muted); }

/* Футер в палитре БЗ */
footer {
  background: linear-gradient(180deg, #120c07, #070504) !important;
  border-top: 1px solid #4a3519 !important; color: var(--kb-muted);
}
footer h3 { font-family: var(--kb-head) !important; font-size: 15px !important; letter-spacing: .16em; color: var(--kb-gold-2) !important; }
footer p, footer .text-muted-foreground { color: var(--kb-muted); font-family: var(--kb-sans); }
footer a.text-muted-foreground { color: var(--kb-text-2); }
footer a:hover { color: var(--kb-gold) !important; }
footer .bg-background { background: #0d0906; border-color: var(--kb-edge) !important; color: var(--kb-gold-2); }
@media (max-width: 760px) {
  .main-content > .page-section:first-child > .container > .section-header { padding-top: 40px; }
  .cta-banner { padding: 28px 22px; }
}
.card.content-card { padding: 30px 32px; }
footer .text-sm, footer p, footer li { font-size: 15px; }
.realmlist-input { min-width: 0; width: 100%; }
