@media print {
    :root {
        --ma-main-fg-color: black;
        --md-typeset-color: black;
        --md-admonition-fg-color: black;
        --md-default-fg-color--light: black;
        --md-code-hl-number-color: black;
        --md-code-hl-special-color: black;
        --md-code-hl-function-color: black;
        --md-code-hl-constant-color: black;
        --md-code-hl-keyword-color: black;
        --md-code-hl-string-color: black;
        --md-code-hl-comment-color: black;
        --md-code-bg-color: white;
    }
    html {
        font-size: 95%;
    }
    body { /* for paper printing at exam */
        column-count: 2;
        column-gap: 1em;
        column-rule: 2px solid black;
    }
    .pagebreak { /* page-break-after works, as well */
        clear: both;
        page-break-after: always;
        break-before: column;
    }
    .md-main__inner {
        margin-top: 0;
    }
    .md-content__inner {
        padding-top: 0;
    }
    .md-content__inner:before {
        height: 0;
    }
    .md-typeset {
        h1 {
            margin: 0;
        }
        h1 .twemoji {
            display: none;
        }
        h1::before{
            content: "計算機言語 - ";
        }
        h4 {
            font-size: .68rem !important;
            font-weight: unset;
            margin-block-start: 1em;
            margin-block-end: 1em;
            margin-inline-start: 0px;
            margin-inline-end: 0px;
        }
        h4:has(+p) { /* narrow a title sentence continuing p */
            margin-bottom: 0;
        }
        h4 + p {
            margin-top: 0;
        }
        strong {
            font-weight: unset;
            background: linear-gradient(transparent 95%, black 0%)
        }
        .admonition {
            padding-top: 1em;
            padding-bottom: 1em;
            display: none;
        }
        p:has(+.admonition.exam-answer),
        p:has(+.highlight),
        p:has(+.arithmatex) {
            margin-bottom: .3em;
        }
        .highlight pre {
            margin-top: .1em;
            margin-bottom: .1em;
        }
        .highlight span.filename {
            background-color: unset;
            padding: 0 1em;
            font-size: .95em;
            font-weight: unset;
            font-family: var(--md-code-font-family);
        }
        .md-code__nav {
            display: none;
        }
        .md-code__content {
            padding: 0 0 0 .7em;
            -border: none;
        }
        :not(pre)>code {
            border: .5px solid #999;
            -border-radius: unset;
            -border: none;
            padding: .1em .3em;
            margin: 0 .2em;
        }
        pre>code {
            border: .5px solid #999;
        }
        .md-typeset__scrollwrap {
            margin: 0;
        }
        .md-typeset__table {
            padding: 0;
        }
        table:not([class]) td {
            padding: 0 1em;
        }
        table:not([class]) th {
            font-weight: unset;
            padding: 0em 1em;
        }
        table thead {
            background-color: unset;
        }
        .selection-horizontal ol li {
            float: left;
            padding-right: 1rem;
        }
        .ok {
            display: none;
        }
        .w140 {
            width: 140px;
        }
        .w100 {
            width: 100px;
        }
        .w80 {
            width: 80px;
        }
        .w60 {
            width: 65px;
        }
        .w40 {
            width: 40px;
        }
    }
}


:root>* {
    --md-mermaid-node-bg-color: white;
    --md-mermaid-node-fg-color: black;
}
.md-typeset {
    h1 {
        counter-reset: counter;
    }
    h4 {
        font-size: .8rem;
    }
    h2 {
        -counter-reset: counter;
    }
    h4:before {
        font-weight: bold;
        content : "Q" counter(counter, decimal-leading-zero) ". ";
        counter-increment : counter;
    }
    ol {
        list-style-type: upper-latin;
    }
    p:has(+ .mermaid) {
        text-align: center;
        margin-bottom: 0;
    }
    .mermaid {
        margin: 0;
    }
}
