/* ===============================================
   DEATHLAB NUCLEAR OVERRIDE
   Absolutely ensures NO element escapes DeathLAB
   =============================================== */

/* Nuclear-level global override for ALL elements */
*,
*::before,
*::after {
  /* Force any remaining light backgrounds to dark */
  background-color: transparent !important;
}

/* Body-level overrides for every possible template */
body,
html {
  background: var(--death-black) !important;
  background-color: var(--death-black) !important;
  color: var(--death-text) !important;
}

/* Catch ALL possible page containers */
.site-wrapper,
.site-main,
.main,
.content,
.container,
main,
section,
article,
div.page,
div.post,
div.paged,
div.tag,
div.author,
div.error,
div.signin,
div.signup,
div.membership {
  background: transparent !important;
  background-color: transparent !important;
}

/* Force specific content areas to use DeathLAB backgrounds */
.content-area,
.main-content,
.post-content,
.page-content,
.article-content,
.gh-content,
.kg-prose {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-border) !important;
  border-radius: var(--radius-md) !important;
  padding: 2rem !important;
  margin: 1rem 0 !important;
}

/* Nuclear text color override */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  color: var(--death-text) !important;
  font-family: var(--font-headings) !important;
}

p, span, div, li, td, th, small {
  color: var(--death-text-secondary) !important;
}

/* Links nuclear override */
a:not(.btn):not(.button):not([class*="btn"]) {
  color: var(--death-chrome) !important;
  border-bottom-color: transparent !important;
}

a:not(.btn):not(.button):not([class*="btn"]):hover {
  color: var(--death-red) !important;
  border-bottom-color: var(--death-red) !important;
}

/* Forms nuclear override */
input:not([type="submit"]):not([type="button"]),
textarea,
select {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-border) !important;
  color: var(--death-text) !important;
  border-radius: var(--radius) !important;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--death-red) !important;
  box-shadow: 0 0 0 2px rgba(216,35,42,0.2) !important;
  outline: none !important;
}

/* Buttons nuclear override */
button,
input[type="submit"],
input[type="button"],
.btn,
.button,
[class*="btn-"],
[class*="button-"] {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-chrome) !important;
  color: var(--death-chrome) !important;
  font-family: var(--font-headings) !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  transition: all 0.3s ease !important;
  border-radius: var(--radius) !important;
  padding: 0.75rem 1.5rem !important;
}

button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.btn:hover,
.button:hover,
[class*="btn-"]:hover,
[class*="button-"]:hover {
  background: var(--death-black-tertiary) !important;
  border-color: var(--death-red) !important;
  color: var(--death-red) !important;
}

/* Primary buttons */
.btn-primary,
.button-primary,
[class*="primary"] {
  background: var(--death-red) !important;
  border-color: var(--death-red) !important;
  color: var(--death-black) !important;
}

.btn-primary:hover,
.button-primary:hover,
[class*="primary"]:hover {
  background: var(--death-red-hover) !important;
  color: var(--death-black) !important;
}

/* Cards nuclear override */
.card,
.post-card,
.article-card,
.content-card,
[class*="card-"],
[class*="-card"] {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-border) !important;
  border-radius: var(--radius-md) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.1), 0 8px 32px rgba(0,0,0,0.8) !important;
}

/* Navigation nuclear override */
nav,
.nav,
.navigation,
.navbar,
.header,
.site-header {
  background: var(--death-black) !important;
  border-bottom: 1px solid var(--death-border) !important;
}

nav a,
.nav a,
.navigation a,
.navbar a {
  color: var(--death-chrome) !important;
  font-family: var(--font-headings) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

nav a:hover,
.nav a:hover,
.navigation a:hover,
.navbar a:hover {
  color: var(--death-red) !important;
}

/* Footer nuclear override */
footer,
.footer,
.site-footer {
  background: var(--death-black) !important;
  border-top: 1px solid var(--death-border) !important;
  color: var(--death-text-muted) !important;
}

/* Meta information nuclear override */
.meta,
.post-meta,
.article-meta,
.date,
.category,
.tag,
.author-meta,
[class*="meta-"] {
  color: var(--death-text-muted) !important;
  font-family: var(--font-body) !important;
  font-size: 0.75rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
}

/* Images nuclear override - desaturate everything */
img:not(.logo):not([data-logo]) {
  filter: grayscale(100%) contrast(1.1) !important;
  border-radius: var(--radius) !important;
}

/* Tables nuclear override */
table {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-border) !important;
  border-radius: var(--radius) !important;
}

th {
  background: var(--death-black-tertiary) !important;
  color: var(--death-text) !important;
  border-bottom: 1px solid var(--death-border) !important;
}

td {
  color: var(--death-text-secondary) !important;
  border-bottom: 1px solid var(--death-border-subtle) !important;
}

/* Code blocks nuclear override */
code,
pre {
  background: var(--death-black-tertiary) !important;
  color: var(--death-chrome) !important;
  border: 1px solid var(--death-border) !important;
  border-radius: var(--radius) !important;
}

/* Blockquotes nuclear override */
blockquote {
  background: var(--death-black-secondary) !important;
  border-left: 4px solid var(--death-red) !important;
  color: var(--death-text-secondary) !important;
  padding: 1rem 1.5rem !important;
  margin: 1rem 0 !important;
}

/* Pagination nuclear override */
.pagination,
.pagination a,
.pagination span {
  background: var(--death-black-secondary) !important;
  color: var(--death-chrome) !important;
  border: 1px solid var(--death-border) !important;
}

.pagination a:hover,
.pagination .current {
  background: var(--death-red) !important;
  color: var(--death-black) !important;
  border-color: var(--death-red) !important;
}

/* Search forms nuclear override */
.search-form,
.search-input,
[class*="search-"] {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-border) !important;
  color: var(--death-text) !important;
}

/* Sidebar nuclear override */
.sidebar,
.aside,
[class*="sidebar-"] {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-border) !important;
}

/* Comments nuclear override */
.comments,
.comment,
[class*="comment-"] {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-border) !important;
  color: var(--death-text-secondary) !important;
}

/* Featured content nuclear override */
.featured,
.highlight,
[class*="featured-"],
[class*="highlight-"] {
  background: var(--death-black-secondary) !important;
  border: 1px solid var(--death-border) !important;
}

/* Ghost-specific overrides */
.gh-head,
.gh-foot,
.gh-page,
.gh-post,
.gh-article,
.gh-content,
.gh-canvas {
  background: transparent !important;
  color: var(--death-text-secondary) !important;
}

/* Force all ::before and ::after elements */
*::before,
*::after {
  background-color: transparent !important;
  color: inherit !important;
}

/* Remove any bright box shadows */
* {
  box-shadow: none !important;
}

/* Reapply only DeathLAB shadows to appropriate elements */
.card,
.post-card,
.quiz-card,
.vendors-card,
[class*="card-"] {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.1), 0 8px 32px rgba(0,0,0,0.8) !important;
}

button:hover,
.btn:hover {
  box-shadow: 0 4px 16px rgba(216,35,42,0.2) !important;
}

/* Responsive text scaling for mobile */
@media (max-width: 768px) {
  h1, .h1 { font-size: 2rem !important; }
  h2, .h2 { font-size: 1.75rem !important; }
  h3, .h3 { font-size: 1.5rem !important; }
}

/* Accessibility: High contrast mode support */
@media (prefers-contrast: high) {
  :root {
    --death-text: #FFFFFF !important;
    --death-border: rgba(255,255,255,0.3) !important;
    --death-red: #FF4444 !important;
  }
}

/* Print styles */
@media print {
  * {
    background: white !important;
    color: black !important;
    box-shadow: none !important;
  }
}