html {
    background: #eee;
}

body {
    background: #fff;
    max-width: 50em;
    margin: 0 auto;
    padding: 2em 5em;
    box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.2);
    font-family: sans-serif;
    min-height: calc(100vh - 4em);
}

table, th, td {
    border: 1px solid #888;
    border-collapse: collapse;
}

th, td {
    padding: .5em;
}

td:first-child {
    text-align: right;
    padding-left: 1em;
}
td ul {
    margin: 0;
    padding-left: 20px;
}

.info-in-header {
    font-size: 1rem;
    font-weight: normal;
}

.table-wrapper {
    overflow-x: auto;
}
.table-wrapper table tr > *:first-child {
    white-space: nowrap;
}

dt {
    font-weight: bold;
}

dd > p:first-child {
    margin-top: 0.5em;
}

@media screen and (max-width: 40em) {
    body {
        padding: 1em;
    }

    dd {
        margin-left: 1em;
    }
}

@media (prefers-color-scheme: dark) {
    html {
        background: #333;
    }

    table, th, td {
        border-color: #555;
    }
    

    body {
        background: #111;
        color: #eee;
        box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.4);
    }

    a:not(:visited) {
        color: #47f;
    }

    a:visited {
        color: #95c;
    }
}

.sparkle::before {
    content: "✨";
    animation: 1s infinite hanten steps(2, jump-none);
    display: inline-block;
    transition: none;
    margin: 0 0.5em;
}

@keyframes hanten {
    0% {
        transform: scale(1, 1);
    }
    50% {
        transform: scale(-1, -1);
    }
    100% {
        transform: scale(1, 1);
    }
}

del a {
    filter: grayscale(1);
}

