Remove 'Overwhelming fear', it's confusing and not interesting.
[heroik.git] / heroik.css
1 /* The person who associated a work with this deed has dedicated the
2 work to the public domain by waiving all of his or her rights to
3 the work worldwide under copyright law, including all related and
4 neighboring rights, to the extent allowed by law.
5
6 You can copy, modify, distribute and perform the work, even for
7 commercial purposes, all without asking permission.
8
9 See https://creativecommons.org/publicdomain/zero/1.0/ for details.
10 */
11
12 @font-face {
13 font-family: Oranienbaum;
14 font-style: normal;
15 font-weight: 400;
16 src: url('Oranienbaum-Regular.woff') format('woff');
17 }
18
19 @font-face {
20 font-family: Cardo;
21 font-style: normal;
22 font-weight: 400;
23 src: url('Cardo-Regular.woff') format('woff');
24 }
25
26 @font-face {
27 font-family: Cardo;
28 font-style: normal;
29 font-weight: 700;
30 src: url('Cardo-Bold.woff') format('woff');
31 }
32
33 @font-face {
34 font-family: Cardo;
35 font-style: italic;
36 font-weight: 400;
37 src: url('Cardo-Italic.woff') format('woff');
38 }
39
40 * {
41 margin: 0;
42 padding: 0;
43 }
44
45 #change {
46 position: relative;
47 top: 1em;
48 }
49
50 ul {
51 margin-left: 1em;
52 margin-bottom: 1em;
53 }
54
55 ul.cards {
56 list-style-type: none;
57 display: inline-block;
58 margin: auto;
59 }
60
61 html {
62 font-family: Cardo, serif;
63 font-size: 20px;
64 background-color: black;
65 min-height: 100%;
66 height: 100%;
67 }
68
69 body {
70 background-color: black;
71 min-height: 100%;
72 height: 100%;
73 box-sizing: border-box;
74 }
75
76 main {
77 background-color: white;
78 max-width: 25.2em;
79 margin: 0 auto;
80 padding: 1em;
81 display: block;
82 min-height: 100%;
83 box-sizing: border-box;
84 }
85
86 body.standalone header + main {
87 padding-top: 5em;
88 }
89
90 body.standalone header:empty + main {
91 padding-top: 2em;
92 }
93
94 table {
95 border-collapse: collapse;
96 margin: auto;
97 max-width: 25em;
98 }
99
100 table.tall td {
101 padding-top: 0.125em;
102 padding-bottom: 0.125em;
103 }
104
105 thead {
106 font-size: 0.8em;
107 font-variant: small-caps;
108 vertical-align: bottom;
109 text-align: left;
110 }
111
112 th {
113 font-weight: bold;
114 }
115
116 tbody, tfoot {
117 vertical-align: top;
118 text-align: left;
119 }
120
121
122 tbody tr:nth-last-child(odd) {
123 background-color: hsl(270, 30%, 85%);
124 }
125
126 #fate th:first-child, #fate td:first-child {
127 text-align: center;
128 width: 2em;
129 }
130
131 #abilities td {
132 text-align: justify;
133 -webkit-hyphens: auto;
134 -moz-hyphens: auto;
135 -ms-hyphens: auto;
136 hyphens: auto;
137 }
138
139 #abilities td:first-child {
140 white-space: nowrap;
141 }
142
143
144 th, td {
145 padding: 0 0.5rem;
146 }
147
148 h1:before {
149 content: '\25cf';
150 color: #dae9bc;
151 text-shadow: -0.08333em -0.08333em 0.25em #aec38b,
152 0.08333em -0.08333em 0.25em #aec38b,
153 0.08333em 0.08333em 0 #534f53,
154 -0.08333em 0.08333em 0 #534f53,
155 0 0.1667em 0 #414045;
156 -webkit-text-stroke: 0;
157 display: inline-block;
158 width: 1em;
159 margin-top: -0.1em;
160 vertical-align: top;
161 margin-left: -1em;
162 }
163
164 h1 {
165 padding-left: 1em;
166 margin-top: 1em;
167 margin-bottom: 0.5em;
168 font-family: Oranienbaum, Cardo, serif;
169 color: hsl(270, 25%, 75%);
170 font-size: 2em;
171 text-shadow: none;
172 border-bottom: solid hsl(270, 25%, 50%) 0.0625em;
173 line-height: 0.8em;
174 font-weight: normal;
175 letter-spacing: -0.02em;
176 text-shadow: -1px 0 black, 1px 0 black,
177 0 1px black, 0 -1px black,
178 -0.707px -0.707px black, 0.707px 0.707px black,
179 -0.707px 0.707px black, 0.707px -0.707px black;
180 }
181
182 h1:first-child {
183 margin-top: 0;
184 }
185
186 h2:before {
187 content: '\25fc';
188 color: #00a1eb;
189 font-size: 1.5em;
190 width: 0.55em;
191 display: inline-block;
192 }
193
194 h2 {
195 height: 1.15em;
196 font-size: 1.25em;
197 font-family: Oranienbaum, Cardo, serif;
198 text-align: left;
199 letter-spacing: -1px;
200 z-index: 1;
201 border-bottom: solid hsl(270, 30%, 85%) 0.25em;
202 padding-right: 1em;
203 white-space: nowrap;
204 margin-bottom: 0.5em;
205 font-weight: bold;
206 }
207
208 a:link, a:visited, a:active {
209 color: hsl(270, 25%, 50%);
210 font-weight: bold;
211 text-decoration: none;
212 }
213
214 .fate-name { font-weight: bold; }
215 .fate-effect { font-style: italic; font-size: 0.95em; }
216 .fate-action { font-size: 0.95em; }
217
218 input[type=checkbox] {
219 margin-right: 0.5em;
220 }
221
222 .button {
223 font-size: 1.1em;
224 font-weight: bold;
225 color: black !important;
226 background-color: hsl(270, 30%, 85%);
227 margin: 0.0625em 0;
228 padding: 0.375em 0.5em;
229 display: inline-block;
230 border-radius: 0 0.5em 0 0.5em;
231 transition: box-shadow 0.167s, border-color 0.167s, opacity 0.333s;
232 -webkit-transition: box-shadow 0.167s, border-color 0.167s, opacity 0.333s;
233 box-shadow: 0.125em 0.125em 0.25em 0.0625em #aaa;
234 border: solid hsl(270, 30%, 85%) 1px;
235 min-width: 6em;
236 }
237
238 .button.small {
239 min-width: 1.25em;
240 }
241
242 .button:hover, .button:focus {
243 box-shadow: 0.125em 0.125em 0.25em 0.0625em #888;
244 border-color: hsl(270, 25%, 50%);
245 }
246
247 .button:active {
248 box-shadow: 0.0625em 0.0625em 0.0625em 0.0625em #888;
249 }
250
251
252 .standalone header .button {
253 box-shadow: 0 0 0.5em 0.0625em #aaa;
254 }
255
256 .standalone header .button:active {
257 box-shadow: 0 0 0 0 #aaa;
258 }
259
260 main > div, main > noscript {
261 text-align: center;
262 margin-bottom: 1rem;
263 display: block;
264 }
265
266 ul.cards li {
267 padding: 0.25em 0;
268 display: inline-block;
269 width: 8em;
270 }
271
272 select {
273 -webkit-appearance: none;
274 -moz-appearance: none;
275 appearance: none;
276 font-family: Cardo, serif;
277 font-size: 1.1em;
278 margin-top: 0.5em;
279 width: 60%;
280 margin-left: 20%;
281 padding: 0 0.5em;
282 border: solid hsl(270, 30%, 85%) 1px;
283 border-radius: 0 0.5em 0 0.5em;
284 background-color: hsl(270, 30%, 85%);
285 box-shadow: 0.125em 0.125em 0.25em 0.0625em #aaa;
286 transition: box-shadow 0.167s, border-color 0.167s;
287 -webkit-transition: box-shadow 0.167s, border-color 0.167s;
288 text-align: center;
289 font-weight: bold;
290 }
291
292 select:hover, select:focus {
293 box-shadow: 0.125em 0.125em 0.25em 0.0625em #888;
294 border-color: hsl(270, 25%, 50%);
295 outline: none;
296 }
297
298 select:active {
299 box-shadow: 0.0625em 0.0625em 0.0625em 0.0625em #888;
300 outline: none;
301 }
302
303 option {
304 -webkit-appearance: none;
305 -moz-appearance: none;
306 appearance: none;
307 font-family: Cardo, serif;
308 background-color: white;
309 text-align: center;
310 font-weight: normal;
311 }
312
313 optgroup {
314 font-style: normal;
315 font-family: inherit;
316 text-align: center;
317 }
318
319 optgroup + optgroup {
320 margin-top: 1px;
321 }
322
323 p, li {
324 text-align: justify;
325 -webkit-hyphens: auto;
326 -moz-hyphens: auto;
327 -ms-hyphens: auto;
328 hyphens: auto;
329 }
330
331 p {
332 margin-bottom: 0.5em;
333 }
334
335 blockquote {
336 text-align: justify;
337 font-style: italic;
338 margin-left: 1em;
339 margin-right: 1em;
340 margin-bottom: 0.5em;
341 font-size: 0.95em;
342 }
343
344 @keyframes row-content-in {
345 0% { max-height: 0; opacity: 0; }
346 50% { max-height: 10em; }
347 100% { opacity: 1; }
348 }
349 @-webkit-keyframes row-content-in {
350 0% { max-height: 0; opacity: 0; }
351 50% { max-height: 10em; }
352 100% { opacity: 1; }
353 }
354
355 table {
356 width: 100%;
357 }
358
359 #fate tbody tr div {
360 max-height: 10em;
361 animation: row-content-in 0.6667s;
362 -webkit-animation: row-content-in 0.6667s;
363 }
364
365 #fate tbody ~ tfoot {
366 transition: opacity 0.3333s, visibility 0s 0.3333s;
367 -webkit-transition: opacity 0.3333s, visibility 0s 0.3333s;
368 opacity: 0;
369 visibility: hidden;
370 }
371
372 #fate tbody:empty ~ tfoot {
373 opacity: 1;
374 visibility: visible;
375 }
376
377 .button.big {
378 display: inline-block;
379 width: 35%;
380 padding-top: 1em;
381 padding-bottom: 1em;
382 margin: 0.5em 0.5em;
383 }
384
385 .card1 {
386 width: 2.5em;
387 background-color: white;
388 display: inline-block;
389 margin: 0.2em 0.375em;
390 border: solid 1px black;
391 }
392
393 .card2 {
394 width: 2.5em;
395 background-color: black;
396 display: inline-block;
397 margin: 0.2em 0.375em;
398 border: solid 1px black;
399 color: white;
400 }
401
402 .card {
403 display: block;
404 position: relative;
405 width: 20em;
406 height: 27.1875em;
407 font-size: 88.275%;
408 margin: 0.5em auto;
409 z-index: 1;
410 }
411
412 .card:after {
413 content: '';
414 display: block;
415 position:absolute;
416 width:100%;
417 height:100%;
418 left:0;
419 top:0;
420 background-image: url(card.png);
421 background-size: cover;
422 z-index: -1;
423 }
424
425 .card .art {
426 position: absolute;
427 z-index: -1;
428 left: 9.5%;
429 right: 9.5%;
430 width: 81%;
431 height: auto;
432 top: 7.1%;
433 }
434
435 .card.adventurer .name, .card.adventurer .type {
436 background-color: #4ba12f;
437 }
438
439 .card.object .name, .card.object .type {
440 background-color: #cdab4c;
441 }
442
443 .card .name {
444 position: absolute;
445 color: white;
446 text-align: center;
447 width: 77%;
448 border: solid white 0.1em;
449 border-radius: 0.6em;
450 line-height: 1.6em;
451 height: 5.4%;
452 font-size: 0.85em;
453 left: 11.5%;
454 right: 11.5%;
455 top: 3.5%;
456 box-sizing: border-box;
457 text-shadow: -1px -1px rgba(0, 0, 0, 0.75),
458 1px -1px rgba(0, 0, 0, 0.75),
459 -1px 1px rgba(0, 0, 0, 0.75),
460 1px 1px rgba(0, 0, 0, 0.75),
461 1px 0 black,
462 -1px 0 black,
463 0 1px black,
464 0 -1px black;
465 }
466
467 .card .type {
468 color: black;
469 letter-spacing: 0.05em;
470 font-weight: bold;
471 text-shadow: -0.707px -0.707px rgba(255, 255, 255, 0.75),
472 0.707px -0.707px rgba(255, 255, 255, 0.75),
473 -0.707px 0.707px rgba(255, 255, 255, 0.75),
474 0.707px 0.707px rgba(255, 255, 255, 0.75),
475 1px 0 white,
476 -1px 0 white,
477 0 1px white,
478 0 -1px white;
479 text-align: left;
480 margin: auto;
481 position: absolute;
482 height: 2.55%;
483 width: 84%;
484 left: 8%;
485 top: 52.3333%;
486 box-sizing: border-box;
487 padding-left: 0.6667em;
488 font-size: 0.575em;
489 line-height: 1.25em;
490 box-shadow: inset 0 0 0.25em black;
491 }
492
493 .card .gender {
494 position: absolute;
495 height: 9%;
496 top: 47.5%;
497 right: 8.5%;
498 }
499
500 .card .gender img {
501 float: right;
502 height: 100%;
503 }
504
505 .card .abilities {
506 text-align: left;
507 position: absolute;
508 top: 57%;
509 bottom: 8%;
510 left: 10%;
511 right: 10%;
512 font-size: 0.8em;
513 line-height: 1.05em;
514 padding-left: 1em;
515 }
516
517 .card .cost span {
518 position: relative;
519 content: ' ';
520 width: 1.5em;
521 height: 1.5em;
522 border-radius: 1.5em;
523 display: inline-block;
524 box-sizing: border-box;
525 margin: 0.5em 0.05em;
526 box-shadow: 0 0 0.05em 0.05em black;
527 background-image: url(sword.png);
528 background-size: 0.2778em 1.3em;
529 background-position: center;
530 background-repeat: no-repeat;
531 text-align: center;
532 }
533
534 .card .cost span:before, .card .cost span:after {
535 position: absolute;
536 line-height: 1.333em;
537 width: 1.5em;
538 height: 1.5em;
539 display: block;
540 transform-origin: 50% 65%;
541 background-image: url(sword.png);
542 background-size: 0.2778em 1.3em;
543 background-position: center;
544 background-repeat: no-repeat;
545 }
546
547 .card .cost .r:before {
548 transform: rotate(30deg);
549 -webkit-transform: rotate(30deg);
550 content: '';
551 }
552
553 .card .cost .r img {
554 /* :( would prefer with no extra elements... */
555 transform: rotate(60deg);
556 max-width: 1.3em;
557 position: absolute;
558 max-height: 1.3em;
559 transform-origin: 50% 65%;
560 left: 0.6em;
561 top: 0.1em;
562 }
563
564 .card .cost .r:after {
565 transform: rotate(-30deg);
566 -webkit-transform: rotate(-30deg);
567 content: '';
568 }
569
570 .card .cost .r {
571 transform: rotate(-15deg);
572 background-color: #e4573c;
573 }
574 .card .cost .g {
575 background-color: #abbc45;
576 }
577
578 .card .abilities .skill:before {
579 content: "Skill: ";
580 font-weight: bold;
581 margin-left: -1em;
582 }
583
584 .card .abilities .temporary:before {
585 content: "Temporary power: ";
586 font-weight: bold;
587 margin-left: -1em;
588 }
589
590 .card .abilities .ultimate:before {
591 content: "Ultimate power: ";
592 font-weight: bold;
593 margin-left: -1em;
594 }
595
596 .card .effect {
597 text-align: center;
598 position: absolute;
599 top: 59%;
600 bottom: 8%;
601 left: 15%;
602 width: 70%;
603 font-size: 0.8em;
604 line-height: 1.05em;
605 }
606
607 .card .flavor:before { content: "«"; }
608 .card .flavor:after { content: "»"; }
609 .card .flavor {
610 position: absolute;
611 bottom: 9%;
612 width: 80%;
613 left: 10%;
614 font-style: italic;
615 color: black;
616 font-size: 0.6em;
617 }
618
619 .card .code {
620 position: absolute;
621 color: white;
622 bottom: 3.5%;
623 right: 12%;
624 font-size: 0.65em;
625 text-shadow: -0.0433em -0.0433em black,
626 0.0433em -0.0433em black,
627 -0.0433em 0.0433em black,
628 0.0433em 0.0433em black,
629 0.06667em 0 black,
630 -0.06667em 0 black,
631 0 0.06667em black,
632 0 -0.06667em black;
633 }
634
635
636 .card.dungeon {
637 height: 17.5841em;
638 width: 25em;
639 }
640
641 .card.dungeon:after {
642 background-image: url(dungeon.jpg);
643 }
644
645 .card.final .name, .card.final .type {
646 background-color: #832b22;
647 }
648
649 .card.dungeon .name {
650 position: absolute;
651 color: #e3f902;
652 top: 2%;
653 height: 7.5%;
654 }
655
656 .card.dungeon .type {
657 color: #e3f902;
658 left: 2.25%;
659 right: 2.25%;
660 width: 95.5%;
661 height: 4.5%;
662 top: 74%;
663 text-shadow: -0.707px -0.707px rgba(0, 0, 0, 0.75),
664 0.707px -0.707px rgba(0, 0, 0, 0.75),
665 -0.707px 0.707px rgba(0, 0, 0, 0.75),
666 0.707px 0.707px rgba(0, 0, 0, 0.75),
667 1px 0 black,
668 -1px 0 black,
669 0 1px black,
670 0 -1px black;
671 }
672
673 .card.dungeon .power img {
674 max-height: 1.5em;
675 vertical-align: bottom;
676 }
677 .card.dungeon .power {
678 font-size: 0.85em;
679 position: absolute;
680 top: 67%;
681 height: 1em;
682 color: white;
683 left: 68%;
684 width: 15%;
685 text-align: center;
686 text-shadow: -0.707px -0.707px rgba(0, 0, 0, 0.75),
687 0.707px -0.707px rgba(0, 0, 0, 0.75),
688 -0.707px 0.707px rgba(0, 0, 0, 0.75),
689 0.707px 0.707px rgba(0, 0, 0, 0.75),
690 1px 0 black,
691 -1px 0 black,
692 0 1px black,
693 0 -1px black;
694 }
695
696 .card.dungeon .effect {
697 color: #e30000;
698 text-shadow: -0.707px -0.707px rgba(255, 255, 255, 0.75),
699 0.707px -0.707px rgba(255, 255, 255, 0.75),
700 -0.707px 0.707px rgba(255, 255, 255, 0.75),
701 0.707px 0.707px rgba(255, 255, 255, 0.75),
702 1px 0 white,
703 -1px 0 white,
704 0 1px white,
705 0 -1px white;
706 font-size: 0.55em;
707 top: 83%;
708 left: 5%;
709 right: 5%;
710 width: 90%;
711 font-weight: bold;
712 }
713
714 .card.dungeon .code {
715 right: 4%;
716 bottom: 1.8%;
717 }
718
719 header {
720 left: 0;
721 top: 0;
722 right: 0;
723 margin: auto;
724 max-width: 25.2em;
725 background-color: white;
726 padding: 0.5em;
727 box-sizing: border-box;
728 z-index: 2;
729 }
730
731 body.standalone header:empty {
732 padding: 0;
733 padding-top: 20px;
734 }
735
736 body.standalone header {
737 position: fixed;
738 padding-top: 20px;
739 background-color: black;
740 }
741
742 h1, h2, [onclick], label {
743 -webkit-user-select: none;
744 -moz-user-select: none;
745 user-select: none;
746 -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
747 cursor: default;
748 }
749
750 [onclick], select, label {
751 cursor: pointer;
752 }
753
754 @media (max-width: 639px) {
755 html { font-size: 14px; }
756 header .button {
757 padding: 0 0.2em;
758 }
759 }
760
761 @media print {
762
763 @page {
764 size: 3.5in 7in;
765 margin: 0.5em;
766 }
767 header, .no-print {
768 display: none !important;
769 }
770
771 body, html {
772 background-color: white;
773 font-size: 10pt;
774 }
775
776 main {
777 max-width: 3.5in;
778 }
779
780 .card {
781 width: 64mm;
782 height: 87mm;
783 font-size: 9pt;
784 page-break-inside: avoid;
785 }
786 }
787
788 @media all and (-webkit-min-device-pixel-ratio:0) {
789 h1 {
790 text-shadow: none;
791 -webkit-text-stroke: 0.02em black;
792 }
793
794 .broken-on-webkit {
795 display: none !important;
796 }
797
798 }