
/* ===== sn-tokens.css ===== */
:root,
body.sn-global {
  --sn-bg:           #0A0806;
  --sn-bg2:          #111009;
  --sn-surface:      #0D0B07;
  --sn-surface-2:    #1A1612;
  --sn-overlay:      rgba(10, 8, 6, 0.85);
  --sn-overlay-soft: rgba(10, 8, 6, 0.75);

  --sn-gold:         #C9A850;
  --sn-gold-strong:  #DFB860;
  --sn-gold-soft:    rgba(201, 168, 80, 0.15);
  --sn-gold-faint:   rgba(201, 168, 80, 0.08);
  --sn-gold-border:  rgba(201, 168, 80, 0.25);

  --sn-gold-bg:        #C9A850;
  --sn-gold-bg-strong: #DFB860;

  --sn-text:         #F5EDD8;
  --sn-text-strong:  #FFFFFF;
  --sn-text-soft:    rgba(245, 237, 216, 0.75);
  --sn-text-muted:   rgba(245, 237, 216, 0.5);
  --sn-text-faint:   rgba(245, 237, 216, 0.3);
  --sn-text-dim:     rgba(245, 237, 216, 0.2);

  --sn-border:       rgba(245, 237, 216, 0.1);
  --sn-border-soft:  rgba(245, 237, 216, 0.05);
  --sn-border-gold:  rgba(201, 168, 80, 0.2);

  --sn-success:      #4ADE80;
  --sn-warning:      #F59E0B;
  --sn-danger:       #EF4444;
  --sn-online:       #4ADE80;
}
body.sn-global.sn-light {
  --sn-bg:           #F7F2EA;
  --sn-bg2:          #EDE5D4;
  --sn-surface:      #FFFFFF;
  --sn-surface-2:    #EDE5D4;
  --sn-overlay:      rgba(44, 31, 14, 0.65);
  --sn-overlay-soft: rgba(44, 31, 14, 0.55);

  --sn-gold:         #7A5C35;
  --sn-gold-strong:  #5C4525;
  --sn-gold-soft:    rgba(122, 92, 53, 0.15);
  --sn-gold-faint:   rgba(122, 92, 53, 0.08);
  --sn-gold-border:  rgba(122, 92, 53, 0.4);

  --sn-gold-bg:        #B8922A;
  --sn-gold-bg-strong: #9A7A1F;

  --sn-text:         #2C1F0E;
  --sn-text-strong:  #000000;
  --sn-text-soft:    rgba(44, 31, 14, 0.85);
  --sn-text-muted:   rgba(44, 31, 14, 0.7);
  --sn-text-faint:   rgba(44, 31, 14, 0.5);
  --sn-text-dim:     rgba(44, 31, 14, 0.3);

  --sn-border:       rgba(122, 92, 53, 0.25);
  --sn-border-soft:  rgba(122, 92, 53, 0.12);
  --sn-border-gold:  rgba(184, 146, 42, 0.45);
}

/* LEGACY VARIABLE OVERRIDES — Ivory & Gold */

body.sn-global.sn-light {
  --sn-bg-soft:        #F7F2EA !important;
  --sn-bg-white:       #FFFFFF !important;
  --sn-bg-lavender:    #FFFFFF !important;
  --sn-lavender:       #FFFFFF !important;
  --sn-white:          #FFFFFF !important;
  --sn-dark:           #2C1F0E !important;

  --sn-text-heading:   #2C1F0E !important;
  --sn-text-main:      rgba(44, 31, 14, 0.85) !important;
  --sn-text-muted:     rgba(44, 31, 14, 0.7) !important;

  --sn-purple:         #7A5C35 !important;
  --sn-plum:           #7A5C35 !important;
  --sn-plum-hover:     #5C4525 !important;
  --sn-gold:           #7A5C35 !important;
  --sn-gold-hover:     #5C4525 !important;

  --sn-divider:        rgba(122, 92, 53, 0.18) !important;
  --sn-card-shadow:    0 2px 12px rgba(122, 92, 53, 0.15) !important;

  --color-sn-soft:     #F7F2EA !important;
  --color-sn-lavender: #FFFFFF !important;
  --color-sn-white:    #FFFFFF !important;
  --color-sn-dark:     #2C1F0E !important;
  --color-sn-plum:     #7A5C35 !important;
  --color-sn-plum-hover: #5C4525 !important;
  --color-sn-gold:     #7A5C35 !important;
  --color-sn-gold-hover: #5C4525 !important;
  --color-sn-heading:  #2C1F0E !important;
  --color-sn-main:     rgba(44, 31, 14, 0.85) !important;
  --color-sn-muted:    rgba(44, 31, 14, 0.7) !important;
  --color-sn-divider:  rgba(122, 92, 53, 0.18) !important;
}

/* LIGHT MODE — VISUAL FIXES */

body.sn-global.sn-light .sn-topbar,
body.sn-global.sn-light header.sn-topbar,
body.sn-global.sn-light .sn-topbar-search-wrap {
  background: var(--sn-bg) !important;
  border-bottom-color: var(--sn-border) !important;
}

body.sn-global.sn-light .leaflet-container {
  background: var(--sn-bg2) !important;
}

body.sn-global.sn-light .sn-list-sidebar,
body.sn-global.sn-light .sn-list-side-panel,
body.sn-global.sn-light .sn-region-panel,
body.sn-global.sn-light .sn-reviews-panel {
  background: var(--sn-surface) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light button[disabled],
body.sn-global.sn-light .sn-btn[disabled],
body.sn-global.sn-light .sn-btn-disabled {
  background: transparent !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text-muted) !important;
  opacity: 0.6 !important;
}

body.sn-global.sn-light .sn-msg-bubble-sent,
body.sn-global.sn-light .sn-message-sent,
body.sn-global.sn-light .sn-msg.sent .sn-msg-content,
body.sn-global.sn-light .sn-msg-out .sn-msg-bubble {
  background: var(--sn-gold-bg) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-prof-tab,
body.sn-global.sn-light .sn-profile-tabs a,
body.sn-global.sn-light .sn-tab-link {
  color: var(--sn-text-soft) !important;
}

body.sn-global.sn-light .sn-prof-tab.active,
body.sn-global.sn-light .sn-profile-tabs a.active,
body.sn-global.sn-light .sn-tab-link.active {
  color: var(--sn-text) !important;
  border-bottom-color: var(--sn-gold-bg) !important;
}

/* Listings sidebar (Explora por region) */
body.sn-global.sn-light .sn-lst-sidebar {
  background: var(--sn-surface) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-lst-sidebar * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-lst-sidebar a,
body.sn-global.sn-light .sn-lst-sidebar [class*="region"] {
  color: var(--sn-text-soft) !important;
}

/* Map tiles fallback: invert dark_all images in light mode */
body.sn-global.sn-light .leaflet-tile-pane img[src*="dark_all"] {
  filter: invert(1) hue-rotate(180deg) brightness(1.05) contrast(0.95) !important;
}

/* Listings show sidebar (Erotica Party detail) */
body.sn-global.sn-light .snsh-sidebar,
body.sn-global.sn-light [class*="snsh-side"],
body.sn-global.sn-light .sn-listing-sidebar {
  background: var(--sn-surface) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}
body.sn-global.sn-light .snsh-sidebar *,
body.sn-global.sn-light [class*="snsh-side"] *,
body.sn-global.sn-light .sn-listing-sidebar * {
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .snsh-sidebar a {
  color: var(--sn-gold-bg) !important;
}

/* Gold buttons inside listing sidebar — dark text on gold */
body.sn-global.sn-light .snsh-btn-gold,
body.sn-global.sn-light .snsh-btn-gold *,
body.sn-global.sn-light .snsh-sidebar .snsh-btn-gold,
body.sn-global.sn-light .snsh-sidebar .snsh-btn-gold * {
  color: var(--sn-text) !important;
  background: var(--sn-gold-bg) !important;
}

/* Generic gold buttons: dark text in light mode */
body.sn-global.sn-light .sn-dbtn-gold,
body.sn-global.sn-light .sn-dbtn-gold *,
body.sn-global.sn-light .sn-btn-gold,
body.sn-global.sn-light .sn-btn-gold *,
body.sn-global.sn-light [class*="btn-gold"],
body.sn-global.sn-light [class*="btn-gold"] * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .message-bubble-sent,
body.sn-global.sn-light .message-bubble-sent * {
  color: var(--sn-text) !important;
}

/* Travel card Message button */
body.sn-global.sn-light .sn-tc-btn-msg {
  background: var(--sn-gold-bg) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-gold-bg-strong) !important;
}
body.sn-global.sn-light .sn-tc-btn-msg * {
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-tc-btn-msg:hover {
  background: var(--sn-gold-bg-strong) !important;
}

/* Member card stats + message button */
body.sn-global.sn-light .sn-mc-stat,
body.sn-global.sn-light .sn-mc-stat * {
  color: var(--sn-text-muted) !important;
}
body.sn-global.sn-light .sn-mc-stat.active,
body.sn-global.sn-light .sn-mc-stat.active * {
  color: var(--sn-gold-bg) !important;
}
body.sn-global.sn-light .sn-mc-btn-msg,
body.sn-global.sn-light .sn-mc-btn-msg * {
  color: var(--sn-text) !important;
  background: var(--sn-gold-bg) !important;
}

/* Public topbar (nav-public) light mode */
body.sn-global.sn-light .sn-topbar {
  background: rgba(247, 242, 234, 0.85) !important;
  border-bottom: .5px solid var(--sn-gold-border) !important;
}
body.sn-global.sn-light .sn-topbar.solid {
  background: rgba(247, 242, 234, 0.97) !important;
}
body.sn-global.sn-light .sn-topbar .nav-links a {
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-topbar .nav-links a::after {
  background: var(--sn-gold-bg) !important;
}
body.sn-global.sn-light .sn-topbar .btn-signup {
  color: var(--sn-text) !important;
  background: var(--sn-gold-bg) !important;
}
body.sn-global.sn-light .sn-topbar .btn-signup:hover {
  background: var(--sn-gold-bg-strong) !important;
}
body.sn-global.sn-light .sn-topbar .logo-dot {
  background: var(--sn-gold-bg) !important;
}


/* ===== sn-interior.css ===== */
/* ═══════════════════════════════════════════════════════
   SN INTERIOR — Dark Luxury override para área autenticada
   Aplica a body.sn-global (toda la web excepto standalones)
   ═══════════════════════════════════════════════════════ */

/* ─── RESET GLOBAL ─── */
body.sn-global {
  background: #0A0806 !important;
  color: #F5EDD8 !important;
}

/* ─── FONDOS PRINCIPALES ─── */
body.sn-global .min-h-screen,
body.sn-global .bg-sn-soft,
body.sn-global .bg-gray-50,
body.sn-global .bg-gray-100 {
  background: #0A0806 !important;
}

body.sn-global .bg-white,
body.sn-global .dark\:bg-black,
body.sn-global .bg-sn-white {
  background: #111009 !important;
}

body.sn-global .bg-gray-800,
body.sn-global .bg-gray-900,
body.sn-global .dark\:bg-gray-800,
body.sn-global .dark\:bg-gray-900 {
  background: #181410 !important;
}

body.sn-global .bg-gray-700,
body.sn-global .dark\:bg-gray-700 {
  background: #1C1710 !important;
}

/* ─── TEXTOS ─── */
body.sn-global .text-gray-900,
body.sn-global .text-gray-800,
body.sn-global .dark\:text-white,
body.sn-global .text-sn-heading,
body.sn-global .text-sn-dark {
  color: #F5EDD8 !important;
}

body.sn-global .text-gray-600,
body.sn-global .text-gray-500,
body.sn-global .text-gray-400,
body.sn-global .text-sn-muted,
body.sn-global .dark\:text-gray-400,
body.sn-global .dark\:text-gray-300 {
  color: rgba(245,237,216,0.55) !important;
}

body.sn-global .text-gray-700,
body.sn-global .text-sn-main,
body.sn-global .dark\:text-gray-200 {
  color: rgba(245,237,216,0.75) !important;
}

/* ─── ACENTOS / BRAND ─── */
body.sn-global .text-sn-gold,
body.sn-global .text-yellow-500,
body.sn-global .text-yellow-400 {
  color: #C9A850 !important;
}

body.sn-global .text-sn-plum,
body.sn-global .text-purple-600,
body.sn-global .text-purple-500,
body.sn-global [class*="text-\[#9810FA\]"],
body.sn-global [class*="text-\[#E60076\]"] {
  color: #C9A850 !important;
}

body.sn-global .bg-sn-plum,
body.sn-global .bg-purple-600,
body.sn-global .bg-purple-500,
body.sn-global [class*="bg-\[#9810FA\]"],
body.sn-global [class*="bg-\[#E60076\]"] {
  background: #C9A850 !important;
  color: #0A0806 !important;
}

body.sn-global .bg-sn-lavender,
body.sn-global .bg-purple-100,
body.sn-global .bg-purple-50 {
  background: rgba(201,168,80,0.08) !important;
  color: #C9A850 !important;
}

/* ─── BORDES ─── */
body.sn-global .border-gray-200,
body.sn-global .border-gray-300,
body.sn-global .dark\:border-gray-700,
body.sn-global .dark\:border-gray-600,
body.sn-global .border-sn-divider,
body.sn-global .divide-gray-200 > * {
  border-color: rgba(201,168,80,0.11) !important;
}

body.sn-global .border-sn-plum,
body.sn-global .border-purple-500,
body.sn-global .hover\:border-sn-plum:hover {
  border-color: rgba(201,168,80,0.26) !important;
}

/* ─── CARDS / PANELS ─── */
body.sn-global .rounded-lg,
body.sn-global .rounded-xl,
body.sn-global .rounded-2xl {
  border-color: rgba(201,168,80,0.11);
}

body.sn-global .shadow-sm,
body.sn-global .shadow-md,
body.sn-global .shadow-lg {
  box-shadow: 0 2px 12px rgba(0,0,0,0.5) !important;
}

/* ─── INPUTS ─── */
body.sn-global input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
body.sn-global textarea,
body.sn-global select {
  background: #111009 !important;
  color: #F5EDD8 !important;
  border-color: rgba(201,168,80,0.11) !important;
}

body.sn-global input:focus,
body.sn-global textarea:focus,
body.sn-global select:focus {
  border-color: #C9A850 !important;
  box-shadow: 0 0 0 2px rgba(201,168,80,0.10) !important;
  outline: none !important;
}

body.sn-global input::placeholder,
body.sn-global textarea::placeholder {
  color: rgba(245,237,216,0.30) !important;
}

/* ─── BUTTONS ─── */
body.sn-global .btn-primary,
body.sn-global [class*="btn-primary"] {
  background: #C9A850 !important;
  color: #0A0806 !important;
  border-color: #C9A850 !important;
}

body.sn-global .btn-primary:hover,
body.sn-global [class*="btn-primary"]:hover {
  background: #E2C87A !important;
}

body.sn-global .btn-secondary,
body.sn-global [class*="btn-secondary"],
body.sn-global .btn-outline,
body.sn-global [class*="btn-outline"] {
  background: transparent !important;
  color: var(--sn-text-soft) !important;
  border-color: rgba(201,168,80,0.26) !important;
}

body.sn-global .btn-secondary:hover,
body.sn-global [class*="btn-outline"]:hover {
  color: #F5EDD8 !important;
  border-color: #C9A850 !important;
  background: rgba(201,168,80,0.07) !important;
}

/* ─── LINKS ─── */
body.sn-global .sn-link,
body.sn-global a.text-sn-plum,
body.sn-global a.text-purple-600 {
  color: #C9A850 !important;
}

body.sn-global .sn-link:hover,
body.sn-global a.text-sn-plum:hover {
  color: #E2C87A !important;
}

/* ─── NAVIGATION / SIDEBAR ─── */
body.sn-global .site-nav:not(.sn3-nav) {
  background: rgba(10,8,6,0.95) !important;
  border-color: rgba(201,168,80,0.11) !important;
}

body.sn-global .feeds-sidebar,
body.sn-global [class*="sidebar"],
body.sn-global aside {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
}

/* Sidebar nav active state */
body.sn-global .feeds-nav-link.active {
  background: rgba(201,168,80,0.12) !important;
  color: #C9A850 !important;
}
body.sn-global .feeds-nav-link.upgrade-link.active,
body.sn-global .feeds-nav-link.upgrade-link.active * {
  background: #C9A850 !important;
  color: #0A0806 !important;
  fill: #0A0806 !important;
  border-left: none !important;
}

body.sn-global .feeds-nav-link:not(.active):hover {
  background: rgba(255,245,220,0.04) !important;
}

/* ─── FEEDS PAGE ─── */
body.sn-global .feeds-page {
  background: #0A0806 !important;
}

/* ─── SCROLLBAR ─── */
body.sn-global ::-webkit-scrollbar { width: 6px; height: 6px; }
body.sn-global ::-webkit-scrollbar-track { background: #0A0806; }
body.sn-global ::-webkit-scrollbar-thumb { background: rgba(201,168,80,0.20); border-radius: 3px; }
body.sn-global ::-webkit-scrollbar-thumb:hover { background: #C9A850; }

/* ─── MODALS ─── */
body.sn-global [class*="modal"] > div,
body.sn-global .modal-content {
  background: #111009 !important;
  border: .5px solid rgba(201,168,80,0.11) !important;
}

/* ─── PILLS / TAGS / BADGES ─── */
body.sn-global .badge,
body.sn-global [class*="badge"] {
  background: rgba(201,168,80,0.10) !important;
  color: #C9A850 !important;
  border-color: rgba(201,168,80,0.20) !important;
}

/* ─── HOVER STATES ─── */
body.sn-global .hover\:bg-gray-50:hover,
body.sn-global .hover\:bg-gray-100:hover,
body.sn-global .dark\:hover\:bg-gray-700:hover {
  background: rgba(255,245,220,0.04) !important;
}

/* ─── DIVIDERS ─── */
body.sn-global hr,
body.sn-global .divide-y > * + * {
  border-color: rgba(201,168,80,0.08) !important;
}

/* ─── GREEN / SUCCESS ─── */
body.sn-global .text-green-500,
body.sn-global .text-green-600 {
  color: #4ADE80 !important;
}

body.sn-global .bg-green-50,
body.sn-global .bg-green-100,
body.sn-global .dark\:bg-green-900 {
  background: rgba(74,222,128,0.08) !important;
}

/* ─── RED / ERROR ─── */
body.sn-global .text-red-500,
body.sn-global .text-red-600 {
  color: #F87171 !important;
}

body.sn-global .bg-red-50,
body.sn-global .dark\:bg-red-900 {
  background: rgba(248,113,113,0.08) !important;
}

/* ─── INLINE STYLE OVERRIDES (sn-* CSS vars used in templates) ─── */
body.sn-global {
  --sn-bg-soft: #0A0806;
  --sn-bg-white: #111009;
  --sn-divider: rgba(201,168,80,0.11);
  --sn-text-heading: #F5EDD8;
  --sn-text-main: rgba(245,237,216,0.75);
  --sn-text-muted: rgba(245,237,216,0.45);
  --sn-card-shadow: 0 2px 12px rgba(0,0,0,0.5);
  --sn-purple: #C9A850;
  --sn-dark: #0A0806;
  --sn-gold: #C9A850;
}

/* ─── MOBILE BOTTOM NAV ─── */
body.sn-global .mobile-bottom-nav,
body.sn-global [class*="bottom-nav"] {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
}

/* ─── HAMBURGER SIDEBAR ─── */
body.sn-global #hamburger-sidebar,
body.sn-global .hamburger-sidebar {
  background: #111009 !important;
}

/* ─── PROFILE CARDS / MEMBER CARDS ─── */
body.sn-global .member-card,
body.sn-global [class*="member-card"] {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
}

body.sn-global .member-card:hover,
body.sn-global [class*="member-card"]:hover {
  border-color: rgba(201,168,80,0.26) !important;
}

/* ─── STORIES ─── */
body.sn-global [class*="story"] {
  border-color: rgba(201,168,80,0.20) !important;
}

/* ─── TOAST ─── */
body.sn-global .toast-container,
body.sn-global [class*="toast"] {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
  color: #F5EDD8 !important;
}

/* ─── PENDING APPROVAL BAR ─── */
body.sn-global .bg-red-600 {
  background: rgba(220,38,38,0.85) !important;
}

/* ─── DROPDOWN MENUS ─── */
body.sn-global [id*="dropdown"],
body.sn-global [class*="dropdown-menu"] {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
}

/* ─── LISTINGS PAGE — override inline styles hardcodeados ─── */
body.sn-global .listings-page .review-card {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.5) !important;
}
body.sn-global .listings-page .review-card:hover {
  border-color: rgba(201,168,80,0.26) !important;
  box-shadow: 0 8px 30px rgba(0,0,0,0.6) !important;
}
body.sn-global .listings-page .continent-filter {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
  color: var(--sn-text-soft) !important;
}
body.sn-global .listings-page .continent-filter:hover {
  border-color: rgba(201,168,80,0.26) !important;
  color: #C9A850 !important;
  background: rgba(201,168,80,0.06) !important;
}
body.sn-global .listings-page .continent-filter.active {
  background: #C9A850 !important;
  border-color: #C9A850 !important;
  color: #0A0806 !important;
}
body.sn-global .listings-page .country-item {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
  color: var(--sn-text-soft) !important;
}
body.sn-global .listings-page .country-item:hover {
  border-color: rgba(201,168,80,0.26) !important;
  color: #C9A850 !important;
}
body.sn-global .listings-page .gradient-text {
  background: linear-gradient(to right, #C9A850, #E2C87A) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
body.sn-global .listings-page .placeholder-image {
  background: #181410 !important;
  border-color: rgba(201,168,80,0.11) !important;
}
/* Listings hero banner */
body.sn-global .listings-page > div:first-child,
body.sn-global .bg-sn-lavender {
  background: #111009 !important;
}
body.sn-global [class*="bg-sn-lavender"] {
  background: #111009 !important;
}
body.sn-global .bg-sn-light {
  background: #0A0806 !important;
}

/* ─── TEMPLATE-1 (About/Privacy/Terms) ─── */
body.sn-global .prose {
  color: rgba(245,237,216,0.70) !important;
}
body.sn-global .prose h1,
body.sn-global .prose h2,
body.sn-global .prose h3,
body.sn-global .prose h4 {
  color: #F5EDD8 !important;
}
body.sn-global .prose p,
body.sn-global .prose li,
body.sn-global .prose td {
  color: var(--sn-text-soft) !important;
}
body.sn-global .prose a {
  color: #C9A850 !important;
}
body.sn-global .prose strong {
  color: #F5EDD8 !important;
}
body.sn-global .prose blockquote {
  border-left-color: rgba(201,168,80,0.30) !important;
  color: rgba(245,237,216,0.55) !important;
}
body.sn-global .prose hr {
  border-color: rgba(201,168,80,0.11) !important;
}
body.sn-global .prose code {
  background: rgba(201,168,80,0.08) !important;
  color: #C9A850 !important;
}
body.sn-global .prose pre {
  background: #111009 !important;
  border: .5px solid rgba(201,168,80,0.11) !important;
}

/* ─── LISTINGS HERO BANNER ESPECÍFICO ─── */
body.sn-global .listings-header,
body.sn-global [class*="listing-hero"],
body.sn-global .community-scene-header {
  background: #111009 !important;
}
body.sn-global .listings-page .bg-sn-soft,
body.sn-global .listings-page .bg-white {
  background: #111009 !important;
}


/* ─── MEMBER CARDS (dashboard/members) ─── */
body.sn-global .member-card,
body.sn-global [class*="member-card"],
body.sn-global .dashboard-member-card {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
  color: rgba(245,237,216,0.75) !important;
}
body.sn-global .member-card:hover,
body.sn-global [class*="member-card"]:hover {
  border-color: rgba(201,168,80,0.26) !important;
}
body.sn-global .member-card h3,
body.sn-global .member-card p,
body.sn-global .member-card span {
  color: rgba(245,237,216,0.75) !important;
}

/* ─── MEMBERS TAB — all white card backgrounds ─── */
body.sn-global #members-tab .bg-white,
body.sn-global #members-tab [style*="background"],
body.sn-global .members-grid .bg-white,
body.sn-global .members-grid [class*="card"] {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
}

/* ─── PROFILE CARDS in feeds/members ─── */
body.sn-global .rounded-xl.bg-white,
body.sn-global .rounded-lg.bg-white,
body.sn-global .rounded-2xl.bg-white {
  background: #111009 !important;
  border-color: rgba(201,168,80,0.11) !important;
}
body.sn-global .rounded-xl.bg-white h3,
body.sn-global .rounded-lg.bg-white p,
body.sn-global .rounded-xl.bg-white span {
  color: rgba(245,237,216,0.75) !important;
}

/* ─── BOTTOM PORTION OF MEMBER CARDS ─── */
body.sn-global .bg-white.rounded-b-xl,
body.sn-global .bg-white.rounded-b-lg,
body.sn-global [class*="card-body"].bg-white {
  background: #111009 !important;
}

/* ─── FIX CRÍTICO: --sn-bg-lavender no estaba overrideada ─── */
body.sn-global {
  --sn-bg-lavender: #111009 !important;
  --sn-lavender: #111009 !important;
  --sn-bg-soft: #0A0806 !important;
  --sn-white: #111009 !important;
}

/* ─── MEMBER CARDS text colors ─── */
body.sn-global .text-sn-heading,
body.sn-global [class*="text-sn-heading"] {
  color: #F5EDD8 !important;
}
body.sn-global .text-sn-plum,
body.sn-global [class*="text-sn-plum"],
body.sn-global .text-\[\#6B3FA0\],
body.sn-global [class*="text-purple"] {
  color: #C9A850 !important;
}

/* ─── MEMBER CARD específico: el fondo cream/lavender del info panel ─── */
body.sn-global [class*="bg-sn-"]:not([class*="bg-sn-gold"]):not([class*="bg-sn-plum"]):not([class*="bg-sn-dark"]):not([class*="bg-sn3"]),
body.sn-global [style*="--sn-bg-lavender"],
body.sn-global [style*="var(--sn-bg-lavender)"],
body.sn-global [style*="var(--sn-bg-soft)"] {
  background-color: #111009 !important;
}

/* ─── Tailwind dark mode alternates ─── */
body.sn-global .dark\:bg-black {
  background: #111009 !important;
}
body.sn-global .dark\:text-white {
  color: #F5EDD8 !important;
}
body.sn-global .dark\:ring-white\/10 {
  --tw-ring-color: rgba(201,168,80,0.10) !important;
}

/* ─── FIX: bg-sn-soft clase Tailwind custom rgb(250,247,242) → dark ─── */
body.sn-global .bg-sn-soft {
  background-color: #111009 !important;
}
body.sn-global .bg-sn-soft h1,
body.sn-global .bg-sn-soft h2,
body.sn-global .bg-sn-soft h3,
body.sn-global .bg-sn-soft h4 {
  color: #F5EDD8 !important;
}
body.sn-global .bg-sn-soft p {
  color: var(--sn-text-soft) !important;
}
body.sn-global .bg-sn-soft span:not([class*="badge"]):not([class*="dot"]):not([class*="icon"]) {
  color: var(--sn-text-soft) !important;
}

/* ─── TAILWIND 4 COLOR VARIABLES OVERRIDE ───────────────────────────────────
   Tailwind 4 genera bg-sn-soft, text-sn-heading, etc. desde --color-sn-*
   Overrideando aquí se recoloran TODAS las clases Tailwind sn-* de una vez
   ─────────────────────────────────────────────────────────────────────────── */
body.sn-global {
  --color-sn-soft:     #111009 !important;
  --color-sn-lavender: #111009 !important;
  --color-sn-white:    #111009 !important;
  --color-sn-dark:     #0A0806 !important;
  --color-sn-plum:     #C9A850 !important;
  --color-sn-plum-hover: #E2C87A !important;
  --color-sn-gold:     #C9A850 !important;
  --color-sn-gold-hover: #E2C87A !important;
  --color-sn-heading:  #F5EDD8 !important;
  --color-sn-main:     rgba(245,237,216,0.75) !important;
  --color-sn-muted:    rgba(245,237,216,0.45) !important;
  --color-sn-divider:  rgba(201,168,80,0.11) !important;
  --sn-plum:           #C9A850 !important;
  --sn-plum-hover:     #E2C87A !important;
  --sn-gold:           #C9A850 !important;
  --sn-gold-hover:     #E2C87A !important;
  --sn-dark:           #0A0806 !important;
  --sn-divider:        rgba(201,168,80,0.11) !important;
  --sn-bg-lavender:    #111009 !important;
  --sn-bg-soft:        #0A0806 !important;
  --sn-bg-white:       #111009 !important;
  --sn-text-heading:   #F5EDD8 !important;
  --sn-text-main:      rgba(245,237,216,0.75) !important;
  --sn-text-muted:     rgba(245,237,216,0.45) !important;
}

/* ─── MESSAGES CHAT PANEL ─── */
body.sn-global [style*="--sn-bg-lavender"],
body.sn-global [style*="var(--sn-bg-lavender)"],
body.sn-global [style*="var(--msg-chat-bg)"],
body.sn-global [style*="var(--msg-header-bg)"],
body.sn-global [style*="var(--msg-sidebar-bg)"],
body.sn-global [style*="var(--msg-received-bg)"],
body.sn-global [style*="var(--msg-input-bg)"] {
  background-color: #111009 !important;
}

/* Profile action button pastel backgrounds */
body.sn-global .bg-green-50,
body.sn-global .bg-emerald-50,
body.sn-global .bg-teal-50 {
  background: rgba(74,222,128,0.08) !important;
}
body.sn-global .bg-pink-50,
body.sn-global .bg-rose-50 {
  background: rgba(248,113,113,0.08) !important;
}
body.sn-global .bg-yellow-50,
body.sn-global .bg-amber-50 {
  background: rgba(201,168,80,0.08) !important;
}
body.sn-global .bg-blue-50,
body.sn-global .bg-sky-50,
body.sn-global .bg-indigo-50,
body.sn-global .bg-violet-50 {
  background: rgba(99,102,241,0.08) !important;
}

/* ─── MESSAGES: .messages-chat-area específico ─── */
body.sn-global .messages-chat-area {
  background-color: #0A0806 !important;
}
body.sn-global .messages-chat-area [class*="bubble-received"],
body.sn-global .messages-chat-area [class*="msg-received"],
body.sn-global .messages-chat-area [class*="received"] {
  background-color: #181410 !important;
  color: rgba(245,237,216,0.80) !important;
}
body.sn-global .messages-chat-area [class*="bubble-sent"],
body.sn-global .messages-chat-area [class*="msg-sent"],
body.sn-global .messages-chat-area [class*="sent"] {
  background-color: rgba(201,168,80,0.15) !important;
  color: #F5EDD8 !important;
}




/* Member card action buttons - solo los del overlay */
.sn-card-overlay button span {
  color: inherit !important;
}


/* ═══════════════════════════════════════════════════════
   SN-APP LAYOUT — Top bar + Sidebar + Content + Aside
   Nuevo layout unificado (reemplaza feeds + app interior)
   ═══════════════════════════════════════════════════════ */

/* ── TOP BAR ── */
.sn-topbar {
    position: fixed;
    top: 0; left: 0; right: 0;
    height: 60px;
    background: #0D0B07;
    border-bottom: 1px solid var(--sn-divider);
    display: flex;
    align-items: center;
    padding: 0 16px;
    gap: 12px;
    z-index: 1000;
}
.sn-topbar-logo {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    flex-shrink: 0;
}
.sn-topbar-logo img { height: 28px; width: auto; }
.sn-topbar-logo span {
    font-family: 'Cormorant', serif;
    font-size: 18px;
    font-weight: 500;
    color: var(--sn-text-heading);
    letter-spacing: 0.02em;
    white-space: nowrap;
}
.sn-topbar-search-wrap {
    flex: 1;
    max-width: 360px;
    margin: 0 8px;
    position: relative;
}
.sn-topbar-search-wrap .sn-search-icon {
    position: absolute;
    left: 11px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--sn-text-muted);
    font-size: 15px;
    pointer-events: none;
}
.sn-topbar-search {
    width: 100%;
    background: rgba(245,237,216,0.04);
    border: 1px solid var(--sn-divider);
    border-radius: 8px;
    padding: 7px 14px 7px 36px;
    font-size: 13px;
    color: var(--sn-text-heading);
    font-family: 'Montserrat', sans-serif;
    outline: none;
    transition: border-color 0.2s;
}
.sn-topbar-search::placeholder { color: var(--sn-text-muted); }
.sn-topbar-search:focus { border-color: rgba(201,168,80,0.35); }
.sn-topbar-actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 4px;
}
.sn-topbar-btn {
    position: relative;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--sn-text-muted);
    font-size: 19px;
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
    cursor: pointer;
    border: none;
    background: none;
}
.sn-topbar-btn:hover {
    background: rgba(201,168,80,0.08);
    color: var(--sn-gold);
}
.sn-topbar-badge {
    position: absolute;
    top: 4px; right: 4px;
    min-width: 16px;
    height: 16px;
    background: #C9A850 !important;
    color: #0A0806;
    font-size: 9px;
    font-weight: 700;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 3px;
    line-height: 1;
}
/* Language Switcher in Topbar */
.sn-topbar-actions .sn-lang-switcher {
    display: flex;
    align-items: center;
}
.sn-topbar-actions .sn-lang-trigger {
    padding: 4px 8px;
    font-size: 11px !important;
    height: auto;
    width: auto;
}
.sn-topbar-actions .sn-lang-flag {
    width: 16px;
    height: 12px;
}
.sn-topbar-actions .sn-lang-name {
    display: none;
}
.sn-topbar-actions .sn-lang-arrow {
    width: 8px;
    height: 8px;
}
.sn-topbar-actions .sn-lang-drop {
    margin-left: 0 !important;
    margin-right: 4px;
}
.sn-topbar-divider {
    width: 1px;
    height: 24px;
    background: var(--sn-divider);
    margin: 0 4px;
}
.sn-topbar-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1.5px solid rgba(201,168,80,0.3);
    object-fit: cover;
    cursor: pointer;
    transition: border-color 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(201,168,80,0.1);
    color: var(--sn-gold);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}
.sn-topbar-avatar:hover { border-color: var(--sn-gold); }

/* ── MAIN WRAP ── */
.sn-main-wrap {
    display: flex;
    min-height: 100vh;
    padding-top: 60px;
}

/* ── SIDEBAR ── */
.sn-sidebar {
    width: 220px;
    flex-shrink: 0;
    background: #0D0B07;
    border-right: 1px solid var(--sn-divider);
    height: calc(100vh - 60px);
    position: fixed;
    top: 60px;
    left: 0;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 90;
    transition: width 0.25s ease, transform 0.25s ease;
    scrollbar-width: thin;
    scrollbar-color: rgba(201,168,80,0.15) transparent;
}
.sn-sidebar::-webkit-scrollbar { width: 3px; }
.sn-sidebar::-webkit-scrollbar-thumb {
    background: rgba(201,168,80,0.15);
    border-radius: 2px;
}
.sn-sidebar.collapsed { width: 56px; }

/* Sidebar — user block */
.sn-sb-user {
    padding: 14px 12px;
    border-bottom: 1px solid rgba(201,168,80,0.08);
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    transition: background 0.15s;
}
.sn-sb-user:hover { background: rgba(201,168,80,0.04); }
.sn-sb-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1.5px solid rgba(201,168,80,0.3);
    object-fit: cover;
    flex-shrink: 0;
}
.sn-sb-avatar-placeholder {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1.5px solid rgba(201,168,80,0.3);
    background: rgba(201,168,80,0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: var(--sn-gold);
    font-weight: 600;
    flex-shrink: 0;
}
.sn-sb-user-info { min-width: 0; overflow: hidden; }
.sn-sb-username {
    font-size: 13px;
    font-weight: 500;
    color: var(--sn-text-heading);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.sn-sb-plan {
    font-size: 10px;
    color: var(--sn-gold);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* Sidebar — pending tasks */
.sn-sb-tasks {
    margin: 8px 10px;
    padding: 8px 10px;
    background: rgba(201,168,80,0.04);
    border: 1px solid rgba(201,168,80,0.15);
    border-left: 3px solid var(--sn-gold);
    border-radius: 6px;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: background 0.15s;
}
.sn-sb-tasks:hover { background: rgba(201,168,80,0.08); }
.sn-sb-tasks i { font-size: 14px; color: var(--sn-gold); flex-shrink: 0; }
.sn-sb-tasks-text { font-size: 11px; color: var(--sn-text-muted); line-height: 1.4; }
.sn-sb-tasks-text strong { color: var(--sn-gold); display: block; font-size: 12px; font-weight: 500; }

/* Sidebar — group label */
.sn-sb-group { padding: 12px 12px 3px; }
.sn-sb-group-label {
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: rgba(245,237,216,0.25);
}

/* Sidebar — nav item */
.sn-sb-item {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 7px 12px;
    font-size: 12.5px;
    color: rgba(245,237,216,0.55);
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
    white-space: nowrap;
    cursor: pointer;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
}
.sn-sb-item i {
    font-size: 16px;
    flex-shrink: 0;
    width: 18px;
    text-align: center;
}
.sn-sb-item:hover {
    background: rgba(201,168,80,0.06);
    color: rgba(245,237,216,0.85);
}
.sn-sb-item.active {
    background: rgba(201,168,80,0.1);
    color: var(--sn-gold);
}
.sn-sb-item.active i { color: var(--sn-gold); }
.sn-sb-item-label { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.sn-sb-item-badge {
    margin-left: auto;
    font-size: 9px;
    font-weight: 700;
    padding: 1px 5px;
    border-radius: 10px;
    background: #C9A850 !important;
    color: #0A0806;
    flex-shrink: 0;
    line-height: 1.6;
}

/* Sidebar — upgrade CTA */
.sn-sb-item.sn-sb-upgrade {
    margin: 4px 10px;
    border-radius: 8px;
    background: rgba(201,168,80,0.1);
    border: 1px solid rgba(201,168,80,0.28);
    color: var(--sn-gold);
    justify-content: center;
    gap: 6px;
    width: calc(100% - 20px);
    font-weight: 500;
}
.sn-sb-item.sn-sb-upgrade:hover {
    background: rgba(201,168,80,0.18);
    color: var(--sn-gold-hover);
}

/* Sidebar — SNC block */
.sn-sb-snc {
    margin: 6px 10px;
    padding: 9px 12px;
    background: rgba(201,168,80,0.06);
    border: 1px solid rgba(201,168,80,0.18);
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    transition: background 0.15s;
}
.sn-sb-snc:hover { background: rgba(201,168,80,0.1); }
.sn-sb-snc i { font-size: 18px; color: var(--sn-gold); }
.sn-sb-snc-label {
    font-size: 10px;
    color: var(--sn-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.sn-sb-snc-value {
    font-size: 15px;
    font-weight: 600;
    color: var(--sn-gold);
    line-height: 1.2;
}

/* Sidebar — divider */
.sn-sb-divider {
    border: none;
    border-top: 1px solid rgba(201,168,80,0.08);
    margin: 5px 0;
}

/* ── CONTENT WRAP ── */
.sn-content-wrap {
    margin-left: 220px;
    flex: 1;
    min-width: 0;
    display: flex;
    transition: margin-left 0.25s ease;
}
.sn-content-wrap.sidebar-collapsed { margin-left: 56px; }

.sn-content {
    flex: 1;
    padding: 24px;
    min-height: calc(100vh - 60px);
    min-width: 0;
}

/* ── RIGHT ASIDE ── */
.sn-aside {
    width: 240px;
    flex-shrink: 0;
    padding: 20px 14px 20px 0;
}
.sn-aside-card {
    background: rgba(255,245,220,0.025);
    border: 1px solid var(--sn-divider);
    border-radius: 10px;
    padding: 14px;
    margin-bottom: 12px;
}
.sn-aside-title {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: rgba(245,237,216,0.3);
    margin-bottom: 10px;
}
.sn-online-list { display: flex; flex-wrap: wrap; gap: 6px; }
.sn-online-item {
    position: relative;
    display: inline-block;
    cursor: pointer;
}
.sn-online-item img {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    object-fit: cover;
    border: 1.5px solid rgba(201,168,80,0.2);
    transition: border-color 0.15s;
}
.sn-online-item:hover img { border-color: var(--sn-gold); }
.sn-online-dot {
    width: 8px; height: 8px;
    background: #4CAF50;
    border-radius: 50%;
    border: 1.5px solid #0D0B07;
    position: absolute;
    bottom: 1px; right: 1px;
}

/* ── SIDEBAR COLLAPSED STATE ── */
.sn-sidebar.collapsed .sn-sb-group-label,
.sn-sidebar.collapsed .sn-sb-item-label,
.sn-sidebar.collapsed .sn-sb-user-info,
.sn-sidebar.collapsed .sn-sb-snc-label,
.sn-sidebar.collapsed .sn-sb-snc-value,
.sn-sidebar.collapsed .sn-sb-tasks-text,
.sn-sidebar.collapsed .sn-sb-group { display: none; }
.sn-sidebar.collapsed .sn-sb-item { position: relative; justify-content: center; padding: 10px; }
.sn-sidebar.collapsed .sn-sb-item .sn-sb-item-badge,
.sn-sidebar.collapsed .sn-sb-item .sn-sb-badge,
.sn-sidebar.collapsed .sn-sb-item .sn-badge,
.sn-sidebar.collapsed .sn-sb-item [class*="badge"],
.sn-sidebar.collapsed .sn-sb-item .badge {
  position: absolute;
  top: 4px;
  right: 4px;
  min-width: 16px;
  height: 16px;
  font-size: 10px;
  line-height: 16px;
  padding: 0 4px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sn-sidebar.collapsed .sn-sb-item.sn-sb-upgrade { width: calc(100% - 8px); margin: 4px; }
.sn-sidebar.collapsed .sn-sb-snc { justify-content: center; padding: 10px; margin: 4px; }
.sn-sidebar.collapsed .sn-sb-tasks { justify-content: center; padding: 10px; margin: 4px; }
.sn-sidebar.collapsed .sn-sb-user { justify-content: center; padding: 12px 8px; }

/* ── MOBILE BOTTOM NAV ── */
.sn-bottom-nav {
    display: none;
    position: fixed;
    bottom: 0; left: 0; right: 0;
    height: 60px;
    background: #0D0B07;
    border-top: 1px solid var(--sn-divider);
    z-index: 100;
}
.sn-bnav-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    text-decoration: none;
    color: rgba(245,237,216,0.35);
    font-size: 10px;
    transition: color 0.15s;
}
.sn-bnav-item i { font-size: 20px; }
.sn-bnav-item.active, .sn-bnav-item:hover { color: var(--sn-gold); }

/* ── SIDEBAR OVERLAY (mobile) ── */
.sn-sidebar-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    z-index: 89;
}
.sn-sidebar-overlay.active { display: block; }

/* ── RESPONSIVE ── */
@media (max-width: 1200px) {
    .sn-aside { display: none; }
}
@media (max-width: 768px) {
    .sn-sidebar {
        transform: translateX(-100%);
        width: 240px !important;
    }
    .sn-sidebar.mobile-open { transform: translateX(0); }
    .sn-content-wrap { margin-left: 0 !important; }
    .sn-content { padding: 16px; padding-bottom: 72px; }
    .sn-topbar-search-wrap { max-width: 160px; }
    .sn-topbar-logo span { display: none; }
    .sn-bottom-nav { display: flex; }
}

/* Sidebar badges */
.sn-sb-badge {
    display: inline-flex; align-items: center; justify-content: center;
    background: #C9A850; color: #0A0806;
    font-size: 9px; font-weight: 700;
    min-width: 16px; height: 16px;
    border-radius: 8px; padding: 0 3px;
    margin-left: 6px; line-height: 1;
}

/* Member card — verified badge + stats row */
.sn-mc-verified-badge {
    position: absolute !important; top: 10px; left: 10px; z-index: 2;
    background: #C9A850 !important; color: #0A0806 !important;
    font-size: 9px !important; font-weight: 700; letter-spacing: 0.05em;
    border-radius: 4px; padding: 3px 8px;
    display: flex !important; align-items: center; gap: 3px;
    line-height: 1;
}
.sn-mc-verified-badge i { color: #0A0806 !important; font-size: 9px !important; }
.sn-mc-verified-badge * { color: #0A0806 !important; }
.sn-mc-stats {
    display: flex;
    padding: 5px 0; margin-bottom: 8px;
}
.sn-mc-stat {
    flex: 1; display: flex; flex-direction: column;
    align-items: center; gap: 2px;
    font-size: 9px; color: var(--sn-text-muted);
}
.sn-mc-stat i { font-size: 12px; }
.sn-mc-stat span { font-size: 10px; font-weight: 600; }
.sn-mc-stat.active { color: #C9A850; }
.sn-mc-btn-icon.active {
    background: rgba(201,168,80,0.1) !important;
    border-color: rgba(201,168,80,0.4) !important;
    color: #C9A850 !important;
}

/* Friend button hover states */
.sn-mc-btn-friend { position: relative; }
.sn-mc-btn-friend .icon-default { display: flex; }
.sn-mc-btn-friend .icon-hover   { display: none; }
.sn-mc-btn-friend:hover .icon-default { display: none; }
.sn-mc-btn-friend:hover .icon-hover   { display: flex; }
.sn-mc-btn-friend.is-friend { color: #C9A850 !important; border-color: rgba(201,168,80,0.4) !important; background: rgba(201,168,80,0.1) !important; }
.sn-mc-btn-friend.is-pending { opacity: 0.5; cursor: default; }

/* Comment submit button */
.sn-comment-input-wrap { position: relative; display: flex; align-items: center; gap: 6px; flex: 1; }
.sn-comment-submit-btn {
    width: 30px; height: 30px; flex-shrink: 0;
    background: #C9A850; border: none; border-radius: 6px;
    color: #0A0806; cursor: pointer; display: flex;
    align-items: center; justify-content: center;
    font-size: 14px; transition: background 0.15s;
}
.sn-comment-submit-btn:hover { background: #E2C87A; }

/* ── Privacy Settings Tab (snp-* namespace) ── */
#sn-tab-privacy input[type=radio],
#sn-tab-privacy .snp-toggle-row input[type=checkbox] { display:none !important; position:absolute !important; opacity:0 !important; pointer-events:none !important; }
#sn-tab-privacy .snp-warn-chk input[type=checkbox] { display:inline-block !important; width:14px !important; height:14px !important; position:static !important; opacity:1 !important; pointer-events:auto !important; }
.snp-section { padding:22px 0; border-bottom:.5px solid rgba(201,168,80,.12); }
.snp-section:last-child { border-bottom:none; }
.snp-title { font-size:9px !important; letter-spacing:.2em !important; text-transform:uppercase !important; color:#C9A850 !important; margin-bottom:4px !important; }
.snp-preset-card { background:#111009 !important; border:.5px solid rgba(201,168,80,.12) !important; padding:14px !important; cursor:pointer !important; position:relative !important; transition:border-color .15s,background .15s !important; }
.snp-preset-card.snp-active { border-color:#C9A850 !important; background:rgba(201,168,80,.07) !important; }
.snp-opt { display:flex !important; align-items:center !important; gap:10px !important; padding:9px 13px !important; background:#111009 !important; border:.5px solid rgba(201,168,80,.12) !important; cursor:pointer !important; }
.snp-opt.snp-active { border-color:rgba(201,168,80,.45) !important; background:rgba(201,168,80,.05) !important; }
.snp-dot { width:13px !important; height:13px !important; border-radius:50% !important; border:1px solid rgba(245,237,216,.35) !important; flex-shrink:0 !important; position:relative !important; display:block !important; }
.snp-opt.snp-active .snp-dot { border-color:#C9A850 !important; }
.snp-opt.snp-active .snp-dot::after { content:'' !important; position:absolute !important; inset:3px !important; border-radius:50% !important; background:#C9A850 !important; }
.snp-toggle-row { display:flex !important; align-items:center !important; gap:14px !important; padding:11px 14px !important; background:#111009 !important; border:.5px solid rgba(201,168,80,.12) !important; cursor:pointer !important; margin-bottom:6px !important; }
.snp-sw { width:34px !important; height:18px !important; border-radius:9px !important; background:rgba(90,80,64,.5) !important; position:relative !important; flex-shrink:0 !important; display:block !important; }
.snp-sw.on { background:#C9A850 !important; }
.snp-sw::after { content:'' !important; position:absolute !important; top:2px !important; left:2px !important; width:14px !important; height:14px !important; border-radius:50% !important; background:#0A0806 !important; transition:left .2s !important; display:block !important; }
.snp-sw.on::after { left:18px !important; }
.snp-cat-item { background:#111009 !important; border:.5px solid rgba(201,168,80,.12) !important; padding:10px 12px !important; }
.snp-cat-btn { flex:1 !important; padding:5px 4px !important; background:transparent !important; border:.5px solid rgba(201,168,80,.12) !important; font-size:9px !important; letter-spacing:.06em !important; text-transform:uppercase !important; color:rgba(245,237,216,.35) !important; cursor:pointer !important; }
.snp-cat-btn.s { border-color:#4a9c6a !important; color:#4a9c6a !important; background:rgba(74,156,106,.08) !important; }
.snp-cat-btn.h { border-color:#c9a050 !important; color:#c9a050 !important; background:rgba(201,160,80,.08) !important; }
.snp-cat-btn.b { border-color:#c05050 !important; color:#c05050 !important; background:rgba(192,80,80,.08) !important; }

/* SN LIGHT MODE — Blush & Rose */

body.sn-global.sn-light {
  background: var(--sn-bg) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .min-h-screen,
body.sn-global.sn-light .bg-sn-soft,
body.sn-global.sn-light .bg-gray-50,
body.sn-global.sn-light .bg-gray-100 {
  background: var(--sn-bg) !important;
}

body.sn-global.sn-light .bg-white,
body.sn-global.sn-light .dark\:bg-black,
body.sn-global.sn-light .bg-sn-white {
  background: #FFFFFF !important;
}

body.sn-global.sn-light .bg-gray-800,
body.sn-global.sn-light .bg-gray-900,
body.sn-global.sn-light .dark\:bg-gray-800,
body.sn-global.sn-light .dark\:bg-gray-900 {
  background: var(--sn-bg2) !important;
}

body.sn-global.sn-light .bg-gray-700,
body.sn-global.sn-light .dark\:bg-gray-700 {
  background: #EDD8CE !important;
}

body.sn-global.sn-light .text-gray-900,
body.sn-global.sn-light .text-gray-800,
body.sn-global.sn-light .dark\:text-white,
body.sn-global.sn-light .text-sn-heading,
body.sn-global.sn-light .text-sn-dark {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .text-gray-600,
body.sn-global.sn-light .text-gray-500,
body.sn-global.sn-light .text-gray-400,
body.sn-global.sn-light .text-sn-muted,
body.sn-global.sn-light .dark\:text-gray-400,
body.sn-global.sn-light .dark\:text-gray-300 {
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light .text-gray-700,
body.sn-global.sn-light .text-sn-main,
body.sn-global.sn-light .dark\:text-gray-200 {
  color: #5A2A1E !important;
}

body.sn-global.sn-light .sn-topbar {
  background: #FFFFFF !important;
  border-bottom: none !important;
}

body.sn-global.sn-light .sn-topbar-logo,
body.sn-global.sn-light .sn-topbar-logo span {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-topbar-btn,
body.sn-global.sn-light .sn-topbar-search input {
  color: #5A2A1E !important;
  background: var(--sn-bg) !important;
  border-color: var(--sn-border) !important;
}

body.sn-global.sn-light .sn-sidebar {
  background: #FFFFFF !important;
  border-right: .5px solid var(--sn-border-soft) !important;
}

body.sn-global.sn-light .sn-sidebar-section-title {
  color: rgba(42,21,16,.4) !important;
}

body.sn-global.sn-light .sn-nav-link {
  color: #5A2A1E !important;
}

body.sn-global.sn-light .sn-nav-link:hover,
body.sn-global.sn-light .sn-nav-link.active {
  background: var(--sn-border-soft) !important;
  color: #B8922A !important;
}

body.sn-global.sn-light .sn-nav-link.active {
  border-left: 2px solid #B8922A !important;
}

body.sn-global.sn-light .sn-aside {
  background: var(--sn-bg) !important;
}

body.sn-global.sn-light [style*="background:#0D0B07"],
body.sn-global.sn-light [style*="background: #0D0B07"] {
  background: #FFFFFF !important;
}

body.sn-global.sn-light [style*="background:#0A0806"],
body.sn-global.sn-light [style*="background: #0A0806"] {
  background: var(--sn-bg) !important;
}

body.sn-global.sn-light [style*="background:#111009"],
body.sn-global.sn-light [style*="background: #111009"] {
  background: #FFFFFF !important;
}

body.sn-global.sn-light [style*="background:#181410"],
body.sn-global.sn-light [style*="background: #181410"] {
  background: var(--sn-bg2) !important;
}

body.sn-global.sn-light [style*="color:#F5EDD8"],
body.sn-global.sn-light [style*="color: #F5EDD8"] {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light [style*="color:rgba(245,237,216"] {
  color: rgba(42,21,16,.75) !important;
}

body.sn-global.sn-light [style*="color:#C9A850"],
body.sn-global.sn-light [style*="color: #C9A850"] {
  color: #B8922A !important;
}

body.sn-global.sn-light [style*="background:#C9A850"],
body.sn-global.sn-light [style*="background: #C9A850"] {
  background: #B8922A !important;
}

body.sn-global.sn-light [style*="border:.5px solid rgba(201,168,80"],
body.sn-global.sn-light [style*="border: .5px solid rgba(201,168,80"] {
  border-color: rgba(184,146,42,.25) !important;
}

body.sn-global.sn-light [style*="border-bottom:.5px solid rgba(201,168,80"],
body.sn-global.sn-light [style*="border-bottom: .5px solid rgba(201,168,80"] {
  border-bottom-color: rgba(184,146,42,.25) !important;
}

body.sn-global.sn-light [style*="border:.5px solid rgba(245,237,216"],
body.sn-global.sn-light [style*="border: .5px solid rgba(245,237,216"] {
  border-color: rgba(42,21,16,.12) !important;
}

body.sn-global.sn-light .sn-notif-dropdown,
body.sn-global.sn-light .sn-account-dropdown {
  background: #FFFFFF !important;
  border-color: var(--sn-border-soft) !important;
}

body.sn-global.sn-light input,
body.sn-global.sn-light textarea,
body.sn-global.sn-light select {
  background: #FFFFFF !important;
  color: var(--sn-text) !important;
  border-color: var(--sn-border) !important;
}

body.sn-global.sn-light input::placeholder,
body.sn-global.sn-light textarea::placeholder {
  color: rgba(42,21,16,.35) !important;
}

body.sn-global.sn-light .sn-btn-gold,
body.sn-global.sn-light [class*="bg-sn-gold"],
body.sn-global.sn-light button[style*="background:#C9A850"],
body.sn-global.sn-light a[style*="background:#C9A850"] {
  background: #B8922A !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-aside [style*="background:#0D0B07"] {
  background: #FFFFFF !important;
  border-color: rgba(184,146,42,.2) !important;
}

body.sn-global.sn-light .sn-aside [style*="background:#0A0806"] {
  background: var(--sn-bg2) !important;
}


/* Feed elements — Blush & Rose */
body.sn-global.sn-light .sn-post {
  background: #FFFFFF !important;
  border-color: rgba(184,146,42,.15) !important;
}

body.sn-global.sn-light .sn-post-body,
body.sn-global.sn-light .sn-post-header,
body.sn-global.sn-light .sn-post-actions,
body.sn-global.sn-light .sn-post-comments {
  background: #FFFFFF !important;
}

body.sn-global.sn-light .sn-post-author-name {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-post-submeta,
body.sn-global.sn-light .sn-post-feeling,
body.sn-global.sn-light .sn-post-feeling em {
  color: rgba(42,21,16,.5) !important;
}

body.sn-global.sn-light .sn-post-content {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-online-strip {
  background: #FFFFFF !important;
  border-color: rgba(184,146,42,.15) !important;
}

body.sn-global.sn-light .sn-online-label {
  color: rgba(42,21,16,.4) !important;
}

body.sn-global.sn-light .sn-composer {
  background: #FFFFFF !important;
  border-color: rgba(184,146,42,.15) !important;
}

body.sn-global.sn-light .sn-composer-trigger {
  color: rgba(42,21,16,.5) !important;
}

body.sn-global.sn-light .sn-composer-trigger:hover {
  background: rgba(184,146,42,.06) !important;
}

body.sn-global.sn-light .sn-feed-tabs {
  border-bottom-color: rgba(184,146,42,.2) !important;
}

body.sn-global.sn-light .sn-feed-tab {
  color: rgba(42,21,16,.5) !important;
}

body.sn-global.sn-light .sn-feed-tab:hover {
  color: rgba(42,21,16,.75) !important;
}

body.sn-global.sn-light .sn-feed-tab.active {
  color: #B8922A !important;
  border-bottom-color: #B8922A !important;
}

body.sn-global.sn-light .sn-mood-strip {
  background: #FFFFFF !important;
  border-color: rgba(184,146,42,.15) !important;
}

body.sn-global.sn-light .sn-mood-btn {
  background: var(--sn-bg2) !important;
  color: #5A2A1E !important;
  border-color: rgba(184,146,42,.2) !important;
}

body.sn-global.sn-light .sn-mood-btn.active,
body.sn-global.sn-light .sn-mood-btn:hover {
  background: #EDD8CE !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-post-action-btn {
  color: rgba(42,21,16,.5) !important;
}

body.sn-global.sn-light .sn-post-action-btn:hover {
  color: #B8922A !important;
}

body.sn-global.sn-light .sn-post-text {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-comment-input {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border-color: rgba(184,146,42,.2) !important;
}

body.sn-global.sn-light .sn-comment-input::placeholder {
  color: rgba(42,21,16,.35) !important;
}

body.sn-global.sn-light .sn-online-name {
  color: rgba(42,21,16,.6) !important;
}

body.sn-global.sn-light .sn-aside [style*="color:rgba(245,237,216"] {
  color: rgba(42,21,16,.4) !important;
}

body.sn-global.sn-light .sn-feed-ad {
  background: #FFFFFF !important;
  border-color: rgba(184,146,42,.15) !important;
}

/* Feed — additional Blush & Rose */
body.sn-global.sn-light .sn-mood-bar {
  background: #FFFFFF !important;
  border-color: rgba(184,146,42,.15) !important;
}

body.sn-global.sn-light .sn-mood-bar .sn-mood-btn,
body.sn-global.sn-light .sn-status-btn {
  background: var(--sn-bg2) !important;
  color: #5A2A1E !important;
  border-color: rgba(184,146,42,.2) !important;
}

body.sn-global.sn-light .sn-mood-bar .sn-mood-btn.active,
body.sn-global.sn-light .sn-mood-bar .sn-mood-btn:hover {
  background: #EDD8CE !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-post-options-menu,
body.sn-global.sn-light .sn-dropdown,
body.sn-global.sn-light .sn-menu {
  background: #FFFFFF !important;
  border-color: rgba(184,146,42,.2) !important;
}

body.sn-global.sn-light .sn-post-options-menu a,
body.sn-global.sn-light .sn-post-options-menu button {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-post-options-menu a:hover,
body.sn-global.sn-light .sn-post-options-menu button:hover {
  background: var(--sn-bg2) !important;
}

/* LIGHT MODE — AUDIT COMPLETO FINAL */

html.sn-light body.sn-global .sn-topbar,
body.sn-global.sn-light .sn-topbar {
  background: #FFFFFF !important;
  border-bottom: none !important;
}

body.sn-global.sn-light .sn-topbar-search,
body.sn-global.sn-light .sn-topbar-search input,
body.sn-global.sn-light .sn-search-input {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border-color: var(--sn-border) !important;
}

body.sn-global.sn-light .sn-topbar-search input::placeholder {
  color: rgba(42,21,16,.4) !important;
}

body.sn-global.sn-light .sn-search-dropdown {
  background: #FFFFFF !important;
  border-color: var(--sn-border) !important;
  box-shadow: 0 8px 24px rgba(42,21,16,.12) !important;
}

body.sn-global.sn-light .sn-search-dropdown a,
body.sn-global.sn-light .sn-search-result {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-search-dropdown a:hover,
body.sn-global.sn-light .sn-search-result:hover {
  background: var(--sn-bg2) !important;
}

body.sn-global.sn-light input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
body.sn-global.sn-light textarea,
body.sn-global.sn-light select {
  background: #FFFFFF !important;
  color: var(--sn-text) !important;
  border-color: var(--sn-border) !important;
}

body.sn-global.sn-light input::placeholder,
body.sn-global.sn-light textarea::placeholder {
  color: rgba(42,21,16,.35) !important;
}

body.sn-global.sn-light .sn-comment-input,
body.sn-global.sn-light .feeds-comment-input {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border-color: var(--sn-border) !important;
}

body.sn-global.sn-light .sn-bottom-nav {
  background: #FFFFFF !important;
  border-top-color: var(--sn-border-soft) !important;
}

body.sn-global.sn-light .sn-bottom-nav a,
body.sn-global.sn-light .sn-bottom-nav button {
  color: rgba(42,21,16,.5) !important;
}

body.sn-global.sn-light .sn-bottom-nav a.active,
body.sn-global.sn-light .sn-bottom-nav a:hover {
  color: #B8922A !important;
}

body.sn-global.sn-light .sn-sidebar-overlay {
  background: rgba(42,21,16,.5) !important;
}

body.sn-global.sn-light .sn-topbar-btn,
body.sn-global.sn-light .sn-topbar-btn i {
  color: #5A2A1E !important;
}

body.sn-global.sn-light .sn-topbar-btn:hover {
  background: var(--sn-border-soft) !important;
}

body.sn-global.sn-light .sn-topbar-logo {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-notif-dropdown,
body.sn-global.sn-light .sn-account-dropdown {
  background: #FFFFFF !important;
  border-color: var(--sn-border-soft) !important;
  box-shadow: 0 12px 40px rgba(42,21,16,.15) !important;
}

body.sn-global.sn-light .sn-notif-dropdown *,
body.sn-global.sn-light .sn-account-dropdown * {
  color: var(--sn-text) !important;
  border-color: var(--sn-border-soft) !important;
}

body.sn-global.sn-light .sn-notif-item:hover,
body.sn-global.sn-light .sn-account-dropdown a:hover {
  background: var(--sn-bg2) !important;
}

body.sn-global.sn-light .sn-sidebar,
body.sn-global.sn-light .sn-sidebar * {
  border-color: var(--sn-border-soft) !important;
}

body.sn-global.sn-light .sn-nav-link i,
body.sn-global.sn-light .sn-nav-link span {
  color: #5A2A1E !important;
}

body.sn-global.sn-light .sn-nav-badge {
  background: #B8922A !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-sidebar-user-name {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-sidebar-user-role {
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-post-action,
body.sn-global.sn-light .sn-post-actions * {
  color: rgba(42,21,16,.55) !important;
}

body.sn-global.sn-light .sn-post-action:hover {
  color: #B8922A !important;
  background: rgba(184,146,42,.08) !important;
}

body.sn-global.sn-light .sn-post-options-btn {
  color: rgba(42,21,16,.4) !important;
}

body.sn-global.sn-light .sn-badge.sn-badge-verified,
body.sn-global.sn-light span.sn-badge-verified {
  background: #B8922A !important;
  color: #FFFFFF !important;
  border-color: #B8922A !important;
}

body.sn-global.sn-light .sn-badge-boosted {
  background: rgba(184,146,42,.1) !important;
  color: #B8922A !important;
  border-color: rgba(184,146,42,.3) !important;
}

body.sn-global.sn-light .sn-badge-pro {
  background: #B8922A !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-badge-type {
  background: rgba(42,21,16,.06) !important;
  color: rgba(42,21,16,.55) !important;
  border-color: rgba(42,21,16,.12) !important;
}

body.sn-global.sn-light .sn-topbar-badge {
  background: #B8922A !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-aside * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-aside [style*="color:#C9A850"],
body.sn-global.sn-light .sn-aside [style*="color: #C9A850"] {
  color: #B8922A !important;
}

body.sn-global.sn-light .sn-quality-title,
body.sn-global.sn-light .sn-quality-sub {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-quality-cta {
  color: #B8922A !important;
}

body.sn-global.sn-light * {
  scrollbar-color: rgba(184,146,42,.3) rgba(245,230,222,.5) !important;
}

body.sn-global.sn-light [style*="background:#0A0806"],
body.sn-global.sn-light [style*="background: #0A0806"],
body.sn-global.sn-light [style*="background-color:#0A0806"],
body.sn-global.sn-light [style*="background-color: #0A0806"],
body.sn-global.sn-light [style*="background:#0D0B07"],
body.sn-global.sn-light [style*="background: #0D0B07"],
body.sn-global.sn-light [style*="background:#111009"],
body.sn-global.sn-light [style*="background: #111009"],
body.sn-global.sn-light [style*="background-color:#111009"],
body.sn-global.sn-light [style*="background:#1A1612"],
body.sn-global.sn-light [style*="background: #1A1612"],
body.sn-global.sn-light [style*="background:#0B0907"],
body.sn-global.sn-light [style*="background:#000"],
body.sn-global.sn-light [style*="background: #000"] {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-topbar,
body.sn-global.sn-light header.sn-topbar,
body.sn-global.sn-light nav.sn-topbar,
body.sn-global.sn-light [class*="topbar"],
body.sn-global.sn-light .sn-app-topbar {
  background: var(--sn-surface) !important;
  border-bottom: none !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-topbar *,
body.sn-global.sn-light header.sn-topbar * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-brand,
body.sn-global.sn-light .sn-logo-text {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light input#sn-search,
body.sn-global.sn-light input[type="search"],
body.sn-global.sn-light input[type="text"][placeholder*="Search"],
body.sn-global.sn-light .sn-search-input,
body.sn-global.sn-light .sn-search input,
body.sn-global.sn-light .topbar-search input,
body.sn-global.sn-light [class*="search"] input {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light input::placeholder {
  color: var(--sn-text-muted) !important;
  opacity: 0.7;
}

body.sn-global.sn-light #sn-eng-panel-inner,
body.sn-global.sn-light .sn-eng-panel,
body.sn-global.sn-light .sn-engagement-panel,
body.sn-global.sn-light [id*="eng-panel"],
body.sn-global.sn-light [class*="eng-panel"] {
  background: transparent !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light #sn-eng-panel-inner > *,
body.sn-global.sn-light .sn-eng-panel > * {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-feeds-composer,
body.sn-global.sn-light .feeds-composer,
body.sn-global.sn-light .sn-composer,
body.sn-global.sn-light [class*="composer"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-composer input,
body.sn-global.sn-light .sn-composer textarea,
body.sn-global.sn-light .feeds-composer input,
body.sn-global.sn-light .feeds-composer textarea,
body.sn-global.sn-light [class*="composer"] input,
body.sn-global.sn-light [class*="composer"] textarea {
  background: #FFFFFF !important;
  color: var(--sn-text) !important;
  border: 1px solid rgba(122, 92, 53, 0.25) !important;
}

body.sn-global.sn-light .comment-input,
body.sn-global.sn-light .sn-comment-input,
body.sn-global.sn-light input[placeholder*="comment" i],
body.sn-global.sn-light input[placeholder*="Share something" i] {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-page-header,
body.sn-global.sn-light .page-header-card,
body.sn-global.sn-light .sn-section-header,
body.sn-global.sn-light .sn-tabs-header {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-page-header h1,
body.sn-global.sn-light .sn-page-header h2,
body.sn-global.sn-light .sn-page-header h3,
body.sn-global.sn-light .page-header-card h1 {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-tabs-nav,
body.sn-global.sn-light .sn-tabs,
body.sn-global.sn-light [role="tablist"] {
  background: transparent !important;
  border-bottom: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-tab,
body.sn-global.sn-light [role="tab"] {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-tab.active,
body.sn-global.sn-light [role="tab"][aria-selected="true"] {
  color: var(--sn-gold) !important;
  border-bottom-color: var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-settings-row,
body.sn-global.sn-light .settings-field-row,
body.sn-global.sn-light [class*="settings-row"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .messages-sidebar,
body.sn-global.sn-light .msg-sidebar,
body.sn-global.sn-light .conversations-list,
body.sn-global.sn-light [class*="msg-conv"]:not(.active) {
  background: var(--sn-surface) !important;
  border-right: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .msg-conv-name {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .msg-conv-preview,
body.sn-global.sn-light .msg-conv-time {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .msg-conv.active,
body.sn-global.sn-light .conversation-item.active {
  background: var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-post,
body.sn-global.sn-light .feed-post,
body.sn-global.sn-light .post-card,
body.sn-global.sn-light [class*="post-"]:not([class*="post-image"]) {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .speed-dates-search,
body.sn-global.sn-light .slow-dates-search,
body.sn-global.sn-light .dates-filter-bar,
body.sn-global.sn-light select.sn-select {
  background: var(--sn-surface) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .explore-map-header,
body.sn-global.sn-light .map-page-header {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-sidebar,
body.sn-global.sn-light .sidebar-nav,
body.sn-global.sn-light aside.sn-sidebar {
  background: var(--sn-bg) !important;
  border-right: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-sidebar a,
body.sn-global.sn-light .sn-sidebar .nav-item {
  color: var(--sn-text-soft) !important;
}

body.sn-global.sn-light .sn-sidebar a:hover,
body.sn-global.sn-light .sn-sidebar .nav-item:hover {
  color: var(--sn-gold) !important;
  background: var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-sidebar a.active,
body.sn-global.sn-light .sn-sidebar .nav-item.active,
body.sn-global.sn-light .sn-sidebar [aria-current="page"] {
  color: var(--sn-gold) !important;
  background: var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-sidebar-group-label,
body.sn-global.sn-light .sidebar-section-title {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .listings-search,
body.sn-global.sn-light .listings-filter-bar {
  background: var(--sn-surface) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-badge:not(.sn-badge-verified):not(.sn-badge-pro):not(.sn-badge-type),
body.sn-global.sn-light .notification-badge {
  background: var(--sn-gold) !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-badge.sn-badge-pro,
body.sn-global.sn-light .sn-badge.sn-badge-type {
  background: #B8922A !important;
  color: #FFFFFF !important;
  border-color: #B8922A !important;
}

body.sn-global.sn-light .sn-badge.sn-badge-verified,
body.sn-global.sn-light span.sn-badge-verified {
  background: #B8922A !important;
  color: #FFFFFF !important;
  border-color: #B8922A !important;
}

body.sn-global.sn-light .sn-topbar svg,
body.sn-global.sn-light .sn-topbar i,
body.sn-global.sn-light .sn-topbar [class*="ri-"] {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-dropdown,
body.sn-global.sn-light .dropdown-menu,
body.sn-global.sn-light [class*="dropdown-content"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
  box-shadow: 0 4px 24px var(--sn-border-soft) !important;
}


/* SN LIGHT MODE — Blush & Rose v3 (Surgical Fixes) */

body.sn-global.sn-light [style*="color:#F5EDD8"],
body.sn-global.sn-light [style*="color: #F5EDD8"],
body.sn-global.sn-light [style*="color:#FFFFFF"],
body.sn-global.sn-light [style*="color: #FFFFFF"],
body.sn-global.sn-light [style*="color:#FFF"],
body.sn-global.sn-light [style*="color: #FFF"],
body.sn-global.sn-light [style*="color:#FFFEFC"],
body.sn-global.sn-light [style*="color: #FFFEFC"],
body.sn-global.sn-light [style*="color:#EFEBE0"],
body.sn-global.sn-light [style*="color: #EFEBE0"] {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light [style*="color:rgba(245,237,216"],
body.sn-global.sn-light [style*="color: rgba(245,237,216"],
body.sn-global.sn-light [style*="color:rgba(245, 237, 216"],
body.sn-global.sn-light [style*="color: rgba(245, 237, 216"] {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-settings-row,
body.sn-global.sn-light .sn-settings-row *,
body.sn-global.sn-light [class*="settings-row"] *,
body.sn-global.sn-light .sn-page-header,
body.sn-global.sn-light .sn-page-header * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-section-title,
body.sn-global.sn-light .section-label,
body.sn-global.sn-light [class*="section-label"],
body.sn-global.sn-light h2.sn-h2,
body.sn-global.sn-light h3.sn-h3 {
  color: var(--sn-text-muted) !important;
  letter-spacing: 0.1em;
}

body.sn-global.sn-light .badge-not-set,
body.sn-global.sn-light [class*="not-set"] {
  background: rgba(184, 146, 42, 0.12) !important;
  color: var(--sn-gold) !important;
  border: 1px solid rgba(184, 146, 42, 0.3) !important;
}

body.sn-global.sn-light h1,
body.sn-global.sn-light h2,
body.sn-global.sn-light .sn-page-title {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-post .post-header,
body.sn-global.sn-light .sn-post .post-body,
body.sn-global.sn-light .sn-post .post-footer,
body.sn-global.sn-light .sn-post [class*="post-header"],
body.sn-global.sn-light .sn-post [class*="post-body"],
body.sn-global.sn-light .sn-post [class*="post-meta"],
body.sn-global.sn-light .sn-post [class*="post-author"],
body.sn-global.sn-light .feed-post .post-header,
body.sn-global.sn-light .feed-post .post-body,
body.sn-global.sn-light .feed-post .post-footer {
  background: transparent !important;
  border: none !important;
}

body.sn-global.sn-light .sn-post .username,
body.sn-global.sn-light .sn-post .post-author-name,
body.sn-global.sn-light .feed-post .username,
body.sn-global.sn-light [class*="post-author"] {
  color: var(--sn-text) !important;
  background: transparent !important;
  border: none !important;
}

body.sn-global.sn-light .sn-post .post-time,
body.sn-global.sn-light .sn-post .post-meta,
body.sn-global.sn-light .feed-post .post-time {
  color: var(--sn-text-muted) !important;
  background: transparent !important;
  border: none !important;
}

body.sn-global.sn-light .sn-post .post-content,
body.sn-global.sn-light .sn-post .post-text,
body.sn-global.sn-light .feed-post .post-content {
  color: var(--sn-text) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-post .post-actions,
body.sn-global.sn-light .sn-post [class*="post-action"],
body.sn-global.sn-light .feed-post .post-actions {
  background: transparent !important;
  border: none !important;
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .promoted-badge,
body.sn-global.sn-light .ad-badge,
body.sn-global.sn-light [class*="promoted"]:not(.sn-section-promoted),
body.sn-global.sn-light .sn-tag {
  background: rgba(42, 21, 16, 0.85) !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-theme-toggle,
body.sn-global.sn-light [class*="theme-toggle"] {
  color: var(--sn-text) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-notification-btn,
body.sn-global.sn-light .sn-message-btn,
body.sn-global.sn-light [class*="notification-btn"],
body.sn-global.sn-light [class*="message-btn"] {
  color: var(--sn-text) !important;
  background: transparent !important;
}

body.sn-global.sn-light .topbar-badge,
body.sn-global.sn-light .notification-count {
  background: var(--sn-gold) !important;
  color: #FFFFFF !important;
  border: 2px solid var(--sn-surface) !important;
}

body.sn-global.sn-light .sn-sidebar .user-name,
body.sn-global.sn-light .sn-sidebar .username {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-sidebar .user-tier,
body.sn-global.sn-light .sn-sidebar [class*="tier"],
body.sn-global.sn-light .sn-sidebar [class*="member-type"] {
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-mood-pill,
body.sn-global.sn-light .mood-pill,
body.sn-global.sn-light [class*="mood-"] {
  background: rgba(184, 146, 42, 0.08) !important;
  border: 1px solid rgba(184, 146, 42, 0.25) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-mood-pill.active,
body.sn-global.sn-light .mood-pill.active {
  background: var(--sn-gold) !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .online-widget,
body.sn-global.sn-light .online-now-card,
body.sn-global.sn-light [class*="online-now"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-feed-tabs,
body.sn-global.sn-light [class*="feed-tabs"] {
  background: transparent !important;
  border-bottom: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-feed-tabs button,
body.sn-global.sn-light .sn-feed-tabs a,
body.sn-global.sn-light [class*="feed-tabs"] > * {
  color: var(--sn-text-muted) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-feed-tabs button.active,
body.sn-global.sn-light .sn-feed-tabs a.active,
body.sn-global.sn-light [class*="feed-tabs"] [aria-current="page"],
body.sn-global.sn-light [class*="feed-tabs"] .active {
  color: var(--sn-gold) !important;
  border-bottom: 2px solid var(--sn-gold) !important;
}

body.sn-global.sn-light [style*="color:rgba(255,255,255"],
body.sn-global.sn-light [style*="color: rgba(255,255,255"],
body.sn-global.sn-light [style*="color:rgba(255, 255, 255"] {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light aside .sn-tag-pro,
body.sn-global.sn-light aside .sn-tag-verified,
body.sn-global.sn-light .sidebar-user-info * {
  color: inherit !important;
}

/* SN LIGHT MODE — Blush & Rose v4 (Real Selectors) */

body.sn-global.sn-light .sn-set-body,
body.sn-global.sn-light .sn-set-body * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-set-card {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
  padding: 14px !important;
}

body.sn-global.sn-light .sn-set-row {
  background: transparent !important;
  border-bottom: 1px solid var(--sn-border-soft) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-set-row:last-child {
  border-bottom: none !important;
}

body.sn-global.sn-light .sn-set-row-label {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-set-row-value,
body.sn-global.sn-light .sn-set-row-value * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-set-section-title,
body.sn-global.sn-light .sn-set-card-title,
body.sn-global.sn-light .sn-set-group-label {
  color: var(--sn-text-muted) !important;
  letter-spacing: 0.1em;
}

body.sn-global.sn-light .sn-tab-content,
body.sn-global.sn-light .sn-tab-content * {
  color: var(--sn-text);
}

body.sn-global.sn-light .sn-set-tabs,
body.sn-global.sn-light .sn-tabs-nav {
  background: transparent !important;
  border-bottom: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-set-tab,
body.sn-global.sn-light .sn-tab {
  color: var(--sn-text-muted) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-set-tab.active,
body.sn-global.sn-light .sn-tab.active {
  color: var(--sn-gold) !important;
  border-bottom: 2px solid var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-set-header,
body.sn-global.sn-light .sn-set-page-header {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-set-header *,
body.sn-global.sn-light .sn-set-page-header * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-set-header a,
body.sn-global.sn-light .sn-set-page-header a {
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light article.sn-post {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-post-header,
body.sn-global.sn-light .sn-post-meta,
body.sn-global.sn-light .sn-post-author,
body.sn-global.sn-light .sn-post-author-name,
body.sn-global.sn-light .sn-post-time,
body.sn-global.sn-light .sn-post-body,
body.sn-global.sn-light .sn-post-content,
body.sn-global.sn-light .sn-post-text,
body.sn-global.sn-light .sn-post-footer,
body.sn-global.sn-light .sn-post-actions,
body.sn-global.sn-light .sn-post-action,
body.sn-global.sn-light .sn-post-stats {
  background: transparent !important;
  border: none !important;
}

body.sn-global.sn-light .sn-post-author-name,
body.sn-global.sn-light a.sn-post-author-name {
  color: var(--sn-text) !important;
  font-weight: 600;
}

body.sn-global.sn-light .sn-post-time,
body.sn-global.sn-light .sn-post-meta {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-post-content,
body.sn-global.sn-light .sn-post-text,
body.sn-global.sn-light .sn-post-body {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-post-action,
body.sn-global.sn-light .sn-post-actions a,
body.sn-global.sn-light .sn-post-actions button {
  color: var(--sn-text-muted) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-post-action:hover {
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-feed-tabs {
  background: transparent !important;
  border-bottom: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-feed-tab {
  color: var(--sn-text-muted) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-feed-tab.active,
body.sn-global.sn-light a.sn-feed-tab.active {
  color: var(--sn-gold) !important;
  border-bottom: 2px solid var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-online-strip,
body.sn-global.sn-light [class*="online-strip"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-mood-bar,
body.sn-global.sn-light [class*="mood-bar"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-mood-label {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-post-author-name,
body.sn-global.sn-light .sn-post-time,
body.sn-global.sn-light .sn-post-meta,
body.sn-global.sn-light .sn-post-author,
body.sn-global.sn-light .sn-post-header,
body.sn-global.sn-light .sn-post-body,
body.sn-global.sn-light .sn-post-footer,
body.sn-global.sn-light .sn-post-content,
body.sn-global.sn-light .sn-post-actions,
body.sn-global.sn-light .sn-post-action,
body.sn-global.sn-light .sn-post-stats {
  border: none !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-ad-badge,
body.sn-global.sn-light .ad-promoted-tag,
body.sn-global.sn-light .sn-promoted-label {
  background: rgba(42, 21, 16, 0.85) !important;
  color: #FFFFFF !important;
  border: none !important;
}

body.sn-global.sn-light .sn-eng-card,
body.sn-global.sn-light [class*="eng-card"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-eng-card * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-eng-section-label,
body.sn-global.sn-light .sn-eng-card-label {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-streak-number,
body.sn-global.sn-light .sn-streak-count {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-mission-row {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-mission-row.completed {
  color: var(--sn-text-muted) !important;
  text-decoration: line-through;
}

body.sn-global.sn-light .sn-special-offer,
body.sn-global.sn-light [class*="special-offer"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-special-offer a,
body.sn-global.sn-light .sn-offer-cta {
  background: var(--sn-gold) !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-online-count,
body.sn-global.sn-light [class*="online-count"] {
  color: var(--sn-text) !important;
}

/* SN LIGHT MODE — Blush & Rose v5 (Messages + Polish) */

body.sn-global.sn-light .sn-msg-wrap,
body.sn-global.sn-light #sn-msg-wrap {
  background: var(--sn-bg) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-sidebar {
  background: var(--sn-surface) !important;
  border-right: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-sidebar-top {
  background: var(--sn-surface) !important;
  border-bottom: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-msg-title {
  color: var(--sn-text) !important;
  font-weight: 600;
}

body.sn-global.sn-light .sn-msg-search {
  background: var(--sn-bg2) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-msg-search input {
  background: transparent !important;
  color: var(--sn-text) !important;
  border: none !important;
}

body.sn-global.sn-light .sn-msg-search input::placeholder {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-msg-conv-list,
body.sn-global.sn-light #sn-conv-list {
  background: transparent !important;
}

body.sn-global.sn-light .sn-conv {
  background: transparent !important;
  border-bottom: 1px solid var(--sn-border-soft) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-conv:hover {
  background: var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-conv.active,
body.sn-global.sn-light a.sn-conv.active {
  background: var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-conv-info,
body.sn-global.sn-light .sn-conv-info * {
  color: var(--sn-text) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-conv-name {
  color: var(--sn-text) !important;
  font-weight: 600;
}

body.sn-global.sn-light .sn-conv-preview,
body.sn-global.sn-light .sn-conv-snippet,
body.sn-global.sn-light .sn-conv-time,
body.sn-global.sn-light .sn-conv-meta {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-conv-unread,
body.sn-global.sn-light .sn-conv-badge {
  background: var(--sn-gold) !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-msg-area,
body.sn-global.sn-light .sn-msg-main,
body.sn-global.sn-light .sn-chat-area,
body.sn-global.sn-light .sn-msg-empty,
body.sn-global.sn-light [class*="msg-empty"],
body.sn-global.sn-light [class*="chat-placeholder"] {
  background: var(--sn-bg) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-empty *,
body.sn-global.sn-light .sn-chat-area * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-msg-header,
body.sn-global.sn-light .sn-chat-header {
  background: var(--sn-surface) !important;
  border-bottom: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-header *,
body.sn-global.sn-light .sn-chat-header * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-body,
body.sn-global.sn-light .sn-chat-body,
body.sn-global.sn-light .sn-messages-list {
  background: var(--sn-bg) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-bubble.them,
body.sn-global.sn-light .sn-msg-bubble.them,
body.sn-global.sn-light [class*="bubble-them"] {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border-soft) !important;
}

body.sn-global.sn-light .sn-bubble.me,
body.sn-global.sn-light .sn-msg-bubble.me,
body.sn-global.sn-light [class*="bubble-me"] {
  background: var(--sn-gold-bg) !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-msg-footer,
body.sn-global.sn-light .sn-chat-footer,
body.sn-global.sn-light .sn-msg-composer,
body.sn-global.sn-light .sn-chat-composer {
  background: var(--sn-surface) !important;
  border-top: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-msg-footer textarea,
body.sn-global.sn-light .sn-msg-footer input,
body.sn-global.sn-light .sn-chat-composer textarea,
body.sn-global.sn-light .sn-chat-composer input {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-sb-group-label {
  color: var(--sn-text-muted) !important;
  letter-spacing: 0.1em;
  opacity: 0.85;
}

body.sn-global.sn-light .sn-sb-group {
  background: transparent !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-sb-item,
body.sn-global.sn-light .sn-sb-link,
body.sn-global.sn-light a.sn-sb-item,
body.sn-global.sn-light a.sn-sb-link {
  color: var(--sn-text-soft) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-sb-item:hover,
body.sn-global.sn-light .sn-sb-link:hover {
  color: var(--sn-gold) !important;
  background: var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-sb-item.active,
body.sn-global.sn-light .sn-sb-link.active,
body.sn-global.sn-light a.sn-sb-item[aria-current="page"],
body.sn-global.sn-light .sn-sb-item[data-active="true"] {
  color: var(--sn-gold) !important;
  background: var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-sb-user,
body.sn-global.sn-light .sn-sidebar-user {
  background: transparent !important;
  border-bottom: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-sb-user *,
body.sn-global.sn-light .sn-sidebar-user * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-sb-user-tier,
body.sn-global.sn-light [class*="user-tier"] {
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-sb-badge,
body.sn-global.sn-light .sn-sb-count {
  background: var(--sn-gold-soft) !important;
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-feed-ad-tag,
body.sn-global.sn-light .sn-ad-promoted,
body.sn-global.sn-light [class*="ad-tag"] {
  background: rgba(42, 21, 16, 0.85) !important;
  color: #FFFFFF !important;
}

body.sn-global.sn-light .sn-sb-section-divider,
body.sn-global.sn-light hr.sn-sb-divider {
  border-color: var(--sn-border-soft) !important;
}

/* SN LIGHT MODE — Blush & Rose v6 (Messages Final + Polish) */

body.sn-global.sn-light .sn-msg-chat,
body.sn-global.sn-light .sn-msg-no-chat,
body.sn-global.sn-light div.sn-msg-no-chat {
  background: var(--sn-bg) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-no-chat *,
body.sn-global.sn-light .sn-msg-chat > .sn-msg-no-chat * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-msg-no-chat h2,
body.sn-global.sn-light .sn-msg-no-chat h3,
body.sn-global.sn-light .sn-msg-no-chat .title,
body.sn-global.sn-light .sn-msg-no-chat strong {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-no-chat p,
body.sn-global.sn-light .sn-msg-no-chat .subtitle,
body.sn-global.sn-light .sn-msg-no-chat span {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-msg-sidebar .sn-msg-search,
body.sn-global.sn-light .sn-msg-sidebar div.sn-msg-search {
  background: var(--sn-bg2) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-msg-sidebar .sn-msg-search input,
body.sn-global.sn-light .sn-msg-sidebar .sn-msg-search input[type],
body.sn-global.sn-light div.sn-msg-search > input {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--sn-text) !important;
  border: none !important;
  box-shadow: none !important;
}

body.sn-global.sn-light .sn-msg-search input::placeholder {
  color: var(--sn-text-muted) !important;
  opacity: 0.7 !important;
}

/* SN LIGHT MODE — Blush & Rose v6 (Messages Final + Polish) */

body.sn-global.sn-light .sn-msg-chat,
body.sn-global.sn-light .sn-msg-no-chat,
body.sn-global.sn-light div.sn-msg-no-chat {
  background: var(--sn-bg) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-no-chat *,
body.sn-global.sn-light .sn-msg-chat > .sn-msg-no-chat * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-msg-no-chat h2,
body.sn-global.sn-light .sn-msg-no-chat h3,
body.sn-global.sn-light .sn-msg-no-chat .title,
body.sn-global.sn-light .sn-msg-no-chat strong {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-msg-no-chat p,
body.sn-global.sn-light .sn-msg-no-chat .subtitle,
body.sn-global.sn-light .sn-msg-no-chat span {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-msg-sidebar .sn-msg-search,
body.sn-global.sn-light .sn-msg-sidebar div.sn-msg-search {
  background: var(--sn-bg2) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-msg-sidebar .sn-msg-search input,
body.sn-global.sn-light .sn-msg-sidebar .sn-msg-search input[type],
body.sn-global.sn-light div.sn-msg-search > input {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--sn-text) !important;
  border: none !important;
  box-shadow: none !important;
}

body.sn-global.sn-light .sn-msg-search input::placeholder {
  color: var(--sn-text-muted) !important;
  opacity: 0.7 !important;
}

/* SN LIGHT MODE — Blush & Rose v7 (Specificity Override) */

body.sn-global.sn-light input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
body.sn-global.sn-light textarea,
body.sn-global.sn-light select {
  background: var(--sn-surface) !important;
  background-color: var(--sn-surface) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-msg-search input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
body.sn-global.sn-light .sn-msg-sidebar input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]) {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light input#sn-search:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]) {
  background: var(--sn-bg2) !important;
  background-color: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-composer textarea:not([disabled]),
body.sn-global.sn-light .feeds-composer textarea:not([disabled]),
body.sn-global.sn-light [class*="composer"] textarea:not([disabled]) {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 1px solid rgba(122, 92, 53, 0.25) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light input::placeholder,
body.sn-global.sn-light textarea::placeholder {
  color: var(--sn-text-muted) !important;
  opacity: 0.65 !important;
}

/* SN LIGHT MODE Blush Rose v8 Pages Polish */

body.sn-global.sn-light .sn-content,
body.sn-global.sn-light #sn-content-wrap,
body.sn-global.sn-light .sn-content-wrap {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-dates-wrap,
body.sn-global.sn-light .sn-dates-grid,
body.sn-global.sn-light .sn-dates-header {
  background: transparent !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-dates-title {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-dates-subtitle,
body.sn-global.sn-light .sn-dates-count {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-dc {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-dc-body,
body.sn-global.sn-light .sn-dc-body * {
  color: var(--sn-text) !important;
  background: transparent !important;
}

body.sn-global.sn-light .sn-dc-body .sn-dc-title,
body.sn-global.sn-light .sn-dc-name,
body.sn-global.sn-light .sn-dc-username {
  color: var(--sn-text) !important;
  font-weight: 600;
}

body.sn-global.sn-light .sn-dc-status,
body.sn-global.sn-light .sn-dc-availability {
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light .sn-dc-meta,
body.sn-global.sn-light .sn-dc-location,
body.sn-global.sn-light .sn-dc-time,
body.sn-global.sn-light .sn-dc-description {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-dc-tag,
body.sn-global.sn-light .sn-dc-badge {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-sd-announce,
body.sn-global.sn-light .sn-dates-announce,
body.sn-global.sn-light [class*="dates-announce"],
body.sn-global.sn-light [class*="sd-announce"] {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-gold-soft) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-sd-announce *,
body.sn-global.sn-light .sn-dates-announce * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-dates-toolbar,
body.sn-global.sn-light .sn-dates-actions {
  background: transparent !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-lst-title {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-lst-subtitle,
body.sn-global.sn-light .sn-lst-count {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-lst-stats {
  background: transparent !important;
}

body.sn-global.sn-light .sn-stat {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-stat-val {
  color: var(--sn-text) !important;
  font-weight: 700;
}

body.sn-global.sn-light .sn-stat-label {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-lst-search,
body.sn-global.sn-light .sn-lst-search-bar {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-lst-section-title,
body.sn-global.sn-light .sn-section-featured {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-region-panel,
body.sn-global.sn-light .sn-explore-region {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-region-panel *,
body.sn-global.sn-light .sn-explore-region * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-page-h1,
body.sn-global.sn-light .sn-h1,
body.sn-global.sn-light .sn-h2,
body.sn-global.sn-light .sn-section-title {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-account-dropdown {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
  box-shadow: 0 4px 24px var(--sn-border-soft) !important;
}

body.sn-global.sn-light .sn-account-dropdown * {
  color: inherit !important;
}

body.sn-global.sn-light .sn-acct-name {
  color: var(--sn-text) !important;
  font-weight: 600;
}

body.sn-global.sn-light .sn-acct-tier,
body.sn-global.sn-light .sn-acct-meta {
  color: var(--sn-text-muted) !important;
}

/* SN LIGHT MODE Blush Rose v9 Post Inner Cleanup */

body.sn-global.sn-light .sn-post-avatar-wrap,
body.sn-global.sn-light .sn-post-submeta,
body.sn-global.sn-light .sn-post-submeta-sep,
body.sn-global.sn-light .sn-post-options,
body.sn-global.sn-light .sn-post-dots-menu,
body.sn-global.sn-light .sn-post-dots-btn,
body.sn-global.sn-light .sn-post-avatar,
body.sn-global.sn-light .sn-post-comments,
body.sn-global.sn-light .sn-post-comment,
body.sn-global.sn-light .sn-post-comment-input-wrap,
body.sn-global.sn-light .sn-comment-input-wrap,
body.sn-global.sn-light .sn-post-reactions,
body.sn-global.sn-light .sn-post-views {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
}

body.sn-global.sn-light .sn-post-submeta {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-post-submeta-sep {
  color: var(--sn-text-muted) !important;
  opacity: 0.5;
}

body.sn-global.sn-light .sn-post-dots-btn,
body.sn-global.sn-light .sn-post-options-btn {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-post-dots-btn:hover,
body.sn-global.sn-light .sn-post-options-btn:hover {
  color: var(--sn-text) !important;
  background: var(--sn-bg2) !important;
}

body.sn-global.sn-light .sn-post-comment-input,
body.sn-global.sn-light .sn-comment-input,
body.sn-global.sn-light input.sn-comment-input,
body.sn-global.sn-light input.feeds-comment-input {
  background: var(--sn-bg2) !important;
  background-color: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-post-dots-menu {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  box-shadow: 0 4px 16px var(--sn-border-soft) !important;
}

body.sn-global.sn-light .sn-post-dots-menu * {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light .sn-post-dots-menu a:hover,
body.sn-global.sn-light .sn-post-dots-menu button:hover {
  background: var(--sn-gold-soft) !important;
}

body.sn-global.sn-light .sn-dates-announce,
body.sn-global.sn-light .sn-sd-announce {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
  opacity: 1 !important;
}

body.sn-global.sn-light .sn-dates-announce > *,
body.sn-global.sn-light .sn-sd-announce > * {
  color: var(--sn-text) !important;
  opacity: 1 !important;
}

body.sn-global.sn-light .sn-dates-announce-title,
body.sn-global.sn-light .sn-sd-announce-title {
  color: var(--sn-text) !important;
  font-weight: 600;
}

body.sn-global.sn-light .sn-dates-announce-subtitle,
body.sn-global.sn-light .sn-sd-announce-subtitle {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light .sn-dates-btn-secondary,
body.sn-global.sn-light .sn-btn-secondary {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light .sn-dates-btn-secondary:hover,
body.sn-global.sn-light .sn-btn-secondary:hover {
  background: var(--sn-gold-soft) !important;
}

/* SN LIGHT MODE Blush Rose v10 — Final Specificity Win */

body.sn-global.sn-light article.sn-post.sn-post .sn-post-avatar-wrap,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-submeta,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-submeta-sep,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-options,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-dots-btn,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-avatar,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-comments,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-comment,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-comment-input-wrap,
body.sn-global.sn-light article.sn-post.sn-post .sn-comment-input-wrap,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-reactions,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-views,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-header,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-meta,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-author,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-author-name,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-time,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-body,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-content,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-text,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-footer,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-actions,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-action,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-stats {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-width: 0 !important;
  border-style: none !important;
}

body.sn-global.sn-light article.sn-post.sn-post .sn-post-author-name {
  color: var(--sn-text) !important;
  font-weight: 600;
}

body.sn-global.sn-light article.sn-post.sn-post .sn-post-submeta,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-time,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-meta {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light article.sn-post.sn-post .sn-post-content,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-text,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-body {
  color: var(--sn-text) !important;
}

body.sn-global.sn-light article.sn-post.sn-post .sn-post-action,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-actions a,
body.sn-global.sn-light article.sn-post.sn-post .sn-post-actions button {
  color: var(--sn-text-muted) !important;
}

body.sn-global.sn-light article.sn-post.sn-post .sn-post-action:hover {
  color: var(--sn-gold) !important;
}

body.sn-global.sn-light article.sn-post.sn-post .sn-post-comment-input,
body.sn-global.sn-light article.sn-post.sn-post input.sn-comment-input,
body.sn-global.sn-light article.sn-post.sn-post input.feeds-comment-input {
  background: var(--sn-bg2) !important;
  background-color: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}

body.sn-global.sn-light article.sn-post.sn-post .sn-post-dots-menu {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  box-shadow: 0 4px 16px var(--sn-border-soft) !important;
}


/* ─────────────────────────────────────────────────
   LIGHT MODE — BUG FIXES (mood pills, topbar, badges, composer)
   Appended 2026-04-28
   ───────────────────────────────────────────────── */

/* ── BUG 1: Mood/status pills — wrapper distinto + label sin caja ── */
body.sn-global.sn-light .sn-mood-bar {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  border-radius: 12px !important;
}
body.sn-global.sn-light .sn-mood-label {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  color: var(--sn-text-muted) !important;
}
body.sn-global.sn-light .sn-mood-btn,
body.sn-global.sn-light .sn-status-btn,
body.sn-global.sn-light .sn-mood-pill,
body.sn-global.sn-light .mood-pill {
  background: var(--sn-bg2) !important;
  color: var(--sn-text) !important;
  border: 1px solid var(--sn-border) !important;
}
body.sn-global.sn-light .sn-mood-btn.active,
body.sn-global.sn-light .sn-mood-btn:hover,
body.sn-global.sn-light .sn-status-btn.active,
body.sn-global.sn-light .sn-status-btn:hover,
body.sn-global.sn-light .sn-mood-pill.active,
body.sn-global.sn-light .mood-pill.active {
  background: var(--sn-gold-bg) !important;
  color: #FFFFFF !important;
  border-color: var(--sn-gold-bg-strong) !important;
}

/* ── BUG 2/3: Topbar — sin cuadros ni líneas alrededor de iconos/search ── */
body.sn-global.sn-light .sn-topbar,
body.sn-global.sn-light header.sn-topbar {
  background: var(--sn-surface) !important;
  border-bottom: none !important;
}
body.sn-global.sn-light .sn-topbar-btn {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-topbar-btn:hover {
  background: var(--sn-gold-faint) !important;
  color: var(--sn-gold-bg) !important;
}
body.sn-global.sn-light .sn-topbar-btn i,
body.sn-global.sn-light .sn-topbar-btn svg,
body.sn-global.sn-light .sn-topbar-btn [class*="ri-"] {
  color: inherit !important;
}
body.sn-global.sn-light .sn-topbar-divider {
  background: var(--sn-border) !important;
  border: none !important;
}
body.sn-global.sn-light .sn-topbar-search-wrap {
  background: transparent !important;
  border: none !important;
}
body.sn-global.sn-light .sn-topbar-search,
body.sn-global.sn-light input#sn-search.sn-topbar-search {
  background: var(--sn-bg2) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-topbar-search::placeholder {
  color: var(--sn-text-muted) !important;
}
body.sn-global.sn-light .sn-topbar-search:focus {
  border-color: var(--sn-gold-border) !important;
}
body.sn-global.sn-light .sn-topbar-logo,
body.sn-global.sn-light .sn-topbar-logo span {
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-topbar-avatar {
  border: 1.5px solid var(--sn-gold-border) !important;
  background: var(--sn-gold-faint) !important;
  color: var(--sn-gold-bg) !important;
}
body.sn-global.sn-light .sn-topbar-badge {
  background: var(--sn-gold-bg) !important;
  color: #FFFFFF !important;
  border: 2px solid var(--sn-surface) !important;
}

/* ── BUG 4: Your badges — texto legible en cualquier color ── */
body.sn-global.sn-light .sn-mybadge {
  color: var(--sn-text) !important;
  background: var(--sn-gold-faint) !important;
  border: .5px solid var(--sn-gold-border) !important;
}
body.sn-global.sn-light .sn-mybadge i {
  color: var(--sn-gold-bg) !important;
}

/* ── BUG 5: Composer — restaurar estructura visual (override inline styles) ── */
body.sn-global.sn-light .sn-composer {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
  border-radius: 12px !important;
}
body.sn-global.sn-light .sn-composer-trigger {
  background: var(--sn-bg2) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text-muted) !important;
}
body.sn-global.sn-light .sn-composer-trigger > div {
  color: var(--sn-text-muted) !important;
}
body.sn-global.sn-light .sn-composer-body form,
body.sn-global.sn-light .sn-composer form {
  background: var(--sn-surface) !important;
  border: 1px solid var(--sn-border) !important;
}
body.sn-global.sn-light .sn-composer textarea,
body.sn-global.sn-light .sn-composer-body textarea {
  background: var(--sn-bg2) !important;
  background-color: var(--sn-bg2) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-composer textarea::placeholder {
  color: var(--sn-text-muted) !important;
  opacity: 0.7 !important;
}
body.sn-global.sn-light .sn-composer select {
  background: var(--sn-bg2) !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-composer [id$="-composer-feeling-picker"],
body.sn-global.sn-light .sn-composer [id$="-composer-tag-picker"],
body.sn-global.sn-light .sn-composer [id$="-composer-loc-picker"],
body.sn-global.sn-light .sn-composer [id$="-composer-act-picker"] {
  background: var(--sn-bg2) !important;
  border: .5px solid var(--sn-border) !important;
}
body.sn-global.sn-light .sn-composer [id$="-composer-feeling-picker"] *,
body.sn-global.sn-light .sn-composer [id$="-composer-tag-picker"] *,
body.sn-global.sn-light .sn-composer [id$="-composer-loc-picker"] *,
body.sn-global.sn-light .sn-composer [id$="-composer-act-picker"] * {
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-composer [id$="-composer-tag-picker"] input,
body.sn-global.sn-light .sn-composer [id$="-composer-loc-picker"] input {
  background: var(--sn-surface) !important;
  border: .5px solid var(--sn-border) !important;
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-composer .sn-feel-opt:hover,
body.sn-global.sn-light .sn-composer .sn-act-opt:hover {
  background: var(--sn-gold-faint) !important;
}

/* Toolbar buttons (Photo/Mood/Tag/Location/Activity + Cancel) */
body.sn-global.sn-light .sn-composer button[data-action="media"],
body.sn-global.sn-light .sn-composer button[data-action="feeling"],
body.sn-global.sn-light .sn-composer button[data-action="tag"],
body.sn-global.sn-light .sn-composer button[data-action="location"],
body.sn-global.sn-light .sn-composer button[data-action="activity"],
body.sn-global.sn-light .sn-composer button[data-action="cancel"] {
  background: transparent !important;
  border: 1px solid var(--sn-border) !important;
  color: var(--sn-text-muted) !important;
}
body.sn-global.sn-light .sn-composer button[data-action="media"]:hover,
body.sn-global.sn-light .sn-composer button[data-action="feeling"]:hover,
body.sn-global.sn-light .sn-composer button[data-action="tag"]:hover,
body.sn-global.sn-light .sn-composer button[data-action="location"]:hover,
body.sn-global.sn-light .sn-composer button[data-action="activity"]:hover {
  color: var(--sn-gold-bg) !important;
  border-color: var(--sn-gold-border) !important;
  background: var(--sn-gold-faint) !important;
}
body.sn-global.sn-light .sn-composer button[data-action="submit"] {
  background: var(--sn-gold-bg) !important;
  color: #FFFFFF !important;
  border: none !important;
}
body.sn-global.sn-light .sn-composer button[data-action="submit"]:hover {
  background: var(--sn-gold-bg-strong) !important;
}

/* Catch-all overrides for remaining inline cream colors and dark backgrounds inside composer */
body.sn-global.sn-light .sn-composer [style*="color:rgba(245,237,216"],
body.sn-global.sn-light .sn-composer [style*="color: rgba(245,237,216"] {
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-composer [style*="color:#F5EDD8"],
body.sn-global.sn-light .sn-composer [style*="color: #F5EDD8"] {
  color: var(--sn-text) !important;
}
body.sn-global.sn-light .sn-composer [style*="background:#111009"],
body.sn-global.sn-light .sn-composer [style*="background: #111009"] {
  background: var(--sn-surface) !important;
}
body.sn-global.sn-light .sn-composer [style*="background:#1A1608"],
body.sn-global.sn-light .sn-composer [style*="background: #1A1608"] {
  background: var(--sn-bg2) !important;
}
body.sn-global.sn-light .sn-composer [style*="background:rgba(245,237,216"] {
  background: var(--sn-bg2) !important;
}

/* Fix rayas debajo logo, actions y notif-wrap */
body.sn-global.sn-light .sn-topbar-logo {
  border-bottom: none !important;
}
body.sn-global.sn-light .sn-topbar-actions {
  border-bottom: none !important;
}
body.sn-global.sn-light .sn-topbar-notif-wrap {
  border-bottom: none !important;
}

/* Fix cuadrado avatar topbar */
body.sn-global.sn-light .sn-topbar-avatar {
  border: none !important;
  background: transparent !important;
  border-radius: 50% !important;
}
body.sn-global.sn-light .sn-acct-avatar {
  border: none !important;
  background: transparent !important;
}

/* === LIGHT MODE: Founding Member badge — estilo gold sólido === */
body.sn-global.sn-light .sn-mybadge {
  background: #F5E6B0 !important;
  color: #2C1F0E !important;
  border: 1.5px solid #B8922A !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
}
body.sn-global.sn-light .sn-mybadge *,
body.sn-global.sn-light .sn-mybadge span,
body.sn-global.sn-light .sn-mybadge i {
  color: #2C1F0E !important;
}

/* === LIGHT MODE: Miembro PRO badge en sidebar — destaca en gold === */
body.sn-global.sn-light .sn-sb-plan {
  color: #B8922A !important;
  font-weight: 700 !important;
  font-size: 9px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  background: rgba(184,146,42,0.12) !important;
  border: 1px solid rgba(184,146,42,0.35) !important;
  border-radius: 4px !important;
  padding: 1px 6px !important;
  display: inline-block !important;
}

/* === LIGHT MODE: Composer fixes === */

/* Bug 1: quitar border de .sn-composer-body para evitar doble borde
   (el borde ya lo tiene el wrapper .sn-composer) */
body.sn-global.sn-light .sn-composer-body {
  border: none !important;
  background: transparent !important;
}

/* Bug 2: trigger (Comparte algo sexy...) fondo blanco como el resto de cards */
body.sn-global.sn-light .sn-composer > .sn-composer-trigger,
body.sn-global.sn-light .sn-composer-trigger {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 1px solid rgba(122, 92, 53, 0.25) !important;
}

/* Bug 3: post feeling pill (is feeling 🔥 Excited) — quitar el cuadro blanco */
body.sn-global.sn-light .sn-post-feeling {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}
body.sn-global.sn-light .sn-post-feeling * {
  background: transparent !important;
}

/* === LIGHT MODE: garantía final post-feeling sin caja === */
body.sn-global.sn-light span.sn-post-feeling,
body.sn-global.sn-light .sn-post-feeling {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 2px 0 !important;
}

/* === LIGHT MODE: composer textarea — borde único interno === */
body.sn-global.sn-light .sn-composer textarea,
body.sn-global.sn-light .sn-composer-body textarea,
body.sn-global.sn-light .sn-composer .sn-composer-textarea {
  border: 1px solid rgba(122, 92, 53, 0.15) !important;
  border-radius: 6px !important;
  background: var(--sn-bg2) !important;
}

/* === FINAL OVERRIDE: sn-post-feeling — quitar caja completamente === */
body.sn-global.sn-light .sn-post-feeling,
body.sn-global.sn-light span.sn-post-feeling {
  display: inline !important;
  background-color: transparent !important;
  background: none !important;
  border: 0 !important;
  border-width: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
body.sn-global.sn-light .sn-post-feeling em {
  display: inline !important;
  background: none !important;
  background-color: transparent !important;
}

/* === FINAL OVERRIDE: composer form — quitar borde doble === */
body.sn-global.sn-light #feeds-composer-form,
body.sn-global.sn-light .sn-composer form,
body.sn-global.sn-light .sn-composer > form {
  border: none !important;
  background: transparent !important;
}

/* === ABSOLUTE FINAL: sn-post-feeling — forzar inline sin borde === */
body.sn-global.sn-light .sn-post-feeling,
body.sn-global.sn-light span.sn-post-feeling,
html body.sn-global.sn-light .sn-post-feeling {
  display: inline !important;
  background: none !important;
  background-color: transparent !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  border-left: none !important;
  border: none !important;
  border-width: 0 !important;
  border-style: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 2px !important;
}

/* === LIGHT MODE: textarea del composer — borde siempre visible === */
body.sn-global.sn-light .sn-composer textarea {
  border: 1px solid rgba(122, 92, 53, 0.25) !important;
  border-radius: 8px !important;
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
}
body.sn-global.sn-light .sn-composer textarea:focus {
  border-color: rgba(184, 146, 42, 0.6) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(184, 146, 42, 0.12) !important;
}

/* === FIX DEFINITIVO: sn-post-feeling NO debe recibir background/border del catch-all === */
body.sn-global.sn-light span.sn-post-feeling,
html body.sn-global.sn-light span.sn-post-feeling,
html body.sn-global.sn-light .sn-post-feeling {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-width: 0 !important;
  border-style: none !important;
  box-shadow: none !important;
  display: inline !important;
  padding: 0 2px !important;
}

/* === NUCLEAR FIX: sn-post-feeling border zero === */
body.sn-global.sn-light .sn-post .sn-post-feeling,
body.sn-global.sn-light .sn-post span.sn-post-feeling,
body.sn-global.sn-light .sn-post-header .sn-post-feeling,
body.sn-global.sn-light .sn-post-meta .sn-post-feeling,
body.sn-global.sn-light .sn-post-author .sn-post-feeling {
  border-width: 0 !important;
  border: 0 !important;
  background: transparent !important;
  display: inline !important;
}

/* === LIGHT MODE: unificar badges del sidebar === */
body.sn-global.sn-light .sn-sb-item-badge,
body.sn-global.sn-light .sn-sb-badge {
  background: #B8922A !important;
  background-color: #B8922A !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 10px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  min-width: 17px !important;
  height: 17px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 4px !important;
}

/* === LIGHT MODE: members toolbar — mismo fondo blanco que el header === */
body.sn-global.sn-light .sn-members-toolbar {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
}

/* === LIGHT MODE: mensajes / chat bubbles === */

/* Bubble enviada (me) — gold más claro y legible en light */
body.sn-global.sn-light .sn-bubble.me {
  background: #EDE5D4 !important;
  background-color: #EDE5D4 !important;
  color: #2C1F0E !important;
  border: 1px solid rgba(184, 146, 42, 0.4) !important;
}
body.sn-global.sn-light .sn-bubble.me .sn-bubble-time,
body.sn-global.sn-light .sn-bubble.me .sn-bubble-status {
  color: rgba(44, 31, 14, 0.5) !important;
}
/* Quote dentro de bubble enviada — más oscuro para contrastar con ivory */
body.sn-global.sn-light .sn-bubble.me .sn-bubble-quote {
  background: rgba(44, 31, 14, 0.08) !important;
  border-left: 3px solid rgba(184, 146, 42, 0.7) !important;
}
body.sn-global.sn-light .sn-bubble.me .sn-bubble-quote-name {
  color: #7A5C35 !important;
}
body.sn-global.sn-light .sn-bubble.me .sn-bubble-quote-text {
  color: rgba(44, 31, 14, 0.65) !important;
}
/* Quote dentro de bubble recibida — gold muy suave */
body.sn-global.sn-light .sn-bubble.them .sn-bubble-quote {
  background: rgba(184, 146, 42, 0.1) !important;
  border-left: 3px solid rgba(184, 146, 42, 0.5) !important;
}

/* Bubble recibida (them) — surface blanco con borde gold suave */
body.sn-global.sn-light .sn-bubble.them {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  color: var(--sn-text) !important;
  border: 1px solid rgba(122, 92, 53, 0.2) !important;
}

/* Quote/reply preview — más visible */
body.sn-global.sn-light .sn-bubble-quote {
  background: rgba(184, 146, 42, 0.12) !important;
  border-left: 3px solid #B8922A !important;
  border-radius: 4px !important;
}
body.sn-global.sn-light .sn-bubble-quote-name {
  color: #B8922A !important;
}
body.sn-global.sn-light .sn-bubble-quote-text {
  color: var(--sn-text-muted) !important;
}

/* Chat footer e input */
body.sn-global.sn-light .sn-chat-input,
body.sn-global.sn-light .sn-msg-input {
  background: #FFFFFF !important;
  border: 1px solid rgba(122, 92, 53, 0.25) !important;
  color: var(--sn-text) !important;
}

/* === LIGHT MODE: chat header elements — fondo transparente === */
body.sn-global.sn-light .sn-chat-header-name,
body.sn-global.sn-light .sn-chat-header-status,
body.sn-global.sn-light .sn-chat-header-actions,
body.sn-global.sn-light .sn-chat-header *,
body.sn-global.sn-light .sn-msg-header *,
body.sn-global.sn-light .sn-msg-chat-header * {
  background: transparent !important;
  background-color: transparent !important;
}

/* === LIGHT MODE: separador de fecha en chat — transparente === */
body.sn-global.sn-light .sn-chat-day {
  background: transparent !important;
  background-color: transparent !important;
}

/* === LIGHT MODE: sidebar colapsado — fondo ivory, no negro dark luxury === */
body.sn-global.sn-light .sn-content-wrap.sidebar-collapsed,
body.sn-global.sn-light .sn-content-wrap.sidebar-collapsed .sn-sidebar,
body.sn-global.sn-light .sn-sidebar.collapsed {
  background: var(--sn-bg) !important;
  background-color: var(--sn-bg) !important;
}

/* (Posicionamiento de badges en sidebar colapsado movido al bloque base — solo colores quedan en overrides light) */

/* === DARK MODE only: chat bubbles .sn-bubble.me — Gold Dark Luxury === */
body.sn-global:not(.sn-light) .sn-bubble.me {
  background: var(--sn-gold) !important;
  color: var(--sn-bg) !important;
}

body.sn-global:not(.sn-light) .sn-bubble.me .sn-bubble-time,
body.sn-global:not(.sn-light) .sn-bubble.me .sn-bubble-status {
  color: var(--sn-bg2) !important;
  opacity: 1 !important;
}

body.sn-global:not(.sn-light) .sn-bubble.me .sn-bubble-quote,
body.sn-global:not(.sn-light) .sn-bubble.me [class*="reply-quote"],
body.sn-global:not(.sn-light) .sn-bubble.me [class*="reply-preview"] {
  background: rgba(10,8,6,0.20) !important;
  border-left: 3px solid var(--sn-bg) !important;
  color: var(--sn-bg2) !important;
  opacity: 1 !important;
}

body.sn-global:not(.sn-light) .sn-bubble.me .sn-bubble-quote-name {
  color: var(--sn-bg) !important;
  font-weight: 600 !important;
}

body.sn-global:not(.sn-light) .sn-bubble.me .sn-bubble-quote-text {
  color: var(--sn-bg2) !important;
}

/* === DARK MODE: input búsqueda mensajes — transparent hereda wrapper === */
body.sn-global:not(.sn-light) #sn-conv-search,
body.sn-global:not(.sn-light) .sn-msg-search input {
  background: transparent !important;
  color: var(--sn-text) !important;
}

/* === LIGHT MODE: input búsqueda mensajes — fondo ivory igual que wrapper === */
body.sn-global.sn-light #sn-conv-search,
body.sn-global.sn-light .sn-msg-search input {
  background: transparent !important;
}

/* === LIGHT MODE: botones outline perfil — borde visible === */
body.sn-global.sn-light .sn-btn-outline {
  border-color: rgba(184, 146, 42, 0.7) !important;
  color: rgba(44, 31, 14, 0.85) !important;
}

/* === LIGHT MODE: stats strip + profile completion — paleta ivory/gold === */
body.sn-global.sn-light .sn-stats-strip {
  background: #EDE5D4 !important;
  border-color: rgba(184,146,42,0.08) !important;
}

body.sn-global.sn-light .sn-stat {
  background: #EDE5D4 !important;
  border-right-color: rgba(184,146,42,0.08) !important;
}

body.sn-global.sn-light .sn-stat-val {
  color: #B8922A !important;
}

body.sn-global.sn-light .sn-stat-label {
  color: #7A5C35 !important;
}

body.sn-global.sn-light .sn-stat i {
  color: #B8922A !important;
}

/* === LIGHT MODE: profile quality bar — paleta ivory/gold === */
body.sn-global.sn-light .sn-quality-bar {
  background: #EDE5D4 !important;
  border-color: rgba(184,146,42,0.08) !important;
}

/* === LIGHT MODE: quality ring SVG circles — gold === */
body.sn-global.sn-light .sn-quality-ring svg circle:first-child {
  stroke: rgba(184,146,42,0.2) !important;
}

body.sn-global.sn-light .sn-quality-ring svg circle:last-child {
  stroke: #B8922A !important;
}

body.sn-global.sn-light .sn-quality-pct {
  color: #B8922A !important;
}

/* === LIGHT MODE: composer + posts — fondo ivory igual que stats === */
body.sn-global.sn-light .sn-composer,
body.sn-global.sn-light .sn-post {
  background: #EDE5D4 !important;
}

/* === LIGHT MODE: tab content — mismo fondo ivory que stats === */
body.sn-global.sn-light .sn-tab-content {
  background: transparent !important;
}

.sn-tab-content {
    background: transparent !important;
}

/* === LIGHT + DARK: sn-aside sin fondo propio — hereda fondo de página === */
body.sn-global .sn-aside {
  background: transparent !important;
}

/* === LIGHT + DARK: listings sidebar sin fondo propio === */
body.sn-global .sn-lst-sidebar {
  background: transparent !important;
}

/* === LIGHT MODE: listings sidebar transparente — override sn-surface === */
body.sn-global.sn-light .sn-lst-sidebar {
  background: transparent !important;
  background-color: transparent !important;
}

/* === LIGHT MODE: listings sidebar — sin borde en el contenedor === */
body.sn-global.sn-light .sn-lst-sidebar {
  border: none !important;
  box-shadow: none !important;
}

body.sn-global .sn-lst-sidebar {
  border: none !important;
  box-shadow: none !important;
}

/* === LIGHT MODE: settings tab content — transparente === */
body.sn-global.sn-light .sn-tab-content.active,
body.sn-global.sn-light #sn-tab-profile,
body.sn-global.sn-light #sn-tab-photos,
body.sn-global.sn-light #sn-tab-privacy,
body.sn-global.sn-light #sn-tab-account,
body.sn-global.sn-light #sn-tab-snc {
  background: transparent !important;
}

/* === AD SLOTS — Dark Luxury === */
.sn-ad-slot {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  border: .5px solid var(--sn-gold-soft);
  margin-bottom: 12px;
}
.sn-ad-banner { background: var(--sn-bg2); }
.sn-ad-img { width: 100%; max-height: 220px; object-fit: cover; display: block; }
.sn-ad-label {
  position: absolute; bottom: 8px; left: 10px;
  background: var(--sn-bg); color: var(--sn-text-muted);
  border: 1px solid var(--sn-border);
  font-size: 9px; font-family: 'Montserrat', sans-serif;
  padding: 2px 8px; border-radius: 4px;
  letter-spacing: .08em; text-transform: uppercase;
}
/* Native card */
.sn-ad-native { background: var(--sn-bg2); }
.sn-ad-native-body { padding: 10px 14px; }
.sn-ad-native-title { font-size: 13px; font-weight: 600; color: var(--sn-text); margin-bottom: 4px; }
.sn-ad-native-text { font-size: 12px; color: var(--sn-text-muted); margin-bottom: 8px; line-height: 1.4; }
.sn-ad-native-cta {
  display: inline-block; font-size: 11px; font-weight: 700;
  color: var(--sn-gold); border: 1px solid var(--sn-gold-border);
  padding: 4px 10px; border-radius: 4px; text-decoration: none;
  letter-spacing: .04em; text-transform: uppercase;
}
/* Text link */
.sn-ad-text { background: var(--sn-gold-faint); padding: 10px 14px; }
.sn-ad-text-link { color: var(--sn-text); text-decoration: none; font-size: 13px; line-height: 1.4; }
.sn-ad-text-cta { color: var(--sn-gold); font-weight: 600; }

/* Light mode overrides */
body.sn-global.sn-light .sn-ad-banner,
body.sn-global.sn-light .sn-ad-native { background: #EDE5D4; }
body.sn-global.sn-light .sn-ad-text { background: rgba(184,146,42,0.06); }


/* ===== sn3-landing.css ===== */
/* ═══════════════════════════════════════════════════════════════
   SN3 DARK LUXURY DESIGN SYSTEM v2.0
   SwingersNest — Cormorant + Montserrat + Gold/Dark
   Full component library for project-wide rebrand
   ═══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. VARIABLES & DESIGN TOKENS
   ───────────────────────────────────────────────────────────── */
:root {
  /* Backgrounds */
  --sn-bg:             #0A0806;
  --sn-bg2:            #111009;
  --sn-bg3:            #181410;
  --sn-card:           rgba(255,245,220,0.035);
  --sn-card-hover:     rgba(255,245,220,0.06);

  /* Gold palette */
  --sn-gold:           #C9A850;
  --sn-gold-lt:        #E2C87A;
  --sn-gold-dk:        #7A6230;
  --sn-gold-10:        rgba(201,168,80,0.10);
  --sn-gold-20:        rgba(201,168,80,0.20);
  --sn-gold-border:    rgba(201,168,80,0.11);
  --sn-gold-border-hover: rgba(201,168,80,0.26);

  /* Cream / text palette */
  --sn-cream:          #F5EDD8;
  --sn-cream-60:       rgba(245,237,216,0.60);
  --sn-cream-35:       rgba(245,237,216,0.35);
  --sn-cream-15:       rgba(245,237,216,0.15);

  /* Semantic colours */
  --sn-success:        #4ADE80;
  --sn-success-bg:     rgba(74,222,128,0.10);
  --sn-error:          #F87171;
  --sn-error-bg:       rgba(248,113,113,0.10);
  --sn-info:           #60A5FA;
  --sn-info-bg:        rgba(96,165,250,0.10);

  /* Typography */
  --sn-font-serif:     'Cormorant', Georgia, serif;
  --sn-font-sans:      'Montserrat', sans-serif;

  /* Shared primitives */
  --sn-radius:         3px;
  --sn-radius-sm:      2px;
  --sn-radius-md:      6px;
  --sn-radius-lg:      10px;
  --sn-transition:     0.25s ease;
  --sn-shadow:         0 4px 24px rgba(0,0,0,0.4);
  --sn-shadow-gold:    0 0 0 1px rgba(201,168,80,0.2);
}

/* ─────────────────────────────────────────────────────────────
   2. RESET & BASE GLOBAL
   ───────────────────────────────────────────────────────────── */
body.sn3-page { background: var(--sn-bg) !important; color: var(--sn-cream) !important; --sn-nav-bg: rgba(10,8,6,0.92); --sn-nav-border: var(--sn-gold-border); }
body.sn3-page .min-h-screen { background: var(--sn-bg) !important; padding-top: 0 !important; }
body.sn3-page main { padding: 0 !important; }
body.sn3-page .bg-white { background: rgba(10,8,6,0.95) !important; }
body.sn3-page .text-gray-700,
body.sn3-page .text-gray-600,
body.sn3-page .text-gray-900 { color: var(--sn-cream) !important; }
body.sn3-page .border-gray-200,
body.sn3-page .border-b { border-color: var(--sn-gold-border) !important; }
body.sn3-page .shadow-sm { box-shadow: 0 1px 2px rgba(0,0,0,.3) !important; }

.sn3 { background: var(--sn-bg); color: var(--sn-cream); font-family: var(--sn-font-sans); font-weight: 300; line-height: 1.7; -webkit-font-smoothing: antialiased; }
.sn3 *, .sn3 *::before, .sn3 *::after { box-sizing: border-box; }
.sn3 img { max-width: 100%; display: block; }
.sn3 a { text-decoration: none; color: inherit; }

/* Scrollbar */
body.sn3-page ::-webkit-scrollbar { width: 6px; }
body.sn3-page ::-webkit-scrollbar-track { background: var(--sn-bg); }
body.sn3-page ::-webkit-scrollbar-thumb { background: var(--sn-gold-20); border-radius: 3px; }
body.sn3-page ::-webkit-scrollbar-thumb:hover { background: var(--sn-gold); }

/* ─────────────────────────────────────────────────────────────
   3. TOPBAR / NAV
   ───────────────────────────────────────────────────────────── */
body.sn3-page .site-nav, :is(body.sn3-page) .site-nav { background: rgba(10,8,6,0.92) !important; border-color: var(--sn-gold-border) !important; backdrop-filter: blur(18px) !important; }
body.sn3-page .site-nav * { color: var(--sn-cream) !important; }
body.sn3-page .site-nav a:hover { color: var(--sn-gold) !important; }
body.sn3-page .site-nav .btn-primary { color: var(--sn-bg) !important; background: var(--sn-gold) !important; box-shadow: none !important; }
body.sn3-page .public-nav-links { background: rgba(10,8,6,0.90) !important; border-color: var(--sn-gold-border) !important; }
body.sn3-page .public-nav-links * { color: var(--sn-cream-60) !important; }
body.sn3-page .public-nav-links a:hover { color: var(--sn-gold) !important; background: rgba(201,168,80,.06) !important; }

body.sn3-page .site-nav a,
body.sn3-page .site-nav span,
body.sn3-page .site-nav button { color: var(--sn-cream) !important; }
body.sn3-page .site-nav .text-gray-900,
body.sn3-page .site-nav .text-gray-700 { color: var(--sn-cream) !important; }
body.sn3-page .site-nav img[alt*='SwingersNest'] { filter: brightness(1.2); }
body.sn3-page .site-nav .btn,
body.sn3-page .site-nav [class*='btn-primary'] { background: var(--sn-gold) !important; color: var(--sn-bg) !important; border-color: var(--sn-gold) !important; }
body.sn3-page .site-nav [class*='btn-outline'],
body.sn3-page .site-nav [class*='btn-secondary'] { border-color: var(--sn-gold-border-hover) !important; color: var(--sn-cream) !important; background: transparent !important; }

body.sn3-page .public-nav-links a { color: var(--sn-text-soft) !important; font-size: .72rem !important; font-weight: 500 !important; letter-spacing: .06em !important; transition: color .2s !important; }
body.sn3-page .public-nav-links a:hover { color: var(--sn-gold) !important; }
body.sn3-page .public-nav-links svg { color: rgba(245,237,216,0.50) !important; }

nav.sn3-nav,
nav.sn3-nav.site-nav { background: rgba(10,8,6,0.92) !important; border-color: var(--sn-gold-border) !important; backdrop-filter: blur(18px) !important; }
nav.sn3-nav *,
nav.sn3-nav a,
nav.sn3-nav span,
nav.sn3-nav button { color: var(--sn-cream) !important; }
nav.sn3-nav .btn-primary,
nav.sn3-nav [class*='btn-primary'] { background: var(--sn-gold) !important; color: var(--sn-bg) !important; }

/* ─────────────────────────────────────────────────────────────
   4. BUTTONS
   ───────────────────────────────────────────────────────────── */
.sn-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  font-family: var(--sn-font-sans); font-size: .75rem; font-weight: 500;
  letter-spacing: .1em; text-transform: uppercase; text-decoration: none;
  padding: .75rem 1.6rem; border-radius: var(--sn-radius-sm); border: .5px solid transparent;
  cursor: pointer; transition: all var(--sn-transition); line-height: 1;
}
.sn-btn:disabled, .sn-btn[disabled] { opacity: .4; pointer-events: none; }
.sn-btn svg { width: 14px; height: 14px; flex-shrink: 0; transition: transform var(--sn-transition); }
.sn-btn:hover svg { transform: translateX(2px); }

/* Gold filled — primary CTA */
.sn-btn-gold, .sn3-btn-gold {
  display: inline-flex; align-items: center; justify-content: center; gap: .55rem;
  font-family: var(--sn-font-sans); font-size: .68rem; font-weight: 600;
  letter-spacing: .13em; text-transform: uppercase; text-decoration: none;
  color: var(--sn-bg); background: var(--sn-gold);
  padding: .8rem 1.8rem; border-radius: var(--sn-radius-sm); border: none;
  cursor: pointer; transition: background var(--sn-transition), transform .15s; line-height: 1;
}
.sn-btn-gold:hover, .sn3-btn-gold:hover { background: var(--sn-gold-lt); transform: translateY(-1px); }
.sn-btn-gold:disabled { opacity: .4; pointer-events: none; }

/* Outline */
.sn-btn-outline, .sn3-btn-outline {
  display: inline-flex; align-items: center; gap: .55rem;
  font-family: var(--sn-font-sans); font-size: .68rem; font-weight: 500;
  letter-spacing: .13em; text-transform: uppercase; text-decoration: none;
  color: var(--sn-cream-60); border: .5px solid rgba(245,237,216,0.1);
  background: transparent; padding: .75rem 1.5rem; border-radius: 8px !important;
  cursor: pointer; transition: color var(--sn-transition), border-color var(--sn-transition), background var(--sn-transition); line-height: 1;
}
.sn-btn-outline:hover, .sn3-btn-outline:hover { color: var(--sn-cream); border-color: rgba(245,237,216,0.25); background: rgba(201,168,80,.07); }
.sn-btn-outline svg, .sn3-btn-outline svg { width: 14px; height: 14px; transition: transform var(--sn-transition); }
.sn-btn-outline:hover svg, .sn3-btn-outline:hover svg { transform: translateX(3px); }
.sn-btn-outline:disabled { opacity: .4; pointer-events: none; }

/* Ghost */
.sn-btn-ghost {
  display: inline-flex; align-items: center; gap: .45rem;
  font-family: var(--sn-font-sans); font-size: .72rem; font-weight: 500;
  letter-spacing: .08em; text-transform: uppercase; text-decoration: none;
  color: var(--sn-cream-60); background: transparent; border: none;
  padding: .5rem .75rem; border-radius: var(--sn-radius-sm);
  cursor: pointer; transition: color var(--sn-transition), background var(--sn-transition); line-height: 1;
}
.sn-btn-ghost:hover { color: var(--sn-cream); background: rgba(245,237,216,.05); }

/* Sizes */
.sn-btn-sm { font-size: .65rem; padding: .5rem 1rem; letter-spacing: .08em; }
.sn-btn-lg { font-size: .8rem; padding: 1rem 2.2rem; }

/* Focus rings (shared) */
.sn-btn:focus-visible, .sn-btn-gold:focus-visible, .sn-btn-outline:focus-visible, .sn-btn-ghost:focus-visible {
  outline: 2px solid var(--sn-gold); outline-offset: 2px;
}

/* ─────────────────────────────────────────────────────────────
   5. INPUTS & FORMS
   ───────────────────────────────────────────────────────────── */
.sn-label {
  display: block; font-size: .68rem; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase; color: var(--sn-cream-60);
  margin-bottom: .45rem;
}

.sn-input, .sn-select, .sn-textarea {
  width: 100%; font-family: var(--sn-font-sans); font-size: .85rem; font-weight: 300;
  color: var(--sn-cream); background: var(--sn-card);
  border: .5px solid var(--sn-gold-border); border-radius: var(--sn-radius);
  padding: .75rem 1rem; transition: border-color var(--sn-transition), box-shadow var(--sn-transition);
  outline: none;
}
.sn-input::placeholder, .sn-textarea::placeholder { color: var(--sn-cream-35); }
.sn-input:focus, .sn-select:focus, .sn-textarea:focus {
  border-color: var(--sn-gold); box-shadow: 0 0 0 2px var(--sn-gold-10);
}
.sn-input:disabled, .sn-select:disabled, .sn-textarea:disabled { opacity: .4; cursor: not-allowed; }

.sn-select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23C9A850' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right .85rem center; padding-right: 2.5rem; }

.sn-textarea { min-height: 100px; resize: vertical; }

.sn-form-group { margin-bottom: 1.25rem; }
.sn-form-error { font-size: .72rem; color: var(--sn-error); margin-top: .35rem; }
.sn-form-hint  { font-size: .72rem; color: var(--sn-cream-35); margin-top: .35rem; }

/* Checkbox */
.sn-checkbox { display: flex; align-items: center; gap: .55rem; cursor: pointer; font-size: .82rem; color: var(--sn-cream-60); }
.sn-checkbox input { display: none; }
.sn-checkbox .sn-check-box {
  width: 18px; height: 18px; border: .5px solid rgba(245,237,216,0.1); border-radius: var(--sn-radius-sm);
  background: var(--sn-card); display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  transition: background var(--sn-transition), border-color var(--sn-transition);
}
.sn-checkbox input:checked + .sn-check-box { background: var(--sn-gold); border-color: var(--sn-gold); }
.sn-checkbox input:checked + .sn-check-box::after { content: ''; width: 5px; height: 9px; border: solid var(--sn-bg); border-width: 0 2px 2px 0; transform: rotate(45deg) translateY(-1px); }

/* Radio */
.sn-radio { display: flex; align-items: center; gap: .55rem; cursor: pointer; font-size: .82rem; color: var(--sn-cream-60); }
.sn-radio input { display: none; }
.sn-radio .sn-radio-dot {
  width: 18px; height: 18px; border: .5px solid rgba(245,237,216,0.1); border-radius: 50%;
  background: var(--sn-card); display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  transition: border-color var(--sn-transition);
}
.sn-radio input:checked + .sn-radio-dot { border-color: var(--sn-gold); }
.sn-radio input:checked + .sn-radio-dot::after { content: ''; width: 8px; height: 8px; background: var(--sn-gold); border-radius: 50%; }

/* ─────────────────────────────────────────────────────────────
   6. CARDS
   ───────────────────────────────────────────────────────────── */
.sn-card {
  background: var(--sn-card); border: .5px solid var(--sn-gold-border);
  border-radius: var(--sn-radius); overflow: hidden; transition: background var(--sn-transition), border-color var(--sn-transition);
}
.sn-card-hover:hover { background: var(--sn-card-hover); border-color: var(--sn-gold-border-hover); }
.sn-card-gold { border-color: var(--sn-gold-border-hover); box-shadow: var(--sn-shadow-gold); }
.sn-card-header { padding: 1.25rem 1.5rem; border-bottom: .5px solid var(--sn-gold-border); }
.sn-card-body   { padding: 1.5rem; }
.sn-card-footer { padding: 1rem 1.5rem; border-top: .5px solid var(--sn-gold-border); }

.sn-card-avatar {
  display: flex; align-items: center; gap: 1rem; padding: 1.25rem 1.5rem;
  background: var(--sn-card); border: .5px solid var(--sn-gold-border); border-radius: var(--sn-radius);
  transition: background var(--sn-transition), border-color var(--sn-transition);
}
.sn-card-avatar:hover { background: var(--sn-card-hover); border-color: var(--sn-gold-border-hover); }
.sn-card-avatar-name { font-family: var(--sn-font-serif); font-size: 1.15rem; font-weight: 400; color: var(--sn-cream); }
.sn-card-avatar-meta { font-size: .72rem; color: var(--sn-cream-35); }

/* ─────────────────────────────────────────────────────────────
   7. BADGES & TAGS
   ───────────────────────────────────────────────────────────── */
.sn-badge {
  display: inline-flex; align-items: center; gap: .3rem;
  font-size: .62rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
  padding: .25rem .6rem; border-radius: var(--sn-radius-sm); line-height: 1;
  color: var(--sn-cream-60); background: var(--sn-card); border: .5px solid var(--sn-gold-border);
}
.sn-badge-gold  { color: var(--sn-gold); background: var(--sn-gold-10); border-color: var(--sn-gold-20); }
.sn-badge-green { color: var(--sn-success); background: var(--sn-success-bg); border-color: rgba(74,222,128,0.20); }
.sn-badge-red   { color: var(--sn-error); background: var(--sn-error-bg); border-color: rgba(248,113,113,0.20); }

.sn-tag {
  display: inline-flex; align-items: center; gap: .35rem;
  font-size: .68rem; font-weight: 500; letter-spacing: .06em;
  padding: .35rem .75rem; border-radius: var(--sn-radius); line-height: 1;
  color: var(--sn-cream-60); background: var(--sn-card); border: .5px solid var(--sn-gold-border);
  cursor: pointer; transition: all var(--sn-transition);
}
.sn-tag:hover { color: var(--sn-cream); border-color: var(--sn-gold-border-hover); background: var(--sn-card-hover); }

/* ─────────────────────────────────────────────────────────────
   8. MODALS
   ───────────────────────────────────────────────────────────── */
.sn-modal-overlay {
  position: fixed; inset: 0; z-index: 9998;
  background: rgba(0,0,0,0.70); backdrop-filter: blur(4px);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none; transition: opacity .2s ease;
}
.sn-modal-overlay.active { opacity: 1; pointer-events: auto; }

.sn-modal {
  position: relative; width: 90%; max-width: 520px; max-height: 85vh;
  background: var(--sn-bg2); border: .5px solid var(--sn-gold-border);
  border-radius: var(--sn-radius-md); box-shadow: var(--sn-shadow);
  display: flex; flex-direction: column; overflow: hidden;
  transform: translateY(12px) scale(.98); transition: transform .25s cubic-bezier(.16,1,.3,1);
}
.sn-modal-overlay.active .sn-modal { transform: translateY(0) scale(1); }

.sn-modal-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 1.25rem 1.5rem; border-bottom: .5px solid var(--sn-gold-border);
}
.sn-modal-header h3 { font-family: var(--sn-font-serif); font-size: 1.3rem; font-weight: 400; color: var(--sn-cream); margin: 0; }

.sn-modal-body { padding: 1.5rem; overflow-y: auto; flex: 1; }
.sn-modal-footer { padding: 1rem 1.5rem; border-top: .5px solid var(--sn-gold-border); display: flex; justify-content: flex-end; gap: .75rem; }

.sn-modal-close {
  width: 32px; height: 32px; display: flex; align-items: center; justify-content: center;
  background: transparent; border: none; color: var(--sn-cream-35); font-size: 1.2rem;
  cursor: pointer; border-radius: var(--sn-radius-sm); transition: color var(--sn-transition), background var(--sn-transition);
}
.sn-modal-close:hover { color: var(--sn-cream); background: rgba(245,237,216,.05); }

/* ─────────────────────────────────────────────────────────────
   9. AVATARS
   ───────────────────────────────────────────────────────────── */
.sn-avatar {
  position: relative; display: inline-flex; border-radius: 50%; overflow: hidden;
  border: 1px solid var(--sn-gold-border); flex-shrink: 0;
}
.sn-avatar img { width: 100%; height: 100%; object-fit: cover; }
.sn-avatar-sm  { width: 32px; height: 32px; }
.sn-avatar-md  { width: 44px; height: 44px; }
.sn-avatar-lg  { width: 64px; height: 64px; }
.sn-avatar-xl  { width: 96px; height: 96px; }

/* Online indicator */
.sn-avatar-online::after {
  content: ''; position: absolute; bottom: 1px; right: 1px;
  width: 10px; height: 10px; background: var(--sn-success);
  border: 2px solid var(--sn-bg); border-radius: 50%;
}
.sn-avatar-sm.sn-avatar-online::after { width: 8px; height: 8px; }
.sn-avatar-xl.sn-avatar-online::after { width: 14px; height: 14px; border-width: 3px; }

/* Verified badge */
.sn-avatar-verified::before {
  content: '✓'; position: absolute; top: -2px; right: -2px;
  width: 16px; height: 16px; background: var(--sn-gold); color: var(--sn-bg);
  font-size: 9px; font-weight: 700; display: flex; align-items: center; justify-content: center;
  border-radius: 50%; border: 2px solid var(--sn-bg); z-index: 1;
}

/* ─────────────────────────────────────────────────────────────
   10. TOASTS / NOTIFICATIONS
   ───────────────────────────────────────────────────────────── */
.sn-toast {
  position: fixed; top: 1.5rem; right: 1.5rem; z-index: 9999;
  min-width: 300px; max-width: 420px; padding: 1rem 1.25rem;
  background: var(--sn-bg2); border: .5px solid var(--sn-gold-border);
  border-radius: var(--sn-radius-md); box-shadow: var(--sn-shadow);
  font-size: .82rem; color: var(--sn-cream-60);
  display: flex; align-items: flex-start; gap: .75rem;
  transform: translateX(120%); transition: transform .3s cubic-bezier(.16,1,.3,1);
}
.sn-toast.active { transform: translateX(0); }
.sn-toast-success { border-left: 3px solid var(--sn-success); }
.sn-toast-error   { border-left: 3px solid var(--sn-error); }
.sn-toast-info    { border-left: 3px solid var(--sn-info); }

/* ─────────────────────────────────────────────────────────────
   11. DROPDOWNS
   ───────────────────────────────────────────────────────────── */
.sn-dropdown { position: relative; display: inline-block; }
.sn-dropdown-menu {
  position: absolute; top: calc(100% + 6px); left: 0; z-index: 100;
  min-width: 180px; padding: .35rem 0;
  background: var(--sn-bg2); border: .5px solid var(--sn-gold-border);
  border-radius: var(--sn-radius-md); box-shadow: var(--sn-shadow);
  opacity: 0; pointer-events: none; transform: translateY(-6px);
  transition: opacity .15s, transform .15s;
}
.sn-dropdown.open .sn-dropdown-menu { opacity: 1; pointer-events: auto; transform: translateY(0); }

.sn-dropdown-item {
  display: flex; align-items: center; gap: .55rem;
  padding: .55rem 1rem; font-size: .78rem; color: var(--sn-cream-60);
  cursor: pointer; transition: background var(--sn-transition), color var(--sn-transition);
}
.sn-dropdown-item:hover { background: var(--sn-card-hover); color: var(--sn-cream); }

/* ─────────────────────────────────────────────────────────────
   12. PROGRESS / STEPS (multi-step registration wizard)
   ───────────────────────────────────────────────────────────── */
.sn-steps {
  display: flex; align-items: center; justify-content: center; gap: 0;
  padding: 1rem 0;
}
.sn-step {
  display: flex; align-items: center; gap: .5rem;
  font-size: .68rem; font-weight: 500; letter-spacing: .06em; text-transform: uppercase;
  color: var(--sn-cream-35); position: relative;
}
.sn-step + .sn-step::before {
  content: ''; width: 36px; height: 1px; background: var(--sn-gold-border);
  margin-right: .5rem;
}
.sn-step-num {
  width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-size: .7rem; font-weight: 600; border: .5px solid var(--sn-gold-border);
  background: transparent; color: var(--sn-cream-35); flex-shrink: 0;
  transition: all var(--sn-transition);
}
.sn-step-active { color: var(--sn-cream); }
.sn-step-active .sn-step-num { border-color: var(--sn-gold); color: var(--sn-gold); background: var(--sn-gold-10); }
.sn-step-active + .sn-step::before { background: var(--sn-gold-20); }

.sn-step-done { color: var(--sn-cream-60); }
.sn-step-done .sn-step-num { border-color: var(--sn-gold); background: var(--sn-gold); color: var(--sn-bg); }
.sn-step-done + .sn-step::before { background: var(--sn-gold); }

/* Progress bar */
.sn-progress-bar {
  width: 100%; height: 3px; background: var(--sn-gold-border); border-radius: 2px;
  overflow: hidden;
}
.sn-progress-bar-fill {
  height: 100%; background: var(--sn-gold); border-radius: 2px;
  transition: width .4s cubic-bezier(.16,1,.3,1);
}

/* ─────────────────────────────────────────────────────────────
   13. SECTION HELPERS (landing)
   ───────────────────────────────────────────────────────────── */
.sn3-sec { padding: 4rem 2.5rem; position: relative; }
.sn3-alt { background: var(--sn-bg2); }
.sn3-ey  { display: inline-block; font-size: .68rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--sn-gold); margin-bottom: .85rem; }
.sn3-h2  { font-family: var(--sn-font-serif); font-size: clamp(2.4rem, 3.8vw, 3.8rem); font-weight: 300; line-height: 1.1; color: var(--sn-cream); margin-bottom: 1rem; }
.sn3-h2 em { font-style: italic; color: var(--sn-gold); }
.sn3-p   { font-size: .9rem; color: var(--sn-cream-60); line-height: 1.8; max-width: 500px; margin-bottom: 2rem; }

/* ─────────────────────────────────────────────────────────────
   14. LANDING — ALL ORIGINAL STYLES
   ───────────────────────────────────────────────────────────── */

/* Hero */
.sn3-hero { position: relative; min-height: 100vh; display: flex; align-items: center; padding: 80px 2.5rem 3rem; overflow: hidden; }
.sn3-hero-bg { position: absolute; inset: 0; z-index: 0; background-size: cover; background-position: center; transform: scale(1.04); }
.sn3-hero-bg::after { content: ''; position: absolute; inset: 0; background: linear-gradient(105deg, rgba(10,8,6,.88) 42%, rgba(10,8,6,.55) 100%); }
.sn3-hero-inner { position: relative; z-index: 2; width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
.sn3-title { font-family: var(--sn-font-serif); font-size: clamp(3rem, 5.2vw, 5rem); font-weight: 300; line-height: 1.06; color: var(--sn-cream); margin-bottom: 1.5rem; }
.sn3-title em { font-style: italic; color: var(--sn-gold); }
.sn3-sub { font-size: .95rem; color: var(--sn-cream-60); line-height: 1.8; max-width: 420px; }

/* Scroll chevrons */
.sn3-chevrons { position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; z-index: 10; }
.sn3-chevrons span { display: block; width: 18px; height: 18px; border-bottom: 1.5px solid rgba(255,255,255,.4); border-right: 1.5px solid rgba(255,255,255,.4); transform: rotate(45deg); animation: sn3chev 2s infinite; }
.sn3-chevrons span:nth-child(2) { animation-delay: -.2s; margin-top: -11px; }
.sn3-chevrons span:nth-child(3) { animation-delay: -.4s; margin-top: -11px; }
@keyframes sn3chev { 0% { opacity: 0; transform: rotate(45deg) translate(-14px,-14px); } 50% { opacity: 1; } 100% { opacity: 0; transform: rotate(45deg) translate(14px,14px); } }

/* Join panel */
.sn3-join { background: rgba(10,8,6,.70); backdrop-filter: blur(24px) saturate(150%); -webkit-backdrop-filter: blur(24px) saturate(150%); border: .5px solid var(--sn-gold-border); border-radius: var(--sn-radius); padding: 2.2rem 2rem; position: relative; overflow: hidden; }
.sn3-join::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, var(--sn-gold), transparent); opacity: .5; }
.sn3-join-title { font-family: var(--sn-font-serif); font-size: 1.8rem; font-weight: 400; text-align: center; color: var(--sn-cream); margin-bottom: .4rem; }
.sn3-join-sub { font-size: .67rem; font-weight: 400; letter-spacing: .12em; text-transform: uppercase; color: var(--sn-cream-35); text-align: center; margin-bottom: 1.6rem; }
.sn3-join-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.sn3-jbtn { display: flex; align-items: center; justify-content: center; gap: .5rem; font-family: var(--sn-font-sans); font-size: .72rem; font-weight: 500; letter-spacing: .08em; padding: .85rem 1rem; border-radius: var(--sn-radius-sm); border: .5px solid rgba(245,237,216,0.1); background: rgba(201,168,80,.07); color: var(--sn-cream); cursor: pointer; transition: background var(--sn-transition), border-color var(--sn-transition), transform .15s; text-decoration: none; }
.sn3-jbtn:hover { background: rgba(201,168,80,.14); border-color: rgba(201,168,80,.4); transform: translateY(-1px); }
.sn3-jbtn svg { width: 15px; height: 15px; color: var(--sn-gold); flex-shrink: 0; }
.sn3-jbtn-full { grid-column: span 2; background: var(--sn-gold); color: var(--sn-bg); border-color: var(--sn-gold); font-weight: 600; }
.sn3-jbtn-full:hover { background: var(--sn-gold-lt); border-color: var(--sn-gold-lt); color: var(--sn-bg); }

/* About */
.sn3-about { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: center; margin-bottom: 3rem; max-width: 700px; }

/* Feature cards */
.sn3-cards { display: grid; grid-template-columns: repeat(3, 1fr); border: .5px solid var(--sn-gold-border); border-radius: var(--sn-radius); overflow: hidden; }
.sn3-card { padding: 2rem 1.8rem; border-right: .5px solid var(--sn-gold-border); position: relative; overflow: hidden; transition: background .3s; }
.sn3-card:last-child { border-right: none; }
.sn3-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: var(--sn-gold); opacity: 0; transform: scaleX(0); transform-origin: left; transition: opacity .4s, transform .5s cubic-bezier(0.16,1,0.3,1); }
.sn3-card:hover { background: var(--sn-card-hover); }
.sn3-card:hover::before { opacity: .6; transform: scaleX(1); }
.sn3-card-icon { width: 36px; height: 36px; color: var(--sn-gold); margin-bottom: 1.2rem; opacity: .85; }
.sn3-card-label { font-size: .58rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--sn-gold-dk); margin-bottom: .4rem; }
.sn3-card-title { font-family: var(--sn-font-serif); font-size: 1.5rem; font-weight: 400; color: var(--sn-cream); margin-bottom: .7rem; line-height: 1.25; }
.sn3-card-desc { font-size: .78rem; color: var(--sn-cream-60); line-height: 1.75; }
.sn3-list { list-style: none; margin-top: .85rem; display: flex; flex-direction: column; gap: .4rem; padding: 0; }
.sn3-list li { font-size: .75rem; color: var(--sn-cream-60); display: flex; align-items: flex-start; gap: .5rem; line-height: 1.5; }
.sn3-list li::before { content: ''; width: 4px; height: 4px; background: var(--sn-gold); border-radius: 50%; flex-shrink: 0; margin-top: .55rem; }

/* Community swiper */
.sn3-community { text-align: center; padding-top: 3rem !important; padding-bottom: 3rem !important; }
.sn3-community .sn3-p { margin-left: auto; margin-right: auto; text-align: center; }
.sn3-swiper-wrap { margin-top: 1.5rem; overflow: hidden; }
.sn3-swiper { padding-bottom: 2.5rem !important; }
.sn3-slide { border-radius: var(--sn-radius); overflow: hidden; border: .5px solid var(--sn-gold-border); aspect-ratio: .85; position: relative; cursor: pointer; transition: border-color .3s, transform .3s; }
.sn3-slide:hover { border-color: var(--sn-gold-border-hover); transform: translateY(-4px); }
.sn3-slide img { width: 100%; height: 100%; object-fit: cover; opacity: .9; transition: opacity .3s; }
.sn3-slide:hover img { opacity: 1; }
.sn3-slide-name { position: absolute; bottom: 0; left: 0; right: 0; padding: .6rem .75rem; background: linear-gradient(transparent, rgba(10,8,6,.88)); font-family: var(--sn-font-serif); font-size: .9rem; font-weight: 400; color: var(--sn-cream); }
.sn3-swiper .swiper-pagination-bullet-active { background: var(--sn-gold) !important; }

/* How it works */
.sn3-how { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--sn-gold-border); border: .5px solid var(--sn-gold-border); border-radius: var(--sn-radius); overflow: hidden; margin-top: 2rem; }
.sn3-step { background: var(--sn-bg2); padding: 2.5rem 2rem; transition: background .3s; }
.sn3-step:hover { background: var(--sn-bg3); }
.sn3-step-num { font-family: var(--sn-font-serif); font-size: 4rem; font-weight: 300; color: rgba(201,168,80,.35); line-height: 1; margin-bottom: 1rem; }
.sn3-step:hover .sn3-step-num { color: rgba(201,168,80,.5); }
.sn3-step-title { font-family: var(--sn-font-serif); font-size: 1.5rem; font-weight: 400; color: var(--sn-cream); margin-bottom: .6rem; }
.sn3-step-desc { font-size: .78rem; color: var(--sn-cream-60); line-height: 1.75; }

/* Video sections */
.sn3-video { position: relative; min-height: 70vh; display: flex; align-items: center; overflow: hidden; }
.sn3-video-bg { position: absolute; inset: 0; z-index: 0; }
.sn3-video-bg video { position: absolute; top: 50%; left: 50%; min-width: 100%; min-height: 100%; width: auto; height: auto; transform: translate(-50%,-50%); object-fit: cover; }
.sn3-video-fallback { position: absolute; inset: 0; background-size: cover; background-position: center; }
.sn3-video-ov { position: absolute; inset: 0; background: rgba(10,8,6,.65); z-index: 1; }
.sn3-video-grad { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,8,6,.85) 40%, transparent 100%); z-index: 2; }
.sn3-video-content { position: relative; z-index: 3; padding: 4rem 2.5rem; max-width: 600px; }
.sn3-video-right .sn3-video-content { margin-left: auto; }
.sn3-video-right .sn3-video-grad { background: linear-gradient(90deg, transparent 0%, rgba(10,8,6,.85) 60%); }
.sn3-video-meta { font-size: .68rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--sn-gold); display: flex; align-items: center; gap: .5rem; margin-bottom: 1rem; }
.sn3-video-meta::before { content: ''; width: 28px; height: .5px; background: var(--sn-gold); }
.sn3-video-title { font-family: var(--sn-font-serif); font-size: clamp(2.5rem, 4vw, 3.8rem); font-weight: 300; line-height: 1.1; color: var(--sn-cream); margin-bottom: 1rem; }
.sn3-video-title em { font-style: italic; color: var(--sn-gold); }
.sn3-video-desc { font-size: .88rem; color: var(--sn-cream-60); line-height: 1.8; margin-bottom: .6rem; max-width: 460px; }
.sn3-video-tags { font-size: .72rem; color: var(--sn-cream-35); letter-spacing: .08em; margin-bottom: 1.8rem; }

/* Safety */
.sn3-safety { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: center; max-width: 700px; }
.sn3-pillars { display: flex; flex-direction: column; gap: .5rem; margin-top: 1.5rem; }
.sn3-pillar { display: flex; align-items: flex-start; gap: .75rem; padding: .85rem 1rem; border: .5px solid var(--sn-gold-border); border-radius: var(--sn-radius-sm); background: var(--sn-card); transition: background .3s, border-color .3s; }
.sn3-pillar:hover { background: var(--sn-card-hover); border-color: var(--sn-gold-border-hover); }
.sn3-pillar-dot { width: 6px; height: 6px; background: var(--sn-gold); border-radius: 50%; flex-shrink: 0; margin-top: .5rem; }
.sn3-pillar-text { font-size: .8rem; color: var(--sn-cream-60); line-height: 1.55; }
.sn3-pillar-text strong { display: block; font-weight: 500; color: var(--sn-cream); margin-bottom: .15rem; }

/* Final CTA */
.sn3-cta { text-align: center; padding: 6rem 2.5rem; position: relative; overflow: hidden; }
.sn3-cta::before { content: ''; position: absolute; top: 50%; left: 50%; width: 75vw; height: 75vh; background: radial-gradient(ellipse, rgba(201,168,80,.06) 0%, transparent 65%); transform: translate(-50%,-50%); pointer-events: none; }
.sn3-cta-title { font-family: var(--sn-font-serif); font-size: clamp(2.8rem, 5vw, 4.8rem); font-weight: 300; line-height: 1.08; color: var(--sn-cream); margin-bottom: 1.2rem; position: relative; }
.sn3-cta-title em { font-style: italic; color: var(--sn-gold); }
.sn3-cta-sub { font-size: .9rem; color: var(--sn-cream-60); max-width: 380px; margin: 0 auto 2rem; line-height: 1.8; }
.sn3-cta-tagline { font-size: .62rem; font-weight: 500; letter-spacing: .15em; text-transform: uppercase; color: var(--sn-cream-35); margin-top: 1.2rem; }
.sn3-cta-row { display: flex; align-items: center; justify-content: center; gap: .75rem; flex-wrap: wrap; }

/* Footer */
body.sn3-page footer { background: var(--sn-bg2) !important; border-top: .5px solid var(--sn-gold-border) !important; }
body.sn3-page footer h3,
body.sn3-page footer h4,
body.sn3-page footer p,
body.sn3-page footer span,
body.sn3-page footer li { color: rgba(245,237,216,0.50) !important; }
body.sn3-page footer a { color: rgba(245,237,216,0.50) !important; transition: color .2s !important; }
body.sn3-page footer a:hover { color: rgba(245,237,216,0.80) !important; }
body.sn3-page footer .text-gray-900,
body.sn3-page footer .font-bold,
body.sn3-page footer .font-semibold { color: var(--sn-cream) !important; }
body.sn3-page footer .border-t { border-color: var(--sn-gold-border) !important; }
body.sn3-page footer svg { color: rgba(245,237,216,0.50) !important; }
body.sn3-page footer svg:hover { color: var(--sn-gold) !important; }

/* ─────────────────────────────────────────────────────────────
   15. RESPONSIVE
   ───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .sn3-hero-inner { grid-template-columns: 1fr; }
  .sn3-join { max-width: 480px; }
  .sn3-cards { grid-template-columns: 1fr; }
  .sn3-card { border-right: none; border-bottom: .5px solid var(--sn-gold-border); }
  .sn3-card:last-child { border-bottom: none; }
  .sn3-how { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
  .sn3-sec { padding: 3rem 1.25rem; }
  .sn3-hero { padding: 68px 1.25rem 3rem; }
  .sn3-join-grid { grid-template-columns: 1fr; }
  .sn3-jbtn-full { grid-column: span 1; }
  .sn3-video-content { padding: 3rem 1.25rem; }
  .sn3-cta { padding: 4rem 1.25rem; }
  .sn3-cta-row { flex-direction: column; align-items: stretch; }
  .sn3-cta-row a { text-align: center; justify-content: center; }

  /* Components responsive */
  .sn-modal { width: 95%; max-height: 90vh; }
  .sn-toast { left: 1rem; right: 1rem; min-width: auto; }
  .sn-steps { flex-wrap: wrap; gap: .25rem; }
  .sn-step + .sn-step::before { width: 20px; }
}
@media (max-width: 480px) {
  .sn-steps { flex-direction: column; align-items: flex-start; }
  .sn-step + .sn-step::before { width: 1px; height: 20px; margin: 0 0 0 13px; }
  .sn-card-avatar { flex-direction: column; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  .sn3-chevrons span { animation: none; }
  .sn-toast, .sn-modal, .sn-dropdown-menu { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   16. LIGHT SURFACE OVERRIDE
   ───────────────────────────────────────────────────────────── */
.sn-light-surface {
  background: #1C1810; color: var(--sn-cream);
  border-color: var(--sn-gold-border);
}
.sn-light-surface .sn-input,
.sn-light-surface .sn-select,
.sn-light-surface .sn-textarea {
  background: rgba(255,245,220,0.05);
}

/* ─────────────────────────────────────────────────────────────
   17. LAYER OVERRIDE — wins against Tailwind 4 utilities
   ───────────────────────────────────────────────────────────── */
@layer overrides {
  nav.sn3-nav,
  nav.sn3-nav.site-nav {
    background-color: rgba(10,8,6,0.92) !important;
    border-color: var(--sn-gold-border) !important;
  }
  nav.sn3-nav a,
  nav.sn3-nav span,
  nav.sn3-nav button,
  nav.sn3-nav .text-gray-900 {
    color: var(--sn-cream) !important;
  }
  .public-nav-links.sn3-subnav {
    background-color: rgba(10,8,6,0.90) !important;
    border-color: var(--sn-gold-border) !important;
  }
  .public-nav-links.sn3-subnav a {
    color: var(--sn-text-soft) !important;
  }
}


/* ===== app.css ===== */



:root {
    --font-sans: 'Montserrat', ui-sans-serif, system-ui, sans-serif;
    /* Tailwind config: primary/secondary + SN design tokens */
    --color-primary: #C9A850;
    --color-secondary: #C9A850;
    --color-dark: #0A0806;
    --color-light: #111009;
    /* SwingersNest – theme utilities (use as bg-sn-*, text-sn-*, border-sn-*, etc.) */
    --color-sn-plum: #C9A850;
    --color-sn-gold: #C9A850;
    --color-sn-gold-hover: #E2C87A;
    --color-sn-plum-hover: #E2C87A;
    --color-sn-soft: #111009;
    --color-sn-lavender: #111009;
    --color-sn-dark: #0A0806;
    --color-sn-heading: #F5EDD8;
    --color-sn-main: rgba(245,237,216,0.75);
    --color-sn-muted: rgba(245,237,216,0.45);
    --color-sn-divider: rgba(201,168,80,0.11);
    /* Dark Luxury (SN3) design tokens */
    --color-sn3-bg: #0A0806;
    --color-sn3-bg2: #111009;
    --color-sn3-card: #181410;
    --color-sn3-gold: #C9A850;
    --color-sn3-gold-lt: #E2C87A;
    --color-sn3-gold-dk: #7A6230;
    --color-sn3-cream: #F5EDD8;
    --font-sn3-serif: 'Cormorant', Georgia, serif;
}

    :root {
        color-scheme: light;
        /* SwingersNest – Final UI Color System */
        --sn-plum: #C9A850;
        --sn-purple: #C9A850;
        --sn-gold: #C9A850;
        --sn-gold-hover: #E2C87A;
        --sn-plum-hover: #E2C87A;
        --sn-bg-soft: #0A0806;
        --sn-bg-lavender: #111009;
        --sn-dark: #0A0806;
        --sn-text-main: rgba(245,237,216,0.75);
        --sn-text-heading: #F5EDD8;
        --sn-text-muted: rgba(245,237,216,0.45);
        --sn-divider: rgba(201,168,80,0.11);
        --sn-card-shadow: 0 10px 30px rgba(0,0,0,0.35);
        --sn-btn-primary-shadow: 0 12px 28px rgba(245, 182, 66, 0.28);
        --sn-btn-secondary-shadow: 0 10px 26px rgba(201,168,80,0.18);
    }

    html.dark {
        color-scheme: dark;
    }

    * {
        transition-property: background-color, border-color, color, fill, stroke;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 200ms;
    }

    body {
        background-color: var(--sn-bg-soft);
        color: var(--sn-text-main);
    }

    html.dark body {
        background-color: #000000;
        color: #f9fafb;
    }

    /* Scrollbar styling for light mode (SN) */
    ::-webkit-scrollbar {
        width: 6px;
        height: 6px;
    }

    ::-webkit-scrollbar-track {
        background: var(--sn-bg-lavender);
    }

    ::-webkit-scrollbar-thumb {
        background: rgba(201,168,80,0.25);
        border-radius: 3px;
    }

    ::-webkit-scrollbar-thumb:hover {
        background: var(--sn-purple);
    }

    /* Scrollbar styling for dark mode */
    html.dark ::-webkit-scrollbar-track {
        background: #000000;
    }

    html.dark ::-webkit-scrollbar-thumb {
        background: #4b5563;
        border-radius: 3px;
    }

    html.dark ::-webkit-scrollbar-thumb:hover {
        background: #6b7280;
    }

    /* Ensure light backgrounds always have dark text */
    .bg-white,
    .bg-light,
    .bg-gray-50,
    .bg-gray-100,
    .bg-green-50,
    .bg-red-50,
    .bg-blue-50,
    .bg-yellow-50 {
    }

    /* Dark mode overrides for light backgrounds */
    html.dark .bg-white,
    html.dark .bg-light,
    html.dark .bg-gray-50,
    html.dark .bg-gray-100 {
    }

    html.dark .bg-green-50 {
    }

    html.dark .bg-red-50 {
    }

    html.dark .bg-blue-50 {
    }

    html.dark .bg-yellow-50 {
    }

    /* Input fields - always have proper text color */
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="url"],
    input[type="number"],
    textarea,
    select {
    }

    /* Cards and containers with light backgrounds */
    .card,
    [class*="bg-white"],
    [class*="bg-light"] {
    }

    a {
    }

    /* All buttons should have pointer cursor */
    button,
    [type="button"],
    [type="submit"],
    [type="reset"],
    .btn,
    [role="button"] {
    }
}

/* SwingersNest button system */
    .btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        border-radius: 14px;
        padding: 14px 22px;
        font-weight: 700;
        line-height: 1;
        transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    }

    .btn-primary {
        color: #0A0806;
        background: var(--sn-gold);
        box-shadow: var(--sn-btn-primary-shadow);
        border: 0;
    }
    .btn-primary:hover {
        transform: translateY(-2px);
        background: var(--sn-gold-hover);
    }
    .btn-primary:active {
        transform: translateY(0);
        box-shadow: 0 6px 16px rgba(245, 182, 66, 0.22);
    }
    .btn-primary:focus-visible {
        outline: 0;
        box-shadow: 0 0 0 4px rgba(245, 182, 66, 0.25), var(--sn-btn-primary-shadow);
    }

    .btn-secondary {
        background: var(--sn-purple);
        color: #ffffff;
        border: 0;
        box-shadow: var(--sn-btn-secondary-shadow);
    }
    .btn-secondary:hover {
        background: var(--sn-plum-hover);
    }
    .btn-secondary:focus-visible {
        outline: 0;
        box-shadow: 0 0 0 4px rgba(201,168,80,0.25), var(--sn-btn-secondary-shadow);
    }

    .btn-tertiary {
        background: transparent;
        color: var(--sn-purple);
        border: 1.5px solid var(--sn-gold);
    }
    .btn-tertiary:hover {
        background: rgba(245, 182, 66, 0.12);
    }
    .btn-tertiary:focus-visible {
        outline: 0;
        box-shadow: 0 0 0 4px rgba(201,168,80,0.18);
    }

    .btn:disabled {
        background: #E9E7F5 !important;
        color: #9B97B8 !important;
        border: 0 !important;
        box-shadow: none !important;
        cursor: not-allowed;
        transform: none !important;
    }

    /* Auth / register helpers */
    .sn-step-active {
        border-color: var(--sn-purple) !important;
        background-color: var(--sn-purple) !important;
        color: white !important;
    }
    .sn-step-line-active {
        background-color: var(--sn-purple) !important;
    }
    .sn-card-selected {
        border-color: var(--sn-purple) !important;
        background-color: var(--sn-bg-lavender) !important;
    }
    .sn-hover-border:hover {
        border-color: var(--sn-purple) !important;
    }
    .sn-focus:focus {
        outline: none;
        box-shadow: 0 0 0 2px var(--sn-purple);
    }
    .sn-link:hover {
        color: var(--sn-gold) !important;
    }
    html.dark .site-nav {
        background-color: #000000 !important;
        border-color: rgba(255,255,255,0.1) !important;
    }
}

/* Import admin editor styles */


/* ============================================================
   SN DARK LUXURY — OVERRIDE DEFINITIVO (Fase 8 Fix)
   Elimina todos los restos purple/violet del sistema anterior
   ============================================================ */

/* Variables raíz — forzar dark luxury en todo */
:root {
    --sn-purple: #C9A850 !important;
    --sn-plum: #C9A850 !important;
    color-scheme: dark;
}

/* Tailwind arbitrary colors hardcoded #9810FA / #E60076 */
[class*="bg-\[#9810FA\]"],
[class*="hover\:bg-\[#9810FA\]"]:hover,
[class*="dark\:bg-\[#9810FA\]"],
[class*="from-\[#9810FA\]"],
.bg-\[#9810FA\] {
    background-color: #C9A850 !important;
}
[class*="to-\[#E60076\]"],
[class*="bg-\[#E60076\]"],
[class*="hover\:bg-\[#E60076\]"]:hover,
[class*="dark\:bg-\[#E60076\]"],
.bg-\[#E60076\] {
    background-color: #7A6230 !important;
}
[class*="from-\[#9810FA\]"][class*="to-\[#E60076\]"],
.from-\[#9810FA\].to-\[#E60076\] {
    background: var(--sn-gold-bg) !important;
}
[class*="text-\[#9810FA\]"],
[class*="text-\[#E60076\]"] {
    color: #C9A850 !important;
}
[class*="border-\[#9810FA\]"],
[class*="border-\[#E60076\]"] {
    border-color: rgba(201,168,80,0.3) !important;
}

/* bg-primary / text-primary / border-primary — eliminar purple */
.bg-primary { background-color: #C9A850 !important; }
.text-primary { color: #C9A850 !important; }
.border-primary { border-color: rgba(201,168,80,0.3) !important; }
.hover\:bg-primary:hover { background-color: #E2C87A !important; }
.hover\:text-primary:hover { color: #E2C87A !important; }
.focus\:border-primary:focus { border-color: rgba(201,168,80,0.5) !important; }
.focus\:ring-primary:focus { box-shadow: 0 0 0 2px rgba(201,168,80,0.25) !important; }

/* bg-dark / text-dark — eliminar purple-dark */
.bg-dark { background-color: var(--sn-text) !important; }
.text-dark { color: var(--sn-text) !important; }
.bg-light { background-color: var(--sn-bg2) !important; }
.text-light { color: rgba(245,237,216,0.75) !important; }

/* Search page — botones categoría */
.dashboard-search-btn,
[class*="search"] button:not(.btn-gold):not([class*="sn-btn"]) {
    background-color: #181410 !important;
    border: 0.5px solid rgba(201,168,80,0.2) !important;
    color: rgba(245,237,216,0.75) !important;
    border-radius: 8px !important;
}
[class*="search"] button:not(.btn-gold):hover {
    background-color: #1e1a14 !important;
    border-color: rgba(201,168,80,0.45) !important;
    color: #C9A850 !important;
}

/* Messages — área de chat fondo oscuro */
.messages-area,
[class*="message"] .flex-1,
[class*="chat"] {
    background-color: var(--sn-bg2) !important;
}
.message-bubble-sent {
    background: var(--sn-gold-bg) !important;
    color: var(--sn-text) !important;
}

/* Profile Settings — Her/Him cards border */
.her-card,
[class*="her"] .settings-card,
.border-pink-500,
.border-\[#E60076\],
[class*="border-pink"] {
    border-color: rgba(201,168,80,0.25) !important;
}
.him-card,
[class*="him"] .settings-card,
.border-blue-500,
[class*="border-blue"] {
    border-color: rgba(201,168,80,0.15) !important;
}

/* Inputs y selects — fondo dark, border gold */
input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
select,
textarea {
    background-color: #181410 !important;
    border-color: rgba(201,168,80,0.2) !important;
    color: rgba(245,237,216,0.85) !important;
}
input:focus, select:focus, textarea:focus {
    border-color: rgba(201,168,80,0.5) !important;
    box-shadow: 0 0 0 2px rgba(201,168,80,0.15) !important;
    outline: none !important;
}

/* Sidebar — Upgrade button */
.sidebar-upgrade-btn,
[href*="upgrade"] {
    background: var(--sn-gold-bg) !important;
    color: var(--sn-text) !important;
    border: none !important;
}
.snc-badge,
[class*="snc"] .badge,
[class*="coin"] .count {
    color: #C9A850 !important;
}

/* HOT badge */
.badge-hot,
[class*="hot"]:not([class*="photo"]) {
    background-color: #C9A850 !important;
    color: var(--sn-text) !important;
}

/* Scrollbar unificado */
::-webkit-scrollbar-thumb {
    background: rgba(201,168,80,0.2) !important;
}
::-webkit-scrollbar-thumb:hover {
    background: rgba(201,168,80,0.45) !important;
}

/* Eliminar cualquier fondo blanco/claro en interior */
body.sn-global .bg-white,
body.sn-global [class*="bg-white"],
body.sn-global .bg-gray-50,
body.sn-global .bg-gray-100 {
    background-color: #181410 !important;
}
body.sn-global .text-gray-900,
body.sn-global .text-black {
    color: rgba(245,237,216,0.85) !important;
}

/* Rings y focus states */
*:focus-visible {
    outline: 2px solid rgba(201,168,80,0.4) !important;
    outline-offset: 2px;
}

/* SN Typography Override — Montserrat base, Cormorant headings */
body.sn-global,
body.sn-global * {
    font-family: var(--font-sans) !important;
}
body.sn-global h1,
body.sn-global h2,
body.sn-global h3,
body.sn-global h4,
body.sn-global .font-serif,
body.sn-global [class*="cormorant"],
body.sn-global .display-text {
    font-family: var(--font-sn3-serif) !important;
}
body.sn-global .text-xs,
body.sn-global .text-sm,
body.sn-global .text-base,
body.sn-global nav,
body.sn-global .btn,
body.sn-global button,
body.sn-global input,
body.sn-global select,
body.sn-global textarea,
body.sn-global label {
    font-family: "Montserrat", sans-serif !important;
}

/* Remix Icons — forzar pseudo-element content */
[class^="ri-"]::before,
[class*=" ri-"]::before {
    font-family: "remixicon" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1 !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* SN Nav Logo */
.logo-dot-sn {
    animation: sn-pulse 3s ease-in-out infinite;
}
@keyframes sn-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.6; transform: scale(0.85); }
}

/* SN Nav Logo text — Cormorant serif override */
.sn-logo-text,
.nav-logo-sn .sn-logo-text,
body .sn-logo-text,
body.sn-global .sn-logo-text {
    font-family: "Cormorant", Georgia, serif !important;
    font-size: 1.35rem !important;
    font-weight: 500 !important;
    letter-spacing: .06em !important;
    color: #C9A850 !important;
    line-height: 1 !important;
}

/* FIX — bg-sn-gold botones no deben ser sobreescritos */
.bg-sn-gold,
a.bg-sn-gold,
button.bg-sn-gold,
[class*="bg-sn-gold"]:not([class*="bg-sn-gold/"]),
.btn-gold {
    background-color: #C9A850 !important;
    color: var(--sn-text) !important;
}
.hover\:bg-sn-gold-hover:hover {
    background-color: #E2C87A !important;
}

/* ============================================================
   SN BORDER RADIUS — Dark Luxury (2-3px base, max 6px)
   Reemplaza todos los rounded-* de Tailwind en el interior
   ============================================================ */
body.sn-global .rounded-full:not(.avatar):not(.dot):not([class*="logo-dot"]):not([class*="rounded-full w-"]):not([class*="h-full"]) {
    border-radius: 3px !important;
}
body.sn-global .rounded-2xl,
body.sn-global .rounded-xl {
    border-radius: 4px !important;
}
body.sn-global .rounded-lg {
    border-radius: 3px !important;
}
body.sn-global .rounded-md {
    border-radius: 2px !important;
}
body.sn-global .rounded {
    border-radius: 2px !important;
}

/* Avatares y elementos circulares — mantener redondos */
body.sn-global .rounded-full.w-8,
body.sn-global .rounded-full.w-9,
body.sn-global .rounded-full.w-10,
body.sn-global .rounded-full.w-11,
body.sn-global .rounded-full.w-12,
body.sn-global .rounded-full.w-14,
body.sn-global .rounded-full.w-16,
body.sn-global .rounded-full.w-20,
body.sn-global .rounded-full.w-24,
body.sn-global .rounded-full.h-8,
body.sn-global .rounded-full.h-9,
body.sn-global .rounded-full.h-10,
body.sn-global .rounded-full.h-12,
body.sn-global img.rounded-full,
body.sn-global .avatar,
body.sn-global [class*="rounded-full"][class*="overflow-hidden"][class*="w-"] {
    border-radius: 50% !important;
}

/* Botones — 2px max */
body.sn-global .btn,
body.sn-global button:not([class*="rounded-full"]):not(.sn-btn-outline):not(.sn-btn-gold),
body.sn-global a.btn,
body.sn-global input[type="submit"],
body.sn-global input[type="button"] {
    border-radius: 2px !important;
}

/* Inputs y selects — 2px */
body.sn-global input:not([type="checkbox"]):not([type="radio"]),
body.sn-global select,
body.sn-global textarea {
    border-radius: 2px !important;
}

/* Cards y paneles — 3px */
body.sn-global .card,
body.sn-global [class*="feeds-"],
body.sn-global [class*="profile-"],
body.sn-global [class*="message-"] {
    border-radius: 3px !important;
}


