/*
 * Form inputs
 */

input[type="checkbox"]:focus,
input[type="radio"]:focus,
input[type="submit"]:focus,
input[type="text"]:focus,
select:focus {
    -webkit-box-shadow: 0px 0px 4px 2px rgba(59,153,252,1.0);
       -moz-box-shadow: 0px 0px 4px 2px rgba(59,153,252,1.0);
            box-shadow: 0px 0px 4px 2px rgba(59,153,252,1.0);
}

/* Shared checkbox/radio */

input[type="checkbox"],
input[type="radio"] {
    -webkit-appearance: none;
        -moz-appearance: none;
            appearance: none;
    background-color: #fafafa;
    border: 1px solid #cacece;
    -webkit-box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05);
       -moz-box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05);
            box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05);
    padding: 6px;
    vertical-align: middle;
    display: inline-block;
    position: relative;
    cursor: pointer;
}

input[type="checkbox"]:active,
input[type="radio"]:active {
    -webkit-box-shadow: 1px 1px 2px 0px rgba(0,0,0,0.2), inset 1px 1px 2px rgba(0,0,0,0.2);
       -moz-box-shadow: 1px 1px 2px 0px rgba(0,0,0,0.2), inset 1px 1px 2px rgba(0,0,0,0.2);
            box-shadow: 1px 1px 2px 0px rgba(0,0,0,0.2), inset 1px 1px 2px rgba(0,0,0,0.2);
}

input[type="checkbox"]:checked,
input[type="radio"]:checked {
    background-color: #e9ecee;
    border: 1px solid #adb8c0;
    -webkit-box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05), inset 15px 10px -12px rgba(255,255,255,0.1);
       -moz-box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05), inset 15px 10px -12px rgba(255,255,255,0.1);
            box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05), inset 15px 10px -12px rgba(255,255,255,0.1);
    color: #99a1a7;
}


/* Checkbox only */

input[type="checkbox"] {
    top: -2px;
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
}

input[type="checkbox"]:checked::after {
    content: '\2714\FE0E';
    font-size: 28px;
    position: absolute;
    top: -16px;
    left: 1px;
    color: #6b6;
}

/* Radio button only*/

input[type="radio"] {
    top: -3px;
    -webkit-border-radius: 50px;
       -moz-border-radius: 50px;
            border-radius: 50px;
}

input[type="radio"]:checked::after {
    content: ' ';
    width: 8px;
    height: 8px;
    -webkit-border-radius: 50px;
       -moz-border-radius: 50px;
            border-radius: 50px;
    position: absolute;
    top: 2px;
    left: 2px;
    background: #99a1a7;
    -webkit-box-shadow: inset 0px 0px 10px rgba(0,0,0,0.3);
       -moz-box-shadow: inset 0px 0px 10px rgba(0,0,0,0.3);
            box-shadow: inset 0px 0px 10px rgba(0,0,0,0.3);
    font-size: 32px;
}

input[type="radio"].yes:checked::after {
    content: '\2714\FE0E';
    font-size: 24px;
    background: none;
    -webkit-box-shadow: none;
       -moz-box-shadow: none;
            box-shadow: none;
    position: absolute;
    top: -13px;
    left: 1.5px;
    color: #6b6;
}

input[type="radio"].no:checked::after {
    content: '\2718';
    font-size: 24px;
    background: none;
    -webkit-box-shadow: none;
       -moz-box-shadow: none;
            box-shadow: none;
    position: absolute;
    top: -10px;
    left: 0px;
    color: #b66;
}

/* Select combo boxes */

select {
    -webkit-appearance: none;
        -moz-appearance: none;
            appearance: none;
    background-color: #fafafa;
    border: 1px solid #cacece;
    -webkit-box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05);
       -moz-box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05);
            box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05);
    padding: 2px 12px 0px 2px;
    text-indent: 0.01px;
    -o-text-overflow: "";
       text-overflow: "";
    overflow: hidden;
    cursor: pointer;

    font-size: 80%;
    font-family: "Josefin Slab";

    background-image: url('../images/select.svg');
    background-repeat: no-repeat;
    background-position: center right;
    -webkit-background-size: 10px 10px;
       -moz-background-size: 10px;
         -o-background-size: 10px;
            background-size: 10px;
}

select:disabled {
    padding-right: 2px;
    background: none;
    cursor: default;
}

select::-ms-expand {
    display: none;
}

select::-moz-focus-inner {
    border: 0;
}

/* Text input boxes */

input[type="text"] {
    background-color: #fff;
    padding: 2px;
    text-align: center;
}

/* Buttons */

input[type="submit"]:disabled,
button:disabled {
    background: #aaa;
    cursor: unset;
}

input[type="submit"],
input[type="submit"]:active:not(:hover),
button, button:active:not(:hover) {
    background: #2F72DA;
    border: none;
    padding: 12px 20px;
    color: #eee;
    text-decoration: none;
    font-size: 100%;
    cursor: pointer;
}

input[type="submit"]:hover:not(:disabled),
input[type="submit"]:hover:active:not(:disabled),
button:hover:not(:disabled),
button:hover:active:not(:disabled) {
    background: #0F52BA;
    text-decoration: none;
}

input[type="submit"]:active:not(:disabled),
button:active:not(:disabled) {
}

input[type="submit"]:hover:active:not(:disabled),
button:hover:active:not(:disabled) {
}

input[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    border: none;
}