319 lines · 5 KB
Raw Download
1
:root {
2
	color-scheme: light dark;
3
	/* light mode colors */
4
	--primary-100: hsl(190, 85%, 97%);
5
	--primary-200: hsl(190, 82%, 94%);
6
	--primary-300: hsl(190, 80%, 89%);
7
	--primary-400: hsl(190, 75%, 75%);
8
	--primary-500: hsl(190, 70%, 50%);
9
	--primary-600: hsl(190, 75%, 30%);
10
	--primary-700: hsl(190, 80%, 20%);
11
	--text-primary: hsl(190, 15%, 15%);
12
	--text-secondary: hsl(190, 10%, 30%);
13
	/* dark mode colors */
14
	--dm-primary-100: hsl(190, 15%, 10%);
15
	--dm-primary-200: hsl(190, 12%, 15%);
16
	--dm-primary-300: hsl(190, 10%, 20%);
17
	--dm-primary-400: hsl(190, 15%, 35%);
18
	--dm-primary-500: hsl(190, 70%, 50%);
19
	--dm-primary-600: hsl(190, 75%, 60%);
20
	--dm-primary-700: hsl(190, 80%, 70%);
21
	--dm-text-primary: hsl(190, 15%, 95%);
22
	--dm-text-secondary: hsl(190, 10%, 80%);
23
}
24
25
* {
26
	box-sizing: border-box;
27
}
28
29
body {
30
	margin: 0;
31
	line-height: 1.5;
32
	font-family: sans-serif;
33
	color: var(--text-primary);
34
}
35
36
/* Menu */
37
38
.menu-toggle {
39
	display: none;
40
}
41
42
.menu-label {
43
	display: none;
44
	padding: 14px 16px;
45
	color: var(--text-primary);
46
	cursor: pointer;
47
	text-align: center;
48
	background-color: var(--primary-200);
49
}
50
51
ul.topnav {
52
	list-style-type: none;
53
	margin: 0;
54
	padding: 0;
55
	overflow: hidden;
56
	background-color: var(--primary-200);
57
	width: 100%;
58
	display: flex;
59
	justify-content: center;
60
}
61
62
ul.topnav li {
63
	float: none;
64
}
65
66
ul.topnav li a {
67
	display: block;
68
	color: var(--text-primary);
69
	text-align: center;
70
	padding: 14px 16px;
71
	text-decoration: none;
72
}
73
74
ul.topnav li a:hover:not(.active) {
75
	background-color: var(--primary-400);
76
}
77
78
ul.topnav li a.active {
79
	background-color: var(--primary-300);
80
}
81
82
ul.topnav li.right {
83
	float: none;
84
}
85
86
@media screen and (max-width: 800px) {
87
	.menu-label {
88
		display: block;
89
	}
90
	ul.topnav {
91
		flex-direction: column;
92
		align-items: center;
93
		display: none;
94
	}
95
	#toggle:checked ~ .controlled {
96
		display: flex;
97
	}
98
	ul.topnav li.right,
99
	ul.topnav li {
100
		width: 100%;
101
		text-align: center;
102
	}
103
}
104
105
.content {
106
	margin: 20px auto;
107
	max-width: 625px;
108
	padding: 0 10px;
109
}
110
111
112
h1, h2, h3 {
113
	line-height: 1.1;
114
}
115
116
h1 {
117
	font-size: 2rem;
118
}
119
120
a {
121
	color: var(--primary-600);
122
}
123
124
a:hover {
125
	color: var(--primary-700);
126
	background-color: var(--primary-200);
127
}
128
129
/* tables and messages */
130
131
.table-wrapper {
132
	display: table;
133
	width: 100%;
134
}
135
136
.wide-table {
137
    width: max-content;
138
    max-width: 95vw;
139
    margin-left: 50%;
140
    transform: translateX(-50%);
141
}
142
143
.mobile-table {
144
	width: auto;
145
	overflow-x: auto;
146
	display: block;
147
}
148
149
.mobile-table table {
150
	margin: 20px 0;
151
/*	width: max-content;*/
152
}
153
154
table {
155
	border-collapse: collapse;
156
	margin: 20px 0;
157
}
158
159
th, td {
160
	border: 1px solid #000;
161
	padding: 8px;
162
	text-align: left;
163
	vertical-align: top;
164
}
165
166
td div {
167
	padding: 0 0.25em 0.25em 0;
168
}
169
170
textarea {
171
	width: calc(100% - 10px);
172
	max-width: 400px;
173
	height: 100px;
174
}
175
176
/* Hide the checkbox */
177
.toggle-checkbox {
178
	display: none;
179
}
180
181
/* Hide the info row by default */
182
.info-row {
183
	display: none;
184
}
185
186
/* Show the info row when checkbox is checked */
187
.toggle-checkbox:checked + table .info-row {
188
	display: table-row;
189
}
190
191
.checkered {
192
	background: conic-gradient(hsla(0, 0%, 50%, 20%) 90deg, transparent 90deg 180deg, hsla(0, 0%, 50%, 20%) 180deg 270deg, transparent 270deg);
193
	background-repeat: repeat;
194
	background-size: 40px 40px;
195
}
196
197
.warning-message, .error-message {
198
	border-radius: 4px;
199
	padding: 12px;
200
	margin: 20px 0 0 0;
201
	max-height: 30vh;
202
	overflow: scroll;
203
	display: inline-block;
204
	max-width: calc(100% - 30px);
205
}
206
207
.warning-message {
208
	background-color: hsla(28, 100%, 63%, 0.5);
209
	border: 1px solid hsla(28, 100%, 80%, 0.6);
210
}
211
212
.error-message {
213
	background-color: hsla(0, 100%, 63%, 0.5);
214
	border: 1px solid hsla(0, 100%, 80%, 0.6);
215
}
216
217
.error-message h3, .warning-message h3 {
218
	margin-top: 0;
219
}
220
221
li {
222
	line-height: 1.5;
223
}
224
225
.footer {
226
	padding-top: 1em;
227
}
228
229
.warning-list {
230
	margin: 0;
231
}
232
233
.timer {
234
	font-size: 0.8em;
235
	color: var(--text-secondary);
236
	padding-top: 2em;
237
}
238
239
/* help documentation */
240
241
section {
242
	border-top: 3px solid var(--primary-400);
243
	margin-top: 3em;
244
}
245
246
code {
247
	background: hsla(0, 0%, 50%, 0.3);
248
	padding: 0.2em 0.4em;
249
	border-radius: 3px;
250
	font-family: monospace;
251
}
252
253
.forcewrap {
254
	word-break: break-all;
255
}
256
257
@media screen and (max-width: 700px) {
258
	h1 {
259
		font-size: 1.5rem;
260
	}
261
262
	textarea {
263
		height: 50px;
264
	}
265
266
	.table-wrapper {
267
		width: auto;
268
		overflow-x: auto;
269
		display: block;
270
	}
271
272
	table {
273
		margin: 20px 0;
274
		width: unset;
275
	}
276
277
	.wide-table {
278
		transform: unset;
279
		margin-left: unset;
280
		width: unset;
281
	}
282
}
283
284
/* Dark Mode Colors */
285
286
@media (prefers-color-scheme: dark) {
287
	body {
288
		color: var(--dm-text-primary);
289
	}
290
	a {
291
		color: var(--dm-primary-600);
292
	}
293
	a:hover {
294
		color: var(--dm-primary-700);
295
		background-color: var(--dm-primary-200);
296
	}
297
	.menu-label {
298
		color: var(--dm-text-primary);
299
		background-color: var(--dm-primary-200);
300
	}
301
	ul.topnav {
302
		background-color: var(--dm-primary-200);
303
	}
304
	ul.topnav li a {
305
		color: var(--dm-text-primary);
306
	}
307
	ul.topnav li a:hover:not(.active) {
308
		background-color: var(--dm-primary-400);
309
	}
310
	ul.topnav li a.active {
311
		background-color: var(--dm-primary-300);
312
	}
313
	.timer {
314
		color: var(--dm-text-secondary);
315
	}
316
	section {
317
		border-top: 3px solid var(--dm-primary-400);
318
	}
319
}