body {
    font-family: "Lato", Helvetica, Arial, sans-serif;

    background-color: #fffefc;
    color: #000000;
}

a {
    color: #0000EE;
}
a:visited {
    color: #0000EE;
}

header img#profile-picture {
    height: 4em;
    width: auto;
    display: inline-block;
    vertical-align: middle;
}
header h1#title {
    display: inline-block;
    vertical-align: middle;
    font-family: "ZCOOL XiaoWei", "Lato", Helvetica, Arial, sans-serif;
}

header #aufay-location {
    font-size: smaller;
    margin: 0;
    margin-top: 5px;
}

.link-list .link-content {
    font-weight: bold;
}

#main #aufay-cons details summary h3 {
    display: inline-block;
    margin: 0;
    font-weight: normal;
    font-size: medium;
}

.con-list .con-item:not(:last-child) {
    margin-bottom: 10px;
}
.con-list .con-name {
    font-weight: bold;
    display: block;
}
.con-list .con-abbr {
    font-size: smaller;
}
.con-list .con-location {
    display: block;
    font-size: smaller;
}
.con-list .con-date {
    display: block;
    font-size: smaller;
}
.con-list .con-volunteer {
    display: block;
    font-size: smaller;
    font-weight: bolder;
}
.con-list .con-panel {
    display: block;
    font-size: smaller;
    font-weight: bolder;
}
.con-list .con-panel .con-panel-recording {
    font-weight: normal;
}
.con-list .con-panel .con-panel-slides {
    font-weight: normal;
}

footer {
    text-align: center;
    color: #999;
    padding-top: 10px;
}
footer .footer-link, footer .footer-link:visited {
    color: inherit;
    text-decoration: none;
}
footer .footer-link:hover {
    text-decoration: underline;
}

body, a, a:visited, header img#profile-picture {
    transition: background-color 0.2s ease, color 0.2s ease, filter 0.2s ease;
}
@media (prefers-color-scheme: dark) {
    body {
        background-color: #262220;
        color: #fffdf7;
    }

    a {
        color: #bbdefb;
    }
    a:visited {
        color: #bbdefb;
    }

    header img#profile-picture {
        filter: brightness(0.9) contrast(0.95) saturate(0.9);
    }
}
