* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    height: 100%;
}

body {
    display: flex;
    height: 100%;
    font-family: system-ui, sans-serif;
    font-weight: 300;
    color: #FFF;
    font-size: 16px;
}
    body.light {
        background: #FFF;
        color: #333;
    }
    body.dark {
        background: #111;
        color: #EEE;
    }

h1 {
    margin: 0 0 0.5em 0;
    font-weight: 400;
}
h2 {
    margin: 0 0 0.75em 0;
    font-weight: 300;
}
h3 {
    margin: 0 0 0.75em 0;
    font-weight: 300;
}
p {
    margin: 0 0 1.25em 0;
    line-height: 1.5em;
}
hr {
    width: 100%;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #CCC;
    margin: 2em 0 2em 0;
}
.dark hr {
    border-bottom: 1px solid #333;
}
table {
    color: inherit;
    border-collapse: collapse;
}
    table thead th {
        font-weight: bold;
        text-align: left;
    }
    table tr td {
        border: 1px solid #CCC;
        padding: 0.5em;
        vertical-align: middle;
    }
    .dark table tr td {
        border: 1px solid #333;
    }
a {
    cursor: pointer;
    text-decoration: underline;
    color: #00AAFF;
}
.dark a {
    
}

select {
    outline: none;
    appearance: none;
}

label {
    font-size: 14px;
    font-weight: 500;
    display: block;
    margin-bottom: 8px;
}

textarea {
    min-height: 100px;
}

input, select, textarea {
    font-family: system-ui, sans-serif;
    /* width: 100%; */
    max-width: 380px;
    border: 1px solid #CCC;
    color: #333;
    background: #FCFCFC;
    border-radius: 0.2em;
    padding: 0.5em 0.75em;
    font-size: 16px;
}
    input:focus, select:focus, textarea:focus {
        outline: none;
    }
.dark input, .dark select, .dark textarea {
    color: #EEE;
    border-color: #333;
    background: #111;
}
input[disabled], select[disabled], textarea[disabled] {
    background: #EEE;
}
.dark input[disabled], .dark select[disabled], .dark textarea[disabled] {
    border-color: #333;
    background: #AAA;
}
/* Input range reset */
input[type=range] {
    padding: 0;
    border: none;
    margin: 0.5em 0;
}
.inputWithButton {
    display: flex;
    max-width: 420px;
}
    .inputWithButton input {
        flex: 1;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        border-right: none;
    }
    .inputWithButton .button {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }
.formComponent {
    margin-bottom: 26px;
}

.button {
    border: none;
    border-radius: 0.5em;
    text-decoration: none;
    user-select: none;
    cursor: pointer;

    background: #222;
    color: #FFF;
    font-size: 14px;
    font-weight: 600;

    width: 100%;
    max-width: 380px;
    padding: 11px;
}
    .button:hover {
        background: #000;
    }
.dark .button {
    background: #222;
    color: #EEE;
}
    .dark .button:hover {
        background: #2A2A2A;
    }

.form {
    margin-bottom: 1.5em;
}

body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    font-family: Arial, sans-serif;
}

#content {
    display: flex;
    height: 100%;
    width: 100%;
}

#navigation {
    width: 320px;
    flex-shrink: 0;
    padding: 1em;

    overflow-y: auto;

    background-color: #111;
    border-right: 1px solid #444;
    
}

#experience {
    width: 100%;
    flex-grow: 1;
    background-color: #000;
    overflow: hidden;
}

#experienceControls {
    width: 320px;
    flex-shrink: 0;
    padding: 1em;
    overflow-y: auto;
    border-left: 1px solid #444;
    background-color: #111;
}

.control {
    margin-bottom: 1em;
}

/* Input of type color */
input[type=color] {
    padding: 0;
    border: none;
    margin: 0.5em 0;
    width: 100%;
    height: 40px;
    border-radius: 0.2em;
}
    input[type=color]::-webkit-color-swatch-wrapper {
        padding: 0;
    }
    input[type=color]::-webkit-color-swatch {
        border: none;
        border-radius: 0.2em;
    }

ul.experienceList {
    list-style-type: none;
    padding: 0;
}

ul.experienceList li {
    cursor: pointer;
    padding: 0 0 0.5em 0;
}

ul.experienceList li:hover {
    color: #00AAFF;
}

.logo {
    width: 38px;
    margin-bottom: 1em;
}

.copyright {
    font-size: .9em;
    margin-top: 1em;
}
