@import url("https://fonts.googleapis.com/css?family=B612+Mono&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Serif&display=swap");

:root {
    --symbol-fonts: "Arial Unicode", "Apple Symbols", "Symbol", "Symbola_hint";
    --body-family: "Noto Serif", serif, var(--symbol-fonts);
    --title-family: "Noto Sans", sans-serif, var(--symbol-fonts);
    --mono-family: "B612 Mono", monospace, var(--symbol-fonts);

    --background-color: #f8f8f8;
    --foreground-color: #000000;
    --faded-color: #7f7f7f;
    --quote-color: #dddddd;
    background-color: var(--background-color);
    color: var(--foreground-color);
}

html {
    margin: 0;
    padding: 0;
    font-size: 14pt;
    font-family: var(--body-family);
    line-height: 150%;
}

body {
    margin-top: 1em;
    margin-left: 0;
    margin-right: 0;
    padding-left: 1rem;
    padding-right: 1rem;
    margin-bottom: 0;
    padding-bottom: 0;
}

header, footer, main {
    margin-left: auto;
    margin-right: auto;
    max-width: calc(52rem + 300px);
}

main > div {
    max-width: 50rem;
}

div {
    padding-left: 1rem;
    padding-right: 1rem;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--title-family);
}

h1 {
    padding-left: 1rem;
    padding-right: 1rem;
    line-height: 1.25em;
    margin-bottom: 0;
}

code {
    font-family: var(--mono-family);
}

.logo {
    float: right;
    width: 300px;
    margin-right: 2rem;
    margin-left: 2rem;
}

.logotype {
    margin-right: 0.15rem;
    height: 1.5rem;
}

.breadcrumbs {
    display: flex;
    width: 100%;
    left: 0;
    top: 0;
    position: fixed;
    padding-left: 1em;
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    padding-right: 1em;
    margin: 0;
    background-color: black;
    color: white;
    font-family: var(--title-family);
    font-weight: bold;
    height: 1.5rem;
}

.breadcrumbs a,
.breadcrumbs a:visited {
    color: white;
}

.check-ok {
    color: #308030;
}

.check-fail {
    color: #ff7f7f;
}

.note {
    width: 32rem;
    border-radius: 0.5em;
    padding-left: 0.5em;
    padding-right: 0.5em;
}

.test-set .test-set {
    margin-top: 1em;
    margin-left: 2em;
}

.grammar {
    background-color: #cfdfff;
    border-radius: 1em;
    padding-left: 1em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}

.test-string {
    background-color: #cfdfff;
    border-radius: 1em;
    padding-left: 1em;
    padding-top: 0.25em;
    margin-top: 0.5em;
    padding-bottom: 0.5em;
}

.grammar pre,
.test-string pre {
    background-color: #cfefff;
}

.result {
    background-color: #cfffdf;
    border-radius: 1em;
    padding-left: 1em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    margin-top: 1em;
}

.result pre {
    background-color: #efffef;
}

.unsuccessful {
    background-color: #ffcfcf;
}

.unsuccessful pre {
    background-color: #ffefef;
}

.not-a-grammar, .not-a-sentence, .dynamic-error {
    background-color: #ffcfcf;
    padding-left: 1em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    border-radius: 0.5em;
}

pre {
    border-radius: 0.5em;
    padding-left: 1em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    margin-right: 1em;
}

.app-info-options {
    background-color: #dfdfdf;
    border-radius: 0.5em;
    padding-left: 1em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    margin-top: 1em;
}

.toc {
}

.toc h4 {
    margin-bottom: 0;
}

.toc ul {
    margin-top: 0.25em;
}

.toc ul ul {
    padding-left: 2em;
    margin-top: 0;
}

a, a:visited, a:link {
    color: blue;
}

.index a, .index a:visited,
.toc a, .toc a:visited {
    color: inherit;
}

.index ul {
    column-count: 3;
}

.bibliography {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 4em;
}

.bibliography div {
    padding-left: 1em;
    padding-right: 1em;
}

.bibliography ul {
    list-style: none;
    indent: 2em;
    text-indent: -2em;
}

.bibliography ul li {
    margin-top: 0.5em;
}

.branch, .pull-request {
    padding-left: 2rem;
    padding-bottom: 0.25rem;
    margin-bottom: 1rem;
}

.pull-request div {
    margin-left: 2rem;
}

.prdesc {
    background-color: var(--quote-color);
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding-left: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    border-radius: 0.5rem;
}

ul.changed-files {
    font-family: var(--mono-family);
}

details summary {
    cursor: pointer;
}

details summary span {
    text-decoration: underline;
}    

.announcement {
    border-left: 1em solid rgb(213,94,0);
    border-top-left-radius: 0.25em;
    border-bottom-left-radius: 0.25em;
}

@media screen and (max-width: 1200px) {
    .logo {
        width: 200px;
    }
}

@media screen and (max-width: 900px) {
    .logo {
        width: 100px;
    }
}

@media screen and (max-width: 600px) {
    .logo {
        display: none;
    }
}
