/*
  ThriveXDNA preview theme source of truth:
  - Human-readable spec: preview/THEME-LOCK.md
  - Machine-readable manifest: preview/theme-lock.json
  - Background animation: preview/dna-shatter-bg.js
  - HTML baseline: preview/original/*.html
*/

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

:root {
  --tx-bg-deep: #071013;
  --tx-bg-mid: #0d1a1f;
  --tx-panel: rgba(10, 20, 24, 0.78);
  --tx-panel-strong: rgba(8, 16, 20, 0.92);
  --tx-panel-soft: rgba(15, 29, 35, 0.72);
  --tx-border: rgba(128, 176, 184, 0.18);
  --tx-border-strong: rgba(30, 203, 225, 0.24);
  --tx-text: #eef7f8;
  --tx-text-soft: #a8bec2;
  --tx-cyan: #1ecbe1;
  --tx-red: #e1341e;
  --tx-gold: #f5b942;
  --tx-violet: #961ee1;
  --tx-green: #6ae11e;
  --tx-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.18), 0 24px 70px rgba(0, 0, 0, 0.35);
  --tx-glow: 0 0 0 1px rgba(255, 255, 255, 0.03), 0 18px 40px rgba(0, 0, 0, 0.28);
}

@keyframes txFloatGlow {
  0% {
    transform: translate3d(-10%, -8%, 0) scale(1);
  }
  50% {
    transform: translate3d(10%, 8%, 0) scale(1.14);
  }
  100% {
    transform: translate3d(-10%, -8%, 0) scale(1);
  }
}

@keyframes txPulseGrid {
  0% {
    opacity: 0.25;
    transform: scale(1);
  }
  50% {
    opacity: 0.45;
    transform: scale(1.04);
  }
  100% {
    opacity: 0.25;
    transform: scale(1);
  }
}

@keyframes txSweep {
  0% {
    transform: translateX(-18%) translateY(-4%) rotate(0deg);
  }
  50% {
    transform: translateX(12%) translateY(6%) rotate(180deg);
  }
  100% {
    transform: translateX(-18%) translateY(-4%) rotate(360deg);
  }
}

@keyframes txOrbDrift {
  0% {
    transform: translate3d(0, 0, 0) scale(1);
  }
  33% {
    transform: translate3d(28px, -18px, 0) scale(1.08);
  }
  66% {
    transform: translate3d(-22px, 14px, 0) scale(0.96);
  }
  100% {
    transform: translate3d(0, 0, 0) scale(1);
  }
}

/* ── Spinning conic border (hover reveal) ────────────────────── */

@property --tx-angle {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}

@keyframes txSpinBorder {
  to { --tx-angle: 360deg; }
}

.panel,
.glass-card,
.tx-panel,
.tx-sidebar-widget,
.tool-card,
.tx-tool-card,
.script-card,
.mcp-card,
.agent-card,
.txsp-card,
.txmcp-card,
.txag-card,
.ec-card,
.featured-slot,
.search-wrap,
.btn,
.btn-primary,
.btn-secondary,
  .btn-cyan,
  .search-wrap button,
  .chip,
  .tx-chip,
  .sc-chip,
  .mc-chip,
  .ac-chip,
  .txsp-type-chip,
  .txs-tool-chip,
  .filter-chip,
  .hero,
  .vault-hero,
  .cat-hero,
  .tx-app-header,
  .cat-chip,
  .tx-cta-strip,
  .thrivex-featured-card,
  .thrivex-recent-card,
  .thrivex-trending-card,
  .thrivex-hub-cpt-card,
  .thrivex-hub-hero {
  position: relative;
}

.tc-badge,
.ec-choice-badge,
.fs-badge,
.ec-price-chip,
.tx-price-chip {
  position: relative;
}

.panel::after,
.glass-card::after,
.tx-panel::after,
.tx-sidebar-widget::after,
.tool-card::after,
.tx-tool-card::after,
.script-card::after,
.mcp-card::after,
.agent-card::after,
.txsp-card::after,
.txmcp-card::after,
.txag-card::after,
.ec-card::after,
.featured-slot::after,
.search-wrap::after,
.btn::after,
.btn-primary::after,
.btn-secondary::after,
.btn-cyan::after,
.search-wrap button::after,
.chip::after,
.tx-chip::after,
.sc-chip::after,
.mc-chip::after,
.ac-chip::after,
.txsp-type-chip::after,
.txs-tool-chip::after,
.filter-chip::after,
.hero::after,
.vault-hero::after,
.cat-hero::after,
.tx-app-header::after,
.cat-chip::after,
.tx-cta-strip::after,
.thrivex-featured-card::after,
.thrivex-recent-card::after,
.thrivex-trending-card::after,
.thrivex-hub-cpt-card::after,
.thrivex-hub-hero::after,
.tc-badge::after,
.ec-choice-badge::after,
.fs-badge::after,
.ec-price-chip::after,
.tx-price-chip::after {
  content: '';
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  padding: 2px;
  background: conic-gradient(from var(--tx-angle), var(--tx-cyan), var(--tx-violet), var(--tx-red), var(--tx-green), var(--tx-cyan));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  animation: txSpinBorder 4s linear infinite;
  pointer-events: none;
  z-index: 0;
  filter: brightness(1.5) saturate(1.5);
}

.panel:hover::after,
.glass-card:hover::after,
.tx-panel:hover::after,
.tx-sidebar-widget:hover::after,
.tool-card:hover::after,
.tx-tool-card:hover::after,
.script-card:hover::after,
.mcp-card:hover::after,
.agent-card:hover::after,
.txsp-card:hover::after,
.txmcp-card:hover::after,
.txag-card:hover::after,
.ec-card:hover::after,
.featured-slot:hover::after,
.search-wrap:hover::after,
.search-wrap:focus-within::after,
.btn:hover::after,
.btn-primary:hover::after,
.btn-secondary:hover::after,
  .btn-cyan:hover::after,
  .search-wrap button:hover::after,
  .chip:hover::after,
  .tx-chip:hover::after,
  .sc-chip:hover::after,
  .mc-chip:hover::after,
  .ac-chip:hover::after,
  .txsp-type-chip:hover::after,
  .txs-tool-chip:hover::after,
  .filter-chip:hover::after,
  .hero:hover::after,
  .vault-hero:hover::after,
  .cat-hero:hover::after,
  .tx-app-header:hover::after,
  .tx-cta-strip:hover::after,
  .thrivex-featured-card:hover::after,
  .thrivex-recent-card:hover::after,
  .thrivex-trending-card:hover::after,
  .thrivex-hub-cpt-card:hover::after,
  .thrivex-hub-hero:hover::after,
  .tc-badge:hover::after,
  .ec-choice-badge:hover::after,
  .fs-badge:hover::after,
  .ec-price-chip:hover::after,
  .tx-price-chip:hover::after {
  opacity: 1 !important;
}

/* cat-chip conic border: only on hover or when JS assigns the glow rotation */
.cat-chip:hover::after,
.cat-chip.cat-chip--glow::after {
  opacity: 1 !important;
}

/* Extra visual pop on the 2 randomly-chosen glow chips */
.cat-chip.cat-chip--glow {
  border-color: rgba(30, 203, 225, 0.4) !important;
  box-shadow: 0 0 18px rgba(30, 203, 225, 0.35), 0 8px 24px rgba(0, 0, 0, 0.28) !important;
  color: var(--tx-cyan) !important;
}

/* Ensure card content always renders above the conic glow ring */
.panel > *,
.glass-card > *,
.tx-panel > *,
.tool-card > *,
.tx-tool-card > *,
.script-card > *,
.mcp-card > *,
.agent-card > *,
.txsp-card > *,
.txmcp-card > *,
.txag-card > *,
.ec-card > *,
.featured-slot > *,
.btn > *,
.chip > * {
  position: relative;
  z-index: 1;
}

/* ─────────────────────────────────────────────────────────────── */

html {
  color-scheme: dark;
}

body {
  font-family: 'Manrope', sans-serif;
  color: var(--tx-text);
  background:
    radial-gradient(circle at top left, rgba(30, 203, 225, 0.18), transparent 28%),
    radial-gradient(circle at top right, rgba(141, 107, 255, 0.18), transparent 24%),
    radial-gradient(circle at bottom left, rgba(225, 52, 30, 0.14), transparent 24%),
    linear-gradient(180deg, #091116 0%, #060b0e 100%);
  min-height: 100vh;
  position: relative;
  isolation: isolate;
}

body::before,
body::after {
  content: '';
  position: fixed;
  inset: -12%;
  pointer-events: none;
  z-index: 0;
}

body.post-type-archive-thrivex_app,
body.tax-thrivex_category,
body.single-thrivex_app,
body.post-type-archive-thrivex_script,
body.single-thrivex_script,
body.post-type-archive-thrivex_mcp,
body.single-thrivex_mcp,
body.post-type-archive-thrivex_agent,
body.single-thrivex_agent {
  background:
    radial-gradient(circle at top left, rgba(30, 203, 225, 0.18), transparent 28%),
    radial-gradient(circle at top right, rgba(141, 107, 255, 0.18), transparent 24%),
    radial-gradient(circle at bottom left, rgba(225, 52, 30, 0.14), transparent 24%),
    linear-gradient(180deg, #091116 0%, #060b0e 100%) !important;
}

#wrapper.site.wp-site-blocks,
#inner-wrap.wrap.kt-clear,
.content-bg,
body.content-style-boxed .site,
body.content-style-unboxed .site,
main#inner-wrap,
.site-content,
.site-main,
.content-area,
.entry-content,
.site-container {
  background: transparent !important;
}

#wrapper,
#inner-wrap,
.tx-layout,
.tx-main-content,
.hero,
.vault-hero,
.cat-hero,
.tx-app-header {
  position: relative;
  z-index: 1;
}

.tx-dna-canvas {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0 !important;
  opacity: 0.88;
}

body::before {
  background:
    radial-gradient(circle at 16% 22%, rgba(225, 52, 30, 0.34), transparent 20%),
    radial-gradient(circle at 82% 18%, rgba(30, 203, 225, 0.22), transparent 18%),
    radial-gradient(circle at 74% 74%, rgba(225, 52, 30, 0.22), transparent 22%),
    radial-gradient(circle at 26% 82%, rgba(30, 203, 225, 0.18), transparent 18%);
  filter: blur(26px);
  opacity: 0.92;
  animation: txFloatGlow 14s ease-in-out infinite;
}

body::after {
  inset: -10%;
  background:
    linear-gradient(rgba(30, 203, 225, 0.15) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30, 203, 225, 0.15) 1px, transparent 1px),
    linear-gradient(135deg, rgba(225, 52, 30, 0.18), rgba(30, 203, 225, 0.12));
  background-size: 64px 64px, 64px 64px, 100% 100%;
  opacity: 0.65;
  -webkit-mask-image: radial-gradient(circle at center, black 80%, transparent 100%);
  mask-image: radial-gradient(circle at center, black 80%, transparent 100%);
  animation: txPulseGrid 8s ease-in-out infinite, txSweep 24s linear infinite;
}

body,
input,
select,
textarea,
button {
  font-family: 'Manrope', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.sb-logo,
.app-title-wrap h1,
.hero h1,
.cat-hero h1,
.vault-hero h1,
.ec-name,
.ac-title,
.tc-name,
.sc-title,
.mc-title,
.txsp-title,
.txmcp-title,
.txag-title,
.gate-title,
.tx-cta-title,
.tx-faq-question {
  font-family: 'Space Grotesk', sans-serif;
  letter-spacing: -0.03em;
}

a {
  color: inherit;
}

.tx-left-sidebar,
.tx-left-sidebar::before,
.site-footer,
.featured-slot,
.stat-pill,
.search-filter-bar,
.app-header,
.panel,
.sidebar-widget,
.tool-card,
.script-card,
.mcp-card,
.agent-card,
.review-card,
.review-gate,
.tab-bar,
.scarcity-bar-wrap,
.ec-card,
.txsp-card,
.txmcp-card,
.txag-card,
.txr-preview-item,
.txr-gate,
.pagination .pg-btn,
.search-wrap {
  box-shadow: var(--tx-shadow);
}

.tx-left-sidebar {
  background: linear-gradient(180deg, rgba(7, 16, 19, 0.96), rgba(9, 20, 24, 0.92));
  border-right: 1px solid var(--tx-border);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.sb-brand,
.sb-section,
.sb-actions {
  border-color: rgba(255, 255, 255, 0.06);
}

.sb-logo,
.sb-link,
.sb-cat-link,
.sb-section-title,
.results-count strong,
.rating-num,
.rating-big .num,
.reviewer-name,
.review-title,
.tx-cta-title,
.il-val,
.ec-name,
.fs-name,
.tc-score,
.mc-rating,
.ac-title,
.sc-title,
.txsp-title,
.txmcp-title,
.txag-title,
.gate-title,
.app-title-wrap h1,
.breadcrumb .current,
.sec-head h2,
.panel h2,
.sidebar-widget h3 {
  color: var(--tx-text);
}

.panel > p,
.sidebar-widget p,
.review-card p,
.review-gate p {
  color: rgba(238, 247, 248, 0.94) !important;
}

.panel > p {
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.18);
}

.sb-logo span,
.il-link,
.tx-tag a:hover,
.breadcrumb a:hover,
.sb-link.active,
.sb-link:hover,
.sb-cat-link.active,
.sb-cat-link:hover {
  color: var(--tx-red);
}

.view-all,
.tx-cta-btn,
.txsp-vault-link,
.txmcp-hub-link,
.txag-hub-link {
  color: var(--tx-cyan);
}

.sb-link,
.sb-cat-link,
.sb-section-title,
.results-count,
.rating-count,
.app-tagline,
.hero-sub,
.cat-hero p,
.vault-hero p,
.feat-text p,
.sim-price,
.reviewer-meta,
.review-text,
.gate-text,
.moderation-note,
.il-label,
.tx-cta-sub,
.txai-section-label,
.txai-chip,
.tx-tag,
.txsp-body-preview,
.txmcp-desc,
.txag-desc,
.mc-desc,
.ac-desc,
.sc-desc,
.tc-desc,
.mc-count,
.mc-meta,
.ac-meta,
.sc-meta,
.rbar-count,
.rbar-label,
.rating-big .total,
.breadcrumb,
.breadcrumb a,
.breadcrumb span,
.footer-brand p,
.footer-bottom,
.footer-col ul li a,
.ec-rating-note,
.cat-stat .l,
.vault-stat .l,
.stat-pill .l,
.info-list,
.placeholder-num,
.scarcity-label,
.filter-label,
.search-input-wrap svg,
.review-sort,
.txsp-lock-note,
.txr-gate-text,
.txr-bar {
  color: var(--tx-text-soft);
}

.hero,
.vault-hero,
.cat-hero,
.app-header,
.site-footer {
  position: relative;
}

.hero::before,
.vault-hero::before,
.cat-hero::before {
  content: '';
  position: absolute;
  inset: auto auto -24% -10%;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(30, 203, 225, 0.18), transparent 68%);
  filter: blur(10px);
  animation: txOrbDrift 10s ease-in-out infinite;
  pointer-events: none;
  z-index: 0;
}

.cat-bg {
  background:
    radial-gradient(circle at 20% 30%, rgba(225, 52, 30, 0.12), transparent 24%),
    radial-gradient(circle at 80% 20%, rgba(30, 203, 225, 0.1), transparent 26%),
    linear-gradient(180deg, rgba(8, 15, 18, 0.96), rgba(10, 18, 22, 0.94));
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.cat-chip {
  background: rgba(255, 255, 255, 0.05);
  color: var(--tx-text);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.cat-chip:hover {
  background: rgba(255, 255, 255, 0.08);
  color: var(--tx-red);
  border-color: rgba(225, 52, 30, 0.28);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.28);
}

.cat-chip-icon {
  color: var(--tx-cyan);
}

.stat-pill,
.featured-slot,
.ec-card,
.search-wrap {
  background: rgba(12, 18, 22, 0.34);
  -webkit-backdrop-filter: blur(22px) saturate(130%);
  backdrop-filter: blur(22px) saturate(130%);
  border-color: rgba(255, 255, 255, 0.1);
}

.featured-slot.placeholder,
.stat-pill {
  background: rgba(12, 18, 22, 0.28);
}

.ec-card:hover,
.search-wrap:hover {
  background: rgba(12, 18, 22, 0.4);
}

/* Fix: template inline CSS forces background:#fff and border-radius:16px — override to dark glass spec */
.tx-tool-card {
  background: var(--tx-panel-soft) !important;
  border: 1px solid var(--tx-border) !important;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.18), 0 8px 32px rgba(0, 0, 0, 0.5) !important;
}

.featured-slot {
  border-radius: 24px !important;
}

.app-header::after {
  content: '';
  position: absolute;
  inset: auto auto -24% -10%;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(30, 203, 225, 0.18), transparent 68%);
  filter: blur(10px);
  animation: txOrbDrift 14s ease-in-out infinite reverse;
  pointer-events: none;
}

.hero {
  background:
    radial-gradient(circle at top left, rgba(30, 203, 225, 0.18), transparent 26%),
    radial-gradient(circle at bottom right, rgba(225, 52, 30, 0.18), transparent 26%),
    linear-gradient(135deg, rgba(8, 16, 20, 0.98), rgba(14, 28, 34, 0.9));
  border-bottom-left-radius: 48px;
  border-bottom-right-radius: 48px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.vault-hero,
.cat-hero,
.app-header {
  background:
    radial-gradient(circle at top right, rgba(30, 203, 225, 0.16), transparent 30%),
    radial-gradient(circle at bottom left, rgba(141, 107, 255, 0.18), transparent 24%),
    linear-gradient(135deg, rgba(9, 19, 24, 0.98), rgba(15, 26, 31, 0.92));
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.app-header::before,
.featured-slot::before,
.ec-top-bar,
.sec-head h2::after,
.panel h2::before {
  background: linear-gradient(90deg, #ff7d6a, var(--tx-red), #ff8f7e, var(--tx-gold));
}

.app-logo-xl,
.ec-logo,
.fs-logo,
.mc-icon,
.ac-icon {
  box-shadow: 0 18px 40px rgba(225, 52, 30, 0.18);
}

.search-wrap,
.search-filter-bar,
.featured-slot,
.stat-pill,
.ec-card,
.tool-card,
.script-card,
.mcp-card,
.agent-card,
.panel,
.sidebar-widget,
.review-card,
.review-gate,
.txsp-card,
.txmcp-card,
.txag-card,
.scarcity-bar-wrap,
.tab-bar,
.pagination .pg-btn {
  background: var(--tx-panel-soft);
  border: 1px solid var(--tx-border);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.featured-slot.placeholder,
.sim-card,
.feat-item,
.review-card,
.rpc-box,
.txmcp-cmd,
.search-input-wrap,
.filter-chip,
.sort-select,
.helpful-btn,
.sort-btn,
.sc-wchip,
.chip-cat,
.ac-chip-niche,
.mc-chip-niche,
.rbar-track,
.tx-tag,
.txai-signal-item,
.txai-chip,
.txsp-lock-overlay,
.txmcp-lock-overlay,
.txag-lock-overlay,
.txsp-copy-btn.copied,
.txmcp-copy-btn.copied,
.ec-price-chip,
.btn-claim-sm,
.scarcity-msg,
.tab-btn {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.08);
}

.search-wrap:hover,
.featured-slot:hover,
.thrivex-featured-card:hover,
.thrivex-recent-card:hover,
.thrivex-trending-card:hover,
.thrivex-hub-cpt-card:hover,
.tool-card:hover,
.script-card:hover,
.mcp-card:hover,
.agent-card:hover,
.sim-card:hover,
.feat-item:hover,
.txsp-card:hover,
.txmcp-card:hover,
.txag-card:hover,
.app-header:hover,
.panel:hover,
.sidebar-widget:hover,
.hero:hover,
.vault-hero:hover,
.cat-hero:hover,
.tx-app-header:hover,
.tx-cta-strip:hover,
.tx-tool-card:hover,
.featured-slot:hover,
.ec-card:hover,
.thrivex-hub-hero:hover {
  background: var(--tx-panel) !important;
  border-color: var(--tx-border-strong) !important;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.24), 0 12px 40px rgba(225, 52, 30, 0.3), 0 0 40px rgba(30, 203, 225, 0.4) !important;
  transform: translateY(-4px) !important;
  z-index: 10 !important;
}

.search-wrap input,
.search-input-wrap input,
.form-row input,
.form-row textarea,
.form-row select,
input,
textarea,
select,
.sort-select {
  color: var(--tx-text);
}

.search-wrap,
.search-input-wrap,
.form-row input,
.form-row textarea,
.form-row select,
.sort-select,
.helpful-btn,
.sort-btn,
.tab-btn,
.pg-btn,
.txmcp-gh-btn {
  border-color: rgba(255, 255, 255, 0.08);
}

.search-wrap input::placeholder,
.search-input-wrap input::placeholder,
.form-row input::placeholder,
.form-row textarea::placeholder {
  color: rgba(168, 190, 194, 0.76);
}

.filter-chip:hover,
.filter-chip.active,
.sort-btn.active,
.tab-btn.active,
.pg-btn.active,
.helpful-btn:hover,
.txmcp-gh-btn:hover,
.sb-link.active,
.sb-link:hover,
.sb-cat-link.active,
.sb-cat-link:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(225, 52, 30, 0.3);
  color: var(--tx-red);
}

.btn-primary,
.btn-submit-review,
.btn-gate-login,
.sc-btn,
.mc-btn,
.ac-btn,
.tc-btn,
.tx-cta-btn,
.ec-btn-view,
.txsp-copy-btn,
.txsp-lock-btn,
.txmcp-copy-btn,
.txmcp-lock-btn,
.txag-import-btn,
.txag-lock-btn,
.sb-btn-submit,
.sb-btn-featured,
.txr-gate-btn-primary,
.txr-gate-btn,
.btn-claim-sm,
.txmcp-gh-btn:hover {
  color: #fff;
  background: var(--tx-red) !important;
  border: 0;
  box-shadow: 0 16px 30px rgba(225, 52, 30, 0.26);
}

.btn-primary:hover,
.btn-submit-review:hover,
.btn-gate-login:hover,
.sc-btn:hover,
.mc-btn:hover,
.ac-btn:hover,
.tc-btn:hover,
.tx-cta-btn:hover,
.ec-btn-view:hover,
.txsp-copy-btn:hover,
.txsp-lock-btn:hover,
.txmcp-copy-btn:hover,
.txmcp-lock-btn:hover,
.txag-import-btn:hover,
.txag-lock-btn:hover,
.sb-btn-submit:hover,
.sb-btn-featured:hover,
.txr-gate-btn-primary:hover,
.txr-gate-btn:hover,
.btn-claim-sm:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 36px rgba(225, 52, 30, 0.32);
}

.btn-secondary,
.sb-btn-login,
.txr-gate-btn-secondary,
.txmcp-gh-btn,
.txsp-vault-link,
.txmcp-hub-link,
.txag-hub-link {
  color: var(--tx-text);
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.btn-secondary:hover,
.sb-btn-login:hover,
.txr-gate-btn-secondary:hover,
.txsp-vault-link:hover,
.txmcp-hub-link:hover,
.txag-hub-link:hover {
  border-color: rgba(225, 52, 30, 0.28);
  background: rgba(255, 255, 255, 0.05);
  color: var(--tx-red);
}

.chip,
.sc-chip,
.mc-chip,
.ac-chip,
.txsp-type-chip,
.txsp-diff,
.txmcp-diff,
.txag-fw-chip,
.chip-price,
.chip-cat,
.chip-verified,
.txai-chip,
.tx-tag,
.txai-signal-item,
.txai-trending-badge,
.ec-choice-badge,
.ec-price-chip,
.vault-hero-tag,
.cat-hero-tag,
.tx-detail-label,
.tx-detail-val {
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.chip-price,
.sc-chip-diff-hard,
.ac-chip-complex-hard,
.scarcity-msg,
.txr-gate-lock,
.rpc-con,
.txsp-type-workflow {
  color: #ffac9f;
  background: rgba(225, 52, 30, 0.12);
}

.chip-verified,
.ac-chip-complex-easy,
.sc-chip-diff-easy,
.mc-chip-off,
.rpc-pro,
.txsp-copy-btn.copied,
.txmcp-copy-btn.copied,
.txsp-type-template {
  color: #9be8ab;
  background: rgba(117, 208, 132, 0.14);
}

.chip-cat,
.sc-chip-niche,
.mc-chip-niche,
.ac-chip-niche,
.txsp-type-prompt,
.txsp-type-automation,
.filter-chip,
.tab-btn,
.sort-btn,
.pg-btn,
.sc-wchip,
.txai-chip,
.tx-tag,
.txai-signal-item,
.ec-price-chip,
.placeholder-num,
.featured-slot.placeholder {
  color: var(--tx-text-soft);
}

.filter-chip,
.sort-btn,
.tab-btn,
.pg-btn,
.sort-select,
.helpful-btn,
.txmcp-gh-btn,
.sc-wchip,
.txai-chip,
.tx-tag {
  border-style: solid;
}

.chip,
.sc-chip-type,
.mc-chip-type,
.ac-chip-fw,
.txsp-type-chip,
.txsp-diff-beginner,
.txsp-diff-intermediate,
.txmcp-diff-beginner,
.txmcp-diff-intermediate,
.vault-hero-tag,
.cat-hero-tag,
.ec-choice-badge,
.txai-trending-badge {
  color: var(--tx-red);
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(225, 52, 30, 0.24);
}

.mc-cap,
.ac-trigger,
.txsp-type-chip,
.txmcp-diff,
.txag-fw-chip,
.txsp-diff,
.txai-chip,
.tx-tag,
.ec-choice-badge,
.vault-hero-tag,
.cat-hero-tag {
  border-radius: 999px;
}

/* ── 4-color chip variants (showcase spec) ───────────────────── */

.chip-red {
  color: var(--tx-red);
  background: rgba(225, 52, 30, 0.3);
  border-color: rgba(225, 52, 30, 0.4);
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.4), 0 0 20px rgba(225, 52, 30, 0.4);
}

.chip-cyan {
  color: var(--tx-cyan);
  background: rgba(30, 203, 225, 0.3);
  border-color: rgba(30, 203, 225, 0.4);
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.4), 0 0 20px rgba(30, 203, 225, 0.4);
}

.chip-green {
  color: var(--tx-green);
  background: rgba(106, 225, 30, 0.3);
  border-color: rgba(106, 225, 30, 0.4);
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.4), 0 0 20px rgba(106, 225, 30, 0.4);
}

.chip-violet {
  color: var(--tx-violet);
  background: rgba(150, 30, 225, 0.3);
  border-color: rgba(150, 30, 225, 0.4);
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.4), 0 0 20px rgba(150, 30, 225, 0.4);
}

/* ─────────────────────────────────────────────────────────────── */

.stars-lg,
.rating-big .stars,
.review-stars,
.sp-star.on,
.tc-star,
.ec-star,
.mc-star,
.sp-star,
.fs-badge,
.chip-price,
.tx-detail-val,
.txmcp-stars {
  color: var(--tx-gold);
}

.rbar-fill,
.scarcity-fill,
.app-header::before,
.featured-slot::before {
  box-shadow: 0 0 24px rgba(30, 203, 225, 0.2);
}

.review-card,
.rpc-box,
.txsp-lock-overlay,
.txmcp-lock-overlay,
.txag-lock-overlay,
.review-gate,
.txr-gate {
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}

.txsp-lock-overlay,
.txmcp-lock-overlay,
.txag-lock-overlay {
  background: linear-gradient(180deg, rgba(7, 16, 19, 0.15), rgba(7, 16, 19, 0.94) 42%);
}

.txmcp-cmd {
  color: #92ecff;
  border: 1px solid rgba(30, 203, 225, 0.14);
}

.footer-col h4,
.sec-head h2::after,
.panel h2::before,
.sb-logo span {
  color: var(--tx-red);
}

.tx-cta-title,
.view-all {
  color: var(--tx-cyan);
}

.site-footer {
  background:
    radial-gradient(circle at top left, rgba(30, 203, 225, 0.14), transparent 30%),
    linear-gradient(135deg, rgba(5, 10, 13, 0.98), rgba(9, 16, 20, 0.98));
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.footer-bottom,
.footer-col ul li a,
.footer-brand p {
  opacity: 1;
}

.search-wrap button,
.btn-primary,
.btn-submit-review,
.btn-gate-login,
.sc-btn,
.mc-btn,
.ac-btn,
.tc-btn,
.ec-btn-view {
  font-weight: 800;
}

.featured-slot.placeholder:hover {
  background: rgba(225, 52, 30, 0.08);
}

.sim-card,
.feat-item,
.review-card,
.tool-card,
.script-card,
.mcp-card,
.agent-card,
.featured-slot,
.panel,
.sidebar-widget,
.app-header,
.search-filter-bar,
.search-wrap,
.ec-card,
.scarcity-bar-wrap,
.txsp-card,
.txmcp-card,
.txag-card,
.review-gate,
.txr-gate {
  border-radius: 24px;
}

.tab-bar,
.pagination .pg-btn,
.filter-chip,
.sort-btn,
.sort-select,
.helpful-btn,
.btn-secondary,
.sb-btn-login,
.txmcp-gh-btn,
.txsp-vault-link,
.txmcp-hub-link,
.txag-hub-link,
.btn-claim-sm {
  border-radius: 14px;
}

.form-row input,
.form-row textarea,
.form-row select,
input,
textarea,
select {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.form-row input:focus,
.form-row textarea:focus,
.form-row select:focus,
input:focus,
textarea:focus,
select:focus,
.search-input-wrap:focus-within,
.search-wrap:focus-within {
  outline: none;
  border-color: rgba(225, 52, 30, 0.28);
  box-shadow: 0 0 0 4px rgba(225, 52, 30, 0.08);
}

.search-wrap,
.search-input-wrap {
  background: rgba(10, 20, 24, 0.84);
}

.search-wrap button {
  color: #fff;
  background: var(--tx-red);
}

.search-wrap button:hover {
  box-shadow: 0 16px 34px rgba(225, 52, 30, 0.24);
}

.rbar-track,
.scarcity-track {
  background: rgba(255, 255, 255, 0.06);
}

.rbar-fill,
.scarcity-fill {
  background: linear-gradient(90deg, var(--tx-cyan), var(--tx-red));
}

.tx-faq-item,
.txr-preview-item,
.tx-sidebar-widget,
.tx-detail-row {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 18px;
}

.tx-faq-question,
.tx-faq-answer,
.tx-detail-label,
.tx-detail-val,
.txr-gate-cta,
.txr-gate-text,
.txr-bar,
.review-text,
.rpc-label,
.sim-name,
.feat-text h4,
.vault-stat .n,
.cat-stat .n,
.stat-pill .n,
.hero h1,
.vault-hero h1,
.cat-hero h1 {
  color: var(--tx-text);
}

.tx-faq-toggle,
.feat-icon,
.tx-faq-icon,
.gate-icon {
  background: rgba(255, 255, 255, 0.05);
  color: var(--tx-red);
  border: 1px solid rgba(225, 52, 30, 0.24);
}

.search-wrap,
.search-filter-bar,
.tab-bar,
.pagination,
.review-sort,
.results-bar,
.content-layout,
.agents-grid,
.tools-grid,
.scripts-grid,
.mcp-grid,
.similar-grid,
.feat-grid,
.txsp-grid,
.txmcp-grid,
.txag-grid {
  position: relative;
  z-index: 1;
}

@media (max-width: 900px) {
  .hero,
  .vault-hero,
  .cat-hero,
  .app-header,
  .ec-card,
  .panel,
  .search-filter-bar,
  .search-wrap,
  .featured-slot,
  .tool-card,
  .script-card,
  .mcp-card,
  .agent-card,
  .sidebar-widget,
  .review-card,
  .review-gate,
  .txsp-card,
  .txmcp-card,
  .txag-card {
    border-radius: 20px;
  }
}

/* Core plugin compatibility overrides: theme-only, no function changes */

.tx-app-header,
.tx-panel,
.tx-sidebar-widget,
.tx-tab-bar,
.tx-also-searched,
.tx-cta-strip,
.tx-aff-notice,
.txv-gate-banner,
.tx-stack-sidebar,
.tx-app-header,
.tx-panel,
.tx-sidebar-widget,
.tx-tab-bar,
.tx-also-searched {
  background: var(--tx-panel) !important;
  border: 1px solid var(--tx-border) !important;
  box-shadow: var(--tx-shadow) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.tx-app-header:hover,
.tx-panel:hover,
.tx-sidebar-widget:hover,
.tx-also-searched:hover,
.tx-stack-sidebar:hover {
  border-color: var(--tx-border-strong) !important;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.5), 0 12px 40px rgba(225, 52, 30, 0.5), 0 0 40px rgba(30, 203, 225, 0.6) !important;
}

.tx-app-header {
  position: relative;
}

.tx-app-header::before {
  background: linear-gradient(90deg, #ff7d6a, var(--tx-red), #ff8f7e, var(--tx-gold)) !important;
}

.tx-app-logo-xl,
.tx-sim-logo {
  background: linear-gradient(135deg, rgba(30, 203, 225, 0.95), rgba(30, 203, 225, 0.7)) !important;
  box-shadow: 0 18px 40px rgba(225, 52, 30, 0.18) !important;
}

.tx-panel h2,
.tx-sidebar-widget h3,
.tx-cta-title,
.tx-no-reviews strong,
.tx-il-val,
.tx-breadcrumb .tx-bc-current,
.tx-faq-question,
.tx-panel-content,
.tx-panel-content p,
.tx-panel-content li,
.tx-also-searched,
.tx-as-chip,
.tx-sort-btn,
.tx-chip-cat,
.tx-chip-featured {
  color: var(--tx-text) !important;
}

.tx-panel-content,
.tx-panel-content p,
.tx-panel-content li,
.tx-sidebar-widget p,
.tx-aff-notice,
.txv-gate-text,
.tx-breadcrumb,
.tx-breadcrumb a {
  color: rgba(238, 247, 248, 0.94) !important;
}

.tx-chip-cat,
.tx-chip-featured,
.tx-as-chip,
.tx-sort-btn,
.tx-aff-notice,
.txv-gate-banner,
.tx-stack-share-btn,
.tx-add-stack-btn {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
}

.tx-chip-featured,
.tx-aff-notice {
  color: var(--tx-red) !important;
  border-color: rgba(225, 52, 30, 0.24) !important;
}

.tx-feat-item,
.tx-sim-card {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  box-shadow: none !important;
}

.tx-feat-item:hover,
.tx-sim-card:hover {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(225, 52, 30, 0.2) !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.24) !important;
}

.tx-feat-icon,
.tx-collapse-icon,
.tx-il-label {
  color: var(--tx-red) !important;
}

.tx-feat-icon {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(225, 52, 30, 0.18) !important;
}

.tx-btn-visit,
.tx-cta-btn,
.txv-gate-btn,
.tx-stack-copy-btn {
  background: var(--tx-red) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 16px 30px rgba(225, 52, 30, 0.26) !important;
}

.tx-btn-secondary,
.tx-stack-share-btn,
.tx-add-stack-btn {
  color: var(--tx-text) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.tx-btn-secondary:hover,
.tx-stack-share-btn:hover,
.tx-add-stack-btn:hover,
.tx-sort-btn:hover,
.tx-as-chip:hover {
  background: rgba(255, 255, 255, 0.05) !important;
  color: var(--tx-red) !important;
  border-color: rgba(225, 52, 30, 0.28) !important;
}

.tx-tab-bar {
  padding: 6px !important;
}

.tx-tab-btn {
  color: var(--tx-text-soft) !important;
  background: transparent !important;
  border: 1px solid transparent !important;
}

.tx-tab-btn.active,
.tx-sort-btn.active {
  background: rgba(255, 255, 255, 0.05) !important;
  color: var(--tx-red) !important;
  border-color: rgba(225, 52, 30, 0.28) !important;
  box-shadow: none !important;
}

.tx-cta-strip,
.txv-gate-banner {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.03)) !important;
}

.tx-seo-pricing {
  background:
    radial-gradient(circle at top left, rgba(30, 203, 225, 0.1), transparent 30%),
    radial-gradient(circle at bottom right, rgba(225, 52, 30, 0.12), transparent 26%),
    linear-gradient(180deg, rgba(7, 16, 19, 0.96), rgba(9, 19, 24, 0.98)) !important;
}

.tx-left-sidebar {
  background: linear-gradient(180deg, rgba(7, 16, 19, 0.96), rgba(9, 20, 24, 0.92)) !important;
  border-right: 1px solid var(--tx-border) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.tx-stack-sidebar {
  right: 0;
  border-left: 1px solid var(--tx-border) !important;
}

.tx-stack-cmd-block,
.tx-no-reviews,
.tx-faq-item {
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  color: var(--tx-text) !important;
}

.tx-faq-question {
  background: transparent !important;
}

.tx-faq-answer,
.tx-ratings,
.tx-review-meta,
.tx-reaction-bar,
.tx-review-text {
  color: rgba(238, 247, 248, 0.9) !important;
}

@media (max-width: 900px) {
  .tx-app-header,
  .tx-panel,
  .tx-sidebar-widget,
  .tx-tab-bar,
  .tx-also-searched,
  .tx-cta-strip,
  .txv-gate-banner,
  .tx-stack-sidebar {
    border-radius: 20px !important;
  }

  .tx-app-header {
    padding: 28px 22px !important;
  }

  .tx-panel,
  .tx-sidebar-widget {
    padding: 24px 20px !important;
  }
}

/* Live template parity overrides: use agent archive as reference */

body.tx-tax-page {
  display: block !important;
  min-height: 0 !important;
}

body.tx-tax-page .tx-main-content {
  margin-left: 250px !important;
  width: calc(100% - 250px);
}

.tx-layout,
.tx-main-content,
.tx-page-wrap,
.tx-content-layout,
.tx-tools-section,
.section,
.cat-inner {
  position: relative;
  z-index: 1;
  background: transparent !important;
}

.hero,
.vault-hero,
.cat-hero,
.tx-app-header {
  background:
    radial-gradient(circle at top right, rgba(30, 203, 225, 0.16), transparent 30%),
    radial-gradient(circle at bottom left, rgba(225, 52, 30, 0.16), transparent 26%),
    linear-gradient(135deg, rgba(9, 19, 24, 0.98), rgba(15, 26, 31, 0.92)) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: var(--tx-shadow) !important;
}

.hero::before,
.vault-hero::before,
.cat-hero::before {
  opacity: 1 !important;
}

.hero h1,
.vault-hero h1,
.cat-hero h1,
.tx-app-title-wrap h1,
.sec-head h2,
.tx-tools-head h2 {
  color: var(--tx-text) !important;
}

.hero-sub,
.vault-hero p,
.cat-hero p,
.tx-app-tagline,
.results-count,
.results-count strong,
.tx-cta-sub,
.tx-tools-head p,
.tc-desc,
.sc-desc,
.mc-desc,
.ac-desc,
.tc-cat,
.sc-meta,
.mc-meta,
.ac-meta,
.tc-reviews,
.vault-stat .l,
.cat-stat .l,
.filter-label,
.tx-breadcrumb,
.tx-breadcrumb a,
.tx-il-label {
  color: var(--tx-text-soft) !important;
}

.search-filter-bar,
.search-wrap,
.search-input-wrap,
.stat-pill,
.featured-slot,
.ec-card,
.cat-chip,
.tool-card,
.tx-tool-card,
.script-card,
.mcp-card,
.agent-card,
.tx-panel,
.tx-sidebar-widget,
.tx-tab-bar,
.tx-stack-sidebar,
.txv-gate-banner,
.tx-cta-strip,
.tx-no-results,
.scripts-empty,
.mcp-empty,
.agents-empty {
  background: rgba(10, 20, 24, 0.72) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: var(--tx-shadow) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.tool-card,
.tx-tool-card,
.script-card,
.mcp-card,
.agent-card,
.featured-slot,
.stat-pill,
.ec-card,
.search-filter-bar,
.search-wrap,
.search-input-wrap,
.tx-panel,
.tx-sidebar-widget,
.tx-tab-bar {
  border-radius: 24px !important;
}

.cat-bg {
  background:
    radial-gradient(circle at 20% 30%, rgba(225, 52, 30, 0.12), transparent 24%),
    radial-gradient(circle at 80% 20%, rgba(30, 203, 225, 0.1), transparent 26%),
    linear-gradient(180deg, rgba(8, 15, 18, 0.96), rgba(10, 18, 22, 0.94)) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.cat-chip,
.filter-chip,
.sort-select,
.pagination .page-numbers,
.tx-pagination .page-numbers,
.sc-wchip,
.mc-chip-niche,
.ac-chip-niche,
.tc-price,
.tx-price-chip,
.ec-price-chip,
.tx-chip,
.tx-chip-price,
.tx-chip-cat,
.tx-chip-featured,
.tx-chip-verified,
.mc-cap,
.ac-trigger,
.sc-chip,
.mc-chip,
.ac-chip,
.btn-claim-sm,
.scarcity-msg,
.tx-add-stack-btn,
.tx-stack-share-btn {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  color: var(--tx-text-soft) !important;
}

.cat-chip:hover,
.filter-chip:hover,
.filter-chip.active,
.pagination .page-numbers.current,
.tx-pagination .page-numbers.current,
.tx-tab-btn.active,
.sort-btn.active,
.tx-sort-btn.active,
.sb-link.active,
.sb-link:hover,
.sb-cat-link.active,
.sb-cat-link:hover {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(225, 52, 30, 0.28) !important;
  color: var(--tx-red) !important;
}

.cat-chip,
.cat-chip:hover,
.filter-chip,
.filter-chip.active,
.filter-chip:hover,
.tx-tab-btn.active,
.pagination .page-numbers.current,
.tx-pagination .page-numbers.current,
.tx-chip-featured,
.scarcity-msg,
.btn-claim-sm,
.tc-price,
.tx-price-chip,
.ec-price-chip {
  color: var(--tx-red) !important;
}

.sb-logo,
.sb-section-title,
.sb-link,
.sb-cat-link,
.tx-panel h2,
.tx-sidebar-widget h3,
.tx-cta-title,
.tc-name,
.sc-title,
.mc-title,
.ac-title,
.ec-name,
.fs-name,
.sim-name,
.tx-no-results h2,
.scripts-empty h2,
.mcp-empty h2,
.agents-empty h2,
.tx-il-val,
.tx-rating-num,
.tx-rating-num,
.tx-score {
  color: var(--tx-text) !important;
}

.sb-logo span,
.view-all,
.tx-il-link,
.cat-chip-icon,
.tx-cta-title,
.ec-choice-badge,
.vault-hero-tag,
.cat-hero-tag,
.sc-chip-type,
.mc-chip-type,
.ac-chip-fw {
  color: var(--tx-cyan) !important;
}

.sb-link,
.sb-cat-link,
.sb-btn-login,
.tx-btn-secondary,
.tx-stack-share-btn,
.tx-add-stack-btn,
.sort-select,
.search-input-wrap,
.search-wrap input,
.search-input-wrap input,
.sc-lock-note {
  color: var(--tx-text-soft) !important;
}

.search-wrap input,
.search-input-wrap input,
.search-wrap input::placeholder,
.search-input-wrap input::placeholder {
  color: var(--tx-text-soft) !important;
}

.search-wrap,
.search-input-wrap,
.sort-select,
.filter-chip,
.pagination .page-numbers,
.tx-pagination .page-numbers,
.tx-btn-secondary,
.sb-btn-login,
.tx-stack-share-btn,
.tx-add-stack-btn {
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.search-wrap button,
.tx-btn-view,
.tx-btn-visit,
.tx-cta-btn,
.ec-btn-view,
.sc-btn,
.mc-btn,
.ac-btn,
.tc-btn,
.sb-btn-submit,
.txv-gate-btn,
.sc-lock-btn,
.mc-gate-btn,
.ac-gate-btn,
.tx-stack-copy-btn {
  background: var(--tx-red) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 16px 30px rgba(225, 52, 30, 0.26) !important;
}

.search-wrap button:hover,
.tx-btn-view:hover,
.tx-btn-visit:hover,
.tx-cta-btn:hover,
.ec-btn-view:hover,
.sc-btn:hover,
.mc-btn:hover,
.ac-btn:hover,
.tc-btn:hover,
.sb-btn-submit:hover,
.txv-gate-btn:hover,
.sc-lock-btn:hover,
.mc-gate-btn:hover,
.ac-gate-btn:hover,
.tx-stack-copy-btn:hover {
  box-shadow: 0 20px 36px rgba(225, 52, 30, 0.32) !important;
}

.featured-slot.placeholder,
.tx-no-reviews,
.tx-faq-item,
.tx-stack-item,
.tx-stack-empty,
.tx-stack-cmd-block,
.tx-feat-item,
.tx-sim-card {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.tx-app-header::before,
.featured-slot::before,
.ec-top-bar,
.sec-head h2::after,
.tx-tools-head h2::after,
.panel h2::before,
.tx-panel h2::before {
  background: linear-gradient(90deg, #ff7d6a, var(--tx-red), #ff8f7e, var(--tx-gold)) !important;
}

.tx-logo,
.tc-logo,
.sc-icon,
.mc-icon,
.ac-icon,
.ec-logo,
.fs-logo,
.tx-app-logo-xl,
.tx-sim-logo,
.tx-feat-icon {
  background: linear-gradient(135deg, rgba(30, 203, 225, 0.95), rgba(30, 203, 225, 0.7)) !important;
  box-shadow: 0 18px 40px rgba(225, 52, 30, 0.18) !important;
}

.tx-panel-content,
.tx-panel-content p,
.tx-panel-content li,
.tx-sidebar-widget p,
.tx-sidebar-widget li,
.tx-review-text,
.tx-faq-answer p,
.tc-desc,
.sc-desc,
.mc-desc,
.ac-desc,
.ec-desc,
.sim-price,
.tx-no-results p,
.scripts-empty p,
.mcp-empty p,
.agents-empty p {
  color: rgba(238, 247, 248, 0.94) !important;
}

.tx-panel,
.tx-sidebar-widget,
.tool-card,
.tx-tool-card,
.script-card,
.mcp-card,
.agent-card,
.featured-slot,
.search-filter-bar,
.search-wrap,
.scarcity-bar-wrap,
.ec-card,
.hero,
.vault-hero,
.cat-hero {
  position: relative;
}

.tx-left-sidebar,
.tx-stack-sidebar {
  top: 0 !important;
  height: 100vh !important;
}

@media (max-width: 900px) {
  body.tx-tax-page .tx-main-content {
    margin-left: 0 !important;
    width: 100%;
  }

  .tx-layout {
    display: block !important;
  }

  .hero,
  .vault-hero,
  .cat-hero,
  .tx-app-header,
  .search-filter-bar,
  .search-wrap,
  .featured-slot,
  .tool-card,
  .tx-tool-card,
  .script-card,
  .mcp-card,
  .agent-card,
  .tx-panel,
  .tx-sidebar-widget,
  .ec-card {
    border-radius: 20px !important;
  }
}

/* Final preview-parity overrides for live directory templates */

body.post-type-archive-thrivex_app,
body.tax-thrivex_category,
body.single-thrivex_app,
body.post-type-archive-thrivex_script,
body.post-type-archive-thrivex_mcp,
body.post-type-archive-thrivex_agent,
body.single-thrivex_script,
body.single-thrivex_mcp,
body.single-thrivex_agent {
  overflow-x: hidden;
}

body.post-type-archive-thrivex_app #inner-wrap,
body.tax-thrivex_category #inner-wrap,
body.single-thrivex_app #inner-wrap,
body.post-type-archive-thrivex_script #inner-wrap,
body.post-type-archive-thrivex_mcp #inner-wrap,
body.post-type-archive-thrivex_agent #inner-wrap,
body.post-type-archive-thrivex_app .tx-layout,
body.tax-thrivex_category .tx-layout,
body.single-thrivex_app .tx-layout,
body.post-type-archive-thrivex_script .tx-layout,
body.post-type-archive-thrivex_mcp .tx-layout,
body.post-type-archive-thrivex_agent .tx-layout,
body.post-type-archive-thrivex_app .tx-main-content,
body.tax-thrivex_category .tx-main-content,
body.single-thrivex_app .tx-main-content,
body.post-type-archive-thrivex_script .tx-main-content,
body.post-type-archive-thrivex_mcp .tx-main-content,
body.post-type-archive-thrivex_agent .tx-main-content,
body.post-type-archive-thrivex_app .tx-page-wrap,
body.tax-thrivex_category .tx-page-wrap,
body.single-thrivex_app .tx-page-wrap,
body.post-type-archive-thrivex_script .tx-page-wrap,
body.post-type-archive-thrivex_mcp .tx-page-wrap,
body.post-type-archive-thrivex_agent .tx-page-wrap {
  background: transparent !important;
}

/* Scarcity bar — no card/rectangle behind featured spots */
.scarcity-bar-wrap,
body.post-type-archive-thrivex_app .scarcity-bar-wrap {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.post-type-archive-thrivex_app .search-wrap,
body.post-type-archive-thrivex_app .stat-pill,
body.post-type-archive-thrivex_app .featured-slot,
body.post-type-archive-thrivex_app .ec-card,
body.post-type-archive-thrivex_app .cat-chip,
body.post-type-archive-thrivex_app .tx-tool-card,
body.tax-thrivex_category .search-filter-bar,
body.tax-thrivex_category .tool-card,
body.tax-thrivex_category .filter-chip,
body.tax-thrivex_category .sort-select,
body.single-thrivex_app .tx-app-header,
body.single-thrivex_app .tx-tab-bar,
body.single-thrivex_app .tx-panel,
body.single-thrivex_app .tx-sidebar-widget,
body.post-type-archive-thrivex_script .search-filter-bar,
body.post-type-archive-thrivex_script .script-card,
body.post-type-archive-thrivex_mcp .search-filter-bar,
body.post-type-archive-thrivex_mcp .mcp-card,
body.post-type-archive-thrivex_agent .search-filter-bar,
body.post-type-archive-thrivex_agent .agent-card {
  background: rgba(10, 20, 24, 0.74) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: var(--tx-shadow) !important;
  -webkit-backdrop-filter: blur(18px) saturate(125%) !important;
  backdrop-filter: blur(18px) saturate(125%) !important;
}

body.post-type-archive-thrivex_agent .vault-hero,
body.post-type-archive-thrivex_script .vault-hero,
body.post-type-archive-thrivex_mcp .vault-hero,
body.tax-thrivex_category .cat-hero,
body.single-thrivex_app .tx-app-header {
  background:
    radial-gradient(circle at top right, rgba(30, 203, 225, 0.16), transparent 30%),
    radial-gradient(circle at bottom left, rgba(225, 52, 30, 0.16), transparent 26%),
    linear-gradient(135deg, rgba(9, 19, 24, 0.98), rgba(15, 26, 31, 0.92)) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: var(--tx-shadow) !important;
}

body.post-type-archive-thrivex_agent .vault-hero,
body.post-type-archive-thrivex_script .vault-hero,
body.post-type-archive-thrivex_mcp .vault-hero,
body.tax-thrivex_category .cat-hero,
body.single-thrivex_app .tx-app-header,
body.post-type-archive-thrivex_agent .search-filter-bar,
body.post-type-archive-thrivex_script .search-filter-bar,
body.post-type-archive-thrivex_mcp .search-filter-bar,
body.tax-thrivex_category .search-filter-bar,
body.post-type-archive-thrivex_agent .agent-card,
body.post-type-archive-thrivex_script .script-card,
body.post-type-archive-thrivex_mcp .mcp-card,
body.tax-thrivex_category .tool-card,
body.single-thrivex_app .tx-panel,
body.single-thrivex_app .tx-sidebar-widget {
  position: relative;
}

body.post-type-archive-thrivex_agent .agent-card,
body.post-type-archive-thrivex_script .script-card,
body.post-type-archive-thrivex_mcp .mcp-card,
body.tax-thrivex_category .tool-card,
body.post-type-archive-thrivex_app .tx-tool-card {
  border-radius: 24px !important;
}

body.post-type-archive-thrivex_agent .agent-card:hover,
body.post-type-archive-thrivex_script .script-card:hover,
body.post-type-archive-thrivex_mcp .mcp-card:hover,
body.tax-thrivex_category .tool-card:hover,
body.post-type-archive-thrivex_app .tx-tool-card:hover {
  border-color: rgba(30, 203, 225, 0.24) !important;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.5), 0 12px 40px rgba(225, 52, 30, 0.5), 0 0 40px rgba(30, 203, 225, 0.6) !important;
}

body.post-type-archive-thrivex_agent .agent-card,
body.post-type-archive-thrivex_script .script-card,
body.post-type-archive-thrivex_mcp .mcp-card,
body.tax-thrivex_category .tool-card,
body.post-type-archive-thrivex_app .tx-tool-card,
body.single-thrivex_app .tx-panel,
body.single-thrivex_app .tx-sidebar-widget {
  color: var(--tx-text) !important;
}

body.post-type-archive-thrivex_agent .ac-title,
body.post-type-archive-thrivex_script .sc-title,
body.post-type-archive-thrivex_mcp .mc-title,
body.tax-thrivex_category .tc-name,
body.post-type-archive-thrivex_app .tc-name,
body.single-thrivex_app .tx-panel h2,
body.single-thrivex_app .tx-sidebar-widget h3 {
  color: var(--tx-text) !important;
}

body.post-type-archive-thrivex_agent .ac-desc,
body.post-type-archive-thrivex_script .sc-desc,
body.post-type-archive-thrivex_mcp .mc-desc,
body.tax-thrivex_category .tc-desc,
body.post-type-archive-thrivex_app .tc-desc,
body.single-thrivex_app .tx-panel-content,
body.single-thrivex_app .tx-panel-content p,
body.single-thrivex_app .tx-sidebar-widget p {
  color: rgba(238, 247, 248, 0.94) !important;
}

body.post-type-archive-thrivex_agent .ac-chip-niche,
body.post-type-archive-thrivex_script .sc-chip-niche,
body.post-type-archive-thrivex_mcp .mc-chip-niche,
body.tax-thrivex_category .tc-price,
body.tax-thrivex_category .filter-chip,
body.post-type-archive-thrivex_script .filter-chip,
body.post-type-archive-thrivex_mcp .filter-chip,
body.post-type-archive-thrivex_agent .filter-chip,
body.tax-thrivex_category .sort-select,
body.post-type-archive-thrivex_script .sort-select,
body.post-type-archive-thrivex_mcp .sort-select,
body.post-type-archive-thrivex_agent .sort-select {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  color: var(--tx-text-soft) !important;
}

body.post-type-archive-thrivex_app .tx-price-chip,
body.post-type-archive-thrivex_app .ec-price-chip {
  background: rgba(30, 203, 225, 0.15) !important;
  border-color: rgba(30, 203, 225, 0.35) !important;
  color: var(--tx-cyan) !important;
  border-radius: 999px !important;
}

body.tax-thrivex_category .filter-chip.active,
body.tax-thrivex_category .filter-chip:hover,
body.post-type-archive-thrivex_script .filter-chip.active,
body.post-type-archive-thrivex_script .filter-chip:hover,
body.post-type-archive-thrivex_mcp .filter-chip.active,
body.post-type-archive-thrivex_mcp .filter-chip:hover,
body.post-type-archive-thrivex_agent .filter-chip.active,
body.post-type-archive-thrivex_agent .filter-chip:hover,
body.tax-thrivex_category .pagination .current,
body.post-type-archive-thrivex_script .pagination .current,
body.post-type-archive-thrivex_mcp .pagination .current,
body.post-type-archive-thrivex_agent .pagination .current {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(225, 52, 30, 0.28) !important;
  color: var(--tx-red) !important;
}

body.post-type-archive-thrivex_app .featured-slot.placeholder,
body.post-type-archive-thrivex_app .tx-pagination .page-numbers,
body.tax-thrivex_category .pagination a,
body.tax-thrivex_category .pagination span,
body.post-type-archive-thrivex_script .pagination .page-numbers,
body.post-type-archive-thrivex_mcp .pagination .page-numbers,
body.post-type-archive-thrivex_agent .pagination .page-numbers,
body.single-thrivex_app .tx-no-reviews,
body.single-thrivex_app .tx-faq-item,
body.single-thrivex_app .tx-feat-item,
body.single-thrivex_app .tx-sim-card {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: var(--tx-text) !important;
}

body.post-type-archive-thrivex_app .cat-bg {
  background:
    radial-gradient(circle at 20% 30%, rgba(225, 52, 30, 0.12), transparent 24%),
    radial-gradient(circle at 80% 20%, rgba(30, 203, 225, 0.1), transparent 26%),
    linear-gradient(180deg, rgba(8, 15, 18, 0.96), rgba(10, 18, 22, 0.94)) !important;
}

body.post-type-archive-thrivex_app .search-wrap input,
body.tax-thrivex_category .search-input-wrap input,
body.post-type-archive-thrivex_script .search-input-wrap input,
body.post-type-archive-thrivex_mcp .search-input-wrap input,
body.post-type-archive-thrivex_agent .search-input-wrap input,
body.single-thrivex_app .tx-panel-content,
body.single-thrivex_app .tx-panel-content p,
body.single-thrivex_app .tx-sidebar-widget p {
  color: rgba(238, 247, 248, 0.94) !important;
}

body.post-type-archive-thrivex_app .search-wrap button,
body.post-type-archive-thrivex_app .ec-btn-view,
body.post-type-archive-thrivex_app .tx-cta-btn,
body.post-type-archive-thrivex_app .btn-claim-sm,
body.tax-thrivex_category .tc-btn,
body.post-type-archive-thrivex_script .sc-btn,
body.post-type-archive-thrivex_script .sc-lock-btn,
body.post-type-archive-thrivex_script .tx-cta-btn,
body.post-type-archive-thrivex_script .txv-gate-btn,
body.post-type-archive-thrivex_mcp .mc-btn,
body.post-type-archive-thrivex_mcp .mc-gate-btn,
body.post-type-archive-thrivex_mcp .tx-cta-btn,
body.post-type-archive-thrivex_agent .ac-btn,
body.post-type-archive-thrivex_agent .ac-gate-btn,
body.post-type-archive-thrivex_agent .tx-cta-btn,
body.single-thrivex_app .tx-btn-visit,
body.single-thrivex_app .tx-cta-btn {
  background: var(--tx-red) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 16px 30px rgba(225, 52, 30, 0.26) !important;
}

body.post-type-archive-thrivex_app .view-all,
body.post-type-archive-thrivex_app .cat-chip-icon,
body.post-type-archive-thrivex_app .ec-choice-badge,
body.tax-thrivex_category .cat-hero-tag,
body.post-type-archive-thrivex_script .vault-hero-tag,
body.post-type-archive-thrivex_mcp .vault-hero-tag,
body.post-type-archive-thrivex_agent .vault-hero-tag {
  color: var(--tx-cyan) !important;
}

body.post-type-archive-thrivex_app .featured-slot:hover,
body.post-type-archive-thrivex_app .tx-tool-card:hover,
body.tax-thrivex_category .tool-card:hover,
body.post-type-archive-thrivex_script .script-card:hover,
body.post-type-archive-thrivex_mcp .mcp-card:hover,
body.post-type-archive-thrivex_agent .agent-card:hover,
body.single-thrivex_app .tx-panel:hover,
body.single-thrivex_app .tx-sidebar-widget:hover {
  background: var(--tx-panel) !important;
  border-color: var(--tx-border-strong) !important;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.24), 0 12px 40px rgba(225, 52, 30, 0.3), 0 0 40px rgba(30, 203, 225, 0.4) !important;
}

/* ── Helper: Responsive Button Row ───────────────────────────── */
.btn-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  align-items: center;
}

@media (max-width: 480px) {
  .btn-row {
    flex-direction: column;
    width: 100%;
  }
  .btn-row .btn,
  .btn-row button,
  .btn-row a {
    width: 100%;
    text-align: center;
  }
  .chip-group, .sc-chips, .ac-chips {
    gap: 8px !important;
  }
  .chip, .sc-chip, .ac-chip, .txsp-type-chip {
    padding: 4px 10px !important;
    font-size: 0.75rem !important;
  }
}

@media (max-width: 768px) {
  .agents-grid,
  .tools-grid,
  .scripts-grid,
  .mcp-grid,
  .txsp-grid,
  .txmcp-grid,
  .txag-grid {
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important;
  }
}

/* ── Category Marquee Strip ─────────────────────────────────── */
.cat-bg{background:#0b1820;border-bottom:1px solid rgba(30,203,225,.15);}
/* padding on the wrap gives breathing room so the outer glow is never clipped */
.cat-marquee-wrap{overflow:hidden;width:100%;padding:6px 0;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 6%,#000 94%,transparent 100%);}
.cat-marquee-track{display:flex;gap:12px;width:max-content;padding:4px 8px;animation:thrivex-marquee 48s linear infinite;}
.cat-marquee-wrap:hover .cat-marquee-track{animation-play-state:paused;}
@keyframes thrivex-marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.cat-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:rgba(255,255,255,.07);border-radius:40px;border:1px solid rgba(30,203,225,.2);white-space:nowrap;font-weight:700;font-size:.9rem;color:#c5dde0;font-family:'Inter',sans-serif;text-decoration:none;flex-shrink:0;transition:background .2s,box-shadow .2s,border-color .2s,color .2s;position:relative;z-index:1;}
/* cat-chip::after must be z-index 0 (not -1) so it renders above the chip background but below text */
.cat-chip::after{z-index:0 !important;}
.cat-chip:hover{background:rgba(30,203,225,.12);border-color:rgba(30,203,225,.45);color:#1ecbe1;text-decoration:none;z-index:10;}
.cat-chip.active{background:rgba(30,203,225,.14);border-color:rgba(30,203,225,.5);color:#1ecbe1;}
/* keep text/icon above the spinning border */
.cat-chip-icon,.cat-chip>*{position:relative;z-index:2;}
.cat-chip-icon{font-size:1.05rem;line-height:1;}
@media(max-width:768px){.cat-marquee-track{gap:8px;padding:4px 6px;}.cat-chip{padding:7px 14px;font-size:.8rem;}}

/* ── RESPONSIVE: Shared component rules (archive + taxonomy templates) ──────── */
@media(max-width:900px){
  .tx-main-content{margin-left:0!important;}
  .section{padding:32px 16px;}
  .sec-head h2{font-size:1.5rem;}
  /* Featured row */
  .featured-row{gap:10px;}
  .featured-slot{min-width:140px;padding:12px 14px;}
  .featured-slot.placeholder{min-width:120px;}
  /* Scarcity bar */
  .scarcity-bar-wrap{flex-direction:column;align-items:flex-start;gap:8px;background:transparent!important;border:none!important;box-shadow:none!important;border-radius:0!important;}
  .scarcity-track{width:100%;}
  /* Editor's Choice */
  .ec-card{flex-direction:column;padding:20px 16px;gap:16px;}
  .ec-logo{width:64px;height:64px;}
  .ec-actions{min-width:unset;width:100%;}
  /* Tool grid */
  .tx-tools-grid{grid-template-columns:1fr;}
  /* CTA strip */
  .tx-cta-strip{flex-direction:column;text-align:center;}
}
/* ── Disable spinning conic border on touch/mobile (no hover state, perf) ── */
@media (max-width: 900px) {
  /* Default: hide interactive glows to prevent sticky hover/flicker */
  .panel::after,
  .glass-card::after,
  .tx-panel::after,
  .tx-sidebar-widget::after,
  .tool-card::after,
  .tx-tool-card::after,
  .script-card::after,
  .mcp-card::after,
  .agent-card::after,
  .txsp-card::after,
  .txmcp-card::after,
  .txag-card::after,
  .ec-card::after,
  .featured-slot::after,
  .search-wrap::after,
  .btn::after,
  .btn-primary::after,
  .btn-secondary::after,
  .btn-cyan::after,
  .search-wrap button::after,
  .chip::after,
  .tx-chip::after,
  .sc-chip::after,
  .mc-chip::after,
  .ac-chip::after,
  .txsp-type-chip::after,
  .txs-tool-chip::after,
  .filter-chip::after,
  .hero::after,
  .vault-hero::after,
  .cat-hero::after,
  .tx-app-header::after,
  .tx-cta-strip::after,
  .thrivex-hub-hero::after,
  .tc-badge::after,
  .ec-choice-badge::after,
  .fs-badge::after,
  .ec-price-chip::after,
  .tx-price-chip::after {
    opacity: 0 !important;
    transition: opacity 0.6s ease;
  }

  /* Reveal glow when card is in the visible viewport (via IntersectionObserver) */
  .panel.tx-in-view::after,
  .glass-card.tx-in-view::after,
  .tx-panel.tx-in-view::after,
  .tx-sidebar-widget.tx-in-view::after,
  .tool-card.tx-in-view::after,
  .tx-tool-card.tx-in-view::after,
  .script-card.tx-in-view::after,
  .mcp-card.tx-in-view::after,
  .agent-card.tx-in-view::after,
  .txsp-card.tx-in-view::after,
  .txmcp-card.tx-in-view::after,
  .txag-card.tx-in-view::after,
  .ec-card.tx-in-view::after,
  .featured-slot.tx-in-view::after,
  .thrivex-featured-card.tx-in-view::after,
  .thrivex-recent-card.tx-in-view::after,
  .thrivex-trending-card.tx-in-view::after,
  .thrivex-hub-cpt-card.tx-in-view::after,
  .thrivex-hub-hero.tx-in-view::after,
  .btn.tx-in-view::after,
  .btn-primary.tx-in-view::after,
  .btn-secondary.tx-in-view::after,
  .btn-cyan.tx-in-view::after,
  .chip.tx-in-view::after,
  .tx-chip.tx-in-view::after,
  .sc-chip.tx-in-view::after,
  .ac-chip.tx-in-view::after,
  .txsp-type-chip.tx-in-view::after,
  .filter-chip.tx-in-view::after,
  .hero.tx-in-view::after,
  .vault-hero.tx-in-view::after,
  .cat-hero.tx-in-view::after,
  .tx-app-header.tx-in-view::after,
  .tx-cta-strip.tx-in-view::after,
  .thrivex-hub-hero.tx-in-view::after,
  .tc-badge.tx-in-view::after,
  .ec-choice-badge.tx-in-view::after,
  .fs-badge.tx-in-view::after,
  .ec-price-chip.tx-in-view::after,
  .tx-price-chip.tx-in-view::after {
    opacity: 1 !important;
    display: block !important;
  }

  /* Marquee chips glow when JS assigns .cat-chip--glow (2 of 12, random rotation) */
  .cat-chip.cat-chip--glow::after {
    opacity: 1 !important;
    display: block !important;
  }
}

@media(max-width:480px){
  .sec-head{flex-direction:column;align-items:flex-start;gap:8px;}
}

/* ── Featured slot placeholder: keep invisible on hover, real slots get the standard glow ── */
.featured-slot.placeholder:hover { background: transparent !important; }
