:root {
	--color-white: #fff;
	--color-grey-100: #f2f2f7;
	--color-grey-300: #c7c7cc;
	--color-grey-400: #aeaeb2;
	--color-grey: #8e8e93;
	--color-grey-700: #48484a;
	--color-grey-800: #2c2c2e;
	--color-grey-900: #1c1c1e;
	--color-amber: #ffc107;

	--font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
		'Segoe UI Symbol';
	--font-lg: 1.125rem/1.75rem var(--font-family);
	--font-sm: 0.875rem/1.25rem var(--font-family);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
h5,
p {
	margin: 0;
}

html {
	font-size: 16px;
}

a {
	color: inherit;
	text-decoration: none;
	font: inherit;
}

button {
	appearance: none;
	border: none;
	cursor: pointer;
	background: transparent;
}

body {
	color: var(--color-grey-100);
	background: var(--color-grey-900);
	font-size: 1.25rem;
	line-height: 2rem;
	font-family: var(--font-family);
}

h1 {
	font-size: 2.25rem;
	line-height: 2.5rem;
	font-weight: 700;
}

h2 {
	font-size: 1.875rem;
	line-height: 2.25rem;
	font-weight: 700;
}

h3 {
	font-size: 1.5rem;
	line-height: 2rem;
	font-weight: 700;
}

code {
	font: var(--font-lg);
	background: var(--color-grey-700);
	padding: 0.25rem;
	border-radius: 4px;
}

blockquote {
	font: var(--font-lg);
	border-left: 4px solid #0ea5e9;
	background: rgba(14, 165, 233, 0.3);
	border-radius: 8px;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

table {
	--table-border-color: var(--color-grey-700);
	--table-border-radius: 0.5rem;
	border-collapse: separate;
	border-spacing: 0;
	min-width: 350px;
}

table th,
table td {
	border-color: var(--table-border-color);
	border-right: 1px solid;
	border-bottom: 1px solid;
	padding: 0.5rem;
}

table th:first-child,
table td:first-child {
	border-left: 1px solid var(--table-border-color);
}

table th {
	border-top: 1px solid var(--table-border-color);
	text-transform: uppercase;
	text-align: left;
}

table tr:first-child th:first-child {
	border-top-left-radius: var(--table-border-radius);
}

table tr:first-child th:last-child {
	border-top-right-radius: var(--table-border-radius);
}

table tr:last-child td:first-child {
	border-bottom-left-radius: var(--table-border-radius);
}

table tr:last-child td:last-child {
	border-bottom-right-radius: var(--table-border-radius);
}

.c-small {
	max-width: 40rem;
	margin-left: auto;
	margin-right: auto;
	padding-left: 1rem;
	padding-right: 1rem;
}

.container {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 1rem;
	padding-right: 1rem;
}

@media (min-width: 640px) {
	.container {
		max-width: 640px;
	}
}

@media (min-width: 768px) {
	.container {
		max-width: 768px;
	}
}

@media (min-width: 1024px) {
	.container {
		max-width: 1024px;
	}
}

@media (min-width: 1280px) {
	.container {
		max-width: 1280px;
	}
}
