/* Rainbow Amplification Theme (Dark + Taxi Yellow/Purple) */
:root {
  --radius: 16px;
  --spacing: 16px;
  --transition: color 0.4s ease, background-color 0.4s ease, border-color 0.4s ease;
}




html, body { height: 100%; }
body {
  margin: 0;
  background-color: var(--bg);
  color: var(--fg);
  font: 16px/1.5 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, "Apple Color Emoji","Segoe UI Emoji";
  transition: var(--transition);
}

a { color: #FFD300; text-decoration: underline; }
a:hover { opacity: 0.85; }

/* Make common blocks adapt */
h1,h2,h3,h4,h5,h6,p,span,li,small,strong,em,header,footer,nav,section,article,div { color: var(--fg); }

/* Optional helpers (only affect elements that use these classes) */
.card, .panel, .box {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  transition: var(--transition);
}
.border-theme { border-color: var(--border); }
.bg-theme { background: var(--card-bg); }

/* Button for toggle */




@media (prefers-color-scheme: light) {
  body:not(.dark-theme):not(.light-theme) {
    background-color: #000000;
    color: #FFD300;
  }
}

/* Icon-only toggle variant */
.btn-theme-toggle.icon-only {
  width: 36px; height: 36px; padding: 0;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 999px;
}
.btn-theme-toggle.icon-only .icon-sun { pointer-events: none; }

/* Place toggle at far right of header if a header exists */
header, .site-header, nav {
  position: relative;
}



/* THEME-DRIVEN TOGGLE COLORS */





/* Global text color override */
body, h1, h2, h3, h4, h5, h6, p, li, a, span, div, footer, header, nav, section, article {
    color: #FFD800 !important;
}


/* === Rainbow Amplification Final Theme Overrides (v19) === */

/* Base colors */
:root {
  --ra-yellow: #FFD800;
  --ra-yellow-weak: rgba(255,216,0,0.75);
  --ra-black: #000000;
  --ra-dark: #0a0a0a;
  --ra-border: #222;
  --ra-shadow: rgba(0,0,0,0.35);
}

/* Body + default background */
html, body {
  background: var(--ra-black) !important;
  color: var(--ra-yellow) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Typography */
h1, h2, h3, h4, h5, h6,
p, li, a, span, small, strong, em, blockquote, label, time, figcaption {
  color: var(--ra-yellow) !important;
}

/* Links */
a, a:visited {
  color: var(--ra-yellow) !important;
  text-decoration-color: var(--ra-yellow-weak) !important;
}
a:hover, a:focus {
  text-decoration: underline;
  text-decoration-thickness: .12em;
}

/* Nav + headers + footers */
header, nav, .navbar, .site-header, .site-nav, footer, .site-footer, .hero, .banner {
  background: var(--ra-dark) !important;
  color: var(--ra-yellow) !important;
  border-color: var(--ra-border) !important;
}

/* Cards / sections / articles */
section, article, .card, .panel, .box, .tile, .content, .container {
  background: transparent !important;
  color: var(--ra-yellow) !important;
  border-color: var(--ra-border) !important;
}

/* Buttons */
button, .btn, input[type="button"], input[type="submit"], input[type="reset"] {
  background: transparent !important;
  color: #FFD300 !important;
  border: 1.5px solid var(--ra-yellow) !important;
  padding: .6em 1.1em !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  transition: transform .08s ease, background .15s ease, color .15s ease;
}
button:hover, .btn:hover, input[type="submit"]:hover {
  background: var(--ra-yellow) !important;
  color: #FFD300 !important;
  transform: translateY(-1px);
}
button:active, .btn:active, input[type="submit"]:active {
  transform: translateY(0);
}

/* Forms */
input, select, textarea {
  background: #0f0f0f !important;
  color: var(--ra-yellow) !important;
  border: 1px solid var(--ra-border) !important;
}
input::placeholder, textarea::placeholder {
  color: var(--ra-yellow-weak) !important;
}

/* Tables */
table {
  color: var(--ra-yellow) !important;
  border-color: var(--ra-border) !important;
}
th, td {
  border-color: var(--ra-border) !important;
}
thead, tfoot {
  background: #0b0b0b !important;
}

/* Lists / separators */
hr {
  border-color: var(--ra-border) !important;
}
ul li::marker, ol li::marker {
  color: var(--ra-yellow) !important;
}

/* Icons & SVG */
svg, svg * {
  fill: currentColor !important;
  stroke: currentColor !important;
  color: var(--ra-yellow) !important;
}

/* Images remain untouched for fidelity */

/* Focus rings (accessibility) */
:focus-visible {
  outline: 2px dashed var(--ra-yellow) !important;
  outline-offset: 2px !important;
  border-radius: 6px !important;
}

/* Selections */
::selection {
  background: var(--ra-yellow);
  color: #000;
}
::-moz-selection {
  background: var(--ra-yellow);
  color: #000;
}

/* Badges / pills / tags */
.badge, .tag, .pill {
  background: transparent !important;
  border: 1px solid var(--ra-yellow) !important;
  color: var(--ra-yellow) !important;
}

/* Code blocks */
code, pre, kbd, samp {
  background: #0f0f0f !important;
  color: var(--ra-yellow) !important;
  border: 1px solid var(--ra-border) !important;
}

/* Remove any leftover theme toggle spacing */
.theme-toggle, #theme-toggle, [data-theme-toggle] {
  display: none !important;
}

/* Optional: smooth scroll and nicer animations without flicker */
html {
  scroll-behavior: smooth;
}

