/* ==========================================================================
   Aimactok Cyberpunk Override — v20260711
   Injected via nginx sub_filter </head> on every HTML response.
   - Forces cyberpunk palette + fonts site-wide (matches homepage).
   - Fixes WP Astra theme's white article cards (post pages).
   - Adds Tailscale-style post template classes: aim-breadcrumb, aim-tag,
     aim-date, aim-readtime, aim-subtitle, aim-callout, aim-cta,
     aim-disclosure, aim-share.
   All selectors use !important to win over per-page :root variables inlined
   by the Astra theme.
   ========================================================================== */

:root {
  --bg: #000000 !important;
  --bg-2: #0A0A0F !important;
  --bg-3: #14141E !important;
  --card: #0A0A0F !important;
  --card-2: #14141E !important;
  --text: #E8E8F0 !important;
  --text-body: #D4D4DC !important;
  --text-2: #9A9AA8 !important;
  --text-3: #5A5A68 !important;
  --accent: #00f5ff !important;
  --accent-2: #ff6600 !important;
  --byok-bg: #000000 !important;
  --byok-card: #0A0A0F !important;
  --byok-border: #00f5ff33 !important;
  --byok-text: #E8E8F0 !important;
  --byok-text-2: #9A9AA8 !important;
  --byok-text-3: #5A5A68 !important;
  --byok-accent: #00f5ff !important;
  --byok-positive: #00D4AA !important;
  --byok-error: #FF5470 !important;
  --border: #00f5ff33 !important;
  --border-2: #00f5ff1a !important;
  --r-md: 4px !important;
  --sans: 'Chakra Petch', -apple-system, BlinkMacSystemFont, sans-serif !important;
  --mono: 'JetBrains Mono', ui-monospace, 'SF Mono', Menlo, monospace !important;
  --byok-mono: 'JetBrains Mono', ui-monospace, monospace !important;
}

html, body { background: #000000 !important; color: #E8E8F0 !important; }
body { font-family: 'Chakra Petch', var(--sans) !important; }

/* --- 2026-07-11: Make WP Astra article cards dark (was white #FFFFFF) --- */
body.ast-separate-container,
.ast-separate-container,
.ast-separate-container .site-content,
.ast-separate-container .site-main,
.ast-separate-container .ast-article-inner,
.ast-separate-container .ast-article-single:not(.ast-related-post),
.ast-separate-container .comments-area,
.ast-separate-container .comment-respond,
.ast-separate-container .ast-archive-description,
.ast-separate-container .error-404 .page-header,
.ast-separate-container .ast-separate-container {
  background-color: #0A0A0F !important;
  color: #D4D4DC !important;
}
/* Astra separates container with white bg via var(--ast-global-color-5); neutralize. */
:root { --ast-global-color-4: #0A0A0F !important; --ast-global-color-5: #0A0A0F !important; }

h1, h2, h3, h4, h5, h6,
.entry-title, .page-title, .entry-content h1, .entry-content h2,
.entry-content h3, .entry-content h4,
.byok-header h1, .byok-header h2 {
  font-family: 'Bebas Neue', 'Chakra Petch', sans-serif !important;
  letter-spacing: 0.02em !important;
  color: #E8E8F0 !important;
}
.entry-title {
  font-size: 42px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  margin: 16px 0 12px !important;
}
.entry-content h2 {
  font-size: 28px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  color: #00f5ff !important;
  margin: 40px 0 16px !important;
  padding-top: 12px !important;
  border-top: 1px solid #00f5ff33 !important;
}
.entry-content h3 {
  font-size: 22px !important;
  line-height: 1.3 !important;
  color: #ff6600 !important;
  margin: 28px 0 12px !important;
}

a, .entry-content a, .widget a, .foot-col a, .nav-menu a {
  color: #00f5ff !important;
  text-decoration: none !important;
}
a:hover, .entry-content a:hover, .widget a:hover, .foot-col a:hover {
  color: #ff6600 !important;
}

.site, #page, .ast-plain-container, .ast-page-builder-template,
.entry-content, .entry-header, .entry-content p, .entry-content li {
  background: transparent !important;
  color: #D4D4DC !important;
}
.entry-content p, .entry-content li {
  font-size: 17px !important;
  line-height: 1.75 !important;
  margin-bottom: 18px !important;
}
.entry-content strong { color: #E8E8F0 !important; font-weight: 700 !important; }
.entry-content em { color: #9A9AA8 !important; }

.entry-content code, .entry-content pre {
  background: #0A0A0F !important;
  color: #00f5ff !important;
  border: 1px solid #00f5ff33 !important;
}

.entry-content blockquote {
  border-left: 3px solid #00f5ff !important;
  background: #0A0A0F !important;
  color: #E8E8F0 !important;
}

.site-header, .ast-above-header, .ast-below-header,
.site-header .ast-container, header.site-header,
.aim-unified-nav, .aim-unified-footer {
  background: #000000 !important;
  border-color: #00f5ff33 !important;
}

.logo-mark, .nav-signup, .btn-primary, button[type="submit"],
input[type="submit"], .entry-content table th {
  background: #00f5ff !important;
  color: #000000 !important;
  border-color: #00f5ff !important;
}

input, select, textarea, button {
  background: #0A0A0F !important;
  color: #E8E8F0 !important;
  border-color: #00f5ff33 !important;
}

.widget, .sidebar, aside, .entry-content table {
  background: #0A0A0F !important;
  color: #D4D4DC !important;
}
.entry-content table th, .entry-content table td {
  border-color: #00f5ff33 !important;
  padding: 14px 18px !important;
  color: #E8E8F0 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}
.entry-content table th {
  background: #00f5ff !important;
  color: #000000 !important;
  font-family: 'Bebas Neue', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  font-size: 14px !important;
}
.entry-content table tbody tr:nth-child(even) td {
  background: #14141E !important;
}
.entry-content table tbody tr:nth-child(odd) td {
  background: #0A0A0F !important;
}
.entry-content table tbody tr:hover td {
  background: #00f5ff1a !important;
  color: #FFFFFF !important;
}

::selection { background: #00f5ff !important; color: #000000 !important; }

/* --- 2026-07-11: Tailscale-style blog post template classes --- */
.aim-breadcrumb {
  font-size: 13px !important;
  color: #9A9AA8 !important;
  margin-bottom: 16px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
}
.aim-breadcrumb a {
  color: #00f5ff !important;
  text-decoration: none !important;
}
.aim-breadcrumb .aim-back::before { content: "← " !important; }
.aim-breadcrumb .aim-sep { color: #5A5A68 !important; }
.aim-tag {
  display: inline-block !important;
  background: #00f5ff1a !important;
  border: 1px solid #00f5ff !important;
  color: #00f5ff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  font-family: 'Chakra Petch', sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 3px 10px !important;
  border-radius: 3px !important;
}
.aim-date, .aim-readtime {
  color: #9A9AA8 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}
.aim-date::before { content: "" !important; }

.aim-subtitle {
  font-size: 18px !important;
  line-height: 1.6 !important;
  color: #9A9AA8 !important;
  font-style: italic !important;
  margin: 12px 0 28px !important;
  padding-bottom: 24px !important;
  border-bottom: 1px solid #00f5ff33 !important;
  max-width: 720px !important;
}
.aim-subtitle strong { color: #E8E8F0 !important; font-style: normal !important; }

.aim-callout {
  background: linear-gradient(135deg, #0A0A0F 0%, #14141E 100%) !important;
  border-left: 4px solid #00f5ff !important;
  padding: 24px 28px !important;
  margin: 32px 0 !important;
  color: #E8E8F0 !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  border-radius: 0 4px 4px 0 !important;
}
.aim-callout strong {
  color: #00f5ff !important;
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 18px !important;
  letter-spacing: 0.08em !important;
  margin-right: 8px !important;
}

.aim-cta {
  background: linear-gradient(135deg, rgba(0,245,255,0.12) 0%, rgba(255,102,0,0.12) 100%) !important;
  border: 1px solid #00f5ff !important;
  padding: 32px 36px !important;
  margin: 48px 0 24px !important;
  text-align: left !important;
  border-radius: 4px !important;
  color: #E8E8F0 !important;
}
.aim-cta strong {
  display: block !important;
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 24px !important;
  letter-spacing: 0.04em !important;
  color: #00f5ff !important;
  margin-bottom: 8px !important;
}
.aim-cta a {
  display: inline-block !important;
  background: #00f5ff !important;
  color: #000000 !important;
  padding: 10px 20px !important;
  border-radius: 3px !important;
  font-weight: 700 !important;
  font-family: 'Chakra Petch', sans-serif !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  margin-top: 12px !important;
  text-decoration: none !important;
}
.aim-cta a:hover { background: #ff6600 !important; color: #000 !important; }

.aim-disclosure {
  color: #5A5A68 !important;
  font-size: 12px !important;
  font-style: italic !important;
  margin-top: 32px !important;
  padding-top: 16px !important;
  border-top: 1px solid #00f5ff1a !important;
  line-height: 1.5 !important;
}

.aim-share {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 32px 0 !important;
  padding: 16px 0 !important;
  border-top: 1px solid #00f5ff33 !important;
  border-bottom: 1px solid #00f5ff33 !important;
  color: #9A9AA8 !important;
  font-size: 14px !important;
}
.aim-share strong {
  font-family: 'Bebas Neue', sans-serif !important;
  letter-spacing: 0.1em !important;
  color: #E8E8F0 !important;
  font-size: 14px !important;
  margin-right: 4px !important;
}
.aim-share a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border: 1px solid #00f5ff33 !important;
  border-radius: 3px !important;
  font-size: 12px !important;
  color: #00f5ff !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  font-weight: 600 !important;
}
.aim-share a:hover { border-color: #00f5ff !important; background: #00f5ff1a !important; }

/* Article meta (author byline) */
.aim-byline {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 12px !important;
  color: #9A9AA8 !important;
  font-size: 14px !important;
  margin: 12px 0 24px !important;
}
.aim-byline .aim-avatar {
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #00f5ff 0%, #ff6600 100%) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: 'Bebas Neue', sans-serif !important;
  color: #000 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
.aim-byline .aim-author { color: #E8E8F0 !important; font-weight: 600 !important; }
.aim-byline .aim-dot { color: #5A5A68 !important; }