@import url("https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Source+Code+Pro&display=swap");

:root {
    --aosablue: #e8f0f4;
    --lightborder: 1px;
}

.row {
    display: flex;
    flex-flow: row wrap;
    width: 100%
}

.row > * {
  flex: 1; /* allow children to grow when space available */
}

.col-1 { flex-basis: 8.33%; }
.col-2 { flex-basis: 16.66%; }
.col-3 { flex-basis: 25%; }
.col-4 { flex-basis: 33.33%; }
.col-5 { flex-basis: 41.66%; }
.col-6 { flex-basis: 50%; }
.col-7 { flex-basis: 58.33%; }
.col-8 { flex-basis: 66.66%; }
.col-9 { flex-basis: 75%; }
.col-10 { flex-basis: 83.33%; }
.col-11 { flex-basis: 91.66%; }
.col-12 { flex-basis: 100%; }

.left {
    text-align: left;
}

.right {
    text-align: right;
}

.center {
    text-align: center;
}

html {
    font-family: "Atkinson Hyperlegible", sans-serif;
    font-size: large;
}

code, pre {
    font-family: "Source Code Pro", monospace;
    font-size: normal;
    background-color: var(--aosablue);
}

body {
    width: 68rem;
    margin-left: 1rem;
}

img.cover {
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 2em;
}

div.titlebox {
    background-color: var(--aosablue);
    padding: 10px;
}

p.author {
    font-size: 120%;
}

div.box {
    display: block;
    margin-left: auto;
    margin-right: auto;
    outline-color: var(--aosablue);
    outline-style: solid;
    outline-width: 1px;
    padding-bottom: 1px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 1px;
}

div.figure {
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 1px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 1px;
}

div.figure img {
    max-width: 90%;
}

div.footnotes {
    border-top: solid gray 1px;
}

div.footnotes h2 {
    font-style: italic;
}

div.sect h2 {
    font-style: italic;
}

div.subsect h3 {
    font-style: italic;
}

div.table {
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 1px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 1px;
}

div.table table {
    font-size: small;
    margin-left: auto;
    margin-right: auto;
    outline-color: var(--aosablue);
    outline-style: solid;
    outline-width: var(--lightborder);
}

table {
    border-collapse: collapse;
}

th, td {
    vertical-align: top;
    border: solid var(--lightborder) var(--aosablue);
    padding: 3px;
}

th {
    font-weight: bold;
}

dl.faq dt {
    font-style: italic;
}

dl.faq dd {
    margin-bottom: 10px;
}

h1.chaptertitle {
    font-style: italic;
    font-size: xx-large;
}

h1.chapterauthor {
    font-style: italic;
    font-size: x-large;
}

p.boxtitle {
    text-align: center;
    font-style: italic;
    font-weight: bold;
}

p.pullquote {
    font-style: italic;
}

table.bibtable td {
    text-align: center;
}

table.tasks th {
    vertical-align: top;
}

td {
    vertical-align: top;
}

td.center {
    vertical-align: top;
    text-align: center;
}

th {
    text-align: left;
}

th.center {
    text-align: center;
}
