* {
    font-family: 'Ubuntu', sans-serif;

}

@media (prefers-color-scheme: light) {
    * {
        --accent-color: #769dff;
        --accent-color-darker: #7693ff;
        /* dividers */
        --background-color: #ffffff;
    }

    a:not(.icon) {
        color: white;
    }
}

@media (prefers-color-scheme: dark) {
    * {
        color: #EDF2F4;
        --accent-color: #769dff;
        --accent-color-darker: #7693ff;
        --background-color: #1c1c1c;
    }

    a:not(.icon) {
        color: black;
    }
}


p {
    margin: 0;
    padding: 0;
}

h1 {
    width: fit-content;
}

h2 {
    width: fit-content;
}

h3 {
    margin: 10px 0;
}

html {
    background: var(--background-color);
}

body {
    padding: 6vh 20px 0px 20px;
    margin: auto;

    max-width: 800px;
    line-height: 1.5em;
}

a:not(.icon) {
    background-color: var(--accent-color);
    padding: 3px 4px;
    border-radius: 3px;
    transition: 0.3s;
    /* color: black; */
    text-decoration: none;

    white-space: nowrap;
}

a:not(.icon).active {
    text-decoration: underline;
    filter: brightness(95%);
}

a:not(.icon):hover {
    filter: brightness(90%);
    /* padding: 3px 7px; */
    cursor: pointer;
    color: black;
    text-decoration: underline;
}

.detail {
    display: none;
    margin-top: 10px;
    padding: 10px;
    /* border-left: 2px solid bisque; */
    border: 2px solid var(--accent-color);
    border-radius: 5px;
}

.detail.active {
    display: block;
}

.social {
    padding: 0;
}

.social li {
    display: inline-block;
    margin: 0 5px;
}

.projects {
    padding: 0;
}

.projects li {
    display: inline-block;
    margin: 0 5px;
}


th {
    text-align: left;
    border-bottom: 2px solid var(--accent-color);
}

.cv td:first-child {
    width: 90px;
}

.cv td:nth-child(2) {
    width: 28%;
}

table {
    width: 100%;
    line-height: 1.5em;
    border: 2px solid var(--accent-color);
    border-radius: 5px;
    padding: 5px;
    overflow: hidden;
}

.popup {
    border: 2px solid var(--accent-color);
    border-radius: 5px;
    padding: 5px;
    position: fixed;
    top: 10%;
    left: 50%;
    transform: translate(-50%, 0%);
    z-index: 1;
    backdrop-filter: blur(5px);
    background-color: #ffe4c460;
    display: none;
}


.divider {
    background: repeating-linear-gradient(45deg,
            transparent,
            transparent 5px,
            var(--accent-color-darker) 5px,
            var(--accent-color-darker) 10px);

    width: 100%;
    height: 5px;

    margin-top: 20px;
}

.underline::after {
    content: '';
    background: repeating-linear-gradient(45deg,
            transparent,
            transparent 5px,
            var(--accent-color-darker) 5px,
            var(--accent-color-darker) 10px);
    display: block;
    height: 5px;
    border-radius: 5px;
    background-size: 15px 20px;
    background-repeat: repeat-x;
    animation: underline 85s linear infinite;
    animation-play-state: paused;
}

.underline:hover::after {
    animation-play-state: running;
}

@keyframes underline {
    0% {
        background-position: -980px 50%;
    }

    100% {
        background-position: 1000px 50%;
    }
}

h1.underline::after {
    margin-top: 3px;
}


.skills ul {
    margin: 0;
    padding: 0;
}


.skills li {
    display: inline-block;
    margin: 0 5px;
}

.skills li[title] {
    cursor: help;
    text-decoration: underline;

}

span.subtitle.bracketed::before {
    content: '(';
}

span.subtitle {
    font-size: 0.6em;
    color: #999;
}

span.subtitle.medium {
    font-size: 0.8em;
    color: #999;
}

span.subtitle.bracketed::after {
    content: ')';
}

.inline {
    display: inline-block;
}

.icon {
    transition: 0.3s ease-in-out;
    /* scale down by 50%*/
}

.icon img {
    width: 1.5em;
    height: auto;
}

.icon:hover {
    cursor: pointer;
    filter: brightness(75%);
}

/* right floated but align vertically to other subtitle */
.right {
    float: right;
    margin-top: 2.1em;
}