* {
    box-sizing: border-box;
}

body {
    font-family: "DejaVu Serif", Georgia, "Droid Serif", serif;
    font-size: 100%;
    width: 18em;
}

main {
    display: flex;
    flex-direction: column;
}

.small_row, .big_row {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.small_row {
    height: 1.5em;
}

.big_row {
    height: 2em;
}

header {
    align-items: center;
    display: flex;
    margin-bottom: 1.5%;
}

header > img {
    height: 1.25em;
}

header > span {
    font-weight: bold;
    margin-left: 1.5%;
}

label {
    color: #888;
    font-size: 75%;
    font-weight: bold;
}

input {
    border: .1em solid #000;
    border-radius: 0;
    font-size: 82%;
    height: 1.5em;
    padding: 0 0 0 .8%;
    width: 54%;
}

select {
    background-color: #fff;
    border: .1em solid #000;
    border-radius: 0;
    font-size: 82%;
    height: 1.5em;
    width: 54%;
}

.hidden {
    visibility: hidden;
}

#generated {
    font-family: "DejaVu Sans Mono", Menlo, "Lucida Console", monospace;
    font-size: 110%;
    font-weight: bold;
    height: 100%;
    letter-spacing: .05em;
    text-align: center;
    width: 100%;
}

#activatePassword {
    height: 100%;
    width: 100%;
}

meter {
    border: .1em solid #000;
    height: 2.5em;
    margin-top: .2em;
    width: 100%;
}

@supports (-moz-appearance:none) {
    meter {
      height: 1.3em;
    }
}

meter::-webkit-meter-bar,
meter::-webkit-meter-even-less-good-value,
meter::-webkit-meter-suboptimum-value,
meter::-webkit-meter-optimum-value {
    transition: width 0.1s ease-out;
}

#strengthValue {
    cursor: default;
    font-family: "DejaVu Sans Mono", "Andale Mono", Consolas, Monaco, monospace;
    font-weight: bold;
    margin: 1.4% 0 0 44%;
    position: absolute;
    z-index: 1
}

#button_row {
    margin-top: 1.5%;
    white-space: nowrap;
}

#copypassword, #injectpassword, #options {
    font-size: 90%;
    height: 90%;
    width: 32%;
}

*:not(input) {
    user-select: none;
}
