body {
    font-family: "Century Gothic", "Helvetica", sans-serif;
    font-size: 16px;
    margin: 2em;
    width: calc(100vw - 4em);
    box-sizing: border-box;
    background: #333333;
    color: white;
}

label {
    display: block;
}

.mb {
    margin-bottom: 1em;
}

.mt {
    margin-top: 1em;
}

.boxed {
    border: 1px solid #ffffff22;
    border-radius: 0.3em;
    padding: 1em;
}

#content input,
#content textarea,
#content select,
#content option {
    margin-top: 5px;
    font-size: 1em;
    font-family: inherit;
    width: 100%;
    box-sizing: border-box;
    padding: 0.3em;
}

#content button {
    margin-top: .3em;
}

button {
    padding: 0.3em;
    font-size: 1.2em;
    width: 100%;
}

.template {
    display: none;
}

.control-buttons {
    display: flex;
    align-items: center;
}

.control-buttons + * {
    margin-top: 0.8em;
}

.control-buttons .username {
    margin-top: 0;
}

.control-buttons button {
    display: flex;
    width: 1.2em;
    margin: 0 0 0 0.4em !important;
    height:1.2em;
    box-sizing: border-box;
    padding: 0 0 0 0.2rem;
    line-height: 1rem;
}

.control-buttons button.expand {
    margin-left: auto !important;
}

.item-grid > div {
    width: 100%;
    max-width: 30%;
    min-width: 400px;
}

.item-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: -10px;
}

#tts-output-type input,
#tts-output-user-type input {
    width: initial;
}

#tts-output-type label,
#tts-output-user-type label {
    display: initial;
}

#voice-table {
    width: 100%;
}

#voice-table button {
    font-size: initial;
    border-radius: 0.3em;
}

[data-hidden="1"] {
    display: none !important;
}

audio {
    width: 100%;
}

.sound p {
    margin: 0
}

.sound audio {
    display: none;
}

.labelled-checkbox {
    display: flex;
    justify-content: flex-start;
}

/*.labelled-checkbox label:after {
    content: ":";
}*/

.labelled-checkbox label {
    margin-right: 0.3em;
}

.labelled-checkbox input {
    width: auto !important;
}
