/**
 * YOOAdmin Dark Engine v2 — base layer.
 *
 * Cheap, broad foundation that covers ~80% for free:
 *  1. color-scheme: dark  -> native form controls, scrollbars, spinners.
 *  2. surface baseline    -> content shell mapped to core tokens.
 *
 * Scope is the single context class added by dark-engine.php (yp-dark-v2),
 * present on every v2 screen (wp-core + plugin). High-specificity scope + load
 * order beat unlayered core CSS without !important. (WP core CSS is unlayered,
 * so @layer would lose to it — we rely on specificity instead.)
 */

html[data-yooadmin-studio-color-mode-effective='dark'] body.wp-admin.yp-dark-v2 {
  color-scheme: dark;
}

html[data-yooadmin-studio-color-mode-effective='dark']
  body.wp-admin.yp-dark-v2
  :is(#wpcontent, #wpbody, #wpbody-content) {
  background: transparent;
}

/* Text selection — default browser highlight is a light blue box that renders
   dark-on-light (invisible/unreadable) over dark surfaces. Give every v2 screen
   a single, high-contrast selection so selected text stays legible everywhere
   (inputs, code editors, list tables, plugin UIs). */
html[data-yooadmin-studio-color-mode-effective='dark']
  body.wp-admin.yp-dark-v2 ::selection {
  background: var(--yp-dark-accent);
  color: var(--yp-dark-accent-contrast);
}

html[data-yooadmin-studio-color-mode-effective='dark']
  body.wp-admin.yp-dark-v2 ::-moz-selection {
  background: var(--yp-dark-accent);
  color: var(--yp-dark-accent-contrast);
}

/* Caret — many plugin inputs/textareas inherit a dark caret on dark fields,
   making the typing position invisible. Anchor the caret to readable text color
   wherever the user types. (CodeMirror draws its own caret element; that is
   handled per-context in the editor layers.) */
html[data-yooadmin-studio-color-mode-effective='dark']
  body.wp-admin.yp-dark-v2
  :is(input, textarea, select, [contenteditable], [contenteditable='true']) {
  caret-color: var(--yp-dark-text);
}
