/* ═══════════════════════════════════════════════════════════════
 *  siggy docs — brand theme
 *  Retro IRC aesthetic with siggy brand palette (navy + blue).
 *  Overrides ALL mdBook themes — we force a single look.
 * ═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

/* ── palette (light — blue-tinted) ─────────────────────── */
:root {
    --irc-bg:         #edf0f5;
    --irc-bg-alt:     #e2e7f0;
    --irc-sidebar-bg: #d8dfe9;
    --irc-code-bg:    #dce2ec;
    --irc-panel-bg:   #c8d0dc;

    --irc-text:       #1e2640;
    --irc-text-dim:   #4a5570;
    --irc-text-light: #6b7590;

    /* accent palette — siggy brand + mIRC classics */
    --irc-blue:       #5b7ec0;
    --irc-green:      #2d8a4e;
    --irc-red:        #c03030;
    --irc-brown:      #7b5804;
    --irc-purple:     #6b44aa;
    --irc-teal:       #1a7a7a;
    --irc-navy:       #2c3553;
    --irc-magenta:    #aa3399;

    /* UI borders — Win95-style bevels */
    --bevel-light:    #ffffff;
    --bevel-dark:     #8090a8;
    --bevel-shadow:   #4a5570;
    --border-mid:     #a8b2c4;

    --link-blue:      #3a5eaa;
    --link-visited:   #6644aa;
}

/* ── force our theme on ALL mdBook theme classes ───────── */
.coal, .light, .ayu, .navy, .rust,
html:not(.js) {
    --bg:                 var(--irc-bg);
    --fg:                 var(--irc-text);
    --sidebar-bg:         var(--irc-sidebar-bg);
    --sidebar-fg:         var(--irc-text);
    --sidebar-active:     var(--irc-blue);
    --sidebar-non-existant: var(--irc-text-light);
    --sidebar-spacer:     var(--border-mid);
    --links:              var(--link-blue);
    --inline-code-color:  var(--irc-teal);
    --theme-popup-bg:     var(--irc-bg);
    --theme-popup-border: var(--border-mid);
    --theme-hover:        var(--irc-bg-alt);
    --icons:              var(--irc-text-dim);
    --icons-hover:        var(--irc-text);
    --scrollbar:          var(--border-mid);
    --quote-bg:           var(--irc-bg-alt);
    --quote-border:       var(--border-mid);
    --table-border-color: var(--border-mid);
    --table-header-bg:    var(--irc-panel-bg);
    --table-alternate-bg: #e4e8f0;
    --searchbar-border-color: var(--border-mid);
    --searchbar-bg:       #ffffff;
    --searchbar-fg:       var(--irc-text);
    --searchbar-shadow-color: var(--bevel-dark);
    --searchresults-header-fg: var(--irc-text-dim);
    --searchresults-border-color: var(--border-mid);
    --searchresults-li-bg: var(--irc-bg-alt);
    --search-mark-bg:     #d4e0ff;
    --warning-border:     #e07030;
    --color-scheme:       light;
    --sidebar-header-border-color: var(--irc-blue);

    --copy-button-filter: invert(45.49%);
    --copy-button-filter-hover: invert(30%) sepia(60%) saturate(1200%) hue-rotate(195deg) brightness(90%) contrast(95%);
    --overlay-bg: rgba(180, 190, 210, 0.5);
}

/* ── hide theme picker & hamburger ─────────────────────── */
#mdbook-theme-toggle,
#mdbook-theme-list {
    display: none !important;
}

/* ── global typography ─────────────────────────────────── */
body,
.content,
.sidebar,
code,
pre,
pre > code,
input,
textarea {
    font-family: 'IBM Plex Mono', 'Cascadia Code', 'Consolas', 'Courier New', monospace !important;
}

html {
    background-color: var(--irc-bg) !important;
}

body {
    color: var(--irc-text);
    font-size: 14px;
    line-height: 1.7;
}

/* ═══════════════════════════════════════════════════════════
 *  MENU BAR — styled as IRC status/title bar
 * ═══════════════════════════════════════════════════════════ */
#mdbook-menu-bar,
#mdbook-menu-bar.bordered {
    background-color: var(--irc-panel-bg) !important;
    border-bottom: 2px solid var(--bevel-dark) !important;
    border-top: 1px solid var(--bevel-light) !important;
}

.menu-bar .icon-button {
    color: var(--irc-text-dim);
}

.menu-bar .icon-button:hover {
    color: var(--irc-text);
}

/* title in menu bar — replace text with logo */
.menu-bar h1.menu-title {
    font-size: 0;
    color: transparent !important;
    background: url('../src/siggy-icon.png') no-repeat left center;
    background-size: 22px 22px;
    height: var(--menu-bar-height);
    min-width: 28px;
    padding-left: 28px;
    display: flex;
    align-items: center;
}

.menu-bar h1.menu-title::after {
    content: 'siggy';
    font-size: 14px;
    font-weight: 700;
    color: var(--irc-navy);
    letter-spacing: 0.02em;
    line-height: 1;
}

/* ═══════════════════════════════════════════════════════════
 *  SIDEBAR — IRC channel list
 * ═══════════════════════════════════════════════════════════ */
.sidebar {
    background-color: var(--irc-sidebar-bg) !important;
    border-right: 2px solid var(--bevel-dark);
}

.sidebar .sidebar-scrollbox {
    background-color: var(--irc-sidebar-bg) !important;
}

/* section headers = IRC network names */
.sidebar .chapter li.part-title {
    color: var(--irc-navy);
    text-transform: uppercase;
    font-size: 0.72em;
    font-weight: 700;
    letter-spacing: 0.1em;
    padding: 0.9em 0 0.35em 10px;
    margin-top: 0.3em;
    border-top: 1px solid var(--border-mid);
    border-bottom: 1px solid var(--border-mid);
    background-color: var(--irc-panel-bg);
}

/* chapter links */
.sidebar .chapter a {
    color: var(--irc-text);
    border-left: 3px solid transparent;
    padding: 0.25em 0.8em;
    display: block;
    transition: background-color 0.1s ease;
    font-size: 0.9em;
}

.sidebar .chapter a:hover {
    color: var(--irc-blue);
    background-color: var(--irc-bg-alt);
    border-left-color: var(--irc-blue);
}

.sidebar .chapter li.chapter-item.expanded > a,
.sidebar .chapter a.active {
    color: #ffffff;
    background-color: var(--irc-blue);
    border-left-color: var(--irc-blue);
    font-weight: 600;
}

/* resize handle */
.sidebar-resize-handle {
    border-right-color: var(--border-mid) !important;
}

/* ═══════════════════════════════════════════════════════════
 *  HEADINGS
 * ═══════════════════════════════════════════════════════════ */
.content h1 {
    color: var(--irc-navy);
    font-size: 1.5em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-bottom: 2px solid var(--irc-navy);
    padding-bottom: 0.3em;
    margin-bottom: 0.8em;
}

.content h2 {
    color: var(--irc-green);
    font-size: 1.2em;
    font-weight: 700;
    border-bottom: 1px solid var(--border-mid);
    padding-bottom: 0.25em;
    margin-top: 1.8em;
}

.content h3 {
    color: var(--irc-brown);
    font-size: 1.05em;
    font-weight: 600;
}

.content h4 {
    color: var(--irc-purple);
    font-size: 0.95em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.content h5,
.content h6 {
    color: var(--irc-text-dim);
    font-weight: 600;
}

/* ═══════════════════════════════════════════════════════════
 *  LINKS — classic blue underline
 * ═══════════════════════════════════════════════════════════ */
.content a {
    color: var(--link-blue);
    text-decoration: underline;
}

.content a:visited {
    color: var(--link-visited);
}

.content a:hover {
    color: var(--irc-red);
}

/* header anchor links: no underline */
.content a.header {
    text-decoration: none;
    color: inherit;
}

.content a.header:hover {
    color: inherit;
    text-decoration: underline;
}

/* ═══════════════════════════════════════════════════════════
 *  INLINE CODE
 * ═══════════════════════════════════════════════════════════ */
.content code {
    color: var(--irc-teal);
    background-color: var(--irc-code-bg);
    border: 1px solid var(--border-mid);
    border-radius: 2px;
    padding: 0.1em 0.35em;
    font-size: 0.9em;
}

/* ═══════════════════════════════════════════════════════════
 *  CODE BLOCKS — Win95 sunken panel + title bar
 * ═══════════════════════════════════════════════════════════ */
.content pre {
    background-color: #ffffff !important;
    border: 2px solid;
    border-color: var(--bevel-dark) var(--bevel-light) var(--bevel-light) var(--bevel-dark);
    border-radius: 0;
    padding: 0.8em 1em;
    position: relative;
    overflow-x: auto;
    margin-top: 0;
}

/* title bar on code blocks */
.content pre::before {
    content: ' Terminal';
    display: block;
    background: linear-gradient(90deg, var(--irc-navy), #3a4a6e);
    color: #ffffff;
    font-size: 0.75em;
    font-weight: 700;
    letter-spacing: 0.04em;
    padding: 0.2em 0.6em;
    margin: -0.8em -1em 0.6em -1em;
    border-bottom: 1px solid var(--bevel-dark);
}

.content pre > code {
    color: var(--irc-text);
    background: none;
    border: none;
    padding: 0;
    font-size: 0.92em;
}

/* ═══════════════════════════════════════════════════════════
 *  BLOCKQUOTES
 * ═══════════════════════════════════════════════════════════ */
.content blockquote {
    border-left: 3px solid var(--irc-green);
    background-color: var(--irc-bg-alt);
    color: var(--irc-text-dim);
    padding: 0.6em 1em;
    margin: 1em 0;
}

/* ═══════════════════════════════════════════════════════════
 *  TABLES — Win95 grid with header bar
 * ═══════════════════════════════════════════════════════════ */
.content table {
    border-collapse: collapse;
    width: 100%;
    margin: 1em 0;
    border: 2px solid;
    border-color: var(--bevel-dark) var(--bevel-light) var(--bevel-light) var(--bevel-dark);
}

.content table th {
    color: #ffffff;
    background: linear-gradient(90deg, var(--irc-navy), #3a4a6e);
    border: 1px solid var(--bevel-dark);
    padding: 0.4em 0.8em;
    text-align: left;
    text-transform: uppercase;
    font-size: 0.8em;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.content table td {
    border: 1px solid var(--border-mid);
    padding: 0.4em 0.8em;
    font-size: 0.93em;
}

.content table tr:nth-child(even) {
    background-color: #e4e8f0;
}

.content table tr:hover {
    background-color: #d0d8ee;
}

/* ═══════════════════════════════════════════════════════════
 *  LISTS
 * ═══════════════════════════════════════════════════════════ */
.content li {
    margin-bottom: 0.15em;
}

.content li > input[type="checkbox"] {
    accent-color: var(--irc-green);
}

/* ═══════════════════════════════════════════════════════════
 *  HORIZONTAL RULES
 * ═══════════════════════════════════════════════════════════ */
.content hr {
    border: none;
    height: 2px;
    border-top: 1px solid var(--bevel-dark);
    border-bottom: 1px solid var(--bevel-light);
    margin: 1.5em 0;
}

/* ═══════════════════════════════════════════════════════════
 *  STRONG / EMPHASIS
 * ═══════════════════════════════════════════════════════════ */
.content strong {
    color: var(--irc-text);
    font-weight: 700;
}

/* ═══════════════════════════════════════════════════════════
 *  SEARCH
 * ═══════════════════════════════════════════════════════════ */
#searchbar {
    background-color: #ffffff !important;
    border: 2px solid !important;
    border-color: var(--bevel-dark) var(--bevel-light) var(--bevel-light) var(--bevel-dark) !important;
    color: var(--irc-text) !important;
    font-family: 'IBM Plex Mono', monospace !important;
}

#searchbar:focus {
    border-color: var(--irc-blue) !important;
    box-shadow: none;
    outline: 1px dotted var(--irc-navy);
    outline-offset: 1px;
}

#searchresults a {
    color: var(--link-blue);
}

#searchresults .teaser {
    color: var(--irc-text-dim);
}

/* ═══════════════════════════════════════════════════════════
 *  NAVIGATION ARROWS
 * ═══════════════════════════════════════════════════════════ */
.nav-chapters {
    color: var(--irc-text-dim);
    transition: color 0.1s ease;
}

.nav-chapters:hover {
    color: var(--irc-blue);
}

/* ═══════════════════════════════════════════════════════════
 *  HELP POPUP
 * ═══════════════════════════════════════════════════════════ */
#mdbook-help-popup {
    background-color: var(--irc-bg) !important;
    border: 2px solid;
    border-color: var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light) !important;
}

#mdbook-help-popup h2 {
    color: var(--irc-navy);
}

#mdbook-help-popup kbd {
    background-color: var(--irc-panel-bg);
    border: 2px solid;
    border-color: var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light);
    color: var(--irc-text);
    font-family: 'IBM Plex Mono', monospace;
    border-radius: 2px;
    padding: 0.1em 0.4em;
}

/* ═══════════════════════════════════════════════════════════
 *  WARNINGS / ADMONITIONS
 * ═══════════════════════════════════════════════════════════ */
.content .warning {
    border-left-color: var(--irc-red);
    background-color: #f5e8e8;
}

/* ═══════════════════════════════════════════════════════════
 *  SELECTION
 * ═══════════════════════════════════════════════════════════ */
::selection {
    background-color: var(--irc-blue);
    color: #ffffff;
}

/* ═══════════════════════════════════════════════════════════
 *  SCROLLBAR
 * ═══════════════════════════════════════════════════════════ */
::-webkit-scrollbar {
    width: 16px;
    height: 16px;
}

::-webkit-scrollbar-track {
    background: var(--irc-bg-alt);
    border: 1px solid var(--border-mid);
}

::-webkit-scrollbar-thumb {
    background: var(--irc-panel-bg);
    border: 2px solid;
    border-color: var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light);
}

::-webkit-scrollbar-thumb:hover {
    background: #b8b8b8;
}

::-webkit-scrollbar-button {
    display: block;
    height: 16px;
    width: 16px;
    background: var(--irc-panel-bg);
    border: 2px solid;
    border-color: var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light);
}

/* ═══════════════════════════════════════════════════════════
 *  FOOTER / STATUS BAR FEEL
 * ═══════════════════════════════════════════════════════════ */

/* bottom of the content area — subtle status-bar border */
#mdbook-content.content main {
    border-bottom: 2px solid;
    border-bottom-color: var(--bevel-dark);
    padding-bottom: 2em;
    margin-bottom: 1em;
}

/* ═══════════════════════════════════════════════════════════
 *  RESPONSIVE
 * ═══════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
    body {
        font-size: 13px;
    }

    .content h1 {
        font-size: 1.3em;
    }

    .content h2 {
        font-size: 1.05em;
    }

    /* simpler code blocks on mobile */
    .content pre::before {
        font-size: 0.7em;
        padding: 0.15em 0.5em;
    }
}

/* ═══════════════════════════════════════════════════════════
 *  DARK MODE TOGGLE BUTTON
 * ═══════════════════════════════════════════════════════════ */
.irc-dark-toggle {
    cursor: pointer;
    line-height: var(--menu-bar-height);
    padding: 0 8px;
}

.irc-dark-toggle .toggle-icon {
    font-size: 1.2em;
}

/* ═══════════════════════════════════════════════════════════
 *  DARK MODE — irssi / terminal IRC aesthetic
 *  Activated via data-irc-mode="dark" on <html>
 * ═══════════════════════════════════════════════════════════ */
html[data-irc-mode="dark"] {
    --irc-bg:         #1e2640;
    --irc-bg-alt:     #252e4a;
    --irc-sidebar-bg: #181f35;
    --irc-code-bg:    #151c30;
    --irc-panel-bg:   #2c3553;

    --irc-text:       #d8dde8;
    --irc-text-dim:   #8090a8;
    --irc-text-light: #5a6a84;

    --irc-blue:       #6b8ed0;
    --irc-green:      #4dbb6a;
    --irc-red:        #e05555;
    --irc-brown:      #cc9944;
    --irc-purple:     #aa77dd;
    --irc-teal:       #44bbbb;
    --irc-navy:       #8ba5d5;
    --irc-magenta:    #dd66cc;

    --bevel-light:    #3a4a6a;
    --bevel-dark:     #0e1525;
    --bevel-shadow:   #000000;
    --border-mid:     #354060;

    --link-blue:      #7099dd;
    --link-visited:   #9988cc;
}

/* override mdBook theme vars in dark mode */
html[data-irc-mode="dark"] .coal,
html[data-irc-mode="dark"] .light,
html[data-irc-mode="dark"] .ayu,
html[data-irc-mode="dark"] .navy,
html[data-irc-mode="dark"] .rust,
html[data-irc-mode="dark"]:not(.js) {
    --bg:                 var(--irc-bg);
    --fg:                 var(--irc-text);
    --sidebar-bg:         var(--irc-sidebar-bg);
    --sidebar-fg:         var(--irc-text-dim);
    --sidebar-active:     var(--irc-blue);
    --sidebar-non-existant: var(--irc-text-light);
    --sidebar-spacer:     var(--border-mid);
    --links:              var(--link-blue);
    --inline-code-color:  var(--irc-teal);
    --theme-popup-bg:     var(--irc-bg);
    --theme-popup-border: var(--border-mid);
    --theme-hover:        var(--irc-bg-alt);
    --icons:              var(--irc-text-dim);
    --icons-hover:        var(--irc-text);
    --scrollbar:          var(--border-mid);
    --quote-bg:           var(--irc-bg-alt);
    --quote-border:       var(--border-mid);
    --table-border-color: var(--border-mid);
    --table-header-bg:    var(--irc-panel-bg);
    --table-alternate-bg: #222a44;
    --searchbar-border-color: var(--border-mid);
    --searchbar-bg:       #151c30;
    --searchbar-fg:       var(--irc-text);
    --searchbar-shadow-color: #0e1525;
    --searchresults-header-fg: var(--irc-text-dim);
    --searchresults-border-color: var(--border-mid);
    --searchresults-li-bg: var(--irc-bg-alt);
    --search-mark-bg:     #3a4a70;
    --warning-border:     #ff8e00;
    --color-scheme:       dark;
    --sidebar-header-border-color: var(--irc-blue);

    --copy-button-filter: invert(55%);
    --copy-button-filter-hover: invert(75%);
    --overlay-bg: rgba(0, 0, 0, 0.5);
}

/* ── dark: page background ─────────────────────────────── */
html[data-irc-mode="dark"] {
    background-color: var(--irc-bg) !important;
}

html[data-irc-mode="dark"] body {
    color: var(--irc-text);
}

/* ── dark: menu bar ────────────────────────────────────── */
html[data-irc-mode="dark"] #mdbook-menu-bar,
html[data-irc-mode="dark"] #mdbook-menu-bar.bordered {
    background-color: var(--irc-panel-bg) !important;
    border-bottom-color: var(--bevel-dark) !important;
    border-top-color: var(--bevel-light) !important;
}

html[data-irc-mode="dark"] .menu-bar h1.menu-title::after {
    color: var(--irc-navy);
}

html[data-irc-mode="dark"] .menu-bar .icon-button {
    color: var(--irc-text-dim);
}

html[data-irc-mode="dark"] .menu-bar .icon-button:hover {
    color: var(--irc-text);
}

/* ── dark: sidebar ─────────────────────────────────────── */
html[data-irc-mode="dark"] .sidebar {
    background-color: var(--irc-sidebar-bg) !important;
    border-right-color: var(--bevel-dark);
}

html[data-irc-mode="dark"] .sidebar .sidebar-scrollbox {
    background-color: var(--irc-sidebar-bg) !important;
}

html[data-irc-mode="dark"] .sidebar .chapter li.part-title {
    color: var(--irc-navy);
    background-color: var(--irc-panel-bg);
    border-color: var(--border-mid);
}

html[data-irc-mode="dark"] .sidebar .chapter a {
    color: var(--irc-text-dim);
}

html[data-irc-mode="dark"] .sidebar .chapter a:hover {
    color: var(--irc-blue);
    background-color: var(--irc-bg-alt);
}

html[data-irc-mode="dark"] .sidebar .chapter li.chapter-item.expanded > a,
html[data-irc-mode="dark"] .sidebar .chapter a.active {
    color: #ffffff;
    background-color: var(--irc-blue);
}

/* ── dark: headings ────────────────────────────────────── */
html[data-irc-mode="dark"] .content h1 {
    color: var(--irc-navy);
    border-bottom-color: var(--irc-navy);
}

html[data-irc-mode="dark"] .content h2 {
    color: var(--irc-green);
    border-bottom-color: var(--border-mid);
}

html[data-irc-mode="dark"] .content h3 {
    color: var(--irc-brown);
}

html[data-irc-mode="dark"] .content h4 {
    color: var(--irc-purple);
}

/* ── dark: code ────────────────────────────────────────── */
html[data-irc-mode="dark"] .content code {
    color: var(--irc-teal);
    background-color: var(--irc-code-bg);
    border-color: var(--border-mid);
}

html[data-irc-mode="dark"] .content pre {
    background-color: #121828 !important;
    border-color: var(--bevel-dark) var(--bevel-light) var(--bevel-light) var(--bevel-dark);
}

html[data-irc-mode="dark"] .content pre::before {
    background: linear-gradient(90deg, #252e4a, #354068);
}

html[data-irc-mode="dark"] .content pre > code {
    color: var(--irc-text);
}

/* ── dark: tables ──────────────────────────────────────── */
html[data-irc-mode="dark"] .content table {
    border-color: var(--bevel-dark) var(--bevel-light) var(--bevel-light) var(--bevel-dark);
}

html[data-irc-mode="dark"] .content table th {
    background: linear-gradient(90deg, #252e4a, #354068);
    border-color: var(--bevel-dark);
}

html[data-irc-mode="dark"] .content table td {
    border-color: var(--border-mid);
}

html[data-irc-mode="dark"] .content table tr:nth-child(even) {
    background-color: #222a44;
}

html[data-irc-mode="dark"] .content table tr:hover {
    background-color: #2a3558;
}

/* ── dark: links ───────────────────────────────────────── */
html[data-irc-mode="dark"] .content a {
    color: var(--link-blue);
}

html[data-irc-mode="dark"] .content a:visited {
    color: var(--link-visited);
}

html[data-irc-mode="dark"] .content a:hover {
    color: var(--irc-red);
}

/* ── dark: blockquotes ─────────────────────────────────── */
html[data-irc-mode="dark"] .content blockquote {
    background-color: var(--irc-bg-alt);
    border-left-color: var(--irc-green);
    color: var(--irc-text-dim);
}

/* ── dark: strong ──────────────────────────────────────── */
html[data-irc-mode="dark"] .content strong {
    color: var(--irc-text);
}

/* ── dark: search ──────────────────────────────────────── */
html[data-irc-mode="dark"] #searchbar {
    background-color: #151c30 !important;
    border-color: var(--bevel-dark) var(--bevel-light) var(--bevel-light) var(--bevel-dark) !important;
    color: var(--irc-text) !important;
}

/* ── dark: hr ──────────────────────────────────────────── */
html[data-irc-mode="dark"] .content hr {
    border-top-color: var(--bevel-dark);
    border-bottom-color: var(--bevel-light);
}

/* ── dark: help popup ──────────────────────────────────── */
html[data-irc-mode="dark"] #mdbook-help-popup {
    background-color: var(--irc-bg) !important;
    border-color: var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light) !important;
}

html[data-irc-mode="dark"] #mdbook-help-popup h2 {
    color: var(--irc-navy);
}

html[data-irc-mode="dark"] #mdbook-help-popup kbd {
    background-color: var(--irc-panel-bg);
    border-color: var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light);
    color: var(--irc-text);
}

/* ── dark: warnings ────────────────────────────────────── */
html[data-irc-mode="dark"] .content .warning {
    background-color: #2a1e30;
}

/* ── dark: selection ───────────────────────────────────── */
html[data-irc-mode="dark"] ::selection {
    background-color: var(--irc-blue);
    color: #ffffff;
}

/* ── dark: scrollbar ───────────────────────────────────── */
html[data-irc-mode="dark"] ::-webkit-scrollbar-track {
    background: #151c30;
    border-color: var(--border-mid);
}

html[data-irc-mode="dark"] ::-webkit-scrollbar-thumb {
    background: var(--irc-panel-bg);
    border-color: var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light);
}

html[data-irc-mode="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #3a4a6a;
}

html[data-irc-mode="dark"] ::-webkit-scrollbar-button {
    background: var(--irc-panel-bg);
    border-color: var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light);
}

/* ── dark: status bar ──────────────────────────────────── */
html[data-irc-mode="dark"] #mdbook-content.content main {
    border-bottom-color: var(--bevel-dark);
}

/* ═══════════════════════════════════════════════════════════
 *  PRINT — strip decorative elements
 * ═══════════════════════════════════════════════════════════ */
@media print {
    .content pre::before {
        display: none !important;
    }

    .irc-dark-toggle {
        display: none !important;
    }
}
