:root {
    /* 
    --bg: #0f0526;
    --fg: #10c77d;
    */
    --bg: #ebde97;
    --fg: #1a6575;
}

html {
    height: 100%;
    background-color: var(--bg);
    color: var(--bg);
}

body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    height: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    margin: 0;
    background: radial-gradient(circle, var(--fg) 0%, transparent 300%);
}

.score {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#bpm-count {
    font-weight: bold;
    font-size: 4.5rem;
    font-family: monospace;
}

#context-string {
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

header {
    margin-top: auto !important;
    /* flex: 1 0 auto; */
}

footer {
    margin-bottom: auto !important;
    /* flex: 1 0 auto; */
}

.prevent-select {
    user-select: none;
}

input[type='checkbox'] {
    width: 1rem;
    height: 1rem;
    line-height: 2rem;
    box-shadow: 0 0 0 2px var(--bg);
    border-radius: 5px;
}

input[type='number'] {
    width: 6rem;
    background-color: var(--bg);
    color: var(--fg);
    font-weight: bold;
    height: 2rem;
    font-size: 1.5rem;
    border: 2px solid var(--fg);
    border-radius: 5px;
}

#settings {
    display: flex;
    flex-direction: column;
    justify-content: start;
    border: 2px solid currentColor;
    border-radius: 5px;
    padding: 1rem;
}

label {
    font-size: 1.25rem;
}

th {
    text-align: end;
}

td {
    text-align: start;
    font-family: monospace;
    font-size: 1.1rem;
}

button {
    font-weight: bold;
    font-size: 1rem;
    background-color: rgba(26, 100, 117, 0);
    padding: 0.5rem 1rem;
    border: 1px solid var(--bg);
    border-radius: 5px;
    color: var(--bg);
}

button:hover {
    cursor: pointer;
    background-color: var(--fg);
    box-shadow: inset 0 0 0 1px var(--bg);
}

.space {
    margin-bottom: 0.5rem;
}