body {
    font-family: iowan old style,apple garamond,palatino linotype,urw palladio l,P052,Baskerville,serif;
    line-height: 1.5;
    color: #333;
    overflow-x: hidden
}

.container {
    position: relative;
    width: 100%;
    max-width: 45rem;
    box-sizing: border-box;
    padding: 1rem 1.5rem 2rem 1.5rem
}

.header ul {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap
}

.header li {
    margin-right: 20px
}

.header li:last-child {
    margin-right: 0
}

.header a {
    color: #333;
    text-decoration: none
}

a {
    color: #337ab7
}

a.footnote-backref,a.footnote-ref {
    text-decoration: none
}

#TableOfContents {
    display: block
}

#TableOfContents ul li a {
    text-decoration: none
}

img {
    max-width: 100%
}

figure {
    margin: 20px auto;
    width: 80%;
    display: flex;
    flex-direction: column;
    align-items: center
}

figcaption {
    text-align: center;
    margin-top: 8px;
    font-style: italic;
    font-size: .9em
}

footer {
    text-align: center;
    padding: 20px 0;
    border-top: 3px solid #ccc
}

footer .webring {
    text-align: center;
    padding-top: 10px
}

footer .footer-content a {
    text-decoration: none
}

footer #webring-question-mark {
    color: #333;
    font-size: .7em;
    display: inline-block;
    transition: transform .5s ease
}

footer #webring-question-mark:hover {
    transform: rotate(180deg)
}

.col {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1rem;
    margin-right: -1rem
}

.col>div {
    flex: 1 1;
    margin: 1rem 0;
    min-width: 100px;
    max-width: 100%;
    padding: 0 1rem
}

.col .col-inner {
    margin-top: 0;
    margin-bottom: 0
}

@media only screen and (max-width: 768px) {
    .col>div {
        flex-basis:100%
    }
}

.preamble {
    border-left: 4px solid #ccc;
    padding-left: 1rem;
    margin-left: 0;
    margin-right: 0
}

.preamble-date {
    font-style: italic;
    padding-bottom: .5rem
}

table {
    width: 100%;
    border-collapse: collapse
}

th,td {
    padding: 10px;
    border: 1px solid #ccc;
    text-align: left
}

th {
    background-color: #f2f2f2
}

.textbox {
    border: 1px solid #333;
    padding: 0 20px;
    margin-bottom: 20px;
    background-color: #f9f9f9;
    border-radius: 5px
}

blockquote {
    padding: 0 .5rem 0 1.2rem;
    border-left: 4px solid #ccc;
    font-style: italic;
    margin-inline-start:0}

.blogroll-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
    gap: 1rem;
    margin: 1rem 0
}

.blog-card {
    display: block;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: .75rem;
    transition: all .2s ease;
    text-decoration: none;
    color: inherit
}

.blog-card:hover {
    border-color: #337ab7;
    background-color: rgba(90,140,189,5%)
}

.blog-card h3 {
    margin: 0 0 .3rem;
    font-size: .95rem;
    color: #337ab7
}

.blog-card p {
    margin: .3rem 0 0;
    font-size: .8rem
}

