*,
::before,
::after {
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
	padding: 0;
	margin: 0;
}

html {
	/* 1 */
	-webkit-text-size-adjust: 100%;
	/* 2 */
	-webkit-tap-highlight-color: transparent;
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
	margin: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;
	font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	margin: 0;
}

ul,
ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

dd {
	margin-left: 0;
}

pre {
	font-family: monospace, monospace;
	/* 1 */
	font-size: inherit;
	/* 2 */
}

a {
	background-color: transparent;
	text-decoration: none;
	color: inherit;
}

sup {
	vertical-align: text-top;
}

sub {
	vertical-align: text-bottom;
}

img,
embed,
object,
iframe {
	vertical-align: bottom;
}

button,
input:not[type="radio"],
optgroup,
select,
textarea {
	-webkit-appearance: none;
	appearance: none !important;
	vertical-align: middle;
	color: inherit;
	font: inherit;
	background: transparent;
	padding: 0;
	margin: 0;
	outline: 0;
	border-radius: 0;
	text-align: inherit;
	cursor: pointer;
}

[type="checkbox"] {
	-webkit-appearance: checkbox;
	appearance: checkbox;
}

[type="radio"] {
	-webkit-appearance: radio;
	appearance: radio;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}

button[disabled],
[type="button"][disabled],
[type="reset"][disabled],
[type="submit"][disabled] {
	cursor: default;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

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

option {
	padding: 0;
}

fieldset {
	margin: 0;
	padding: 0;
	min-width: 0;
}

legend {
	color: inherit;
	/* 2 */
	display: table;
	/* 1 */
	max-width: 100%;
	/* 1 */
	padding: 0;
	/* 3 */
	white-space: normal;
	/* 1 */
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	outline-offset: -2px;
	/* 1 */
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	/* 1 */
	font: inherit;
	/* 2 */
}

label[for] {
	cursor: pointer;
}

details {
	display: block;
}

summary {
	display: list-item;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
	font-weight: normal;
}

textarea {
	padding: 1em;
	border: 1px solid;
	height: 10em;
}