@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=PT+Mono&family=PT+Serif:wght@400;700&display=swap&subset=cyrillic");

:root {
  --itmk-red: #e4222e;
  --itmk-red-hover: #c41a26;
  --itmk-red-soft: rgba(228, 34, 46, 0.08);
  --itmk-slate: #4d6786;
  --itmk-slate-soft: rgba(77, 103, 134, 0.1);
  --itmk-navy: #29333d;
  --itmk-ink: #111a24;
  --itmk-teal: #79b9cf;
  --itmk-success: #75b200;
  --itmk-warning: #f05a24;
  --itmk-surface-app: #f5f6f8;
  --itmk-surface-card: #ffffff;
  --itmk-surface-sunken: #eef1f5;
  --itmk-border: #e5e8ec;
  --itmk-muted: #6c757d;
  --itmk-serif: "PT Serif", Georgia, "Times New Roman", serif;
  --itmk-shadow-hover: 0 4px 12px rgba(16, 27, 30, 0.08);
  --itmk-radius-lg: 1.5rem;
  --itmk-radius-md: 1rem;
  --itmk-radius-pill: 2rem;
}

[data-bs-theme="dark"] {
  --itmk-surface-app: #161616;
  --itmk-surface-card: #101010;
  --itmk-surface-sunken: #1a1a1a;
  --itmk-border: rgba(255, 255, 255, 0.12);
  --itmk-muted: rgba(224, 224, 224, 0.68);
}

body {
  background: var(--itmk-surface-app);
  color: var(--bs-body-color);
}

#content.site-content {
  max-width: 1460px;
}

#masthead {
  background: var(--itmk-surface-card);
  border-bottom: 1px solid var(--itmk-border);
}

[data-bs-theme="dark"] #masthead {
  background: var(--itmk-red);
  border-bottom-color: var(--itmk-red);
}

#nav-main .container-fluid {
  gap: 0.5rem;
}

.navbar-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  text-decoration: none;
}

.navbar-brand img {
  width: 34px;
  height: auto;
  margin-right: 0 !important;
}

.navbar-brand-text {
  color: var(--itmk-red);
  font-family: var(--itmk-serif);
  font-size: 1.625rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

[data-bs-theme="dark"] .navbar-brand-text {
  color: #fff;
}

.io-navbar .navbar-nav .nav-link {
  border-bottom: 2px solid transparent;
  border-radius: 0.5rem 0.5rem 0 0;
  color: var(--bs-body-color);
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0.5rem 0.7rem;
  text-decoration: none;
}

.io-navbar .navbar-nav .current-menu-item > .nav-link,
.io-navbar .navbar-nav .nav-link:hover {
  border-bottom-color: var(--itmk-red);
  color: var(--itmk-red);
}

.header-actions .btn,
.sidebar-toggle {
  border-radius: 50%;
}

#offcanvasExample {
  background: var(--itmk-surface-card);
  border-right: 1px solid var(--itmk-border);
}

#offcanvasExample .offcanvas-body {
  padding: 1.5rem 1.25rem;
}

.sidebar-nav {
  gap: 0.125rem;
}

.sidebar-nav .nav-link,
#offcanvasExample .menu-item > a {
  align-items: center;
  border-radius: 0.5rem;
  color: var(--bs-body-color);
  display: flex;
  font-size: 0.92rem;
  font-weight: 500;
  gap: 0.75rem;
  padding: 0.6rem 0.85rem;
  text-decoration: none;
}

.sidebar-nav .current-menu-item > .nav-link,
.sidebar-nav .nav-link:hover,
#offcanvasExample .menu-item > a:hover {
  background: var(--itmk-surface-sunken);
  color: var(--itmk-slate);
}

aside#secondary {
  background: var(--itmk-surface-card);
  border-color: var(--itmk-border);
  border-radius: var(--itmk-radius-lg);
}

aside#secondary .widget,
aside#secondary section {
  border-bottom: 1px solid var(--itmk-border);
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}

aside#secondary .widget:last-child,
aside#secondary section:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

aside#secondary .widget-title,
aside#secondary h2,
aside#secondary h3 {
  color: var(--bs-heading-color);
  font-size: 0.95rem;
  font-weight: 600;
}

.community-feed-toolbar .content-filter-bar {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.community-feed-toolbar .filter-buttons {
  gap: 0.5rem !important;
}

.community-feed-toolbar .filter-btn {
  align-items: center;
  background: var(--itmk-surface-card);
  border: 1px solid var(--itmk-border);
  border-radius: var(--itmk-radius-pill);
  box-shadow: none;
  color: var(--bs-body-color);
  display: inline-flex;
  font-size: 0.84rem;
  font-weight: 600;
  gap: 0.4rem;
  line-height: 1.2;
  padding: 0.48rem 0.95rem;
}

.community-feed-toolbar .filter-btn:hover {
  background: var(--itmk-surface-sunken);
  border-color: var(--itmk-border);
  color: var(--itmk-slate);
}

.community-feed-toolbar .filter-btn.active {
  background: var(--itmk-red);
  border-color: var(--itmk-red);
  color: #fff;
}

.community-filter-separator {
  background: var(--itmk-border);
  display: inline-block;
  height: 22px;
  margin: 0 0.25rem;
  width: 1px;
}

.community-filter-context {
  color: var(--itmk-muted);
  font-size: 0.82rem;
  margin-right: auto;
}

.new-topic-cta {
  align-items: center;
  background: var(--itmk-red-soft);
  border: 1px solid rgba(228, 34, 46, 0.32);
  border-radius: var(--itmk-radius-pill);
  color: var(--itmk-red);
  display: inline-flex;
  font-size: 0.84rem;
  font-weight: 700;
  gap: 0.45rem;
  padding: 0.48rem 1rem;
  text-decoration: none;
}

.new-topic-cta:hover {
  background: var(--itmk-red);
  border-color: var(--itmk-red);
  color: #fff;
}

.post-card {
  background: var(--itmk-surface-card);
  border: 1px solid var(--itmk-border);
  border-radius: var(--itmk-radius-lg);
  box-shadow: none;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.post-card:hover {
  border-color: rgba(77, 103, 134, 0.25);
  box-shadow: var(--itmk-shadow-hover);
}

.post-card--sticky,
.post-card--editorial {
  border-left-color: var(--itmk-slate);
}

.post-card--forum {
  border-inline-start: 0;
  display: flex;
  gap: 0.75rem;
  padding: 1rem 1.1rem 1rem 0.6rem;
}

.post-card--forum .post-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
}

.post-card-vote {
  align-items: center;
  color: var(--itmk-muted);
  display: flex;
  flex: 0 0 40px;
  flex-direction: column;
  font-size: 1rem;
  gap: 0.05rem;
  line-height: 1;
  padding-top: 0.1rem;
}

.post-card-vote span {
  color: var(--bs-heading-color);
  font-size: 0.9rem;
  font-weight: 800;
}

.post-card-author-row {
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.post-card-avatar {
  box-shadow: 0 0 0 2px var(--itmk-surface-card);
}

.post-card-avatar--forum {
  background: var(--itmk-slate-soft);
  color: var(--itmk-slate);
}

.post-card-author-name {
  color: var(--bs-body-color);
  font-weight: 600;
}

.post-card-badge {
  align-items: center;
  border-radius: var(--itmk-radius-pill);
  display: inline-flex;
  font-size: 0.7rem;
  font-weight: 700;
  gap: 0.3rem;
  line-height: 1.4;
  padding: 0.16rem 0.55rem;
}

.post-card-badge--forum {
  background: var(--itmk-red-soft);
  color: var(--itmk-red);
}

.post-card-badge--editorial {
  background: var(--itmk-slate-soft);
  color: var(--itmk-slate);
}

.post-card-badge--topic {
  background: var(--itmk-surface-sunken);
  color: var(--itmk-muted);
}

.post-card-time {
  color: var(--itmk-muted);
  font-size: 0.76rem;
}

.post-card-title {
  font-size: 1.06rem;
  font-weight: 650;
  line-height: 1.35;
}

.post-card-title a {
  color: var(--bs-heading-color);
}

.post-card-title a:hover {
  color: var(--itmk-red);
}

.post-card-excerpt {
  color: var(--itmk-muted);
  line-height: 1.55;
}

.post-card--forum .xf-bb {
  max-height: 3.35rem;
}

.post-card--forum .xf-bb::after {
  display: none;
}

.post-card--forum .xf-bb > * {
  display: inline;
}

.post-card-tags {
  margin-top: 0.25rem;
}

.post-tag-pill,
.post-card-footer .category-badge,
.post-card-footer .badge {
  background: var(--itmk-surface-sunken) !important;
  border: 1px solid var(--itmk-border);
  border-radius: var(--itmk-radius-pill);
  color: var(--bs-body-color) !important;
  font-size: 0.74rem;
  font-weight: 600;
}

.post-tag-pill:hover {
  border-color: rgba(77, 103, 134, 0.35);
  color: var(--itmk-slate) !important;
}

.post-card-footer {
  border-top-color: var(--itmk-border);
  color: var(--itmk-muted);
  gap: 0.55rem;
  margin-top: auto;
}

.forum-live-dot {
  background: var(--itmk-success);
  border-radius: 50%;
  display: inline-block;
  height: 0.4rem;
  width: 0.4rem;
}

.post-card-open-link {
  align-items: center;
  color: var(--itmk-slate);
  display: inline-flex;
  font-weight: 700;
  gap: 0.35rem;
  opacity: 0;
  text-decoration: none;
  transition: color 0.2s ease, opacity 0.2s ease;
}

.post-card:hover .post-card-open-link,
.post-card-open-link:focus {
  opacity: 1;
}

.post-card-open-link:hover {
  color: var(--itmk-red);
}

.post-card-figure {
  border-radius: var(--itmk-radius-md);
}

.product-slider-wrap {
  margin-bottom: 1rem;
}

#posts-container[data-filter="products"] {
  gap: 1rem;
}

@media (min-width: 1200px) {
  #posts-container[data-filter="products"] {
    grid-template-columns: repeat(4, 1fr);
  }
}

.product-slide-card {
  background: var(--itmk-surface-card);
  border-color: var(--itmk-border);
  border-radius: var(--itmk-radius-lg);
}

.product-slide-figure {
  border-radius: var(--itmk-radius-md);
  position: relative;
}

.product-slide-label {
  background: rgba(41, 51, 61, 0.88);
  border-radius: var(--itmk-radius-pill);
  color: #fff;
  font-size: 0.62rem;
  font-weight: 700;
  left: 0.45rem;
  line-height: 1;
  padding: 0.28rem 0.48rem;
  position: absolute;
  top: 0.45rem;
}

.product-slide-title {
  color: var(--bs-heading-color);
  line-height: 1.35;
}

.product-slide-title:hover {
  color: var(--itmk-red);
}

.product-slide-price,
.product-slide-price ins {
  color: var(--itmk-red);
}

.product-slide-btn:hover {
  background: var(--itmk-red) !important;
  border-color: var(--itmk-red) !important;
}

.entry-header {
  background: var(--itmk-surface-card);
  border: 1px solid var(--itmk-border);
  border-radius: var(--itmk-radius-lg);
  margin-bottom: 1rem;
  padding: 1.1rem 1.25rem;
}

.entry-title {
  font-family: var(--itmk-serif);
  font-size: 1.65rem;
  font-weight: 700;
  letter-spacing: 0;
}

@media (max-width: 991.98px) {
  #content.site-content {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .community-filter-separator,
  .community-filter-context {
    display: none;
  }

  .new-topic-cta {
    margin-left: 0;
  }

  .post-card--forum {
    padding: 0.85rem;
  }

  .post-card-vote {
    display: none;
  }

  .post-card-open-link {
    opacity: 1;
  }
}

@media (max-width: 575.98px) {
  .community-feed-toolbar .content-filter-bar,
  .community-feed-toolbar .filter-buttons {
    width: 100%;
  }

  .community-feed-toolbar .filter-btn {
    flex: 1 1 auto;
    justify-content: center;
  }

  .new-topic-cta {
    justify-content: center;
    width: 100%;
  }

  .post-card-author-row {
    align-items: flex-start;
  }

  .post-card-author-row .post-card-time {
    margin-left: 0 !important;
    width: 100%;
  }
}

/* Screenshot-matching community layout */
:root {
  --itmk-app-bg: #f2f4f6;
  --itmk-card-bg: #fff;
  --itmk-line: #dfe5eb;
  --itmk-text: #16202b;
  --itmk-soft-text: #728092;
  --itmk-blue: #4d6786;
  --itmk-pill: #eef3f8;
  --itmk-cyan-pill: #e9f9fe;
  --itmk-green: #68b600;
}

[data-bs-theme="dark"] {
  --bs-body-bg: #101720;
  --bs-body-color: #e8eef6;
  --itmk-app-bg: #101720;
  --itmk-card-bg: #17212c;
  --itmk-line: rgba(148, 163, 184, 0.22);
  --itmk-text: #e8eef6;
  --itmk-soft-text: #9aa8ba;
  --itmk-blue: #91abc9;
  --itmk-pill: #243142;
  --itmk-cyan-pill: #173746;
  --itmk-slate: #91abc9;
  --itmk-slate-soft: rgba(145, 171, 201, 0.16);
  --itmk-surface-app: #101720;
  --itmk-surface-card: #17212c;
  --itmk-surface-sunken: #202b38;
  --itmk-border: rgba(148, 163, 184, 0.22);
  --itmk-muted: #9aa8ba;
  --itmk-shadow-hover: 0 6px 18px rgba(0, 0, 0, 0.22);
}

body {
  background: var(--itmk-app-bg) !important;
  padding-left: 0 !important;
}

body.offcanvas-is-open {
  padding-left: 0 !important;
}

#masthead {
  height: 72px;
  margin-left: 0 !important;
}

#masthead .navbar {
  min-height: 72px;
  padding: 0;
}

#masthead .container-fluid {
  height: 72px;
  padding-left: 28px;
  padding-right: 22px;
  position: relative;
}

.sidebar-toggle {
  align-items: center;
  color: #2c3947 !important;
  display: inline-flex;
  font-size: 1.1rem;
  height: 40px;
  justify-content: center;
  margin-right: 6px;
  padding: 0 !important;
  width: 28px;
}

.navbar-brand {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.navbar-brand img {
  width: 34px;
}

.navbar-brand-text {
  color: var(--itmk-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 700;
}

#offcanvas-navbar {
  flex: 0 1 auto;
  position: static;
  transform: none;
  visibility: visible;
  width: auto;
}

#offcanvas-navbar .offcanvas-header {
  display: none;
}

#offcanvas-navbar .offcanvas-body {
  align-items: center;
  display: flex;
  overflow: visible;
  padding: 0;
}

#offcanvas-navbar .navbar-nav {
  align-items: center;
  display: flex;
  flex-direction: row;
  gap: 12px;
}

#offcanvas-navbar .navbar-nav .nav-link {
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: #121a24;
  font-size: 15px;
  font-weight: 700;
  padding: 25px 4px 22px !important;
}

#offcanvas-navbar .navbar-nav .current-menu-item > .nav-link,
#offcanvas-navbar .navbar-nav .nav-link:hover {
  border-bottom-color: var(--itmk-red);
  color: var(--itmk-red);
}

.header-actions {
  gap: 12px;
  margin-left: auto;
  padding-right: 0 !important;
}

.header-actions .nav-search-lg,
.header-actions .top-nav-search {
  display: none !important;
}

#masthead .search-toggler,
#masthead .account-toggler,
#masthead .cart-toggler,
#masthead .back-to-cart {
  display: none !important;
}

.community-header-cart,
.header-actions .btn:not(.header-forum-cta) {
  align-items: center;
  background: #fff !important;
  border: 1px solid var(--itmk-line) !important;
  border-radius: 50% !important;
  color: #111a24 !important;
  display: inline-flex;
  height: 46px;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none;
  width: 46px;
}

/* Header action icons: consistent, slightly bolder glyphs. */
.community-header-cart .bi {
  font-size: 20px;
  line-height: 1;
}

.community-header-cart:hover {
  border-color: var(--itmk-blue) !important;
  color: var(--itmk-blue) !important;
}

.community-theme-switch {
  align-items: center;
  background: transparent !important;
  border: 0;
  display: inline-flex;
  flex: 0 0 46px;
  height: 34px;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  width: 46px;
}

.community-theme-switch-track {
  background: #eef2f7;
  border: 1px solid #d7dee7;
  border-radius: 999px;
  box-sizing: border-box;
  box-shadow: inset 0 1px 2px rgba(17, 26, 36, 0.08);
  display: block;
  height: 24px;
  position: relative;
  width: 44px;
}

.community-theme-switch-track .bi {
  align-items: center;
  color: #8b98a8;
  display: inline-flex;
  font-size: 10px;
  height: 20px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  text-align: center;
  top: 1px;
  width: 20px;
  z-index: 1;
}

.community-theme-switch-sun {
  color: #d59b14 !important;
  left: 2px;
}

.community-theme-switch-moon {
  color: #738196 !important;
  right: 2px;
}

.community-theme-switch-thumb {
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 1px 4px rgba(17, 26, 36, 0.2);
  height: 20px;
  left: 2px;
  position: absolute;
  top: 1px;
  transition: transform 0.18s ease, background-color 0.18s ease;
  width: 20px;
}

.community-theme-switch:hover,
.community-theme-switch:focus-visible {
  outline: 0;
}

.community-theme-switch:hover .community-theme-switch-track,
.community-theme-switch:focus-visible .community-theme-switch-track {
  border-color: #aeb8c5;
}

[data-bs-theme="dark"] .community-theme-switch-track {
  background: #1d2835;
  border-color: rgba(255, 255, 255, 0.2);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.24);
}

[data-bs-theme="dark"] .community-theme-switch-thumb {
  background: #f8fafc;
  transform: translateX(20px);
}

[data-bs-theme="dark"] .community-theme-switch-sun {
  color: rgba(255, 255, 255, 0.42) !important;
}

[data-bs-theme="dark"] .community-theme-switch-moon {
  color: #dbeafe !important;
}

.community-header-searchbar {
  --search-feed-width: calc(min(1564px, 100vw) - 270px - 358px - 48px);
  align-items: center;
  background: #f3f6f9;
  border: 1px solid var(--itmk-line);
  border-radius: 999px;
  display: flex;
  gap: 10px;
  height: 46px;
  left: calc((100vw - min(1564px, 100vw)) / 2 + 270px + 24px + (var(--search-feed-width) / 2));
  margin: 0;
  max-width: none;
  min-width: 220px;
  padding: 0 6px 0 16px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: width 0.22s ease, background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
  width: min(380px, var(--search-feed-width));
}

.community-header-searchbar .bi {
  color: #748294;
  flex: 0 0 auto;
  font-size: 18px;
}

.community-header-searchbar input {
  background: transparent;
  border: 0;
  color: #111a24;
  flex: 1 1 auto;
  font-size: 14px;
  font-weight: 650;
  min-width: 0;
  outline: 0;
}

.community-header-searchbar input::placeholder {
  color: #7f8b9a;
}

.community-header-searchbar button {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 50%;
  color: #748294;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 20px;
  font-weight: 800;
  height: 34px;
  justify-content: center;
  line-height: 1;
  opacity: 0;
  padding: 0;
  pointer-events: none;
  transition: opacity 0.16s ease, background-color 0.16s ease, color 0.16s ease;
  width: 34px;
}

.community-header-searchbar button:hover {
  background: #e7ecf2;
  color: #111a24;
}

.community-header-searchbar:focus-within {
  background: #fff;
  border-color: var(--itmk-blue);
  box-shadow: 0 0 0 3px rgba(77, 103, 134, 0.12);
}

.community-header-searchbar:has(input:not(:placeholder-shown)) {
  width: var(--search-feed-width);
}

.community-header-searchbar:has(input:not(:placeholder-shown)) button {
  opacity: 1;
  pointer-events: auto;
}

[data-bs-theme="dark"] .community-header-searchbar {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.28);
}

[data-bs-theme="dark"] .community-header-searchbar input {
  color: #fff;
}

[data-bs-theme="dark"] .community-header-searchbar input::placeholder,
[data-bs-theme="dark"] .community-header-searchbar .bi {
  color: rgba(255, 255, 255, 0.74);
}

[data-bs-theme="dark"] .community-header-searchbar button {
  background: transparent;
  color: rgba(255, 255, 255, 0.74);
}

@media (max-width: 1399.98px) {
  .community-header-searchbar {
    --search-feed-width: calc(100vw - 36px - 240px - 320px - 48px);
    left: calc(18px + 240px + 24px + (var(--search-feed-width) / 2));
    width: min(330px, var(--search-feed-width));
  }

  .community-header-searchbar:has(input:not(:placeholder-shown)) {
    width: var(--search-feed-width);
  }
}

@media (max-width: 1199.98px) {
  .community-header-searchbar {
    --search-feed-width: calc(100vw - 36px - 220px - 24px);
    left: calc(18px + 220px + 24px + (var(--search-feed-width) / 2));
    width: min(290px, var(--search-feed-width));
  }

  .community-header-searchbar:has(input:not(:placeholder-shown)) {
    width: var(--search-feed-width);
  }
}

@media (max-width: 991.98px) {
  .community-header-searchbar {
    display: none;
  }
}

/* Cart count bubble. */
.community-header-cart {
  overflow: visible;
}

.community-header-cart-count {
  align-items: center;
  background: var(--itmk-red);
  border-radius: 9px;
  color: #fff;
  display: inline-flex;
  font-size: 11px;
  font-weight: 700;
  height: 18px;
  justify-content: center;
  min-width: 18px;
  padding: 0 4px;
  position: absolute;
  right: -3px;
  top: -3px;
}

.header-forum-cta {
  align-items: center;
  background: var(--itmk-red) !important;
  border: 0 !important;
  border-radius: 23px !important;
  color: #fff !important;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 6px;
  height: 34px;
  padding: 0 13px !important;
}

.header-forum-cta .bi {
  align-items: center;
  display: inline-flex;
  font-size: 14px;
  height: 14px;
  justify-content: center;
  line-height: 1;
  width: 14px;
}

.community-header-register {
  align-items: center;
  color: #1b2632;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 5px;
  height: 34px;
  text-decoration: none;
  white-space: nowrap;
}

.community-header-register img {
  display: block;
  height: 19px;
  image-rendering: pixelated;
  width: 19px;
}

.community-header-register:hover {
  color: var(--itmk-red);
}

[data-bs-theme="dark"] .community-header-register {
  color: #fff;
}

@media (min-width: 992px) {
  #offcanvasExample,
  .offcanvas-backdrop,
  .sidebar-toggle-secondary {
    display: none !important;
  }
}

#content.site-content {
  max-width: 1564px !important;
  padding: 28px 0 56px !important;
}

.itmk-community-shell {
  align-items: flex-start;
  display: grid;
  gap: 24px;
  grid-template-columns: 270px minmax(0, 1fr) 358px;
  margin: 0 auto;
  width: 100%;
}

.itmk-community-feed {
  min-width: 0;
  width: 100%;
}

.itmk-community-feed .sticky-posts-section {
  display: none;
}

.comm-sidebar {
  align-self: stretch;
  color: var(--itmk-text);
  flex: 0 0 270px;
  width: 270px;
}

.comm-sidebar-sticky {
  max-height: calc(100vh - 100px);
  overflow-y: auto;
  padding-top: 10px;
  position: sticky;
  scrollbar-width: none;
  top: 100px;
}

.comm-sidebar-sticky::-webkit-scrollbar {
  display: none;
}

.comm-sidebar-inner {
  min-height: 100%;
  padding-top: 2px;
  position: static;
}

.comm-join-card {
  background: #fff;
  border: 1px solid var(--itmk-line);
  border-radius: 8px;
  margin-bottom: 10px;
  padding: 11px 14px 12px;
}

.comm-join-card h2 {
  color: #242c35;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.35;
  margin: 0 0 8px;
}

.comm-join-count {
  color: var(--itmk-red);
  font-weight: 700;
}

.comm-join-actions {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.comm-join-primary,
.comm-join-secondary {
  align-items: center;
  border-radius: 6px;
  display: inline-flex;
  font-size: 13px;
  font-weight: 600;
  justify-content: center;
  line-height: 1.2;
  min-height: 31px;
  padding: 5px 10px;
  text-align: center;
  text-decoration: none;
}

.comm-join-primary {
  background: #fff;
  border: 1px solid var(--itmk-blue);
  color: var(--itmk-blue);
}

.comm-join-primary:hover {
  background: var(--itmk-blue);
  color: #fff;
}

.comm-join-secondary {
  color: #667386;
}

.comm-join-secondary:hover {
  background: #f1f4f8;
  color: #1b2632;
}

.comm-sidebar-nav {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.comm-sidebar-link {
  align-items: center;
  border-radius: 7px;
  color: #0b0f14;
  display: flex;
  font-size: 18px;
  font-weight: 650;
  gap: 10px;
  min-height: 32px;
  padding: 3px 12px;
  text-decoration: none;
}

.comm-sidebar-link i {
  color: #0b0f14;
  flex: 0 0 16px;
  font-size: 14px;
  text-align: center;
}

.comm-sidebar-link:hover {
  background: #e9edf2;
  color: #0b0f14;
}

.comm-sidebar-link.is-active {
  background: var(--itmk-blue);
  color: #fff;
}

.comm-sidebar-link.is-active i {
  color: #fff;
}

.comm-sidebar-details {
  margin: 0;
}

.comm-sidebar-details > summary {
  list-style: none;
}

.comm-sidebar-details > summary::-webkit-details-marker {
  display: none;
}

.comm-sidebar-details > summary.comm-sidebar-link {
  cursor: pointer;
  user-select: none;
}

.comm-sidebar-details > summary.comm-sidebar-parent-summary {
  gap: 0;
  padding: 0;
}

.comm-sidebar-parent-link {
  align-items: center;
  align-self: stretch;
  color: inherit;
  display: flex;
  flex: 1 1 auto;
  gap: 10px;
  min-width: 0;
  padding: 3px 0 3px 12px;
  text-decoration: none;
}

.comm-sidebar-parent-link:hover {
  color: inherit;
  text-decoration: none;
}

.comm-sidebar-caret-button {
  align-items: center;
  align-self: stretch;
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  margin-left: auto;
  min-width: 34px;
  padding-inline: 8px 12px;
}

.comm-sidebar-caret {
  font-size: 11px !important;
  margin-left: auto;
  transition: transform 0.2s ease;
}

.comm-sidebar-details[open] .comm-sidebar-caret {
  transform: rotate(180deg);
}

.comm-sidebar-subnav {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0 0 2px;
  padding-left: 42px;
}

.comm-sidebar-subnav a {
  align-items: center;
  border-radius: 7px;
  color: #0b0f14;
  display: flex;
  font-size: 13px;
  font-weight: 600;
  gap: 6px;
  justify-content: space-between;
  line-height: 1.15;
  min-height: 21px;
  padding: 1px 8px;
  text-decoration: none;
}

.comm-sidebar-subnav a:hover,
.comm-sidebar-subnav a.is-active {
  background: #e9edf2;
  color: #0b0f14;
}

/* Non-bold count, shared visual spec with the Форум node list. */
.comm-sidebar-subnav em {
  color: #0b0f14;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
}

.comm-sidebar-label {
  color: #8a96a5;
  font-family: Consolas, "Courier New", monospace;
  font-size: 12px;
  letter-spacing: 0;
  margin: 22px 16px 8px;
  text-transform: uppercase;
}

.comm-sidebar-count {
  align-items: center;
  color: #0b0f14;
  display: inline-flex;
  font-size: 13px;
  font-weight: 500;
  gap: 8px;
  margin-left: auto;
}

.comm-sidebar-count span {
  background: var(--itmk-green);
  border-radius: 50%;
  height: 6px;
  width: 6px;
}

/* Форум node list nested under the "Форум" item — small indent + guide line
   to signal it is a sub-group of the last main-menu entry. */
.comm-sidebar-forum-nested {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0 0 2px;
  padding-left: 42px;
}

/* Second-level nav: matches the "Содржина" subnav spec (size, weight,
   non-bold count) so the two category lists read the same. The !important
   overrides the global .comm-sidebar-link 14px/500 rule further down. */
.comm-sidebar-forum-nested .comm-sidebar-link {
  color: #0b0f14;
  font-size: 13px !important;
  font-weight: 600 !important;
  gap: 6px;
  min-height: 21px;
  padding: 1px 8px;
}

.comm-sidebar-forum-nested .comm-sidebar-count {
  color: #0b0f14;
  font-size: 12px;
  font-weight: 500;
}

.comm-sidebar-marketing-link {
  margin-top: 3px;
}

.comm-sidebar-marketing-link i {
  color: var(--itmk-red, #e4222e) !important;
}

/* Subtle guide line linking a collapsible parent to its sub-items. */
.comm-sidebar-subnav,
.comm-sidebar-forum-nested {
  position: relative;
}

.comm-sidebar-subnav::before,
.comm-sidebar-forum-nested::before {
  background: var(--itmk-line, #e5e8ec);
  bottom: 8px;
  content: "";
  left: 21px;
  opacity: 0.6;
  position: absolute;
  top: 0;
  width: 1px;
}

/* Menu balloons: live counts (Кариера / Огласник) and the "Ново" tag. */
.comm-sidebar-badge {
  background: #eef1f5;
  border-radius: 10px;
  color: #0b0f14;
  font-size: 11px !important;
  font-weight: 700 !important;
  margin-left: auto;
  min-width: 20px;
  padding: 1px 7px;
  text-align: center;
}

.comm-sidebar-tag {
  background: var(--itmk-red, #e4222e);
  border-radius: 5px;
  color: #fff;
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em;
  margin-left: 6px;
  padding: 1px 4px;
  text-transform: uppercase;
  vertical-align: middle;
}

.comm-sidebar-link.is-active .comm-sidebar-badge {
  background: rgba(255, 255, 255, 0.22);
  color: #fff;
}

.comm-sidebar-foot {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #8a96a5;
  display: flex;
  font-size: 11.5px;
  gap: 10px;
  justify-content: flex-start;
  line-height: 1.2;
  margin: -2px 16px 8px;
  padding: 0;
}

.comm-sidebar-foot span {
  align-items: baseline;
  display: inline-flex;
  gap: 4px;
  white-space: nowrap;
}

.comm-sidebar-foot strong {
  color: #748294;
  font-size: inherit;
  font-weight: 500;
}

/* Legal block: copyright + collapsible "Бирократија" links (findable but
   tucked away in a native <details>). */
.comm-sidebar-legal {
  color: #9aa4b2;
  font-size: 12px;
  line-height: 1.5;
  margin: 8px 0 4px;
  opacity: 0.88;
  padding: 0 16px;
}

.comm-legal {
  display: flex;
  flex-direction: column-reverse;
  margin-top: 8px;
}

.comm-legal > summary {
  align-items: center;
  color: #0b0f14;
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: 600;
  gap: 6px;
  list-style: none;
  padding: 2px 0;
  user-select: none;
}

.comm-legal > summary:hover {
  color: #0b0f14;
}

.comm-legal > summary::-webkit-details-marker {
  display: none;
}

.comm-legal-caret {
  font-size: 11px;
  margin-left: auto;
  opacity: 0.72;
  transition: transform 0.2s ease;
}

.comm-legal[open] .comm-legal-caret {
  transform: rotate(180deg);
}

.comm-sidebar-copy {
  color: #8a96a5;
  font-size: 11.5px;
  padding: 1px 0 6px;
}

.comm-sidebar-copy a {
  color: inherit;
  font-weight: 700;
  text-decoration: none;
}

.comm-sidebar-copy a:hover {
  color: var(--itmk-blue);
  text-decoration: underline;
}

.comm-legal-links {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 2px 0 5px;
}

.comm-legal-links a {
  color: #8a96a5;
  font-size: 12px;
  text-decoration: none;
}

.comm-legal-links a:hover {
  color: var(--itmk-blue);
  text-decoration: underline;
}

.community-feed-toolbar {
  margin-bottom: 22px !important;
}

.community-feed-toolbar .content-filter-bar {
  display: flex;
  gap: 10px;
  min-height: 36px;
}

.community-feed-toolbar .filter-buttons {
  gap: 10px !important;
}

.community-feed-toolbar .filter-btn {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line);
  border-radius: 18px;
  box-shadow: 0 8px 16px rgba(22, 32, 43, 0.08);
  color: #1b2632;
  display: inline-flex;
  font-size: 14px;
  font-weight: 800;
  gap: 7px;
  height: 34px;
  justify-content: center;
  padding: 0 18px;
  position: relative;
}

/* Active sort tab shares the dark surface of the premium card / pulse
   panel, distinct from the blue "current page" state in the left nav. */
.community-feed-toolbar .filter-btn.active {
  background: #263442;
  border-color: #263442;
  color: #fff;
}

.community-feed-toolbar .filter-btn.active i {
  color: #fff;
}

.community-feed-toolbar .filter-btn i {
  font-size: 13px;
}

.community-feed-toolbar .filter-fresh-count {
  align-items: center;
  background: var(--itmk-red, #e4222e);
  border-radius: 999px;
  color: #fff;
  display: inline-flex !important;
  font-size: 9px;
  font-weight: 800;
  height: 15px;
  justify-content: center;
  line-height: 1;
  min-width: 15px;
  padding: 0 4px;
}

.community-feed-toolbar .filter-btn.active .filter-fresh-count {
  background: #fff;
  color: #263442;
}

.community-filter-separator {
  background: var(--itmk-line);
  height: 24px;
  margin: 5px 12px;
}

.community-filter-context {
  color: #7b8796;
  font-size: 15px;
  line-height: 34px;
}

.community-filter-notice {
  align-items: center;
  background: rgba(77, 103, 134, 0.08);
  border-left: 3px solid var(--itmk-blue);
  border-radius: 8px;
  color: #5f6d7d;
  display: flex;
  flex-wrap: wrap;
  font-size: 13px;
  font-weight: 600;
  gap: 4px;
  line-height: 1.4;
  margin-top: 10px;
  padding: 9px 12px;
}

.community-filter-notice[hidden] {
  display: none;
}

.community-filter-notice a {
  color: var(--itmk-red);
  font-weight: 800;
  text-decoration: none;
}

.community-filter-notice a:hover {
  text-decoration: underline;
}

.new-topic-cta {
  background: #fff1f3;
  border: 1px solid rgba(228, 34, 46, 0.28);
  border-radius: 18px;
  color: var(--itmk-red);
  font-size: 14px;
  font-weight: 800;
  height: 36px;
  margin-left: auto;
  padding: 0 22px;
}

.post-card {
  background: var(--itmk-card-bg);
  border: 1px solid var(--itmk-line);
  border-radius: 24px;
  box-shadow: 0 1px 1px rgba(22, 32, 43, 0.02);
  color: var(--itmk-text);
  margin-bottom: 16px !important;
}

.post-card:hover {
  border-color: #d7dee6;
  box-shadow: 0 3px 8px rgba(22, 32, 43, 0.04);
}

.post-card--forum {
  display: flex;
  gap: 18px;
  min-height: 164px;
  padding: 22px 22px 15px 20px;
}

.post-card-vote {
  display: flex;
  flex: 0 0 32px;
  align-items: center;
  text-align: center;
  width: 32px;
}

.post-card-vote button {
  align-items: center;
  background: transparent;
  border: 0;
  color: #c7d0da;
  display: flex;
  font-size: 13px;
  height: 19px;
  justify-content: center;
  padding: 0;
  width: 100%;
}

.post-card-vote span {
  color: #111a24;
  display: flex;
  font-size: 16px;
  font-weight: 900;
  justify-content: center;
  margin: 1px 0;
  text-align: center;
  width: 100%;
}

/* Logged-out users: hovering the like/dislike control shows a
   "Логирај се" hint bubble above it. */
.post-card-vote--guest {
  position: relative;
  z-index: 3;
}

.post-card-vote--guest::after {
  background: #1b2632;
  border-radius: 6px;
  color: #fff;
  content: attr(data-login-tip);
  font-size: 11px;
  font-weight: 600;
  left: 50%;
  opacity: 0;
  padding: 4px 8px;
  pointer-events: none;
  position: absolute;
  top: -8px;
  transform: translate(-50%, -100%);
  transition: opacity 0.15s ease;
  visibility: hidden;
  white-space: nowrap;
  z-index: 20;
}

.post-card-vote--guest:has(button:hover)::after,
.post-card-vote--guest:focus-within::after,
.post-card-vote--guest:hover::after {
  opacity: 1;
  visibility: visible;
}

.post-card-author-row {
  gap: 8px;
  margin-bottom: 9px;
}

.post-card-avatar--forum,
.comm-mini-avatar {
  align-items: center;
  background: #f0f3f7;
  border-radius: 50%;
  color: var(--itmk-blue);
  display: inline-flex;
  font-size: 11px;
  font-weight: 800;
  height: 26px !important;
  justify-content: center;
  width: 26px !important;
}

.post-card-author-name {
  color: #1d2835;
  font-size: 14px;
  font-weight: 800;
}

.post-card-badge {
  border-radius: 13px;
  font-size: 12px;
  font-weight: 800;
  padding: 4px 10px;
}

.post-card-badge--pro,
.comm-leaderboard em {
  background: #263746;
  color: #77bdd4;
  font-size: 10px;
  letter-spacing: 0;
  text-transform: uppercase;
}

.post-card-badge--topic {
  background: #f1f4f8;
  color: var(--itmk-blue);
}

.post-card-badge--question {
  background: var(--itmk-cyan-pill);
  color: #32a7c7;
}

.post-card-time {
  color: #7b8796;
  font-size: 14px;
}

.post-card-title {
  font-size: 20px;
  font-weight: 900;
  line-height: 1.25;
  margin-bottom: 6px;
}

.post-card-title a {
  color: #111a24;
}

.post-card-excerpt {
  color: #7a8796;
  font-size: 16px;
  line-height: 1.35;
  margin-bottom: 13px;
}

.post-card--forum .xf-bb {
  max-height: 45px;
}

.post-card-footer {
  border-top: 1px solid var(--itmk-line);
  color: #748294;
  font-size: 14px;
  gap: 12px;
  padding-top: 10px;
}

.post-card-footer .post-card-time {
  margin-left: auto;
}

.forum-reading {
  align-items: center;
  color: var(--itmk-green);
  display: inline-flex;
  font-weight: 800;
  gap: 8px;
}

.forum-live-dot {
  height: 6px;
  width: 6px;
}

.post-card-open-link {
  display: none;
}

.post-card--wp {
  padding: 20px 20px 20px;
  position: relative;
}

.post-card-ribbon {
  background: var(--itmk-blue);
  border-radius: 12px;
  color: #fff;
  font-family: Consolas, "Courier New", monospace;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  padding: 5px 13px;
  position: absolute;
  left: 18px;
  text-transform: uppercase;
  top: -10px;
  z-index: 2;
}

.post-card--wp .row {
  align-items: stretch;
}

.post-card--wp .post-card-figure {
  border-radius: 17px;
  height: 282px;
}

.post-card--wp .post-card-figure img {
  height: 100% !important;
  object-fit: cover;
  width: 100%;
}

.post-card--wp .post-card-body {
  display: flex;
  flex-direction: column;
  min-height: 282px;
}

.post-card--wp .post-card-title {
  font-size: 20px;
}

.post-card--wp .post-card-tags {
  gap: 8px;
}

.post-tag-pill,
.post-card-footer .category-badge {
  background: #fff !important;
  border: 1px solid var(--itmk-line);
  color: #293746 !important;
  font-size: 13px;
  padding: 5px 11px;
}

.comm-rail {
  --comm-rail-gap: 16px;
  display: flex;
  flex-direction: column;
  gap: var(--comm-rail-gap);
  width: 340px;
}

.comm-rail > .widget,
.comm-rail > section,
.comm-rail > div {
  margin-bottom: 0;
}

/* Community pulse: forum totals as three small stat cards, placed near the
   member leaderboard/right-rail widgets. */
.comm-pulse {
  color: #111a24;
}

/* Right-rail widget links turn logo-red on hover (premium CTA excluded). */
.comm-rail-card a:hover,
.comm-live-card a:hover,
.comm-rail-card a:hover .comm-deal-title,
.comm-rail-card a:hover .comm-job-role,
.comm-rail-card a:hover .comm-event-title,
.comm-rail-card a:hover .bi,
.comm-live-card a:hover strong,
.comm-live-card a:hover .bi {
  color: var(--itmk-red) !important;
}

.comm-pulse-grid {
  display: flex;
  gap: 8px;
}

.comm-pulse-stat {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line);
  border-radius: 8px;
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  padding: 8px 6px;
  text-align: center;
}

.comm-pulse-stat strong {
  color: #111a24;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0;
}

.comm-pulse-stat span {
  color: #728092;
  font-size: 10px;
  font-weight: 600;
}

.comm-rail-card,
.comm-premium-card {
  background: #fff;
  border: 1px solid var(--itmk-line);
  border-radius: 24px;
  padding: 20px 22px;
}

.comm-rail-head {
  align-items: center;
  display: flex;
  gap: 10px;
  margin-bottom: 16px;
}

.comm-rail-head h3 {
  color: #111a24;
  flex: 1;
  font-size: 18px;
  font-weight: 900;
  margin: 0;
}

.comm-online {
  align-items: center;
  color: var(--itmk-green);
  display: inline-flex;
  font-size: 13px;
  font-weight: 800;
  gap: 8px;
}

.comm-online span {
  background: var(--itmk-green);
  border-radius: 50%;
  height: 7px;
  width: 7px;
}

.comm-live-topic {
  border-top: 1px solid var(--itmk-line);
  display: block;
  padding: 12px 0;
  text-decoration: none;
}

.comm-live-topic:first-child {
  border-top: 0;
  padding-top: 0;
}

.comm-live-topic strong {
  color: #111a24;
  display: block;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.35;
  margin-bottom: 8px;
}

.comm-live-topic span {
  align-items: center;
  color: #748294;
  display: flex;
  flex-wrap: wrap;
  font-size: 13px;
  gap: 9px;
}

.comm-live-topic em {
  background: #f8fafc;
  border-radius: 13px;
  color: var(--itmk-blue);
  font-style: normal;
  font-weight: 800;
  padding: 4px 10px;
}

.comm-live-topic b {
  color: var(--itmk-green);
}

.comm-premium-card {
  background: #263442;
  border-color: #263442;
  color: rgba(255, 255, 255, 0.78);
  padding: 26px 22px 22px;
}

.comm-mono-label {
  color: #77bdd4;
  font-family: Consolas, "Courier New", monospace;
  font-size: 12px;
  letter-spacing: 0;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.comm-premium-card h3 {
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  font-weight: 700;
  margin: 0 0 12px;
}

.comm-premium-card ul {
  display: flex;
  flex-direction: column;
  gap: 8px;
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
}

.comm-premium-card li::before {
  color: #77bdd4;
  content: "✓";
  margin-right: 9px;
}

.comm-premium-action {
  align-items: center;
  display: flex;
  gap: 13px;
}

.comm-premium-action a {
  align-items: center;
  background: #ff2635;
  border-radius: 22px;
  color: #fff;
  display: inline-flex;
  font-weight: 900;
  gap: 13px;
  padding: 11px 18px;
  text-decoration: none;
}

.comm-premium-action a i {
  align-items: center;
  background: rgba(255, 255, 255, 0.18);
  border-radius: 50%;
  display: inline-flex;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.comm-premium-action span {
  color: rgba(255, 255, 255, 0.46);
  font-size: 13px;
  font-weight: 700;
}

.comm-leaderboard ol {
  display: flex;
  flex-direction: column;
  gap: 13px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.comm-leaderboard li {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 18px 26px 1fr auto auto;
}

.comm-rank {
  color: #c4ccd6;
  font-weight: 900;
}

.comm-leaderboard li:first-child .comm-rank {
  color: #ff3340;
}

.comm-leaderboard strong {
  color: #263342;
  font-size: 15px;
}

.comm-leaderboard em {
  border-radius: 10px;
  font-style: normal;
  padding: 3px 8px;
}

.comm-leaderboard li > span:last-child {
  color: #748294;
  font-size: 13px;
  font-weight: 700;
}

@media (max-width: 1399.98px) {
  #content.site-content {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .itmk-community-shell {
    grid-template-columns: 240px minmax(0, 1fr) 320px;
  }

  .comm-sidebar,
  .comm-rail {
    width: auto;
  }
}

@media (max-width: 1199.98px) {
  .itmk-community-shell {
    grid-template-columns: 220px minmax(0, 1fr);
  }

  .comm-rail {
    display: none;
  }
}

@media (max-width: 991.98px) {
  #offcanvas-navbar {
    display: none;
  }

  .itmk-community-shell {
    display: block;
  }

  .comm-sidebar {
    display: none;
  }

  .post-card--wp .post-card-figure {
    height: auto;
  }

  .post-card--wp .post-card-body {
    min-height: 0;
  }
}

/* Fidelity corrections from the Claude reference */
body,
button,
input,
select,
textarea,
.itmk-community-shell,
.post-card,
.market-card {
  font-family: "Inter", var(--bs-font-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight: 400;
}

.comm-sidebar,
.itmk-community-feed,
.comm-rail {
  transition: width 0.2s ease, flex-basis 0.2s ease, opacity 0.2s ease;
}

.comm-sidebar-link {
  font-size: 17px;
  font-weight: 500;
}

.comm-sidebar-link.is-active,
.community-feed-toolbar .filter-btn.active,
.new-topic-cta,
.header-forum-cta,
.post-card-title,
.market-card-title,
.market-card-price {
  font-weight: 700;
}

.community-feed-toolbar .filter-btn,
.post-card-author-name,
.post-card-badge,
.post-tag-pill,
.post-card-footer .category-badge,
.comm-live-topic em,
.market-card-seller,
.market-card-new,
.market-card-category,
.market-card-buy {
  font-weight: 600;
}

.post-card-title {
  font-size: 20px;
  line-height: 1.3;
}

.post-card-excerpt {
  font-weight: 400;
}

.post-card-vote span {
  font-weight: 700;
}

.post-card-footer {
  align-items: center;
  display: flex;
}

.forum-reading,
.forum-live-dot {
  display: none !important;
}

.comm-rail-head h3,
.comm-live-topic strong,
.comm-online,
.comm-leaderboard strong,
.comm-rank,
.comm-premium-action a {
  font-weight: 700;
}

body.community-sidebar-collapsed .itmk-community-shell {
  grid-template-columns: 72px minmax(0, 1fr) 358px;
}

body.community-sidebar-collapsed .comm-sidebar {
  flex-basis: 72px;
  width: 72px;
}

body.community-sidebar-collapsed .comm-sidebar-link {
  gap: 0;
  justify-content: center;
  min-height: 44px;
  padding-left: 0;
  padding-right: 0;
}

body.community-sidebar-collapsed .comm-sidebar-link i {
  flex-basis: auto;
}

body.community-sidebar-collapsed .comm-sidebar-link span:not(.comm-sidebar-count),
body.community-sidebar-collapsed .comm-sidebar-count,
body.community-sidebar-collapsed .comm-sidebar-subnav,
body.community-sidebar-collapsed .comm-sidebar-parent-link span,
body.community-sidebar-collapsed .comm-sidebar-caret,
body.community-sidebar-collapsed .comm-sidebar-caret-button,
body.community-sidebar-collapsed .comm-sidebar-label,
body.community-sidebar-collapsed .comm-join-card,
body.community-sidebar-collapsed .comm-sidebar-foot {
  display: none;
}

body.community-sidebar-collapsed .comm-sidebar-parent-link {
  justify-content: center;
  padding: 0;
}

.post-card--wp {
  border-left: 4px solid var(--itmk-blue);
  padding: 26px 26px 28px;
}

.post-card--wp .row {
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(280px, 350px) minmax(0, 1fr);
}

.post-card--wp .row > [class*="col"] {
  flex: none;
  max-width: none;
  padding: 0;
  width: auto;
}

.post-card--wp .post-card-figure {
  aspect-ratio: 1;
  border-radius: 18px;
  height: auto;
  margin: 0;
  overflow: hidden;
}

.post-card--wp .post-card-body {
  min-height: 0;
  padding: 8px 0 0 !important;
}

.post-card--wp .post-card-title {
  font-size: 24px;
  line-height: 1.22;
  margin: 0 0 10px;
}

.post-card--wp .post-card-excerpt {
  color: #667386;
  font-size: 18px;
  line-height: 1.3;
}

.post-card--wp .post-card-tags {
  margin-top: 16px;
}

.post-card-ribbon {
  font-family: "PT Mono", Consolas, "Courier New", monospace;
  font-weight: 700;
  left: 22px;
  top: -12px;
}

.post-card-badge--editorial {
  background: #eef2f6;
  color: var(--itmk-blue);
}

.product-card-item {
  margin-bottom: 16px !important;
  overflow: visible;
  position: relative;
}

.market-card-ribbon {
  left: 22px;
  top: -12px;
}

.market-card {
  align-items: stretch;
  background: #fff;
  border: 1px solid var(--itmk-line);
  border-radius: 24px;
  box-shadow: 0 1px 1px rgba(22, 32, 43, 0.02);
  display: grid;
  gap: 22px;
  grid-template-columns: 182px minmax(0, 1fr);
  padding: 22px 26px 22px 24px;
}

.market-card-image {
  border-radius: 18px;
  display: block;
  height: 182px;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  width: 182px;
}

.market-card-image img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.market-card-image span {
  background: #273442;
  border-radius: 13px;
  color: #fff;
  font-family: "PT Mono", Consolas, "Courier New", monospace;
  font-size: 12px;
  font-weight: 700;
  left: 12px;
  line-height: 1;
  padding: 6px 10px;
  position: absolute;
  text-transform: uppercase;
  top: 12px;
}

.market-card-main {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.market-card-meta {
  align-items: center;
  display: flex;
  gap: 10px;
  margin-bottom: 8px;
  min-height: 28px;
}

.market-card-seller {
  color: var(--itmk-blue);
  font-size: 16px;
}

.market-card-seller i,
.market-card-location i {
  font-size: 15px;
}

.market-card-new {
  background: #edf8d9;
  border-radius: 15px;
  color: var(--itmk-green);
  font-size: 16px;
  padding: 4px 12px;
}

.market-card-category {
  background: #eef2f6;
  border-radius: 16px;
  color: var(--itmk-blue);
  font-size: 16px;
  padding: 5px 14px;
  text-decoration: none;
}

.market-card-location {
  color: #627186;
  font-size: 16px;
  margin-left: auto;
}

.market-card-title {
  font-size: 24px;
  line-height: 1.18;
  margin: 0 0 8px;
}

.market-card-title a {
  color: #07111d;
  text-decoration: none;
}

.market-card-title a:hover {
  color: var(--itmk-red);
}

.market-card-excerpt {
  color: #667386;
  font-size: 20px;
  line-height: 1.28;
  margin: 0;
}

.market-card-footer {
  align-items: center;
  border-top: 1px solid var(--itmk-line);
  display: flex;
  gap: 20px;
  margin-top: auto;
  padding-top: 16px;
}

.market-card-price {
  color: var(--itmk-red);
  font-size: 30px;
  line-height: 1;
}

.market-card-price .woocommerce-Price-currencySymbol {
  font-size: 0.82em;
}

.market-card-regular {
  color: #738195;
  font-size: 17px;
  text-decoration: line-through;
}

.market-card-watch {
  color: #647489;
  font-size: 16px;
}

.market-card-stock {
  color: var(--itmk-green);
  font-size: 16px;
  font-weight: 600;
}

.market-card-buy {
  align-items: center;
  background: var(--itmk-red) !important;
  border: 0 !important;
  border-radius: 20px;
  color: #fff !important;
  display: inline-flex;
  font-size: 18px;
  gap: 8px;
  margin-left: auto;
  padding: 10px 22px;
  text-decoration: none;
}

.market-card-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media (max-width: 1399.98px) {
  body.community-sidebar-collapsed .itmk-community-shell {
    grid-template-columns: 64px minmax(0, 1fr) 320px;
  }
}

@media (max-width: 1199.98px) {
  body.community-sidebar-collapsed .itmk-community-shell {
    grid-template-columns: 64px minmax(0, 1fr);
  }
}

@media (max-width: 991.98px) {
  .post-card--wp {
    border-left-width: 0;
    padding: 18px;
  }

  .post-card--wp .row,
  .market-card {
    display: block;
  }

  .post-card--wp .post-card-title,
  .market-card-title {
    font-size: 20px;
  }

  .post-card--wp .post-card-excerpt,
  .market-card-excerpt {
    font-size: 16px;
  }

  .market-card-image {
    height: auto;
    margin-bottom: 16px;
    width: 100%;
  }

  .market-card-image img {
    aspect-ratio: 16 / 10;
  }

  .market-card-meta,
  .market-card-footer {
    flex-wrap: wrap;
  }

  .market-card-location,
  .market-card-buy {
    margin-left: 0;
  }
}

/* Requested typography and variable-height feed cards */
:root {
  --itmk-font-ui: "Inter", var(--bs-font-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body,
#page,
#content,
#masthead,
.itmk-community-shell,
.itmk-community-shell *,
.header-actions,
#offcanvas-navbar,
.market-card {
  font-family: var(--itmk-font-ui) !important;
}

.navbar-brand-text,
.entry-title,
.comm-premium-card h3,
.comm-mono-label,
.comm-sidebar-label,
.post-card-ribbon,
.market-card-image span {
  font-family: var(--itmk-font-ui) !important;
}

.comm-sidebar-link {
  color: #0b0f14 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  gap: 10px;
  min-height: 28px;
  padding-bottom: 2px;
  padding-top: 2px;
}

.comm-sidebar-link i {
  color: #0b0f14 !important;
  font-size: 14px !important;
}

.comm-sidebar-link.is-active,
.comm-sidebar-link.is-active i {
  color: #fff !important;
}

.comm-sidebar-subnav a,
.comm-sidebar-subnav em,
.comm-sidebar-forum-nested .comm-sidebar-link,
.comm-sidebar-forum-nested .comm-sidebar-count {
  color: #5f6d7d !important;
}

.comm-sidebar-subnav a:hover,
.comm-sidebar-subnav a.is-active,
.comm-sidebar-forum-nested .comm-sidebar-link:hover {
  color: #253242 !important;
}

.comm-sidebar-marketing-link i {
  color: var(--itmk-red, #e4222e) !important;
}

.comm-sidebar-label,
.comm-sidebar-count,
.comm-sidebar-foot {
  font-size: 12px !important;
}

#offcanvas-navbar .navbar-nav .nav-link,
.community-feed-toolbar .filter-btn,
.community-filter-context,
.new-topic-cta,
.header-forum-cta,
.comm-rail,
.comm-rail-card,
.comm-premium-card,
.post-card-author-name,
.post-card-time,
.post-card-badge,
.post-tag-pill,
.post-card-footer,
.market-card-meta,
.market-card-excerpt,
.market-card-watch,
.market-card-stock,
.market-card-buy {
  font-size: 14px !important;
}

.post-card-author-name {
  font-size: 12px !important;
}

.post-card-title,
.post-card--wp .post-card-title,
.post-card--forum .post-card-title,
.market-card-title,
.comm-rail-head h3,
.comm-live-topic strong {
  font-family: var(--itmk-font-ui) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.3;
}

.post-card-excerpt,
.post-card--wp .post-card-excerpt,
.post-card--forum .post-card-excerpt,
.comm-live-topic span,
.comm-premium-card li,
.market-card-excerpt {
  font-family: var(--itmk-font-ui) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.43;
}

.post-card--forum {
  height: auto !important;
  min-height: 164px;
}

.post-card--forum .post-card-body {
  min-height: 0;
}

.post-card--forum .xf-bb {
  display: block;
  max-height: none !important;
  overflow: visible;
}

.post-card-excerpt,
.post-card--wp .post-card-excerpt,
.post-card--forum .post-card-excerpt,
.post-card--forum .xf-bb,
.market-card-excerpt {
  color: #566579 !important;
}

.post-card-time,
.post-card-footer,
.post-card-comments,
.post-card-reactions,
.market-card-meta,
.market-card-seller,
.market-card-regular,
.market-card-service,
.comm-live-topic span {
  color: #64748b !important;
}

.post-card-vote span {
  font-size: 15px !important;
  font-weight: 700 !important;
}

.post-card-avatar--forum,
.comm-mini-avatar {
  font-size: 10px !important;
}

.post-card-ribbon,
.market-card-image span {
  font-size: 11px !important;
  letter-spacing: 0;
}

.post-card--sticky-feed {
  margin-top: 14px;
  overflow: visible;
}

.sticky-feed-carousel {
  position: relative;
}

.sticky-feed-carousel .carousel-inner {
  overflow: hidden;
}

.sticky-feed-carousel .carousel-item {
  min-height: 1px;
}

.post-card--sticky-feed .carousel-item > .row > [class*="col"]:first-child {
  position: relative;
}

/* Slider controls overlay the media only — vertically centred, prev on the
   image's left edge, next on its right edge (positioned against the media
   column). Keeps them off the text and out of the content's width. */
.sticky-carousel-control {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line);
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(22, 32, 43, 0.12);
  color: var(--itmk-blue);
  display: inline-flex;
  font-size: 14px;
  height: 34px;
  justify-content: center;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 34px;
  z-index: 6;
}

.sticky-carousel-control--prev {
  left: 12px;
  right: auto;
}

.sticky-carousel-control--next {
  left: auto;
  right: 12px;
}

.sticky-carousel-control:hover {
  background: var(--itmk-blue);
  border-color: var(--itmk-blue);
  color: #fff;
}

.post-card--sticky-feed .post-card-author-row {
  padding-right: 0;
}

/* Full-width footer: divider spans the whole card, below both the media and
   the content column, matching the other cards. */
.post-card--sticky-feed .post-card-footer--full {
  margin-top: 16px;
  width: 100%;
}

/* Dots hug the media's bottom-left corner inside a compact pill that shrinks
   to fit; the active slide gets an elongated indicator. */
.sticky-carousel-dots {
  align-items: center;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 999px;
  bottom: 16px;
  display: inline-flex;
  gap: 5px;
  left: 16px;
  margin: 0;
  padding: 6px 8px;
  position: absolute;
  right: auto;
  top: auto;
  width: auto;
  z-index: 5;
}

.sticky-carousel-dots [data-bs-target] {
  background: #c1cad5;
  border: 0;
  border-radius: 999px;
  flex: 0 0 auto;
  height: 6px;
  margin: 0;
  opacity: 1;
  transition: width 0.2s ease, background-color 0.2s ease;
  width: 6px;
}

.sticky-carousel-dots .active {
  background: var(--itmk-blue);
  width: 16px;
}

.sticky-carousel-position {
  display: none !important;
}

.post-card--sticky-feed .post-card-excerpt {
  margin-bottom: 14px;
}

.market-card-title {
  margin-bottom: 6px;
}

.market-card-seller,
.market-card-location,
.market-card-new,
.market-card-category {
  font-size: 14px !important;
}

.market-card-price {
  font-size: 24px !important;
  font-weight: 700 !important;
}

.market-card-regular {
  font-size: 14px !important;
}

.market-card-buy {
  font-weight: 700 !important;
  padding: 9px 18px;
}

@media (max-width: 991.98px) {
  /* Media is full-width on top; arrows stay centred on it (they anchor to
     the media column), dots sit in its bottom-left. */
  .sticky-carousel-dots {
    bottom: 18px;
    left: 18px;
    margin-top: 0;
    position: absolute;
    top: auto;
  }
}

/* ============================================================
   Design-reference alignment pass (Claude.ai/design)
   Desktop feed only (min-width:992px keeps the tuned mobile
   rules above intact). Goals from the reference:
   - compact market media so the price/footer row no longer
     floats detached at the bottom of an over-tall card;
   - tighter, consistent type scale on cards;
   - editorial media brought down to the reference proportion.
   ============================================================ */
@media (min-width: 992px) {
  /* --- Market card (it.mk/market items in the feed) --- */
  .market-card {
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 18px;
    padding: 18px 22px 18px 18px;
  }

  .market-card-image {
    width: 132px;
    height: 132px;
    border-radius: 16px;
  }

  .market-card-image span {
    font-size: 10px !important;
    left: 10px;
    top: 10px;
    padding: 4px 8px;
    border-radius: 11px;
  }

  /* Content column: stack from the top, footer pinned to the base. */
  .market-card-main {
    justify-content: flex-start;
  }

  .market-card-meta {
    gap: 8px;
    margin-bottom: 6px;
    min-height: 0;
  }

  .market-card-seller,
  .market-card-location {
    font-size: 13px !important;
  }

  .market-card-new,
  .market-card-category {
    font-size: 12px !important;
    padding: 3px 9px;
    border-radius: 11px;
  }

  .market-card-title {
    font-size: 16.5px !important;
    line-height: 1.35;
    margin-bottom: 5px;
  }

  .market-card-excerpt {
    font-size: 14px !important;
    line-height: 1.45;
    margin-bottom: 11px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .market-card-footer {
    gap: 14px;
    padding-top: 12px;
  }

  .market-card-price {
    font-size: 20px !important;
    line-height: 1;
  }

  .market-card-regular,
  .market-card-watch,
  .market-card-stock {
    font-size: 13px !important;
  }

  .market-card-buy {
    font-size: 13px !important;
    padding: 8px 18px;
    border-radius: 2rem;
  }

  /* --- Editorial / WP feed card: right-size the square media --- */
  .post-card--wp .row {
    grid-template-columns: minmax(150px, 200px) minmax(0, 1fr);
    gap: 22px;
  }
}

/* ============================================================
   "IT.mk/market понуда" product strip — a horizontal 4-up row of random
   in-stock market products, injected after every 10th feed card.
   Mirrors the ProductCard from the Claude.ai/design reference.
   ============================================================ */
.market-strip {
  margin: 2px 0 16px;
}

.market-strip-head {
  align-items: baseline;
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
}

.market-strip-title-h {
  align-items: center;
  color: var(--itmk-text, #16202b);
  display: inline-flex;
  font-size: 15px;
  font-weight: 700;
  gap: 8px;
  margin: 0;
}

.market-strip-title-h i {
  color: var(--itmk-blue, #4d6786);
  font-size: 14px;
}

.market-strip-more {
  color: var(--itmk-blue, #4d6786);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}

.market-strip-more:hover {
  color: var(--itmk-red);
}

.market-strip-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.market-strip-card {
  background: var(--itmk-card-bg, #fff);
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  padding: 16px;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.market-strip-card:hover {
  border-color: #d7dee6;
  box-shadow: var(--itmk-shadow-hover, 0 4px 12px rgba(16, 27, 30, 0.08));
}

.market-strip-figure {
  aspect-ratio: 1 / 1;
  border-radius: 16px;
  display: block;
  margin-bottom: 12px;
  overflow: hidden;
  position: relative;
}

.market-strip-figure-link {
  display: block;
  height: 100%;
  width: 100%;
}

.market-strip-figure img {
  display: block;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s var(--ease-standard, ease);
  width: 100%;
}

.market-strip-card:hover .market-strip-figure img {
  transform: scale(1.05);
}

.market-strip-add {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 50%;
  color: var(--itmk-text, #16202b);
  display: flex;
  font-size: 22px;
  font-weight: 300;
  height: 40px;
  justify-content: center;
  left: 50%;
  line-height: 1;
  opacity: 0;
  position: absolute;
  text-decoration: none;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.2s ease, background 0.2s ease, color 0.2s ease;
  width: 40px;
}

.market-strip-card:hover .market-strip-add,
.market-strip-add:focus-visible {
  opacity: 1;
}

.market-strip-add:hover,
.market-strip-add.added {
  background: var(--itmk-blue, #4d6786);
  border-color: var(--itmk-blue, #4d6786);
  color: #fff;
}

.market-strip-name {
  color: var(--itmk-text, #16202b);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.market-strip-name:hover {
  color: var(--itmk-red);
}

.market-strip-price,
.market-strip-current {
  color: var(--itmk-red);
  font-size: 14px;
  font-weight: 700;
}

.market-strip-price {
  display: block;
  margin-top: auto;
  padding-top: 10px;
}

.market-strip-prices {
  align-items: baseline;
  display: flex;
  gap: 6px;
  margin-top: auto;
  padding-top: 10px;
}

.market-strip-current {
  margin-top: 0;
}

.market-strip-price del,
.market-strip-regular {
  color: #999;
  font-weight: 400;
  margin-right: 6px;
  text-decoration: line-through;
}

.market-strip-price ins,
.market-strip-current ins {
  color: var(--itmk-red) !important;
  text-decoration: none;
}

/* WooCommerce injects a "View cart" link after ajax add; keep it out of the grid card. */
.market-strip-figure a.added_to_cart {
  display: none;
}

.newsletter-feed-card {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-left: 3px solid var(--itmk-red, #e4222e);
  border-radius: 22px;
  box-shadow: 0 1px 1px rgba(22, 32, 43, 0.02);
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 16px;
  overflow: visible;
  padding: 22px 26px 22px 76px;
  position: relative;
}

.newsletter-feed-ribbon {
  left: 22px;
  top: -12px;
}

.newsletter-feed-copy {
  align-items: center;
  display: grid;
  gap: 6px 12px;
  grid-template-columns: 34px minmax(0, 1fr);
}

.newsletter-feed-icon {
  align-items: center;
  background: #eef2f6;
  border-radius: 50%;
  color: #8a96a5;
  display: inline-flex;
  height: 34px;
  justify-content: center;
  margin-top: 0;
  width: 34px;
}

.newsletter-feed-icon .bi {
  font-size: 18px;
  line-height: 1;
}

.newsletter-feed-heading {
  align-self: center;
  min-width: 0;
}

.newsletter-feed-eyebrow {
  color: #667386;
  display: block;
  font-family: "PT Mono", Consolas, "Courier New", monospace;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.2;
  margin-bottom: 2px;
  text-transform: uppercase;
}

.newsletter-feed-card h2 {
  color: #07111d;
  font-family: var(--itmk-font-ui);
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.3;
  margin: 0;
}

.newsletter-feed-copy > p {
  color: #667386;
  font-size: 14px;
  grid-column: 1 / -1;
  line-height: 1.45;
  margin: 4px 0 0;
}

.newsletter-feed-form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: 570px;
  min-width: 0;
  width: 100%;
}

.newsletter-feed-controls {
  align-items: center;
  display: flex;
  gap: 10px;
  min-height: 38px;
}

.newsletter-feed-controls input {
  background: #fff;
  border: 1px solid #d1d8e0;
  border-radius: 7px;
  color: #111a24;
  font-size: 14px;
  min-height: 38px;
  min-width: 0;
  padding: 7px 14px;
  width: 100%;
}

.newsletter-feed-controls input::placeholder {
  color: #8a96a5;
}

.newsletter-feed-controls button {
  align-items: center;
  background: var(--itmk-navy, #29333d);
  border: 0;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 13px;
  font-weight: 800;
  justify-content: center;
  min-height: 38px;
  padding: 8px 15px;
  white-space: nowrap;
}

.newsletter-feed-controls button::after {
  align-items: center;
  background: rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  content: "\F135";
  display: inline-flex;
  font-family: "bootstrap-icons";
  font-size: 14px;
  height: 24px;
  justify-content: center;
  margin-left: 10px;
  width: 24px;
}

.newsletter-feed-controls button:hover {
  background: var(--itmk-ink, #111a24);
}

.newsletter-feed-form p {
  color: #8a96a5;
  font-size: 11.5px;
  line-height: 1.35;
  margin: 0;
}

[data-bs-theme="dark"] .newsletter-feed-card {
  background: var(--itmk-card-bg) !important;
  border-color: var(--itmk-line) !important;
  border-left-color: var(--itmk-red, #e4222e);
  color: var(--itmk-text) !important;
}

[data-bs-theme="dark"] .newsletter-feed-card h2,
[data-bs-theme="dark"] .newsletter-feed-copy > p {
  color: #f6f8fa;
}

[data-bs-theme="dark"] .newsletter-feed-eyebrow {
  color: rgba(246, 248, 250, 0.62);
}

[data-bs-theme="dark"] .newsletter-feed-controls input {
  background: #161616;
  border-color: rgba(255, 255, 255, 0.16);
  color: #f6f8fa;
}

[data-bs-theme="dark"] .newsletter-feed-form p {
  color: rgba(246, 248, 250, 0.62);
}

@media (max-width: 991.98px) {
  .market-strip-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .market-strip-add {
    opacity: 1;
  }

  .newsletter-feed-card {
    padding: 22px 22px 22px 24px;
  }
}

@media (max-width: 767.98px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
    overflow-x: clip;
    width: 100%;
  }

  #page,
  #content,
  .site,
  .site-content,
  #primary,
  .itmk-community-shell,
  .itmk-community-feed,
  #posts-container,
  .post-card,
  .post-card--wp .row,
  .product-card-item,
  .product-slider-wrap,
  .market-strip {
    box-sizing: border-box;
    max-width: 100%;
    min-width: 0;
    width: 100%;
  }

  #page,
  #content,
  .site,
  .site-content,
  #primary,
  .itmk-community-shell,
  .itmk-community-feed,
  #posts-container,
  .post-card,
  .product-card-item,
  .product-slider-wrap {
    overflow-x: hidden;
    overflow-x: clip;
  }

  .product-slider-wrap {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }

  .product-slider,
  .product-slider .swiper-wrapper,
  .product-slider .swiper-slide {
    max-width: 100%;
  }

  .market-strip {
    overflow: hidden;
  }

  .market-strip-head {
    align-items: flex-start;
    margin-bottom: 10px;
  }

  .market-strip-title-h,
  .market-strip-head h2 {
    display: none;
  }

  .market-strip-more,
  .market-strip-head > a {
    align-items: center;
    display: inline-flex;
    gap: 6px;
    white-space: normal;
    width: 100%;
  }

  .market-strip-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 100%;
    overflow-x: hidden;
    overflow-x: clip;
    overscroll-behavior-x: contain;
    padding: 0;
    scroll-snap-type: none;
    width: 100%;
  }

  .market-strip-grid::-webkit-scrollbar {
    display: none;
  }

  .market-strip-card {
    min-width: 0;
    scroll-snap-align: none;
  }

  .post-card--forum .post-card-footer {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 6px 8px;
  }

  .post-card--forum .post-card-comments,
  .post-card--forum .post-card-heat {
    order: 1;
  }

  .post-card--forum .post-card-footer-sep {
    display: none;
  }

  .post-card--forum .post-card-reactions {
    flex-basis: 100%;
    order: 2;
  }

  .post-card--forum .post-card-time {
    flex-basis: 100%;
    margin-left: 0 !important;
    order: 3;
  }
}

@media (max-width: 479.98px) {
  .market-strip-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .market-strip-card {
    min-width: 0;
  }

  .newsletter-feed-card {
    padding: 22px 20px 20px;
  }

  .newsletter-feed-card h2 {
    font-size: 17px;
  }

  .newsletter-feed-copy > p {
    font-size: 14px;
  }

  .newsletter-feed-controls {
    align-items: stretch;
    flex-direction: column;
  }

  .newsletter-feed-controls button {
    min-height: 40px;
  }
}

/* ============================================================
   Card refinements: featured sticky carousel, top-row categories,
   consolidated smaller tags, and forum reactions.
   ============================================================ */

/* Featured sticky carousel — a larger media well than the plain
   editorial card, so it reads as the highlighted lead. */
@media (min-width: 992px) {
  .post-card--sticky-feed .row {
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
    gap: 26px;
  }

  .post-card--sticky-feed {
    padding: 26px 30px 28px;
  }

  /* Indent the footer content so the comments line up with the forum cards
     above/below, whose body is offset by the vote column
     (border 1 + padding 20 + vote 32 + gap 18 = 71px from the card edge;
     the sticky content box starts at border 4 + padding 30 = 34px). The
     divider itself still spans the full width. */
  .post-card--sticky-feed .post-card-footer--full {
    padding-left: 37px;
  }
}

/* Consolidated tag pills — one compact, quiet row on every card. */
.post-card-tags {
  gap: 6px;
  margin-top: 10px;
}

.post-card--wp .post-card-tags {
  margin-top: 12px;
}

.post-tag-pill {
  border-radius: 2rem;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  padding: 3px 9px !important;
}

/* Top-row badges (editorial / "Издвоено" + categories) — small and tidy. */
.post-card-badge {
  font-size: 12px !important;
  padding: 3px 9px;
}

.post-card-badge--pro {
  font-size: 10px !important;
}

.post-card-badge--topic {
  background: #eef2f6;
  color: var(--itmk-blue);
}

a.post-card-badge--topic:hover {
  background: #e2e8f0;
  color: var(--itmk-red);
}

/* Forum reaction count in the footer. */
.post-card-reactions {
  align-items: center;
  display: inline-flex;
  gap: 5px;
  white-space: nowrap;
}

.post-card-reactions .bi-hand-thumbs-up {
  color: var(--itmk-blue, #4d6786);
  font-size: 0.95em;
}

/* ============================================================
   Right rail: smaller type + newest-threads card + new widgets
   (categories, deal of the day, events, jobs) — mirrors the
   Claude.ai/design reference rail.
   ============================================================ */

/* Forum-node badge on XF cards (parent forum from the thread URL). */
.post-card-badge--forum-node {
  background: #eef2f6;
  color: var(--itmk-blue);
}

.post-card-badge--forum-node .bi {
  font-size: 0.9em;
  opacity: 0.8;
}

/* Compact card activity metadata + escalating discussion heat. */
.post-card-comments {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 12px !important;
  gap: 5px;
  text-decoration: none;
  transition: color 0.16s ease;
  white-space: nowrap;
}

a.post-card-comments {
  cursor: pointer;
}

a.post-card-comments:hover,
a.post-card-comments:focus {
  color: var(--itmk-red, #e4222e) !important;
  text-decoration: none;
}

.post-card-time,
.post-card-footer .post-card-time {
  font-size: 12px !important;
}

.post-card-heat {
  align-items: center;
  display: inline-flex;
  line-height: 1;
  margin-left: 1px;
}

.post-card-heat--warm {
  color: var(--itmk-red);
  font-size: 10px;
}

.post-card-heat--hot {
  color: var(--itmk-red);
  filter: drop-shadow(0 1px 3px rgb(228 34 46 / 30%));
  font-size: 14px;
}

.post-card-heat--blazing {
  color: var(--itmk-red);
  filter: drop-shadow(0 1px 4px rgb(239 68 68 / 35%));
  font-size: 12px;
  gap: 0;
}

.post-card-heat--blazing .bi:nth-child(2) {
  color: var(--itmk-red);
  font-size: 16px;
  margin-inline: -2px;
  transform: translateY(-1px);
}

/* --- Card heads: quieter, smaller titles across the rail --- */
.comm-rail-head {
  margin-bottom: 14px;
}

.comm-rail-head h3 {
  align-items: center;
  display: inline-flex;
  font-size: 15px !important;
  font-weight: 700 !important;
  gap: 7px;
}

.comm-rail-head h3 .bi {
  color: var(--itmk-soft-text, #728092);
  font-size: 0.92em;
}

.comm-online {
  font-size: 11.5px !important;
}

.comm-rail-action,
.comm-rail-more {
  align-items: center;
  color: var(--itmk-blue);
  display: inline-flex;
  font-size: 12.5px;
  font-weight: 600;
  gap: 4px;
  text-decoration: none;
  white-space: nowrap;
}

.comm-rail-action:hover,
.comm-rail-more:hover {
  color: var(--itmk-red);
}

.comm-rail-more {
  margin-top: 12px;
}

/* --- Најнови теми (live/newest topics) — smaller than before --- */
.comm-live-topic {
  padding: 11px 0;
}

.comm-live-topic strong {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 1.4;
  margin-bottom: 5px;
}

.comm-live-topic span {
  font-size: 11.5px !important;
  gap: 8px;
}

.comm-live-topic em {
  font-size: 11px;
  font-weight: 600;
  padding: 3px 9px;
}

/* --- Пазарувај по категорија --- */
.comm-cat-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.comm-cat-chip {
  align-items: center;
  border: 1px solid var(--itmk-line);
  border-radius: 2rem;
  color: var(--itmk-text, #16202b);
  display: inline-flex;
  font-size: 12.5px;
  font-weight: 500;
  gap: 6px;
  padding: 6px 12px;
  text-decoration: none;
  transition: border-color 0.2s ease, color 0.2s ease;
}

.comm-cat-chip .bi {
  color: var(--itmk-soft-text, #728092);
  font-size: 0.9em;
}

.comm-cat-chip:hover {
  border-color: var(--itmk-blue);
  color: var(--itmk-blue);
}

.comm-cat-chip:hover .bi {
  color: var(--itmk-blue);
}

.comm-cat-brands-label {
  border-top: 1px solid var(--itmk-line);
  color: var(--itmk-soft-text, #728092);
  font-size: 11.5px;
  font-weight: 600;
  margin-top: 14px;
  padding-top: 12px;
}

.comm-cat-brands {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.comm-brand-chip {
  background: var(--itmk-surface-sunken, #eef1f5);
  border-radius: 8px;
  color: var(--itmk-soft-text, #728092);
  font-size: 11.5px;
  font-weight: 500;
  padding: 4px 10px;
  text-decoration: none;
  transition: color 0.2s ease;
}

.comm-brand-chip:hover {
  color: var(--itmk-red);
}

/* --- Дил на денот (market picks) --- */
.comm-deal-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.comm-rail > .comm-deal-card {
  margin-bottom: 8px;
}

.comm-rail > .comm-events-card,
.comm-rail > .comm-jobs-card {
  margin-top: 10px;
}

.comm-deal-item {
  align-items: center;
  display: flex;
  gap: 12px;
  text-decoration: none;
}

.comm-deal-thumb {
  background: var(--itmk-surface-sunken, #eef1f5);
  border-radius: 12px;
  flex: 0 0 56px;
  height: 56px;
  overflow: hidden;
  width: 56px;
}

.comm-deal-thumb img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.comm-deal-info {
  min-width: 0;
}

.comm-deal-title {
  color: var(--itmk-text, #16202b);
  display: block;
  font-size: 13.5px;
  font-weight: 500;
  margin-bottom: 3px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.comm-deal-price {
  color: var(--itmk-red);
  font-size: 14.5px;
  font-weight: 700;
}

.comm-deal-price del {
  color: var(--itmk-soft-text, #738195);
  font-size: 0.82em;
  font-weight: 400;
  margin-right: 6px;
}

.comm-deal-price ins {
  text-decoration: none;
}

/* --- Настани (events) --- */
.comm-events-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.comm-event {
  align-items: center;
  display: flex;
  gap: 12px;
  text-decoration: none;
}

.comm-event-date {
  border: 1px solid var(--itmk-line);
  border-radius: 12px;
  flex: 0 0 46px;
  overflow: hidden;
  text-align: center;
  width: 46px;
}

.comm-event-month {
  background: var(--itmk-red);
  color: #fff;
  display: block;
  font-family: "PT Mono", Consolas, monospace;
  font-size: 9px;
  letter-spacing: 0.08em;
  padding: 3px 0;
}

.comm-event-day {
  color: var(--itmk-text, #16202b);
  display: block;
  font-size: 17px;
  font-weight: 700;
  padding: 3px 0 4px;
}

.comm-event-info {
  min-width: 0;
}

.comm-event-title {
  color: var(--itmk-text, #16202b);
  display: block;
  font-size: 13.5px;
  font-weight: 600;
  margin-bottom: 2px;
}

.comm-event-place {
  color: var(--itmk-soft-text, #728092);
  display: block;
  font-size: 12px;
}

/* --- Огласи за работа (jobs) --- */
.comm-jobs-list {
  display: flex;
  flex-direction: column;
}

.comm-job {
  border-top: 1px solid var(--itmk-line);
  align-items: center;
  display: flex;
  gap: 10px;
  padding: 10px 0;
  text-decoration: none;
}

.comm-job:first-child {
  border-top: 0;
  padding-top: 0;
}

.comm-job-logo {
  align-items: center;
  background: #f4f7fb;
  border: 1px solid rgba(132, 151, 174, 0.22);
  border-radius: 8px;
  display: inline-flex;
  flex: 0 0 28px;
  height: 28px;
  justify-content: center;
  overflow: hidden;
  width: 28px;
}

.comm-job-logo img {
  height: 100%;
  object-fit: contain;
  padding: 3px;
  width: 100%;
}

.comm-job-copy {
  display: block;
  min-width: 0;
}

.comm-job-role {
  color: var(--itmk-text, #16202b);
  display: block;
  font-size: 13.5px;
  font-weight: 600;
  margin-bottom: 2px;
}

.comm-job-meta {
  color: var(--itmk-soft-text, #728092);
  display: block;
  font-size: 12px;
}

/* =====================================================================
   "Најнови теми" rail widget — sidebar refinements
   (forum-rail widget markup lives in wp-admin; styled here via the shared
   comm-live-card / comm-online / comm-live-topic classes)
   ===================================================================== */

/* 1) Онлајн count → a prominent "live" badge pinned to the top of the card */
.comm-live-card .comm-rail-head {
  align-items: center;
}

.comm-live-card .comm-online {
  background: #f0fbdf;
  border: 1px solid #a7d96b;
  border-radius: 2rem;
  color: var(--itmk-green);
  font-size: 14px !important;
  font-weight: 800;
  gap: 9px;
  letter-spacing: 0.01em;
  line-height: 1;
  min-height: 36px;
  padding: 8px 14px 8px 13px;
  white-space: nowrap;
}

.comm-live-card .comm-online span {
  box-shadow: 0 0 0 6px rgba(104, 182, 0, 0.18);
  height: 8px;
  width: 8px;
  animation: comm-online-pulse 2s ease-in-out infinite;
}

@keyframes comm-online-pulse {
  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.78);
  }
}

@media (prefers-reduced-motion: reduce) {
  .comm-live-card .comm-online span {
    animation: none;
  }
}

/* 3) Одг. count → comment/pageview counts at 12px */
.comm-live-card .comm-live-topic span {
  color: #748294;
  font-size: 12px !important;
  gap: 10px;
}

/* 2) Прочитаа count → a "seen by" view stat with an eye icon */
.comm-live-card .comm-live-topic b {
  align-items: center;
  color: var(--itmk-soft-text);
  display: inline-flex;
  font-weight: 600;
  gap: 5px;
}

/* Slightly smaller comment/view icons than the 12px counts. */
.comm-live-topic .bi {
  font-size: 11px !important;
}


/* ============================================================
   Follow-up card polish: top-right heat, quieter tags, market
   labels, and the restored new-topic action.
   ============================================================ */

.post-card {
  overflow: visible;
  position: relative;
}

.post-card-fresh-dot {
  background: var(--itmk-red, #e4222e);
  border: 3px solid #fff;
  border-radius: 999px;
  box-shadow: 0 8px 18px rgba(228, 34, 46, 0.28);
  cursor: help;
  height: 16px;
  position: absolute;
  right: 18px;
  top: 16px;
  width: 16px;
  z-index: 4;
}

.post-card-fresh-dot::after {
  background: #1d2835;
  border-radius: 8px;
  color: #fff;
  content: attr(data-fresh-label);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  opacity: 0;
  padding: 7px 9px;
  pointer-events: none;
  position: absolute;
  right: -3px;
  top: calc(100% + 8px);
  transform: translateY(-3px);
  transition: opacity 0.16s ease, transform 0.16s ease;
  visibility: hidden;
  white-space: nowrap;
}

.post-card-fresh-dot:hover::after,
.post-card-fresh-dot:focus-visible::after {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
}

.post-card-reactions {
  font-size: 12px !important;
}

.post-card-reactions .bi-hand-thumbs-up,
.post-card-reactions .bi-hand-thumbs-up-fill {
  color: var(--itmk-blue, #4d6786);
  font-size: 0.95em;
}

.post-tag-pill {
  background: #fff !important;
  border-color: #dce3ea !important;
  color: #697789 !important;
}

.post-tag-pill:hover {
  background: #f8fafc !important;
  color: var(--itmk-blue, #4d6786) !important;
}

.market-card-category {
  background: #eef2f6 !important;
  border: 1px solid transparent;
  color: #697789 !important;
  text-decoration: none !important;
}

a.market-card-category:hover {
  background: #e2e8f0 !important;
  color: #4d5f75 !important;
  text-decoration: none !important;
}

/* Post category badge: same pill style as the "Издвоено" badge, no underline. */
.post-card-badge--topic {
  background: #eef2f6 !important;
  border: 0 !important;
  color: var(--itmk-blue) !important;
  text-decoration: none !important;
}

.post-card-badge--forum-node {
  background: #f1f4f8 !important;
  border: 0 !important;
  color: #486382 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.15;
  padding: 5px 11px !important;
}

.post-card-badge--forum-node .bi {
  color: currentColor;
  font-size: 0.9em;
  opacity: 0.72;
}

a.post-card-badge--topic:hover {
  background: #e2e8f0 !important;
  color: var(--itmk-blue, #4d6786) !important;
  text-decoration: none !important;
}

.post-card-heat {
  align-items: center;
  background: #fef2f3;
  border: 1px solid #f6cdd0;
  border-radius: 999px;
  box-shadow: 0 6px 16px rgba(228, 34, 46, 0.16);
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  margin-left: 0;
  position: absolute;
  right: 18px;
  top: 16px;
  z-index: 3;
}

.post-card--forum .post-card-author-row {
  padding-right: 48px;
}

.post-card-heat--warm {
  color: var(--itmk-red);
  font-size: 10px;
  height: 21px;
  width: 21px;
}

.post-card-heat--hot {
  color: var(--itmk-red);
  filter: drop-shadow(0 1px 4px rgb(228 34 46 / 30%));
  font-size: 14px;
  height: 26px;
  width: 26px;
}

.post-card-heat--blazing {
  color: var(--itmk-red);
  filter: drop-shadow(0 1px 5px rgb(239 68 68 / 35%));
  font-size: 12px;
  gap: 0;
  height: 26px;
  padding-inline: 7px;
}

.post-card-heat--blazing .bi:nth-child(2) {
  color: var(--itmk-red);
  font-size: 16px;
  margin-inline: -2px;
  transform: translateY(-1px);
}

.community-feed-toolbar .new-topic-cta {
  margin-left: auto;
}

.market-card-seller {
  font-weight: 700;
}

.market-card-service,
.market-card-stock {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-size: 11px !important;
  font-weight: 600;
  gap: 5px;
  line-height: 1;
  min-height: 24px;
  padding: 6px 9px;
  white-space: nowrap;
}

.market-card-service--delivery {
  background: #f8fafc;
  border: 1px solid #dce3ea;
  color: #647489;
}

.market-card-stock {
  background: rgba(104, 182, 0, 0.12);
  border: 1px solid rgba(104, 182, 0, 0.28);
  color: var(--itmk-green, #68b600);
  flex: 0 0 auto;
  font-weight: 500;
  height: 24px;
  justify-content: center;
  overflow: hidden;
  padding: 0;
  transition: width 0.2s ease, padding 0.2s ease, background 0.2s ease;
  width: 24px;
}

.market-card-stock i {
  flex: 0 0 auto;
  font-size: 13px;
  line-height: 1;
}

.market-card-stock > span {
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-width 0.2s ease, opacity 0.16s ease;
}

.market-card-stock:hover {
  justify-content: flex-start;
  padding: 6px 9px;
  width: 104px;
}

.market-card-stock:hover > span {
  max-width: 82px;
  opacity: 1;
}

.market-card-location,
.market-card-watch {
  display: none !important;
}

.market-strip-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 9px;
}

.market-strip-badge {
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1;
  padding: 5px 7px;
}

.market-strip-badge--stock {
  align-items: center;
  background: rgba(104, 182, 0, 0.12);
  border: 1px solid rgba(104, 182, 0, 0.28);
  color: var(--itmk-green, #68b600);
  display: inline-flex;
  font-size: 9.5px;
  font-weight: 500;
  gap: 4px;
  height: 24px;
  justify-content: center;
  overflow: hidden;
  padding: 0;
  transition: width 0.2s ease, padding 0.2s ease, background 0.2s ease;
  white-space: nowrap;
  width: 24px;
}

.market-strip-badge--stock i {
  font-size: 13px;
  line-height: 1;
}

.market-strip-badge--stock span {
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-width 0.2s ease, opacity 0.16s ease;
}

.market-strip-badge--stock:hover {
  justify-content: flex-start;
  padding: 5px 7px;
  width: 100px;
}

.market-strip-badge--stock:hover span {
  max-width: 80px;
  opacity: 1;
}

/* Header brand: keep the compact round mark, reveal the community tagline on hover. */
.navbar-brand {
  overflow: visible;
  position: relative;
}

.navbar-brand img {
  margin-right: 0 !important;
  width: 44px !important;
  height: auto;
}

.navbar-brand-tagline {
  align-items: center;
  color: #07111d;
  display: inline-flex;
  font-size: 11.5px;
  font-weight: 700;
  left: calc(100% + 14px);
  letter-spacing: 0;
  line-height: 1;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-6px, -50%);
  transition: opacity 0.18s ease, transform 0.18s ease;
  white-space: nowrap;
  z-index: 20;
}

.navbar-brand:hover .navbar-brand-tagline,
.navbar-brand:focus-visible .navbar-brand-tagline {
  opacity: 1;
  transform: translate(0, -50%);
}

[data-bs-theme="dark"] .navbar-brand-tagline {
  color: #fff;
}

[data-bs-theme="dark"] body {
  background: var(--itmk-app-bg) !important;
  color: var(--itmk-text);
}

[data-bs-theme="dark"] #masthead {
  background: #121b26 !important;
  border-bottom-color: var(--itmk-line) !important;
}

[data-bs-theme="dark"] #masthead .navbar {
  background: #121b26 !important;
}

[data-bs-theme="dark"] .community-header-searchbar {
  background: #1a2532;
  border-color: rgba(148, 163, 184, 0.28);
}

[data-bs-theme="dark"] .community-header-searchbar:focus-within {
  background: #111a24;
  border-color: var(--itmk-blue);
  box-shadow: 0 0 0 3px rgba(145, 171, 201, 0.16);
}

[data-bs-theme="dark"] .community-header-cart,
[data-bs-theme="dark"] .header-actions .btn:not(.header-forum-cta) {
  background: #17212c !important;
  border-color: rgba(148, 163, 184, 0.28) !important;
  color: var(--itmk-text) !important;
}

[data-bs-theme="dark"] .community-feed-toolbar .filter-btn {
  background: #17212c;
  border-color: var(--itmk-line);
  box-shadow: none;
  color: var(--itmk-text);
}

[data-bs-theme="dark"] .community-feed-toolbar .filter-btn.active {
  background: var(--itmk-blue);
  border-color: var(--itmk-blue);
  color: #08111c;
}

[data-bs-theme="dark"] .community-feed-toolbar .filter-btn.active i {
  color: #08111c;
}

[data-bs-theme="dark"] .community-filter-notice {
  background: rgba(145, 171, 201, 0.1);
  border-left-color: var(--itmk-blue);
  color: var(--itmk-soft-text);
}

[data-bs-theme="dark"] .community-filter-notice a {
  color: #ff7a84;
}

[data-bs-theme="dark"] .post-card,
[data-bs-theme="dark"] .market-card,
[data-bs-theme="dark"] .comm-rail-card,
[data-bs-theme="dark"] .comm-join-card,
[data-bs-theme="dark"] .comm-pulse-stat {
  background: var(--itmk-card-bg) !important;
  border-color: var(--itmk-line) !important;
  box-shadow: none;
  color: var(--itmk-text) !important;
}

[data-bs-theme="dark"] .comm-join-card h2,
[data-bs-theme="dark"] .comm-pulse-stat strong {
  color: var(--itmk-text) !important;
}

[data-bs-theme="dark"] .comm-join-count {
  color: var(--itmk-red) !important;
}

[data-bs-theme="dark"] .comm-join-secondary,
[data-bs-theme="dark"] .comm-pulse-stat span {
  color: var(--itmk-soft-text) !important;
}

[data-bs-theme="dark"] .comm-join-primary {
  background: transparent;
  border-color: var(--itmk-blue);
  color: var(--itmk-blue);
}

[data-bs-theme="dark"] .comm-join-primary:hover {
  background: var(--itmk-blue);
  color: #08111c;
}

[data-bs-theme="dark"] .comm-join-secondary:hover {
  background: rgba(145, 171, 201, 0.1);
  color: var(--itmk-text) !important;
}

[data-bs-theme="dark"] .post-card:hover,
[data-bs-theme="dark"] .market-card:hover {
  border-color: rgba(145, 171, 201, 0.4) !important;
  box-shadow: var(--itmk-shadow-hover);
}

[data-bs-theme="dark"] .post-card-title a,
[data-bs-theme="dark"] .post-card-author-name,
[data-bs-theme="dark"] .post-card-vote span,
[data-bs-theme="dark"] .market-card-title a,
[data-bs-theme="dark"] .comm-rail-head h3,
[data-bs-theme="dark"] .comm-live-topic strong,
[data-bs-theme="dark"] .comm-cat-chip,
[data-bs-theme="dark"] .comm-deal-title,
[data-bs-theme="dark"] .comm-event-title,
[data-bs-theme="dark"] .comm-event-day,
[data-bs-theme="dark"] .comm-job-role,
[data-bs-theme="dark"] .comm-sidebar-link {
  color: var(--itmk-text) !important;
}

[data-bs-theme="dark"] .post-card-excerpt,
[data-bs-theme="dark"] .post-card-time,
[data-bs-theme="dark"] .post-card-footer,
[data-bs-theme="dark"] .community-filter-context,
[data-bs-theme="dark"] .comm-live-topic span,
[data-bs-theme="dark"] .comm-sidebar-label,
[data-bs-theme="dark"] .comm-sidebar-count,
[data-bs-theme="dark"] .comm-sidebar-foot,
[data-bs-theme="dark"] .comm-sidebar-foot strong,
[data-bs-theme="dark"] .comm-sidebar-legal,
[data-bs-theme="dark"] .comm-legal > summary,
[data-bs-theme="dark"] .comm-legal-links a,
[data-bs-theme="dark"] .comm-sidebar-copy,
[data-bs-theme="dark"] .comm-sidebar-copy a,
[data-bs-theme="dark"] .comm-deal-price del,
[data-bs-theme="dark"] .comm-event-place,
[data-bs-theme="dark"] .comm-job-meta {
  color: var(--itmk-soft-text) !important;
}

[data-bs-theme="dark"] .post-card-footer,
[data-bs-theme="dark"] .comm-live-topic,
[data-bs-theme="dark"] .comm-cat-brands-label,
[data-bs-theme="dark"] .comm-job,
[data-bs-theme="dark"] .market-card-footer {
  border-color: var(--itmk-line) !important;
}

[data-bs-theme="dark"] .post-card-avatar--forum,
[data-bs-theme="dark"] .comm-mini-avatar,
[data-bs-theme="dark"] .post-card-badge--topic,
[data-bs-theme="dark"] .post-card-footer .category-badge,
[data-bs-theme="dark"] .post-tag-pill,
[data-bs-theme="dark"] .market-card-category,
[data-bs-theme="dark"] .comm-live-topic em,
[data-bs-theme="dark"] .comm-brand-chip {
  background: var(--itmk-pill) !important;
  border-color: transparent !important;
  color: var(--itmk-blue) !important;
}

[data-bs-theme="dark"] .post-card-badge--question {
  background: var(--itmk-cyan-pill) !important;
  color: #79d7f1 !important;
}

[data-bs-theme="dark"] .comm-sidebar-link:hover {
  background: rgba(145, 171, 201, 0.1);
}

[data-bs-theme="dark"] .comm-sidebar-link.is-active {
  background: var(--itmk-blue);
  color: #08111c !important;
}

[data-bs-theme="dark"] .comm-sidebar-link.is-active i {
  color: #08111c !important;
}

[data-bs-theme="dark"] .comm-sidebar-subnav a,
[data-bs-theme="dark"] .comm-sidebar-subnav em,
[data-bs-theme="dark"] .comm-sidebar-forum-nested .comm-sidebar-link,
[data-bs-theme="dark"] .comm-sidebar-forum-nested .comm-sidebar-count {
  color: var(--itmk-soft-text) !important;
}

[data-bs-theme="dark"] .comm-sidebar-subnav a:hover,
[data-bs-theme="dark"] .comm-sidebar-subnav a.is-active,
[data-bs-theme="dark"] .comm-sidebar-forum-nested .comm-sidebar-link:hover {
  color: var(--itmk-text) !important;
}

[data-bs-theme="dark"] .comm-sidebar-marketing-link i {
  color: var(--itmk-red, #e4222e) !important;
}

[data-bs-theme="dark"] .comm-online-card,
[data-bs-theme="dark"] .comm-premium-card {
  background: #17212c;
  border-color: var(--itmk-line);
}

@media (max-width: 767.98px) {
  .navbar-brand-tagline {
    display: none;
  }
}

/* Compact, simpler market-category rail card. */
.comm-market-cats {
  padding: 16px;
}

.comm-market-cats .comm-rail-head {
  margin-bottom: 10px;
}

.comm-market-cats .comm-rail-head h3 {
  font-size: 14px !important;
}

.comm-market-cats .comm-rail-action {
  font-size: 11.5px;
}

.comm-market-cats .comm-cat-chips {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.comm-market-cats .comm-cat-chip {
  align-items: center;
  background: #f8fafc;
  border: 1px solid transparent;
  border-radius: 12px;
  color: var(--itmk-text, #16202b);
  display: inline-flex;
  font-size: 12px;
  font-weight: 650;
  gap: 7px;
  min-width: 0;
  overflow: hidden;
  padding: 7px 8px;
  text-decoration: none;
  text-overflow: ellipsis;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  white-space: nowrap;
}

.comm-market-cats .comm-cat-chip .bi {
  color: var(--itmk-blue);
  flex: 0 0 15px;
  font-size: 14px;
  opacity: 0.85;
  text-align: center;
}

.comm-market-cats .comm-cat-chip:hover {
  background: #eef4fb;
  border-color: #d9e4ef;
  color: var(--itmk-blue);
}

/* ============================================================
   Right rail: online-members widget, premium price, "all categories"
   ============================================================ */

/* Онлајн членови — dark pill with a pulsing dot and an activity equalizer
   whose speed/height are driven by the current member count (see the
   template: --bars-speed inline + is-low / is-high / is-flat state class). */
.comm-online-widget {
  align-items: center;
  background: #263442;
  border: 1px solid #263442;
  border-radius: 14px;
  color: #fff;
  display: flex;
  gap: 9px;
  margin-bottom: 0;
  padding: 12px 16px;
}

.comm-online-dot {
  animation: comm-online-pulse 2s ease-in-out infinite;
  background: var(--itmk-success, #75b200);
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgba(117, 178, 0, 0.2);
  flex: 0 0 auto;
  height: 9px;
  width: 9px;
}

.comm-online-count {
  font-size: 20px;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.comm-online-label {
  color: rgba(255, 255, 255, 0.55);
  font-size: 13px;
  font-weight: 600;
}

.comm-online-bars {
  align-items: flex-end;
  display: inline-flex;
  gap: 3px;
  height: 22px;
  margin-left: auto;
}

.comm-online-bars span {
  animation: comm-bars var(--bars-speed, 0.9s) ease-in-out infinite;
  background: #79b9cf;
  border-radius: 2px;
  height: 40%;
  width: 3px;
}

.comm-online-bars span:nth-child(1) { animation-delay: 0s; }
.comm-online-bars span:nth-child(2) { animation-delay: 0.18s; }
.comm-online-bars span:nth-child(3) { animation-delay: 0.06s; }
.comm-online-bars span:nth-child(4) { animation-delay: 0.24s; }
.comm-online-bars span:nth-child(5) { animation-delay: 0.12s; }

@keyframes comm-bars {
  0%, 100% { height: 25%; }
  50% { height: 100%; }
}

/* Low activity — shorter, calmer bars. */
.comm-online-widget.is-low .comm-online-bars span {
  animation-name: comm-bars-low;
}

@keyframes comm-bars-low {
  0%, 100% { height: 18%; }
  50% { height: 52%; }
}

/* High activity — taller peaks (speed already shortened via --bars-speed). */
.comm-online-widget.is-high .comm-online-bars span {
  animation-name: comm-bars-high;
}

@keyframes comm-bars-high {
  0%, 100% { height: 35%; }
  50% { height: 100%; }
}

/* Zero online — flat line, no motion. */
.comm-online-widget.is-flat .comm-online-bars span {
  animation: none;
  height: 14%;
}

@media (prefers-reduced-motion: reduce) {
  .comm-online-dot,
  .comm-online-bars span {
    animation: none !important;
  }
}

/* Premium price line. */
.comm-premium-price {
  align-items: baseline;
  color: #fff;
  display: flex;
  gap: 6px;
  margin-bottom: 16px;
}

.comm-premium-price strong {
  font-size: 30px;
  font-weight: 900;
  line-height: 1;
}

.comm-premium-price span {
  color: rgba(255, 255, 255, 0.55);
  font-size: 14px;
  font-weight: 700;
}

/* Compact right-rail rhythm pass. */
.comm-rail {
  --comm-rail-gap: 18px;
  --comm-rail-top-gap-tighten: -8px;
}

.comm-rail > :nth-child(2),
.comm-rail > :nth-child(3),
.comm-rail > :nth-child(4) {
  margin-top: var(--comm-rail-top-gap-tighten);
}

.comm-premium-card {
  padding: 20px 22px 20px !important;
}

.comm-premium-card .comm-mono-label {
  align-items: center;
  display: inline-flex;
  font-size: 11px !important;
  gap: 6px;
  margin-bottom: 8px;
}

.comm-premium-coin {
  display: block;
  height: 18px;
  image-rendering: pixelated;
  width: 18px;
}

.comm-premium-card h3 {
  font-size: 18px !important;
  line-height: 1.28;
  margin-bottom: 9px;
}

.comm-premium-card ul {
  gap: 3px;
  margin-bottom: 10px;
}

.comm-premium-card li {
  font-size: 12px !important;
  line-height: 1.25 !important;
}

.comm-premium-card li::before {
  margin-right: 6px;
}

.comm-premium-price {
  gap: 5px;
  margin-bottom: 12px;
}

.comm-premium-price strong {
  font-size: 22px;
  font-weight: 800;
}

.comm-premium-price span {
  font-size: 12px;
  font-weight: 600;
}

.comm-premium-action {
  gap: 9px;
}

.comm-premium-action a {
  border-radius: 20px;
  font-size: 13px;
  font-weight: 700;
  gap: 8px;
  padding: 8px 14px;
}

.comm-premium-action a i {
  font-size: 13px;
  height: 22px;
  width: 22px;
}

.post-card-vote .bi-caret-up-fill,
.post-card-vote .bi-caret-down-fill {
  font-size: 15px;
  line-height: 1;
}

.post-card-reactions .bi-caret-up-fill {
  color: var(--itmk-blue, #4d6786);
  font-size: 0.9em;
  line-height: 1;
  vertical-align: -0.05em;
}

.comm-leaderboard li:nth-child(n+4) {
  grid-template-columns: 18px 18px 1fr auto auto;
}

.comm-leaderboard li:nth-child(n+4) img,
.comm-leaderboard li:nth-child(n+4) .comm-mini-avatar {
  font-size: 8px !important;
  height: 18px !important;
  width: 18px !important;
}

.comm-leaderboard li:nth-child(n+4) strong {
  font-size: 13px !important;
  font-weight: 650;
}

.is-top-members-widget .is-top-members-lower-row {
  grid-template-columns: 18px 16px 1fr auto auto !important;
}

.is-top-members-widget .is-top-members-lower-row img,
.is-top-members-widget .is-top-members-lower-row .avatar,
.is-top-members-widget .is-top-members-lower-row .comm-mini-avatar,
.is-top-members-widget .is-top-members-lower-row [class*="avatar"],
.is-top-members-widget .is-top-members-lower-row > :nth-child(2) {
  font-size: 7px !important;
  height: 16px !important;
  max-height: 16px !important;
  max-width: 16px !important;
  width: 16px !important;
}

.is-top-members-widget .is-top-members-lower-row strong,
.is-top-members-widget .is-top-members-lower-row b,
.is-top-members-widget .is-top-members-lower-row [class*="name"] {
  font-size: 12px !important;
  font-weight: 600 !important;
}

.is-top-members-widget img[src*="gold-coin"],
.is-top-members-widget img[src*="coin"],
.is-top-members-widget [class*="badge"] img,
.is-top-members-widget [class*="premium"] img {
  height: 11px !important;
  max-height: 11px !important;
  max-width: 11px !important;
  width: 11px !important;
}

.is-top-members-widget [data-bs-toggle="tooltip"],
.is-top-members-widget [title],
.is-top-members-widget [class*="tooltip"],
.is-top-members-widget [class*="info"] {
  font-size: 10px !important;
  line-height: 1.2 !important;
}

.top-members-tooltip,
.top-members-tooltip .tooltip-inner {
  font-size: 10px !important;
  line-height: 1.25 !important;
}

.post-card-ribbon {
  font-size: 9px !important;
}

/* Flat right rail: widgets sit directly on the page background. */
.comm-rail > .widget,
.comm-rail .comm-rail-card,
.comm-pulse-stat {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.comm-rail .comm-rail-card {
  border-radius: 0;
  padding: 0 !important;
}

.comm-pulse-stat {
  padding: 4px 0;
}

.comm-rail > .comm-pulse,
.comm-rail > .widget:has(.comm-pulse-grid),
.comm-rail > .widget:has(.comm-pulse-stat) {
  margin-bottom: -6px;
  margin-top: -6px;
}

.comm-rail .comm-pulse-stat {
  padding: 1px 0;
}

html:not([data-bs-theme="dark"]) body:not([data-bs-theme="dark"]) .comm-rail .comm-pulse-stat,
[data-bs-theme="light"] .comm-rail .comm-pulse-stat {
  background: #f8fafc !important;
  border-color: transparent !important;
  border-radius: 12px;
  padding: 7px 8px;
}

/* "Сите категории" stays neutral with the rest of the category chips. */
.comm-market-cats .comm-cat-chip--all {
  background: #f8fafc !important;
  border-color: transparent !important;
  color: var(--itmk-text, #16202b) !important;
}

.comm-market-cats .comm-cat-chip--all .bi {
  color: var(--itmk-blue) !important;
  opacity: 0.85;
}

.comm-market-cats .comm-cat-chip--all:hover {
  background: #eef4fb !important;
  border-color: #d9e4ef !important;
  color: var(--itmk-blue) !important;
}

[data-bs-theme="dark"] .comm-market-cats,
[data-bs-theme="dark"] .comm-deal-card {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

[data-bs-theme="dark"] .comm-market-cats .comm-rail-head h3,
[data-bs-theme="dark"] .comm-deal-card .comm-rail-head h3 {
  color: #eef4fb !important;
}

[data-bs-theme="dark"] .comm-market-cats .comm-rail-action,
[data-bs-theme="dark"] .comm-deal-card .comm-rail-action {
  color: #a7b8cc;
}

[data-bs-theme="dark"] .comm-market-cats .comm-cat-chip {
  background: #202b38 !important;
  border-color: rgba(148, 163, 184, 0.16) !important;
  color: #dce6f2 !important;
}

[data-bs-theme="dark"] .comm-market-cats .comm-cat-chip .bi {
  color: #8fb1d3 !important;
  opacity: 1;
}

[data-bs-theme="dark"] .comm-market-cats .comm-cat-chip:hover {
  background: #263546 !important;
  border-color: rgba(145, 171, 201, 0.42) !important;
  color: #ffffff !important;
}

[data-bs-theme="dark"] .comm-market-cats .comm-cat-chip:hover .bi {
  color: #b9d3ee !important;
}

[data-bs-theme="dark"] .comm-market-cats .comm-cat-chip--all {
  background: #202b38 !important;
  border-color: rgba(148, 163, 184, 0.16) !important;
  color: #dce6f2 !important;
}

[data-bs-theme="dark"] .comm-market-cats .comm-cat-chip--all .bi {
  color: #8fb1d3 !important;
}

[data-bs-theme="dark"] .comm-market-cats .comm-cat-chip--all:hover {
  background: #263546 !important;
  border-color: rgba(145, 171, 201, 0.42) !important;
  color: #ffffff !important;
}

[data-bs-theme="dark"] .comm-deal-thumb {
  background: #202b38;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.14);
}

[data-bs-theme="dark"] .comm-job-logo {
  background: #202b38;
  border-color: rgba(148, 163, 184, 0.16);
}

[data-bs-theme="dark"] .comm-deal-title {
  color: #eef4fb !important;
}

[data-bs-theme="dark"] .comm-deal-price {
  color: #ff3b48;
}

/* Category archives */
.itmk-archive-hero {
  background: #fff;
  border: 1px solid var(--itmk-line, #e5e8ec);
  border-radius: 18px;
  box-shadow: 0 10px 24px rgba(22, 32, 43, 0.05);
  margin-bottom: 18px;
  padding: 18px 20px;
}

.itmk-archive-eyebrow {
  color: var(--itmk-red, #e4222e);
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.itmk-archive-hero h1 {
  color: #111a24;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 900;
  line-height: 1.08;
  margin: 0;
}

.itmk-archive-meta {
  color: #748294;
  display: flex;
  font-size: 13px;
  font-weight: 650;
  gap: 8px;
  margin-top: 8px;
}

.itmk-archive-hero .archive-description {
  color: #566579;
  font-size: 14px;
  line-height: 1.55;
  margin-top: 10px;
}

.itmk-archive-hero .archive-description p {
  margin: 0;
}

.itmk-archive-hero .archive-description p + p {
  margin-top: 8px;
}

.itmk-category-hero {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 18px;
  padding: 2px 4px 0;
}

.itmk-category-hero h1 {
  font-size: clamp(28px, 3vw, 38px);
}

.itmk-tag-hero .itmk-tag-title {
  font-size: clamp(22px, 2.1vw, 30px);
  font-weight: 500;
}

.itmk-tag-hero .itmk-tag-title span {
  font-weight: 500;
}

.itmk-tag-hero .itmk-tag-title strong {
  font-weight: 900;
}

.itmk-category-hero .itmk-archive-meta {
  align-items: center;
  font-size: 12.5px;
  font-weight: 750;
}

.itmk-category-hero .itmk-archive-meta span {
  align-items: center;
  display: inline-flex;
  gap: 5px;
}

.itmk-category-hero .itmk-archive-meta .bi {
  color: var(--itmk-blue, #4d6786);
  font-size: 13px;
}

.itmk-author-hero {
  align-items: center;
  display: flex;
  gap: 18px;
  margin: 2px 0 22px;
  padding: 2px 4px 6px;
}

.itmk-author-avatar-wrap {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line, #e5e8ec);
  border-radius: 50%;
  box-shadow: 0 8px 18px rgba(22, 32, 43, 0.06);
  display: inline-flex;
  flex: 0 0 88px;
  height: 88px;
  justify-content: center;
  overflow: hidden;
  width: 88px;
}

.itmk-author-avatar {
  display: block;
  height: 100% !important;
  object-fit: cover;
  width: 100% !important;
}

.itmk-author-content {
  min-width: 0;
}

.itmk-author-heading {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.itmk-author-content h1 {
  color: #111a24;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.12;
  margin: 0;
}

.itmk-author-meta {
  align-items: center;
  color: #748294;
  display: flex;
  flex-wrap: wrap;
  font-size: 12.5px;
  font-weight: 750;
  gap: 8px 12px;
  margin-top: 7px;
}

.itmk-author-meta span {
  align-items: center;
  display: inline-flex;
  gap: 5px;
}

.itmk-author-meta .bi {
  color: var(--itmk-blue, #4d6786);
  font-size: 13px;
}

.itmk-author-content p {
  color: #566579;
  font-size: 14px;
  line-height: 1.5;
  margin: 8px 0 0;
  max-width: 760px;
}

.itmk-author-socials {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 0;
}

.itmk-author-socials a {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line, #e5e8ec);
  border-radius: 50%;
  color: var(--itmk-blue, #4d6786);
  display: inline-flex;
  font-size: 15px;
  height: 34px;
  justify-content: center;
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
  width: 34px;
}

.itmk-author-socials a:hover {
  background: var(--itmk-blue, #4d6786);
  border-color: var(--itmk-blue, #4d6786);
  color: #fff;
  transform: translateY(-1px);
}

.itmk-interviews-showcase {
  background: #fff;
  border: 1px solid var(--itmk-line, #e5e8ec);
  border-radius: 24px;
  box-shadow: 0 10px 24px rgba(22, 32, 43, 0.05);
  display: grid;
  gap: 22px;
  grid-template-columns: minmax(260px, 0.95fr) minmax(0, 1.05fr);
  margin-bottom: 18px;
  overflow: hidden;
  padding: 18px;
}

.itmk-interviews-feature-image {
  background: #edf2f7;
  border-radius: 18px;
  color: var(--itmk-blue, #4d6786);
  display: block;
  min-height: 310px;
  overflow: hidden;
  text-decoration: none;
}

.itmk-interviews-feature-image img {
  display: block;
  height: 100%;
  min-height: 310px;
  object-fit: cover;
  width: 100%;
}

.itmk-interviews-feature-image > span {
  align-items: center;
  display: flex;
  font-size: 14px;
  font-weight: 900;
  height: 100%;
  justify-content: center;
  min-height: 310px;
}

.itmk-interviews-feature-copy {
  align-content: center;
  display: grid;
  gap: 10px;
  min-width: 0;
}

.itmk-interviews-kicker {
  color: var(--itmk-red, #e4222e);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.itmk-interviews-person {
  color: var(--itmk-blue, #4d6786);
  font-size: 13px;
  font-weight: 900;
}

.itmk-interviews-feature-copy h2 {
  font-size: clamp(26px, 3vw, 40px);
  font-weight: 950;
  line-height: 1.08;
  margin: 0;
}

.itmk-interviews-feature-copy h2 a,
.itmk-interview-slide a {
  color: #111a24;
  text-decoration: none;
}

.itmk-interviews-feature-copy h2 a:hover,
.itmk-interview-slide a:hover strong {
  color: var(--itmk-blue, #4d6786);
}

.itmk-interviews-feature-copy p {
  color: #627083;
  font-size: 15px;
  line-height: 1.5;
  margin: 0;
}

.itmk-interviews-read {
  align-items: center;
  color: var(--itmk-red, #e4222e);
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  gap: 6px;
  justify-self: start;
  text-decoration: none;
}

.itmk-interviews-strip {
  margin: 0 0 18px;
}

.itmk-interviews-strip-head {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

.itmk-interviews-strip-head h2 {
  color: #111a24;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.2;
  margin: 0;
}

.itmk-interviews-nav {
  display: flex;
  gap: 8px;
}

.itmk-interviews-nav .product-slider-prev,
.itmk-interviews-nav .product-slider-next {
  display: flex;
  height: 32px;
  position: static;
  transform: none;
  width: 32px;
}

.itmk-interviews-slider-wrap {
  margin: 0;
  overflow: hidden;
  width: 100%;
}

.itmk-interview-slide {
  height: auto;
}

.itmk-interview-slide a {
  background: #fff;
  border: 1px solid var(--itmk-line, #e5e8ec);
  border-radius: 16px;
  display: grid;
  gap: 9px;
  height: 100%;
  overflow: hidden;
  padding: 8px;
}

.itmk-interview-slide-image {
  background: #edf2f7;
  border-radius: 12px;
  color: var(--itmk-blue, #4d6786);
  display: block;
  overflow: hidden;
  position: relative;
}

.itmk-interview-slide-image::before {
  content: "";
  display: block;
  padding-top: 62%;
}

.itmk-interview-slide-image img,
.itmk-interview-slide-image > span {
  height: 100%;
  inset: 0;
  position: absolute;
  width: 100%;
}

.itmk-interview-slide-image img {
  display: block;
  object-fit: cover;
}

.itmk-interview-slide-image > span {
  align-items: center;
  display: flex;
  font-size: 12px;
  font-weight: 900;
  justify-content: center;
}

.itmk-interview-slide-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 0 2px 2px;
}

.itmk-interview-slide-copy em {
  color: var(--itmk-blue, #4d6786);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.itmk-interview-slide-copy strong {
  color: #111a24;
  display: -webkit-box;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media (max-width: 575.98px) {
  .itmk-author-hero {
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
  }

  .itmk-author-avatar-wrap {
    flex-basis: 62px;
    height: 62px;
    width: 62px;
  }

  .itmk-author-content h1 {
    font-size: 24px;
  }

  .itmk-author-content p {
    font-size: 14px;
  }
}

@media (max-width: 767.98px) {
  .itmk-interviews-showcase {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  .itmk-interviews-feature-image,
  .itmk-interviews-feature-image img,
  .itmk-interviews-feature-image > span {
    min-height: 220px;
  }
}

[data-bs-theme="dark"] .itmk-archive-hero {
  background: #17212c;
  border-color: rgba(148, 163, 184, 0.16);
  box-shadow: none;
}

[data-bs-theme="dark"] .itmk-author-avatar-wrap,
[data-bs-theme="dark"] .itmk-author-socials a,
[data-bs-theme="dark"] .itmk-interviews-showcase,
[data-bs-theme="dark"] .itmk-interview-slide a {
  background: #17212c;
  border-color: rgba(148, 163, 184, 0.16);
  box-shadow: none;
}

[data-bs-theme="dark"] .itmk-category-hero {
  background: transparent;
  border-color: transparent;
}

[data-bs-theme="dark"] .itmk-archive-hero h1 {
  color: #eef4fb;
}

[data-bs-theme="dark"] .itmk-author-content h1,
[data-bs-theme="dark"] .itmk-interviews-feature-copy h2 a,
[data-bs-theme="dark"] .itmk-interviews-strip-head h2,
[data-bs-theme="dark"] .itmk-interview-slide-copy strong {
  color: #eef4fb;
}

[data-bs-theme="dark"] .itmk-archive-meta,
[data-bs-theme="dark"] .itmk-archive-hero .archive-description,
[data-bs-theme="dark"] .itmk-author-meta,
[data-bs-theme="dark"] .itmk-author-content p,
[data-bs-theme="dark"] .itmk-interviews-feature-copy p {
  color: var(--itmk-soft-text);
}

/* ============================================================
   Single WP post detail — keeps the community shell while giving
   the article column a proper editorial reading surface.
   ============================================================ */
.itmk-single-shell {
  align-items: start;
}

.itmk-single-feed {
  min-width: 0;
}

.itmk-single-post,
.itmk-single-nav,
.itmk-single-related,
.itmk-single-comments {
  background: var(--itmk-card-bg, #fff);
  border: 1px solid var(--itmk-line, #e5e8ec);
  border-radius: 24px;
  box-shadow: 0 1px 1px rgba(22, 32, 43, 0.02);
  color: var(--itmk-text, #111a24);
}

.itmk-single-post {
  overflow: hidden;
}

.itmk-single-header {
  padding: 22px 38px 0;
}

.itmk-single-byline-row {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-top: 0;
}

.itmk-single-author-row {
  flex: 0 0 auto;
  justify-content: flex-start;
  margin: 0;
}

.itmk-single-category-row {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}

.itmk-single-card-footer {
  margin-top: 14px;
  padding-bottom: 14px;
  padding-top: 14px;
}

.itmk-single-kicker-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.itmk-single-title {
  color: #111a24;
  font-size: clamp(26px, 2.4vw, 34px);
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.12;
  margin: 20px auto 0;
  max-width: 760px;
}

.itmk-single-dek {
  color: #617083;
  font-size: 20px;
  line-height: 1.45;
  margin: 18px 0 0;
  max-width: 760px;
}

.itmk-single-meta {
  align-items: center;
  border-top: 1px solid var(--itmk-line, #e5e8ec);
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  margin-top: 26px;
  padding-top: 18px;
}

.itmk-single-author {
  align-items: center;
  color: #1d2835;
  display: inline-flex;
  gap: 10px;
  margin-right: 4px;
  text-decoration: none;
}

.itmk-single-avatar,
.itmk-single-author-avatar {
  border-radius: 50%;
  flex: 0 0 auto;
  object-fit: cover;
}

.itmk-single-author span {
  display: grid;
  gap: 1px;
}

.itmk-single-author strong {
  font-size: 14px;
  font-weight: 850;
  line-height: 1.1;
}

.itmk-single-author em,
.itmk-single-author-card > div > span {
  color: #7b8796;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
}

.itmk-single-meta-item {
  align-items: center;
  color: #748294;
  display: inline-flex;
  font-size: 13px;
  font-weight: 700;
  gap: 6px;
  text-decoration: none;
}

a.itmk-single-meta-item:hover {
  color: var(--itmk-red, #e4222e);
}

.itmk-single-featured {
  background: #f5f7fa;
  aspect-ratio: 16 / 9;
  display: block;
  margin: 0;
  overflow: hidden;
  width: 100%;
}

.itmk-single-featured-img {
  display: block;
  height: 100%;
  max-height: none;
  min-width: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.itmk-single-featured figcaption {
  border-top: 1px solid var(--itmk-line, #e5e8ec);
  color: #7b8796;
  font-size: 12px;
  padding: 10px 38px;
}

.itmk-single-content {
  color: #1f2d3b;
  font-family: var(--itmk-serif, "PT Serif", Georgia, "Times New Roman", serif);
  font-size: 15px;
  line-height: 1.72;
  padding: 22px 38px 12px;
}

.itmk-single-content > * {
  margin-left: auto;
  margin-right: auto;
  max-width: 760px;
}

.itmk-single-content > :first-child {
  margin-top: 0;
}

.itmk-single-content p,
.itmk-single-content ul,
.itmk-single-content ol {
  margin-bottom: 1.35em;
}

.itmk-single-content h2,
.itmk-single-content h3,
.itmk-single-content h4 {
  color: #111a24;
  font-family: "Inter", var(--bs-font-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.18;
  margin-bottom: 0.65em;
  margin-top: 1.55em;
}

.itmk-single-content h2 {
  font-size: 20px;
}

.itmk-single-content h3 {
  font-size: 17px;
}

.itmk-single-content h4 {
  font-size: 15px;
}

.itmk-single-content a {
  color: var(--itmk-red, #e4222e);
  font-weight: 700;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.itmk-single-content blockquote,
.itmk-single-content .wp-block-quote {
  background: #f6f8fa;
  border-left: 4px solid var(--itmk-red, #e4222e);
  border-radius: 0 18px 18px 0;
  color: #293746;
  font-size: 15px;
  font-style: normal;
  line-height: 1.55;
  padding: 22px 26px;
}

.itmk-single-content blockquote cite,
.itmk-single-content .wp-block-quote cite {
  color: #748294;
  display: block;
  font-family: "Inter", var(--bs-font-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 800;
  margin-top: 12px;
}

.itmk-single-content img,
.itmk-single-content video,
.itmk-single-content iframe {
  border-radius: 18px;
  height: auto;
  max-width: 100%;
}

.itmk-single-content figure,
.itmk-single-content .wp-block-image,
.itmk-single-content .wp-block-embed {
  max-width: 920px;
}

.itmk-single-content figcaption,
.itmk-single-content .wp-element-caption {
  color: #7b8796;
  font-family: "Inter", var(--bs-font-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 12px;
  line-height: 1.4;
  margin-top: 9px;
  text-align: left;
}

.itmk-single-content pre,
.itmk-single-content code,
.itmk-single-content kbd {
  font-family: "PT Mono", Consolas, "Courier New", monospace;
}

.itmk-single-content pre,
.itmk-single-content .wp-block-code {
  background: #111a24;
  border-radius: 18px;
  color: #f6f8fa;
  font-size: 13px;
  line-height: 1.6;
  overflow-x: auto;
  padding: 20px 22px;
}

.itmk-single-content table {
  border: 1px solid var(--itmk-line, #e5e8ec);
  border-radius: 16px;
  display: block;
  font-family: "Inter", var(--bs-font-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 13px;
  overflow-x: auto;
  width: 100%;
}

.itmk-single-content th,
.itmk-single-content td {
  border-bottom: 1px solid var(--itmk-line, #e5e8ec);
  padding: 11px 13px;
}

.itmk-single-pages {
  display: flex;
  flex-wrap: wrap;
  font-family: "Inter", var(--bs-font-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  gap: 8px;
}

.itmk-single-tags {
  border-top: 1px solid var(--itmk-line, #e5e8ec);
  display: grid;
  gap: 10px;
  padding: 22px 38px 30px;
}

.itmk-single-tags > span {
  color: #7b8796;
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
}

.itmk-single-tags > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.itmk-single-author-card {
  align-items: flex-start;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--itmk-text, #111a24);
  display: flex;
  gap: 14px;
  margin-top: 16px;
  padding: 20px 38px;
}

.itmk-single-author-card h2 {
  font-size: 16px;
  font-weight: 900;
  line-height: 1.2;
  margin: 2px 0 6px;
}

.itmk-single-author-card h2 a {
  color: #111a24;
  text-decoration: none;
}

.itmk-single-author-card p {
  color: #617083;
  font-size: 15px;
  line-height: 1.5;
  margin: 0 0 10px;
}

.itmk-single-author-all {
  align-items: center;
  color: var(--itmk-blue, #4d6786);
  display: inline-flex;
  font-size: 12px;
  font-weight: 850;
  gap: 6px;
  text-decoration: none;
}

.itmk-single-author-all:hover {
  color: var(--itmk-red, #e4222e);
}

.itmk-single-nav {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 16px;
  overflow: visible;
}

.itmk-single-nav-link {
  background: var(--itmk-card-bg, #fff);
  border: 1px solid var(--itmk-line, #e5e8ec);
  border-radius: 18px;
  color: #111a24;
  display: grid;
  gap: 5px;
  min-height: 72px;
  padding: 10px;
  text-decoration: none;
}

.itmk-single-nav-link.has-thumb {
  align-items: center;
  gap: 5px 11px;
  grid-template-columns: 74px minmax(0, 1fr);
}

.itmk-single-nav-link + .itmk-single-nav-link {
  border-left: 1px solid var(--itmk-line, #e5e8ec);
}

.itmk-single-nav-link:hover {
  background: #f6f8fa;
  color: #111a24;
}

.itmk-single-nav-thumb {
  aspect-ratio: 16 / 9;
  background: #eef2f6;
  border-radius: 12px;
  display: block;
  grid-row: 1 / span 2;
  overflow: hidden;
}

.itmk-single-nav-thumb img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.itmk-single-nav-label {
  color: #748294;
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.itmk-single-nav-link strong {
  display: -webkit-box;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.28;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.itmk-single-nav-link--next {
  text-align: left;
}

.itmk-single-nav-link--next.has-thumb {
  grid-template-columns: minmax(0, 1fr) 74px;
}

.itmk-single-nav-link--next .itmk-single-nav-thumb {
  grid-column: 2;
}

.itmk-single-nav-link--next .itmk-single-nav-label,
.itmk-single-nav-link--next strong {
  grid-column: 1;
}

.itmk-single-read-time {
  color: #748294;
}

.itmk-single-related {
  margin-top: 16px;
  padding: 26px 28px 30px;
}

.itmk-single-related h2 {
  color: #111a24;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.2;
  margin: 0 0 16px;
}

.itmk-single-related-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.itmk-single-related-card {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.itmk-single-related-thumb {
  aspect-ratio: 16 / 10;
  background: #eef2f6;
  border-radius: 14px;
  display: block;
  overflow: hidden;
  text-decoration: none;
}

.itmk-single-related-thumb img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.itmk-single-related-thumb > span {
  align-items: center;
  color: #8a96a5;
  display: flex;
  font-size: 22px;
  height: 100%;
  justify-content: center;
  width: 100%;
}

.itmk-single-related-title {
  color: #111a24;
  display: -webkit-box;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.25;
  overflow: hidden;
  text-decoration: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.itmk-single-related-title:hover {
  color: var(--itmk-red, #e4222e);
}

.itmk-single-related-date {
  color: #748294;
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-top: 6px;
}

.itmk-single-comments {
  margin-top: 16px;
  padding: 20px;
}

.itmk-single-comments #comments,
.itmk-single-comments .comments-area {
  margin: 0;
}

/* XFtoWP thread comments: present the connected forum conversation as a
   native part of the article rather than an embedded legacy comment list. */
.itmk-single-comments .comments-tabs.xfwp-tabs {
  align-items: stretch;
  background: var(--itmk-app-bg, #f2f4f6);
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 13px;
  display: grid;
  gap: 4px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 0 14px;
  padding: 3px;
}

.itmk-single-comments .xfwp-tab {
  align-items: center;
  border: 0 !important;
  border-radius: 9px;
  color: var(--itmk-soft-text, #667386);
  cursor: pointer;
  display: flex;
  font-size: 13px;
  font-weight: 700;
  justify-content: center;
  line-height: 1.3;
  min-height: 36px;
  padding: 7px 12px !important;
  text-align: center;
  transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.itmk-single-comments .xfwp-tab.active {
  background: var(--itmk-blue, #24384b);
  box-shadow: 0 4px 12px rgba(36, 56, 75, 0.16);
  color: #fff;
}

.itmk-single-comments .forum-comments {
  color: var(--itmk-text, #16202b);
  font-family: var(--itmk-font-ui, "Inter", system-ui, sans-serif);
}

.itmk-single-comments .forum-comments-title {
  align-items: center;
  border-bottom: 1px solid var(--itmk-line, #dfe5eb);
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin: 0 0 10px;
  padding: 0 2px 10px;
}

.itmk-single-comments .forum-comments-title h2 {
  align-items: center;
  color: var(--itmk-text, #16202b);
  display: flex;
  font-size: 19px;
  font-weight: 800;
  gap: 9px;
  letter-spacing: -0.015em;
  margin: 0;
}

.itmk-single-comments .forum-comments-title h2 .xfwp-icon-comment {
  color: var(--itmk-red, #e4222e);
  font-size: 19px;
}

.itmk-single-comments .forum-comments-title-link {
  margin: 0;
}

.itmk-single-comments .forum-comments-title-link a {
  align-items: center;
  background: var(--itmk-red, #e4222e);
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 750;
  min-height: 32px;
  padding: 6px 12px;
  text-decoration: none;
}

.itmk-single-comments .forum-comments-title-link a:hover {
  background: #c91b26;
  color: #fff;
}

.itmk-single-comments .forum-comments-refresh {
  color: var(--itmk-soft-text, #667386);
  font-size: 12px;
  margin: -8px 0 12px;
}

.itmk-single-comments .forum-comments-list {
  display: grid;
  gap: 7px;
}

.itmk-single-comments .forum-comment {
  background: var(--itmk-card-bg, #fff);
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 14px;
  margin: 0 !important;
  padding: 11px 14px 12px;
}

.itmk-single-comments .forum-comment-inner {
  min-width: 0;
}

.itmk-single-comments .forum-comment-user {
  align-items: center;
  display: grid;
  gap: 2px 8px;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  margin: 0 0 6px;
}

.itmk-single-comments .forum-comment-avatar {
  grid-row: 1 / span 2;
}

.itmk-single-comments .forum-comment-avatar,
.itmk-single-comments .forum-comment-avatar-image {
  border-radius: 50%;
  display: block;
  height: 34px;
  object-fit: cover;
  width: 34px;
}

.itmk-single-comments .forum-comment-avatar-image {
  border: 2px solid var(--itmk-card-bg, #fff);
  box-shadow: 0 0 0 1px var(--itmk-line, #dfe5eb);
}

.itmk-single-comments .forum-comment-byline {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}

.itmk-single-comments .forum-comment-username a {
  color: var(--itmk-text, #16202b);
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.itmk-single-comments .forum-comment-date {
  color: var(--itmk-soft-text, #758295);
  font-size: 11px;
  text-decoration: none;
}

.itmk-single-comments .forum-comment-attribution {
  align-items: center;
  display: flex;
  gap: 8px;
  grid-column: 3;
  grid-row: 1 / span 2;
}

.itmk-single-comments .xfwp-badge {
  background: rgba(228, 34, 46, 0.1) !important;
  border-radius: 999px;
  color: var(--itmk-red, #e4222e) !important;
  font-size: 0;
  font-weight: 800;
  line-height: 1;
  padding: 5px 7px;
}

.itmk-single-comments .xfwp-badge::after {
  content: "Ново";
  font-size: 10px;
}

.itmk-single-comments .forum-comment-count {
  color: var(--itmk-soft-text, #758295);
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
}

.itmk-single-comments .forum-comment-message {
  margin-left: 42px;
}

.itmk-single-comments .forum-comment-text {
  color: var(--itmk-text, #263341);
  font-size: 14px;
  line-height: 1.5;
}

.itmk-single-comments .forum-comment-text > :last-child {
  margin-bottom: 0;
}

.itmk-single-comments .forum-comment-text .xfBb-quote {
  background: var(--itmk-app-bg, #f2f4f6);
  border: 0;
  border-left: 3px solid var(--itmk-blue, #4d6786);
  border-radius: 0 10px 10px 0;
  color: var(--itmk-soft-text, #667386);
  font-size: 12.5px;
  margin: 0 0 12px;
  padding: 10px 12px;
}

.itmk-single-comments .forum-comment-actions {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin: 5px 0 0;
}

.itmk-single-comments .forum-comment-reply,
.itmk-single-comments .forum-comment-like {
  align-items: center;
  background: var(--itmk-app-bg, #f2f4f6);
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 999px;
  color: var(--itmk-blue, #4d6786);
  display: inline-flex;
  font-size: 11px;
  font-weight: 750;
  min-height: 26px;
  padding: 3px 9px;
  text-decoration: none;
}

.itmk-single-comments .forum-comment-reply:hover,
.itmk-single-comments .forum-comment-like:hover {
  border-color: var(--itmk-blue, #4d6786);
  color: var(--itmk-text, #16202b);
}

.itmk-single-comments .forum-comments-more {
  margin: 12px 0 0;
  padding: 0;
  text-align: center;
}

.itmk-single-comments .forum-comments-more .xfwp-button {
  align-items: center;
  background: var(--itmk-blue, #24384b) !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #fff !important;
  display: inline-flex;
  font-size: 12px;
  font-weight: 750;
  gap: 7px;
  justify-content: center;
  margin: 0;
  min-height: 36px;
  padding: 8px 15px !important;
  text-decoration: none;
  transition: background-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.itmk-single-comments .forum-comments-more .xfwp-button:hover {
  background: var(--itmk-red, #e4222e) !important;
  box-shadow: 0 5px 14px rgba(228, 34, 46, 0.18);
  transform: translateY(-1px);
}

.itmk-single-comments .forum-comments-more .xfwp-icon-load {
  align-items: center;
  display: inline-flex;
  font-family: inherit !important;
  font-size: 0;
  justify-content: center;
}

.itmk-single-comments .forum-comments-more .xfwp-icon-load::before {
  content: "↓";
  font-family: inherit !important;
  font-size: 13px;
  font-style: normal;
  font-weight: 800;
}

.itmk-single-comments .forum-comments-footer {
  border-top: 1px solid var(--itmk-line, #dfe5eb);
  margin-top: 18px;
  padding-top: 18px;
  text-align: center;
}

/* Desktop XFtoWP comments follow the XenForo post anatomy: identity rail on
   the left, post metadata across the top, and message/actions on the right. */
@media (min-width: 768px) {
  .itmk-single-comments .forum-comment {
    overflow: hidden;
    padding: 0;
  }

  .itmk-single-comments .forum-comment-inner {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    min-height: 116px;
    position: relative;
  }

  .itmk-single-comments .forum-comment-user {
    align-content: start;
    align-items: center;
    background: #f7f9fb;
    border-right: 1px solid var(--itmk-line, #dfe5eb);
    display: flex;
    flex-direction: column;
    gap: 5px;
    grid-column: 1;
    grid-row: 1;
    justify-content: flex-start;
    margin: 0;
    padding: 12px 8px 10px;
    text-align: center;
  }

  .itmk-single-comments .forum-comment-avatar {
    flex: 0 0 auto;
    grid-row: auto;
  }

  .itmk-single-comments .forum-comment-avatar,
  .itmk-single-comments .forum-comment-avatar-image {
    height: 52px;
    width: 52px;
  }

  .itmk-single-comments .forum-comment-byline {
    display: block;
    line-height: 1.2;
    min-width: 0;
    width: 100%;
  }

  .itmk-single-comments .forum-comment-username {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .itmk-single-comments .forum-comment-username a {
    font-size: 12px;
  }

  .itmk-single-comments .forum-comment-date {
    left: 118px;
    position: absolute;
    top: 11px;
  }

  .itmk-single-comments .forum-comment-attribution {
    display: flex;
    gap: 8px;
    grid-column: auto;
    grid-row: auto;
    position: absolute;
    right: 14px;
    top: 9px;
    z-index: 2;
  }

  .itmk-single-comments .forum-comment-message {
    border-top: 1px solid var(--itmk-line, #dfe5eb);
    grid-column: 2;
    grid-row: 1;
    margin: 36px 14px 0;
    min-width: 0;
    padding: 11px 4px 10px;
  }

  .itmk-single-comments .forum-comment-text {
    min-height: 50px;
  }

  .itmk-single-comments .forum-comment-actions {
    justify-content: flex-end;
    margin-top: 8px;
  }

  .itmk-single-comments .forum-comment-reply,
  .itmk-single-comments .forum-comment-like {
    background: #eef2f5;
    border-color: transparent;
    color: #33485e;
  }
}

[data-bs-theme="dark"] .itmk-single-comments .comments-tabs.xfwp-tabs,
[data-bs-theme="dark"] .itmk-single-comments .forum-comment-text .xfBb-quote,
[data-bs-theme="dark"] .itmk-single-comments .forum-comment-reply,
[data-bs-theme="dark"] .itmk-single-comments .forum-comment-like {
  background: #171717;
}

[data-bs-theme="dark"] .itmk-single-comments .forum-comment {
  background: #131313;
  border-color: rgba(255, 255, 255, 0.11);
}

[data-bs-theme="dark"] .itmk-single-comments .forum-comments-title h2,
[data-bs-theme="dark"] .itmk-single-comments .forum-comment-username a,
[data-bs-theme="dark"] .itmk-single-comments .forum-comment-text {
  color: #f3f5f7;
}

[data-bs-theme="dark"] .itmk-single-comments .forum-comment-avatar-image {
  border-color: #131313;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.14);
}

@media (min-width: 768px) {
  [data-bs-theme="dark"] .itmk-single-comments .forum-comment-user {
    background: #171717;
    border-color: rgba(255, 255, 255, 0.11);
  }

  [data-bs-theme="dark"] .itmk-single-comments .forum-comment-message {
    border-color: rgba(255, 255, 255, 0.11);
  }

  [data-bs-theme="dark"] .itmk-single-comments .forum-comment-reply,
  [data-bs-theme="dark"] .itmk-single-comments .forum-comment-like {
    background: #202020;
    color: #dbe4ed;
  }
}

@media (max-width: 767.98px) {
  .itmk-single-comments {
    padding: 14px;
  }

  .itmk-single-comments .comments-tabs.xfwp-tabs {
    margin-bottom: 12px;
  }

  .itmk-single-comments .xfwp-tab {
    font-size: 11px;
    padding-inline: 8px !important;
  }

  .itmk-single-comments .forum-comments-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .itmk-single-comments .forum-comments-title h2 {
    font-size: 18px;
  }

  .itmk-single-comments .forum-comment {
    padding: 10px 11px;
  }

  .itmk-single-comments .forum-comment-user {
    grid-template-columns: 32px minmax(0, 1fr) auto;
  }

  .itmk-single-comments .forum-comment-avatar,
  .itmk-single-comments .forum-comment-avatar-image {
    height: 32px;
    width: 32px;
  }

  .itmk-single-comments .forum-comment-message {
    margin-left: 0;
  }

  .itmk-single-comments .forum-comment-text {
    font-size: 13px;
    line-height: 1.58;
  }

  .itmk-single-comments .forum-comment-actions {
    justify-content: flex-start;
  }
}

.itmk-single-breadcrumbs {
  align-items: center;
  color: #7b8796;
  display: flex;
  flex-wrap: wrap;
  font-size: 11.5px;
  font-weight: 500;
  gap: 5px;
  line-height: 1.45;
  margin: 0;
  opacity: 0.78;
  padding: 0 38px 18px;
}

.itmk-single-content + .itmk-single-breadcrumbs {
  margin-top: -2px;
}

.itmk-single-breadcrumbs + .itmk-single-tags {
  padding-top: 18px;
}

.itmk-single-breadcrumbs a {
  color: inherit;
  text-decoration: none;
}

.itmk-single-breadcrumbs a:hover {
  color: var(--itmk-blue, #4d6786);
  text-decoration: underline;
}

body.single-post .itmk-community-feed {
  min-width: 0;
}

[data-bs-theme="dark"] .itmk-single-post,
[data-bs-theme="dark"] .itmk-single-nav,
[data-bs-theme="dark"] .itmk-single-related,
[data-bs-theme="dark"] .itmk-single-comments {
  background: #101010;
  border-color: rgba(255, 255, 255, 0.12);
}

[data-bs-theme="dark"] .itmk-single-featured {
  background: #111a24;
}

[data-bs-theme="dark"] .itmk-single-title,
[data-bs-theme="dark"] .itmk-single-content h2,
[data-bs-theme="dark"] .itmk-single-content h3,
[data-bs-theme="dark"] .itmk-single-content h4,
[data-bs-theme="dark"] .itmk-single-author-card h2 a,
[data-bs-theme="dark"] .itmk-single-nav-link,
[data-bs-theme="dark"] .itmk-single-nav-link:hover,
[data-bs-theme="dark"] .itmk-single-related h2,
[data-bs-theme="dark"] .itmk-single-related-title,
[data-bs-theme="dark"] .itmk-single-related-title:hover,
[data-bs-theme="dark"] .itmk-single-author {
  color: #f6f8fa;
}

[data-bs-theme="dark"] .itmk-single-content {
  color: rgba(246, 248, 250, 0.88);
}

[data-bs-theme="dark"] .itmk-single-dek,
[data-bs-theme="dark"] .itmk-single-author-card p,
[data-bs-theme="dark"] .itmk-single-meta-item,
[data-bs-theme="dark"] .itmk-single-featured figcaption,
[data-bs-theme="dark"] .itmk-single-content figcaption,
[data-bs-theme="dark"] .itmk-single-content .wp-element-caption,
[data-bs-theme="dark"] .itmk-single-nav-label,
[data-bs-theme="dark"] .itmk-single-related-date {
  color: rgba(246, 248, 250, 0.62);
}

[data-bs-theme="dark"] .itmk-single-breadcrumbs {
  color: rgba(246, 248, 250, 0.48);
}

[data-bs-theme="dark"] .itmk-single-breadcrumbs a:hover {
  color: rgba(246, 248, 250, 0.78);
}

[data-bs-theme="dark"] .itmk-single-content blockquote,
[data-bs-theme="dark"] .itmk-single-content .wp-block-quote,
[data-bs-theme="dark"] .itmk-single-nav-link:hover {
  background: #1a1a1a;
}

[data-bs-theme="dark"] .itmk-single-nav {
  background: transparent;
  border-color: transparent;
}

[data-bs-theme="dark"] .itmk-single-nav-link {
  background: #101010;
  border-color: rgba(255, 255, 255, 0.12);
}

[data-bs-theme="dark"] .itmk-single-nav-thumb {
  background: #1a1a1a;
}

/* Dark IT.mk footer inspired by the legacy community footer. */
.itmk-footer {
  background: #243342;
  color: #9fadb9;
  margin-top: 44px;
}

.itmk-footer a {
  color: inherit;
  text-decoration: none;
}

.itmk-footer a:hover {
  color: #fff;
}

.itmk-footer-forum {
  background:
    repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.018) 0 2px, transparent 2px 46px),
    #1f2c39;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  padding: 30px 0 28px;
}

.itmk-footer-forum-kicker {
  align-items: center;
  color: #f4f7fb !important;
  display: inline-flex;
  font-family: var(--itmk-serif, Georgia, serif);
  font-size: 21px;
  gap: 12px;
  line-height: 1.25;
  margin-bottom: 26px;
}

.itmk-footer-forum-kicker .bi {
  color: var(--itmk-red, #e4222e);
  font-size: 28px;
}

.itmk-footer-forum-links {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 18px 34px;
}

.itmk-footer-forum-links a {
  align-items: center;
  color: #e7edf3;
  display: inline-flex;
  font-family: var(--itmk-serif, Georgia, serif);
  font-size: 16px;
  gap: 10px;
}

.itmk-footer-forum-links .bi {
  color: #f7fafc;
  font-size: 22px;
  opacity: 0.95;
}

.itmk-footer-main {
  background: #273746;
  padding: 54px 0 34px;
}

.itmk-footer-widget-top,
.itmk-footer-info-widget {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  margin-bottom: 34px;
  padding-bottom: 24px;
}

.itmk-footer-info-widget {
  border-bottom: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  margin: 24px 0 0;
  padding: 20px 0 0;
}

.itmk-footer-grid {
  display: grid;
  gap: 52px;
  grid-template-columns: minmax(180px, 1fr) minmax(170px, 0.9fr) minmax(360px, 1.45fr);
}

.itmk-footer h2 {
  color: #f5f8fb;
  font-family: var(--itmk-serif, Georgia, serif);
  font-size: 22px;
  font-weight: 400;
  line-height: 1.2;
  margin: 0 0 18px;
}

.itmk-footer-column nav {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.itmk-footer-column a {
  align-items: center;
  color: #9fadb9;
  display: inline-flex;
  font-family: "PT Mono", Consolas, "Courier New", monospace;
  font-size: 13px;
  gap: 8px;
  line-height: 1.25;
}

.itmk-footer-column em {
  background: var(--itmk-red, #e4222e);
  border-radius: 4px;
  color: #fff;
  font-size: 8px;
  font-style: normal;
  font-weight: 800;
  line-height: 1;
  padding: 3px 5px;
  text-transform: uppercase;
}

.itmk-footer-newsletter form {
  align-items: center;
  display: flex;
  gap: 12px;
  margin-bottom: 12px;
}

.itmk-footer-newsletter input {
  background: #fff;
  border: 0;
  border-radius: 999px;
  color: #1b2632;
  flex: 1 1 auto;
  font-size: 18px;
  min-height: 50px;
  min-width: 0;
  padding: 10px 20px;
}

.itmk-footer-newsletter input::placeholder {
  color: #9aa4ae;
}

.itmk-footer-newsletter button {
  align-items: center;
  background: var(--itmk-red, #e4222e);
  border: 0;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 18px;
  font-weight: 700;
  gap: 14px;
  min-height: 50px;
  padding: 10px 24px;
}

.itmk-footer-newsletter button:hover {
  background: var(--itmk-red-hover, #c41a26);
}

.itmk-footer-newsletter-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.itmk-footer-newsletter-tags span {
  align-items: center;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  color: #eef4f9;
  display: inline-flex;
  font-family: "PT Mono", Consolas, "Courier New", monospace;
  font-size: 11px;
  font-weight: 700;
  gap: 7px;
  line-height: 1;
  min-height: 28px;
  padding: 6px 13px;
}

.itmk-footer-newsletter-tags span:nth-child(4) {
  background: rgba(14, 22, 30, 0.36);
  color: #9fadb9;
}

.itmk-footer-bottom {
  align-items: center;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  gap: 24px;
  justify-content: space-between;
  margin-top: 42px;
  padding-top: 24px;
}

.itmk-footer-payments {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.itmk-footer-payments span {
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 999px;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  padding: 7px 10px;
}

.itmk-footer-bottom p {
  align-items: center;
  color: #9fadb9;
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  gap: 6px;
  justify-content: flex-end;
  margin: 0;
  text-align: right;
}

.itmk-footer-bottom strong,
.itmk-footer-bottom a {
  color: #fff;
  font-weight: 800;
}

.itmk-footer .widget,
.itmk-footer .widget p,
.itmk-footer .widget li {
  color: #9fadb9;
}

.itmk-footer .widget-title {
  color: #f5f8fb;
}

.top-button {
  background: var(--itmk-blue, #4d6786) !important;
  border: 0 !important;
}

@media (max-width: 991.98px) {
  .itmk-footer-forum {
    padding: 26px 0 24px;
  }

  .itmk-footer-forum-kicker {
    font-size: 18px;
    margin-bottom: 20px;
  }

  .itmk-footer-forum-links {
    gap: 14px 22px;
  }

  .itmk-footer-grid {
    gap: 34px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .itmk-footer-newsletter {
    grid-column: 1 / -1;
  }

  .itmk-footer-bottom {
    align-items: flex-start;
    flex-direction: column;
  }

  .itmk-footer-bottom p {
    justify-content: flex-start;
    text-align: left;
  }

  .itmk-single-header {
    padding: 22px 20px 0;
  }

  .itmk-single-byline-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    margin-top: 0;
  }

  .itmk-single-author-row {
    justify-content: flex-start;
  }

  .itmk-single-category-row {
    justify-content: flex-start;
  }

  .itmk-single-title {
    font-size: 28px;
  }

  .itmk-single-dek {
    font-size: 18px;
  }

  .itmk-single-content {
    font-size: 15px;
    padding: 26px 20px 8px;
  }

  .itmk-single-featured figcaption,
  .itmk-single-tags,
  .itmk-single-breadcrumbs {
    padding-left: 20px;
    padding-right: 20px;
  }

  .itmk-single-nav {
    grid-template-columns: 1fr;
  }

  .itmk-single-related {
    padding: 24px 20px 26px;
  }

  .itmk-single-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .itmk-single-nav-link + .itmk-single-nav-link {
    border-left: 0;
    border-top: 1px solid var(--itmk-line, #e5e8ec);
  }
}

@media (max-width: 575.98px) {
  .itmk-footer-main {
    padding: 38px 0 28px;
  }

  .itmk-footer-grid {
    grid-template-columns: 1fr;
  }

  .itmk-footer-newsletter {
    grid-column: auto;
  }

  .itmk-footer-newsletter form {
    align-items: stretch;
    flex-direction: column;
  }

  .itmk-footer-newsletter button {
    justify-content: center;
    width: 100%;
  }

  .itmk-footer-forum-links a {
    font-size: 14px;
  }

  .itmk-single-post,
  .itmk-single-nav,
  .itmk-single-related,
  .itmk-single-comments {
    border-radius: 18px;
  }

  .itmk-single-title {
    font-size: 26px;
  }

  .itmk-single-related-grid {
    grid-template-columns: 1fr;
  }

  .itmk-single-meta {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Right rail toggle: hidden by default, revealed on mobile community pages. */
.community-header-rail-toggle {
  display: none;
}

/* Mobile community shell: compact header, left nav + right rail drawers. */
.community-mobile-nav-drawer,
.community-mobile-rail-drawer {
  --bs-offcanvas-width: min(390px, 92vw);
  background: var(--itmk-app-bg, #f2f4f6);
  color: var(--itmk-text, #16202b);
}

.community-mobile-nav-drawer .offcanvas-header,
.community-mobile-rail-drawer .offcanvas-header {
  border-bottom: 1px solid var(--itmk-line, #dfe5eb);
  padding: 14px 16px;
}

.community-mobile-nav-drawer .offcanvas-title,
.community-mobile-rail-drawer .offcanvas-title {
  color: var(--itmk-text, #16202b);
  font-size: 16px;
  font-weight: 800;
}

/* Visible, tappable close (independent of Bootstrap's .btn-close SVG). */
.community-drawer-close {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 50%;
  color: var(--itmk-text, #16202b);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  height: 34px;
  justify-content: center;
  line-height: 1;
  margin: 0;
  padding: 0;
  width: 34px;
}

.community-drawer-close .bi {
  font-size: 18px;
}

.community-drawer-close:hover {
  background: var(--itmk-pill, #eef3f8);
}

/* Left drawer renders the community navigation, which is hidden inline on
   mobile — reset the sticky/scroll rail styles so it flows in the drawer. */
.community-mobile-nav-drawer .offcanvas-body {
  padding: 12px;
}

.community-mobile-nav-drawer .comm-sidebar {
  display: block !important;
  max-height: none;
  overflow: visible;
  position: static;
  top: auto;
  width: 100%;
}

.community-mobile-nav-drawer .comm-sidebar-sticky {
  max-height: none;
  overflow: visible;
  position: static;
  top: auto;
}

.community-mobile-nav-slot {
  min-height: 100%;
}

/* Search lives at the top of the nav drawer (the header search bar is hidden
   on mobile). Mirrors the header pill. */
.community-mobile-search {
  align-items: center;
  background: #f3f6f9;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 999px;
  display: flex;
  gap: 8px;
  height: 44px;
  margin: 0 0 12px;
  padding: 0 6px 0 14px;
}

.community-mobile-search .bi {
  color: #748294;
  flex: 0 0 auto;
  font-size: 17px;
}

.community-mobile-search input {
  background: transparent;
  border: 0;
  color: var(--itmk-text, #111a24);
  flex: 1 1 auto;
  font-size: 14px;
  font-weight: 600;
  min-width: 0;
  outline: 0;
}

.community-mobile-search input::placeholder {
  color: #7f8b9a;
}

.community-mobile-search button {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 50%;
  color: #748294;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 18px;
  font-weight: 800;
  height: 32px;
  justify-content: center;
  line-height: 1;
  padding: 0;
  width: 32px;
}

.community-mobile-search button:hover {
  background: #e7ecf2;
  color: #111a24;
}

.community-mobile-search:focus-within {
  background: #fff;
  border-color: var(--itmk-blue);
  box-shadow: 0 0 0 3px rgba(77, 103, 134, 0.12);
}

[data-bs-theme="dark"] .community-mobile-search {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.18);
}

[data-bs-theme="dark"] .community-mobile-search input {
  color: #fff;
}

[data-bs-theme="dark"] .community-mobile-search input::placeholder,
[data-bs-theme="dark"] .community-mobile-search .bi {
  color: rgba(255, 255, 255, 0.7);
}

.community-mobile-rail-drawer .offcanvas-body {
  padding: 14px;
}

.community-mobile-rail-slot {
  min-height: 100%;
}

/* Right rail in the drawer keeps its desktop look — only the sticky/scroll
   positioning is reset so it flows inside the off-canvas panel. Card styling
   (radius, padding, background) is inherited from the desktop rules. */
.community-mobile-rail-drawer .comm-rail {
  display: flex !important;
  max-height: none;
  overflow: visible;
  position: static;
  top: auto;
  width: 100%;
}

@media (max-width: 991.98px) {
  #masthead {
    height: 60px;
  }

  #masthead .navbar {
    min-height: 60px;
  }

  #masthead .container-fluid {
    align-items: center;
    display: flex;
    gap: 8px;
    height: 60px;
    padding-left: 12px;
    padding-right: 10px;
  }

  #masthead .navbar-brand {
    flex: 0 0 auto;
    margin-left: 0 !important;
    margin-right: auto !important;
    order: 1;
  }

  #masthead .navbar-brand img {
    width: 38px !important;
  }

  #masthead .navbar-brand-tagline,
  .community-header-register {
    display: none !important;
  }

  #masthead .header-actions {
    flex: 0 0 auto;
    gap: 6px;
    margin-left: auto;
    order: 2;
    padding-right: 0 !important;
  }

  /* Keep the switch at least as wide as its 44px track so the sun/moon
     glyphs aren't clipped by the neighbouring buttons. */
  .community-theme-switch {
    flex: 0 0 46px;
    height: 40px;
    width: 46px;
  }

  .header-forum-cta {
    border-radius: 50% !important;
    height: 40px;
    justify-content: center;
    min-width: 40px;
    padding: 0 !important;
    width: 40px;
  }

  /* Icon-only on mobile: drop the fixed 14px box so the glyph centres like
     the cart icon. */
  .header-forum-cta .bi {
    font-size: 18px;
    height: auto;
    width: auto;
  }

  .header-forum-cta span {
    display: none;
  }

  .community-header-cart,
  .header-actions .btn:not(.header-forum-cta) {
    height: 40px;
    width: 40px;
  }

  .sidebar-toggle {
    align-items: center;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--itmk-text, #16202b) !important;
    display: inline-flex;
    flex: 0 0 40px;
    height: 40px;
    justify-content: center;
    line-height: 1;
    margin: 0 !important;
    order: 0;
    padding: 0 !important;
    width: 40px;
  }

  .sidebar-toggle .bi {
    display: block;
    font-size: 24px;
    line-height: 1;
  }

  #masthead .navbar-brand {
    align-items: center;
    display: inline-flex;
    height: 40px;
  }

  #masthead .navbar-brand img {
    display: block;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
  }

  /* Right toggle mirrors the burger, opens the community info rail. */
  body.has-community-shell .community-header-rail-toggle {
    align-items: center;
    background: var(--itmk-card-bg, #fff);
    border: 1px solid var(--itmk-line, #dfe5eb);
    border-radius: 50%;
    color: var(--itmk-text, #16202b);
    display: inline-flex;
    flex: 0 0 40px;
    height: 40px;
    justify-content: center;
    margin: 0 0 0 6px;
    padding: 0;
    width: 40px;
  }

  body.has-community-shell .community-header-rail-toggle .bi {
    font-size: 18px;
    line-height: 1;
  }

  body.has-community-shell .community-header-rail-toggle:hover,
  body.has-community-shell .community-header-rail-toggle[aria-expanded="true"] {
    border-color: var(--itmk-blue);
    color: var(--itmk-blue);
  }

  #offcanvas-navbar {
    display: none !important;
  }
}

@media (max-width: 575.98px) {
  .community-feed-toolbar {
    margin-bottom: 24px !important;
  }

  .community-feed-toolbar .content-filter-bar {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    gap: 6px;
    min-height: 34px;
    width: 100%;
  }

  .community-feed-toolbar .filter-buttons {
    display: flex !important;
    flex: 1 1 auto;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    min-width: 0;
    width: auto;
  }

  .community-feed-toolbar .filter-btn {
    border-radius: 17px;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    min-width: 34px;
    padding: 0;
    width: 34px;
  }

  .community-feed-toolbar .filter-btn span:not(.filter-fresh-count) {
    display: none;
  }

  .community-feed-toolbar .filter-btn:not(.active) .filter-fresh-count {
    border: 2px solid #fff;
    font-size: 8px;
    height: 14px;
    min-width: 14px;
    padding: 0 3px;
    position: absolute;
    right: -5px;
    top: -5px;
  }

  .community-feed-toolbar .filter-btn.active {
    flex: 1 1 auto;
    gap: 5px;
    min-width: 0;
    padding: 0 10px;
    width: auto;
  }

  .community-feed-toolbar .filter-btn.active span:not(.filter-fresh-count) {
    display: inline-block;
    max-width: 92px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .community-feed-toolbar .filter-btn.active .filter-fresh-count {
    border: 0;
    position: static;
  }

  .new-topic-cta {
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    margin-left: 0;
    min-width: 34px;
    padding: 0;
    width: 34px;
  }

  .new-topic-cta span {
    display: none;
  }
}

/* Add-to-cart feedback overlay. */
.itmk-cart-loading-overlay {
  align-items: center;
  background: rgba(243, 245, 247, 0.66);
  backdrop-filter: blur(3px);
  display: flex;
  inset: 0;
  justify-content: center;
  pointer-events: auto;
  position: fixed;
  z-index: 5000;
}

.itmk-cart-loading-overlay[hidden] {
  display: none !important;
}

.itmk-cart-loading-panel {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 18px;
  box-shadow: 0 22px 50px rgba(22, 32, 43, 0.16);
  display: inline-flex;
  gap: 16px;
  min-width: 260px;
  padding: 18px 22px;
}

.itmk-cart-loading-panel .itmk-pixel-loader {
  min-height: 56px;
}

.itmk-cart-loading-copy {
  color: #16202b;
  font-size: 16px;
  font-weight: 800;
  white-space: nowrap;
}

.market-strip-add.is-loading,
.market-card-buy.is-loading {
  opacity: 0.72;
  pointer-events: none;
}

[data-bs-theme="dark"] .itmk-cart-loading-overlay {
  background: rgba(8, 14, 22, 0.62);
}

[data-bs-theme="dark"] .itmk-cart-loading-panel {
  background: #17212c;
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 22px 50px rgba(0, 0, 0, 0.38);
}

[data-bs-theme="dark"] .itmk-cart-loading-copy {
  color: #eef4fb;
}

/* WooCommerce checkout: full-width flow with the order review as the sidebar. */
body.woocommerce-checkout {
  background: var(--itmk-app-bg, #f3f5f7);
}

body.woocommerce-checkout #content {
  overflow-x: clip;
}

body.woocommerce-checkout .sidebar-col,
body.woocommerce-checkout aside#secondary {
  display: none !important;
}

body.woocommerce-checkout .itmk-checkout-main {
  margin-inline: auto;
  max-width: 1360px;
  min-width: 0;
  width: 100%;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .entry-header {
  display: none;
}

.itmk-checkout-hero {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin: 0 auto 14px;
  max-width: 1320px;
  padding: 6px 4px 8px;
}

.itmk-checkout-eyebrow {
  color: var(--itmk-red, #e4222e);
  display: block;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.02em;
  line-height: 1;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.itmk-checkout-hero h1 {
  color: #111a24;
  font-size: clamp(28px, 2.6vw, 34px);
  font-weight: 950;
  line-height: 1.02;
  margin: 0;
}

.itmk-checkout-hero p {
  color: #5e6f84;
  font-size: 14px;
  line-height: 1.45;
  margin: 8px 0 0;
  max-width: 620px;
}

.itmk-checkout-assurance {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  gap: 8px;
  justify-content: flex-end;
  max-width: none;
}

.itmk-checkout-assurance span {
  align-items: center;
  background: #eef4fb;
  border: 1px solid rgba(77, 103, 134, 0.14);
  border-radius: 999px;
  color: var(--itmk-blue, #4d6786);
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 7px;
  line-height: 1;
  padding: 8px 11px;
  white-space: nowrap;
}

body.woocommerce-checkout .woocommerce-notices-wrapper {
  margin-bottom: 14px;
}

body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-left: 4px solid var(--itmk-blue, #4d6786);
  border-radius: 14px;
  box-shadow: 0 8px 18px rgba(22, 32, 43, 0.04);
  color: #37465a;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 0 12px;
  padding: 11px 13px;
}

body.woocommerce-checkout .woocommerce-error {
  background: #fff6f7;
  border-color: #ffd3d8;
  border-left-color: var(--itmk-red, #e4222e);
  color: #111a24;
  font-weight: 500;
}

body.woocommerce-checkout .woocommerce-error li,
body.woocommerce-checkout .woocommerce-info li,
body.woocommerce-checkout .woocommerce-message li {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

body.woocommerce-checkout .woocommerce-error::before,
body.woocommerce-checkout .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-message::before {
  display: none;
}

body.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup-checkout,
body.woocommerce-checkout form.checkout > .woocommerce-error,
body.woocommerce-checkout form.checkout > .woocommerce-info,
body.woocommerce-checkout form.checkout > .woocommerce-message {
  grid-column: 1;
  max-width: none;
}

.itmk-checkout-notice-slot {
  margin: -4px 0 14px;
}

.itmk-checkout-notice-slot:empty {
  display: none;
}

.itmk-checkout-notice-slot .woocommerce-error,
.itmk-checkout-notice-slot .woocommerce-info,
.itmk-checkout-notice-slot .woocommerce-message,
.itmk-checkout-inline-notice {
  margin: 0 0 10px;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout .woocommerce-form-login-toggle {
  margin-inline: auto;
  margin-bottom: 12px;
  max-width: 1320px;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle {
  display: none;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
  align-items: center;
  display: flex;
  gap: 8px;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
  background: #eef4fb;
  border-color: #d7e3ef;
  border-left-color: var(--itmk-blue, #4d6786);
  color: #263445;
  font-weight: 850;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle a {
  color: var(--itmk-blue, #4d6786);
  font-weight: 950;
}

body.woocommerce-checkout .checkout_coupon,
body.woocommerce-checkout .woocommerce-form-login {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 16px;
  box-shadow: 0 8px 18px rgba(22, 32, 43, 0.04);
  margin: 0 auto 14px;
  max-width: 1320px;
  padding: 16px;
}

body.woocommerce-checkout .checkout_coupon {
  max-width: 440px;
}

body.woocommerce-checkout .checkout_coupon.itmk-checkout-coupon-source {
  display: none !important;
}

body.woocommerce-checkout form.checkout {
  align-items: start;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1fr) 440px;
  justify-content: stretch;
  margin-inline: auto;
  max-width: 1320px;
  width: 100%;
}

body.woocommerce-checkout form.checkout::before,
body.woocommerce-checkout form.checkout::after,
body.woocommerce-checkout #customer_details::before,
body.woocommerce-checkout #customer_details::after {
  content: none;
  display: none;
}

body.woocommerce-checkout #customer_details {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 18px;
  box-shadow: 0 10px 24px rgba(22, 32, 43, 0.05);
  clear: none !important;
  display: block;
  float: none !important;
  flex: none !important;
  grid-column: 1;
  grid-row: 1 / span 2;
  margin: 0;
  max-width: none;
  min-width: 0;
  padding: 22px 24px;
  width: 100% !important;
}

body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
  display: block;
  flex: none;
  float: none;
  max-width: none;
  padding: 0;
  width: 100% !important;
}

body.woocommerce-checkout #customer_details .col-2 {
  border-top: 1px solid var(--itmk-line, #dfe5eb);
  margin-top: 18px;
  padding-top: 18px;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
  display: grid;
  gap: 14px 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::before,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after {
  display: none;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #billing_email_field {
  grid-column: 1 / -1;
}

body.woocommerce-checkout .woocommerce-input-wrapper .select2-container {
  width: 100% !important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3,
body.woocommerce-checkout #order_review_heading {
  color: #111a24;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.2;
  margin: 0 0 14px;
}

body.woocommerce-checkout #order_review_heading {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 18px 18px 0 0;
  border-bottom: 0;
  box-sizing: border-box;
  clear: none !important;
  display: flex;
  float: none !important;
  flex: none !important;
  gap: 8px;
  grid-column: 2;
  grid-row: 1;
  justify-self: stretch;
  margin: 0;
  max-width: 440px;
  min-width: 440px;
  padding: 18px 18px 0;
  width: 440px !important;
  white-space: nowrap;
  word-break: normal;
}

body.woocommerce-checkout #order_review_heading::before {
  color: var(--itmk-red, #e4222e);
  content: "\F242";
  font-family: "bootstrap-icons";
  font-size: 17px;
  line-height: 1;
}

body.woocommerce-checkout #order_review {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 0 0 18px 18px;
  border-top: 0;
  box-sizing: border-box;
  box-shadow: 0 10px 24px rgba(22, 32, 43, 0.05);
  clear: none !important;
  float: none !important;
  flex: none !important;
  grid-column: 2;
  grid-row: 2;
  justify-self: stretch;
  max-width: 440px;
  min-width: 440px;
  overflow: hidden;
  padding: 12px 18px 18px;
  position: sticky;
  top: calc(var(--header-height, 0px) + 18px);
  width: 440px !important;
}

body.woocommerce-checkout #order_review.is-order-updating {
  opacity: 0.58;
  pointer-events: none;
  transition: opacity 0.16s ease;
}

.itmk-checkout-coupon-slot {
  display: block;
  margin: 0 0 12px;
}

.itmk-checkout-coupon-trigger {
  align-items: center;
  background: #eef4fb;
  border: 1px solid #d7e3ef;
  border-left: 4px solid var(--itmk-blue, #4d6786);
  border-radius: 14px;
  color: #263445;
  display: flex;
  gap: 8px;
  min-height: 46px;
  padding: 10px 14px;
  text-align: left;
  width: 100%;
}

.itmk-checkout-coupon-trigger span,
.itmk-checkout-coupon-trigger strong {
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
}

.itmk-checkout-coupon-trigger strong {
  color: var(--itmk-blue, #4d6786);
}

.itmk-checkout-coupon-trigger:hover {
  background: #e7f0f9;
}

.itmk-checkout-coupon-panel {
  background: #f8fafc;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 14px;
  display: none;
  margin-top: 8px;
  padding: 10px;
}

.itmk-checkout-coupon-slot.is-open .itmk-checkout-coupon-panel {
  display: block;
}

.itmk-checkout-coupon-label {
  color: #5e6f84;
  display: block;
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
  margin: 0 0 7px;
  text-transform: uppercase;
}

.itmk-checkout-coupon-row {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.itmk-checkout-coupon-input {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 10px;
  color: #111a24;
  font-size: 12.5px;
  font-weight: 750;
  min-height: 38px;
  min-width: 0;
  padding: 8px 10px;
  width: 100%;
}

.itmk-checkout-coupon-input:focus {
  border-color: var(--itmk-blue, #4d6786);
  box-shadow: 0 0 0 3px rgba(77, 103, 134, 0.12);
  outline: 0;
}

.itmk-checkout-coupon-apply {
  background: var(--itmk-blue, #4d6786);
  border: 0;
  border-radius: 10px;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  min-height: 38px;
  padding: 8px 12px;
  white-space: nowrap;
}

.itmk-checkout-coupon-apply:hover {
  background: #3f5874;
  color: #fff;
}

.itmk-checkout-coupon-slot.is-busy {
  opacity: 0.64;
  pointer-events: none;
}

.itmk-checkout-coupon-feedback {
  margin-top: 8px;
}

.itmk-checkout-coupon-feedback:empty,
.itmk-checkout-coupon-feedback[hidden] {
  display: none;
}

.itmk-checkout-coupon-feedback .woocommerce-error,
.itmk-checkout-coupon-feedback .woocommerce-info,
.itmk-checkout-coupon-feedback .woocommerce-message {
  box-shadow: none;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.3;
  margin: 0;
  padding: 8px 9px;
}

body.woocommerce-checkout .form-row {
  margin-bottom: 14px;
}

body.woocommerce-checkout .form-row label {
  color: #37465a;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
  margin-bottom: 6px;
}

body.woocommerce-checkout .form-row .required {
  color: var(--itmk-red, #e4222e);
}

body.woocommerce-checkout .woocommerce-input-wrapper {
  display: block;
}

body.woocommerce-checkout .input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-container--default .select2-selection--single {
  background: #f8fafc;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 12px;
  color: #111a24;
  font-size: 14px;
  font-weight: 650;
  min-height: 44px;
  padding: 10px 12px;
  width: 100%;
}

body.woocommerce-checkout textarea.input-text {
  min-height: 112px;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single {
  align-items: center;
  display: flex;
  padding: 0 12px;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #111a24;
  line-height: 44px;
  padding-left: 0;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 44px;
  right: 8px;
}

body.woocommerce-checkout .input-text:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout .select2-container--open .select2-selection--single {
  background: #fff;
  border-color: var(--itmk-blue, #4d6786);
  box-shadow: 0 0 0 3px rgba(77, 103, 134, 0.12);
  outline: 0;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table {
  border: 0;
  border-collapse: collapse;
  margin: 0 0 14px;
  table-layout: fixed;
  width: 100%;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table thead,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot {
  width: 100%;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  border-top: 1px solid var(--itmk-line, #dfe5eb);
  color: #37465a;
  font-size: 13px;
  font-weight: 750;
  padding: 9px 0;
  vertical-align: top;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
  border-top: 0;
  color: #748294;
  font-size: 12px;
  text-transform: uppercase;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
  padding-right: 10px;
  width: 68%;
  word-break: normal;
  overflow-wrap: break-word;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody .product-name {
  font-size: 0;
  line-height: 0;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
  text-align: right;
  white-space: nowrap;
  width: 32%;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody .product-total {
  color: #2f3e52;
  font-size: 13px;
  font-weight: 850;
  padding-top: 11px;
}

body.woocommerce-checkout .itmk-checkout-product-line {
  align-items: flex-start;
  display: grid;
  gap: 8px;
  grid-template-columns: 30px minmax(0, 1fr);
  line-height: 1.2;
  min-width: 0;
  width: 100%;
}

body.woocommerce-checkout .itmk-checkout-product-image {
  align-items: center;
  background: #f3f5f7;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 7px;
  display: flex;
  height: 30px;
  justify-content: center;
  overflow: hidden;
  width: 30px;
}

body.woocommerce-checkout .itmk-checkout-product-thumb {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

body.woocommerce-checkout .itmk-checkout-product-copy {
  color: #37465a;
  display: -webkit-box;
  font-size: 11.5px;
  font-weight: 850;
  line-height: 1.22;
  min-width: 0;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

body.woocommerce-checkout .itmk-checkout-product-main {
  display: grid;
  gap: 5px;
  min-width: 0;
}

body.woocommerce-checkout .itmk-checkout-product-actions {
  align-items: center;
  display: flex;
  gap: 6px;
  margin: 0;
}

body.woocommerce-checkout .itmk-checkout-order-qty {
  align-items: center;
  background: #f8fafc;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 999px;
  display: inline-flex;
  height: 22px;
  overflow: hidden;
  position: relative;
  width: auto;
}

body.woocommerce-checkout .itmk-checkout-qty-button {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--itmk-blue, #4d6786);
  display: inline-flex;
  font-size: 11px;
  height: 22px;
  justify-content: center;
  padding: 0;
  width: 22px;
}

body.woocommerce-checkout .itmk-checkout-qty-button:hover {
  background: #eef4fb;
  color: #263445;
}

body.woocommerce-checkout .itmk-checkout-qty-input {
  -moz-appearance: textfield;
  appearance: textfield;
  border: 0;
  height: 1px;
  left: 50%;
  margin: 0;
  opacity: 0 !important;
  pointer-events: none;
  position: absolute;
  padding: 0;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 1px;
}

body.woocommerce-checkout .itmk-checkout-qty-value {
  align-items: center;
  background: #fff;
  border-left: 1px solid rgba(77, 103, 134, 0.12);
  border-right: 1px solid rgba(77, 103, 134, 0.12);
  color: #111a24;
  display: inline-flex;
  flex: 0 0 25px;
  font-size: 12px;
  font-weight: 900;
  height: 22px;
  justify-content: center;
  line-height: 22px;
  min-width: 25px;
  text-align: center;
}

body.woocommerce-checkout .itmk-checkout-qty-input::-webkit-inner-spin-button,
body.woocommerce-checkout .itmk-checkout-qty-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

body.woocommerce-checkout .itmk-checkout-order-remove {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 50%;
  color: #748294;
  display: inline-flex;
  font-size: 11px;
  height: 22px;
  justify-content: center;
  padding: 0;
  width: 22px;
}

body.woocommerce-checkout .itmk-checkout-order-remove:hover {
  background: #fff6f7;
  border-color: #ffd3d8;
  color: var(--itmk-red, #e4222e);
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
  color: #111a24;
  font-size: 16px;
  font-weight: 950;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
  line-height: 1.2;
  white-space: normal;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount {
  color: var(--itmk-red, #e4222e);
  display: block;
  font-size: 17px;
  line-height: 1.1;
  white-space: nowrap;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .includes_tax {
  color: #5e6f84;
  display: block;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.25;
  margin-top: 5px;
  max-width: 100%;
  overflow-wrap: anywhere;
  white-space: normal;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .includes_tax .amount {
  display: inline;
  font-size: inherit;
  line-height: inherit;
  white-space: normal;
}

body.woocommerce-checkout #payment {
  background: #f8fafc;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 16px;
  margin: 0;
  padding: 10px;
}

body.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: 0;
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 14px;
  color: #37465a;
  font-size: 12.5px;
  font-weight: 750;
  line-height: 1.4;
  margin: 0;
  padding: 10px;
}

body.woocommerce-checkout #payment ul.payment_methods li input.input-radio {
  accent-color: var(--itmk-blue, #4d6786);
  height: 16px;
  margin: 1px 8px 0 0 !important;
  vertical-align: top;
  width: 16px;
}

body.woocommerce-checkout #payment ul.payment_methods li label {
  color: #263445;
  font-size: 12.5px;
  font-weight: 900;
  line-height: 1.25;
  margin: 0;
}

body.woocommerce-checkout #payment div.payment_box {
  background: #eef4fb;
  border: 1px solid rgba(77, 103, 134, 0.12);
  border-radius: 8px;
  color: #4f6074;
  font-size: 10.5px !important;
  font-weight: 650 !important;
  line-height: 1.3 !important;
  margin: 7px 0 0;
  padding: 7px 9px;
}

body.woocommerce-checkout #payment div.payment_box::before {
  border-bottom-color: #eef4fb;
}

body.woocommerce-checkout #payment div.payment_box p {
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  margin: 0;
}

body.woocommerce-checkout #payment div.payment_box * {
  font-size: inherit !important;
  line-height: inherit !important;
}

body.woocommerce-checkout #payment .place-order {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin: 0;
  padding: 0;
}

body.woocommerce-checkout #payment #place_order,
body.woocommerce-checkout .checkout_coupon .button,
body.woocommerce-checkout .woocommerce-form-login .button {
  background: var(--itmk-red, #e4222e);
  border: 0;
  border-radius: 12px;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  min-height: 42px;
  padding: 10px 16px;
}

body.woocommerce-checkout #payment #place_order {
  float: none;
  order: 1;
  width: 100%;
}

body.woocommerce-checkout #payment #place_order:hover,
body.woocommerce-checkout .checkout_coupon .button:hover,
body.woocommerce-checkout .woocommerce-form-login .button:hover {
  background: #c91b25;
  color: #fff;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  border-top: 0;
  color: #5e6f84;
  font-size: 11.5px;
  line-height: 1.35;
  margin: 0;
  order: 2;
  padding: 0 2px;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout .woocommerce-form-coupon-toggle a,
body.woocommerce-checkout .woocommerce-form-login-toggle a {
  color: var(--itmk-blue, #4d6786);
  font-weight: 800;
  text-decoration: none;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a:hover,
body.woocommerce-checkout .woocommerce-form-coupon-toggle a:hover,
body.woocommerce-checkout .woocommerce-form-login-toggle a:hover {
  color: var(--itmk-red, #e4222e);
}

body.woocommerce-checkout .wc-block-checkout,
body.woocommerce-checkout .wp-block-woocommerce-checkout {
  max-width: 1180px;
}

body.woocommerce-checkout .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-checkout__sidebar {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 18px;
  box-shadow: 0 10px 24px rgba(22, 32, 43, 0.05);
  padding: 18px;
}

body.woocommerce-checkout .wc-block-components-main {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 18px;
  box-shadow: 0 10px 24px rgba(22, 32, 43, 0.05);
  padding: 20px;
}

body.woocommerce-checkout #ship-to-different-address {
  margin: 18px 0 16px;
}

body.woocommerce-checkout #ship-to-different-address label {
  align-items: center;
  background: #f8fafc;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 14px;
  color: #111a24;
  cursor: pointer;
  display: flex !important;
  font-size: 14px;
  font-weight: 900;
  gap: 10px;
  line-height: 1.25;
  margin: 0;
  padding: 11px 12px;
}

body.woocommerce-checkout #ship-to-different-address input {
  accent-color: var(--itmk-red, #e4222e);
  flex: 0 0 auto;
  height: 18px;
  margin: 0 !important;
  width: 18px;
}

body.woocommerce-checkout #ship-to-different-address span {
  display: block;
}

body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
  display: grid;
  gap: 14px 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::before,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after {
  display: none;
}

body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field {
  grid-column: 1 / -1;
}

.itmk-checkout-support {
  align-items: flex-start;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: #37465a;
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: flex-start;
  margin: 18px auto 26px;
  max-width: 1320px;
  padding: 0 4px;
}

.itmk-checkout-support strong {
  color: #111a24;
  font-size: 16px;
  font-weight: 950;
}

.itmk-checkout-support span {
  color: #5e6f84;
  font-size: 14px;
  font-weight: 750;
  text-align: left;
}

@media (max-width: 1199.98px) {
  body.woocommerce-checkout form.checkout {
    gap: 22px;
    grid-template-columns: minmax(0, 1fr) 390px;
  }

  body.woocommerce-checkout #order_review_heading {
    font-size: 17px;
  }

  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review_heading {
    max-width: 390px;
    min-width: 390px;
    width: 390px !important;
  }
}

@media (max-width: 991.98px) {
  .itmk-checkout-hero {
    align-items: flex-start;
    flex-direction: column;
    padding: 8px 4px 12px;
  }

  .itmk-checkout-assurance {
    flex-wrap: wrap;
    justify-content: flex-start;
    max-width: none;
  }

  body.woocommerce-checkout form.checkout {
    display: block;
  }

  body.woocommerce-checkout #customer_details {
    grid-template-columns: 1fr;
    margin-bottom: 16px;
    padding: 16px;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
    grid-template-columns: 1fr;
  }

  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
    grid-template-columns: 1fr;
  }

  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review_heading {
    max-width: none;
    min-width: 0;
    position: static;
    width: 100% !important;
  }
}

@media (max-width: 575.98px) {
  body.woocommerce-checkout #content {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .itmk-checkout-hero,
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout .checkout_coupon,
  body.woocommerce-checkout .woocommerce-form-login,
  body.woocommerce-checkout .wc-block-components-main,
  body.woocommerce-checkout .wc-block-components-sidebar,
  body.woocommerce-checkout .wc-block-checkout__sidebar {
    border-radius: 14px;
  }

  .itmk-checkout-support {
    align-items: flex-start;
    flex-direction: column;
    margin-bottom: 22px;
  }

  .itmk-checkout-support span {
    text-align: left;
  }
}

[data-bs-theme="dark"] body.woocommerce-checkout {
  background: #101820;
}

[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-error,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-info,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-message,
[data-bs-theme="dark"] body.woocommerce-checkout .checkout_coupon,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-form-login,
[data-bs-theme="dark"] body.woocommerce-checkout #customer_details,
[data-bs-theme="dark"] body.woocommerce-checkout #order_review_heading,
[data-bs-theme="dark"] body.woocommerce-checkout #order_review,
[data-bs-theme="dark"] body.woocommerce-checkout .wc-block-components-main,
[data-bs-theme="dark"] body.woocommerce-checkout .wc-block-components-sidebar,
[data-bs-theme="dark"] body.woocommerce-checkout .wc-block-checkout__sidebar {
  background: #17212c;
  border-color: rgba(148, 163, 184, 0.16);
  box-shadow: none;
}

[data-bs-theme="dark"] .itmk-checkout-hero h1,
[data-bs-theme="dark"] .itmk-checkout-support strong,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-billing-fields h3,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-additional-fields h3,
[data-bs-theme="dark"] body.woocommerce-checkout #order_review_heading,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
  color: #eef4fb;
}

[data-bs-theme="dark"] .itmk-checkout-hero p,
[data-bs-theme="dark"] .itmk-checkout-support span,
[data-bs-theme="dark"] body.woocommerce-checkout .form-row label,
[data-bs-theme="dark"] body.woocommerce-checkout .itmk-checkout-product-copy,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-checkout-review-order-table td,
[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  color: #a7b8cc;
}

[data-bs-theme="dark"] .itmk-checkout-assurance span,
[data-bs-theme="dark"] body.woocommerce-checkout .input-text,
[data-bs-theme="dark"] body.woocommerce-checkout select,
[data-bs-theme="dark"] body.woocommerce-checkout textarea,
[data-bs-theme="dark"] body.woocommerce-checkout .select2-container--default .select2-selection--single,
[data-bs-theme="dark"] body.woocommerce-checkout #ship-to-different-address label,
[data-bs-theme="dark"] body.woocommerce-checkout #payment ul.payment_methods li,
[data-bs-theme="dark"] body.woocommerce-checkout .itmk-checkout-order-qty,
[data-bs-theme="dark"] body.woocommerce-checkout .itmk-checkout-order-remove,
[data-bs-theme="dark"] .itmk-checkout-coupon-slot,
[data-bs-theme="dark"] .itmk-checkout-coupon-trigger,
[data-bs-theme="dark"] .itmk-checkout-coupon-panel,
[data-bs-theme="dark"] body.woocommerce-checkout #payment {
  background: #202b38;
  border-color: rgba(148, 163, 184, 0.16);
  color: #eef4fb;
}

[data-bs-theme="dark"] body.woocommerce-checkout .woocommerce-error {
  background: rgba(228, 34, 46, 0.12);
  border-color: rgba(228, 34, 46, 0.28);
  color: #eef4fb;
}

[data-bs-theme="dark"] body.woocommerce-checkout .itmk-checkout-qty-value {
  background: #17212c;
  border-color: rgba(148, 163, 184, 0.16);
  color: #eef4fb;
}

[data-bs-theme="dark"] .itmk-checkout-coupon-input {
  background: #17212c;
  border-color: rgba(148, 163, 184, 0.16);
  color: #eef4fb;
}

[data-bs-theme="dark"] body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #eef4fb;
}

[data-bs-theme="dark"] body.woocommerce-checkout #payment div.payment_box {
  background: #101820;
  color: #a7b8cc;
}

[data-bs-theme="dark"] body.woocommerce-checkout #payment div.payment_box::before {
  border-bottom-color: #101820;
}

/* WooCommerce cart drawer: community styled and fragment-friendly. */
.itmk-cart-drawer {
  --bs-offcanvas-width: min(430px, 94vw);
  background: var(--itmk-app-bg, #f3f5f7);
  border-left: 1px solid var(--itmk-line, #dfe5eb);
  color: var(--itmk-text, #16202b);
  display: flex;
  flex-direction: column;
  height: 100dvh;
  max-height: 100dvh;
  overflow: hidden;
  overscroll-behavior: contain;
  z-index: 1060;
}

html:has(.itmk-cart-drawer.show),
html:has(.itmk-cart-drawer.showing),
body:has(.itmk-cart-drawer.show),
body:has(.itmk-cart-drawer.showing) {
  overscroll-behavior: none;
}

.itmk-cart-drawer-header {
  align-items: flex-start;
  border-bottom: 1px solid var(--itmk-line, #dfe5eb);
  min-height: 88px;
  padding: 18px 76px 16px 20px;
  position: relative;
}

.itmk-cart-drawer-eyebrow {
  color: var(--itmk-red, #e4222e);
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.itmk-cart-drawer .offcanvas-title {
  color: #111a24;
  font-size: 24px;
  font-weight: 900;
  line-height: 1.1;
  margin: 0;
}

.itmk-cart-drawer-close {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 999px;
  color: var(--itmk-blue, #4d6786);
  display: inline-flex;
  height: 34px;
  justify-content: center;
  padding: 0;
  position: absolute;
  right: 20px;
  top: 22px;
  width: 34px;
}

.itmk-cart-drawer-close:hover {
  background: #eef4fb;
  color: var(--itmk-red, #e4222e);
}

.itmk-cart-drawer-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 16px;
  position: relative;
  -webkit-overflow-scrolling: touch;
}

.itmk-cart-panel-content {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-height: 100%;
  transition: opacity 0.16s ease;
}

.itmk-cart-drawer.is-cart-updating .itmk-cart-panel-content {
  opacity: 0.34;
}

.itmk-cart-refreshing {
  align-items: center;
  background: rgba(243, 245, 247, 0.86);
  border-radius: 18px;
  color: #16202b;
  display: none;
  font-size: 14px;
  font-weight: 800;
  gap: 12px;
  inset: 16px;
  justify-content: center;
  position: absolute;
  text-align: center;
  z-index: 3;
}

.itmk-cart-drawer.is-cart-updating .itmk-cart-refreshing {
  display: flex;
}

.itmk-cart-refreshing .itmk-pixel-loader {
  min-height: 56px;
}

.itmk-cart-summary-row,
.itmk-cart-totals,
.itmk-cart-empty {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 16px;
  box-shadow: 0 8px 18px rgba(22, 32, 43, 0.04);
}

.itmk-cart-summary-row {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 12px 14px;
}

.itmk-cart-summary-row span {
  color: #748294;
  font-size: 13px;
  font-weight: 700;
}

.itmk-cart-summary-row strong {
  color: var(--itmk-red, #e4222e);
  font-size: 16px;
  font-weight: 900;
}

.itmk-cart-items {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.itmk-cart-item {
  align-items: center;
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 16px;
  display: grid;
  gap: 12px;
  grid-template-columns: 64px minmax(0, 1fr) 32px;
  padding: 10px;
}

.itmk-cart-item-thumb {
  aspect-ratio: 1;
  background: #eef2f6;
  border-radius: 12px;
  display: block;
  overflow: hidden;
}

.itmk-cart-item-thumb img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.itmk-cart-item-main {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.itmk-cart-item-title {
  color: #111a24;
  display: -webkit-box;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;
  overflow: hidden;
  text-decoration: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.itmk-cart-item-title:hover {
  color: var(--itmk-red, #e4222e);
}

.itmk-cart-item-meta {
  color: #748294;
  display: block;
  font-size: 12.5px;
  font-weight: 650;
}

.itmk-cart-qty {
  align-items: center;
  background: #f8fafc;
  border: 1px solid var(--itmk-line, #dfe5eb);
  border-radius: 999px;
  display: inline-flex;
  overflow: hidden;
  width: max-content;
}

.itmk-cart-qty-button {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--itmk-blue, #4d6786);
  display: inline-flex;
  font-size: 15px;
  height: 28px;
  justify-content: center;
  padding: 0;
  width: 30px;
}

.itmk-cart-qty-button:hover {
  background: #eef4fb;
  color: var(--itmk-red, #e4222e);
}

.itmk-cart-qty-input {
  appearance: textfield;
  background: transparent;
  border: 0;
  color: #111a24;
  font-size: 13px;
  font-weight: 850;
  height: 28px;
  line-height: 28px;
  padding: 0;
  text-align: center;
  width: 38px;
}

.itmk-cart-qty-input:focus {
  box-shadow: inset 0 0 0 1px var(--itmk-blue, #4d6786);
  outline: 0;
}

.itmk-cart-qty-input::-webkit-inner-spin-button,
.itmk-cart-qty-input::-webkit-outer-spin-button {
  appearance: none;
  margin: 0;
}

.itmk-cart-item-remove {
  align-items: center;
  background: #f8fafc;
  border: 0;
  border-radius: 999px;
  color: #8a96a5;
  display: inline-flex;
  height: 30px;
  justify-content: center;
  padding: 0;
  text-decoration: none;
  width: 30px;
}

.itmk-cart-item-remove:hover {
  background: #fef2f3;
  color: var(--itmk-red, #e4222e);
}

.itmk-cart-totals {
  margin-top: auto;
  padding: 14px;
}

.itmk-cart-totals > div {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.itmk-cart-totals span {
  color: #111a24;
  font-size: 14px;
  font-weight: 800;
}

.itmk-cart-totals strong {
  color: var(--itmk-red, #e4222e);
  font-size: 20px;
  font-weight: 900;
}

.itmk-cart-totals p {
  color: #748294;
  font-size: 12px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.itmk-cart-actions {
  display: grid;
  gap: 8px;
}

.itmk-cart-button {
  align-items: center;
  border-radius: 14px;
  display: inline-flex;
  font-size: 14px;
  font-weight: 850;
  justify-content: center;
  min-height: 42px;
  padding: 10px 14px;
  text-decoration: none;
}

.itmk-cart-button--primary {
  background: var(--itmk-red, #e4222e);
  color: #fff;
}

.itmk-cart-button--primary:hover {
  background: #c91b25;
  color: #fff;
}

.itmk-cart-button--secondary {
  background: #fff;
  border: 1px solid var(--itmk-line, #dfe5eb);
  color: var(--itmk-blue, #4d6786);
}

.itmk-cart-button--secondary:hover {
  background: #eef4fb;
  color: var(--itmk-blue, #4d6786);
}

.itmk-cart-empty {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  min-height: 360px;
  padding: 28px 22px;
  text-align: center;
}

.itmk-cart-empty-icon {
  align-items: center;
  background: #eef4fb;
  border-radius: 999px;
  color: var(--itmk-blue, #4d6786);
  display: inline-flex;
  font-size: 26px;
  height: 64px;
  justify-content: center;
  margin-bottom: 14px;
  width: 64px;
}

.itmk-cart-empty h3 {
  color: #111a24;
  font-size: 20px;
  font-weight: 900;
  margin: 0 0 8px;
}

.itmk-cart-empty p {
  color: #748294;
  font-size: 14px;
  line-height: 1.45;
  margin: 0 0 18px;
}

[data-bs-theme="dark"] .itmk-cart-drawer {
  background: #101820;
  border-left-color: rgba(148, 163, 184, 0.18);
  color: #eef4fb;
}

[data-bs-theme="dark"] .itmk-cart-drawer-header {
  border-bottom-color: rgba(148, 163, 184, 0.16);
}

[data-bs-theme="dark"] .itmk-cart-drawer .offcanvas-title,
[data-bs-theme="dark"] .itmk-cart-item-title,
[data-bs-theme="dark"] .itmk-cart-totals span,
[data-bs-theme="dark"] .itmk-cart-empty h3 {
  color: #eef4fb;
}

[data-bs-theme="dark"] .itmk-cart-drawer-close,
[data-bs-theme="dark"] .itmk-cart-summary-row,
[data-bs-theme="dark"] .itmk-cart-item,
[data-bs-theme="dark"] .itmk-cart-totals,
[data-bs-theme="dark"] .itmk-cart-empty,
[data-bs-theme="dark"] .itmk-cart-button--secondary {
  background: #17212c;
  border-color: rgba(148, 163, 184, 0.16);
}

[data-bs-theme="dark"] .itmk-cart-refreshing {
  background: rgba(16, 24, 32, 0.88);
  color: #eef4fb;
}

[data-bs-theme="dark"] .itmk-cart-item-thumb,
[data-bs-theme="dark"] .itmk-cart-empty-icon,
[data-bs-theme="dark"] .itmk-cart-item-remove,
[data-bs-theme="dark"] .itmk-cart-qty {
  background: #202b38;
}

[data-bs-theme="dark"] .itmk-cart-summary-row span,
[data-bs-theme="dark"] .itmk-cart-item-meta,
[data-bs-theme="dark"] .itmk-cart-totals p,
[data-bs-theme="dark"] .itmk-cart-empty p {
  color: #a7b8cc;
}

[data-bs-theme="dark"] .itmk-cart-qty {
  border-color: rgba(148, 163, 184, 0.16);
}

[data-bs-theme="dark"] .itmk-cart-qty-button {
  color: #a7b8cc;
}

[data-bs-theme="dark"] .itmk-cart-qty-button:hover {
  background: #17212c;
  color: #ff3b48;
}

[data-bs-theme="dark"] .itmk-cart-qty-input {
  color: #eef4fb;
}

/* Infinite scroll loader: tiny 8-bit robot. */
#infinite-loader {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 76px;
}

.itmk-pixel-loader {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  min-height: 56px;
}

.itmk-pixel-robot {
  display: inline-block;
  height: 54px;
  image-rendering: pixelated;
  position: relative;
  transform-origin: 50% 100%;
  width: 38px;
  animation: itmk-pixel-robot-bob 0.8s steps(2, end) infinite;
}

.itmk-pixel-robot-antenna {
  background: var(--itmk-blue, #4d6786);
  height: 8px;
  left: 18px;
  position: absolute;
  top: 0;
  width: 3px;
}

.itmk-pixel-robot-antenna::before {
  background: var(--itmk-red, #e4222e);
  box-shadow: 0 0 0 2px rgba(228, 34, 46, 0.14);
  content: "";
  height: 5px;
  left: -1px;
  position: absolute;
  top: -4px;
  width: 5px;
  animation: itmk-pixel-robot-pulse 0.8s steps(2, end) infinite;
}

.itmk-pixel-robot-head {
  background: #f8fafc;
  border: 3px solid var(--itmk-blue, #4d6786);
  border-radius: 3px;
  box-shadow: inset 0 -4px 0 #dce6f2;
  height: 22px;
  left: 5px;
  position: absolute;
  top: 7px;
  width: 28px;
}

.itmk-pixel-robot-eye {
  background: var(--itmk-red, #e4222e);
  height: 5px;
  position: absolute;
  top: 7px;
  width: 5px;
  animation:
    itmk-pixel-robot-blink 1.6s steps(1, end) infinite,
    itmk-pixel-robot-eye-scan-left 0.58s steps(2, end) infinite;
}

.itmk-pixel-robot-eye--left {
  left: 6px;
}

.itmk-pixel-robot-eye--right {
  right: 6px;
  animation:
    itmk-pixel-robot-blink 1.6s steps(1, end) infinite,
    itmk-pixel-robot-eye-scan-right 0.58s steps(2, end) infinite;
}

.itmk-pixel-robot-mouth {
  background: var(--itmk-blue, #4d6786);
  height: 3px;
  left: 10px;
  position: absolute;
  top: 15px;
  width: 8px;
}

.itmk-pixel-robot-body {
  background: var(--itmk-blue, #4d6786);
  border-radius: 2px;
  height: 14px;
  left: 9px;
  position: absolute;
  top: 30px;
  width: 20px;
}

.itmk-pixel-robot-body::before,
.itmk-pixel-robot-body::after {
  background: var(--itmk-blue, #4d6786);
  content: "";
  height: 4px;
  position: absolute;
  top: 4px;
  width: 7px;
}

.itmk-pixel-robot-body::before {
  left: -7px;
}

.itmk-pixel-robot-body::after {
  right: -7px;
}

.itmk-pixel-robot-light {
  background: #b8d6ee;
  box-shadow: 7px 0 0 rgba(255, 255, 255, 0.45);
  height: 4px;
  left: 4px;
  position: absolute;
  top: 5px;
  width: 4px;
}

.itmk-pixel-robot-legs {
  align-items: flex-start;
  display: flex;
  gap: 4px;
  justify-content: center;
  left: 11px;
  position: absolute;
  top: 44px;
  width: 16px;
}

.itmk-pixel-robot-legs span {
  background: var(--itmk-blue, #4d6786);
  height: 5px;
  width: 5px;
}

[data-bs-theme="dark"] .itmk-pixel-robot-head {
  background: #243142;
  box-shadow: inset 0 -4px 0 #17212c;
}

[data-bs-theme="dark"] .itmk-pixel-robot-light {
  background: #91abc9;
  box-shadow: 7px 0 0 rgba(232, 238, 246, 0.36);
}

@keyframes itmk-pixel-robot-bob {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}

@keyframes itmk-pixel-robot-pulse {
  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0.5;
  }
}

@keyframes itmk-pixel-robot-blink {
  0%,
  88%,
  100% {
    transform: scaleY(1);
  }

  92% {
    transform: scaleY(0.25);
  }
}

@keyframes itmk-pixel-robot-eye-scan-left {
  0%,
  100% {
    left: 5px;
  }

  50% {
    left: 8px;
  }
}

@keyframes itmk-pixel-robot-eye-scan-right {
  0%,
  100% {
    right: 8px;
  }

  50% {
    right: 5px;
  }
}

/* Classified forum cards: same skeleton as forum cards, with market details. */
.post-card--classified {
  align-items: stretch;
  gap: 18px;
  min-height: 170px;
  padding-top: 24px;
}

.post-card--classified .post-card-body {
  min-width: 0;
}

.post-card--classified .post-card-author-row {
  padding-right: 112px;
}

.post-card-ribbon--classified {
  background: var(--itmk-blue);
}

.post-card-badge--classified-category {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  white-space: nowrap;
}

.post-card-badge--classified-category .bi {
  color: currentColor;
  font-size: 0.9em;
  opacity: 0.72;
}

.post-card-classified-location {
  align-items: center;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  color: #64748b;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  gap: 5px;
  line-height: 1;
  padding: 6px 10px;
  position: absolute;
  right: 18px;
  top: 16px;
  z-index: 3;
}

.post-card-classified-location .bi {
  color: var(--itmk-blue, #4d6786);
  font-size: 13px;
}

.post-card-classified-media-wrap {
  align-self: flex-start;
  flex: 0 0 112px;
}

.post-card-classified-media {
  align-items: center;
  background: #111a24;
  border-radius: 16px;
  color: #8fa0b3;
  display: flex;
  height: 112px;
  justify-content: center;
  overflow: hidden;
  text-decoration: none;
  width: 112px;
}

.post-card-classified-media img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.post-card-classified-media--empty .bi {
  font-size: 25px;
  opacity: 0.75;
}

.post-card-classified-price {
  align-items: center;
  align-self: flex-start;
  color: var(--itmk-red, #e4222e);
  display: inline-flex;
  font-size: 11px;
  font-weight: 800;
  gap: 5px;
  line-height: 1;
  margin: 0 0 9px;
  padding: 0;
}

.post-card-classified-price .bi {
  font-size: 12px;
}

.post-card-classified-price--empty {
  color: #64748b;
  font-weight: 700;
}

.post-card--classified .post-card-excerpt {
  margin-bottom: 12px;
}

.post-card--classified .post-card-footer {
  margin-top: auto;
  margin-left: -130px;
  width: calc(100% + 130px);
}

.post-card--classified-no-image .post-card-footer {
  margin-left: 0;
  width: 100%;
}

.post-card-views .bi {
  color: var(--itmk-blue, #4d6786);
  font-size: 13px;
}

@media (max-width: 991.98px) {
  .post-card--classified {
    padding: 22px 18px 16px;
  }

  .post-card-classified-media-wrap {
    flex-basis: 104px;
  }

  .post-card-classified-media {
    height: 104px;
    width: 104px;
  }

  .post-card--classified .post-card-footer {
    margin-left: -122px;
    width: calc(100% + 122px);
  }

  .post-card--classified-no-image .post-card-footer {
    margin-left: 0;
    width: 100%;
  }
}

@media (max-width: 767.98px) {
  .post-card--classified .post-card-footer {
    align-items: center;
    flex-wrap: nowrap;
  }

  .post-card--classified .post-card-time {
    flex-basis: auto;
    margin-left: auto !important;
    order: 1;
    white-space: nowrap;
  }
}

@media (max-width: 575.98px) {
  .post-card--classified {
    align-items: stretch;
    flex-direction: column;
    gap: 8px;
    min-height: 0;
    padding: 18px 16px 14px;
  }

  .post-card--classified .post-card-vote {
    display: none !important;
  }

  .post-card-classified-media-wrap {
    flex-basis: auto;
    order: 1;
    position: relative;
    width: 100%;
  }

  .post-card-classified-location {
    bottom: 10px;
    right: 10px;
    top: auto;
  }

  .post-card-classified-media {
    aspect-ratio: 16 / 9;
    height: auto;
    width: 100%;
  }

  .post-card--classified .post-card-body {
    order: 2;
  }

  .post-card--classified .post-card-title {
    margin-bottom: 5px;
  }

  .post-card--classified .post-card-excerpt {
    margin-bottom: 10px;
  }

  .post-card--classified .post-card-author-row {
    margin-bottom: 8px;
    padding-right: 0;
  }

  .post-card--classified .post-card-footer {
    margin-left: 0;
    width: 100%;
  }
}

[data-bs-theme="dark"] .post-card-classified-location {
  background: var(--itmk-pill) !important;
  border-color: transparent !important;
  color: var(--itmk-soft-text) !important;
}

[data-bs-theme="dark"] .post-card-classified-price {
  color: #ff7a84;
}

[data-bs-theme="dark"] .post-card-classified-media {
  background: #0f1722;
  color: var(--itmk-soft-text);
}

/* Compact left rail: keep the expanded forum directory useful without letting
   it compete with the feed for horizontal or vertical space. */
@media (min-width: 1400px) {
  .itmk-community-shell {
    gap: 18px;
    grid-template-columns: 232px minmax(0, 1fr) 340px;
  }

  .comm-sidebar {
    flex-basis: 232px;
    width: 232px;
  }
}

@media (min-width: 1200px) and (max-width: 1399.98px) {
  .itmk-community-shell {
    gap: 18px;
    grid-template-columns: 212px minmax(0, 1fr) 308px;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  .itmk-community-shell {
    gap: 18px;
    grid-template-columns: 200px minmax(0, 1fr);
  }
}

.comm-sidebar-nav > .comm-sidebar-link,
.comm-sidebar-details > summary.comm-sidebar-link {
  min-height: 26px;
  padding-bottom: 1px;
  padding-top: 1px;
}

.comm-sidebar-parent-link {
  gap: 10px;
  padding-left: 12px;
}

.comm-sidebar-caret-button {
  min-width: 28px;
  padding-inline: 6px 9px;
}

.comm-sidebar-subnav,
.comm-sidebar-forum-nested {
  margin-bottom: 1px;
  padding-left: 34px;
}

.comm-sidebar-subnav::before,
.comm-sidebar-forum-nested::before {
  left: 17px;
}

.comm-sidebar-subnav a,
.comm-sidebar-forum-nested .comm-sidebar-link {
  border-radius: 5px;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.18;
  min-height: 19px;
  padding: 1px 5px;
}

.comm-sidebar-subnav em {
  font-size: 11px !important;
}

.comm-sidebar-forum-nested .comm-sidebar-link > span:first-child {
  min-width: 0;
}

/* Counts remain available as secondary information, but recede almost fully. */
.comm-sidebar .comm-sidebar-subnav em,
.comm-sidebar .comm-sidebar-count,
.comm-sidebar .comm-sidebar-badge {
  color: #cbd1d8 !important;
  font-weight: 500 !important;
}

.comm-sidebar .comm-sidebar-badge {
  background: transparent;
  padding-left: 4px;
  padding-right: 4px;
}

.comm-sidebar .comm-sidebar-count {
  font-size: 11px !important;
  gap: 5px;
}

.comm-sidebar .comm-sidebar-count span {
  background: #dfe3e8;
  height: 4px;
  width: 4px;
}

[data-bs-theme="dark"] .comm-sidebar .comm-sidebar-subnav em,
[data-bs-theme="dark"] .comm-sidebar .comm-sidebar-count,
[data-bs-theme="dark"] .comm-sidebar .comm-sidebar-badge {
  color: #46505c !important;
}

[data-bs-theme="dark"] .comm-sidebar .comm-sidebar-count span {
  background: #3b4551;
}

/* Production IT.mk brand mark. A single image is recolored for dark mode so
   competing responsive display rules can never expose a duplicate logo. */
#masthead .navbar-brand .navbar-brand-logo {
  display: block;
  flex: 0 0 auto;
  filter: none;
  object-fit: contain;
  object-position: center;
}

[data-bs-theme="dark"] #masthead .navbar-brand .navbar-brand-logo {
  filter: brightness(0) invert(1);
}
