/* ================================================================
   borland-mkdocs.css — Borland DOS colour theme
   For: MkDocs Material
   Scope: generic reusable stylesheet for sites using scheme: dos-dark and dos-light

   Recommended mkdocs.yml fragment:

     theme:
       name: material
       palette:
         - scheme: dos-dark
           primary: blue
           accent: yellow
           toggle:
             icon: material/weather-sunny
             name: Switch to light mode
         - scheme: dos-light
           primary: blue
           accent: yellow
           toggle:
             icon: material/weather-night
             name: Switch to dark mode
       font:
         text: Roboto Mono
         code: Roboto Mono

   This is a fully custom Material colour scheme. It deliberately
   keeps MkDocs Material's component layout, spacing, shadows,
   and interaction design intact; this file supplies palette,
   content typography colours, code-copy icon colours, and the
   colours required for a custom dos-dark/dos-light scheme.

   Material only
   provides automatic dark-base styling for the built-in 'slate'
   schemes, so the key background, foreground, code, footer, link,
   search, and navigation variables are defined explicitly here.

   Palette model:
     CGA 16-colour values for chrome, borders, badges, and accents.
     Extended xterm-256 values for readable text and syntax colours.
     Borland blue surface ramp from --borland-bg to --borland-panel-3.

   Surface ramp:
     --borland-bg       --borland-bg  page background
     --borland-bg-2     --borland-bg-2  alternate rows / subtle surfaces
     --borland-panel    --borland-panel  admonition/callout background
     --borland-panel-2  --borland-panel-2  tabs / inline code / secondary chrome
     --borland-panel-3  --borland-panel-3  header / footer / block code
   ================================================================ */


/* ── DOS palette variables ─────────────────────────────────────── */
/* Defined on :root so all selectors can reference them directly.
   Extended and ramp values mirror borland-obsidian.css exactly.   */

:root {
  /* CGA 16-colour */
  --dos-black:           #000000;
  --dos-blue:            #0000aa;
  --dos-green:           #00aa00;
  --dos-cyan:            #00aaaa;
  --dos-red:             #aa0000;
  --dos-magenta:         #aa00aa;
  --dos-brown:           #aa5500;
  --dos-light-gray:      #aaaaaa;
  --dos-dark-gray:       #555555;  /* "invisible" level — disabled states and ghost chrome only */
  --dos-bright-blue:     #5555ff;
  --dos-bright-green:    #55ff55;
  --dos-bright-cyan:     #55ffff;
  --dos-bright-red:      #ff5555;
  --dos-bright-magenta:  #ff55ff;
  --dos-yellow:          #ffff55;
  --dos-white:           #ffffff;

  /* Extended palette — xterm-256, tuned for blue backgrounds */
  --dos-periwinkle:  #aab8ff;  /* xterm 147 — abstract/summary callouts  */
  --dos-body-text:   #c8c8c8;  /* prose text — close to DOS light grey    */
  --dos-md-muted:    #b0c0d0;  /* de-emphasised text, muted nav, passed   */
  --dos-md-h1:       #ff5c57;  /* H1 — warm red                           */
  --dos-md-h2:       #ffd75e;  /* H2 — golden yellow                      */
  --dos-md-h3:       #87d787;  /* H3 — sage green                         */
  --dos-md-h4:       #56d4dd;  /* H4 — sky cyan                           */
  --dos-md-h5:       #66b3ff;  /* H5 — cornflower blue                    */
  --dos-md-h6:       #b085ff;  /* H6 — soft violet                        */
  --dos-ext-amber:   #ffaf5f;  /* xterm 215 — strings, attr values        */
  --dos-ext-slate:   #7fa7cf;  /* xterm 67  — comments, recedes on blue   */
  --dos-ext-sky:     #87d7ff;  /* xterm 117 — types, class names          */
  --dos-ext-lilac:   #af87ff;  /* xterm 141 — numbers, constants          */
  --dos-ext-tan:     #d7af87;  /* xterm 180 — HTML/XML attributes         */
  --dos-ext-pink:    #ff87af;  /* xterm 211 — italic, meta, preprocessor  */
  --dos-ext-teal:    #00af87;  /* xterm 36  — inserted / diff added       */

  /* Borland blue surface ramp */
  --borland-bg:       #0000aa;
  --borland-bg-2:     #000099;
  --borland-panel:    #000088;
  --borland-panel-2:  #000077;
  --borland-panel-3:  #000066;

  /* Borland Paper surface ramp for dos-light */
  --borland-paper-bg:          #f3f0dc;
  --borland-paper-surface:     #fffbe8;
  --borland-paper-surface-2:   #eee9cf;
  --borland-paper-panel:       #e8e4c8;
  --borland-paper-panel-2:     #ddd6b8;
  --borland-paper-panel-3:     #cfc6a5;
  --borland-paper-ink:         #1f2430;
  --borland-paper-muted:       #5c6570;
  --borland-paper-rule:        #9d957a;
  --borland-paper-link:        #005f6b;  /* muted teal — paper link / H4               */
  --borland-paper-link-hover:  #7a3d00;  /* brown — paper accent, warning, hover        */
  --borland-paper-code-bg:     #cfc6a5;
  --borland-paper-code-border: #b8af93;

  /* Borland Paper heading and admonition colours
     Paper-mode equivalents of the CGA originals, darkened for
     readability on the warm surface. Not used in dark mode.        */
  --borland-paper-h2:         #8a4a00;  /* darkened CGA brown  — paper amber           */
  --borland-paper-green:      #006f00;  /* darkened CGA green  — tip/success/H3        */
  --borland-paper-violet:     #7a2f8a;  /* darkened CGA magenta — question/H6          */
  --borland-paper-periwinkle: #394b9a;  /* darkened CGA blue   — abstract/tldr         */

  /* Role-based surfaces — keep dark/light hierarchy mirrored */
  --borland-dark-surface-page:       var(--borland-bg);
  --borland-dark-surface-panel:      var(--borland-panel);
  --borland-dark-surface-secondary:  var(--borland-panel-2);
  --borland-dark-surface-strong:     var(--borland-panel-3);

  --borland-light-surface-page:      var(--borland-paper-bg);
  --borland-light-surface-panel:     var(--borland-paper-panel);
  --borland-light-surface-secondary: var(--borland-paper-panel-2);
  --borland-light-surface-strong:    var(--borland-paper-panel-3);


  /* Functional colour tokens — extracted so scheme changes are made here, not in rules. */
  --theme-hex-0000aa: #0000aa;
  --theme-hex-000066: #000066;
  --theme-hex-000088: #000088;
  --theme-hex-000077: #000077;
  --theme-hex-b8b8b8: #b8b8b8;
  --theme-hex-ffffff: #ffffff;
  --theme-hex-ffff55: #ffff55;
  --theme-hex-55ffff: #55ffff;
  --theme-rgb-0-0-102-0-70: rgba(0, 0, 102, 0.70);
  --theme-rgb-170-170-170-0-70: rgba(170, 170, 170, 0.70);
  --theme-rgb-255-255-85-0-10: rgba(255, 255, 85, 0.10);
  --theme-hex-5f87af: #5f87af;
  --theme-hex-555555: #555555;
  --theme-hex-7f7f7f: #7f7f7f;
  --theme-rgb-0-0-170-0-70: rgba(0, 0, 170, 0.70);
  --theme-rgb-0-0-170-0-30: rgba(0, 0, 170, 0.30);
  --theme-rgb-0-0-170-0-12: rgba(0, 0, 170, 0.12);
  --theme-rgb-255-255-85-0-28: rgba(255, 255, 85, 0.28);
  --theme-hex-ffaf5f: #ffaf5f;
  --theme-hex-af87ff: #af87ff;
  --theme-hex-ff87af: #ff87af;
  --theme-hex-66b3ff: #66b3ff;
  --theme-hex-87d7ff: #87d7ff;
  --theme-hex-aaaaaa: #aaaaaa;
  --theme-hex-aab8ff: #aab8ff;
  --theme-rgb-255-85-85-0-18: rgba(255, 85, 85, 0.18);
  --theme-rgb-0-175-135-0-18: rgba(0, 175, 135, 0.18);
  --theme-rgb-170-170-170-0-10: rgba(170, 170, 170, 0.10);
  --theme-rgb-170-170-170-0-05: rgba(170, 170, 170, 0.05);
  --theme-rgb-170-170-170-0-46: rgba(170, 170, 170, 0.46);
  --theme-rgb-170-170-170-0-74: rgba(170, 170, 170, 0.74);
  --theme-hex-9fb3c8: #9fb3c8;
  --theme-hex-5555ff: #5555ff;
  --theme-rgb-85-85-255-0-12: rgba(85, 85, 255, 0.12);
  --theme-rgb-85-255-255-0-12: rgba(85, 255, 255, 0.12);
  --theme-hex-55ff55: #55ff55;
  --theme-rgb-85-255-85-0-12: rgba(85, 255, 85, 0.12);
  --theme-rgb-255-255-85-0-12: rgba(255, 255, 85, 0.12);
  --theme-hex-ff5555: #ff5555;
  --theme-rgb-255-85-85-0-12: rgba(255, 85, 85, 0.12);
  --theme-hex-ff55ff: #ff55ff;
  --theme-rgb-255-85-255-0-12: rgba(255, 85, 255, 0.12);
  --theme-rgb-170-184-255-0-12: rgba(170, 184, 255, 0.12);
  --theme-hex-aa5500: #aa5500;
  --theme-rgb-170-85-0-0-12: rgba(170, 85, 0, 0.12);
  --theme-hex-000099: #000099;
  --theme-hex-000000: #000000;
  --theme-hex-f0f0f0: #f0f0f0;
  --theme-hex-1f2430: #1f2430;
  --theme-hex-aa0000: #aa0000;
  --theme-hex-8a4a00: #8a4a00;
  --theme-hex-006f00: #006f00;
  --theme-hex-006f7f: #006f7f;
  --theme-hex-7a2f8a: #7a2f8a;
  --theme-rgb-170-85-0-0-14: rgba(170, 85, 0, 0.14);
  --theme-hex-7b7462: #7b7462;
  --theme-hex-b8af93: #b8af93;
  --theme-rgb-255-255-85-0-55: rgba(255, 255, 85, 0.55);
  --theme-hex-9a2f6f: #9a2f6f;
  --theme-hex-6f7768: #6f7768;
  --theme-rgb-170-0-0-0-16: rgba(170, 0, 0, 0.16);
  --theme-rgb-0-128-96-0-16: rgba(0, 128, 96, 0.16);
  --theme-rgb-31-36-48-0-16: rgba(31, 36, 48, 0.16);
  --theme-rgb-31-36-48-0-08: rgba(31, 36, 48, 0.08);
  --theme-rgb-31-36-48-0-42: rgba(31, 36, 48, 0.42);
  --theme-rgb-255-255-85-0-72: rgba(255, 255, 85, 0.72);
  --theme-rgb-0-0-170-0-10: rgba(0, 0, 170, 0.10);
  --theme-rgb-0-111-127-0-10: rgba(0, 111, 127, 0.10);
  --theme-rgb-0-111-0-0-10: rgba(0, 111, 0, 0.10);
  --theme-rgb-170-0-0-0-10: rgba(170, 0, 0, 0.10);
  --theme-rgb-122-47-138-0-10: rgba(122, 47, 138, 0.10);
  --theme-hex-394b9a: #394b9a;
  --theme-rgb-57-75-154-0-10: rgba(57, 75, 154, 0.10);
  --theme-rgb-170-85-0-0-10: rgba(170, 85, 0, 0.10);
}


/* ================================================================
   DARK MODE  (scheme: dos-dark)

   Custom scheme — Material provides no automatic dark base.
   Every variable is set explicitly.

   Layout mapping:
     Page bg          --borland-bg       var(--theme-hex-0000aa)
     Header / footer  --borland-panel-3  var(--theme-hex-000066)
     Admonitions      --borland-panel    var(--theme-hex-000088)
     Inline code bg   --borland-panel-2  var(--theme-hex-000077)
     Block code bg    --borland-panel-3  var(--theme-hex-000066)
     Body text        --dos-body-text    var(--theme-hex-b8b8b8)
     Bold / white     --dos-white        var(--theme-hex-ffffff)
     Accent           --dos-yellow       var(--theme-hex-ffff55)
     Links            --dos-bright-cyan  var(--theme-hex-55ffff)
   ================================================================ */

[data-md-color-scheme="dos-dark"] {

  --borland-surface-page:      var(--borland-dark-surface-page);
  --borland-surface-panel:     var(--borland-dark-surface-panel);
  --borland-surface-secondary: var(--borland-dark-surface-secondary);
  --borland-surface-strong:    var(--borland-dark-surface-strong);

  /* Primary — panel-3 (var(--theme-hex-000066)) as header/nav bar background. */
  --md-primary-fg-color:        var(--borland-panel-3);
  --md-primary-fg-color--light: var(--theme-rgb-0-0-102-0-70);
  --md-primary-fg-color--dark:  var(--borland-panel-2);
  --md-primary-bg-color:        var(--dos-light-gray);
  --md-primary-bg-color--light: var(--theme-rgb-170-170-170-0-70);

  /* Accent — Yellow (var(--theme-hex-ffff55))
     Controls active nav indicator, back-to-top, scrollbar, etc. */
  --md-accent-fg-color:              var(--dos-yellow);
  --md-accent-fg-color--transparent: var(--theme-rgb-255-255-85-0-10);
  --md-accent-bg-color:              var(--borland-surface-strong);

  /* Links — Bright Cyan (var(--theme-hex-55ffff)) */
  --md-typeset-a-color: var(--dos-bright-cyan);

  /* Body text — progressive muting toward --ext-slate.
     --lightest uses ext-slate (var(--theme-hex-5f87af)) rather than dark-gray (var(--theme-hex-555555)):
     dark-gray is ~1.6:1 contrast on bg and essentially invisible.    */
  --md-default-fg-color:           var(--dos-body-text);
  --md-default-fg-color--light:    var(--dos-md-muted);
  --md-default-fg-color--lighter:  var(--theme-hex-7f7f7f);
  --md-default-fg-color--lightest: var(--dos-ext-slate);

  /* Page background — borland-bg (var(--theme-hex-0000aa)) */
  --md-default-bg-color:           var(--borland-surface-page);
  --md-default-bg-color--light:    var(--theme-rgb-0-0-170-0-70);
  --md-default-bg-color--lighter:  var(--theme-rgb-0-0-170-0-30);
  --md-default-bg-color--lightest: var(--theme-rgb-0-0-170-0-12);

  /* Code — block code on panel-3 (var(--theme-hex-000066)), light-gray base text. */
  --md-code-bg-color:          var(--borland-surface-strong);
  --md-code-fg-color:          var(--dos-light-gray);
  --md-code-bg-color--lighter: transparent;
  --md-code-bg-color--light:   transparent;

  /* Code syntax highlighting */
  --md-code-hl-color:             var(--theme-rgb-255-255-85-0-28);  /* yellow selection tint   */
  --md-code-hl-keyword-color:     var(--dos-white);          /* white + bold            */
  --md-code-hl-string-color:      var(--dos-ext-amber);      /* var(--theme-hex-ffaf5f) strings         */
  --md-code-hl-number-color:      var(--dos-ext-lilac);      /* var(--theme-hex-af87ff) numbers         */
  --md-code-hl-constant-color:    var(--dos-ext-lilac);      /* var(--theme-hex-af87ff) constants       */
  --md-code-hl-special-color:     var(--dos-ext-pink);       /* var(--theme-hex-ff87af) meta/preproc    */
  --md-code-hl-function-color:    var(--dos-md-h5);          /* var(--theme-hex-66b3ff) functions       */
  --md-code-hl-name-color:        var(--dos-ext-sky);        /* var(--theme-hex-87d7ff) types/classes   */
  --md-code-hl-operator-color:    var(--dos-light-gray);     /* var(--theme-hex-aaaaaa) operators       */
  --md-code-hl-punctuation-color: var(--dos-ext-slate);      /* var(--theme-hex-5f87af) — was dark-gray
                                                                 (var(--theme-hex-555555) is ~2:1 contrast
                                                                 on var(--theme-hex-000066) code bg)     */
  --md-code-hl-comment-color:     var(--dos-ext-slate);      /* var(--theme-hex-5f87af) comments        */
  --md-code-hl-generic-color:     var(--dos-light-gray);     /* var(--theme-hex-aaaaaa) generic/vars    */
  --md-code-hl-variable-color:    var(--dos-periwinkle);     /* var(--theme-hex-aab8ff) variable-2      */

  /* Admonition base — panel bg, body-text foreground */
  --md-admonition-fg-color: var(--dos-body-text);
  --md-admonition-bg-color: var(--borland-surface-panel);

  /* Highlight ==mark== */
  --md-typeset-mark-color: var(--dos-yellow);

  /* Strikethrough / insert */
  --md-typeset-del-color: var(--theme-rgb-255-85-85-0-18);
  --md-typeset-ins-color: var(--theme-rgb-0-175-135-0-18);

  /* Typeset */
  --md-typeset-color: var(--dos-body-text);

  /* Tables */
  --md-typeset-table-color:        var(--theme-rgb-170-170-170-0-10);
  --md-typeset-table-color--light: var(--theme-rgb-170-170-170-0-05);

  /* Keyboard key accent */
  --md-typeset-kbd-accent-color: var(--dos-ext-slate);

  /* Footer */
  --md-footer-bg-color:          var(--borland-surface-strong);
  --md-footer-bg-color--dark:    var(--borland-surface-secondary);
  --md-footer-fg-color:          var(--dos-light-gray);
  --md-footer-fg-color--light:   var(--dos-md-muted);
  --md-footer-fg-color--lighter: var(--theme-hex-7f7f7f);

  /* Warning badge — yellow bg, black text */
  --md-warning-fg-color: var(--dos-black);
  --md-warning-bg-color: var(--dos-yellow);

  /* Tags — yellow bg, dark blue text (Borland menu-selection inversion) */
  --md-tag-fg-color: var(--dos-blue);
  --md-tag-bg-color: var(--dos-yellow);

  /* Banner */
  --md-banner-fg-color: var(--dos-light-gray);
  --md-banner-bg-color: var(--borland-surface-secondary);
}


/* ── Header and footer chrome ─────────────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-header,
[data-md-color-scheme="dos-dark"] .md-footer,
[data-md-color-scheme="dos-dark"] .md-footer-meta {
  background-color: var(--borland-surface-strong) !important;
  color: var(--dos-light-gray);
}

[data-md-color-scheme="dos-dark"] .md-header__title,
[data-md-color-scheme="dos-dark"] .md-header__button,
[data-md-color-scheme="dos-dark"] .md-header__topic,
[data-md-color-scheme="dos-dark"] .md-header__ellipsis {
  color: var(--dos-light-gray);
}

[data-md-color-scheme="dos-dark"] .md-header__button:hover,
[data-md-color-scheme="dos-dark"] .md-header__button:focus,
[data-md-color-scheme="dos-dark"] .md-header__button:focus-visible {
  color: var(--dos-yellow) !important;
  opacity: 1 !important;
}

[data-md-color-scheme="dos-dark"] .md-header__button:hover svg,
[data-md-color-scheme="dos-dark"] .md-header__button:focus svg,
[data-md-color-scheme="dos-dark"] .md-header__button:focus-visible svg,
[data-md-color-scheme="dos-dark"] .md-header__button:hover .md-icon,
[data-md-color-scheme="dos-dark"] .md-header__button:focus .md-icon,
[data-md-color-scheme="dos-dark"] .md-header__button:focus-visible .md-icon {
  color: var(--dos-yellow) !important;
  fill: currentColor !important;
  opacity: 1 !important;
}

[data-md-color-scheme="dos-dark"] .md-footer .md-social__link,
[data-md-color-scheme="dos-dark"] .md-footer .md-social__link svg {
  color: var(--dos-light-gray);
  fill: currentColor;
}

[data-md-color-scheme="dos-dark"] .md-footer .md-social__link:hover,
[data-md-color-scheme="dos-dark"] .md-footer .md-social__link:focus,
[data-md-color-scheme="dos-dark"] .md-footer .md-social__link:hover svg,
[data-md-color-scheme="dos-dark"] .md-footer .md-social__link:focus svg {
  color: var(--dos-yellow) !important;
  fill: var(--dos-yellow) !important;
}


/* ── Heading colours ─────────────────────────────────────────── */
/* H1–H3 bold; H4–H6 normal weight — matches borland-obsidian.css. */

[data-md-color-scheme="dos-dark"] .md-typeset h1 { color: var(--dos-md-h1); font-weight: 700; }
[data-md-color-scheme="dos-dark"] .md-typeset h2 { color: var(--dos-md-h2); font-weight: 700; }
[data-md-color-scheme="dos-dark"] .md-typeset h3 { color: var(--dos-md-h3); font-weight: 700; }
[data-md-color-scheme="dos-dark"] .md-typeset h4 { color: var(--dos-md-h4); font-weight: 400; }
[data-md-color-scheme="dos-dark"] .md-typeset h5 { color: var(--dos-md-h5); font-weight: 400; }
[data-md-color-scheme="dos-dark"] .md-typeset h6 { color: var(--dos-md-h6); font-weight: 400; }


/* ── Strong and emphasis ──────────────────────────────────────── */
/* White is reserved for strong text. Italic uses ext-pink. */

[data-md-color-scheme="dos-dark"] .md-typeset strong,
[data-md-color-scheme="dos-dark"] .md-typeset b {
  color: var(--dos-white);
  font-weight: 700;
}

[data-md-color-scheme="dos-dark"] .md-typeset em,
[data-md-color-scheme="dos-dark"] .md-typeset i {
  color: var(--dos-ext-pink);
  font-style: italic;
}

[data-md-color-scheme="dos-dark"] .md-typeset strong em,
[data-md-color-scheme="dos-dark"] .md-typeset em strong,
[data-md-color-scheme="dos-dark"] .md-typeset b em,
[data-md-color-scheme="dos-dark"] .md-typeset em b,
[data-md-color-scheme="dos-dark"] .md-typeset strong i,
[data-md-color-scheme="dos-dark"] .md-typeset i strong {
  color: var(--dos-ext-pink);
  font-style: italic;
  font-weight: 700;
}


/* ── Code ─────────────────────────────────────────────────────── */
/* Inline code is golden on panel-2. Block code is light-gray on
   panel-3. Copy control is icon-only throughout.                  */

[data-md-color-scheme="dos-dark"] .md-typeset code:not(pre > code) {
  color: var(--dos-md-h2);
  background-color: var(--borland-surface-secondary);
}

[data-md-color-scheme="dos-dark"] .md-typeset .highlight,
[data-md-color-scheme="dos-dark"] .md-typeset pre {
  background-color: var(--borland-surface-strong) !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .highlight pre,
[data-md-color-scheme="dos-dark"] .md-typeset .highlight code,
[data-md-color-scheme="dos-dark"] .md-typeset pre code {
  background-color: transparent;
  color: var(--md-code-fg-color);
}

/* Current Material copy controls */
[data-md-color-scheme="dos-dark"] .md-typeset .highlight .md-code__nav,
[data-md-color-scheme="dos-dark"] .md-typeset .highlight:hover .md-code__nav,
[data-md-color-scheme="dos-dark"] .md-typeset .md-code__nav,
[data-md-color-scheme="dos-dark"] .md-typeset .md-code__nav:hover,
[data-md-color-scheme="dos-dark"] .md-typeset .md-code__nav:focus-within {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .md-code__button {
  color: var(--theme-rgb-170-170-170-0-46) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  opacity: 1 !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .md-code__button::after {
  background-color: currentColor !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .highlight:hover .md-code__button {
  color: var(--theme-rgb-170-170-170-0-74) !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .highlight .md-code__button:hover,
[data-md-color-scheme="dos-dark"] .md-typeset .highlight:hover .md-code__button:hover,
[data-md-color-scheme="dos-dark"] .md-typeset .md-code__button:hover,
[data-md-color-scheme="dos-dark"] .md-typeset .md-code__button:focus,
[data-md-color-scheme="dos-dark"] .md-typeset .md-code__button:focus-visible,
[data-md-color-scheme="dos-dark"] .md-typeset .md-code__button.focus-visible,
[data-md-color-scheme="dos-dark"] .md-typeset .md-code__button--active {
  color: var(--dos-yellow) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Legacy Material copy controls */
[data-md-color-scheme="dos-dark"] .md-typeset .md-clipboard,
[data-md-color-scheme="dos-dark"] .md-typeset .md-clipboard:hover,
[data-md-color-scheme="dos-dark"] button.md-clipboard,
[data-md-color-scheme="dos-dark"] button.md-clipboard:hover {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  opacity: 1 !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .md-clipboard {
  color: var(--theme-rgb-170-170-170-0-46) !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .highlight:hover .md-clipboard {
  color: var(--theme-rgb-170-170-170-0-74) !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .md-clipboard:hover,
[data-md-color-scheme="dos-dark"] button.md-clipboard:hover,
[data-md-color-scheme="dos-dark"] .md-typeset .md-clipboard:focus,
[data-md-color-scheme="dos-dark"] button.md-clipboard:focus {
  color: var(--dos-yellow) !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset .md-clipboard::after,
[data-md-color-scheme="dos-dark"] button.md-clipboard::after {
  background-color: currentColor !important;
}


/* ── Blockquote ──────────────────────────────────────────────── */
/* Panel bg with H4-coloured left bar — matches Obsidian.        */

[data-md-color-scheme="dos-dark"] .md-typeset blockquote {
  background-color: var(--borland-surface-panel);
  border-left-color: var(--dos-md-h4);
  color: var(--dos-body-text);
}


/* ── Tables ──────────────────────────────────────────────────── */
/* Header row: white text on panel-2. Alt rows: bg-2 tint.       */

[data-md-color-scheme="dos-dark"] .md-typeset table:not([class]) th {
  background-color: var(--borland-surface-secondary);
  color:            var(--dos-white);
  font-weight:      700;
}
[data-md-color-scheme="dos-dark"] .md-typeset table:not([class]) td {
  background-color: var(--borland-bg);
  color:            var(--dos-light-gray);
}
[data-md-color-scheme="dos-dark"] .md-typeset table:not([class]) tr:nth-child(even) td {
  background-color: var(--borland-bg-2);
}
[data-md-color-scheme="dos-dark"] .md-typeset table:not([class]) {
  border-color: var(--dos-light-gray);
}


/* ── HR — DOS double rule ────────────────────────────────────── */
/* Two bright-cyan lines with a gap between — matches Obsidian.  */

[data-md-color-scheme="dos-dark"] .md-typeset hr {
  border:     none;
  height:     6px;
  background: linear-gradient(
    to bottom,
    transparent              0,    transparent              1px,
    var(--dos-bright-cyan)   1px,  var(--dos-bright-cyan)   2px,
    transparent              2px,  transparent              4px,
    var(--dos-bright-cyan)   4px,  var(--dos-bright-cyan)   5px,
    transparent              5px,  transparent              6px
  );
}


/* ── Selection ───────────────────────────────────────────────── */

[data-md-color-scheme="dos-dark"] ::selection {
  background-color: var(--theme-rgb-255-255-85-0-28);
  color:            var(--dos-blue);
}


/* ================================================================
   PRIMARY NAVIGATION TABS
   ================================================================ */

[data-md-color-scheme="dos-dark"] .md-tabs {
  background-color: var(--borland-panel-2) !important;
  border-top: 1px solid var(--borland-panel-3);
  border-bottom: 1px solid var(--borland-panel);
}

[data-md-color-scheme="dos-dark"] .md-tabs__link {
  color: var(--dos-light-gray);
  opacity: 1;
}

[data-md-color-scheme="dos-dark"] .md-tabs__link--active,
[data-md-color-scheme="dos-dark"] .md-tabs__link:hover,
[data-md-color-scheme="dos-dark"] .md-tabs__link:focus {
  color: var(--dos-yellow);
  font-weight: 700;
  opacity: 1;
}


/* ================================================================
   CONTENT TABS  (pymdownx.tabbed with alternate_style)
   ================================================================ */

[data-md-color-scheme="dos-dark"] .md-typeset .tabbed-set {
  border-color: var(--borland-panel-2);
}

[data-md-color-scheme="dos-dark"] .md-typeset .tabbed-labels {
  background-color: var(--borland-surface-strong);
  border-bottom: 1px solid var(--borland-surface-secondary);
}

[data-md-color-scheme="dos-dark"] .md-typeset .tabbed-labels > label {
  color: var(--dos-light-gray);
}

[data-md-color-scheme="dos-dark"] .md-typeset .tabbed-labels > label:hover,
[data-md-color-scheme="dos-dark"] .md-typeset .tabbed-set > input:checked + label,
[data-md-color-scheme="dos-dark"] .md-typeset .tabbed-set > input:checked + label:hover {
  color: var(--dos-yellow);
}

[data-md-color-scheme="dos-dark"] .md-typeset .tabbed-content {
  background-color: var(--borland-surface-panel);
  border: 1px solid var(--borland-surface-secondary);
  border-top: 0;
}


/* ================================================================
   BUTTONS
   Default: panel-3 bg, light-gray text.
   Primary/CTA: yellow bg, dark blue text — Borland menu inversion.
   ================================================================ */

[data-md-color-scheme="dos-dark"] .md-button {
  background-color: var(--borland-panel-3);
  border-color:     var(--dos-light-gray) !important;
  color:            var(--dos-light-gray) !important;
}

[data-md-color-scheme="dos-dark"] .md-button:hover,
[data-md-color-scheme="dos-dark"] .md-button:focus {
  background-color: var(--borland-surface-secondary);
  border-color:     var(--dos-yellow) !important;
  color:            var(--dos-yellow) !important;
}

[data-md-color-scheme="dos-dark"] .md-button.md-button--primary {
  background-color: var(--dos-yellow);
  border-color:     var(--dos-yellow) !important;
  color:            var(--dos-blue) !important;
  font-weight:      700;
}

[data-md-color-scheme="dos-dark"] .md-button.md-button--primary:hover,
[data-md-color-scheme="dos-dark"] .md-button.md-button--primary:focus {
  background-color: var(--dos-white);
  border-color:     var(--dos-white) !important;
  color:            var(--dos-blue) !important;
}


/* ================================================================
   BACK TO TOP
   Rounded — intentionally kept round as a CRT button aesthetic.
   Rest: blue chrome. Hover/focus: yellow active state.
   ================================================================ */

[data-md-color-scheme="dos-dark"] .md-top {
  background-color: var(--borland-surface-secondary) !important;
  color: var(--dos-body-text) !important;
  font-weight: 700;
}

[data-md-color-scheme="dos-dark"] .md-top:hover,
[data-md-color-scheme="dos-dark"] .md-top:focus,
[data-md-color-scheme="dos-dark"] .md-top:focus-visible {
  background-color: var(--dos-yellow) !important;
  color: var(--dos-blue) !important;
  border-color: var(--dos-yellow) !important;
  outline: none !important;
}

[data-md-color-scheme="dos-dark"] .md-top svg {
  fill: currentColor !important;
}


/* ================================================================
   LINKS
   All content and footer links: bright cyan, no underline.
   Hover/focus: yellow.
   ================================================================ */

[data-md-color-scheme="dos-dark"] .md-typeset a,
[data-md-color-scheme="dos-dark"] .md-footer a {
  color: var(--dos-bright-cyan) !important;
  font-weight: inherit !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  text-decoration-color: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}

[data-md-color-scheme="dos-dark"] .md-typeset a:hover,
[data-md-color-scheme="dos-dark"] .md-typeset a:focus,
[data-md-color-scheme="dos-dark"] .md-footer a:hover,
[data-md-color-scheme="dos-dark"] .md-footer a:focus {
  color: var(--dos-yellow) !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
  outline-color: var(--dos-yellow);
}

[data-md-color-scheme="dos-dark"] .md-footer .md-social__link svg {
  fill: currentColor !important;
}

/* Preserve real bold inside links. */
[data-md-color-scheme="dos-dark"] .md-typeset a strong,
[data-md-color-scheme="dos-dark"] .md-typeset a b,
[data-md-color-scheme="dos-dark"] .md-footer a strong,
[data-md-color-scheme="dos-dark"] .md-footer a b {
  color: var(--dos-white) !important;
  font-weight: 700 !important;
}


/* ── Abbreviations ───────────────────────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-typeset abbr {
  text-decoration: none;
  border-bottom:   1px dotted var(--dos-ext-slate);
  cursor:          help;
}


/* ── Strikethrough ───────────────────────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-typeset del,
[data-md-color-scheme="dos-dark"] .md-typeset s {
  text-decoration:           line-through;
  text-decoration-thickness: 1px;
  text-decoration-color:     var(--dos-bright-red);
  color:                     var(--dos-bright-red);
}


/* ── KBD — keyboard key badges ──────────────────────────────── */
/* Yellow text on panel-3 bg — Borland hotkey label aesthetic.   */

[data-md-color-scheme="dos-dark"] .md-typeset kbd {
  font-size:           .80em;
  background-color:    var(--borland-panel-3);
  color:               var(--dos-yellow);
  border:              1px solid var(--dos-light-gray);
  border-bottom-width: 2px;
  border-radius:       0;
  padding:             .1em .38em;
  box-shadow:          none;
  letter-spacing:      .01em;
  white-space:         nowrap;
}


/* ── Mark / Highlight  ==like this== ────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-typeset mark,
[data-md-color-scheme="dos-dark"] .md-search-result mark,
[data-md-color-scheme="dos-dark"] .md-search-result__article mark {
  background-color: var(--dos-yellow) !important;
  color: var(--dos-blue) !important;
  box-shadow: none !important;
  padding: 0 .15em;
  border-radius: 0;
}


/* ── Figures and captions ────────────────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-typeset figcaption {
  color: var(--dos-md-muted);
}

[data-md-color-scheme="dos-dark"] .md-typeset .figure-caption,
[data-md-color-scheme="dos-dark"] .md-typeset .table-caption {
  color: var(--dos-md-muted);
  font-size: .85em;
  text-align: center;
}


/* ── Custom utility classes ──────────────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-typeset .md-comment {
  display: none;
}

[data-md-color-scheme="dos-dark"] .md-typeset .md-underline {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .12em;
}

[data-md-color-scheme="dos-dark"] .md-typeset .bq-attribution {
  color: var(--dos-md-muted);
  font-style: italic;
  text-align: right;
}

[data-md-color-scheme="dos-dark"] .md-typeset h1.add-h1-rule {
  border-bottom: 1px solid var(--dos-ext-slate);
  padding-bottom: .25em;
}

[data-md-color-scheme="dos-dark"] .md-typeset .no-gap {
  margin-bottom: 0;
}

[data-md-color-scheme="dos-dark"] .md-typeset .spaced-top {
  margin-top: 1.6em;
}

[data-md-color-scheme="dos-dark"] .md-typeset .hd-flush {
  margin-bottom: .1em;
}


/* ── Annotation blocks ───────────────────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-typeset div.annotation {
  font-size:     .78em;
  line-height:   1.15;
  color:         var(--dos-md-muted);
  background:    var(--borland-panel-2);
  border-left:   1px dotted var(--dos-ext-slate);
  margin:        .15em 0 .2em .5em;
  padding:       .1em .55em;
  border-radius: 0;
}

[data-md-color-scheme="dos-dark"] .md-typeset span.annotation {
  font-size:   .78em;
  color:       var(--dos-ext-lilac);
  font-style:  italic;
  display:     inline-block;
  padding:     .1em .5em .15em .45em;
}


/* ── Footnotes ───────────────────────────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-typeset .footnote::before,
[data-md-color-scheme="dos-dark"] .md-typeset .footnote hr {
  display:    block;
  width:      6em;
  border:     none;
  border-top: 1px solid var(--dos-ext-slate);
  margin:     0 0 .5em;
}


/* ── Definition lists ────────────────────────────────────────── */

[data-md-color-scheme="dos-dark"] .md-typeset dt {
  color:         var(--dos-md-h4);
  border-bottom: 1.5px dotted var(--dos-ext-slate);
}


/* ================================================================
   RIGHT TABLE OF CONTENTS TITLE

   Core theme styling. Optional extra.css may add a rounded panel
   behind the right TOC, but the label treatment belongs here.
   ================================================================ */

[data-md-color-scheme="dos-dark"] .md-sidebar--secondary .md-nav__title {
  background: transparent !important;
  box-shadow: none !important;
  color: var(--dos-yellow) !important;
  font-weight: 400 !important;
  letter-spacing: .04em;
  text-transform: uppercase;
}

[data-md-color-scheme="dos-light"] .md-sidebar--secondary .md-nav__title {
  background: transparent !important;
  box-shadow: none !important;
  color: var(--borland-paper-link-hover) !important;
  font-weight: 400 !important;
  letter-spacing: .04em;
  text-transform: uppercase;
}


/* ================================================================
   NAV SIDEBAR
   Active: yellow + bold. Passed: muted (var(--theme-hex-9fb3c8) per palette).
   Hover/focus: yellow.
   ================================================================ */

[data-md-color-scheme="dos-dark"] .md-nav__link--active {
  color: var(--dos-yellow) !important;
  font-weight: 700;
}

[data-md-color-scheme="dos-dark"] .md-nav__link {
  color: var(--md-default-fg-color);
}

[data-md-color-scheme="dos-dark"] .md-nav__link:hover,
[data-md-color-scheme="dos-dark"] .md-nav__link:focus {
  color: var(--dos-yellow);
}

[data-md-color-scheme="dos-dark"] .md-nav__link--passed,
[data-md-color-scheme="dos-dark"] .md-nav__link--passed code {
  color: var(--dos-md-muted);  /* was --dos-dark-gray (var(--theme-hex-555555) ~1.6:1 on bg) */
}


/* ── Task list ticks ─────────────────────────────────────────── */

[data-md-color-scheme="dos-dark"]
.md-typeset .task-list-control input:checked ~ .task-list-indicator::before {
  background-color: var(--dos-bright-cyan);
}


/* ================================================================
   ADMONITIONS — DOS palette type colours
   ================================================================ */

/* Note — Bright Blue (var(--theme-hex-5555ff)) */
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.note,
[data-md-color-scheme="dos-dark"] .md-typeset details.note {
  border-color: var(--dos-bright-blue);
}
[data-md-color-scheme="dos-dark"] .md-typeset .note > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .note > summary {
  background-color: var(--theme-rgb-85-85-255-0-12);
  color:            var(--dos-bright-blue);
}
[data-md-color-scheme="dos-dark"] .md-typeset .note > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .note > summary::before {
  background-color: var(--dos-bright-blue);
}

/* Info / Important — Bright Cyan (var(--theme-hex-55ffff)) */
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.info,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.important,
[data-md-color-scheme="dos-dark"] .md-typeset details.info,
[data-md-color-scheme="dos-dark"] .md-typeset details.important {
  border-color: var(--dos-bright-cyan);
}
[data-md-color-scheme="dos-dark"] .md-typeset .info > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .info > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .important > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .important > summary {
  background-color: var(--theme-rgb-85-255-255-0-12);
  color:            var(--dos-bright-cyan);
}
[data-md-color-scheme="dos-dark"] .md-typeset .info > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .info > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .important > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .important > summary::before {
  background-color: var(--dos-bright-cyan);
}

/* Tip / Hint / Success / Check / Done — Bright Green (var(--theme-hex-55ff55)) */
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.tip,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.hint,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.success,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.check,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.done,
[data-md-color-scheme="dos-dark"] .md-typeset details.tip,
[data-md-color-scheme="dos-dark"] .md-typeset details.hint,
[data-md-color-scheme="dos-dark"] .md-typeset details.success,
[data-md-color-scheme="dos-dark"] .md-typeset details.check,
[data-md-color-scheme="dos-dark"] .md-typeset details.done {
  border-color: var(--dos-bright-green);
}
[data-md-color-scheme="dos-dark"] .md-typeset .tip > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .tip > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .hint > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .hint > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .success > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .success > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .check > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .check > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .done > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .done > summary {
  background-color: var(--theme-rgb-85-255-85-0-12);
  color:            var(--dos-bright-green);
}
[data-md-color-scheme="dos-dark"] .md-typeset .tip > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .tip > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .hint > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .hint > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .success > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .success > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .check > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .check > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .done > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .done > summary::before {
  background-color: var(--dos-bright-green);
}

/* Warning / Caution — Yellow (var(--theme-hex-ffff55)) */
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.warning,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.caution,
[data-md-color-scheme="dos-dark"] .md-typeset details.warning,
[data-md-color-scheme="dos-dark"] .md-typeset details.caution {
  border-color: var(--dos-yellow);
}
[data-md-color-scheme="dos-dark"] .md-typeset .warning > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .warning > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .caution > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .caution > summary {
  background-color: var(--theme-rgb-255-255-85-0-12);
  color:            var(--dos-yellow);
}
[data-md-color-scheme="dos-dark"] .md-typeset .warning > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .warning > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .caution > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .caution > summary::before {
  background-color: var(--dos-yellow);
}

/* Danger / Error / Bug / Failure — Bright Red (var(--theme-hex-ff5555)) */
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.danger,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.error,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.bug,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.failure,
[data-md-color-scheme="dos-dark"] .md-typeset details.danger,
[data-md-color-scheme="dos-dark"] .md-typeset details.error,
[data-md-color-scheme="dos-dark"] .md-typeset details.bug,
[data-md-color-scheme="dos-dark"] .md-typeset details.failure {
  border-color: var(--dos-bright-red);
}
[data-md-color-scheme="dos-dark"] .md-typeset .danger > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .danger > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .error > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .error > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .bug > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .bug > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .failure > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .failure > summary {
  background-color: var(--theme-rgb-255-85-85-0-12);
  color:            var(--dos-bright-red);
}
[data-md-color-scheme="dos-dark"] .md-typeset .danger > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .danger > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .error > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .error > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .bug > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .bug > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .failure > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .failure > summary::before {
  background-color: var(--dos-bright-red);
}

/* Question / FAQ / Help / Example — Bright Magenta (var(--theme-hex-ff55ff)) */
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.question,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.faq,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.help,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.example,
[data-md-color-scheme="dos-dark"] .md-typeset details.question,
[data-md-color-scheme="dos-dark"] .md-typeset details.faq,
[data-md-color-scheme="dos-dark"] .md-typeset details.help,
[data-md-color-scheme="dos-dark"] .md-typeset details.example {
  border-color: var(--dos-bright-magenta);
}
[data-md-color-scheme="dos-dark"] .md-typeset .question > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .question > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .faq > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .faq > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .help > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .help > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .example > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .example > summary {
  background-color: var(--theme-rgb-255-85-255-0-12);
  color:            var(--dos-bright-magenta);
}
[data-md-color-scheme="dos-dark"] .md-typeset .question > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .question > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .faq > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .faq > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .help > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .help > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .example > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .example > summary::before {
  background-color: var(--dos-bright-magenta);
}

/* Abstract / Summary / TL;DR — Periwinkle (var(--theme-hex-aab8ff)) */
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.abstract,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.summary,
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.tldr,
[data-md-color-scheme="dos-dark"] .md-typeset details.abstract,
[data-md-color-scheme="dos-dark"] .md-typeset details.summary,
[data-md-color-scheme="dos-dark"] .md-typeset details.tldr {
  border-color: var(--dos-periwinkle);
}
[data-md-color-scheme="dos-dark"] .md-typeset .abstract > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .abstract > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .summary > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .summary > summary,
[data-md-color-scheme="dos-dark"] .md-typeset .tldr > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .tldr > summary {
  background-color: var(--theme-rgb-170-184-255-0-12);
  color:            var(--dos-periwinkle);
}
[data-md-color-scheme="dos-dark"] .md-typeset .abstract > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .abstract > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .summary > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .summary > summary::before,
[data-md-color-scheme="dos-dark"] .md-typeset .tldr > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .tldr > summary::before {
  background-color: var(--dos-periwinkle);
}

/* Quote — Brown (var(--theme-hex-aa5500)) */
[data-md-color-scheme="dos-dark"] .md-typeset .admonition.quote,
[data-md-color-scheme="dos-dark"] .md-typeset details.quote {
  border-color: var(--dos-brown);
}
[data-md-color-scheme="dos-dark"] .md-typeset .quote > .admonition-title,
[data-md-color-scheme="dos-dark"] .md-typeset .quote > summary {
  background-color: var(--theme-rgb-170-85-0-0-12);
  color:            var(--dos-brown);
}
[data-md-color-scheme="dos-dark"] .md-typeset .quote > .admonition-title::before,
[data-md-color-scheme="dos-dark"] .md-typeset .quote > summary::before {
  background-color: var(--dos-brown);
}


/* ================================================================
   SEARCH

   Header search is chrome, not page content:
     Header is dark blue in both schemes, so the search box uses the
     same Borland blue hierarchy in both dark and light modes.

   Results follow the active scheme:
     dark results stay blue; light results use paper surfaces.
   ================================================================ */

/* Header search box — same in both schemes */
[data-md-color-scheme="dos-dark"] .md-search__form,
[data-md-color-scheme="dos-light"] .md-search__form {
  background-color: var(--borland-panel) !important;
  color: var(--dos-light-gray);
  border: 1px solid var(--borland-bg-2);
  box-shadow: none !important;
}

[data-md-color-scheme="dos-dark"] .md-search__form:hover,
[data-md-color-scheme="dos-dark"] .md-search__form:focus-within,
[data-md-color-scheme="dos-light"] .md-search__form:hover,
[data-md-color-scheme="dos-light"] .md-search__form:focus-within {
  background-color: var(--borland-bg-2) !important;
  border-color: var(--borland-bg);
}

[data-md-color-scheme="dos-dark"] .md-search__input,
[data-md-color-scheme="dos-light"] .md-search__input {
  color: var(--dos-light-gray);
}

[data-md-color-scheme="dos-dark"] .md-search__input::placeholder,
[data-md-color-scheme="dos-light"] .md-search__input::placeholder {
  color: var(--dos-md-muted);
}

[data-md-color-scheme="dos-dark"] .md-search__icon,
[data-md-color-scheme="dos-dark"] .md-search__options,
[data-md-color-scheme="dos-light"] .md-search__icon,
[data-md-color-scheme="dos-light"] .md-search__options {
  color: var(--dos-light-gray);
}

[data-md-color-scheme="dos-dark"] .md-search__icon:hover,
[data-md-color-scheme="dos-dark"] .md-search__icon:focus,
[data-md-color-scheme="dos-dark"] .md-search__options button:hover,
[data-md-color-scheme="dos-dark"] .md-search__options button:focus,
[data-md-color-scheme="dos-light"] .md-search__icon:hover,
[data-md-color-scheme="dos-light"] .md-search__icon:focus,
[data-md-color-scheme="dos-light"] .md-search__options button:hover,
[data-md-color-scheme="dos-light"] .md-search__options button:focus {
  color: var(--dos-yellow);
}

/* Dark search results */
[data-md-color-scheme="dos-dark"] .md-search__output {
  background-color: var(--borland-surface-strong);
  border: 1px solid var(--borland-surface-secondary);
  border-top: 0;
  box-shadow: none;
}

[data-md-color-scheme="dos-dark"] .md-search__scrollwrap,
[data-md-color-scheme="dos-dark"] .md-search-result {
  background-color: var(--borland-surface-strong);
  color: var(--dos-body-text);
}

[data-md-color-scheme="dos-dark"] .md-search-result__meta {
  background-color: var(--borland-surface-secondary);
  color: var(--dos-md-muted);
  border-bottom: 1px solid var(--borland-surface-panel);
}

[data-md-color-scheme="dos-dark"] .md-search-result__title {
  color: var(--dos-bright-cyan);
}

[data-md-color-scheme="dos-dark"] .md-search-result__teaser {
  color: var(--dos-md-muted);
}

[data-md-color-scheme="dos-dark"] .md-search-result__link:hover,
[data-md-color-scheme="dos-dark"] .md-search-result__link:focus {
  background-color: var(--borland-surface-secondary);
}

/* Light search results */
[data-md-color-scheme="dos-light"] .md-search__output {
  background-color: var(--borland-surface-panel);
  border: 1px solid var(--borland-surface-secondary);
  border-top: 0;
  box-shadow: none;
}

[data-md-color-scheme="dos-light"] .md-search__scrollwrap,
[data-md-color-scheme="dos-light"] .md-search-result {
  background-color: var(--borland-surface-panel);
  color: var(--borland-paper-ink);
}

[data-md-color-scheme="dos-light"] .md-search-result__meta {
  background-color: var(--borland-surface-secondary);
  color: var(--borland-paper-muted);
  border-bottom: 1px solid var(--borland-paper-rule);
}

[data-md-color-scheme="dos-light"] .md-search-result__title {
  color: var(--borland-paper-link);
}

[data-md-color-scheme="dos-light"] .md-search-result__teaser {
  color: var(--borland-paper-muted);
}

[data-md-color-scheme="dos-light"] .md-search-result__link:hover,
[data-md-color-scheme="dos-light"] .md-search-result__link:focus {
  background-color: var(--borland-surface-secondary);
}


/* ================================================================
   PRINT
   Always output light-mode-equivalent colours regardless of which
   scheme is active. Dark mode colours (yellows, greens, cyans) are
   invisible on white paper. The paper-mode darks are print-safe.
   ================================================================ */

@media print {
  [data-md-color-scheme="dos-dark"],
  [data-md-color-scheme="dos-light"] {
    --md-default-bg-color: var(--theme-hex-ffffff) !important;
    --md-default-fg-color: var(--theme-hex-000000) !important;
    --md-code-bg-color:    var(--theme-hex-f0f0f0) !important;
    --md-code-fg-color:    var(--theme-hex-1f2430) !important;
  }

  [data-md-color-scheme="dos-dark"] .md-typeset h1,
  [data-md-color-scheme="dos-light"] .md-typeset h1 { color: var(--theme-hex-aa0000) !important; }

  [data-md-color-scheme="dos-dark"] .md-typeset h2,
  [data-md-color-scheme="dos-light"] .md-typeset h2 { color: var(--theme-hex-8a4a00) !important; }

  [data-md-color-scheme="dos-dark"] .md-typeset h3,
  [data-md-color-scheme="dos-light"] .md-typeset h3 { color: var(--theme-hex-006f00) !important; }

  [data-md-color-scheme="dos-dark"] .md-typeset h4,
  [data-md-color-scheme="dos-light"] .md-typeset h4 { color: var(--theme-hex-006f7f) !important; }

  [data-md-color-scheme="dos-dark"] .md-typeset h5,
  [data-md-color-scheme="dos-light"] .md-typeset h5 { color: var(--theme-hex-0000aa) !important; }

  [data-md-color-scheme="dos-dark"] .md-typeset h6,
  [data-md-color-scheme="dos-light"] .md-typeset h6 { color: var(--theme-hex-7a2f8a) !important; }

  [data-md-color-scheme="dos-dark"] .md-typeset,
  [data-md-color-scheme="dos-light"] .md-typeset { color: var(--theme-hex-000000) !important; }

  [data-md-color-scheme="dos-dark"] .md-typeset a,
  [data-md-color-scheme="dos-light"] .md-typeset a { color: var(--theme-hex-006f7f) !important; }
}


/* ================================================================
   LIGHT MODE  (scheme: dos-light)

   Borland Paper companion theme.
   The dark Borland blue chrome remains throughout; the reading
   surface becomes warm paper.

   Semantic rule:
     • palette roles are preserved, not reinvented
     • yellow/active role → brown (var(--theme-hex-aa5500)) on paper surfaces
     • cyan/link role → muted teal (var(--theme-hex-006f7f)) on paper
     • mark/highlight remains yellow with black text
     • dark-blue chrome remains dark-blue chrome everywhere

   Paper heading colours are darkened CGA equivalents —
   contrast-safe on the warm surface, see borland-paper-* vars.
   ================================================================ */

[data-md-color-scheme="dos-light"] {

  --borland-surface-page:      var(--borland-light-surface-page);
  --borland-surface-panel:     var(--borland-light-surface-panel);
  --borland-surface-secondary: var(--borland-light-surface-secondary);
  --borland-surface-strong:    var(--borland-light-surface-strong);

  /* Chrome */
  --md-primary-fg-color:        var(--borland-panel-3);
  --md-primary-fg-color--light: var(--borland-panel-2);
  --md-primary-fg-color--dark:  var(--borland-panel-3);
  --md-primary-bg-color:        var(--dos-light-gray);
  --md-primary-bg-color--light: var(--dos-md-muted);

  /* Accent — brown is the paper-mode interactive accent */
  --md-accent-fg-color:              var(--borland-paper-link-hover);
  --md-accent-fg-color--transparent: var(--theme-rgb-170-85-0-0-14);
  --md-accent-bg-color:              var(--borland-paper-surface);

  /* Links */
  --md-typeset-a-color: var(--borland-paper-link);

  /* Body and page */
  --md-default-fg-color:           var(--borland-paper-ink);
  --md-default-fg-color--light:    var(--borland-paper-muted);
  --md-default-fg-color--lighter:  var(--theme-hex-7b7462);
  --md-default-fg-color--lightest: var(--theme-hex-b8af93);

  --md-default-bg-color:           var(--borland-surface-page);
  --md-default-bg-color--light:    var(--borland-paper-surface);
  --md-default-bg-color--lighter:  var(--borland-paper-surface-2);
  --md-default-bg-color--lightest: var(--borland-paper-panel);

  /* Code */
  --md-code-bg-color:          var(--borland-surface-secondary);
  --md-code-fg-color:          var(--borland-paper-ink);
  --md-code-bg-color--lighter: transparent;
  --md-code-bg-color--light:   transparent;

  /* Syntax highlighting — paper-mode equivalents of dark tokens.
     --md-code-hl-function-color uses --dos-blue (var(--theme-hex-0000aa)):
     this reads as navy on the paper code bg and is intentional —
     it echoes the canonical Borland blue as a deliberate callback. */
  --md-code-hl-color:             var(--theme-rgb-255-255-85-0-55);
  --md-code-hl-keyword-color:     #8a2400;
  --md-code-hl-string-color:      #7a3d00;
  --md-code-hl-number-color:      var(--borland-paper-violet);
  --md-code-hl-constant-color:    var(--borland-paper-violet);
  --md-code-hl-special-color:     var(--theme-hex-9a2f6f);   /* pinkish variant, no named var */
  --md-code-hl-function-color:    #000088;
  --md-code-hl-name-color:        var(--borland-paper-link);
  --md-code-hl-operator-color:    var(--borland-paper-ink);
  --md-code-hl-punctuation-color: var(--borland-paper-muted);
  --md-code-hl-comment-color:     #4a5148;   /* olive grey, no named var */
  --md-code-hl-generic-color:     var(--borland-paper-ink);
  --md-code-hl-variable-color:    var(--borland-paper-periwinkle);

  /* Admonition base */
  --md-admonition-fg-color: var(--borland-paper-ink);
  --md-admonition-bg-color: var(--borland-surface-panel);

  /* Highlight */
  --md-typeset-mark-color: var(--dos-yellow);

  /* Strikethrough / insert */
  --md-typeset-del-color: var(--theme-rgb-170-0-0-0-16);
  --md-typeset-ins-color: var(--theme-rgb-0-128-96-0-16);

  /* Typeset */
  --md-typeset-color: var(--borland-paper-ink);

  /* Tables */
  --md-typeset-table-color:        var(--theme-rgb-31-36-48-0-16);
  --md-typeset-table-color--light: var(--theme-rgb-31-36-48-0-08);

  /* Keyboard key accent */
  --md-typeset-kbd-accent-color: var(--borland-paper-rule);

  /* Footer — dark blue chrome stays dark in light mode */
  --md-footer-bg-color:          var(--borland-panel-3);
  --md-footer-bg-color--dark:    var(--borland-panel-2);
  --md-footer-fg-color:          var(--dos-light-gray);
  --md-footer-fg-color--light:   var(--dos-md-muted);
  --md-footer-fg-color--lighter: var(--theme-hex-7f7f7f);

  /* Warning badge */
  --md-warning-fg-color: var(--dos-black);
  --md-warning-bg-color: var(--dos-yellow);

  /* Tags — paper panel bg, ink text */
  --md-tag-fg-color: var(--borland-paper-ink);
  --md-tag-bg-color: var(--borland-paper-panel);

  /* Banner */
  --md-banner-fg-color: var(--dos-light-gray);
  --md-banner-bg-color: var(--borland-surface-secondary);
}


/* ── Light header and footer chrome ────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-header,
[data-md-color-scheme="dos-light"] .md-footer,
[data-md-color-scheme="dos-light"] .md-footer-meta {
  background-color: var(--borland-panel-3) !important;
  color: var(--dos-light-gray);
}

[data-md-color-scheme="dos-light"] .md-header__title,
[data-md-color-scheme="dos-light"] .md-header__button,
[data-md-color-scheme="dos-light"] .md-header__topic,
[data-md-color-scheme="dos-light"] .md-header__ellipsis {
  color: var(--dos-light-gray);
}

[data-md-color-scheme="dos-light"] .md-header__button:hover,
[data-md-color-scheme="dos-light"] .md-header__button:focus,
[data-md-color-scheme="dos-light"] .md-header__button:focus-visible {
  color: var(--dos-yellow) !important;
  opacity: 1 !important;
}

[data-md-color-scheme="dos-light"] .md-header__button:hover svg,
[data-md-color-scheme="dos-light"] .md-header__button:focus svg,
[data-md-color-scheme="dos-light"] .md-header__button:focus-visible svg,
[data-md-color-scheme="dos-light"] .md-header__button:hover .md-icon,
[data-md-color-scheme="dos-light"] .md-header__button:focus .md-icon,
[data-md-color-scheme="dos-light"] .md-header__button:focus-visible .md-icon {
  color: var(--dos-yellow) !important;
  fill: currentColor !important;
  opacity: 1 !important;
}

[data-md-color-scheme="dos-light"] .md-footer .md-social__link,
[data-md-color-scheme="dos-light"] .md-footer .md-social__link svg {
  color: var(--dos-light-gray);
  fill: currentColor;
}

[data-md-color-scheme="dos-light"] .md-footer .md-social__link:hover,
[data-md-color-scheme="dos-light"] .md-footer .md-social__link:focus,
[data-md-color-scheme="dos-light"] .md-footer .md-social__link:hover svg,
[data-md-color-scheme="dos-light"] .md-footer .md-social__link:focus svg {
  color: var(--dos-yellow) !important;
  fill: var(--dos-yellow) !important;
}


/* ── Light page/content surfaces ───────────────────────────────── */

[data-md-color-scheme="dos-light"] body,
[data-md-color-scheme="dos-light"] .md-container,
[data-md-color-scheme="dos-light"] .md-main,
[data-md-color-scheme="dos-light"] .md-main__inner {
  background-color: var(--borland-surface-page);
}

[data-md-color-scheme="dos-light"] .md-content,
[data-md-color-scheme="dos-light"] .md-typeset {
  color: var(--borland-paper-ink);
}


/* ── Light heading colours ─────────────────────────────────────── */
/* Paper-mode equivalents: darkened CGA originals, contrast-safe
   on the warm surface. Variables defined in :root above.          */

[data-md-color-scheme="dos-light"] .md-typeset h1 { color: var(--dos-red);                  font-weight: 700; }
[data-md-color-scheme="dos-light"] .md-typeset h2 { color: var(--borland-paper-h2);          font-weight: 700; }
[data-md-color-scheme="dos-light"] .md-typeset h3 { color: var(--borland-paper-green);       font-weight: 700; }
[data-md-color-scheme="dos-light"] .md-typeset h4 { color: var(--borland-paper-link);        font-weight: 400; }
[data-md-color-scheme="dos-light"] .md-typeset h5 { color: var(--dos-blue);                  font-weight: 400; }
[data-md-color-scheme="dos-light"] .md-typeset h6 { color: var(--borland-paper-violet);      font-weight: 400; }


/* ── Light strong and emphasis ─────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset strong,
[data-md-color-scheme="dos-light"] .md-typeset b {
  color: var(--dos-black);
  font-weight: 700;
}

[data-md-color-scheme="dos-light"] .md-typeset em,
[data-md-color-scheme="dos-light"] .md-typeset i {
  color: var(--theme-hex-9a2f6f);  /* pinkish meta — no named paper var */
  font-style: italic;
}

[data-md-color-scheme="dos-light"] .md-typeset strong em,
[data-md-color-scheme="dos-light"] .md-typeset em strong,
[data-md-color-scheme="dos-light"] .md-typeset strong i,
[data-md-color-scheme="dos-light"] .md-typeset i strong {
  color: var(--theme-hex-9a2f6f);
  font-style: italic;
  font-weight: 700;
}


/* ── Light code ───────────────────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset code:not(pre > code) {
  color: var(--borland-paper-link-hover);
  background-color: var(--borland-surface-secondary);
  border-radius: 0;
}

[data-md-color-scheme="dos-light"] .md-typeset .highlight,
[data-md-color-scheme="dos-light"] .md-typeset pre {
  background-color: var(--borland-surface-strong) !important;
  color: var(--borland-paper-ink);
}


/* Current Material code-copy control: icon-only in light mode */
[data-md-color-scheme="dos-light"] .md-typeset .highlight .md-code__nav,
[data-md-color-scheme="dos-light"] .md-typeset .highlight:hover .md-code__nav,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav:hover,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav:focus-within {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .md-code__button {
  color: var(--theme-rgb-31-36-48-0-42) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  opacity: 1 !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .md-code__button::after {
  background-color: currentColor !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .highlight:hover .md-code__button {
  color: var(--borland-paper-link) !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav:hover .md-code__button,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav:focus-within .md-code__button {
  color: var(--borland-paper-link-hover) !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav:hover .md-code__button::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav:focus-within .md-code__button::after {
  background-color: currentColor !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .highlight .md-code__button:hover,
[data-md-color-scheme="dos-light"] .md-typeset .highlight:hover .md-code__button:hover,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav:hover .md-code__button:hover,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button:hover,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button:focus,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button:focus-visible,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button.focus-visible,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button--active {
  color: var(--borland-paper-link-hover) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .highlight .md-code__button:hover::after,
[data-md-color-scheme="dos-light"] .md-typeset .highlight:hover .md-code__button:hover::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__nav:hover .md-code__button:hover::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button:hover::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button:focus::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button:focus-visible::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button.focus-visible::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-code__button--active::after {
  background-color: currentColor !important;
}

/* Legacy clipboard fallback */
[data-md-color-scheme="dos-light"] .md-typeset .md-clipboard,
[data-md-color-scheme="dos-light"] .md-typeset .md-clipboard:hover,
[data-md-color-scheme="dos-light"] button.md-clipboard,
[data-md-color-scheme="dos-light"] button.md-clipboard:hover {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  opacity: 1 !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .md-clipboard {
  color: var(--theme-rgb-31-36-48-0-42) !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .highlight:hover .md-clipboard {
  color: var(--borland-paper-link) !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .md-clipboard:hover,
[data-md-color-scheme="dos-light"] button.md-clipboard:hover,
[data-md-color-scheme="dos-light"] .md-typeset .md-clipboard:focus,
[data-md-color-scheme="dos-light"] button.md-clipboard:focus {
  color: var(--borland-paper-link-hover) !important;
}

[data-md-color-scheme="dos-light"] .md-typeset .md-clipboard::after,
[data-md-color-scheme="dos-light"] button.md-clipboard::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-clipboard:hover::after,
[data-md-color-scheme="dos-light"] button.md-clipboard:hover::after,
[data-md-color-scheme="dos-light"] .md-typeset .md-clipboard:focus::after,
[data-md-color-scheme="dos-light"] button.md-clipboard:focus::after {
  background-color: currentColor !important;
}


/* ── Light blockquote ──────────────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset blockquote {
  background-color: var(--borland-surface-panel);
  border-left-color: var(--borland-paper-link);
  color: var(--borland-paper-ink);
}


/* ── Light tables ──────────────────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset table:not([class]) th {
  background-color: var(--borland-surface-secondary);
  color: var(--borland-paper-ink);
  font-weight: 700;
  border-bottom-color: var(--borland-paper-rule);
}

[data-md-color-scheme="dos-light"] .md-typeset table:not([class]) td {
  background-color: var(--borland-surface-page);
  color: var(--borland-paper-ink);
}

[data-md-color-scheme="dos-light"] .md-typeset table:not([class]) tr:nth-child(even) td {
  background-color: var(--borland-surface-panel);
}

[data-md-color-scheme="dos-light"] .md-typeset table:not([class]) {
  border-color: var(--borland-paper-rule);
}


/* ── Light horizontal rule and selection ───────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset hr {
  border: none;
  height: 6px;
  background: linear-gradient(
    to bottom,
    transparent                    0,    transparent                    1px,
    var(--borland-paper-link)      1px,  var(--borland-paper-link)      2px,
    transparent                    2px,  transparent                    4px,
    var(--borland-paper-link)      4px,  var(--borland-paper-link)      5px,
    transparent                    5px,  transparent                    6px
  );
}

[data-md-color-scheme="dos-light"] ::selection {
  background-color: var(--theme-rgb-255-255-85-0-72);
  color: var(--dos-black);
}


/* ── Light primary navigation tabs ─────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-tabs {
  background-color: var(--borland-surface-secondary) !important;
  border-top: 1px solid var(--borland-surface-strong);
  border-bottom: 0;
}

[data-md-color-scheme="dos-light"] .md-tabs__link {
  color: var(--borland-paper-ink);
  opacity: 1;
}

[data-md-color-scheme="dos-light"] .md-tabs__link--active,
[data-md-color-scheme="dos-light"] .md-tabs__link:hover,
[data-md-color-scheme="dos-light"] .md-tabs__link:focus {
  color: var(--borland-paper-link-hover);
  font-weight: 700;
  opacity: 1;
}


/* ── Light content tabs ─────────────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset .tabbed-set {
  border-color: var(--borland-paper-rule);
}

[data-md-color-scheme="dos-light"] .md-typeset .tabbed-labels {
  background-color: var(--borland-surface-strong);
  border-bottom: 0;
}

[data-md-color-scheme="dos-light"] .md-typeset .tabbed-labels > label {
  color: var(--borland-paper-ink);
}

[data-md-color-scheme="dos-light"] .md-typeset .tabbed-labels > label:hover,
[data-md-color-scheme="dos-light"] .md-typeset .tabbed-labels > label:focus {
  color: var(--borland-paper-link-hover);
}

[data-md-color-scheme="dos-light"] .md-typeset .tabbed-set > input:checked + label,
[data-md-color-scheme="dos-light"] .md-typeset .tabbed-labels > label[aria-selected="true"] {
  color: var(--dos-blue);
  font-weight: 700;
}

[data-md-color-scheme="dos-light"] .md-typeset .tabbed-content {
  background-color: var(--borland-surface-panel);
}


/* ── Light buttons ──────────────────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-button {
  background-color: var(--borland-paper-panel);
  border-color: var(--borland-paper-rule) !important;
  color: var(--borland-paper-link) !important;
  border-radius: 0;
  box-shadow: none;
}

[data-md-color-scheme="dos-light"] .md-button:hover,
[data-md-color-scheme="dos-light"] .md-button:focus {
  background-color: var(--borland-paper-panel-2);
  border-color: var(--borland-paper-link-hover) !important;
  color: var(--borland-paper-link-hover) !important;
  box-shadow: none;
}

[data-md-color-scheme="dos-light"] .md-button.md-button--primary {
  background-color: var(--borland-surface-secondary);
  border-color: var(--borland-panel-2) !important;
  color: var(--dos-white) !important;
  font-weight: 700;
  box-shadow: none;
}

[data-md-color-scheme="dos-light"] .md-button.md-button--primary:hover,
[data-md-color-scheme="dos-light"] .md-button.md-button--primary:focus {
  background-color: var(--borland-panel);
  border-color: var(--borland-paper-link-hover) !important;
  color: var(--dos-yellow) !important;
  box-shadow: none;
}


/* ── Light back to top ──────────────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-top {
  background-color: var(--borland-surface-secondary) !important;
  color: var(--borland-paper-ink) !important;
  font-weight: 700;
}

[data-md-color-scheme="dos-light"] .md-top:hover,
[data-md-color-scheme="dos-light"] .md-top:focus,
[data-md-color-scheme="dos-light"] .md-top:focus-visible {
  background-color: var(--borland-paper-link-hover) !important;
  color: var(--borland-paper-bg) !important;
  border-color: var(--borland-paper-link-hover) !important;
  outline: none !important;
}

[data-md-color-scheme="dos-light"] .md-top svg {
  fill: currentColor !important;
}


/* ── Light links ────────────────────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset a {
  color: var(--borland-paper-link) !important;
  font-weight: inherit !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  text-decoration-color: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}

[data-md-color-scheme="dos-light"] .md-typeset a:hover,
[data-md-color-scheme="dos-light"] .md-typeset a:focus {
  color: var(--borland-paper-link-hover) !important;
  background-color: transparent !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
  outline-color: var(--borland-paper-link-hover);
}

/* Footer lives on dark blue chrome — footer links use dark-mode cyan. */
[data-md-color-scheme="dos-light"] .md-footer a {
  color: var(--dos-bright-cyan) !important;
  font-weight: inherit !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  text-decoration-color: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}

[data-md-color-scheme="dos-light"] .md-footer a:hover,
[data-md-color-scheme="dos-light"] .md-footer a:focus {
  color: var(--dos-yellow) !important;
  background-color: transparent;
  text-decoration: none !important;
  text-decoration-line: none !important;
  -webkit-text-decoration-line: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}

[data-md-color-scheme="dos-light"] .md-footer .md-social__link svg {
  fill: currentColor !important;
}

[data-md-color-scheme="dos-light"] .md-typeset a strong,
[data-md-color-scheme="dos-light"] .md-typeset a b {
  color: var(--dos-black) !important;
  font-weight: 700 !important;
}

[data-md-color-scheme="dos-light"] .md-footer a strong,
[data-md-color-scheme="dos-light"] .md-footer a b {
  color: var(--dos-white) !important;
  font-weight: 700 !important;
}


/* ── Light abbreviations, deletions, keyboard keys, mark ───────── */

[data-md-color-scheme="dos-light"] .md-typeset abbr {
  text-decoration: none;
  border-bottom: 1px dotted var(--borland-paper-rule);
  cursor: help;
}

[data-md-color-scheme="dos-light"] .md-typeset del,
[data-md-color-scheme="dos-light"] .md-typeset s {
  text-decoration: line-through;
  text-decoration-thickness: 1px;
  text-decoration-color: var(--dos-red);
  color: var(--dos-red);
}

[data-md-color-scheme="dos-light"] .md-typeset kbd {
  font-size: .80em;
  background-color: var(--borland-paper-panel);
  color: var(--borland-paper-link);
  border: 1px solid var(--borland-paper-rule);
  border-bottom-width: 2px;
  border-radius: 0;
  padding: .1em .38em;
  box-shadow: none;
  letter-spacing: .01em;
  white-space: nowrap;
}

[data-md-color-scheme="dos-light"] .md-typeset mark,
[data-md-color-scheme="dos-light"] .md-search-result mark,
[data-md-color-scheme="dos-light"] .md-search-result__article mark {
  background-color: var(--dos-yellow) !important;
  color: var(--dos-black) !important;
  box-shadow: none !important;
  border-radius: 0;
  padding: 0 .15em;
}


/* ── Light captions and custom classes ─────────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset figcaption,
[data-md-color-scheme="dos-light"] .md-typeset .figure-caption,
[data-md-color-scheme="dos-light"] .md-typeset .table-caption {
  color: var(--borland-paper-muted);
}

[data-md-color-scheme="dos-light"] .md-typeset .md-comment {
  display: none;
}

[data-md-color-scheme="dos-light"] .md-typeset .md-underline,
[data-md-color-scheme="dos-light"] .md-typeset ins {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .12em;
  color: inherit;
}

[data-md-color-scheme="dos-light"] .md-typeset .bq-attribution {
  color: var(--borland-paper-muted);
  font-size: .90em;
  text-align: right;
}


/* ── Light annotations ─────────────────────────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset div.annotation {
  font-size: .78em;
  line-height: 1.15;
  color: var(--borland-paper-muted);
  background: var(--borland-paper-panel);
  border-left: 1px dotted var(--borland-paper-rule);
  margin: .15em 0 .2em .5em;
  padding: .1em .55em;
  border-radius: 0;
}

[data-md-color-scheme="dos-light"] .md-typeset span.annotation {
  font-size: .78em;
  color: var(--borland-paper-violet);
  font-style: italic;
  display: inline-block;
  padding: .1em .5em .15em .45em;
}


/* ── Light footnotes and definition lists ─────────────────────── */

[data-md-color-scheme="dos-light"] .md-typeset .footnote::before,
[data-md-color-scheme="dos-light"] .md-typeset .footnote hr {
  display: block;
  width: 6em;
  border: none;
  border-top: 1px solid var(--borland-paper-rule);
  margin: 0 0 .5em;
}

[data-md-color-scheme="dos-light"] .md-typeset dt {
  color: var(--borland-paper-link);
  border-bottom: 1.5px dotted var(--borland-paper-rule);
}


/* ================================================================
   LIGHT NAV SIDEBAR
   ================================================================ */

[data-md-color-scheme="dos-light"] .md-nav__link {
  color: var(--borland-paper-ink);
}

[data-md-color-scheme="dos-light"] .md-nav__link:hover,
[data-md-color-scheme="dos-light"] .md-nav__link:focus {
  color: var(--borland-paper-link-hover);
}

[data-md-color-scheme="dos-light"] .md-nav__link--active {
  color: var(--borland-paper-link-hover) !important;
  font-weight: 700;
}

[data-md-color-scheme="dos-light"] .md-nav__link--passed,
[data-md-color-scheme="dos-light"] .md-nav__link--passed code {
  color: var(--borland-paper-muted);
}


/* ── Light task list ticks ─────────────────────────────────────── */

[data-md-color-scheme="dos-light"]
.md-typeset .task-list-control input:checked ~ .task-list-indicator::before {
  background-color: var(--borland-paper-link-hover);
}


/* ================================================================
   LIGHT ADMONITIONS
   Border, title text, and icon use paper-mode palette colours.
   Note that RGBA colour functions must stay hardcoded — CSS vars cannot be used
   in RGBA colour functions alpha positions across all target browsers.
   ================================================================ */

[data-md-color-scheme="dos-light"] .md-typeset .admonition,
[data-md-color-scheme="dos-light"] .md-typeset details {
  background-color: var(--borland-surface-panel);
  color: var(--borland-paper-ink);
}

/* Note — CGA blue (var(--theme-hex-0000aa)) darkened for paper */
[data-md-color-scheme="dos-light"] .md-typeset .admonition.note,
[data-md-color-scheme="dos-light"] .md-typeset details.note {
  border-color: var(--dos-blue);
}
[data-md-color-scheme="dos-light"] .md-typeset .note > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .note > summary {
  background-color: var(--theme-rgb-0-0-170-0-10);
  color: var(--dos-blue);
}
[data-md-color-scheme="dos-light"] .md-typeset .note > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .note > summary::before {
  background-color: var(--dos-blue);
}

/* Info / Important — paper link teal (var(--theme-hex-006f7f)) */
[data-md-color-scheme="dos-light"] .md-typeset .admonition.info,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.important,
[data-md-color-scheme="dos-light"] .md-typeset details.info,
[data-md-color-scheme="dos-light"] .md-typeset details.important {
  border-color: var(--borland-paper-link);
}
[data-md-color-scheme="dos-light"] .md-typeset .info > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .info > summary,
[data-md-color-scheme="dos-light"] .md-typeset .important > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .important > summary {
  background-color: var(--theme-rgb-0-111-127-0-10);
  color: var(--borland-paper-link);
}
[data-md-color-scheme="dos-light"] .md-typeset .info > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .info > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .important > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .important > summary::before {
  background-color: var(--borland-paper-link);
}

/* Tip / Hint / Success / Check / Done — paper green (var(--theme-hex-006f00)) */
[data-md-color-scheme="dos-light"] .md-typeset .admonition.tip,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.hint,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.success,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.check,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.done,
[data-md-color-scheme="dos-light"] .md-typeset details.tip,
[data-md-color-scheme="dos-light"] .md-typeset details.hint,
[data-md-color-scheme="dos-light"] .md-typeset details.success,
[data-md-color-scheme="dos-light"] .md-typeset details.check,
[data-md-color-scheme="dos-light"] .md-typeset details.done {
  border-color: var(--borland-paper-green);
}
[data-md-color-scheme="dos-light"] .md-typeset .tip > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .tip > summary,
[data-md-color-scheme="dos-light"] .md-typeset .hint > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .hint > summary,
[data-md-color-scheme="dos-light"] .md-typeset .success > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .success > summary,
[data-md-color-scheme="dos-light"] .md-typeset .check > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .check > summary,
[data-md-color-scheme="dos-light"] .md-typeset .done > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .done > summary {
  background-color: var(--theme-rgb-0-111-0-0-10);
  color: var(--borland-paper-green);
}
[data-md-color-scheme="dos-light"] .md-typeset .tip > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .tip > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .hint > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .hint > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .success > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .success > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .check > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .check > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .done > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .done > summary::before {
  background-color: var(--borland-paper-green);
}

/* Warning / Caution — paper brown (var(--theme-hex-aa5500)) */
[data-md-color-scheme="dos-light"] .md-typeset .admonition.warning,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.caution,
[data-md-color-scheme="dos-light"] .md-typeset details.warning,
[data-md-color-scheme="dos-light"] .md-typeset details.caution {
  border-color: var(--borland-paper-link-hover);
}
[data-md-color-scheme="dos-light"] .md-typeset .warning > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .warning > summary,
[data-md-color-scheme="dos-light"] .md-typeset .caution > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .caution > summary {
  background-color: var(--theme-rgb-170-85-0-0-12);
  color: var(--borland-paper-link-hover);
}
[data-md-color-scheme="dos-light"] .md-typeset .warning > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .warning > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .caution > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .caution > summary::before {
  background-color: var(--borland-paper-link-hover);
}

/* Danger / Error / Bug / Failure — CGA red (var(--theme-hex-aa0000)) */
[data-md-color-scheme="dos-light"] .md-typeset .admonition.danger,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.error,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.bug,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.failure,
[data-md-color-scheme="dos-light"] .md-typeset details.danger,
[data-md-color-scheme="dos-light"] .md-typeset details.error,
[data-md-color-scheme="dos-light"] .md-typeset details.bug,
[data-md-color-scheme="dos-light"] .md-typeset details.failure {
  border-color: var(--dos-red);
}
[data-md-color-scheme="dos-light"] .md-typeset .danger > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .danger > summary,
[data-md-color-scheme="dos-light"] .md-typeset .error > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .error > summary,
[data-md-color-scheme="dos-light"] .md-typeset .bug > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .bug > summary,
[data-md-color-scheme="dos-light"] .md-typeset .failure > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .failure > summary {
  background-color: var(--theme-rgb-170-0-0-0-10);
  color: var(--dos-red);
}
[data-md-color-scheme="dos-light"] .md-typeset .danger > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .danger > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .error > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .error > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .bug > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .bug > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .failure > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .failure > summary::before {
  background-color: var(--dos-red);
}

/* Question / FAQ / Help / Example — paper violet (var(--theme-hex-7a2f8a)) */
[data-md-color-scheme="dos-light"] .md-typeset .admonition.question,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.faq,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.help,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.example,
[data-md-color-scheme="dos-light"] .md-typeset details.question,
[data-md-color-scheme="dos-light"] .md-typeset details.faq,
[data-md-color-scheme="dos-light"] .md-typeset details.help,
[data-md-color-scheme="dos-light"] .md-typeset details.example {
  border-color: var(--borland-paper-violet);
}
[data-md-color-scheme="dos-light"] .md-typeset .question > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .question > summary,
[data-md-color-scheme="dos-light"] .md-typeset .faq > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .faq > summary,
[data-md-color-scheme="dos-light"] .md-typeset .help > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .help > summary,
[data-md-color-scheme="dos-light"] .md-typeset .example > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .example > summary {
  background-color: var(--theme-rgb-122-47-138-0-10);
  color: var(--borland-paper-violet);
}
[data-md-color-scheme="dos-light"] .md-typeset .question > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .question > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .faq > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .faq > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .help > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .help > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .example > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .example > summary::before {
  background-color: var(--borland-paper-violet);
}

/* Abstract / Summary / TL;DR — paper periwinkle (var(--theme-hex-394b9a)) */
[data-md-color-scheme="dos-light"] .md-typeset .admonition.abstract,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.summary,
[data-md-color-scheme="dos-light"] .md-typeset .admonition.tldr,
[data-md-color-scheme="dos-light"] .md-typeset details.abstract,
[data-md-color-scheme="dos-light"] .md-typeset details.summary,
[data-md-color-scheme="dos-light"] .md-typeset details.tldr {
  border-color: var(--borland-paper-periwinkle);
}
[data-md-color-scheme="dos-light"] .md-typeset .abstract > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .abstract > summary,
[data-md-color-scheme="dos-light"] .md-typeset .summary > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .summary > summary,
[data-md-color-scheme="dos-light"] .md-typeset .tldr > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .tldr > summary {
  background-color: var(--theme-rgb-57-75-154-0-10);
  color: var(--borland-paper-periwinkle);
}
[data-md-color-scheme="dos-light"] .md-typeset .abstract > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .abstract > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .summary > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .summary > summary::before,
[data-md-color-scheme="dos-light"] .md-typeset .tldr > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .tldr > summary::before {
  background-color: var(--borland-paper-periwinkle);
}

/* Quote — brown (var(--theme-hex-aa5500)) */
[data-md-color-scheme="dos-light"] .md-typeset .admonition.quote,
[data-md-color-scheme="dos-light"] .md-typeset details.quote {
  border-color: var(--borland-paper-link-hover);
}
[data-md-color-scheme="dos-light"] .md-typeset .quote > .admonition-title,
[data-md-color-scheme="dos-light"] .md-typeset .quote > summary {
  background-color: var(--theme-rgb-170-85-0-0-10);
  color: var(--borland-paper-link-hover);
}
[data-md-color-scheme="dos-light"] .md-typeset .quote > .admonition-title::before,
[data-md-color-scheme="dos-light"] .md-typeset .quote > summary::before {
  background-color: var(--borland-paper-link-hover);
}


/* ================================================================
   BUILT-IN DETAIL FIXES
   Blockquote and tab content spacing/typography

   These are deliberately part of the main palette file because they
   correct the default Material spacing/font-size behaviour without
   making any colour-scheme decision.
   ================================================================ */

.md-typeset blockquote {
  margin: 1.25em 0;
  padding: 0.75em 1em;
  font-size: inherit;
  line-height: inherit;
}

.md-typeset blockquote > :first-child {
  margin-top: 0;
}

.md-typeset blockquote > :last-child {
  margin-bottom: 0;
}

.md-typeset .tabbed-content {
  font-size: inherit;
  line-height: inherit;
  padding: 0.9em 1em;
}

.md-typeset .tabbed-block {
  font-size: inherit;
  line-height: inherit;
}

.md-typeset .tabbed-block > :first-child {
  margin-top: 0;
}

.md-typeset .tabbed-block > :last-child {
  margin-bottom: 0;
}


/* ================================================================
   MOBILE NAVIGATION DRAWER

   Mirrors desktop hierarchy:
     Header/top drawer chrome: dark blue chrome in both modes.
     Drawer body: page surface.
     Section title / active row: secondary surface.
     Active/hover text: yellow in dark, brown in light.
   ================================================================ */

@media screen and (max-width: 76.234375em) {

  /* Drawer body */
  [data-md-color-scheme="dos-dark"] .md-nav--primary,
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__scrollwrap,
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__inner {
    background-color: var(--borland-surface-page) !important;
    color: var(--dos-body-text);
  }

  [data-md-color-scheme="dos-light"] .md-nav--primary,
  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__scrollwrap,
  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__inner {
    background-color: var(--borland-surface-page) !important;
    color: var(--borland-paper-ink);
  }

  /* Top drawer title/chrome */
  [data-md-color-scheme="dos-dark"] .md-nav--primary > .md-nav__title,
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__title[for="__drawer"] {
    background-color: var(--borland-panel-3) !important;
    color: var(--dos-light-gray) !important;
    box-shadow: none !important;
  }

  [data-md-color-scheme="dos-light"] .md-nav--primary > .md-nav__title,
  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__title[for="__drawer"] {
    background-color: var(--borland-panel-3) !important;
    color: var(--dos-light-gray) !important;
    box-shadow: none !important;
  }

  /* Nested/section titles inside the drawer */
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__item .md-nav__title {
    background-color: var(--borland-surface-secondary) !important;
    color: var(--dos-yellow) !important;
    box-shadow: none !important;
  }

  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__item .md-nav__title {
    background-color: var(--borland-surface-secondary) !important;
    color: var(--borland-paper-link-hover) !important;
    box-shadow: none !important;
  }

  /* Links */
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__link {
    color: var(--dos-body-text);
    box-shadow: none !important;
  }

  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__link {
    color: var(--borland-paper-ink);
    box-shadow: none !important;
  }

  /* Active/current rows */
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__item--active,
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__item--active > .md-nav__link {
    background-color: var(--borland-surface-secondary) !important;
    color: var(--dos-yellow) !important;
    box-shadow: none !important;
  }

  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__item--active,
  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__item--active > .md-nav__link {
    background-color: var(--borland-surface-secondary) !important;
    color: var(--borland-paper-link-hover) !important;
    box-shadow: none !important;
  }

  /* Hover/focus */
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__link:hover,
  [data-md-color-scheme="dos-dark"] .md-nav--primary .md-nav__link:focus {
    color: var(--dos-yellow) !important;
  }

  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__link:hover,
  [data-md-color-scheme="dos-light"] .md-nav--primary .md-nav__link:focus {
    color: var(--borland-paper-link-hover) !important;
  }
}
