/* WOOLY CLUB THEME v47 — v20 base + wt_2.jpg brand card + wc-hero-v2 + ambassador badge */
/* ============================================================
   WOOLY CLUB — Custom Theme Override
   Dark Navy Private Club — v1.1
   ============================================================ */

/* --- FONTS --- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Fraunces:opsz,wght@9..144,300;9..144,400;9..144,600&display=swap');

:root {
  --wc-navy:        #070B14;
  --wc-surface:     #101722;
  --wc-card:        #111A26;
  --wc-card-hover:  #152032;
  --wc-cream:       #FFF7EA;
  --wc-blue:        #C89B5A;
  --wc-blue-hover:  #D8AA5F;
  --wc-gold:        #C89B5A;
  --wc-muted:       #9CA3AF;
  --wc-light:       #A8B5C8;
  --wc-dark-text:   #0B0F19;
  --wc-border:      rgba(255,255,255,0.08);
  --wc-border-warm: #E5D8C4;
  --wc-radius:      16px;
  --wc-radius-sm:   10px;
}

/* ---- BASE ---- */
/* ---- Override Sngine night-mode CSS variables with Wooly Club dark navy ---- */
body.night-mode {
  --card-dark-color:       #111A26 !important;   /* was #262D34 (grey) → now dark navy */
  --card-dark-divider:     rgba(200,155,90,0.14) !important;
  --card-dark-hover:       rgba(200,155,90,0.07) !important;
  --card-dark-input:       #1a2235 !important;   /* was #1e252b (grey) → now navy-tinted */
  --card-dark-input-color: #F3EBDD !important;
}

html { height: 100%; }
body, body.night-mode {
  font-family: 'Inter', 'Poppins', -apple-system, sans-serif !important;
  background-color: var(--wc-navy) !important;
  color: var(--wc-light) !important;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.main-wrapper {
  background: var(--wc-navy) !important;
  flex: 1;
  display: flex;
  flex-direction: column;
}
/* Sticky footer — push footer container to bottom when content is short */
.main-wrapper > .container:has(> .row.footer),
.main-wrapper > .container-fluid:has(> .row.footer) {
  margin-top: auto;
}

/* ---- HEADER ---- */
.main-header {
  background: var(--wc-navy) !important;
  border-bottom: 1px solid rgba(200,155,90,0.28) !important;
  box-shadow: 0 2px 24px rgba(0,0,0,0.4) !important;
}
.main-header .logo-wrapper .logo {
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--wc-light) !important;
  letter-spacing: -0.2px;
}
.main-header .logo-wrapper .logo img {
  filter: none;
  vertical-align: middle !important;
}
.main-header .logo img.wc-svg-logo {
  height: 52px !important;
  width: auto !important;
  vertical-align: middle !important;
}
/* ── Header centering — 3-level approach ──
   Root cause on profile/settings pages: their inline <style> block
   appears before <!DOCTYPE html>, which can affect height calculations
   in Safari/iOS. Fix by explicitly centering at every level.

   Level 1: container-fluid → flex, centers the row within the 70px bar.
   Level 2: bootstrap .row → align-items:center, vertically centers cols.
             NO margin override here — that broke gutters previously.
   Level 3: navbar-wrapper → explicit 70px + flex, so icons are always
             centered regardless of outer layout quirks.
   Logo: keep Sngine's native line-height:70px — it already centers the
         logo img correctly. We just ensure the wrapper heights match. */
.main-header > .container-fluid,
.main-header > .container {
  display: flex !important;
  align-items: center !important;
  height: 70px !important;
}
.main-header > .container-fluid > .row,
.main-header > .container > .row {
  flex: 1 !important;
  align-items: center !important;
}
.main-header .navbar-wrapper {
  height: 70px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}
.main-header .navbar-wrapper > ul > li > a {
  margin-top: 0 !important;
}
/* Search bar */
.main-header .search-wrapper .form-control,
.main-header .search-wrapper input {
  background: #101722 !important;
  border: 1px solid var(--wc-border) !important;
  border-radius: 50px !important;
  color: var(--wc-light) !important;
  padding: 9px 22px !important;
  font-size: 14px !important;
}
.main-header .search-wrapper .form-control::placeholder { color: var(--wc-muted) !important; }
.main-header .search-wrapper .form-control:focus {
  border-color: var(--wc-blue) !important;
  box-shadow: none !important;
}
/* Header icons */
.header-icon, .header-icon * {
  color: var(--wc-muted) !important;
  fill: var(--wc-muted) !important;
}
.header-icon:hover, .header-icon:hover * {
  color: var(--wc-light) !important;
  fill: var(--wc-light) !important;
}
/* Notification badge */
.badge-counter { background: var(--wc-blue) !important; }
/* User menu border */
.main-header .user-menu { border-left-color: var(--wc-border) !important; }

/* ---- SIDEBAR ---- */
.main-side-nav-card {
  background: linear-gradient(180deg, #0E1929 0%, #080D18 100%) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: var(--wc-radius) !important;
  box-shadow: 0 4px 18px rgba(0,0,0,0.28) !important;
  overflow: hidden;
}
.main-side-nav-card .card-body { padding: 8px !important; }
.main-side-nav { padding: 0 !important; }

.main-side-nav > li > a,
.main-side-nav > a,
.main-side-nav > li > div > a {
  color: var(--wc-muted) !important;
  border-radius: 10px !important;
  padding: 10px 12px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  transition: all 0.18s ease !important;
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
}
.main-side-nav > li > a:hover,
.main-side-nav > a:hover {
  background: rgba(200,155,90,0.08) !important;
  color: var(--wc-light) !important;
  text-decoration: none !important;
}
.main-side-nav > li.active > a {
  background: linear-gradient(90deg, rgba(200,155,90,0.15), rgba(12,28,52,0.42)) !important;
  border-left: 2px solid #C89B5A !important;
  color: #F3EBDD !important;
  font-weight: 600 !important;
}
.main-side-nav .main-icon,
.main-side-nav .main-icon *,
.main-side-nav i.main-icon {
  color: rgba(200,165,110,0.55) !important;
  fill: rgba(200,165,110,0.55) !important;
  flex-shrink: 0;
}
/* Photos uses Font Awesome <i> — match the amber the SVG icons get from admin CSS */
body.night-mode .main-side-nav li a i.main-icon {
  color: #C4956A !important;
}
.main-side-nav > li.active > a .main-icon,
.main-side-nav > li.active > a .main-icon * {
  color: #C89B5A !important;
  fill: #C89B5A !important;
}
.main-side-nav > li.active > a i.main-icon {
  color: #C89B5A !important;
}
/* Section headers */
.main-side-nav li.ptb5 small,
.main-side-nav li.ptb5 { color: rgba(156,163,175,0.55) !important; }
.main-side-nav li.ptb5 small {
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 1.2px !important;
  padding: 8px 12px 4px !important;
  display: block;
}
/* Collapse sub-items */
.main-side-nav .collapse ul li a {
  color: var(--wc-muted) !important;
  font-size: 13px !important;
  padding: 7px 12px 7px 40px !important;
  border-radius: 8px !important;
}
.main-side-nav .collapse ul li.active a { color: #C89B5A !important; }

/* Wooly Club badge at sidebar bottom */
.wc-badge-card {
  position: relative !important;
  background:
    linear-gradient(180deg, rgba(5,10,18,0.12) 0%, rgba(5,10,18,0.86) 100%),
    url('/content/themes/default/images/wt_2.jpg') center/cover no-repeat !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  border-radius: 18px !important;
  padding: 22px 16px 20px !important;
  margin-top: 10px !important;
  text-align: center !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
.wc-badge-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(200,155,90,0.09), transparent 55%),
    linear-gradient(180deg, rgba(3,6,12,0.22), rgba(3,6,12,0.70)) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.wc-badge-card > * { position: relative !important; z-index: 1 !important; }

/* Crown wrapper — constrain the 80×80 SVG */
.wc-badge-crown {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  max-width: 56px !important;
  max-height: 56px !important;
  border-radius: 999px !important;
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(216,170,95,0.38) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 12px !important;
  overflow: hidden !important;
}
.wc-badge-crown svg {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  flex-shrink: 0 !important;
}

/* Keep legacy .wc-badge-crest in case used elsewhere */
.wc-badge-crest { display: none !important; }

/* Title */
.wc-badge-card .wc-badge-title,
.wc-badge-card h6 {
  font-family: Georgia, serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #D8AA5F !important;
  margin: 0 0 3px !important;
  letter-spacing: 0.01em !important;
  line-height: 1.15 !important;
}

/* Est. line */
.wc-badge-card .wc-badge-est {
  color: #D8AA5F !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  display: block !important;
  margin: 0 0 10px !important;
}

/* Divider */
.wc-badge-card .wc-badge-divider {
  width: 28px !important;
  height: 1px !important;
  background: rgba(200,155,90,0.30) !important;
  margin: 0 auto 10px !important;
}

/* Tagline + sub */
.wc-badge-card .wc-badge-tagline,
.wc-badge-card .wc-badge-sub,
.wc-badge-card p {
  color: rgba(243,235,221,0.72) !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  margin: 0 0 4px !important;
  max-width: 180px !important;
}
.wc-badge-card .wc-badge-sub {
  color: rgba(243,235,221,0.50) !important;
  font-size: 11px !important;
  margin: 0 !important;
}

/* Mobile */
@media (max-width: 768px) {
  .wc-badge-card {
    padding: 18px 14px 16px !important;
  }
  .wc-badge-crown {
    width: 50px !important; height: 50px !important;
    min-width: 50px !important; min-height: 50px !important;
    max-width: 50px !important; max-height: 50px !important;
  }
  .wc-badge-crown svg {
    width: 42px !important; height: 42px !important;
    min-width: 42px !important; min-height: 42px !important;
    max-width: 42px !important; max-height: 42px !important;
  }
  .wc-badge-card .wc-badge-title,
  .wc-badge-card h6 { font-size: 16px !important; }
}

/* ---- CARDS (global) ---- */
.card {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: var(--wc-radius) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.30) !important;
  color: var(--wc-light) !important;
}
.card-header {
  background: transparent !important;
  border-bottom: 1px solid var(--wc-border) !important;
  color: var(--wc-light) !important;
  font-weight: 600;
  padding: 10px 14px !important;
  display: flex !important;
  align-items: center !important;
  min-height: 44px !important;
}
.card-body {
  color: var(--wc-light) !important;
  padding: 12px 14px !important;
}
.card-body.pt0  { padding-top: 0 !important; }
.card-body.pt5  { padding-top: 5px !important; }
.card-body.plr5 { padding-left: 5px !important; padding-right: 5px !important; }

/* ---- HERO CARD ---- */
/* ---- HERO CARD WITH WOOL TEXTURE ---- */
.wc-hero-card {
  background:
    linear-gradient(90deg, rgba(5,10,18,0.88) 0%, rgba(5,10,18,0.60) 40%, rgba(5,10,18,0.18) 100%),
    url('/content/themes/default/images/wc-hero-v4.png') center center / cover no-repeat !important;
  border: 1px solid rgba(200,155,90,0.35);
  border-radius: var(--wc-radius);
  padding: 0;
  margin-bottom: 10px;
  position: relative;
  overflow: hidden;
  min-height: 220px;
  display: flex;
  align-items: center;
}
.wc-hero-card .wc-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(7,11,20,0.72) 0%, rgba(7,11,20,0.50) 42%, rgba(7,11,20,0.16) 100%);
  z-index: 1;
}
.wc-hero-card .wc-hero-content {
  position: relative;
  z-index: 2;
  padding: 32px 28px;
  flex: 1;
}
/* .wc-hero-crest removed */
.wc-welcome-line {
  font-size: 14px; color: rgba(200,190,180,0.8); margin-bottom: 8px; font-weight: 400;
}
.wc-welcome-line span { color: #C89B5A; font-weight: 700; }
.wc-hero-card h2 {
  font-family: 'Fraunces', 'Playfair Display', Georgia, serif !important;
  font-size: 40px !important; font-weight: 700 !important;
  color: #E8D5B0 !important;
  line-height: 1.2; margin-bottom: 10px; letter-spacing: -0.4px;
  text-shadow: 0 2px 18px rgba(0,0,0,0.45) !important;
}
.wc-hero-card p {
  color: rgba(243,235,221,0.78) !important;
  font-size: 15px; line-height: 1.65;
  max-width: 320px; margin: 0;
}
.wc-hero-crest {
  position: static;
  transform: none;
  width: 90px; height: 108px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  opacity: 0.95;
  filter: drop-shadow(0 2px 12px rgba(200,155,90,0.18));
}
.wc-hero-crest svg {
  width: 80px; height: 96px;
}

/* ---- RIGHT PANEL — DARK LUXURY CARDS ---- */
.wc-warm-card {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  border-radius: 16px !important;
  color: rgba(243,235,221,0.78) !important;
  padding: 14px 16px;
  margin-bottom: 10px;
  box-shadow: 0 18px 45px rgba(0,0,0,0.35) !important;
}
.wc-warm-card .wc-wc-header {
  display: flex; align-items: center; gap: 6px;
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(200,155,90,0.16);
}
.wc-warm-card h6 {
  color: #F3EBDD !important;
  font-weight: 700 !important; font-size: 14px; margin: 0;
}
.wc-warm-card h6 i { color: #C89B5A !important; }
.wc-warm-card .wc-badge-status {
  display: inline-flex; align-items: center; gap: 5px;
  background: rgba(200,155,90,0.14);
  color: #C89B5A !important;
  border: 1px solid rgba(200,155,90,0.25);
  border-radius: 20px; padding: 2px 10px;
  font-size: 12px; font-weight: 600;
}
.wc-warm-card .wc-since {
  color: rgba(243,235,221,0.50) !important;
  font-size: 12px; margin-top: 2px; display: block;
}
.wc-warm-card .wc-event-date {
  display: flex; gap: 12px; align-items: flex-start; margin-bottom: 12px;
}
.wc-warm-card .wc-date-box {
  text-align: center;
  background: rgba(200,155,90,0.18);
  border: 1px solid rgba(200,155,90,0.35);
  color: #C89B5A;
  border-radius: 10px; padding: 6px 12px;
  min-width: 52px;
}
.wc-warm-card .wc-date-box .wc-day {
  font-size: 24px; font-weight: 700; line-height: 1; display: block;
}
.wc-warm-card .wc-date-box .wc-month {
  font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 1px;
}
.wc-warm-card .wc-event-info h6 {
  font-size: 13px !important; margin-bottom: 2px; color: #F3EBDD !important;
}
.wc-warm-card .wc-event-info small { color: rgba(243,235,221,0.50) !important; font-size: 12px; }
.wc-warm-card .wc-guidelines ul {
  list-style: none; padding: 0; margin: 0 0 10px;
}
.wc-warm-card .wc-guidelines ul li {
  display: flex; align-items: center; gap: 7px;
  font-size: 12px; color: rgba(243,235,221,0.78) !important;
  padding: 3px 0;
}
.wc-warm-card .wc-guidelines ul li i { color: #C89B5A !important; font-size: 11px; }
.wc-warm-card .wc-product {
  display: flex; gap: 12px; align-items: center; margin-bottom: 10px;
}
.wc-warm-card .wc-product-thumb {
  width: 48px; height: 48px; border-radius: 8px;
  background: rgba(200,155,90,0.1);
  border: 1px solid rgba(200,155,90,0.2);
  overflow: hidden; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
}
.wc-warm-card .wc-product-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wc-warm-card .wc-product-thumb i { color: #C89B5A; font-size: 22px; }
.wc-warm-card .wc-product-name { font-size: 13px; font-weight: 600; color: #F3EBDD !important; }
.wc-warm-card .wc-product-price { font-size: 16px; font-weight: 700; color: #C89B5A !important; }
/* Seller row */
.wc-seller-row {
  display: flex; align-items: center; gap: 7px;
  margin-bottom: 10px;
}
.wc-seller-avatar {
  width: 22px; height: 22px; border-radius: 50%;
  object-fit: cover; flex-shrink: 0;
  border: 1px solid rgba(200,155,90,0.35);
}
.wc-seller-label {
  font-size: 11px; color: rgba(243,235,221,0.48);
}
.wc-seller-label a {
  color: rgba(243,235,221,0.68) !important;
  font-weight: 600; text-decoration: none;
}
.wc-seller-label a:hover { color: #C89B5A !important; }
.wc-warm-btn {
  display: block; width: 100%;
  border: 1px solid rgba(200,155,90,0.45) !important;
  color: #C89B5A !important;
  background: rgba(200,155,90,0.08) !important;
  border-radius: 10px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 8px 0 !important;
  text-align: center;
  cursor: pointer;
  transition: all 0.18s !important;
  text-decoration: none !important;
}
.wc-warm-btn:hover {
  background: rgba(200,155,90,0.16) !important;
  color: #D8AD66 !important;
  text-decoration: none !important;
}
/* Membership user row */
.wc-member-row {
  display: flex; align-items: center; gap: 10px; margin-bottom: 8px;
}
.wc-member-row img {
  width: 38px; height: 38px; border-radius: 50%; border: 2px solid rgba(200,155,90,0.4);
}
.wc-member-row .wc-member-name { font-size: 13px; font-weight: 700; color: #63B3FF !important; }

/* ---- BUTTONS ---- */
.btn-primary, .btn-primary:focus {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  border: 1px solid rgba(255,215,150,0.38) !important;
  border-radius: 10px !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  color: #07101B !important;
  box-shadow: 0 10px 24px rgba(200,155,90,0.14) !important;
}
.btn-primary:hover { filter: brightness(1.05) !important; transform: translateY(-1px) !important; color: #07101B !important; }
a.btn-primary, a.btn-primary:hover, a.btn-primary:focus { color: #07101B !important; }
.btn-light { border-radius: 10px !important; }

/* ---- LINKS ---- */
a { color: var(--wc-blue) !important; }
a:hover { color: var(--wc-blue-hover) !important; }
.text-link { color: var(--wc-muted) !important; }
.text-link:hover { color: #C89B5A !important; }
.data-content .name a { color: #63B3FF !important; font-weight: 700 !important; }
.data-content .name a:hover { color: #9CD2FF !important; }
.navbar-container .data-content .name a { color: #63B3FF !important; font-weight: 700 !important; }

/* ---- SUGGESTED FRIENDS + GROUPS CARDS ---- */

/* Header: title left, See All right */
.wc-suggested-friends-card .wc-wc-header,
.wc-suggested-groups-card .wc-wc-header {
  justify-content: space-between !important;
}

/* Title span */
.wc-sf-title {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #F3EBDD !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

/* Header icon → gold (container + all SVG children) */
.wc-sf-title .main-icon {
  color: #C89B5A !important;
  stroke: #C89B5A !important;
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0 !important;
}
.wc-sf-title .main-icon path,
.wc-sf-title .main-icon circle,
.wc-sf-title .main-icon rect,
.wc-sf-title .main-icon polygon,
.wc-sf-title .main-icon polyline {
  fill: #C89B5A !important;
  stroke: none !important;
}

/* See All link */
.wc-sf-see-all {
  color: #D8AA5F !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.wc-sf-see-all:hover { color: #F3EBDD !important; }

/* Row list */
.wc-sf-list {
  list-style: none !important;
  margin: 4px 0 0 0 !important;
  padding: 0 !important;
}

/* Row separators */
.wc-suggested-friends-card .feeds-item,
.wc-suggested-groups-card .feeds-item {
  border-bottom: 1px solid rgba(200,155,90,0.08) !important;
  padding: 0 !important;
}
.wc-suggested-friends-card .feeds-item:last-child,
.wc-suggested-groups-card .feeds-item:last-child {
  border-bottom: none !important;
}
.wc-suggested-friends-card .data-container,
.wc-suggested-groups-card .data-container {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 0 !important;
  min-height: 72px !important;
  overflow: hidden !important;
}
/* Cancel float — avatar is a flex child now */
.wc-suggested-friends-card .data-avatar,
.wc-suggested-groups-card .data-avatar {
  float: none !important;
  flex-shrink: 0 !important;
  align-self: center !important;
}

/* Friend avatar — circular */
.wc-suggested-friends-card .data-avatar img {
  width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  border: 1px solid rgba(200,155,90,0.24) !important;
  background: #07101B !important;
}

/* Group avatar — rounded square, branded background */
.wc-suggested-groups-card .data-avatar img {
  width: 44px !important;
  height: 44px !important;
  border-radius: 10px !important;
  object-fit: cover !important;
  border: 1px solid rgba(200,155,90,0.24) !important;
  background: rgba(200,155,90,0.08) !important;
}

/* Content column — block with relative positioning; button anchored absolutely.
   DOM order inside data-content: .float-end | .mt5 | div(meta)
   The outer flex align-items:center already vertically centres the text block
   against the avatar; no grid needed. */
.wc-suggested-friends-card .data-content,
.wc-suggested-groups-card .data-content {
  flex: 1 !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 52px !important;
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
}

/* Name row */
.wc-suggested-friends-card .data-content .mt5,
.wc-suggested-groups-card .data-content .mt5 {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-width: 0 !important;
  line-height: 1 !important;
}

/* Meta (mutual friends / member count) */
.wc-suggested-friends-card .data-content > div:not(.float-end):not(.mt5),
.wc-suggested-groups-card .data-content > div:not(.float-end) {
  color: rgba(243,235,221,0.45) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  margin-top: 3px !important;
}

/* Username / group name */
.wc-suggested-friends-card .data-content .name,
.wc-suggested-groups-card .data-content .name {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1.15 !important;
  margin: 0 !important;
}
.wc-suggested-friends-card .data-content .name a,
.wc-suggested-groups-card .data-content .name a {
  color: #63B3FF !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
}

/* Crown — keep Sngine red, align precisely with username baseline */
.wc-suggested-friends-card .pro-badge .main-icon,
.wc-suggested-groups-card .pro-badge .main-icon {
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0 !important;
  transform: translateY(1px) !important;
}

/* Button — absolute, pinned right, vertically centred on the text block */
.wc-suggested-friends-card .data-content .float-end,
.wc-suggested-groups-card .data-content .float-end {
  position: absolute !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  float: none !important;
}

/* Action buttons — dark/gold, all states.
   Uses html+body prefix for maximum cascade weight over Bootstrap + Sngine defaults. */
html body .wc-suggested-friends-card .float-end button,
html body .wc-suggested-groups-card .float-end button {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  border-radius: 12px !important;
  background: rgba(7,11,20,0.78) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #C89B5A !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  outline: none !important;
  font-size: 0 !important;
}
html body .wc-suggested-friends-card .float-end button:hover,
html body .wc-suggested-groups-card .float-end button:hover {
  background: rgba(200,155,90,0.10) !important;
  border-color: rgba(216,170,95,0.42) !important;
}

/* Button SVG container */
html body .wc-suggested-friends-card .float-end button .main-icon,
html body .wc-suggested-groups-card .float-end button .main-icon,
html body .wc-suggested-friends-card .float-end button svg,
html body .wc-suggested-groups-card .float-end button svg {
  color: #C89B5A !important;
  stroke: #C89B5A !important;
  width: 19px !important;
  height: 19px !important;
}

/* Button SVG paths → gold fill (Sngine night-mode overrides these to white) */
html body .wc-suggested-friends-card .float-end button path,
html body .wc-suggested-groups-card .float-end button path,
html body .wc-suggested-friends-card .float-end button circle,
html body .wc-suggested-groups-card .float-end button circle,
html body .wc-suggested-friends-card .float-end button rect,
html body .wc-suggested-groups-card .float-end button rect,
html body .wc-suggested-friends-card .float-end button polygon,
html body .wc-suggested-groups-card .float-end button polygon {
  fill: #C89B5A !important;
  stroke: none !important;
}
html body .wc-suggested-friends-card .float-end button:hover path,
html body .wc-suggested-groups-card .float-end button:hover path,
html body .wc-suggested-friends-card .float-end button:hover circle,
html body .wc-suggested-groups-card .float-end button:hover circle {
  fill: #D8AA5F !important;
}

/* ---- END SUGGESTED FRIENDS + GROUPS CARDS ----

/* ---- PUBLISHER (post composer) ---- */
.publisher, .x-form.publisher {
  background: linear-gradient(180deg, rgba(15,22,32,0.98), rgba(8,13,22,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.22) !important;
}
.publisher .publisher-message { border-bottom: 1px solid var(--wc-border) !important; padding-top: 18px !important; padding-bottom: 17px !important; }
.publisher .publisher-message textarea,
.publisher .publisher-message .quill-editor {
  color: var(--wc-light) !important;
  background: transparent !important;
  text-align: center !important;
}
.publisher .publisher-message textarea::placeholder {
  color: var(--wc-muted) !important;
  text-align: center !important;
}
.publisher .publisher-message .quill-editor [contenteditable]:empty::before,
.publisher .publisher-message [contenteditable][data-placeholder]:empty::before {
  text-align: center !important;
  display: block !important;
}
.publisher .x-form-tools {
  background: rgba(7,11,20,0.48) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
}
.publisher .x-form-tools .btn { border-radius: 8px !important; }
/* Fix "Create Blog" link colour to match other tabs */
.publisher-tools-tab.link,
a.publisher-tools-tab { color: inherit !important; text-decoration: none !important; }

/* ---- STORIES STRIP ---- */
.stories-wrapper { background: transparent !important; }
.card .card-header strong.text-muted { color: var(--wc-muted) !important; font-weight: 600 !important; }
/* Story rings */
.story-wrap .story-border { border-color: rgba(200,155,90,0.70) !important; }
/* Add-story — override Sngine 110x160px default */
.add-story { border: none !important; box-shadow: none !important; outline: none !important;
  width: 56px !important; height: 56px !important;
  min-width: 56px !important; min-height: 56px !important;
  max-width: 56px !important; max-height: 56px !important;
  border-radius: 50% !important; }
.add-story .img { width: 56px !important; height: 56px !important;
  min-height: 56px !important; max-height: 56px !important;
  border-radius: 50% !important; border: 2px solid rgba(200,155,90,0.75) !important;
  background-size: cover !important; background-position: center !important; }
.add-story .add { background: var(--wc-gold) !important;
  border-color: var(--wc-card, #111A26) !important;
  width: 18px !important; height: 18px !important;
  min-width: 18px !important; min-height: 18px !important;
  padding: 0 !important; display: flex !important;
  align-items: center !important; justify-content: center !important;
  border-radius: 50% !important;
  position: absolute !important;
  top: 38px !important; bottom: auto !important;
  left: 50% !important; right: auto !important;
  transform: translateX(-50%) !important; }
.add-story .add * { fill: #fff !important; width: 10px !important; height: 10px !important; }

/* ---- POSTS ---- */
.post, .post-outer-wrapper, .feed-item {
  background: linear-gradient(180deg, rgba(15,22,32,0.98), rgba(8,13,22,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.22) !important;
  margin-bottom: 14px !important;
  overflow: visible !important;
}
.post-data .data-content .data-meta, .data-meta { color: rgba(243,235,221,0.58) !important; }
.post-text { color: rgba(243,235,221,0.84) !important; line-height: 1.6 !important; }
.post-text p { margin-bottom: 0.5em !important; }
.post-text p:last-child { margin-bottom: 0 !important; }
.post-text p:empty,
.post-text p:has(> br:only-child) { display: none !important; }
.post-text a, .post-text .hashtag { color: var(--wc-blue) !important; }
.post-media img, .post-media video { border-radius: 10px !important; }
.post-actions {
  background: rgba(7,11,20,0.48) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
}
.post-actions .btn, .post-actions a {
  color: var(--wc-muted) !important; font-size: 13px !important;
}
.post-actions .btn:hover, .post-actions a:hover { color: var(--wc-blue) !important; }
.post-stats, .post-stats-alt { color: var(--wc-muted) !important; }
.post-stats .fa { color: var(--wc-blue) !important; }

/* ---- FORMS & INPUTS ---- */
.form-control, .form-control:focus, select.form-control, textarea.form-control {
  background: #0D1520 !important;
  border: 1px solid var(--wc-border) !important;
  color: var(--wc-light) !important;
  border-radius: 10px !important;
}
.form-control:focus {
  border-color: var(--wc-blue) !important;
  box-shadow: 0 0 0 3px rgba(10,88,202,0.14) !important;
}
.form-control::placeholder { color: var(--wc-muted) !important; }

/* ---- DROPDOWNS ---- */
.dropdown-menu {
  background: #131E2E !important;
  border: 1px solid var(--wc-border) !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.45) !important;
}
.dropdown-item { color: var(--wc-muted) !important; border-radius: 8px !important; font-size: 14px !important; }
.dropdown-item:hover { background: rgba(10,88,202,0.1) !important; color: var(--wc-light) !important; }
.dropdown-divider { border-color: var(--wc-border) !important; }

/* ═══════════════════════════════════════════════
   SECTION HERO BANNERS — Standardized
   Photos · Videos · Rooms · Marketplace · Events
   ═══════════════════════════════════════════════ */

/* Base .page-header reset */
.page-header {
  background: linear-gradient(135deg, var(--wc-navy) 0%, #0C1B33 100%) !important;
  border: none !important;
  border-bottom: none !important;
}

/* ── Shared hero shell ── */
.wc-photos-header,
.wc-videos-header,
.wc-stories-header,
.wc-rooms-header,
.wc-market-header,
.wc-events-header,
.wc-groups-header,
.wc-pages-header,
.wc-search-header {
  position: relative !important;
  height: 320px !important;
  min-height: 320px !important;
  max-height: 320px !important;
  display: flex !important;
  align-items: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  overflow: hidden !important;
  border: none !important;
  border-bottom: none !important;
}

/* ── Dual-layer overlay ── */
.wc-photos-header::before,
.wc-videos-header::before,
.wc-stories-header::before,
.wc-rooms-header::before,
.wc-market-header::before,
.wc-events-header::before,
.wc-groups-header::before,
.wc-pages-header::before,
.wc-search-header::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7,11,20,0.25) 0%, rgba(7,11,20,0.55) 65%, rgba(7,11,20,0.85) 100%),
    linear-gradient(90deg,  rgba(7,11,20,0.55) 0%, rgba(7,11,20,0.25) 50%, rgba(7,11,20,0.55) 100%);
  z-index: 1;
  pointer-events: none;
}

/* ── Inner container ── */
.wc-hero-inner {
  position: relative;
  z-index: 2;
  text-align: center;
  width: 100%;
}

/* ── Title ── */
.wc-hero-title {
  font-size: 34px !important;
  font-weight: 700 !important;
  color: #F3EBDD !important;
  margin: 0 0 10px !important;
  line-height: 1.2 !important;
  text-shadow: 0 3px 18px rgba(0,0,0,0.55) !important;
  font-family: inherit !important;
}

/* ── Subtitle ── */
.wc-hero-sub {
  font-size: 17px !important;
  color: rgba(243,235,221,0.78) !important;
  margin: 0 0 22px !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.45) !important;
}
.wc-hero-inner .wc-hero-sub:last-child { margin-bottom: 0 !important; }

/* ── Search bar ── */
.wc-hero-search {
  max-width: 760px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  /* Form itself: transparent — no outer box */
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}
/* Input: left portion of the unified pill */
.wc-hero-search input[type="text"] {
  flex: 1 1 0;
  min-width: 0;
  height: 52px !important;
  background: rgba(4,8,15,0.65) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  border-right: none !important;
  border-radius: 14px 0 0 14px !important;
  color: #F3EBDD !important;
  padding: 0 18px !important;
  font-size: 15px !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color 0.2s !important;
}
/* Second input (market: location field) */
.wc-hero-search input[type="text"]:not(:first-child) {
  border-left: 1px solid rgba(200,155,90,0.20) !important;
  border-right: none !important;
  border-radius: 0 !important;
  padding-left: 16px !important;
}
.wc-hero-search input[type="text"]:focus {
  border-color: rgba(200,155,90,0.55) !important;
  background: rgba(4,8,15,0.80) !important;
}
.wc-hero-search input[type="text"]::placeholder {
  color: rgba(243,235,221,0.40) !important;
}
/* Button: right cap of the unified pill — shares same border */
.wc-hero-search button[type="submit"] {
  flex-shrink: 0;
  height: 52px !important;
  min-width: 120px !important;
  width: auto !important;
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  border-left: none !important;
  border-radius: 0 14px 14px 0 !important;
  color: #D8AA5F !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background 0.2s, border-color 0.2s !important;
  padding: 0 24px !important;
}
.wc-hero-search button[type="submit"]:hover {
  background: rgba(200,155,90,0.22) !important;
  border-color: rgba(200,155,90,0.50) !important;
}

/* Hide legacy overlay divs */
.wc-photos-overlay,
.wc-videos-overlay { display: none !important; }

/* ── Per-page backgrounds ── */
.wc-photos-header {
  background-image: url('/content/themes/default/images/photos-hero.jpg') !important;
  background-position: center 42% !important;
}
.wc-videos-header {
  background-image: url('/content/themes/default/images/videos-hero.png') !important;
  background-position: center 42% !important;
}
.wc-stories-header {
  background-image: url('/content/themes/default/images/stories-hero.png') !important;
  background-position: center 45% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 48px 0 40px !important;
  align-items: flex-start !important;
}
.wc-rooms-header {
  background-image: url('/content/themes/default/images/groups-hero.png') !important;
  background-position: center 45% !important;
}
.wc-market-header {
  background-image: url('/content/themes/default/images/market-hero.png') !important;
  background-position: center 45% !important;
}
.wc-events-header {
  background-image: url('/content/themes/default/images/events-hero.png') !important;
  background-position: center 42% !important;
}
.wc-groups-header {
  background-image: url('/content/themes/default/images/groups-hero.png') !important;
  background-position: center 30% !important;
}
.wc-pages-header {
  background-image: url('/content/themes/default/images/pages-hero.webp') !important;
  background-position: center 45% !important;
}
.wc-search-header {
  background-image: url('/content/themes/default/images/search-hero.webp') !important;
  background-position: bottom center !important;
  background-size: cover !important;
}

/* ── Tablet (≤991px) ── */
@media (max-width: 991px) {
  .wc-photos-header,
  .wc-videos-header,
  .wc-stories-header,
  .wc-rooms-header,
  .wc-market-header,
  .wc-events-header,
  .wc-groups-header {
    height: 280px !important;
    min-height: 280px !important;
    max-height: 280px !important;
  }
  .wc-hero-title { font-size: 28px !important; }
  .wc-hero-sub  { font-size: 15px !important; }
}

/* ── Mobile (≤575px) ── */
@media (max-width: 575px) {
  .wc-photos-header,
  .wc-videos-header,
  .wc-stories-header,
  .wc-rooms-header,
  .wc-market-header,
  .wc-events-header,
  .wc-groups-header {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }
  .wc-hero-title { font-size: 22px !important; }
  .wc-hero-sub  { font-size: 14px !important; margin-bottom: 16px !important; }
  .wc-hero-search { margin: 0 14px; }
  .wc-hero-search input[type="text"]  { height: 42px !important; font-size: 14px !important; }
  .wc-hero-search button[type="submit"] { height: 42px !important; min-width: 88px !important; width: auto !important; font-size: 13px !important; padding: 0 16px !important; }
}

/* ---- LOAD MORE / NO DATA BAR ---- */
.see-more {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #F3EBDD !important;
  border-radius: 999px !important;
  text-align: center !important;
  padding: 13px 32px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  cursor: pointer !important;
  transition: background 0.22s ease, border-color 0.22s ease, color 0.22s ease, box-shadow 0.22s ease !important;
}
.see-more:hover:not(.done) {
  background: rgba(200,155,90,0.12) !important;
  border-color: rgba(200,155,90,0.65) !important;
  color: #F3EBDD !important;
  box-shadow: 0 4px 18px rgba(0,0,0,0.22) !important;
}
.see-more.done {
  background: transparent !important;
  border: 1px solid rgba(200,155,90,0.12) !important;
  color: rgba(243,235,221,0.55) !important;
  cursor: default !important;
  font-style: italic !important;
}

.see-more span { color: inherit !important; }
/* ---- FOOTER ---- */
.footer {
  border-top: 1px solid rgba(243,235,221,0.08) !important;
  background: #070B14 !important;
  color: rgba(243,235,221,0.62) !important;
  padding: 18px 0 !important;
}
.footer a, .footer span { color: rgba(243,235,221,0.70) !important; }
.footer a:hover { color: #C89B5A !important; }

/* ---- ALERTS ---- */
.alert-info { background: rgba(10,88,202,0.12) !important; border-color: rgba(10,88,202,0.2) !important; color: var(--wc-light) !important; }
.alert-warning { background: rgba(200,155,90,0.12) !important; border-color: rgba(200,155,90,0.2) !important; color: var(--wc-light) !important; }

/* ---- BADGES ---- */
.badge.bg-primary, .badge-primary, .text-bg-primary { background: var(--wc-blue) !important; }
.text-primary { color: var(--wc-blue) !important; }

/* ---- MISC ---- */
.text-muted { color: var(--wc-muted) !important; }
.border, hr { border-color: var(--wc-border) !important; }
.side-nav > li.active > a { color: var(--wc-blue) !important; }

/* ---- CONTENT TABS ---- */
.content-tabs {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 14px !important;
}
.content-tabs ul li.active a { color: #F3EBDD !important; border-bottom: 2px solid #C89B5A !important; }
.content-tabs ul li a { color: rgba(243,235,221,0.62) !important; }

/* ---- POSTS FILTER BAR ---- */
.posts-filter {
  background: linear-gradient(180deg, rgba(15,22,32,0.98), rgba(8,13,22,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 18px !important;
  color: var(--wc-light) !important;
  margin-bottom: 12px;
}

/* ---- SCROLLBAR ---- */
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: var(--wc-navy); }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.2); }

/* ---- GALLERY PAGE ---- */
.gallery-grid, .photos-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 10px;
}
.gallery-thumb {
  border-radius: 10px; overflow: hidden; aspect-ratio: 1;
  background: var(--wc-surface);
}
.gallery-thumb img { width: 100%; height: 100%; object-fit: cover; }

/* ---- WOOL MEDIA PREVIEW (right panel) ---- */
.wc-media-card {
  background: var(--wc-card);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 0 14px 12px;
  margin-bottom: 8px;
}
.wc-media-card .wc-media-header {
  display: flex; justify-content: space-between; align-items: center;
  min-height: 44px;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--wc-border);
}
.wc-media-card .wc-media-header strong { color: var(--wc-light) !important; font-size: 14px; }
.wc-media-card .wc-media-header a { color: var(--wc-blue) !important; font-size: 12px; }
.wc-media-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.wc-media-thumb {
  border-radius: 9px; aspect-ratio: 1;
  background: #1A2535; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.wc-media-thumb img { width: 100%; height: 100%; object-fit: cover; }
.wc-media-thumb i { color: rgba(156,163,175,0.4); font-size: 20px; }

/* ---- MODAL ---- */
.modal-content {
  background: var(--wc-surface) !important;
  border: 1px solid var(--wc-border) !important;
  border-radius: var(--wc-radius) !important;
  color: var(--wc-light) !important;
}
.modal-header { border-bottom: 1px solid var(--wc-border) !important; color: var(--wc-light) !important; }
.modal-footer { border-top: 1px solid var(--wc-border) !important; }
.btn-close { filter: invert(1); }

/* ---- LIST GROUPS ---- */
.list-group-item {
  background: transparent !important;
  border-color: var(--wc-border) !important;
  color: var(--wc-light) !important;
}
.list-group-item.active { background: rgba(10,88,202,0.15) !important; border-color: var(--wc-blue) !important; }

/* ---- TOP BAR ---- */
.top-bar { background: rgba(10,88,202,0.18) !important; color: var(--wc-light) !important; }
.top-bar.danger { background: rgba(220,38,38,0.18) !important; }

/* ---- POPOVER ---- */
.popover {
  background: #131E2E !important;
  border: 1px solid var(--wc-border) !important;
  border-radius: 14px !important;
}
.popover-body { color: var(--wc-light) !important; }

/* ---- CHAT BOX ---- */
.chatbox-wrapper { background: var(--wc-surface) !important; border: 1px solid var(--wc-border) !important; }
.chatbox-header { background: var(--wc-card) !important; border-bottom: 1px solid var(--wc-border) !important; }

/* ---- SIDE NAV (non-main) ---- */
.side-nav li a { color: var(--wc-muted) !important; }
.side-nav li.active a { color: var(--wc-blue) !important; }

/* ---- WOOL VIDEOS CARD ---- */
.wc-video-thumb {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 10px;
}
.wc-video-thumb img {
  width: 100%; height: auto; display: block;
  border-radius: 10px;
}
.wc-play-btn {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 44px; height: 44px; border-radius: 50%;
  background: rgba(255,255,255,0.18);
  backdrop-filter: blur(4px);
  border: 2px solid rgba(255,255,255,0.4);
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 16px;
  cursor: pointer;
  transition: background 0.2s;
}
.wc-play-btn:hover { background: rgba(10,88,202,0.7); }
.wc-video-duration {
  position: absolute; bottom: 8px; right: 10px;
  background: rgba(0,0,0,0.7);
  color: #fff; font-size: 11px; font-weight: 600;
  padding: 2px 6px; border-radius: 4px;
}
.wc-video-title {
  font-size: 13px; font-weight: 600; color: var(--wc-light) !important;
  margin-bottom: 2px;
}
.wc-video-meta { font-size: 12px; color: var(--wc-muted) !important; }
.wc-video-meta a { color: var(--wc-blue) !important; font-weight: 500; }

/* ---- MINI FOOTER (fixed to bottom of viewport) ---- */
.mini-footer {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 999 !important;
  background: #060A18 !important;
  border-top: 1px solid rgba(255,255,255,0.07) !important;
  padding: 10px 24px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  margin-top: 0 !important;
}
.mini-footer .copyrights { font-size: 12px; color: #6B7280; display: flex; align-items: center; gap: 8px; }
.mini-footer .links { display: flex; flex-wrap: wrap; gap: 14px; list-style: none; padding: 0; margin: 0; }
.mini-footer .links a { font-size: 12px; color: #6B7280; text-decoration: none; }
.mini-footer .links a:hover { color: #D8AA5F; }
/* push page content up so it's never hidden behind the fixed mobile nav bar */
body { padding-bottom: 56px !important; }

/* ── SPACING NORMALISATION ── */
/* Prevent Bootstrap default card bottom-margin stacking */
.card { margin-bottom: 8px !important; }
/* Compact post box and filter bar */
.posts-filter { margin-bottom: 8px !important; }
/* Remove double-gap in the center split row */
.row.g-2 > [class*="col-"] { padding-top: 0; }
/* Even gap for center split inner columns */
.row.g-2 { --bs-gutter-x: 0.5rem; --bs-gutter-y: 0; }
/* Right panel sticky offset – don't let it drift down */
.col-lg-4.js_sticky-sidebar, .col-lg-3.js_sticky-sidebar { padding-top: 0 !important; }
/* wc-warm-btn — remove mt10 extra gap */
.wc-warm-btn.mt10 { margin-top: 6px !important; }
.wc-event-empty { padding: 4px 0 2px; text-align: center; }
.wc-event-empty i { font-size: 24px !important; margin-bottom: 6px !important; }
.wc-event-empty p { margin-bottom: 10px !important; }
/* Sidebar nav card top-of-page gap */
.sg-offcanvas-sidebar > .js_sticky-sidebar { padding-top: 0 !important; }
/* Fix Sngine's ptb20 class on card headers (too tall) */
.card-header.ptb20 { padding-top: 10px !important; padding-bottom: 10px !important; }

/* ── ALIGNMENT FIXES ── */

/* Card headers: flex + centered, float-end stays right */
.card-header .float-end { margin-left: auto; }
.card-header strong    { font-size: 14px; line-height: 1; }

/* wc-media-header: move padding inside the container so it lines up like card-header */
.wc-media-card .wc-media-header {
  padding-top: 10px;
}
.wc-media-card .wc-media-header strong i { vertical-align: middle; }

/* ── EMPTY STATES ── */
#wc-photos-empty-state,
#wc-videos-empty-state {
  text-align: center;
  padding: 22px 10px;
  min-height: 110px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.wc-event-empty {
  text-align: center;
  padding: 10px;
}
.wc-empty-icon {
  font-size: 28px !important;
  color: rgba(200,155,90,0.55) !important;
  margin-bottom: 8px !important;
}
.wc-empty-text {
  font-size: 12px !important;
  color: #9CA3AF !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  text-align: center !important;
}

/* Stories card body: let it breathe without extra top padding collapsing */
.stories-wrapper { padding-top: 8px !important; }

/* Publisher (post box) avatar + text vertical centre */
/* publisher-message flex removed — broke vertical text */

/* Ensure both split-row columns start flush at top */
.row.g-2 > .col-lg-7,
.row.g-2 > .col-lg-5 { padding-top: 0 !important; margin-top: 0 !important; }

/* Hero heading gold */
.wc-hero-content h2 { color: var(--wc-gold) !important; }

/* Logo size */
.main-header .logo img.logo-light,
.main-header .logo img.logo-dark,
.main-header .logo img {
  height: 52px !important;
  max-height: none !important;
  width: auto !important;
}
/* Recent Updates filter bar — compact spacing */
.posts-filter { margin-bottom: 20px !important; padding: 6px 10px !important; }
.posts-filter .btn-group { margin: 0 !important; }
/* Empty feed — give the no-data area more breathing room */
.js_posts_stream > .text-center.text-muted {
  min-height: 300px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  padding: 60px 20px 40px !important;
  margin-top: 16px !important;
}

/* ---- PHOTOS PAGE HERO ---- */
.wc-photos-header {
  background: url('/content/themes/default/images/photos-hero.jpg') center 30% / cover no-repeat !important;
  position: relative;
  overflow: hidden;
}
.wc-photos-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, rgba(5,8,20,0.82) 0%, rgba(8,14,35,0.65) 45%, rgba(5,8,20,0.45) 100%);
  z-index: 1;
}

/* ---- VIDEOS PAGE HERO ---- */
.wc-videos-header {
  background: url('/content/themes/default/images/videos-hero.png') center 25% / cover no-repeat !important;
  position: relative;
  overflow: hidden;
}
.wc-videos-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, rgba(5,8,20,0.88) 0%, rgba(8,14,35,0.65) 50%, rgba(5,8,20,0.35) 100%);
  z-index: 1;
}

/* ---- STORIES OVERLAY HIDE ---- */
.wc-stories-overlay {
  display: none !important;
}
.wc-stories-legacy-block {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, rgba(5,8,20,0.85) 0%, rgba(8,14,35,0.62) 50%, rgba(5,8,20,0.30) 100%);
  z-index: 1;
}

/* ── Cookie consent banner ── */
.cc-window { border-top: 1px solid rgba(200,155,90,0.25) !important; }
.cc-link { color: #C89B5A !important; text-decoration: underline !important; }
.cc-link:hover { color: #e0b97a !important; }
.cc-btn { font-weight: 600 !important; letter-spacing: 0.03em !important; }

/* ═══════════════════════════════════════════════════════
   Landing page (elengine) – Wooly Club branding overrides
   ═══════════════════════════════════════════════════════ */

.fr_welcome,
body.night-mode .fr_welcome {
  background-color: #070B14 !important;
}

.fr_auth_form,
body.night-mode .fr_auth_form {
  background-color: #111A26 !important;
  border: 1px solid rgba(200,155,90,0.2) !important;
  border-radius: 20px !important;
}

.fr_welcome_title {
  color: #E8DCC8 !important;
  font-size: 1.55rem !important;
}

.fr_welcome_sign .logo-wrapper img {
  max-width: 180px !important;
  max-height: 64px !important;
}

.fr_welcome_sign img.logo-light,
body.night-mode .fr_welcome_sign img.logo-light {
  display: inline-block !important;
}
.fr_welcome_sign img.logo-dark,
body.night-mode .fr_welcome_sign img.logo-dark {
  display: none !important;
}

.fr_welcome_field input,
.fr_welcome_field select,
body.night-mode .fr_welcome_field input,
body.night-mode .fr_welcome_field select {
  background-color: #0D1520 !important;
  border-color: rgba(255,255,255,0.1) !important;
  color: #E8DCC8 !important;
  border-radius: 12px !important;
}

.fr_welcome_field input::placeholder { color: #9CA3AF !important; }

.fr_welcome_field input:focus,
.fr_welcome_field select:focus,
body.night-mode .fr_welcome_field input:focus,
body.night-mode .fr_welcome_field select:focus {
  border-color: #C89B5A !important;
  background-color: #0D1520 !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.15) !important;
}

.fr_welcome_field svg { color: #A8B5C8 !important; }

.fr_welcome_field input:focus + svg,
.fr_welcome_field select:focus + svg {
  color: #C89B5A !important;
  opacity: 1 !important;
}

.fr_welcome_btn,
.fr_welcome_btn.btn-primary {
  background: linear-gradient(135deg, #C89B5A 0%, #a07840 100%) !important;
  border: none !important;
  color: #070B14 !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 20px rgba(200,155,90,0.3) !important;
  transition: box-shadow 0.2s, transform 0.15s !important;
}
.fr_welcome_btn:hover,
.fr_welcome_btn.btn-primary:hover {
  background: linear-gradient(135deg, #d4aa6a 0%, #b08040 100%) !important;
  box-shadow: 0 6px 28px rgba(200,155,90,0.5) !important;
  transform: translateY(-1px) !important;
  color: #070B14 !important;
}

.fr_auth_form .form-check-label,
.fr_auth_form label { color: #A8B5C8 !important; }

.fr_auth_form a { color: #C89B5A !important; }
.fr_auth_form a:hover { color: #e0b97a !important; }

.fr_welcome_switch { color: #A8B5C8 !important; }
.fr_welcome_switch a { color: #C89B5A !important; text-decoration-color: rgba(200,155,90,0.4) !important; }

.fr_welcome_img,
.fr_welcome_bg_img {
  border-radius: 40px 0 0 40px !important;
}

.fr_welcome_img:before {
  background: linear-gradient(160deg, rgba(7,11,20,0.45) 0%, rgba(200,155,90,0.12) 100%) !important;
  opacity: 1 !important;
  border-radius: 40px 0 0 40px !important;
}

.fr_welcome_img > .svg_blur { display: none !important; }

.fr_welcome_img > .svg_lines {
  color: rgba(200,155,90,0.25) !important;
  opacity: 0.5 !important;
}

.fr_welcome_img_innr {
  background: linear-gradient(transparent, rgba(7,11,20,0.92)) !important;
  padding: 130px 50px 50px !important;
}

.fr_welcome_img_innr h5 {
  color: #C89B5A !important;
  font-size: 0.8rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin-bottom: 10px !important;
}

.fr_welcome_img_innr h2 {
  color: #E8DCC8 !important;
  font-size: 1.9rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.fr_welcome_img_innr p {
  color: #A8B5C8 !important;
  font-size: 0.95rem !important;
  margin-top: 8px !important;
}

.fr_welcome_bottom .footer,
.fr_welcome_bottom .footer a { color: #9CA3AF !important; }
.fr_welcome_bottom .footer a:hover { color: #C89B5A !important; }

/* ─── end landing overrides ─── */

/* ── PAGE HEADER SEARCH BAR BUTTONS (all pages) ── */
.page-header .input-group .btn.btn-light,
.page-header .input-group .btn.btn-secondary {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.50) !important;
  color: #C89B5A !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border-radius: 0 10px 10px 0 !important;
  transition: all 0.18s !important;
  white-space: nowrap;
}
.page-header .input-group .btn.btn-light:hover,
.page-header .input-group .btn.btn-secondary:hover {
  background: rgba(200,155,90,0.20) !important;
  color: #D8AD66 !important;
  border-color: rgba(200,155,90,0.70) !important;
}

/* ---- MOBILE HAMBURGER / SG-OFFCANVAS FIX ---- */
@media (max-width: 767px) {
  /* Give mainbar a position so left:100% actually moves it */
  .sg-offcanvas .sg-offcanvas-mainbar {
    position: relative !important;
  }
  /* Smooth transition on both open AND close */
  .sg-offcanvas .sg-offcanvas-sidebar,
  .sg-offcanvas .sg-offcanvas-mainbar {
    transition: left 0.25s ease-out !important;
  }
  /* Ensure sidebar has a background so it's visible over content */
  .sg-offcanvas .sg-offcanvas-sidebar {
    background: var(--wc-navy) !important;
    box-shadow: 4px 0 24px rgba(0,0,0,0.5) !important;
    min-height: 100vh !important;
    padding-top: 70px !important;
  }
  /* Tap target: make menu icon cursor:pointer for iOS delegation */
  .main-header .menu-icon {
    cursor: pointer !important;
    -webkit-tap-highlight-color: rgba(200,155,90,0.15) !important;
  }
}

/* ================================================================
   WOOLY CLUB — STORIES (BLOG) DESIGN SYSTEM
   ================================================================ */

/* ------ Main story/blog card — full unified dark card ------ */

/* Outer .blog div is the card frame */
.blog {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.22) !important;
}

/* Inner sections: transparent so outer gradient shows through */
.blog-wrapper,
body.night-mode .blog-wrapper {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: rgba(243,235,221,0.84) !important;
  padding: 30px !important;
  border-radius: 0 !important;
}

.blog-wrapper h3,
.blog-wrapper .blog-title {
  color: #F3EBDD !important;
}

.blog-text,
.blog-text p,
.blog-text li,
.blog-text blockquote {
  color: rgba(243,235,221,0.84) !important;
}

/* Post actions bar (React/Comment/Share) — transparent over card bg */
.blog .post-actions,
body.night-mode .blog .post-actions {
  background: transparent !important;
  border-top: 1px solid rgba(200,155,90,0.12) !important;
  margin-top: 0 !important;
}

/* Post footer (Write a comment) — transparent over card bg */
.blog .post-footer,
body.night-mode .blog .post-footer {
  background: transparent !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  border-radius: 0 0 18px 18px !important;
}

/* ------ Edit button (btn-light inside story view) ------ */
.blog-wrapper .btn-light,
.blog-wrapper .btn-sm.btn-light,
a.btn.btn-sm.btn-light[href*="/blogs/edit/"] {
  background: linear-gradient(180deg, rgba(32,30,31,0.95), rgba(20,20,22,0.95)) !important;
  border: 1px solid rgba(200,155,90,0.65) !important;
  color: #C89B5A !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  transition: background 0.2s, border-color 0.2s, color 0.2s !important;
}
.blog-wrapper .btn-light:hover,
a.btn.btn-sm.btn-light[href*="/blogs/edit/"]:hover {
  background: linear-gradient(180deg, rgba(200,155,90,0.22), rgba(200,155,90,0.10)) !important;
  border-color: rgba(200,155,90,0.95) !important;
  color: #F3EBDD !important;
}

/* ------ Category tags / pills — all locations ------ */
.blog-category,
body.night-mode .blog-category,
.badge.bg-light.text-primary,
.post-media-image-meta .blog-category {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 6px 10px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  transition: background 0.2s, color 0.2s !important;
}
.blog-category.small,
.post-media-image-meta .blog-category.small {
  font-size: 10px !important;
  padding: 3px 8px !important;
}
.blog-category:hover,
body.night-mode .blog-category:hover,
.badge.bg-light.text-primary:hover {
  background: rgba(200,155,90,0.22) !important;
  border-color: rgba(200,155,90,0.65) !important;
  color: #F3EBDD !important;
}

/* ------ Tag pills (below story content) ------ */
.blog-tags ul > li > a {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 5px 14px !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  text-transform: none !important;
  transition: background 0.2s, color 0.2s !important;
}
.blog-tags ul > li > a:hover {
  background: rgba(200,155,90,0.22) !important;
  color: #F3EBDD !important;
}

/* ------ Blog meta counters (views/comments pills) ------ */
.blog-meta-counter {
  background: rgba(200,155,90,0.10) !important;
  color: #C89B5A !important;
  border: 1px solid rgba(200,155,90,0.3) !important;
  border-radius: 999px !important;
}
.blog-meta-counter:hover {
  background: rgba(200,155,90,0.20) !important;
  color: #F3EBDD !important;
  cursor: pointer;
}

/* ------ Interaction bar: React / Comment / Share ------ */
.post-actions {
  background: rgba(7,11,20,0.34) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  border-radius: 0 0 14px 14px !important;
}
body.night-mode .post-actions {
  background: rgba(7,11,20,0.34) !important;
}
.post-actions .action-btn {
  color: rgba(243,235,221,0.72) !important;
}
body.night-mode .post-actions .action-btn {
  color: rgba(243,235,221,0.72) !important;
}
.post-actions .action-btn svg {
  stroke: #C89B5A !important;
}
.post-actions .action-btn:hover,
body.night-mode .post-actions .action-btn:hover {
  color: #F3EBDD !important;
}

/* ══════════════════════════════════════════════════
   FEED STORY (BLOG) CARD — premium dark navy/gold
   ══════════════════════════════════════════════════ */

/* Outer .post card already gets --card-dark-color via variable override.
   Ensure .post-media.list (the inner card) matches cleanly. */
body.night-mode .post-media.list {
  background: transparent !important;  /* inherit outer .post card bg */
  border-radius: 0 !important;
  margin-bottom: 0 !important;
}

/* Image — only round TOP corners so it connects flush into content area */
.post-media-image > div {
  border-radius: 18px 18px 0 0 !important;
  background-size: cover !important;
}

/* Content area beneath the image */
body.night-mode .post-media-meta {
  background: linear-gradient(180deg, rgba(10,15,24,0.92), rgba(7,11,20,0.96)) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  padding: 16px 18px !important;
  border-radius: 0 !important;
}

/* Story title — gold */
body.night-mode .post-media-meta .title {
  color: #C89B5A !important;
  font-weight: 600 !important;
}
body.night-mode .post-media-meta .title:hover {
  color: #F3EBDD !important;
}

/* Story snippet text — cream */
body.night-mode .post-media-meta .text,
body.night-mode .post-media-meta .text * {
  color: rgba(243,235,221,0.76) !important;
}

/* Muted metadata (source/info) */
body.night-mode .post-media-meta .info {
  color: rgba(243,235,221,0.55) !important;
}

/* Category pill overlaid on image — gold premium style */
body.night-mode .post-media-image-meta .blog-category,
.post-media-image-meta .blog-category {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.40) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 5px 14px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  backdrop-filter: blur(4px) !important;
}

/* Post stats row (0 Comments · 24 Views) */
body.night-mode .post .post-stats {
  color: rgba(243,235,221,0.58) !important;
  border-top: 1px solid rgba(200,155,90,0.08) !important;
  padding: 6px 18px !important;
}
body.night-mode .post .post-stats a,
body.night-mode .post .post-stats span {
  color: rgba(243,235,221,0.58) !important;
}

/* Action bar: React / Comment / Share */
body.night-mode .post .post-actions {
  background: transparent !important;
  border-top: 1px solid rgba(200,155,90,0.12) !important;
}

/* Action buttons */
body.night-mode .post .post-actions .action-btn {
  color: rgba(243,235,221,0.72) !important;
}
body.night-mode .post .post-actions .action-btn svg,
body.night-mode .post .post-actions .action-btn i {
  color: #C89B5A !important;
  fill: #C89B5A !important;
}
body.night-mode .post .post-actions .action-btn:hover {
  color: #F3EBDD !important;
  background: rgba(200,155,90,0.07) !important;
}

/* ══════════════════════════════════════════════════
   FEATURED STORY (BLOG) CARD — .blog-container
   Replaces Sngine's default purple hover overlay
   ══════════════════════════════════════════════════ */

/* Card frame */
a.blog-container,
.blog-container {
  display: block !important;
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.22) !important;
  transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
  position: relative !important;
  text-decoration: none !important;
}
a.blog-container:hover,
.blog-container:hover {
  border-color: rgba(200,155,90,0.42) !important;
  box-shadow: 0 16px 44px rgba(0,0,0,0.32) !important;
  text-decoration: none !important;
}

/* Image container */
.blog-container .blog-image {
  position: relative !important;
  overflow: hidden !important;
}
.blog-container .blog-image img {
  width: 100% !important;
  display: block !important;
  object-fit: cover !important;
  transition: transform 0.35s ease, filter 0.35s ease !important;
}
.blog-container:hover .blog-image img {
  transform: scale(1.035) !important;
  filter: brightness(0.72) !important;
}

/* Overlay — hidden by default, dark navy gradient on hover */
.blog-container .blog-image::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(7,11,20,0.00) 0%, rgba(7,11,20,0.32) 55%, rgba(7,11,20,0.62) 100%) !important;
  opacity: 0 !important;
  transition: opacity 0.35s ease !important;
  pointer-events: none !important;
}
.blog-container:hover .blog-image::after {
  opacity: 1 !important;
  background: linear-gradient(180deg, rgba(7,11,20,0.38) 0%, rgba(7,11,20,0.72) 55%, rgba(7,11,20,0.92) 100%) !important;
}

/* Content area */
.blog-container .blog-content {
  padding: 18px 20px 10px !important;
  background: transparent !important;
}
.blog-container .blog-content h3 {
  color: #F3EBDD !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
  line-height: 1.4 !important;
}
.blog-container .blog-content .text,
.blog-container .blog-content .text * {
  color: rgba(243,235,221,0.68) !important;
  font-size: 14px !important;
}
.blog-container .blog-content .post-meta,
.blog-container .blog-content .post-meta * {
  color: rgba(243,235,221,0.55) !important;
  font-size: 13px !important;
}

/* "More" pill button — replaces Sngine purple/white default */
.blog-container .blog-more {
  padding: 12px 20px 16px !important;
  background: transparent !important;
}
.blog-container .blog-more span {
  display: inline-block !important;
  background: rgba(7,11,20,0.62) !important;
  border: 1px solid rgba(200,155,90,0.65) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 10px 26px !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  backdrop-filter: blur(8px) !important;
  transition: background 0.22s ease, border-color 0.22s ease, color 0.22s ease !important;
}
.blog-container:hover .blog-more span {
  background: rgba(200,155,90,0.18) !important;
  border-color: rgba(200,155,90,0.9) !important;
  color: #F3EBDD !important;
}

/* ══════════════════════════════════════════════════
   MARKETPLACE / PRODUCT FEED POST CARD
   Wooly Club dark navy / gold design system
   ══════════════════════════════════════════════════ */

/* ── Product image area ─────────────────────────────
   Single-photo product images are often square; use
   object-fit:contain so no grey sidebars appear.
   :has() targets only posts that contain the product
   details block, leaving all other photos untouched. */
.post:has(.post-product-container) .pg_wrapper {
  background: linear-gradient(180deg, rgba(7,11,20,0.98), rgba(10,15,24,0.98)) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
}
.post:has(.post-product-container) .pg_1x {
  background: linear-gradient(180deg, rgba(7,11,20,0.98), rgba(10,15,24,0.98)) !important;
  text-align: center !important;
}
.post:has(.post-product-container) .pg_1x img {
  max-height: 560px !important;
  width: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
}

/* ── Product details container ────────────────────── */
body.night-mode .post-product-container {
  background: linear-gradient(180deg, rgba(10,15,24,0.92), rgba(7,11,20,0.96)) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  padding: 8px 20px 8px !important;
  border-radius: 0 !important;
  min-height: unset !important;
  height: auto !important;
}
/* Remove excess space from last child inside product container */
body.night-mode .post-product-container > *:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
/* Kill any Sngine fixed height on the inner details wrapper */
body.night-mode .post-product-details,
body.night-mode .post-product-content {
  min-height: unset !important;
  height: auto !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Product title — cream white */
body.night-mode .post-product-container .mtb10.text-xlg strong,
body.night-mode .post-product-container .mtb10 strong {
  color: #F3EBDD !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  display: block !important;
  margin-bottom: 2px !important;
}

/* Reduce heavy vertical spacing inside product details */
body.night-mode .post-product-container .mb20 {
  margin-bottom: 10px !important;
}
body.night-mode .post-product-container .mb10 {
  margin-bottom: 6px !important;
}
body.night-mode .post-product-container .mtb10 {
  margin-top: 0 !important;
  margin-bottom: 8px !important;
}

/* Price — premium muted green (money/value) */
body.night-mode .post-product-container .text-success,
body.night-mode .post-product-container .mb20.text-lg,
body.night-mode .post-product-container .mb20.text-lg strong {
  color: #D8AA5F !important;
  font-size: 24px !important;
  font-weight: 800 !important;
}

/* New / Used badge — replace cyan bg-info with gold pill */
body.night-mode .post-product-container .badge.bg-info,
body.night-mode .post-product-container .badge.bg-primary {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.40) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 5px 10px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}

/* In stock — premium muted green (availability) */
body.night-mode .post-product-container .badge.bg-light.text-success {
  background: rgba(143,185,150,0.10) !important;
  border: 1px solid rgba(143,185,150,0.36) !important;
  color: #8FB996 !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}

/* Out of stock / SOLD — muted red-cream */
body.night-mode .post-product-container .badge.bg-light.text-danger {
  background: rgba(180,60,60,0.12) !important;
  border: 1px solid rgba(200,80,80,0.35) !important;
  color: rgba(243,200,190,0.85) !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  font-weight: 700 !important;
}

/* Category badge — replace blue bg-light text-primary with gold pill */
body.night-mode .post-product-container .badge.bg-light.text-primary {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* Icons inside product container — gold tint */
body.night-mode .post-product-container svg.main-icon {
  color: #C89B5A !important;
  fill: #C89B5A !important;
  opacity: 0.7 !important;
}

/* Location / meta text */
body.night-mode .post-product-container .mb10,
body.night-mode .post-product-container .mb20 {
  color: rgba(243,235,221,0.72) !important;
}

/* Hashtags in product posts */
body.night-mode .post:has(.post-product-container) .post-text a[href*="/hashtag/"],
body.night-mode .post:has(.post-product-container) .post-text a {
  color: #C89B5A !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* Post-product-wrapper (shared info row used for product/job/course) */
body.night-mode .post-product-wrapper {
  background: rgba(14,20,32,0.6) !important;
  border: 1px solid rgba(200,155,90,0.12) !important;
  border-radius: 12px !important;
}
body.night-mode .post-product-details {
  border-color: rgba(200,155,90,0.10) !important;
}
body.night-mode .post-product-details .title {
  color: rgba(243,235,221,0.70) !important;
}
body.night-mode .post-product-details .description {
  color: #F3EBDD !important;
}

/* ══════════════════════════════════════════
   Marketplace grid — CSS Grid override
   (replaces Bootstrap row/col-lg-4 layout)
   ══════════════════════════════════════════ */

/* Convert Bootstrap .row that holds product cards into a CSS Grid */
.sg-offcanvas-mainbar .row:has(.card.product),
.sg-offcanvas-mainbar .row.mb20:has(.card.product) {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(300px, 340px)) !important;
  gap: 24px !important;
  align-items: start !important;
  /* Reset Bootstrap row gutters */
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-bottom: 8px !important;
}
/* Reset Bootstrap column so cards fill the grid cell naturally */
.sg-offcanvas-mainbar .row:has(.card.product) > [class*="col"],
.sg-offcanvas-mainbar .row.mb20:has(.card.product) > [class*="col"] {
  flex: none !important;
  width: auto !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ── Card shell ── */
body.night-mode .card.product {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.22) !important;
  overflow: hidden !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

/* ── Image container: 4/3 aspect, dark navy bg, centred ── */
body.night-mode .card.product .product-image {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  background: linear-gradient(180deg, rgba(7,11,20,0.98), rgba(10,15,24,0.98)) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
  overflow: hidden !important;
  height: auto !important;
  min-height: unset !important;
  max-height: none !important;
  position: relative !important;
}
body.night-mode .card.product .product-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
}

/* ── Product details area ── */
body.night-mode .card.product .product-info {
  background: transparent !important;
  padding: 16px 18px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  flex: 1 !important;
}

/* ── Price display (single, in product-info) ── */
body.night-mode .card.product .product-price-display {
  color: #D8AA5F !important;
  background: rgba(216,170,95,0.10) !important;
  border: 1px solid rgba(216,170,95,0.30) !important;
  border-radius: 10px !important;
  padding: 6px 10px !important;
  font-weight: 800 !important;
  font-size: 16px !important;
  display: inline-flex !important;
  width: fit-content !important;
  margin: 0 !important;
}
/* Kill any overlay price remnant on the image */
body.night-mode .card.product .product-image .product-price {
  display: none !important;
}

/* ── Title + badge row ── */
body.night-mode .card.product .product-meta {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.night-mode .card.product .product-meta .title {
  color: #F3EBDD !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* ── SVG icons in meta rows ── */
body.night-mode .card.product .product-meta svg.main-icon {
  color: rgba(200,155,90,0.55) !important;
  fill: rgba(200,155,90,0.55) !important;
  flex-shrink: 0 !important;
}

/* ── New / Used badge ── */
body.night-mode .card.product .badge.bg-info,
body.night-mode .card.product .badge.bg-primary {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.40) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 4px 8px !important;
  font-weight: 700 !important;
  font-size: 11px !important;
}

/* ── Generic light badge → gold (category) ── */
body.night-mode .card.product .badge.bg-light {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 5px 10px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}

/* ── In stock — green pill (must be after .bg-light rule) ── */
body.night-mode .card.product .badge.bg-light.text-success {
  background: rgba(143,185,150,0.10) !important;
  border: 1px solid rgba(143,185,150,0.36) !important;
  color: #8FB996 !important;
  border-radius: 999px !important;
  padding: 5px 10px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}

/* ── Out of stock / SOLD ── */
body.night-mode .card.product .badge.bg-light.text-danger {
  background: rgba(180,60,60,0.12) !important;
  border: 1px solid rgba(200,80,80,0.35) !important;
  color: rgba(243,200,190,0.85) !important;
  border-radius: 999px !important;
  padding: 5px 10px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}

body.night-mode .card.product .text-success { color: #D8AA5F !important; }
body.night-mode .card.product .text-danger  { color: rgba(243,200,190,0.85) !important; }

/* ── "More" overlay button → gold ── */
body.night-mode .card.product .product-overlay .wc-more-btn,
body.night-mode .card.product .product-overlay .btn-outline-secondary {
  background: rgba(7,11,20,0.72) !important;
  border: 1px solid rgba(200,155,90,0.55) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 10px 24px !important;
  font-weight: 800 !important;
  backdrop-filter: blur(8px) !important;
  transition: background 0.2s, color 0.2s, border-color 0.2s !important;
}
body.night-mode .card.product .product-overlay .wc-more-btn:hover,
body.night-mode .card.product .product-overlay .btn-outline-secondary:hover {
  background: rgba(200,155,90,0.18) !important;
  color: #F3EBDD !important;
  border-color: rgba(200,155,90,0.85) !important;
}

/* ── Mobile: single column, 4/3 image ── */
@media (max-width: 767px) {
  .sg-offcanvas-mainbar .row:has(.card.product),
  .sg-offcanvas-mainbar .row.mb20:has(.card.product) {
    grid-template-columns: 1fr !important;
  }
  body.night-mode .card.product .product-info {
    padding: 14px 16px 16px !important;
  }
  body.night-mode .card.product .product-meta .title {
    font-size: 20px !important;
  }
}

/* ═══════════════════════════════════════════════
   SECTION HERO BANNERS — Standardized
   Photos · Videos · Rooms · Marketplace · Events
   ═══════════════════════════════════════════════ */

/* Base .page-header reset */
.page-header {
  background: linear-gradient(135deg, var(--wc-navy) 0%, #0C1B33 100%) !important;
  border: none !important;
  border-bottom: none !important;
}

/* ── Shared hero shell ── */
.wc-photos-header,
.wc-videos-header,
.wc-stories-header,
.wc-rooms-header,
.wc-market-header,
.wc-events-header,
.wc-groups-header,
.wc-pages-header,
.wc-search-header {
  position: relative !important;
  height: 320px !important;
  min-height: 320px !important;
  max-height: 320px !important;
  display: flex !important;
  align-items: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  overflow: hidden !important;
  border: none !important;
  border-bottom: none !important;
}

/* ── Dual-layer overlay ── */
.wc-photos-header::before,
.wc-videos-header::before,
.wc-stories-header::before,
.wc-rooms-header::before,
.wc-market-header::before,
.wc-events-header::before,
.wc-groups-header::before,
.wc-pages-header::before,
.wc-search-header::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7,11,20,0.25) 0%, rgba(7,11,20,0.55) 65%, rgba(7,11,20,0.85) 100%),
    linear-gradient(90deg,  rgba(7,11,20,0.55) 0%, rgba(7,11,20,0.25) 50%, rgba(7,11,20,0.55) 100%);
  z-index: 1;
  pointer-events: none;
}

/* ── Inner container ── */
.wc-hero-inner {
  position: relative;
  z-index: 2;
  text-align: center;
  width: 100%;
}

/* ── Title ── */
.wc-hero-title {
  font-size: 34px !important;
  font-weight: 700 !important;
  color: #F3EBDD !important;
  margin: 0 0 10px !important;
  line-height: 1.2 !important;
  text-shadow: 0 3px 18px rgba(0,0,0,0.55) !important;
  font-family: inherit !important;
}

/* ── Subtitle ── */
.wc-hero-sub {
  font-size: 17px !important;
  color: rgba(243,235,221,0.78) !important;
  margin: 0 0 22px !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.45) !important;
}
.wc-hero-inner .wc-hero-sub:last-child { margin-bottom: 0 !important; }

/* ── Search bar ── */
.wc-hero-search {
  max-width: 760px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  /* Form itself: transparent — no outer box */
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}
/* Input: left portion of the unified pill */
.wc-hero-search input[type="text"] {
  flex: 1 1 0;
  min-width: 0;
  height: 52px !important;
  background: rgba(4,8,15,0.65) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  border-right: none !important;
  border-radius: 14px 0 0 14px !important;
  color: #F3EBDD !important;
  padding: 0 18px !important;
  font-size: 15px !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color 0.2s !important;
}
/* Second input (market: location field) */
.wc-hero-search input[type="text"]:not(:first-child) {
  border-left: 1px solid rgba(200,155,90,0.20) !important;
  border-right: none !important;
  border-radius: 0 !important;
  padding-left: 16px !important;
}
.wc-hero-search input[type="text"]:focus {
  border-color: rgba(200,155,90,0.55) !important;
  background: rgba(4,8,15,0.80) !important;
}
.wc-hero-search input[type="text"]::placeholder {
  color: rgba(243,235,221,0.40) !important;
}
/* Button: right cap of the unified pill — shares same border */
.wc-hero-search button[type="submit"] {
  flex-shrink: 0;
  height: 52px !important;
  min-width: 120px !important;
  width: auto !important;
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  border-left: none !important;
  border-radius: 0 14px 14px 0 !important;
  color: #D8AA5F !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background 0.2s, border-color 0.2s !important;
  padding: 0 24px !important;
}
.wc-hero-search button[type="submit"]:hover {
  background: rgba(200,155,90,0.22) !important;
  border-color: rgba(200,155,90,0.50) !important;
}

/* Hide legacy overlay divs */
.wc-photos-overlay,
.wc-videos-overlay { display: none !important; }

/* ── Per-page backgrounds ── */
.wc-photos-header {
  background-image: url('/content/themes/default/images/photos-hero.jpg') !important;
  background-position: center 42% !important;
}
.wc-videos-header {
  background-image: url('/content/themes/default/images/videos-hero.png') !important;
  background-position: center 42% !important;
}
.wc-stories-header {
  background-image: url('/content/themes/default/images/stories-hero.png') !important;
  background-position: center 45% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 48px 0 40px !important;
  align-items: flex-start !important;
}
.wc-rooms-header {
  background-image: url('/content/themes/default/images/groups-hero.png') !important;
  background-position: center 45% !important;
}
.wc-market-header {
  background-image: url('/content/themes/default/images/market-hero.png') !important;
  background-position: center 45% !important;
}
.wc-events-header {
  background-image: url('/content/themes/default/images/events-hero.png') !important;
  background-position: center 42% !important;
}
.wc-groups-header {
  background-image: url('/content/themes/default/images/groups-hero.png') !important;
  background-position: center 30% !important;
}
.wc-pages-header {
  background-image: url('/content/themes/default/images/pages-hero.webp') !important;
  background-position: center 45% !important;
}
.wc-search-header {
  background-image: url('/content/themes/default/images/search-hero.webp') !important;
  background-position: bottom center !important;
  background-size: cover !important;
}

/* ── Tablet (≤991px) ── */
@media (max-width: 991px) {
  .wc-photos-header,
  .wc-videos-header,
  .wc-stories-header,
  .wc-rooms-header,
  .wc-market-header,
  .wc-events-header,
  .wc-groups-header {
    height: 280px !important;
    min-height: 280px !important;
    max-height: 280px !important;
  }
  .wc-hero-title { font-size: 28px !important; }
  .wc-hero-sub  { font-size: 15px !important; }
}

/* ── Mobile (≤575px) ── */
@media (max-width: 575px) {
  .wc-photos-header,
  .wc-videos-header,
  .wc-stories-header,
  .wc-rooms-header,
  .wc-market-header,
  .wc-events-header,
  .wc-groups-header {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }
  .wc-hero-title { font-size: 22px !important; }
  .wc-hero-sub  { font-size: 14px !important; margin-bottom: 16px !important; }
  .wc-hero-search { margin: 0 14px; }
  .wc-hero-search input[type="text"]  { height: 42px !important; font-size: 14px !important; }
  .wc-hero-search button[type="submit"] { height: 42px !important; min-width: 88px !important; width: auto !important; font-size: 13px !important; padding: 0 16px !important; }
}

/* ---- LOAD MORE / NO DATA BAR ---- */
.see-more {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #F3EBDD !important;
  border-radius: 999px !important;
  text-align: center !important;
  padding: 13px 32px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  cursor: pointer !important;
  transition: background 0.22s ease, border-color 0.22s ease, color 0.22s ease, box-shadow 0.22s ease !important;
}
.see-more:hover:not(.done) {
  background: rgba(200,155,90,0.12) !important;
  border-color: rgba(200,155,90,0.65) !important;
  color: #F3EBDD !important;
  box-shadow: 0 4px 18px rgba(0,0,0,0.22) !important;
}
.see-more.done {
  background: transparent !important;
  border: 1px solid rgba(200,155,90,0.12) !important;
  color: rgba(243,235,221,0.55) !important;
  cursor: default !important;
  font-style: italic !important;
}

.see-more span { color: inherit !important; }
/* ---- FOOTER ---- */
.footer {
  border-top: 1px solid rgba(243,235,221,0.08) !important;
  background: #070B14 !important;
  color: rgba(243,235,221,0.62) !important;
  padding: 18px 0 !important;
}
.footer a, .footer span { color: rgba(243,235,221,0.70) !important; }
.footer a:hover { color: #C89B5A !important; }

/* ---- ALERTS ---- */
.alert-info { background: rgba(10,88,202,0.12) !important; border-color: rgba(10,88,202,0.2) !important; color: var(--wc-light) !important; }
.alert-warning { background: rgba(200,155,90,0.12) !important; border-color: rgba(200,155,90,0.2) !important; color: var(--wc-light) !important; }

/* ---- BADGES ---- */
.badge.bg-primary, .badge-primary, .text-bg-primary { background: var(--wc-blue) !important; }
.text-primary { color: var(--wc-blue) !important; }

/* ---- MISC ---- */
.text-muted { color: var(--wc-muted) !important; }
.border, hr { border-color: var(--wc-border) !important; }
.side-nav > li.active > a { color: var(--wc-blue) !important; }

/* ---- CONTENT TABS ---- */
.content-tabs {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 14px !important;
}
.content-tabs ul li.active a { color: #F3EBDD !important; border-bottom: 2px solid #C89B5A !important; }
.content-tabs ul li a { color: rgba(243,235,221,0.62) !important; }

/* ---- POSTS FILTER BAR ---- */
.posts-filter {
  background: linear-gradient(180deg, rgba(15,22,32,0.98), rgba(8,13,22,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 18px !important;
  color: var(--wc-light) !important;
  margin-bottom: 12px;
}

/* ---- SCROLLBAR ---- */
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: var(--wc-navy); }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.2); }

/* ---- GALLERY PAGE ---- */
.gallery-grid, .photos-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 10px;
}
.gallery-thumb {
  border-radius: 10px; overflow: hidden; aspect-ratio: 1;
  background: var(--wc-surface);
}
.gallery-thumb img { width: 100%; height: 100%; object-fit: cover; }

/* ---- WOOL MEDIA PREVIEW (right panel) ---- */
.wc-media-card {
  background: var(--wc-card);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 0 14px 12px;
  margin-bottom: 8px;
}
.wc-media-card .wc-media-header {
  display: flex; justify-content: space-between; align-items: center;
  min-height: 44px;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--wc-border);
}
.wc-media-card .wc-media-header strong { color: var(--wc-light) !important; font-size: 14px; }
.wc-media-card .wc-media-header a { color: var(--wc-blue) !important; font-size: 12px; }
.wc-media-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.wc-media-thumb {
  border-radius: 9px; aspect-ratio: 1;
  background: #1A2535; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.wc-media-thumb img { width: 100%; height: 100%; object-fit: cover; }
.wc-media-thumb i { color: rgba(156,163,175,0.4); font-size: 20px; }

/* ---- MODAL ---- */
.modal-content {
  background: var(--wc-surface) !important;
  border: 1px solid var(--wc-border) !important;
  border-radius: var(--wc-radius) !important;
  color: var(--wc-light) !important;
}
.modal-header { border-bottom: 1px solid var(--wc-border) !important; color: var(--wc-light) !important; }
.modal-footer { border-top: 1px solid var(--wc-border) !important; }
.btn-close { filter: invert(1); }

/* ---- LIST GROUPS ---- */
.list-group-item {
  background: transparent !important;
  border-color: var(--wc-border) !important;
  color: var(--wc-light) !important;
}
.list-group-item.active { background: rgba(10,88,202,0.15) !important; border-color: var(--wc-blue) !important; }

/* ---- TOP BAR ---- */
.top-bar { background: rgba(10,88,202,0.18) !important; color: var(--wc-light) !important; }
.top-bar.danger { background: rgba(220,38,38,0.18) !important; }

/* ---- POPOVER ---- */
.popover {
  background: #131E2E !important;
  border: 1px solid var(--wc-border) !important;
  border-radius: 14px !important;
}
.popover-body { color: var(--wc-light) !important; }

/* ---- CHAT BOX ---- */
.chatbox-wrapper { background: var(--wc-surface) !important; border: 1px solid var(--wc-border) !important; }
.chatbox-header { background: var(--wc-card) !important; border-bottom: 1px solid var(--wc-border) !important; }

/* ---- SIDE NAV (non-main) ---- */
.side-nav li a { color: var(--wc-muted) !important; }
.side-nav li.active a { color: var(--wc-blue) !important; }

/* ---- WOOL VIDEOS CARD ---- */
.wc-video-thumb {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 10px;
}
.wc-video-thumb img {
  width: 100%; height: auto; display: block;
  border-radius: 10px;
}
.wc-play-btn {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 44px; height: 44px; border-radius: 50%;
  background: rgba(255,255,255,0.18);
  backdrop-filter: blur(4px);
  border: 2px solid rgba(255,255,255,0.4);
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 16px;
  cursor: pointer;
  transition: background 0.2s;
}
.wc-play-btn:hover { background: rgba(10,88,202,0.7); }
.wc-video-duration {
  position: absolute; bottom: 8px; right: 10px;
  background: rgba(0,0,0,0.7);
  color: #fff; font-size: 11px; font-weight: 600;
  padding: 2px 6px; border-radius: 4px;
}
.wc-video-title {
  font-size: 13px; font-weight: 600; color: var(--wc-light) !important;
  margin-bottom: 2px;
}
.wc-video-meta { font-size: 12px; color: var(--wc-muted) !important; }
.wc-video-meta a { color: var(--wc-blue) !important; font-weight: 500; }

/* ---- MINI FOOTER (fixed to bottom of viewport) ---- */
.mini-footer {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 999 !important;
  background: #060A18 !important;
  border-top: 1px solid rgba(255,255,255,0.07) !important;
  padding: 10px 24px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  margin-top: 0 !important;
}
.mini-footer .copyrights { font-size: 12px; color: #6B7280; display: flex; align-items: center; gap: 8px; }
.mini-footer .links { display: flex; flex-wrap: wrap; gap: 14px; list-style: none; padding: 0; margin: 0; }
.mini-footer .links a { font-size: 12px; color: #6B7280; text-decoration: none; }
.mini-footer .links a:hover { color: #D8AA5F; }
/* push page content up so it's never hidden behind the fixed mobile nav bar */
body { padding-bottom: 56px !important; }

/* ── SPACING NORMALISATION ── */
/* Prevent Bootstrap default card bottom-margin stacking */
.card { margin-bottom: 8px !important; }
/* Compact post box and filter bar */
.posts-filter { margin-bottom: 8px !important; }
/* Remove double-gap in the center split row */
.row.g-2 > [class*="col-"] { padding-top: 0; }
/* Even gap for center split inner columns */
.row.g-2 { --bs-gutter-x: 0.5rem; --bs-gutter-y: 0; }
/* Right panel sticky offset – don't let it drift down */
.col-lg-4.js_sticky-sidebar, .col-lg-3.js_sticky-sidebar { padding-top: 0 !important; }
/* wc-warm-btn — remove mt10 extra gap */
.wc-warm-btn.mt10 { margin-top: 6px !important; }
.wc-event-empty { padding: 4px 0 2px; text-align: center; }
.wc-event-empty i { font-size: 24px !important; margin-bottom: 6px !important; }
.wc-event-empty p { margin-bottom: 10px !important; }
/* Sidebar nav card top-of-page gap */
.sg-offcanvas-sidebar > .js_sticky-sidebar { padding-top: 0 !important; }
/* Fix Sngine's ptb20 class on card headers (too tall) */
.card-header.ptb20 { padding-top: 10px !important; padding-bottom: 10px !important; }

/* ── ALIGNMENT FIXES ── */

/* Card headers: flex + centered, float-end stays right */
.card-header .float-end { margin-left: auto; }
.card-header strong    { font-size: 14px; line-height: 1; }

/* wc-media-header: move padding inside the container so it lines up like card-header */
.wc-media-card .wc-media-header {
  padding-top: 10px;
}
.wc-media-card .wc-media-header strong i { vertical-align: middle; }

/* ── EMPTY STATES ── */
#wc-photos-empty-state,
#wc-videos-empty-state {
  text-align: center;
  padding: 22px 10px;
  min-height: 110px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.wc-event-empty {
  text-align: center;
  padding: 10px;
}
.wc-empty-icon {
  font-size: 28px !important;
  color: rgba(200,155,90,0.55) !important;
  margin-bottom: 8px !important;
}
.wc-empty-text {
  font-size: 12px !important;
  color: #9CA3AF !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  text-align: center !important;
}

/* Stories card body: let it breathe without extra top padding collapsing */
.stories-wrapper { padding-top: 8px !important; }

/* Publisher (post box) avatar + text vertical centre */
/* publisher-message flex removed — broke vertical text */

/* Ensure both split-row columns start flush at top */
.row.g-2 > .col-lg-7,
.row.g-2 > .col-lg-5 { padding-top: 0 !important; margin-top: 0 !important; }

/* Hero heading gold */
.wc-hero-content h2 { color: var(--wc-gold) !important; }

/* Logo size */
.main-header .logo img.logo-light,
.main-header .logo img.logo-dark,
.main-header .logo img {
  height: 52px !important;
  max-height: none !important;
  width: auto !important;
}
/* Recent Updates filter bar — compact spacing */
.posts-filter { margin-bottom: 20px !important; padding: 6px 10px !important; }
.posts-filter .btn-group { margin: 0 !important; }
/* Empty feed — give the no-data area more breathing room */
.js_posts_stream > .text-center.text-muted {
  min-height: 300px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  padding: 60px 20px 40px !important;
  margin-top: 16px !important;
}

/* ---- PHOTOS PAGE HERO ---- */
.wc-photos-header {
  background: url('/content/themes/default/images/photos-hero.jpg') center 30% / cover no-repeat !important;
  position: relative;
  overflow: hidden;
}
.wc-photos-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, rgba(5,8,20,0.82) 0%, rgba(8,14,35,0.65) 45%, rgba(5,8,20,0.45) 100%);
  z-index: 1;
}

/* ---- VIDEOS PAGE HERO ---- */
.wc-videos-header {
  background: url('/content/themes/default/images/videos-hero.png') center 25% / cover no-repeat !important;
  position: relative;
  overflow: hidden;
}
.wc-videos-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, rgba(5,8,20,0.88) 0%, rgba(8,14,35,0.65) 50%, rgba(5,8,20,0.35) 100%);
  z-index: 1;
}

/* ---- STORIES OVERLAY HIDE ---- */
.wc-stories-overlay {
  display: none !important;
}
.wc-stories-legacy-block {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, rgba(5,8,20,0.85) 0%, rgba(8,14,35,0.62) 50%, rgba(5,8,20,0.30) 100%);
  z-index: 1;
}

/* ── Cookie consent banner ── */
.cc-window { border-top: 1px solid rgba(200,155,90,0.25) !important; }
.cc-link { color: #C89B5A !important; text-decoration: underline !important; }
.cc-link:hover { color: #e0b97a !important; }
.cc-btn { font-weight: 600 !important; letter-spacing: 0.03em !important; }

/* ═══════════════════════════════════════════════════════
   Landing page (elengine) – Wooly Club branding overrides
   ═══════════════════════════════════════════════════════ */

.fr_welcome,
body.night-mode .fr_welcome {
  background-color: #070B14 !important;
}

.fr_auth_form,
body.night-mode .fr_auth_form {
  background-color: #111A26 !important;
  border: 1px solid rgba(200,155,90,0.2) !important;
  border-radius: 20px !important;
}

.fr_welcome_title {
  color: #E8DCC8 !important;
  font-size: 1.55rem !important;
}

.fr_welcome_sign .logo-wrapper img {
  max-width: 180px !important;
  max-height: 64px !important;
}

.fr_welcome_sign img.logo-light,
body.night-mode .fr_welcome_sign img.logo-light {
  display: inline-block !important;
}
.fr_welcome_sign img.logo-dark,
body.night-mode .fr_welcome_sign img.logo-dark {
  display: none !important;
}

.fr_welcome_field input,
.fr_welcome_field select,
body.night-mode .fr_welcome_field input,
body.night-mode .fr_welcome_field select {
  background-color: #0D1520 !important;
  border-color: rgba(255,255,255,0.1) !important;
  color: #E8DCC8 !important;
  border-radius: 12px !important;
}

.fr_welcome_field input::placeholder { color: #9CA3AF !important; }

.fr_welcome_field input:focus,
.fr_welcome_field select:focus,
body.night-mode .fr_welcome_field input:focus,
body.night-mode .fr_welcome_field select:focus {
  border-color: #C89B5A !important;
  background-color: #0D1520 !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.15) !important;
}

.fr_welcome_field svg { color: #A8B5C8 !important; }

.fr_welcome_field input:focus + svg,
.fr_welcome_field select:focus + svg {
  color: #C89B5A !important;
  opacity: 1 !important;
}

.fr_welcome_btn,
.fr_welcome_btn.btn-primary {
  background: linear-gradient(135deg, #C89B5A 0%, #a07840 100%) !important;
  border: none !important;
  color: #070B14 !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 20px rgba(200,155,90,0.3) !important;
  transition: box-shadow 0.2s, transform 0.15s !important;
}
.fr_welcome_btn:hover,
.fr_welcome_btn.btn-primary:hover {
  background: linear-gradient(135deg, #d4aa6a 0%, #b08040 100%) !important;
  box-shadow: 0 6px 28px rgba(200,155,90,0.5) !important;
  transform: translateY(-1px) !important;
  color: #070B14 !important;
}

.fr_auth_form .form-check-label,
.fr_auth_form label { color: #A8B5C8 !important; }

.fr_auth_form a { color: #C89B5A !important; }
.fr_auth_form a:hover { color: #e0b97a !important; }

.fr_welcome_switch { color: #A8B5C8 !important; }
.fr_welcome_switch a { color: #C89B5A !important; text-decoration-color: rgba(200,155,90,0.4) !important; }

.fr_welcome_img,
.fr_welcome_bg_img {
  border-radius: 40px 0 0 40px !important;
}

.fr_welcome_img:before {
  background: linear-gradient(160deg, rgba(7,11,20,0.45) 0%, rgba(200,155,90,0.12) 100%) !important;
  opacity: 1 !important;
  border-radius: 40px 0 0 40px !important;
}

.fr_welcome_img > .svg_blur { display: none !important; }

.fr_welcome_img > .svg_lines {
  color: rgba(200,155,90,0.25) !important;
  opacity: 0.5 !important;
}

.fr_welcome_img_innr {
  background: linear-gradient(transparent, rgba(7,11,20,0.92)) !important;
  padding: 130px 50px 50px !important;
}

.fr_welcome_img_innr h5 {
  color: #C89B5A !important;
  font-size: 0.8rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin-bottom: 10px !important;
}

.fr_welcome_img_innr h2 {
  color: #E8DCC8 !important;
  font-size: 1.9rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.fr_welcome_img_innr p {
  color: #A8B5C8 !important;
  font-size: 0.95rem !important;
  margin-top: 8px !important;
}

.fr_welcome_bottom .footer,
.fr_welcome_bottom .footer a { color: #9CA3AF !important; }
.fr_welcome_bottom .footer a:hover { color: #C89B5A !important; }

/* ─── end landing overrides ─── */

/* ── PAGE HEADER SEARCH BAR BUTTONS (all pages) ── */
.page-header .input-group .btn.btn-light,
.page-header .input-group .btn.btn-secondary {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.50) !important;
  color: #C89B5A !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border-radius: 0 10px 10px 0 !important;
  transition: all 0.18s !important;
  white-space: nowrap;
}
.page-header .input-group .btn.btn-light:hover,
.page-header .input-group .btn.btn-secondary:hover {
  background: rgba(200,155,90,0.20) !important;
  color: #D8AD66 !important;
  border-color: rgba(200,155,90,0.70) !important;
}

/* ---- MOBILE HAMBURGER / SG-OFFCANVAS FIX ---- */
@media (max-width: 767px) {
  /* Give mainbar a position so left:100% actually moves it */
  .sg-offcanvas .sg-offcanvas-mainbar {
    position: relative !important;
  }
  /* Smooth transition on both open AND close */
  .sg-offcanvas .sg-offcanvas-sidebar,
  .sg-offcanvas .sg-offcanvas-mainbar {
    transition: left 0.25s ease-out !important;
  }
  /* Ensure sidebar has a background so it's visible over content */
  .sg-offcanvas .sg-offcanvas-sidebar {
    background: var(--wc-navy) !important;
    box-shadow: 4px 0 24px rgba(0,0,0,0.5) !important;
    min-height: 100vh !important;
    padding-top: 70px !important;
  }
  /* Tap target: make menu icon cursor:pointer for iOS delegation */
  .main-header .menu-icon {
    cursor: pointer !important;
    -webkit-tap-highlight-color: rgba(200,155,90,0.15) !important;
  }
}

/* ================================================================
   WOOLY CLUB — STORIES (BLOG) DESIGN SYSTEM
   ================================================================ */

/* ------ Main story/blog card — full unified dark card ------ */

/* Outer .blog div is the card frame */
.blog {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.22) !important;
}

/* Inner sections: transparent so outer gradient shows through */
.blog-wrapper,
body.night-mode .blog-wrapper {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: rgba(243,235,221,0.84) !important;
  padding: 30px !important;
  border-radius: 0 !important;
}

.blog-wrapper h3,
.blog-wrapper .blog-title {
  color: #F3EBDD !important;
}

.blog-text,
.blog-text p,
.blog-text li,
.blog-text blockquote {
  color: rgba(243,235,221,0.84) !important;
}

/* Post actions bar (React/Comment/Share) — transparent over card bg */
.blog .post-actions,
body.night-mode .blog .post-actions {
  background: transparent !important;
  border-top: 1px solid rgba(200,155,90,0.12) !important;
  margin-top: 0 !important;
}

/* Post footer (Write a comment) — transparent over card bg */
.blog .post-footer,
body.night-mode .blog .post-footer {
  background: transparent !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  border-radius: 0 0 18px 18px !important;
}

/* ------ Edit button (btn-light inside story view) ------ */
.blog-wrapper .btn-light,
.blog-wrapper .btn-sm.btn-light,
a.btn.btn-sm.btn-light[href*="/blogs/edit/"] {
  background: linear-gradient(180deg, rgba(32,30,31,0.95), rgba(20,20,22,0.95)) !important;
  border: 1px solid rgba(200,155,90,0.65) !important;
  color: #C89B5A !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  transition: background 0.2s, border-color 0.2s, color 0.2s !important;
}
.blog-wrapper .btn-light:hover,
a.btn.btn-sm.btn-light[href*="/blogs/edit/"]:hover {
  background: linear-gradient(180deg, rgba(200,155,90,0.22), rgba(200,155,90,0.10)) !important;
  border-color: rgba(200,155,90,0.95) !important;
  color: #F3EBDD !important;
}

/* ------ Category tags / pills — all locations ------ */
.blog-category,
body.night-mode .blog-category,
.badge.bg-light.text-primary,
.post-media-image-meta .blog-category {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 6px 10px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  transition: background 0.2s, color 0.2s !important;
}
.blog-category.small,
.post-media-image-meta .blog-category.small {
  font-size: 10px !important;
  padding: 3px 8px !important;
}
.blog-category:hover,
body.night-mode .blog-category:hover,
.badge.bg-light.text-primary:hover {
  background: rgba(200,155,90,0.22) !important;
  border-color: rgba(200,155,90,0.65) !important;
  color: #F3EBDD !important;
}

/* ------ Tag pills (below story content) ------ */
.blog-tags ul > li > a {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 5px 14px !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  text-transform: none !important;
  transition: background 0.2s, color 0.2s !important;
}
.blog-tags ul > li > a:hover {
  background: rgba(200,155,90,0.22) !important;
  color: #F3EBDD !important;
}

/* ------ Blog meta counters (views/comments pills) ------ */
.blog-meta-counter {
  background: rgba(200,155,90,0.10) !important;
  color: #C89B5A !important;
  border: 1px solid rgba(200,155,90,0.3) !important;
  border-radius: 999px !important;
}
.blog-meta-counter:hover {
  background: rgba(200,155,90,0.20) !important;
  color: #F3EBDD !important;
  cursor: pointer;
}

/* ------ Interaction bar: React / Comment / Share ------ */
.post-actions {
  background: rgba(7,11,20,0.34) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  border-radius: 0 0 14px 14px !important;
}
body.night-mode .post-actions {
  background: rgba(7,11,20,0.34) !important;
}
.post-actions .action-btn {
  color: rgba(243,235,221,0.72) !important;
}
body.night-mode .post-actions .action-btn {
  color: rgba(243,235,221,0.72) !important;
}
.post-actions .action-btn svg {
  stroke: #C89B5A !important;
}
.post-actions .action-btn:hover,
body.night-mode .post-actions .action-btn:hover {
  color: #F3EBDD !important;
}

/* ══════════════════════════════════════════════════
   FEED STORY (BLOG) CARD — premium dark navy/gold
   ══════════════════════════════════════════════════ */

/* Outer .post card already gets --card-dark-color via variable override.
   Ensure .post-media.list (the inner card) matches cleanly. */
body.night-mode .post-media.list {
  background: transparent !important;  /* inherit outer .post card bg */
  border-radius: 0 !important;
  margin-bottom: 0 !important;
}

/* Image — only round TOP corners so it connects flush into content area */
.post-media-image > div {
  border-radius: 18px 18px 0 0 !important;
  background-size: cover !important;
}

/* Content area beneath the image */
body.night-mode .post-media-meta {
  background: linear-gradient(180deg, rgba(10,15,24,0.92), rgba(7,11,20,0.96)) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  padding: 16px 18px !important;
  border-radius: 0 !important;
}

/* Story title — gold */
body.night-mode .post-media-meta .title {
  color: #C89B5A !important;
  font-weight: 600 !important;
}
body.night-mode .post-media-meta .title:hover {
  color: #F3EBDD !important;
}

/* Story snippet text — cream */
body.night-mode .post-media-meta .text,
body.night-mode .post-media-meta .text * {
  color: rgba(243,235,221,0.76) !important;
}

/* Muted metadata (source/info) */
body.night-mode .post-media-meta .info {
  color: rgba(243,235,221,0.55) !important;
}

/* Category pill overlaid on image — gold premium style */
body.night-mode .post-media-image-meta .blog-category,
.post-media-image-meta .blog-category {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.40) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 5px 14px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  backdrop-filter: blur(4px) !important;
}

/* Post stats row (0 Comments · 24 Views) */
body.night-mode .post .post-stats {
  color: rgba(243,235,221,0.58) !important;
  border-top: 1px solid rgba(200,155,90,0.08) !important;
  padding: 6px 18px !important;
}
body.night-mode .post .post-stats a,
body.night-mode .post .post-stats span {
  color: rgba(243,235,221,0.58) !important;
}

/* Action bar: React / Comment / Share */
body.night-mode .post .post-actions {
  background: transparent !important;
  border-top: 1px solid rgba(200,155,90,0.12) !important;
}

/* Action buttons */
body.night-mode .post .post-actions .action-btn {
  color: rgba(243,235,221,0.72) !important;
}
body.night-mode .post .post-actions .action-btn svg,
body.night-mode .post .post-actions .action-btn i {
  color: #C89B5A !important;
  fill: #C89B5A !important;
}
body.night-mode .post .post-actions .action-btn:hover {
  color: #F3EBDD !important;
  background: rgba(200,155,90,0.07) !important;
}

/* ══════════════════════════════════════════════════
   MARKETPLACE / PRODUCT FEED POST CARD
   Wooly Club dark navy / gold design system
   ══════════════════════════════════════════════════ */

/* ── Product image area ─────────────────────────────
   Single-photo product images are often square; use
   object-fit:contain so no grey sidebars appear.
   :has() targets only posts that contain the product
   details block, leaving all other photos untouched. */
.post:has(.post-product-container) .pg_wrapper {
  background: linear-gradient(180deg, rgba(7,11,20,0.98), rgba(10,15,24,0.98)) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
}
.post:has(.post-product-container) .pg_1x {
  background: linear-gradient(180deg, rgba(7,11,20,0.98), rgba(10,15,24,0.98)) !important;
  text-align: center !important;
}
.post:has(.post-product-container) .pg_1x img {
  max-height: 560px !important;
  width: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
}

/* ── Product details container ────────────────────── */
body.night-mode .post-product-container {
  background: linear-gradient(180deg, rgba(10,15,24,0.92), rgba(7,11,20,0.96)) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  padding: 8px 20px 8px !important;
  border-radius: 0 !important;
  min-height: unset !important;
  height: auto !important;
}
/* Remove excess space from last child inside product container */
body.night-mode .post-product-container > *:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
/* Kill any Sngine fixed height on the inner details wrapper */
body.night-mode .post-product-details,
body.night-mode .post-product-content {
  min-height: unset !important;
  height: auto !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Product title — cream white */
body.night-mode .post-product-container .mtb10.text-xlg strong,
body.night-mode .post-product-container .mtb10 strong {
  color: #F3EBDD !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  display: block !important;
  margin-bottom: 2px !important;
}

/* Reduce heavy vertical spacing inside product details */
body.night-mode .post-product-container .mb20 {
  margin-bottom: 10px !important;
}
body.night-mode .post-product-container .mb10 {
  margin-bottom: 6px !important;
}
body.night-mode .post-product-container .mtb10 {
  margin-top: 0 !important;
  margin-bottom: 8px !important;
}

/* Price — premium muted green (money/value) */
body.night-mode .post-product-container .text-success,
body.night-mode .post-product-container .mb20.text-lg,
body.night-mode .post-product-container .mb20.text-lg strong {
  color: #D8AA5F !important;
  font-size: 24px !important;
  font-weight: 800 !important;
}

/* New / Used badge — replace cyan bg-info with gold pill */
body.night-mode .post-product-container .badge.bg-info,
body.night-mode .post-product-container .badge.bg-primary {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.40) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 5px 10px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}

/* In stock — premium muted green (availability) */
body.night-mode .post-product-container .badge.bg-light.text-success {
  background: rgba(143,185,150,0.10) !important;
  border: 1px solid rgba(143,185,150,0.36) !important;
  color: #8FB996 !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}

/* Out of stock / SOLD — muted red-cream */
body.night-mode .post-product-container .badge.bg-light.text-danger {
  background: rgba(180,60,60,0.12) !important;
  border: 1px solid rgba(200,80,80,0.35) !important;
  color: rgba(243,200,190,0.85) !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  font-weight: 700 !important;
}

/* Category badge — replace blue bg-light text-primary with gold pill */
body.night-mode .post-product-container .badge.bg-light.text-primary {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* Icons inside product container — gold tint */
body.night-mode .post-product-container svg.main-icon {
  color: #C89B5A !important;
  fill: #C89B5A !important;
  opacity: 0.7 !important;
}

/* Location / meta text */
body.night-mode .post-product-container .mb10,
body.night-mode .post-product-container .mb20 {
  color: rgba(243,235,221,0.72) !important;
}

/* Hashtags in product posts */
body.night-mode .post:has(.post-product-container) .post-text a[href*="/hashtag/"],
body.night-mode .post:has(.post-product-container) .post-text a {
  color: #C89B5A !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* Post-product-wrapper (shared info row used for product/job/course) */
body.night-mode .post-product-wrapper {
  background: rgba(14,20,32,0.6) !important;
  border: 1px solid rgba(200,155,90,0.12) !important;
  border-radius: 12px !important;
}
body.night-mode .post-product-details {
  border-color: rgba(200,155,90,0.10) !important;
}
body.night-mode .post-product-details .title {
  color: rgba(243,235,221,0.70) !important;
}
body.night-mode .post-product-details .description {
  color: #F3EBDD !important;
}

/* ── Marketplace grid cards (.card.product) ─────────── */
/* Make cards 2-per-row on lg+ screens for a more premium feel */
@media (min-width: 992px) {
  .col-lg-4:has(.card.product) {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
}
body.night-mode .card.product {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.22) !important;
  overflow: hidden !important;
}
body.night-mode .card.product .product-image {
  background: rgba(7,11,20,0.75) !important;
}
body.night-mode .card.product .product-image img {
  object-fit: contain !important;
}
body.night-mode .card.product .product-price {
  background: rgba(14,30,20,0.82) !important;
  color: #D8AA5F !important;
  border: 1px solid rgba(216,170,95,0.30) !important;
}
body.night-mode .card.product .product-info {
  background: transparent !important;
}
body.night-mode .card.product .product-meta .title {
  color: #F3EBDD !important;
}
body.night-mode .card.product .badge.bg-info,
body.night-mode .card.product .badge.bg-primary {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.40) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
}
/* category / generic light badge → gold */
body.night-mode .card.product .badge.bg-light {
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
}
/* In stock override — more specific, must come AFTER .bg-light rule */
body.night-mode .card.product .badge.bg-light.text-success {
  background: rgba(143,185,150,0.10) !important;
  border: 1px solid rgba(143,185,150,0.36) !important;
  color: #8FB996 !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}
/* Out of stock / SOLD */
body.night-mode .card.product .badge.bg-light.text-danger {
  background: rgba(180,60,60,0.12) !important;
  border: 1px solid rgba(200,80,80,0.35) !important;
  color: rgba(243,200,190,0.85) !important;
  border-radius: 999px !important;
}
body.night-mode .card.product .text-success {
  color: #8FB996 !important;
}
body.night-mode .card.product .text-danger {
  color: rgba(243,200,190,0.85) !important;
}

/* ── Marketplace grid card: "More" overlay button → gold ── */
body.night-mode .card.product .product-overlay .wc-more-btn,
body.night-mode .card.product .product-overlay .btn-outline-secondary {
  background: rgba(7,11,20,0.72) !important;
  border: 1px solid rgba(200,155,90,0.55) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 10px 24px !important;
  font-weight: 800 !important;
  backdrop-filter: blur(8px) !important;
  transition: background 0.2s, color 0.2s, border-color 0.2s !important;
}
body.night-mode .card.product .product-overlay .wc-more-btn:hover,
body.night-mode .card.product .product-overlay .btn-outline-secondary:hover {
  background: rgba(200,155,90,0.18) !important;
  color: #F3EBDD !important;
  border-color: rgba(200,155,90,0.85) !important;
}

/* ── Product title: prevent awkward word breaks ── */
body.night-mode .card.product .product-meta .title {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  color: #F3EBDD !important;
}

/* ── Price pill inside product-info (always visible) ── */
body.night-mode .card.product .product-price-display {
  color: #D8AA5F !important;
  background: rgba(216,170,95,0.10) !important;
  border: 1px solid rgba(216,170,95,0.30) !important;
  border-radius: 12px !important;
  padding: 8px 12px !important;
  font-weight: 800 !important;
  display: inline-flex !important;
  width: fit-content !important;
  margin-bottom: 10px !important;
  font-size: 18px !important;
}
/* Hide any lingering overlay price on the image */
body.night-mode .card.product .product-image .product-price {
  display: none !important;
}

/* ── Mobile: product card responsive layout ── */
@media (max-width: 767px) {
  body.night-mode .card.product .product-image {
    max-height: 360px !important;
    background: linear-gradient(180deg, rgba(7,11,20,0.95), rgba(10,15,24,0.95)) !important;
  }
  body.night-mode .card.product .product-image img {
    max-height: 360px !important;
    width: 100% !important;
    object-fit: contain !important;
    display: block !important;
  }
  body.night-mode .card.product .product-info {
    padding: 18px 18px 20px !important;
  }
  body.night-mode .card.product .product-meta {
    flex-wrap: wrap !important;
    gap: 6px !important;
    align-items: center !important;
  }
  body.night-mode .card.product .product-meta .title {
    font-size: 22px !important;
    width: 100% !important;
    margin-bottom: 6px !important;
  }
}

/* ══════════════════════════════════════════
   Comment / post-footer — Wooly Club premium
   ══════════════════════════════════════════ */

/* Wrapper: navy gradient, gold top border, rounded bottom */
body.night-mode .post-footer,
body.night-mode #blog-comments.post-footer {
  background: linear-gradient(180deg, rgba(12,18,28,0.96), rgba(7,11,20,0.96)) !important;
  border-top: 1px solid rgba(200,155,90,0.12) !important;
  padding: 14px 18px !important;
  border-bottom-left-radius: 18px !important;
  border-bottom-right-radius: 18px !important;
}

/* Avatar: vertical align with input */
body.night-mode .comment-avatar {
  display: flex !important;
  align-items: flex-start !important;
  padding-top: 2px !important;
}

/* .x-form.comment-form — the pill/box that holds textarea + icons */
body.night-mode .x-form.comment-form {
  background: rgba(7,11,20,0.58) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

/* Textarea inside the comment form */
body.night-mode .comment-form textarea,
body.night-mode .comment-form .js_post-comment {
  background: transparent !important;
  color: #F3EBDD !important;
  border: none !important;
  border-radius: 14px !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  box-shadow: none !important;
  resize: none !important;
}

/* Placeholder text */
body.night-mode .comment-form textarea::placeholder {
  color: rgba(243,235,221,0.42) !important;
}

/* Focus state */
body.night-mode .x-form.comment-form:focus-within {
  border-color: rgba(200,155,90,0.45) !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.08) !important;
}
body.night-mode .comment-form textarea:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* Tool icons (send, image, emoji, mic) */
body.night-mode .x-form-tools li i,
body.night-mode .x-form-tools li svg {
  color: #C89B5A !important;
  opacity: 0.82 !important;
  transition: color 0.15s, opacity 0.15s !important;
}
body.night-mode .x-form-tools li:hover i,
body.night-mode .x-form-tools li:hover svg {
  color: #F3EBDD !important;
  opacity: 1 !important;
}

/* Fallback: any generic form-control inside post-footer */
body.night-mode .post-footer .form-control,
body.night-mode #blog-comments .form-control {
  background: rgba(7,11,20,0.58) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 14px !important;
  color: #F3EBDD !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
}
body.night-mode .post-footer .form-control::placeholder,
body.night-mode #blog-comments .form-control::placeholder {
  color: rgba(243,235,221,0.42) !important;
}
body.night-mode .post-footer .form-control:focus,
body.night-mode #blog-comments .form-control:focus {
  border-color: rgba(200,155,90,0.45) !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.08) !important;
  background: rgba(7,11,20,0.72) !important;
  outline: none !important;
}

/* Remove leftover .comment-inner arrow (Sngine legacy) */
body.night-mode .comment-inner:before {
  display: none !important;
}

/* post-form textarea (create post box) */
body.night-mode .post-form textarea,
body.night-mode .post-form .form-control {
  background: rgba(7,11,20,0.58) !important;
  color: #F3EBDD !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
}
body.night-mode .post-form textarea::placeholder,
body.night-mode .post-form .form-control::placeholder {
  color: rgba(243,235,221,0.40) !important;
}

/* ------ Right sidebar widget headers ------ */
.blogs-widget-header {
  margin-bottom: 16px;
  border-bottom: 1px solid rgba(200,155,90,0.18) !important;
}
body.night-mode .blogs-widget-header {
  border-color: rgba(200,155,90,0.18) !important;
}
.blogs-widget-title {
  color: #C89B5A !important;
  border-bottom: 2px solid #C89B5A !important;
  font-size: 12px !important;
  letter-spacing: 0.14em !important;
  font-weight: 700 !important;
  line-height: 36px !important;
  margin-bottom: -2px !important;
}

/* ------ Sidebar category nav list ------ */
.blog-categories {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  list-style: none !important;
  padding: 0 !important;
  margin-bottom: 20px !important;
}
.blog-categories li {
  float: none !important;
  margin: 0 !important;
}

/* ------ Search input ------ */
.js_search-form .form-control {
  background: rgba(7,11,20,0.55) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  color: #F3EBDD !important;
  border-radius: 12px !important;
}
.js_search-form .form-control::placeholder {
  color: rgba(243,235,221,0.42) !important;
}
.js_search-form .form-control:focus {
  border-color: rgba(200,155,90,0.50) !important;
  box-shadow: 0 0 0 2px rgba(200,155,90,0.12) !important;
  background: rgba(7,11,20,0.70) !important;
}

/* ------ Search button ------ */
.js_search-form .btn-secondary,
.js_search-form button[type="submit"] {
  background: linear-gradient(180deg, rgba(32,30,31,0.95), rgba(20,20,22,0.95)) !important;
  border: 1px solid rgba(200,155,90,0.65) !important;
  color: #C89B5A !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  transition: background 0.2s, color 0.2s !important;
}
.js_search-form .btn-secondary:hover,
.js_search-form button[type="submit"]:hover {
  background: linear-gradient(180deg, rgba(200,155,90,0.22), rgba(200,155,90,0.10)) !important;
  border-color: rgba(200,155,90,0.95) !important;
  color: #F3EBDD !important;
}

/* ------ Create New Story button (was btn-success green) ------ */
.col-md-4 .btn-success,
.col-lg-3 .btn-success {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  color: #07101B !important;
  border: 1px solid rgba(255,215,150,0.38) !important;
  border-radius: 14px !important;
  font-weight: 800 !important;
  box-shadow: 0 12px 28px rgba(200,155,90,0.18) !important;
  transition: filter 0.2s, transform 0.2s !important;
  letter-spacing: 0.04em !important;
}
.col-md-4 .btn-success:hover,
.col-lg-3 .btn-success:hover {
  filter: brightness(1.06) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 32px rgba(200,155,90,0.26) !important;
}

/* ------ Read More cards ------ */
.post-media.list,
body.night-mode .post-media.list {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 14px !important;
  overflow: hidden;
  margin-bottom: 12px !important;
}
.post-media-meta .title,
body.night-mode .post-media-meta .title {
  color: #C89B5A !important;
}
.post-media-meta .title:hover {
  color: #F3EBDD !important;
}
.post-media-meta .text,
body.night-mode .post-media-meta .text {
  color: rgba(243,235,221,0.58) !important;
}
.post-media-meta .info,
body.night-mode .post-media-meta .info {
  color: rgba(243,235,221,0.55) !important;
}

/* ══════════════════════════════════════════════════════════
   MARKETPLACE CONSISTENCY POLISH  v5.47
   Removes all remaining blue UI from the market page.
   ══════════════════════════════════════════════════════════ */

/* 1 ── Content-tabs bar shell — explicit navy, gold border, rounded */
.content-tabs,
body.night-mode .content-tabs {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}
/* Active tab — transparent bg, cream text, gold underline */
.content-tabs ul li.active,
body.night-mode .content-tabs ul li.active {
  background: transparent !important;
}
.content-tabs ul li.active > a,
.content-tabs ul li.active a,
body.night-mode .content-tabs ul li.active a {
  color: #F3EBDD !important;
  border-bottom: 2px solid #C89B5A !important;
}
/* Active tab icon → gold */
.content-tabs ul li.active a .main-icon,
.content-tabs ul li.active a .main-icon *,
.content-tabs ul li.active a svg,
.content-tabs ul li.active a svg path {
  color: #C89B5A !important;
  fill: #C89B5A !important;
}
/* Inactive tabs */
.content-tabs ul li a,
body.night-mode .content-tabs ul li a {
  color: rgba(243,235,221,0.62) !important;
}
.content-tabs ul li a .main-icon,
.content-tabs ul li a .main-icon *,
.content-tabs ul li a svg,
.content-tabs ul li a svg path {
  color: rgba(243,235,221,0.55) !important;
  fill: rgba(243,235,221,0.55) !important;
}

/* 2 ── Category sidebar active/hover — gold, no blue */
.side-nav li.active a,
.side-nav > li.active > a {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.24) !important;
  color: #C89B5A !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
}
.side-nav li a:hover {
  background: rgba(200,155,90,0.08) !important;
  color: #F3EBDD !important;
  border-radius: 12px !important;
}

/* 3 ── Sort dropdown trigger ("Latest") — gold pill */
.countries-filter {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #C89B5A !important;
  border-radius: 10px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: background 0.18s, border-color 0.18s !important;
}
.countries-filter i {
  color: #C89B5A !important;
}
.countries-filter:hover {
  background: rgba(200,155,90,0.18) !important;
  border-color: rgba(200,155,90,0.55) !important;
  color: #F3EBDD !important;
  text-decoration: none !important;
}

/* 4 ── Products header bar (.posts-filter) — Wooly Club card style */
.posts-filter {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 14px !important;
  color: rgba(243,235,221,0.72) !important;
  padding: 10px 18px !important;
  margin-bottom: 16px !important;
}
.posts-filter > span {
  color: rgba(243,235,221,0.72) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.03em !important;
}

/* 5 ── Create Product button — refined bright gold */
.content-tabs .btn-primary,
.content-tabs .btn-primary:focus {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  color: #07101B !important;
  border: 1px solid rgba(255,215,150,0.38) !important;
  border-radius: 12px !important;
  font-weight: 800 !important;
  box-shadow: 0 10px 24px rgba(200,155,90,0.14) !important;
}
.content-tabs .btn-primary:hover {
  filter: brightness(1.05) !important;
  transform: translateY(-1px) !important;
  color: #07101B !important;
}

/* 6 ── Dropdown menu — dark navy, gold accents */
.dropdown-menu {
  background: linear-gradient(180deg, rgba(16,23,34,0.98), rgba(7,11,20,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.45) !important;
  padding: 6px !important;
}
.dropdown-item {
  color: rgba(243,235,221,0.72) !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  padding: 8px 14px !important;
  transition: background 0.15s !important;
}
.dropdown-item i { color: #C89B5A !important; }
.dropdown-item:hover,
.dropdown-item:focus {
  background: rgba(200,155,90,0.10) !important;
  color: #F3EBDD !important;
}

/* 7 ── Search results callout — de-blue */
.bs-callout-info {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
  border-left: 3px solid #C89B5A !important;
  color: rgba(243,235,221,0.72) !important;
  border-radius: 10px !important;
}
.bs-callout-info .text-primary { color: #C89B5A !important; }
.bs-callout-info .badge.bg-secondary {
  background: rgba(200,155,90,0.12) !important;
  color: #C89B5A !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
}

/* ══════════════════════════════════════════════════
   STORIES SIDEBAR WIDGET  (replaces blog carousel card)
   ══════════════════════════════════════════════════ */
.wc-story-card {
  background: rgba(7,11,20,0.45) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}
.wc-story-img-wrap {
  width: 100%;
  height: 150px;
  overflow: hidden;
  border-bottom: 1px solid rgba(200,155,90,0.10);
}
.wc-story-img {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-color: rgba(7,11,20,0.70);
}
.wc-story-body {
  padding: 12px;
}
.wc-story-badge {
  display: inline-block;
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 5px 10px;
  font-weight: 700 !important;
  font-size: 11px !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  text-decoration: none !important;
  margin-bottom: 8px;
}
.wc-story-title {
  display: block;
  color: #C89B5A !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  margin-bottom: 6px;
}
.wc-story-title:hover { color: #e0b97a !important; text-decoration: none !important; }
.wc-story-excerpt {
  color: rgba(243,235,221,0.66);
  font-size: 13px;
  line-height: 1.35;
  margin-bottom: 8px;
}
.wc-story-meta {
  color: rgba(243,235,221,0.48);
  font-size: 12px;
}
.wc-story-meta a { color: rgba(243,235,221,0.62) !important; text-decoration: none !important; }
/* Tighter carousel controls inside the warm card */
.wc-stories-widget .carousel-control-prev,
.wc-stories-widget .carousel-control-next {
  width: 28px;
  opacity: 1;
}
/* Remove the default Bootstrap carousel overlay gradient */
.wc-stories-widget .carousel-control-prev,
.wc-stories-widget .carousel-control-next { background: none !important; }

/* ══════════════════════════════════════════════════
   LATEST LISTING product thumb — bump to 72 px
   ══════════════════════════════════════════════════ */
.wc-warm-card .wc-product {
  display: block !important;
  margin-bottom: 0 !important;
}




/* ══════════════════════════════════════════════════
   WOOLY CLUB ARCHIVE — Redesigned
   ══════════════════════════════════════════════════ */

/* ── Hero ── */
.wc-arc-hero {
  background:
    linear-gradient(180deg, rgba(7,11,20,0.62) 0%, rgba(7,11,20,0.92) 100%),
    radial-gradient(circle at 50% 50%, rgba(200,155,90,0.08), transparent 60%),
    url('/content/themes/default/images/wc-archive-hero.png') center center / cover no-repeat;
  border-bottom: 1px solid rgba(200,155,90,0.18);
  padding: 70px 24px 64px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.wc-arc-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 70% at 50% 110%, rgba(200,155,90,0.07), transparent);
  pointer-events: none;
}
.wc-arc-hero-inner { position: relative; z-index: 1; max-width: 680px; margin: 0 auto; }
.wc-arc-hero-icon-wrap {
  font-size: 38px;
  color: #C89B5A;
  margin-bottom: 16px;
  opacity: 0.95;
}
.wc-arc-hero-title {
  font-size: 36px;
  font-weight: 900;
  color: #F3EBDD;
  margin: 0 0 14px;
  letter-spacing: -0.01em;
  line-height: 1.1;
}
.wc-arc-hero-sub {
  font-size: 16px;
  color: rgba(243,235,221,0.72);
  line-height: 1.65;
  margin: 0;
  max-width: 560px;
  margin: 0 auto;
}

/* ── Page body grid ── */
.wc-arc-page-body {
  display: grid;
  grid-template-columns: 320px minmax(720px, 1fr);
  gap: 28px;
  max-width: 1500px;
  margin: 0 auto;
  padding: 32px 24px 80px;
}
@media (max-width: 900px) {
  .wc-arc-page-body {
    grid-template-columns: 1fr;
    padding: 18px 16px 60px;
  }
}

/* ── Left column ── */
.wc-arc-left-col { display: flex; flex-direction: column; gap: 16px; }

/* Filter card */
.wc-arc-filter-card {
  background: linear-gradient(180deg, rgba(16,23,34,0.98), rgba(7,11,20,0.98));
  border: 1px solid rgba(200,155,90,0.24);
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(0,0,0,0.24);
  padding: 20px 18px;
  position: sticky;
  top: 80px;
}
.wc-arc-filter-heading {
  font-size: 11px;
  font-weight: 800;
  color: rgba(200,155,90,0.75);
  text-transform: uppercase;
  letter-spacing: 0.09em;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(200,155,90,0.10);
}
.wc-arc-cat-nav { display: flex; flex-direction: column; gap: 2px; }
.wc-arc-cat-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  color: rgba(243,235,221,0.72) !important;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none !important;
  transition: background 0.14s, color 0.14s, border 0.14s;
  border: 1px solid transparent;
}
.wc-arc-cat-link:hover {
  background: rgba(200,155,90,0.08);
  color: #F3EBDD !important;
  text-decoration: none !important;
}
.wc-arc-cat-link.active {
  background: rgba(200,155,90,0.12);
  border: 1px solid rgba(200,155,90,0.26);
  color: #C89B5A !important;
  font-weight: 700;
}
.wc-arc-cat-icon {
  width: 16px;
  text-align: center;
  flex-shrink: 0;
  font-size: 13px;
  color: #C89B5A;
  opacity: 0.85;
}
.wc-arc-cat-link.active .wc-arc-cat-icon,
.wc-arc-cat-link:hover .wc-arc-cat-icon { color: #C89B5A; }
.wc-arc-filter-admin-link {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(200,155,90,0.10);
}
.wc-arc-admin-nav-btn {
  display: block;
  text-align: center;
  background: rgba(200,155,90,0.06);
  border: 1px solid rgba(200,155,90,0.22);
  color: rgba(200,155,90,0.82) !important;
  border-radius: 12px;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none !important;
  transition: background 0.14s;
}
.wc-arc-admin-nav-btn:hover { background: rgba(200,155,90,0.12); color: #C89B5A !important; text-decoration: none !important; }

/* Privacy card */
.wc-arc-privacy-card {
  background: linear-gradient(180deg, rgba(16,23,34,0.98), rgba(7,11,20,0.98));
  border: 1px solid rgba(200,155,90,0.24);
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(0,0,0,0.24);
  padding: 18px;
}
.wc-arc-privacy-title {
  font-size: 13px;
  font-weight: 700;
  color: #C89B5A;
  margin-bottom: 10px;
}
.wc-arc-privacy-text {
  font-size: 13px;
  color: rgba(243,235,221,0.66);
  line-height: 1.45;
  margin: 0;
}

/* ── Main column ── */
.wc-arc-main-col { display: flex; flex-direction: column; gap: 20px; min-width: 0; }

/* Header / action card */
.wc-arc-header-card {
  background: linear-gradient(180deg, rgba(16,23,34,0.98), rgba(7,11,20,0.98));
  border: 1px solid rgba(200,155,90,0.24);
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(0,0,0,0.24);
  padding: 22px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.wc-arc-header-left { flex: 1; min-width: 0; }
.wc-arc-header-title {
  font-size: 18px;
  font-weight: 900;
  color: #F3EBDD;
  margin: 0 0 5px;
  line-height: 1.2;
}
.wc-arc-header-cat { color: #C89B5A; font-weight: 800; }
.wc-arc-header-sub {
  font-size: 13px;
  color: rgba(243,235,221,0.60);
  margin: 0;
  line-height: 1.5;
}
.wc-arc-header-right { flex-shrink: 0; }

/* ── Buttons ── */
.wc-arc-btn-primary {
  display: inline-flex;
  align-items: center;
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%);
  color: #07101B !important;
  border: 1px solid rgba(255,215,150,0.38);
  border-radius: 14px;
  padding: 12px 18px;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
  text-decoration: none !important;
  transition: filter 0.15s, transform 0.12s;
  white-space: nowrap;
  line-height: 1;
}
.wc-arc-btn-primary:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
  color: #07101B !important;
  text-decoration: none !important;
}
.wc-arc-btn-cancel {
  display: inline-flex;
  align-items: center;
  background: rgba(7,11,20,0.55);
  border: 1px solid rgba(200,155,90,0.35);
  color: #C89B5A !important;
  border-radius: 12px;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.14s, border-color 0.14s;
  line-height: 1;
}
.wc-arc-btn-cancel:hover { background: rgba(200,155,90,0.10); border-color: rgba(200,155,90,0.55); }

/* Card action buttons */
.wc-arc-btn-open {
  display: inline-flex;
  align-items: center;
  background: linear-gradient(180deg, rgba(28,36,52,0.95), rgba(14,18,28,0.95));
  border: 1px solid rgba(200,155,90,0.55);
  color: #C89B5A !important;
  border-radius: 12px;
  padding: 9px 14px;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none !important;
  transition: border-color 0.14s, background 0.14s;
  white-space: nowrap;
}
.wc-arc-btn-open:hover { border-color: rgba(200,155,90,0.85); background: rgba(200,155,90,0.10); color: #C89B5A !important; text-decoration: none !important; }
.wc-arc-btn-save {
  display: inline-flex;
  align-items: center;
  background: rgba(7,11,20,0.55);
  border: 1px solid rgba(255,255,255,0.10);
  color: rgba(243,235,221,0.58) !important;
  border-radius: 12px;
  padding: 9px 14px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.14s;
  white-space: nowrap;
}
.wc-arc-btn-save:hover { border-color: rgba(200,155,90,0.45); color: #C89B5A !important; background: rgba(200,155,90,0.08); }
.wc-arc-btn-save.saved { border-color: rgba(200,155,90,0.60); color: #C89B5A !important; background: rgba(200,155,90,0.12); }
.wc-arc-btn-report {
  display: inline-flex;
  align-items: center;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.07);
  color: rgba(243,235,221,0.32) !important;
  border-radius: 10px;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.14s;
}
.wc-arc-btn-report:hover { color: rgba(220,100,80,0.85) !important; border-color: rgba(220,100,80,0.35); }

/* Admin button styles */
.wc-arc-btn-sm {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  padding: 5px 11px;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  border: 1px solid transparent;
  transition: 0.14s;
}
.wc-arc-btn-hide {
  background: rgba(200,155,90,0.08);
  border-color: rgba(200,155,90,0.30);
  color: #C89B5A;
}
.wc-arc-btn-hide:hover { background: rgba(200,155,90,0.18); }
.wc-arc-btn-delete {
  background: rgba(220,80,60,0.08);
  border-color: rgba(220,80,60,0.28);
  color: rgba(220,100,80,0.85);
}
.wc-arc-btn-delete:hover { background: rgba(220,80,60,0.18); }
.wc-arc-admin-del { margin-left: auto; }

/* ── Archive grid ── */
.wc-arc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 20px;
}
@media (max-width: 640px) {
  .wc-arc-grid { grid-template-columns: 1fr; }
}

/* ── Archive card ── */
.wc-arc-card {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96));
  border: 1px solid rgba(200,155,90,0.20);
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 8px 28px rgba(0,0,0,0.22);
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: border-color 0.18s, box-shadow 0.18s, transform 0.15s;
}
.wc-arc-card:hover {
  border-color: rgba(200,155,90,0.40);
  box-shadow: 0 16px 44px rgba(0,0,0,0.32);
  transform: translateY(-2px);
}
.wc-arc-card-head { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px; }
.wc-arc-card-title {
  font-size: 15px;
  font-weight: 800;
  color: #F3EBDD;
  margin: 0;
  flex: 1;
  min-width: 0;
  line-height: 1.3;
}
.wc-arc-card-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.wc-arc-cat-badge {
  display: inline-block;
  background: rgba(200,155,90,0.10);
  border: 1px solid rgba(200,155,90,0.35);
  color: #C89B5A;
  border-radius: 999px;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.wc-arc-tag {
  display: inline-block;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  color: rgba(243,235,221,0.48);
  border-radius: 999px;
  padding: 3px 9px;
  font-size: 11px;
  font-weight: 600;
}
.wc-arc-adult-badge {
  display: inline-block;
  background: rgba(200,155,90,0.08);
  border: 1px solid rgba(200,155,90,0.26);
  color: rgba(200,155,90,0.72);
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}
.wc-arc-card-desc {
  font-size: 13px;
  color: rgba(243,235,221,0.65);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}
.wc-arc-card-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: rgba(243,235,221,0.40);
  padding-top: 10px;
  border-top: 1px solid rgba(200,155,90,0.08);
}
.wc-arc-meta-domain { color: rgba(243,235,221,0.52); font-weight: 600; }
.wc-arc-meta-domain i { margin-right: 4px; font-size: 10px; color: rgba(200,155,90,0.45); }
.wc-arc-meta-sep { color: rgba(243,235,221,0.20); }
.wc-arc-meta-user { color: rgba(243,235,221,0.65) !important; font-weight: 600; text-decoration: none !important; }
.wc-arc-meta-user:hover { color: #C89B5A !important; }
.wc-arc-meta-saves i { color: #C89B5A; margin-right: 3px; }
.wc-arc-card-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 2px;
}

/* ── Empty state ── */
.wc-arc-empty-card {
  background: linear-gradient(180deg, rgba(16,23,34,0.98), rgba(7,11,20,0.98));
  border: 1px solid rgba(200,155,90,0.24);
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(0,0,0,0.24);
  padding: 58px 38px;
  min-height: 260px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.wc-arc-empty-icon { font-size: 42px; color: #C89B5A; margin-bottom: 14px; }
.wc-arc-empty-title { font-size: 20px; font-weight: 900; color: #F3EBDD; margin: 0 0 8px; }
.wc-arc-empty-text { font-size: 14px; color: rgba(243,235,221,0.62); margin: 0 0 20px; }
.wc-arc-empty-meta { color: rgba(243,235,221,0.42); font-size: 14px; padding: 12px 0; }

/* ── Pagination ── */
.wc-arc-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 8px 0;
}
.wc-arc-page-btn {
  background: rgba(200,155,90,0.10);
  border: 1px solid rgba(200,155,90,0.32);
  color: #C89B5A !important;
  border-radius: 10px;
  padding: 9px 18px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none !important;
  transition: background 0.14s;
}
.wc-arc-page-btn:hover { background: rgba(200,155,90,0.20); }
.wc-arc-page-info { color: rgba(243,235,221,0.45); font-size: 13px; }

/* ── Modal overlay ── */
.wc-arc-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.78);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}
.wc-arc-modal {
  background: linear-gradient(180deg, rgba(13,22,38,0.99), rgba(7,11,20,0.99));
  border: 1px solid rgba(200,155,90,0.32);
  border-radius: 22px;
  width: 100%;
  max-width: 560px;
  max-height: 92vh;
  overflow-y: auto;
  box-shadow: 0 30px 80px rgba(0,0,0,0.65), 0 0 0 1px rgba(200,155,90,0.08);
  scrollbar-width: thin;
  scrollbar-color: rgba(200,155,90,0.25) transparent;
}
.wc-arc-modal-sm { max-width: 420px; }
.wc-arc-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 26px 0;
}
.wc-arc-modal-title {
  font-size: 17px;
  font-weight: 800;
  color: #F3EBDD;
  margin: 0;
}
.wc-arc-modal-title i { color: #C89B5A; }
.wc-arc-modal-close {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  color: rgba(243,235,221,0.45);
  font-size: 20px;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.14s;
  flex-shrink: 0;
}
.wc-arc-modal-close:hover { background: rgba(200,155,90,0.12); color: #C89B5A; border-color: rgba(200,155,90,0.28); }
.wc-arc-modal-body { padding: 20px 26px 28px; }
.wc-arc-modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(200,155,90,0.10);
}

/* ── Form elements ── */
.wc-arc-field { margin-bottom: 16px; }
.wc-arc-label {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: rgba(243,235,221,0.72);
  margin-bottom: 8px;
}
.wc-arc-label-opt { color: rgba(243,235,221,0.38); font-weight: 400; font-size: 12px; }
.wc-arc-req { color: #C89B5A; }
.wc-arc-input {
  width: 100%;
  background: rgba(7,11,20,0.58);
  border: 1px solid rgba(200,155,90,0.18);
  border-radius: 12px;
  color: #F3EBDD;
  font-size: 14px;
  padding: 12px 14px;
  outline: none;
  transition: border-color 0.15s, box-shadow 0.15s;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}
.wc-arc-input:focus {
  border-color: rgba(200,155,90,0.45);
  box-shadow: 0 0 0 3px rgba(200,155,90,0.08);
}
.wc-arc-input::placeholder { color: rgba(243,235,221,0.32); }
.wc-arc-input option { background: #0d1626; color: #F3EBDD; }
.wc-arc-textarea { resize: vertical; min-height: 96px; }
.wc-arc-check-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.wc-arc-checkbox { margin-top: 3px; accent-color: #C89B5A; flex-shrink: 0; cursor: pointer; }
.wc-arc-check-row label {
  font-size: 13px;
  color: rgba(243,235,221,0.65);
  line-height: 1.55;
  cursor: pointer;
}

/* Responsibility notice inside modal */
.wc-arc-responsibility-notice {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  background: rgba(200,155,90,0.07);
  border: 1px solid rgba(200,155,90,0.18);
  border-radius: 14px;
  padding: 14px 16px;
  margin-bottom: 20px;
}
.wc-arc-notice-icon { color: #C89B5A; font-size: 15px; margin-top: 2px; flex-shrink: 0; }
.wc-arc-responsibility-notice p {
  font-size: 12px;
  color: rgba(243,235,221,0.65);
  line-height: 1.6;
  margin: 0;
}
.wc-arc-report-subtitle { font-size: 13px; color: rgba(243,235,221,0.60); margin-bottom: 14px; }

/* Alerts */
.wc-arc-alert {
  border-radius: 11px;
  padding: 11px 14px;
  font-size: 13px;
  margin-bottom: 14px;
  line-height: 1.4;
}
.wc-arc-alert-error {
  background: rgba(220,80,60,0.10);
  border: 1px solid rgba(220,80,60,0.30);
  color: rgba(240,110,90,0.95);
}
.wc-arc-alert-success {
  background: rgba(70,190,110,0.08);
  border: 1px solid rgba(70,190,110,0.25);
  color: rgba(80,200,120,0.9);
}

/* ── Archive Admin Dashboard ── */
.wc-arc-dash-wrap {
  max-width: 1400px;
  margin: 0 auto;
  padding: 32px 24px 80px;
}
.wc-arc-dash-hdr-card {
  background: linear-gradient(180deg, rgba(16,23,34,0.98), rgba(7,11,20,0.98));
  border: 1px solid rgba(200,155,90,0.24);
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(0,0,0,0.24);
  padding: 22px 24px;
  margin-bottom: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.wc-arc-dash-hdr-title {
  font-size: 18px;
  font-weight: 900;
  color: #F3EBDD;
  margin-bottom: 4px;
}
.wc-arc-dash-hdr-title i { color: #C89B5A; margin-right: 8px; }
.wc-arc-dash-hdr-sub {
  font-size: 13px;
  color: rgba(243,235,221,0.58);
}
.wc-arc-dash-back-btn {
  background: rgba(200,155,90,0.08);
  border: 1px solid rgba(200,155,90,0.22);
  color: #C89B5A !important;
  border-radius: 12px;
  padding: 10px 14px;
  font-weight: 700;
  font-size: 13px;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background 0.14s;
}
.wc-arc-dash-back-btn:hover { background: rgba(200,155,90,0.14); text-decoration: none !important; }
.wc-arc-dash-section-card {
  background: linear-gradient(180deg, rgba(16,23,34,0.98), rgba(7,11,20,0.98));
  border: 1px solid rgba(200,155,90,0.24);
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(0,0,0,0.24);
  padding: 22px 24px;
  margin-bottom: 24px;
  overflow-x: auto;
}
.wc-arc-dash-section-hdr {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 18px;
}
.wc-arc-dash-section-title {
  color: #C89B5A;
  font-size: 16px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.wc-arc-dash-count-badge {
  background: rgba(200,155,90,0.10);
  border: 1px solid rgba(200,155,90,0.28);
  color: #C89B5A;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 800;
}
.wc-arc-dash-count-warn {
  background: rgba(220,80,60,0.10);
  border-color: rgba(220,80,60,0.30);
  color: rgba(220,100,80,0.90);
}
.wc-arc-dash-empty {
  color: rgba(243,235,221,0.52);
  font-size: 14px;
  padding: 20px 0;
}
/* Table */
.wc-arc-admin-table-wrap { overflow-x: auto; }
.wc-arc-admin-table { width: 100%; border-collapse: collapse; }
.wc-arc-admin-table th {
  color: rgba(200,155,90,0.85);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0 12px 12px;
  border-bottom: 1px solid rgba(200,155,90,0.18);
  text-align: left;
  white-space: nowrap;
}
.wc-arc-admin-table td {
  padding: 14px 12px;
  border-bottom: 1px solid rgba(200,155,90,0.10);
  vertical-align: middle;
  color: rgba(243,235,221,0.72);
  font-size: 14px;
}
.wc-arc-admin-row.wc-arc-hidden-row td { opacity: 0.40; }
.wc-arc-dash-link-title {
  color: #F3EBDD !important;
  font-weight: 800;
  font-size: 14px;
  text-decoration: none !important;
  display: block;
}
.wc-arc-dash-link-title:hover { color: #C89B5A !important; text-decoration: none !important; }
.wc-arc-admin-domain { font-size: 12px; color: rgba(243,235,221,0.50); margin-top: 2px; }
.wc-arc-admin-id { color: rgba(243,235,221,0.35) !important; font-size: 12px; }
.wc-arc-admin-meta { font-size: 13px; color: rgba(243,235,221,0.55) !important; }
.wc-arc-admin-reports { text-align: center; }
.wc-arc-admin-actions { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.wc-arc-rep-count {
  display: inline-flex; align-items: center;
  color: rgba(220,100,80,0.90); font-weight: 800; font-size: 13px;
}
.wc-arc-rep-zero { color: rgba(243,235,221,0.22); }
.wc-arc-badge-hidden {
  background: rgba(220,80,60,0.10); border: 1px solid rgba(220,80,60,0.28);
  color: rgba(220,100,80,0.85); border-radius: 999px; padding: 3px 10px; font-size: 11px; font-weight: 700;
}
.wc-arc-badge-live {
  background: rgba(70,190,110,0.08); border: 1px solid rgba(70,190,110,0.22);
  color: rgba(80,200,120,0.85); border-radius: 999px; padding: 3px 10px; font-size: 11px; font-weight: 700;
}
.wc-arc-dash-cat-badge {
  background: rgba(200,155,90,0.10);
  border: 1px solid rgba(200,155,90,0.35);
  color: #C89B5A;
  border-radius: 999px;
  padding: 5px 10px;
  font-weight: 700;
  font-size: 12px;
}
.wc-arc-dash-reason-badge {
  background: rgba(200,155,90,0.08);
  border: 1px solid rgba(200,155,90,0.25);
  color: #C89B5A;
  border-radius: 999px;
  padding: 5px 10px;
  font-weight: 700;
  font-size: 12px;
}
/* Action buttons */
.wc-arc-dash-act-btn {
  border-radius: 10px;
  padding: 8px 11px;
  font-weight: 700;
  font-size: 12px;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-right: 4px;
  cursor: pointer;
  border: 1px solid;
  transition: opacity 0.14s;
  background: none;
}
.wc-arc-dash-act-btn:hover { opacity: 0.80; }
.wc-arc-dash-act-open {
  background: rgba(200,155,90,0.08) !important;
  border-color: rgba(200,155,90,0.22) !important;
  color: #C89B5A !important;
}
.wc-arc-dash-act-hide {
  background: rgba(200,155,90,0.06) !important;
  border-color: rgba(200,155,90,0.20) !important;
  color: rgba(200,155,90,0.75) !important;
}
.wc-arc-dash-act-del {
  background: rgba(180,75,75,0.10) !important;
  border-color: rgba(180,75,75,0.35) !important;
  color: #D87878 !important;
}

/* ── Mobile adjustments ── */
@media (max-width: 640px) {
  .wc-arc-hero { padding: 48px 18px 42px; }
  .wc-arc-hero-title { font-size: 28px; }
  .wc-arc-hero-sub { font-size: 14px; }
  .wc-arc-header-card { flex-direction: column; align-items: flex-start; }
  .wc-arc-btn-primary { width: 100%; justify-content: center; }
  .wc-arc-modal-header, .wc-arc-modal-body { padding-left: 18px; padding-right: 18px; }
  .wc-arc-modal { border-radius: 18px; }
  .wc-arc-card-actions { gap: 5px; }
}

/* ── Hide guest "Join" dropdown (blank profile pic) on all public pages ── */
.navbar-wrapper li.dropdown:has(a > img[src*="blank_profile"]) {
  display: none !important;
}


/* ════════════════════════════════════════════════════════════
   WOOLY CLUB — FEED POLISH v5.67
   Items: latest listing, right sidebar, feed media, hero
   ════════════════════════════════════════════════════════════ */

/* ── 1 & 2: Latest Listing widget spacing + text hierarchy ── */
.latest-listing-preview {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}
.latest-listing-image {
  width: 56px !important;
  height: 56px !important;
  border-radius: 10px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
}
/* Fallback: target Sngine's native latest listing card structure */
.wc-latest-listing-wrap,
[class*="latest"][class*="listing"],
.card-body .d-flex.mb10,
.card-body .d-flex.align-items-center.mb10 {
  margin-bottom: 14px !important;
}
/* Latest listing "View Market" button spacing */
.card:has([href*="/market"]) .btn-primary,
.card:has([href*="/market"]) .btn-block,
.card:has([href*="/market"]) a.btn {
  margin-top: 12px !important;
  width: 100% !important;
  display: block !important;
}
/* Title / price / byline text hierarchy */
.card:has([href*="/market"]) .card-body .title,
.card:has([href*="/market"]) .card-body strong,
.card:has([href*="/market"]) .card-body .product-title {
  font-weight: 800 !important;
  color: #F3EBDD !important;
  font-size: 13px !important;
}
.card:has([href*="/market"]) .card-body .price,
.card:has([href*="/market"]) .card-body [class*="price"] {
  color: #D8AA5F !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  margin-top: 2px !important;
  display: block !important;
}
.card:has([href*="/market"]) .card-body .info,
.card:has([href*="/market"]) .card-body small,
.card:has([href*="/market"]) .card-body .data-meta {
  font-size: 11px !important;
  color: rgba(243,235,221,0.50) !important;
}
/* Ensure image and text don't collide */
.card:has([href*="/market"]) .card-body img {
  width: 56px !important;
  height: 56px !important;
  border-radius: 10px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
}

/* ── 5: Right sidebar card consistency ── */
.col-lg-4 .card,
.col-lg-3 ~ .col-lg-4 .card,
.sg-offcanvas-mainbar ~ div .card,
.js_sticky-sidebar + div .card,
[class*="sidebar"] .card {
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
}
/* Specifically target the right column widgets */
.col-lg-4:last-child .card,
.col-lg-4.js_sticky-sidebar .card {
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.96)) !important;
}

/* ── 6: Feed post media container — contain bright user images ── */
.post-media {
  background: rgba(7,11,20,0.65) !important;
  border-top: 1px solid rgba(200,155,90,0.08) !important;
  border-bottom: 1px solid rgba(200,155,90,0.08) !important;
}

/* ── 7: Sidebar active item — keep gold, override any blue leak ── */
.main-side-nav > li.active > a,
.main-side-nav > li.active > a:hover {
  background: linear-gradient(90deg, rgba(200,155,90,0.15), rgba(12,28,52,0.42)) !important;
  border-left: 2px solid #C89B5A !important;
  color: #F3EBDD !important;
  font-weight: 600 !important;
}


/* ════════════════════════════════════════════════════════════
   WOOLY CLUB — FEED POLISH v5.68
   Latest Listing premium layout + sidebar width + overlay fix
   ════════════════════════════════════════════════════════════ */

/* ── 1: Latest Listing — premium card layout ── */
.latest-listing-card {
  padding: 18px 18px 16px !important;
}
.latest-listing-preview {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 16px !important;
}
.latest-listing-image {
  width: 64px !important;
  height: 64px !important;
  border-radius: 12px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
}
.latest-listing-info {
  min-width: 0 !important;
  flex: 1 !important;
}
.latest-listing-title {
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  color: #F3EBDD !important;
  margin-bottom: 4px !important;
}
.latest-listing-price {
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #D8AA5F !important;
  margin-bottom: 4px !important;
}
.latest-listing-byline {
  font-size: 11px !important;
  color: rgba(243,235,221,0.52) !important;
}
.latest-listing-button {
  display: flex !important;
  width: 100% !important;
  margin-top: 14px !important;
  justify-content: center !important;
}

/* Fallback targeting Sngine's native market widget structure */
.card-body:has(a[href*="/market"]) {
  padding: 18px !important;
}
.card-body:has(a[href*="/market"]) .d-flex {
  margin-bottom: 16px !important;
}
.card-body:has(a[href*="/market"]) img {
  width: 64px !important;
  height: 64px !important;
  border-radius: 12px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
}
.card-body:has(a[href*="/market"]) .title,
.card-body:has(a[href*="/market"]) strong {
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #F3EBDD !important;
  margin-bottom: 4px !important;
  display: block !important;
}
.card-body:has(a[href*="/market"]) .price,
.card-body:has(a[href*="/market"]) [class*="price"] {
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #D8AA5F !important;
  margin-bottom: 4px !important;
  display: block !important;
}
.card-body:has(a[href*="/market"]) small,
.card-body:has(a[href*="/market"]) .data-meta,
.card-body:has(a[href*="/market"]) .info {
  font-size: 11px !important;
  color: rgba(243,235,221,0.52) !important;
}
.card-body:has(a[href*="/market"]) a.btn {
  display: block !important;
  width: 100% !important;
  margin-top: 14px !important;
  text-align: center !important;
}

/* ── 2: Right sidebar — minimum width on desktop ── */
@media (min-width: 992px) {
  .col-lg-4.js_sticky-sidebar {
    min-width: 360px !important;
    max-width: 360px !important;
    width: 360px !important;
  }
}

/* ── Latest Listing: fix button-to-image gap — direct ID targets ── */
#wc-listing-body {
  margin-bottom: 16px !important;
  display: block !important;
}
#wc-latest-listing {
  padding-bottom: 18px !important;
}
#wc-listing-link {
  margin-top: 16px !important;
  display: block !important;
}
/* Ensure the JS-injected flex row has breathing room */
#wc-listing-body > div {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


/* ════════════════════════════════════════════════════════════
   WOOLY CLUB — De-blue v5.70
   Remove remaining blue/purple accents → brand gold
   ════════════════════════════════════════════════════════════ */

/* ── Usernames ── */
.data-content .name a,
a.username, a.user-name,
.post-author, .author-name {
  color: #C89B5A !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.data-content .name a:hover,
a.username:hover, a.user-name:hover,
.post-author:hover {
  color: #D8AA5F !important;
  text-decoration: none !important;
}

/* ── Verified check badge — blue circle wrapper, white check SVG ── */
.verified-badge,
.verification-badge,
.verified-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  margin-left: 5px !important;
  vertical-align: -2px !important;
  border-radius: 999px !important;
  background: #4DA3FF !important;
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
  box-shadow: 0 0 0 1px rgba(77,163,255,0.28) !important;
}
/* SVG inside the badge: white check, full fill of container */
.verified-badge svg,
.verification-badge svg,
.verified-icon svg {
  width: 10px !important;
  height: 10px !important;
  min-width: 10px !important;
  min-height: 10px !important;
  fill: none !important;
  stroke: #ffffff !important;
  background: transparent !important;
  display: block !important;
}

/* ── Story rings — gold gradient instead of blue/purple ── */
.story-wrap .story-border,
.story-avatar, .story-ring, .story-circle,
.stories-avatar {
  border-color: rgba(200,155,90,0.70) !important;
  box-shadow: 0 0 0 2px rgba(200,155,90,0.18) !important;
}
/* Active story gradient ring */
.story-wrap .story-border.active,
.story-wrap.active .story-border {
  border-color: transparent !important;
  background: linear-gradient(180deg, rgba(216,170,95,0.95), rgba(184,130,52,0.95)) !important;
}
/* Story thumbnail border (inline styles override) */
.stories.sngine .story > a > .item-preview > img,
.stories.sngine .story .item-preview img {
  border-color: rgba(200,155,90,0.75) !important;
}
.stories.sngine .story.seen > a > .item-preview > img,
.stories.sngine .story.seen .item-preview img {
  border-color: rgba(200,155,90,0.30) !important;
}
/* Add-story circle */
.add-story .img {
  border-color: rgba(200,155,90,0.75) !important;
}

/* ── Latest Listing byline link ── */
#wc-latest-listing a,
.latest-listing-byline a,
.wc-seller-label a {
  color: #C89B5A !important;
  text-decoration: none !important;
}
#wc-latest-listing a:hover,
.latest-listing-byline a:hover,
.wc-seller-label a:hover {
  color: #D8AA5F !important;
}

/* ── Profile / navbar dropdown arrow ── */
.navbar-wrapper .dropdown-toggle::after,
.user-menu .dropdown-toggle::after,
.navbar .dropdown-toggle::after {
  border-top-color: #C89B5A !important;
  color: #C89B5A !important;
}
.navbar-wrapper .dropdown-toggle:hover::after {
  border-top-color: #D8AA5F !important;
}
/* SVG caret/chevron in navbar */
.navbar-wrapper .fa-chevron-down,
.navbar-wrapper .fa-caret-down,
.user-menu .fa-chevron-down,
.user-menu .fa-caret-down {
  color: #C89B5A !important;
}

/* ── Notification badge counter ── */
.badge-counter {
  background: #C89B5A !important;
  color: #07101B !important;
}

/* ── Primary badge (Premium Member, etc.) ── */
.badge.bg-primary,
.badge-primary,
.text-bg-primary {
  background: rgba(200,155,90,0.20) !important;
  color: #C89B5A !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
}
.text-primary { color: #C89B5A !important; }

/* ── Focus rings — gold ── */
button:focus,
a:focus,
input:focus,
textarea:focus,
select:focus,
.form-control:focus {
  outline-color: rgba(200,155,90,0.55) !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.14) !important;
}

/* ── Hashtags and inline post links ── */
.post-text a,
.post-text .hashtag {
  color: #C89B5A !important;
}
.post-text a:hover,
.post-text .hashtag:hover {
  color: #D8AA5F !important;
}

/* ── Post action hover ── */
.post-actions .btn:hover,
.post-actions a:hover {
  color: #C89B5A !important;
}
.post-stats .fa { color: #C89B5A !important; }

/* ── Search bar focus ── */
.main-header .search-wrapper .form-control:focus {
  border-color: rgba(200,155,90,0.55) !important;
  box-shadow: 0 0 0 2px rgba(200,155,90,0.14) !important;
}

/* ── List group active ── */
.list-group-item.active {
  background: rgba(200,155,90,0.12) !important;
  border-color: rgba(200,155,90,0.35) !important;
  color: #C89B5A !important;
}

/* ── Media header links ── */
.wc-media-card .wc-media-header a,
.wc-video-meta a {
  color: #C89B5A !important;
}
.wc-media-card .wc-media-header a:hover,
.wc-video-meta a:hover {
  color: #D8AA5F !important;
}

/* ── Preserve red/green functional colors ── */
.text-danger, .text-danger *, .btn-danger, .alert-danger { color: inherit !important; }
.text-success, .text-success *, .btn-success { color: inherit !important; }

/* ════════════════════════════════════════════════════════════
   WOOLY CLUB — Username hierarchy v5.71
   Soft steel blue for usernames only — keeps gold distinct
   ════════════════════════════════════════════════════════════ */

/* Username / author name — steel blue, not gold */
.data-content .name a,
.username, .user-name,
.post-author, .author-name, .member-name,
a.username, a.user-name, a.post-author,
.latest-listing-author,
.wc-seller-label a {
  color: #63B3FF !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}
.data-content .name a:hover,
.username:hover, .user-name:hover,
.post-author:hover, .author-name:hover, .member-name:hover,
a.username:hover, a.user-name:hover, a.post-author:hover,
.latest-listing-author:hover,
.wc-seller-label a:hover {
  color: #9CD2FF !important;
  text-decoration: none !important;
}

/* Welcome line username stays steel blue */
.wc-welcome-line span {
  color: #63B3FF !important;
  font-weight: 700 !important;
}

/* Verified badge — see consolidated rule above */

/* ── Username blue: membership card @name + listing byline ── */
.wc-member-name { color: #63B3FF !important; font-weight: 700 !important; }
.wc-member-name:hover { color: #9CD2FF !important; }
#wc-listing-body a { color: #63B3FF !important; font-weight: 700 !important; text-decoration: none !important; }
#wc-listing-body a:hover { color: #9CD2FF !important; }

/* ══════════════════════════════════════════════
   WOOLY CLUB — Marketplace Premium Colors v5.82
   Targets real Sngine template class names
   ══════════════════════════════════════════════ */

/* Prices → warm gold
   Sources: product-price-display (__feeds_product.tpl)
            product-price (market.tpl, __feeds_course.tpl, __feeds_job.tpl)
            text-lg.text-success (__feeds_post.body.tpl price div)
            product-meta.text-success (offers.tpl)
            chat-product-price (__feeds_message.tpl)  */
.product-price-display,
.product-price,
.chat-product-price,
.text-lg.text-success,
.product-meta.text-success,
.product-meta.text-success strong {
  color: #D8AA5F !important;
  font-weight: 900 !important;
}

/* In-stock badge → muted sage
   badge-lg class only appears on product stock badges  */
.badge-lg.text-success,
span.badge-lg.text-success {
  color: #8FB996 !important;
  background: rgba(143,185,150,0.10) !important;
  border: 1px solid rgba(143,185,150,0.36) !important;
  font-weight: 800 !important;
}

/* Out-of-stock / Sold badge → muted red  */
.badge-lg.text-danger,
span.badge-lg.text-danger {
  color: #D98585 !important;
  background: rgba(217,133,133,0.10) !important;
  border: 1px solid rgba(217,133,133,0.32) !important;
}

/* Online dot → muted natural green */
.online-dot,
.user-online-dot,
.status-dot.online {
  background: #6FA36F !important;
  box-shadow: 0 0 0 2px rgba(111,163,111,0.12) !important;
}

/* ══════════════════════════════════════════════════════
   WOOLY CLUB v5.84 — Feed post price gold
   Targets confirmed HTML: .post-product-container
     > .mb20.text-lg.text-success > strong (price)
   and .card.product .product-price-display
   ══════════════════════════════════════════════════════ */

/* Feed post price — both day and night mode, target div AND strong */
.post-product-container .text-success,
.post-product-container .mb20.text-lg,
.post-product-container .mb20.text-lg.text-success,
.post-product-container .text-success strong,
.post-product-container .mb20.text-lg strong,
.post-product-container .mb20.text-lg.text-success strong,
body.night-mode .post-product-container .text-success,
body.night-mode .post-product-container .mb20.text-lg,
body.night-mode .post-product-container .mb20.text-lg.text-success,
body.night-mode .post-product-container .text-success strong,
body.night-mode .post-product-container .mb20.text-lg strong,
body.night-mode .post-product-container .mb20.text-lg.text-success strong {
  color: #D8AA5F !important;
  font-weight: 900 !important;
}

/* Marketplace grid price (product card) — both modes */
.card.product .product-price-display,
body.night-mode .card.product .product-price-display {
  color: #D8AA5F !important;
  font-weight: 900 !important;
}

/* In-stock badge — sage green (both modes) */
.post-product-container .badge-lg.text-success,
.card.product .badge-lg.text-success,
.badge-lg.bg-light.text-success,
body.night-mode .post-product-container .badge-lg.text-success,
body.night-mode .card.product .badge-lg.text-success,
body.night-mode .badge-lg.bg-light.text-success {
  color: #8FB996 !important;
  background: rgba(143,185,150,0.10) !important;
  border: 1px solid rgba(143,185,150,0.36) !important;
}

/* ══════════════════════════════════════════════════════
   WOOLY CLUB v5.85 — CSS variable override for prices
   Bootstrap 5 .text-success uses rgba(var(--bs-success-rgb))
   so !important color rules lose. Override the variable instead.
   ══════════════════════════════════════════════════════ */

/* Override BS success variable to gold inside product containers */
.post-product-container,
.card.product,
.product-info,
.wc-listing-card {
  --bs-success-rgb: 216, 170, 95;
  --bs-success: #D8AA5F;
}

/* Restore sage for in-stock badge specifically */
.post-product-container .badge-lg,
.card.product .badge-lg,
.post-product-container .badge.bg-light.text-success,
.card.product .badge.bg-light.text-success {
  --bs-success-rgb: 143, 185, 150;
  --bs-success: #8FB996;
  color: #8FB996 !important;
  background: rgba(143,185,150,0.10) !important;
  border: 1px solid rgba(143,185,150,0.36) !important;
}

/* Direct fallback color for price elements — catches any that don't use BS variable */
.post-product-container .text-success,
.post-product-container .mb20.text-lg,
.post-product-container .mb20.text-lg strong,
.post-product-container .text-success strong,
.card.product .product-price-display,
.card.product .text-success {
  color: #D8AA5F !important;
  font-weight: 900 !important;
}

/* ── wc-price: custom gold price class, zero Bootstrap dependency ── */
.wc-price, .wc-price strong, .wc-price * {
  color: #D8AA5F !important;
  font-weight: 900 !important;
}
.wc-price:hover { color: #F0C978 !important; }

/* ══════════════════════════════════════════════════════════
   WOOLY CLUB — Mobile Bottom Nav + Add Menu  v5.88
   ══════════════════════════════════════════════════════════ */

/* ── Bottom nav: inactive state ── */
.footer-bottom-bar .link a,
.footer-bottom-bar .link a .title,
.footer-bottom-bar .link > a {
  color: rgba(243,235,221,0.72) !important;
  fill: rgba(243,235,221,0.62) !important;
}
.footer-bottom-bar .link .header-icon {
  color: rgba(243,235,221,0.62) !important;
  fill: rgba(243,235,221,0.62) !important;
}
.footer-bottom-bar .link .header-icon path,
.footer-bottom-bar .link .header-icon svg path {
  fill: rgba(243,235,221,0.62) !important;
}

/* ── Bottom nav: active state — gold, never purple/blue ── */
.footer-bottom-bar .link.active a,
.footer-bottom-bar .link.active a .title,
.footer-bottom-bar .link.active > a {
  color: #C89B5A !important;
  fill: #C89B5A !important;
}
.footer-bottom-bar .link.active .header-icon,
.footer-bottom-bar .link.active .header-icon.active {
  color: #C89B5A !important;
  fill: #C89B5A !important;
}
.footer-bottom-bar .link.active .header-icon path,
.footer-bottom-bar .link.active .header-icon svg path,
.footer-bottom-bar .header-icon.active path,
.footer-bottom-bar .header-icon.active svg path {
  fill: #C89B5A !important;
}
/* top glow line on active tab */
.footer-bottom-bar .link.active {
  border-top: 2px solid rgba(200,155,90,0.45) !important;
}

/* ── Kill ALL purple/blue in bottom nav ── */
.footer-bottom-bar [class*="text-blue"],
.footer-bottom-bar [class*="text-indigo"],
.footer-bottom-bar [class*="text-purple"],
.footer-bottom-bar [class*="bg-blue"],
.footer-bottom-bar [class*="bg-indigo"],
.footer-bottom-bar [class*="bg-purple"],
.footer-bottom-bar [class*="border-blue"],
.footer-bottom-bar [class*="border-indigo"],
.footer-bottom-bar [class*="border-purple"] {
  color: #C89B5A !important;
  background-color: transparent !important;
  border-color: rgba(200,155,90,0.30) !important;
  fill: #C89B5A !important;
}

/* ── Add menu dropdown panel ── */
.footer-bottom-bar .wc-add-menu,
.footer-bottom-bar .dropdown-menu.wc-add-menu {
  background: rgba(16,23,34,0.97) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  border-radius: 18px !important;
  backdrop-filter: blur(12px) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.55) !important;
}

/* ── Add quick-item grid cards ── */
.footer-bottom-bar .footer-quick-adds {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  padding: 14px !important;
}
.footer-bottom-bar .footer-quick-adds .add-quick-item.full {
  grid-column: 1 / -1 !important;
}

.footer-bottom-bar .add-quick-item {
  background: rgba(16,23,34,0.92) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 14px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 10px !important;
  cursor: pointer !important;
  transition: background 0.18s, border-color 0.18s !important;
  text-decoration: none !important;
  color: rgba(243,235,221,0.86) !important;
}
.footer-bottom-bar .add-quick-item:hover,
.footer-bottom-bar .add-quick-item:active {
  background: rgba(200,155,90,0.08) !important;
  border-color: rgba(200,155,90,0.34) !important;
}

/* full-width Post card — slightly taller, more prominent */
.footer-bottom-bar .add-quick-item.full.wc-add-post {
  flex-direction: row !important;
  gap: 10px !important;
  padding: 16px 20px !important;
  border-color: rgba(200,155,90,0.28) !important;
  background: rgba(200,155,90,0.06) !important;
}

/* full-width Archive Link card */
.footer-bottom-bar .add-quick-item.full:not(.wc-add-post) {
  flex-direction: row !important;
  gap: 10px !important;
  padding: 14px 20px !important;
}

/* ── Add menu icons → gold ── */
.footer-bottom-bar .add-quick-item .main-icon,
.footer-bottom-bar .add-quick-item .main-icon path,
.footer-bottom-bar .add-quick-item svg,
.footer-bottom-bar .add-quick-item svg path {
  color: #C89B5A !important;
  fill: #C89B5A !important;
}

/* ── Add menu labels → cream, not gold ── */
.footer-bottom-bar .add-quick-item .mt5,
.footer-bottom-bar .add-quick-item div {
  color: rgba(243,235,221,0.86) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  margin-top: 0 !important;
}
.footer-bottom-bar .add-quick-item.full .mt5,
.footer-bottom-bar .add-quick-item.full div {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: rgba(243,235,221,0.92) !important;
}

/* ── Paid badges inside add menu ── */
.footer-bottom-bar .add-quick-item .badge {
  font-size: 10px !important;
  margin-left: 4px !important;
}

/* ══════════════════════════════════════════════════════════
   WOOLY CLUB — Create Moment modal styling  v5.89
   ══════════════════════════════════════════════════════════ */

/* ── Overlay backdrop ── */
.modal-backdrop {
  background: rgba(0,0,0,0.48) !important;
  backdrop-filter: blur(3px) !important;
}

/* ── Modal panel (story/moment publisher) ── */
.publisher-mini .modal-content,
[data-modal-url*="story"] .modal-content,
.create-story-modal .modal-content {
  background: linear-gradient(180deg, rgba(16,23,34,0.99), rgba(7,11,20,0.99)) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  border-radius: 22px !important;
  box-shadow: 0 24px 70px rgba(0,0,0,0.55) !important;
  overflow: hidden !important;
}

/* ── Modal header ── */
.wc-moment-header {
  background: rgba(10,16,28,0.70) !important;
  border-bottom: 1px solid rgba(200,155,90,0.12) !important;
  padding: 18px 20px !important;
}
.wc-moment-header .modal-title {
  color: #F3EBDD !important;
  font-weight: 800 !important;
  font-size: 16px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.wc-moment-header .modal-title .main-icon,
.wc-moment-header .modal-title .main-icon path,
.wc-moment-header .modal-title svg path {
  color: #C89B5A !important;
  fill: #C89B5A !important;
}
.wc-modal-close {
  filter: brightness(0) invert(0.55) sepia(0.12) !important;
  opacity: 0.65 !important;
  transition: opacity 0.15s, filter 0.15s !important;
}
.wc-modal-close:hover {
  filter: brightness(0) saturate(100%) invert(68%) sepia(45%) saturate(502%) hue-rotate(358deg) brightness(96%) contrast(87%) !important;
  opacity: 1 !important;
}

/* ── Modal body ── */
.wc-moment-body {
  padding: 20px !important;
  background: transparent !important;
}

/* ── Form labels ── */
.wc-form-label {
  color: rgba(243,235,221,0.82) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  margin-bottom: 8px !important;
}
.wc-form-group {
  margin-bottom: 22px !important;
}

/* ── Textarea ── */
.wc-textarea {
  background: rgba(7,11,20,0.60) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 16px !important;
  color: #F3EBDD !important;
  padding: 14px !important;
  min-height: 150px !important;
  max-height: 220px !important;
  resize: none !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  transition: border-color 0.18s, box-shadow 0.18s !important;
}
.wc-textarea:focus {
  border-color: rgba(200,155,90,0.42) !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.10) !important;
  outline: none !important;
  background: rgba(7,11,20,0.75) !important;
}
.wc-textarea::placeholder {
  color: rgba(243,235,221,0.38) !important;
}

/* ── Upload boxes ── */
.wc-attachments ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.wc-upload-box,
.wc-attachments ul li.add {
  width: 92px !important;
  height: 92px !important;
  border-radius: 18px !important;
  border: 1px dashed rgba(200,155,90,0.36) !important;
  background: rgba(200,155,90,0.045) !important;
  color: rgba(243,235,221,0.72) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background 0.18s, border-color 0.18s !important;
  margin: 0 !important;
}
.wc-upload-box:hover,
.wc-attachments ul li.add:hover {
  background: rgba(200,155,90,0.08) !important;
  border-color: rgba(200,155,90,0.55) !important;
}
.wc-upload-icon,
.wc-attachments ul li.add i {
  color: #C89B5A !important;
  font-size: 22px !important;
}

/* ── Uploaded attachment thumbnails ── */
.wc-attachments ul li:not(.add) {
  width: 92px !important;
  height: 92px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  margin: 0 !important;
}

/* ── Publish button footer ── */
.wc-moment-footer {
  padding: 16px 20px 20px !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  background: transparent !important;
  display: block !important;
}
.wc-moment-submit {
  width: 100% !important;
  height: 56px !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  color: #07101B !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  border: none !important;
  box-shadow: 0 14px 34px rgba(216,170,95,0.18) !important;
  letter-spacing: 0.02em !important;
  transition: opacity 0.18s, transform 0.15s !important;
}
.wc-moment-submit:hover {
  opacity: 0.92 !important;
  transform: translateY(-1px) !important;
}
.wc-moment-submit:active {
  transform: translateY(0) !important;
  opacity: 1 !important;
}

/* ── Moment modal: center upload icons inside boxes ── */
.wc-attachments ul li.add,
.wc-upload-box {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  float: none !important;
}
.wc-attachments ul li.add i,
.wc-upload-icon {
  position: static !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  line-height: 1 !important;
}

/* ── Moment modal: 2-col upload grid  v5.91 ── */
.moment-upload-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  width: 100% !important;
  margin-top: 0 !important;
  margin-bottom: 22px !important;
}
@media (max-width: 359px) {
  .moment-upload-grid {
    grid-template-columns: 1fr !important;
  }
}

.moment-upload-section {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  width: 100% !important;
}
.moment-upload-section .upload-label {
  width: 100% !important;
  text-align: left !important;
  margin-bottom: 10px !important;
}

/* Photo/Video upload box wrappers — fill column width */
.photo-upload-box,
.video-upload-box {
  width: 100% !important;
  height: 118px !important;
  border-radius: 18px !important;
  border: 1px dashed rgba(200,155,90,0.38) !important;
  background: rgba(200,155,90,0.045) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background 0.18s, border-color 0.18s !important;
}
.photo-upload-box:hover,
.video-upload-box:hover {
  background: rgba(200,155,90,0.08) !important;
  border-color: rgba(200,155,90,0.58) !important;
}

/* ul/li inside upload boxes — fill the box */
.photo-upload-box ul,
.video-upload-box ul {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  align-items: center !important;
  justify-content: center !important;
}
.photo-upload-box ul li.add,
.video-upload-box ul li.add {
  width: 100% !important;
  height: 100% !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  float: none !important;
  position: static !important;
}
.photo-upload-box ul li.add i,
.video-upload-box ul li.add i {
  color: #C89B5A !important;
  font-size: 26px !important;
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Uploaded thumbs inside the grid boxes */
.photo-upload-box ul li:not(.add),
.video-upload-box ul li:not(.add) {
  width: 56px !important;
  height: 56px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  margin: 4px !important;
  float: none !important;
  position: static !important;
}

/* Tighten modal body padding */
.wc-moment-body {
  padding: 22px 24px !important;
}
.wc-textarea {
  margin-bottom: 22px !important;
}
.wc-moment-footer {
  padding: 18px 24px 22px !important;
}

/* ── Moment modal upload grid polish  v5.92 ── */

/* Fix broken label text spacing ("V ideos") */
.upload-label,
.moment-upload-section .form-label,
.moment-upload-section .wc-form-label {
  letter-spacing: normal !important;
  word-spacing: normal !important;
  text-transform: none !important;
  white-space: nowrap !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: rgba(243,235,221,0.82) !important;
  margin-bottom: 10px !important;
}

/* Upload grid — tighter, premium gap */
.moment-upload-grid {
  gap: 18px !important;
  margin-top: 18px !important;
  margin-bottom: 22px !important;
}
.moment-upload-section {
  align-items: stretch !important;
}

/* Upload boxes — 104px, slightly lighter bg */
.photo-upload-box,
.video-upload-box {
  height: 104px !important;
  background: rgba(200,155,90,0.04) !important;
  border-color: rgba(200,155,90,0.38) !important;
}
.photo-upload-box:hover,
.video-upload-box:hover {
  background: rgba(200,155,90,0.075) !important;
  border-color: rgba(200,155,90,0.55) !important;
}

/* Textarea height */
.wc-textarea {
  min-height: 145px !important;
  max-height: 190px !important;
}

/* Modal body + footer padding */
.wc-moment-body {
  padding: 22px 24px 18px !important;
}
.wc-moment-footer {
  padding: 18px 24px 22px !important;
}

/* ── Moment modal upload layout v5.93 — compact centred cards ── */

/* Switch from grid to flex row */
.moment-upload-grid {
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 22px !important;
  width: 100% !important;
  grid-template-columns: unset !important;
  margin-top: 18px !important;
  margin-bottom: 22px !important;
}

/* Each upload card: shrink-wrap, don't stretch */
.moment-upload-section {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: auto !important;
  flex: 0 0 auto !important;
  align-self: auto !important;
}

/* Label centred above box */
.moment-upload-section .form-label,
.moment-upload-section .wc-form-label,
.upload-label {
  width: auto !important;
  text-align: center !important;
  margin-bottom: 10px !important;
  color: rgba(243,235,221,0.82) !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  letter-spacing: normal !important;
  word-spacing: normal !important;
  white-space: nowrap !important;
}

/* Fixed-size upload boxes — not full-width */
.photo-upload-box,
.video-upload-box {
  width: 132px !important;
  height: 104px !important;
  flex: 0 0 132px !important;
  border-radius: 18px !important;
  border: 1px dashed rgba(200,155,90,0.42) !important;
  background: rgba(200,155,90,0.045) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
}
.photo-upload-box:hover,
.video-upload-box:hover {
  background: rgba(200,155,90,0.08) !important;
  border-color: rgba(200,155,90,0.60) !important;
}

/* ul/li fill the fixed box */
.photo-upload-box ul,
.video-upload-box ul {
  width: 132px !important;
  height: 104px !important;
  flex-wrap: nowrap !important;
}
.photo-upload-box ul li.add,
.video-upload-box ul li.add {
  width: 132px !important;
  height: 104px !important;
}

/* Icon size */
.photo-upload-box ul li.add i,
.video-upload-box ul li.add i {
  font-size: 28px !important;
}

/* Publish button — brighter gold gradient */
.wc-moment-submit {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  box-shadow: 0 14px 34px rgba(216,170,95,0.22) !important;
}

/* Tighter textarea */
.wc-textarea {
  min-height: 135px !important;
  max-height: 170px !important;
}

/* Modal body */
.wc-moment-body {
  padding: 22px 24px 16px !important;
}

/* ── Moment modal: fix tap/click — file input must not cover textarea  v5.94 ── */

/* Modal body: stacking context so z-index works */
.publisher-mini .modal-body,
.wc-moment-body {
  position: relative !important;
  z-index: 1 !important;
  overflow: visible !important;
}

/* Textarea: sits above everything else in the modal */
.publisher-mini .modal-body textarea,
.wc-textarea {
  position: relative !important;
  z-index: 10 !important;
  pointer-events: auto !important;
}

/* Upload grid: own stacking context, below textarea */
.moment-upload-grid {
  position: relative !important;
  z-index: 2 !important;
}

/* Each upload section: contain its file input */
.moment-upload-section {
  position: relative !important;
  z-index: 2 !important;
}

/* Upload boxes: contain overflow so the injected file input
   cannot bleed outside the box */
.photo-upload-box,
.video-upload-box {
  position: relative !important;
  overflow: hidden !important;
  z-index: 2 !important;
}

/* ul/li inside upload boxes: also contained */
.photo-upload-box ul,
.video-upload-box ul,
.photo-upload-box ul li.add,
.video-upload-box ul li.add {
  position: relative !important;
  overflow: hidden !important;
}

/* The icon trigger: contained inside the li */
.photo-upload-box ul li.add i,
.video-upload-box ul li.add i {
  position: relative !important;
  z-index: 3 !important;
  pointer-events: auto !important;
}

/* Any injected file input: must stay within its own upload box */
.photo-upload-box input[type="file"],
.video-upload-box input[type="file"],
.photo-upload-box ul li input[type="file"],
.video-upload-box ul li input[type="file"],
.photo-upload-box ul li.add input[type="file"],
.video-upload-box ul li.add input[type="file"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  opacity: 0 !important;
  cursor: pointer !important;
  z-index: 4 !important;
  /* Clamp to parent — parent has overflow:hidden */
  max-width: 100% !important;
  max-height: 100% !important;
}

/* wc-attachments: no overflow bleed */
.wc-attachments {
  overflow: hidden !important;
  position: relative !important;
  z-index: 2 !important;
}

/* ── Moments strip: horizontal scroll  v5.95 ── */
.stories-wrapper {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}
.stories-wrapper::-webkit-scrollbar { display: none !important; }
.stories-wrapper { scrollbar-width: none !important; }

#stories {
  scroll-snap-type: x proximity !important;
  padding: 8px 12px 8px !important;
}
#stories .story,
#stories .add-story {
  flex-shrink: 0 !important;
  scroll-snap-align: start !important;
}

/* Strip card header: tighten, remove bottom border */
.stories-wrapper + * { margin-top: 0 !important; }

/* ── Post header background consistency  v5.96 ── */

/* Post header: darker gradient, flush with card, subtle gold separator */
.post-header {
  background: linear-gradient(
    180deg,
    rgba(12,18,28,0.96) 0%,
    rgba(8,13,22,0.96) 100%
  ) !important;
  border-bottom: none !important;
  /* kill any inherited blue/grey bg from Sngine default */
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
}

/* Cover all post-type header variants */
.post-header,
.post .post-header,
.post-outer-wrapper .post-header,
.feed-item .post-header,
body.night-mode .post-header {
  background: linear-gradient(
    180deg,
    rgba(12,18,28,0.96) 0%,
    rgba(8,13,22,0.96) 100%
  ) !important;
  border-bottom: none !important;
}

/* Kill any blue-tinted bg class Sngine might add inline or via JS */
.post-header[class*="bg-"],
.post-header[style*="background"] {
  background: linear-gradient(
    180deg,
    rgba(12,18,28,0.96) 0%,
    rgba(8,13,22,0.96) 100%
  ) !important;
}

/* Post memory header (birthday/anniversary posts) — same treatment */
.post-memory-header {
  background: rgba(10,15,24,0.85) !important;
  border-bottom: 1px solid rgba(200,155,90,0.08) !important;
}

/* ===================================================
   MESSAGES PAGE — Wooly Club v6.1
   =================================================== */

/* ---- Page grid ---- */
.wc-messages-page {
  width: 100%;
  max-width: 1420px;
  margin: 0 auto;
  padding: 24px 32px 90px;
  display: grid;
  grid-template-columns: 380px minmax(0, 1fr);
  gap: 24px;
  min-height: calc(100vh - 140px);
  align-items: start;
  box-sizing: border-box;
}

/* ---- Shared panel base ---- */
.wc-msg-panel {
  background: linear-gradient(180deg, rgba(16,23,34,0.96) 0%, rgba(7,11,20,0.96) 100%);
  border: 1px solid rgba(200,155,90,0.16);
  border-radius: 18px;
  box-shadow: 0 18px 45px rgba(0,0,0,0.22);
  overflow: hidden;
  margin-bottom: 0 !important;
}

/* ---- Left sidebar ---- */
.wc-msg-left {
  min-height: 640px;
  height: calc(100vh - 170px);
  max-height: 820px;
  position: sticky;
  top: 78px;
  display: flex;
  flex-direction: column;
}

.wc-msg-panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 20px 22px 16px;
  border-bottom: 1px solid rgba(200,155,90,0.12);
  flex-shrink: 0;
}

.wc-msg-title {
  font-size: 18px;
  font-weight: 900;
  color: #F3EBDD;
  letter-spacing: -0.2px;
}

.wc-msg-subtitle {
  font-size: 12px;
  color: rgba(243,235,221,0.52);
  margin-top: 3px;
  line-height: 1.4;
}

/* New button (compact header) */
.wc-msg-new-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%);
  color: #07101B !important;
  border: none;
  border-radius: 10px;
  font-weight: 900;
  font-size: 12.5px;
  height: 36px;
  padding: 0 13px;
  white-space: nowrap;
  text-decoration: none !important;
  transition: opacity 0.18s;
  flex-shrink: 0;
}
.wc-msg-new-btn:hover { opacity: 0.88; }

/* Conversation list scroll area */
.wc-msg-left .js_live-messages-alt {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
}
.wc-conv-scroller {
  height: 100%;
}

/* ---- Conversation list items ---- */
.wc-msg-left .wc-conv-list,
.wc-msg-left ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.wc-msg-left .feeds-item {
  border-bottom: 1px solid rgba(200,155,90,0.07);
  transition: background 0.15s;
}
.wc-msg-left .feeds-item:hover {
  background: rgba(200,155,90,0.06);
}
.wc-msg-left .feeds-item.unread {
  background: rgba(200,155,90,0.05);
}
.wc-msg-left .feeds-item.unread .name {
  font-weight: 900 !important;
  color: #F3EBDD !important;
}

.wc-msg-left .feeds-item a.data-container {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  text-decoration: none !important;
  color: inherit;
}

.wc-msg-left .data-avatar {
  position: relative;
  flex-shrink: 0;
  width: 46px;
  height: 46px;
}
.wc-msg-left .data-avatar img {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  object-fit: cover;
  border: 1.5px solid rgba(200,155,90,0.25);
  display: block;
}
.wc-msg-left .data-avatar .left-avatar,
.wc-msg-left .data-avatar .right-avatar {
  position: absolute;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  border: 1.5px solid rgba(7,16,27,1);
}
.wc-msg-left .data-avatar .left-avatar  { top: 0; left: 0; }
.wc-msg-left .data-avatar .right-avatar { bottom: 0; right: 0; }

.wc-msg-left .data-content {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}
.wc-msg-left .data-content .name {
  font-size: 14px;
  font-weight: 700;
  color: #63B3FF;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  line-height: 1.3;
}
.wc-msg-left .data-content .text {
  font-size: 12.5px;
  color: rgba(243,235,221,0.52);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 2px;
  display: block;
}
.wc-msg-left .data-content .time {
  font-size: 11px;
  color: rgba(243,235,221,0.35);
  margin-top: 3px;
  display: block;
}

.wc-msg-left .feeds-item .badge,
.wc-msg-left .feeds-item [class*="counter"] {
  background: #C89B5A !important;
  color: #07101B !important;
  font-weight: 900;
  border-radius: 999px;
  font-size: 10px;
  min-width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
  flex-shrink: 0;
}

.wc-msg-left .data-img {
  width: 36px;
  height: 36px;
  border-radius: 6px;
  object-fit: cover;
  border: 1px solid rgba(200,155,90,0.18);
}

/* Left panel empty state */
.wc-msg-left-empty {
  min-height: 420px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 28px;
}
.wc-msg-left-empty-title {
  font-size: 14px;
  font-weight: 700;
  color: rgba(243,235,221,0.72);
  margin: 0 0 6px;
}
.wc-msg-left-empty-text {
  font-size: 12.5px;
  color: rgba(243,235,221,0.40);
  margin: 0;
  line-height: 1.5;
}

/* Load older link */
.wc-msg-left .js_see-more {
  background: rgba(200,155,90,0.08) !important;
  border: 1px solid rgba(200,155,90,0.15) !important;
  color: rgba(243,235,221,0.60) !important;
  text-align: center;
  font-size: 12px;
  margin: 8px !important;
  border-radius: 8px;
}

/* ---- Right panel ---- */
.wc-msg-right {
  min-height: 640px;
  height: calc(100vh - 170px);
  max-height: 820px;
  display: flex;
  flex-direction: column;
}

/* ---- Right empty state ---- */
.wc-messages-empty-state {
  flex: 1;
  min-height: 640px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 60px 36px;
}

.wc-msg-empty-icon {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(200,155,90,0.10);
  border: 1px solid rgba(200,155,90,0.28);
  color: #C89B5A;
  font-size: 26px;
  margin: 0 auto 18px;
}

.wc-msg-empty-heading {
  font-size: 20px;
  font-weight: 900;
  color: #F3EBDD;
  margin: 0 0 8px;
}

.wc-msg-empty-text {
  max-width: 360px;
  margin: 0 auto 24px;
  color: rgba(243,235,221,0.58);
  font-size: 14px;
  line-height: 1.55;
}

.wc-msg-new-btn-lg {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%);
  color: #07101B !important;
  border: none;
  border-radius: 12px;
  font-weight: 900;
  font-size: 15px;
  height: 46px;
  padding: 0 22px;
  text-decoration: none !important;
  transition: opacity 0.18s;
}
.wc-msg-new-btn-lg:hover { opacity: 0.88; }

/* ---- Conversation view: kill default card chrome ---- */
.wc-msg-right .panel-messages,
.wc-msg-right .card.panel-messages {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  display: flex;
  flex-direction: column;
  flex: 1;
  height: 100%;
}
.wc-msg-panel .card {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Conversation header */
.wc-msg-right .card-header.with-icon,
.wc-msg-right .card-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(200,155,90,0.12) !important;
  padding: 18px 22px !important;
  border-radius: 0 !important;
  flex-shrink: 0;
}
.wc-conv-header-name,
.wc-msg-right .card-header a.text-dark {
  font-size: 16px !important;
  font-weight: 900 !important;
  color: #F3EBDD !important;
}
.wc-msg-right .card-header .name_html a,
.wc-msg-right .card-header [class*="name"] a {
  color: #63B3FF !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}
.wc-msg-right .card-header .btn.btn-light {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  color: #C89B5A !important;
  border-radius: 10px !important;
}
.wc-msg-right .card-header .btn.btn-light:hover {
  background: rgba(200,155,90,0.22) !important;
}
.wc-msg-right .card-header .btn.btn-light svg path,
.wc-msg-right .card-header .btn.btn-light svg circle,
.wc-msg-right .card-header .btn.btn-light svg rect {
  stroke: #C89B5A;
}

/* Card body */
.wc-msg-right .card-body {
  background: rgba(7,11,20,0.30) !important;
  padding: 0 !important;
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* Chat messages scroll area */
.wc-msg-right .chat-conversations {
  flex: 1;
  padding: 22px 22px 12px !important;
  background: rgba(7,11,20,0.30) !important;
  overflow-y: auto;
}

/* Mobile back link */
.wc-msg-right .mb10.pb10.border-bottom a {
  color: #C89B5A !important;
}

/* ---- Message bubbles ---- */
.wc-msg-right .conversation {
  margin-bottom: 14px;
}
.wc-msg-right .conversation-body .text {
  float: left !important;
  display: block !important;
  min-width: 120px !important;
  max-width: 76% !important;
  box-sizing: border-box !important;
  background: rgba(16,23,34,0.95) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  color: #F3EBDD !important;
  border-radius: 4px 16px 16px 16px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  word-break: normal !important;
  word-wrap: break-word !important;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
}
.wc-msg-right .conversation.right .conversation-body .text {
  float: right !important;
  background: rgba(200,155,90,0.16) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  color: #F3EBDD !important;
  border-radius: 16px 16px 4px 16px !important;
}
.wc-msg-right .conversation-user img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1.5px solid rgba(200,155,90,0.22);
  object-fit: cover;
}
.wc-msg-right .conversation-body .time {
  font-size: 11px;
  color: rgba(243,235,221,0.35) !important;
  margin-top: 4px;
}
.wc-msg-right .conversation-body .seen {
  font-size: 11px;
  color: rgba(200,155,90,0.60);
  margin-top: 2px;
}
.wc-msg-right .conversation-body .translate {
  font-size: 11px;
  color: rgba(200,155,90,0.55);
  cursor: pointer;
}
.wc-msg-right .chat-typing {
  padding: 6px 22px;
  font-size: 12px;
  color: rgba(243,235,221,0.40) !important;
}

/* Shared product card in chat */
.wc-msg-right .chat-product {
  background: rgba(16,23,34,0.95) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 12px !important;
  display: flex;
  gap: 10px;
  padding: 10px;
  text-decoration: none !important;
}
.wc-msg-right .chat-product-title { color: #F3EBDD !important; font-weight: 700; font-size: 13px; }
.wc-msg-right .chat-product-price { color: #D8AA5F !important; font-weight: 900; font-size: 14px; }
.wc-msg-right .chat-product-image img { width: 52px; height: 52px; border-radius: 8px; object-fit: cover; }

/* ---- Composer ---- */
.wc-msg-right .x-form.chat-form {
  padding: 14px 18px !important;
  border-top: 1px solid rgba(200,155,90,0.12) !important;
  background: rgba(7,11,20,0.80) !important;
  flex-shrink: 0;
}
.wc-msg-right .card-body {
  padding-bottom: 0 !important;
}
.wc-msg-right .panel-messages .card-body {
  padding-bottom: 0 !important;
}
.wc-msg-right .chat-form-message {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
}
.wc-msg-right .chat-form-message textarea {
  background: rgba(7,11,20,0.88) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  border-radius: 12px !important;
  color: #F3EBDD !important;
  padding: 10px 14px !important;
  resize: none;
  width: 100%;
}
.wc-msg-right .chat-form-message textarea::placeholder {
  color: rgba(243,235,221,0.35) !important;
}
.wc-msg-right .chat-form-message textarea:focus {
  border-color: rgba(200,155,90,0.42) !important;
  outline: none !important;
  box-shadow: none !important;
}
.wc-msg-right .x-form-tools {
  background: transparent !important;
  border-top: none !important;
  padding: 8px 0 0 !important;
}
.wc-msg-right .x-form-tools li i {
  color: rgba(200,155,90,0.65) !important;
  transition: color 0.15s;
}
.wc-msg-right .x-form-tools li:hover i { color: #D8AA5F !important; }
.wc-msg-right .x-form-tools-post i {
  color: #D8AA5F !important;
  font-size: 18px !important;
}
.wc-msg-right .chat-voice-notes {
  padding: 8px 18px !important;
  background: rgba(7,11,20,0.50) !important;
  border-top: 1px solid rgba(200,155,90,0.08) !important;
  flex-shrink: 0;
}
.wc-msg-right .btn-voice-start,
.wc-msg-right .btn-voice-stop {
  color: #C89B5A !important;
  font-size: 13px;
  cursor: pointer;
}

/* To: field (new message) */
.wc-msg-right .chat-to {
  padding: 10px 18px !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
  background: rgba(7,11,20,0.50) !important;
  color: rgba(243,235,221,0.55) !important;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  flex-shrink: 0;
}
.wc-msg-right .chat-to .tags li {
  background: rgba(200,155,90,0.18) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  color: #F3EBDD !important;
  border-radius: 999px;
  padding: 3px 10px;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.wc-msg-right .chat-to input[type="text"] {
  background: transparent !important;
  border: none !important;
  color: #F3EBDD !important;
  outline: none;
  min-width: 80px;
}
.wc-msg-right .chat-attachments.attachments {
  padding: 8px 18px !important;
  background: rgba(7,11,20,0.40) !important;
  flex-shrink: 0;
}

/* Chat colors menu */
._chat-colors-menu {
  background: rgba(16,23,34,0.98) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 14px !important;
}

/* ---- Strip any .container width cap on messages page ---- */
.wc-messages-page ~ .container,
.wc-messages-page > .container {
  max-width: 100% !important;
}

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .wc-messages-page {
    grid-template-columns: 1fr;
    padding: 14px 14px 90px;
    gap: 16px;
    min-height: unset;
  }
  .wc-msg-left,
  .wc-msg-right {
    height: auto;
    min-height: 420px;
    max-height: none;
    position: static;
  }
  .wc-messages-empty-state {
    min-height: 360px;
    padding: 40px 20px;
  }
  .wc-msg-right .chat-conversations {
    padding: 14px !important;
  }
  .wc-messages-page.active .wc-msg-left { display: none; }
  .wc-messages-page.active .wc-msg-right { display: flex; }
}

/* ===================================================
   END MESSAGES PAGE
   =================================================== */

/* ===================================================
   CREATE DROPDOWN — Wooly Club v6.1
   =================================================== */

.wc-create-dropdown {
  background: linear-gradient(180deg, rgba(16,23,34,0.98) 0%, rgba(7,11,20,0.98) 100%) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 45px rgba(0,0,0,0.32) !important;
  padding: 8px !important;
  min-width: 230px !important;
}

.wc-create-dropdown .wc-create-item {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 11px 14px !important;
  border-radius: 10px !important;
  color: rgba(243,235,221,0.82) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: background 0.15s, color 0.15s;
  border: none !important;
  background: transparent !important;
  cursor: pointer;
  width: 100%;
}
.wc-create-dropdown .wc-create-item:hover,
.wc-create-dropdown .wc-create-item:focus {
  background: rgba(200,155,90,0.08) !important;
  color: #F3EBDD !important;
  outline: none !important;
}

/* Icon tint */
.wc-create-dropdown .wc-create-item .wc-ci-icon svg path,
.wc-create-dropdown .wc-create-item .wc-ci-icon svg circle,
.wc-create-dropdown .wc-create-item .wc-ci-icon svg rect,
.wc-create-dropdown .wc-create-item .wc-ci-icon svg polyline {
  stroke: #C89B5A !important;
}
.wc-create-dropdown .wc-create-item .wc-ci-icon {
  color: #C89B5A !important;
  flex-shrink: 0;
}

/* Divider between groups (optional, if needed) */
.wc-create-divider {
  height: 1px;
  background: rgba(200,155,90,0.10);
  margin: 6px 8px;
}

/* Remove blue focus outline on dropdown items site-wide */
.wc-create-dropdown .dropdown-item:focus,
.wc-create-dropdown .dropdown-item:active {
  background: rgba(200,155,90,0.10) !important;
  color: #F3EBDD !important;
  outline: none !important;
  box-shadow: none !important;
}
/* ===================================================
   END CREATE DROPDOWN
   =================================================== */

/* ===================================================
   FEED POST IMAGE BACKGROUNDS — Wooly Club v6.2
   =================================================== */

/* ---- Shared dark gradient for all image container backgrounds ---- */
:root {
  --wc-img-bg: radial-gradient(circle at center, rgba(16,23,34,0.96) 0%, rgba(7,11,20,0.98) 68%, rgba(3,6,12,1) 100%);
  --wc-img-border: 1px solid rgba(200,155,90,0.08);
}

/* Single-photo wrapper */
.pg_wrapper .pg_1x {
  background: var(--wc-img-bg) !important;
  border-top: var(--wc-img-border);
}

/* Single photo: display centered, no stretch */
.pg_wrapper .pg_1x img {
  display: block !important;
  margin: 0 auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  background: var(--wc-img-bg) !important;
}

/* Multi-photo grid wrappers (2-, 3-, 4-up) */
.pg_wrapper .pg_2x,
.pg_wrapper .pg_3x,
.pg_wrapper .pg_4x,
.pg_wrapper .pg_2o3_in,
.pg_wrapper .pg_1o3_in {
  background: var(--wc-img-bg) !important;
}

/* The background-image <a> tiles already use inline bg; just kill any grey bg-color behind them */
.pg_wrapper .pg_2x > a,
.pg_wrapper .pg_2o3_in > a,
.pg_wrapper .pg_1o3_in > a {
  background-color: rgba(7,11,20,0.98) !important;
}

/* Kill the grey that Sngine applies via:
   body.night-mode .pg_wrapper a { background-color: var(--card-dark-hover) }
   Match the exact post card gradient so strips are invisible */
body.night-mode .pg_wrapper a,
.pg_wrapper a {
  background: linear-gradient(180deg, rgba(15,22,32,0.98), rgba(8,13,22,0.98)) !important;
}

/* Outer pg_wrapper itself */
.pg_wrapper {
  background: var(--wc-img-bg) !important;
  border-top: var(--wc-img-border);
}

/* ---- Link preview / media embeds (.post-media) ---- */
.post-media {
  background: var(--wc-img-bg) !important;
}

.post-media-image {
  background: var(--wc-img-bg) !important;
}

/* Image inside .post-media-image: centered, no crop */
.post-media-image img,
.post-media img.img-fluid {
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  background: var(--wc-img-bg) !important;
}

/* Link preview image fill-div (background-image style divs) */
.post-media-image > div {
  background-color: rgba(7,11,20,0.98) !important;
}

/* Night-mode overrides that might set grey bg */
body.night-mode .post-media,
body.night-mode .post-media-image {
  background: var(--wc-img-bg) !important;
}

/* Video wrapper — keep consistent */
.post-media video,
.pg_wrapper video {
  background: rgba(3,6,12,1) !important;
  display: block;
  margin: 0 auto;
}

/* ===================================================
   END FEED POST IMAGE BACKGROUNDS
   =================================================== */

/* ===================================================
   POST BORDER + VERIFIED BADGE FIX — Wooly Club v6.2a
   =================================================== */

/* ---- 1. Kill the double divider: post-header already has border-bottom,
         so media/photo containers must NOT add border-top ---- */
.pg_wrapper {
  border-top: none !important;
}
.pg_wrapper .pg_1x {
  border-top: none !important;
}
.post-media {
  border-top: none !important;
}
.post-media-image {
  border-top: none !important;
}

/* Single clean divider color everywhere */
.post-header,
.post .post-header,
.post-outer-wrapper .post-header,
.feed-item .post-header,
body.night-mode .post-header {
  border-bottom: none !important;
}

/* Bottom border under media area — one line only */
.pg_wrapper,
.pg_wrapper .pg_1x,
.post-media {
  border-bottom: 1px solid rgba(200,155,90,0.08) !important;
}

/* ---- 2. Verified badge: 14px blue circle, white checkmark ---- */
.verified-badge,
.verification-badge,
.verified-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  padding: 2px !important;
  box-sizing: border-box !important;
  border-radius: 999px !important;
  background: #4DA3FF !important;
  box-shadow: 0 0 0 1.5px rgba(77,163,255,0.30) !important;
  margin-left: 4px !important;
  vertical-align: -2px !important;
  overflow: hidden !important;
  /* No inherited stroke/fill from parent */
  color: #ffffff !important;
}

/* SVG fills the 10px content area (14px - 2px padding each side) */
.verified-badge svg,
.verification-badge svg,
.verified-icon svg {
  width: 100% !important;
  height: 100% !important;
  min-width: unset !important;
  min-height: unset !important;
  display: block !important;
  fill: none !important;
  stroke: #ffffff !important;
  stroke-width: 3.5px !important;
  flex-shrink: 0 !important;
}

/* Force viewBox-based SVG width/height attrs to be overridden */
.verified-badge svg[width],
.verified-badge svg[height] {
  width: 100% !important;
  height: 100% !important;
}

/* ===================================================
   END POST BORDER + VERIFIED BADGE FIX
   =================================================== */

/* ===================================================
   BADGE + BORDER DEFINITIVE FIX — Wooly Club v6.3
   =================================================== */

/* ---- New inline-SVG verified badge (replaces old icon) ---- */
.wc-verified-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 15px !important;
  height: 15px !important;
  margin-left: 4px !important;
  vertical-align: -2px !important;
  flex-shrink: 0 !important;
  line-height: 1 !important;
}
.wc-verified-badge svg {
  width: 15px !important;
  height: 15px !important;
  display: block !important;
  flex-shrink: 0 !important;
}
.wc-verified-badge circle {
  fill: #4DA3FF !important;
}
.wc-verified-badge path {
  fill: #FFFFFF !important;
}

/* Suppress old blob in case it still renders anywhere */
.verified-badge,
.verification-badge,
.verified-icon {
  display: none !important;
}

/* ---- Double border: absolute kill on all pg_wrapper top borders ---- */
/* Target every possible selector that could add a top line */
.post .pg_wrapper,
.post-outer-wrapper .pg_wrapper,
.feed-item .pg_wrapper,
.post-body .pg_wrapper,
.pg_wrapper,
.post .pg_wrapper .pg_1x,
.post-outer-wrapper .pg_wrapper .pg_1x,
.pg_wrapper .pg_1x,
.post .post-media,
.post-outer-wrapper .post-media,
.feed-item .post-media,
.post-body .post-media {
  border-top: 0 none !important;
  margin-top: 0 !important;
}

/* Kill any gap wrapper around link post media (.mt10 inside post body) */
.post-body > .mt10,
.post-body > .mt10.plr15 {
  margin-top: 0 !important;
}

/* Ensure post-header has no border */
.post-header {
  border-bottom: none !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
}

/* Bottom border under photo grid and link media — one line */
.pg_wrapper {
  border-bottom: 1px solid rgba(200,155,90,0.08) !important;
}
.post-media {
  border-bottom: 0 none !important;
}

/* ===================================================
   END BADGE + BORDER DEFINITIVE FIX v6.3
   =================================================== */


/* ===================================================
   POST HEADER SPACING — v8.3
   Root fix: dark gradient on .post-header caused a colour-seam
   "border" where it met the photo below. Solution: transparent
   background on header (card shows through), zero padding-bottom.
   =================================================== */

/* Kill the dark gradient — use card background instead */
.post-header,
.post .post-header,
.post-outer-wrapper .post-header,
.feed-item .post-header,
.post-body .post-header,
body.night-mode .post-header {
  background: transparent !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* No extra space above photo/content area */
.post-body {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
.post-replace {
  padding-top: 12px !important;
  margin-top: 0 !important;
}
.post-text,
.post-text.js_readmore,
div.post-text {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Photo grid — flush, no gaps, no borders */
.pg_wrapper,
.pg_wrapper .pg_1x,
.pg_wrapper .pg_2x,
.pg_1x,
.post-media-image,
.post-media-image > div {
  border-top: none !important;
  border-bottom: none !important;
  margin-top: 0 !important;
}
/* ===================================================
   END POST HEADER SPACING v8.3
   =================================================== */

/* ===================================================
   ONLINE DOT + POST HEADER MIN-HEIGHT — v8.4
   Listing posts render a shorter header; the dot was
   clipped because it uses fixed top:50px. Switch to
   bottom positioning so it always sits at the avatar
   corner regardless of header height.
   =================================================== */

/* Ensure the post-header is always tall enough to
   show the full avatar + online dot for all post types */
.post-header,
.post .post-header,
.post-outer-wrapper .post-header,
.feed-item .post-header,
.post-body .post-header {
  min-height: 76px !important; /* 16px padding-top + 60px avatar */
}

/* Anchor dot to bottom-right of avatar instead of fixed top:50px */
.post-avatar {
  position: relative !important;
  overflow: visible !important;
}
.post-avatar .online-dot {
  top: auto !important;
  bottom: -2px !important;
  right: 4px !important;
  position: absolute !important;
}
/* ===================================================
   END ONLINE DOT + POST HEADER MIN-HEIGHT v8.4
   =================================================== */

/* ===================================================
   PRODUCT LISTING POST GAP — v8.7
   Photo posts have an empty post-replace > post-text
   div whose padding-bottom (~10px) creates the visual
   gap between the header and the photo. Listing posts
   have no post-replace, so that gap is missing.
   Fix: add the equivalent margin on the sibling .mt10
   photo wrapper that immediately follows the header.
   The header height stays identical to photo posts.
   =================================================== */
.post-header-product ~ .mt10 {
  margin-top: 8px !important;
}
/* ===================================================
   END PRODUCT LISTING POST GAP v8.7
   =================================================== */

/* ===================================================
   PROFILE PAGE REDESIGN — v9.2
   Full Wooly Club dark/gold design system applied to
   all profile tabs, cards, tabs, grids, empty states.
   Cover area untouched.
   =================================================== */

/* ── 1. Profile page wrapper ── */
.sg-offcanvas-mainbar .profile-header ~ *,
.profile-tabs-wrapper,
.profile-content-box,
body.night-mode .col-12.sg-offcanvas-mainbar {
  box-sizing: border-box;
}

/* ── 2. Profile identity: single gold ring on img via box-shadow (no wrapper border) ── */
body.night-mode .profile-avatar-wrapper,
.profile-avatar-wrapper {
  border: none !important;
  box-shadow: none !important;
}
body.night-mode .profile-avatar-wrapper img,
.profile-avatar-wrapper img {
  border: none !important;
  box-shadow: 0 0 0 2px #C89B5A, 0 8px 24px rgba(0,0,0,0.40) !important;
}

/* ── Profile name gold ── */
body.night-mode .profile-name-wrapper a,
.profile-name-wrapper a {
  color: #D8AA5F !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

body.night-mode .profile-name-wrapper a:hover,
.profile-name-wrapper a:hover {
  color: #F3EBDD !important;
}

/* ── Avatar / cover edit buttons ── */
body.night-mode .profile-avatar-change,
body.night-mode .profile-avatar-crop,
body.night-mode .profile-avatar-delete,
body.night-mode .profile-cover-change,
body.night-mode .profile-cover-position,
body.night-mode .profile-cover-delete {
  background: rgba(7,11,20,0.84) !important;
  border: 1px solid rgba(200,155,90,0.24) !important;
  color: #C89B5A !important;
}

body.night-mode .profile-avatar-change:hover,
body.night-mode .profile-avatar-crop:hover,
body.night-mode .profile-avatar-delete:hover,
body.night-mode .profile-cover-change:hover,
body.night-mode .profile-cover-position:hover {
  background: rgba(200,155,90,0.10) !important;
  color: #D8AA5F !important;
}

/* ── Profile header action buttons (add friend, follow, message, etc.) ── */
body.night-mode .profile-buttons-wrapper .btn-light,
.profile-buttons-wrapper .btn-light {
  background: rgba(7,11,20,0.82) !important;
  border: 1px solid rgba(200,155,90,0.26) !important;
  color: #C89B5A !important;
  border-radius: 12px !important;
}

body.night-mode .profile-buttons-wrapper .btn-light:hover,
.profile-buttons-wrapper .btn-light:hover {
  background: rgba(200,155,90,0.10) !important;
  color: #D8AA5F !important;
}

body.night-mode .profile-buttons-wrapper .btn-success,
.profile-buttons-wrapper .btn-success {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  border: none !important;
  color: #07101B !important;
  font-weight: 900 !important;
  border-radius: 12px !important;
}

/* Edit profile pencil button */
body.night-mode .profile-buttons-wrapper a.btn-light,
body.night-mode .profile-buttons-wrapper a.btn-icon {
  background: rgba(7,11,20,0.82) !important;
  border: 1px solid rgba(200,155,90,0.26) !important;
  color: #C89B5A !important;
  border-radius: 12px !important;
}

/* ── 3. Profile navigation tabs ── */
body.night-mode .profile-tabs-wrapper,
.profile-tabs-wrapper {
  background: linear-gradient(180deg, rgba(16,23,34,0.98), rgba(7,11,20,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 16px !important;
  padding: 0 12px !important;
  gap: 0 !important;
  overflow-x: auto !important;
  margin-top: 12px !important;
  margin-bottom: 14px !important;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.profile-tabs-wrapper::-webkit-scrollbar {
  display: none;
}

body.night-mode .profile-tabs-wrapper > a,
.profile-tabs-wrapper > a {
  color: rgba(243,235,221,0.68) !important;
  padding: 15px 20px !important;
  font-weight: 800 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: color 0.18s, background 0.18s, border-color 0.18s;
  display: flex !important;
  align-items: center !important;
}

body.night-mode .profile-tabs-wrapper > a svg,
.profile-tabs-wrapper > a svg {
  color: #C89B5A !important;
  stroke: #C89B5A !important;
  fill: #C89B5A !important;
  opacity: 0.85;
}

body.night-mode .profile-tabs-wrapper > a.active,
.profile-tabs-wrapper > a.active {
  color: #D8AA5F !important;
  border-bottom: 2px solid #C89B5A !important;
  background: rgba(200,155,90,0.07) !important;
}

body.night-mode .profile-tabs-wrapper > a.active svg,
.profile-tabs-wrapper > a.active svg {
  color: #D8AA5F !important;
  stroke: #D8AA5F !important;
  fill: #D8AA5F !important;
  opacity: 1;
}

body.night-mode .profile-tabs-wrapper > a:hover,
.profile-tabs-wrapper > a:hover {
  color: #F3EBDD !important;
  background: rgba(200,155,90,0.05) !important;
}

/* ── 4. All profile cards consistent styling ── */
body.night-mode .profile-header ~ .row .card,
body.night-mode .profile-header ~ * .card {
  background: linear-gradient(180deg, rgba(16,23,34,0.97), rgba(7,11,20,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 18px !important;
  box-shadow: 0 14px 36px rgba(0,0,0,0.20) !important;
}

body.night-mode .profile-header ~ .row .card-header,
body.night-mode .profile-header ~ * .card-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
  color: #F3EBDD !important;
}

body.night-mode .profile-header ~ .row .card-header strong,
body.night-mode .profile-header ~ * .card-header strong {
  color: #F3EBDD !important;
}

body.night-mode .profile-header ~ .row .card-header a,
body.night-mode .profile-header ~ * .card-header a {
  color: #D8AA5F !important;
}

body.night-mode .profile-header ~ .row .card-body,
body.night-mode .profile-header ~ * .card-body {
  color: rgba(243,235,221,0.72) !important;
}

/* ── About / sidebar cards ── */
body.night-mode .about-list-item {
  color: rgba(243,235,221,0.72) !important;
}

body.night-mode .about-list-item svg {
  color: #C89B5A !important;
  stroke: #C89B5A !important;
  fill: #C89B5A !important;
}

body.night-mode .about-list-item a {
  color: #63B3FF !important;
}

body.night-mode .about-bio {
  color: rgba(243,235,221,0.72) !important;
  border-bottom: 1px solid rgba(200,155,90,0.10);
  padding-bottom: 10px;
  margin-bottom: 8px;
}

/* ── Profile completion card ── */
body.night-mode .profile-header ~ * .card .progress {
  background: rgba(200,155,90,0.10) !important;
}

body.night-mode .profile-header ~ * .progress-bar {
  background: linear-gradient(90deg, #B98234, #D8AA5F) !important;
}

body.night-mode .profile-header ~ * .card .float-end {
  color: #D8AA5F !important;
}

body.night-mode .profile-header ~ * .card a.text-link {
  color: #C89B5A !important;
}

body.night-mode .profile-header ~ * .card .green,
body.night-mode .profile-header ~ * .card .fas.fa-check-circle {
  color: #4CAF50 !important;
}

/* ── 5. Profile subtabs / card nav tabs ── */
body.night-mode .profile-header ~ * .nav-tabs,
body.night-mode .profile-header ~ * .card-header .nav-tabs {
  border-bottom: 1px solid rgba(200,155,90,0.12) !important;
  gap: 4px;
}

body.night-mode .profile-header ~ * .nav-tabs .nav-link,
body.night-mode .profile-header ~ * .card-header .nav-link {
  color: rgba(243,235,221,0.68) !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  border-radius: 10px 10px 0 0 !important;
  font-weight: 800 !important;
  padding: 9px 16px !important;
}

body.night-mode .profile-header ~ * .nav-tabs .nav-link.active,
body.night-mode .profile-header ~ * .card-header .nav-link.active {
  color: #D8AA5F !important;
  background: rgba(200,155,90,0.08) !important;
  border-color: rgba(200,155,90,0.22) rgba(200,155,90,0.22) transparent !important;
}

body.night-mode .profile-header ~ * .nav-tabs .nav-link:hover,
body.night-mode .profile-header ~ * .card-header .nav-link:hover {
  color: #F3EBDD !important;
  background: rgba(200,155,90,0.05) !important;
}

body.night-mode .profile-header ~ * .nav-tabs .badge,
body.night-mode .profile-header ~ * .card-header .badge {
  background: rgba(200,155,90,0.18) !important;
  color: #D8AA5F !important;
}

/* ── 6. Friends / user boxes ── */
body.night-mode .circled-user-box .name {
  color: rgba(243,235,221,0.78) !important;
  font-size: 11px !important;
}

body.night-mode .circled-user-box img {
  border: 1.5px solid rgba(200,155,90,0.30) !important;
}

/* Friends count badge in card header */
body.night-mode .profile-header ~ * .card-header .badge.bg-light {
  background: rgba(200,155,90,0.15) !important;
  color: #D8AA5F !important;
}

/* ── 7. Photos panel sidebar ── */
body.night-mode .panel-photos .card-body .row [class*="col-"] a {
  border-radius: 10px !important;
  overflow: hidden;
  display: block;
}

/* ── Search blocks inside profile tabs ── */
body.night-mode .profile-header ~ * .card .input-group .form-control {
  background: rgba(7,11,20,0.88) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  color: #F3EBDD !important;
  border-radius: 12px 0 0 12px !important;
  height: 44px !important;
}

body.night-mode .profile-header ~ * .card .input-group .form-control::placeholder {
  color: rgba(243,235,221,0.38) !important;
}

body.night-mode .profile-header ~ * .card .input-group .form-control:focus {
  border-color: rgba(200,155,90,0.40) !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.10) !important;
}

body.night-mode .profile-header ~ * .card .input-group .btn-primary {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  border: none !important;
  color: #07101B !important;
  font-weight: 900 !important;
  height: 44px !important;
  border-radius: 0 12px 12px 0 !important;
}

body.night-mode .profile-header ~ * .card .input-group .btn-primary:hover {
  background: linear-gradient(180deg, #E8C070 0%, #C89344 100%) !important;
}

/* ── 8. "See More" button ── */
body.night-mode .profile-header ~ * .see-more,
body.night-mode .profile-header ~ * .alert-post.see-more {
  background: rgba(7,11,20,0.82) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  color: #C89B5A !important;
  border-radius: 14px !important;
  font-weight: 800 !important;
  text-align: center !important;
  cursor: pointer;
  transition: background 0.18s, color 0.18s;
}

body.night-mode .profile-header ~ * .see-more:hover,
body.night-mode .profile-header ~ * .alert-post.see-more:hover {
  background: rgba(200,155,90,0.10) !important;
  color: #D8AA5F !important;
}

/* ── 9. Social link icon buttons ── */
body.night-mode .profile-header ~ * .btn-icon-social {
  background: rgba(7,11,20,0.80) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  color: #C89B5A !important;
  border-radius: 10px !important;
  margin: 3px !important;
  transition: background 0.18s;
}

body.night-mode .profile-header ~ * .btn-icon-social:hover {
  background: rgba(200,155,90,0.12) !important;
  color: #D8AA5F !important;
}

body.night-mode .profile-header ~ * .btn-icon-social svg {
  color: #C89B5A !important;
  stroke: #C89B5A !important;
}

/* ── 10. Subscribe / tip / gift CTA buttons ── */
body.night-mode .profile-header ~ * .d-grid .btn-primary.rounded-pill,
body.night-mode .profile-header ~ * .d-grid .btn-primary {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  border: none !important;
  color: #07101B !important;
  font-weight: 900 !important;
}

/* ── 11. Groups (Rooms) sidebar cards — d-none d-lg-block ── */
body.night-mode .profile-header ~ * .card.d-none.d-lg-block .card-header svg,
body.night-mode .profile-header ~ * .card .card-header svg.main-icon {
  color: #C89B5A !important;
  stroke: #C89B5A !important;
  fill: #C89B5A !important;
}

/* ── 12. Empty states inside profile tab content ── */
body.night-mode .profile-header ~ * .card-body > p.text-center.text-muted,
body.night-mode .profile-header ~ * .text-muted {
  color: rgba(243,235,221,0.52) !important;
}

/* Upgrade: no_data block styled as premium empty state */
body.night-mode .profile-header ~ * .no-data,
body.night-mode .profile-header ~ * [class*="no_data"],
body.night-mode .profile-header ~ * .x-empty-state {
  min-height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 48px 24px;
  color: rgba(243,235,221,0.55);
}

/* ── 13. Card-header with-icon main-icon styling ── */
body.night-mode .profile-header ~ * .card-header.with-icon > svg,
body.night-mode .profile-header ~ * .card-header.with-icon .main-icon {
  color: #C89B5A !important;
  stroke: #C89B5A !important;
}

/* Fullpage card headers (friends, photos, videos, etc.) */
body.night-mode .profile-header ~ * .card-header.with-icon.with-nav {
  border-bottom: 1px solid rgba(200,155,90,0.12) !important;
  padding-bottom: 0 !important;
}

body.night-mode .profile-header ~ * .card-header.with-icon.with-nav > .mb20 {
  color: #F3EBDD !important;
  font-size: 17px;
  font-weight: 900;
}

/* ── 14. Gifts card styling ── */
body.night-mode .profile-header ~ * .card-body .border-bottom {
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
}

body.night-mode .profile-header ~ * .card-body .fw-bold.text-dark {
  color: #F3EBDD !important;
}

body.night-mode .profile-header ~ * .badge.bg-info {
  background: rgba(200,155,90,0.16) !important;
  color: #D8AA5F !important;
}

/* ── 15. Merits card ── */
body.night-mode .profile-header ~ * .card-body .badge.bg-light.text-primary {
  background: rgba(200,155,90,0.14) !important;
  color: #D8AA5F !important;
}

body.night-mode .profile-header ~ * .card-body .main-icon i {
  color: #C89B5A !important;
}

/* ── 16. Friends / user boxes on full-width tabs ── */
body.night-mode .profile-header ~ * ul.row .col-lg-3,
body.night-mode .profile-header ~ * ul.row .col-sm-6 {
  /* ensure list items align cleanly */
}

/* ── 17. Mobile responsive profile tabs ── */
@media (max-width: 991px) {
  .profile-tabs-wrapper {
    padding: 0 6px !important;
    border-radius: 12px !important;
  }

  .profile-tabs-wrapper > a {
    padding: 12px 14px !important;
    font-size: 13px !important;
  }

  body.night-mode .profile-header ~ .row .col-lg-8,
  body.night-mode .profile-header ~ .row .col-lg-4 {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
}

@media (max-width: 575px) {
  .profile-tabs-wrapper > a {
    padding: 11px 10px !important;
    font-size: 12px !important;
  }

  body.night-mode .profile-header ~ * .d-grid .btn {
    width: 100% !important;
  }
}

/* ── 18. Photos tab full-width grid ── */
body.night-mode .panel-photos .card-body ul.row,
body.night-mode .panel-videos .card-body ul.row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  padding: 0 !important;
  list-style: none !important;
  margin: 0 !important;
}

/* ── 19. Product / Store price always gold ── */
body.night-mode .profile-header ~ * .product-price,
body.night-mode .profile-header ~ * [class*="price"]:not(.discount),
body.night-mode .profile-header ~ * .post-product .price,
body.night-mode .profile-header ~ * .text-success {
  color: #D8AA5F !important;
}

/* ── 20. card-header icon next to title for main-icon class ── */
body.night-mode .profile-header ~ * svg.main-icon {
  color: #C89B5A !important;
  stroke: #C89B5A !important;
}

/* ── Remove any lingering blue/purple from profile area ── */
body.night-mode .profile-header ~ * .nav-tabs .nav-item .nav-link {
  border-bottom-color: transparent !important;
}

body.night-mode .profile-header ~ * .nav-tabs .nav-item .nav-link.active {
  border-bottom: 2px solid #C89B5A !important;
  color: #D8AA5F !important;
}

/* ── Ensure profile-name-wrapper overall wrapper text ── */
body.night-mode .profile-name-wrapper {
  color: rgba(243,235,221,0.68) !important;
}

/* badge group label */
body.night-mode .profile-name-wrapper .badge.bg-primary {
  background: rgba(200,155,90,0.18) !important;
  color: #D8AA5F !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  font-size: 11px !important;
}

/* ===================================================
   END PROFILE PAGE REDESIGN v9.2
   =================================================== */

/* ===================================================
   REMOVE GAP BETWEEN PHOTO AND ACTION/STATS BAR — v9.4
   Sngine adds margin-top: 10px to .post-actions which
   creates a visible dark strip between images and the
   like/comment bar. The border-top already separates.
   =================================================== */
.post-actions {
  margin-top: 0 !important;
}
body.night-mode .post-actions {
  margin-top: 0 !important;
}
/* Also remove any bottom-margin on the pg_wrapper mt10 wrapper */
.post .mt10:has(.pg_wrapper) {
  margin-bottom: 0 !important;
}
/* ===================================================
   END REMOVE GAP v9.4
   =================================================== */

/* ===================================================
   POST-STATS GAP FIX — v9.5
   Sngine base has margin-top:15px on .post-stats which
   creates a 15px dark strip between the photo and the
   Comments/Views bar. Also kill the leftover pg_wrapper
   border-bottom from v6.3 which doubles up.
   =================================================== */
.post-stats {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body.night-mode .post .post-stats {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
/* kill the v6.3 leftover pg_wrapper bottom border */
.pg_wrapper {
  border-bottom: 0 none !important;
}
/* ===================================================
   END POST-STATS GAP FIX v9.5
   =================================================== */

/* ===================================================
   HEADER BOXES DARK NAVY UNIFICATION — v9.6
   Force Moments card, publisher box and ALL feed cards
   to use the same solid dark-navy as post cards /
   Recent Updates box. Replaces the gradient which
   made the top of some cards appear slightly lighter.
   =================================================== */

/* All cards: solid dark navy, gold border, consistent radius */
.card,
body.night-mode .card {
  background: #111A26 !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: var(--wc-radius, 18px) !important;
}

/* Card header: slightly darker so heading row feels distinct */
.card-header,
body.night-mode .card-header {
  background: rgba(7,11,20,0.60) !important;
  border-bottom: 1px solid rgba(200,155,90,0.12) !important;
}

/* Moments card header has Bootstrap border-bottom-0 – restore our line */
.card .card-header.border-bottom-0 {
  border-bottom: 1px solid rgba(200,155,90,0.12) !important;
}

/* Publisher (post composer) box: same solid navy */
.publisher,
.x-form.publisher,
body.night-mode .publisher {
  background: #111A26 !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: var(--wc-radius, 18px) !important;
}

/* Publisher message area stays transparent (text input area) */
.publisher .publisher-message,
body.night-mode .publisher .publisher-message {
  background: transparent !important;
}

/* ===================================================
   END HEADER BOXES DARK NAVY UNIFICATION v9.6
   =================================================== */

/* ===================================================
   FLAT DARK NAVY UNIFICATION — v9.7
   1. Switch .post / .feed-item from gradient to solid
      #111A26 — matches .card and "Recent Updates" box.
   2. Remove the too-dark card-header overlay so header
      and body share the same #111A26 colour inside every
      card (border-bottom alone separates them).
   =================================================== */

/* Posts / feed items: solid navy (was a gradient) */
.post,
.post-outer-wrapper,
.feed-item,
body.night-mode .post,
body.night-mode .post-outer-wrapper,
body.night-mode .feed-item {
  background: #111A26 !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 18px !important;
}

/* Card header: transparent → shows card's #111A26 background.
   Bottom border provides the only visual separation. */
.card-header,
body.night-mode .card-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(200,155,90,0.12) !important;
}

/* Publisher: also solid navy inside */
.publisher .publisher-inner,
.publisher-tools,
body.night-mode .publisher .publisher-inner,
body.night-mode .publisher-tools {
  background: transparent !important;
}

/* ===================================================
   END FLAT DARK NAVY UNIFICATION v9.7
   =================================================== */

/* ===================================================
   DARKEST NAVY UNIFICATION — v9.8
   Switch ALL boxes/cards/posts to --wc-navy #070B14
   (the single darkest blue used throughout the design).
   #111A26 was too light/greyish. Gold border provides
   the only visual separation from the body background.
   =================================================== */

/* Cards */
.card,
body.night-mode .card {
  background: #070B14 !important;
}

/* Card header — transparent so it shows #070B14 through */
.card-header,
body.night-mode .card-header {
  background: transparent !important;
}

/* Post cards / feed items */
.post,
.post-outer-wrapper,
.feed-item,
body.night-mode .post,
body.night-mode .post-outer-wrapper,
body.night-mode .feed-item {
  background: #070B14 !important;
}

/* Publisher (post composer) */
.publisher,
.x-form.publisher,
body.night-mode .publisher {
  background: #070B14 !important;
}

/* Also update the CSS variable so anything using var(--card-dark-color) matches */
body.night-mode {
  --card-dark-color: #070B14 !important;
  --wc-card: #070B14 !important;
}

/* ===================================================
   END DARKEST NAVY UNIFICATION v9.8
   =================================================== */

/* ===================================================
   GRADIENT DARK NAVY — v9.9
   Match sidebar reference cards: subtle gradient from
   slightly-lighter navy at top to deepest navy at bottom.
   Same gradient that was on posts originally.
   All boxes: cards, posts, publisher unified.
   =================================================== */

/* The target gradient from the reference screenshot */
:root {
  --wc-card-bg: linear-gradient(180deg, rgba(16,24,38,1) 0%, rgba(7,11,20,1) 100%);
}

.card,
body.night-mode .card,
.post,
body.night-mode .post,
.post-outer-wrapper,
body.night-mode .post-outer-wrapper,
.feed-item,
body.night-mode .feed-item,
.publisher,
.x-form.publisher,
body.night-mode .publisher {
  background: linear-gradient(180deg, rgba(16,24,38,1) 0%, rgba(7,11,20,1) 100%) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  border-radius: 18px !important;
}

/* Card header: slightly lighter strip at top matching the gradient top */
.card-header,
body.night-mode .card-header {
  background: rgba(20,30,48,0.60) !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
}

/* Publisher message area stays transparent */
.publisher .publisher-message,
body.night-mode .publisher .publisher-message {
  background: transparent !important;
}

/* Keep CSS variables in sync */
body.night-mode {
  --card-dark-color: #101826 !important;
  --wc-card: #101826 !important;
}

/* ===================================================
   END GRADIENT DARK NAVY v9.9
   =================================================== */

/* =====================================================
   DEFINITIVE REPAIR v10.0
   Replaces every conflicting v9.x global override.

   Color hierarchy (final, matches sidebar screenshot):
     Body/app:    #070B14
     Card/post:   gradient rgba(16,23,34,0.96)→rgba(7,11,20,0.98)
     Borders:     rgba(200,155,90,0.14–0.18)
     Gold:        #C89B5A / #D8AA5F
     Username:    #63B3FF
   ===================================================== */

/* ── 1. CSS Variables (definitive) ── */
:root {
  --wc-navy:    #070B14;
  --wc-surface: #101722;
  --wc-card:    #0B1220;
}
body.night-mode {
  --card-dark-color:       #0B1220 !important;
  --card-dark-divider:     rgba(200,155,90,0.14) !important;
  --card-dark-hover:       rgba(200,155,90,0.07) !important;
  --card-dark-input:       #1a2235 !important;
  --card-dark-input-color: #F3EBDD !important;
  --wc-card:               #0B1220 !important;
}

/* ── 2. App / page background ── */
body,
body.night-mode {
  background-color: #070B14 !important;
}
.main-wrapper {
  background: #070B14 !important;
}

/* ── 3. Cards — gradient matching reference sidebar cards ── */
.card,
body.night-mode .card {
  background: linear-gradient(180deg, rgba(16,23,34,0.96) 0%, rgba(7,11,20,0.98) 100%) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 18px !important;
  box-shadow: 0 4px 28px rgba(0,0,0,0.28) !important;
}

/* ── 4. Card header — transparent so gradient reads cleanly ── */
.card-header,
body.night-mode .card-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
}

/* ── 5. Post cards / feed items ── */
.post,
body.night-mode .post,
.post-outer-wrapper,
body.night-mode .post-outer-wrapper,
.feed-item,
body.night-mode .feed-item {
  background: linear-gradient(180deg, rgba(16,23,34,0.96) 0%, rgba(7,11,20,0.98) 100%) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 18px !important;
  box-shadow: 0 4px 28px rgba(0,0,0,0.28) !important;
  margin-bottom: 14px !important;
  overflow: hidden;
}

/* ── 6. Publisher (post composer) ── */
.publisher,
.x-form.publisher,
body.night-mode .publisher {
  background: linear-gradient(180deg, rgba(16,23,34,0.96) 0%, rgba(7,11,20,0.98) 100%) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 18px !important;
}
.publisher .publisher-message,
body.night-mode .publisher .publisher-message {
  background: transparent !important;
}

/* ── 7. Post header — transparent (gradient shows through) ── */
.post-header,
body.night-mode .post-header,
.post .post-header,
body.night-mode .post .post-header {
  background: transparent !important;
}

/* ── 8. Post stats / actions — tight, no gap ── */
.post-stats,
body.night-mode .post-stats,
.post .post-stats,
body.night-mode .post .post-stats {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.post-actions,
body.night-mode .post-actions,
.post .post-actions,
body.night-mode .post .post-actions {
  margin-top: 0 !important;
  background: rgba(7,11,20,0.48) !important;
  border-top: 1px solid rgba(200,155,90,0.08) !important;
}

/* ── 9. Comment bubbles — dark navy tinted ── */
body.night-mode .comment-inner {
  background: linear-gradient(180deg, rgba(20,28,45,0.95), rgba(12,18,32,0.95)) !important;
  border: 1px solid rgba(200,155,90,0.12) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
body.night-mode .comment-inner:before {
  display: none !important;
}

/* ── 10. Comment sort — gold, never purple/blue ── */
body.night-mode .comments-sort-btn,
body.night-mode .comments-sort,
body.night-mode .js_comments-sort,
body.night-mode .post-footer .dropdown-toggle,
body.night-mode [data-sort] {
  color: #C89B5A !important;
}
body.night-mode .comments-sort-btn:hover,
body.night-mode .js_comments-sort:hover,
body.night-mode [data-sort]:hover {
  color: #D8AA5F !important;
}

/* =====================================================
   END DEFINITIVE REPAIR v10.0
   ===================================================== */

/* =====================================================
   PROFILE SUB-TAB CENTERING — v10.1
   Friends/Followers/Followings, Photos/Albums, Videos/Reels
   sub-tabs should be centered and evenly spaced.
   ===================================================== */

/* Center the sub-tab nav and open up spacing */
body.night-mode .profile-header ~ * .card-header .nav-tabs,
.profile-header ~ * .card-header .nav-tabs,
body.night-mode .profile-header ~ * .nav-tabs,
.profile-header ~ * .nav-tabs {
  justify-content: center !important;
  gap: 6px !important;
}

/* Bigger click targets with comfortable horizontal padding */
body.night-mode .profile-header ~ * .card-header .nav-link,
.profile-header ~ * .card-header .nav-link,
body.night-mode .profile-header ~ * .nav-tabs .nav-link,
.profile-header ~ * .nav-tabs .nav-link {
  padding: 10px 28px !important;
  min-width: 100px !important;
  text-align: center !important;
}

/* =====================================================
   END PROFILE SUB-TAB CENTERING v10.1
   ===================================================== */

/* =====================================================
   PROFILE CARD-HEADER LAYOUT FIX — v10.2
   Stack the title above the sub-tabs, center both,
   add breathing room so tabs sit mid-height in the header.
   ===================================================== */

/* Stack title + nav vertically, center-align */
body.night-mode .profile-header ~ * .card-header.with-icon.with-nav,
.profile-header ~ * .card-header.with-icon.with-nav {
  flex-direction: column !important;
  align-items: center !important;
  padding: 20px 24px 0 !important;
  gap: 14px !important;
}

/* Remove the bottom margin from the title div — gap handles spacing */
body.night-mode .profile-header ~ * .card-header.with-icon.with-nav > .mb20,
.profile-header ~ * .card-header.with-icon.with-nav > .mb20 {
  margin-bottom: 0 !important;
}

/* =====================================================
   END PROFILE CARD-HEADER LAYOUT FIX v10.2
   ===================================================== */

/* =====================================================
   PROFILE STORE PRODUCT GRID FIX — v10.3

   Problem: .row:has(.card.product) matched the outer
   profile-content .row too, turning it into a CSS grid
   and squashing the col-12 store wrapper to one cell.

   Fix: reset the outer row back to flex, then scope
   the grid ONLY to the ul.row that directly wraps cards.
   ===================================================== */

/* 1. Reset the outer profile-content row — must be flex (Bootstrap default) */
.sg-offcanvas-mainbar > * > .row,
body.night-mode .sg-offcanvas-mainbar > * > .row {
  display: flex !important;
  flex-wrap: wrap !important;
  grid-template-columns: unset !important;
}

/* 2. The col-12 store wrapper inside that row must be full-width */
.sg-offcanvas-mainbar > * > .row > .col-12 {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

/* 3. Grid ONLY on the ul/div that DIRECTLY contains .card.product children */
.sg-offcanvas-mainbar ul.row:has(> * > .card.product),
.sg-offcanvas-mainbar ul.row:has(> .card.product),
.col-12 ul.row {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 20px !important;
  align-items: start !important;
  list-style: none !important;
  padding: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-top: 16px !important;
}

/* 4. Reset the col divs inside the product list so they fill their grid cell */
.sg-offcanvas-mainbar ul.row > [class*="col"],
.col-12 ul.row > [class*="col"] {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 5. Product cards fill their grid cell */
.sg-offcanvas-mainbar ul.row .card.product,
.col-12 ul.row .card.product {
  width: 100% !important;
  height: 100% !important;
}

/* Mobile: 2 columns */
@media (max-width: 767px) {
  .sg-offcanvas-mainbar ul.row:has(> * > .card.product),
  .col-12 ul.row {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
}

/* Very small: 1 column */
@media (max-width: 480px) {
  .sg-offcanvas-mainbar ul.row:has(> * > .card.product),
  .col-12 ul.row {
    grid-template-columns: 1fr !important;
  }
}

/* =====================================================
   END PROFILE STORE PRODUCT GRID FIX v10.3
   ===================================================== */

/* =====================================================
   PROFILE STORE PRODUCT GRID — v10.4
   Replaces invalid ul.row with .wc-products-grid div.
   Also resets the outer .row:has(.card.product) rule
   that was crushing the store container to ~340px.
   ===================================================== */

/* 1. Reset the outer profile-content row back to flex */
.sg-offcanvas-mainbar > .row,
body.night-mode .sg-offcanvas-mainbar > .row {
  display: flex !important;
  flex-wrap: wrap !important;
}

/* 2. Ensure the col-12 store tab wrapper is truly full-width */
.sg-offcanvas-mainbar > .row > .col-12 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

/* 3. .wc-products-grid — the store product list */
.wc-products-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 20px !important;
  align-items: start !important;
  margin-top: 16px !important;
  width: 100% !important;
}

/* 4. Each col-md-6 col-lg-4 wrapper becomes a grid item */
.wc-products-grid > [class*="col"] {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 5. Product card fills its grid cell */
.wc-products-grid .card.product {
  width: 100% !important;
  height: 100% !important;
}

/* Mobile: 2 columns */
@media (max-width: 767px) {
  .wc-products-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
}

/* Very small: 1 column */
@media (max-width: 480px) {
  .wc-products-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =====================================================
   END PROFILE STORE PRODUCT GRID v10.4
   ===================================================== */

/* =====================================================
   PROFILE STORE GRID — DEFINITIVE v10.5
   The bad .row:has(.card.product) rule has specificity
   (0,3,0). We beat it with equal-spec rules appended
   LATER (same spec = cascade order decides = we win).
   ===================================================== */

/* 1. Reset the outer profile-content row to flex.
      Selector specificity: .sg-offcanvas-mainbar(1) +
      .row(1) + :has(.wc-products-grid)(1) = (0,3,0)
      — same as bad rule, but comes AFTER it → wins. */
.sg-offcanvas-mainbar .row:has(.wc-products-grid),
body.night-mode .sg-offcanvas-mainbar .row:has(.wc-products-grid) {
  display: flex !important;
  flex-wrap: wrap !important;
  grid-template-columns: unset !important;
  margin-left: -12px !important;
  margin-right: -12px !important;
}

/* 2. The col-12 inside that row must be truly full-width */
.sg-offcanvas-mainbar .row:has(.wc-products-grid) > .col-12,
body.night-mode .sg-offcanvas-mainbar .row:has(.wc-products-grid) > .col-12 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

/* 3. .wc-products-grid — multi-column, fills full width */
.wc-products-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 20px !important;
  align-items: start !important;
  width: 100% !important;
  margin-top: 16px !important;
  padding: 0 !important;
  list-style: none !important;
}

/* 4. Each product card wrapper fills its cell */
.wc-products-grid > * {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* 5. Card fills cell */
.wc-products-grid .card.product {
  width: 100% !important;
}

/* =====================================================
   END PROFILE STORE GRID DEFINITIVE v10.5
   ===================================================== */

/* =====================================================
   PROFILE STORE — BIGGER SQUARE CARDS v10.6

   Fix: Bootstrap .col-md-6/.col-lg-4 inside a CSS Grid
   context applies max-width:50%/33% relative to the
   TRACK width, shrinking cards to ~120px. Override each
   col class explicitly for higher specificity.
   Also: square product images (1:1 aspect-ratio, cover).
   ===================================================== */

/* 1. Force 3 equal columns (no auto-fill ambiguity) */
.wc-products-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

/* 2. Override Bootstrap col constraints inside the grid */
.wc-products-grid > .col-md-6,
.wc-products-grid > .col-lg-4,
.wc-products-grid > [class*="col-"],
body.night-mode .wc-products-grid > .col-md-6,
body.night-mode .wc-products-grid > .col-lg-4,
body.night-mode .wc-products-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 3. Square product image (1:1) with cover crop */
.wc-products-grid .card.product .product-image,
body.night-mode .wc-products-grid .card.product .product-image {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: unset !important;
  overflow: hidden !important;
  border-radius: 18px 18px 0 0 !important;
}
.wc-products-grid .card.product .product-image img,
body.night-mode .wc-products-grid .card.product .product-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* 4. Bigger title inside store grid cards */
.wc-products-grid .card.product .product-meta .title,
body.night-mode .wc-products-grid .card.product .product-meta .title {
  font-size: 16px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}

/* 5. Mobile: 2 columns */
@media (max-width: 767px) {
  .wc-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}

/* 6. Very small: 1 column */
@media (max-width: 480px) {
  .wc-products-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =====================================================
   END PROFILE STORE BIGGER SQUARE CARDS v10.6
   ===================================================== */

/* =====================================================
   PROFILE PHOTOS / ALBUMS GRID — v10.7
   Replaces tiny col-lg-2 (6-per-row) layout with a
   4-column square-thumbnail grid. Photo already uses
   padding-top:100% so it is naturally square.
   ===================================================== */

/* 1. Reset the outer row when it contains a photos grid
      (same specificity trick as v10.5 — same 0,3,0 spec,
      but appended later so it wins the cascade) */
.sg-offcanvas-mainbar .row:has(.wc-photos-grid),
body.night-mode .sg-offcanvas-mainbar .row:has(.wc-photos-grid) {
  display: flex !important;
  flex-wrap: wrap !important;
  grid-template-columns: unset !important;
}
.sg-offcanvas-mainbar .row:has(.wc-photos-grid) > .col-12,
body.night-mode .sg-offcanvas-mainbar .row:has(.wc-photos-grid) > .col-12 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

/* 2. Photo grid layout — 4 equal square columns */
.wc-photos-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

/* 3. Override Bootstrap col constraints on photo wrappers */
.wc-photos-grid > .col-4,
.wc-photos-grid > .col-6,
.wc-photos-grid > .col-md-4,
.wc-photos-grid > .col-lg-2,
.wc-photos-grid > .col-lg-3,
.wc-photos-grid > [class*="col-"],
body.night-mode .wc-photos-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 4. The photo link itself is already square via padding-top:100%.
      Ensure it fills its grid cell. */
.wc-photos-grid .pg_photo {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  padding-top: 0 !important;
  height: auto !important;
  min-height: 140px !important;
  background-size: cover !important;
  background-position: center !important;
  border-radius: 12px !important;
  display: block !important;
}

/* 5. Mobile: 3 columns */
@media (max-width: 767px) {
  .wc-photos-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
}

/* 6. Very small: 2 columns */
@media (max-width: 480px) {
  .wc-photos-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* =====================================================
   END PROFILE PHOTOS / ALBUMS GRID v10.7
   ===================================================== */

/* =====================================================
   PROFILE VIDEOS / STORIES / ROOMS GRIDS — v10.8
   Videos (col-lg-3 = 4-up → 3-up), Stories (blog
   magazine → uniform 3-col), Rooms (group boxes →
   3-col). Same pattern as Photos v10.7.
   ===================================================== */

/* ── Videos & Reels grid ── */
.wc-videos-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

.wc-videos-grid > [class*="col-"],
body.night-mode .wc-videos-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* The video card link fills the grid cell */
.wc-videos-grid .pg_video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: #0a0f1a !important;
  position: relative !important;
}
.wc-videos-grid .pg_video video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 12px !important;
}

/* ── Stories (blogs) grid — 3 equal columns ── */
.wc-stories-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

/* Override the "featured first item" col classes */
.wc-stories-grid > [class*="col-"],
body.night-mode .wc-stories-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Blog card cover image aspect ratio */
.wc-stories-grid .blog-container .blog-image,
.wc-stories-grid .blog-container img {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  border-radius: 10px 10px 0 0 !important;
  display: block !important;
}
.wc-stories-grid .blog-container {
  display: block !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: rgba(7,11,20,0.88) !important;
  border: 1px solid rgba(200,155,90,0.12) !important;
  height: 100% !important;
}

/* ── Rooms (groups) grid — 3 equal columns ── */
.wc-rooms-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

.wc-rooms-grid > [class*="col-"],
body.night-mode .wc-rooms-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Group box image fills its card */
.wc-rooms-grid .ui-box .img img,
.wc-rooms-grid .ui-box .img a img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  display: block !important;
}
.wc-rooms-grid .ui-box {
  background: rgba(7,11,20,0.88) !important;
  border: 1px solid rgba(200,155,90,0.12) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  padding: 12px !important;
  height: 100% !important;
}

/* ── Mobile breakpoints for all three ── */
@media (max-width: 767px) {
  .wc-videos-grid,
  .wc-stories-grid,
  .wc-rooms-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
}
@media (max-width: 480px) {
  .wc-videos-grid,
  .wc-stories-grid,
  .wc-rooms-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =====================================================
   END VIDEOS / STORIES / ROOMS GRIDS v10.8
   ===================================================== */

/* =====================================================
   ROOMS & STORIES GRID CORRECTIONS — v10.8b
   Fixes: rooms card not expanding / stories clipping
   title+description text below the image.
   ===================================================== */

/* ── ROOMS (groups) ── */

/* Grid cell: strip Bootstrap col constraints */
.wc-rooms-grid > li,
.wc-rooms-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding: 0 !important;
  display: flex !important;
}

/* Card itself fills cell as a column */
.wc-rooms-grid .ui-box {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;
  background: rgba(7,11,20,0.9) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Cover image: full width, 16:9 */
.wc-rooms-grid .ui-box .img {
  width: 100% !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}
.wc-rooms-grid .ui-box .img a {
  display: block !important;
  width: 100% !important;
}
.wc-rooms-grid .ui-box .img img {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 0 !important;
  min-height: 120px !important;
}

/* Text/button rows inside the card */
.wc-rooms-grid .ui-box .mt10 {
  padding: 8px 14px !important;
  margin-top: 0 !important;
}
.wc-rooms-grid .ui-box .mt10:last-child {
  padding-bottom: 14px !important;
}
.wc-rooms-grid .ui-box .h6,
.wc-rooms-grid .ui-box a.h6 {
  color: var(--wc-gold) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  display: block !important;
  margin-bottom: 4px !important;
}
.wc-rooms-grid .ui-box div {
  color: rgba(243,235,221,0.65) !important;
  font-size: 12px !important;
}

/* ── STORIES (blogs) ── */

/* Grid cell: strip Bootstrap col + featured sizing */
.wc-stories-grid > div,
.wc-stories-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding: 0 !important;
  display: flex !important;
}

/* Card: flex column so image is on top, content below */
.wc-stories-grid .blog-container {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  background: rgba(7,11,20,0.9) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 12px !important;
  overflow: visible !important;   /* un-clip the content */
  color: var(--wc-light) !important;
  text-decoration: none !important;
}

/* Cover image */
.wc-stories-grid .blog-image {
  width: 100% !important;
  overflow: hidden !important;
  border-radius: 12px 12px 0 0 !important;
  flex-shrink: 0 !important;
}
.wc-stories-grid .blog-image img {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 12px 12px 0 0 !important;
}

/* Title + text below the image */
.wc-stories-grid .blog-content {
  padding: 12px 14px 8px !important;
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: visible !important;
}
.wc-stories-grid .blog-content h3 {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--wc-light) !important;
  margin-bottom: 6px !important;
  line-height: 1.3 !important;
  display: block !important;
}
.wc-stories-grid .blog-content .text {
  font-size: 12px !important;
  color: rgba(243,235,221,0.65) !important;
  line-height: 1.45 !important;
  flex: 1 !important;
  display: block !important;
  overflow: hidden !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
}
.wc-stories-grid .blog-content .post-avatar,
.wc-stories-grid .blog-content .post-meta {
  display: inline-block !important;
  vertical-align: middle !important;
}
.wc-stories-grid .blog-content .post-meta {
  font-size: 11px !important;
  color: rgba(243,235,221,0.5) !important;
}

/* "More" strip at bottom */
.wc-stories-grid .blog-more {
  padding: 6px 14px 10px !important;
  border-top: 1px solid rgba(200,155,90,0.12) !important;
  font-size: 12px !important;
  color: var(--wc-gold) !important;
  display: block !important;
}

/* =====================================================
   END ROOMS & STORIES CORRECTIONS v10.8b
   ===================================================== */

/* =====================================================
   ROOMS GRID — FULL RESET + PROPER GRID — v10.8c
   Previous rules broke the floating circular avatar.
   This block overrides everything above and restores
   the original Sngine ui-box card appearance while
   keeping a 3-column grid layout.
   ===================================================== */

/* Grid container */
.wc-rooms-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  column-gap: 16px !important;
  row-gap: 0 !important;
  padding-top: 55px !important; /* room for first-row floating avatars */
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
  list-style: none !important;
  margin: 0 !important;
}

/* Grid cells — strip Bootstrap col constraints */
.wc-rooms-grid > li,
.wc-rooms-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  display: block !important;
}

/* ── Restore original ui-box floating-avatar card ── */
.wc-rooms-grid .ui-box {
  position: relative !important;
  display: block !important;
  background: var(--card-dark-input) !important;
  padding: 50px 15px 15px !important;
  margin-top: 50px !important;
  margin-bottom: 20px !important;
  text-align: center !important;
  border-radius: 16px !important;
  overflow: visible !important;   /* MUST be visible — avatar floats above */
  width: auto !important;
  height: auto !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  flex-direction: unset !important;
}

/* Restore absolute-positioned avatar circle */
.wc-rooms-grid .ui-box .img {
  position: absolute !important;
  top: -50px !important;
  left: 50% !important;
  transform: translate(-50%) !important;
  width: auto !important;
  overflow: visible !important;
  border-radius: 50% !important;
  background: var(--card-dark-color) !important;
  padding: 4px !important;
  flex-shrink: unset !important;
  aspect-ratio: unset !important;
  min-height: unset !important;
}

/* Restore circular 92×92 avatar image */
.wc-rooms-grid .ui-box .img a {
  display: inline !important;
  width: auto !important;
}
.wc-rooms-grid .ui-box .img img,
.wc-rooms-grid .ui-box .img a img {
  width: 92px !important;
  height: 92px !important;
  min-height: unset !important;
  aspect-ratio: unset !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: inline !important;
}

/* Text rows inside card */
.wc-rooms-grid .ui-box .mt10 {
  padding: 0 !important;
  margin-top: 10px !important;
}
.wc-rooms-grid .ui-box a.h6 {
  color: var(--wc-gold) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  display: block !important;
}
.wc-rooms-grid .ui-box > .mt10 > div {
  color: rgba(243,235,221,0.6) !important;
  font-size: 13px !important;
}

/* Mobile: 2 columns */
@media (max-width: 767px) {
  .wc-rooms-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
/* Very small: 1 column */
@media (max-width: 480px) {
  .wc-rooms-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =====================================================
   END ROOMS GRID RESET v10.8c
   ===================================================== */

/* =====================================================
   STORIES GRID — FULL RESET + PROPER GRID — v10.8d
   Previous rules broke the blog card (fixed-height
   410px design with 150px image strip). This block
   overrides everything above and restores the original
   Sngine blog-container layout while keeping 3-col grid.
   ===================================================== */

/* Grid container — 3 equal columns */
.wc-stories-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

/* Grid cells — strip Bootstrap col constraints */
.wc-stories-grid > div,
.wc-stories-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding: 0 !important;
  display: block !important;
}

/* ── Restore Sngine blog-container ── */
.wc-stories-grid .blog-container {
  display: block !important;
  height: 410px !important;          /* fixed card height */
  overflow: hidden !important;       /* clips content to card */
  border-radius: 16px !important;
  margin-bottom: 0 !important;
  background: var(--card-dark-color) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  position: relative !important;
  color: var(--wc-light) !important;
  text-decoration: none !important;
  flex-direction: unset !important;
  flex: unset !important;
}

/* Primary (first/featured) card: use same height */
.wc-stories-grid .blog-container.primary {
  background: var(--card-dark-input) !important;
}

/* ── Restore blog image strip ── */
.wc-stories-grid .blog-image {
  height: 150px !important;
  min-height: 150px !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  flex-shrink: unset !important;
  aspect-ratio: unset !important;
  width: 100% !important;
}

.wc-stories-grid .blog-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  aspect-ratio: unset !important;
  border-radius: 0 !important;
  min-height: unset !important;
}

/* ── Blog content text ── */
.wc-stories-grid .blog-content {
  padding: 10px !important;
  display: block !important;
  overflow: unset !important;
  flex: unset !important;
  flex-direction: unset !important;
}

.wc-stories-grid .blog-content h3 {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--wc-light) !important;
  margin: 0 0 6px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 1.3 !important;
}

.wc-stories-grid .blog-content .text {
  font-size: 12px !important;
  color: rgba(243,235,221,0.65) !important;
  margin: 8px 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 1.4 !important;
}

.wc-stories-grid .blog-content .text-link {
  color: var(--wc-gold) !important;
  font-size: 12px !important;
}

/* Mobile: 2 columns */
@media (max-width: 767px) {
  .wc-stories-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Very small: 1 column */
@media (max-width: 480px) {
  .wc-stories-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =====================================================
   END STORIES GRID RESET v10.8d
   ===================================================== */

/* =====================================================
   STORIES TAB — PREMIUM REDESIGN — v10.9
   Translates design spec to real Sngine HTML selectors.
   Scope: .wc-stories-search, .wc-stories-grid and
          their children only. No other tabs touched.
   ===================================================== */

/* ── 1. Search card ── */
.wc-stories-search {
  width: 100% !important;
  margin-bottom: 20px !important;
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 16px !important;
}
.wc-stories-search .card-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
  color: rgba(243,235,221,0.7) !important;
  padding: 12px 16px !important;
}
.wc-stories-search .card-body {
  padding: 14px 16px !important;
}
.wc-stories-search .form-control {
  height: 44px !important;
  background: #07101B !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 12px 0 0 12px !important;
  color: #F3EBDD !important;
  padding: 0 16px !important;
  font-weight: 500 !important;
}
.wc-stories-search .form-control::placeholder {
  color: rgba(243,235,221,0.42) !important;
}
.wc-stories-search .form-control:focus {
  border-color: rgba(200,155,90,0.38) !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.10) !important;
  background: #07101B !important;
  outline: none !important;
}
.wc-stories-search .btn {
  height: 44px !important;
  min-width: 100px !important;
  border-radius: 0 12px 12px 0 !important;
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  color: #07101B !important;
  font-weight: 900 !important;
  border: none !important;
  padding: 0 22px !important;
}

/* ── 2. Stories grid ── */
.wc-stories-grid {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important;
  gap: 20px !important;
  align-items: start !important;
  padding: 0 !important;
  margin: 0 0 0 0 !important;
  list-style: none !important;
}

/* Strip Bootstrap col constraints */
.wc-stories-grid > div,
.wc-stories-grid > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding: 0 !important;
  display: block !important;
}

/* ── 3. Story card ── */
.wc-stories-grid .blog-container {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;           /* let content set height */
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 14px 36px rgba(0,0,0,0.18) !important;
  color: #F3EBDD !important;
  text-decoration: none !important;
  position: relative !important;
  margin-bottom: 0 !important;
  transition: border-color 160ms ease, transform 160ms ease !important;
}

/* Primary (featured first) card — same look as others */
.wc-stories-grid .blog-container.primary {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.98)) !important;
}

.wc-stories-grid .blog-container:hover {
  border-color: rgba(216,170,95,0.30) !important;
  transform: translateY(-2px) !important;
}

/* ── 4. Story cover image ── */
.wc-stories-grid .blog-image {
  width: 100% !important;
  height: 190px !important;
  min-height: 190px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  border-radius: 0 !important;
  aspect-ratio: unset !important;
  background: radial-gradient(circle at center, #0B1320 0%, #07101B 65%, #050A12 100%) !important;
}

/* Primary featured — same 190px, not 50% width side-by-side */
.wc-stories-grid .blog-container.primary .blog-image {
  display: block !important;
  width: 100% !important;
  height: 190px !important;
  max-height: 190px !important;
}

.wc-stories-grid .blog-image img,
.wc-stories-grid .blog-container.primary .blog-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  aspect-ratio: unset !important;
  border-radius: 0 !important;
  min-height: unset !important;
  max-width: unset !important;
}

/* ── 5. Story card body ── */
.wc-stories-grid .blog-content {
  padding: 16px 18px 18px !important;
  background: transparent !important;
  display: block !important;
  flex: 1 !important;
  overflow: visible !important;
}

/* Primary featured content — not side-by-side */
.wc-stories-grid .blog-container.primary .blog-content {
  display: block !important;
  width: 100% !important;
  color: #F3EBDD !important;
  vertical-align: unset !important;
}

/* ── 6. Story title ── */
.wc-stories-grid .blog-content h3 {
  color: #F3EBDD !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  margin: 0 0 8px !important;
  text-transform: none !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  max-height: unset !important;
}

/* Primary card title — same size */
.wc-stories-grid .blog-container.primary .blog-content h3 {
  font-size: 17px !important;
  line-height: 1.25 !important;
  max-height: unset !important;
  -webkit-line-clamp: 3 !important;
}

/* ── 7. Story excerpt ── */
.wc-stories-grid .blog-content .text {
  color: rgba(243,235,221,0.68) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  margin: 0 0 14px !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  max-height: unset !important;
}
.wc-stories-grid .blog-container.primary .blog-content .text {
  font-size: 13px !important;
  font-weight: 400 !important;
  max-height: unset !important;
  -webkit-line-clamp: 3 !important;
}

/* ── 8. Author / meta row ── */
.wc-stories-grid .blog-content > div:last-child {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 12px !important;
}

/* Avatar (background-image div, not img) */
.wc-stories-grid .blog-content .post-avatar-picture {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(200,155,90,0.24) !important;
  background-size: cover !important;
  background-position: center !important;
  flex-shrink: 0 !important;
}
.wc-stories-grid .blog-content .post-avatar {
  padding: 0 !important;
  flex-shrink: 0 !important;
}

/* Author name */
.wc-stories-grid .blog-content .text-link {
  color: #63B3FF !important;
  font-weight: 800 !important;
  font-size: 13px !important;
}
.wc-stories-grid .blog-container.primary .text-link {
  color: #63B3FF !important;
}

/* Post meta block (name + time) */
.wc-stories-grid .blog-content .post-meta {
  display: flex !important;
  flex-direction: column !important;
  line-height: 1.2 !important;
}

/* Timestamp */
.wc-stories-grid .blog-content .post-time {
  color: rgba(243,235,221,0.50) !important;
  font-size: 11px !important;
}

/* ── 9. Hover overlay (blog-more) ── */
.wc-stories-grid .blog-more {
  background-color: rgba(7,11,20,0.82) !important;
}
.wc-stories-grid .blog-more span {
  border-color: rgba(216,170,95,0.60) !important;
  color: #D8AA5F !important;
}

/* ── 10. See More button ── */
.wc-stories-grid ~ .see-more,
.wc-stories-grid + .see-more {
  margin: 22px auto 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: fit-content !important;
  min-width: 180px !important;
  height: 42px !important;
  padding: 0 24px !important;
  border-radius: 12px !important;
  background: rgba(7,11,20,0.78) !important;
  border: 1px solid rgba(200,155,90,0.24) !important;
  color: #D8AA5F !important;
  font-weight: 900 !important;
  text-align: center !important;
}
.wc-stories-grid ~ .see-more:hover {
  background: rgba(200,155,90,0.08) !important;
  border-color: rgba(216,170,95,0.38) !important;
}

/* ── 11. Mobile ── */
@media (max-width: 767px) {
  .wc-stories-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .wc-stories-grid .blog-image,
  .wc-stories-grid .blog-container.primary .blog-image {
    height: 150px !important;
    min-height: 150px !important;
  }
}
@media (max-width: 480px) {
  .wc-stories-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =====================================================
   END STORIES TAB REDESIGN v10.9
   ===================================================== */

/* =====================================================
   WOOLY CLUB — COMPREHENSIVE REPAIR v11.0
   Addresses all 16 spec sections:
   Layout · Sidebars · Feed · Posts · Comments ·
   Marketplace · Profile tabs · Create menu · Colors
   ===================================================== */

/* ── 1. Feed 3-column layout (desktop ≥ 1200px) ──────
   Sngine puts .sg-offcanvas-sidebar (left nav) and
   .sg-offcanvas-mainbar (center+right) in .sg-offcanvas.
   Within mainbar, Bootstrap col-lg-8 / col-lg-4 split
   gives center feed and right widgets.
   Force widths so layout never collapses unexpectedly. */
@media (min-width: 1200px) {
  .sg-offcanvas-sidebar {
    width: 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
    flex-shrink: 0 !important;
  }
  .sg-offcanvas-mainbar {
    flex: 1 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }
  /* Right sidebar col */
  .sg-offcanvas-mainbar .col-lg-4.js_sticky-sidebar,
  .sg-offcanvas-mainbar [class*="col-lg-4"]:last-child {
    min-width: 300px !important;
    max-width: 300px !important;
    width: 300px !important;
    flex-shrink: 0 !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .sg-offcanvas-sidebar {
    width: 240px !important;
    min-width: 240px !important;
    flex-shrink: 0 !important;
  }
}

/* ── 2. Center feed — flex column, consistent gap ──── */
.sg-offcanvas-mainbar .col-lg-8,
.sg-offcanvas-mainbar > .row > [class*="col-"]:not(.js_sticky-sidebar):not(:last-child) {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important; /* posts use margin-bottom:14px themselves */
}

/* ── 3. Left sidebar — reinforce dark navy gradient ── */
.sg-offcanvas-sidebar,
.sg-offcanvas-sidebar .js_sticky-sidebar {
  background: transparent !important;
}
/* Sidebar nav card is already gradient from targeted edit above;
   ensure no white/grey bleed from Sngine's own .card rule */
.main-side-nav-card.card {
  background: linear-gradient(180deg, #0E1929 0%, #080D18 100%) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
}

/* ── 4. Right sidebar widget cards — consistent style ─ */
.sg-offcanvas-mainbar .js_sticky-sidebar .card,
.sg-offcanvas-mainbar .col-lg-4.js_sticky-sidebar .card,
.col-lg-4.js_sticky-sidebar > div > .card,
.col-lg-4.js_sticky-sidebar > .card {
  background: linear-gradient(180deg, rgba(14,25,41,0.97) 0%, rgba(8,13,24,0.97) 100%) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.26) !important;
  margin-bottom: 12px !important;
}
.col-lg-4.js_sticky-sidebar .card-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
  padding: 10px 14px !important;
  min-height: 42px !important;
}

/* ── 5. Post media — single divider, no double border ─
   .post already has border+border-radius; post-media sits
   inside with border-top that reads as double line.
   Keep only a very faint separator (not full gold border). */
.post-media,
.post .post-media,
body.night-mode .post-media {
  border-top: none !important;
  border-bottom: none !important;
  background: transparent !important;
}
/* Keep a subtle interior separator only if there's text above */
.post-text + .post-media,
.post-header + .post-media {
  border-top: 1px solid rgba(200,155,90,0.06) !important;
}

/* ── 6. Post action bar — 3-col equal grid, gold icons ─ */
.post-actions,
body.night-mode .post-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  align-items: center !important;
  padding: 0 !important;
  gap: 0 !important;
  border-top: 1px solid rgba(200,155,90,0.08) !important;
  background: rgba(7,11,20,0.48) !important;
}
.post-actions > *,
.post-actions .btn,
.post-actions a,
body.night-mode .post-actions > * {
  justify-content: center !important;
  text-align: center !important;
  width: 100% !important;
  padding: 10px 4px !important;
  border-right: 1px solid rgba(200,155,90,0.06) !important;
}
.post-actions > *:last-child,
.post-actions .btn:last-child,
.post-actions a:last-child {
  border-right: none !important;
}
.post-actions .btn i,
.post-actions a i,
body.night-mode .post-actions .btn i,
body.night-mode .post-actions a i {
  color: rgba(200,155,90,0.70) !important;
}
.post-actions .btn:hover i,
.post-actions a:hover i {
  color: #D8AA5F !important;
}
/* Liked state: gold */
.post-actions .active i,
.post-actions .js_like.active i,
.post-actions [data-liked="1"] i {
  color: #D8AA5F !important;
}

/* ── 7. Publisher — hide Blog and Page creation tabs ──
   Wooly Club uses "Stories" (blog) only from profile.
   The publisher create-type tabs for blog/pages are
   off-brand; hide them from the post composer toolbar. */
.publisher-tabs-wrapper a[data-type="blog"],
.publisher-tabs-wrapper [href*="blog"],
.publisher-tabs-wrapper [data-publisher="blog"],
.x-form-tabs a[data-type="blog"],
.x-form-tabs [href*="blog"],
a.publisher-tools-tab[href*="/blogs"],
a.publisher-tools-tab[data-type="blog"],
/* Header create dropdown — hide Create Blog and Create Page items */
.create-list a[href*="/create/blog"],
.create-list a[href*="/create/page"],
.dropdown-menu a[href*="/create/blog"],
.dropdown-menu a[href*="/create/page"],
.header-dropdown a[href*="blogs/create"],
.header-dropdown a[href*="pages/create"],
/* Sngine 3.x create menu patterns */
a.create-menu-item[href*="blog"],
a.create-menu-item[href*="page"],
.js_create-dropdown a[href*="blog"],
.js_create-dropdown a[href*="page"] {
  display: none !important;
}

/* ── 8. Marketplace product grid ───────────────────────
   Responsive auto-fill grid on the main /market page */
.sg-offcanvas-mainbar .row:has(.card.product),
.sg-offcanvas-mainbar .row.mb20:has(.card.product),
.market-products .row,
.products-wrapper .row {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 280px)) !important;
  gap: 16px !important;
  margin: 0 !important;
}
.sg-offcanvas-mainbar .row:has(.card.product) > [class*="col"],
.sg-offcanvas-mainbar .row.mb20:has(.card.product) > [class*="col"],
.market-products .row > [class*="col"],
.products-wrapper .row > [class*="col"] {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
@media (max-width: 767px) {
  .sg-offcanvas-mainbar .row:has(.card.product),
  .sg-offcanvas-mainbar .row.mb20:has(.card.product) {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
}
@media (max-width: 480px) {
  .sg-offcanvas-mainbar .row:has(.card.product),
  .sg-offcanvas-mainbar .row.mb20:has(.card.product) {
    grid-template-columns: 1fr !important;
  }
}

/* Marketplace card — price (gold) and stock (sage) final overrides */
.card.product .product-price-display,
.card.product [class*="price"],
body.night-mode .card.product [class*="price"] {
  color: #D8AA5F !important;
  font-weight: 900 !important;
}
.card.product .badge-lg.text-success,
.card.product span.text-success {
  color: #8FB996 !important;
  background: rgba(143,185,150,0.10) !important;
  border: 1px solid rgba(143,185,150,0.32) !important;
  font-weight: 800 !important;
}

/* ── 9. Comment section — "Most Recent" gold, no purple ─ */
/* (Already handled in v10.0 — reinforce with broader selectors) */
.comments-sort,
.comments-sort-btn,
.js_comments-sort,
.post-footer [data-sort],
.post-footer .dropdown-toggle,
.post .comment-filter a,
.post .comment-filter span {
  color: #C89B5A !important;
}
.comments-sort:hover,
.comments-sort-btn:hover,
.js_comments-sort:hover,
.post-footer [data-sort]:hover {
  color: #D8AA5F !important;
}

/* ── 10. Dropdown item hover — remove blue/purple leak ─ */
.dropdown-item:hover,
.dropdown-item:focus,
body.night-mode .dropdown-item:hover,
body.night-mode .dropdown-item:focus {
  background: rgba(200,155,90,0.09) !important;
  color: #F3EBDD !important;
}
.dropdown-item.active,
.dropdown-item:active {
  background: rgba(200,155,90,0.14) !important;
  color: #F3EBDD !important;
}

/* ── 11. Nav tabs — active gold underline (profile tabs) ─ */
.profile-tabs-wrapper a.active,
.profile-tabs-wrapper a.active i {
  color: #D8AA5F !important;
  border-bottom-color: #D8AA5F !important;
}
/* Sub-tabs (Photos/Albums, Videos/Reels) */
.nav-tabs .nav-link.active {
  color: #D8AA5F !important;
  border-bottom: 2px solid #D8AA5F !important;
  background: transparent !important;
}
.nav-tabs .nav-link:hover {
  color: #F3EBDD !important;
  border-bottom-color: rgba(200,155,90,0.35) !important;
}

/* ── 12. Scope the dangerous global .card rule ───────────
   The v10.0 block at line 7674 already sets .card broadly.
   Exceptions: Bootstrap utility cards that must stay white
   in light contexts (alerts, badges). Since we run night-mode
   exclusively, explicitly target them for safety. */
/* (No additional change needed — v10.0 scoping is sufficient) */

/* ── 13. Replace remaining slate/gray surfaces ───────── */
/* Any element with grey/slate background that leaked through */
body.night-mode [style*="background:#f"],
body.night-mode [style*="background: #f"],
body.night-mode [style*="background-color:#f"],
body.night-mode [style*="background-color: #f"] {
  /* Can't safely override inline styles for all —
     handle case by case below */
}
/* Sngine's own dark surface overrides */
body.night-mode .bg-white,
body.night-mode .bg-light {
  background: rgba(16,23,34,0.94) !important;
  color: var(--wc-light) !important;
}
/* Notification / alert panels */
body.night-mode .alert {
  background: rgba(14,25,41,0.92) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  color: var(--wc-light) !important;
}
body.night-mode .alert-success {
  border-color: rgba(143,185,150,0.30) !important;
}
body.night-mode .alert-danger,
body.night-mode .alert-warning {
  border-color: rgba(217,133,133,0.30) !important;
}

/* ── 14. Page background / surface final lock ─────────── */
body,
body.night-mode,
.main-wrapper,
body.night-mode .main-wrapper {
  background: #070B14 !important;
}
/* Prevent Sngine injecting grey via inline style on .container */
.main-wrapper > .container,
.main-wrapper > .container-fluid {
  background: transparent !important;
}

/* ── 15. Responsive — tablet & mobile ────────────────── */
@media (max-width: 991px) {
  /* Stack left sidebar below header on tablet */
  .sg-offcanvas-sidebar {
    width: 100% !important;
    max-width: 100% !important;
  }
  /* Center feed full width */
  .sg-offcanvas-mainbar .col-lg-8,
  .sg-offcanvas-mainbar .col-lg-4.js_sticky-sidebar {
    width: 100% !important;
    max-width: 100% !important;
  }
}
@media (max-width: 767px) {
  /* Publisher action tabs wrap on small screens */
  .publisher .x-form-tools {
    flex-wrap: wrap !important;
  }
  /* Post actions stack gracefully */
  .post-actions {
    grid-template-columns: 1fr 1fr 1fr !important;
  }
}

/* ── 16. Link global — override Sngine blue var leak ─── */
/* --wc-blue was set to #C89B5A (gold) in :root at top,
   but some Sngine components read --bs-link-color.
   Lock BS link variable to our steel blue username color
   so it doesn't revert to Bootstrap default bright blue. */
body.night-mode {
  --bs-link-color: #63B3FF;
  --bs-link-hover-color: #9CD2FF;
}

/* =====================================================
   END COMPREHENSIVE REPAIR v11.0
   ===================================================== */

/* =====================================================
   17. FEED LAYOUT WIDTH — use more horizontal space
   Targets only logged-in pages (.sg-offcanvas wrapper).
   Login page uses .container.mt30 — not affected.
   ===================================================== */

/* ── Main container: widen from Bootstrap's 1320px cap ── */
.container.sg-offcanvas,
.container-fluid.sg-offcanvas {
  max-width: 1720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* ── Center feed column: expand to fill, no artificial cap ── */
.sg-offcanvas-mainbar .post,
.sg-offcanvas-mainbar .publisher,
.sg-offcanvas-mainbar .posts-filter,
.sg-offcanvas-mainbar .card {
  max-width: none !important;
  width: 100% !important;
}

/* ── Ensure right sticky sidebar column doesn't over-shrink ── */
.col-lg-4.js_sticky-sidebar,
.col-lg-3.js_sticky-sidebar {
  max-width: none !important;
}

/* ── Responsive: tablet (< 1300px) — drop to 2-col ── */
@media (max-width: 1299px) {
  .container.sg-offcanvas,
  .container-fluid.sg-offcanvas {
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* ── Responsive: mobile (< 900px) — single column ── */
@media (max-width: 899px) {
  .container.sg-offcanvas,
  .container-fluid.sg-offcanvas {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* =====================================================
   END LAYOUT WIDTH v1.0
   ===================================================== */

/* =====================================================
   18. PEOPLE / MEMBERS PAGE
   Scoped to .content-tabs (tabs) and
   .sg-offcanvas-mainbar col-lg-8/col-lg-4 (results + search).
   ===================================================== */

/* ---- Tab bar ---- */
.content-tabs {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 14px !important;
  margin-bottom: 18px !important;
  padding: 0 8px !important;
  overflow: hidden !important;
}
.content-tabs ul {
  display: flex !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  border-bottom: none !important;
}
.content-tabs ul li {
  padding: 0 !important;
  border-bottom: none !important;
  background: transparent !important;
}
.content-tabs ul li a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 14px 16px !important;
  color: rgba(243,235,221,0.60) !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  transition: color .15s, border-color .15s !important;
}
.content-tabs ul li.active a {
  color: #F3EBDD !important;
  border-bottom-color: #D8AA5F !important;
}
.content-tabs ul li a:hover {
  color: #F3EBDD !important;
  background: transparent !important;
}

/* Friend Requests count — username blue */
.content-tabs .badge.bg-info {
  background: #63B3FF !important;
  color: #07101B !important;
  border-radius: 8px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  padding: 3px 8px !important;
  border: none !important;
  box-shadow: none !important;
}

/* Sent Requests count — muted gold */
.content-tabs .badge.bg-warning {
  background: rgba(200,155,90,0.20) !important;
  color: #D8AA5F !important;
  border-radius: 8px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  padding: 3px 8px !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  box-shadow: none !important;
}

/* ---- Results card (left col) ---- */
.sg-offcanvas-mainbar .col-lg-8 .card {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}
.sg-offcanvas-mainbar .col-lg-8 .card .card-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
  color: #F3EBDD !important;
  font-size: 15px !important;
  padding: 14px 18px !important;
}
.sg-offcanvas-mainbar .col-lg-8 .card .card-body {
  padding: 0 !important;
}
.sg-offcanvas-mainbar .col-lg-8 .card .card-body ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* People list rows */
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item {
  border-bottom: 1px solid rgba(200,155,90,0.08) !important;
  padding: 0 18px !important;
}
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item:last-child {
  border-bottom: none !important;
}
/* Row: flex so avatar + content + button all centre vertically */
.sg-offcanvas-mainbar .col-lg-8 .card-body .data-container {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 12px 0 !important;
  min-height: 0 !important;
}

/* Avatar */
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .data-avatar {
  float: none !important;
  flex-shrink: 0 !important;
  align-self: center !important;
}

/* Content: block + relative so button can be absolutely positioned */
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .data-content {
  flex: 1 !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 54px !important;
  position: relative !important;
  display: block !important;
  overflow: visible !important;
}

/* Name row: flex so username + crown sit on the same baseline */
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .data-content .mt5 {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-width: 0 !important;
  line-height: 1 !important;
}

/* Button: absolutely anchored to the right, vertically centred */
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .data-content .float-end {
  position: absolute !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  float: none !important;
}
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .data-avatar img {
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  border: 1px solid rgba(200,155,90,0.24) !important;
}

/* Username */
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .name a {
  color: #63B3FF !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

/* Mutual friends / sub-text */
.sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .data-content > div:not(.float-end):not(.mt5) {
  color: rgba(243,235,221,0.45) !important;
  font-size: 12px !important;
}

/* ---- Add friend button (btn-light rounded-pill) ---- */
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .btn-light {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  border-radius: 12px !important;
  background: rgba(7,11,20,0.78) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #C89B5A !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  font-size: 0 !important;
  line-height: 1 !important;
}
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .btn-light:hover {
  background: rgba(200,155,90,0.10) !important;
  border-color: rgba(216,170,95,0.42) !important;
}
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .btn-light .main-icon,
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .btn-light svg {
  width: 20px !important;
  height: 20px !important;
  color: #C89B5A !important;
  stroke: #C89B5A !important;
}
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .btn-light path,
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .btn-light circle,
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .btn-light rect,
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .btn-light polygon {
  fill: #C89B5A !important;
  stroke: none !important;
}

/* ---- Confirm (Approve) button ---- */
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .js_friend-accept,
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .js_group-request-accept {
  background: linear-gradient(180deg, #D8AA5F, #B98234) !important;
  border: none !important;
  color: #07101B !important;
  font-weight: 900 !important;
  border-radius: 10px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  box-shadow: none !important;
}

/* ---- Decline button ---- */
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .js_friend-decline,
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .js_group-request-decline {
  background: rgba(200,55,55,0.16) !important;
  border: 1px solid rgba(200,55,55,0.32) !important;
  color: #ff8585 !important;
  font-weight: 900 !important;
  border-radius: 10px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  box-shadow: none !important;
}

/* ---- Cancel / Sent button ---- */
html body .sg-offcanvas-mainbar .col-lg-8 .card-body .feeds-item .js_friend-cancel {
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #D8AA5F !important;
  font-weight: 900 !important;
  border-radius: 10px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  box-shadow: none !important;
}

/* ---- Empty state ---- */
.sg-offcanvas-mainbar .col-lg-8 .card .card-body p.text-muted {
  color: rgba(243,235,221,0.54) !important;
  padding: 28px 18px !important;
  text-align: center !important;
  margin: 0 !important;
}

/* ---- See More button ---- */
.sg-offcanvas-mainbar .col-lg-8 .alert-post.see-more {
  background: rgba(200,155,90,0.06) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 10px !important;
  color: #D8AA5F !important;
  font-weight: 800 !important;
  margin: 12px 18px !important;
  text-align: center !important;
}

/* ---- Search / Filter sidebar card (right col) ---- */
.sg-offcanvas-mainbar .col-lg-4 .card {
  background: linear-gradient(180deg, rgba(16,23,34,0.96), rgba(7,11,20,0.98)) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}
.sg-offcanvas-mainbar .col-lg-4 .card .card-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
  color: #F3EBDD !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  padding: 14px 18px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.sg-offcanvas-mainbar .col-lg-4 .card .card-header i.fa {
  color: #C89B5A !important;
}
.sg-offcanvas-mainbar .col-lg-4 .card .card-body {
  padding: 18px !important;
}

/* Form labels */
.sg-offcanvas-mainbar .col-lg-4 .card label.form-label {
  color: rgba(243,235,221,0.72) !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  margin-bottom: 5px !important;
}

/* Form groups */
.sg-offcanvas-mainbar .col-lg-4 .card .form-group {
  margin-bottom: 16px !important;
}

/* Inputs */
html body .sg-offcanvas-mainbar .col-lg-4 .card .form-control {
  background: #07101B !important;
  background-color: #07101B !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 12px !important;
  color: #F3EBDD !important;
  height: 46px !important;
  padding: 0 14px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* Selects — keep native arrow, fix text clipping caused by
   appearance:none + missing padding-right */
html body .sg-offcanvas-mainbar .col-lg-4 .card .form-select {
  background-color: #111A26 !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 12px !important;
  color: #F3EBDD !important;
  height: 46px !important;
  padding: 0 2.5rem 0 14px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  text-overflow: clip !important;
}
html body .sg-offcanvas-mainbar .col-lg-4 .card .form-control::placeholder {
  color: rgba(243,235,221,0.36) !important;
}
html body .sg-offcanvas-mainbar .col-lg-4 .card .form-control:focus,
html body .sg-offcanvas-mainbar .col-lg-4 .card .form-select:focus {
  border-color: rgba(216,170,95,0.42) !important;
  box-shadow: 0 0 0 3px rgba(216,170,95,0.09) !important;
  outline: none !important;
}
html body .sg-offcanvas-mainbar .col-lg-4 .card select option {
  background: #111A26 !important;
  color: #F3EBDD !important;
}

/* Input group text (KM / ML unit label) */
.sg-offcanvas-mainbar .col-lg-4 .card .input-group-text {
  background: rgba(200,155,90,0.12) !important;
  border-color: rgba(200,155,90,0.16) !important;
  border-radius: 10px 0 0 10px !important;
  color: #C89B5A !important;
  font-weight: 900 !important;
}
.sg-offcanvas-mainbar .col-lg-4 .card .input-group .form-control {
  border-radius: 0 10px 10px 0 !important;
}

/* Distance range slider */
.sg-offcanvas-mainbar .col-lg-4 .card .custom-range {
  accent-color: #C89B5A !important;
  width: 100% !important;
}

/* Search submit button */
html body .sg-offcanvas-mainbar .col-lg-4 .card button[type="submit"],
html body .sg-offcanvas-mainbar .col-lg-4 .card .btn-primary[name="submit"] {
  width: 100% !important;
  height: 46px !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  color: #07101B !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  border: none !important;
  box-shadow: none !important;
  letter-spacing: 0.01em !important;
}
html body .sg-offcanvas-mainbar .col-lg-4 .card button[type="submit"]:hover,
html body .sg-offcanvas-mainbar .col-lg-4 .card .btn-primary[name="submit"]:hover {
  filter: brightness(1.07) !important;
}

/* =====================================================
   END PEOPLE / MEMBERS PAGE
   ===================================================== */

/* ═══════════════════════════════════════════════
   AMBASSADOR BADGE (profile) — added v21+
   ═══════════════════════════════════════════════ */
.wc-ambassador-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: rgba(200,155,90,0.12) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  border-radius: 999px !important;
  padding: 3px 10px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  color: #D8AA5F !important;
  letter-spacing: 0.01em !important;
}

/* END WOOLY CLUB THEME v47 */

/* ═══════════════════════════════════════════════════════════
   CROWN / ROLE BADGES — v47.7
   Targets real Sngine classes only (no invented class names).
   .admin-badge  → admin crown (SVG uses currentColor)
   .pro-badge    → premium/subscribed crown (SVG hardcoded red)
   .wc-ambassador-badge → ambassador pill (our custom element)
   ════════════════════════════════════════════════════════ */

/* ── 1. Base layout — both crowns ── */
.admin-badge,
.pro-badge {
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: -2px !important;
  margin-left: 5px !important;
  margin-right: 1px !important;
  flex-shrink: 0 !important;
  line-height: 1 !important;
}

/* ── 2. svg-container wrapper (Sngine wraps every SVG icon in this) ── */
.admin-badge .svg-container,
.pro-badge .svg-container {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ── 3. The SVG itself fills the container ── */
.admin-badge .svg-container svg,
.pro-badge .svg-container svg {
  width: 16px !important;
  height: 16px !important;
  display: block !important;
}

/* ── 4. Admin crown — steel blue #63B3FF (SVG uses currentColor) ── */
.admin-badge {
  color: #63B3FF !important;
}
.admin-badge .svg-container svg path,
.admin-badge .svg-container svg circle,
body.night-mode .admin-badge .svg-container svg path,
body.night-mode .admin-badge .svg-container svg circle {
  fill: #63B3FF !important;
}

/* ── 5. Premium crown — red #E45164 (override SVG hardcoded fills) ── */
.pro-badge .svg-container svg path,
.pro-badge .svg-container svg circle,
body.night-mode .pro-badge .svg-container svg path,
body.night-mode .pro-badge .svg-container svg circle {
  fill: #E45164 !important;
}

/* ── 6. Ambassador badge — Wooly gold ── */
.wc-ambassador-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  background: rgba(216,170,95,0.12) !important;
  border: 1px solid rgba(216,170,95,0.30) !important;
  border-radius: 999px !important;
  padding: 2px 8px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  color: #D8AA5F !important;
  vertical-align: -1px !important;
  margin-left: 5px !important;
}

/* ── 7. Activity text (.post-title) — muted cream, not blue/gold ── */
.post-title,
.feeds-item .post-title,
body.night-mode .post-title {
  color: rgba(243,235,221,0.68) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}
/* Links inside post-title (group name, person name) stay blue */
.post-title a {
  color: #63B3FF !important;
  font-weight: 700 !important;
}
.post-title a:hover {
  color: #9CD2FF !important;
}

/* ── 8. Timestamp — gold ── */
.post-time,
.post-time a,
body.night-mode .post-time,
body.night-mode .post-time a {
  color: #C89B5A !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}
.post-time a:hover {
  color: #D8AA5F !important;
}

/* END v47.7 */

/* ── Post dropdown fix — v47.8 ────────────────────────────
   .post overflow was hidden, clipping the options dropdown.
   Changed to visible above; clipping now handled per-element. */

/* Keep post-header image and media clipped (not the whole card) */
.post .post-media,
.post .post-media-image,
.post .post-cover,
.post .post-header-image {
  overflow: hidden !important;
  border-radius: 10px !important;
}

/* Post dropdown menu — ensure it clears card bounds */
.post .dropdown-menu,
.feeds-item .dropdown-menu,
.post .float-end .dropdown-menu {
  z-index: 1050 !important;
  position: absolute !important;
  overflow: visible !important;
}
/* END v47.8 */

/* ═══════════════════════════════════════════════════════════
   ROOM PHOTO PROMPT BANNER — v47.9
   Shown to admins when room still has the default picture.
   Classes: .wc-room-photo-prompt / -inner / -icon / -title / -sub / -btn
   ════════════════════════════════════════════════════════ */

.wc-room-photo-prompt {
  margin: 12px 0 4px 0 !important;
  padding: 0 4px !important;
}

.wc-room-photo-prompt-inner {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  background: linear-gradient(135deg, rgba(200,155,90,0.10) 0%, rgba(200,155,90,0.05) 100%) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  border-radius: 14px !important;
  padding: 14px 18px !important;
}

.wc-room-photo-prompt-icon {
  font-size: 22px !important;
  color: #C89B5A !important;
  flex-shrink: 0 !important;
  opacity: 0.85 !important;
}

.wc-room-photo-prompt-inner > div:nth-child(2) {
  flex: 1 !important;
  min-width: 0 !important;
}

.wc-room-photo-prompt-title {
  color: #F3EBDD !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  margin-bottom: 2px !important;
}

.wc-room-photo-prompt-sub {
  color: rgba(243,235,221,0.55) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}

.wc-room-photo-prompt-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-shrink: 0 !important;
  background: linear-gradient(135deg, #C89B5A 0%, #A87B3A 100%) !important;
  color: #04080F !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  padding: 8px 16px !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: opacity 0.15s ease !important;
  border: none !important;
  text-decoration: none !important;
}

.wc-room-photo-prompt-btn:hover {
  opacity: 0.85 !important;
  color: #04080F !important;
  text-decoration: none !important;
}

/* Responsive: stack on small screens */
@media (max-width: 540px) {
  .wc-room-photo-prompt-inner {
    flex-wrap: wrap !important;
    gap: 10px !important;
  }
  .wc-room-photo-prompt-btn {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* END v47.9 */

/* ═══════════════════════════════════════════════════════════
   GROUP/ROOM PROFILE HEADER — button z-index & overflow fix v47.10
   Problem 1: .profile-cover-wrapper has overflow:hidden (Sngine base),
              which clips the camera dropdown menu (left-top button).
   Problem 2: .profile-buttons-wrapper (Joined/Boost/⋮) needs explicit
              z-index to sit above the cover image stack.
   ════════════════════════════════════════════════════════ */

/* Fix 1: Allow cover wrapper to show overflowing dropdowns.
   Clip cover image using border-radius on the image itself instead. */
.profile-cover-wrapper {
  overflow: visible !important;
}

/* Re-apply the Sngine rounded clip to the cover images directly */
.profile-cover-wrapper .js_position-cover-cropped,
.profile-cover-wrapper .js_position-cover-full {
  border-radius: 0 0 16px 16px !important;
}

/* Re-clip loader bars that live inside the cover wrapper */
.profile-cover-change-loader,
.profile-cover-position-loader {
  border-radius: 0 0 16px 16px !important;
  overflow: hidden !important;
}

/* Fix 2: Stack cover-buttons and action-buttons above the cover image */
.profile-cover-buttons {
  z-index: 10 !important;
  position: absolute !important;
}

.profile-avatar-wrapper {
  z-index: 15 !important;
}

.profile-buttons-wrapper {
  z-index: 20 !important;
  position: absolute !important;
}

/* Fix 3: Dropdowns inside profile header — above everything */
.profile-cover-wrapper .dropdown-menu,
.profile-buttons-wrapper .dropdown-menu,
.profile-avatar-wrapper .dropdown-menu {
  z-index: 1060 !important;
  position: absolute !important;
  overflow: visible !important;
}

/* END v47.10 */

/* ═══════════════════════════════════════════════════════════
   POSTS FILTER BAR — vertical centering + "All" button style v47.14
   .posts-filter contains:
     Left:  .countries-filter (or <span>) — "Recent Updates"
     Right: .float-end > .btn-group > .btn — "≡ All"
   ════════════════════════════════════════════════════════ */

/* Bar: flex row, vertically centred, space between */
.posts-filter {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  padding: 8px 14px !important;
}

/* Left label (<span> when no dropdown) — match pill height */
.posts-filter > span {
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #C89B5A !important;
  border-radius: 10px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}

/* Right float: flex so its children centre too */
.posts-filter .float-end {
  float: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-left: auto !important;
}

/* "≡ All" btn — same gold-pill as "Recent Updates" */
.posts-filter .btn-group .btn,
.posts-filter .btn-group .btn.dropdown-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #C89B5A !important;
  border-radius: 10px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  transition: background 0.18s, border-color 0.18s !important;
  line-height: 1.4 !important;
}

.posts-filter .btn-group .btn:hover,
.posts-filter .btn-group .btn.dropdown-toggle:hover {
  background: rgba(200,155,90,0.18) !important;
  border-color: rgba(200,155,90,0.55) !important;
  color: #F3EBDD !important;
}

.posts-filter .btn-group-icon {
  color: #C89B5A !important;
}

/* END v47.14 */

/* ═══════════════════════════════════════════════════════════
   MEMBERSHIP CARD — refined sidebar widget v47.15
   Targets .wc-membership-card only — does NOT affect other
   warm cards (event, guidelines, market, suggested friends).
   Real Sngine classes used: .wc-wc-header, .wc-member-row,
   .wc-member-name, .wc-badge-status, .wc-since, .wc-warm-btn
   ════════════════════════════════════════════════════════ */

/* ── Card shell ── */
.wc-membership-card {
  background: linear-gradient(180deg, #0A111D 0%, #07101A 100%) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  border-radius: 18px !important;
  padding: 16px !important;
  overflow: hidden !important;
}

/* ── Header / title ── */
.wc-membership-card .wc-wc-header {
  margin-bottom: 14px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(200,155,90,0.10) !important;
}
.wc-membership-card .wc-wc-header h6 {
  font-size: 15px !important;
  font-weight: 900 !important;
  color: #F3EBDD !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
}
.wc-membership-card .wc-wc-header h6 i {
  font-size: 15px !important;
  color: #D8AA5F !important;
}

/* ── User row: avatar + name + badge ── */
.wc-membership-card .wc-member-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 10px !important;
}
.wc-membership-card .wc-member-row img {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
}
.wc-membership-card .wc-member-row > div {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  min-width: 0 !important;
}

/* ── Username ── */
.wc-membership-card .wc-member-name {
  color: #63B3FF !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  margin: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* ── Premium Member badge — refined pill ── */
.wc-membership-card .wc-badge-status {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  width: fit-content !important;
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.24) !important;
  color: #D8AA5F !important;
  border-radius: 999px !important;
  padding: 3px 9px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}
.wc-membership-card .wc-badge-status i {
  font-size: 9px !important;
  color: #D8AA5F !important;
}

/* ── Since date ── */
.wc-membership-card .wc-since {
  color: rgba(243,235,221,0.52) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  margin: 6px 0 14px !important;
  display: block !important;
}

/* ── View Benefits button ── */
.wc-membership-card .wc-warm-btn {
  height: 38px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(7,16,26,0.78) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  color: #D8AA5F !important;
  border-radius: 12px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.01em !important;
}
.wc-membership-card .wc-warm-btn:hover {
  background: rgba(200,155,90,0.10) !important;
  border-color: rgba(216,170,95,0.42) !important;
  color: #F3EBDD !important;
}

/* END v47.15 */

/* ── Membership card: push Premium Member badge down a touch ── */
.wc-membership-card .wc-member-row > div {
  gap: 8px !important;
}

/* ── Event card: push Create Event / View Event button down ── */
.wc-warm-card .wc-event-empty .wc-warm-btn,
.wc-warm-card .wc-event-empty + .wc-warm-btn,
.wc-warm-card > .wc-warm-btn {
  margin-top: 14px !important;
}

/* END v47.16 */

/* ═══════════════════════════════════════════════════════════
   RIGHT SIDEBAR CARDS — pinned buttons v47.17
   All .wc-warm-card become flex columns so .wc-warm-btn always
   sits at the same distance from the card bottom border,
   regardless of how much content each card holds.
   ════════════════════════════════════════════════════════ */

.wc-warm-card {
  display: flex !important;
  flex-direction: column !important;
}

/* Push button to the bottom of every card */
.wc-warm-card > .wc-warm-btn,
.wc-warm-card > a.wc-warm-btn {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}

/* Content areas above the button: ensure they don't steal all flex space */
.wc-warm-card .wc-guidelines,
.wc-warm-card .wc-event-empty,
.wc-warm-card .wc-product,
.wc-warm-card .wc-seller-row,
.wc-warm-card .wc-member-row {
  flex-shrink: 0 !important;
}

/* Consistent bottom padding inside every card so button doesn't hug edge */
.wc-warm-card {
  padding-bottom: 14px !important;
}

/* Fix membership card's own button which has a class override */
.wc-membership-card .wc-warm-btn {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}

/* Restore the event empty-state button which was pushed by earlier rule */
.wc-warm-card .wc-event-empty {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  justify-content: center !important;
}
.wc-warm-card .wc-event-empty .wc-warm-btn {
  margin-top: 12px !important;
}

/* END v47.17 */

/* ═══════════════════════════════════════════════════════════
   SUGGESTED FRIENDS + ROOMS — action button fix v47.18
   1. Exclude these cards from the flex-column layout we
      applied to .wc-warm-card in v47.17 (they have no
      bottom .wc-warm-btn to pin — their "See All" is in
      the header, not the footer).
   2. Kill Bootstrap btn-light :active/:focus hollow state.
   ════════════════════════════════════════════════════════ */

/* These two cards do NOT need pinned-button flex layout */
.wc-suggested-friends-card,
.wc-suggested-groups-card {
  display: block !important;
  flex-direction: unset !important;
}

/* ── Action button: all interactive states ──────────────── */
html body .wc-suggested-friends-card .float-end button,
html body .wc-suggested-groups-card .float-end button,
html body .wc-suggested-friends-card .float-end button:hover,
html body .wc-suggested-groups-card .float-end button:hover,
html body .wc-suggested-friends-card .float-end button:focus,
html body .wc-suggested-groups-card .float-end button:focus,
html body .wc-suggested-friends-card .float-end button:active,
html body .wc-suggested-groups-card .float-end button:active,
html body .wc-suggested-friends-card .float-end button:focus-visible,
html body .wc-suggested-groups-card .float-end button:focus-visible,
html body .wc-suggested-friends-card .float-end button.active,
html body .wc-suggested-groups-card .float-end button.active {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  background: rgba(7,11,20,0.82) !important;
  color: #C89B5A !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Hover state slightly lighter */
html body .wc-suggested-friends-card .float-end button:hover,
html body .wc-suggested-groups-card .float-end button:hover {
  background: rgba(200,155,90,0.10) !important;
  border-color: rgba(216,170,95,0.42) !important;
}

/* Active/focus — same dark fill, NO transparent hollow */
html body .wc-suggested-friends-card .float-end button:active,
html body .wc-suggested-groups-card .float-end button:active,
html body .wc-suggested-friends-card .float-end button:focus,
html body .wc-suggested-groups-card .float-end button:focus,
html body .wc-suggested-friends-card .float-end button:focus-visible,
html body .wc-suggested-groups-card .float-end button:focus-visible {
  background: rgba(7,11,20,0.82) !important;
  border-color: rgba(200,155,90,0.50) !important;
}

/* ── SVG icon inside button — all states ────────────────── */
html body .wc-suggested-friends-card .float-end button svg,
html body .wc-suggested-groups-card .float-end button svg,
html body .wc-suggested-friends-card .float-end button .main-icon,
html body .wc-suggested-groups-card .float-end button .main-icon {
  width: 17px !important;
  height: 17px !important;
  color: #C89B5A !important;
  stroke: none !important;
  pointer-events: none !important;
}
html body .wc-suggested-friends-card .float-end button path,
html body .wc-suggested-groups-card .float-end button path,
html body .wc-suggested-friends-card .float-end button circle,
html body .wc-suggested-groups-card .float-end button circle,
html body .wc-suggested-friends-card .float-end button rect,
html body .wc-suggested-groups-card .float-end button rect {
  fill: #C89B5A !important;
  stroke: none !important;
}

/* ── Also kill Bootstrap focus-ring on ALL wc-warm-card
   buttons and links so nothing ever goes hollow on click ── */
.wc-warm-card button:focus,
.wc-warm-card button:focus-visible,
.wc-warm-card a:focus,
.wc-warm-card a:focus-visible {
  box-shadow: none !important;
  outline: none !important;
}
.wc-warm-card button:active,
.wc-warm-card a.wc-warm-btn:active {
  background: rgba(200,155,90,0.13) !important;
  border-color: rgba(216,170,95,0.50) !important;
  box-shadow: none !important;
}

/* END v47.18 */

/* ═══════════════════════════════════════════════════════════
   SUGGESTED CARDS — btn-light FULL STATE FIX v47.19
   Targets .btn-light by its exact class (not just `button`)
   and mirrors Bootstrap's own :not(:disabled):not(.disabled):active
   pattern so specificity beats every library rule.
   ════════════════════════════════════════════════════════ */

/* ── ALL states in one block ─────────────────────────────── */
html body .wc-suggested-friends-card .float-end .btn-light,
html body .wc-suggested-friends-card .float-end .btn-light:link,
html body .wc-suggested-friends-card .float-end .btn-light:hover,
html body .wc-suggested-friends-card .float-end .btn-light:focus,
html body .wc-suggested-friends-card .float-end .btn-light:active,
html body .wc-suggested-friends-card .float-end .btn-light:focus-visible,
html body .wc-suggested-friends-card .float-end .btn-light.active,
html body .wc-suggested-friends-card .float-end .btn-light:not(:disabled):not(.disabled):active,
html body .wc-suggested-friends-card .float-end .btn-light:not(:disabled):not(.disabled).active,
html body .wc-suggested-friends-card .float-end .btn-light.focus,
html body .wc-suggested-groups-card .float-end .btn-light,
html body .wc-suggested-groups-card .float-end .btn-light:link,
html body .wc-suggested-groups-card .float-end .btn-light:hover,
html body .wc-suggested-groups-card .float-end .btn-light:focus,
html body .wc-suggested-groups-card .float-end .btn-light:active,
html body .wc-suggested-groups-card .float-end .btn-light:focus-visible,
html body .wc-suggested-groups-card .float-end .btn-light.active,
html body .wc-suggested-groups-card .float-end .btn-light:not(:disabled):not(.disabled):active,
html body .wc-suggested-groups-card .float-end .btn-light:not(:disabled):not(.disabled).active,
html body .wc-suggested-groups-card .float-end .btn-light.focus {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border-radius: 10px !important;
  background: rgba(7,11,20,0.82) !important;
  background-color: rgba(7,11,20,0.82) !important;
  border: 1px solid rgba(200,155,90,0.28) !important;
  border-color: rgba(200,155,90,0.28) !important;
  color: #C89B5A !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  outline: none !important;
  font-size: 0 !important;
  line-height: 1 !important;
  /* Bootstrap 5 CSS custom-property overrides */
  --bs-btn-active-bg: rgba(7,11,20,0.82) !important;
  --bs-btn-active-border-color: rgba(200,155,90,0.28) !important;
  --bs-btn-active-color: #C89B5A !important;
  --bs-btn-focus-shadow-rgb: 0,0,0 !important;
}

/* Hover gets a subtle gold tint */
html body .wc-suggested-friends-card .float-end .btn-light:hover,
html body .wc-suggested-groups-card .float-end .btn-light:hover {
  background: rgba(200,155,90,0.10) !important;
  background-color: rgba(200,155,90,0.10) !important;
  border-color: rgba(216,170,95,0.42) !important;
}

/* Active/focus — darker, gold border pop — still NOT hollow */
html body .wc-suggested-friends-card .float-end .btn-light:active,
html body .wc-suggested-friends-card .float-end .btn-light:not(:disabled):not(.disabled):active,
html body .wc-suggested-groups-card .float-end .btn-light:active,
html body .wc-suggested-groups-card .float-end .btn-light:not(:disabled):not(.disabled):active {
  background: rgba(7,11,20,0.95) !important;
  background-color: rgba(7,11,20,0.95) !important;
  border-color: rgba(216,170,95,0.55) !important;
}

/* ── SVG icon — all states ── */
html body .wc-suggested-friends-card .float-end .btn-light .main-icon,
html body .wc-suggested-friends-card .float-end .btn-light svg,
html body .wc-suggested-groups-card .float-end .btn-light .main-icon,
html body .wc-suggested-groups-card .float-end .btn-light svg {
  width: 17px !important;
  height: 17px !important;
  color: #C89B5A !important;
  stroke: none !important;
  pointer-events: none !important;
  display: block !important;
}
html body .wc-suggested-friends-card .float-end .btn-light path,
html body .wc-suggested-friends-card .float-end .btn-light circle,
html body .wc-suggested-friends-card .float-end .btn-light rect,
html body .wc-suggested-friends-card .float-end .btn-light polygon,
html body .wc-suggested-groups-card .float-end .btn-light path,
html body .wc-suggested-groups-card .float-end .btn-light circle,
html body .wc-suggested-groups-card .float-end .btn-light rect,
html body .wc-suggested-groups-card .float-end .btn-light polygon {
  fill: #C89B5A !important;
  stroke: none !important;
}

/* END v47.19 */

/* ═══════════════════════════════════════════════════════════
   MARKETPLACE MOBILE FIXES v47.20
   1. Hero search bar — stack inputs vertically on mobile
   2. Content-tabs — centre icon vertically in tab link
   ════════════════════════════════════════════════════════ */

/* ── Content-tabs: centre icon (and text) in every tab link ── */
.content-tabs ul li a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
}
.content-tabs ul li a .main-icon {
  flex-shrink: 0 !important;
  display: block !important;
  /* remove any top offset from the default Sngine mr10 margin */
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* v47.20 mobile search replaced by v47.21 grid */

/* END v47.20 */

/* ═══════════════════════════════════════════════════════════
   HERO SEARCH — grid layout on mobile v47.21
   Inputs stack LEFT (top/bottom rows), Search button sits
   RIGHT spanning both rows.  No template changes needed.
   ════════════════════════════════════════════════════════ */
@media (max-width: 575px) {
  .wc-hero-search {
    display: grid !important;
    flex-direction: unset !important;
    grid-template-columns: 1fr auto !important;
    grid-template-rows: auto auto !important;
    margin: 0 12px !important;
    gap: 0 !important;
  }

  /* Top-left input: query */
  .wc-hero-search input[type="text"]:first-child {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: 46px !important;
    border-radius: 12px 0 0 0 !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(200,155,90,0.10) !important;
    font-size: 14px !important;
  }

  /* Bottom-left input: location */
  .wc-hero-search input[type="text"]:not(:first-child) {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    height: 46px !important;
    border-radius: 0 0 0 12px !important;
    border-left: 1px solid rgba(200,155,90,0.18) !important;
    border-right: none !important;
    border-top: none !important;
    font-size: 14px !important;
  }

  /* Right button — spans both rows */
  .wc-hero-search button[type="submit"] {
    grid-column: 2 !important;
    grid-row: 1 / 3 !important;
    width: 80px !important;
    height: 100% !important;
    min-height: 92px !important;
    border-radius: 0 12px 12px 0 !important;
    border-left: 1px solid rgba(200,155,90,0.65) !important;
    border-top: 1px solid rgba(200,155,90,0.65) !important;
    border-bottom: 1px solid rgba(200,155,90,0.65) !important;
    border-right: 1px solid rgba(200,155,90,0.65) !important;
    font-size: 13px !important;
    writing-mode: horizontal-tb !important;
  }
}

/* END v47.21 */

/* ═══════════════════════════════════════════════════════════
   CONTENT-TABS — vertical alignment fix v47.22
   Make the tabs strip a flex row so the left icon (tab ul)
   and right button (float-end) sit on the same centre line.
   ════════════════════════════════════════════════════════ */

.content-tabs {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
}

/* Tab list takes the remaining space */
.content-tabs > ul {
  flex: 1 1 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
}

/* Each tab li — inline-flex so the <a> can centre its icon */
.content-tabs > ul > li {
  display: inline-flex !important;
  align-items: center !important;
}

/* The tab link itself: flex-centre icon + text */
.content-tabs > ul > li > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  gap: 6px !important;
}

/* Right-side button container — strip the mt10 that pulls it down */
.content-tabs > div.float-end,
.content-tabs > .mt10.float-end {
  flex-shrink: 0 !important;
  margin-top: 0 !important;
  align-self: center !important;
  float: none !important;
  padding-left: 10px !important;
}

/* END v47.22 */

/* ═══════════════════════════════════════════════════════════
   EVENTS PAGE FIXES v47.23
   1. Mobile hero search button — remove hard min-height so
      single-input forms (Events) don't get a 92px tall button
   2. content-tabs Create Event btn-success → gold, matching
      the Create Product btn-primary styling
   ════════════════════════════════════════════════════════ */

/* ── 1. Fix button height for single-input hero search ── */
@media (max-width: 575px) {
  .wc-hero-search button[type="submit"] {
    min-height: unset !important;
    height: auto !important;
    align-self: stretch !important;
  }
}

/* ── 2. Create Event btn-success → gold (same as btn-primary) ── */
.content-tabs .btn-success,
.content-tabs .btn-success:focus,
.content-tabs .btn-icon.btn-success,
.content-tabs .btn-icon.btn-success:focus,
html body .content-tabs .btn-sm.btn-icon.btn-success,
html body .content-tabs .btn-sm.btn-icon.btn-success:focus {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  background-color: #D8AA5F !important;
  color: #07101B !important;
  border: 1px solid rgba(255,215,150,0.38) !important;
  border-radius: 12px !important;
  font-weight: 800 !important;
  box-shadow: 0 6px 18px rgba(200,155,90,0.18) !important;
}
.content-tabs .btn-success:hover,
.content-tabs .btn-icon.btn-success:hover,
html body .content-tabs .btn-sm.btn-icon.btn-success:hover {
  filter: brightness(1.08) !important;
  color: #07101B !important;
}
/* Icon inside the button */
.content-tabs .btn-icon.btn-success i,
.content-tabs .btn-icon.btn-success .fa,
.content-tabs .btn-icon.btn-success .fas,
.content-tabs .btn-icon.btn-success .fa-plus-circle {
  color: #07101B !important;
}

/* END v47.23 */

/* ═══════════════════════════════════════════════════════════
   SINGLE-PHOTO FEED POST — cap height on mobile v47.24
   .pg_1x is the Sngine wrapper for a post with exactly 1 photo.
   Without a max-height the image renders at full native height,
   which can fill the entire viewport on portrait mobile.
   Cap to 420px and crop to cover so portrait shots don't tower.
   ════════════════════════════════════════════════════════ */

/* Desktop: give a generous cap so tall images don't dominate */
.pg_1x {
  max-height: 560px !important;
  overflow: hidden !important;
  border-radius: 12px !important;
}
.pg_1x img {
  width: 100% !important;
  max-height: 560px !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  border-radius: 12px !important;
}

/* Mobile: tighter cap so the photo doesn't fill the viewport */
@media (max-width: 767px) {
  .pg_1x {
    max-height: 400px !important;
  }
  .pg_1x img {
    max-height: 400px !important;
  }
}

/* END v47.24 */

/* ═══════════════════════════════════════════════════════════
   v47.25 — two fixes:
   1. Blog / story card cover image height cap
   2. Global .form-select dark navy override
   ════════════════════════════════════════════════════════ */

/* ── 1. Blog/story card cover image cap ───────────────────
   .blog-container .blog-image renders a cover photo with
   object-fit:cover but no height constraint, so portrait
   images fill the entire viewport on mobile.
   Cap the wrapper + image so they're always card-sized. */

.blog-container .blog-image {
  max-height: 340px !important;
  overflow: hidden !important;
}
.blog-container .blog-image img {
  max-height: 340px !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
}

/* Primary/featured blog card (first item, larger) can be taller */
.blog-container.primary .blog-image {
  max-height: 440px !important;
}
.blog-container.primary .blog-image img {
  max-height: 440px !important;
}

/* Mobile: tighten both */
@media (max-width: 767px) {
  .blog-container .blog-image,
  .blog-container .blog-image img {
    max-height: 260px !important;
  }
  .blog-container.primary .blog-image,
  .blog-container.primary .blog-image img {
    max-height: 300px !important;
  }
}

/* ── 2. Global .form-select dark navy ─────────────────────
   Bootstrap 5 .form-select has its own background / border
   that doesn't inherit from .form-control overrides.
   Apply dark navy universally and keep the native arrow. */

.form-select {
  background-color: #111A26 !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  color: #F3EBDD !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  /* keep bootstrap's native dropdown arrow; just recolour it to cream */
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23F3EBDD' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
}

.form-select:focus {
  background-color: #111A26 !important;
  border-color: rgba(200,155,90,0.42) !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.09) !important;
  color: #F3EBDD !important;
  outline: none !important;
}

.form-select option,
select option {
  background: #111A26 !important;
  color: #F3EBDD !important;
}

/* END v47.25 */

/* ═══════════════════════════════════════════════════════════
   v47.27 — Kill all remaining Bootstrap green (btn-success /
   bg-success / text-success-badge / blog-category) site-wide
   ════════════════════════════════════════════════════════ */

/* ── Global btn-success → gold ───────────────────────────
   Covers: joined-group ✓ button in feed, funding donate,
   job apply, course enroll, any other btn-success not
   already scoped to a specific container. */

.btn-success,
.btn-success:focus,
.btn-success:active,
.btn-success.active,
button.btn-success,
a.btn-success {
  background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
  border-color: #B98234 !important;
  color: #07101B !important;
  font-weight: 700 !important;
}

.btn-success:hover {
  background: linear-gradient(180deg, #E0B96A 0%, #C89040 100%) !important;
  border-color: #C89040 !important;
  color: #07101B !important;
  filter: none !important;
}

/* Icon/SVG inside a btn-success */
.btn-success i,
.btn-success .fa,
.btn-success .fas,
.btn-success svg path,
.btn-success .svg-container svg path {
  color: #07101B !important;
  fill: #07101B !important;
}

/* ── bg-success badges → gold ────────────────────────────*/
.badge.bg-success,
span.badge.bg-success,
.bg-success {
  background-color: rgba(200,155,90,0.18) !important;
  color: #C89B5A !important;
  border: 1px solid rgba(200,155,90,0.35) !important;
}

/* ── text-success (non-price contexts) → gold ────────────
   Price / "In stock" text-success is handled below but the
   generic .text-success should also be gold globally. */
.text-success {
  color: #C89B5A !important;
}

/* Preserve "In stock" / product price gold (already set) */
body.night-mode .post-product-container .badge.bg-light.text-success,
.post-product-container .badge.bg-light.text-success,
body.night-mode .card.product .badge.bg-light.text-success {
  color: #C89B5A !important;
  background: rgba(200,155,90,0.12) !important;
}

/* ── blog-category pill → gold (stronger specificity) ───
   The "Wool Encounters" / story category pill in the post
   byline uses .blog-category. Add html/body prefix to
   beat any Sngine base-CSS !important rule. */

html body .blog-category,
html body.night-mode .blog-category,
html body .post-header .blog-category,
html body .post-text .blog-category,
html body .post-media-image-meta .blog-category {
  background: rgba(200,155,90,0.14) !important;
  border: 1px solid rgba(200,155,90,0.40) !important;
  color: #C89B5A !important;
  border-radius: 999px !important;
  padding: 4px 10px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-decoration: none !important;
  display: inline-block !important;
}

html body .blog-category:hover,
html body.night-mode .blog-category:hover {
  background: rgba(200,155,90,0.26) !important;
  color: #F3EBDD !important;
}

/* END v47.27 */

/* ═══════════════════════════════════════════════════════════
   v47.28 — Profile sidebar Photos widget: square tiles
   Sngine base CSS gives .pg_photo (small, no .large) a
   border-radius: 50% making the thumbnails appear as circles.
   Override to square, and fix Bootstrap col-4 constraints
   inside the CSS-grid container.
   ════════════════════════════════════════════════════════ */

/* 1. Grid container: always 3 equal columns */
.profile-photos-preview-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 7px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

/* 2. Bootstrap col-* inside the grid: strip width/padding
      so they act as plain grid items */
.profile-photos-preview-grid > [class*="col-"],
.profile-photos-preview-grid > div {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 3. The pg_photo link: square tile, never a circle */
.profile-photos-preview-grid .pg_photo,
.profile-photos-preview-grid .pg_photo.large,
body.night-mode .profile-photos-preview-grid .pg_photo {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  padding-top: 0 !important;
  height: auto !important;
  min-height: 68px !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  border-radius: 10px !important;       /* NOT 50% */
  overflow: hidden !important;
  border: none !important;
  box-shadow: none !important;
}

/* 4. Kill any Sngine rule that makes small pg_photo circular */
html body .profile-photos-preview-grid a.pg_photo,
html body.night-mode .profile-photos-preview-grid a.pg_photo {
  border-radius: 10px !important;
}

/* END v47.28 */

/* ── Bottom nav bar: background + link colours only ── */
.footer-bottom-bar,
body.night-mode .footer-bottom-bar {
  background: #04080F !important;
  border-top: 1px solid rgba(200,155,90,0.18) !important;
}

/* inactive links */
.footer-bottom-bar-links > .link > a,
body.night-mode .footer-bottom-bar-links > .link > a {
  color: rgba(243,235,221,0.45) !important;
}
.footer-bottom-bar-links .link > a > .title,
body.night-mode .footer-bottom-bar-links .link > a > .title {
  color: rgba(243,235,221,0.45) !important;
}

/* active link */
.footer-bottom-bar-links > .link.active > a,
body.night-mode .footer-bottom-bar-links > .link.active > a {
  color: #C89B5A !important;
}
.footer-bottom-bar-links > .link.active > a > .title,
body.night-mode .footer-bottom-bar-links > .link.active > a > .title {
  color: #C89B5A !important;
  font-weight: 600 !important;
}

/* hover */
.footer-bottom-bar-links > .link > a:hover,
body.night-mode .footer-bottom-bar-links > .link > a:hover {
  background: rgba(200,155,90,0.08) !important;
}

/* ── Publisher quick-adds: constrain oversized SVG icons ── */
.footer-quick-adds .add-quick-item .svg-container,
.footer-quick-adds .add-quick-item .main-icon {
  width: 36px !important;
  height: 36px !important;
  max-width: 36px !important;
  max-height: 36px !important;
}
.footer-quick-adds .add-quick-item .svg-container svg,
.footer-quick-adds .add-quick-item .main-icon svg {
  width: 36px !important;
  height: 36px !important;
}
.footer-quick-adds .add-quick-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ── wc-composer-pills: Photo / Video / Story / Listing buttons ── */
.wc-composer-pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  padding: 8px 12px 4px !important;
}
.wc-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  background: rgba(200,155,90,0.08) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  color: rgba(243,235,221,0.80) !important;
  font-size: .78rem !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: background 0.15s, border-color 0.15s !important;
  white-space: nowrap !important;
}
.wc-pill:hover,
.wc-pill.active {
  background: rgba(200,155,90,0.16) !important;
  border-color: rgba(200,155,90,0.45) !important;
  color: #C89B5A !important;
}
.wc-pill-icon {
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  max-width: 15px !important;
  max-height: 15px !important;
  display: inline-block !important;
  vertical-align: middle !important;
  stroke: currentColor !important;
  flex-shrink: 0 !important;
}
.wc-composer-hint {
  font-size: .73rem !important;
  color: rgba(243,235,221,0.35) !important;
  padding: 2px 14px 8px !important;
  margin: 0 !important;
}

/* ── Hide duplicate upload/tools grid (pills at top cover these) ── */
.publisher-tools-tabs {
  display: none !important;
}

/* ── Share Post button — right-aligned, gold branded ── */
.publisher-footer-buttons {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 14px !important;
  border-top: 1px solid rgba(200,155,90,0.12) !important;
}
.wc-post-btn-wrap {
  margin-left: auto !important;
}
.wc-post-btn {
  background: linear-gradient(135deg, #C89B5A 0%, #a8793e 100%) !important;
  color: #04080F !important;
  font-weight: 700 !important;
  font-size: .82rem !important;
  letter-spacing: .03em !important;
  padding: 8px 22px !important;
  border: none !important;
  border-radius: 999px !important;
  box-shadow: 0 2px 8px rgba(200,155,90,0.28) !important;
  transition: filter 0.15s, box-shadow 0.15s !important;
  cursor: pointer !important;
}
.wc-post-btn:hover:not(:disabled) {
  filter: brightness(1.08) !important;
  box-shadow: 0 4px 14px rgba(200,155,90,0.40) !important;
}
.wc-post-btn:disabled {
  opacity: .45 !important;
  cursor: not-allowed !important;
}

/* ── Poll "Add an option..." inputs — dark navy instead of greyish-blue ── */
.publisher .publisher-meta input,
body.night-mode .publisher .publisher-meta input,
.publisher-meta input {
  background: rgba(4,8,15,0.70) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  color: #F3EBDD !important;
  border-radius: 12px !important;
}
.publisher .publisher-meta input:focus,
body.night-mode .publisher .publisher-meta input:focus {
  border-color: rgba(200,155,90,0.45) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(200,155,90,0.10) !important;
}
.publisher .publisher-meta input::placeholder,
body.night-mode .publisher .publisher-meta input::placeholder {
  color: rgba(243,235,221,0.35) !important;
}

/* ══════════════════════════════════════════
   SEARCH PAGE — Wooly Club v50.3
   Real classes: .js_search-form, .nav-pills.nav-search
   ══════════════════════════════════════════ */

/* Form panel wrapper */
.js_search-form {
  background: linear-gradient(180deg, #0A111D, #07101A) !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  border-radius: 16px !important;
  padding: 10px !important;
  margin-bottom: 18px !important;
}
.js_search-form .input-group {
  gap: 8px !important;
  flex-wrap: nowrap !important;
}
.js_search-form .input-group .form-control {
  border-radius: 12px !important;
  height: 48px !important;
  background: #05080F !important;
  border: 1px solid rgba(200,155,90,0.16) !important;
  color: #F3EBDD !important;
  font-size: 15px !important;
  font-weight: 500 !important;
}
.js_search-form .input-group .form-control:focus {
  border-color: rgba(216,170,95,0.42) !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.08) !important;
  background: rgba(5,8,15,0.90) !important;
}
.js_search-form .input-group .form-control::placeholder {
  color: rgba(243,235,221,0.35) !important;
}

/* Search button — targets btn-light (actual class used in template) */
.js_search-form .btn-light,
.js_search-form .btn {
  height: 48px !important;
  border-radius: 12px !important;
  background: rgba(7,16,26,0.85) !important;
  border: 1px solid rgba(200,155,90,0.32) !important;
  color: #D8AA5F !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  padding: 0 26px !important;
  transition: background 0.15s, border-color 0.15s !important;
  white-space: nowrap !important;
}
.js_search-form .btn-light:hover,
.js_search-form .btn:hover {
  background: rgba(200,155,90,0.10) !important;
  border-color: rgba(216,170,95,0.50) !important;
  color: #F3EBDD !important;
}

/* ── Category tabs ─ nav-pills.nav-search ── */
.nav-pills.nav-search {
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin-bottom: 18px !important;
}
.nav-pills.nav-search .nav-item {
  margin: 0 !important;
  flex: 1 1 auto !important;
}
.nav-pills.nav-search .nav-link,
body.night-mode .nav-pills.nav-search .nav-link:not(.active) {
  display: block !important;
  text-align: center !important;
  height: 42px !important;
  line-height: 42px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: #0A111D !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  color: rgba(200,155,90,0.75) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  transition: background 0.15s, border-color 0.15s, color 0.15s !important;
  white-space: nowrap !important;
}
.nav-pills.nav-search .nav-link:hover,
body.night-mode .nav-pills.nav-search .nav-link:not(.active):hover {
  background: rgba(200,155,90,0.08) !important;
  border-color: rgba(200,155,90,0.28) !important;
  color: #D8AA5F !important;
}

/* Active tab — gold, NOT blue */
.nav-pills.nav-search .nav-link.active,
.nav-pills.nav-search .nav-link.active:hover,
.nav-pills.nav-search .show > .nav-link {
  background: linear-gradient(180deg, rgba(216,170,95,0.18), rgba(200,155,90,0.10)) !important;
  border: 1px solid rgba(216,170,95,0.44) !important;
  color: #F3EBDD !important;
  box-shadow: inset 0 -2px 0 rgba(216,170,95,0.55) !important;
}

/* Mobile: horizontal scroll tabs */
@media (max-width: 768px) {
  .js_search-form .btn-light,
  .js_search-form .btn {
    height: 44px !important;
    padding: 0 16px !important;
    font-size: 13px !important;
  }
  .js_search-form .input-group .form-control {
    height: 44px !important;
  }
  .nav-pills.nav-search {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
    padding-bottom: 4px !important;
  }
  .nav-pills.nav-search::-webkit-scrollbar { display: none !important; }
  .nav-pills.nav-search .nav-item {
    flex: 0 0 auto !important;
    min-width: 100px !important;
  }
  .nav-pills.nav-search .nav-link {
    height: 38px !important;
    line-height: 38px !important;
    font-size: 13px !important;
  }
}


/* ── Search page: hide right-panel widget blue box ── */
/* .wc-search-header is a sibling of the container on search.tpl only */
.wc-search-header ~ .container .col-lg-4,
.wc-search-header ~ .container-fluid .col-lg-4 {
  display: none !important;
}
/* Expand results to full width */
.wc-search-header ~ .container .col-lg-8,
.wc-search-header ~ .container-fluid .col-lg-8 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}



/* ══════════════════════════════════════════
   AI / Real filter bar — 3 separate pills
   ══════════════════════════════════════════ */
.wc-ai-filter-bar {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin-bottom: 16px !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
}
.wc-af-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  height: 36px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  border: 1.5px solid rgba(200,155,90,0.45) !important;
  background: rgba(4,8,15,0.6) !important;
  color: rgba(200,155,90,0.75) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .4px !important;
  cursor: pointer !important;
  transition: background .15s, border-color .15s, color .15s, box-shadow .15s !important;
  white-space: nowrap !important;
}
.wc-af-btn:hover {
  background: rgba(200,155,90,0.10) !important;
  border-color: rgba(200,155,90,0.65) !important;
  color: #D8AA5F !important;
}
.wc-af-btn.active {
  background: linear-gradient(160deg,rgba(216,170,95,.22),rgba(200,155,90,.12)) !important;
  border-color: #C89B5A !important;
  color: #F3EBDD !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.12), 0 2px 8px rgba(0,0,0,.3) !important;
}

/* ── gallery.tpl / watch.tpl filter links (wc-ai-filter-btn) ── */
.wc-ai-filter-bar {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
}
.wc-ai-filter-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  height: 36px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  border: 1.5px solid rgba(200,155,90,0.45) !important;
  background: rgba(4,8,15,0.6) !important;
  color: rgba(200,155,90,0.75) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .4px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: background .15s, border-color .15s, color .15s, box-shadow .15s !important;
  white-space: nowrap !important;
}
.wc-ai-filter-btn:hover {
  background: rgba(200,155,90,0.10) !important;
  border-color: rgba(200,155,90,0.65) !important;
  color: #D8AA5F !important;
  text-decoration: none !important;
}
.wc-ai-filter-btn.active {
  background: linear-gradient(160deg,rgba(216,170,95,.22),rgba(200,155,90,.12)) !important;
  border-color: #C89B5A !important;
  color: #F3EBDD !important;
  box-shadow: 0 0 0 3px rgba(200,155,90,0.12), 0 2px 8px rgba(0,0,0,.3) !important;
}

/* ── Chat textarea scrollbar — match dark navy ── */
.wc-msg-right .chat-form-message textarea::-webkit-scrollbar,
.chat-conversations::-webkit-scrollbar { width: 4px !important; }
.wc-msg-right .chat-form-message textarea::-webkit-scrollbar-track,
.chat-conversations::-webkit-scrollbar-track { background: #04080F !important; }
.wc-msg-right .chat-form-message textarea::-webkit-scrollbar-thumb,
.chat-conversations::-webkit-scrollbar-thumb {
  background: rgba(200,155,90,0.22) !important;
  border-radius: 4px !important;
}
.wc-msg-right .chat-form-message textarea {
  scrollbar-color: rgba(200,155,90,0.22) #04080F !important;
  scrollbar-width: thin !important;
}
.chat-conversations {
  scrollbar-color: rgba(200,155,90,0.22) transparent !important;
  scrollbar-width: thin !important;
}
/* Also hide the outer chat wrapper scrollbar bleed */
.wc-msg-right,
.x-form.chat-form {
  overflow: hidden !important;
}

/* ── Hide any JS-injected panel below hero search (v52.2) ── */
.wc-hero-inner > *:nth-child(n+4),
.wc-hero-search + *,
.wc-hero-search ~ div,
.wc-hero-search .dropdown-menu,
.wc-hero-search .search-results,
.wc-hero-search .live-results,
.wc-stories-header .dropdown-menu,
.wc-stories-header .dropdown-widget { display: none !important; }

/* ====================================================
   MOBILE PROFILE HEADER FIX — v52.3 patch
   Real Sngine classes from profile.tpl:
   profile-header / profile-cover-wrapper /
   profile-avatar-wrapper / profile-name-wrapper /
   profile-buttons-wrapper / profile-tabs-wrapper
   ==================================================== */

/* 1. Profile header outer — allow avatar to overflow cover */
@media (max-width: 768px) {
  .profile-header {
    overflow: visible !important;
    background: #05080F !important;
    margin-bottom: 8px !important;
    padding-bottom: 0 !important;
    border-radius: 0 0 18px 18px !important;
    position: relative !important;
  }
}

/* 2. Cover image */
@media (max-width: 768px) {
  .profile-cover-wrapper {
    height: 200px !important;
    border-radius: 0 0 18px 18px !important;
    overflow: hidden !important;
    background-size: cover !important;
    background-position: center !important;
  }
}

/* 3. Avatar — centered, straddles cover bottom */
@media (max-width: 768px) {
  .profile-avatar-wrapper {
    position: absolute !important;
    top: 140px !important;        /* cover(200) - avatar_half(60) = 140 */
    left: 50% !important;
    transform: translate(-50%) !important;
    width: 120px !important;
    height: 120px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: #05080F !important;
    border: none !important;
    box-shadow: none !important;
    z-index: 4 !important;
    box-sizing: border-box !important;
  }
  .profile-avatar-wrapper > img {
    width: 100% !important;
    height: 100% !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: none !important;
    box-shadow: none !important;
    display: block !important;
  }
}

/* 4. Name wrapper — padding-top = avatar bottom offset + gap */
@media (max-width: 768px) {
  .profile-name-wrapper {
    background: #05080F !important;
    padding-top: 74px !important;  /* avatar hangs 60px below cover + 14px gap */
    padding-bottom: 12px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    text-align: center !important;
    position: relative !important;
    z-index: 2 !important;
    border-radius: 0 !important;
  }
  .profile-name-wrapper a:not(.badge) {
    color: #D8AA5F !important;
    font-weight: 900 !important;
    font-size: 21px !important;
    line-height: 1.2 !important;
  }
}

/* 5. Action buttons — in normal flow, no absolute/floating over tabs */
@media (max-width: 768px) {
  .profile-buttons-wrapper {
    position: relative !important;
    bottom: auto !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;

    background: linear-gradient(180deg, #0A111D 0%, #07101A 100%) !important;
    border: 1px solid rgba(200,155,90,0.18) !important;
    border-radius: 18px !important;

    margin: 0 14px 12px !important;
    padding: 10px !important;

    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    justify-content: center !important;
    align-items: center !important;

    z-index: 2 !important;
    box-sizing: border-box !important;
  }

  .profile-buttons-wrapper .btn {
    height: 44px !important;
    min-height: 44px !important;
    border-radius: 12px !important;
    padding: 0 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
    white-space: nowrap !important;
  }

  /* Friend/follow confirmed (success = green → gold on Wooly) */
  .profile-buttons-wrapper .btn-success {
    background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
    border: none !important;
    color: #07101B !important;
  }
  .profile-buttons-wrapper .btn-success i,
  .profile-buttons-wrapper .btn-success svg { color: #07101B !important; }

  /* Primary (confirm friend request) */
  .profile-buttons-wrapper .btn-primary {
    background: linear-gradient(180deg, #D8AA5F 0%, #B98234 100%) !important;
    border: none !important;
    color: #07101B !important;
  }
  .profile-buttons-wrapper .btn-primary i,
  .profile-buttons-wrapper .btn-primary svg { color: #07101B !important; }

  /* Light / icon (follow, message, ellipsis, edit) */
  .profile-buttons-wrapper .btn-light,
  .profile-buttons-wrapper .btn-icon {
    background: rgba(7,11,20,0.85) !important;
    border: 1px solid rgba(200,155,90,0.28) !important;
    color: #C89B5A !important;
  }
  .profile-buttons-wrapper .btn-light i,
  .profile-buttons-wrapper .btn-light svg,
  .profile-buttons-wrapper .btn-icon i,
  .profile-buttons-wrapper .btn-icon svg {
    color: #C89B5A !important;
    stroke: #C89B5A !important;
  }

  /* Danger (decline request) */
  .profile-buttons-wrapper .btn-danger {
    background: rgba(160,35,35,0.82) !important;
    border: 1px solid rgba(220,60,60,0.40) !important;
    color: #fff !important;
  }

  /* Rounded-pill → rounded-corner on mobile */
  .profile-buttons-wrapper .rounded-pill {
    border-radius: 12px !important;
  }
}

/* 6. Profile tabs — sit BELOW buttons with clear spacing, never overlapping */
@media (max-width: 768px) {
  .profile-tabs-wrapper {
    position: relative !important;
    z-index: 1 !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;

    margin: 0 14px 14px !important;
    padding: 0 8px !important;

    background: linear-gradient(180deg, #0A111D 0%, #07101A 100%) !important;
    border: 1px solid rgba(200,155,90,0.16) !important;
    border-radius: 18px !important;

    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .profile-tabs-wrapper::-webkit-scrollbar { display: none !important; }

  .profile-tabs-wrapper > a {
    flex: 0 0 auto !important;
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: rgba(243,235,221,0.65) !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    transition: color 0.18s, background 0.18s !important;
  }

  .profile-tabs-wrapper > a.active {
    color: #D8AA5F !important;
    border-bottom: 2px solid #C89B5A !important;
    background: rgba(200,155,90,0.07) !important;
  }

  .profile-tabs-wrapper > a:hover {
    color: #F3EBDD !important;
    background: rgba(200,155,90,0.05) !important;
  }

  .profile-tabs-wrapper > a svg {
    color: #C89B5A !important;
    stroke: #C89B5A !important;
    fill: #C89B5A !important;
  }

  .profile-tabs-wrapper > a.active svg {
    color: #D8AA5F !important;
    stroke: #D8AA5F !important;
    fill: #D8AA5F !important;
  }
}
/* ── END mobile profile header fix ── */

/* ── Search page form fix (search.tpl uses Bootstrap input-group, not wc-hero-search) ── */
.wc-search-header + * .js_search-form,
.js_search-form:not(.wc-hero-search) {
  background: linear-gradient(180deg, #0A111D 0%, #07101A 100%) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-radius: 18px !important;
  padding: 7px !important;
  box-shadow: none !important;
  margin-bottom: 16px !important;
}
.js_search-form:not(.wc-hero-search) .form-group { margin: 0 !important; }
.js_search-form:not(.wc-hero-search) .input-group {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
}
.js_search-form:not(.wc-hero-search) .form-control {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  color: #F3EBDD !important;
  font-size: 15px !important;
  height: 44px !important;
  padding: 0 12px !important;
  border-radius: 0 !important;
}
.js_search-form:not(.wc-hero-search) .form-control:focus {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.js_search-form:not(.wc-hero-search) .form-control::placeholder {
  color: rgba(243,235,221,0.38) !important;
}
.js_search-form:not(.wc-hero-search) .btn {
  height: 44px !important;
  min-width: 100px !important;
  background: rgba(200,155,90,0.10) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  border-radius: 12px !important;
  color: #D8AA5F !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  flex-shrink: 0 !important;
  white-space: nowrap !important;
}
.js_search-form:not(.wc-hero-search) .btn:hover {
  background: rgba(200,155,90,0.18) !important;
  border-color: rgba(216,170,95,0.50) !important;
}
/* ── END search page form fix ── */

/* ── Mobile hero search overflow/clipping fix ── */

/* Tablet (≤991px): search-form heroes expand to content height */
@media (max-width: 991px) {
  .wc-rooms-header,
  .wc-market-header,
  .wc-events-header {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 44px 0 36px !important;
    overflow: visible !important;
    align-items: flex-start !important;
  }
}

/* Mobile (≤575px): all search-form heroes auto height */
@media (max-width: 575px) {
  .wc-stories-header,
  .wc-rooms-header,
  .wc-events-header {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 36px 0 28px !important;
    overflow: visible !important;
    align-items: flex-start !important;
  }

  /* Market needs extra room for two inputs */
  .wc-market-header {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 36px 0 28px !important;
    overflow: visible !important;
    align-items: flex-start !important;
  }

  /* Hero search panel: full width, constrained */
  .wc-hero-search {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin: 0 14px !important;
    box-sizing: border-box !important;
  }

  /* Market: stack the two inputs vertically, button full-width below */
  .wc-market-header .wc-hero-search {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    padding: 0 !important;
  }
  .wc-market-header .wc-hero-search input[type="text"] {
    width: 100% !important;
    min-width: 0 !important;
    height: 46px !important;
    padding: 0 14px !important;
    border-radius: 14px 14px 0 0 !important;
    border-right: 1px solid rgba(200,155,90,0.30) !important;
    border-bottom: none !important;
    flex: none !important;
  }
  /* Second input (location) stacks below query */
  .wc-market-header .wc-hero-search input[type="text"]:not(:first-child) {
    border-left: 1px solid rgba(200,155,90,0.30) !important;
    border-top: 1px solid rgba(200,155,90,0.20) !important;
    border-right: 1px solid rgba(200,155,90,0.30) !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    padding-left: 14px !important;
    margin-left: 0 !important;
    margin-top: 0 !important;
  }
  .wc-market-header .wc-hero-search button[type="submit"] {
    width: 100% !important;
    height: 46px !important;
    min-width: 0 !important;
    padding: 0 !important;
    border-radius: 0 0 14px 14px !important;
    border-left: 1px solid rgba(200,155,90,0.30) !important;
    border-top: 1px solid rgba(200,155,90,0.20) !important;
  }
}
/* ── END mobile hero overflow fix ── */

/* ── WC Gallery Upload Button (v1.0) ── */
.wc-gallery-upload-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: linear-gradient(135deg, #C89B5A 0%, #a87d3e 100%);
  color: #F3EBDD !important;
  border: none;
  border-radius: 20px;
  padding: 7px 18px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  margin-top: 10px;
  transition: opacity 0.2s, transform 0.15s;
  letter-spacing: 0.3px;
  text-decoration: none;
  white-space: nowrap;
  user-select: none;
}
.wc-gallery-upload-btn:hover {
  opacity: 0.87;
  transform: translateY(-1px);
  color: #F3EBDD !important;
}
.wc-gallery-upload-btn.wc-uploading {
  opacity: 0.55;
  cursor: not-allowed;
  pointer-events: none;
}
.wc-gallery-upload-progress {
  margin-top: 8px;
  height: 4px;
  border-radius: 2px;
  background: rgba(200,155,90,0.18);
  width: 100%;
  max-width: 220px;
  overflow: hidden;
}
.wc-gallery-upload-progress .progress-bar {
  background: linear-gradient(90deg, #C89B5A, #f0c878);
  border-radius: 2px;
  height: 100%;
  transition: width 0.2s ease;
}
/* ── END WC Gallery Upload Button ── */

/* ── WC Gallery Upload bar note (v1.1) ── */
.wc-gallery-upload-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.wc-upload-note {
  font-size: 11.5px;
  color: rgba(200,155,90,0.70);
  font-style: italic;
}
/* ── END WC Gallery Upload bar note ── */

/* ── Plyr video player: prevent zoom/crop ── */
.plyr video,
.plyr__video-wrapper video {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
}
.plyr__video-wrapper {
  background: #000 !important;
}
/* Fullscreen: still contain */
:-webkit-full-screen .plyr video,
:-webkit-full-screen .plyr__video-wrapper video,
:fullscreen .plyr video,
:fullscreen .plyr__video-wrapper video {
  object-fit: contain !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
}


/* ── WC Thumb Spinner ── */
.wc-thumb-spinner{width:32px;height:32px;border:3px solid rgba(200,155,90,0.3);border-top-color:#C89B5A;border-radius:50%;animation:wcSpin 0.8s linear infinite;}
@keyframes wcSpin{to{transform:rotate(360deg);}}



/* ===================================================
   FIX v3: Messages — seen/time correct stack
   Root cause: 11px font > original 10px, so 18px gap between
   .time (margin-top:2px) and .seen (margin-top:18px) is not enough.
   Also padding-bottom approach broke top:100% calculation.
   Also .conversation margin-bottom:20px too tight for time+seen.
   =================================================== */

/* Reset padding-bottom (our v2 mistake) */
.wc-msg-right .conversation-body {
  padding-bottom: 0 !important;
}

/* .time — keep absolute below bubble, fix width to auto */
.wc-msg-right .conversation-body .time {
  position: absolute !important;
  top: 100% !important;
  bottom: auto !important;
  margin-top: 3px !important;
  width: auto !important;
  max-width: 100%;
  white-space: nowrap;
}
.wc-msg-right .conversation:not(.right) .conversation-body .time {
  left: 0 !important;
  right: auto !important;
}
.wc-msg-right .conversation.right .conversation-body .time {
  left: auto !important;
  right: 0 !important;
  text-align: right !important;
}

/* .seen — stack below .time with enough gap for 11px font */
.wc-msg-right .conversation-body .seen {
  position: absolute !important;
  top: 100% !important;
  bottom: auto !important;
  margin-top: 22px !important;
  width: auto !important;
  max-width: 100%;
  white-space: nowrap;
}
.wc-msg-right .conversation:not(.right) .conversation-body .seen {
  left: 0 !important;
  right: auto !important;
  text-align: left !important;
}
.wc-msg-right .conversation.right .conversation-body .seen {
  right: 0 !important;
  left: auto !important;
  text-align: right !important;
}

/* Give each .conversation enough room so time+seen don't bleed into next bubble */
.wc-msg-right .conversation {
  margin-bottom: 44px !important;
}

/* ===================================================
   END FIX v3
   =================================================== */


/* ===================================================
   FLOATING CHATBOX — Wooly Club dark-navy/gold/cream theme
   Matches /messages page branding. Overrides default purple
   header-bg-color and white backgrounds throughout.
   =================================================== */

/* ── Outer widget shell ── */
.chat-widget.chat-box,
.chat-widget.fresh {
  background: linear-gradient(180deg, rgba(16,23,34,0.98) 0%, rgba(7,11,20,0.98) 100%) !important;
  border: 1px solid rgba(200,155,90,0.22) !important;
  border-bottom: none !important;
  border-radius: 16px 16px 0 0 !important;
  box-shadow: 0 -4px 32px rgba(0,0,0,0.40) !important;
}

/* ── Header ── */
.chat-widget.chat-box .chat-widget-head,
.chat-widget.fresh .chat-widget-head {
  background: linear-gradient(180deg, rgba(18,26,38,0.99) 0%, rgba(12,18,28,0.99) 100%) !important;
  border-bottom: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 16px 16px 0 0 !important;
  padding: 10px 14px !important;
}

/* ── Name in header ── */
.chat-widget.chat-box .chat-user-card .name,
.chat-widget.chat-box .chat-user-card .name > span,
.chat-widget.fresh .chat-user-card .name {
  color: #F3EBDD !important;
  font-weight: 700 !important;
  font-size: 14px !important;
}

/* Link wrapper on the user card */
.chat-widget.chat-box .chat-user-card,
.chat-widget.fresh .chat-user-card {
  color: #F3EBDD !important;
  text-decoration: none !important;
}

/* Online status dot border fix against dark bg */
.chat-widget.chat-box .chat-user-card .online-status {
  border-color: rgba(12,18,28,1) !important;
}

/* ── Header action buttons ── */
.chat-widget.chat-box .chat-head-btn,
.chat-widget.fresh .chat-head-btn {
  background: rgba(200,155,90,0.10) !important;
  border-radius: 8px !important;
}
.chat-widget.chat-box .chat-head-btn:hover,
.chat-widget.fresh .chat-head-btn:hover {
  background: rgba(200,155,90,0.22) !important;
}
.chat-widget.chat-box .chat-head-btn svg path,
.chat-widget.chat-box .chat-head-btn svg circle,
.chat-widget.chat-box .chat-head-btn svg rect,
.chat-widget.fresh .chat-head-btn svg path,
.chat-widget.fresh .chat-head-btn svg circle {
  stroke: #C89B5A !important;
}
.chat-widget.chat-box .chat-head-btn .main-icon,
.chat-widget.fresh .chat-head-btn .main-icon {
  color: #C89B5A !important;
}

/* ── Widget content (body) ── */
.chat-widget.chat-box .chat-widget-content,
.chat-widget.fresh .chat-widget-content {
  background: rgba(7,11,20,0.96) !important;
}

/* ── Message scroll area ── */
.chat-widget.chat-box .chat-conversations,
.chat-widget.fresh .chat-conversations {
  background: rgba(7,11,20,0.96) !important;
  padding: 10px 10px !important;
}

/* ── Typing indicator ── */
.chat-widget.chat-box .chat-typing,
.chat-widget.fresh .chat-typing {
  background: rgba(7,11,20,0.96) !important;
  color: rgba(243,235,221,0.45) !important;
  border-top: 1px solid rgba(200,155,90,0.08) !important;
}

/* ── To: field (new message) ── */
.chat-widget.fresh .chat-to {
  background: rgba(12,18,28,0.98) !important;
  border-bottom: 1px solid rgba(200,155,90,0.14) !important;
  color: rgba(243,235,221,0.55) !important;
}
.chat-widget.fresh .chat-to .tags li {
  background: rgba(200,155,90,0.18) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  color: #F3EBDD !important;
  border-radius: 999px;
}
.chat-widget.fresh .chat-to input[type="text"] {
  background: transparent !important;
  color: #F3EBDD !important;
}

/* ── Voice notes & attachments ── */
.chat-widget.chat-box .chat-voice-notes,
.chat-widget.chat-box .chat-attachments,
.chat-widget.fresh .chat-voice-notes,
.chat-widget.fresh .chat-attachments {
  background: rgba(10,15,24,0.96) !important;
  border-top: 1px solid rgba(200,155,90,0.10) !important;
  color: rgba(243,235,221,0.70) !important;
}
.chat-widget.chat-box .btn-voice-start,
.chat-widget.chat-box .btn-voice-stop,
.chat-widget.fresh .btn-voice-start,
.chat-widget.fresh .btn-voice-stop {
  color: #C89B5A !important;
}

/* ── Composer (chat-form) ── */
.chat-widget.chat-box .chat-form,
.chat-widget.fresh .chat-form {
  background: rgba(7,11,20,0.98) !important;
  border-top: 1px solid rgba(200,155,90,0.14) !important;
  border-radius: 0 !important;
}
.chat-widget.chat-box .chat-form-message,
.chat-widget.fresh .chat-form-message {
  background: rgba(16,23,34,0.90) !important;
  border: 1px solid rgba(200,155,90,0.18) !important;
  border-radius: 10px !important;
  padding: 8px 12px !important;
}
.chat-widget.chat-box .chat-form-message textarea,
.chat-widget.fresh .chat-form-message textarea {
  background: transparent !important;
  color: #F3EBDD !important;
}
.chat-widget.chat-box .chat-form-message textarea::placeholder,
.chat-widget.fresh .chat-form-message textarea::placeholder {
  color: rgba(243,235,221,0.35) !important;
}

/* ── Composer tool icons ── */
.chat-widget.chat-box .x-form-tools li i,
.chat-widget.fresh .x-form-tools li i {
  color: rgba(200,155,90,0.65) !important;
}
.chat-widget.chat-box .x-form-tools li:hover i,
.chat-widget.fresh .x-form-tools li:hover i {
  color: #D8AA5F !important;
}
.chat-widget.chat-box .x-form-tools-post i,
.chat-widget.fresh .x-form-tools-post i {
  color: #D8AA5F !important;
}

/* ── Message bubbles inside floating chatbox ── */
.chat-widget.chat-box .conversation-body .text,
.chat-widget.fresh .conversation-body .text {
  background: rgba(16,23,34,0.95) !important;
  border: 1px solid rgba(200,155,90,0.14) !important;
  color: #F3EBDD !important;
  border-radius: 4px 14px 14px 14px !important;
}
.chat-widget.chat-box .conversation.right .conversation-body .text,
.chat-widget.fresh .conversation.right .conversation-body .text {
  background: rgba(200,155,90,0.16) !important;
  border: 1px solid rgba(200,155,90,0.30) !important;
  border-radius: 14px 4px 14px 14px !important;
}
.chat-widget.chat-box .conversation-body .time,
.chat-widget.chat-box .conversation-body .seen,
.chat-widget.fresh .conversation-body .time,
.chat-widget.fresh .conversation-body .seen {
  color: rgba(200,155,90,0.55) !important;
  font-size: 10px !important;
}

/* ── Colors menu ── */
.chat-widget.chat-box .chat-colors-menu,
.chat-widget.fresh .chat-colors-menu {
  background: rgba(16,23,34,0.98) !important;
  border: 1px solid rgba(200,155,90,0.20) !important;
  border-radius: 14px !important;
}

/* ── Scrollbar ── */
.chat-widget.chat-box .chat-conversations::-webkit-scrollbar,
.chat-widget.fresh .chat-conversations::-webkit-scrollbar { width: 3px !important; }
.chat-widget.chat-box .chat-conversations::-webkit-scrollbar-track,
.chat-widget.fresh .chat-conversations::-webkit-scrollbar-track { background: rgba(7,11,20,0.96) !important; }
.chat-widget.chat-box .chat-conversations::-webkit-scrollbar-thumb,
.chat-widget.fresh .chat-conversations::-webkit-scrollbar-thumb {
  background: rgba(200,155,90,0.30) !important;
  border-radius: 3px !important;
}

/* ===================================================
   END FLOATING CHATBOX THEME
   =================================================== */
