/*
 * Cyentrix — Tactical theme overlay
 * Dark navy SOC aesthetic from mocks/mock-2-tactical.html.
 * Loaded AFTER cyentrix.css so it wins the cascade.
 *
 * Strategy: re-point existing --cx-* and --mca-* tokens to dark values,
 * then apply targeted surface treatments (grid backdrop, mono accents,
 * KPI-style cards, status pill).
 */

/* ────── Tokens (dark) ───────────────────────────────────────── */
body.cx-site {
	/* Cyentrix palette tokens */
	--cx-bg:        #0a1018;
	--cx-bg-alt:    #0f1722;
	--cx-bg-card:   rgba(255,255,255,0.025);
	--cx-text:      #e2e8f0;
	--cx-text-soft: #94a3b8;
	--cx-text-mute: #64748b;
	--cx-line:      rgba(255,255,255,0.06);
	--cx-line-strong: rgba(255,255,255,0.12);
	--cx-accent:        #06B6D4;
	--cx-accent-hover:  #0891b2;
	--cx-accent-ink:    #0a1018;     /* text colour on accent buttons */
	--cx-gold:          #fbbf24;
	--cx-gold-hover:    #f59e0b;
	--cx-crit:          #ef4444;
	--cx-high:          #f97316;
	--cx-med:           #f59e0b;
	--cx-ok:            #10b981;

	--cx-shadow-sm: 0 1px 2px rgba(0,0,0,.4);
	--cx-shadow:    0 6px 24px rgba(0,0,0,.4);
	--cx-shadow-lg: 0 24px 64px -12px rgba(0,0,0,.6);
	--cx-font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

	/* Re-point legacy MCA tokens so unmigrated pages also flip */
	--mca-bg-primary:    #0a1018;
	--mca-bg-secondary:  #0f1722;
	--mca-bg-panel:      rgba(255,255,255,0.025);
	--mca-bg-panel-alt:  rgba(255,255,255,0.04);
	--mca-bg-glass:      rgba(10,16,24,0.85);
	--mca-bg-glass-lite: rgba(15,23,34,0.7);
	--mca-border:        rgba(255,255,255,0.06);
	--mca-border-mid:    rgba(255,255,255,0.12);
	--mca-border-hover:  #06B6D4;
	--mca-cyan:          #06B6D4;
	--mca-cyan-dim:      rgba(6,182,212,0.15);
	--mca-cyan-glow:     0 0 24px rgba(6,182,212,0.25);
	--mca-indigo:        #0891b2;
	--mca-indigo-dim:    rgba(8,145,178,0.15);
	--mca-indigo-glow:   none;
	--mca-purple:        #06B6D4;
	--mca-purple-dim:    rgba(6,182,212,0.15);
	--mca-purple-glow:   none;
	--mca-text-primary:  #e2e8f0;
	--mca-text-secondary:#94a3b8;
	--mca-text-muted:    #64748b;
	--mca-shadow-sm:     0 1px 2px rgba(0,0,0,.4);
	--mca-shadow:        0 6px 24px rgba(0,0,0,.4);
	--mca-shadow-lg:     0 24px 64px -12px rgba(0,0,0,.6);

	background: var(--cx-bg) !important;
	background-image:
		linear-gradient(rgba(6,182,212,0.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(6,182,212,0.04) 1px, transparent 1px) !important;
	background-size: 28px 28px !important;
	background-attachment: fixed !important;
	color: var(--cx-text);
	-webkit-font-smoothing: antialiased;
}

/* Strip the old light gradients out of every page-hero variant */
body.cx-site .cx-page-hero,
body.cx-site .cx-page-hero[data-tone],
body.cx-site .hero-design-c,
body.cx-site .cx-front-hero,
body.cx-site .cx-section,
body.cx-site .cx-section-alt,
body.cx-site .cx-academy-hero,
body.cx-site .cx-blog-strip,
body.cx-site .cx-signup-pitch {
	background: transparent !important;
	color: var(--cx-text);
	border-color: var(--cx-line);
}

body.cx-site .cx-page-hero h1,
body.cx-site .cx-page-hero h2,
body.cx-site .cx-page-hero .cx-page-hero__eyebrow {
	color: var(--cx-text) !important;
}
body.cx-site .cx-page-hero__eyebrow,
body.cx-site .cx-section__eyebrow {
	font-family: var(--cx-font-mono);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-size: 11px;
	color: var(--cx-accent) !important;
}
body.cx-site .cx-page-hero p,
body.cx-site .cx-page-hero__lede,
body.cx-site .cx-section p,
body.cx-site .cx-front-hero p {
	color: var(--cx-text-soft) !important;
}

/* ────── Header (cx-header) ─────────────────────────────────── */
body.cx-site .cx-header {
	background: rgba(10,16,24,0.85) !important;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border-bottom: 1px solid var(--cx-line) !important;
	box-shadow: none !important;
}
body.cx-site .cx-header__inner {
	display: flex;
	align-items: center;
	gap: 24px;
}
body.cx-site .cx-header__logo {
	filter: brightness(0) invert(1);
	opacity: 0.95;
}
body.cx-site .cx-nav a {
	color: var(--cx-text-soft) !important;
	font-size: 13px;
	font-weight: 500;
	padding: 6px 12px;
	border-radius: 6px;
	transition: background .15s, color .15s;
}
body.cx-site .cx-nav a:hover,
body.cx-site .cx-nav a.is-active,
body.cx-site .cx-nav a[aria-current="page"] {
	color: #fff !important;
	background: rgba(255,255,255,0.06) !important;
}

/* Preserve gold Pro pill on hover — the generic .cx-nav a:hover above
 * would otherwise wipe the gradient. Specificity matches the original. */
body.cx-site .cx-nav a[href$="/pro/"],
body.cx-site .cx-nav a[href$="/pro/"]:hover {
	background: linear-gradient(120deg, #fbbf24 0%, #f59e0b 60%, #d97706 100%) !important;
	color: #1a1300 !important;
	box-shadow: 0 4px 12px -4px rgba(251,191,36,0.55) !important;
}
body.cx-site .cx-nav a[href$="/pro/"]:hover {
	box-shadow: 0 8px 18px -6px rgba(251,191,36,0.7) !important;
	filter: brightness(1.05);
}
body.cx-site .cx-nav__signin {
	border: 1px solid var(--cx-line-strong) !important;
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-nav__signin:hover {
	background: var(--cx-accent) !important;
	color: var(--cx-accent-ink) !important;
	border-color: var(--cx-accent) !important;
}
/* Hamburger bars: white on dark */
body.cx-site .cx-nav-toggle__bar {
	background: #e2e8f0 !important;
}

/* User menu */
body.cx-site .cx-nav__user-btn {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line) !important;
}
body.cx-site .cx-nav__user-btn:hover { background: rgba(255,255,255,0.08) !important; }
body.cx-site .cx-nav__user-avatar {
	background: var(--cx-accent) !important;
	color: var(--cx-accent-ink) !important;
}
body.cx-site .cx-nav__user-menu,
body.cx-site .cx-nav__user.is-open .cx-nav__user-menu {
	background: #0f1722 !important;
	background-color: #0f1722 !important;
	border: 1px solid var(--cx-line-strong) !important;
	box-shadow: var(--cx-shadow-lg) !important;
	color: var(--cx-text) !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	z-index: 1000;
}
body.cx-site .cx-nav__user-menu a,
body.cx-site .cx-nav__user-menu [role="menuitem"] {
	color: var(--cx-text) !important;
	background: transparent !important;
	border-radius: 6px;
}
body.cx-site .cx-nav__user-menu a:hover {
	background: rgba(255,255,255,0.06) !important;
	color: #fff !important;
}
body.cx-site .cx-nav__user-item-title { color: var(--cx-text) !important; }
body.cx-site .cx-nav__user-item-sub   { color: var(--cx-text-mute) !important; }
body.cx-site .cx-nav__user-name-full  { color: #fff !important; }
body.cx-site .cx-nav__user-email      { color: var(--cx-text-soft) !important; }
body.cx-site .cx-nav__user-head {
	border-bottom: 1px solid var(--cx-line) !important;
	background: transparent !important;
}
body.cx-site .cx-nav__user-divider {
	background: var(--cx-line) !important;
}

/* ────── Cards / panels / generic surfaces ──────────────────── */
body.cx-site .cx-card,
body.cx-site .mca-card,
body.cx-site .cx-panel,
body.cx-site .cx-stat,
body.cx-site .cx-tile,
body.cx-site .cx-feature,
body.cx-site .cx-list-card,
body.cx-site .cx-assessment-card,
body.cx-site .cx-tool-card,
body.cx-site .cx-program-card,
body.cx-site .cx-control-card,
body.cx-site .cx-blog-card,
body.cx-site article.cx-post-card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text);
	border-radius: 10px !important;
	box-shadow: none !important;
	position: relative;
	overflow: hidden;
}
body.cx-site .cx-card:hover,
body.cx-site .cx-assessment-card:hover,
body.cx-site .cx-tool-card:hover,
body.cx-site .cx-program-card:hover {
	border-color: var(--cx-accent) !important;
	background: rgba(6,182,212,0.04) !important;
}
body.cx-site .cx-card h1,
body.cx-site .cx-card h2,
body.cx-site .cx-card h3,
body.cx-site .cx-card h4 {
	color: #fff;
}
body.cx-site .cx-card p,
body.cx-site .cx-card .cx-card__desc {
	color: var(--cx-text-soft) !important;
}

/* "Card header :: // label" treatment for sections that use cx-section__head */
body.cx-site .cx-section__head h2::before,
body.cx-site .cx-card-head h3::before {
	content: '// ';
	color: var(--cx-accent);
	font-family: var(--cx-font-mono);
	font-weight: 600;
}

/* ────── Buttons ─────────────────────────────────────────────── */
body.cx-site .cx-btn,
body.cx-site .cx-button,
body.cx-site .button,
body.cx-site button.cx-btn-secondary,
body.cx-site .cx-btn--ghost {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
	font-weight: 600;
	border-radius: 8px;
	transition: background .15s, border-color .15s, color .15s;
}
body.cx-site .cx-btn:hover,
body.cx-site .cx-button:hover,
body.cx-site .button:hover {
	background: rgba(255,255,255,0.08) !important;
	color: #fff !important;
	border-color: var(--cx-accent) !important;
}
body.cx-site .cx-btn--primary,
body.cx-site .cx-btn-primary,
body.cx-site .cx-cta,
body.cx-site button.cx-btn--primary,
body.cx-site .wp-block-button__link {
	background: var(--cx-accent) !important;
	color: var(--cx-accent-ink) !important;
	border: 1px solid var(--cx-accent) !important;
	font-weight: 800;
}
body.cx-site .cx-btn--primary:hover,
body.cx-site .cx-btn-primary:hover,
body.cx-site .cx-cta:hover,
body.cx-site .wp-block-button__link:hover {
	background: var(--cx-accent-hover) !important;
	border-color: var(--cx-accent-hover) !important;
	color: #fff !important;
}
/* Gold Pro pill */
body.cx-site .cx-pro-pill,
body.cx-site .cx-badge--pro,
body.cx-site .cx-nav__user-badge {
	background: linear-gradient(120deg, var(--cx-gold), var(--cx-gold-hover)) !important;
	color: #1a1300 !important;
	border: 0 !important;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

/* ────── Typography ─────────────────────────────────────────── */
body.cx-site h1, body.cx-site h2, body.cx-site h3,
body.cx-site h4, body.cx-site h5, body.cx-site h6 {
	color: #fff;
	letter-spacing: -0.01em;
}
body.cx-site .cx-page-hero h1::before,
body.cx-site .cx-front-hero h1::before {
	content: '> ';
	color: var(--cx-accent);
	font-family: var(--cx-font-mono);
	font-weight: 600;
}
body.cx-site .cx-mono,
body.cx-site code,
body.cx-site pre,
body.cx-site .cx-stat-label,
body.cx-site .cx-card__meta {
	font-family: var(--cx-font-mono);
}

/* ────── Footer ──────────────────────────────────────────────── */
body.cx-site .cx-footer,
body.cx-site .mca-footer,
body.cx-site footer.site-footer {
	background: #06090e !important;
	border-top: 1px solid var(--cx-line) !important;
	color: var(--cx-text-soft) !important;
}
body.cx-site .cx-footer a,
body.cx-site .mca-footer a { color: var(--cx-text) !important; }
body.cx-site .cx-footer a:hover { color: var(--cx-accent) !important; }

/* Footer "Contribute" strip */
body.cx-site .cx-footer__contrib {
	border-top: 1px solid var(--cx-line);
	padding: 16px 24px;
	text-align: center;
}
body.cx-site .cx-footer__contrib-link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--cx-text-soft) !important;
	font-size: 13px;
	font-family: var(--cx-font-mono);
	text-decoration: none;
	transition: color .15s;
}
body.cx-site .cx-footer__contrib-link:hover {
	color: var(--cx-accent) !important;
}
body.cx-site .cx-footer__contrib-link svg { stroke: var(--cx-accent); }

/* ────── Inputs / forms ──────────────────────────────────────── */
body.cx-site input[type="text"],
body.cx-site input[type="email"],
body.cx-site input[type="password"],
body.cx-site input[type="search"],
body.cx-site input[type="url"],
body.cx-site input[type="number"],
body.cx-site textarea,
body.cx-site select {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
	border-radius: 6px;
}
body.cx-site input:focus,
body.cx-site textarea:focus,
body.cx-site select:focus {
	outline: none;
	border-color: var(--cx-accent) !important;
	box-shadow: 0 0 0 3px rgba(6,182,212,0.2) !important;
}

/* ────── Links inside body content ───────────────────────────── */
body.cx-site a { color: var(--cx-accent); }
body.cx-site a:hover { color: var(--cx-accent-hover); }
body.cx-site .cx-page-hero a:not(.cx-btn):not(.cx-cta),
body.cx-site .cx-section a:not(.cx-btn):not(.cx-cta) {
	color: var(--cx-accent);
}

/* ────── Tables ──────────────────────────────────────────────── */
body.cx-site table {
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	color: var(--cx-text);
}
body.cx-site table th {
	font-family: var(--cx-font-mono);
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--cx-text-mute);
	background: rgba(255,255,255,0.03);
	border-bottom: 1px solid var(--cx-line-strong);
}
body.cx-site table td {
	border-bottom: 1px dashed var(--cx-line);
}

/* ────── Article body (single posts) ─────────────────────────── */
body.cx-site .cx-article,
body.cx-site .cx-article p,
body.cx-site .cx-article li {
	color: var(--cx-text);
}
body.cx-site .cx-article blockquote {
	background: rgba(6,182,212,0.06);
	border-left: 3px solid var(--cx-accent);
	color: var(--cx-text);
}
body.cx-site .cx-article code {
	background: rgba(255,255,255,0.06);
	color: #f0abfc;
	border: 1px solid var(--cx-line);
	padding: 1px 6px;
	border-radius: 4px;
}

/* ────── Status / live pill (header right side) ──────────────── */
body.cx-site .cx-status-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 12px;
	background: rgba(16,185,129,0.1);
	border: 1px solid rgba(16,185,129,0.2);
	border-radius: 6px;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	color: var(--cx-text-soft);
}
body.cx-site .cx-status-pill::before {
	content: '';
	width: 6px;
	height: 6px;
	background: var(--cx-ok);
	border-radius: 50%;
	animation: cxPulse 1.6s ease-in-out infinite;
}
@keyframes cxPulse {
	0%,100% { box-shadow: 0 0 0 0 rgba(16,185,129,.5); }
	50%     { box-shadow: 0 0 0 5px rgba(16,185,129,0); }
}

/* ────── Page-hero eyebrow pill + bullets ────────────────────── */
body.cx-site .cx-page-hero__eyebrow {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	padding: 6px 14px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
body.cx-site .cx-page-hero__eyebrow svg { stroke: var(--cx-accent); }

body.cx-site .cx-page-hero__bullets,
body.cx-site .cx-page-hero__bullets li {
	color: var(--cx-text) !important;
}
body.cx-site .cx-page-hero__bullets li {
	color: var(--cx-text-soft) !important;
}
body.cx-site .cx-page-hero__bullets strong,
body.cx-site .cx-page-hero__bullets b,
body.cx-site .cx-page-hero__bullet-label {
	color: var(--cx-text) !important;
}
body.cx-site .cx-page-hero__bullet-icon {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
}
body.cx-site .cx-page-hero__bullet-icon svg { stroke: var(--cx-accent); }
body.cx-site .cx-page-hero__bullet-detail { color: var(--cx-text-mute) !important; }

/* ────── Programs library filters bar ─────────────────────────── */
body.cx-site .cx-programs-filters {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	border-radius: 10px;
}
body.cx-site .cx-programs-filters__search,
body.cx-site .cx-programs-filters__select {
	background: transparent !important;
	color: var(--cx-text) !important;
	border: 0 !important;
	border-right: 1px solid var(--cx-line) !important;
}
body.cx-site .cx-programs-filters__search::placeholder {
	color: var(--cx-text-mute);
}
body.cx-site .cx-programs-filters__select option {
	background: #0f1722;
	color: var(--cx-text);
}

/* ────── Programs section header + count chip ─────────────────── */
body.cx-site .cx-programs-section__title,
body.cx-site .cx-programs-section h2,
body.cx-site .cx-programs-section h3 {
	color: #fff !important;
}
body.cx-site .cx-programs-section__tagline {
	color: var(--cx-text-mute) !important;
}
body.cx-site .cx-programs-section__icon {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	border-radius: 8px;
}
body.cx-site .cx-programs-section__icon svg { stroke: var(--cx-accent); }
body.cx-site .cx-programs-section__count {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text-soft) !important;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	border-radius: 999px;
	padding: 4px 12px;
}

/* ────── Program cards ────────────────────────────────────────── */
body.cx-site .cx-program-card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-program-card:hover {
	border-color: var(--cx-accent) !important;
	background: rgba(6,182,212,0.04) !important;
	transform: none !important;
}
body.cx-site .cx-program-card__title { color: #fff !important; }
body.cx-site .cx-program-card__sum   { color: var(--cx-text-soft) !important; }
body.cx-site .cx-program-card__foot,
body.cx-site .cx-program-card__fw {
	color: var(--cx-text-mute) !important;
	font-family: var(--cx-font-mono);
}
body.cx-site .cx-program-card__tag--free {
	background: rgba(16,185,129,0.15) !important;
	color: #6ee7b7 !important;
	border: 1px solid rgba(16,185,129,0.3) !important;
}
body.cx-site .cx-program-card__tag--pro {
	background: linear-gradient(120deg, var(--cx-gold), var(--cx-gold-hover)) !important;
	color: #1a1300 !important;
	border: 0 !important;
}

/* ────── Front-page hero (hero-design-c) ──────────────────────── */
body.cx-site .cx-hero-c {
	background: transparent !important;
	border-top: 0 !important;
	border-bottom: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-hero-c__title { color: #fff !important; }
body.cx-site .cx-hero-c__sub   { color: var(--cx-text-soft) !important; }
body.cx-site .cx-hero-c__note  { color: var(--cx-text-mute) !important; }
body.cx-site .cx-hero-c__badge {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	font-family: var(--cx-font-mono);
}
body.cx-site .cx-hero-c__badge svg { color: var(--cx-accent) !important; }
body.cx-site .cx-hero-c__accent {
	background: linear-gradient(120deg, #06B6D4 0%, #67e8f9 100%) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
}
/* Primary CTA */
body.cx-site .cx-hero-c__btn {
	background: var(--cx-accent) !important;
	color: var(--cx-accent-ink) !important;
	border: 1px solid var(--cx-accent) !important;
	box-shadow: 0 8px 20px -8px rgba(6,182,212,0.6) !important;
	font-weight: 800;
}
body.cx-site .cx-hero-c__btn:hover {
	background: var(--cx-accent-hover) !important;
	color: #fff !important;
}
body.cx-site .cx-hero-c__btn span,
body.cx-site .cx-hero-c__btn svg { color: inherit !important; stroke: currentColor; }
/* Ghost CTA */
body.cx-site .cx-hero-c__btn--ghost {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-hero-c__btn--ghost:hover {
	border-color: var(--cx-accent) !important;
	color: #fff !important;
	background: rgba(255,255,255,0.08) !important;
}
/* Sample score card on the right */
body.cx-site .cx-hero-c__card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line-strong) !important;
	box-shadow: var(--cx-shadow-lg) !important;
	backdrop-filter: blur(8px);
}
body.cx-site .cx-hero-c__card-tag {
	background: rgba(6,182,212,0.1) !important;
	color: var(--cx-accent) !important;
}
body.cx-site .cx-hero-c__num-big {
	background: linear-gradient(120deg, #06B6D4, #67e8f9) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
}
body.cx-site .cx-hero-c__num-tail { color: var(--cx-text-mute) !important; }
body.cx-site .cx-hero-c__pill {
	background: rgba(16,185,129,0.15) !important;
	color: #6ee7b7 !important;
}
body.cx-site .cx-hero-c__bar { color: var(--cx-text-soft) !important; }
body.cx-site .cx-hero-c__bar b { background: rgba(255,255,255,0.06) !important; }
body.cx-site .cx-hero-c__foot {
	color: var(--cx-text-mute) !important;
	border-top-color: var(--cx-line) !important;
}

/* ────── Article sidebar widgets ──────────────────────────────── */
body.cx-site .cx-side-card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
	box-shadow: none !important;
	border-radius: 10px;
}
body.cx-site .cx-side-card h3 { color: #fff !important; }
body.cx-site .cx-side-card p  { color: var(--cx-text-soft) !important; }
body.cx-site .cx-side-card__eyebrow {
	color: var(--cx-accent) !important;
	font-family: var(--cx-font-mono);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 700;
}
body.cx-site .cx-side-list a {
	color: var(--cx-text) !important;
	border-bottom: 1px solid var(--cx-line);
}
body.cx-site .cx-side-list a:hover { color: var(--cx-accent) !important; }
body.cx-site .cx-side-list__title { color: var(--cx-text) !important; }
body.cx-site .cx-side-list__meta {
	color: var(--cx-text-mute) !important;
	font-family: var(--cx-font-mono);
	font-size: 11px;
}
body.cx-site .cx-side-card__more {
	color: var(--cx-accent) !important;
	font-weight: 700;
}

/* ────── Threat Intel — filter card + KPIs ───────────────────── */
body.cx-site .cx-tintel-filter {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
	box-shadow: none !important;
}
body.cx-site .cx-tintel-filter__head,
body.cx-site .cx-tintel-filter p,
body.cx-site .cx-tintel-filter__lbl {
	color: var(--cx-text-soft) !important;
}
body.cx-site .cx-tintel-filter__lbl {
	color: var(--cx-text-mute) !important;
	font-family: var(--cx-font-mono);
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-size: 11px;
}
body.cx-site .cx-tintel-filter__chip {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid var(--cx-line-strong) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-tintel-filter__chip:hover {
	border-color: var(--cx-accent) !important;
}
body.cx-site .cx-tintel-filter__chip.is-on,
body.cx-site .cx-tintel-filter__chip input:checked + * {
	background: rgba(6,182,212,0.15) !important;
	border-color: var(--cx-accent) !important;
	color: #fff !important;
}
body.cx-site .cx-tintel-filter__select {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-tintel-filter__select option { background: #0f1722; color: var(--cx-text); }
body.cx-site .cx-tintel-filter__reset { color: var(--cx-accent) !important; }
body.cx-site .cx-tintel-filter__more summary { color: var(--cx-accent) !important; cursor: pointer; }

/* KPIs — make numbers high-contrast and add top-bar tone accents */
body.cx-site .cx-tistat,
body.cx-site .cx-tistats > div {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
	box-shadow: none !important;
	position: relative;
	overflow: hidden;
}
body.cx-site .cx-tistat::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 2px;
	background: var(--cx-accent);
}
body.cx-site .cx-tistat--cyan::before    { background: var(--cx-accent); }
body.cx-site .cx-tistat--teal::before    { background: #14b8a6; }
body.cx-site .cx-tistat--neutral::before { background: #94a3b8; }
body.cx-site .cx-tistat--critical::before, body.cx-site .cx-tistat[data-tone="critical"]::before { background: var(--cx-crit); }
body.cx-site .cx-tistat--high::before,     body.cx-site .cx-tistat[data-tone="high"]::before     { background: var(--cx-high); }
body.cx-site .cx-tistat--med::before,      body.cx-site .cx-tistat[data-tone="med"]::before      { background: var(--cx-med); }

body.cx-site .cx-tistat__label {
	color: var(--cx-text-mute) !important;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
body.cx-site .cx-tistat__num {
	color: #fff !important;
	font-family: var(--cx-font-mono);
	font-weight: 700;
	-webkit-text-fill-color: #fff;
}
body.cx-site .cx-tistat--critical .cx-tistat__num,
body.cx-site .cx-tistat[data-tone="critical"] .cx-tistat__num { color: #fca5a5 !important; -webkit-text-fill-color: #fca5a5; }
body.cx-site .cx-tistat--high .cx-tistat__num,
body.cx-site .cx-tistat[data-tone="high"] .cx-tistat__num     { color: #fdba74 !important; -webkit-text-fill-color: #fdba74; }
body.cx-site .cx-tistat--med .cx-tistat__num,
body.cx-site .cx-tistat[data-tone="med"] .cx-tistat__num      { color: #fcd34d !important; -webkit-text-fill-color: #fcd34d; }

/* ────── Front-page programs feature section ─────────────────── */
body.cx-site .cx-home-programs,
body.cx-site .cx-section.cx-home-programs {
	background: transparent !important;
}
body.cx-site .cx-home-programs__eyebrow {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	font-family: var(--cx-font-mono);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 700;
	padding: 6px 14px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
body.cx-site .cx-home-programs__eyebrow svg { stroke: var(--cx-accent) !important; }
body.cx-site .cx-home-programs__title { color: #fff !important; }
body.cx-site .cx-home-programs__lede  { color: var(--cx-text-soft) !important; }
body.cx-site .cx-home-programs__card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
	box-shadow: none !important;
}
body.cx-site .cx-home-programs__card:hover {
	border-color: var(--cx-accent) !important;
	background: rgba(6,182,212,0.04) !important;
	transform: none !important;
}
body.cx-site .cx-home-programs__icon {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	border-radius: 8px;
}
body.cx-site .cx-home-programs__icon svg { stroke: var(--cx-accent) !important; }
body.cx-site .cx-home-programs__name  { color: #fff !important; }
body.cx-site .cx-home-programs__tag   { color: var(--cx-text-mute) !important; font-family: var(--cx-font-mono); font-size: 11px; }
body.cx-site .cx-home-programs__count {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid var(--cx-line-strong) !important;
	color: var(--cx-text) !important;
	font-family: var(--cx-font-mono);
	font-weight: 700;
}

/* ────── User menu pill (header right) — beat the legacy white-fill ────── */
/* Specificity must match `body.cx-site .cx-nav .cx-nav__user-btn` from cyentrix.css line 4504. */
body.cx-site .cx-nav .cx-nav__user-btn,
body.cx-site button.cx-nav__user-btn,
body.cx-site .cx-nav .cx-nav__user-btn.is-pro,
body.cx-site button.cx-nav__user-btn.is-pro {
	background: rgba(255,255,255,0.04) !important;
	background-image: none !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-nav .cx-nav__user-btn:hover,
body.cx-site button.cx-nav__user-btn:hover {
	background: rgba(255,255,255,0.08) !important;
	border-color: var(--cx-accent) !important;
}
body.cx-site .cx-nav .cx-nav__user-btn.is-pro {
	border-color: var(--cx-gold) !important;
	box-shadow: 0 0 0 1px rgba(251,191,36,0.25) !important;
}
body.cx-site .cx-nav__user-name,
body.cx-site .cx-nav__user-chev {
	color: var(--cx-text) !important;
}

/* ────── Generic .cx-section / homepage sections background ─── */
body.cx-site .cx-section,
body.cx-site section[class*="cx-section"],
body.cx-site .cx-front,
body.cx-site .cx-academy-cta,
body.cx-site .cx-assessments-feature,
body.cx-site .cx-latest-articles,
body.cx-site .cx-categories-strip {
	background: transparent !important;
	color: var(--cx-text);
}
body.cx-site .cx-section h2,
body.cx-site .cx-section h3 { color: #fff !important; }
body.cx-site .cx-section p   { color: var(--cx-text-soft) !important; }

/* Any leftover white blocks inside sections */
body.cx-site .cx-section [class*="__card"],
body.cx-site .cx-section [class*="__tile"],
body.cx-site .cx-section [class*="__item"] {
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	color: var(--cx-text);
}

/* ═══════════════════════════════════════════════════════════════
 * COMPREHENSIVE SWEEP — every remaining light-bg class from the audit.
 * Source: full grep of cyentrix.css + template-parts inline styles.
 * ═══════════════════════════════════════════════════════════════ */

/* ── Cards / surfaces / pills — generic catch-all ──────────────── */
body.cx-site .cx-mock__opt--selected .cx-mock__radio,
body.cx-site .cx-asm-rec,
body.cx-site .cx-asm-recs-empty,
body.cx-site .cx-tool-card,
body.cx-site .cx-asm-tool,
body.cx-site .cx-curator-cats a,
body.cx-site .cx-page-hero__card,
body.cx-site .cx-academy-hero__card,
body.cx-site .cx-academy-preview,
body.cx-site .cx-academy-how__step,
body.cx-site .mca-module-card,
body.cx-site .maca-lesson-row,
body.cx-site .cx-mod__tbl,
body.cx-site .cx-leaderboard__list li,
body.cx-site .cx-badge,
body.cx-site .cx-pro__card,
body.cx-site .cx-pro__faq details,
body.cx-site .cx-my-scores__empty,
body.cx-site .cx-side-card--welcome,
body.cx-site .cx-signup-pitch__card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
	box-shadow: none !important;
}

body.cx-site .cx-asm-rec h1, body.cx-site .cx-asm-rec h2, body.cx-site .cx-asm-rec h3, body.cx-site .cx-asm-rec h4,
body.cx-site .cx-tool-card h1, body.cx-site .cx-tool-card h2, body.cx-site .cx-tool-card h3, body.cx-site .cx-tool-card h4,
body.cx-site .cx-asm-tool h1, body.cx-site .cx-asm-tool h2, body.cx-site .cx-asm-tool h3, body.cx-site .cx-asm-tool h4,
body.cx-site .mca-module-card h1, body.cx-site .mca-module-card h2, body.cx-site .mca-module-card h3, body.cx-site .mca-module-card h4,
body.cx-site .maca-lesson-row h1, body.cx-site .maca-lesson-row h2, body.cx-site .maca-lesson-row h3, body.cx-site .maca-lesson-row h4,
body.cx-site .cx-academy-preview h1, body.cx-site .cx-academy-preview h2, body.cx-site .cx-academy-preview h3, body.cx-site .cx-academy-preview h4,
body.cx-site .cx-signup-pitch__card-tier,
body.cx-site .cx-signup-pitch__card--cert .cx-signup-pitch__card-title { color: #fff !important; }

body.cx-site .cx-mod__tbl th {
	background: rgba(255,255,255,0.03) !important;
	color: var(--cx-text-mute) !important;
}

/* Tool / brand logo plates — keep light so coloured logos read */
body.cx-site .cx-tool-card__logo,
body.cx-site .cx-tool-hero__logo,
body.cx-site .cx-card__logo,
body.cx-site .cx-side-list__logo {
	background: #f1f5f9 !important;
	border: 1px solid var(--cx-line) !important;
}

/* ── Assessment answer options (button.cx-asm-option uses !important) ── */
body.cx-site button.cx-asm-option,
body.cx-site .cx-asm-option {
	background: var(--cx-bg-card) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line) !important;
}
body.cx-site button.cx-asm-option:hover,
body.cx-site .cx-asm-option:hover {
	background: rgba(6,182,212,0.06) !important;
	border-color: var(--cx-accent) !important;
	color: #fff !important;
}
body.cx-site button.cx-asm-option.is-selected,
body.cx-site .cx-asm-option.is-selected {
	background: rgba(6,182,212,0.1) !important;
	border-color: var(--cx-accent) !important;
	color: #fff !important;
}
body.cx-site button.cx-asm-option.is-selected .cx-asm-option__radio {
	background: var(--cx-accent) !important;
	border-color: var(--cx-accent) !important;
}
body.cx-site .cx-asm-recs__eyebrow,
body.cx-site .cx-asm-recs__sub { color: var(--cx-text-soft) !important; }

/* ── Academy hero / module / lesson ────────────────────────────── */
body.cx-site .cx-academy-hero {
	background: transparent !important;
}
body.cx-site .cx-academy-hero__eyebrow {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
}
body.cx-site .mca-module-card__lock-overlay {
	background: rgba(10,16,24,0.85) !important;
	color: var(--cx-text-soft) !important;
}
body.cx-site .mca-btn--ghost,
body.cx-site .mca-btn--ghost:visited {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .mca-btn--ghost:hover {
	background: rgba(255,255,255,0.08) !important;
	border-color: var(--cx-accent) !important;
	color: #fff !important;
}

/* ── Programs library — page wrapper, count chip ─────────────── */
body.cx-site .cx-programs-page,
body.cx-site .cx-programs-empty {
	background: transparent !important;
	color: var(--cx-text);
}
body.cx-site .cx-programs-empty {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
}

/* ── Single program — control cards + severity pills ─────────── */
body.cx-site .cx-program-control,
body.cx-site .cx-control-card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-program-sev--high {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3) !important;
}
body.cx-site .cx-program-sev--medium {
	background: rgba(245,158,11,0.15) !important;
	color: #fcd34d !important;
	border: 1px solid rgba(245,158,11,0.3) !important;
}

/* ── Builder (7-step wizard) ──────────────────────────────────── */
body.cx-site .cx-program-create__form,
body.cx-site .cx-program-create__note,
body.cx-site .cx-builder__step,
body.cx-site .cx-builder__section,
body.cx-site .cx-builder__chip,
body.cx-site .cx-builder__ctrl,
body.cx-site .cx-builder__test,
body.cx-site .cx-builder__preview,
body.cx-site .cx-builder__scoring label {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-program-create__field textarea,
body.cx-site .cx-builder__test textarea,
body.cx-site .cx-builder__risk select {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-builder__step { color: var(--cx-text-soft) !important; }
body.cx-site .cx-builder__step.is-active {
	background: rgba(6,182,212,0.1) !important;
	border-color: var(--cx-accent) !important;
	color: #fff !important;
}
body.cx-site .cx-builder__ctrl:has(input:checked),
body.cx-site .cx-builder__scoring label:has(input:checked) {
	background: rgba(6,182,212,0.08) !important;
	border-color: var(--cx-accent) !important;
}
body.cx-site .cx-builder__warn {
	background: rgba(245,158,11,0.12) !important;
	color: #fcd34d !important;
	border: 1px solid rgba(245,158,11,0.3) !important;
}
body.cx-site .cx-builder__risk-del {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text-soft) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-builder__ctrl-cat,
body.cx-site .cx-builder__ctrl-fw--community {
	background: rgba(255,255,255,0.06) !important;
	color: var(--cx-text-soft) !important;
}

/* ── Runs ─────────────────────────────────────────────────────── */
body.cx-site .cx-run__ctrl,
body.cx-site .cx-run__opt,
body.cx-site .cx-runs-section,
body.cx-site .cx-runs-row,
body.cx-site .cx-runs-section--legacy {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-run__form input,
body.cx-site .cx-run__add-row input[type="text"],
body.cx-site .cx-run__add-row select {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-run__chip--open,
body.cx-site .cx-run__chip--na {
	background: rgba(148,163,184,0.15) !important;
	color: #cbd5e1 !important;
	border: 1px solid rgba(148,163,184,0.3) !important;
}
body.cx-site .cx-run__chip--partial {
	background: rgba(245,158,11,0.15) !important;
	color: #fcd34d !important;
	border: 1px solid rgba(245,158,11,0.3) !important;
}
body.cx-site .cx-run__chip--fail {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3) !important;
}
body.cx-site .cx-runs-row__tier--reactive {
	background: rgba(245,158,11,0.15) !important;
	color: #fcd34d !important;
}
body.cx-site .cx-runs-row__tier--initial {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
}
body.cx-site .cx-runs-row--open {
	background: rgba(250,204,21,0.05) !important;
	border-color: rgba(250,204,21,0.3) !important;
}
body.cx-site .cx-runs-row--open > .cx-runs-row__del {
	background: rgba(255,255,255,0.02) !important;
}
body.cx-site .cx-runs-row__del button,
body.cx-site .cx-run__remove {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text-soft) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-runs-row__del button:hover,
body.cx-site .cx-run__remove:hover {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
	border-color: rgba(239,68,68,0.4) !important;
}
body.cx-site .cx-confirm {
	background: rgba(245,158,11,0.12) !important;
	color: #fcd34d !important;
	border: 1px solid rgba(245,158,11,0.3) !important;
}
body.cx-site .cx-confirm__no {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text-soft) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-confirm__no:hover {
	background: rgba(255,255,255,0.08) !important;
	color: #fff !important;
	border-color: var(--cx-accent) !important;
}

/* ── Report sections (non-print) ──────────────────────────────── */
body.cx-site .cx-report-section,
body.cx-site .cx-report-section--muted,
body.cx-site .cx-report-gap,
body.cx-site .cx-report-gap__block,
body.cx-site .cx-report-risks li {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}

/* ── About page ───────────────────────────────────────────────── */
body.cx-site .cx-about-pillar,
body.cx-site .cx-about-fp__card,
body.cx-site .cx-about-principle,
body.cx-site .cx-about-founder__card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-about-pillar h3,
body.cx-site .cx-about-fp__card h3,
body.cx-site .cx-about-principle h3,
body.cx-site .cx-about-founder__card h3 { color: #fff !important; }
body.cx-site .cx-about-fp__tick--no {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3) !important;
}

/* ── Threat-Intel extras (live page) ──────────────────────────── */
body.cx-site .cx-tintel-empty,
body.cx-site .cx-tintel-country,
body.cx-site .cx-tintel-row,
body.cx-site .cx-tintel-trend__chart,
body.cx-site .cx-tintel-card,
body.cx-site .cx-mini-intel,
body.cx-site .cx-mini-intel__stat,
body.cx-site .cx-mini-intel__row,
body.cx-site .cx-tilist li,
body.cx-site .cx-atp__card,
body.cx-site .cx-ioc {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-tintel-country { border-left: 4px solid #94a3b8 !important; }
body.cx-site .cx-tintel-country__insight {
	background: rgba(255,255,255,0.03) !important;
	color: var(--cx-text-soft) !important;
}
body.cx-site .cx-tintel-row__cc,
body.cx-site .cx-mini-intel__chip {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text-soft) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-mini-intel__title { color: #fff !important; }
body.cx-site .cx-mini-intel__sev {
	background: rgba(245,158,11,0.15) !important;
	color: #fcd34d !important;
	border: 1px solid rgba(245,158,11,0.3) !important;
}
body.cx-site .cx-mini-intel__row--critical .cx-mini-intel__sev {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3) !important;
}
body.cx-site .cx-mini-intel__row--high .cx-mini-intel__sev {
	background: rgba(249,115,22,0.15) !important;
	color: #fdba74 !important;
	border: 1px solid rgba(249,115,22,0.3) !important;
}
body.cx-site .cx-atp__card { border-left: 4px solid var(--cx-accent) !important; }

/* IOC pills */
body.cx-site .cx-ioc__type--ip,
body.cx-site .cx-ioc__type--ipv4,
body.cx-site .cx-ioc__type--ipv6 {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3) !important;
}
body.cx-site .cx-ioc__type--domain {
	background: rgba(245,158,11,0.15) !important;
	color: #fcd34d !important;
	border: 1px solid rgba(245,158,11,0.3) !important;
}
body.cx-site .cx-ioc__type--url {
	background: rgba(249,115,22,0.15) !important;
	color: #fdba74 !important;
	border: 1px solid rgba(249,115,22,0.3) !important;
}
body.cx-site .cx-ioc__value,
body.cx-site .cx-mini-intel__title { color: #fff !important; }

/* IOC modal */
body.cx-site .cx-ioc-modal__panel {
	background: #0f1722 !important;
	border: 1px solid var(--cx-line-strong) !important;
	color: var(--cx-text) !important;
	box-shadow: var(--cx-shadow-lg) !important;
}
body.cx-site .cx-ioc-modal__close:hover {
	background: rgba(255,255,255,0.06) !important;
	color: #fff !important;
}
body.cx-site .cx-ioc-modal__value {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid var(--cx-line) !important;
}
body.cx-site .cx-ioc-modal__value code { color: var(--cx-text) !important; }
body.cx-site .cx-ioc-modal__grid > div { background: rgba(255,255,255,0.03) !important; }
body.cx-site .cx-ioc-modal__grid dd { color: var(--cx-text) !important; }
body.cx-site .cx-ioc-modal__desc p,
body.cx-site .cx-ioc-modal__refs p { color: var(--cx-text-soft) !important; }
body.cx-site .cx-ioc-modal__foot {
	background: rgba(255,255,255,0.03) !important;
	border-top: 1px solid var(--cx-line) !important;
}

/* Kill explicit light modifiers — force dark */
body.cx-site .cx-tintel-hot--light,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__card,
body.cx-site .cx-attack-trend--light,
body.cx-site .cx-attack-trend--light .cx-attack-trend__tooltip {
	background: var(--cx-bg-card) !important;
	color: var(--cx-text) !important;
	border-color: var(--cx-line) !important;
}
body.cx-site .cx-attack-trend--light .cx-attack-trend__flag-code,
body.cx-site .cx-tintel-hot--light * { color: var(--cx-text) !important; }
body.cx-site .cx-tintel-hot__sev--critical {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
}
body.cx-site .cx-tintel-hot__sev--high {
	background: rgba(249,115,22,0.15) !important;
	color: #fdba74 !important;
}
body.cx-site .cx-tintel-hot__sev--med {
	background: rgba(245,158,11,0.15) !important;
	color: #fcd34d !important;
}

/* ── Home — assessments strip (whole section is white!) ──────── */
body.cx-site .cx-home-assessments {
	background: transparent !important;
}
body.cx-site .cx-home-assessments__card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-home-assessments__card:hover {
	border-color: var(--cx-accent) !important;
	background: rgba(6,182,212,0.04) !important;
}

/* ── Page-hero floating card + slate variant ─────────────────── */
body.cx-site .cx-page-hero--slate .cx-page-hero__eyebrow {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
}
body.cx-site .cx-page-hero--slate .cx-page-hero__card-meta { color: var(--cx-text-mute) !important; }

/* ── Login / register split layout ────────────────────────────── */
body.cx-site .mca-login-card,
body.cx-site .mca-login,
body.cx-site .mca-register,
body.cx-site .cx-auth-split,
body.cx-site .cx-auth-split__panel,
body.cx-site .cx-auth-split__form {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
	box-shadow: none !important;
}
body.cx-site .cx-auth-split__eyebrow {
	background: rgba(6,182,212,0.1) !important;
	color: var(--cx-accent) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
}
body.cx-site .mca-alert--error {
	background: rgba(239,68,68,0.12) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3) !important;
}

/* ── Misc pills ───────────────────────────────────────────────── */
body.cx-site .mca-pill--muted {
	background: rgba(255,255,255,0.06) !important;
	color: var(--cx-text-soft) !important;
}

/* ── Hero design A / B (dormant but covered for completeness) ── */
body.cx-site .cx-hero-a,
body.cx-site .cx-hero-b {
	background: transparent !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-hero-a__card,
body.cx-site .cx-hero-b__card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line-strong) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-hero-a h1, body.cx-site .cx-hero-a h2,
body.cx-site .cx-hero-b h1, body.cx-site .cx-hero-b h2,
body.cx-site .cx-hero-a__card h3, body.cx-site .cx-hero-b__card h3,
body.cx-site .cx-hero-a__list li b { color: #fff !important; }
body.cx-site .cx-hero-a__sub, body.cx-site .cx-hero-b__sub,
body.cx-site .cx-hero-a__btn-link { color: var(--cx-text-soft) !important; }
body.cx-site .cx-hero-b__btn--ghost {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-hero-b__btn--ghost:hover {
	background: rgba(255,255,255,0.08) !important;
	color: #fff !important;
	border-color: var(--cx-accent) !important;
}

/* ── Hero design C — inner panels with #fafafa we previously missed ── */
body.cx-site .cx-hero-c [class*="cx-hero-c__"] {
	/* leave individual element styling to specific rules; only neutralize literal #fafafa fills */
}

/* ── Nav hamburger bars + user logout danger ──────────────────── */
body.cx-site .cx-nav-toggle span { background: #e2e8f0 !important; }
body.cx-site .cx-nav-toggle:hover { background: rgba(255,255,255,0.06) !important; }
body.cx-site .cx-nav__user-logout:hover {
	background: rgba(239,68,68,0.12) !important;
	color: #fca5a5 !important;
}

/* ────── About — section wrappers, pricing cards ──────────────── */
body.cx-site .cx-about-section,
body.cx-site .cx-about-section--alt {
	background: transparent !important;
	border-top: 1px solid var(--cx-line) !important;
	border-bottom: 1px solid var(--cx-line) !important;
}
body.cx-site .cx-about-section--alt {
	background: linear-gradient(135deg, rgba(6,182,212,0.04) 0%, rgba(6,182,212,0.02) 50%, transparent 100%) !important;
}
body.cx-site .cx-about-section__eyebrow {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	font-family: var(--cx-font-mono);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 700;
	padding: 6px 14px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
body.cx-site .cx-about-section__title { color: #fff !important; }
body.cx-site .cx-about-section__lede  { color: var(--cx-text-soft) !important; }

/* Pricing cards (Free / Pro) */
body.cx-site .cx-about-fp__card,
body.cx-site .cx-about-fp__card--free,
body.cx-site .cx-about-fp__card--pro {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
	box-shadow: none !important;
}
body.cx-site .cx-about-fp__card--pro {
	border: 2px solid var(--cx-accent) !important;
	background: rgba(6,182,212,0.04) !important;
	box-shadow: 0 24px 44px -28px rgba(6,182,212,0.3) !important;
}
body.cx-site .cx-about-fp__badge {
	background: linear-gradient(120deg, var(--cx-gold), var(--cx-gold-hover)) !important;
	color: #1a1300 !important;
	font-weight: 800;
	letter-spacing: 0.1em;
}
body.cx-site .cx-about-fp__eyebrow {
	color: var(--cx-accent) !important;
	font-family: var(--cx-font-mono);
}
body.cx-site .cx-about-fp__price {
	color: #fff !important;
	font-family: var(--cx-font-mono);
}
body.cx-site .cx-about-fp__price span,
body.cx-site .cx-about-fp__sub {
	color: var(--cx-text-mute) !important;
}
body.cx-site .cx-about-fp__list li {
	color: var(--cx-text) !important;
}
body.cx-site .cx-about-fp__tick--ok {
	background: rgba(16,185,129,0.15) !important;
	color: #6ee7b7 !important;
	border: 1px solid rgba(16,185,129,0.3);
}
body.cx-site .cx-about-fp__tick--no {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3);
}

body.cx-site .cx-about-fp__note {
	text-align: center;
	margin: 24px 0 0;
	color: var(--cx-text-mute) !important;
	font-family: var(--cx-font-mono);
	font-size: 12px;
}

/* About principles row */
body.cx-site .cx-about-principle__icon {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
}
body.cx-site .cx-about-principle__icon svg { stroke: var(--cx-accent) !important; }
body.cx-site .cx-about-principle h3 { color: #fff !important; }
body.cx-site .cx-about-principle p { color: var(--cx-text-soft) !important; }

/* About pillars */
body.cx-site .cx-about-pillar h3 { color: #fff !important; }
body.cx-site .cx-about-pillar p,
body.cx-site .cx-about-pillar__link { color: var(--cx-text-soft) !important; }
body.cx-site .cx-about-pillar__link { color: var(--cx-accent) !important; font-weight: 700; }

/* ────── About — stats strip, pillars, founder card, MSSP block ── */
body.cx-site .cx-about-stats {
	background: linear-gradient(135deg, #06090e 0%, #0a1018 60%, #0a2540 100%) !important;
	border-top: 1px solid var(--cx-line);
	border-bottom: 1px solid var(--cx-line);
	color: var(--cx-text);
}
body.cx-site .cx-about-stat__icon { color: var(--cx-accent) !important; }
body.cx-site .cx-about-stat__icon svg { stroke: var(--cx-accent) !important; }
body.cx-site .cx-about-stat__num {
	color: #fff !important;
	font-family: var(--cx-font-mono);
}
body.cx-site .cx-about-stat__label { color: var(--cx-text-soft) !important; }

/* Pillar icon chip (was implicit) */
body.cx-site .cx-about-pillar__icon {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	border-radius: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
body.cx-site .cx-about-pillar__icon svg { stroke: var(--cx-accent) !important; }
body.cx-site .cx-about-pillar:hover {
	border-color: var(--cx-accent) !important;
	background: rgba(6,182,212,0.04) !important;
}

/* Founder card */
body.cx-site .cx-about-founder__copy p { color: var(--cx-text-soft) !important; }
body.cx-site .cx-about-founder__card {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line-strong) !important;
	box-shadow: var(--cx-shadow-lg) !important;
}
body.cx-site .cx-about-founder__chip {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	font-family: var(--cx-font-mono);
}
body.cx-site .cx-about-founder__card blockquote { color: var(--cx-text) !important; }
body.cx-site .cx-about-founder__sig strong { color: #fff !important; }
body.cx-site .cx-about-founder__sig span   { color: var(--cx-text-mute) !important; }

/* MSSP block */
body.cx-site .cx-about-mssp {
	background: linear-gradient(135deg, rgba(6,182,212,0.06) 0%, rgba(6,182,212,0.02) 100%) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-text);
}
body.cx-site .cx-about-mssp__icon {
	background: linear-gradient(120deg, var(--cx-accent) 0%, #0e7490 60%, #06090e 100%) !important;
	color: #fff !important;
}
body.cx-site .cx-about-mssp h2 { color: #fff !important; }
body.cx-site .cx-about-mssp p  { color: var(--cx-text-soft) !important; }

/* ═══════════════════════════════════════════════════════════════
 * THREAT-INFORMED ENGINE — homepage, threat cards, mapping table
 * ═══════════════════════════════════════════════════════════════ */

/* Threat-informed hero */
body.cx-site .cx-ti-hero { padding: 64px 0 48px; }
body.cx-site .cx-ti-hero__inner {
	display: grid;
	grid-template-columns: 1.05fr 1fr;
	gap: 56px;
	align-items: center;
}
@media (max-width: 920px) {
	body.cx-site .cx-ti-hero__inner { grid-template-columns: 1fr; gap: 36px; }
}
body.cx-site .cx-ti-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: rgba(6,182,212,0.1);
	border: 1px solid rgba(6,182,212,0.3);
	color: var(--cx-accent);
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	padding: 6px 14px;
	border-radius: 999px;
	margin: 0 0 18px;
}
body.cx-site .cx-ti-hero__title {
	font-size: clamp(32px, 4.4vw, 48px);
	line-height: 1.1;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #fff;
	margin: 0 0 18px;
}
body.cx-site .cx-ti-hero__accent {
	background: linear-gradient(120deg, #06B6D4 0%, #67e8f9 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
body.cx-site .cx-ti-hero__sub {
	font-size: 17px;
	line-height: 1.55;
	color: var(--cx-text-soft);
	max-width: 580px;
	margin: 0 0 26px;
}
body.cx-site .cx-ti-hero__cta {
	display: flex; gap: 12px; flex-wrap: wrap; margin: 0 0 16px;
}
body.cx-site .cx-ti-hero__note {
	font-size: 12px;
	font-family: var(--cx-font-mono);
	color: var(--cx-text-mute);
	margin: 0;
}

/* Workflow strip (right side of hero) */
body.cx-site .cx-ti-flow {
	display: flex;
	flex-direction: column;
	gap: 0;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 12px;
	padding: 18px;
}
body.cx-site .cx-ti-flow__step {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	background: rgba(255,255,255,0.02);
	border: 1px solid var(--cx-line);
	border-radius: 8px;
	font-family: var(--cx-font-mono);
	font-size: 13px;
	font-weight: 700;
	color: var(--cx-text);
}
body.cx-site .cx-ti-flow__dot {
	width: 8px; height: 8px;
	background: var(--cx-accent);
	border-radius: 50%;
	box-shadow: 0 0 0 4px rgba(6,182,212,0.15);
}
body.cx-site .cx-ti-flow__step--out {
	border-color: var(--cx-accent);
	background: rgba(6,182,212,0.08);
	color: #fff;
}
body.cx-site .cx-ti-flow__arr {
	width: 1px; height: 16px;
	background: linear-gradient(180deg, var(--cx-accent), transparent);
	margin: 2px 18px;
	align-self: flex-start;
}

/* Threat cards */
body.cx-site .cx-threats-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}
@media (max-width: 920px) { body.cx-site .cx-threats-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 620px) { body.cx-site .cx-threats-grid { grid-template-columns: 1fr; } }

body.cx-site .cx-threat-card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 20px;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 10px;
	text-decoration: none;
	color: var(--cx-text);
	transition: border-color .15s, background .15s;
	position: relative;
	overflow: hidden;
}
body.cx-site .cx-threat-card::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 2px;
	background: var(--cx-accent);
}
body.cx-site .cx-threat-card[data-sev="critical"]::before, body.cx-site .cx-threat-card--critical::before { background: var(--cx-crit); }
body.cx-site .cx-threat-card[data-sev="high"]::before,     body.cx-site .cx-threat-card--high::before     { background: var(--cx-high); }
body.cx-site .cx-threat-card[data-sev="medium"]::before,   body.cx-site .cx-threat-card--medium::before   { background: var(--cx-med);  }
body.cx-site .cx-threat-card[data-sev="low"]::before,      body.cx-site .cx-threat-card--low::before      { background: #94a3b8;        }

body.cx-site .cx-threat-card:hover {
	border-color: var(--cx-accent);
	background: rgba(6,182,212,0.04);
}
body.cx-site .cx-threat-card__head {
	display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
body.cx-site .cx-threat-card__sev {
	display: inline-block;
	font-family: var(--cx-font-mono);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	padding: 2px 8px;
	border-radius: 4px;
	border: 1px solid transparent;
}
body.cx-site .cx-threat-card__sev--critical { background: rgba(239,68,68,0.15); color: #fca5a5; border-color: rgba(239,68,68,0.3); }
body.cx-site .cx-threat-card__sev--high     { background: rgba(249,115,22,0.15); color: #fdba74; border-color: rgba(249,115,22,0.3); }
body.cx-site .cx-threat-card__sev--medium   { background: rgba(245,158,11,0.15); color: #fcd34d; border-color: rgba(245,158,11,0.3); }
body.cx-site .cx-threat-card__sev--low      { background: rgba(148,163,184,0.15); color: #cbd5e1; border-color: rgba(148,163,184,0.3); }

body.cx-site .cx-threat-card__meta {
	font-family: var(--cx-font-mono);
	font-size: 11px;
	color: var(--cx-text-mute);
}
body.cx-site .cx-threat-card__title {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
}
body.cx-site .cx-threat-card__sum {
	color: var(--cx-text-soft);
	font-size: 13px;
	line-height: 1.5;
	margin: 0;
}
body.cx-site .cx-threat-card__foot {
	display: flex; gap: 6px; flex-wrap: wrap;
	margin-top: auto;
}
body.cx-site .cx-threat-card__chip {
	background: rgba(255,255,255,0.04);
	border: 1px solid var(--cx-line-strong);
	color: var(--cx-text-soft);
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 600;
	padding: 3px 9px;
	border-radius: 4px;
}
body.cx-site .cx-threat-card__chip--ok {
	background: rgba(16,185,129,0.12);
	border-color: rgba(16,185,129,0.3);
	color: #6ee7b7;
}
body.cx-site .cx-threat-card__chip--warn {
	background: rgba(245,158,11,0.12);
	border-color: rgba(245,158,11,0.3);
	color: #fcd34d;
}

/* Threat detail hero */
body.cx-site .cx-threat-hero {
	padding: 36px 0 32px;
	border-bottom: 1px solid var(--cx-line);
	position: relative;
}
body.cx-site .cx-threat-hero::after {
	content: '';
	position: absolute;
	left: 0; right: 0; bottom: -1px;
	height: 2px;
	background: var(--cx-accent);
}
body.cx-site .cx-threat-hero--critical::after { background: var(--cx-crit); }
body.cx-site .cx-threat-hero--high::after     { background: var(--cx-high); }
body.cx-site .cx-threat-hero--medium::after   { background: var(--cx-med); }
body.cx-site .cx-threat-hero--low::after      { background: #94a3b8; }

body.cx-site .cx-threat-hero__back {
	color: var(--cx-text-mute);
	font-family: var(--cx-font-mono);
	font-size: 12px;
	text-decoration: none;
}
body.cx-site .cx-threat-hero__back:hover { color: var(--cx-accent); }
body.cx-site .cx-threat-hero__head {
	display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 18px 0 14px;
}
body.cx-site .cx-threat-hero__sev {
	display: inline-block;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	padding: 3px 10px;
	border-radius: 4px;
}
body.cx-site .cx-threat-hero__sev--critical { background: rgba(239,68,68,0.15); color: #fca5a5; border: 1px solid rgba(239,68,68,0.3); }
body.cx-site .cx-threat-hero__sev--high     { background: rgba(249,115,22,0.15); color: #fdba74; border: 1px solid rgba(249,115,22,0.3); }
body.cx-site .cx-threat-hero__sev--medium   { background: rgba(245,158,11,0.15); color: #fcd34d; border: 1px solid rgba(245,158,11,0.3); }
body.cx-site .cx-threat-hero__sev--low      { background: rgba(148,163,184,0.15); color: #cbd5e1; border: 1px solid rgba(148,163,184,0.3); }
body.cx-site .cx-threat-hero__meta {
	font-family: var(--cx-font-mono);
	font-size: 12px;
	color: var(--cx-text-mute);
}
body.cx-site .cx-threat-hero__title {
	font-size: clamp(28px, 3.6vw, 38px);
	line-height: 1.2;
	font-weight: 800;
	color: #fff;
	margin: 0 0 14px;
}
body.cx-site .cx-threat-hero__sum {
	font-size: 17px;
	line-height: 1.55;
	color: var(--cx-text-soft);
	max-width: 820px;
	margin: 0 0 24px;
}
body.cx-site .cx-threat-hero__cta { display: flex; gap: 10px; flex-wrap: wrap; }

/* Threat detail two-column grid */
body.cx-site .cx-threat-grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr;
	gap: 36px;
	align-items: flex-start;
}
@media (max-width: 880px) {
	body.cx-site .cx-threat-grid { grid-template-columns: 1fr; }
}
body.cx-site .cx-threat-body p { color: var(--cx-text); }

/* TTP grid */
body.cx-site .cx-ttp-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}
@media (max-width: 620px) { body.cx-site .cx-ttp-grid { grid-template-columns: 1fr; } }
body.cx-site .cx-ttp {
	display: flex; align-items: center; gap: 12px;
	padding: 10px 14px;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 8px;
}
body.cx-site .cx-ttp__mid {
	font-family: var(--cx-font-mono);
	font-size: 11px;
	color: var(--cx-accent);
	font-weight: 700;
	background: rgba(6,182,212,0.1);
	border: 1px solid rgba(6,182,212,0.3);
	padding: 2px 8px;
	border-radius: 4px;
}
body.cx-site .cx-ttp__name { color: #fff; font-weight: 600; }
body.cx-site .cx-ttp__kind {
	margin-left: auto;
	font-family: var(--cx-font-mono);
	font-size: 10px;
	color: var(--cx-text-mute);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

/* Mapping table */
body.cx-site .cx-mapping-table {
	width: 100%;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 10px;
	overflow: hidden;
	border-collapse: collapse;
}
body.cx-site .cx-mapping-table th {
	background: rgba(255,255,255,0.03);
	color: var(--cx-text-mute);
	font-family: var(--cx-font-mono);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: left;
	padding: 12px 14px;
	border-bottom: 1px solid var(--cx-line-strong);
}
body.cx-site .cx-mapping-table td {
	padding: 12px 14px;
	border-bottom: 1px dashed var(--cx-line);
	color: var(--cx-text);
	font-size: 14px;
}
body.cx-site .cx-mapping-table a { color: var(--cx-accent); font-weight: 700; }
body.cx-site .cx-confidence {
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 700;
	padding: 2px 8px;
	border-radius: 4px;
}
body.cx-site .cx-confidence--hi { background: rgba(16,185,129,0.15);  color: #6ee7b7; border: 1px solid rgba(16,185,129,0.3); }
body.cx-site .cx-confidence--md { background: rgba(245,158,11,0.15);  color: #fcd34d; border: 1px solid rgba(245,158,11,0.3); }
body.cx-site .cx-confidence--lo { background: rgba(239,68,68,0.15);   color: #fca5a5; border: 1px solid rgba(239,68,68,0.3); }
body.cx-site .cx-mapping-pill {
	display: inline-block;
	margin-left: 8px;
	font-family: var(--cx-font-mono);
	font-size: 10px;
	padding: 1px 6px;
	border-radius: 3px;
	border: 1px solid var(--cx-line-strong);
	color: var(--cx-text-mute);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
body.cx-site .cx-mapping-pill--suggested { background: rgba(245,158,11,0.1); color: #fcd34d; border-color: rgba(245,158,11,0.3); }
body.cx-site .cx-mapping-pill--rejected  { background: rgba(239,68,68,0.1);  color: #fca5a5; border-color: rgba(239,68,68,0.3); }

/* Mapping curation form */
body.cx-site .cx-mapping-form input[type="number"],
body.cx-site .cx-mapping-form input[type="text"],
body.cx-site .cx-mapping-form select {
	background: rgba(255,255,255,0.04);
	color: var(--cx-text);
	border: 1px solid var(--cx-line-strong);
	border-radius: 6px;
	padding: 6px 10px;
}
body.cx-site .cx-mapping-actions { margin: 18px 0; }
body.cx-site .cx-mapping-add {
	margin-top: 32px;
	border: 1px solid var(--cx-line-strong);
	background: var(--cx-bg-card);
	border-radius: 10px;
	padding: 18px 20px;
}
body.cx-site .cx-mapping-add legend {
	color: var(--cx-accent);
	font-family: var(--cx-font-mono);
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	padding: 0 8px;
}
body.cx-site .cx-mapping-add__grid {
	display: grid;
	grid-template-columns: 1.2fr 2fr 100px;
	gap: 12px;
	margin: 12px 0;
}
@media (max-width: 720px) { body.cx-site .cx-mapping-add__grid { grid-template-columns: 1fr; } }
body.cx-site .cx-mapping-add label {
	display: flex; flex-direction: column; gap: 4px;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	color: var(--cx-text-mute);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
body.cx-site .cx-mapping-saved {
	color: #6ee7b7;
	font-family: var(--cx-font-mono);
}

/* Dossier rows */
body.cx-site .cx-dossier-row {
	display: flex; flex-direction: column; gap: 4px;
	padding: 12px 0;
	border-bottom: 1px dashed var(--cx-line);
}
body.cx-site .cx-dossier-row:last-child { border-bottom: 0; }
body.cx-site .cx-dossier-row__lbl {
	font-family: var(--cx-font-mono);
	font-size: 10px;
	color: var(--cx-text-mute);
	text-transform: uppercase;
	letter-spacing: 0.1em;
}
body.cx-site .cx-dossier-row__val { color: var(--cx-text); font-size: 14px; }
body.cx-site .cx-dossier-row__val.cx-mono { font-family: var(--cx-font-mono); }

/* Section head with right-side "more" link */
body.cx-site .cx-ti-section__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 24px;
	max-width: none;
}
body.cx-site .cx-section__more {
	color: var(--cx-accent);
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
}
body.cx-site .cx-section__more:hover { color: #67e8f9; }

/* Risk scoring preview */
body.cx-site .cx-ti-scoring__inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
	align-items: center;
}
@media (max-width: 880px) { body.cx-site .cx-ti-scoring__inner { grid-template-columns: 1fr; } }
body.cx-site .cx-ti-scoring__list {
	list-style: none;
	padding: 0;
	margin: 18px 0 0;
	display: flex; flex-direction: column; gap: 8px;
	color: var(--cx-text-soft);
}
body.cx-site .cx-ti-tier {
	display: inline-block;
	min-width: 60px;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 700;
	padding: 2px 10px;
	margin-right: 12px;
	border-radius: 4px;
	border: 1px solid transparent;
}
body.cx-site .cx-ti-tier--low  { background: rgba(16,185,129,0.15); color: #6ee7b7; border-color: rgba(16,185,129,0.3); }
body.cx-site .cx-ti-tier--med  { background: rgba(245,158,11,0.15); color: #fcd34d; border-color: rgba(245,158,11,0.3); }
body.cx-site .cx-ti-tier--high { background: rgba(249,115,22,0.15); color: #fdba74; border-color: rgba(249,115,22,0.3); }
body.cx-site .cx-ti-tier--crit { background: rgba(239,68,68,0.15);  color: #fca5a5; border-color: rgba(239,68,68,0.3); }

body.cx-site .cx-ti-meter {
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line-strong);
	border-radius: 14px;
	padding: 28px;
	max-width: 420px;
	margin-left: auto;
}
body.cx-site .cx-ti-meter__big {
	font-family: var(--cx-font-mono);
	font-size: 64px;
	font-weight: 800;
	line-height: 1;
	background: linear-gradient(120deg, #06B6D4, #67e8f9);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
body.cx-site .cx-ti-meter__big span {
	font-size: 18px;
	color: var(--cx-text-mute);
	margin-left: 4px;
	-webkit-text-fill-color: var(--cx-text-mute);
}
body.cx-site .cx-ti-meter__lbl {
	font-family: var(--cx-font-mono);
	font-size: 11px;
	color: var(--cx-text-mute);
	margin: 6px 0 18px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
body.cx-site .cx-ti-meter__row {
	display: grid;
	grid-template-columns: 1fr 1.4fr;
	gap: 12px;
	align-items: center;
	font-size: 12px;
	margin-bottom: 8px;
	color: var(--cx-text-soft);
}
body.cx-site .cx-ti-meter__row b {
	display: block;
	height: 6px;
	background: rgba(255,255,255,0.05);
	border-radius: 3px;
	overflow: hidden;
}
body.cx-site .cx-ti-meter__row i {
	display: block;
	height: 100%;
	width: var(--w);
	background: linear-gradient(90deg, #06B6D4, #67e8f9);
	border-radius: 3px;
}

/* Why-Cyentrix grid */
body.cx-site .cx-ti-why__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}
@media (max-width: 920px) { body.cx-site .cx-ti-why__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 620px) { body.cx-site .cx-ti-why__grid { grid-template-columns: 1fr; } }
body.cx-site .cx-ti-why__item {
	padding: 22px;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 10px;
}
body.cx-site .cx-ti-why__icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 40px; height: 40px;
	background: rgba(6,182,212,0.1);
	border: 1px solid rgba(6,182,212,0.3);
	color: var(--cx-accent);
	border-radius: 8px;
	margin-bottom: 12px;
}
body.cx-site .cx-ti-why__icon svg { width: 20px; height: 20px; stroke: var(--cx-accent); }
body.cx-site .cx-ti-why__item h3 { color: #fff; font-size: 15px; margin: 0 0 6px; }
body.cx-site .cx-ti-why__item p  { color: var(--cx-text-soft); font-size: 13px; line-height: 1.5; margin: 0; }

/* Final CTA */
body.cx-site .cx-ti-cta__card {
	background: linear-gradient(135deg, rgba(6,182,212,0.08) 0%, rgba(6,182,212,0.02) 100%);
	border: 1px solid rgba(6,182,212,0.3);
	border-radius: 16px;
	padding: 40px;
	text-align: center;
}
body.cx-site .cx-ti-cta__card h2 { color: #fff; font-size: clamp(24px, 3vw, 32px); margin: 0 0 12px; }
body.cx-site .cx-ti-cta__card p  { color: var(--cx-text-soft); font-size: 16px; max-width: 560px; margin: 0 auto 24px; }
body.cx-site .cx-ti-cta__btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* ────── /threat-intel/ "Hot threats" panel — fix --light variant ── */

/* Attack-type chip (DDOS, DATA BREACH, etc.) */
body.cx-site .cx-tintel-hot__type,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__type {
	background: rgba(6,182,212,0.1) !important;
	color: var(--cx-accent) !important;
	border: 1px solid rgba(6,182,212,0.3);
	font-family: var(--cx-font-mono);
}

/* "Maps to:" label */
body.cx-site .cx-tintel-hot__chip,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__chip {
	color: var(--cx-text-mute) !important;
	font-family: var(--cx-font-mono);
}

/* Program links (VPN Audit, Firewall Hygiene, Data Classification…) */
body.cx-site .cx-tintel-hot__link,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__link {
	background: rgba(6,182,212,0.1) !important;
	color: var(--cx-accent) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
}
body.cx-site .cx-tintel-hot__link:hover,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__link:hover {
	background: var(--cx-accent) !important;
	color: var(--cx-accent-ink) !important;
	border-color: var(--cx-accent) !important;
}

/* Severity pills — re-tint to match the dark theme tone palette */
body.cx-site .cx-tintel-hot__sev--critical,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__sev--critical {
	background: rgba(239,68,68,0.15) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3);
}
body.cx-site .cx-tintel-hot__sev--high,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__sev--high {
	background: rgba(249,115,22,0.15) !important;
	color: #fdba74 !important;
	border: 1px solid rgba(249,115,22,0.3);
}
body.cx-site .cx-tintel-hot__sev--medium,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__sev--medium {
	background: rgba(245,158,11,0.15) !important;
	color: #fcd34d !important;
	border: 1px solid rgba(245,158,11,0.3);
}
body.cx-site .cx-tintel-hot__sev--low,
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__sev--low {
	background: rgba(16,185,129,0.15) !important;
	color: #6ee7b7 !important;
	border: 1px solid rgba(16,185,129,0.3);
}

/* Card title / meta / summary under --light */
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__title,
body.cx-site .cx-tintel-hot__title { color: #fff !important; }
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__meta,
body.cx-site .cx-tintel-hot__meta { color: var(--cx-text-mute) !important; font-family: var(--cx-font-mono); }
body.cx-site .cx-tintel-hot--light .cx-tintel-hot__sum,
body.cx-site .cx-tintel-hot__sum { color: var(--cx-text-soft) !important; }

/* Attack-trend section — section title + numbers row */
body.cx-site .cx-tintel-card__title,
body.cx-site .cx-attack-trend__title,
body.cx-site .cx-attack-trend--light .cx-attack-trend__title {
	color: #fff !important;
}
body.cx-site .cx-attack-trend__sub,
body.cx-site .cx-attack-trend--light .cx-attack-trend__sub {
	color: var(--cx-text-mute) !important;
}

/* ────── Evidence list on threat detail ──────────────────────── */
body.cx-site .cx-evidence-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
body.cx-site .cx-evidence {
	display: flex;
	gap: 10px;
	padding: 10px 0;
	border-bottom: 1px dashed var(--cx-line);
	align-items: flex-start;
}
body.cx-site .cx-evidence:last-child { border-bottom: 0; }
body.cx-site .cx-evidence__sev {
	flex: 0 0 auto;
	display: inline-block;
	font-family: var(--cx-font-mono);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.08em;
	padding: 2px 7px;
	border-radius: 3px;
	margin-top: 2px;
}
body.cx-site .cx-evidence__sev--critical { background: rgba(239,68,68,0.15); color: #fca5a5; border: 1px solid rgba(239,68,68,0.3); }
body.cx-site .cx-evidence__sev--high     { background: rgba(249,115,22,0.15); color: #fdba74; border: 1px solid rgba(249,115,22,0.3); }
body.cx-site .cx-evidence__sev--medium   { background: rgba(245,158,11,0.15); color: #fcd34d; border: 1px solid rgba(245,158,11,0.3); }
body.cx-site .cx-evidence__sev--low      { background: rgba(148,163,184,0.15); color: #cbd5e1; border: 1px solid rgba(148,163,184,0.3); }
body.cx-site .cx-evidence__body {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}
body.cx-site .cx-evidence__title {
	color: var(--cx-text);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
}
body.cx-site a.cx-evidence__title { color: var(--cx-accent); }
body.cx-site a.cx-evidence__title:hover { color: #67e8f9; }
body.cx-site .cx-evidence__meta {
	font-family: var(--cx-font-mono);
	font-size: 10px;
	color: var(--cx-text-mute);
}

/* ════════════════════════════════════════════════════════════
 * Pro page — surfaces, pricing cards, feature lists, FAQ
 * ════════════════════════════════════════════════════════════ */

/* "You're on Pro" banner */
body.cx-site .cx-pro__active {
	background: rgba(16,185,129,0.08) !important;
	border: 1px solid rgba(16,185,129,0.3) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-pro__active h2 { color: #6ee7b7 !important; }
body.cx-site .cx-pro__active p  { color: var(--cx-text) !important; }

/* Pricing tier cards */
body.cx-site .cx-pro__tiers,
body.cx-site .cx-pro__card,
body.cx-site .cx-pro__card--monthly,
body.cx-site .cx-pro__card--annual,
body.cx-site .cx-pro__card--featured {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line-strong) !important;
	color: var(--cx-text) !important;
	box-shadow: none !important;
}
body.cx-site .cx-pro__card--featured,
body.cx-site .cx-pro__card--annual {
	border: 2px solid var(--cx-accent) !important;
	background: rgba(6,182,212,0.04) !important;
	box-shadow: 0 24px 44px -28px rgba(6,182,212,0.3) !important;
}

/* Eyebrow */
body.cx-site .cx-pro__eyebrow {
	color: var(--cx-accent) !important;
	font-family: var(--cx-font-mono);
	letter-spacing: 0.14em;
}

/* Best-value badge */
body.cx-site .cx-pro__badge {
	background: linear-gradient(120deg, var(--cx-gold), var(--cx-gold-hover)) !important;
	color: #1a1300 !important;
	font-weight: 800;
}

/* Price row */
body.cx-site .cx-pro__price,
body.cx-site .cx-pro__currency,
body.cx-site .cx-pro__amount {
	color: #fff !important;
	font-family: var(--cx-font-mono);
}
body.cx-site .cx-pro__period { color: var(--cx-text-mute) !important; }
body.cx-site .cx-pro__fx,
body.cx-site .cx-pro__fx strong { color: var(--cx-text-mute) !important; }
body.cx-site .cx-pro__sub,
body.cx-site .cx-pro__sub strong { color: var(--cx-text-soft) !important; }

/* Features list */
body.cx-site .cx-pro__features li,
body.cx-site .cx-pro__features li strong { color: var(--cx-text) !important; }
body.cx-site .cx-pro__check,
body.cx-pro-page .cx-pro__check {
	background: rgba(16,185,129,0.15) !important;
	color: #6ee7b7 !important;
	border: 1px solid rgba(16,185,129,0.3);
}

/* Payment line */
body.cx-site .cx-pro__pay { color: var(--cx-text-mute) !important; }
body.cx-site .cx-pro__pay strong { color: var(--cx-text) !important; }

/* FAQ */
body.cx-site .cx-pro__faq h2 { color: #fff !important; }
body.cx-site .cx-pro__faq details {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line) !important;
	color: var(--cx-text) !important;
}
body.cx-site .cx-pro__faq summary { color: var(--cx-text) !important; }
body.cx-site .cx-pro__faq summary:hover { color: var(--cx-accent) !important; }
body.cx-site .cx-pro__faq p { color: var(--cx-text-soft) !important; }
body.cx-site .cx-pro__faq a { color: var(--cx-accent) !important; }
body.cx-site .cx-pro__faq a:hover { color: #67e8f9 !important; }

/* ════════════════════════════════════════════════════════════
 * Single control page (single-cx_control.php)
 * ════════════════════════════════════════════════════════════ */

body.cx-site .cx-control-hero {
	padding: 32px 0 28px;
	border-bottom: 1px solid var(--cx-line);
	position: relative;
}
body.cx-site .cx-control-hero::after {
	content: '';
	position: absolute;
	left: 0; right: 0; bottom: -1px;
	height: 2px;
	background: var(--cx-accent);
}
body.cx-site .cx-control-hero__back {
	color: var(--cx-text-mute);
	font-family: var(--cx-font-mono);
	font-size: 12px;
	text-decoration: none;
}
body.cx-site .cx-control-hero__back:hover { color: var(--cx-accent); }

body.cx-site .cx-control-hero__chips {
	display: flex; flex-wrap: wrap; gap: 6px;
	margin: 16px 0 14px;
}
body.cx-site .cx-control-chip {
	display: inline-block;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 3px 10px;
	border-radius: 4px;
	background: rgba(6,182,212,0.1);
	color: var(--cx-accent);
	border: 1px solid rgba(6,182,212,0.3);
}
body.cx-site .cx-control-chip--code {
	background: rgba(251,191,36,0.12);
	color: var(--cx-gold);
	border: 1px solid rgba(251,191,36,0.3);
}
body.cx-site .cx-control-chip--muted {
	background: rgba(255,255,255,0.04);
	color: var(--cx-text-soft);
	border-color: var(--cx-line-strong);
}

body.cx-site .cx-control-hero__title {
	text-align: left;
	font-family: var(--cx-font, 'Inter');
	text-transform: none;
	letter-spacing: -0.01em;
	font-size: clamp(28px, 3.6vw, 38px);
	font-weight: 800;
	color: #fff;
	margin: 0 0 14px;
	line-height: 1.2;
}
body.cx-site .cx-control-hero__obj {
	font-size: 17px;
	line-height: 1.55;
	color: var(--cx-text-soft);
	max-width: 820px;
	margin: 0;
}

body.cx-site .cx-control-grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr;
	gap: 36px;
	align-items: flex-start;
}
@media (max-width: 880px) {
	body.cx-site .cx-control-grid { grid-template-columns: 1fr; }
}
body.cx-site .cx-control-body p { color: var(--cx-text); line-height: 1.6; }
body.cx-site .cx-control-objective {
	padding: 14px 18px;
	background: rgba(6,182,212,0.06);
	border-left: 3px solid var(--cx-accent);
	border-radius: 6px;
	color: var(--cx-text);
	font-size: 15px;
	line-height: 1.6;
}

body.cx-site .cx-control-risks {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
body.cx-site .cx-control-risks li {
	padding: 10px 14px;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 6px;
	color: var(--cx-text);
	font-size: 14px;
	position: relative;
	padding-left: 32px;
}
body.cx-site .cx-control-risks li::before {
	content: '';
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	background: var(--cx-crit);
	border-radius: 50%;
	box-shadow: 0 0 0 3px rgba(239,68,68,0.2);
}
body.cx-site .cx-control-risks__lead {
	color: var(--cx-text-mute);
	font-family: var(--cx-font-mono);
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin: 18px 0 10px;
}

body.cx-site .cx-control-threat-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
body.cx-site .cx-control-threat {
	display: flex;
	gap: 12px;
	padding: 12px 14px;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 8px;
	text-decoration: none;
	color: var(--cx-text);
	align-items: flex-start;
	transition: border-color .15s, background .15s;
}
body.cx-site .cx-control-threat:hover {
	border-color: var(--cx-accent);
	background: rgba(6,182,212,0.04);
}
body.cx-site .cx-control-threat__sev {
	flex: 0 0 auto;
	font-family: var(--cx-font-mono);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.08em;
	padding: 2px 7px;
	border-radius: 3px;
	margin-top: 2px;
}
body.cx-site .cx-control-threat__sev--critical { background: rgba(239,68,68,0.15); color: #fca5a5; border: 1px solid rgba(239,68,68,0.3); }
body.cx-site .cx-control-threat__sev--high     { background: rgba(249,115,22,0.15); color: #fdba74; border: 1px solid rgba(249,115,22,0.3); }
body.cx-site .cx-control-threat__sev--medium   { background: rgba(245,158,11,0.15); color: #fcd34d; border: 1px solid rgba(245,158,11,0.3); }
body.cx-site .cx-control-threat__sev--low      { background: rgba(148,163,184,0.15); color: #cbd5e1; border: 1px solid rgba(148,163,184,0.3); }
body.cx-site .cx-control-threat__body {
	display: flex;
	flex-direction: column;
	gap: 3px;
}
body.cx-site .cx-control-threat__title { color: #fff; font-weight: 600; font-size: 14px; }
body.cx-site .cx-control-threat__sum   { color: var(--cx-text-soft); font-size: 12px; }

body.cx-site .cx-muted { color: var(--cx-text-mute); }

/* Free-tier run quota — inline meter on the run page header */
body.cx-site .cx-run__quota {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	padding: 12px 18px;
	margin: 0 0 24px;
	background: rgba(245,158,11,0.08);
	border: 1px solid rgba(245,158,11,0.25);
	border-radius: 10px;
	font-family: var(--cx-font-mono);
	font-size: 12px;
	color: var(--cx-text);
}
body.cx-site .cx-run__quota-meter,
body.cx-site .cx-myruns__quota-bar {
	display: inline-flex;
	gap: 4px;
}
body.cx-site .cx-run__quota-cell,
body.cx-site .cx-myruns__quota-cell {
	display: inline-block;
	width: 28px;
	height: 8px;
	background: rgba(255,255,255,0.08);
	border: 1px solid var(--cx-line-strong);
	border-radius: 3px;
}
body.cx-site .cx-run__quota-cell.is-used,
body.cx-site .cx-myruns__quota-cell.is-used {
	background: var(--cx-med);
	border-color: var(--cx-med);
}
body.cx-site .cx-run__quota-text strong,
body.cx-site .cx-myruns__quota-text strong { color: #fcd34d; }
body.cx-site .cx-run__quota-cta {
	margin-left: auto;
	color: var(--cx-accent) !important;
	font-weight: 700;
	text-decoration: none;
}
body.cx-site .cx-run__quota-cta:hover { color: #67e8f9 !important; }

/* /my-runs/ quota header card */
body.cx-site .cx-myruns__quota {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	padding: 14px 18px;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line-strong);
	border-radius: 10px;
	margin: 16px 0 24px;
}
body.cx-site .cx-myruns__quota-text {
	color: var(--cx-text-soft);
	font-family: var(--cx-font-mono);
	font-size: 13px;
}
body.cx-site .cx-myruns__upgrade {
	margin-left: auto;
	color: var(--cx-accent) !important;
	font-weight: 700;
	text-decoration: none;
}
body.cx-site .cx-myruns__upsell {
	margin-top: 20px;
	padding: 14px 18px;
	background: rgba(6,182,212,0.06);
	border: 1px solid rgba(6,182,212,0.25);
	border-radius: 8px;
	color: var(--cx-text-soft);
	font-size: 13px;
}
body.cx-site .cx-myruns__upsell a { color: var(--cx-accent) !important; font-weight: 700; }

/* Run page — align container to page-hero (was 920px override; now 1120 like hero) */
body.cx-site .cx-container.cx-run {
	max-width: 1120px !important;
	padding: 24px 24px 80px !important;
}

/* Subtle inline "auto" hint on form labels — replaces the chunky cyan chip */
body.cx-site .cx-run__auto {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin-left: 8px !important;
	color: var(--cx-text-mute) !important;
	font-family: var(--cx-font-mono) !important;
	font-size: 10px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	opacity: 0.7;
}
body.cx-site .cx-run__auto::before {
	content: '·';
	display: inline-block;
	margin-right: 6px;
	color: var(--cx-accent);
}
body.cx-site .cx-run__auto:hover { opacity: 1; color: var(--cx-accent) !important; }

/* Page-hero bullet icons — force every SVG to the cyan accent regardless of variant */
body.cx-site .cx-page-hero__bullet-icon,
body.cx-site .cx-page-hero__bullet-icon--svg {
	background: rgba(6,182,212,0.1) !important;
	border: 1px solid rgba(6,182,212,0.3) !important;
	color: var(--cx-accent) !important;
	width: 36px;
	height: 36px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
body.cx-site .cx-page-hero__bullet-icon svg,
body.cx-site .cx-page-hero__bullet-icon--svg svg {
	width: 18px;
	height: 18px;
	stroke: var(--cx-accent) !important;
	fill: none !important;
	color: var(--cx-accent) !important;
}

/* Section heads — stacked variant: eyebrow on top, title left-aligned underneath.
   Used on threat + control detail pages so the eyebrow doesn't sit beside the
   title at opposite ends. */
body.cx-site .cx-section__head--stack {
	display: block !important;
	text-align: left;
	margin-bottom: 18px;
}
body.cx-site .cx-section__head--stack .cx-section__eyebrow {
	margin: 0 0 10px;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: var(--cx-font-mono);
	color: var(--cx-accent);
}
body.cx-site .cx-section__head--stack .cx-section__title {
	text-align: left;
	margin: 0 0 8px;
}
/* Suppress the global "//" prefix inside stacked heads — the eyebrow chip
 * already does the visual work, and the // shifts the title off-grid. */
body.cx-site .cx-section__head--stack .cx-section__title::before {
	content: none !important;
}
body.cx-site .cx-section__head--stack .cx-section__lede {
	text-align: left;
	margin: 0;
}

/* MITRE ATT&CK eyebrow — logo + text */
body.cx-site .cx-section__eyebrow--mitre {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	color: var(--cx-text) !important;
	letter-spacing: 0.06em;
}
body.cx-site .cx-mitre-logo {
	display: inline-block;
	vertical-align: middle;
}
body.cx-site .cx-section__eyebrow--mitre span {
	color: var(--cx-text);
	font-weight: 800;
	letter-spacing: 0.08em;
}

/* Audit run — "Add a custom control" panel */
body.cx-site .cx-run__add {
	background: var(--cx-bg-card) !important;
	border: 1px solid var(--cx-line-strong) !important;
	color: var(--cx-text) !important;
	border-radius: 10px;
	padding: 18px 20px;
}
body.cx-site .cx-run__add-label {
	color: var(--cx-accent) !important;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 700;
}
body.cx-site .cx-run__add-hint { color: var(--cx-text-soft) !important; }
body.cx-site .cx-run__add-row input[type="text"],
body.cx-site .cx-run__add-row select {
	background: rgba(255,255,255,0.04) !important;
	color: var(--cx-text) !important;
	border: 1px solid var(--cx-line-strong) !important;
}
body.cx-site .cx-run__add-row select option { background: #0f1722; color: var(--cx-text); }
body.cx-site .cx-run__notice {
	background: rgba(16,185,129,0.12) !important;
	color: #6ee7b7 !important;
	border: 1px solid rgba(16,185,129,0.3);
	padding: 10px 14px;
	border-radius: 6px;
}

/* Testing procedure list */
body.cx-site .cx-control-tests {
	list-style: none;
	padding: 0;
	margin: 0;
	counter-reset: cx-test;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
body.cx-site .cx-control-tests li {
	counter-increment: cx-test;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 8px;
	padding: 12px 14px 12px 48px;
	color: var(--cx-text);
	font-size: 14px;
	line-height: 1.5;
	position: relative;
}
body.cx-site .cx-control-tests li::before {
	content: counter(cx-test);
	position: absolute;
	left: 12px;
	top: 10px;
	width: 24px;
	height: 24px;
	background: rgba(6,182,212,0.1);
	border: 1px solid rgba(6,182,212,0.3);
	color: var(--cx-accent);
	border-radius: 999px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--cx-font-mono);
	font-size: 11px;
	font-weight: 700;
}

/* Evidence + pass-criteria callout */
body.cx-site .cx-control-criteria {
	margin-top: 14px;
	display: flex;
	flex-direction: column;
	gap: 0;
	background: var(--cx-bg-card);
	border: 1px solid var(--cx-line);
	border-radius: 8px;
	overflow: hidden;
}
body.cx-site .cx-control-criteria__row {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 12px;
	padding: 12px 16px;
	border-bottom: 1px dashed var(--cx-line);
	align-items: flex-start;
}
body.cx-site .cx-control-criteria__row:last-child { border-bottom: 0; }
body.cx-site .cx-control-criteria__row--pass {
	background: rgba(16,185,129,0.06);
}
body.cx-site .cx-control-criteria__lbl {
	font-family: var(--cx-font-mono);
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--cx-text-mute);
}
body.cx-site .cx-control-criteria__val { color: var(--cx-text); font-size: 14px; }
body.cx-site .cx-control-criteria__row--pass .cx-control-criteria__val { color: #6ee7b7; font-weight: 600; }
@media (max-width: 620px) {
	body.cx-site .cx-control-criteria__row { grid-template-columns: 1fr; gap: 4px; }
}

/* "Why am I here?" notice on top of /pro/ */
body.cx-site .cx-pro__locked-notice {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 18px;
	margin: 16px 0 24px;
	background: rgba(245,158,11,0.12);
	border: 1px solid rgba(245,158,11,0.3);
	border-radius: 10px;
	color: #fcd34d;
	font-size: 14px;
	font-weight: 500;
}
body.cx-site .cx-pro__locked-notice svg { stroke: #fcd34d; flex-shrink: 0; }

/* Shipping-soon line under Pro features */
body.cx-site .cx-pro__roadmap {
	font-size: 11px;
	font-family: var(--cx-font-mono);
	letter-spacing: 0.04em;
	color: var(--cx-text-mute);
	margin: -8px 0 16px;
	font-style: italic;
}

/* Pro page — 3-tier layout (Free / Pro / MSSP) */
body.cx-site .cx-pro__tiers--three {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin: 32px 0;
	align-items: stretch;
}
@media (max-width: 980px) { body.cx-site .cx-pro__tiers--three { grid-template-columns: 1fr; } }

body.cx-site .cx-pro__card--free,
body.cx-site .cx-pro__card--pro,
body.cx-site .cx-pro__card--mssp {
	display: flex;
	flex-direction: column;
}
body.cx-site .cx-pro__card--free   { border-color: var(--cx-line-strong) !important; }
body.cx-site .cx-pro__card--mssp   { border-color: var(--cx-line-strong) !important; }
body.cx-site .cx-pro__check--no {
	background: rgba(239,68,68,0.12) !important;
	color: #fca5a5 !important;
	border: 1px solid rgba(239,68,68,0.3) !important;
}

/* Enterprise tease strip */
body.cx-site .cx-pro__enterprise {
	margin: 40px 0 24px;
}
body.cx-site .cx-pro__enterprise-inner {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 32px;
	align-items: center;
	padding: 28px 32px;
	background: linear-gradient(135deg, rgba(6,182,212,0.06) 0%, rgba(6,182,212,0.02) 100%);
	border: 1px solid rgba(6,182,212,0.3);
	border-radius: 14px;
}
@media (max-width: 720px) {
	body.cx-site .cx-pro__enterprise-inner { grid-template-columns: 1fr; }
}
body.cx-site .cx-pro__enterprise-inner h3 {
	color: #fff !important;
	margin: 6px 0 10px;
	font-size: 22px;
}
body.cx-site .cx-pro__enterprise-inner p {
	color: var(--cx-text-soft) !important;
	margin: 0;
	max-width: 720px;
}

/* ────── Mobile ─────────────────────────────────────────────── */
@media (max-width: 980px) {
	body.cx-site .cx-nav {
		background: rgba(10,16,24,0.98) !important;
		border-top: 1px solid var(--cx-line) !important;
	}
}
