X-Git-Url: https://git.yukkurigames.com/?p=heroik.git;a=blobdiff_plain;f=heroik.css;h=53f26fafb1c63d3cd65f9539118a5b64e5a71844;hp=6d827acce48ee53f3a71eb3f57f23867272c2a73;hb=2288d6ec7230056c1c4da48ca54185bc0193ea8f;hpb=f0ceb77ec0706a7efac4bee757be88899d0e925f diff --git a/heroik.css b/heroik.css index 6d827ac..53f26fa 100644 --- a/heroik.css +++ b/heroik.css @@ -101,6 +101,11 @@ table { max-width: 25em; } +table.tall td { + padding-top: 0.125em; + padding-bottom: 0.125em; +} + thead { font-size: 0.8em; font-variant: small-caps; @@ -171,6 +176,7 @@ h1 { border-bottom: solid hsl(270, 25%, 50%) 0.0625em; line-height: 0.8em; font-weight: normal; + letter-spacing: -0.02em; text-shadow: -1px 0 black, 1px 0 black, 0 1px black, 0 -1px black, -0.707px -0.707px black, 0.707px 0.707px black, @@ -246,9 +252,10 @@ input[type=checkbox] { box-shadow: 0.0625em 0.0625em 0.0625em 0.0625em #888; } -main > div { +main > div, main > noscript { text-align: center; margin-bottom: 1rem; + display: block; } ul.cards li { @@ -353,9 +360,11 @@ table { } .button.big { - display: block; - width: 80%; - margin: 1em auto; + display: inline-block; + width: 35%; + padding-top: 1em; + padding-bottom: 1em; + margin: 0.5em 0.5em; } .card1 { @@ -375,6 +384,323 @@ table { color: white; } +.card { + display: block; + position: relative; + width: 20em; + height: 27.1875em; + font-size: 88.275%; + margin: 0.5em auto; + z-index: 1; +} + +.card:after { + content: ''; + display: block; + position:absolute; + width:100%; + height:100%; + left:0; + top:0; + background-image: url(card.png); + background-size: cover; + z-index: -1; +} + +.card .art { + position: absolute; + z-index: -1; + left: 9.5%; + right: 9.5%; + width: 81%; + height: auto; + top: 7.1%; +} + +.card.adventurer .name, .card.adventurer .type { + background-color: #4ba12f; +} + +.card.object .name, .card.object .type { + background-color: #cdab4c; +} + +.card .name { + position: absolute; + color: white; + text-align: center; + width: 77%; + border: solid white 0.1em; + border-radius: 0.6em; + line-height: 1.6em; + height: 5.4%; + font-size: 0.85em; + left: 11.5%; + right: 11.5%; + top: 3.5%; + box-sizing: border-box; + text-shadow: -1px -1px rgba(0, 0, 0, 0.75), + 1px -1px rgba(0, 0, 0, 0.75), + -1px 1px rgba(0, 0, 0, 0.75), + 1px 1px rgba(0, 0, 0, 0.75), + 1px 0 black, + -1px 0 black, + 0 1px black, + 0 -1px black; +} + +.card .type { + color: black; + letter-spacing: 0.05em; + font-weight: bold; + text-shadow: -0.707px -0.707px rgba(255, 255, 255, 0.75), + 0.707px -0.707px rgba(255, 255, 255, 0.75), + -0.707px 0.707px rgba(255, 255, 255, 0.75), + 0.707px 0.707px rgba(255, 255, 255, 0.75), + 1px 0 white, + -1px 0 white, + 0 1px white, + 0 -1px white; + text-align: left; + margin: auto; + position: absolute; + height: 2.55%; + width: 84%; + left: 8%; + top: 52.3333%; + box-sizing: border-box; + padding-left: 0.6667em; + font-size: 0.575em; + line-height: 1.25em; + box-shadow: inset 0 0 0.25em black; +} + +.card .gender { + position: absolute; + height: 9%; + top: 47.5%; + right: 8.5%; +} + +.card .gender img { + float: right; + height: 100%; +} + +.card .abilities { + text-align: left; + position: absolute; + top: 57%; + bottom: 8%; + left: 10%; + right: 10%; + font-size: 0.8em; + line-height: 1.05em; + padding-left: 1em; +} + +.card .cost span { + position: relative; + content: ' '; + width: 1.5em; + height: 1.5em; + border-radius: 1.5em; + display: inline-block; + box-sizing: border-box; + margin: 0.5em 0.05em; + box-shadow: 0 0 0.05em 0.05em black; + background-image: url(sword.png); + background-size: 0.2778em 1.3em; + background-position: center; + background-repeat: no-repeat; + text-align: center; +} + +.card .cost span:before, .card .cost span:after { + position: absolute; + line-height: 1.333em; + width: 1.5em; + height: 1.5em; + display: block; + transform-origin: 50% 65%; + background-image: url(sword.png); + background-size: 0.2778em 1.3em; + background-position: center; + background-repeat: no-repeat; +} + +.card .cost .r:before { + transform: rotate(30deg); + -webkit-transform: rotate(30deg); + content: ''; +} + +.card .cost .r img { + /* :( would prefer with no extra elements... */ + transform: rotate(60deg); + max-width: 1.3em; + position: absolute; + max-height: 1.3em; + transform-origin: 50% 65%; + left: 0.6em; + top: 0.1em; +} + +.card .cost .r:after { + transform: rotate(-30deg); + -webkit-transform: rotate(-30deg); + content: ''; +} + +.card .cost .r { + transform: rotate(-15deg); + background-color: #e4573c; +} +.card .cost .g { + background-color: #abbc45; +} + +.card .abilities .skill:before { + content: "Skill: "; + font-weight: bold; + margin-left: -1em; +} + +.card .abilities .temporary:before { + content: "Temporary power: "; + font-weight: bold; + margin-left: -1em; +} + +.card .abilities .ultimate:before { + content: "Ultimate power: "; + font-weight: bold; + margin-left: -1em; +} + +.card .effect { + text-align: center; + position: absolute; + top: 59%; + bottom: 8%; + left: 15%; + width: 70%; + font-size: 0.8em; + line-height: 1.05em; +} + +.card .flavor:before { content: "«"; } +.card .flavor:after { content: "»"; } +.card .flavor { + position: absolute; + bottom: 9%; + width: 80%; + left: 10%; + font-style: italic; + color: black; + font-size: 0.6em; +} + +.card .code { + position: absolute; + color: white; + bottom: 3.5%; + right: 12%; + font-size: 0.65em; + text-shadow: -0.0433em -0.0433em black, + 0.0433em -0.0433em black, + -0.0433em 0.0433em black, + 0.0433em 0.0433em black, + 0.06667em 0 black, + -0.06667em 0 black, + 0 0.06667em black, + 0 -0.06667em black; +} + + +.card.dungeon { + height: 17.5841em; + width: 25em; +} + +.card.dungeon:after { + background-image: url(dungeon.jpg); +} + +.card.final .name, .card.final .type { + background-color: #832b22; +} + +.card.dungeon .name { + position: absolute; + color: #e3f902; + top: 2%; + height: 7.5%; +} + +.card.dungeon .type { + color: #e3f902; + left: 2.25%; + right: 2.25%; + width: 95.5%; + height: 4.5%; + top: 74%; + text-shadow: -0.707px -0.707px rgba(0, 0, 0, 0.75), + 0.707px -0.707px rgba(0, 0, 0, 0.75), + -0.707px 0.707px rgba(0, 0, 0, 0.75), + 0.707px 0.707px rgba(0, 0, 0, 0.75), + 1px 0 black, + -1px 0 black, + 0 1px black, + 0 -1px black; +} + +.card.dungeon .power img { + max-height: 1.5em; + vertical-align: bottom; +} +.card.dungeon .power { + font-size: 0.85em; + position: absolute; + top: 67%; + height: 1em; + color: white; + left: 68%; + width: 15%; + text-align: center; + text-shadow: -0.707px -0.707px rgba(0, 0, 0, 0.75), + 0.707px -0.707px rgba(0, 0, 0, 0.75), + -0.707px 0.707px rgba(0, 0, 0, 0.75), + 0.707px 0.707px rgba(0, 0, 0, 0.75), + 1px 0 black, + -1px 0 black, + 0 1px black, + 0 -1px black; +} + +.card.dungeon .effect { + color: #e30000; + text-shadow: -0.707px -0.707px rgba(255, 255, 255, 0.75), + 0.707px -0.707px rgba(255, 255, 255, 0.75), + -0.707px 0.707px rgba(255, 255, 255, 0.75), + 0.707px 0.707px rgba(255, 255, 255, 0.75), + 1px 0 white, + -1px 0 white, + 0 1px white, + 0 -1px white; + font-size: 0.55em; + top: 83%; + left: 5%; + right: 5%; + width: 90%; + font-weight: bold; +} + +.card.dungeon .code { + right: 4%; + bottom: 1.8%; +} + #statusbar { display: none; position: fixed; @@ -423,13 +749,19 @@ td:target { main { max-width: 3.5in; } + + .card { + width: 64mm; + height: 87mm; + font-size: 9pt; + page-break-inside: avoid; + } } -@media screen and (-webkit-min-device-pixel-ratio:0) { +@media all and (-webkit-min-device-pixel-ratio:0) { h1 { text-shadow: none; - -webkit-text-stroke: 1px black; - latter-spacing: -1px; + -webkit-text-stroke: 0.02em black; } .broken-on-webkit {