/* =============================================================================
   Forum BackLinksBulgaria — dark brand shell (match main BLB)
   Comfortaa + Manrope · #0B0F1F · #0376EA · #03D87D
   ============================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Comfortaa:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --ink: #0B0F1F;
  --ink-2: #12182c;
  --ink-3: #1a2238;
  --panel: #141b30;
  --panel-2: #1a233a;
  --line: rgba(255,255,255,0.08);
  --line-2: rgba(255,255,255,0.14);
  --text: #eef2ff;
  --mute: #9aa6c1;
  --mute-2: #6f7c99;
  --blue: #0376EA;
  --blue-2: #3ea0ff;
  --blue-dark: #025CB7;
  --green: #03D87D;
  --radius: 14px;
  --font: "Manrope", "Segoe UI", sans-serif;
  --display: "Comfortaa", "Manrope", sans-serif;
  --max: 1240px;
  --side: 250px;
  --glow: 0 0 0 1px rgba(62,160,255,0.12), 0 18px 50px rgba(0,0,0,0.35);
}

html { scroll-behavior: smooth; }

body.site.blb-forum {
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--font) !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  color: var(--text) !important;
  background:
    radial-gradient(900px 480px at 12% -8%, rgba(3,118,234,0.22), transparent 55%),
    radial-gradient(700px 420px at 92% 0%, rgba(3,216,125,0.10), transparent 50%),
    radial-gradient(600px 400px at 50% 100%, rgba(3,118,234,0.08), transparent 55%),
    linear-gradient(180deg, #070a14 0%, var(--ink) 40%, #0a1020 100%) !important;
  background-color: var(--ink) !important;
  border-top: 0 !important;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

/* subtle network dots */
body.site.blb-forum::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.35;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,0.55) 1px, transparent 1.5px),
    radial-gradient(circle at 28% 42%, rgba(255,255,255,0.35) 1px, transparent 1.5px),
    radial-gradient(circle at 72% 22%, rgba(255,255,255,0.45) 1px, transparent 1.5px),
    radial-gradient(circle at 88% 58%, rgba(255,255,255,0.3) 1px, transparent 1.5px),
    radial-gradient(circle at 48% 78%, rgba(255,255,255,0.25) 1px, transparent 1.5px);
  background-size: 100% 100%;
}

body.site a {
  color: var(--blue-2);
  text-decoration: none !important;
  transition: color .15s ease, background .15s ease, border-color .15s ease, opacity .15s ease;
}
body.site a:hover { color: #fff; }

.body {
  position: relative;
  z-index: 1;
  padding: 0 0 64px !important;
  background: transparent !important;
  background-color: transparent !important;
}
body.site.blb-forum .body .container,
.body > .container {
  max-width: var(--max) !important;
  width: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* ---- Header ---- */
.header {
  position: relative;
  z-index: 2;
  background: transparent !important;
  color: #fff !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  width: 100% !important;
  box-shadow: none !important;
}

.header .header-inner {
  max-width: var(--max);
  margin: 0 auto;
  padding: 28px 20px 8px !important;
  display: grid !important;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "brand links"
    "tag tag";
  gap: 10px 24px;
  align-items: center;
  float: none !important;
}

.header a.brand {
  grid-area: brand;
  float: none !important;
  display: flex !important;
  align-items: center;
  gap: 14px;
  margin: 0 !important;
  color: #fff !important;
}

.brand-logo {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  filter: drop-shadow(0 6px 18px rgba(3,118,234,0.35));
}

.brand-text { display: flex; flex-direction: column; gap: 2px; line-height: 1.05; }

.brand-kicker {
  font-family: var(--font);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--green);
}

.header .site-title,
.header a.brand .site-title {
  font-family: var(--display) !important;
  font-weight: 700 !important;
  font-size: clamp(24px, 3vw, 32px) !important;
  letter-spacing: -0.02em !important;
  line-height: 1.1 !important;
  color: #fff !important;
  text-shadow: none !important;
}

.brand-accent { color: #fff; }

.header .brand-tagline {
  grid-area: tag;
  margin: 0 !important;
  max-width: 36rem;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--mute) !important;
  line-height: 1.45 !important;
}

.brand-links {
  grid-area: links;
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}
.brand-links a {
  display: inline-flex;
  align-items: center;
  height: 36px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--line-2);
  background: rgba(255,255,255,0.04);
  color: var(--text) !important;
  font-size: 12.5px;
  font-weight: 700;
}
.brand-links a:hover {
  border-color: rgba(62,160,255,0.45);
  background: rgba(3,118,234,0.18);
  color: #fff !important;
}
.brand-links a:last-child {
  background: linear-gradient(135deg, var(--blue), #0294d8);
  border-color: transparent;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(3,118,234,0.35);
}
.brand-links a:last-child:hover {
  filter: brightness(1.08);
}

.header .header-search,
.navigation,
#navigation,
.breadcrumb,
#kunena > .navbar,
#kunena .navbar.navbar-default,
#kunena .knav-collapse,
#kunena a#klogin,
#kunena li.mobile-user,
a[href*="kunena.org"],
#kunena .kfooter,
#kunena .credits,
#kunena .poweredby,
#kunena footer {
  display: none !important;
}

/* Kill Kunena "Powered by" even with inline !important visibility */
body.site.blb-forum a[href*="kunena.org"],
body.site.blb-forum a[href*="credits.html"] {
  display: none !important;
  visibility: hidden !important;
  font-size: 0 !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* ---- Layout ---- */
.body .row-fluid {
  display: flex !important;
  flex-wrap: wrap;
  gap: 18px;
  margin: 22px 0 0 !important;
  align-items: flex-start;
}

#content.span9,
main#content {
  float: none !important;
  width: auto !important;
  flex: 1 1 0;
  min-width: 0;
  margin: 0 !important;
  padding: 8px 4px 12px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

#aside.span3 {
  float: none !important;
  width: var(--side) !important;
  flex: 0 0 var(--side);
  margin: 0 !important;
  padding: 0 !important;
}

#kunena {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.view-topics #kunena > .row,
#kunena .kfrontstats { display: none !important; }

/* ---- Note ---- */
.blb-note {
  margin: 0 0 18px !important;
  padding: 16px 18px !important;
  background: linear-gradient(135deg, rgba(3,118,234,0.22), rgba(20,27,48,0.92) 55%, rgba(3,216,125,0.10)) !important;
  border: 1px solid rgba(62,160,255,0.28) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--glow) !important;
  backdrop-filter: blur(8px);
}

.blb-note__eyebrow {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--blue-2);
  margin-bottom: 4px;
}

.blb-note__title {
  font-family: var(--font) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  margin: 0 0 6px !important;
  letter-spacing: -0.02em !important;
  color: #fff !important;
}
.blb-note__title a { color: #fff !important; }
.blb-note__title a:hover { color: var(--blue-2) !important; }

.blb-note__text,
.blb-note p {
  margin: 0 !important;
  color: var(--mute) !important;
  font-size: 13.5px !important;
  max-width: 46rem;
}

.blb-note__more {
  display: inline-block;
  margin-top: 10px;
  font-size: 13px;
  font-weight: 700;
  color: var(--green) !important;
}

/* ---- Topics panel ---- */
.blb-topics-shell {
  background: rgba(20, 27, 48, 0.72);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: var(--glow);
  padding: 4px 6px 8px;
  backdrop-filter: blur(10px);
  width: 100%;
  box-sizing: border-box;
}

.blb-topics-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 14px 12px 14px;
  border-bottom: 1px solid var(--line);
}

.blb-topics-head__title {
  display: flex;
  align-items: baseline;
  gap: 10px;
}

.blb-topics-head h1 {
  font-family: var(--display) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  margin: 0 !important;
  color: #fff !important;
}

.blb-topics-head__count {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--mute-2);
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--line);
}

.blb-topics-head__tools {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
  max-width: 100%;
}

#kunena select,
#kunena .form-control,
#kunena input[type="text"],
.blb-filter select {
  font-family: var(--font) !important;
  font-size: 13px !important;
  height: 38px !important;
  border: 1px solid var(--line-2) !important;
  border-radius: 11px !important;
  background: rgba(7,10,20,0.55) !important;
  color: var(--text) !important;
  box-shadow: none !important;
  padding: 0 12px !important;
}

#kunena form.form-search {
  margin: 0 !important;
  float: none !important;
}
#kunena form.form-search.pull-right { float: none !important; }
#kunena form.form-search .search {
  display: flex !important;
  flex-direction: row;
  gap: 6px;
  align-items: center;
}
#kunena form.form-search input[type="text"],
#kunena form.form-search .form-control {
  order: 1;
  width: 132px !important;
  min-width: 132px !important;
  max-width: 160px !important;
}
#kunena form.form-search .btn {
  order: 2;
  background: linear-gradient(135deg, var(--blue), #0294d8) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 11px !important;
  height: 38px !important;
  min-width: 76px;
  padding: 0 14px !important;
  font-size: 0 !important;
  line-height: 38px !important;
  box-shadow: 0 8px 18px rgba(3,118,234,0.28) !important;
}
#kunena form.form-search .btn .glyphicon {
  display: none !important;
  font-size: 0 !important;
}
#kunena form.form-search .btn::after {
  content: "Търси";
  font-family: var(--font);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #fff;
}

/* ---- Topic cards — 2-column grid fills the shell ---- */
.blb-topics-form {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  display: block !important;
  float: none !important;
  clear: both !important;
}

.blb-topics,
#kunena .blb-topics,
#kunena #recent-list.blb-topics {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
  margin: 0 !important;
  padding: 8px !important;
  background: transparent !important;
}

.blb-topic,
#kunena .blb-topic {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 12px 12px 11px !important;
  border: 1px solid var(--cat-line, var(--line)) !important;
  border-bottom: 1px solid var(--cat-line, var(--line)) !important;
  float: none !important;
  clear: none !important;
  border-radius: 12px !important;
  background:
    linear-gradient(180deg, var(--cat-wash, transparent), transparent 42%),
    rgba(7, 10, 20, 0.45) !important;
  box-shadow: inset 3px 0 0 0 var(--cat-accent, rgba(62,160,255,0.35)) !important;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.blb-topic:hover {
  background:
    linear-gradient(180deg, var(--cat-wash-strong, rgba(3,118,234,0.10)), transparent 55%),
    rgba(3,118,234,0.10) !important;
  border-color: var(--cat-line-strong, rgba(62,160,255,0.28)) !important;
  box-shadow: inset 3px 0 0 0 var(--cat-accent-strong, rgba(62,160,255,0.65)) !important;
}

/* Premium category tint — very light frame + left accent */
.blb-topic--bijuta-i-podaraci {
  --cat-accent: rgba(212, 168, 75, 0.55);
  --cat-accent-strong: rgba(232, 190, 96, 0.85);
  --cat-line: rgba(212, 168, 75, 0.22);
  --cat-line-strong: rgba(212, 168, 75, 0.40);
  --cat-wash: rgba(212, 168, 75, 0.06);
  --cat-wash-strong: rgba(212, 168, 75, 0.10);
}
.blb-topic--elektronika-razvlecheniya {
  --cat-accent: rgba(56, 189, 248, 0.55);
  --cat-accent-strong: rgba(56, 189, 248, 0.85);
  --cat-line: rgba(56, 189, 248, 0.20);
  --cat-line-strong: rgba(56, 189, 248, 0.38);
  --cat-wash: rgba(56, 189, 248, 0.06);
  --cat-wash-strong: rgba(56, 189, 248, 0.10);
}
.blb-topic--ueb-i-marketing {
  --cat-accent: rgba(3, 118, 234, 0.60);
  --cat-accent-strong: rgba(62, 160, 255, 0.90);
  --cat-line: rgba(3, 118, 234, 0.24);
  --cat-line-strong: rgba(62, 160, 255, 0.42);
  --cat-wash: rgba(3, 118, 234, 0.07);
  --cat-wash-strong: rgba(3, 118, 234, 0.12);
}
.blb-topic--b2b-industriya {
  --cat-accent: rgba(148, 163, 184, 0.55);
  --cat-accent-strong: rgba(203, 213, 225, 0.80);
  --cat-line: rgba(148, 163, 184, 0.22);
  --cat-line-strong: rgba(148, 163, 184, 0.40);
  --cat-wash: rgba(148, 163, 184, 0.06);
  --cat-wash-strong: rgba(148, 163, 184, 0.10);
}
.blb-topic--gradina-i-instrumenti {
  --cat-accent: rgba(3, 216, 125, 0.55);
  --cat-accent-strong: rgba(52, 232, 158, 0.85);
  --cat-line: rgba(3, 216, 125, 0.22);
  --cat-line-strong: rgba(3, 216, 125, 0.40);
  --cat-wash: rgba(3, 216, 125, 0.06);
  --cat-wash-strong: rgba(3, 216, 125, 0.10);
}
.blb-topic--avto-i-akumulatori {
  --cat-accent: rgba(251, 146, 60, 0.55);
  --cat-accent-strong: rgba(251, 146, 60, 0.85);
  --cat-line: rgba(251, 146, 60, 0.22);
  --cat-line-strong: rgba(251, 146, 60, 0.40);
  --cat-wash: rgba(251, 146, 60, 0.06);
  --cat-wash-strong: rgba(251, 146, 60, 0.10);
}
.blb-topic--dom-i-stroitelstvo {
  --cat-accent: rgba(196, 140, 102, 0.55);
  --cat-accent-strong: rgba(214, 162, 122, 0.85);
  --cat-line: rgba(196, 140, 102, 0.22);
  --cat-line-strong: rgba(196, 140, 102, 0.40);
  --cat-wash: rgba(196, 140, 102, 0.06);
  --cat-wash-strong: rgba(196, 140, 102, 0.10);
}
.blb-topic > * { float: none !important; min-width: 0 !important; }

.blb-topic__avatar {
  width: 36px !important;
  height: 36px !important;
  flex: 0 0 36px;
  margin-top: 1px;
}
.blb-topic__avatar img,
.blb-avatar-fallback {
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  object-fit: cover;
  display: flex !important;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(62,160,255,0.25);
}
.blb-avatar-fallback {
  background: linear-gradient(145deg, #0376EA, #03a8b8 55%, #03D87D);
  color: #fff;
  font-family: var(--font);
  font-weight: 800;
  font-size: 13px;
  box-shadow: 0 6px 16px rgba(3,118,234,0.28);
}

.blb-topic__main {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  width: auto;
}

.blb-topic__title-row {
  display: block;
  width: 100%;
}

.blb-topic__title,
.blb-topic a.blb-topic__title {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  white-space: normal !important;
  text-overflow: ellipsis !important;
  word-break: break-word !important;
  float: none !important;
  font-family: var(--font) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
  line-height: 1.35 !important;
  color: #fff !important;
  max-width: 100% !important;
  width: 100% !important;
  min-height: 2.7em;
}
.blb-topic a.blb-topic__title:hover { color: var(--blue-2) !important; }

.blb-topic__meta {
  margin-top: 6px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 6px;
  font-size: 11.5px;
  color: var(--mute);
  line-height: 1.3;
  width: 100%;
}

.blb-topic__cat {
  display: inline-block !important;
  background: rgba(3,118,234,0.18) !important;
  color: #9fd0ff !important;
  border: 1px solid rgba(62,160,255,0.28) !important;
  border-radius: 999px !important;
  padding: 1px 7px !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.blb-topic__cat:hover {
  background: rgba(3,118,234,0.28) !important;
  color: #fff !important;
}

.blb-dot { color: var(--mute-2); }

.blb-topic__who a {
  color: var(--mute) !important;
  font-weight: 600;
}
.blb-topic__who a:hover { color: #fff !important; }

.blb-topic__foot {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--line);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 6px 10px;
}

.blb-topic__inline-stats {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--mute-2);
  font-size: 11px;
  font-weight: 600;
}
.blb-istat b {
  color: #dce6ff;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: -0.02em;
}

.blb-topic__last-inline {
  color: var(--mute-2);
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 55%;
}
.blb-topic__last-inline a {
  color: #d7e4ff !important;
  font-weight: 600;
}
.blb-topic__last-inline time {
  color: var(--mute-2);
}

/* legacy right-rail (cached markup) */
.blb-topic__last,
.blb-topic__rail,
.blb-topic__sep { display: none !important; }

.blb-pager { margin-top: 14px; padding: 0 8px 6px; }
#kunena .pagination {
  display: flex !important;
  gap: 4px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: transparent !important;
  border: 0 !important;
}
#kunena .pagination li > a.disabled { display: none !important; }
#kunena .pagination li > a,
#kunena .pagination li > span {
  min-width: 34px;
  height: 34px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line-2) !important;
  background: rgba(255,255,255,0.03) !important;
  color: var(--text) !important;
  border-radius: 10px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  padding: 0 10px !important;
}
#kunena .pagination li.active > a,
#kunena .pagination li.active > span {
  background: var(--blue) !important;
  border-color: var(--blue) !important;
  color: #fff !important;
}
#kunena nav.visible-xs-block { display: none !important; }

/* ---- Sidebar ---- */
#aside .well,
#aside .moduletable {
  background: rgba(20, 27, 48, 0.78) !important;
  border: 1px solid var(--line) !important;
  box-shadow: var(--glow) !important;
  border-radius: 18px !important;
  padding: 16px 14px !important;
  margin: 0 0 14px !important;
  backdrop-filter: blur(10px);
}

#aside .well h3,
#aside .page-header,
#aside h3 {
  font-family: var(--font) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--mute) !important;
  border: 0 !important;
  padding: 0 0 12px !important;
  margin: 0 0 4px !important;
  background: transparent !important;
}

#aside ul.nav.menu {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  float: none !important;
}
#aside ul.nav.menu > li {
  float: none !important;
  display: block !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
#aside ul.nav.menu > li > a {
  display: block !important;
  float: none !important;
  padding: 10px 12px !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: #d5def5 !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  text-shadow: none !important;
  box-shadow: none !important;
}
#aside ul.nav.menu > li > a:hover {
  background: rgba(3,118,234,0.16) !important;
  color: #fff !important;
}
#aside ul.nav.menu > li.active > a,
#aside ul.nav.menu > li.current > a {
  background: linear-gradient(135deg, rgba(3,118,234,0.95), rgba(2,148,216,0.9)) !important;
  color: #fff !important;
  font-weight: 700 !important;
  box-shadow: 0 8px 20px rgba(3,118,234,0.28) !important;
}

/* Login */
#login-form .input-prepend {
  display: block !important;
  width: 100% !important;
  margin: 0 0 12px !important;
}
#login-form .input-prepend .add-on { display: none !important; }
#login-form input[type="text"],
#login-form input[type="password"] {
  width: 100% !important;
  height: 42px !important;
  border: 1px solid var(--line-2) !important;
  border-radius: 11px !important;
  background: rgba(7,10,20,0.65) !important;
  box-shadow: none !important;
  padding: 0 12px !important;
  font-family: var(--font) !important;
  font-size: 14px !important;
  color: var(--text) !important;
}
#login-form input::placeholder { color: var(--mute-2); }
#login-form input:focus {
  border-color: rgba(62,160,255,0.55) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(3,118,234,0.22) !important;
}
#login-form label,
#modlgn-remember + label,
#login-form .control-group {
  color: var(--mute) !important;
  font-size: 12.5px !important;
}
#login-form .btn,
#form-login-submit .btn {
  width: 100%;
  margin-top: 6px;
  background: linear-gradient(135deg, var(--blue), #0294d8) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 11px !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 12px 16px !important;
  box-shadow: 0 10px 24px rgba(3,118,234,0.32) !important;
}
#login-form .btn:hover { filter: brightness(1.08); }
#login-form ul {
  list-style: none !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
}
#login-form ul a {
  font-size: 12px;
  color: var(--mute) !important;
}
#login-form ul a:hover { color: var(--blue-2) !important; }

.btn, .btn-primary, .btn-default {
  font-family: var(--font) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
  text-shadow: none !important;
  background-image: none !important;
}

.footer {
  position: relative;
  z-index: 1;
  background: transparent !important;
  color: var(--mute-2) !important;
  margin: 0 !important;
  padding: 8px 0 36px !important;
  border: 0 !important;
  font-size: 12.5px !important;
}
.footer .container,
.footer-inner {
  max-width: var(--max) !important;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}
.footer hr { display: none !important; }
.footer a,
.footer-site { color: var(--blue-2) !important; }
.footer-copy { margin: 0; }

#kunena h1, #kunena h2, #kunena h3 {
  font-family: var(--font) !important;
  color: #fff !important;
}

/* ---- Topic view (posts) ---- */
/* Topic view: hide site-wide note (saves space above posts) */
body.view-topic .blb-note {
  display: none !important;
}

body.view-topic #kunena form.form-search,
body.view-topic #kunena h2.pull-right,
body.view-topic .profilebox .topic-moderator,
body.view-topic .profile-expand,
body.view-topic .badger-left:before,
body.view-topic .badger-left:after {
  display: none !important;
}

.blb-topic-view {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.blb-topic-view__head {
  background: rgba(20, 27, 48, 0.72);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: var(--glow);
  padding: 18px 20px;
  backdrop-filter: blur(10px);
}

.blb-topic-view__cat {
  margin: 0 0 8px !important;
}
.blb-topic-view__cat a {
  display: inline-block;
  font-size: 11.5px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(3,118,234,0.18);
  border: 1px solid rgba(62,160,255,0.28);
  color: #9fd0ff !important;
}

.blb-topic-view__title {
  font-family: var(--display) !important;
  font-size: clamp(22px, 2.6vw, 28px) !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.25 !important;
  margin: 0 !important;
  color: #fff !important;
}

.blb-topic-view__actions {
  margin-top: 12px;
}
.blb-topic-view__actions .btn-toolbar {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  float: none !important;
}
.blb-topic-view__actions .btn {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--line-2) !important;
  color: var(--text) !important;
  border-radius: 10px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  text-shadow: none !important;
  box-shadow: none !important;
  margin: 0 6px 6px 0 !important;
}
.blb-topic-view__actions .btn:hover {
  background: rgba(3,118,234,0.2) !important;
  border-color: rgba(62,160,255,0.4) !important;
  color: #fff !important;
}

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

.blb-post {
  display: block !important;
  margin: 0 !important;
  padding: 16px 18px 18px !important;
  background: rgba(20, 27, 48, 0.78) !important;
  border: 1px solid var(--line) !important;
  border-radius: 16px !important;
  box-shadow: var(--glow);
  float: none !important;
  width: auto !important;
}

.blb-post__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

.blb-post__avatar {
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px;
}
.blb-post__avatar img,
.blb-post__avatar .blb-avatar-fallback {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  object-fit: cover;
  display: flex !important;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(62,160,255,0.25);
}
.blb-post__avatar .blb-avatar-fallback {
  background: linear-gradient(145deg, #0376EA, #03a8b8 55%, #03D87D);
  color: #fff;
  font-weight: 800;
  font-size: 15px;
}

.blb-post__who { min-width: 0; flex: 1; }
.blb-post__name {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  color: #fff;
}
.blb-post__name a { color: #fff !important; }
.blb-post__name a:hover { color: var(--blue-2) !important; }

.blb-post__badge {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(3,216,125,0.15);
  color: var(--green);
  border: 1px solid rgba(3,216,125,0.3);
}
.blb-post__badge--mod {
  background: rgba(3,118,234,0.18);
  color: #9fd0ff;
  border-color: rgba(62,160,255,0.3);
}

.blb-post__when {
  margin-top: 2px;
  font-size: 12.5px;
  color: var(--mute);
  display: flex;
  gap: 10px;
  align-items: center;
}
.blb-post__anchor {
  color: var(--mute-2) !important;
  font-weight: 700;
}
.blb-post__anchor:hover { color: var(--blue-2) !important; }

.blb-post__body,
.blb-post .kmessage,
.blb-post .kmsg,
.blb-post .badger-left,
.blb-post .badger-info {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: var(--text) !important;
  float: none !important;
}

.blb-post .kmsg {
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: #dce5f8 !important;
}
.blb-post .kmsg h1,
.blb-post .kmsg h2,
.blb-post .kmsg h3,
.blb-post .kmsg h4 {
  font-family: var(--font) !important;
  color: #fff !important;
  margin: 0 0 10px !important;
  font-size: 17px !important;
  font-weight: 800 !important;
}
.blb-post .kmsg p { margin: 0 0 12px !important; }
.blb-post .kmsg a { color: var(--blue-2) !important; }
.blb-post .kmsg a:hover { color: #fff !important; }

.blb-post .text-muted,
.blb-post small.text-muted {
  display: none !important;
}

.blb-post__foot {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.blb-post__foot .kreplymessage,
.blb-post__foot .btn-toolbar {
  margin: 0 !important;
}
.blb-post__foot .btn,
.blb-post__foot a.btn {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid var(--line-2) !important;
  color: var(--mute) !important;
  border-radius: 9px !important;
  font-size: 12px !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
.blb-post__foot > p,
.blb-post__foot .kreplymessage:empty {
  display: none !important;
}
body.view-topic .blb-login-once {
  margin-top: 4px;
  padding: 14px 16px;
  background: rgba(20, 27, 48, 0.55);
  border: 1px dashed rgba(62,160,255,0.28);
  border-radius: 14px;
  color: var(--mute);
  font-size: 13.5px;
}
body.view-topic .blb-login-once a {
  color: var(--blue-2) !important;
  font-weight: 700;
}

.blb-post__edited,
.blb-post .ksig,
.blb-post .kmessage-thankyou {
  margin-top: 12px;
  font-size: 12.5px;
  color: var(--mute);
}

/* Guest login prompt */
#kunena .kreply-form,
body.view-topic #kunena > .row > [class*="col"] > p,
#kunena p.klogin-msg,
#kunena .kmsg-header {
  color: var(--mute) !important;
}
body.view-topic #kunena .well,
body.view-topic #kunena .alert {
  background: rgba(20,27,48,0.7) !important;
  border: 1px solid var(--line) !important;
  color: var(--text) !important;
  border-radius: 12px !important;
}

/* Hide leftover Kunena chrome in topic */
body.view-topic #kunena .row.message:not(.blb-post) > .col-md-2 {
  display: none !important;
}

#kunena .blb-topics {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
#kunena .blb-topics-shell .blb-topics-head { border-bottom: 1px solid var(--line); }

@media (max-width: 979px) {
  .header .header-inner {
    grid-template-columns: 1fr;
    grid-template-areas: "brand" "links" "tag";
  }
  .brand-links { justify-content: flex-start; }
  .body .row-fluid { flex-direction: column; gap: 14px; }
  #aside.span3 { width: 100% !important; flex-basis: auto; order: 2; }
  #content.span9 { order: 1; }
  .blb-topics-head { flex-direction: column; align-items: flex-start; }
  .blb-topics,
  #kunena .blb-topics,
  #kunena #recent-list.blb-topics {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .body > .container { padding-left: 14px !important; padding-right: 14px !important; }
  .blb-topic__last-inline { max-width: 100%; }
  .brand-logo { width: 44px; height: 44px; flex-basis: 44px; }
}
