gstaff commited on
Commit
4ec14a5
β€’
1 Parent(s): 39ed1e5

Initial app commit.

Browse files
README.md CHANGED
@@ -1,8 +1,8 @@
1
  ---
2
  title: MagicGenV2
3
- emoji: πŸš€
4
- colorFrom: green
5
- colorTo: purple
6
  sdk: gradio
7
  sdk_version: 4.7.1
8
  app_file: app.py
@@ -10,4 +10,6 @@ pinned: false
10
  license: apache-2.0
11
  ---
12
 
13
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
1
  ---
2
  title: MagicGenV2
3
+ emoji: 🎴
4
+ colorFrom: blue
5
+ colorTo: red
6
  sdk: gradio
7
  sdk_version: 4.7.1
8
  app_file: app.py
 
10
  license: apache-2.0
11
  ---
12
 
13
+ # 🎴 MagicGenV2
14
+
15
+ ## Generate and Edit Magic the Gathering Cards with a Chat Assistant
app.py ADDED
@@ -0,0 +1,377 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # pip install imgkit
2
+ # pip install html2image
3
+ import base64
4
+ import random
5
+ from io import BytesIO
6
+
7
+ import imgkit
8
+ import os
9
+ import pathlib
10
+ import re
11
+ import gradio as gr
12
+ import requests
13
+ from PIL import Image
14
+ from gradio_client import Client
15
+ import torch
16
+ from transformers import AutoModelForSpeechSeq2Seq, AutoProcessor, pipeline, Pipeline
17
+
18
+ HF_TOKEN = os.getenv("HF_TOKEN")
19
+
20
+ if not HF_TOKEN:
21
+ raise Exception("HF_TOKEN environment variable is required to call remote API.")
22
+
23
+ API_URL = "https://api-inference.huggingface.co/models/HuggingFaceH4/zephyr-7b-beta"
24
+ headers = {"Authorization": f"Bearer {HF_TOKEN}"}
25
+
26
+ client = Client("https://latent-consistency-super-fast-lcm-lora-sd1-5.hf.space/--replicas/08676bwq2/")
27
+
28
+
29
+ def init_speech_to_text_model() -> Pipeline:
30
+ device = "cuda:0" if torch.cuda.is_available() else "cpu"
31
+ torch_dtype = torch.float16 if torch.cuda.is_available() else torch.float32
32
+
33
+ model_id = "distil-whisper/distil-medium.en"
34
+ model = AutoModelForSpeechSeq2Seq.from_pretrained(
35
+ model_id, torch_dtype=torch_dtype, low_cpu_mem_usage=True, use_safetensors=True
36
+ )
37
+ model.to(device)
38
+ processor = AutoProcessor.from_pretrained(model_id)
39
+ return pipeline(
40
+ "automatic-speech-recognition",
41
+ model=model,
42
+ tokenizer=processor.tokenizer,
43
+ feature_extractor=processor.feature_extractor,
44
+ max_new_tokens=128,
45
+ torch_dtype=torch_dtype,
46
+ device=device,
47
+ )
48
+
49
+
50
+ whisper_pipe = init_speech_to_text_model()
51
+
52
+
53
+ def query(payload: dict):
54
+ response = requests.post(API_URL, headers=headers, json=payload)
55
+ return response.json()
56
+
57
+
58
+ def generate_text(card_text: str, user_request: str) -> (str, str, str):
59
+ # Prompt must apply the correct chat template for the model see:
60
+ # https://huggingface.co/docs/transformers/main/en/chat_templating
61
+ prompt = f"""<|system|>
62
+ You create Magic the Gathering cards based on the user's request.
63
+ # RULES
64
+ - In your response always generate a new card.
65
+ - Only generate one card, no other dialogue.
66
+ - Surround card info in triple backticks (```).
67
+ - Format the card text using headers like in the example below:
68
+ ```
69
+ Name: Band of Brothers
70
+ ManaCost: {{3}}{{W}}{{W}}
71
+ Type: Creature β€” Phyrexian Human Soldier
72
+ Rarity: rare
73
+ Text: Vigilance
74
+ {{W}}, {{T}}: Attach target creature you control to target creature. (Any number of attacking creatures with total power 5 or less can attack in a band. A band deals damage to that creature.)
75
+ FlavorText: "This time we will be stronger."
76
+ β€”Elder brotherhood blessing
77
+ Power: 2
78
+ Toughness: 2
79
+ Color: ['W']
80
+ ```</s>
81
+ <|user|>
82
+ {user_request}
83
+ <|assistant|>
84
+ """
85
+ if card_text and card_text != starting_text:
86
+ prompt = f"""<|system|>
87
+ You edit Magic the Gathering cards based on the user's request.
88
+ # RULES
89
+ - In your response always generate a new card.
90
+ - Only generate one card, no other dialogue.
91
+ - Surround card info in triple backticks (```).
92
+ - Format the card text using headers like in the example below:
93
+ ```
94
+ Name: Band of Brothers
95
+ ManaCost: {{3}}{{W}}{{W}}
96
+ Type: Creature β€” Phyrexian Human Soldier
97
+ Rarity: rare
98
+ Text: Vigilance
99
+ {{W}}, {{T}}: Attach target creature you control to target creature. (Any number of attacking creatures with total power 5 or less can attack in a band. A band deals damage to that creature.)
100
+ FlavorText: "This time we will be stronger."
101
+ β€”Elder brotherhood blessing
102
+ Power: 2
103
+ Toughness: 2
104
+ Color: ['W']
105
+ ```</s>
106
+ <|user|>
107
+ # CARD TO EDIT
108
+ ```
109
+ {card_text}
110
+ ```
111
+ # EDIT REQUEST
112
+ {user_request}
113
+ <|assistant|>
114
+ """
115
+ print(f"Calling API with prompt:\n{prompt}")
116
+ params = {"max_new_tokens": 512}
117
+ output = query({"inputs": prompt, "parameters": params})
118
+ if 'error' in output:
119
+ print(f'Language model call failed: {output["error"]}')
120
+ raise gr.Warning(f'Language model call failed: {output["error"]}')
121
+ print(f'API RESPONSE SIZE: {len(output[0]["generated_text"])}')
122
+ assistant_reply = output[0]["generated_text"].split('<|assistant|>')[1]
123
+ print(f'ASSISTANT REPLY:\n{assistant_reply}')
124
+ new_card_text = assistant_reply.split('```')
125
+ if len(new_card_text) > 1:
126
+ new_card_text = new_card_text[1].strip()
127
+ else:
128
+ new_card_text = new_card_text.split('\n\n')[1].strip()
129
+ return assistant_reply, new_card_text, None
130
+
131
+
132
+ def format_html(text, image_data):
133
+ template = pathlib.Path("./card_template.html").read_text(encoding='utf-8')
134
+ if "['U']" in text:
135
+ template = template.replace("{card_color}", 'style="background-color:#5a73ab"')
136
+ elif "['W']" in text:
137
+ template = template.replace("{card_color}", 'style="background-color:#f0e3d0"')
138
+ elif "['G']" in text:
139
+ template = template.replace("{card_color}", 'style="background-color:#325433"')
140
+ elif "['B']" in text:
141
+ template = template.replace("{card_color}", 'style="background-color:#1a1b1e"')
142
+ elif "['R']" in text:
143
+ template = template.replace("{card_color}", 'style="background-color:#c2401c"')
144
+ elif "Type: Land" in text:
145
+ template = template.replace("{card_color}", 'style="background-color:#aa8c71"')
146
+ elif "Type: Artifact" in text:
147
+ template = template.replace("{card_color}", 'style="background-color:#9ba7bc"')
148
+ else:
149
+ template = template.replace("{card_color}", 'style="background-color:#edd99d"')
150
+ pattern = re.compile('Name: (.*)')
151
+ name = pattern.findall(text)[0]
152
+ template = template.replace("{name}", name)
153
+ pattern = re.compile('Mana.?Cost: (.*)')
154
+ mana_cost = pattern.findall(text)[0]
155
+ if mana_cost == "None":
156
+ template = template.replace("{mana_cost}", '<i class="ms ms-cost" style="visibility: hidden"></i>')
157
+ else:
158
+ symbols = []
159
+ for c in mana_cost:
160
+ if c in {"{", "}"}:
161
+ continue
162
+ else:
163
+ symbols.append(c.lower())
164
+ formatted_symbols = []
165
+ for s in symbols:
166
+ formatted_symbols.append(f'<i class="ms ms-{s} ms-cost ms-shadow"></i>')
167
+ template = template.replace("{mana_cost}", "\n".join(formatted_symbols[::-1]))
168
+ if not isinstance(image_data, (bytes, bytearray)):
169
+ template = template.replace('{image_data}', f'{image_data}')
170
+ else:
171
+ template = template.replace('{image_data}', f'data:image/png;base64,{image_data.decode("utf-8")}')
172
+ pattern = re.compile('Type: (.*)')
173
+ card_type = pattern.findall(text)[0]
174
+ template = template.replace("{card_type}", card_type)
175
+ if len(card_type) > 30:
176
+ template = template.replace("{type_size}", "16")
177
+ else:
178
+ template = template.replace("{type_size}", "18")
179
+ pattern = re.compile('Rarity: (.*)')
180
+ rarity = pattern.findall(text)[0]
181
+ template = template.replace("{rarity}", f"ss-{rarity}")
182
+ pattern = re.compile(r'Text: (.*?)\n^.+:', re.MULTILINE | re.DOTALL)
183
+ card_text = pattern.findall(text)[0]
184
+ text_lines = []
185
+ for line in card_text.splitlines():
186
+ line = line.replace('{T}',
187
+ '<i class="ms ms-tap ms-cost" style="top:0px;float:none;height: 18px;width: 18px;font-size: 13px;"></i>')
188
+ line = line.replace('{UT}',
189
+ '<i class="ms ms-untap ms-cost" style="top:0px;float:none;height: 18px;width: 18px;font-size: 13px;"></i>')
190
+ line = line.replace('{E}',
191
+ '<i class="ms ms-instant ms-cost" style="top:0px;float:none;height: 18px;width: 18px;font-size: 13px;"></i>')
192
+ line = re.sub(r"{(.*?)}",
193
+ r'<i class="ms ms-\1 ms-cost" style="top:0px;float:none;height: 18px;width: 18px;font-size: 13px;"></i>'.lower(),
194
+ line)
195
+ line = re.sub(r"ms-(.)/(.)",
196
+ r'<i class="ms ms-\1\2 ms-cost" style="top:0px;float:none;height: 18px;width: 18px;font-size: 13px;"></i>'.lower(),
197
+ line)
198
+ line = line.replace('(', '(<i>').replace(')', '</i>)')
199
+ text_lines.append(f"<p>{line}</p>")
200
+ template = template.replace("{card_text}", "\n".join(text_lines))
201
+ pattern = re.compile(r'Flavor.?Text: (.*?)\n^.+:', re.MULTILINE | re.DOTALL)
202
+ flavor_text = pattern.findall(text)
203
+ if flavor_text:
204
+ flavor_text = flavor_text[0]
205
+ flavor_text_lines = []
206
+ for line in flavor_text.splitlines():
207
+ flavor_text_lines.append(f"<p>{line}</p>")
208
+ template = template.replace("{flavor_text}", "<blockquote>" + "\n".join(flavor_text_lines) + "</blockquote>")
209
+ else:
210
+ template = template.replace("{flavor_text}", "")
211
+ if len(card_text) + len(flavor_text or '') > 170 or len(text_lines) > 3:
212
+ template = template.replace("{text_size}", '16')
213
+ template = template.replace(
214
+ 'ms-cost" style="top:0px;float:none;height: 18px;width: 18px;font-size: 13px;"></i>',
215
+ 'ms-cost" style="top:0px;float:none;height: 16px;width: 16px;font-size: 11px;"></i>')
216
+ else:
217
+ template = template.replace("{text_size}", '18')
218
+ pattern = re.compile('Power: (.*)')
219
+ power = pattern.findall(text)
220
+ if power:
221
+ power = power[0]
222
+ if not power:
223
+ template = template.replace("{power_toughness}", "")
224
+ pattern = re.compile('Toughness: (.*)')
225
+ toughness = pattern.findall(text)[0]
226
+ template = template.replace("{power_toughness}",
227
+ f'<header class="powerToughness"><div><h2 style="font-family: \'Beleren\';font-size: 19px;">{power}/{toughness}</h2></div></header>')
228
+ else:
229
+ template = template.replace("{power_toughness}", "")
230
+ pathlib.Path("test.html").write_text(template, encoding='utf-8')
231
+ return template
232
+
233
+
234
+ def get_savename(directory, name, extension):
235
+ save_name = f"{name}.{extension}"
236
+ i = 1
237
+ while os.path.exists(os.path.join(directory, save_name)):
238
+ save_name = save_name.replace(f'.{extension}', '').split('-')[0] + f"-{i}.{extension}"
239
+ i += 1
240
+ return save_name
241
+
242
+
243
+ def html_to_png(card_name, html):
244
+ save_name = get_savename('rendered_cards', card_name, 'png')
245
+ print('CONVERTING HTML CARD TO PNG IMAGE')
246
+
247
+ path = os.path.join('rendered_cards', save_name)
248
+ try:
249
+ css = ['./css/mana.css', './css/keyrune.css',
250
+ './css/mtg_custom.css']
251
+ imgkit.from_string(html, path, {"xvfb": ""}, css=css)
252
+ except:
253
+ try:
254
+ # For Windows local, requires 'html2image' package from pip.
255
+ from html2image import Html2Image
256
+ rendered_card_dir = 'rendered_cards'
257
+ hti = Html2Image(output_path=rendered_card_dir)
258
+ paths = hti.screenshot(html_str=html,
259
+ css_file=['./css/mtg_custom.css', './css/mana.css',
260
+ './css/keyrune.css'],
261
+ save_as=save_name, size=(450, 600))
262
+ print(paths)
263
+ path = paths[0]
264
+ except:
265
+ pass
266
+ print('OPENING IMAGE FROM FILE')
267
+ img = Image.open(path)
268
+ print('CROPPING BACKGROUND')
269
+ area = (0, 50, 400, 600)
270
+ cropped_img = img.crop(area)
271
+ cropped_img.resize((400, 550))
272
+ cropped_img.save(os.path.join(path))
273
+ print('CONVERTING HTML CARD TO PNG IMAGE COMPLETE')
274
+ return cropped_img.convert('RGB')
275
+
276
+
277
+ def get_initial_card():
278
+ return Image.open('SampleCard.png')
279
+
280
+
281
+ def pil_to_base64(image):
282
+ print('CONVERTING PIL IMAGE TO BASE64 STRING')
283
+ buffered = BytesIO()
284
+ image.save(buffered, format="PNG")
285
+ img_str = base64.b64encode(buffered.getvalue())
286
+ print('CONVERTING PIL IMAGE TO BASE64 STRING COMPLETE')
287
+ return img_str
288
+
289
+
290
+ def generate_card(image: str, card_text: str):
291
+ image_data = pil_to_base64(Image.open(image))
292
+ html = format_html(card_text, image_data)
293
+ card = html_to_png('TEST', html)
294
+ return card
295
+
296
+
297
+ def transcribe(audio: str) -> (str, str):
298
+ result = whisper_pipe(audio)
299
+ return result["text"], None
300
+
301
+
302
+ starting_text = """Name: Wizards of the Coast
303
+ ManaCost: {0}
304
+ Type: Enchantment
305
+ Rarity: mythic rare
306
+ Text: At the beginning of your upkeep, reveal the top card of your library. If it's a card named "Magic: The Gathering", put it into your hand. Otherwise, put it into your graveyard.
307
+ FlavorText: "We are the guardians of the multiverse, and we will protect it at all costs."
308
+ Color: ['U']"""
309
+
310
+
311
+ def generate_image(card_text: str):
312
+ pattern = re.compile('Name: (.*)')
313
+ name = pattern.findall(card_text)[0]
314
+ pattern = re.compile('Type: (.*)')
315
+ card_type = pattern.findall(card_text)[0]
316
+ prompt = f"fantasy illustration of a {card_type} {name}, by Greg Rutkowski"
317
+ print(f'Calling image generation with prompt: {prompt}')
318
+ try:
319
+ result = client.predict(
320
+ prompt, # str in 'parameter_5' Textbox component
321
+ 0.3, # float (numeric value between 0.0 and 5) in 'Guidance' Slider component
322
+ 4, # float (numeric value between 2 and 10) in 'Steps' Slider component
323
+ random.randint(0, 12013012031030),
324
+ # float (numeric value between 0 and 12013012031030) in 'Seed' Slider component
325
+ api_name="/predict"
326
+ )
327
+ print(result)
328
+ return result
329
+ except Exception as e:
330
+ print(f'Failed to generate image from client: {e}')
331
+ return 'placeholder.png'
332
+
333
+
334
+ def add_hotkeys() -> str:
335
+ return pathlib.Path("hotkeys.js").read_text()
336
+
337
+
338
+ with gr.Blocks(title='MagicGen') as demo:
339
+ gr.Markdown("# 🎴 MagicGenV2")
340
+ gr.Markdown("## Generate and Edit Magic the Gathering Cards with a Chat Assistant")
341
+ with gr.Row():
342
+ with gr.Column():
343
+ with gr.Group():
344
+ audio_in = gr.Audio(label="Record a voice request (click or press ctrl + ` to start/stop)",
345
+ source='microphone', type='filepath', elem_classes=["record-btn"])
346
+ prompt_in = gr.Textbox(label="Or type a text request and press Enter", interactive=True,
347
+ placeholder="Need an idea? Try one of these:\n- Create a creature card named 'WiFi Elemental'\n- Make it an instant\n- Change the color")
348
+ with gr.Accordion(label='πŸ€– Chat Assistant Response', open=False):
349
+ bot_text = gr.TextArea(label='Response', interactive=False)
350
+ with gr.Row():
351
+ with gr.Column():
352
+ in_text = gr.TextArea(label="Card Text (Shift+Enter to submit)", value=starting_text)
353
+ in_image = gr.Image(label="Card Image (400px x 550px)", type='filepath', value='placeholder.png')
354
+ run_button = gr.Button('πŸ”„ Regenerate Card', variant="primary")
355
+ gr.ClearButton([audio_in, prompt_in, in_text, in_image])
356
+ with gr.Column():
357
+ out_image = gr.Image(label="Rendered Card", value=get_initial_card())
358
+
359
+ # Shift + Enter to submit text in TextAreas
360
+ audio_in.stop_recording(transcribe, [audio_in], [prompt_in, audio_in], None).then(generate_text,
361
+ [in_text, prompt_in],
362
+ [bot_text, in_text,
363
+ audio_in]).then(generate_image,
364
+ [in_text],
365
+ [in_image],
366
+ None).then(
367
+ generate_card, [in_image, in_text], [out_image], None)
368
+ prompt_in.submit(generate_text, [in_text, prompt_in], [bot_text, in_text, audio_in]).then(generate_image, [in_text],
369
+ [in_image], None).then(
370
+ generate_card, [in_image, in_text], [out_image], None)
371
+ in_text.submit(generate_image, [in_text], [in_image], None).then(generate_card, [in_image, in_text], [out_image],
372
+ None)
373
+ run_button.click(generate_image, [in_text], [in_image], None).then(generate_card, [in_image, in_text], [out_image], None)
374
+ demo.load(None, None, None, _js=add_hotkeys())
375
+
376
+ if __name__ == "__main__":
377
+ demo.queue().launch(favicon_path="favicon-96x96.png")
card_template.html ADDED
The diff for this file is too large to render. See raw diff
 
css/extra_fonts.css ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @font-face{
2
+ font-family:'Beleren';
3
+ src: url(data:application/font-woff;charset=utf-8;base64,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) format('woff');
4
+ font-weight: normal;
5
+ font-style: normal;
6
+ }
7
+
8
+ @font-face {
9
+ font-family: 'Beleren';
10
+ src: url("../fonts/beleren.woff") format('woff');
11
+ font-weight: normal;
12
+ font-style: normal;
13
+ }
14
+
15
+ @font-face {
16
+ font-family: 'Beleren';
17
+ src: url("../fonts/beleren.woff") format('woff');
18
+ font-weight: bold;
19
+ }
20
+
21
+ @font-face {
22
+ font-family: 'Beleren';
23
+ src: url("../fonts/beleren.woff") format('woff');
24
+ font-weight: bold;
25
+ font-style: italic;
26
+ }
27
+
28
+ @font-face {
29
+ font-family: 'Beleren';
30
+ src: url("../fonts/beleren.woff") format('woff');
31
+ font-style: italic;
32
+ }
css/keyrune.css ADDED
@@ -0,0 +1,697 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Global */
3
+ @font-face {
4
+ font-family: 'Keyrune';
5
+ src: url('../fonts/keyrune.eot?v=1.6.0');
6
+ src: url('../fonts/keyrune.eot?#iefix&v=1.6.0') format('embedded-opentype'), url('../fonts/keyrune.woff2?v=1.6.0') format('woff2'), url('../fonts/keyrune.woff?v=1.6.0') format('woff'), url('../fonts/keyrune.ttf?v=1.6.0') format('truetype'), url('../fonts/keyrune.svg?v=1.6.0#keyrune') format('svg');
7
+ font-weight: normal;
8
+ font-style: normal;
9
+ }
10
+ .ss {
11
+ display: inline-block;
12
+ font: normal normal normal 14px/1 Keyrune;
13
+ font-size: inherit;
14
+ line-height: 1em;
15
+ text-rendering: auto;
16
+ transform: translate(0, 0);
17
+ speak: none;
18
+ text-transform: none;
19
+ vertical-align: middle;
20
+ -webkit-font-smoothing: antialiased;
21
+ -moz-osx-font-smoothing: grayscale;
22
+ }
23
+ .ss:before {
24
+ content: "\e684";
25
+ }
26
+ /**
27
+ * Larger sizes */
28
+ .ss-2x {
29
+ font-size: 2em;
30
+ }
31
+ .ss-3x {
32
+ font-size: 3em;
33
+ }
34
+ .ss-4x {
35
+ font-size: 4em;
36
+ }
37
+ .ss-5x {
38
+ font-size: 5em;
39
+ }
40
+ .ss-6x {
41
+ font-size: 6em;
42
+ }
43
+ /**
44
+ * Rarity colors */
45
+ .ss-common {
46
+ color: #1A1718;
47
+ }
48
+ .ss-common.ss-grad {
49
+ background: -webkit-gradient(linear, left top, right top, color-stop(1%, #302b2c), color-stop(50%, #474040), color-stop(100%, #302b2c));
50
+ /* Chrome,Safari4+ */
51
+ background: -webkit-linear-gradient(left, #302b2c 1%, #474040 50%, #302b2c 100%);
52
+ -webkit-text-stroke: 0.03em #000;
53
+ -webkit-background-clip: text;
54
+ -webkit-text-fill-color: transparent;
55
+ }
56
+ .ss-common.ss-grad.ss-no-border {
57
+ -webkit-text-stroke: 0;
58
+ }
59
+ .ss-uncommon {
60
+ color: #707883;
61
+ }
62
+ .ss-uncommon.ss-grad {
63
+ background: -webkit-gradient(linear, left top, right top, color-stop(0%, #5a6572), color-stop(50%, #9e9e9e), color-stop(100%, #5a6572));
64
+ /* Chrome,Safari4+ */
65
+ background: -webkit-linear-gradient(left, #5a6572 0%, #9e9e9e 50%, #5a6572 100%);
66
+ -webkit-text-stroke: 0.03em #111;
67
+ -webkit-background-clip: text;
68
+ -webkit-text-fill-color: transparent;
69
+ }
70
+ .ss-uncommon.ss-grad.ss-no-border {
71
+ -webkit-text-stroke: 0;
72
+ }
73
+ .ss-rare {
74
+ color: #A58E4A;
75
+ }
76
+ .ss-rare.ss-grad {
77
+ background: -webkit-gradient(linear, left top, right top, color-stop(0%, #876a3b), color-stop(50%, #dfbd6b), color-stop(100%, #876a3b));
78
+ /* Chrome,Safari4+ */
79
+ background: -webkit-linear-gradient(left, #876a3b 0%, #dfbd6b 50%, #876a3b 100%);
80
+ -webkit-text-stroke: 0.03em #333;
81
+ -webkit-background-clip: text;
82
+ -webkit-text-fill-color: transparent;
83
+ }
84
+ .ss-rare.ss-grad.ss-no-border {
85
+ -webkit-text-stroke: 0;
86
+ }
87
+ .ss-mythic {
88
+ color: #BF4427;
89
+ }
90
+ .ss-mythic.ss-grad {
91
+ background: -webkit-gradient(linear, left top, right top, color-stop(0%, #b21f0f), color-stop(50%, #f38300), color-stop(100%, #b21f0f));
92
+ /* Chrome,Safari4+ */
93
+ background: -webkit-linear-gradient(left, #b21f0f 0%, #f38300 50%, #b21f0f 100%);
94
+ -webkit-text-stroke: 0.03em #333;
95
+ -webkit-background-clip: text;
96
+ -webkit-text-fill-color: transparent;
97
+ }
98
+ .ss-mythic.ss-grad.ss-no-border {
99
+ -webkit-text-stroke: 0;
100
+ }
101
+ /**
102
+ * Fixed width */
103
+ .ss-fw {
104
+ width: 1.28571429em;
105
+ text-align: center;
106
+ }
107
+ /**
108
+ * Core */
109
+ .ss-lea:before {
110
+ content: "\e600";
111
+ }
112
+ .ss-leb:before {
113
+ content: "\e601";
114
+ }
115
+ .ss-2ed:before {
116
+ content: "\e602";
117
+ }
118
+ .ss-3ed:before {
119
+ content: "\e603";
120
+ }
121
+ .ss-4ed:before {
122
+ content: "\e604";
123
+ }
124
+ .ss-psum:before {
125
+ content: "\e605";
126
+ }
127
+ .ss-5ed:before {
128
+ content: "\e606";
129
+ }
130
+ .ss-6ed:before {
131
+ content: "\e607";
132
+ }
133
+ .ss-7ed:before {
134
+ content: "\e608";
135
+ }
136
+ .ss-8ed:before {
137
+ content: "\e609";
138
+ }
139
+ .ss-9ed:before {
140
+ content: "\e60a";
141
+ }
142
+ .ss-10e:before {
143
+ content: "\e60b";
144
+ }
145
+ .ss-m10:before {
146
+ content: "\e60c";
147
+ }
148
+ .ss-m11:before {
149
+ content: "\e60d";
150
+ }
151
+ .ss-m12:before {
152
+ content: "\e60e";
153
+ }
154
+ .ss-m13:before {
155
+ content: "\e60f";
156
+ }
157
+ .ss-m14:before {
158
+ content: "\e610";
159
+ }
160
+ .ss-m15:before {
161
+ content: "\e611";
162
+ }
163
+ .ss-bcore:before {
164
+ content: "\e612";
165
+ }
166
+ .ss-ori:before {
167
+ content: "\e697";
168
+ }
169
+ /**
170
+ * Expansions */
171
+ /* Artifact Block */
172
+ .ss-arn:before {
173
+ content: "\e613";
174
+ }
175
+ .ss-atq:before {
176
+ content: "\e614";
177
+ }
178
+ .ss-leg:before {
179
+ content: "\e615";
180
+ }
181
+ /* Wizards Block */
182
+ .ss-drk:before {
183
+ content: "\e616";
184
+ }
185
+ .ss-fem:before {
186
+ content: "\e617";
187
+ }
188
+ .ss-hml:before {
189
+ content: "\e618";
190
+ }
191
+ /* Ice Age Block */
192
+ .ss-ice:before {
193
+ content: "\e619";
194
+ }
195
+ .ss-all:before {
196
+ content: "\e61a";
197
+ }
198
+ .ss-csp:before {
199
+ content: "\e61b";
200
+ }
201
+ /* Mirage Block */
202
+ .ss-mir:before {
203
+ content: "\e61c";
204
+ }
205
+ .ss-vis:before {
206
+ content: "\e61d";
207
+ }
208
+ .ss-wth:before {
209
+ content: "\e61e";
210
+ }
211
+ /* Tempest Block */
212
+ .ss-tmp:before {
213
+ content: "\e61f";
214
+ }
215
+ .ss-sth:before {
216
+ content: "\e620";
217
+ }
218
+ .ss-exo:before {
219
+ content: "\e621";
220
+ }
221
+ /* Urza's Block */
222
+ .ss-usg:before {
223
+ content: "\e622";
224
+ }
225
+ .ss-ulg:before {
226
+ content: "\e623";
227
+ }
228
+ .ss-uds:before {
229
+ content: "\e624";
230
+ }
231
+ /* Mercadian Block */
232
+ .ss-mmq:before {
233
+ content: "\e625";
234
+ }
235
+ .ss-nms:before {
236
+ content: "\e626";
237
+ }
238
+ .ss-pcy:before {
239
+ content: "\e627";
240
+ }
241
+ /* Invasion Block */
242
+ .ss-inv:before {
243
+ content: "\e628";
244
+ }
245
+ .ss-pls:before {
246
+ content: "\e629";
247
+ }
248
+ .ss-apc:before {
249
+ content: "\e62a";
250
+ }
251
+ /* Odyssey Block */
252
+ .ss-ody:before {
253
+ content: "\e62b";
254
+ }
255
+ .ss-tor:before {
256
+ content: "\e62c";
257
+ }
258
+ .ss-jud:before {
259
+ content: "\e62d";
260
+ }
261
+ /* Onslaught Block */
262
+ .ss-ons:before {
263
+ content: "\e62e";
264
+ }
265
+ .ss-lgn:before {
266
+ content: "\e62f";
267
+ }
268
+ .ss-scg:before {
269
+ content: "\e630";
270
+ }
271
+ /* Mirrodin Block */
272
+ .ss-mrd:before {
273
+ content: "\e631";
274
+ }
275
+ .ss-dst:before {
276
+ content: "\e632";
277
+ }
278
+ .ss-5dn:before {
279
+ content: "\e633";
280
+ }
281
+ /* Kamigawa Block */
282
+ .ss-chk:before {
283
+ content: "\e634";
284
+ }
285
+ .ss-bok:before {
286
+ content: "\e635";
287
+ }
288
+ .ss-sok:before {
289
+ content: "\e636";
290
+ }
291
+ /* Ravnica Block */
292
+ .ss-rav:before {
293
+ content: "\e637";
294
+ }
295
+ .ss-gpt:before {
296
+ content: "\e638";
297
+ }
298
+ .ss-dis:before {
299
+ content: "\e639";
300
+ }
301
+ /* Time Spiral Block */
302
+ .ss-tsp:before {
303
+ content: "\e63a";
304
+ }
305
+ .ss-plc:before {
306
+ content: "\e63b";
307
+ }
308
+ .ss-fut:before {
309
+ content: "\e63c";
310
+ }
311
+ /* Lorwyn Block */
312
+ .ss-lrw:before {
313
+ content: "\e63d";
314
+ }
315
+ .ss-mor:before {
316
+ content: "\e63e";
317
+ }
318
+ /* Shadowmoor Block */
319
+ .ss-shm:before {
320
+ content: "\e63f";
321
+ }
322
+ .ss-eve:before {
323
+ content: "\e640";
324
+ }
325
+ /* Alara Block */
326
+ .ss-ala:before {
327
+ content: "\e641";
328
+ }
329
+ .ss-con:before {
330
+ content: "\e642";
331
+ }
332
+ .ss-arb:before {
333
+ content: "\e643";
334
+ }
335
+ /* Zendikar Block */
336
+ .ss-zen:before {
337
+ content: "\e644";
338
+ }
339
+ .ss-wwk:before {
340
+ content: "\e645";
341
+ }
342
+ .ss-roe:before {
343
+ content: "\e646";
344
+ }
345
+ /* Scars Block */
346
+ .ss-som:before {
347
+ content: "\e647";
348
+ }
349
+ .ss-mbs:before {
350
+ content: "\e648";
351
+ }
352
+ .ss-nph:before {
353
+ content: "\e649";
354
+ }
355
+ /* Innistrad Block */
356
+ .ss-isd:before {
357
+ content: "\e64a";
358
+ }
359
+ .ss-dka:before {
360
+ content: "\e64b";
361
+ }
362
+ .ss-avr:before {
363
+ content: "\e64c";
364
+ }
365
+ /* RTR Block */
366
+ .ss-rtr:before {
367
+ content: "\e64d";
368
+ }
369
+ .ss-gtc:before {
370
+ content: "\e64e";
371
+ }
372
+ .ss-dgm:before {
373
+ content: "\e64f";
374
+ }
375
+ /* Theros Block */
376
+ .ss-ths:before {
377
+ content: "\e650";
378
+ }
379
+ .ss-bng:before {
380
+ content: "\e651";
381
+ }
382
+ .ss-jou:before {
383
+ content: "\e652";
384
+ }
385
+ /* Khans Block */
386
+ .ss-ktk:before {
387
+ content: "\e653";
388
+ }
389
+ .ss-frf:before {
390
+ content: "\e654";
391
+ }
392
+ .ss-dtk:before {
393
+ content: "\e693";
394
+ }
395
+ /* Return to Zendikar Block */
396
+ .ss-bfz:before {
397
+ content: "\e699";
398
+ }
399
+ .ss-ogw:before {
400
+ content: "\e901";
401
+ }
402
+ /* Return to Innistrad Block */
403
+ .ss-soi:before {
404
+ content: "\e902";
405
+ }
406
+ .ss-emn:before {
407
+ content: "\e90b";
408
+ }
409
+ /**
410
+ * Command Zone */
411
+ .ss-van:before {
412
+ content: "\e655";
413
+ }
414
+ .ss-hop:before {
415
+ content: "\e656";
416
+ }
417
+ .ss-arc:before {
418
+ content: "\e657";
419
+ }
420
+ .ss-cmd:before {
421
+ content: "\e658";
422
+ }
423
+ .ss-pc2:before {
424
+ content: "\e659";
425
+ }
426
+ .ss-cm1:before {
427
+ content: "\e65a";
428
+ }
429
+ .ss-c13:before {
430
+ content: "\e65b";
431
+ }
432
+ .ss-cns:before {
433
+ content: "\e65c";
434
+ }
435
+ .ss-c14:before {
436
+ content: "\e65d";
437
+ }
438
+ .ss-c15:before {
439
+ content: "\e900";
440
+ }
441
+ .ss-cn2:before {
442
+ content: "\e904";
443
+ }
444
+ /**
445
+ * Reprint */
446
+ .ss-chr:before {
447
+ content: "\e65e";
448
+ }
449
+ .ss-ath:before {
450
+ content: "\e65f";
451
+ }
452
+ .ss-brb:before {
453
+ content: "\e660";
454
+ }
455
+ .ss-btd:before {
456
+ content: "\e661";
457
+ }
458
+ .ss-dkm:before {
459
+ content: "\e662";
460
+ }
461
+ .ss-mma:before {
462
+ content: "\e663";
463
+ }
464
+ .ss-mm2:before {
465
+ content: "\e695";
466
+ }
467
+ .ss-ema:before {
468
+ content: "\e903";
469
+ }
470
+ /**
471
+ * Beginner */
472
+ .ss-por:before {
473
+ content: "\e664";
474
+ }
475
+ .ss-po2:before {
476
+ content: "\e665";
477
+ }
478
+ .ss-ptk:before {
479
+ content: "\e666";
480
+ }
481
+ .ss-s99:before {
482
+ content: "\e667";
483
+ }
484
+ .ss-s00:before {
485
+ content: "\e668";
486
+ }
487
+ .ss-w16:before {
488
+ content: "\e907";
489
+ }
490
+ /**
491
+ * Duel Decks */
492
+ .ss-evg:before {
493
+ content: "\e669";
494
+ }
495
+ .ss-dd2:before {
496
+ content: "\e66a";
497
+ }
498
+ .ss-ddc:before {
499
+ content: "\e66b";
500
+ }
501
+ .ss-ddd:before {
502
+ content: "\e66c";
503
+ }
504
+ .ss-dde:before {
505
+ content: "\e66d";
506
+ }
507
+ .ss-ddf:before {
508
+ content: "\e66e";
509
+ }
510
+ .ss-ddg:before {
511
+ content: "\e66f";
512
+ }
513
+ .ss-ddh:before {
514
+ content: "\e670";
515
+ }
516
+ .ss-ddi:before {
517
+ content: "\e671";
518
+ }
519
+ .ss-ddj:before {
520
+ content: "\e672";
521
+ }
522
+ .ss-ddk:before {
523
+ content: "\e673";
524
+ }
525
+ .ss-ddl:before {
526
+ content: "\e674";
527
+ }
528
+ .ss-ddm:before {
529
+ content: "\e675";
530
+ }
531
+ .ss-ddn:before {
532
+ content: "\e676";
533
+ }
534
+ .ss-ddo:before {
535
+ content: "\e677";
536
+ }
537
+ .ss-ddp:before {
538
+ content: "\e698";
539
+ }
540
+ .ss-ddq:before {
541
+ content: "\e908";
542
+ }
543
+ /**
544
+ * From the Vault */
545
+ .ss-drb:before {
546
+ content: "\e678";
547
+ }
548
+ .ss-v09:before {
549
+ content: "\e679";
550
+ }
551
+ .ss-v10:before {
552
+ content: "\e67a";
553
+ }
554
+ .ss-v11:before {
555
+ content: "\e67b";
556
+ }
557
+ .ss-v12:before {
558
+ content: "\e67c";
559
+ }
560
+ .ss-v13:before {
561
+ content: "\e67d";
562
+ }
563
+ .ss-v14:before {
564
+ content: "\e67e";
565
+ }
566
+ .ss-v15:before {
567
+ content: "\e905";
568
+ }
569
+ .ss-v16:before {
570
+ content: "\e906";
571
+ }
572
+ /**
573
+ * Premium Deck Series */
574
+ .ss-h09:before {
575
+ content: "\e67f";
576
+ }
577
+ .ss-pd2:before {
578
+ content: "\e680";
579
+ }
580
+ .ss-pd3:before {
581
+ content: "\e681";
582
+ }
583
+ .ss-md1:before {
584
+ content: "\e682";
585
+ }
586
+ /**
587
+ * Promotional */
588
+ .ss-pgru:before {
589
+ content: "\e683";
590
+ }
591
+ .ss-pmtg1:before {
592
+ content: "\e684";
593
+ }
594
+ .ss-pmtg2:before {
595
+ content: "\e685";
596
+ }
597
+ .ss-pleaf:before {
598
+ content: "\e686";
599
+ }
600
+ .ss-pmei:before {
601
+ content: "\e687";
602
+ }
603
+ .ss-parl:before {
604
+ content: "\e688";
605
+ }
606
+ .ss-dpa:before {
607
+ content: "\e689";
608
+ }
609
+ .ss-pbook:before {
610
+ content: "\e68a";
611
+ }
612
+ .ss-past:before {
613
+ content: "\e68b";
614
+ }
615
+ .ss-parl2:before {
616
+ content: "\e68c";
617
+ }
618
+ .ss-exp:before {
619
+ content: "\e69a";
620
+ }
621
+ .ss-psalvat05:before {
622
+ content: "\e909";
623
+ }
624
+ .ss-psalvat11:before {
625
+ content: "\e90a";
626
+ }
627
+ /**
628
+ * Online */
629
+ .ss-med:before {
630
+ content: "\e68d";
631
+ }
632
+ .ss-me2:before {
633
+ content: "\e68e";
634
+ }
635
+ .ss-me3:before {
636
+ content: "\e68f";
637
+ }
638
+ .ss-me4:before {
639
+ content: "\e690";
640
+ }
641
+ .ss-tpr:before {
642
+ content: "\e694";
643
+ }
644
+ .ss-vma:before {
645
+ content: "\e696";
646
+ }
647
+ /**
648
+ * Un-serious */
649
+ .ss-ugl:before {
650
+ content: "\e691";
651
+ }
652
+ .ss-unh:before {
653
+ content: "\e692";
654
+ }
655
+ .ss-border:after {
656
+ content: "";
657
+ position: absolute;
658
+ left: -0.05em;
659
+ top: .0em;
660
+ color: #fff;
661
+ font-size: 1.15em;
662
+ z-index: -1;
663
+ background: #fff;
664
+ -webkit-text-stroke: 0.05em #fff;
665
+ -webkit-background-clip: text;
666
+ -webkit-text-fill-color: transparent;
667
+ }
668
+ .ss-border.ss-van:after {
669
+ content: "\e655";
670
+ }
671
+ .ss-border.ss-hop:after {
672
+ content: "\e656";
673
+ }
674
+ .ss-border.ss-arc:after {
675
+ content: "\e657";
676
+ }
677
+ .ss-border.ss-cmd:after {
678
+ content: "\e658";
679
+ }
680
+ .ss-border.ss-pc2:after {
681
+ content: "\e659";
682
+ }
683
+ .ss-border.ss-cm1:after {
684
+ content: "\e65a";
685
+ }
686
+ .ss-border.ss-c13:after {
687
+ content: "\e65b";
688
+ }
689
+ .ss-border.ss-cns:after {
690
+ content: "\e65c";
691
+ }
692
+ .ss-border.ss-c14:after {
693
+ content: "\e65d";
694
+ }
695
+ .ss-border.ss-c15:after {
696
+ content: "\e900";
697
+ }
css/keyrune.min.css ADDED
@@ -0,0 +1 @@
 
 
1
+ @font-face{font-family:Keyrune;src:url(../fonts/keyrune.eot?v=1.6.0);src:url(../fonts/keyrune.eot?#iefix&v=1.6.0) format('embedded-opentype'),url(../fonts/keyrune.woff2?v=1.6.0) format('woff2'),url(../fonts/keyrune.woff?v=1.6.0) format('woff'),url(../fonts/keyrune.ttf?v=1.6.0) format('truetype'),url(../fonts/keyrune.svg?v=1.6.0#keyrune) format('svg');font-weight:400;font-style:normal}.ss{display:inline-block;font:normal normal normal 14px/1 Keyrune;font-size:inherit;line-height:1em;text-rendering:auto;transform:translate(0,0);speak:none;text-transform:none;vertical-align:middle;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ss:before{content:"\e684"}.ss-2x{font-size:2em}.ss-3x{font-size:3em}.ss-4x{font-size:4em}.ss-5x{font-size:5em}.ss-6x{font-size:6em}.ss-common{color:#1A1718}.ss-common.ss-grad{background:-webkit-gradient(linear,left top,right top,color-stop(1%,#302b2c),color-stop(50%,#474040),color-stop(100%,#302b2c));background:-webkit-linear-gradient(left,#302b2c 1%,#474040 50%,#302b2c 100%);-webkit-text-stroke:.03em #000;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ss-common.ss-grad.ss-no-border{-webkit-text-stroke:0}.ss-uncommon{color:#707883}.ss-uncommon.ss-grad{background:-webkit-gradient(linear,left top,right top,color-stop(0,#5a6572),color-stop(50%,#9e9e9e),color-stop(100%,#5a6572));background:-webkit-linear-gradient(left,#5a6572 0,#9e9e9e 50%,#5a6572 100%);-webkit-text-stroke:.03em #111;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ss-uncommon.ss-grad.ss-no-border{-webkit-text-stroke:0}.ss-rare{color:#A58E4A}.ss-rare.ss-grad{background:-webkit-gradient(linear,left top,right top,color-stop(0,#876a3b),color-stop(50%,#dfbd6b),color-stop(100%,#876a3b));background:-webkit-linear-gradient(left,#876a3b 0,#dfbd6b 50%,#876a3b 100%);-webkit-text-stroke:.03em #333;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ss-rare.ss-grad.ss-no-border{-webkit-text-stroke:0}.ss-mythic{color:#BF4427}.ss-mythic.ss-grad{background:-webkit-gradient(linear,left top,right top,color-stop(0,#b21f0f),color-stop(50%,#f38300),color-stop(100%,#b21f0f));background:-webkit-linear-gradient(left,#b21f0f 0,#f38300 50%,#b21f0f 100%);-webkit-text-stroke:.03em #333;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ss-mythic.ss-grad.ss-no-border{-webkit-text-stroke:0}.ss-fw{width:1.28571429em;text-align:center}.ss-lea:before{content:"\e600"}.ss-leb:before{content:"\e601"}.ss-2ed:before{content:"\e602"}.ss-3ed:before{content:"\e603"}.ss-4ed:before{content:"\e604"}.ss-psum:before{content:"\e605"}.ss-5ed:before{content:"\e606"}.ss-6ed:before{content:"\e607"}.ss-7ed:before{content:"\e608"}.ss-8ed:before{content:"\e609"}.ss-9ed:before{content:"\e60a"}.ss-10e:before{content:"\e60b"}.ss-m10:before{content:"\e60c"}.ss-m11:before{content:"\e60d"}.ss-m12:before{content:"\e60e"}.ss-m13:before{content:"\e60f"}.ss-m14:before{content:"\e610"}.ss-m15:before{content:"\e611"}.ss-bcore:before{content:"\e612"}.ss-ori:before{content:"\e697"}.ss-arn:before{content:"\e613"}.ss-atq:before{content:"\e614"}.ss-leg:before{content:"\e615"}.ss-drk:before{content:"\e616"}.ss-fem:before{content:"\e617"}.ss-hml:before{content:"\e618"}.ss-ice:before{content:"\e619"}.ss-all:before{content:"\e61a"}.ss-csp:before{content:"\e61b"}.ss-mir:before{content:"\e61c"}.ss-vis:before{content:"\e61d"}.ss-wth:before{content:"\e61e"}.ss-tmp:before{content:"\e61f"}.ss-sth:before{content:"\e620"}.ss-exo:before{content:"\e621"}.ss-usg:before{content:"\e622"}.ss-ulg:before{content:"\e623"}.ss-uds:before{content:"\e624"}.ss-mmq:before{content:"\e625"}.ss-nms:before{content:"\e626"}.ss-pcy:before{content:"\e627"}.ss-inv:before{content:"\e628"}.ss-pls:before{content:"\e629"}.ss-apc:before{content:"\e62a"}.ss-ody:before{content:"\e62b"}.ss-tor:before{content:"\e62c"}.ss-jud:before{content:"\e62d"}.ss-ons:before{content:"\e62e"}.ss-lgn:before{content:"\e62f"}.ss-scg:before{content:"\e630"}.ss-mrd:before{content:"\e631"}.ss-dst:before{content:"\e632"}.ss-5dn:before{content:"\e633"}.ss-chk:before{content:"\e634"}.ss-bok:before{content:"\e635"}.ss-sok:before{content:"\e636"}.ss-rav:before{content:"\e637"}.ss-gpt:before{content:"\e638"}.ss-dis:before{content:"\e639"}.ss-tsp:before{content:"\e63a"}.ss-plc:before{content:"\e63b"}.ss-fut:before{content:"\e63c"}.ss-lrw:before{content:"\e63d"}.ss-mor:before{content:"\e63e"}.ss-shm:before{content:"\e63f"}.ss-eve:before{content:"\e640"}.ss-ala:before{content:"\e641"}.ss-con:before{content:"\e642"}.ss-arb:before{content:"\e643"}.ss-zen:before{content:"\e644"}.ss-wwk:before{content:"\e645"}.ss-roe:before{content:"\e646"}.ss-som:before{content:"\e647"}.ss-mbs:before{content:"\e648"}.ss-nph:before{content:"\e649"}.ss-isd:before{content:"\e64a"}.ss-dka:before{content:"\e64b"}.ss-avr:before{content:"\e64c"}.ss-rtr:before{content:"\e64d"}.ss-gtc:before{content:"\e64e"}.ss-dgm:before{content:"\e64f"}.ss-ths:before{content:"\e650"}.ss-bng:before{content:"\e651"}.ss-jou:before{content:"\e652"}.ss-ktk:before{content:"\e653"}.ss-frf:before{content:"\e654"}.ss-dtk:before{content:"\e693"}.ss-bfz:before{content:"\e699"}.ss-ogw:before{content:"\e901"}.ss-soi:before{content:"\e902"}.ss-emn:before{content:"\e90b"}.ss-van:before{content:"\e655"}.ss-hop:before{content:"\e656"}.ss-arc:before{content:"\e657"}.ss-cmd:before{content:"\e658"}.ss-pc2:before{content:"\e659"}.ss-cm1:before{content:"\e65a"}.ss-c13:before{content:"\e65b"}.ss-cns:before{content:"\e65c"}.ss-c14:before{content:"\e65d"}.ss-c15:before{content:"\e900"}.ss-cn2:before{content:"\e904"}.ss-chr:before{content:"\e65e"}.ss-ath:before{content:"\e65f"}.ss-brb:before{content:"\e660"}.ss-btd:before{content:"\e661"}.ss-dkm:before{content:"\e662"}.ss-mma:before{content:"\e663"}.ss-mm2:before{content:"\e695"}.ss-ema:before{content:"\e903"}.ss-por:before{content:"\e664"}.ss-po2:before{content:"\e665"}.ss-ptk:before{content:"\e666"}.ss-s99:before{content:"\e667"}.ss-s00:before{content:"\e668"}.ss-w16:before{content:"\e907"}.ss-evg:before{content:"\e669"}.ss-dd2:before{content:"\e66a"}.ss-ddc:before{content:"\e66b"}.ss-ddd:before{content:"\e66c"}.ss-dde:before{content:"\e66d"}.ss-ddf:before{content:"\e66e"}.ss-ddg:before{content:"\e66f"}.ss-ddh:before{content:"\e670"}.ss-ddi:before{content:"\e671"}.ss-ddj:before{content:"\e672"}.ss-ddk:before{content:"\e673"}.ss-ddl:before{content:"\e674"}.ss-ddm:before{content:"\e675"}.ss-ddn:before{content:"\e676"}.ss-ddo:before{content:"\e677"}.ss-ddp:before{content:"\e698"}.ss-ddq:before{content:"\e908"}.ss-drb:before{content:"\e678"}.ss-v09:before{content:"\e679"}.ss-v10:before{content:"\e67a"}.ss-v11:before{content:"\e67b"}.ss-v12:before{content:"\e67c"}.ss-v13:before{content:"\e67d"}.ss-v14:before{content:"\e67e"}.ss-v15:before{content:"\e905"}.ss-v16:before{content:"\e906"}.ss-h09:before{content:"\e67f"}.ss-pd2:before{content:"\e680"}.ss-pd3:before{content:"\e681"}.ss-md1:before{content:"\e682"}.ss-pgru:before{content:"\e683"}.ss-pmtg1:before{content:"\e684"}.ss-pmtg2:before{content:"\e685"}.ss-pleaf:before{content:"\e686"}.ss-pmei:before{content:"\e687"}.ss-parl:before{content:"\e688"}.ss-dpa:before{content:"\e689"}.ss-pbook:before{content:"\e68a"}.ss-past:before{content:"\e68b"}.ss-parl2:before{content:"\e68c"}.ss-exp:before{content:"\e69a"}.ss-psalvat05:before{content:"\e909"}.ss-psalvat11:before{content:"\e90a"}.ss-med:before{content:"\e68d"}.ss-me2:before{content:"\e68e"}.ss-me3:before{content:"\e68f"}.ss-me4:before{content:"\e690"}.ss-tpr:before{content:"\e694"}.ss-vma:before{content:"\e696"}.ss-ugl:before{content:"\e691"}.ss-unh:before{content:"\e692"}.ss-border:after{content:"";position:absolute;left:-.05em;top:0;color:#fff;font-size:1.15em;z-index:-1;background:#fff;-webkit-text-stroke:.05em #fff;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ss-border.ss-van:after{content:"\e655"}.ss-border.ss-hop:after{content:"\e656"}.ss-border.ss-arc:after{content:"\e657"}.ss-border.ss-cmd:after{content:"\e658"}.ss-border.ss-pc2:after{content:"\e659"}.ss-border.ss-cm1:after{content:"\e65a"}.ss-border.ss-c13:after{content:"\e65b"}.ss-border.ss-cns:after{content:"\e65c"}.ss-border.ss-c14:after{content:"\e65d"}.ss-border.ss-c15:after{content:"\e900"}
css/mana.css ADDED
@@ -0,0 +1,684 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Global */
3
+ @font-face {
4
+ font-family: 'Mana';
5
+ src: url('../fonts/mana.eot?v=0.6');
6
+ src: url('../fonts/mana.eot?#iefix&v=0.6') format('embedded-opentype'), url('../fonts/mana.woff?v=0.6') format('woff'), url('../fonts/mana.ttf?v=0.6') format('truetype'), url('../fonts/mana.svg?v=0.6#mana') format('svg');
7
+ font-weight: normal;
8
+ font-style: normal;
9
+ }
10
+ @font-face {
11
+ font-family: 'MPlantin';
12
+ src: url('../fonts/mplantin.eot?v=0.6');
13
+ src: url('../fonts/mplantin.eot?#iefix&v=0.6') format('embedded-opentype'), url('../fonts/mplantin.woff?v=0.6') format('woff'), url('../fonts/mplantin.ttf?v=0.6') format('truetype'), url('../fonts/mplantin.svg?v=0.6#mplantin') format('svg');
14
+ font-weight: normal;
15
+ font-style: normal;
16
+ }
17
+ .ms {
18
+ display: inline-block;
19
+ font: normal normal normal 14px/1 Mana;
20
+ font-size: inherit;
21
+ line-height: 1em;
22
+ text-rendering: auto;
23
+ transform: translate(0, 0);
24
+ speak: none;
25
+ text-transform: none;
26
+ vertical-align: middle;
27
+ -webkit-font-smoothing: antialiased;
28
+ -moz-osx-font-smoothing: grayscale;
29
+ }
30
+ /**
31
+ * Mana cost styles */
32
+ .ms-cost {
33
+ background-color: #BEB9B2;
34
+ border-radius: 1em;
35
+ color: #111;
36
+ font-size: 0.95em;
37
+ width: 1.3em;
38
+ height: 1.3em;
39
+ line-height: 1.35em;
40
+ text-align: center;
41
+ }
42
+ .ms-cost.ms-w,
43
+ .ms-cost.ms-wp {
44
+ background-color: #F0F2C0;
45
+ }
46
+ .ms-cost.ms-u,
47
+ .ms-cost.ms-up {
48
+ background-color: #B5CDE3;
49
+ }
50
+ .ms-cost.ms-b,
51
+ .ms-cost.ms-bp {
52
+ background-color: #ACA29A;
53
+ }
54
+ .ms-cost.ms-r,
55
+ .ms-cost.ms-rp {
56
+ background-color: #DB8664;
57
+ }
58
+ .ms-cost.ms-g,
59
+ .ms-cost.ms-gp {
60
+ background-color: #93B483;
61
+ }
62
+ .ms-cost.ms-wu {
63
+ background: #edf2b0;
64
+ background: -moz-linear-gradient(-45deg, #edf2b0 0%, #edf2b0 50%, #a6c1dd 50%, #a6c1dd 100%);
65
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #edf2b0), color-stop(50%, #edf2b0), color-stop(50%, #a6c1dd), color-stop(100%, #a6c1dd));
66
+ background: -webkit-linear-gradient(-45deg, #edf2b0 0%, #edf2b0 50%, #a6c1dd 50%, #a6c1dd 100%);
67
+ background: -o-linear-gradient(-45deg, #edf2b0 0%, #edf2b0 50%, #a6c1dd 50%, #a6c1dd 100%);
68
+ background: -ms-linear-gradient(-45deg, #edf2b0 0%, #edf2b0 50%, #a6c1dd 50%, #a6c1dd 100%);
69
+ background: linear-gradient(135deg, #edf2b0 0%, #edf2b0 50%, #a6c1dd 50%, #a6c1dd 100%);
70
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#edf2b0', endColorstr='#a6c1dd', GradientType=1);
71
+ }
72
+ .ms-cost.ms-wb {
73
+ background: #edf2b0;
74
+ background: -moz-linear-gradient(-45deg, #edf2b0 0%, #edf2b0 50%, #9c9188 50%, #9c9188 100%);
75
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #edf2b0), color-stop(50%, #edf2b0), color-stop(50%, #9c9188), color-stop(100%, #9c9188));
76
+ background: -webkit-linear-gradient(-45deg, #edf2b0 0%, #edf2b0 50%, #9c9188 50%, #9c9188 100%);
77
+ background: -o-linear-gradient(-45deg, #edf2b0 0%, #edf2b0 50%, #9c9188 50%, #9c9188 100%);
78
+ background: -ms-linear-gradient(-45deg, #edf2b0 0%, #edf2b0 50%, #9c9188 50%, #9c9188 100%);
79
+ background: linear-gradient(135deg, #edf2b0 0%, #edf2b0 50%, #9c9188 50%, #9c9188 100%);
80
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#edf2b0', endColorstr='#9c9188', GradientType=1);
81
+ }
82
+ .ms-cost.ms-ub {
83
+ background: #a6c1dd;
84
+ background: -moz-linear-gradient(-45deg, #a6c1dd 0%, #a6c1dd 50%, #9c9188 50%, #9c9188 100%);
85
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #a6c1dd), color-stop(50%, #a6c1dd), color-stop(50%, #9c9188), color-stop(100%, #9c9188));
86
+ background: -webkit-linear-gradient(-45deg, #a6c1dd 0%, #a6c1dd 50%, #9c9188 50%, #9c9188 100%);
87
+ background: -o-linear-gradient(-45deg, #a6c1dd 0%, #a6c1dd 50%, #9c9188 50%, #9c9188 100%);
88
+ background: -ms-linear-gradient(-45deg, #a6c1dd 0%, #a6c1dd 50%, #9c9188 50%, #9c9188 100%);
89
+ background: linear-gradient(135deg, #a6c1dd 0%, #a6c1dd 50%, #9c9188 50%, #9c9188 100%);
90
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6c1dd', endColorstr='#9c9188', GradientType=1);
91
+ }
92
+ .ms-cost.ms-ur {
93
+ background: #a6c1dd;
94
+ background: -moz-linear-gradient(-45deg, #a6c1dd 0%, #a6c1dd 50%, #db8664 50%, #db8664 100%);
95
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #a6c1dd), color-stop(50%, #a6c1dd), color-stop(50%, #db8664), color-stop(100%, #db8664));
96
+ background: -webkit-linear-gradient(-45deg, #a6c1dd 0%, #a6c1dd 50%, #db8664 50%, #db8664 100%);
97
+ background: -o-linear-gradient(-45deg, #a6c1dd 0%, #a6c1dd 50%, #db8664 50%, #db8664 100%);
98
+ background: -ms-linear-gradient(-45deg, #a6c1dd 0%, #a6c1dd 50%, #db8664 50%, #db8664 100%);
99
+ background: linear-gradient(135deg, #a6c1dd 0%, #a6c1dd 50%, #db8664 50%, #db8664 100%);
100
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6c1dd', endColorstr='#db8664', GradientType=1);
101
+ }
102
+ .ms-cost.ms-br {
103
+ background: #aca29a;
104
+ background: -moz-linear-gradient(-45deg, #aca29a 0%, #aca29a 50%, #db8664 50%, #db8664 100%);
105
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #aca29a), color-stop(50%, #aca29a), color-stop(50%, #db8664), color-stop(100%, #db8664));
106
+ background: -webkit-linear-gradient(-45deg, #aca29a 0%, #aca29a 50%, #db8664 50%, #db8664 100%);
107
+ background: -o-linear-gradient(-45deg, #aca29a 0%, #aca29a 50%, #db8664 50%, #db8664 100%);
108
+ background: -ms-linear-gradient(-45deg, #aca29a 0%, #aca29a 50%, #db8664 50%, #db8664 100%);
109
+ background: linear-gradient(135deg, #aca29a 0%, #aca29a 50%, #db8664 50%, #db8664 100%);
110
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#aca29a', endColorstr='#db8664', GradientType=1);
111
+ }
112
+ .ms-cost.ms-bg {
113
+ background: #aca29a;
114
+ background: -moz-linear-gradient(-45deg, #aca29a 0%, #aca29a 50%, #93b483 50%, #93b483 100%);
115
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #aca29a), color-stop(50%, #aca29a), color-stop(50%, #93b483), color-stop(100%, #93b483));
116
+ background: -webkit-linear-gradient(-45deg, #aca29a 0%, #aca29a 50%, #93b483 50%, #93b483 100%);
117
+ background: -o-linear-gradient(-45deg, #aca29a 0%, #aca29a 50%, #93b483 50%, #93b483 100%);
118
+ background: -ms-linear-gradient(-45deg, #aca29a 0%, #aca29a 50%, #93b483 50%, #93b483 100%);
119
+ background: linear-gradient(135deg, #aca29a 0%, #aca29a 50%, #93b483 50%, #93b483 100%);
120
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#aca29a', endColorstr='#93b483', GradientType=1);
121
+ }
122
+ .ms-cost.ms-rw {
123
+ background: #db8664;
124
+ background: -moz-linear-gradient(-45deg, #db8664 0%, #db8664 50%, #edf2b0 50%, #edf2b0 100%);
125
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #db8664), color-stop(50%, #db8664), color-stop(50%, #edf2b0), color-stop(100%, #edf2b0));
126
+ background: -webkit-linear-gradient(-45deg, #db8664 0%, #db8664 50%, #edf2b0 50%, #edf2b0 100%);
127
+ background: -o-linear-gradient(-45deg, #db8664 0%, #db8664 50%, #edf2b0 50%, #edf2b0 100%);
128
+ background: -ms-linear-gradient(-45deg, #db8664 0%, #db8664 50%, #edf2b0 50%, #edf2b0 100%);
129
+ background: linear-gradient(135deg, #db8664 0%, #db8664 50%, #edf2b0 50%, #edf2b0 100%);
130
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#db8664', endColorstr='#edf2b0', GradientType=1);
131
+ }
132
+ .ms-cost.ms-rg {
133
+ background: #db8664;
134
+ background: -moz-linear-gradient(-45deg, #db8664 0%, #db8664 50%, #93b483 50%, #93b483 100%);
135
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #db8664), color-stop(50%, #db8664), color-stop(50%, #93b483), color-stop(100%, #93b483));
136
+ background: -webkit-linear-gradient(-45deg, #db8664 0%, #db8664 50%, #93b483 50%, #93b483 100%);
137
+ background: -o-linear-gradient(-45deg, #db8664 0%, #db8664 50%, #93b483 50%, #93b483 100%);
138
+ background: -ms-linear-gradient(-45deg, #db8664 0%, #db8664 50%, #93b483 50%, #93b483 100%);
139
+ background: linear-gradient(135deg, #db8664 0%, #db8664 50%, #93b483 50%, #93b483 100%);
140
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#db8664', endColorstr='#93b483', GradientType=1);
141
+ }
142
+ .ms-cost.ms-gw {
143
+ background: #93b483;
144
+ background: -moz-linear-gradient(-45deg, #93b483 0%, #93b483 50%, #edf2b0 50%, #edf2b0 100%);
145
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #93b483), color-stop(50%, #93b483), color-stop(50%, #edf2b0), color-stop(100%, #edf2b0));
146
+ background: -webkit-linear-gradient(-45deg, #93b483 0%, #93b483 50%, #edf2b0 50%, #edf2b0 100%);
147
+ background: -o-linear-gradient(-45deg, #93b483 0%, #93b483 50%, #edf2b0 50%, #edf2b0 100%);
148
+ background: -ms-linear-gradient(-45deg, #93b483 0%, #93b483 50%, #edf2b0 50%, #edf2b0 100%);
149
+ background: linear-gradient(135deg, #93b483 0%, #93b483 50%, #edf2b0 50%, #edf2b0 100%);
150
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#93b483', endColorstr='#edf2b0', GradientType=1);
151
+ }
152
+ .ms-cost.ms-gu {
153
+ background: #93b483;
154
+ background: -moz-linear-gradient(-45deg, #93b483 0%, #93b483 50%, #b5cde3 50%, #b5cde3 100%);
155
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #93b483), color-stop(50%, #93b483), color-stop(50%, #b5cde3), color-stop(100%, #b5cde3));
156
+ background: -webkit-linear-gradient(-45deg, #93b483 0%, #93b483 50%, #b5cde3 50%, #b5cde3 100%);
157
+ background: -o-linear-gradient(-45deg, #93b483 0%, #93b483 50%, #b5cde3 50%, #b5cde3 100%);
158
+ background: -ms-linear-gradient(-45deg, #93b483 0%, #93b483 50%, #b5cde3 50%, #b5cde3 100%);
159
+ background: linear-gradient(135deg, #93b483 0%, #93b483 50%, #b5cde3 50%, #b5cde3 100%);
160
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#93b483', endColorstr='#b5cde3', GradientType=1);
161
+ }
162
+ .ms-cost.ms-2w {
163
+ background: #beb9b2;
164
+ background: -moz-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #edf2b0 50%, #edf2b0 100%);
165
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #beb9b2), color-stop(50%, #beb9b2), color-stop(50%, #edf2b0), color-stop(100%, #edf2b0));
166
+ background: -webkit-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #edf2b0 50%, #edf2b0 100%);
167
+ background: -o-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #edf2b0 50%, #edf2b0 100%);
168
+ background: -ms-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #edf2b0 50%, #edf2b0 100%);
169
+ background: linear-gradient(135deg, #beb9b2 0%, #beb9b2 50%, #edf2b0 50%, #edf2b0 100%);
170
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#edf2b0', GradientType=1);
171
+ }
172
+ .ms-cost.ms-2u {
173
+ background: #beb9b2;
174
+ background: -moz-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #b5cde3 50%, #b5cde3 100%);
175
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #beb9b2), color-stop(50%, #beb9b2), color-stop(50%, #b5cde3), color-stop(100%, #b5cde3));
176
+ background: -webkit-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #b5cde3 50%, #b5cde3 100%);
177
+ background: -o-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #b5cde3 50%, #b5cde3 100%);
178
+ background: -ms-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #b5cde3 50%, #b5cde3 100%);
179
+ background: linear-gradient(135deg, #beb9b2 0%, #beb9b2 50%, #b5cde3 50%, #b5cde3 100%);
180
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#b5cde3', GradientType=1);
181
+ }
182
+ .ms-cost.ms-2b {
183
+ background: #beb9b2;
184
+ background: -moz-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #9c9188 50%, #9c9188 100%);
185
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #beb9b2), color-stop(50%, #beb9b2), color-stop(50%, #9c9188), color-stop(100%, #9c9188));
186
+ background: -webkit-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #9c9188 50%, #9c9188 100%);
187
+ background: -o-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #9c9188 50%, #9c9188 100%);
188
+ background: -ms-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #9c9188 50%, #9c9188 100%);
189
+ background: linear-gradient(135deg, #beb9b2 0%, #beb9b2 50%, #9c9188 50%, #9c9188 100%);
190
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#9c9188', GradientType=1);
191
+ }
192
+ .ms-cost.ms-2r {
193
+ background: #beb9b2;
194
+ background: -moz-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #db8664 50%, #db8664 100%);
195
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #beb9b2), color-stop(50%, #beb9b2), color-stop(50%, #db8664), color-stop(100%, #db8664));
196
+ background: -webkit-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #db8664 50%, #db8664 100%);
197
+ background: -o-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #db8664 50%, #db8664 100%);
198
+ background: -ms-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #db8664 50%, #db8664 100%);
199
+ background: linear-gradient(135deg, #beb9b2 0%, #beb9b2 50%, #db8664 50%, #db8664 100%);
200
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#db8664', GradientType=1);
201
+ }
202
+ .ms-cost.ms-2g {
203
+ background: #beb9b2;
204
+ background: -moz-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #93b483 50%, #93b483 100%);
205
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #beb9b2), color-stop(50%, #beb9b2), color-stop(50%, #93b483), color-stop(100%, #93b483));
206
+ background: -webkit-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #93b483 50%, #93b483 100%);
207
+ background: -o-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #93b483 50%, #93b483 100%);
208
+ background: -ms-linear-gradient(-45deg, #beb9b2 0%, #beb9b2 50%, #93b483 50%, #93b483 100%);
209
+ background: linear-gradient(135deg, #beb9b2 0%, #beb9b2 50%, #93b483 50%, #93b483 100%);
210
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#93b483', GradientType=1);
211
+ }
212
+ .ms-cost.ms-p:before,
213
+ .ms-cost.ms-wp:before,
214
+ .ms-cost.ms-up:before,
215
+ .ms-cost.ms-bp:before,
216
+ .ms-cost.ms-rp:before,
217
+ .ms-cost.ms-gp:before {
218
+ display: inline-block;
219
+ -moz-transform: scale(1.2, 1.2);
220
+ -webkit-transform: scale(1.2, 1.2);
221
+ transform: scale(1.2, 1.2);
222
+ }
223
+ .ms-cost.ms-tap-alt:before {
224
+ display: inline-block;
225
+ -moz-transform: scale(1.2, 1.2);
226
+ -webkit-transform: scale(1.2, 1.2);
227
+ transform: scale(1.2, 1.2);
228
+ padding-left: .06em;
229
+ padding-bottom: 0.10em;
230
+ }
231
+ .ms-cost.ms-s:before {
232
+ color: #fff;
233
+ -webkit-text-stroke: 2px #fff;
234
+ font-size: 0.85em;
235
+ top: -0.05em;
236
+ position: relative;
237
+ display: inline-block;
238
+ }
239
+ .ms-cost.ms-s:after {
240
+ content: "\e619";
241
+ position: absolute;
242
+ color: #333;
243
+ margin-left: -0.9em;
244
+ font-size: 1.1em;
245
+ }
246
+ .ms-cost.ms-untap {
247
+ background-color: #111;
248
+ color: #fff;
249
+ }
250
+ .ms-cost.ms-shadow {
251
+ box-shadow: -0.06em 0.07em 0 #111, 0 0.06em 0 #111;
252
+ }
253
+ .ms-cost.ms-shadow.ms-untap {
254
+ box-shadow: -0.06em 0.07em 0 #fff, 0 0.06em 0 #fff;
255
+ }
256
+ /**
257
+ * Split costs */
258
+ .ms-split {
259
+ position: relative;
260
+ width: 1.3em;
261
+ height: 1.3em;
262
+ }
263
+ .ms-split:before,
264
+ .ms-split:after {
265
+ font-size: 0.55em !important;
266
+ position: absolute;
267
+ }
268
+ .ms-split:before {
269
+ top: -0.38em;
270
+ left: 0.28em;
271
+ }
272
+ .ms-split:after {
273
+ top: 0.5em;
274
+ left: 1.0em;
275
+ }
276
+ /**
277
+ * Half costs */
278
+ .ms-half {
279
+ width: .675em;
280
+ overflow: hidden;
281
+ display: inline-block;
282
+ margin-left: .675em;
283
+ }
284
+ .ms-half > .ms-cost {
285
+ margin-left: -0.675em;
286
+ }
287
+ /**
288
+ * Un-set costs */
289
+ .ms-100 {
290
+ width: 2.4em;
291
+ }
292
+ .ms-100000 {
293
+ width: 5.4em;
294
+ }
295
+ /**
296
+ * Planeswalker symbols */
297
+ .ms-loyalty-up,
298
+ .ms-loyalty-down,
299
+ .ms-loyalty-zero,
300
+ .ms-loyalty-start {
301
+ color: #111;
302
+ font-size: 1.5em;
303
+ position: relative;
304
+ text-align: center;
305
+ }
306
+ .ms-loyalty-start {
307
+ font-size: 2.0em;
308
+ }
309
+ .ms-loyalty-0:after,
310
+ .ms-loyalty-1:after,
311
+ .ms-loyalty-2:after,
312
+ .ms-loyalty-3:after,
313
+ .ms-loyalty-4:after,
314
+ .ms-loyalty-5:after,
315
+ .ms-loyalty-6:after,
316
+ .ms-loyalty-7:after,
317
+ .ms-loyalty-8:after,
318
+ .ms-loyalty-9:after,
319
+ .ms-loyalty-10:after,
320
+ .ms-loyalty-x:after {
321
+ color: #fff;
322
+ display: inline-block;
323
+ font-size: 0.5em;
324
+ font-family: 'MPlantin, Garamond, Palatino, ' Times New Roman ', Times, serif';
325
+ position: absolute;
326
+ left: 0;
327
+ line-height: 1.75em;
328
+ width: 100%;
329
+ text-align: center;
330
+ -webkit-padding-before: 0.15em;
331
+ }
332
+ .ms-loyalty-0:after {
333
+ content: "0";
334
+ }
335
+ .ms-loyalty-up.ms-loyalty-1:after {
336
+ content: "+1";
337
+ }
338
+ .ms-loyalty-up.ms-loyalty-2:after {
339
+ content: "+2";
340
+ }
341
+ .ms-loyalty-up.ms-loyalty-3:after {
342
+ content: "+3";
343
+ }
344
+ .ms-loyalty-up.ms-loyalty-4:after {
345
+ content: "+4";
346
+ }
347
+ .ms-loyalty-up.ms-loyalty-5:after {
348
+ content: "+5";
349
+ }
350
+ .ms-loyalty-up.ms-loyalty-6:after {
351
+ content: "+6";
352
+ }
353
+ .ms-loyalty-up.ms-loyalty-7:after {
354
+ content: "+7";
355
+ }
356
+ .ms-loyalty-up.ms-loyalty-8:after {
357
+ content: "+8";
358
+ }
359
+ .ms-loyalty-up.ms-loyalty-9:after {
360
+ content: "+9";
361
+ }
362
+ .ms-loyalty-up.ms-loyalty-10:after {
363
+ content: "+10";
364
+ }
365
+ .ms-loyalty-up.ms-loyalty-x:after {
366
+ content: "+X";
367
+ }
368
+ .ms-loyalty-start.ms-loyalty-1:after {
369
+ content: "1";
370
+ }
371
+ .ms-loyalty-start.ms-loyalty-2:after {
372
+ content: "2";
373
+ }
374
+ .ms-loyalty-start.ms-loyalty-3:after {
375
+ content: "3";
376
+ }
377
+ .ms-loyalty-start.ms-loyalty-4:after {
378
+ content: "4";
379
+ }
380
+ .ms-loyalty-start.ms-loyalty-5:after {
381
+ content: "5";
382
+ }
383
+ .ms-loyalty-start.ms-loyalty-6:after {
384
+ content: "6";
385
+ }
386
+ .ms-loyalty-start.ms-loyalty-7:after {
387
+ content: "7";
388
+ }
389
+ .ms-loyalty-start.ms-loyalty-8:after {
390
+ content: "8";
391
+ }
392
+ .ms-loyalty-start.ms-loyalty-9:after {
393
+ content: "9";
394
+ }
395
+ .ms-loyalty-start.ms-loyalty-10:after {
396
+ content: "10";
397
+ }
398
+ .ms-loyalty-start.ms-loyalty-x:after {
399
+ content: "X";
400
+ }
401
+ .ms-loyalty-down:after {
402
+ line-height: 1.6em;
403
+ }
404
+ .ms-loyalty-down.ms-loyalty-1:after {
405
+ content: "-1";
406
+ }
407
+ .ms-loyalty-down.ms-loyalty-2:after {
408
+ content: "-2";
409
+ }
410
+ .ms-loyalty-down.ms-loyalty-3:after {
411
+ content: "-3";
412
+ }
413
+ .ms-loyalty-down.ms-loyalty-4:after {
414
+ content: "-4";
415
+ }
416
+ .ms-loyalty-down.ms-loyalty-5:after {
417
+ content: "-5";
418
+ }
419
+ .ms-loyalty-down.ms-loyalty-6:after {
420
+ content: "-6";
421
+ }
422
+ .ms-loyalty-down.ms-loyalty-7:after {
423
+ content: "-7";
424
+ }
425
+ .ms-loyalty-down.ms-loyalty-8:after {
426
+ content: "-8";
427
+ }
428
+ .ms-loyalty-down.ms-loyalty-9:after {
429
+ content: "-9";
430
+ }
431
+ .ms-loyalty-down.ms-loyalty-10:after {
432
+ content: "-10";
433
+ }
434
+ .ms-loyalty-down.ms-loyalty-x:after {
435
+ content: "-X";
436
+ }
437
+ /**
438
+ * Double faced cards */
439
+ .ms-dfc {
440
+ color: #111;
441
+ border: .05em solid #111;
442
+ border-radius: 2em;
443
+ padding: 1px;
444
+ }
445
+ /*
446
+ * Larger sizes */
447
+ .ms-2x {
448
+ font-size: 1.75em;
449
+ }
450
+ .ms-3x {
451
+ font-size: 2.25em;
452
+ }
453
+ .ms-4x {
454
+ font-size: 3.0em;
455
+ }
456
+ .ms-5x {
457
+ font-size: 3.75em;
458
+ }
459
+ .ms-6x {
460
+ font-size: 4.5em;
461
+ }
462
+ /**
463
+ * Mana */
464
+ .ms-w:before {
465
+ content: "\e600";
466
+ }
467
+ .ms-u:before {
468
+ content: "\e601";
469
+ }
470
+ .ms-b:before {
471
+ content: "\e602";
472
+ }
473
+ .ms-r:before {
474
+ content: "\e603";
475
+ }
476
+ .ms-g:before {
477
+ content: "\e604";
478
+ }
479
+ .ms-0:before {
480
+ content: "\e605";
481
+ }
482
+ .ms-1:before {
483
+ content: "\e606";
484
+ }
485
+ .ms-2:before {
486
+ content: "\e607";
487
+ }
488
+ .ms-3:before {
489
+ content: "\e608";
490
+ }
491
+ .ms-4:before {
492
+ content: "\e609";
493
+ }
494
+ .ms-5:before {
495
+ content: "\e60a";
496
+ }
497
+ .ms-6:before {
498
+ content: "\e60b";
499
+ }
500
+ .ms-7:before {
501
+ content: "\e60c";
502
+ }
503
+ .ms-8:before {
504
+ content: "\e60d";
505
+ }
506
+ .ms-9:before {
507
+ content: "\e60e";
508
+ }
509
+ .ms-10:before {
510
+ content: "\e60f";
511
+ }
512
+ .ms-11:before {
513
+ content: "\e610";
514
+ }
515
+ .ms-12:before {
516
+ content: "\e611";
517
+ }
518
+ .ms-13:before {
519
+ content: "\e612";
520
+ }
521
+ .ms-14:before {
522
+ content: "\e613";
523
+ }
524
+ .ms-15:before {
525
+ content: "\e614";
526
+ }
527
+ .ms-16:before {
528
+ content: "\e62a";
529
+ }
530
+ .ms-17:before {
531
+ content: "\e62b";
532
+ }
533
+ .ms-18:before {
534
+ content: "\e62c";
535
+ }
536
+ .ms-19:before {
537
+ content: "\e62d";
538
+ }
539
+ .ms-20:before {
540
+ content: "\e62e";
541
+ }
542
+ .ms-x:before {
543
+ content: "\e615";
544
+ }
545
+ .ms-y:before {
546
+ content: "\e616";
547
+ }
548
+ .ms-z:before {
549
+ content: "\e617";
550
+ }
551
+ .ms-p:before,
552
+ .ms-wp:before,
553
+ .ms-up:before,
554
+ .ms-bp:before,
555
+ .ms-rp:before,
556
+ .ms-gp:before {
557
+ content: "\e618";
558
+ }
559
+ .ms-s:before {
560
+ content: "\e619";
561
+ }
562
+ .ms-c:before {
563
+ content: "\e904";
564
+ }
565
+ /**
566
+ * Tap/roll symbols */
567
+ .ms-tap:before {
568
+ content: "\e61a";
569
+ }
570
+ .ms-untap:before {
571
+ content: "\e61b";
572
+ }
573
+ .ms-tap-alt:before {
574
+ content: "\e61c";
575
+ }
576
+ .ms-chaos:before {
577
+ content: "\e61d";
578
+ }
579
+ .ms-1-2:before {
580
+ content: "\e902";
581
+ }
582
+ .ms-infinity:before {
583
+ content: "\e903";
584
+ }
585
+ /**
586
+ * Card types */
587
+ .ms-artifact:before {
588
+ content: "\e61e";
589
+ }
590
+ .ms-creature:before {
591
+ content: "\e61f";
592
+ }
593
+ .ms-enchantment:before {
594
+ content: "\e620";
595
+ }
596
+ .ms-instant:before {
597
+ content: "\e621";
598
+ }
599
+ .ms-land:before {
600
+ content: "\e622";
601
+ }
602
+ .ms-planeswalker:before {
603
+ content: "\e623";
604
+ }
605
+ .ms-sorcery:before {
606
+ content: "\e624";
607
+ }
608
+ /**
609
+ * Split symbols */
610
+ .ms-wu:before,
611
+ .ms-wb:before,
612
+ .ms-rw:after,
613
+ .ms-gw:after,
614
+ .ms-2w:after {
615
+ content: "\e600";
616
+ }
617
+ .ms-ub:before,
618
+ .ms-ur:before,
619
+ .ms-wu:after,
620
+ .ms-gu:after,
621
+ .ms-2u:after {
622
+ content: "\e601";
623
+ }
624
+ .ms-br:before,
625
+ .ms-bg:before,
626
+ .ms-wb:after,
627
+ .ms-ub:after,
628
+ .ms-2b:after {
629
+ content: "\e602";
630
+ }
631
+ .ms-rw:before,
632
+ .ms-rg:before,
633
+ .ms-ur:after,
634
+ .ms-br:after,
635
+ .ms-2r:after {
636
+ content: "\e603";
637
+ }
638
+ .ms-gw:before,
639
+ .ms-gu:before,
640
+ .ms-bg:after,
641
+ .ms-rg:after,
642
+ .ms-2g:after {
643
+ content: "\e604";
644
+ }
645
+ .ms-2w:before,
646
+ .ms-2u:before,
647
+ .ms-2b:before,
648
+ .ms-2r:before,
649
+ .ms-2g:before {
650
+ content: "\e607";
651
+ }
652
+ /**
653
+ * Un-set symbols */
654
+ .ms-100:before {
655
+ content: "\e900";
656
+ }
657
+ .ms-100000:before {
658
+ content: "\e901";
659
+ }
660
+ /**
661
+ * Planeswalker symbols */
662
+ .ms-loyalty-up:before {
663
+ content: "\e627";
664
+ }
665
+ .ms-loyalty-down:before {
666
+ content: "\e625";
667
+ }
668
+ .ms-loyalty-zero:before {
669
+ content: "\e626";
670
+ }
671
+ .ms-loyalty-start:before {
672
+ content: "\e628";
673
+ }
674
+ /**
675
+ * Other */
676
+ .ms-flashback:before {
677
+ content: "\e629";
678
+ }
679
+ .ms-dfc-night:before {
680
+ content: "\e905";
681
+ }
682
+ .ms-dfc-day:before {
683
+ content: "\e906";
684
+ }
css/mana.min.css ADDED
@@ -0,0 +1 @@
 
 
1
+ @font-face{font-family:Mana;src:url(../fonts/mana.eot?v=0.6);src:url(../fonts/mana.eot?#iefix&v=0.6) format('embedded-opentype'),url(../fonts/mana.woff?v=0.6) format('woff'),url(../fonts/mana.ttf?v=0.6) format('truetype'),url(../fonts/mana.svg?v=0.6#mana) format('svg');font-weight:400;font-style:normal}@font-face{font-family:MPlantin;src:url(../fonts/mplantin.eot?v=0.6);src:url(../fonts/mplantin.eot?#iefix&v=0.6) format('embedded-opentype'),url(../fonts/mplantin.woff?v=0.6) format('woff'),url(../fonts/mplantin.ttf?v=0.6) format('truetype'),url(../fonts/mplantin.svg?v=0.6#mplantin) format('svg');font-weight:400;font-style:normal}.ms{display:inline-block;font:normal normal normal 14px/1 Mana;font-size:inherit;line-height:1em;text-rendering:auto;transform:translate(0,0);speak:none;text-transform:none;vertical-align:middle;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ms-cost{background-color:#BEB9B2;border-radius:1em;color:#111;font-size:.95em;width:1.3em;height:1.3em;line-height:1.35em;text-align:center}.ms-cost.ms-w,.ms-cost.ms-wp{background-color:#F0F2C0}.ms-cost.ms-u,.ms-cost.ms-up{background-color:#B5CDE3}.ms-cost.ms-b,.ms-cost.ms-bp{background-color:#ACA29A}.ms-cost.ms-r,.ms-cost.ms-rp{background-color:#DB8664}.ms-cost.ms-g,.ms-cost.ms-gp{background-color:#93B483}.ms-cost.ms-wu{background:#edf2b0;background:-moz-linear-gradient(-45deg,#edf2b0 0,#edf2b0 50%,#a6c1dd 50%,#a6c1dd 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#edf2b0),color-stop(50%,#edf2b0),color-stop(50%,#a6c1dd),color-stop(100%,#a6c1dd));background:-webkit-linear-gradient(-45deg,#edf2b0 0,#edf2b0 50%,#a6c1dd 50%,#a6c1dd 100%);background:-o-linear-gradient(-45deg,#edf2b0 0,#edf2b0 50%,#a6c1dd 50%,#a6c1dd 100%);background:-ms-linear-gradient(-45deg,#edf2b0 0,#edf2b0 50%,#a6c1dd 50%,#a6c1dd 100%);background:linear-gradient(135deg,#edf2b0 0,#edf2b0 50%,#a6c1dd 50%,#a6c1dd 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#edf2b0', endColorstr='#a6c1dd', GradientType=1)}.ms-cost.ms-wb{background:#edf2b0;background:-moz-linear-gradient(-45deg,#edf2b0 0,#edf2b0 50%,#9c9188 50%,#9c9188 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#edf2b0),color-stop(50%,#edf2b0),color-stop(50%,#9c9188),color-stop(100%,#9c9188));background:-webkit-linear-gradient(-45deg,#edf2b0 0,#edf2b0 50%,#9c9188 50%,#9c9188 100%);background:-o-linear-gradient(-45deg,#edf2b0 0,#edf2b0 50%,#9c9188 50%,#9c9188 100%);background:-ms-linear-gradient(-45deg,#edf2b0 0,#edf2b0 50%,#9c9188 50%,#9c9188 100%);background:linear-gradient(135deg,#edf2b0 0,#edf2b0 50%,#9c9188 50%,#9c9188 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#edf2b0', endColorstr='#9c9188', GradientType=1)}.ms-cost.ms-ub{background:#a6c1dd;background:-moz-linear-gradient(-45deg,#a6c1dd 0,#a6c1dd 50%,#9c9188 50%,#9c9188 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#a6c1dd),color-stop(50%,#a6c1dd),color-stop(50%,#9c9188),color-stop(100%,#9c9188));background:-webkit-linear-gradient(-45deg,#a6c1dd 0,#a6c1dd 50%,#9c9188 50%,#9c9188 100%);background:-o-linear-gradient(-45deg,#a6c1dd 0,#a6c1dd 50%,#9c9188 50%,#9c9188 100%);background:-ms-linear-gradient(-45deg,#a6c1dd 0,#a6c1dd 50%,#9c9188 50%,#9c9188 100%);background:linear-gradient(135deg,#a6c1dd 0,#a6c1dd 50%,#9c9188 50%,#9c9188 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6c1dd', endColorstr='#9c9188', GradientType=1)}.ms-cost.ms-ur{background:#a6c1dd;background:-moz-linear-gradient(-45deg,#a6c1dd 0,#a6c1dd 50%,#db8664 50%,#db8664 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#a6c1dd),color-stop(50%,#a6c1dd),color-stop(50%,#db8664),color-stop(100%,#db8664));background:-webkit-linear-gradient(-45deg,#a6c1dd 0,#a6c1dd 50%,#db8664 50%,#db8664 100%);background:-o-linear-gradient(-45deg,#a6c1dd 0,#a6c1dd 50%,#db8664 50%,#db8664 100%);background:-ms-linear-gradient(-45deg,#a6c1dd 0,#a6c1dd 50%,#db8664 50%,#db8664 100%);background:linear-gradient(135deg,#a6c1dd 0,#a6c1dd 50%,#db8664 50%,#db8664 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6c1dd', endColorstr='#db8664', GradientType=1)}.ms-cost.ms-br{background:#aca29a;background:-moz-linear-gradient(-45deg,#aca29a 0,#aca29a 50%,#db8664 50%,#db8664 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#aca29a),color-stop(50%,#aca29a),color-stop(50%,#db8664),color-stop(100%,#db8664));background:-webkit-linear-gradient(-45deg,#aca29a 0,#aca29a 50%,#db8664 50%,#db8664 100%);background:-o-linear-gradient(-45deg,#aca29a 0,#aca29a 50%,#db8664 50%,#db8664 100%);background:-ms-linear-gradient(-45deg,#aca29a 0,#aca29a 50%,#db8664 50%,#db8664 100%);background:linear-gradient(135deg,#aca29a 0,#aca29a 50%,#db8664 50%,#db8664 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#aca29a', endColorstr='#db8664', GradientType=1)}.ms-cost.ms-bg{background:#aca29a;background:-moz-linear-gradient(-45deg,#aca29a 0,#aca29a 50%,#93b483 50%,#93b483 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#aca29a),color-stop(50%,#aca29a),color-stop(50%,#93b483),color-stop(100%,#93b483));background:-webkit-linear-gradient(-45deg,#aca29a 0,#aca29a 50%,#93b483 50%,#93b483 100%);background:-o-linear-gradient(-45deg,#aca29a 0,#aca29a 50%,#93b483 50%,#93b483 100%);background:-ms-linear-gradient(-45deg,#aca29a 0,#aca29a 50%,#93b483 50%,#93b483 100%);background:linear-gradient(135deg,#aca29a 0,#aca29a 50%,#93b483 50%,#93b483 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#aca29a', endColorstr='#93b483', GradientType=1)}.ms-cost.ms-rw{background:#db8664;background:-moz-linear-gradient(-45deg,#db8664 0,#db8664 50%,#edf2b0 50%,#edf2b0 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#db8664),color-stop(50%,#db8664),color-stop(50%,#edf2b0),color-stop(100%,#edf2b0));background:-webkit-linear-gradient(-45deg,#db8664 0,#db8664 50%,#edf2b0 50%,#edf2b0 100%);background:-o-linear-gradient(-45deg,#db8664 0,#db8664 50%,#edf2b0 50%,#edf2b0 100%);background:-ms-linear-gradient(-45deg,#db8664 0,#db8664 50%,#edf2b0 50%,#edf2b0 100%);background:linear-gradient(135deg,#db8664 0,#db8664 50%,#edf2b0 50%,#edf2b0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#db8664', endColorstr='#edf2b0', GradientType=1)}.ms-cost.ms-rg{background:#db8664;background:-moz-linear-gradient(-45deg,#db8664 0,#db8664 50%,#93b483 50%,#93b483 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#db8664),color-stop(50%,#db8664),color-stop(50%,#93b483),color-stop(100%,#93b483));background:-webkit-linear-gradient(-45deg,#db8664 0,#db8664 50%,#93b483 50%,#93b483 100%);background:-o-linear-gradient(-45deg,#db8664 0,#db8664 50%,#93b483 50%,#93b483 100%);background:-ms-linear-gradient(-45deg,#db8664 0,#db8664 50%,#93b483 50%,#93b483 100%);background:linear-gradient(135deg,#db8664 0,#db8664 50%,#93b483 50%,#93b483 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#db8664', endColorstr='#93b483', GradientType=1)}.ms-cost.ms-gw{background:#93b483;background:-moz-linear-gradient(-45deg,#93b483 0,#93b483 50%,#edf2b0 50%,#edf2b0 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#93b483),color-stop(50%,#93b483),color-stop(50%,#edf2b0),color-stop(100%,#edf2b0));background:-webkit-linear-gradient(-45deg,#93b483 0,#93b483 50%,#edf2b0 50%,#edf2b0 100%);background:-o-linear-gradient(-45deg,#93b483 0,#93b483 50%,#edf2b0 50%,#edf2b0 100%);background:-ms-linear-gradient(-45deg,#93b483 0,#93b483 50%,#edf2b0 50%,#edf2b0 100%);background:linear-gradient(135deg,#93b483 0,#93b483 50%,#edf2b0 50%,#edf2b0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#93b483', endColorstr='#edf2b0', GradientType=1)}.ms-cost.ms-gu{background:#93b483;background:-moz-linear-gradient(-45deg,#93b483 0,#93b483 50%,#b5cde3 50%,#b5cde3 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#93b483),color-stop(50%,#93b483),color-stop(50%,#b5cde3),color-stop(100%,#b5cde3));background:-webkit-linear-gradient(-45deg,#93b483 0,#93b483 50%,#b5cde3 50%,#b5cde3 100%);background:-o-linear-gradient(-45deg,#93b483 0,#93b483 50%,#b5cde3 50%,#b5cde3 100%);background:-ms-linear-gradient(-45deg,#93b483 0,#93b483 50%,#b5cde3 50%,#b5cde3 100%);background:linear-gradient(135deg,#93b483 0,#93b483 50%,#b5cde3 50%,#b5cde3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#93b483', endColorstr='#b5cde3', GradientType=1)}.ms-cost.ms-2w{background:#beb9b2;background:-moz-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#edf2b0 50%,#edf2b0 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#beb9b2),color-stop(50%,#beb9b2),color-stop(50%,#edf2b0),color-stop(100%,#edf2b0));background:-webkit-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#edf2b0 50%,#edf2b0 100%);background:-o-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#edf2b0 50%,#edf2b0 100%);background:-ms-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#edf2b0 50%,#edf2b0 100%);background:linear-gradient(135deg,#beb9b2 0,#beb9b2 50%,#edf2b0 50%,#edf2b0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#edf2b0', GradientType=1)}.ms-cost.ms-2u{background:#beb9b2;background:-moz-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#b5cde3 50%,#b5cde3 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#beb9b2),color-stop(50%,#beb9b2),color-stop(50%,#b5cde3),color-stop(100%,#b5cde3));background:-webkit-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#b5cde3 50%,#b5cde3 100%);background:-o-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#b5cde3 50%,#b5cde3 100%);background:-ms-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#b5cde3 50%,#b5cde3 100%);background:linear-gradient(135deg,#beb9b2 0,#beb9b2 50%,#b5cde3 50%,#b5cde3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#b5cde3', GradientType=1)}.ms-cost.ms-2b{background:#beb9b2;background:-moz-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#9c9188 50%,#9c9188 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#beb9b2),color-stop(50%,#beb9b2),color-stop(50%,#9c9188),color-stop(100%,#9c9188));background:-webkit-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#9c9188 50%,#9c9188 100%);background:-o-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#9c9188 50%,#9c9188 100%);background:-ms-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#9c9188 50%,#9c9188 100%);background:linear-gradient(135deg,#beb9b2 0,#beb9b2 50%,#9c9188 50%,#9c9188 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#9c9188', GradientType=1)}.ms-cost.ms-2r{background:#beb9b2;background:-moz-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#db8664 50%,#db8664 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#beb9b2),color-stop(50%,#beb9b2),color-stop(50%,#db8664),color-stop(100%,#db8664));background:-webkit-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#db8664 50%,#db8664 100%);background:-o-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#db8664 50%,#db8664 100%);background:-ms-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#db8664 50%,#db8664 100%);background:linear-gradient(135deg,#beb9b2 0,#beb9b2 50%,#db8664 50%,#db8664 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#db8664', GradientType=1)}.ms-cost.ms-2g{background:#beb9b2;background:-moz-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#93b483 50%,#93b483 100%);background:-webkit-gradient(linear,left top,right bottom,color-stop(0,#beb9b2),color-stop(50%,#beb9b2),color-stop(50%,#93b483),color-stop(100%,#93b483));background:-webkit-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#93b483 50%,#93b483 100%);background:-o-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#93b483 50%,#93b483 100%);background:-ms-linear-gradient(-45deg,#beb9b2 0,#beb9b2 50%,#93b483 50%,#93b483 100%);background:linear-gradient(135deg,#beb9b2 0,#beb9b2 50%,#93b483 50%,#93b483 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#beb9b2', endColorstr='#93b483', GradientType=1)}.ms-cost.ms-bp:before,.ms-cost.ms-gp:before,.ms-cost.ms-p:before,.ms-cost.ms-rp:before,.ms-cost.ms-up:before,.ms-cost.ms-wp:before{display:inline-block;-moz-transform:scale(1.2,1.2);-webkit-transform:scale(1.2,1.2);transform:scale(1.2,1.2)}.ms-cost.ms-tap-alt:before{display:inline-block;-moz-transform:scale(1.2,1.2);-webkit-transform:scale(1.2,1.2);transform:scale(1.2,1.2);padding-left:.06em;padding-bottom:.1em}.ms-cost.ms-s:before{color:#fff;-webkit-text-stroke:2px #fff;font-size:.85em;top:-.05em;position:relative;display:inline-block}.ms-cost.ms-s:after{content:"\e619";position:absolute;color:#333;margin-left:-.9em;font-size:1.1em}.ms-cost.ms-untap{background-color:#111;color:#fff}.ms-cost.ms-shadow{box-shadow:-.06em .07em 0 #111,0 .06em 0 #111}.ms-cost.ms-shadow.ms-untap{box-shadow:-.06em .07em 0 #fff,0 .06em 0 #fff}.ms-split{position:relative;width:1.3em;height:1.3em}.ms-split:after,.ms-split:before{font-size:.55em!important;position:absolute}.ms-split:before{top:-.38em;left:.28em}.ms-split:after{top:.5em;left:1em}.ms-half{width:.675em;overflow:hidden;display:inline-block;margin-left:.675em}.ms-half>.ms-cost{margin-left:-.675em}.ms-100{width:2.4em}.ms-100000{width:5.4em}.ms-loyalty-down,.ms-loyalty-start,.ms-loyalty-up,.ms-loyalty-zero{color:#111;font-size:1.5em;position:relative;text-align:center}.ms-loyalty-start{font-size:2em}.ms-loyalty-0:after,.ms-loyalty-10:after,.ms-loyalty-1:after,.ms-loyalty-2:after,.ms-loyalty-3:after,.ms-loyalty-4:after,.ms-loyalty-5:after,.ms-loyalty-6:after,.ms-loyalty-7:after,.ms-loyalty-8:after,.ms-loyalty-9:after,.ms-loyalty-x:after{color:#fff;display:inline-block;font-size:.5em;font-family:'MPlantin, Garamond, Palatino, ' Times New Roman ', Times, serif';position:absolute;left:0;line-height:1.75em;width:100%;text-align:center;-webkit-padding-before:.15em}.ms-loyalty-0:after{content:"0"}.ms-loyalty-up.ms-loyalty-1:after{content:"+1"}.ms-loyalty-up.ms-loyalty-2:after{content:"+2"}.ms-loyalty-up.ms-loyalty-3:after{content:"+3"}.ms-loyalty-up.ms-loyalty-4:after{content:"+4"}.ms-loyalty-up.ms-loyalty-5:after{content:"+5"}.ms-loyalty-up.ms-loyalty-6:after{content:"+6"}.ms-loyalty-up.ms-loyalty-7:after{content:"+7"}.ms-loyalty-up.ms-loyalty-8:after{content:"+8"}.ms-loyalty-up.ms-loyalty-9:after{content:"+9"}.ms-loyalty-up.ms-loyalty-10:after{content:"+10"}.ms-loyalty-up.ms-loyalty-x:after{content:"+X"}.ms-loyalty-start.ms-loyalty-1:after{content:"1"}.ms-loyalty-start.ms-loyalty-2:after{content:"2"}.ms-loyalty-start.ms-loyalty-3:after{content:"3"}.ms-loyalty-start.ms-loyalty-4:after{content:"4"}.ms-loyalty-start.ms-loyalty-5:after{content:"5"}.ms-loyalty-start.ms-loyalty-6:after{content:"6"}.ms-loyalty-start.ms-loyalty-7:after{content:"7"}.ms-loyalty-start.ms-loyalty-8:after{content:"8"}.ms-loyalty-start.ms-loyalty-9:after{content:"9"}.ms-loyalty-start.ms-loyalty-10:after{content:"10"}.ms-loyalty-start.ms-loyalty-x:after{content:"X"}.ms-loyalty-down:after{line-height:1.6em}.ms-loyalty-down.ms-loyalty-1:after{content:"-1"}.ms-loyalty-down.ms-loyalty-2:after{content:"-2"}.ms-loyalty-down.ms-loyalty-3:after{content:"-3"}.ms-loyalty-down.ms-loyalty-4:after{content:"-4"}.ms-loyalty-down.ms-loyalty-5:after{content:"-5"}.ms-loyalty-down.ms-loyalty-6:after{content:"-6"}.ms-loyalty-down.ms-loyalty-7:after{content:"-7"}.ms-loyalty-down.ms-loyalty-8:after{content:"-8"}.ms-loyalty-down.ms-loyalty-9:after{content:"-9"}.ms-loyalty-down.ms-loyalty-10:after{content:"-10"}.ms-loyalty-down.ms-loyalty-x:after{content:"-X"}.ms-dfc{color:#111;border:.05em solid #111;border-radius:2em;padding:.025em}.ms-2x{font-size:1.75em}.ms-3x{font-size:2.25em}.ms-4x{font-size:3em}.ms-5x{font-size:3.75em}.ms-6x{font-size:4.5em}.ms-w:before{content:"\e600"}.ms-u:before{content:"\e601"}.ms-b:before{content:"\e602"}.ms-r:before{content:"\e603"}.ms-g:before{content:"\e604"}.ms-0:before{content:"\e605"}.ms-1:before{content:"\e606"}.ms-2:before{content:"\e607"}.ms-3:before{content:"\e608"}.ms-4:before{content:"\e609"}.ms-5:before{content:"\e60a"}.ms-6:before{content:"\e60b"}.ms-7:before{content:"\e60c"}.ms-8:before{content:"\e60d"}.ms-9:before{content:"\e60e"}.ms-10:before{content:"\e60f"}.ms-11:before{content:"\e610"}.ms-12:before{content:"\e611"}.ms-13:before{content:"\e612"}.ms-14:before{content:"\e613"}.ms-15:before{content:"\e614"}.ms-16:before{content:"\e62a"}.ms-17:before{content:"\e62b"}.ms-18:before{content:"\e62c"}.ms-19:before{content:"\e62d"}.ms-20:before{content:"\e62e"}.ms-x:before{content:"\e615"}.ms-y:before{content:"\e616"}.ms-z:before{content:"\e617"}.ms-bp:before,.ms-gp:before,.ms-p:before,.ms-rp:before,.ms-up:before,.ms-wp:before{content:"\e618"}.ms-s:before{content:"\e619"}.ms-c:before{content:"\e904"}.ms-tap:before{content:"\e61a"}.ms-untap:before{content:"\e61b"}.ms-tap-alt:before{content:"\e61c"}.ms-chaos:before{content:"\e61d"}.ms-1-2:before{content:"\e902"}.ms-infinity:before{content:"\e903"}.ms-artifact:before{content:"\e61e"}.ms-creature:before{content:"\e61f"}.ms-enchantment:before{content:"\e620"}.ms-instant:before{content:"\e621"}.ms-land:before{content:"\e622"}.ms-planeswalker:before{content:"\e623"}.ms-sorcery:before{content:"\e624"}.ms-2w:after,.ms-gw:after,.ms-rw:after,.ms-wb:before,.ms-wu:before{content:"\e600"}.ms-2u:after,.ms-gu:after,.ms-ub:before,.ms-ur:before,.ms-wu:after{content:"\e601"}.ms-2b:after,.ms-bg:before,.ms-br:before,.ms-ub:after,.ms-wb:after{content:"\e602"}.ms-2r:after,.ms-br:after,.ms-rg:before,.ms-rw:before,.ms-ur:after{content:"\e603"}.ms-2g:after,.ms-bg:after,.ms-gu:before,.ms-gw:before,.ms-rg:after{content:"\e604"}.ms-2b:before,.ms-2g:before,.ms-2r:before,.ms-2u:before,.ms-2w:before{content:"\e607"}.ms-100:before{content:"\e900"}.ms-100000:before{content:"\e901"}.ms-loyalty-up:before{content:"\e627"}.ms-loyalty-down:before{content:"\e625"}.ms-loyalty-zero:before{content:"\e626"}.ms-loyalty-start:before{content:"\e628"}.ms-flashback:before{content:"\e629"}.ms-dfc-night:before{content:"\e905"}.ms-dfc-day:before{content:"\e906"}
css/mtg.css ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ * {margin: 0; padding: 0; box-sizing: border-box; }
2
+
3
+ .card {background: #000; padding: 17px; height: 600px; width: 400px;
4
+ margin: 100px auto;
5
+ }
6
+ .card-background {
7
+ padding: 7px 8px 30px 7px;
8
+ background-color: #69a;
9
+ background-image:
10
+ repeating-linear-gradient(140deg, transparent, rgba(255, 255, 255, 0.25) 1%, transparent 20%),
11
+ repeating-linear-gradient(-30deg, transparent, transparent 8%, rgba(255, 255, 255, 0.4), transparent 9%),
12
+ repeating-linear-gradient(-10deg, transparent, transparent 13%, rgba(0, 0, 0, 0.4), transparent 15%),
13
+ repeating-linear-gradient(80deg, transparent, transparent 7.5%, rgba(0, 0, 0, 0.25), transparent 8%),
14
+ repeating-linear-gradient(5deg, transparent, transparent 10.5%, rgba(255, 255, 255, 0.5), transparent 11%),
15
+ repeating-linear-gradient(75deg, transparent, transparent 11.5%, rgba(255, 255, 255, 0.5), transparent 12%),
16
+ repeating-radial-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2) 1%, transparent 1%, transparent 5%);
17
+ border-radius: 10px 10px 40px 40px;
18
+ height: 500px;
19
+ }
20
+
21
+ .card-body {
22
+ position: absolute;
23
+ height: 109.4%;
24
+ width: 350px;
25
+ border: 2px solid rgba(0, 0, 0, 0.8);
26
+ border-right: 2px solid #ddd;
27
+ border-bottom: 2px solid #555;
28
+ border-radius: 5px 5px 0 0;
29
+ background: #ddd;
30
+
31
+ }
32
+
33
+ article {
34
+ padding: 3px;
35
+ width: 350px;
36
+ }
37
+
38
+ article > div {
39
+ background: #ddd;
40
+ position: relative;
41
+ height: 200px;
42
+ border: 2px solid #333;
43
+ z-index: -1;
44
+ }
45
+
46
+ header {
47
+ padding: 3px;
48
+ background: #ddd;
49
+ border-radius: 8px/20px;
50
+ box-shadow: -2px 0 0 0 rgba(0, 0, 0, 0.8);
51
+ position: relative;
52
+ top: 200px; left: 0; right: 0;
53
+ }
54
+ header div {
55
+ padding: 5px 8px 3px;
56
+ background: radial-gradient(ellipse farthest-corner, #E0E7ED 50%, #BDC6CD);
57
+ position: relative;
58
+ border: 2px solid #000;
59
+ border-radius: 10px/20px;
60
+ box-shadow: inset 2px -3px 0 #aaa, inset -1px 1px 0 #fff;
61
+ height: 33px;
62
+ }
63
+ header:first-child {top: 0; }
64
+ header:first-child div {height: 34px; }
65
+
66
+ #textBox {
67
+ margin-top: 38px;
68
+ padding: 10px 7px;
69
+ top: 260px; bottom: 44px;
70
+ border: 2px solid #999;
71
+ border-bottom: 0 none;
72
+ border-left: 0 none;
73
+ background: #d3dddd;
74
+
75
+ }
76
+
77
+ #powerToughness {
78
+ width: 4em;
79
+ top: ; right: 21px; bottom: 28px; left: auto;
80
+ text-align: center;
81
+ box-shadow: -2px 1px 2px 0 rgba(0, 0, 0, 0.8);
82
+ }
83
+ #powerToughness div {
84
+ padding: 4px 0 0;
85
+ height: 23px;
86
+ box-shadow: inset -2px 2px 1px #333, inset 1px -1px 0 #fff;
87
+ border: 0 none;
88
+ font-size: 21px;
89
+ }
90
+
91
+ footer {
92
+ color: #ccc;
93
+ font-family: sans-serif; font-size: 9px;
94
+ position: relative;
95
+ left: 25px; bottom: 10px; right: 25px;
96
+ overflow: auto;
97
+ }
98
+ footer p {margin-bottom: 0.2em; letter-spacing: 0.18em; }
99
+
100
+ .ms {
101
+ position: relative;
102
+ top: -22px;
103
+ float: right;
104
+ }
105
+
106
+ h1 {font-size: 21px; line-height: 1em; }
107
+ h2 {font-size: 18px; line-height: 1em; }
108
+ h3 {
109
+ padding-top: 2px;
110
+ position: relative;
111
+ right: 5px; top: 2px;
112
+ width: 1.05em; height: 1.05em;
113
+ background: #ddd;
114
+ text-align: center;
115
+ border-radius: 1em;
116
+ line-height: 1em;
117
+ }
118
+ h4 {
119
+ border-bottom: 14px solid #000;
120
+ border-right: 7px solid transparent;
121
+ border-left: 7px solid transparent;
122
+ height: 0; width: 0;
123
+ overflow: hidden;
124
+ position: relative;
125
+ right: 10px; top: 7px;
126
+ }
127
+ h6 {float: right; width: 60%; text-align: right; font-size: 8px; }
128
+ p {margin-bottom: 0.6em; line-height: 1.1em; }
129
+ blockquote {font-style: italic; }
130
+ blockquote p {margin-bottom: 0; }
css/mtg_custom.css ADDED
@@ -0,0 +1,250 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ * {margin: 0; padding: 0; box-sizing: border-box; }
2
+
3
+ /* card sizing and background */
4
+ .card {
5
+ background: #000;
6
+ padding: 17px;
7
+ height: 550px;
8
+ width: 400px;
9
+ margin: 50px auto;
10
+ border-radius: 5px;
11
+ box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.75);
12
+ overflow: hidden;
13
+ }
14
+
15
+ .card-background {
16
+ padding: 7px 8px 30px 7px;
17
+ background-color: #69a;
18
+ background-image:
19
+ repeating-linear-gradient(140deg, transparent, rgba(255, 255, 255, 0.25) 1%, transparent 20%),
20
+ repeating-linear-gradient(-30deg, transparent, transparent 8%, rgba(255, 255, 255, 0.4), transparent 9%),
21
+ repeating-linear-gradient(-10deg, transparent, transparent 13%, rgba(0, 0, 0, 0.4), transparent 15%),
22
+ repeating-linear-gradient(80deg, transparent, transparent 7.5%, rgba(0, 0, 0, 0.25), transparent 8%),
23
+ repeating-linear-gradient(5deg, transparent, transparent 10.5%, rgba(255, 255, 255, 0.5), transparent 11%),
24
+ repeating-linear-gradient(75deg, transparent, transparent 11.5%, rgba(255, 255, 255, 0.5), transparent 12%),
25
+ repeating-radial-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2) 1%, transparent 1%, transparent 5%);
26
+ border-radius: 10px 10px 40px 40px;
27
+ height: 475px;
28
+ }
29
+
30
+ .card-body {
31
+ position: relative;
32
+ height: 485px;
33
+ width: 97%;
34
+ border: 2px solid rgba(0, 0, 0, 0.8);
35
+ border-right: 2px solid #ddd;
36
+ border-bottom: 2px solid #555;
37
+ border-radius: 5px 5px 0 0;
38
+ background: #ddd;
39
+ z-index: 0;
40
+ margin: 0 auto;
41
+ }
42
+
43
+ article {
44
+ padding: 3px;
45
+ width: 350px;
46
+ }
47
+
48
+ article > div.art, article > div.textbox {
49
+ background: #ddd;
50
+ position: relative;
51
+ height: 235.031px;
52
+ border: 2px solid #333;
53
+ z-index: 2;
54
+ }
55
+
56
+ div.art {
57
+ width: 95%;
58
+ margin: 0 auto;
59
+ top: -485px;
60
+
61
+ }
62
+
63
+ div.art img {
64
+ width: 100%;
65
+ height: auto;
66
+ position: relative;
67
+ top: -10px;
68
+ }
69
+
70
+
71
+ header {
72
+ padding: 3px;
73
+ background: #ddd;
74
+ border-radius: 8px/20px;
75
+ box-shadow: -2px 0 0 0 rgba(0, 0, 0, 0.8);
76
+ position: relative;
77
+ top: -485px; left: 0; right: 0;
78
+ z-index: 2;
79
+ }
80
+
81
+ header div {
82
+ padding: 5px 8px 3px;
83
+ background: radial-gradient(ellipse farthest-corner, #E0E7ED 50%, #BDC6CD);
84
+ position: relative;
85
+ border: 2px solid #000;
86
+ border-radius: 10px/20px;
87
+ box-shadow: inset 2px -3px 0 #aaa, inset -1px 1px 0 #fff;
88
+ height: 33px;
89
+ }
90
+
91
+ header.card-name {
92
+ top: -485px;
93
+ }
94
+
95
+ header.card-name div {
96
+ height: 34px;
97
+ }
98
+
99
+ .textBox {
100
+ width: 95%;
101
+ margin: 0 auto;
102
+ padding: 10px 7px;
103
+ top: -485px; bottom: 44px;
104
+ border: 2px solid #999;
105
+ border-bottom: 0 none;
106
+ border-left: 0 none;
107
+ background: #d3dddd;
108
+ position:relative;
109
+ }
110
+
111
+ .powerToughness {
112
+ width: 4em;
113
+ top: -490px; right: 0;
114
+ text-align: center;
115
+ box-shadow: -2px 1px 2px 0 rgba(0, 0, 0, 0.8);
116
+ float: right;
117
+ overflow: hidden;
118
+ }
119
+ .powerToughness div {
120
+ padding: 4px 0 0;
121
+ height: 23px;
122
+ box-shadow: inset -2px 2px 1px #333, inset 1px -1px 0 #fff;
123
+ border: 0 none;
124
+ font-size: 21px;
125
+ }
126
+
127
+ .ms {
128
+ position: relative;
129
+ top: -22px;
130
+ float: right;
131
+ }
132
+
133
+ /* text styles begin */
134
+
135
+ h1 {
136
+ font-size: 21px;
137
+ line-height: 1em;
138
+ }
139
+
140
+ h2 {
141
+ font-size: 18px;
142
+ line-height: 1em;
143
+ }
144
+
145
+ h2 i {
146
+ float: right;
147
+ }
148
+ h3 {
149
+ padding-top: 2px;
150
+ position: relative;
151
+ right: 5px; top: 2px;
152
+ width: 1.05em; height: 1.05em;
153
+ background: #ddd;
154
+ text-align: center;
155
+ border-radius: 1em;
156
+ line-height: 1em;
157
+ }
158
+
159
+ h4 {
160
+ position: relative;
161
+ right: -300px; top: -18px;
162
+ }
163
+ h6 {
164
+ float: right;
165
+ text-align: right;
166
+ font-size: 8px;
167
+ position: relative;
168
+ right: -55px;
169
+ bottom: -10px;
170
+ }
171
+ p {
172
+ margin-bottom: 0.6em;
173
+ line-height: 1.1em;
174
+ }
175
+ blockquote {
176
+ font-style: italic;
177
+ }
178
+
179
+ blockquote p {
180
+ margin-bottom: 0;
181
+ }
182
+
183
+ footer {
184
+ color: #ccc;
185
+ font-family: sans-serif;
186
+ font-size: 9px;
187
+ position: relative;
188
+ top: -465px;
189
+ left: 5px;
190
+ right: 5px;
191
+ width: 100%;
192
+ }
193
+
194
+ footer p {
195
+ margin-bottom: 0.2em;
196
+ letter-spacing: 0.18em;
197
+ float: left;
198
+ display: inline-block;
199
+ }
200
+
201
+ /* flip animation styles and hover */
202
+ .flip-container {
203
+ perspective: 1000px;
204
+ }
205
+
206
+ .flip-container {
207
+ height: 550px;
208
+ width: 400px;
209
+ margin: 0 50px;
210
+ float: left;
211
+ }
212
+
213
+ .front, .back {
214
+ backface-visibility: hidden;
215
+ position: absolute;
216
+ top: 0;
217
+ left: 0;
218
+ }
219
+
220
+ .flipper {
221
+ transition: 0.6s;
222
+ transform-style: preserve-3d;
223
+
224
+ position: relative;
225
+
226
+
227
+ }
228
+
229
+ /* flip the pane when hovered */
230
+ .flip-container:hover .flipper, .flip-container.hover .flipper {
231
+ transform: rotateY(180deg);
232
+ }
233
+
234
+ /* front pane, placed above back */
235
+ .front {
236
+ z-index: 2;
237
+ /* for firefox 31 */
238
+ transform: rotateY(0deg);
239
+ }
240
+
241
+ /* back, initially hidden pane */
242
+ .back {
243
+ transform: rotateY(180deg);
244
+ }
245
+
246
+
247
+
248
+
249
+
250
+
favicon-96x96.png ADDED
hotkeys.js ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ () => {
2
+ function gradioApp() {
3
+ const elems = document.getElementsByTagName('gradio-app');
4
+ const elem = elems.length == 0 ? document : elems[0];
5
+
6
+ if (elem !== document) {
7
+ elem.getElementById = function(id) {
8
+ return document.getElementById(id);
9
+ };
10
+ }
11
+ return elem.shadowRoot ? elem.shadowRoot : elem;
12
+ }
13
+ window.addEventListener('keydown', (e) => {
14
+ if ((e.ctrlKey || e.metaKey) && e.key == "`") { // CTRL + ` key
15
+ const recordButtons = gradioApp().querySelectorAll(".record-btn button");
16
+ for (let recordButton of recordButtons) {
17
+ if (recordButton.checkVisibility()) {
18
+ recordButton.click();
19
+ }
20
+ }
21
+ }
22
+ });
23
+ }
packages.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ chromium
2
+ wkhtmltopdf
3
+ xvfb
requirements.txt ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ accelerate
2
+ ftfy
3
+ gradio-client
4
+ torch
5
+ transformers
6
+ imgkit