:root {
	--legal-accent: #214172;
	--legal-text: #222222;
	--legal-muted: #5c6672;
	--legal-rule: #d8dee6;
	--legal-bg-soft: #f4f6f9;
}

* { box-sizing: border-box; }

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	background: #ffffff;
	color: var(--legal-text);
	font: 16px/1.65 "HelveticaNeue-Light", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.legal-bar {
	background: var(--legal-accent);
	color: #e0e0e0;
	padding: 12px 24px;
}

.legal-bar a {
	color: #e0e0e0;
	text-decoration: underline;
	text-underline-offset: 2px;
	font-size: 14px;
}

.legal-bar a:hover,
.legal-bar a:focus { color: #ffffff; }

.legal-wrap {
	max-width: 72ch;
	margin: 0 auto;
	padding: 32px 24px 72px;
}

h1 {
	margin: 0 0 8px;
	font-size: 30px;
	line-height: 1.25;
	font-weight: 600;
	color: var(--legal-accent);
}

h2 {
	margin: 40px 0 12px;
	padding-top: 20px;
	border-top: 1px solid var(--legal-rule);
	font-size: 20px;
	line-height: 1.3;
	font-weight: 600;
	color: var(--legal-accent);
}

h3 {
	margin: 24px 0 8px;
	font-size: 16px;
	font-weight: 600;
}

p, li { margin: 0 0 12px; }

ul, ol { padding-left: 24px; }

.legal-updated {
	margin: 0 0 32px;
	color: var(--legal-muted);
	font-size: 14px;
}

.legal-lead {
	font-size: 17px;
	color: var(--legal-muted);
}

a { color: var(--legal-accent); }

a:focus-visible,
.legal-bar a:focus-visible {
	outline: 2px solid var(--legal-accent);
	outline-offset: 2px;
	border-radius: 2px;
}

.legal-bar a:focus-visible { outline-color: #ffffff; }


.legal-box {
	margin: 0 0 20px;
	padding: 16px 20px;
	background: var(--legal-bg-soft);
	border-left: 4px solid var(--legal-accent);
}

.legal-box p:last-child { margin-bottom: 0; }


.legal-todo {
	background: #fff3cd;
	padding: 1px 5px;
	border-radius: 2px;
	font-weight: 600;
	white-space: nowrap;
}

table {
	width: 100%;
	margin: 0 0 20px;
	border-collapse: collapse;
	font-size: 14px;
}

caption {
	text-align: left;
	padding-bottom: 8px;
	color: var(--legal-muted);
	font-size: 14px;
}

th, td {
	padding: 10px 12px;
	border: 1px solid var(--legal-rule);
	text-align: left;
	vertical-align: top;
}


th:first-child, td:first-child { width: 32%; }
th:nth-child(2), td:nth-child(2) { width: 15%; }

th {
	background: var(--legal-bg-soft);
	font-weight: 600;
}

code {
	padding: 1px 5px;
	background: var(--legal-bg-soft);
	border: 1px solid var(--legal-rule);
	border-radius: 3px;
	font-family: Consolas, "SF Mono", Menlo, monospace;
	font-size: .875em;
	word-break: break-word;
}

td code { border: 0; padding: 1px 3px; }

footer.legal-foot {
	margin-top: 48px;
	padding-top: 20px;
	border-top: 1px solid var(--legal-rule);
	color: var(--legal-muted);
	font-size: 14px;
}

@media (max-width: 600px) {
	body { font-size: 15px; }
	h1 { font-size: 25px; }
	h2 { font-size: 18px; }
	.legal-wrap { padding: 24px 18px 56px; }
	.legal-bar { padding: 10px 18px; }

	/* Waska tabela cookies - naglowki wierszami. */
	table, tbody, tr, td { display: block; width: 100%; }
	thead { display: none; }
	tr {
		margin-bottom: 14px;
		border: 1px solid var(--legal-rule);
	}
	td { border: 0; border-bottom: 1px solid var(--legal-rule); }
	tr td:last-child { border-bottom: 0; }
	td::before {
		content: attr(data-label);
		display: block;
		margin-bottom: 2px;
		color: var(--legal-muted);
		font-size: 12px;
		text-transform: uppercase;
		letter-spacing: .04em;
	}
}
