/*
 * Dev Minimal Mono Theme
 * Clean, developer-focused minimalist aesthetic with monospace typography
 * Completely self-contained - does not depend on main application styles
 */

/* ===== CSS Base (scoped) ===== */
.themed-page {
  box-sizing: border-box;
}

.themed-page *,
.themed-page *::before,
.themed-page *::after {
  box-sizing: inherit;
}

/* ===== CSS Variables ===== */
:root {
  /* Backgrounds */
  --dmm-bg: #FFFFFF;
  --dmm-surface: #F3F4F6;
  --dmm-surface-hover: #E5E7EB;

  /* Text */
  --dmm-text: #111111;
  --dmm-text-secondary: #6B7280;
  --dmm-text-muted: #9CA3AF;

  /* Borders */
  --dmm-border: #E5E7EB;
  --dmm-border-strong: #314158;

  /* Actions */
  --dmm-action: #171717;
  --dmm-action-text: #FFFFFF;
  --dmm-action-hover: #333333;

  /* Status */
  --dmm-success: #16A34A;
  --dmm-warning: #CA8A04;
  --dmm-danger: #DC2626;
  --dmm-info: #2563EB;

  /* Typography */
  --dmm-font: 'JetBrains Mono', 'Fira Code', 'SF Mono', Consolas, 'Liberation Mono', monospace;
  --dmm-font-size: 1.0rem;
  --dmm-line-height: 1.7;
}

/* ===== Page Base ===== */
.themed-page {
  font-family: var(--dmm-font);
  font-size: var(--dmm-font-size);
  line-height: var(--dmm-line-height);
  background-color: var(--dmm-bg);
  color: var(--dmm-text);
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ===== Global Layout Overrides ===== */
.themed-page .tw-site-header {
  background-color: var(--dmm-bg) !important;
  border-color: var(--dmm-border) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.themed-page .tw-site-header,
.themed-page .tw-site-header a,
.themed-page .tw-site-header .tw-site-logo-text {
  color: var(--dmm-text) !important;
  font-family: var(--dmm-font) !important;
}

.themed-page .tw-site-header .tw-site-logo img {
  max-height: 2.1rem !important;
  width: 46vw;
  max-width: 220px !important;
}

.themed-page .tw-site-header .tw-tab-link,
.themed-page .tw-site-header .tw-tab-link-active,
.themed-page .tw-site-header .tw-tab-link:visited,
.themed-page .tw-site-header .tw-tab-link:hover,
.themed-page .tw-site-header .tw-tab-link:focus {
  color: var(--dmm-text) !important;
}

.themed-page .tw-site-header .tw-button,
.themed-page .tw-site-header .tw-button-low-profile-white,
.themed-page .tw-site-header .tw-button-outline {
  color: var(--dmm-text) !important;
  background-color: var(--dmm-bg) !important;
  border-color: var(--dmm-border-strong) !important;
  box-shadow: none !important;
  border-radius: 6px !important;
}

.themed-page .tw-site-header summary a,
.themed-page .tw-site-header summary a:visited,
.themed-page .tw-site-header summary a:hover,
.themed-page .tw-site-header summary a:focus {
  background-color: var(--dmm-bg) !important;
  border-color: var(--dmm-border-strong) !important;
  color: var(--dmm-text) !important;
}

.themed-page .tw-site-header summary a span {
  color: var(--dmm-text-secondary) !important;
}

.themed-page .tw-site-header a.tw-nav-mobile,
.themed-page .tw-site-header a.tw-nav-mobile:visited,
.themed-page .tw-site-header a.tw-nav-mobile:hover,
.themed-page .tw-site-header a.tw-nav-mobile:focus {
  background-color: var(--dmm-bg) !important;
  border-color: var(--dmm-border-strong) !important;
  color: var(--dmm-text) !important;
  box-shadow: none !important;
}

.themed-page .tw-site-header .tw-header-signin,
.themed-page .tw-site-header .tw-header-signin:visited,
.themed-page .tw-site-header .tw-header-signin:hover,
.themed-page .tw-site-header .tw-header-signin:focus {
  background-color: var(--dmm-action) !important;
  border-color: var(--dmm-action) !important;
  color: var(--dmm-action-text) !important;
  border-radius: 6px !important;
}

.themed-page [aria-label="Breadcrumb"] a,
.themed-page [aria-label="Breadcrumb"] span {
  color: var(--dmm-text-secondary) !important;
}

.themed-page footer {
  background-color: var(--dmm-surface) !important;
  border-color: var(--dmm-border) !important;
  color: var(--dmm-text-secondary) !important;
}

.themed-page footer a {
  color: var(--dmm-text) !important;
}

.themed-page footer.bg-white {
  background-color: var(--dmm-surface) !important;
}

.themed-page footer .text-slate-500,
.themed-page footer .text-slate-600,
.themed-page footer .text-slate-400,
.themed-page footer .text-muted {
  color: var(--dmm-text-secondary) !important;
}

.themed-page footer.border-slate-200 {
  border-color: var(--dmm-border) !important;
}

.themed-page footer.border-t.border-slate-200.bg-white {
  background-color: var(--dmm-surface) !important;
}

/* ===== Themed Content Container ===== */
.themed-page .themed-content {
  max-width: 800px;
  margin: 0 auto;
  padding: 3rem 1.5rem;
}

/* ===== Typography ===== */
.themed-page h1,
.themed-page h2,
.themed-page h3,
.themed-page h4,
.themed-page h5,
.themed-page h6 {
  color: var(--dmm-text);
  font-weight: 600;
  margin-top: 2.5rem;
  margin-bottom: 1rem;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.themed-page h1 { font-size: 2.25rem; font-weight: 600; color: #314158 !important; }
.themed-page h2 { font-size: 1.875rem; font-weight: 600; color: #0f172b !important; }
.themed-page h3 { font-size: 1.25rem; font-weight: 600; color: #0f172b !important; }
.themed-page h4 { font-size: 1.125rem; font-weight: 500; }
.themed-page h5 { font-size: 1rem; font-weight: 500; }
.themed-page h6 { font-size: 0.875rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.05em; }

.themed-page h2::before { content: none; }
.themed-page h3::before { content: none; }

.themed-page p {
  margin-bottom: 1.5rem;
  color: #314158 !important;
}

.themed-page strong,
.themed-page b {
  color: var(--dmm-text);
  font-weight: 600;
}

.themed-page em,
.themed-page i {
  font-style: italic;
  color: var(--dmm-text-secondary);
}

/* ===== Links ===== */
.themed-page a {
  color: var(--dmm-text);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity 0.2s ease;
}

.themed-page a:hover {
  opacity: 0.75;
}

.themed-page a:visited {
  color: var(--dmm-text-secondary);
}

/* ===== Lists ===== */
.themed-page ul,
.themed-page ol {
  margin-bottom: 1.5rem;
  padding-left: 1.5rem;
}

.themed-page li {
  margin-bottom: 0.5rem;
  color: var(--dmm-text-secondary);
}

.themed-page ul li::marker {
  color: var(--dmm-text-muted);
}

.themed-page ol li::marker {
  color: var(--dmm-text-muted);
}

/* ===== Code & Pre ===== */
.themed-page code {
  font-family: var(--dmm-font);
  font-size: 0.9em;
  background-color: var(--dmm-surface);
  color: var(--dmm-text);
  padding: 0.2em 0.4em;
  border-radius: 4px;
}

.themed-page pre {
  font-family: var(--dmm-font);
  font-size: 14px;
  background-color: var(--dmm-surface);
  color: var(--dmm-text);
  padding: 1.25rem;
  margin-bottom: 1.5rem;
  border: 1px solid var(--dmm-border);
  border-radius: 6px;
  overflow-x: auto;
  line-height: 1.6;
}

.themed-page pre code {
  background: none;
  padding: 0;
  border-radius: 0;
  color: inherit;
}

/* ===== Blockquotes ===== */
.themed-page blockquote {
  border-left: 3px solid var(--dmm-border-strong);
  background-color: transparent;
  padding: 0.5rem 1.25rem;
  margin: 1.5rem 0;
  color: var(--dmm-text-secondary);
}

.themed-page blockquote p:last-child {
  margin-bottom: 0;
}

/* ===== Horizontal Rules ===== */
.themed-page hr {
  border: none;
  border-top: 1px solid var(--dmm-border);
  margin: 2.5rem 0;
}

/* ===== Tables ===== */
.themed-page table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1.5rem;
  font-size: 14px;
}

.themed-page thead {
  background-color: var(--dmm-surface);
}

.themed-page th {
  text-align: left;
  padding: 0.75rem 1rem;
  font-weight: 600;
  color: var(--dmm-text);
  border-bottom: 2px solid var(--dmm-border-strong);
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.themed-page td {
  padding: 0.75rem 1rem;
  border-bottom: 1px solid var(--dmm-border);
  color: var(--dmm-text-secondary);
}

.themed-page tbody tr:hover {
  background-color: var(--dmm-surface);
}

/* ===== Images ===== */
.themed-page img {
  max-width: 100%;
  height: auto;
  margin: 1.5rem 0;
  border-radius: 6px;
}

.themed-page figure {
  margin: 2rem 0;
}

.themed-page figcaption {
  font-size: 13px;
  color: var(--dmm-text-muted);
  margin-top: 0.5rem;
}

/* ===== Buttons (within content) ===== */
.themed-page .btn,
.themed-page .tw-button,
.themed-page .tw-button-brand {
  background-color: var(--dmm-action) !important;
  color: var(--dmm-action-text) !important;
  border: none !important;
  border-radius: 6px !important;
  font-family: var(--dmm-font) !important;
  font-weight: 500 !important;
  padding: 0.625rem 1rem !important;
  box-shadow: none !important;
  transition: background-color 0.2s ease !important;
}

.themed-page .btn:hover,
.themed-page .tw-button:hover,
.themed-page .tw-button-brand:hover {
  background-color: var(--dmm-action-hover) !important;
}

.themed-page .tw-button-outline,
.themed-page .tw-button-secondary,
.themed-page .tw-button-low-profile,
.themed-page .tw-button-low-profile-white {
  background-color: var(--dmm-bg) !important;
  color: var(--dmm-text) !important;
  border: 1px solid var(--dmm-border-strong) !important;
  border-radius: 6px !important;
  font-family: var(--dmm-font) !important;
  box-shadow: none !important;
}

/* ===== Contact + Subscribe Cards ===== */
.themed-page .contact-us-message,
.themed-page .subscribe-form {
  background-color: var(--dmm-surface) !important;
  border-color: var(--dmm-border) !important;
  box-shadow: none !important;
  border-radius: 6px !important;
}

.themed-page .contact-us-message .contact-us-heading,
.themed-page .subscribe-form h3,
.themed-page .subscribe-form h4,
.themed-page .subscribe-form label {
  color: var(--dmm-text) !important;
}

.themed-page .contact-us-message .contact-us-subheading,
.themed-page .subscribe-form p,
.themed-page .subscribe-form .text-slate-500 {
  color: var(--dmm-text-secondary) !important;
}

.themed-page .contact-us-message .bg-slate-50,
.themed-page .subscribe-form .bg-white {
  background-color: var(--dmm-bg) !important;
}

.themed-page .contact-us-message .rounded-full.bg-indigo-50 {
  background-color: var(--dmm-surface) !important;
  border: 1px solid var(--dmm-border) !important;
  color: var(--dmm-text) !important;
}

.themed-page .contact-us-message .rounded-full.bg-indigo-50 .fa {
  color: var(--dmm-text) !important;
}

.themed-page .subscribe-form input,
.themed-page .subscribe-form textarea {
  background-color: var(--dmm-bg) !important;
  border-color: var(--dmm-border) !important;
  color: var(--dmm-text) !important;
  border-radius: 6px !important;
}

/* ===== Form Fields ===== */
.themed-page input[type="text"],
.themed-page input[type="email"],
.themed-page input[type="url"],
.themed-page input[type="tel"],
.themed-page input[type="search"],
.themed-page input[type="password"],
.themed-page textarea,
.themed-page select {
  background-color: var(--dmm-bg) !important;
  border: 1px solid var(--dmm-border) !important;
  color: var(--dmm-text) !important;
  box-shadow: none !important;
  border-radius: 6px !important;
  font-family: var(--dmm-font) !important;
}

.themed-page input[type="text"]::placeholder,
.themed-page input[type="email"]::placeholder,
.themed-page input[type="url"]::placeholder,
.themed-page input[type="tel"]::placeholder,
.themed-page input[type="search"]::placeholder,
.themed-page input[type="password"]::placeholder,
.themed-page textarea::placeholder {
  color: var(--dmm-text-muted) !important;
}

.themed-page input[type="text"]:focus,
.themed-page input[type="email"]:focus,
.themed-page input[type="url"]:focus,
.themed-page input[type="tel"]:focus,
.themed-page input[type="search"]:focus,
.themed-page input[type="password"]:focus,
.themed-page textarea:focus,
.themed-page select:focus {
  border-color: var(--dmm-text) !important;
  outline: none !important;
}

/* ===== RSVP / Event Panels ===== */
.themed-page .rsvp-event-icon,
.themed-page .rsvp-panel .rounded-full.bg-\[\#eef2ff\],
.themed-page .rsvp-panel .rounded-full.bg-slate-100,
.themed-page .rsvp-panel .rounded-full.bg-slate-50 {
  background-color: var(--dmm-surface) !important;
  border: 1px solid var(--dmm-border) !important;
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-event-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 9999px;
  background-color: var(--dmm-surface) !important;
  border: 1px solid var(--dmm-border) !important;
  color: var(--dmm-text) !important;
  box-shadow: none !important;
}

.themed-page .rsvp-event-icon .fa,
.themed-page .rsvp-panel .rounded-full.bg-\[\#eef2ff\] .fa,
.themed-page .rsvp-panel .rounded-full.bg-slate-100 .fa,
.themed-page .rsvp-panel .rounded-full.bg-slate-50 .fa {
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-card,
.themed-page .rsvp-panel {
  background-color: var(--dmm-bg) !important;
  border-color: var(--dmm-border) !important;
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-card {
  background-image: none !important;
  border-width: 1px !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}

.themed-page .render-meetup-rsvp-here .bg-white {
  background-color: var(--dmm-bg) !important;
}

.themed-page .render-meetup-rsvp-here .border-slate-200 {
  border-color: var(--dmm-border) !important;
}

.themed-page .render-meetup-rsvp-here .shadow-sm,
.themed-page .render-meetup-rsvp-here .shadow-lg {
  box-shadow: none !important;
}

.themed-page .render-meetup-rsvp-here .bg-slate-50\/60 {
  background-color: var(--dmm-surface) !important;
}

.themed-page .render-meetup-rsvp-here .bg-indigo-50 {
  background-color: var(--dmm-surface) !important;
}

.themed-page .render-meetup-rsvp-here .text-indigo-300 {
  color: var(--dmm-text-muted) !important;
}

.themed-page .render-meetup-rsvp-here .text-slate-900 {
  color: var(--dmm-text) !important;
}

.themed-page .render-meetup-rsvp-here .text-slate-500 {
  color: var(--dmm-text-secondary) !important;
}

.themed-page .render-meetup-rsvp-here .text-slate-400 {
  color: var(--dmm-text-muted) !important;
}

.themed-page .render-meetup-rsvp-here .border-slate-100 {
  border-color: var(--dmm-border) !important;
}

.themed-page .render-meetup-rsvp-here .bg-emerald-100 {
  background-color: var(--dmm-surface) !important;
}

.themed-page .render-meetup-rsvp-here .text-emerald-500,
.themed-page .render-meetup-rsvp-here .text-emerald-600 {
  color: var(--dmm-success) !important;
}

.themed-page .render-meetup-rsvp-here .bg-blue-600 {
  background-color: var(--dmm-action) !important;
}

.themed-page .render-meetup-rsvp-here .bg-blue-100 {
  background-color: var(--dmm-surface) !important;
}

.themed-page .render-meetup-rsvp-here .text-blue-600 {
  color: var(--dmm-text) !important;
}

.themed-page .render-meetup-rsvp-here .bg-slate-100 {
  background-color: var(--dmm-surface) !important;
}

.themed-page .render-meetup-rsvp-here .bg-slate-200 {
  background-color: var(--dmm-surface-hover) !important;
}

.themed-page .render-meetup-rsvp-here .text-xs.text-slate-500 {
  color: var(--dmm-text-muted) !important;
}

.themed-page .rsvp-panel .bg-white {
  background-color: var(--dmm-bg) !important;
}

.themed-page .rsvp-panel .border-slate-200 {
  border-color: var(--dmm-border) !important;
}

.themed-page .rsvp-panel .text-slate-900,
.themed-page .rsvp-panel .text-slate-800,
.themed-page .rsvp-panel .text-slate-700 {
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-panel .text-slate-600,
.themed-page .rsvp-panel .text-slate-500 {
  color: var(--dmm-text-secondary) !important;
}

.themed-page .rsvp-panel h3,
.themed-page .rsvp-panel h4,
.themed-page .rsvp-panel h5,
.themed-page .rsvp-panel h6 {
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-panel h3::before,
.themed-page .rsvp-panel h4::before,
.themed-page .rsvp-panel h5::before,
.themed-page .rsvp-panel h6::before {
  content: none !important;
}

.themed-page .rsvp-info-panel .bg-white {
  background-color: var(--dmm-bg) !important;
}

.themed-page .rsvp-info-panel .text-slate-900,
.themed-page .rsvp-info-panel .text-slate-800,
.themed-page .rsvp-info-panel .text-slate-700 {
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-info-panel .text-slate-600,
.themed-page .rsvp-info-panel .text-slate-500,
.themed-page .rsvp-info-panel .text-slate-400 {
  color: var(--dmm-text-secondary) !important;
}

.themed-page .rsvp-panel .rounded-full[class*="bg-[#eef2ff]"] {
  background-color: var(--dmm-surface) !important;
  border: 1px solid var(--dmm-border) !important;
  color: var(--dmm-text) !important;
  box-shadow: none !important;
}

.themed-page .rsvp-panel .rounded-full[class*="bg-[#eef2ff]"] .fa {
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-info-panel .border-slate-200 {
  border-color: var(--dmm-border) !important;
}

.themed-page .rsvp-info-panel {
  background-color: var(--dmm-surface) !important;
  border: 1px solid var(--dmm-border) !important;
  border-radius: 6px !important;
  padding: 1.25rem !important;
}

@media (min-width: 768px) {
  .themed-page .rsvp-info-panel > .flex {
    align-items: flex-start !important;
  }

  .themed-page .rsvp-info-panel > .flex > div {
    width: 50% !important;
  }

  .themed-page .rsvp-info-panel > .flex > div + div {
    margin-top: 0 !important;
  }
}

.themed-page .rsvp-info-panel .shadow-sm,
.themed-page .rsvp-info-panel .shadow-lg {
  box-shadow: none !important;
}

.themed-page .rsvp-info-panel .bg-rose-600 {
  background-color: var(--dmm-action) !important;
}

.themed-page .rsvp-info-panel .text-white {
  color: var(--dmm-action-text) !important;
}

.themed-page .render-meetup-rsvp-here {
  margin: 0 !important;
  padding: 0 !important;
}

.themed-page #meetup-rsvp-form {
  margin: 0 !important;
}

.themed-page .rsvp-panel {
  padding: 0 !important;
  background-color: transparent !important;
}

.themed-page .rsvp-card {
  margin: 0 !important;
}

/* ===== Event/Attendee Panels ===== */
.themed-page .page-editor-controls {
  background-color: var(--dmm-bg) !important;
  border-color: var(--dmm-border) !important;
  box-shadow: none !important;
}

.themed-page .page-editor-controls__toggle {
  background-color: var(--dmm-surface) !important;
  border: 1px solid var(--dmm-border) !important;
  color: var(--dmm-text) !important;
}

.themed-page .page-editor-controls .text-slate-900,
.themed-page .page-editor-controls .text-slate-800,
.themed-page .page-editor-controls .text-slate-700 {
  color: var(--dmm-text) !important;
}

.themed-page .page-editor-controls .text-slate-500,
.themed-page .page-editor-controls .text-slate-400 {
  color: var(--dmm-text-secondary) !important;
}

.themed-page .page-editor-controls .border-indigo-100,
.themed-page .page-editor-controls .border-indigo-100\/50,
.themed-page .page-editor-controls .border-slate-200 {
  border-color: var(--dmm-border) !important;
}

.themed-page .page-editor-controls .tw-button,
.themed-page .page-editor-controls .tw-button-secondary,
.themed-page .page-editor-controls .tw-button-outline,
.themed-page .page-editor-controls .tw-button-low-profile-white,
.themed-page .page-editor-controls .tw-button-brand {
  background-color: var(--dmm-bg) !important;
  border: 1px solid var(--dmm-border-strong) !important;
  color: var(--dmm-text) !important;
  box-shadow: none !important;
  font-size: 0.8rem !important;
  padding: 0.35rem 0.75rem !important;
}

/* Greyscale badges inside editor panel buttons */
.themed-page .page-editor-controls .badge,
.themed-page .page-editor-controls [class*="bg-rose-"],
.themed-page .page-editor-controls [class*="bg-red-"],
.themed-page .page-editor-controls [class*="bg-indigo-"],
.themed-page .page-editor-controls [class*="bg-blue-"] {
  background-color: var(--dmm-text-muted) !important;
  color: var(--dmm-bg) !important;
}

/* ===== Article / Story Cards ===== */
.themed-page article.story {
  background-color: var(--dmm-bg) !important;
  border-color: var(--dmm-border) !important;
  box-shadow: none !important;
}

.themed-page article.bg-white {
  background-color: var(--dmm-bg) !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* ===== Slider (Info Slider) ===== */
.themed-page .slider-container {
  background-color: var(--dmm-surface) !important;
  border: 1px solid var(--dmm-border) !important;
  box-shadow: none !important;
  border-radius: 6px !important;
}

.themed-page .slider-container .left-arrow,
.themed-page .slider-container .right-arrow {
  background-color: transparent !important;
  color: var(--dmm-text) !important;
}

.themed-page .slider-container .slide span,
.themed-page .slider-container blockquote,
.themed-page .slider-container .byline {
  color: var(--dmm-text) !important;
}

.themed-page .slider-indicators .slider-dot {
  background-color: var(--dmm-text-muted) !important;
}

.themed-page .slider-indicators .slider-dot.active {
  background-color: var(--dmm-text) !important;
}

/* ===== Content body override for show-page-body ===== */
.themed-page .show-page-body {
  background: transparent;
  color: var(--dmm-text);
}

.themed-page .show-page-body h1,
.themed-page .show-page-body h2,
.themed-page .show-page-body h3,
.themed-page .show-page-body h4,
.themed-page .show-page-body h5,
.themed-page .show-page-body h6 {
  color: var(--dmm-text);
}

.themed-page .show-page-body a {
  color: var(--dmm-text);
}

.themed-page .show-page-body a:hover {
  opacity: 0.75;
}

/* ===== Utility Classes ===== */
.text-muted { color: var(--dmm-text-muted); }
.text-accent { color: var(--dmm-text); }
.text-success { color: var(--dmm-success); }
.text-warning { color: var(--dmm-warning); }
.text-danger { color: var(--dmm-danger); }

/* ===== Responsive ===== */
@media (max-width: 768px) {
  .themed-page .themed-content {
    padding: 2rem 1rem;
  }

  .themed-page h1 { font-size: 1.75rem; }
  .themed-page h2 { font-size: 1.5rem; }
  .themed-page h3 { font-size: 1.125rem; }
}

/* ===== Event Title: Strip gradient, force monospace greyscale ===== */
.themed-page .meetup-form-title {
  font-family: var(--dmm-font) !important;
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-title-gradient {
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  -webkit-text-fill-color: unset !important;
  color: var(--dmm-text) !important;
}

.themed-page .rsvp-title-gradient .event-title__trailing-parens {
  background: none !important;
  -webkit-text-fill-color: unset !important;
  color: var(--dmm-text-secondary) !important;
}

/* ===== Gradient-brand button: dark filled style ===== */
.themed-page .tw-button-gradient-brand {
  background: var(--dmm-action) !important;
  background-image: none !important;
  color: var(--dmm-action-text) !important;
  border: 1px solid var(--dmm-action) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  font-family: var(--dmm-font) !important;
  font-weight: 500 !important;
  padding: 0.625rem 1.25rem !important;
  transition: opacity 0.2s ease !important;
}

.themed-page .tw-button-gradient-brand:hover {
  opacity: 0.9 !important;
  box-shadow: none !important;
  transform: none !important;
}

/* ===== Hide decorative map-pin / clock icons above title and status ===== */
.themed-page .rsvp-event-icon {
  display: none !important;
}

.themed-page .themed-content .rsvp-event-icon,
.themed-page article .rsvp-event-icon {
  display: none !important;
}

/* Hide the clock/status icon circle before "Event Ended" etc. */
.themed-page .inline-flex.items-center.justify-center.rounded-full.bg-slate-100.text-slate-400 {
  display: none !important;
}

/* ===== Force monospace on ALL text including meetup form headings ===== */
.themed-page h1,
.themed-page h2,
.themed-page h3,
.themed-page h4,
.themed-page h5,
.themed-page h6,
.themed-page p,
.themed-page span,
.themed-page div,
.themed-page li,
.themed-page td,
.themed-page th,
.themed-page label,
.themed-page input,
.themed-page textarea,
.themed-page select,
.themed-page button,
.themed-page a {
  font-family: var(--dmm-font) !important;
}

/* ===== Links: no underline inside buttons ===== */
.themed-page .tw-button a,
.themed-page a.tw-button,
.themed-page a.tw-button-brand,
.themed-page a.tw-button-outline,
.themed-page a.tw-button-secondary,
.themed-page a.tw-button-low-profile-white,
.themed-page a.tw-button-gradient-brand,
.themed-page .btn a,
.themed-page a.btn {
  text-decoration: none !important;
}

/* ===== Loading dots: greyscale ===== */
.themed-page .loading-dots span {
  background-color: var(--dmm-text-muted) !important;
}

/* ===== Table rows: alternating grey ===== */
.themed-page tbody tr:nth-child(even) {
  background-color: #F3F4F6 !important;
}

.themed-page tbody tr:nth-child(even) td {
  background-color: #F3F4F6 !important;
}

.themed-page tbody tr:nth-child(odd) {
  background-color: var(--dmm-bg) !important;
}

.themed-page tbody tr:nth-child(odd) td {
  background-color: var(--dmm-bg) !important;
}

/* ===== Social proof avatars: greyscale + alignment fix ===== */
.themed-page .profile-container-desktop .profile-avatar {
  filter: grayscale(100%) !important;
  transition: filter 0.2s ease !important;
}

.themed-page .profile-container-desktop .profile-avatar:hover {
  filter: grayscale(0%) !important;
}

/* Ensure all direct children of the avatar row align on a single line */
.themed-page .profile-container-desktop {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  padding: 4px 0 !important;
}

/* Links wrapping organizer avatars */
.themed-page .profile-container-desktop > a {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 36px !important;
  width: 36px !important;
  height: 36px !important;
  margin-right: -12px !important;
  position: relative !important;
  border-bottom: none !important;
}

/* Tooltip wrapper spans */
.themed-page .profile-container-desktop .profile-avatar-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  flex: 0 0 36px !important;
  margin-right: -12px !important;
  position: relative !important;
}

/* Bare images (no wrapper) */
.themed-page .profile-container-desktop > img.profile-avatar {
  flex: 0 0 36px !important;
  margin-right: -12px !important;
}

/* Avatar image inside any wrapper */
.themed-page .profile-container-desktop .profile-avatar {
  width: 36px !important;
  height: 36px !important;
  display: block !important;
  margin: 0 !important;
}

@media (max-width: 768px) {
  .themed-page .profile-container-desktop {
    flex-wrap: wrap !important;
    row-gap: 6px !important;
  }
}

/* ===== Subscribe module: stack heading + input on separate lines ===== */
.themed-page .subscribe-form .flex.md\:flex-row.md\:items-center.md\:justify-between {
  flex-direction: column !important;
  align-items: stretch !important;
}

.themed-page .subscribe-form .flex.md\:flex-row.md\:items-center.md\:justify-between > div {
  width: 100% !important;
}

.themed-page .subscribe-form .md\:flex-1.md\:justify-end {
  justify-content: flex-start !important;
}

/* ===== Index page: remove image gradient overlays ===== */
.themed-page .bg-gradient-to-b,
.themed-page .bg-gradient-to-t,
.themed-page .bg-gradient-to-r,
.themed-page .bg-gradient-to-l,
.themed-page [class*="bg-gradient"] {
  background-image: none !important;
  background: transparent !important;
}

/* Preserve explicit bg colors that aren't gradients */
.themed-page .bg-white { background-color: var(--dmm-bg) !important; }
.themed-page .bg-slate-50 { background-color: var(--dmm-surface) !important; }

/* Remove bg color behind index card images */
.themed-page .bg-slate-100,
.themed-page .bg-\[\\#f1f5f9\],
.themed-page a[class*="bg-slate-100"],
.themed-page [class*="bg-slate-100"] {
  background-color: transparent !important;
}

/* Ensure card image containers have no background */
.themed-page article a[href] > div[class*="bg-"],
.themed-page .story a > div[class*="bg-"] {
  background-color: transparent !important;
  background-image: none !important;
}

/* ===== Compact avatar alignment (index page) ===== */
.themed-page .profile-container-compact {
  display: flex !important;
  align-items: center !important;
}

.themed-page .profile-container-compact .profile-avatar-tooltip {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.themed-page .profile-container-compact .profile-avatar {
  filter: grayscale(100%) !important;
  margin: 0 !important;
}

.themed-page .profile-container-compact .profile-avatar:hover {
  filter: grayscale(0%) !important;
}

/* ===== Pill badges: greyscale (tw-pill + colored rounded) ===== */
.themed-page [class*="tw-pill"] {
  filter: grayscale(100%) !important;
}

.themed-page .badge,
.themed-page [class*="bg-indigo-"][class*="rounded"],
.themed-page [class*="bg-blue-"][class*="rounded"],
.themed-page [class*="bg-emerald-"][class*="rounded"],
.themed-page [class*="bg-rose-"][class*="rounded"],
.themed-page [class*="bg-purple-"][class*="rounded"],
.themed-page [class*="bg-amber-"][class*="rounded"],
.themed-page .rounded-full[class*="bg-"] {
  filter: grayscale(100%) !important;
}

/* ===== Time labels ("4 months ago") greyscale ===== */
.themed-page .text-indigo-600,
.themed-page .text-indigo-500,
.themed-page .text-indigo-400,
.themed-page .text-blue-600,
.themed-page .text-blue-500,
.themed-page .text-purple-600,
.themed-page .text-purple-500 {
  color: var(--dmm-text-muted) !important;
}

/* ===== Meet the organizers: greyscale + spaced apart ===== */
.themed-page .flex.-space-x-3 {
  gap: 0.75rem !important;
}

.themed-page .flex.-space-x-3 > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.themed-page .flex.-space-x-3 img {
  filter: grayscale(100%) !important;
}

.themed-page .flex.-space-x-3 img:hover {
  filter: grayscale(0%) !important;
}

/* ===== SweetAlert2 Modals ===== */
body.themed-page .swal2-popup,
body.theme-dev-minimal-mono .swal2-popup,
.themed-page.theme-dev-minimal-mono .swal2-popup {
  font-family: var(--dmm-font) !important;
  background-color: var(--dmm-bg) !important;
  border: 1px solid var(--dmm-border) !important;
  color: var(--dmm-text-secondary) !important;
}

body.themed-page .swal2-popup strong,
body.themed-page .swal2-popup b,
body.themed-page .swal2-html-container strong,
body.themed-page .swal2-html-container b,
body.theme-dev-minimal-mono .swal2-popup strong,
body.theme-dev-minimal-mono .swal2-popup b,
.themed-page.theme-dev-minimal-mono .swal2-popup strong,
.themed-page.theme-dev-minimal-mono .swal2-popup b,
.themed-page.theme-dev-minimal-mono .swal2-html-container strong,
.themed-page.theme-dev-minimal-mono .swal2-html-container b {
  color: inherit !important;
}

body.themed-page .swal2-html-container,
body.theme-dev-minimal-mono .swal2-html-container,
.themed-page.theme-dev-minimal-mono .swal2-html-container {
  color: var(--dmm-text-secondary) !important;
}

body.themed-page .swal2-title,
body.theme-dev-minimal-mono .swal2-title,
.themed-page.theme-dev-minimal-mono .swal2-title {
  color: var(--dmm-text) !important;
}

/* ===== Print Styles ===== */
@media print {
  .themed-page {
    background: white;
    color: black;
  }
}
