Detail of 1952 ALPINE RENAULT 1300
Year: 1952, price: 98.58€
Turnable front wheels; steering function; detailed interior; detailed engine; opening hood; opening trunk; opening doors; and detailed chassis.
© Copyright Renault
", new String(response.content(), "UTF-8"));
73 | }
74 |
75 | @Test
76 | public void testBinaryView() throws Exception {
77 | ViewResponse response = esSetup.client().execute(ViewAction.INSTANCE, new ViewRequest("catalog", "product", "1").format("logo")).get();
78 | assertNotNull(response.content());
79 | assertEquals(0, response.content().length);
80 |
81 | response = esSetup.client().execute(ViewAction.INSTANCE, new ViewRequest("catalog", "product", "2").format("logo")).get();
82 | assertNotNull(response.content());
83 | assertEquals(61752, response.content().length);
84 | }
85 |
86 | @Test
87 | public void testUndefinedView() throws Exception {
88 | try {
89 | ViewResponse response = esSetup.client().execute(ViewAction.INSTANCE, new ViewRequest("catalog", "product", "1").format("undefined")).get();
90 | fail("Exception expected!");
91 | } catch (Exception e) {
92 | assertEquals("org.elasticsearch.view.exception.ElasticSearchViewNotFoundException: No view [undefined] found for document type [product]", e.getMessage());
93 | }
94 | }
95 |
96 | @Test
97 | public void testCustomView() throws Exception {
98 |
99 | // Index a custom view
100 | esSetup.execute(
101 | index("catalog", "list-of-products-by-size", "1:10")
102 | .withSource("{\n" +
103 | " \"views\":{\n" +
104 | " \"default\":{\n" +
105 | " \"view_lang\": \"mvel\",\n" +
106 | " \"queries\": {\n" +
107 | " \"products_with_size_1_10\": {\n" +
108 | " \"indices\": \"catalog\",\n" +
109 | " \"types\": [\"product\"],\n" +
110 | " \"query\" : {\n" +
111 | " \"constant_score\" : {\n" +
112 | " \"filter\" : {\n" +
113 | " \"term\" : { \"scale\" : \"1:10\"}\n" +
114 | " }\n" +
115 | " }\n" +
116 | " }\n" +
117 | " }\n" +
118 | " },\n" +
119 | " \"view\" : \"@includeNamed{'list-of-products'; title='List of products'}\"\n" +
120 | " }\n" +
121 | " }\n" +
122 | "}")
123 | );
124 |
125 | ViewResponse response = esSetup.client().execute(ViewAction.INSTANCE, new ViewRequest("catalog", "list-of-products-by-size", "1:10")).get();
126 | assertEquals(fromClassPath("org/elasticsearch/test/integration/views/config/views/list-of-products.html").toString(), new String(response.content(), "UTF-8"));
127 | }
128 |
129 | @Test
130 | public void testCustomViewWithMultipleQueries() throws Exception {
131 |
132 | // Index a custom view
133 | esSetup.execute(
134 | index("web", "pages", "home")
135 | .withSource("{\n" +
136 | " \"views\": {\n" +
137 | " \"default\": {\n" +
138 | " \"view_lang\": \"mvel\",\n" +
139 | " \"queries\": [\n" +
140 | " {\n" +
141 | " \"products_with_price_lower_than_50\": {\n" +
142 | " \"indices\": \"catalog\",\n" +
143 | " \"types\": [\"product\"],\n" +
144 | " \"query\" : {\n" +
145 | " \"constant_score\" : {\n" +
146 | " \"filter\" : {\n" +
147 | " \"range\" : { \"price\" : { \"to\": 50, \"include_upper\": true } }\n" +
148 | " }\n" +
149 | " }\n" +
150 | " }\n" +
151 | " }\n" +
152 | " },\n" +
153 | " {\n" +
154 | " \"brands\": {\n" +
155 | " \"indices\": \"manufacturers\",\n" +
156 | " \"types\": [\"brand\"],\n" +
157 | " \"query\" : {\n" +
158 | " \"match_all\" : {}\n" +
159 | " },\n" +
160 | " \"sort\" : [\n" +
161 | " { \"name\" : \"asc\" },\n"+
162 | " { \"country\" : \"asc\" }\n"+
163 | " ],\n"+
164 | " \"fields\" : [ \"name\" ]\n"+
165 | " }\n" +
166 | " }\n" +
167 | " ],\n" +
168 | " \"view\" : \"@includeNamed{'list-of-products-with-brands'; title='Welcome'}\"\n" +
169 | " }\n" +
170 | " }\n" +
171 | "}")
172 | );
173 |
174 | ViewResponse response = esSetup.client().execute(ViewAction.INSTANCE, new ViewRequest("web", "pages", "home")).get();
175 | assertEquals(fromClassPath("org/elasticsearch/test/integration/views/config/views/list-of-products-with-brands.html").toString(), new String(response.content(), "UTF-8"));
176 | }
177 |
178 |
179 | @After
180 | public void tearDown() throws Exception {
181 | esSetup.terminate();
182 | }
183 | }
184 |
--------------------------------------------------------------------------------
/src/test/resources/org/elasticsearch/test/integration/views/config/views/copyright.mv:
--------------------------------------------------------------------------------
1 | © Copyright @{_source.brand}
--------------------------------------------------------------------------------
/src/test/resources/org/elasticsearch/test/integration/views/config/views/list-of-products-with-brands.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Detail of @{_source.name.toUpperCase()}
Year: @{_source.since}, price: @{_source.price}€
@{_source.description}
@includeNamed{\"copyright\"}
"
46 | },
47 | "logo": {
48 | "view_lang": "binary",
49 | "view": "_source.picture"
50 | }
51 | }
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/test/resources/test.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | ES_HOST=localhost:9200
4 |
5 | echo Delete all
6 | curl -XDELETE "http://$ES_HOST/"
7 |
8 | echo
9 | echo Creating index catalog
10 | curl -XPOST "http://$ES_HOST/catalog"
11 |
12 | echo
13 | echo Updating product mapping
14 | curl -XPUT "http://$ES_HOST/catalog/product/_mapping" --data-binary @org/elasticsearch/test/integration/views/mappings/product.json
15 |
16 | echo
17 | echo Bulk indexing products
18 | curl -XPOST "http://$ES_HOST/catalog/product/_bulk" --data-binary @org/elasticsearch/test/integration/views/data/products.json
19 |
20 | echo
21 | echo Creating index manufacturers
22 | curl -XPOST "http://$ES_HOST/manufacturers"
23 |
24 | echo
25 | echo Updating brand mapping
26 | curl -XPUT "http://$ES_HOST/manufacturers/brand/_mapping" --data-binary @org/elasticsearch/test/integration/views/mappings/brand.json
27 |
28 | echo
29 | echo Bulk indexing brands
30 | curl -XPOST "http://$ES_HOST/manufacturers/brand/_bulk" --data-binary @org/elasticsearch/test/integration/views/data/brands.json
31 |
32 | echo
33 | echo Indexing list-of-products-by-size view
34 | curl -XPUT "http://$ES_HOST/catalog/list-of-products-by-size/1:10" -d "{
35 | \"views\":{
36 | \"default\":{
37 | \"view_lang\": \"mvel\",
38 | \"queries\": {
39 | \"products_with_size_1_10\": {
40 | \"indices\": \"catalog\",
41 | \"types\": [\"product\"],
42 | \"query\" : {
43 | \"constant_score\" : {
44 | \"filter\" : {
45 | \"term\" : { \"scale\" : \"1:10\"}
46 | }
47 | }
48 | }
49 | }
50 | },
51 | \"view\" : \"@includeNamed{'list-of-products'; title='List of products'}\"
52 | }
53 | }
54 | }"
55 |
56 |
57 | echo
58 | echo Indexing manufacturers view
59 | curl -XPUT "http://$ES_HOST/web/pages/home" -d "{
60 | \"views\": {
61 | \"default\": {
62 | \"view_lang\": \"mvel\",
63 | \"queries\": [
64 | {
65 | \"products_with_price_lower_than_50\": {
66 | \"indices\": \"catalog\",
67 | \"types\": [\"product\"],
68 | \"query\" : {
69 | \"constant_score\" : {
70 | \"filter\" : {
71 | \"range\" : { \"price\" : { \"to\": 50, \"include_upper\": true } }
72 | }
73 | }
74 | }
75 | }
76 | },
77 | {
78 | \"brands\": {
79 | \"indices\": \"manufacturers\",
80 | \"types\": [\"brand\"],
81 | \"query\" : {
82 | \"match_all\" : {}
83 | },
84 | \"sort\" : [
85 | { \"name\" : \"asc\" },
86 | { \"country\" : \"asc\" }
87 | ],
88 | \"fields\" : [ \"name\" ]
89 | }
90 | }
91 | ],
92 | \"view\" : \"@includeNamed{'list-of-products-with-brands'; title='Welcome'}\"
93 | }
94 | }
95 | }"
96 |
97 |
98 | echo
99 | echo Refresh all
100 | curl -XPOST "http://$ES_HOST/_refresh"
101 |
102 |
103 | echo
104 | echo ----- Views -------
105 | curl -XGET "http://$ES_HOST/_view/catalog/product/1"
106 |
107 | echo
108 | curl -XGET "http://$ES_HOST/_view/catalog/product/2/full"
109 |
110 | echo
111 | curl -XGET "http://$ES_HOST/_view/catalog/product/1/logo" -o /dev/null -w "Size: %{size_download}\r\n"
112 |
113 | echo
114 | curl -XGET "http://$ES_HOST/_view/catalog/product/2/logo" -o /dev/null -w "Size: %{size_download}\r\n"
115 |
116 | echo
117 | curl -XGET "http://$ES_HOST/_view/catalog/list-of-products-by-size/1:10"
118 |
119 | echo
120 | curl -XGET "http://$ES_HOST/_view/web/pages/home"
121 |
122 |
--------------------------------------------------------------------------------
/stylesheets/ie.css:
--------------------------------------------------------------------------------
1 | nav {
2 | display: none;
3 | }
4 |
--------------------------------------------------------------------------------
/stylesheets/normalize.css:
--------------------------------------------------------------------------------
1 | /* normalize.css 2012-02-07T12:37 UTC - http://github.com/necolas/normalize.css */
2 | /* =============================================================================
3 | HTML5 display definitions
4 | ========================================================================== */
5 | /*
6 | * Corrects block display not defined in IE6/7/8/9 & FF3
7 | */
8 | article,
9 | aside,
10 | details,
11 | figcaption,
12 | figure,
13 | footer,
14 | header,
15 | hgroup,
16 | nav,
17 | section,
18 | summary {
19 | display: block;
20 | }
21 |
22 | /*
23 | * Corrects inline-block display not defined in IE6/7/8/9 & FF3
24 | */
25 | audio,
26 | canvas,
27 | video {
28 | display: inline-block;
29 | *display: inline;
30 | *zoom: 1;
31 | }
32 |
33 | /*
34 | * Prevents modern browsers from displaying 'audio' without controls
35 | */
36 | audio:not([controls]) {
37 | display: none;
38 | }
39 |
40 | /*
41 | * Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4
42 | * Known issue: no IE6 support
43 | */
44 | [hidden] {
45 | display: none;
46 | }
47 |
48 | /* =============================================================================
49 | Base
50 | ========================================================================== */
51 | /*
52 | * 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units
53 | * http://clagnut.com/blog/348/#c790
54 | * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom
55 | * www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
56 | */
57 | html {
58 | font-size: 100%;
59 | /* 1 */
60 | -webkit-text-size-adjust: 100%;
61 | /* 2 */
62 | -ms-text-size-adjust: 100%;
63 | /* 2 */
64 | }
65 |
66 | /*
67 | * Addresses font-family inconsistency between 'textarea' and other form elements.
68 | */
69 | html,
70 | button,
71 | input,
72 | select,
73 | textarea {
74 | font-family: sans-serif;
75 | }
76 |
77 | /*
78 | * Addresses margins handled incorrectly in IE6/7
79 | */
80 | body {
81 | margin: 0;
82 | }
83 |
84 | /* =============================================================================
85 | Links
86 | ========================================================================== */
87 | /*
88 | * Addresses outline displayed oddly in Chrome
89 | */
90 | a:focus {
91 | outline: thin dotted;
92 | }
93 |
94 | /*
95 | * Improves readability when focused and also mouse hovered in all browsers
96 | * people.opera.com/patrickl/experiments/keyboard/test
97 | */
98 | a:hover,
99 | a:active {
100 | outline: 0;
101 | }
102 |
103 | /* =============================================================================
104 | Typography
105 | ========================================================================== */
106 | /*
107 | * Addresses font sizes and margins set differently in IE6/7
108 | * Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5
109 | */
110 | h1 {
111 | font-size: 2em;
112 | margin: 0.67em 0;
113 | }
114 |
115 | h2 {
116 | font-size: 1.5em;
117 | margin: 0.83em 0;
118 | }
119 |
120 | h3 {
121 | font-size: 1.17em;
122 | margin: 1em 0;
123 | }
124 |
125 | h4 {
126 | font-size: 1em;
127 | margin: 1.33em 0;
128 | }
129 |
130 | h5 {
131 | font-size: 0.83em;
132 | margin: 1.67em 0;
133 | }
134 |
135 | h6 {
136 | font-size: 0.75em;
137 | margin: 2.33em 0;
138 | }
139 |
140 | /*
141 | * Addresses styling not present in IE7/8/9, S5, Chrome
142 | */
143 | abbr[title] {
144 | border-bottom: 1px dotted;
145 | }
146 |
147 | /*
148 | * Addresses style set to 'bolder' in FF3+, S4/5, Chrome
149 | */
150 | b,
151 | strong {
152 | font-weight: bold;
153 | }
154 |
155 | blockquote {
156 | margin: 1em 40px;
157 | }
158 |
159 | /*
160 | * Addresses styling not present in S5, Chrome
161 | */
162 | dfn {
163 | font-style: italic;
164 | }
165 |
166 | /*
167 | * Addresses styling not present in IE6/7/8/9
168 | */
169 | mark {
170 | background: #ff0;
171 | color: #000;
172 | }
173 |
174 | /*
175 | * Addresses margins set differently in IE6/7
176 | */
177 | p,
178 | pre {
179 | margin: 1em 0;
180 | }
181 |
182 | /*
183 | * Corrects font family set oddly in IE6, S4/5, Chrome
184 | * en.wikipedia.org/wiki/User:Davidgothberg/Test59
185 | */
186 | pre,
187 | code,
188 | kbd,
189 | samp {
190 | font-family: monospace, serif;
191 | _font-family: 'courier new', monospace;
192 | font-size: 1em;
193 | }
194 |
195 | /*
196 | * 1. Addresses CSS quotes not supported in IE6/7
197 | * 2. Addresses quote property not supported in S4
198 | */
199 | /* 1 */
200 | q {
201 | quotes: none;
202 | }
203 |
204 | /* 2 */
205 | q:before,
206 | q:after {
207 | content: '';
208 | content: none;
209 | }
210 |
211 | small {
212 | font-size: 75%;
213 | }
214 |
215 | /*
216 | * Prevents sub and sup affecting line-height in all browsers
217 | * gist.github.com/413930
218 | */
219 | sub,
220 | sup {
221 | font-size: 75%;
222 | line-height: 0;
223 | position: relative;
224 | vertical-align: baseline;
225 | }
226 |
227 | sup {
228 | top: -0.5em;
229 | }
230 |
231 | sub {
232 | bottom: -0.25em;
233 | }
234 |
235 | /* =============================================================================
236 | Lists
237 | ========================================================================== */
238 | /*
239 | * Addresses margins set differently in IE6/7
240 | */
241 | dl,
242 | menu,
243 | ol,
244 | ul {
245 | margin: 1em 0;
246 | }
247 |
248 | dd {
249 | margin: 0 0 0 40px;
250 | }
251 |
252 | /*
253 | * Addresses paddings set differently in IE6/7
254 | */
255 | menu,
256 | ol,
257 | ul {
258 | padding: 0 0 0 40px;
259 | }
260 |
261 | /*
262 | * Corrects list images handled incorrectly in IE7
263 | */
264 | nav ul,
265 | nav ol {
266 | list-style: none;
267 | list-style-image: none;
268 | }
269 |
270 | /* =============================================================================
271 | Embedded content
272 | ========================================================================== */
273 | /*
274 | * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3
275 | * 2. Improves image quality when scaled in IE7
276 | * code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
277 | */
278 | img {
279 | border: 0;
280 | /* 1 */
281 | -ms-interpolation-mode: bicubic;
282 | /* 2 */
283 | }
284 |
285 | /*
286 | * Corrects overflow displayed oddly in IE9
287 | */
288 | svg:not(:root) {
289 | overflow: hidden;
290 | }
291 |
292 | /* =============================================================================
293 | Figures
294 | ========================================================================== */
295 | /*
296 | * Addresses margin not present in IE6/7/8/9, S5, O11
297 | */
298 | figure {
299 | margin: 0;
300 | }
301 |
302 | /* =============================================================================
303 | Forms
304 | ========================================================================== */
305 | /*
306 | * Corrects margin displayed oddly in IE6/7
307 | */
308 | form {
309 | margin: 0;
310 | }
311 |
312 | /*
313 | * Define consistent border, margin, and padding
314 | */
315 | fieldset {
316 | border: 1px solid #c0c0c0;
317 | margin: 0 2px;
318 | padding: 0.35em 0.625em 0.75em;
319 | }
320 |
321 | /*
322 | * 1. Corrects color not being inherited in IE6/7/8/9
323 | * 2. Corrects text not wrapping in FF3
324 | * 3. Corrects alignment displayed oddly in IE6/7
325 | */
326 | legend {
327 | border: 0;
328 | /* 1 */
329 | padding: 0;
330 | white-space: normal;
331 | /* 2 */
332 | *margin-left: -7px;
333 | /* 3 */
334 | }
335 |
336 | /*
337 | * 1. Corrects font size not being inherited in all browsers
338 | * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome
339 | * 3. Improves appearance and consistency in all browsers
340 | */
341 | button,
342 | input,
343 | select,
344 | textarea {
345 | font-size: 100%;
346 | /* 1 */
347 | margin: 0;
348 | /* 2 */
349 | vertical-align: baseline;
350 | /* 3 */
351 | *vertical-align: middle;
352 | /* 3 */
353 | }
354 |
355 | /*
356 | * Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet
357 | */
358 | button,
359 | input {
360 | line-height: normal;
361 | /* 1 */
362 | }
363 |
364 | /*
365 | * 1. Improves usability and consistency of cursor style between image-type 'input' and others
366 | * 2. Corrects inability to style clickable 'input' types in iOS
367 | * 3. Removes inner spacing in IE7 without affecting normal text inputs
368 | * Known issue: inner spacing remains in IE6
369 | */
370 | button,
371 | input[type="button"],
372 | input[type="reset"],
373 | input[type="submit"] {
374 | cursor: pointer;
375 | /* 1 */
376 | -webkit-appearance: button;
377 | /* 2 */
378 | *overflow: visible;
379 | /* 3 */
380 | }
381 |
382 | /*
383 | * Re-set default cursor for disabled elements
384 | */
385 | button[disabled],
386 | input[disabled] {
387 | cursor: default;
388 | }
389 |
390 | /*
391 | * 1. Addresses box sizing set to content-box in IE8/9
392 | * 2. Removes excess padding in IE8/9
393 | * 3. Removes excess padding in IE7
394 | Known issue: excess padding remains in IE6
395 | */
396 | input[type="checkbox"],
397 | input[type="radio"] {
398 | box-sizing: border-box;
399 | /* 1 */
400 | padding: 0;
401 | /* 2 */
402 | *height: 13px;
403 | /* 3 */
404 | *width: 13px;
405 | /* 3 */
406 | }
407 |
408 | /*
409 | * 1. Addresses appearance set to searchfield in S5, Chrome
410 | * 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof)
411 | */
412 | input[type="search"] {
413 | -webkit-appearance: textfield;
414 | /* 1 */
415 | -moz-box-sizing: content-box;
416 | -webkit-box-sizing: content-box;
417 | /* 2 */
418 | box-sizing: content-box;
419 | }
420 |
421 | /*
422 | * Removes inner padding and search cancel button in S5, Chrome on OS X
423 | */
424 | input[type="search"]::-webkit-search-decoration,
425 | input[type="search"]::-webkit-search-cancel-button {
426 | -webkit-appearance: none;
427 | }
428 |
429 | /*
430 | * Removes inner padding and border in FF3+
431 | * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/
432 | */
433 | button::-moz-focus-inner,
434 | input::-moz-focus-inner {
435 | border: 0;
436 | padding: 0;
437 | }
438 |
439 | /*
440 | * 1. Removes default vertical scrollbar in IE6/7/8/9
441 | * 2. Improves readability and alignment in all browsers
442 | */
443 | textarea {
444 | overflow: auto;
445 | /* 1 */
446 | vertical-align: top;
447 | /* 2 */
448 | }
449 |
450 | /* =============================================================================
451 | Tables
452 | ========================================================================== */
453 | /*
454 | * Remove most spacing between table cells
455 | */
456 | table {
457 | border-collapse: collapse;
458 | border-spacing: 0;
459 | }
460 |
--------------------------------------------------------------------------------
/stylesheets/pygment_trac.css:
--------------------------------------------------------------------------------
1 | .highlight .hll { background-color: #404040 }
2 | .highlight { color: #d0d0d0 }
3 | .highlight .c { color: #999999; font-style: italic } /* Comment */
4 | .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
5 | .highlight .g { color: #d0d0d0 } /* Generic */
6 | .highlight .k { color: #6ab825; font-weight: normal } /* Keyword */
7 | .highlight .l { color: #d0d0d0 } /* Literal */
8 | .highlight .n { color: #d0d0d0 } /* Name */
9 | .highlight .o { color: #d0d0d0 } /* Operator */
10 | .highlight .x { color: #d0d0d0 } /* Other */
11 | .highlight .p { color: #d0d0d0 } /* Punctuation */
12 | .highlight .cm { color: #999999; font-style: italic } /* Comment.Multiline */
13 | .highlight .cp { color: #cd2828; font-weight: normal } /* Comment.Preproc */
14 | .highlight .c1 { color: #999999; font-style: italic } /* Comment.Single */
15 | .highlight .cs { color: #e50808; font-weight: normal; background-color: #520000 } /* Comment.Special */
16 | .highlight .gd { color: #d22323 } /* Generic.Deleted */
17 | .highlight .ge { color: #d0d0d0; font-style: italic } /* Generic.Emph */
18 | .highlight .gr { color: #d22323 } /* Generic.Error */
19 | .highlight .gh { color: #ffffff; font-weight: normal } /* Generic.Heading */
20 | .highlight .gi { color: #589819 } /* Generic.Inserted */
21 | .highlight .go { color: #cccccc } /* Generic.Output */
22 | .highlight .gp { color: #aaaaaa } /* Generic.Prompt */
23 | .highlight .gs { color: #d0d0d0; font-weight: normal } /* Generic.Strong */
24 | .highlight .gu { color: #ffffff; text-decoration: underline } /* Generic.Subheading */
25 | .highlight .gt { color: #d22323 } /* Generic.Traceback */
26 | .highlight .kc { color: #6ab825; font-weight: normal } /* Keyword.Constant */
27 | .highlight .kd { color: #6ab825; font-weight: normal } /* Keyword.Declaration */
28 | .highlight .kn { color: #6ab825; font-weight: normal } /* Keyword.Namespace */
29 | .highlight .kp { color: #6ab825 } /* Keyword.Pseudo */
30 | .highlight .kr { color: #6ab825; font-weight: normal } /* Keyword.Reserved */
31 | .highlight .kt { color: #6ab825; font-weight: normal } /* Keyword.Type */
32 | .highlight .ld { color: #d0d0d0 } /* Literal.Date */
33 | .highlight .m { color: #3677a9 } /* Literal.Number */
34 | .highlight .s { color: #9dd5f1 } /* Literal.String */
35 | .highlight .na { color: #bbbbbb } /* Name.Attribute */
36 | .highlight .nb { color: #24909d } /* Name.Builtin */
37 | .highlight .nc { color: #447fcf; text-decoration: underline } /* Name.Class */
38 | .highlight .no { color: #40ffff } /* Name.Constant */
39 | .highlight .nd { color: #ffa500 } /* Name.Decorator */
40 | .highlight .ni { color: #d0d0d0 } /* Name.Entity */
41 | .highlight .ne { color: #bbbbbb } /* Name.Exception */
42 | .highlight .nf { color: #447fcf } /* Name.Function */
43 | .highlight .nl { color: #d0d0d0 } /* Name.Label */
44 | .highlight .nn { color: #447fcf; text-decoration: underline } /* Name.Namespace */
45 | .highlight .nx { color: #d0d0d0 } /* Name.Other */
46 | .highlight .py { color: #d0d0d0 } /* Name.Property */
47 | .highlight .nt { color: #6ab825;} /* Name.Tag */
48 | .highlight .nv { color: #40ffff } /* Name.Variable */
49 | .highlight .ow { color: #6ab825; font-weight: normal } /* Operator.Word */
50 | .highlight .w { color: #666666 } /* Text.Whitespace */
51 | .highlight .mf { color: #3677a9 } /* Literal.Number.Float */
52 | .highlight .mh { color: #3677a9 } /* Literal.Number.Hex */
53 | .highlight .mi { color: #3677a9 } /* Literal.Number.Integer */
54 | .highlight .mo { color: #3677a9 } /* Literal.Number.Oct */
55 | .highlight .sb { color: #9dd5f1 } /* Literal.String.Backtick */
56 | .highlight .sc { color: #9dd5f1 } /* Literal.String.Char */
57 | .highlight .sd { color: #9dd5f1 } /* Literal.String.Doc */
58 | .highlight .s2 { color: #9dd5f1 } /* Literal.String.Double */
59 | .highlight .se { color: #9dd5f1 } /* Literal.String.Escape */
60 | .highlight .sh { color: #9dd5f1 } /* Literal.String.Heredoc */
61 | .highlight .si { color: #9dd5f1 } /* Literal.String.Interpol */
62 | .highlight .sx { color: #ffa500 } /* Literal.String.Other */
63 | .highlight .sr { color: #9dd5f1 } /* Literal.String.Regex */
64 | .highlight .s1 { color: #9dd5f1 } /* Literal.String.Single */
65 | .highlight .ss { color: #9dd5f1 } /* Literal.String.Symbol */
66 | .highlight .bp { color: #24909d } /* Name.Builtin.Pseudo */
67 | .highlight .vc { color: #40ffff } /* Name.Variable.Class */
68 | .highlight .vg { color: #40ffff } /* Name.Variable.Global */
69 | .highlight .vi { color: #40ffff } /* Name.Variable.Instance */
70 | .highlight .il { color: #3677a9 } /* Literal.Number.Integer.Long */
--------------------------------------------------------------------------------
/stylesheets/styles.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'OpenSansLight';
3 | src: url("../fonts/OpenSans-Light-webfont.eot");
4 | src: url("../fonts/OpenSans-Light-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Light-webfont.woff") format("woff"), url("../fonts/OpenSans-Light-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Light-webfont.svg#OpenSansLight") format("svg");
5 | font-weight: normal;
6 | font-style: normal;
7 | }
8 |
9 | @font-face {
10 | font-family: 'OpenSansLightItalic';
11 | src: url("../fonts/OpenSans-LightItalic-webfont.eot");
12 | src: url("../fonts/OpenSans-LightItalic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-LightItalic-webfont.woff") format("woff"), url("../fonts/OpenSans-LightItalic-webfont.ttf") format("truetype"), url("../fonts/OpenSans-LightItalic-webfont.svg#OpenSansLightItalic") format("svg");
13 | font-weight: normal;
14 | font-style: normal;
15 | }
16 |
17 | @font-face {
18 | font-family: 'OpenSansRegular';
19 | src: url("../fonts/OpenSans-Regular-webfont.eot");
20 | src: url("../fonts/OpenSans-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Regular-webfont.woff") format("woff"), url("../fonts/OpenSans-Regular-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Regular-webfont.svg#OpenSansRegular") format("svg");
21 | font-weight: normal;
22 | font-style: normal;
23 | -webkit-font-smoothing: antialiased;
24 | }
25 |
26 | @font-face {
27 | font-family: 'OpenSansItalic';
28 | src: url("../fonts/OpenSans-Italic-webfont.eot");
29 | src: url("../fonts/OpenSans-Italic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Italic-webfont.woff") format("woff"), url("../fonts/OpenSans-Italic-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Italic-webfont.svg#OpenSansItalic") format("svg");
30 | font-weight: normal;
31 | font-style: normal;
32 | -webkit-font-smoothing: antialiased;
33 | }
34 |
35 | @font-face {
36 | font-family: 'OpenSansSemibold';
37 | src: url("../fonts/OpenSans-Semibold-webfont.eot");
38 | src: url("../fonts/OpenSans-Semibold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Semibold-webfont.woff") format("woff"), url("../fonts/OpenSans-Semibold-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Semibold-webfont.svg#OpenSansSemibold") format("svg");
39 | font-weight: normal;
40 | font-style: normal;
41 | -webkit-font-smoothing: antialiased;
42 | }
43 |
44 | @font-face {
45 | font-family: 'OpenSansSemiboldItalic';
46 | src: url("../fonts/OpenSans-SemiboldItalic-webfont.eot");
47 | src: url("../fonts/OpenSans-SemiboldItalic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-SemiboldItalic-webfont.woff") format("woff"), url("../fonts/OpenSans-SemiboldItalic-webfont.ttf") format("truetype"), url("../fonts/OpenSans-SemiboldItalic-webfont.svg#OpenSansSemiboldItalic") format("svg");
48 | font-weight: normal;
49 | font-style: normal;
50 | -webkit-font-smoothing: antialiased;
51 | }
52 |
53 | @font-face {
54 | font-family: 'OpenSansBold';
55 | src: url("../fonts/OpenSans-Bold-webfont.eot");
56 | src: url("../fonts/OpenSans-Bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Bold-webfont.woff") format("woff"), url("../fonts/OpenSans-Bold-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Bold-webfont.svg#OpenSansBold") format("svg");
57 | font-weight: normal;
58 | font-style: normal;
59 | -webkit-font-smoothing: antialiased;
60 | }
61 |
62 | @font-face {
63 | font-family: 'OpenSansBoldItalic';
64 | src: url("../fonts/OpenSans-BoldItalic-webfont.eot");
65 | src: url("../fonts/OpenSans-BoldItalic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-BoldItalic-webfont.woff") format("woff"), url("../fonts/OpenSans-BoldItalic-webfont.ttf") format("truetype"), url("../fonts/OpenSans-BoldItalic-webfont.svg#OpenSansBoldItalic") format("svg");
66 | font-weight: normal;
67 | font-style: normal;
68 | -webkit-font-smoothing: antialiased;
69 | }
70 |
71 | /* normalize.css 2012-02-07T12:37 UTC - http://github.com/necolas/normalize.css */
72 | /* =============================================================================
73 | HTML5 display definitions
74 | ========================================================================== */
75 | /*
76 | * Corrects block display not defined in IE6/7/8/9 & FF3
77 | */
78 | article,
79 | aside,
80 | details,
81 | figcaption,
82 | figure,
83 | footer,
84 | header,
85 | hgroup,
86 | nav,
87 | section,
88 | summary {
89 | display: block;
90 | }
91 |
92 | /*
93 | * Corrects inline-block display not defined in IE6/7/8/9 & FF3
94 | */
95 | audio,
96 | canvas,
97 | video {
98 | display: inline-block;
99 | *display: inline;
100 | *zoom: 1;
101 | }
102 |
103 | /*
104 | * Prevents modern browsers from displaying 'audio' without controls
105 | */
106 | audio:not([controls]) {
107 | display: none;
108 | }
109 |
110 | /*
111 | * Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4
112 | * Known issue: no IE6 support
113 | */
114 | [hidden] {
115 | display: none;
116 | }
117 |
118 | /* =============================================================================
119 | Base
120 | ========================================================================== */
121 | /*
122 | * 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units
123 | * http://clagnut.com/blog/348/#c790
124 | * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom
125 | * www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
126 | */
127 | html {
128 | font-size: 100%;
129 | /* 1 */
130 | -webkit-text-size-adjust: 100%;
131 | /* 2 */
132 | -ms-text-size-adjust: 100%;
133 | /* 2 */
134 | }
135 |
136 | /*
137 | * Addresses font-family inconsistency between 'textarea' and other form elements.
138 | */
139 | html,
140 | button,
141 | input,
142 | select,
143 | textarea {
144 | font-family: sans-serif;
145 | }
146 |
147 | /*
148 | * Addresses margins handled incorrectly in IE6/7
149 | */
150 | body {
151 | margin: 0;
152 | }
153 |
154 | /* =============================================================================
155 | Links
156 | ========================================================================== */
157 | /*
158 | * Addresses outline displayed oddly in Chrome
159 | */
160 | a:focus {
161 | outline: thin dotted;
162 | }
163 |
164 | /*
165 | * Improves readability when focused and also mouse hovered in all browsers
166 | * people.opera.com/patrickl/experiments/keyboard/test
167 | */
168 | a:hover,
169 | a:active {
170 | outline: 0;
171 | }
172 |
173 | /* =============================================================================
174 | Typography
175 | ========================================================================== */
176 | /*
177 | * Addresses font sizes and margins set differently in IE6/7
178 | * Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5
179 | */
180 | h1 {
181 | font-size: 2em;
182 | margin: 0.67em 0;
183 | }
184 |
185 | h2 {
186 | font-size: 1.5em;
187 | margin: 0.83em 0;
188 | }
189 |
190 | h3 {
191 | font-size: 1.17em;
192 | margin: 1em 0;
193 | }
194 |
195 | h4 {
196 | font-size: 1em;
197 | margin: 1.33em 0;
198 | }
199 |
200 | h5 {
201 | font-size: 0.83em;
202 | margin: 1.67em 0;
203 | }
204 |
205 | h6 {
206 | font-size: 0.75em;
207 | margin: 2.33em 0;
208 | }
209 |
210 | /*
211 | * Addresses styling not present in IE7/8/9, S5, Chrome
212 | */
213 | abbr[title] {
214 | border-bottom: 1px dotted;
215 | }
216 |
217 | /*
218 | * Addresses style set to 'bolder' in FF3+, S4/5, Chrome
219 | */
220 | b,
221 | strong {
222 | font-weight: bold;
223 | }
224 |
225 | blockquote {
226 | margin: 1em 40px;
227 | }
228 |
229 | /*
230 | * Addresses styling not present in S5, Chrome
231 | */
232 | dfn {
233 | font-style: italic;
234 | }
235 |
236 | /*
237 | * Addresses styling not present in IE6/7/8/9
238 | */
239 | mark {
240 | background: #ff0;
241 | color: #000;
242 | }
243 |
244 | /*
245 | * Addresses margins set differently in IE6/7
246 | */
247 | p,
248 | pre {
249 | margin: 1em 0;
250 | }
251 |
252 | /*
253 | * Corrects font family set oddly in IE6, S4/5, Chrome
254 | * en.wikipedia.org/wiki/User:Davidgothberg/Test59
255 | */
256 | pre,
257 | code,
258 | kbd,
259 | samp {
260 | font-family: monospace, serif;
261 | _font-family: 'courier new', monospace;
262 | font-size: 1em;
263 | }
264 |
265 | /*
266 | * 1. Addresses CSS quotes not supported in IE6/7
267 | * 2. Addresses quote property not supported in S4
268 | */
269 | /* 1 */
270 | q {
271 | quotes: none;
272 | }
273 |
274 | /* 2 */
275 | q:before,
276 | q:after {
277 | content: '';
278 | content: none;
279 | }
280 |
281 | small {
282 | font-size: 75%;
283 | }
284 |
285 | /*
286 | * Prevents sub and sup affecting line-height in all browsers
287 | * gist.github.com/413930
288 | */
289 | sub,
290 | sup {
291 | font-size: 75%;
292 | line-height: 0;
293 | position: relative;
294 | vertical-align: baseline;
295 | }
296 |
297 | sup {
298 | top: -0.5em;
299 | }
300 |
301 | sub {
302 | bottom: -0.25em;
303 | }
304 |
305 | /* =============================================================================
306 | Lists
307 | ========================================================================== */
308 | /*
309 | * Addresses margins set differently in IE6/7
310 | */
311 | dl,
312 | menu,
313 | ol,
314 | ul {
315 | margin: 1em 0;
316 | }
317 |
318 | dd {
319 | margin: 0 0 0 40px;
320 | }
321 |
322 | /*
323 | * Addresses paddings set differently in IE6/7
324 | */
325 | menu,
326 | ol,
327 | ul {
328 | padding: 0 0 0 40px;
329 | }
330 |
331 | /*
332 | * Corrects list images handled incorrectly in IE7
333 | */
334 | nav ul,
335 | nav ol {
336 | list-style: none;
337 | list-style-image: none;
338 | }
339 |
340 | /* =============================================================================
341 | Embedded content
342 | ========================================================================== */
343 | /*
344 | * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3
345 | * 2. Improves image quality when scaled in IE7
346 | * code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
347 | */
348 | img {
349 | border: 0;
350 | /* 1 */
351 | -ms-interpolation-mode: bicubic;
352 | /* 2 */
353 | }
354 |
355 | /*
356 | * Corrects overflow displayed oddly in IE9
357 | */
358 | svg:not(:root) {
359 | overflow: hidden;
360 | }
361 |
362 | /* =============================================================================
363 | Figures
364 | ========================================================================== */
365 | /*
366 | * Addresses margin not present in IE6/7/8/9, S5, O11
367 | */
368 | figure {
369 | margin: 0;
370 | }
371 |
372 | /* =============================================================================
373 | Forms
374 | ========================================================================== */
375 | /*
376 | * Corrects margin displayed oddly in IE6/7
377 | */
378 | form {
379 | margin: 0;
380 | }
381 |
382 | /*
383 | * Define consistent border, margin, and padding
384 | */
385 | fieldset {
386 | border: 1px solid #c0c0c0;
387 | margin: 0 2px;
388 | padding: 0.35em 0.625em 0.75em;
389 | }
390 |
391 | /*
392 | * 1. Corrects color not being inherited in IE6/7/8/9
393 | * 2. Corrects text not wrapping in FF3
394 | * 3. Corrects alignment displayed oddly in IE6/7
395 | */
396 | legend {
397 | border: 0;
398 | /* 1 */
399 | padding: 0;
400 | white-space: normal;
401 | /* 2 */
402 | *margin-left: -7px;
403 | /* 3 */
404 | }
405 |
406 | /*
407 | * 1. Corrects font size not being inherited in all browsers
408 | * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome
409 | * 3. Improves appearance and consistency in all browsers
410 | */
411 | button,
412 | input,
413 | select,
414 | textarea {
415 | font-size: 100%;
416 | /* 1 */
417 | margin: 0;
418 | /* 2 */
419 | vertical-align: baseline;
420 | /* 3 */
421 | *vertical-align: middle;
422 | /* 3 */
423 | }
424 |
425 | /*
426 | * Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet
427 | */
428 | button,
429 | input {
430 | line-height: normal;
431 | /* 1 */
432 | }
433 |
434 | /*
435 | * 1. Improves usability and consistency of cursor style between image-type 'input' and others
436 | * 2. Corrects inability to style clickable 'input' types in iOS
437 | * 3. Removes inner spacing in IE7 without affecting normal text inputs
438 | * Known issue: inner spacing remains in IE6
439 | */
440 | button,
441 | input[type="button"],
442 | input[type="reset"],
443 | input[type="submit"] {
444 | cursor: pointer;
445 | /* 1 */
446 | -webkit-appearance: button;
447 | /* 2 */
448 | *overflow: visible;
449 | /* 3 */
450 | }
451 |
452 | /*
453 | * Re-set default cursor for disabled elements
454 | */
455 | button[disabled],
456 | input[disabled] {
457 | cursor: default;
458 | }
459 |
460 | /*
461 | * 1. Addresses box sizing set to content-box in IE8/9
462 | * 2. Removes excess padding in IE8/9
463 | * 3. Removes excess padding in IE7
464 | Known issue: excess padding remains in IE6
465 | */
466 | input[type="checkbox"],
467 | input[type="radio"] {
468 | box-sizing: border-box;
469 | /* 1 */
470 | padding: 0;
471 | /* 2 */
472 | *height: 13px;
473 | /* 3 */
474 | *width: 13px;
475 | /* 3 */
476 | }
477 |
478 | /*
479 | * 1. Addresses appearance set to searchfield in S5, Chrome
480 | * 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof)
481 | */
482 | input[type="search"] {
483 | -webkit-appearance: textfield;
484 | /* 1 */
485 | -moz-box-sizing: content-box;
486 | -webkit-box-sizing: content-box;
487 | /* 2 */
488 | box-sizing: content-box;
489 | }
490 |
491 | /*
492 | * Removes inner padding and search cancel button in S5, Chrome on OS X
493 | */
494 | input[type="search"]::-webkit-search-decoration,
495 | input[type="search"]::-webkit-search-cancel-button {
496 | -webkit-appearance: none;
497 | }
498 |
499 | /*
500 | * Removes inner padding and border in FF3+
501 | * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/
502 | */
503 | button::-moz-focus-inner,
504 | input::-moz-focus-inner {
505 | border: 0;
506 | padding: 0;
507 | }
508 |
509 | /*
510 | * 1. Removes default vertical scrollbar in IE6/7/8/9
511 | * 2. Improves readability and alignment in all browsers
512 | */
513 | textarea {
514 | overflow: auto;
515 | /* 1 */
516 | vertical-align: top;
517 | /* 2 */
518 | }
519 |
520 | /* =============================================================================
521 | Tables
522 | ========================================================================== */
523 | /*
524 | * Remove most spacing between table cells
525 | */
526 | table {
527 | border-collapse: collapse;
528 | border-spacing: 0;
529 | }
530 |
531 | body {
532 | padding: 0px 0 20px 0px;
533 | margin: 0px;
534 | font: 14px/1.5 "OpenSansRegular", "Helvetica Neue", Helvetica, Arial, sans-serif;
535 | color: #f0e7d5;
536 | font-weight: normal;
537 | background: #252525;
538 | background-attachment: fixed !important;
539 | background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #2a2a29), color-stop(100%, #1c1c1c));
540 | background: -webkit-linear-gradient(#2a2a29, #1c1c1c);
541 | background: -moz-linear-gradient(#2a2a29, #1c1c1c);
542 | background: -o-linear-gradient(#2a2a29, #1c1c1c);
543 | background: -ms-linear-gradient(#2a2a29, #1c1c1c);
544 | background: linear-gradient(#2a2a29, #1c1c1c);
545 | }
546 |
547 | h1, h2, h3, h4, h5, h6 {
548 | color: #e8e8e8;
549 | margin: 0 0 10px;
550 | font-family: 'OpenSansRegular', "Helvetica Neue", Helvetica, Arial, sans-serif;
551 | font-weight: normal;
552 | }
553 |
554 | p, ul, ol, table, pre, dl {
555 | margin: 0 0 20px;
556 | }
557 |
558 | h1, h2, h3 {
559 | line-height: 1.1;
560 | }
561 |
562 | h1 {
563 | font-size: 28px;
564 | }
565 |
566 | h2 {
567 | font-size: 24px;
568 | }
569 |
570 | h4, h5, h6 {
571 | color: #e8e8e8;
572 | }
573 |
574 | h3 {
575 | font-size: 18px;
576 | line-height: 24px;
577 | font-family: 'OpenSansRegular', "Helvetica Neue", Helvetica, Arial, sans-serif !important;
578 | font-weight: normal;
579 | color: #b6b6b6;
580 | }
581 |
582 | a {
583 | color: #ffcc00;
584 | font-weight: 400;
585 | text-decoration: none;
586 | }
587 | a:hover {
588 | color: #ffeb9b;
589 | }
590 |
591 | a small {
592 | font-size: 11px;
593 | color: #666;
594 | margin-top: -0.6em;
595 | display: block;
596 | }
597 |
598 | ul {
599 | list-style-image: url("../images/bullet.png");
600 | }
601 |
602 | strong {
603 | font-family: 'OpenSansBold', "Helvetica Neue", Helvetica, Arial, sans-serif !important;
604 | font-weight: normal;
605 | }
606 |
607 | .wrapper {
608 | max-width: 650px;
609 | margin: 0 auto;
610 | position: relative;
611 | padding: 0 20px;
612 | }
613 |
614 | section img {
615 | max-width: 100%;
616 | }
617 |
618 | blockquote {
619 | border-left: 3px solid #ffcc00;
620 | margin: 0;
621 | padding: 0 0 0 20px;
622 | font-style: italic;
623 | }
624 |
625 | code {
626 | font-family: "Lucida Sans", Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal;
627 | color: #efefef;
628 | font-size: 13px;
629 | margin: 0 4px;
630 | padding: 4px 6px;
631 | -moz-border-radius: 2px;
632 | -webkit-border-radius: 2px;
633 | -o-border-radius: 2px;
634 | -ms-border-radius: 2px;
635 | -khtml-border-radius: 2px;
636 | border-radius: 2px;
637 | }
638 |
639 | pre {
640 | padding: 8px 15px;
641 | background: #191919;
642 | -moz-border-radius: 2px;
643 | -webkit-border-radius: 2px;
644 | -o-border-radius: 2px;
645 | -ms-border-radius: 2px;
646 | -khtml-border-radius: 2px;
647 | border-radius: 2px;
648 | border: 1px solid #121212;
649 | -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
650 | -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
651 | -o-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
652 | box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
653 | overflow: auto;
654 | overflow-y: hidden;
655 | }
656 | pre code {
657 | color: #efefef;
658 | text-shadow: 0px 1px 0px #000;
659 | margin: 0;
660 | padding: 0;
661 | }
662 |
663 | table {
664 | width: 100%;
665 | border-collapse: collapse;
666 | }
667 |
668 | th {
669 | text-align: left;
670 | padding: 5px 10px;
671 | border-bottom: 1px solid #434343;
672 | color: #b6b6b6;
673 | font-family: 'OpenSansSemibold', "Helvetica Neue", Helvetica, Arial, sans-serif !important;
674 | font-weight: normal;
675 | }
676 |
677 | td {
678 | text-align: left;
679 | padding: 5px 10px;
680 | border-bottom: 1px solid #434343;
681 | }
682 |
683 | hr {
684 | border: 0;
685 | outline: none;
686 | height: 3px;
687 | background: transparent url("../images/hr.gif") center center repeat-x;
688 | margin: 0 0 20px;
689 | }
690 |
691 | dt {
692 | color: #F0E7D5;
693 | font-family: 'OpenSansSemibold', "Helvetica Neue", Helvetica, Arial, sans-serif !important;
694 | font-weight: normal;
695 | }
696 |
697 | #header {
698 | z-index: 100;
699 | left: 0;
700 | top: 0px;
701 | height: 60px;
702 | width: 100%;
703 | position: fixed;
704 | background: url(../images/nav-bg.gif) #353535;
705 | border-bottom: 4px solid #434343;
706 | -moz-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25);
707 | -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25);
708 | -o-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25);
709 | box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25);
710 | }
711 | #header nav {
712 | max-width: 650px;
713 | margin: 0 auto;
714 | padding: 0 10px;
715 | background: blue;
716 | margin: 6px auto;
717 | }
718 | #header nav li {
719 | font-family: 'OpenSansLight', "Helvetica Neue", Helvetica, Arial, sans-serif;
720 | font-weight: normal;
721 | list-style: none;
722 | display: inline;
723 | color: white;
724 | line-height: 50px;
725 | text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.2);
726 | font-size: 14px;
727 | }
728 | #header nav li a {
729 | color: white;
730 | border: 1px solid #5d910b;
731 | background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #93bd20), color-stop(100%, #659e10));
732 | background: -webkit-linear-gradient(#93bd20, #659e10);
733 | background: -moz-linear-gradient(#93bd20, #659e10);
734 | background: -o-linear-gradient(#93bd20, #659e10);
735 | background: -ms-linear-gradient(#93bd20, #659e10);
736 | background: linear-gradient(#93bd20, #659e10);
737 | -moz-border-radius: 2px;
738 | -webkit-border-radius: 2px;
739 | -o-border-radius: 2px;
740 | -ms-border-radius: 2px;
741 | -khtml-border-radius: 2px;
742 | border-radius: 2px;
743 | -moz-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.3), 0px 3px 7px rgba(0, 0, 0, 0.7);
744 | -webkit-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.3), 0px 3px 7px rgba(0, 0, 0, 0.7);
745 | -o-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.3), 0px 3px 7px rgba(0, 0, 0, 0.7);
746 | box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.3), 0px 3px 7px rgba(0, 0, 0, 0.7);
747 | background-color: #93bd20;
748 | padding: 10px 12px;
749 | margin-top: 6px;
750 | line-height: 14px;
751 | font-size: 14px;
752 | display: inline-block;
753 | text-align: center;
754 | }
755 | #header nav li a:hover {
756 | background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #749619), color-stop(100%, #527f0e));
757 | background: -webkit-linear-gradient(#749619, #527f0e);
758 | background: -moz-linear-gradient(#749619, #527f0e);
759 | background: -o-linear-gradient(#749619, #527f0e);
760 | background: -ms-linear-gradient(#749619, #527f0e);
761 | background: linear-gradient(#749619, #527f0e);
762 | background-color: #659e10;
763 | border: 1px solid #527f0e;
764 | -moz-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 0px rgba(0, 0, 0, 0);
765 | -webkit-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 0px rgba(0, 0, 0, 0);
766 | -o-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 0px rgba(0, 0, 0, 0);
767 | box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 0px rgba(0, 0, 0, 0);
768 | }
769 | #header nav li.fork {
770 | float: left;
771 | margin-left: 0px;
772 | }
773 | #header nav li.downloads {
774 | float: right;
775 | margin-left: 6px;
776 | }
777 | #header nav li.title {
778 | float: right;
779 | margin-right: 10px;
780 | font-size: 11px;
781 | }
782 |
783 | section {
784 | max-width: 650px;
785 | padding: 30px 0px 50px 0px;
786 | margin: 20px 0;
787 | margin-top: 70px;
788 | }
789 | section #title {
790 | border: 0;
791 | outline: none;
792 | margin: 0 0 50px 0;
793 | padding: 0 0 5px 0;
794 | }
795 | section #title h1 {
796 | font-family: 'OpenSansLight', "Helvetica Neue", Helvetica, Arial, sans-serif;
797 | font-weight: normal;
798 | font-size: 40px;
799 | text-align: center;
800 | line-height: 36px;
801 | }
802 | section #title p {
803 | color: #d7cfbe;
804 | font-family: 'OpenSansLight', "Helvetica Neue", Helvetica, Arial, sans-serif;
805 | font-weight: normal;
806 | font-size: 18px;
807 | text-align: center;
808 | }
809 | section #title .credits {
810 | font-size: 11px;
811 | font-family: 'OpenSansRegular', "Helvetica Neue", Helvetica, Arial, sans-serif;
812 | font-weight: normal;
813 | color: #696969;
814 | margin-top: -10px;
815 | }
816 | section #title .credits.left {
817 | float: left;
818 | }
819 | section #title .credits.right {
820 | float: right;
821 | }
822 |
823 | @media print, screen and (max-width: 720px) {
824 | #title .credits {
825 | display: block;
826 | width: 100%;
827 | line-height: 30px;
828 | text-align: center;
829 | }
830 | #title .credits .left {
831 | float: none;
832 | display: block;
833 | }
834 | #title .credits .right {
835 | float: none;
836 | display: block;
837 | }
838 | }
839 | @media print, screen and (max-width: 480px) {
840 | #header {
841 | margin-top: -20px;
842 | }
843 |
844 | section {
845 | margin-top: 40px;
846 | }
847 |
848 | nav {
849 | display: none;
850 | }
851 | }
852 |
--------------------------------------------------------------------------------