html, body {
    margin: 0;
    padding: 0;
    height: 100%;
    font-size: 18px;
    font-family: Helvetiva, Arial, sans;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (prefers-color-scheme: light) {
    html.os-default, html.os-default > body {
        background-color: #FFFFE0;
        color: #000;
    }
}
@media (prefers-color-scheme: dark) {
    html.os-default, html.os-default > body {
        background-color: #000;
        color: #FFF;
    }
}
html.light, html.light > body {
    background-color: #FFFFE0;
    color: #000;
}
html.dark, html.dark > body {
    background-color: #000;
    color: #FFF;
}
dl {
    display: inline-block;
    margin: 1em;
}
ol.semantic-roles {
    display: inline;
    list-style: none;
    padding: 0;
}
ol.semantic-roles:before {
    content: '(';
}
ol.semantic-roles:after {
    content: ')';
}
ol.semantic-roles > li {
    display: inline;
}
ol.semantic-roles > li:not(:last-child):after {
    content: ', ';
}
dd {
    margin: 0;
}
span.qualifier:before {
    content: '(';
}
span.qualifier:after {
    content: ')';
}
span.example {
    font-style: italic;
}
em.underline {
    text-decoration: underline;
    text-decoration-style: dotted;
}
@media all and (max-width:600px) {
    html, body {
        font-size: 16px;
    }
}
@media all and (max-width:400px) {
    html,body {
        font-size: 14px;
    }
}
input[type="radio"] {
    height: 0px;
    weight: 0px;
}
label {
    display: block;
}
label#l-theme-os-default:before {
    content: "\25D0";
}
label#l-theme-light:before {
    content: "\263C";
}
label#l-theme-dark:before {
    content: "\263E";
}
input[type="radio"]:checked + label {
    font-weight: bold;
}
/*summary > label {
    display: none;
}
summary > label:has(input:checked) {
    display: inline;
}*/
