/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Red+Hat+Display:wght@400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Literata:ital,opsz,wght@0,7..72,400;0,7..72,500;0,7..72,600;0,7..72,700;1,7..72,400;1,7..72,500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&display=swap');

/* Headings */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Red Hat Display', system-ui, sans-serif;
}

h1 { font-weight: 800; }
h2 { font-weight: 700; }
h3 { font-weight: 600; }
h4, h5, h6 { font-weight: 600; }

/* Override mdbook's .header:link colour (headings are wrapped in <a> tags) */
.content h1 > .header:link, .content h1 > .header:visited { color: var(--heading-h1); }
.content h2 > .header:link, .content h2 > .header:visited { color: var(--heading-h2); }
.content h3 > .header:link, .content h3 > .header:visited { color: var(--heading-h3); }
.content h4 > .header:link, .content h4 > .header:visited,
.content h5 > .header:link, .content h5 > .header:visited,
.content h6 > .header:link, .content h6 > .header:visited { color: var(--heading-h4); }

/* Body text */
body, p {
    font-family: 'Literata', Georgia, serif;
    font-size: 16px;
    line-height: 1.65;
    font-optical-sizing: auto;
}

/* Code */
code, pre {
    font-family: 'IBM Plex Mono', monospace !important;
    font-size: 0.9em;
    line-height: 1.5;
}

code,
:not(pre):not(a)>.hljs {
    background-color: var(--inline-code-background-color);
    color: var(--inline-code-color);
}

blockquote {
    font-family: 'Literata', Georgia, serif;
    font-style: italic;
    padding-left: 3em;
    padding-right: 3em;
    padding-top: 1em;
    padding-bottom: 1em;
}

.alert {
    position: relative;
    padding: 0.75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 6px;
    font-size: 18px;
    font-weight: 700;
}

.alert-heading {
    color: inherit;
    margin: 0;
    padding: 0;
}

.alert-link {
    font-weight: 700;
}

.alert-primary {
    color: #1a3047;
    background-color: #d6dfe7;
    border-color: #c6d2de;
}

.alert-primary hr {
    border-top-color: #b6c5d5;
}

.alert-primary .alert-link {
    color: #0c1722;
}

.alert-secondary {
    color: #4a4945;
    background-color: #e8e8e6;
    border-color: #b4b465;
}

.alert-secondary hr {
    border-top-color: #d3d3d0;
}

.alert-secondary .alert-link {
    color: #302f2c;
}

.alert-success {
    color: #4c6627;
    background-color: #e9f3db;
    border-color: #94b861;
}

.alert-success hr {
    border-top-color: #d5e9ba;
}

.alert-success .alert-link {
    color: #314119;
}

.alert-info {
    color: #155974;
    background-color: #d4eef9;
    border-color: #66a6c2;
}

.alert-info hr {
    border-top-color: #addef3;
}

.alert-info .alert-link {
    color: #0d3849;
}

.alert-warning {
    color: #7f401f;
    background-color: #fde5d8;
    border-color: #ce865f;
}

.alert-warning hr {
    border-top-color: #fbcab0;
}

.alert-warning .alert-link {
    color: #562b15;
}

.alert-danger {
    color: #712b29;
    background-color: #f7dddc;
    border-color: #c07471;
}

.alert-danger hr {
    border-top-color: #efbbb9;
}

.alert-danger .alert-link {
    color: #4c1d1b;
}

.alert-primary,
.alert-primary>th,
.alert-primary>td {
    background-color: #325D88;
}

.alert-secondary,
.alert-secondary>th,
.alert-secondary>td {
    background-color: #8E8C84;
}

.alert-success,
.alert-success>th,
.alert-success>td {
    background-color: #93C54B;
}

.alert-info,
.alert-info>th,
.alert-info>td {
    background-color: #29ABE0;
}

.alert-danger,
.alert-danger>th,
.alert-danger>td {
    background-color: #d9534f;
}

.alert-warning,
.alert-warning>th,
.alert-warning>td {
    background-color: #F47C3C;
}

img.liffy-bot-alert {
    opacity: 0.60 !important;
}

h4.alert-heading img.liffy-bot-alert {
    height: 18px !important;
}

img.liffy-bot-mascot {
    height: 100px;
    float: left;
}

.footnotes {
    font-size: 10pt;
    padding-top: 2em;
    margin-top: 2em;
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
}

.footnotes ol,
.footnotes ol li {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0.6em;
    margin-right: 0;
}

.footnotes ol {
    /* margin-left: -1em; */
}

.footnotes hr {
    border: 0;
    border-bottom: solid 1px #666;
}
