/* MFA Tools — deep-space technology theme */
body.mfa-reference {
  --mfa-bg: #0b0f19;
  --mfa-soft: #161f30;
  --mfa-soft-blue: rgba(6, 182, 212, 0.1);
  --mfa-text: #f3f4f6;
  --mfa-muted: #9ca3af;
  --mfa-blue: #10b981;
  --mfa-blue-hover: #059669;
  --mfa-border: #24324d;
  --mfa-green: #34d399;
  --mfa-cyan: #06b6d4;
  --fp-navy: #f3f4f6;
  --fp-navy-light: #d1d5db;
  --fp-blue: #10b981;
  --fp-blue-hover: #059669;
  --fp-blue-light: #06b6d4;
  --fp-sky: rgba(6, 182, 212, 0.1);
  --fp-white: #f3f4f6;
  --fp-bg: #161f30;
  --fp-border: #24324d;
  --fp-border-light: #24324d;
  --fp-text: #f3f4f6;
  --fp-text-muted: #9ca3af;
  --fp-text-light: #9ca3af;
  --fp-green: #34d399;
  --fp-green-bg: #0b0f19;
  background: var(--mfa-bg);
  color: var(--mfa-text);
  color-scheme: dark;
}

body.mfa-reference main,
body.mfa-light.mfa-reference main {
  background: var(--mfa-bg);
  color: var(--mfa-text);
}

body.mfa-reference a {
  color: var(--mfa-cyan);
}

body.mfa-reference a:hover {
  color: #22d3ee;
}

body.mfa-reference :focus-visible {
  outline-color: rgba(6, 182, 212, 0.8);
}

/* Navigation */
body.mfa-light.mfa-reference .announcement {
  background: #161f30 !important;
  color: #9ca3af !important;
  border-bottom-color: #24324d;
}

body.mfa-light.mfa-reference .announcement span {
  color: #10b981 !important;
}

body.mfa-reference .site-header {
  background: rgba(11, 15, 25, 0.84);
  border-bottom-color: rgba(36, 50, 77, 0.8);
}

body.mfa-reference .site-header.is-scrolled {
  background: rgba(11, 15, 25, 0.96);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.24);
}

body.mfa-reference .brand,
body.mfa-reference .footer-brand,
body.mfa-reference .header-nav-inner a,
body.mfa-reference .header-search .search-category,
body.mfa-reference .header-search input,
body.mfa-reference .menu-toggle {
  color: var(--mfa-text);
}

body.mfa-reference .brand-light {
  color: var(--mfa-blue);
}

body.mfa-reference .brand-icon,
body.mfa-reference .footer-brand .brand-icon {
  background: var(--mfa-blue);
  color: var(--mfa-bg);
}

body.mfa-reference .header-search {
  background: #161f30;
  border-color: #24324d;
}

body.mfa-reference .header-search:focus-within {
  background: #0b0f19;
  border-color: var(--mfa-cyan);
  box-shadow: 0 0 0 4px rgba(6, 182, 212, 0.1);
}

body.mfa-reference .header-search input::placeholder,
body.mfa-reference .hero-search input::placeholder {
  color: #9ca3af;
}

body.mfa-reference .header-search .search-btn,
body.mfa-light.mfa-reference .header-cta {
  background: var(--mfa-blue) !important;
  color: var(--mfa-bg) !important;
}

body.mfa-light.mfa-reference .header-cta:hover {
  background: var(--mfa-blue-hover) !important;
  color: #ffffff !important;
}

body.mfa-reference .header-nav-bar {
  background: rgba(11, 15, 25, 0.92);
  border-bottom-color: #24324d;
}

body.mfa-reference .header-nav-inner a {
  color: var(--mfa-muted);
}

body.mfa-reference .header-nav-inner a:hover,
body.mfa-reference .header-nav-inner a.is-active {
  color: var(--mfa-blue);
}

body.mfa-reference .language-switcher select,
body.mfa-reference .currency-switcher select {
  background-color: #161f30;
  border-color: #24324d;
  color: var(--mfa-text);
}

/* Buttons */
body.mfa-reference .button-light,
body.mfa-reference .button-dark,
body.mfa-reference .product-card .button-dark {
  background: var(--mfa-blue) !important;
  border-color: var(--mfa-blue) !important;
  color: var(--mfa-bg) !important;
}

body.mfa-reference .button-light:hover,
body.mfa-reference .button-dark:hover,
body.mfa-reference .product-card .button-dark:hover {
  background: var(--mfa-blue-hover) !important;
  border-color: var(--mfa-blue-hover) !important;
  color: #ffffff !important;
}

body.mfa-reference .button-outline,
body.mfa-light.mfa-reference .hero .button-outline {
  background: transparent !important;
  border-color: #40516f !important;
  color: var(--mfa-text) !important;
}

body.mfa-reference .button-outline:hover,
body.mfa-light.mfa-reference .hero .button-outline:hover {
  background: #161f30 !important;
  border-color: var(--mfa-cyan) !important;
  color: #ffffff !important;
}

/* Hero */
body.mfa-reference .hero {
  background:
    radial-gradient(circle at 84% 18%, rgba(16, 185, 129, 0.13) 0%, transparent 33%),
    radial-gradient(circle at 12% 78%, rgba(6, 182, 212, 0.08) 0%, transparent 31%),
    #0b0f19;
  color: var(--mfa-text);
  border-bottom: 1px solid #24324d;
}

body.mfa-reference .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.34;
  background-image:
    linear-gradient(rgba(36, 50, 77, 0.34) 1px, transparent 1px),
    linear-gradient(90deg, rgba(36, 50, 77, 0.34) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(to bottom, black, transparent 86%);
  -webkit-mask-image: linear-gradient(to bottom, black, transparent 86%);
}

body.mfa-reference .hero .eyebrow,
body.mfa-reference .eyebrow {
  color: var(--mfa-cyan);
}

body.mfa-reference .hero h1,
body.mfa-reference .section-heading h2,
body.mfa-reference .content-page h1,
body.mfa-reference .page-hero h1,
body.mfa-reference .error-page h1,
body.mfa-reference .detail-copy h1 {
  color: var(--mfa-text);
}

body.mfa-reference .hero h1 span {
  color: var(--mfa-blue) !important;
}

body.mfa-reference .hero p,
body.mfa-reference .hero .hero-note,
body.mfa-reference .section-description,
body.mfa-reference .brand-guide-intro,
body.mfa-reference .content-page p,
body.mfa-reference .content-page li,
body.mfa-reference .article-header > p,
body.mfa-reference .article-content > p:first-child,
body.mfa-reference .article-content p,
body.mfa-reference .article-content li,
body.mfa-reference .article-meta,
body.mfa-reference .stat-label,
body.mfa-reference .stat-note {
  color: var(--mfa-muted);
}

body.mfa-reference .hero-search .header-search {
  background: #161f30;
  border-color: #24324d;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.2);
}

body.mfa-reference .hero-note a {
  color: var(--mfa-cyan);
}

body.mfa-reference .workspace {
  background: #161f30;
  border-color: #24324d;
  box-shadow: 0 0 42px rgba(16, 185, 129, 0.12), 0 34px 80px rgba(0, 0, 0, 0.34);
}

body.mfa-reference .hero-showcase:hover .workspace {
  box-shadow: 0 0 52px rgba(16, 185, 129, 0.17), 0 40px 90px rgba(0, 0, 0, 0.38);
}

body.mfa-reference .workspace-top,
body.mfa-reference .workspace-delivery {
  border-color: #24324d;
}

body.mfa-reference .workspace-brand,
body.mfa-reference .workspace-feature strong,
body.mfa-reference .workspace-tool strong {
  color: var(--mfa-text);
}

body.mfa-reference .workspace-brand .brand-icon {
  background: var(--mfa-blue);
  color: var(--mfa-bg);
}

body.mfa-reference .workspace-status,
body.mfa-reference .workspace-delivery {
  color: var(--mfa-green);
}

body.mfa-reference .workspace-feature {
  background: rgba(16, 185, 129, 0.09);
  border: 1px solid rgba(16, 185, 129, 0.16);
}

body.mfa-reference .workspace-feature small,
body.mfa-reference .workspace-feature p,
body.mfa-reference .workspace-tool small {
  color: var(--mfa-muted);
}

body.mfa-reference .workspace-tool {
  background: #0b0f19;
  border: 1px solid #24324d;
  color: var(--mfa-cyan);
}

body.mfa-reference .float-note {
  background: rgba(22, 31, 48, 0.97);
  border-color: #24324d;
  color: var(--mfa-text);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.32);
}

body.mfa-reference .float-note .mfa-icon {
  color: var(--mfa-cyan);
}

/* Metrics and sections */
body.mfa-reference .stats {
  background: #161f30;
  border-color: #24324d;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.25);
}

body.mfa-reference .stats > div {
  border-color: #24324d;
}

body.mfa-reference .stats strong,
body.mfa-reference .premium-card h3,
body.mfa-reference .brand-guide .premium-card h3,
body.mfa-reference .guide-card h3,
body.mfa-reference .category-showcase-card strong,
body.mfa-reference .product-info h3,
body.mfa-reference .product-bottom strong,
body.mfa-reference .price-label,
body.mfa-reference .trust-card h3,
body.mfa-reference .process-step h3,
body.mfa-reference .footer-column h3,
body.mfa-reference .content-page h2,
body.mfa-reference .collection-card h2,
body.mfa-reference .benefit-card h3,
body.mfa-reference .support-card strong,
body.mfa-reference .variant-main strong,
body.mfa-reference .variant-price strong,
body.mfa-reference .article-content h2,
body.mfa-reference .article-content h3,
body.mfa-reference .article-toc strong,
body.mfa-reference .about-panel h2 {
  color: var(--mfa-text);
}

body.mfa-reference .premium-card,
body.mfa-reference .brand-guide .premium-card,
body.mfa-reference .guide-card,
body.mfa-reference .category-showcase-card,
body.mfa-reference .collection-card,
body.mfa-reference .benefit-card,
body.mfa-reference .about-panel {
  background: #161f30;
  border: 1px solid #24324d;
  color: var(--mfa-text);
  box-shadow: none;
}

body.mfa-reference .category-showcase-card:hover {
  background: rgba(6, 182, 212, 0.1);
  border-color: rgba(6, 182, 212, 0.45);
}

body.mfa-reference .premium-card p,
body.mfa-reference .brand-guide .premium-card p,
body.mfa-reference .guide-card p,
body.mfa-reference .category-showcase-card span,
body.mfa-reference .product-info p,
body.mfa-reference .trust-card p,
body.mfa-reference .process-step p,
body.mfa-reference .guide-meta,
body.mfa-reference .collection-card p,
body.mfa-reference .benefit-card p,
body.mfa-reference .support-card p,
body.mfa-reference .footer-tagline,
body.mfa-reference .footer-column a,
body.mfa-reference .footer-bottom,
body.mfa-reference .footer-legal a,
body.mfa-reference .footer-credit,
body.mfa-reference .breadcrumb,
body.mfa-reference .breadcrumb a,
body.mfa-reference .variant-main span,
body.mfa-reference .variant-price small,
body.mfa-reference .article-toc a {
  color: var(--mfa-muted);
}

body.mfa-reference .brand-card-links a,
body.mfa-reference .guide-card-link a,
body.mfa-reference .section-link {
  color: var(--mfa-cyan);
}

body.mfa-reference .trust-section {
  background: #161f30;
  border: 1px solid #24324d;
}

body.mfa-reference .trust-icon {
  background: #0b0f19;
  border-color: #24324d;
  color: var(--mfa-cyan);
}

body.mfa-reference .process-step {
  border-top-color: var(--mfa-blue);
}

body.mfa-reference .process-number,
body.mfa-reference .product-mark,
body.mfa-reference .detail-art {
  color: var(--mfa-cyan);
}

/* Catalog and product cards */
body.mfa-reference .category-chip {
  background: #161f30;
  border-color: #24324d;
  color: var(--mfa-text);
}

body.mfa-reference .category-chip:hover,
body.mfa-reference .category-chip.is-active {
  background: var(--mfa-blue);
  border-color: var(--mfa-blue);
  color: var(--mfa-bg);
}

body.mfa-reference .product-card {
  background: #161f30;
  border-color: #24324d;
}

body.mfa-reference .product-card:hover {
  border-color: rgba(6, 182, 212, 0.5);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.26);
}

body.mfa-reference .product-art {
  background: #0b0f19;
  border-bottom: 1px solid #24324d;
}

body.mfa-reference .product-meta,
body.mfa-reference .price-label {
  color: var(--mfa-muted);
}

body.mfa-light.mfa-reference .stock-pill {
  background: #0b0f19 !important;
  border-color: rgba(52, 211, 153, 0.3);
  color: var(--mfa-green) !important;
}

/* Content, forms, and product pages */
body.mfa-reference .page-hero,
body.mfa-reference .support-card,
body.mfa-reference .article-toc,
body.mfa-reference .article-callout,
body.mfa-reference .review-card,
body.mfa-reference .review-form,
body.mfa-reference .error-page {
  background: #161f30;
  border: 1px solid #24324d;
  color: var(--mfa-text);
}

body.mfa-reference input,
body.mfa-reference textarea,
body.mfa-reference select {
  background: #0b0f19;
  border-color: #40516f;
  color: var(--mfa-text);
}

body.mfa-reference input:focus,
body.mfa-reference textarea:focus,
body.mfa-reference select:focus {
  border-color: var(--mfa-cyan);
  box-shadow: 0 0 0 4px rgba(6, 182, 212, 0.1);
}

body.mfa-reference label {
  color: var(--mfa-text);
}

body.mfa-reference .detail-art {
  background: #161f30;
  border: 1px solid #24324d;
}

body.mfa-reference .detail-art span {
  color: var(--mfa-cyan);
}

body.mfa-reference .detail-art small {
  color: var(--mfa-muted);
}

body.mfa-reference .variant-card {
  background: #161f30;
  border-color: #24324d;
}

body.mfa-reference .social-share {
  border-top-color: #24324d;
  color: var(--mfa-muted);
}

body.mfa-reference .article-content th {
  background: #0b0f19;
  color: var(--mfa-text);
}

body.mfa-reference .article-content td,
body.mfa-reference .article-content th {
  border-color: #24324d;
}

body.mfa-reference .article-sources {
  border-top-color: #24324d;
}

/* FAQ and footer */
body.mfa-reference .faq-item {
  background: #161f30;
  border-color: #24324d;
}

body.mfa-reference .faq-item summary,
body.mfa-reference .faq-item summary::after {
  color: var(--mfa-text);
}

body.mfa-reference .faq-item p {
  color: var(--mfa-muted);
}

body.mfa-reference .site-footer {
  background: #080c15;
  border-top: 1px solid #24324d;
}

body.mfa-reference .footer-column a:hover,
body.mfa-reference .footer-legal a:hover {
  color: var(--mfa-cyan);
}

body.mfa-reference .cookie-banner {
  background: rgba(22, 31, 48, 0.98);
  border-color: #24324d;
}

body.mfa-reference .cookie-banner button {
  background: var(--mfa-blue);
  color: var(--mfa-bg);
}

@media (max-width: 900px) {
  body.mfa-reference .header-nav-bar {
    background: rgba(11, 15, 25, 0.98);
  }
}

body.mfa-reference .optional,
body.mfa-reference .fine-print,
body.mfa-reference .muted {
  color: var(--mfa-muted);
}

/* Supplied MFA Tools logo assets */
body.mfa-reference .brand-crest {
  display: block;
  width: 48px;
  height: 48px;
  object-fit: contain;
}

body.mfa-reference .footer-logo {
  display: block;
  width: 236px;
  max-width: 72vw;
  height: auto;
}

body.mfa-reference .footer-brand {
  display: inline-flex;
  align-items: center;
}

@media (max-width: 650px) {
  body.mfa-reference .brand-crest {
    width: 44px;
    height: 44px;
  }

  body.mfa-reference .footer-logo {
    width: 214px;
  }
}

/* Dedicated products page and remaining contrast fixes */
body.mfa-reference .products-catalog {
  margin: 42px 0 64px;
}

body.mfa-reference .page-hero .hero-search {
  max-width: 680px;
  margin: 28px 0 0;
}

body.mfa-reference .notice,
body.mfa-reference .payment-method-card {
  background: #161f30;
  border: 1px solid #24324d;
  color: var(--mfa-text);
}

body.mfa-reference .notice strong,
body.mfa-reference .payment-method-header strong,
body.mfa-reference .result-line strong {
  color: var(--mfa-text);
}

body.mfa-reference .notice p,
body.mfa-reference .payment-method-card p,
body.mfa-reference .result-line span {
  color: var(--mfa-muted);
}

body.mfa-reference .notice a {
  color: var(--mfa-cyan);
}

body.mfa-reference .status-badge.status-success {
  background: #0b0f19;
  border: 1px solid rgba(52, 211, 153, 0.3);
  color: #34d399;
}

body.mfa-reference .status-badge.status-pending {
  background: #0b0f19;
  border: 1px solid rgba(6, 182, 212, 0.3);
  color: #22d3ee;
}
