html {
    font-family:
        -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu,
        Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    font-size: 18px;
}

body {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    /* Our styles */
    max-width: 50em;
    margin: 0 auto 5em auto;
    line-height: 1.3;
}
p,
ul,
h1,
h2,
h3 {
    margin-left: 20px;
    margin-right: 20px;
}
li {
    margin-bottom: 0.5em;
}
a {
    color: #09c;
}
a:visited {
    color: #93c;
}
img {
    width: 100%;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not(
        [type="submit"]
    ):not([type="reset"]):not([type="button"]) {
    height: 40px;
    padding-left: 0.25em;
    font-size: 16px;
    box-sizing: border-box;
}

input[type="date"] {
    padding-right: 0.5em;
}

button,
input[type="submit"],
input[type="reset"],
input::file-selector-button,
input[type="button"] {
    height: 40px;
    padding: 0 0.5em;
    font-size: 16px;
    box-sizing: border-box;
}

input::file-selector-button {
    margin-right: 0.5em;
}

input[type="checkbox"],
input[type="radio"] {
    width: 1rem;
    height: 1rem;
    vertical-align: baseline;
}

textarea {
    font-family: inherit;
    min-height: 40px;
    font-size: 16px;
    box-sizing: border-box;
    padding: 0.25em 0 0 0.25em;
    resize: none;
    line-height: 1.33;
}

select {
    min-height: 40px;
    font-size: 16px;
    box-sizing: border-box;
    padding: 0 0.25em;
}
