/* SkyRavens Vision: semantic palettes, scoped to theme components. */
html.sr-dark {
  color-scheme: dark;
  --sr-bg: #090d14;
  --sr-surface: #121923;
  --sr-surface-2: #1b2532;
  --sr-text: #f1f5f9;
  --sr-muted: #b3bfce;
  --sr-accent: #b8ff3d;
  --sr-accent-alt: #6ae4ff;
  --sr-action-bg: #b8ff3d;
  --sr-action-text: #10150b;
  --sr-line: #455569;
  --sr-soft: rgba(255,255,255,.055);
  --sr-shadow: 0 16px 48px rgba(0,0,0,.24);
}
html.sr-light {
  color-scheme: light;
  --sr-bg: #f5f7fa;
  --sr-surface: #ffffff;
  --sr-surface-2: #eaf0f5;
  --sr-text: #172231;
  --sr-muted: #4e6073;
  --sr-accent: #176b3a;
  --sr-accent-alt: #075985;
  --sr-action-bg: #176b3a;
  --sr-action-text: #ffffff;
  --sr-line: #8190a0;
  --sr-soft: rgba(23,34,49,.045);
  --sr-shadow: 0 16px 48px rgba(23,34,49,.09);
}
html:is(.sr-light,.sr-dark) body {
  color: var(--sr-text);
  background: var(--sr-bg);
  background-attachment: scroll;
}
html:is(.sr-light,.sr-dark) body::before { display: none; }
html:is(.sr-light,.sr-dark) :is(.sr-header,.sr-header.is-scrolled,.sr-nav,.sr-footer,.sr-search-panel) {
  background: var(--sr-surface);
  color: var(--sr-text);
  border-color: var(--sr-line);
}
html:is(.sr-light,.sr-dark) :is(.sr-sidebar-box,.sr-gear-section,.sr-academy-home,.sr-course-hero,.dra-card,.drr-box) {
  background: var(--sr-surface);
  color: var(--sr-text);
  border-color: var(--sr-line);
}
html:is(.sr-light,.sr-dark) :is(.sr-article-content,.sr-article-content blockquote,.sr-topic-nav a) { color: var(--sr-text); }
html:is(.sr-light,.sr-dark) :is(.sr-post-meta,.sr-footer p,.sr-footer li,.sr-product-description,.sr-offer-description) { color: var(--sr-muted); }
html:is(.sr-light,.sr-dark) :is(.sr-button,.sr-nav-cta,.sr-affiliate-button,.sr-donation-actions a,.sr-offer-button,.search-submit,.sr-ai-guide button,.dra-badge) {
  background: var(--sr-action-bg);
  color: var(--sr-action-text);
  border-color: var(--sr-action-bg);
}
html:is(.sr-light,.sr-dark) .sr-outline-button,
html:is(.sr-light,.sr-dark) .sr-buttons-outline :is(.sr-button,.sr-nav-cta),
html:is(.sr-light,.sr-dark) .sr-buttons-soft :is(.sr-button,.sr-nav-cta),
html:is(.sr-light,.sr-dark) .sr-button-outline,
html:is(.sr-light,.sr-dark) .sr-button.is-outline {
  background: transparent !important;
  color: var(--sr-text) !important;
  border: 1px solid var(--sr-line);
}
html:is(.sr-light,.sr-dark) :is(.sr-ai-guide textarea,.sr-search-panel input,.sr-site-content input,.sr-site-content textarea,.sr-site-content select,.comment-form input,.comment-form textarea) {
  background: var(--sr-surface);
  color: var(--sr-text);
  border: 1px solid var(--sr-line);
  caret-color: var(--sr-accent);
}
html:is(.sr-light,.sr-dark) :is(input,textarea)::placeholder { color: var(--sr-muted); opacity: 1; }
html:is(.sr-light,.sr-dark) :is(.dra-offers a,.sr-offer-row,.sr-product-specs td,.sr-product-specs th) { border-color: var(--sr-line); }
html:is(.sr-light,.sr-dark) .drr-columns > div { background: var(--sr-surface-2); }
html:is(.sr-light,.sr-dark) .drr-criteria i { background: var(--sr-line); }
html:is(.sr-light,.sr-dark) .sr-announcement { background: #b8ff3d; color: #10150b; }
html:is(.sr-light,.sr-dark) .sr-announcement a { color: inherit; }
/* Photo heroes stay dark islands; do not invert images or authored Elementor colors. */
html:is(.sr-light,.sr-dark) .sr-demo-hero {
  --sr-text: #f1f5f9;
  --sr-muted: #d2dce8;
  --sr-accent: #b8ff3d;
  --sr-accent-alt: #6ae4ff;
  --sr-action-bg: #b8ff3d;
  --sr-action-text: #10150b;
  --sr-line: #a4b3c5;
  color: var(--sr-text);
  background-color: #090d14;
}
html:is(.sr-light,.sr-dark) :is(a,button,input,textarea,select,summary):focus-visible {
  outline: 3px solid var(--sr-accent-alt);
  outline-offset: 4px;
}
html:is(.sr-light,.sr-dark) ::selection { background: var(--sr-action-bg); color: var(--sr-action-text); }
@media (max-width: 768px) {
  html:is(.sr-light,.sr-dark) .sr-header { backdrop-filter: none; -webkit-backdrop-filter: none; }
}
@media (prefers-reduced-motion: reduce) {
  html:is(.sr-light,.sr-dark) { scroll-behavior: auto; }
  html:is(.sr-light,.sr-dark) :is(.sr-button,.sr-nav-cta,.dra-card,.sr-theme-toggle) { transition: none; }
}
