/**
 * Correct block display not defined for 'details' or 'summary' in IE 10/11, Firefox
 * Correct block display not defined for 'main' in IE 11
 */
details, main, summary {
    display: block
}

/* Normalize vertical alignment of progress in Chrome, Firefox, and Opera */
progress {
    vertical-align: baseline;
}

/* Prevent modern browsers from displaying audio without controls */
/* Remove excess height in iOS 5 devices */
audio:not([controls]) {
    display: none;
    height: 0;
}

/* Hide template element in IE 11, Safari, and Firefox < 22 */
[hidden],
template {
    display: none;
}

/* Remove background color from active links in IE */
a {
    background-color: transparent;
}

/* Improve readability and enable mouse hover */
a:active, a:hover {
    outline: 0;
}

/* Address missing styling */
abbr[title] {
    border-bottom: 1px dotted;
}

/* Address style set to 'bolder' in Firefox 4+, Safari, and Chrome */
b, strong {
    font-weight: bold;
}

/* Safari and Chrome are missing styling */
dfn {
    font-style: italic;
}

/* Normalize h1 font-size and margin in section and article contexts
   in Firefox 4+, Safari, and Chrome */
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Normalize small font size */
small {
    font-size: 80%;
}

/* Prevent sub and sup from affecting line-height in all browsers */
sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* Remove border when image inside a element in IE */
img {
    border: 0;
}

/* Make SVG overflow hidden in IE */
svg:not(:root) {
    overflow: hidden;
}

/* Fix figure margin not present in Safari */
figure {
    margin: 1em 40px;
}

/* Normalize Firefox quirks */
hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}

/* Contain overflow in all browsers */
pre {
    overflow: auto;
}

/* Address odd em-unit font size rendering in all browsers */
code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

/* Correct color and font inheritance and margins for all browsers */
button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

/* Allow button overflow on IE */
button {
    overflow: visible;
}

/* Normalize inconsistent text-transform inheritance */
button, select {
    text-transform: none;
}

/* Reset default cursor for disabled elements */
button[disabled], html input[disabled] {
    cursor: default;
}

/* Remove inner padding/border in Firefox 4+ */
button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/* Correct Firefox 4+ line height */
input {
    line-height: normal;
}

/* Fix Chrome's increment/decrement cursor style. */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

/* Normalize search box appearance */
input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

/* Remove inner padding and search cancel button in Safari and Chrome on OS X */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/* Consistent border, margin, and padding */
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/* Correct IE */
legend {
    border: 0;
    padding: 0;
}

/* Remove scrollbar in IE */
textarea {
    overflow: auto;
}

/* Don't inherit font-weight */
optgroup {
    font-weight: bold;
}

/* Correct table cell spacing */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

td, th {
    padding: 0;
}
