/*
@supports (-webkit-touch-callout: none) {} - IOS only fix
@-moz-document url-prefix() {} - FireFox only fix
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, img, kbd, q, samp,
small, sub, sup, tt, var, center,
dl, dt, dd, ol, ul, li,
input, button, textarea, select,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, svg,
/*
strong, b,
ins, u,
strike, s,
em, i,
*/
.elz,
.elz:before,
.elz:after {
    margin:  0;
    padding: 0;
    border:  0 solid transparent;
    background-color: transparent;
    background-attachment: initial;
    outline:    none;
    border-radius: 0;
    box-shadow: none;

    stroke: initial;
    fill:   initial;

    font:            inherit;
    color:           inherit;
    /*vertical-align: baseline;*/

    -webkit-appearance: none;
    -moz-appearance:    none;
    appearance:         none;

    -webkit-overflow-scrolling: touch;
    -webkit-tap-highlight-color: transparent;
    -webkit-text-size-adjust: none;

    border-collapse: separate;
    border-spacing: 0;

    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
}

.elz,
.elz:before,
.elz:after {
    /* Only for Elize reset */
    box-sizing: border-box;
    list-style:      none;
    text-decoration: none;
}

q:before, .elz:before,
q:after,  .elz:after { content: none; }

/* Focus inner */
input::-moz-focus-inner, button::-moz-focus-inner, .elz::-moz-focus-inner { border: 0; padding: 0; }

/* Clear */
input::-ms-clear,  textarea::-ms-clear,  select::-ms-clear,  .elz::-ms-clear,
input::-ms-reveal, textarea::-ms-reveal, select::-ms-reveal, .elz::-ms-reveal { display: none; }

/* Placeholder */
input::placeholder, textarea::placeholder, select::placeholder, .elz::placeholder { opacity: 0.45; color: inherit; }

/* Input type number */
input[type="number"], .elz[type="number"] { -moz-appearance: textfield; }

input[type="number"]::-webkit-inner-spin-button, .elz[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button, .elz[type="number"]::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

input[type="time"]::-webkit-clear-button,
input[type="time"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-calendar-picker-indicator { display: none; }

/* Type date */
input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-calendar-picker-indicator {
    display: none;
    -webkit-appearance: none;
}

/* Input type file */
input[type="file"] { margin-left: -4px; }

/* Firefox fix */
@-moz-document url-prefix() {
    input[type=file] { margin-left: -5px; }
}

input[type=file]::-ms-browse { display: none; }

input[type="file"]::-webkit-file-upload-button,
input[type="file"]::file-selector-button {
    width:   0;
    padding: 0;
    border: none;
    background: transparent;
    color: transparent;
}

/* Autocomplete for webkit fix */
/*
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill { transition: background-image  5000s ease-in-out, background-color  5000s ease-in-out, color 5000s ease-in-out; }
*/

input:-webkit-autofill,        textarea:-webkit-autofill,        select:-webkit-autofill,
input:-webkit-autofill:hover,  textarea:-webkit-autofill:hover,  select:-webkit-autofill:hover,
input:-webkit-autofill:focus,  textarea:-webkit-autofill:focus,  select:-webkit-autofill:focus,
input:-webkit-autofill:active, textarea:-webkit-autofill:active, select:-webkit-autofill:active {
    -webkit-background-clip: text;
    -webkit-text-fill-color: currentColor;
}