views/style.css (view raw)
1:root {
2 --bg-page: #f4f4f4;
3 --bg-dark: #ccc;
4 --bg-limited: #e4e4e4;
5 --hover: #ddd;
6 --fg: #222;
7 --fg-subtle: #6a6a6a;
8 --fg-limited: #777;
9 --hl: #ddd;
10 --header: #f4f4f4;
11 --header-fg: var(--fg);
12}
13
14::selection {
15 background: var(--fg-limited);
16 color: white;
17}
18
19@media (prefers-color-scheme: dark) {
20 :root {
21 --bg-page: #111;
22 --bg-dark: #222;
23 --fg: #ccc;
24 --hl: #444;
25 --fg-subtle: #ccc;
26 --fg-limited: #509c93;
27 --bg-limited: #333;
28 --header: #509c93;
29 --header-fg: #111;
30 --hover: (--bg-limited);
31 }
32}
33
34* {
35 font-size: 1rem !important;
36}
37@media (prefers-color-scheme: dark) {
38.noise img:not(.emu) {
39 opacity: .5;
40 transition: opacity .5s ease-in-out;
41}
42.noise img:not(.emu):hover {
43 opacity: 1;
44}
45}
46@media (prefers-color-scheme: dark) {
47.noise img:not(.emu) {
48 opacity: .5;
49 transition: opacity .5s ease-in-out;
50}
51.noise img:not(.emu):hover {
52 opacity: 1;
53}
54}
55
56body {
57 padding: 0px;
58 margin: 0px;
59 background: var(--bg-page);
60 color: var(--fg);
61 font-size: 1rem !important;
62 word-wrap: break-word;
63 font-family: "InterVar", -apple-system, sans-serif, "Noto Color Emoji";
64 line-height: 1.2;
65 overscroll-behavior-y: contain;
66 overflow: overlay;
67}
68pre, code {
69 white-space: pre-wrap;
70}
71blockquote {
72 margin-left: 0em;
73 margin-bottom: 0em;
74 padding-left: 0.5em;
75 border-left: 1px solid var(--fg-subtle);
76}
77cite {
78 margin-left: 2em;
79}
80table {
81 display: block;
82 max-width: 100%;
83 overflow-x: auto;
84}
85
86form, input, textarea {
87 font-family: "InterVar", -apple-system, sans-serif, "Noto Color Emoji";
88}
89p {
90 margin-top: 1em;
91 margin-bottom: 1em;
92}
93input {
94 background: var(--bg-page);
95 color: var(--fg);
96 font-size: 1.0em;
97 line-height: 1.2em;
98 padding: 0.4em;
99 border: 1px solid var(--hl);
100}
101#honkform input {
102 font-size: 0.8em;
103}
104body > header {
105 background: var(--header);
106 max-width: 100%;
107 max-height: 100%;
108 margin: 0px;
109 padding: 1em 0em 2em 0em;
110 font-size: 1.5em;
111 color: var(--header-fg);
112}
113body > header span {
114 margin-left: 2em;
115}
116
117.easylinks a {
118 text-decoration: none !important;
119 color: var(--header-fg);
120}
121
122header > details {
123 padding: 1em 1em 1em 1em;
124 color: var(--header-fg);
125 position: absolute;
126 top: 0;
127 left: 0;
128 display: inline;
129 overflow: auto;
130 opacity: 1;
131 overscroll-behavior: contain;
132 z-index: 2;
133}
134header > details[open] {
135 color: var(--fg);
136 padding: 1em 1em 0em 1em;
137 background: var(--bg-dark);
138 margin-bottom: 1em;
139 opacity: 1.0;
140}
141header > details summary span {
142 display: none;
143}
144header > details[open] summary span {
145 display: inline;
146}
147header > details li {
148 margin: 1em 0em 1em 0em;
149}
150details summary {
151 cursor: pointer;
152}
153main {
154 max-width: 655px;
155 margin: auto;
156 font-size: 1.5em;
157}
158hr {
159 border-color: var(--hl);
160}
161.info {
162 background: var(--bg-page);
163 border: 1px solid var(--hl);
164 margin-bottom: 1em;
165 margin-top: 1em;
166 padding-left: 1em;
167 padding-right: 1em;
168}
169.info div {
170 margin-top: 1em;
171 margin-bottom: 1em;
172}
173label {
174 font-size: 0.8em;
175}
176label.button, button, select {
177 border: none;
178 font-size: 1rem;
179 font-family: "InterVar", -apple-system, sans-serif, "Noto Color Emoji";
180 color: var(--fg);
181 padding: 0.2em;
182 background: var(--bg-dark);
183 white-space: nowrap;
184}
185
186button:hover {
187 background: var(--hover);
188}
189
190.buttonarray {
191 margin-top: -2.0em;
192}
193.buttonarray button, .buttonarray > span {
194 margin-top: 2.0em;
195 display: inline-block;
196}
197button a {
198 text-decoration: none;
199}
200button {
201 cursor: pointer;
202}
203form {
204 margin-top: 1em;
205}
206textarea {
207 border: 1px solid var(--hl);
208 padding: 0.5em;
209 font-size: 1em;
210 background: var(--bg-page);
211 color: var(--fg);
212 width: 100%;
213 height: 4em;
214 margin-bottom: 0.5em;
215 box-sizing: border-box;
216 max-width: 100%;
217}
218textarea#honknoise {
219 height: 10em;
220}
221input[type="checkbox"] {
222 position: fixed;
223 top: -9999px;
224}
225input[type="checkbox"] + span:after {
226 content: "no";
227}
228input[type="checkbox"]:checked + span:after {
229 content: "yes";
230}
231input[type="checkbox"]:focus + span:after {
232 outline: 1px solid var(--hl);
233}
234input[type=file] {
235 display: none;
236}
237
238.glow {
239 box-shadow: 0px 0px 16px var(--hl);
240}
241.honk {
242 margin: auto;
243 background: var(--bg-page);
244 /*border-top: 1px solid var(--hl);
245 border-left: 1px solid var(--hl);
246 border-right: 1px solid var(--hl);*/
247 padding-left: 0.3em;
248 padding-right: 0.3em;
249 padding-top: 0.7em;
250 overflow: hidden;
251}
252.honk {
253 max-height: 120vh;
254 overflow-y: scroll;
255}
256
257.level1 {
258 padding-left: 1em;
259 padding-right: 1em;
260 margin-left: 0.7em;
261 border-left: 1px solid var(--hl);
262}
263
264
265.level2 {
266 padding-left: 1em;
267 padding-right: 1em;
268 margin-left: 1.4em;
269 border-left: 1px solid var(--hl);
270}
271
272.level3 {
273 padding-left: 1em;
274 padding-right: 1em;
275 margin-left: 2.1em;
276 border-left: 1px solid var(--hl);
277}
278
279.level4 {
280 padding-left: 1em;
281 padding-right: 1em;
282 margin-left: 2.8em;
283 border-left: 1px solid var(--hl);
284}
285
286.chat {
287 border-bottom: 0.5px solid var(--fg-subtle);
288 padding-left: 1em;
289}
290.chat p {
291 margin-top: 0.2em;
292 margin-bottom: 0.2em;
293}
294.chattarget {
295 border-bottom: 1px solid var(--fg-subtle);
296}
297.chatstamp {
298 margin-left: -1em;
299}
300
301.honk #honkform {
302 padding: 1em;
303 border: 1px solid var(--hl);
304}
305.honk a {
306 color: var(--fg);
307}
308.honk header {
309 white-space: nowrap;
310 overflow: hidden;
311 text-overflow: ellipsis;
312 font-size: 0.8em;
313 line-height: 1.1;
314 margin-top: 1em;
315}
316
317.honk header .clip a {
318 color: var(--fg-subtle);
319}
320
321.clip {
322 text-transform: lowercase;
323}
324
325.honk header img {
326 float: left;
327 margin-right: 1em;
328 border-radius: 10%;
329 width: 64px;
330 height: 64px;
331}
332.honk header p {
333 margin-top: 0px;
334}
335
336.honk .noise {
337 line-height: 1.4;
338}
339
340.honk .noise code .kw { font-weight: bold; }
341.honk .noise code .bi { font-weight: bold; }
342.honk .noise code .st { color: var(--fg-subtle); }
343.honk .noise code .nm { color: #ba88ff; }
344.honk .noise code .op { color: #ba88ff; }
345.honk .noise code .tp { font-weight: bold; }
346.honk .noise code .cm { color: var(--fg-subtle); font-style: italic; }
347.honk .noise code .al { color: #aaffbb; }
348.honk .noise code .dl { color: #ffaabb; }
349
350details > summary {
351 list-style: none;
352}
353details > summary::-webkit-details-marker {
354 display: none;
355}
356
357details > summary:after {
358 content: ' \2192'
359}
360
361details[open] > summary:after {
362 content: ' \2193';
363}
364
365.honk details.actions summary {
366 color: var(--fg-subtle);
367}
368
369#emupicker{height:300px;overflow-y:scroll;padding:3px;background:var(--bg-dark);border:solid 5px var(--fg-subtle);text-align:center;display:none;}
370#emupicker img{margin:0;}
371.emuload{background:var(--bg-page);padding:0.5em;}
372
373.subtle .noise {
374 color: var(--fg-subtle);
375 font-size: 0.8em;
376}
377.subtle .noise a {
378 color: var(--fg-subtle);
379}
380.limited {
381 background: var(--bg-limited);
382 color: var(--fg-subtle);
383}
384.limited .glow {
385 box-shadow: 0px 0px 16px var(--fg-limited);
386}
387.limited .noise {
388 color: var(--fg-subtle);
389}
390.limited .noise a {
391 color: var(--fg-limited);
392}
393.limited details.actions summary {
394 color: var(--fg-limited);
395}
396details.noise[open] summary.noise {
397 display: none;
398}
399h1, h2 {
400 font-family: "InterDisplay", sans-serif;
401 font-weight: 500;
402 font-size: 1.6em;
403}
404h3, h4 {
405 font-family: "InterDisplay", sans-serif;
406 font-weight: 500;
407 font-size: 1.1em;
408}
409
410#topmenu ul {
411 list-style: none;
412 padding-left: 1em;
413}
414
415header a {
416 text-decoration: none;
417 color: var(--header-fg);
418}
419
420main header a {
421 text-decoration: underline;
422}
423
424header details a {
425 color: var(--fg);
426}
427
428.honkmeta {
429 color: var(--fg-subtle);
430 float: right;
431 display: inline-flex;
432 padding: 0;
433 margin: 0;
434 list-style: none;
435}
436
437.honkmeta a {
438 color: var(--fg-subtle);
439}
440
441.honkmeta li:after {
442 content: '\00B7';
443 padding-right: 2px;
444 padding-left: 2px;
445}
446
447.honkmeta li:last-child:after {
448 content: '';
449}
450
451.honkmeta li {
452 padding-left: 2px;
453 display: inline-block;
454}
455
456nav {
457 float: right;
458 max-width: 100%;
459}
460
461nav ul {
462 padding: 0;
463 margin: 0;
464 list-style: none;
465 padding-bottom: 20px;
466}
467
468nav ul li {
469 padding-right: 10px;
470 display: inline-block;
471}
472
473img:not(.emu) {
474 background: var(--bg-page);
475}
476img, video {
477 max-width: 100%;
478 object-fit: scale-down;
479 width: auto;
480 height: auto;
481}
482.noise img:not(.emu) {
483 display: block;
484}
485.noise img.donk {
486 max-height: 400px;
487 max-width: 48%;
488 display: inline;
489}
490.noise img.donk {
491 max-height: 400px;
492 max-width: 48%;
493 display: inline;
494}
495img.emu {
496 height: 2em;
497 vertical-align: middle;
498}
499.nophone {
500 position: fixed;
501 opacity: 0.7;
502 cursor: pointer;
503}
504
505#emupicker{height:300px;overflow-y:scroll;padding:3px;background:var(--bg-dark);border:solid 1px var(--fg-subtle);text-align:center;}
506#emupicker img{margin:0;}
507
508a {
509 color: var(--fg);
510}
511
512a:hover {
513 background: var(--hover);
514}
515
516
517
518@media screen and (max-width: 1360px) {
519 .nophone {
520 display: none;
521 }
522}
523@media screen and (max-width: 740px) {
524 body {
525 font-size: 12px;
526 }
527
528 .info {
529 border: none;
530 margin-top: 0px;
531 padding-left: 1em;
532 padding-right: 1em;
533 }
534
535 .honk {
536 padding-left: 1em;
537 padding-right: 1em;
538 }
539
540 .honk header img {
541 width: 48px;
542 height: 48px;
543 border-radius: 10%;
544 }
545 details summary {
546 outline: none;
547 }
548
549 .actions > div {
550 float: right;
551 }
552}
553@media print {
554 #topmenu, #topspacer, #infobox, #refreshbox, .actions {
555 display: none;
556 }
557 html {
558 --bg-page: white;
559 --bg-dark: white;
560 --fg: black;
561 --fg-subtle: black;
562 --fg-limited: #a79;
563 }
564}
565
566/*
567 * CSP: style-src: self
568 */
569
570li.details {
571 list-style-type: none;
572 margin-left: -1em;
573}
574
575.left1em {
576 margin-left: 1em;
577}
578
579.hide {
580 display: none;
581}
582
583.text-left {
584 text-align: left;
585}
586.text-right {
587 text-align: right;
588}
589.text-center {
590 text-align: center;
591}
592
593.font08em {
594 font-size: 0.8em;
595}
596
597.font18em {
598 font-size: 1.8em;
599}
600
601.wsnowrap {
602 white-space: nowrap;
603}
604
605.skinny main {
606 max-width: 700px;
607}
608
609.fontmonospace {
610 font-family: monospace;
611}
612
613#searchbox {
614 width: 95%;
615}
616
617#mecount {
618 border-radius: 50%;
619 text-align: center;
620 color: var(--darker);
621 background: var(--bg-dark);
622 display: inline-block;
623 margin-left: 5px;
624 box-sizing: content-box;
625}