/**
 * SlimBar - High Contrast Dark Mode
 * @version 1.0.0
 */

/* High Contrast Dark Mode - WCAG AAA compliant (7:1+ ratios) */
:root.az-contrast-dark,
:root.az-contrast-dark body {
  background-color: #000000 !important;
  color: #ffffff !important;
}

/* Text elements */
:root.az-contrast-dark p,
:root.az-contrast-dark span,
:root.az-contrast-dark div,
:root.az-contrast-dark li,
:root.az-contrast-dark td,
:root.az-contrast-dark th,
:root.az-contrast-dark label,
:root.az-contrast-dark figcaption,
:root.az-contrast-dark caption,
:root.az-contrast-dark cite,
:root.az-contrast-dark blockquote,
:root.az-contrast-dark q,
:root.az-contrast-dark address,
:root.az-contrast-dark time,
:root.az-contrast-dark mark {
  background-color: #000000 !important;
  color: #ffffff !important;
}

/* Headings */
:root.az-contrast-dark h1,
:root.az-contrast-dark h2,
:root.az-contrast-dark h3,
:root.az-contrast-dark h4,
:root.az-contrast-dark h5,
:root.az-contrast-dark h6 {
  background-color: #000000 !important;
  color: #ffffff !important;
}

/* Links */
:root.az-contrast-dark a,
:root.az-contrast-dark a:link,
:root.az-contrast-dark a:visited {
  background-color: transparent !important;
  color: #ffff00 !important;
  text-decoration: underline !important;
}

:root.az-contrast-dark a:hover,
:root.az-contrast-dark a:focus,
:root.az-contrast-dark a:active {
  background-color: #ffff00 !important;
  color: #000000 !important;
}

/* Form elements */
:root.az-contrast-dark input,
:root.az-contrast-dark textarea,
:root.az-contrast-dark select,
:root.az-contrast-dark button {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 2px solid #ffffff !important;
}

:root.az-contrast-dark input:focus,
:root.az-contrast-dark textarea:focus,
:root.az-contrast-dark select:focus,
:root.az-contrast-dark button:focus {
  outline: 3px solid #ffff00 !important;
  outline-offset: 2px !important;
}

/* Images - add border for visibility */
:root.az-contrast-dark img {
  border: 2px solid #ffffff !important;
  opacity: 1 !important;
}

:root.az-contrast-dark svg {
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

/* Tables */
:root.az-contrast-dark table,
:root.az-contrast-dark tr,
:root.az-contrast-dark td,
:root.az-contrast-dark th {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #ffffff !important;
}

/* Code and preformatted text */
:root.az-contrast-dark code,
:root.az-contrast-dark pre,
:root.az-contrast-dark kbd,
:root.az-contrast-dark samp {
  background-color: #1a1a1a !important;
  color: #ffffff !important;
  border: 1px solid #ffffff !important;
}

/* Navigation and menus */
:root.az-contrast-dark nav,
:root.az-contrast-dark .nav,
:root.az-contrast-dark .menu,
:root.az-contrast-dark .navigation {
  background-color: #000000 !important;
}

:root.az-contrast-dark nav a,
:root.az-contrast-dark .nav a,
:root.az-contrast-dark .menu a,
:root.az-contrast-dark .navigation a {
  color: #ffff00 !important;
}

/* Buttons */
:root.az-contrast-dark button,
:root.az-contrast-dark [role="button"],
:root.az-contrast-dark input[type="button"],
:root.az-contrast-dark input[type="submit"],
:root.az-contrast-dark input[type="reset"] {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 2px solid #ffffff !important;
}

:root.az-contrast-dark button:hover,
:root.az-contrast-dark [role="button"]:hover,
:root.az-contrast-dark input[type="button"]:hover,
:root.az-contrast-dark input[type="submit"]:hover {
  background-color: #ffffff !important;
  color: #000000 !important;
}

/* Skip links and focus indicators */
:root.az-contrast-dark .skip-link,
:root.az-contrast-dark [href^="#main"],
:root.az-contrast-dark [href^="#content"] {
  background-color: #ffff00 !important;
  color: #000000 !important;
}

/* Blockquotes */
:root.az-contrast-dark blockquote {
  border-left: 4px solid #ffff00 !important;
}

/* Horizontal rules */
:root.az-contrast-dark hr {
  border-color: #ffffff !important;
  background-color: #ffffff !important;
}

/* Selection */
:root.az-contrast-dark ::selection {
  background-color: #ffff00 !important;
  color: #000000 !important;
}

/* Placeholder text */
:root.az-contrast-dark ::placeholder {
  color: #cccccc !important;
  opacity: 1 !important;
}

/* Lists */
:root.az-contrast-dark ul,
:root.az-contrast-dark ol {
  background-color: #000000 !important;
}

/* Articles, sections, aside */
:root.az-contrast-dark article,
:root.az-contrast-dark section,
:root.az-contrast-dark aside,
:root.az-contrast-dark header,
:root.az-contrast-dark footer,
:root.az-contrast-dark main {
  background-color: #000000 !important;
  color: #ffffff !important;
}

/* Widgets and sidebars */
:root.az-contrast-dark .widget,
:root.az-contrast-dark .sidebar,
:root.az-contrast-dark [class*="widget"] {
  background-color: #000000 !important;
  color: #ffffff !important;
}

/* Focus outline override - ensure visibility */
:root.az-contrast-dark :focus,
:root.az-contrast-dark :focus-visible {
  outline: 3px solid #ffff00 !important;
  outline-offset: 3px !important;
}

/* Ensure high contrast toolbar compatibility */
:root.az-contrast-dark .az-toolbar {
  --az-bg: #000000;
  --az-fg: #ffffff;
  --az-border: #ffffff;
  --az-accent: #ffff00;
}

:root.az-contrast-dark .az-trigger {
  background-color: #000000 !important;
  border: 2px solid #ffffff !important;
}

:root.az-contrast-dark .az-panel {
  background-color: #000000 !important;
  border: 2px solid #ffffff !important;
}
