/* Always match the Harnice console. Dark only — do not follow OS light mode. */

:root,
[data-md-color-scheme="slate"],
[data-md-color-scheme="default"] {
    --md-hue: 0;
    --h-bg: #1e1e1e;
    --h-bg2: #252526;
    --h-bg3: #2d2d2d;
    --h-bg4: #333333;
    --h-border: #3c3c3c;
    --h-text: #d4d4d4;
    --h-text-dim: #888888;
    --h-accent: #4ec9b0;
    --h-accent2: #569cd6;
    --h-green: #4caf50;
    --h-orange: #ce9178;
    --h-yellow: #e2c547;

    --md-default-fg-color: #d4d4d4;
    --md-default-fg-color--light: #888888;
    --md-default-fg-color--lighter: #666666;
    --md-default-fg-color--lightest: #3c3c3c;
    --md-default-bg-color: #1e1e1e;
    --md-default-bg-color--light: #252526;
    --md-default-bg-color--lighter: #2d2d2d;
    --md-default-bg-color--lightest: #333333;
    --md-primary-fg-color: #252526;
    --md-primary-fg-color--light: #2d2d2d;
    --md-primary-fg-color--dark: #1e1e1e;
    --md-primary-bg-color: #d4d4d4;
    --md-accent-fg-color: #4ec9b0;
    --md-accent-fg-color--transparent: rgb(78 201 176 / 12%);
    --md-accent-bg-color: #1e1e1e;
    --md-typeset-a-color: #4ec9b0;
    --md-typeset-mark-color: rgb(226 197 71 / 28%);
    --md-code-fg-color: #d4d4d4;
    --md-code-bg-color: #252526;
    --md-code-hl-color: rgb(78 201 176 / 16%);
    --md-footer-bg-color: #252526;
    --md-footer-bg-color--dark: #1e1e1e;
    --md-footer-fg-color: #d4d4d4;
    --md-footer-fg-color--light: #888888;
    --md-footer-fg-color--lighter: #666666;
}

html {
    font-family: Helvetica, "Helvetica Neue", Arial, sans-serif;
    background: #1e1e1e !important;
    color-scheme: dark;
}

body,
.md-main,
.md-main__inner,
.md-content,
.md-content__inner,
.md-container,
.md-wrapper {
    background: #1e1e1e !important;
    color: #d4d4d4 !important;
}

body,
.md-typeset,
.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4,
.md-typeset p,
.md-typeset li,
.md-nav,
.md-header,
.md-footer {
    font-family: Helvetica, "Helvetica Neue", Arial, sans-serif !important;
    color: #d4d4d4 !important;
}

.md-header,
.md-header__inner {
    background: #1e1e1e !important;
    color: #d4d4d4 !important;
    box-shadow: none !important;
    height: auto;
    min-height: 3rem;
}

.md-header {
    border-bottom: 1px solid #3c3c3c;
}

.md-header__inner {
    align-items: center;
}

.md-header__title {
    display: none;
}

.md-header__button {
    color: #d4d4d4 !important;
}

.md-header__button:hover {
    color: #4ec9b0 !important;
}

.md-header__button.md-logo {
    display: block !important;
    width: auto;
    max-width: none;
    height: auto;
    flex-shrink: 1;
    margin: 0.4rem 0.7rem 0.4rem 0;
    padding: 0;
}

.md-header__button.md-logo:hover {
    opacity: 1;
}

.harnice-wordmark {
    display: block;
    margin: 0;
    padding: 6px 8px;
    font-family: ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;
    font-size: 4.2px;
    line-height: 1.12;
    letter-spacing: 0;
    white-space: pre;
    overflow: hidden;
    color: #d4d4d4;
    background: #1e1e1e;
    border: 1px solid #3c3c3c;
    border-radius: 3px;
    user-select: text;
}

@media screen and (max-width: 76.1875em) {
    .md-header__button.md-logo {
        display: block !important;
    }
}

@media screen and (max-width: 720px) {
    .harnice-wordmark {
        font-size: 2.8px;
        padding: 4px 5px;
    }
}

@media screen and (max-width: 420px) {
    .harnice-wordmark {
        font-size: 2.1px;
        padding: 3px 4px;
    }
}

.md-sidebar {
    background: #252526 !important;
}

.md-sidebar--primary {
    border-right: 1px solid #3c3c3c;
}

.md-sidebar--secondary {
    border-left: 1px solid #3c3c3c;
}

.md-nav--primary .md-nav__title,
.md-nav--secondary .md-nav__title {
    background: #252526 !important;
    color: #888 !important;
    box-shadow: none !important;
    border-bottom: 1px solid #3c3c3c;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 11px;
    font-weight: 600;
}

.md-nav__link,
.md-nav__item {
    color: #d4d4d4 !important;
}

.md-nav__link--active,
.md-nav__link:hover,
.md-nav__item .md-nav__link--active {
    color: #4ec9b0 !important;
}

.md-typeset a {
    color: #4ec9b0 !important;
}

.md-typeset a:hover {
    color: #569cd6 !important;
}

.md-typeset mark {
    background: rgb(226 197 71 / 28%);
    color: #d4d4d4;
    box-shadow: none;
}

.md-typeset code,
.md-typeset kbd,
.md-typeset pre {
    font-family: ui-monospace, "SF Mono", Menlo, Consolas, "Cascadia Mono", monospace;
}

.md-typeset code {
    background: #2d2d2d !important;
    border: 1px solid #3c3c3c;
    border-radius: 3px;
    color: #ce9178 !important;
}

.md-typeset pre > code {
    border: none;
    color: #d4d4d4 !important;
    background: transparent !important;
}

.md-typeset .highlight,
.md-typeset pre {
    background: #252526 !important;
    border: 1px solid #3c3c3c;
    border-radius: 4px;
}

.md-clipboard {
    color: #888 !important;
}

.md-typeset table:not([class]) {
    background: #252526 !important;
    border: 1px solid #3c3c3c;
    border-radius: 4px;
}

.md-typeset table:not([class]) th {
    background: #2d2d2d !important;
    color: #d4d4d4 !important;
    border-color: #3c3c3c !important;
}

.md-typeset table:not([class]) td {
    border-color: #3c3c3c !important;
    color: #d4d4d4 !important;
}

.md-typeset .admonition,
.md-typeset details {
    background: #252526 !important;
    border-color: #3c3c3c !important;
    color: #d4d4d4 !important;
}

.md-typeset .md-button {
    background: #2d2d2d !important;
    border: 1px solid #3c3c3c !important;
    border-radius: 4px;
    color: #d4d4d4 !important;
}

.md-typeset .md-button:hover,
.md-typeset .md-button--primary {
    background: #333 !important;
    border-color: #4ec9b0 !important;
    color: #4ec9b0 !important;
}

.md-footer,
.md-footer-meta {
    background: #1e1e1e !important;
    border-top: 1px solid #3c3c3c;
    color: #888 !important;
}

.md-search__form {
    background: #1e1e1e !important;
    border: 1px solid #3c3c3c;
    border-radius: 4px;
}

.md-search__input,
.md-search__input + .md-search__icon,
.md-search__input::placeholder {
    color: #d4d4d4 !important;
    background: transparent !important;
}
