diff options
Diffstat (limited to 'deprecated/jinwei.me')
41 files changed, 22358 insertions, 0 deletions
diff --git a/deprecated/jinwei.me/css/css.css b/deprecated/jinwei.me/css/css.css new file mode 100644 index 0000000..072272c --- /dev/null +++ b/deprecated/jinwei.me/css/css.css | |||
@@ -0,0 +1,18 @@ | |||
1 | @font-face { | ||
2 | font-family: 'Open Sans Condensed'; | ||
3 | font-style: normal; | ||
4 | font-weight: 300; | ||
5 | src: local('Open Sans Cond Light'), local('OpenSans-CondensedLight'), url(./font/gk5FxslNkTTHtojXrkp-xF1YPouZEKgzpqZW9wN-3Ek.woff) format('woff'); | ||
6 | } | ||
7 | @font-face { | ||
8 | font-family: 'Open Sans Condensed'; | ||
9 | font-style: normal; | ||
10 | font-weight: 700; | ||
11 | src: local('Open Sans Condensed Bold'), local('OpenSans-CondensedBold'), url(./font/gk5FxslNkTTHtojXrkp-xONSK5BxN3NFS4EJkViHIqo.woff) format('woff'); | ||
12 | } | ||
13 | @font-face { | ||
14 | font-family: 'Open Sans Condensed'; | ||
15 | font-style: italic; | ||
16 | font-weight: 300; | ||
17 | src: local('Open Sans Cond Light Italic'), local('OpenSans-CondensedLightItalic'), url(./font/jIXlqT1WKafUSwj6s9AzV6XnXbwdDC8wAz6IIzmCDUP3rGVtsTkPsbDajuO5ueQw.woff) format('woff'); | ||
18 | } | ||
diff --git a/deprecated/jinwei.me/css/demo.css b/deprecated/jinwei.me/css/demo.css new file mode 100644 index 0000000..8eaa932 --- /dev/null +++ b/deprecated/jinwei.me/css/demo.css | |||
@@ -0,0 +1,176 @@ | |||
1 | @font-face { | ||
2 | font-family: 'icons'; | ||
3 | src: url("font/icons.eot"); | ||
4 | src: url(".font/icons.eot?#iefix") format('embedded-opentype'), url("font/icons.woff") format('woff'), url("font/icons.ttf") format('truetype'), url("font/icons.svg#icons") format('svg'); | ||
5 | font-weight: normal; | ||
6 | font-style: normal; | ||
7 | } | ||
8 | |||
9 | *, | ||
10 | *:after, | ||
11 | *:before { | ||
12 | -webkit-box-sizing: border-box; | ||
13 | -moz-box-sizing: border-box; | ||
14 | box-sizing: border-box; | ||
15 | padding: 0; | ||
16 | margin: 0; | ||
17 | } | ||
18 | |||
19 | /* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */ | ||
20 | .clearfix:before, | ||
21 | .clearfix:after { | ||
22 | content: " "; /* 1 */ | ||
23 | display: table; /* 2 */ | ||
24 | } | ||
25 | |||
26 | .clearfix:after { | ||
27 | clear: both; | ||
28 | } | ||
29 | |||
30 | .clearfix { | ||
31 | *zoom: 1; | ||
32 | } | ||
33 | |||
34 | body{ | ||
35 | font-family: 'Open Sans Condensed','Arial Narrow', serif; | ||
36 | background: #ddd url(../images/egg_shell.jpg) repeat top left; | ||
37 | font-weight: 400; | ||
38 | font-size: 15px; | ||
39 | color: #333; | ||
40 | overflow: scroll; | ||
41 | overflow-x: hidden; | ||
42 | } | ||
43 | a{ | ||
44 | color: #555; | ||
45 | text-decoration: none; | ||
46 | } | ||
47 | .container{ | ||
48 | width: 100%; | ||
49 | position: relative; | ||
50 | } | ||
51 | .clr{ | ||
52 | clear: both; | ||
53 | padding: 0; | ||
54 | height: 0; | ||
55 | margin: 0; | ||
56 | } | ||
57 | .main{ | ||
58 | width: 1000px; | ||
59 | height: 700px; | ||
60 | overflow: hidden; | ||
61 | margin: 0 auto; | ||
62 | position: relative; | ||
63 | } | ||
64 | .container > header{ | ||
65 | margin: 10px; | ||
66 | padding: 20px 10px 10px 10px; | ||
67 | position: relative; | ||
68 | display: block; | ||
69 | text-shadow: 1px 1px 1px rgba(0,0,0,0.2); | ||
70 | text-align: center; | ||
71 | } | ||
72 | .container > header h1{ | ||
73 | font-size: 36px; | ||
74 | line-height: 36px; | ||
75 | margin: 0; | ||
76 | position: relative; | ||
77 | font-weight: 300; | ||
78 | color: #524f4e; | ||
79 | text-shadow: 1px 1px 1px rgba(255,255,255,0.7); | ||
80 | } | ||
81 | .container > header h1 span{ | ||
82 | font-weight: 700; | ||
83 | } | ||
84 | .container > header h2{ | ||
85 | font-size: 14px; | ||
86 | font-weight: 300; | ||
87 | margin: 0; | ||
88 | padding: 15px 0 5px 0; | ||
89 | color: #888; | ||
90 | font-family: Cambria, Georgia, serif; | ||
91 | font-style: italic; | ||
92 | text-shadow: 1px 1px 1px rgba(255,255,255,0.9); | ||
93 | } | ||
94 | /* Header Style */ | ||
95 | .codrops-top{ | ||
96 | line-height: 24px; | ||
97 | font-size: 11px; | ||
98 | background: #fff; | ||
99 | background: rgba(255, 255, 255, 0.6); | ||
100 | text-transform: uppercase; | ||
101 | z-index: 9999; | ||
102 | position: relative; | ||
103 | font-family: Cambria, Georgia, serif; | ||
104 | box-shadow: 1px 0px 2px rgba(0,0,0,0.2); | ||
105 | } | ||
106 | .codrops-top a{ | ||
107 | padding: 0px 10px; | ||
108 | letter-spacing: 1px; | ||
109 | color: #333; | ||
110 | display: inline-block; | ||
111 | } | ||
112 | .codrops-top a:hover{ | ||
113 | background: rgba(255,255,255,0.3); | ||
114 | } | ||
115 | .codrops-top span.right{ | ||
116 | float: right; | ||
117 | } | ||
118 | .codrops-top span.right a{ | ||
119 | float: left; | ||
120 | display: block; | ||
121 | } | ||
122 | /* Demo Buttons Style */ | ||
123 | .codrops-demos{ | ||
124 | text-align:center; | ||
125 | display: block; | ||
126 | line-height: 30px; | ||
127 | padding: 5px 0px; | ||
128 | } | ||
129 | .codrops-demos a{ | ||
130 | display: inline-block; | ||
131 | margin: 0px 4px; | ||
132 | padding: 0px 6px; | ||
133 | color: #aaa; | ||
134 | line-height: 20px; | ||
135 | font-size: 13px; | ||
136 | text-shadow: 1px 1px 1px #fff; | ||
137 | border: 1px solid #fff; | ||
138 | background: #ffffff; /* Old browsers */ | ||
139 | background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%); /* FF3.6+ */ | ||
140 | background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(47%,#f6f6f6), color-stop(100%,#ededed)); /* Chrome,Safari4+ */ | ||
141 | background: -webkit-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%); /* Chrome10+,Safari5.1+ */ | ||
142 | background: -o-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%); /* Opera 11.10+ */ | ||
143 | background: -ms-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%); /* IE10+ */ | ||
144 | background: linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%); /* W3C */ | ||
145 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 ); /* IE6-9 */ | ||
146 | box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); | ||
147 | } | ||
148 | .codrops-demos a:hover{ | ||
149 | color: #333; | ||
150 | background: #fff; | ||
151 | } | ||
152 | .codrops-demos a:active{ | ||
153 | background: #fff; | ||
154 | } | ||
155 | .codrops-demos a.current-demo, | ||
156 | .codrops-demos a.current-demo:hover{ | ||
157 | background: #f0f0f0; | ||
158 | border-color: #d9d9d9; | ||
159 | color: #aaa; | ||
160 | box-shadow: 0 1px 1px rgba(255,255,255,0.7); | ||
161 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f6f6f6',GradientType=0 ); /* IE6-9 */ | ||
162 | } | ||
163 | .support-note span{ | ||
164 | color: #ac375d; | ||
165 | font-size: 16px; | ||
166 | display: none; | ||
167 | font-weight: bold; | ||
168 | text-align: center; | ||
169 | padding: 5px 0; | ||
170 | } | ||
171 | .no-cssanimations .support-note span.no-cssanimations, | ||
172 | .no-csstransforms .support-note span.no-csstransforms, | ||
173 | .no-csstransforms3d .support-note span.no-csstransforms3d, | ||
174 | .no-csstransitions .support-note span.no-csstransitions{ | ||
175 | display: block; | ||
176 | } | ||
diff --git a/deprecated/jinwei.me/css/font/gk5FxslNkTTHtojXrkp-xF1YPouZEKgzpqZW9wN-3Ek.woff b/deprecated/jinwei.me/css/font/gk5FxslNkTTHtojXrkp-xF1YPouZEKgzpqZW9wN-3Ek.woff new file mode 100644 index 0000000..66adc47 --- /dev/null +++ b/deprecated/jinwei.me/css/font/gk5FxslNkTTHtojXrkp-xF1YPouZEKgzpqZW9wN-3Ek.woff | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/css/font/gk5FxslNkTTHtojXrkp-xONSK5BxN3NFS4EJkViHIqo.woff b/deprecated/jinwei.me/css/font/gk5FxslNkTTHtojXrkp-xONSK5BxN3NFS4EJkViHIqo.woff new file mode 100644 index 0000000..fa873b2 --- /dev/null +++ b/deprecated/jinwei.me/css/font/gk5FxslNkTTHtojXrkp-xONSK5BxN3NFS4EJkViHIqo.woff | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/css/font/icons.eot b/deprecated/jinwei.me/css/font/icons.eot new file mode 100644 index 0000000..2a33508 --- /dev/null +++ b/deprecated/jinwei.me/css/font/icons.eot | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/css/font/icons.svg b/deprecated/jinwei.me/css/font/icons.svg new file mode 100644 index 0000000..4c51f0f --- /dev/null +++ b/deprecated/jinwei.me/css/font/icons.svg | |||
@@ -0,0 +1,68 @@ | |||
1 | <?xml version="1.0" standalone="no"?> | ||
2 | <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > | ||
3 | <svg xmlns="http://www.w3.org/2000/svg"> | ||
4 | <metadata> | ||
5 | Created by FontForge 20100429 at Mon Jul 2 09:32:12 2012 | ||
6 | By root | ||
7 | Copyright (C) 2012 by original authors @ fontello.com | ||
8 | </metadata> | ||
9 | <defs> <font id="icons" horiz-adv-x="1030" ><font-face | ||
10 | font-family="fontello" | ||
11 | font-weight="500" | ||
12 | font-stretch="normal" | ||
13 | units-per-em="1000" | ||
14 | panose-1="2 0 6 3 0 0 0 0 0 0" | ||
15 | ascent="800" | ||
16 | descent="-200" | ||
17 | cap-height="725" | ||
18 | bbox="13.9355 -190 1015 790" | ||
19 | underline-thickness="50" | ||
20 | underline-position="-100" | ||
21 | unicode-range="U+0030-0042" | ||
22 | /> | ||
23 | <missing-glyph horiz-adv-x="364" | ||
24 | d="M33 0v666h265v-666h-265zM66 33h199v600h-199v-600z" /> | ||
25 | <glyph glyph-name=".notdef" horiz-adv-x="364" | ||
26 | d="M33 0v666h265v-666h-265zM66 33h199v600h-199v-600z" /> | ||
27 | <glyph glyph-name=".null" horiz-adv-x="0" | ||
28 | /> | ||
29 | <glyph glyph-name="nonmarkingreturn" horiz-adv-x="333" | ||
30 | /> | ||
31 | <glyph glyph-name="zero" unicode="0" horiz-adv-x="1010" | ||
32 | d="M995 550h-100v-100h100v-100h-100v-100h100v-100h-100v-100h100v-60q0 -16 -11.5 -28t-28.5 -12h-900q-17 0 -28.5 12t-11.5 28v60h100v100h-100v100h100v100h-100v100h100v100h-100v60q0 16 11.5 28t28.5 12h900q17 0 28.5 -12t11.5 -28v-60zM395 150l250 150l-250 150 | ||
33 | v-300z" /> | ||
34 | <glyph glyph-name="two" unicode="2" | ||
35 | d="M871 466h-100l-124 151l-214 -151h-180q-53 0 -90.5 -38t-37.5 -92v-159l-107 297q-6 16 0.5 31t21.5 20l680 248q15 5 29 -2t20 -23zM977 376q16 0 27 -11.5t11 -28.5v-471q0 -17 -11 -28.5t-27 -11.5h-724q-16 0 -27 11.5t-11 28.5v471q0 17 11 28.5t27 11.5h724z | ||
36 | M922 -75v161l-73 161l-167 -60l-129 -133l-139 172l-92 -215v-86h600z" /> | ||
37 | <glyph glyph-name="three" unicode="3" | ||
38 | d="M515 400q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM915 550q41 0 70.5 -29.5t29.5 -70.5v-450q0 -41 -29.5 -70.5t-70.5 -29.5h-800q-41 0 -70.5 29.5t-29.5 70.5v450q0 41 29.5 70.5t70.5 29.5h120q12 0 23.5 8t15.5 20l32 93 | ||
39 | q4 12 15 20.5t24 8.5h340q12 0 23.5 -8.5t15.5 -20.5l32 -93q4 -12 15 -20t24 -8h120zM515 0q103 0 176.5 73t73.5 177t-73.5 177t-176.5 73t-176.5 -73t-73.5 -177t73.5 -177t176.5 -73zM880 380q14 0 24.5 10.5t10.5 24.5t-10.5 24.5t-24.5 10.5t-24.5 -10.5t-10.5 -24.5 | ||
40 | t10.5 -24.5t24.5 -10.5z" /> | ||
41 | <glyph glyph-name="four" unicode="4" | ||
42 | d="M515 580q92 0 177 -25.5t141.5 -62t99 -77.5t62.5 -71.5t20 -43.5t-20 -43.5t-62.5 -71.5t-99 -77.5t-141.5 -62t-177 -25.5t-177 25.5t-141.5 62t-99 77.5t-62.5 71.5t-20 43.5t20 43.5t62.5 71.5t99 77.5t141.5 62t177 25.5zM515 85q92 0 157 63t65 152t-65 152 | ||
43 | t-157 63t-157 -63t-65 -152t65 -152t157 -63zM515 300q6 -6 18 -5t28 4.5t30.5 7t24.5 2t10 -8.5q0 -44 -32.5 -76t-78.5 -32t-78.5 32t-32.5 76t32.5 76t78.5 32q14 0 10 -23t-12 -47t2 -38z" /> | ||
44 | <glyph glyph-name="five" unicode="5" horiz-adv-x="870" | ||
45 | d="M774 300q0 -76 81 -122q-14 -45 -35 -84q-72 19 -135 -44q-55 -55 -34 -135q-39 -21 -84 -35q-21 37 -57 59t-75 22t-75 -22t-57 -59q-45 14 -84 35q21 80 -34 135t-135 34q-21 39 -35 84q37 21 59 57t22 75q0 76 -81 122q14 45 35 84q72 -19 135 44q55 55 34 135 | ||
46 | q39 21 84 35q21 -37 57 -59t75 -22t75 22t57 59q45 -14 84 -35q-21 -80 34 -135q63 -63 135 -44q21 -39 35 -84q-81 -46 -81 -122zM435 117q76 0 129.5 53.5t53.5 129.5t-53.5 129.5t-129.5 53.5t-129.5 -53.5t-53.5 -129.5t53.5 -129.5t129.5 -53.5z" /> | ||
47 | <glyph glyph-name="six" unicode="6" | ||
48 | d="M470 276v-100h-455q7 226 10 292q2 53 24.5 80.5t75.5 27.5h160l37 70q22 41 23 42q14 25 23 31.5t36 6.5h222q27 0 36 -6.5t23 -31.5q1 -1 23 -42l37 -70h160q53 0 75.5 -27.5t24.5 -80.5l10 -292h-455v100h-90zM398 630q-3 -6 -29 -54h292q-26 48 -29 54 | ||
49 | q-8 17 -15 21.5t-25 4.5h-154q-18 0 -25 -4.5t-15 -21.5zM560 26v100h430q-6 -89 -10 -167q-1 -15 -4 -27t-11.5 -26t-27.5 -22t-47 -8h-750q-28 0 -47 8t-27.5 22t-11.5 26t-4 27l-10 167h430v-100h90z" /> | ||
50 | <glyph glyph-name="seven" unicode="7" | ||
51 | d="M282 -170l125 400h-179l-113 -100h-100l80 170l-80 170h100l113 -100h179l-125 400h100l225 -400h258q6 0 16 -0.5t36 -4t46 -10.5t36 -21t16 -34q0 -31 -37.5 -48.5t-75.5 -19.5l-37 -2h-258l-225 -400h-100z" /> | ||
52 | <glyph glyph-name="eight" unicode="8" horiz-adv-x="990" | ||
53 | d="M495 780q130 0 240.5 -64.5t175 -175t64.5 -240.5t-64.5 -240.5t-175 -175t-240.5 -64.5t-240.5 64.5t-175 175t-64.5 240.5t64.5 240.5t175 175t240.5 64.5zM904 300q0 133 -78 240t-201 148q-18 -22 -17 -32q4 -38 18.5 -50.5t29.5 -6.5l32 13q16 6 20 1q14 -16 10 -31 | ||
54 | t-18.5 -27.5t-28 -30.5t-18.5 -39t10 -53q18 -36 40 -49.5t56 -14.5q19 0 33 -20.5t19.5 -41t7.5 -40.5q3 -27 -1 -72t-14 -67q-9 -27 -3 -46t19 -30q84 109 84 249zM439 705q-111 -16 -198.5 -85.5t-127.5 -172.5q1 0 21 -1.5t29.5 -3t25 -5t24 -8.5t11.5 -12 | ||
55 | q4 -12 -13.5 -44.5t-17.5 -60.5q0 -20 11.5 -35t26 -22.5t26 -19.5t11.5 -27q0 -26 8.5 -66.5t8.5 -44.5q0 -13 35 -55t52 -42q10 0 11.5 22.5t-2 55t-3.5 38.5q2 31 14 75q7 26 24 44t34 25.5t33.5 19t22.5 26.5q9 32 10.5 54.5t-10.5 40t-25.5 28t-33.5 18t-34.5 11 | ||
56 | t-29.5 6.5t-18 4q-17 6 -42 7t-36 -3t-28 11.5t-17 30.5q0 9 15 25.5t35.5 36.5t27.5 32q8 13 17 20t23 15.5t27 20.5q4 3 25 16.5t27 24.5zM366 -89q63 -20 129 -20q123 0 226 68q-12 22 -48.5 29.5t-70.5 4.5q-23 -2 -64 -18t-47 -17q-5 -1 -32.5 -8t-42.5 -8 | ||
57 | q-12 -1 -26.5 -13.5t-23.5 -17.5z" /> | ||
58 | <glyph glyph-name="nine" unicode="9" horiz-adv-x="930" | ||
59 | d="M899 255q23 -49 15 -96l-34 -184q-4 -21 -21.5 -35.5t-38.5 -14.5h-710q-21 0 -38.5 14.5t-21.5 35.5l-34 184q-8 47 15 96l157 375q9 19 31 32t43 13h103l-20 -203h-135l255 -212l255 212h-135l-20 203h103q21 0 43 -13t31 -32zM831 118q3 21 -10 36t-34 15h-644 | ||
60 | q-21 0 -34 -15t-10 -36l13 -72q3 -21 20 -35.5t38 -14.5h590q21 0 38 14.5t20 35.5z" /> | ||
61 | <glyph glyph-name="A" unicode="A" | ||
62 | d="M785 479l-270 -254l-270 254h150v246h240v-246h150zM982 148q18 -10 27 -31.5t4 -41.5l-28 -153q-4 -19 -22.5 -33t-39.5 -14h-816q-21 0 -39.5 14t-22.5 33l-28 153q-5 20 4 41.5t27 31.5l159 107h98l-170 -131h178q9 0 12 -6l40 -112h300l40 112q3 6 12 6h178l-170 131 | ||
63 | h98z" /> | ||
64 | <glyph glyph-name="B" unicode="B" horiz-adv-x="610" | ||
65 | d="M495 790q41 0 70.5 -29.5t29.5 -70.5v-780q0 -41 -29.5 -70.5t-70.5 -29.5h-380q-41 0 -70.5 29.5t-29.5 70.5v780q0 41 29.5 70.5t70.5 29.5h380zM305 -150q29 0 49.5 14.5t20.5 35.5t-20.5 35.5t-49.5 14.5t-49.5 -14.5t-20.5 -35.5t20.5 -35.5t49.5 -14.5zM515 0v660 | ||
66 | h-420v-660h420z" /></font> | ||
67 | </defs> | ||
68 | </svg> \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/css/font/icons.ttf b/deprecated/jinwei.me/css/font/icons.ttf new file mode 100644 index 0000000..a08b86d --- /dev/null +++ b/deprecated/jinwei.me/css/font/icons.ttf | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/css/font/icons.woff b/deprecated/jinwei.me/css/font/icons.woff new file mode 100644 index 0000000..9168d2d --- /dev/null +++ b/deprecated/jinwei.me/css/font/icons.woff | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/css/font/jIXlqT1WKafUSwj6s9AzV6XnXbwdDC8wAz6IIzmCDUP3rGVtsTkPsbDajuO5ueQw.woff b/deprecated/jinwei.me/css/font/jIXlqT1WKafUSwj6s9AzV6XnXbwdDC8wAz6IIzmCDUP3rGVtsTkPsbDajuO5ueQw.woff new file mode 100644 index 0000000..ffd3d2f --- /dev/null +++ b/deprecated/jinwei.me/css/font/jIXlqT1WKafUSwj6s9AzV6XnXbwdDC8wAz6IIzmCDUP3rGVtsTkPsbDajuO5ueQw.woff | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/css/style.css b/deprecated/jinwei.me/css/style.css new file mode 100644 index 0000000..921a326 --- /dev/null +++ b/deprecated/jinwei.me/css/style.css | |||
@@ -0,0 +1,213 @@ | |||
1 | .sb-container { | ||
2 | position: relative; | ||
3 | width: 150px; | ||
4 | height: 400px; | ||
5 | margin: 30px auto 0 auto; | ||
6 | } | ||
7 | |||
8 | .sb-container div { | ||
9 | position: absolute; | ||
10 | top: 0; | ||
11 | left: 0; | ||
12 | width: 130px; | ||
13 | background: #fff; | ||
14 | height: 400px; | ||
15 | border-radius: 5px; | ||
16 | cursor: pointer; | ||
17 | text-align: center; | ||
18 | background-image: url(../images/fabric.png); | ||
19 | |||
20 | -webkit-transform-origin: 25% 90%; | ||
21 | -moz-transform-origin: 25% 90%; | ||
22 | -o-transform-origin: 25% 90%; | ||
23 | -ms-transform-origin: 25% 90%; | ||
24 | transform-origin: 25% 90%; | ||
25 | |||
26 | -webkit-backface-visibility: hidden; | ||
27 | -moz-backface-visibility: hidden; | ||
28 | -ms-backface-visibility: hidden; | ||
29 | -o-backface-visibility: hidden; | ||
30 | backface-visibility: hidden; | ||
31 | |||
32 | -webkit-tap-highlight-color: rgba(0,0,0,0); | ||
33 | } | ||
34 | |||
35 | .sb-container div:nth-child(1){ | ||
36 | background-color: #ea2a29; | ||
37 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 1px 1px 1px rgba(0,0,0,0.1); | ||
38 | } | ||
39 | |||
40 | .sb-container div:nth-child(2){ | ||
41 | background-color: #f16729; | ||
42 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 2px 2px 1px rgba(0,0,0,0.1); | ||
43 | } | ||
44 | |||
45 | .sb-container div:nth-child(3){ | ||
46 | background-color: #f89322; | ||
47 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 3px 3px 2px rgba(0,0,0,0.2); | ||
48 | } | ||
49 | |||
50 | .sb-container div:nth-child(4){ | ||
51 | background-color: #ffcf14; | ||
52 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 4px 4px 4px rgba(0,0,0,0.2); | ||
53 | } | ||
54 | |||
55 | .sb-container div:nth-child(5){ | ||
56 | background-color: #ffea0d; | ||
57 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 5px 5px 6px rgba(0,0,0,0.3); | ||
58 | } | ||
59 | |||
60 | .sb-container div:nth-child(6){ | ||
61 | background-color: #87b11d; | ||
62 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 6px 6px 8px rgba(0,0,0,0.3); | ||
63 | } | ||
64 | |||
65 | .sb-container div:nth-child(7){ | ||
66 | background-color: #008253; | ||
67 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 7px 7px 10px rgba(0,0,0,0.4); | ||
68 | } | ||
69 | |||
70 | .sb-container div:nth-child(8){ | ||
71 | background-color: #3277b5; | ||
72 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 8px 8px 12px rgba(0,0,0,0.4); | ||
73 | } | ||
74 | |||
75 | .sb-container div:nth-child(9){ | ||
76 | background-color: #4c549f; | ||
77 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 9px 9px 14px rgba(0,0,0,0.4); | ||
78 | } | ||
79 | |||
80 | .sb-container div:nth-child(10){ | ||
81 | background-color: #764394; | ||
82 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 10px 10px 16px rgba(0,0,0,0.4); | ||
83 | } | ||
84 | |||
85 | .sb-container div:nth-child(11){ | ||
86 | background-color: #ca0d86; | ||
87 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 11px 11px 18px rgba(0,0,0,0.4); | ||
88 | } | ||
89 | |||
90 | .sb-container div:last-child{ | ||
91 | background: #645b5c url(../images/cover.jpg) repeat center center; | ||
92 | box-shadow: | ||
93 | -1px -1px 3px rgba(0,0,0,0.2), | ||
94 | 12px 12px 20px rgba(0,0,0,0.6), | ||
95 | inset 2px 2px 0 rgba(255, 255, 255, 0.1); | ||
96 | } | ||
97 | |||
98 | .sb-container div:last-child:after{ | ||
99 | content: ''; | ||
100 | position: absolute; | ||
101 | bottom: 15px; | ||
102 | left: 15px; | ||
103 | width: 20px; | ||
104 | height: 20px; | ||
105 | border-radius: 50%; | ||
106 | background: #dddddd; | ||
107 | background: -moz-linear-gradient(-45deg, #dddddd 0%, #58535e 48%, #889396 100%); | ||
108 | background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,#dddddd), color-stop(48%,#58535e), color-stop(100%,#889396)); | ||
109 | background: -webkit-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
110 | background: -o-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
111 | background: -ms-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
112 | background: linear-gradient(135deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
113 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#889396',GradientType=1 ); | ||
114 | box-shadow: -1px -1px 1px rgba(0,0,0,0.5), 1px 1px 1px rgba(255,255,255,0.1); | ||
115 | } | ||
116 | |||
117 | .sb-container div h4{ | ||
118 | color: rgba(255,255,255,0.9); | ||
119 | text-shadow: 1px 1px 1px rgba(0,0,0,0.2); | ||
120 | font-weight: 700; | ||
121 | font-size: 16px; | ||
122 | text-transform: uppercase; | ||
123 | border-top: 1px dashed rgba(0,0,0,0.1); | ||
124 | border-bottom: 1px dashed rgba(0,0,0,0.1); | ||
125 | margin: 5px; | ||
126 | padding: 5px; | ||
127 | -webkit-touch-callout: none; | ||
128 | -webkit-user-select: none; | ||
129 | -khtml-user-select: none; | ||
130 | -moz-user-select: none; | ||
131 | -ms-user-select: none; | ||
132 | user-select: none; | ||
133 | } | ||
134 | |||
135 | .sb-container div:last-child h4{ | ||
136 | background: rgba(0,0,0,0.2); | ||
137 | box-shadow: 0 1px 1px rgba(255,255,255,0.1); | ||
138 | } | ||
139 | |||
140 | .sb-container div:last-child h5{ | ||
141 | font-size: 50px; | ||
142 | white-space: nowrap; | ||
143 | text-align: left; | ||
144 | margin: 0; | ||
145 | padding: 0; | ||
146 | position: absolute; | ||
147 | line-height: 50px; | ||
148 | top: 0px; | ||
149 | left: 0px; | ||
150 | color: #111; | ||
151 | text-shadow: -1px -1px 1px rgba(255,255,255,0.1); | ||
152 | text-transform: uppercase; | ||
153 | |||
154 | -webkit-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
155 | -moz-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
156 | -o-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
157 | -ms-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
158 | transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
159 | |||
160 | -webkit-transform-origin: 0 0; | ||
161 | -moz-transform-origin: 0 0; | ||
162 | -o-transform-origin: 0 0; | ||
163 | -ms-transform-origin: 0 0; | ||
164 | transform-origin: 0 0; | ||
165 | |||
166 | -webkit-touch-callout: none; | ||
167 | -webkit-user-select: none; | ||
168 | -khtml-user-select: none; | ||
169 | -moz-user-select: none; | ||
170 | -ms-user-select: none; | ||
171 | user-select: none; | ||
172 | } | ||
173 | |||
174 | span.sb-icon{ | ||
175 | display: block; | ||
176 | height: 70px; | ||
177 | width: 70px; | ||
178 | margin: 20px auto; | ||
179 | -webkit-touch-callout: none; | ||
180 | -webkit-user-select: none; | ||
181 | -khtml-user-select: none; | ||
182 | -moz-user-select: none; | ||
183 | -ms-user-select: none; | ||
184 | user-select: none; | ||
185 | } | ||
186 | |||
187 | span.sb-icon:before { | ||
188 | font-family: 'icons'; | ||
189 | font-style: normal; | ||
190 | font-weight: normal; | ||
191 | speak: none; | ||
192 | display: block; | ||
193 | text-decoration: inherit; | ||
194 | text-align: center; | ||
195 | text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); | ||
196 | line-height: 64px; | ||
197 | width: 100%; | ||
198 | font-size: 60px; | ||
199 | color: #000; | ||
200 | text-shadow: 0 0 1px #000; | ||
201 | } | ||
202 | |||
203 | .icon-cog:before { content: '\35'; } /* '5' */ | ||
204 | .icon-flight:before { content: '\37'; } /* '7' */ | ||
205 | .icon-eye:before { content: '\34'; } /* '4' */ | ||
206 | .icon-install:before { content: '\39'; } /* '9' */ | ||
207 | .icon-bag:before { content: '\36'; } /* '6' */ | ||
208 | .icon-globe:before { content: '\38'; } /* '8' */ | ||
209 | .icon-picture:before { content: '\32'; } /* '2' */ | ||
210 | .icon-video:before { content: '\30'; } /* '0' */ | ||
211 | .icon-download:before { content: '\41'; } /* 'A' */ | ||
212 | .icon-mobile:before { content: '\42'; } /* 'B' */ | ||
213 | .icon-camera:before { content: '\33'; } /* '3' */ \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/css/style2.css b/deprecated/jinwei.me/css/style2.css new file mode 100644 index 0000000..b2c7b4b --- /dev/null +++ b/deprecated/jinwei.me/css/style2.css | |||
@@ -0,0 +1,225 @@ | |||
1 | .sb-container { | ||
2 | position: relative; | ||
3 | width: 130px; | ||
4 | height: 400px; | ||
5 | margin: 30px auto 0 auto; | ||
6 | } | ||
7 | |||
8 | .sb-container div { | ||
9 | position: absolute; | ||
10 | top: 0; | ||
11 | left: 0; | ||
12 | width: 150px; | ||
13 | background: #fff; | ||
14 | height: 400px; | ||
15 | border-radius: 5px; | ||
16 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1); | ||
17 | cursor: pointer; | ||
18 | text-align: center; | ||
19 | background-image: url(../images/fabric.png); | ||
20 | -webkit-transform-origin: 25% 90%; | ||
21 | -moz-transform-origin: 25% 90%; | ||
22 | -o-transform-origin: 25% 90%; | ||
23 | -ms-transform-origin: 25% 90%; | ||
24 | transform-origin: 25% 90%; | ||
25 | |||
26 | -webkit-backface-visibility: hidden; | ||
27 | -moz-backface-visibility: hidden; | ||
28 | -ms-backface-visibility: hidden; | ||
29 | -o-backface-visibility: hidden; | ||
30 | backface-visibility: hidden; | ||
31 | |||
32 | -webkit-tap-highlight-color: rgba(0,0,0,0); | ||
33 | } | ||
34 | |||
35 | .sb-container div:nth-child(1){ | ||
36 | background-color: #ea2a29; | ||
37 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -1px 1px 1px rgba(0,0,0,0.1); | ||
38 | } | ||
39 | |||
40 | .sb-container div:nth-child(2){ | ||
41 | background-color: #f16729; | ||
42 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -2px 2px 1px rgba(0,0,0,0.1); | ||
43 | } | ||
44 | |||
45 | .sb-container div:nth-child(3){ | ||
46 | background-color: #f89322; | ||
47 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -3px 3px 2px rgba(0,0,0,0.2); | ||
48 | } | ||
49 | |||
50 | .sb-container div:nth-child(4){ | ||
51 | background-color: #ffcf14; | ||
52 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -4px 4px 4px rgba(0,0,0,0.2); | ||
53 | } | ||
54 | |||
55 | .sb-container div:nth-child(5){ | ||
56 | background-color: #ffea0d; | ||
57 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -5px 5px 6px rgba(0,0,0,0.3); | ||
58 | } | ||
59 | |||
60 | .sb-container div:nth-child(6){ | ||
61 | background-color: #87b11d; | ||
62 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -6px 6px 8px rgba(0,0,0,0.3); | ||
63 | } | ||
64 | |||
65 | .sb-container div:nth-child(7){ | ||
66 | background-color: #008253; | ||
67 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -7px 7px 10px rgba(0,0,0,0.4); | ||
68 | } | ||
69 | |||
70 | .sb-container div:nth-child(8){ | ||
71 | background-color: #3277b5; | ||
72 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -8px 8px 12px rgba(0,0,0,0.4); | ||
73 | } | ||
74 | |||
75 | .sb-container div:nth-child(9){ | ||
76 | background-color: #4c549f; | ||
77 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -9px 9px 14px rgba(0,0,0,0.4); | ||
78 | } | ||
79 | |||
80 | .sb-container div:nth-child(10){ | ||
81 | background-color: #764394; | ||
82 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -10px 10px 16px rgba(0,0,0,0.4); | ||
83 | } | ||
84 | |||
85 | .sb-container div:nth-child(11){ | ||
86 | background-color: #ca0d86; | ||
87 | box-shadow: 1px 1px 3px rgba(0,0,0,0.1), -11px 11px 18px rgba(0,0,0,0.4); | ||
88 | } | ||
89 | |||
90 | .sb-container div:last-child{ | ||
91 | background: #645b5c url(../images/cover.jpg) repeat center center; | ||
92 | box-shadow: | ||
93 | 1px 1px 3px rgba(0,0,0,0.2), | ||
94 | -12px 12px 20px rgba(0,0,0,0.6), | ||
95 | inset 2px 2px 0 rgba(255, 255, 255, 0.1); | ||
96 | } | ||
97 | |||
98 | .sb-container div:last-child:after{ | ||
99 | content: ''; | ||
100 | position: absolute; | ||
101 | bottom: 15px; | ||
102 | left: 15px; | ||
103 | width: 20px; | ||
104 | height: 20px; | ||
105 | border-radius: 50%; | ||
106 | background: #dddddd; | ||
107 | background: -moz-linear-gradient(-45deg, #dddddd 0%, #58535e 48%, #889396 100%); | ||
108 | background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,#dddddd), color-stop(48%,#58535e), color-stop(100%,#889396)); | ||
109 | background: -webkit-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
110 | background: -o-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
111 | background: -ms-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
112 | background: linear-gradient(135deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
113 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#889396',GradientType=1 ); | ||
114 | box-shadow: -1px -1px 1px rgba(255,255,255,0.1), 1px 1px 1px rgba(0,0,0,0.5); | ||
115 | } | ||
116 | |||
117 | .sb-container div h4{ | ||
118 | color: rgba(255,255,255,0.9); | ||
119 | text-shadow: 1px 1px 1px rgba(0,0,0,0.2); | ||
120 | font-weight: 700; | ||
121 | font-size: 16px; | ||
122 | text-transform: uppercase; | ||
123 | border-top: 1px dashed rgba(0,0,0,0.1); | ||
124 | border-bottom: 1px dashed rgba(0,0,0,0.1); | ||
125 | margin: 5px; | ||
126 | padding: 5px; | ||
127 | -webkit-touch-callout: none; | ||
128 | -webkit-user-select: none; | ||
129 | -khtml-user-select: none; | ||
130 | -moz-user-select: none; | ||
131 | -ms-user-select: none; | ||
132 | user-select: none; | ||
133 | } | ||
134 | |||
135 | .sb-container div:last-child h4{ | ||
136 | background: rgba(0,0,0,0.2); | ||
137 | box-shadow: 0 1px 1px rgba(255,255,255,0.1); | ||
138 | } | ||
139 | |||
140 | .sb-container div:last-child h5{ | ||
141 | font-size: 50px; | ||
142 | white-space: nowrap; | ||
143 | text-align: left; | ||
144 | margin: 0; | ||
145 | padding: 0; | ||
146 | position: absolute; | ||
147 | line-height: 50px; | ||
148 | top: 0px; | ||
149 | left: 0px; | ||
150 | color: #111; | ||
151 | text-shadow: -1px -1px 1px rgba(255,255,255,0.1); | ||
152 | text-transform: uppercase; | ||
153 | |||
154 | -webkit-transform: rotate(90deg) translateX(40%) translateY(-60px); | ||
155 | -moz-transform: rotate(90deg) translateX(40%) translateY(-60px); | ||
156 | -o-transform: rotate(90deg) translateX(40%) translateY(-60px); | ||
157 | -ms-transform: rotate(90deg) translateX(40%) translateY(-60px); | ||
158 | transform: rotate(90deg) translateX(40%) translateY(-60px); | ||
159 | |||
160 | -webkit-transform-origin: 0 0; | ||
161 | -moz-transform-origin: 0 0; | ||
162 | -o-transform-origin: 0 0; | ||
163 | -ms-transform-origin: 0 0; | ||
164 | transform-origin: 0 0; | ||
165 | |||
166 | -webkit-touch-callout: none; | ||
167 | -webkit-user-select: none; | ||
168 | -khtml-user-select: none; | ||
169 | -moz-user-select: none; | ||
170 | -ms-user-select: none; | ||
171 | user-select: none; | ||
172 | } | ||
173 | |||
174 | span.sb-toggle{ | ||
175 | padding: 5px; | ||
176 | margin: 10px; | ||
177 | display: block; | ||
178 | color: #292524; | ||
179 | font-size: 14px; | ||
180 | font-weight: 700; | ||
181 | text-transform: uppercase; | ||
182 | line-height: 14px; | ||
183 | text-shadow: 1px 1px 1px rgba(255,255,255,0.1); | ||
184 | text-align: center; | ||
185 | } | ||
186 | |||
187 | span.sb-icon{ | ||
188 | display: block; | ||
189 | height: 70px; | ||
190 | width: 70px; | ||
191 | margin: 20px auto; | ||
192 | -webkit-touch-callout: none; | ||
193 | -webkit-user-select: none; | ||
194 | -khtml-user-select: none; | ||
195 | -moz-user-select: none; | ||
196 | -ms-user-select: none; | ||
197 | user-select: none; | ||
198 | } | ||
199 | span.sb-icon:before { | ||
200 | font-family: 'icons'; | ||
201 | font-style: normal; | ||
202 | font-weight: normal; | ||
203 | speak: none; | ||
204 | display: block; | ||
205 | text-decoration: inherit; | ||
206 | text-align: center; | ||
207 | text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); | ||
208 | line-height: 64px; | ||
209 | width: 100%; | ||
210 | font-size: 60px; | ||
211 | color: #000; | ||
212 | text-shadow: 0 0 1px #000; | ||
213 | } | ||
214 | |||
215 | .icon-cog:before { content: '\35'; } /* '5' */ | ||
216 | .icon-flight:before { content: '\37'; } /* '7' */ | ||
217 | .icon-eye:before { content: '\34'; } /* '4' */ | ||
218 | .icon-install:before { content: '\39'; } /* '9' */ | ||
219 | .icon-bag:before { content: '\36'; } /* '6' */ | ||
220 | .icon-globe:before { content: '\38'; } /* '8' */ | ||
221 | .icon-picture:before { content: '\32'; } /* '2' */ | ||
222 | .icon-video:before { content: '\30'; } /* '0' */ | ||
223 | .icon-download:before { content: '\41'; } /* 'A' */ | ||
224 | .icon-mobile:before { content: '\42'; } /* 'B' */ | ||
225 | .icon-camera:before { content: '\33'; } /* '3' */ | ||
diff --git a/deprecated/jinwei.me/css/style3.css b/deprecated/jinwei.me/css/style3.css new file mode 100644 index 0000000..1ef270e --- /dev/null +++ b/deprecated/jinwei.me/css/style3.css | |||
@@ -0,0 +1,227 @@ | |||
1 | .sb-container { | ||
2 | position: relative; | ||
3 | width: 150px; | ||
4 | height: 400px; | ||
5 | margin: 30px auto 0 auto; | ||
6 | } | ||
7 | |||
8 | .sb-container div { | ||
9 | position: absolute; | ||
10 | top: 0; | ||
11 | left: 0; | ||
12 | width: 130px; | ||
13 | background: #fff; | ||
14 | height: 400px; | ||
15 | border-radius: 5px; | ||
16 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1); | ||
17 | cursor: pointer; | ||
18 | text-align: center; | ||
19 | |||
20 | -webkit-transform-origin: 25% 90%; | ||
21 | -moz-transform-origin: 25% 90%; | ||
22 | -o-transform-origin: 25% 90%; | ||
23 | -ms-transform-origin: 25% 90%; | ||
24 | transform-origin: 25% 90%; | ||
25 | |||
26 | -webkit-backface-visibility: hidden; | ||
27 | -moz-backface-visibility: hidden; | ||
28 | -ms-backface-visibility: hidden; | ||
29 | -o-backface-visibility: hidden; | ||
30 | backface-visibility: hidden; | ||
31 | |||
32 | -webkit-tap-highlight-color: rgba(0,0,0,0); | ||
33 | } | ||
34 | |||
35 | .sb-container div:nth-child(1){ | ||
36 | background-color: #ea2a29; | ||
37 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 1px 1px 1px rgba(0,0,0,0.1), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
38 | } | ||
39 | |||
40 | .sb-container div:nth-child(2){ | ||
41 | background-color: #f16729; | ||
42 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 2px 2px 1px rgba(0,0,0,0.1), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
43 | } | ||
44 | |||
45 | .sb-container div:nth-child(3){ | ||
46 | background-color: #f89322; | ||
47 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 3px 3px 2px rgba(0,0,0,0.2), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
48 | } | ||
49 | |||
50 | .sb-container div:nth-child(4){ | ||
51 | background-color: #ffcf14; | ||
52 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 4px 4px 4px rgba(0,0,0,0.2), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
53 | } | ||
54 | |||
55 | .sb-container div:nth-child(5){ | ||
56 | background-color: #ffea0d; | ||
57 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 5px 5px 6px rgba(0,0,0,0.3), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
58 | } | ||
59 | |||
60 | .sb-container div:nth-child(6){ | ||
61 | background-color: #87b11d; | ||
62 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 6px 6px 8px rgba(0,0,0,0.3), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
63 | } | ||
64 | |||
65 | .sb-container div:nth-child(7){ | ||
66 | background-color: #008253; | ||
67 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 7px 7px 10px rgba(0,0,0,0.4), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
68 | } | ||
69 | |||
70 | .sb-container div:nth-child(8){ | ||
71 | background-color: #3277b5; | ||
72 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 8px 8px 12px rgba(0,0,0,0.4), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
73 | } | ||
74 | |||
75 | .sb-container div:nth-child(9){ | ||
76 | background-color: #4c549f; | ||
77 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 9px 9px 14px rgba(0,0,0,0.4), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
78 | } | ||
79 | |||
80 | .sb-container div:nth-child(10){ | ||
81 | background-color: #764394; | ||
82 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 10px 10px 16px rgba(0,0,0,0.4), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
83 | } | ||
84 | |||
85 | .sb-container div:nth-child(11){ | ||
86 | background-color: #ca0d86; | ||
87 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 11px 11px 18px rgba(0,0,0,0.4), inset 0 3px 0 rgba(255, 255, 255, 0.2); | ||
88 | } | ||
89 | |||
90 | .sb-container div:last-child{ | ||
91 | background: #111 url(../images/dark_leather.jpg) repeat center center; | ||
92 | box-shadow: | ||
93 | -1px -1px 3px rgba(0,0,0,0.2), | ||
94 | 12px 12px 20px rgba(0,0,0,0.6), | ||
95 | inset 2px 2px 0 rgba(255, 255, 255, 0.1); | ||
96 | } | ||
97 | |||
98 | .sb-container div:last-child:after{ | ||
99 | content: ''; | ||
100 | position: absolute; | ||
101 | bottom: 15px; | ||
102 | left: 15px; | ||
103 | width: 20px; | ||
104 | height: 20px; | ||
105 | border-radius: 50%; | ||
106 | background: #dddddd; | ||
107 | background: -moz-linear-gradient(-45deg, #dddddd 0%, #58535e 48%, #889396 100%); | ||
108 | background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,#dddddd), color-stop(48%,#58535e), color-stop(100%,#889396)); | ||
109 | background: -webkit-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
110 | background: -o-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
111 | background: -ms-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
112 | background: linear-gradient(135deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
113 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#889396',GradientType=1 ); | ||
114 | box-shadow: -1px -1px 1px rgba(0,0,0,0.7), 1px 1px 1px rgba(255,255,255,0.1); | ||
115 | } | ||
116 | |||
117 | .sb-container div h4{ | ||
118 | color: rgba(255,255,255,0.9); | ||
119 | text-shadow: 1px 1px 1px rgba(0,0,0,0.2); | ||
120 | font-weight: 700; | ||
121 | font-size: 16px; | ||
122 | text-transform: uppercase; | ||
123 | border-top: 1px dashed rgba(0,0,0,0.1); | ||
124 | border-bottom: 1px dashed rgba(0,0,0,0.1); | ||
125 | margin: 5px; | ||
126 | padding: 5px; | ||
127 | -webkit-touch-callout: none; | ||
128 | -webkit-user-select: none; | ||
129 | -khtml-user-select: none; | ||
130 | -moz-user-select: none; | ||
131 | -ms-user-select: none; | ||
132 | user-select: none; | ||
133 | } | ||
134 | |||
135 | .sb-container div:last-child h4{ | ||
136 | background: rgba(0,0,0,0.2); | ||
137 | box-shadow: 0 1px 1px rgba(255,255,255,0.1); | ||
138 | } | ||
139 | |||
140 | .sb-container div:last-child h5{ | ||
141 | font-size: 50px; | ||
142 | white-space: nowrap; | ||
143 | text-align: left; | ||
144 | margin: 0; | ||
145 | padding: 0; | ||
146 | position: absolute; | ||
147 | line-height: 50px; | ||
148 | top: 0px; | ||
149 | left: 0px; | ||
150 | color: #000; | ||
151 | text-shadow: -1px -1px 1px rgba(255,255,255,0.1); | ||
152 | text-transform: uppercase; | ||
153 | |||
154 | -webkit-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
155 | -moz-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
156 | -o-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
157 | -ms-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
158 | transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
159 | |||
160 | -webkit-transform-origin: 0 0; | ||
161 | -moz-transform-origin: 0 0; | ||
162 | -o-transform-origin: 0 0; | ||
163 | -ms-transform-origin: 0 0; | ||
164 | transform-origin: 0 0; | ||
165 | |||
166 | -webkit-touch-callout: none; | ||
167 | -webkit-user-select: none; | ||
168 | -khtml-user-select: none; | ||
169 | -moz-user-select: none; | ||
170 | -ms-user-select: none; | ||
171 | user-select: none; | ||
172 | } | ||
173 | |||
174 | span.sb-toggle{ | ||
175 | padding: 5px; | ||
176 | margin: 10px; | ||
177 | display: block; | ||
178 | color: #000; | ||
179 | font-size: 14px; | ||
180 | font-weight: 700; | ||
181 | text-transform: uppercase; | ||
182 | line-height: 14px; | ||
183 | text-shadow: 1px 1px 1px rgba(255,255,255,0.1); | ||
184 | text-align: center; | ||
185 | } | ||
186 | |||
187 | span.sb-icon{ | ||
188 | display: block; | ||
189 | height: 70px; | ||
190 | width: 70px; | ||
191 | margin: 20px auto; | ||
192 | -webkit-touch-callout: none; | ||
193 | -webkit-user-select: none; | ||
194 | -khtml-user-select: none; | ||
195 | -moz-user-select: none; | ||
196 | -ms-user-select: none; | ||
197 | user-select: none; | ||
198 | } | ||
199 | |||
200 | span.sb-icon:before { | ||
201 | font-family: 'icons'; | ||
202 | font-style: normal; | ||
203 | font-weight: normal; | ||
204 | speak: none; | ||
205 | display: block; | ||
206 | text-decoration: inherit; | ||
207 | text-align: center; | ||
208 | text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); | ||
209 | line-height: 64px; | ||
210 | width: 100%; | ||
211 | font-size: 60px; | ||
212 | color: #000; | ||
213 | text-shadow: 0 0 1px #000; | ||
214 | |||
215 | } | ||
216 | |||
217 | .icon-cog:before { content: '\35'; } /* '5' */ | ||
218 | .icon-flight:before { content: '\37'; } /* '7' */ | ||
219 | .icon-eye:before { content: '\34'; } /* '4' */ | ||
220 | .icon-install:before { content: '\39'; } /* '9' */ | ||
221 | .icon-bag:before { content: '\36'; } /* '6' */ | ||
222 | .icon-globe:before { content: '\38'; } /* '8' */ | ||
223 | .icon-picture:before { content: '\32'; } /* '2' */ | ||
224 | .icon-video:before { content: '\30'; } /* '0' */ | ||
225 | .icon-download:before { content: '\41'; } /* 'A' */ | ||
226 | .icon-mobile:before { content: '\42'; } /* 'B' */ | ||
227 | .icon-camera:before { content: '\33'; } /* '3' */ \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/css/style4.css b/deprecated/jinwei.me/css/style4.css new file mode 100644 index 0000000..04d74aa --- /dev/null +++ b/deprecated/jinwei.me/css/style4.css | |||
@@ -0,0 +1,207 @@ | |||
1 | .sb-container { | ||
2 | position: relative; | ||
3 | width: 150px; | ||
4 | height: 400px; | ||
5 | margin: 30px auto 0 auto; | ||
6 | } | ||
7 | |||
8 | .sb-container div { | ||
9 | position: absolute; | ||
10 | top: 0; | ||
11 | left: 0; | ||
12 | width: 130px; | ||
13 | background: #fff; | ||
14 | height: 400px; | ||
15 | box-shadow: | ||
16 | -1px -1px 3px rgba(0,0,0,0.2); | ||
17 | cursor: pointer; | ||
18 | text-align: center; | ||
19 | background: #b98357 url(../images/cartboard.jpg) repeat center center; | ||
20 | |||
21 | -webkit-transform-origin: 25% 90%; | ||
22 | -moz-transform-origin: 25% 90%; | ||
23 | -o-transform-origin: 25% 90%; | ||
24 | -ms-transform-origin: 25% 90%; | ||
25 | transform-origin: 25% 90%; | ||
26 | |||
27 | -webkit-backface-visibility: hidden; | ||
28 | -moz-backface-visibility: hidden; | ||
29 | -ms-backface-visibility: hidden; | ||
30 | -o-backface-visibility: hidden; | ||
31 | backface-visibility: hidden; | ||
32 | |||
33 | -webkit-tap-highlight-color: rgba(0,0,0,0); | ||
34 | } | ||
35 | .sb-container div:nth-child(even){ | ||
36 | background-position: top left; | ||
37 | } | ||
38 | |||
39 | .sb-container div:nth-child(1){ | ||
40 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 1px 1px 1px rgba(0,0,0,0.1); | ||
41 | } | ||
42 | |||
43 | .sb-container div:nth-child(2){ | ||
44 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 2px 2px 1px rgba(0,0,0,0.1); | ||
45 | } | ||
46 | |||
47 | .sb-container div:nth-child(3){ | ||
48 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 3px 3px 2px rgba(0,0,0,0.2); | ||
49 | } | ||
50 | |||
51 | .sb-container div:nth-child(4){ | ||
52 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 4px 4px 4px rgba(0,0,0,0.2); | ||
53 | } | ||
54 | |||
55 | .sb-container div:nth-child(5){ | ||
56 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 5px 5px 6px rgba(0,0,0,0.3); | ||
57 | } | ||
58 | |||
59 | .sb-container div:nth-child(6){ | ||
60 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 6px 6px 8px rgba(0,0,0,0.3); | ||
61 | } | ||
62 | |||
63 | .sb-container div:nth-child(7){ | ||
64 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 7px 7px 10px rgba(0,0,0,0.4); | ||
65 | } | ||
66 | |||
67 | .sb-container div:nth-child(8){ | ||
68 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 8px 8px 12px rgba(0,0,0,0.4); | ||
69 | } | ||
70 | |||
71 | .sb-container div:nth-child(9){ | ||
72 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 9px 9px 14px rgba(0,0,0,0.4); | ||
73 | } | ||
74 | |||
75 | .sb-container div:nth-child(10){ | ||
76 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 10px 10px 16px rgba(0,0,0,0.4); | ||
77 | } | ||
78 | |||
79 | .sb-container div:nth-child(11){ | ||
80 | box-shadow: -1px -1px 3px rgba(0,0,0,0.2), 11px 11px 18px rgba(0,0,0,0.4); | ||
81 | } | ||
82 | |||
83 | .sb-container div:last-child{ | ||
84 | background: #645b5c url(../images/cover2.jpg) repeat center center; | ||
85 | box-shadow: | ||
86 | -1px -1px 3px rgba(0,0,0,0.2), | ||
87 | 12px 12px 20px rgba(0,0,0,0.6), | ||
88 | inset 2px 2px 0 rgba(255, 255, 255, 0.1); | ||
89 | } | ||
90 | |||
91 | .sb-container div:last-child:after{ | ||
92 | content: ''; | ||
93 | position: absolute; | ||
94 | bottom: 15px; | ||
95 | left: 15px; | ||
96 | width: 20px; | ||
97 | height: 20px; | ||
98 | border-radius: 50%; | ||
99 | background: #dddddd; | ||
100 | background: -moz-linear-gradient(-45deg, #dddddd 0%, #58535e 48%, #889396 100%); | ||
101 | background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,#dddddd), color-stop(48%,#58535e), color-stop(100%,#889396)); | ||
102 | background: -webkit-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
103 | background: -o-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
104 | background: -ms-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
105 | background: linear-gradient(135deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
106 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#889396',GradientType=1 ); | ||
107 | box-shadow: -1px -1px 1px rgba(0,0,0,0.7), 1px 1px 1px rgba(255,255,255,0.1); | ||
108 | } | ||
109 | |||
110 | .sb-container div h4{ | ||
111 | color: rgba(255,255,255,0.9); | ||
112 | text-shadow: 1px 1px 1px rgba(0,0,0,0.2); | ||
113 | font-weight: 700; | ||
114 | font-size: 16px; | ||
115 | text-transform: uppercase; | ||
116 | border-top: 1px dashed rgba(0,0,0,0.1); | ||
117 | border-bottom: 1px dashed rgba(0,0,0,0.1); | ||
118 | margin: 5px; | ||
119 | padding: 5px; | ||
120 | |||
121 | -webkit-touch-callout: none; | ||
122 | -webkit-user-select: none; | ||
123 | -khtml-user-select: none; | ||
124 | -moz-user-select: none; | ||
125 | -ms-user-select: none; | ||
126 | user-select: none; | ||
127 | } | ||
128 | |||
129 | .sb-container div:last-child h4{ | ||
130 | background: rgba(0,0,0,0.2); | ||
131 | box-shadow: 0 1px 1px rgba(255,255,255,0.1); | ||
132 | } | ||
133 | |||
134 | .sb-container div:last-child h5{ | ||
135 | font-size: 50px; | ||
136 | white-space: nowrap; | ||
137 | text-align: left; | ||
138 | margin: 0; | ||
139 | padding: 0; | ||
140 | position: absolute; | ||
141 | line-height: 50px; | ||
142 | top: 0px; | ||
143 | left: 0px; | ||
144 | color: #111; | ||
145 | text-shadow: -1px -1px 1px rgba(255,255,255,0.1); | ||
146 | text-transform: uppercase; | ||
147 | |||
148 | -webkit-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
149 | -moz-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
150 | -o-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
151 | -ms-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
152 | transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
153 | |||
154 | -webkit-transform-origin: 0 0; | ||
155 | -moz-transform-origin: 0 0; | ||
156 | -o-transform-origin: 0 0; | ||
157 | -ms-transform-origin: 0 0; | ||
158 | transform-origin: 0 0; | ||
159 | |||
160 | -webkit-touch-callout: none; | ||
161 | -webkit-user-select: none; | ||
162 | -khtml-user-select: none; | ||
163 | -moz-user-select: none; | ||
164 | -ms-user-select: none; | ||
165 | user-select: none; | ||
166 | } | ||
167 | |||
168 | span.sb-icon{ | ||
169 | display: block; | ||
170 | height: 70px; | ||
171 | width: 70px; | ||
172 | margin: 20px auto; | ||
173 | -webkit-touch-callout: none; | ||
174 | -webkit-user-select: none; | ||
175 | -khtml-user-select: none; | ||
176 | -moz-user-select: none; | ||
177 | -ms-user-select: none; | ||
178 | user-select: none; | ||
179 | } | ||
180 | |||
181 | span.sb-icon:before { | ||
182 | font-family: 'icons'; | ||
183 | font-style: normal; | ||
184 | font-weight: normal; | ||
185 | speak: none; | ||
186 | display: block; | ||
187 | text-decoration: inherit; | ||
188 | text-align: center; | ||
189 | text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); | ||
190 | line-height: 64px; | ||
191 | width: 100%; | ||
192 | font-size: 60px; | ||
193 | color: rgba(113,72,39,0.8); | ||
194 | text-shadow: 1px 1px 1px rgba(255,255,255,0.3); | ||
195 | } | ||
196 | |||
197 | .icon-cog:before { content: '\35'; } /* '5' */ | ||
198 | .icon-flight:before { content: '\37'; } /* '7' */ | ||
199 | .icon-eye:before { content: '\34'; } /* '4' */ | ||
200 | .icon-install:before { content: '\39'; } /* '9' */ | ||
201 | .icon-bag:before { content: '\36'; } /* '6' */ | ||
202 | .icon-globe:before { content: '\38'; } /* '8' */ | ||
203 | .icon-picture:before { content: '\32'; } /* '2' */ | ||
204 | .icon-video:before { content: '\30'; } /* '0' */ | ||
205 | .icon-download:before { content: '\41'; } /* 'A' */ | ||
206 | .icon-mobile:before { content: '\42'; } /* 'B' */ | ||
207 | .icon-camera:before { content: '\33'; } /* '3' */ \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/css/style5.css b/deprecated/jinwei.me/css/style5.css new file mode 100644 index 0000000..1388559 --- /dev/null +++ b/deprecated/jinwei.me/css/style5.css | |||
@@ -0,0 +1,223 @@ | |||
1 | .sb-container { | ||
2 | position: relative; | ||
3 | width: 150px; | ||
4 | height: 400px; | ||
5 | margin: 30px auto 0 auto; | ||
6 | } | ||
7 | |||
8 | .sb-container div { | ||
9 | position: absolute; | ||
10 | top: 0; | ||
11 | left: 0; | ||
12 | width: 130px; | ||
13 | background: #fff; | ||
14 | height: 400px; | ||
15 | border-radius: 5px; | ||
16 | cursor: pointer; | ||
17 | text-align: center; | ||
18 | background-image: url(../images/fabric.png); | ||
19 | |||
20 | -webkit-transform-origin: 25% 90%; | ||
21 | -moz-transform-origin: 25% 90%; | ||
22 | -o-transform-origin: 25% 90%; | ||
23 | -ms-transform-origin: 25% 90%; | ||
24 | transform-origin: 25% 90%; | ||
25 | |||
26 | -webkit-backface-visibility: hidden; | ||
27 | -moz-backface-visibility: hidden; | ||
28 | -ms-backface-visibility: hidden; | ||
29 | -o-backface-visibility: hidden; | ||
30 | backface-visibility: hidden; | ||
31 | |||
32 | -webkit-tap-highlight-color: rgba(0,0,0,0); | ||
33 | } | ||
34 | |||
35 | .sb-container div:nth-child(1){ | ||
36 | background-color: #ea2a29; | ||
37 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 1px 1px 1px rgba(0,0,0,0.1); | ||
38 | } | ||
39 | |||
40 | .sb-container div:nth-child(2){ | ||
41 | background-color: #f16729; | ||
42 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 2px 2px 1px rgba(0,0,0,0.1); | ||
43 | } | ||
44 | |||
45 | .sb-container div:nth-child(3){ | ||
46 | background-color: #f89322; | ||
47 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 3px 3px 2px rgba(0,0,0,0.2); | ||
48 | } | ||
49 | |||
50 | .sb-container div:nth-child(4){ | ||
51 | background-color: #ffcf14; | ||
52 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 4px 4px 4px rgba(0,0,0,0.2); | ||
53 | } | ||
54 | |||
55 | .sb-container div:nth-child(5){ | ||
56 | background-color: #ffea0d; | ||
57 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 5px 5px 6px rgba(0,0,0,0.3); | ||
58 | } | ||
59 | |||
60 | .sb-container div:nth-child(6){ | ||
61 | background-color: #87b11d; | ||
62 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 6px 6px 8px rgba(0,0,0,0.3); | ||
63 | } | ||
64 | |||
65 | .sb-container div:nth-child(7){ | ||
66 | background-color: #008253; | ||
67 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 7px 7px 10px rgba(0,0,0,0.4); | ||
68 | } | ||
69 | |||
70 | .sb-container div:nth-child(8){ | ||
71 | background-color: #3277b5; | ||
72 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 8px 8px 12px rgba(0,0,0,0.4); | ||
73 | } | ||
74 | |||
75 | .sb-container div:nth-child(9){ | ||
76 | background-color: #4c549f; | ||
77 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 9px 9px 14px rgba(0,0,0,0.4); | ||
78 | } | ||
79 | |||
80 | .sb-container div:nth-child(10){ | ||
81 | background-color: #764394; | ||
82 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 10px 10px 16px rgba(0,0,0,0.4); | ||
83 | } | ||
84 | |||
85 | .sb-container div:nth-child(11){ | ||
86 | background-color: #ca0d86; | ||
87 | box-shadow: -1px -1px 3px rgba(0,0,0,0.1), 11px 11px 18px rgba(0,0,0,0.4); | ||
88 | } | ||
89 | |||
90 | .sb-container div:last-child{ | ||
91 | background: #645b5c url(../images/cover.jpg) repeat center center; | ||
92 | box-shadow: | ||
93 | -1px -1px 3px rgba(0,0,0,0.2), | ||
94 | 12px 12px 20px rgba(0,0,0,0.6), | ||
95 | inset 2px 2px 0 rgba(255, 255, 255, 0.1); | ||
96 | } | ||
97 | |||
98 | .sb-container div:last-child:after{ | ||
99 | content: ''; | ||
100 | position: absolute; | ||
101 | bottom: 15px; | ||
102 | left: 15px; | ||
103 | width: 20px; | ||
104 | height: 20px; | ||
105 | border-radius: 50%; | ||
106 | background: #dddddd; | ||
107 | background: -moz-linear-gradient(-45deg, #dddddd 0%, #58535e 48%, #889396 100%); | ||
108 | background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,#dddddd), color-stop(48%,#58535e), color-stop(100%,#889396)); | ||
109 | background: -webkit-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
110 | background: -o-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
111 | background: -ms-linear-gradient(-45deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
112 | background: linear-gradient(135deg, #dddddd 0%,#58535e 48%,#889396 100%); | ||
113 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#889396',GradientType=1 ); | ||
114 | box-shadow: -1px -1px 1px rgba(0,0,0,0.5), 1px 1px 1px rgba(255,255,255,0.1); | ||
115 | } | ||
116 | |||
117 | .sb-container div h4{ | ||
118 | color: rgba(255,255,255,0.9); | ||
119 | text-shadow: 1px 1px 1px rgba(0,0,0,0.2); | ||
120 | font-weight: 700; | ||
121 | font-size: 16px; | ||
122 | text-transform: uppercase; | ||
123 | border-top: 1px dashed rgba(0,0,0,0.1); | ||
124 | border-bottom: 1px dashed rgba(0,0,0,0.1); | ||
125 | margin: 5px; | ||
126 | padding: 5px; | ||
127 | -webkit-touch-callout: none; | ||
128 | -webkit-user-select: none; | ||
129 | -khtml-user-select: none; | ||
130 | -moz-user-select: none; | ||
131 | -ms-user-select: none; | ||
132 | user-select: none; | ||
133 | } | ||
134 | |||
135 | .sb-container div:last-child h4{ | ||
136 | background: rgba(0,0,0,0.2); | ||
137 | box-shadow: 0 1px 1px rgba(255,255,255,0.1); | ||
138 | } | ||
139 | |||
140 | .sb-container div h4 a{ | ||
141 | color: rgba(0,0,0,0.9); | ||
142 | text-shadow: 0 1px 1px rgba(255,255,255,0.4); | ||
143 | } | ||
144 | |||
145 | .sb-container div h4 a:hover{ | ||
146 | color: rgba(255,255,255,0.9); | ||
147 | text-shadow: 1px 1px 1px rgba(0,0,0,0.2); | ||
148 | } | ||
149 | |||
150 | .sb-container div:last-child h5{ | ||
151 | font-size: 50px; | ||
152 | white-space: nowrap; | ||
153 | text-align: left; | ||
154 | margin: 0; | ||
155 | padding: 0; | ||
156 | position: absolute; | ||
157 | line-height: 50px; | ||
158 | top: 0px; | ||
159 | left: 0px; | ||
160 | color: #111; | ||
161 | text-shadow: -1px -1px 1px rgba(255,255,255,0.1); | ||
162 | text-transform: uppercase; | ||
163 | |||
164 | -webkit-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
165 | -moz-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
166 | -o-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
167 | -ms-transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
168 | transform: rotate(-90deg) translateX(-157%) translateY(73px); | ||
169 | |||
170 | -webkit-transform-origin: 0 0; | ||
171 | -moz-transform-origin: 0 0; | ||
172 | -o-transform-origin: 0 0; | ||
173 | -ms-transform-origin: 0 0; | ||
174 | transform-origin: 0 0; | ||
175 | |||
176 | -webkit-touch-callout: none; | ||
177 | -webkit-user-select: none; | ||
178 | -khtml-user-select: none; | ||
179 | -moz-user-select: none; | ||
180 | -ms-user-select: none; | ||
181 | user-select: none; | ||
182 | } | ||
183 | |||
184 | span.sb-icon{ | ||
185 | display: block; | ||
186 | height: 70px; | ||
187 | width: 70px; | ||
188 | margin: 20px auto; | ||
189 | -webkit-touch-callout: none; | ||
190 | -webkit-user-select: none; | ||
191 | -khtml-user-select: none; | ||
192 | -moz-user-select: none; | ||
193 | -ms-user-select: none; | ||
194 | user-select: none; | ||
195 | } | ||
196 | |||
197 | span.sb-icon:before { | ||
198 | font-family: 'icons'; | ||
199 | font-style: normal; | ||
200 | font-weight: normal; | ||
201 | speak: none; | ||
202 | display: block; | ||
203 | text-decoration: inherit; | ||
204 | text-align: center; | ||
205 | text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); | ||
206 | line-height: 64px; | ||
207 | width: 100%; | ||
208 | font-size: 60px; | ||
209 | color: #000; | ||
210 | text-shadow: 0 0 1px #000; | ||
211 | } | ||
212 | |||
213 | .icon-cog:before { content: '\35'; } /* '5' */ | ||
214 | .icon-flight:before { content: '\37'; } /* '7' */ | ||
215 | .icon-eye:before { content: '\34'; } /* '4' */ | ||
216 | .icon-install:before { content: '\39'; } /* '9' */ | ||
217 | .icon-bag:before { content: '\36'; } /* '6' */ | ||
218 | .icon-globe:before { content: '\38'; } /* '8' */ | ||
219 | .icon-picture:before { content: '\32'; } /* '2' */ | ||
220 | .icon-video:before { content: '\30'; } /* '0' */ | ||
221 | .icon-download:before { content: '\41'; } /* 'A' */ | ||
222 | .icon-mobile:before { content: '\42'; } /* 'B' */ | ||
223 | .icon-camera:before { content: '\33'; } /* '3' */ \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/images/ImageAttribution.txt b/deprecated/jinwei.me/images/ImageAttribution.txt new file mode 100644 index 0000000..e86284d --- /dev/null +++ b/deprecated/jinwei.me/images/ImageAttribution.txt | |||
@@ -0,0 +1,7 @@ | |||
1 | Background Pattern from http://subtlepatterns.com/ | ||
2 | |||
3 | Icons generated with http://fontello.com/ (Iconset by http://www.entypo.com) | ||
4 | |||
5 | Seamless cover textures by http://www.fuzzimo.com/ | ||
6 | |||
7 | Cartboard from http://www.texturise.com/ \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/images/cartboard.jpg b/deprecated/jinwei.me/images/cartboard.jpg new file mode 100644 index 0000000..b0b3def --- /dev/null +++ b/deprecated/jinwei.me/images/cartboard.jpg | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/images/cover.jpg b/deprecated/jinwei.me/images/cover.jpg new file mode 100644 index 0000000..458945c --- /dev/null +++ b/deprecated/jinwei.me/images/cover.jpg | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/images/cover2.jpg b/deprecated/jinwei.me/images/cover2.jpg new file mode 100644 index 0000000..4cd268d --- /dev/null +++ b/deprecated/jinwei.me/images/cover2.jpg | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/images/dark_leather.jpg b/deprecated/jinwei.me/images/dark_leather.jpg new file mode 100644 index 0000000..e09299d --- /dev/null +++ b/deprecated/jinwei.me/images/dark_leather.jpg | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/images/egg_shell.jpg b/deprecated/jinwei.me/images/egg_shell.jpg new file mode 100644 index 0000000..a08c04e --- /dev/null +++ b/deprecated/jinwei.me/images/egg_shell.jpg | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/images/fabric.png b/deprecated/jinwei.me/images/fabric.png new file mode 100644 index 0000000..07178c2 --- /dev/null +++ b/deprecated/jinwei.me/images/fabric.png | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/index.html b/deprecated/jinwei.me/index.html new file mode 100644 index 0000000..4786e51 --- /dev/null +++ b/deprecated/jinwei.me/index.html | |||
@@ -0,0 +1,148 @@ | |||
1 | <!DOCTYPE html > | ||
2 | <html lang="en"> | ||
3 | |||
4 | <head> | ||
5 | <meta charset="UTF-8" /> | ||
6 | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> | ||
7 | <meta name="viewport" content="width=device-width, initial-scale=1" /> | ||
8 | <title>Jinwei的小站</title> | ||
9 | <link href="favicon.ico" type="image/x-icon" rel=icon> | ||
10 | <link rel="stylesheet" type="text/css" href="css/demo.css" /> | ||
11 | <link rel="stylesheet" type="text/css" href="css/style2.css" /> | ||
12 | <link href='css/css.css' rel='stylesheet' type='text/css'> | ||
13 | <script type="text/javascript" src="js/modernizr.custom.79639.js"></script> | ||
14 | </head> | ||
15 | |||
16 | <body> | ||
17 | <div class="container"> | ||
18 | <header> | ||
19 | <h1> | ||
20 | <span>Jinwei的小站</span> | ||
21 | </h1> | ||
22 | <h2>一生放荡不羁只敲自己喜欢的代码</h2> | ||
23 | <h2>95后,大二了,宅,伪文青,爱折腾,爱技术,爱有技术会设计的妹子</h2> | ||
24 | <div class="support-note"> | ||
25 | <!-- let's check browser support with modernizr --> | ||
26 | <!--span class="no-cssanimations">CSS animations are not supported in your browser</span--> | ||
27 | <span class="no-csstransforms">都什么年代了还用这么渣的浏览器!不让看!</span> | ||
28 | <!--span class="no-csstransforms3d">CSS 3D transforms are not supported in your browser</span--> | ||
29 | <span class="no-csstransitions">都什么年代了还用这么渣的浏览器!不让看!</span> | ||
30 | <span class="note-ie">我和所有用IE的都绝交了你造吗?</span> | ||
31 | </div> | ||
32 | </header> | ||
33 | <section class="main"> | ||
34 | <div id="sb-container" class="sb-container"> | ||
35 | <div> | ||
36 | <span class="sb-icon icon-cog"></span> | ||
37 | <h4> | ||
38 | <span>City</span> | ||
39 | </h4> | ||
40 | </div> | ||
41 | <div> | ||
42 | <span class="sb-icon icon-flight"></span> | ||
43 | <h4> | ||
44 | <span>This</span> | ||
45 | </h4> | ||
46 | </div> | ||
47 | <div> | ||
48 | <span class="sb-icon icon-eye"></span> | ||
49 | <h4> | ||
50 | <span>With</span> | ||
51 | </h4> | ||
52 | </div> | ||
53 | <div> | ||
54 | <span class="sb-icon icon-install"></span> | ||
55 | <h4> | ||
56 | <span>Love</span> | ||
57 | </h4> | ||
58 | </div> | ||
59 | <div> | ||
60 | <span class="sb-icon icon-bag"></span> | ||
61 | <h4> | ||
62 | <span>In</span> | ||
63 | </h4> | ||
64 | </div> | ||
65 | <div> | ||
66 | <span class="sb-icon icon-globe"></span> | ||
67 | <h4> | ||
68 | <span>Fell</span> | ||
69 | </h4> | ||
70 | </div> | ||
71 | <div> | ||
72 | <span class="sb-icon icon-picture"></span> | ||
73 | <h4> | ||
74 | <span>I</span> | ||
75 | </h4> | ||
76 | </div> | ||
77 | <div> | ||
78 | <span class="sb-icon icon-video"></span> | ||
79 | <h4> | ||
80 | <span>Why</span> | ||
81 | </h4> | ||
82 | </div> | ||
83 | <div> | ||
84 | <span class="sb-icon icon-download"></span> | ||
85 | <h4> | ||
86 | <span>Reason</span> | ||
87 | </h4> | ||
88 | </div> | ||
89 | <div> | ||
90 | <span class="sb-icon icon-mobile"></span> | ||
91 | <h4> | ||
92 | <span>The</span> | ||
93 | </h4> | ||
94 | </div> | ||
95 | <div> | ||
96 | <span class="sb-icon icon-camera"></span> | ||
97 | <h4> | ||
98 | <span>Are</span> | ||
99 | </h4> | ||
100 | </div> | ||
101 | <div> | ||
102 | <h4> | ||
103 | <span>You</span> | ||
104 | </h4> | ||
105 | <span class="sb-toggle">Click to open/close</span> | ||
106 | <h5> | ||
107 | <span> | ||
108 | <a href="http://www.cnblogs.com/jinweiclarkchao/" target="_blank">My ♥ blog</a> | ||
109 | </span> | ||
110 | </h5> | ||
111 | </div> | ||
112 | </div> | ||
113 | <!-- sb-container --> | ||
114 | <h5> | ||
115 | © 2014. All rights reserved. View on | ||
116 | <a href="https://github.com/JinweiClarkChao/jinweiclarkchao.github.com" target="_blank">Github</a> | ||
117 | </h5> | ||
118 | </section> | ||
119 | </div> | ||
120 | <script type="text/javascript" src="js/jquery.min.js"></script> | ||
121 | <script type="text/javascript" src="js/jquery.swatchbook.js"></script> | ||
122 | <script type="text/javascript"> | ||
123 | $(function() { | ||
124 | $('#sb-container').swatchbook({ | ||
125 | // number of degrees that is between each item | ||
126 | angleInc: -10, | ||
127 | // amount in degrees for the opened item's next sibling | ||
128 | proximity: -45, | ||
129 | neighbor: -4, | ||
130 | // index of the element that when clicked, triggers the open/close function | ||
131 | // by default there is no such element | ||
132 | closeIdx: 11 | ||
133 | }); | ||
134 | }); | ||
135 | </script> | ||
136 | <script type="text/javascript"> | ||
137 | var x = 12; | ||
138 | window.addEventListener("mousewheel", function(event) { | ||
139 | event.preventDefault(); | ||
140 | if (event.wheelDelta >= 120 && x > 0) | ||
141 | $("#sb-container div")[x - 1].click(); | ||
142 | else if (event.wheelDelta <= -120 && x < 12) | ||
143 | $("#sb-container div")[x + 1].click(); | ||
144 | }, false); | ||
145 | </script> | ||
146 | </body> | ||
147 | |||
148 | </html> | ||
diff --git a/deprecated/jinwei.me/js/jquery.min.js b/deprecated/jinwei.me/js/jquery.min.js new file mode 100644 index 0000000..7e523f9 --- /dev/null +++ b/deprecated/jinwei.me/js/jquery.min.js | |||
@@ -0,0 +1,3576 @@ | |||
1 | /*! jQuery v1.8.3 jquery.com | jquery.org/license */ | ||
2 | (function(e, t) { | ||
3 | function _(e) { | ||
4 | var t = M[e] = {}; | ||
5 | return v.each(e.split(y), function(e, n) { | ||
6 | t[n] = !0 | ||
7 | }), t | ||
8 | } | ||
9 | |||
10 | function H(e, n, r) { | ||
11 | if (r === t && e.nodeType === 1) { | ||
12 | var i = "data-" + n.replace(P, "-$1").toLowerCase(); | ||
13 | r = e.getAttribute(i); | ||
14 | if (typeof r == "string") { | ||
15 | try { | ||
16 | r = r === "true" ? !0 : r === "false" ? !1 : r === "null" ? null : +r + "" === r ? +r : D.test(r) ? v.parseJSON(r) : r | ||
17 | } catch (s) {} | ||
18 | v.data(e, n, r) | ||
19 | } else r = t | ||
20 | } | ||
21 | return r | ||
22 | } | ||
23 | |||
24 | function B(e) { | ||
25 | var t; | ||
26 | for (t in e) { | ||
27 | if (t === "data" && v.isEmptyObject(e[t])) continue; | ||
28 | if (t !== "toJSON") return !1 | ||
29 | } | ||
30 | return !0 | ||
31 | } | ||
32 | |||
33 | function et() { | ||
34 | return !1 | ||
35 | } | ||
36 | |||
37 | function tt() { | ||
38 | return !0 | ||
39 | } | ||
40 | |||
41 | function ut(e) { | ||
42 | return !e || !e.parentNode || e.parentNode.nodeType === 11 | ||
43 | } | ||
44 | |||
45 | function at(e, t) { | ||
46 | do e = e[t]; while (e && e.nodeType !== 1); | ||
47 | return e | ||
48 | } | ||
49 | |||
50 | function ft(e, t, n) { | ||
51 | t = t || 0; | ||
52 | if (v.isFunction(t)) return v.grep(e, function(e, r) { | ||
53 | var i = !!t.call(e, r, e); | ||
54 | return i === n | ||
55 | }); | ||
56 | if (t.nodeType) return v.grep(e, function(e, r) { | ||
57 | return e === t === n | ||
58 | }); | ||
59 | if (typeof t == "string") { | ||
60 | var r = v.grep(e, function(e) { | ||
61 | return e.nodeType === 1 | ||
62 | }); | ||
63 | if (it.test(t)) return v.filter(t, r, !n); | ||
64 | t = v.filter(t, r) | ||
65 | } | ||
66 | return v.grep(e, function(e, r) { | ||
67 | return v.inArray(e, t) >= 0 === n | ||
68 | }) | ||
69 | } | ||
70 | |||
71 | function lt(e) { | ||
72 | var t = ct.split("|"), | ||
73 | n = e.createDocumentFragment(); | ||
74 | if (n.createElement) | ||
75 | while (t.length) n.createElement(t.pop()); | ||
76 | return n | ||
77 | } | ||
78 | |||
79 | function Lt(e, t) { | ||
80 | return e.getElementsByTagName(t)[0] || e.appendChild(e.ownerDocument.createElement(t)) | ||
81 | } | ||
82 | |||
83 | function At(e, t) { | ||
84 | if (t.nodeType !== 1 || !v.hasData(e)) return; | ||
85 | var n, r, i, s = v._data(e), | ||
86 | o = v._data(t, s), | ||
87 | u = s.events; | ||
88 | if (u) { | ||
89 | delete o.handle, o.events = {}; | ||
90 | for (n in u) | ||
91 | for (r = 0, i = u[n].length; r < i; r++) v.event.add(t, n, u[n][r]) | ||
92 | } | ||
93 | o.data && (o.data = v.extend({}, o.data)) | ||
94 | } | ||
95 | |||
96 | function Ot(e, t) { | ||
97 | var n; | ||
98 | if (t.nodeType !== 1) return; | ||
99 | t.clearAttributes && t.clearAttributes(), t.mergeAttributes && t.mergeAttributes(e), n = t.nodeName.toLowerCase(), n === "object" ? (t.parentNode && (t.outerHTML = e.outerHTML), v.support.html5Clone && e.innerHTML && !v.trim(t.innerHTML) && (t.innerHTML = e.innerHTML)) : n === "input" && Et.test(e.type) ? (t.defaultChecked = t.checked = e.checked, t.value !== e.value && (t.value = e.value)) : n === "option" ? t.selected = e.defaultSelected : n === "input" || n === "textarea" ? t.defaultValue = e.defaultValue : n === "script" && t.text !== e.text && (t.text = e.text), t.removeAttribute(v.expando) | ||
100 | } | ||
101 | |||
102 | function Mt(e) { | ||
103 | return typeof e.getElementsByTagName != "undefined" ? e.getElementsByTagName("*") : typeof e.querySelectorAll != "undefined" ? e.querySelectorAll("*") : [] | ||
104 | } | ||
105 | |||
106 | function _t(e) { | ||
107 | Et.test(e.type) && (e.defaultChecked = e.checked) | ||
108 | } | ||
109 | |||
110 | function Qt(e, t) { | ||
111 | if (t in e) return t; | ||
112 | var n = t.charAt(0).toUpperCase() + t.slice(1), | ||
113 | r = t, | ||
114 | i = Jt.length; | ||
115 | while (i--) { | ||
116 | t = Jt[i] + n; | ||
117 | if (t in e) return t | ||
118 | } | ||
119 | return r | ||
120 | } | ||
121 | |||
122 | function Gt(e, t) { | ||
123 | return e = t || e, v.css(e, "display") === "none" || !v.contains(e.ownerDocument, e) | ||
124 | } | ||
125 | |||
126 | function Yt(e, t) { | ||
127 | var n, r, i = [], | ||
128 | s = 0, | ||
129 | o = e.length; | ||
130 | for (; s < o; s++) { | ||
131 | n = e[s]; | ||
132 | if (!n.style) continue; | ||
133 | i[s] = v._data(n, "olddisplay"), t ? (!i[s] && n.style.display === "none" && (n.style.display = ""), n.style.display === "" && Gt(n) && (i[s] = v._data(n, "olddisplay", nn(n.nodeName)))) : (r = Dt(n, "display"), !i[s] && r !== "none" && v._data(n, "olddisplay", r)) | ||
134 | } | ||
135 | for (s = 0; s < o; s++) { | ||
136 | n = e[s]; | ||
137 | if (!n.style) continue; | ||
138 | if (!t || n.style.display === "none" || n.style.display === "") n.style.display = t ? i[s] || "" : "none" | ||
139 | } | ||
140 | return e | ||
141 | } | ||
142 | |||
143 | function Zt(e, t, n) { | ||
144 | var r = Rt.exec(t); | ||
145 | return r ? Math.max(0, r[1] - (n || 0)) + (r[2] || "px") : t | ||
146 | } | ||
147 | |||
148 | function en(e, t, n, r) { | ||
149 | var i = n === (r ? "border" : "content") ? 4 : t === "width" ? 1 : 0, | ||
150 | s = 0; | ||
151 | for (; i < 4; i += 2) n === "margin" && (s += v.css(e, n + $t[i], !0)), r ? (n === "content" && (s -= parseFloat(Dt(e, "padding" + $t[i])) || 0), n !== "margin" && (s -= parseFloat(Dt(e, "border" + $t[i] + "Width")) || 0)) : (s += parseFloat(Dt(e, "padding" + $t[i])) || 0, n !== "padding" && (s += parseFloat(Dt(e, "border" + $t[i] + "Width")) || 0)); | ||
152 | return s | ||
153 | } | ||
154 | |||
155 | function tn(e, t, n) { | ||
156 | var r = t === "width" ? e.offsetWidth : e.offsetHeight, | ||
157 | i = !0, | ||
158 | s = v.support.boxSizing && v.css(e, "boxSizing") === "border-box"; | ||
159 | if (r <= 0 || r == null) { | ||
160 | r = Dt(e, t); | ||
161 | if (r < 0 || r == null) r = e.style[t]; | ||
162 | if (Ut.test(r)) return r; | ||
163 | i = s && (v.support.boxSizingReliable || r === e.style[t]), r = parseFloat(r) || 0 | ||
164 | } | ||
165 | return r + en(e, t, n || (s ? "border" : "content"), i) + "px" | ||
166 | } | ||
167 | |||
168 | function nn(e) { | ||
169 | if (Wt[e]) return Wt[e]; | ||
170 | var t = v("<" + e + ">").appendTo(i.body), | ||
171 | n = t.css("display"); | ||
172 | t.remove(); | ||
173 | if (n === "none" || n === "") { | ||
174 | Pt = i.body.appendChild(Pt || v.extend(i.createElement("iframe"), { | ||
175 | frameBorder: 0, | ||
176 | width: 0, | ||
177 | height: 0 | ||
178 | })); | ||
179 | if (!Ht || !Pt.createElement) Ht = (Pt.contentWindow || Pt.contentDocument).document, Ht.write("<!doctype html><html><body>"), Ht.close(); | ||
180 | t = Ht.body.appendChild(Ht.createElement(e)), n = Dt(t, "display"), i.body.removeChild(Pt) | ||
181 | } | ||
182 | return Wt[e] = n, n | ||
183 | } | ||
184 | |||
185 | function fn(e, t, n, r) { | ||
186 | var i; | ||
187 | if (v.isArray(t)) v.each(t, function(t, i) { | ||
188 | n || sn.test(e) ? r(e, i) : fn(e + "[" + (typeof i == "object" ? t : "") + "]", i, n, r) | ||
189 | }); | ||
190 | else if (!n && v.type(t) === "object") | ||
191 | for (i in t) fn(e + "[" + i + "]", t[i], n, r); | ||
192 | else r(e, t) | ||
193 | } | ||
194 | |||
195 | function Cn(e) { | ||
196 | return function(t, n) { | ||
197 | typeof t != "string" && (n = t, t = "*"); | ||
198 | var r, i, s, o = t.toLowerCase().split(y), | ||
199 | u = 0, | ||
200 | a = o.length; | ||
201 | if (v.isFunction(n)) | ||
202 | for (; u < a; u++) r = o[u], s = /^\+/.test(r), s && (r = r.substr(1) || "*"), i = e[r] = e[r] || [], i[s ? "unshift" : "push"](n) | ||
203 | } | ||
204 | } | ||
205 | |||
206 | function kn(e, n, r, i, s, o) { | ||
207 | s = s || n.dataTypes[0], o = o || {}, o[s] = !0; | ||
208 | var u, a = e[s], | ||
209 | f = 0, | ||
210 | l = a ? a.length : 0, | ||
211 | c = e === Sn; | ||
212 | for (; f < l && (c || !u); f++) u = a[f](n, r, i), typeof u == "string" && (!c || o[u] ? u = t : (n.dataTypes.unshift(u), u = kn(e, n, r, i, u, o))); | ||
213 | return (c || !u) && !o["*"] && (u = kn(e, n, r, i, "*", o)), u | ||
214 | } | ||
215 | |||
216 | function Ln(e, n) { | ||
217 | var r, i, s = v.ajaxSettings.flatOptions || {}; | ||
218 | for (r in n) n[r] !== t && ((s[r] ? e : i || (i = {}))[r] = n[r]); | ||
219 | i && v.extend(!0, e, i) | ||
220 | } | ||
221 | |||
222 | function An(e, n, r) { | ||
223 | var i, s, o, u, a = e.contents, | ||
224 | f = e.dataTypes, | ||
225 | l = e.responseFields; | ||
226 | for (s in l) s in r && (n[l[s]] = r[s]); | ||
227 | while (f[0] === "*") f.shift(), i === t && (i = e.mimeType || n.getResponseHeader("content-type")); | ||
228 | if (i) | ||
229 | for (s in a) | ||
230 | if (a[s] && a[s].test(i)) { | ||
231 | f.unshift(s); | ||
232 | break | ||
233 | } | ||
234 | if (f[0] in r) o = f[0]; | ||
235 | else { | ||
236 | for (s in r) { | ||
237 | if (!f[0] || e.converters[s + " " + f[0]]) { | ||
238 | o = s; | ||
239 | break | ||
240 | } | ||
241 | u || (u = s) | ||
242 | } | ||
243 | o = o || u | ||
244 | } if (o) return o !== f[0] && f.unshift(o), r[o] | ||
245 | } | ||
246 | |||
247 | function On(e, t) { | ||
248 | var n, r, i, s, o = e.dataTypes.slice(), | ||
249 | u = o[0], | ||
250 | a = {}, | ||
251 | f = 0; | ||
252 | e.dataFilter && (t = e.dataFilter(t, e.dataType)); | ||
253 | if (o[1]) | ||
254 | for (n in e.converters) a[n.toLowerCase()] = e.converters[n]; | ||
255 | for (; i = o[++f];) | ||
256 | if (i !== "*") { | ||
257 | if (u !== "*" && u !== i) { | ||
258 | n = a[u + " " + i] || a["* " + i]; | ||
259 | if (!n) | ||
260 | for (r in a) { | ||
261 | s = r.split(" "); | ||
262 | if (s[1] === i) { | ||
263 | n = a[u + " " + s[0]] || a["* " + s[0]]; | ||
264 | if (n) { | ||
265 | n === !0 ? n = a[r] : a[r] !== !0 && (i = s[0], o.splice(f--, 0, i)); | ||
266 | break | ||
267 | } | ||
268 | } | ||
269 | } | ||
270 | if (n !== !0) | ||
271 | if (n && e["throws"]) t = n(t); | ||
272 | else try { | ||
273 | t = n(t) | ||
274 | } catch (l) { | ||
275 | return { | ||
276 | state: "parsererror", | ||
277 | error: n ? l : "No conversion from " + u + " to " + i | ||
278 | } | ||
279 | } | ||
280 | } | ||
281 | u = i | ||
282 | } | ||
283 | return { | ||
284 | state: "success", | ||
285 | data: t | ||
286 | } | ||
287 | } | ||
288 | |||
289 | function Fn() { | ||
290 | try { | ||
291 | return new e.XMLHttpRequest | ||
292 | } catch (t) {} | ||
293 | } | ||
294 | |||
295 | function In() { | ||
296 | try { | ||
297 | return new e.ActiveXObject("Microsoft.XMLHTTP") | ||
298 | } catch (t) {} | ||
299 | } | ||
300 | |||
301 | function $n() { | ||
302 | return setTimeout(function() { | ||
303 | qn = t | ||
304 | }, 0), qn = v.now() | ||
305 | } | ||
306 | |||
307 | function Jn(e, t) { | ||
308 | v.each(t, function(t, n) { | ||
309 | var r = (Vn[t] || []).concat(Vn["*"]), | ||
310 | i = 0, | ||
311 | s = r.length; | ||
312 | for (; i < s; i++) | ||
313 | if (r[i].call(e, t, n)) return | ||
314 | }) | ||
315 | } | ||
316 | |||
317 | function Kn(e, t, n) { | ||
318 | var r, i = 0, | ||
319 | s = 0, | ||
320 | o = Xn.length, | ||
321 | u = v.Deferred().always(function() { | ||
322 | delete a.elem | ||
323 | }), | ||
324 | a = function() { | ||
325 | var t = qn || $n(), | ||
326 | n = Math.max(0, f.startTime + f.duration - t), | ||
327 | r = n / f.duration || 0, | ||
328 | i = 1 - r, | ||
329 | s = 0, | ||
330 | o = f.tweens.length; | ||
331 | for (; s < o; s++) f.tweens[s].run(i); | ||
332 | return u.notifyWith(e, [f, i, n]), i < 1 && o ? n : (u.resolveWith(e, [f]), !1) | ||
333 | }, | ||
334 | f = u.promise({ | ||
335 | elem: e, | ||
336 | props: v.extend({}, t), | ||
337 | opts: v.extend(!0, { | ||
338 | specialEasing: {} | ||
339 | }, n), | ||
340 | originalProperties: t, | ||
341 | originalOptions: n, | ||
342 | startTime: qn || $n(), | ||
343 | duration: n.duration, | ||
344 | tweens: [], | ||
345 | createTween: function(t, n, r) { | ||
346 | var i = v.Tween(e, f.opts, t, n, f.opts.specialEasing[t] || f.opts.easing); | ||
347 | return f.tweens.push(i), i | ||
348 | }, | ||
349 | stop: function(t) { | ||
350 | var n = 0, | ||
351 | r = t ? f.tweens.length : 0; | ||
352 | for (; n < r; n++) f.tweens[n].run(1); | ||
353 | return t ? u.resolveWith(e, [f, t]) : u.rejectWith(e, [f, t]), this | ||
354 | } | ||
355 | }), | ||
356 | l = f.props; | ||
357 | Qn(l, f.opts.specialEasing); | ||
358 | for (; i < o; i++) { | ||
359 | r = Xn[i].call(f, e, l, f.opts); | ||
360 | if (r) return r | ||
361 | } | ||
362 | return Jn(f, l), v.isFunction(f.opts.start) && f.opts.start.call(e, f), v.fx.timer(v.extend(a, { | ||
363 | anim: f, | ||
364 | queue: f.opts.queue, | ||
365 | elem: e | ||
366 | })), f.progress(f.opts.progress).done(f.opts.done, f.opts.complete).fail(f.opts.fail).always(f.opts.always) | ||
367 | } | ||
368 | |||
369 | function Qn(e, t) { | ||
370 | var n, r, i, s, o; | ||
371 | for (n in e) { | ||
372 | r = v.camelCase(n), i = t[r], s = e[n], v.isArray(s) && (i = s[1], s = e[n] = s[0]), n !== r && (e[r] = s, delete e[n]), o = v.cssHooks[r]; | ||
373 | if (o && "expand" in o) { | ||
374 | s = o.expand(s), delete e[r]; | ||
375 | for (n in s) n in e || (e[n] = s[n], t[n] = i) | ||
376 | } else t[r] = i | ||
377 | } | ||
378 | } | ||
379 | |||
380 | function Gn(e, t, n) { | ||
381 | var r, i, s, o, u, a, f, l, c, h = this, | ||
382 | p = e.style, | ||
383 | d = {}, | ||
384 | m = [], | ||
385 | g = e.nodeType && Gt(e); | ||
386 | n.queue || (l = v._queueHooks(e, "fx"), l.unqueued == null && (l.unqueued = 0, c = l.empty.fire, l.empty.fire = function() { | ||
387 | l.unqueued || c() | ||
388 | }), l.unqueued++, h.always(function() { | ||
389 | h.always(function() { | ||
390 | l.unqueued--, v.queue(e, "fx").length || l.empty.fire() | ||
391 | }) | ||
392 | })), e.nodeType === 1 && ("height" in t || "width" in t) && (n.overflow = [p.overflow, p.overflowX, p.overflowY], v.css(e, "display") === "inline" && v.css(e, "float") === "none" && (!v.support.inlineBlockNeedsLayout || nn(e.nodeName) === "inline" ? p.display = "inline-block" : p.zoom = 1)), n.overflow && (p.overflow = "hidden", v.support.shrinkWrapBlocks || h.done(function() { | ||
393 | p.overflow = n.overflow[0], p.overflowX = n.overflow[1], p.overflowY = n.overflow[2] | ||
394 | })); | ||
395 | for (r in t) { | ||
396 | s = t[r]; | ||
397 | if (Un.exec(s)) { | ||
398 | delete t[r], a = a || s === "toggle"; | ||
399 | if (s === (g ? "hide" : "show")) continue; | ||
400 | m.push(r) | ||
401 | } | ||
402 | } | ||
403 | o = m.length; | ||
404 | if (o) { | ||
405 | u = v._data(e, "fxshow") || v._data(e, "fxshow", {}), "hidden" in u && (g = u.hidden), a && (u.hidden = !g), g ? v(e).show() : h.done(function() { | ||
406 | v(e).hide() | ||
407 | }), h.done(function() { | ||
408 | var t; | ||
409 | v.removeData(e, "fxshow", !0); | ||
410 | for (t in d) v.style(e, t, d[t]) | ||
411 | }); | ||
412 | for (r = 0; r < o; r++) i = m[r], f = h.createTween(i, g ? u[i] : 0), d[i] = u[i] || v.style(e, i), i in u || (u[i] = f.start, g && (f.end = f.start, f.start = i === "width" || i === "height" ? 1 : 0)) | ||
413 | } | ||
414 | } | ||
415 | |||
416 | function Yn(e, t, n, r, i) { | ||
417 | return new Yn.prototype.init(e, t, n, r, i) | ||
418 | } | ||
419 | |||
420 | function Zn(e, t) { | ||
421 | var n, r = { | ||
422 | height: e | ||
423 | }, | ||
424 | i = 0; | ||
425 | t = t ? 1 : 0; | ||
426 | for (; i < 4; i += 2 - t) n = $t[i], r["margin" + n] = r["padding" + n] = e; | ||
427 | return t && (r.opacity = r.width = e), r | ||
428 | } | ||
429 | |||
430 | function tr(e) { | ||
431 | return v.isWindow(e) ? e : e.nodeType === 9 ? e.defaultView || e.parentWindow : !1 | ||
432 | } | ||
433 | var n, r, i = e.document, | ||
434 | s = e.location, | ||
435 | o = e.navigator, | ||
436 | u = e.jQuery, | ||
437 | a = e.$, | ||
438 | f = Array.prototype.push, | ||
439 | l = Array.prototype.slice, | ||
440 | c = Array.prototype.indexOf, | ||
441 | h = Object.prototype.toString, | ||
442 | p = Object.prototype.hasOwnProperty, | ||
443 | d = String.prototype.trim, | ||
444 | v = function(e, t) { | ||
445 | return new v.fn.init(e, t, n) | ||
446 | }, | ||
447 | m = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source, | ||
448 | g = /\S/, | ||
449 | y = /\s+/, | ||
450 | b = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, | ||
451 | w = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/, | ||
452 | E = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, | ||
453 | S = /^[\],:{}\s]*$/, | ||
454 | x = /(?:^|:|,)(?:\s*\[)+/g, | ||
455 | T = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g, | ||
456 | N = /"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g, | ||
457 | C = /^-ms-/, | ||
458 | k = /-([\da-z])/gi, | ||
459 | L = function(e, t) { | ||
460 | return (t + "").toUpperCase() | ||
461 | }, | ||
462 | A = function() { | ||
463 | i.addEventListener ? (i.removeEventListener("DOMContentLoaded", A, !1), v.ready()) : i.readyState === "complete" && (i.detachEvent("onreadystatechange", A), v.ready()) | ||
464 | }, | ||
465 | O = {}; | ||
466 | v.fn = v.prototype = { | ||
467 | constructor: v, | ||
468 | init: function(e, n, r) { | ||
469 | var s, o, u, a; | ||
470 | if (!e) return this; | ||
471 | if (e.nodeType) return this.context = this[0] = e, this.length = 1, this; | ||
472 | if (typeof e == "string") { | ||
473 | e.charAt(0) === "<" && e.charAt(e.length - 1) === ">" && e.length >= 3 ? s = [null, e, null] : s = w.exec(e); | ||
474 | if (s && (s[1] || !n)) { | ||
475 | if (s[1]) return n = n instanceof v ? n[0] : n, a = n && n.nodeType ? n.ownerDocument || n : i, e = v.parseHTML(s[1], a, !0), E.test(s[1]) && v.isPlainObject(n) && this.attr.call(e, n, !0), v.merge(this, e); | ||
476 | o = i.getElementById(s[2]); | ||
477 | if (o && o.parentNode) { | ||
478 | if (o.id !== s[2]) return r.find(e); | ||
479 | this.length = 1, this[0] = o | ||
480 | } | ||
481 | return this.context = i, this.selector = e, this | ||
482 | } | ||
483 | return !n || n.jquery ? (n || r).find(e) : this.constructor(n).find(e) | ||
484 | } | ||
485 | return v.isFunction(e) ? r.ready(e) : (e.selector !== t && (this.selector = e.selector, this.context = e.context), v.makeArray(e, this)) | ||
486 | }, | ||
487 | selector: "", | ||
488 | jquery: "1.8.3", | ||
489 | length: 0, | ||
490 | size: function() { | ||
491 | return this.length | ||
492 | }, | ||
493 | toArray: function() { | ||
494 | return l.call(this) | ||
495 | }, | ||
496 | get: function(e) { | ||
497 | return e == null ? this.toArray() : e < 0 ? this[this.length + e] : this[e] | ||
498 | }, | ||
499 | pushStack: function(e, t, n) { | ||
500 | var r = v.merge(this.constructor(), e); | ||
501 | return r.prevObject = this, r.context = this.context, t === "find" ? r.selector = this.selector + (this.selector ? " " : "") + n : t && (r.selector = this.selector + "." + t + "(" + n + ")"), r | ||
502 | }, | ||
503 | each: function(e, t) { | ||
504 | return v.each(this, e, t) | ||
505 | }, | ||
506 | ready: function(e) { | ||
507 | return v.ready.promise().done(e), this | ||
508 | }, | ||
509 | eq: function(e) { | ||
510 | return e = +e, e === -1 ? this.slice(e) : this.slice(e, e + 1) | ||
511 | }, | ||
512 | first: function() { | ||
513 | return this.eq(0) | ||
514 | }, | ||
515 | last: function() { | ||
516 | return this.eq(-1) | ||
517 | }, | ||
518 | slice: function() { | ||
519 | return this.pushStack(l.apply(this, arguments), "slice", l.call(arguments).join(",")) | ||
520 | }, | ||
521 | map: function(e) { | ||
522 | return this.pushStack(v.map(this, function(t, n) { | ||
523 | return e.call(t, n, t) | ||
524 | })) | ||
525 | }, | ||
526 | end: function() { | ||
527 | return this.prevObject || this.constructor(null) | ||
528 | }, | ||
529 | push: f, | ||
530 | sort: [].sort, | ||
531 | splice: [].splice | ||
532 | }, v.fn.init.prototype = v.fn, v.extend = v.fn.extend = function() { | ||
533 | var e, n, r, i, s, o, u = arguments[0] || {}, | ||
534 | a = 1, | ||
535 | f = arguments.length, | ||
536 | l = !1; | ||
537 | typeof u == "boolean" && (l = u, u = arguments[1] || {}, a = 2), typeof u != "object" && !v.isFunction(u) && (u = {}), f === a && (u = this, --a); | ||
538 | for (; a < f; a++) | ||
539 | if ((e = arguments[a]) != null) | ||
540 | for (n in e) { | ||
541 | r = u[n], i = e[n]; | ||
542 | if (u === i) continue; | ||
543 | l && i && (v.isPlainObject(i) || (s = v.isArray(i))) ? (s ? (s = !1, o = r && v.isArray(r) ? r : []) : o = r && v.isPlainObject(r) ? r : {}, u[n] = v.extend(l, o, i)) : i !== t && (u[n] = i) | ||
544 | } | ||
545 | return u | ||
546 | }, v.extend({ | ||
547 | noConflict: function(t) { | ||
548 | return e.$ === v && (e.$ = a), t && e.jQuery === v && (e.jQuery = u), v | ||
549 | }, | ||
550 | isReady: !1, | ||
551 | readyWait: 1, | ||
552 | holdReady: function(e) { | ||
553 | e ? v.readyWait++ : v.ready(!0) | ||
554 | }, | ||
555 | ready: function(e) { | ||
556 | if (e === !0 ? --v.readyWait : v.isReady) return; | ||
557 | if (!i.body) return setTimeout(v.ready, 1); | ||
558 | v.isReady = !0; | ||
559 | if (e !== !0 && --v.readyWait > 0) return; | ||
560 | r.resolveWith(i, [v]), v.fn.trigger && v(i).trigger("ready").off("ready") | ||
561 | }, | ||
562 | isFunction: function(e) { | ||
563 | return v.type(e) === "function" | ||
564 | }, | ||
565 | isArray: Array.isArray || function(e) { | ||
566 | return v.type(e) === "array" | ||
567 | }, | ||
568 | isWindow: function(e) { | ||
569 | return e != null && e == e.window | ||
570 | }, | ||
571 | isNumeric: function(e) { | ||
572 | return !isNaN(parseFloat(e)) && isFinite(e) | ||
573 | }, | ||
574 | type: function(e) { | ||
575 | return e == null ? String(e) : O[h.call(e)] || "object" | ||
576 | }, | ||
577 | isPlainObject: function(e) { | ||
578 | if (!e || v.type(e) !== "object" || e.nodeType || v.isWindow(e)) return !1; | ||
579 | try { | ||
580 | if (e.constructor && !p.call(e, "constructor") && !p.call(e.constructor.prototype, "isPrototypeOf")) return !1 | ||
581 | } catch (n) { | ||
582 | return !1 | ||
583 | } | ||
584 | var r; | ||
585 | for (r in e); | ||
586 | return r === t || p.call(e, r) | ||
587 | }, | ||
588 | isEmptyObject: function(e) { | ||
589 | var t; | ||
590 | for (t in e) return !1; | ||
591 | return !0 | ||
592 | }, | ||
593 | error: function(e) { | ||
594 | throw new Error(e) | ||
595 | }, | ||
596 | parseHTML: function(e, t, n) { | ||
597 | var r; | ||
598 | return !e || typeof e != "string" ? null : (typeof t == "boolean" && (n = t, t = 0), t = t || i, (r = E.exec(e)) ? [t.createElement(r[1])] : (r = v.buildFragment([e], t, n ? null : []), v.merge([], (r.cacheable ? v.clone(r.fragment) : r.fragment).childNodes))) | ||
599 | }, | ||
600 | parseJSON: function(t) { | ||
601 | if (!t || typeof t != "string") return null; | ||
602 | t = v.trim(t); | ||
603 | if (e.JSON && e.JSON.parse) return e.JSON.parse(t); | ||
604 | if (S.test(t.replace(T, "@").replace(N, "]").replace(x, ""))) return (new Function("return " + t))(); | ||
605 | v.error("Invalid JSON: " + t) | ||
606 | }, | ||
607 | parseXML: function(n) { | ||
608 | var r, i; | ||
609 | if (!n || typeof n != "string") return null; | ||
610 | try { | ||
611 | e.DOMParser ? (i = new DOMParser, r = i.parseFromString(n, "text/xml")) : (r = new ActiveXObject("Microsoft.XMLDOM"), r.async = "false", r.loadXML(n)) | ||
612 | } catch (s) { | ||
613 | r = t | ||
614 | } | ||
615 | return (!r || !r.documentElement || r.getElementsByTagName("parsererror").length) && v.error("Invalid XML: " + n), r | ||
616 | }, | ||
617 | noop: function() {}, | ||
618 | globalEval: function(t) { | ||
619 | t && g.test(t) && (e.execScript || function(t) { | ||
620 | e.eval.call(e, t) | ||
621 | })(t) | ||
622 | }, | ||
623 | camelCase: function(e) { | ||
624 | return e.replace(C, "ms-").replace(k, L) | ||
625 | }, | ||
626 | nodeName: function(e, t) { | ||
627 | return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase() | ||
628 | }, | ||
629 | each: function(e, n, r) { | ||
630 | var i, s = 0, | ||
631 | o = e.length, | ||
632 | u = o === t || v.isFunction(e); | ||
633 | if (r) { | ||
634 | if (u) { | ||
635 | for (i in e) | ||
636 | if (n.apply(e[i], r) === !1) break | ||
637 | } else | ||
638 | for (; s < o;) | ||
639 | if (n.apply(e[s++], r) === !1) break | ||
640 | } else if (u) { | ||
641 | for (i in e) | ||
642 | if (n.call(e[i], i, e[i]) === !1) break | ||
643 | } else | ||
644 | for (; s < o;) | ||
645 | if (n.call(e[s], s, e[s++]) === !1) break; return e | ||
646 | }, | ||
647 | trim: d && !d.call("\ufeff\u00a0") ? function(e) { | ||
648 | return e == null ? "" : d.call(e) | ||
649 | } : function(e) { | ||
650 | return e == null ? "" : (e + "").replace(b, "") | ||
651 | }, | ||
652 | makeArray: function(e, t) { | ||
653 | var n, r = t || []; | ||
654 | return e != null && (n = v.type(e), e.length == null || n === "string" || n === "function" || n === "regexp" || v.isWindow(e) ? f.call(r, e) : v.merge(r, e)), r | ||
655 | }, | ||
656 | inArray: function(e, t, n) { | ||
657 | var r; | ||
658 | if (t) { | ||
659 | if (c) return c.call(t, e, n); | ||
660 | r = t.length, n = n ? n < 0 ? Math.max(0, r + n) : n : 0; | ||
661 | for (; n < r; n++) | ||
662 | if (n in t && t[n] === e) return n | ||
663 | } | ||
664 | return -1 | ||
665 | }, | ||
666 | merge: function(e, n) { | ||
667 | var r = n.length, | ||
668 | i = e.length, | ||
669 | s = 0; | ||
670 | if (typeof r == "number") | ||
671 | for (; s < r; s++) e[i++] = n[s]; | ||
672 | else | ||
673 | while (n[s] !== t) e[i++] = n[s++]; | ||
674 | return e.length = i, e | ||
675 | }, | ||
676 | grep: function(e, t, n) { | ||
677 | var r, i = [], | ||
678 | s = 0, | ||
679 | o = e.length; | ||
680 | n = !!n; | ||
681 | for (; s < o; s++) r = !!t(e[s], s), n !== r && i.push(e[s]); | ||
682 | return i | ||
683 | }, | ||
684 | map: function(e, n, r) { | ||
685 | var i, s, o = [], | ||
686 | u = 0, | ||
687 | a = e.length, | ||
688 | f = e instanceof v || a !== t && typeof a == "number" && (a > 0 && e[0] && e[a - 1] || a === 0 || v.isArray(e)); | ||
689 | if (f) | ||
690 | for (; u < a; u++) i = n(e[u], u, r), i != null && (o[o.length] = i); | ||
691 | else | ||
692 | for (s in e) i = n(e[s], s, r), i != null && (o[o.length] = i); | ||
693 | return o.concat.apply([], o) | ||
694 | }, | ||
695 | guid: 1, | ||
696 | proxy: function(e, n) { | ||
697 | var r, i, s; | ||
698 | return typeof n == "string" && (r = e[n], n = e, e = r), v.isFunction(e) ? (i = l.call(arguments, 2), s = function() { | ||
699 | return e.apply(n, i.concat(l.call(arguments))) | ||
700 | }, s.guid = e.guid = e.guid || v.guid++, s) : t | ||
701 | }, | ||
702 | access: function(e, n, r, i, s, o, u) { | ||
703 | var a, f = r == null, | ||
704 | l = 0, | ||
705 | c = e.length; | ||
706 | if (r && typeof r == "object") { | ||
707 | for (l in r) v.access(e, n, l, r[l], 1, o, i); | ||
708 | s = 1 | ||
709 | } else if (i !== t) { | ||
710 | a = u === t && v.isFunction(i), f && (a ? (a = n, n = function(e, t, n) { | ||
711 | return a.call(v(e), n) | ||
712 | }) : (n.call(e, i), n = null)); | ||
713 | if (n) | ||
714 | for (; l < c; l++) n(e[l], r, a ? i.call(e[l], l, n(e[l], r)) : i, u); | ||
715 | s = 1 | ||
716 | } | ||
717 | return s ? e : f ? n.call(e) : c ? n(e[0], r) : o | ||
718 | }, | ||
719 | now: function() { | ||
720 | return (new Date).getTime() | ||
721 | } | ||
722 | }), v.ready.promise = function(t) { | ||
723 | if (!r) { | ||
724 | r = v.Deferred(); | ||
725 | if (i.readyState === "complete") setTimeout(v.ready, 1); | ||
726 | else if (i.addEventListener) i.addEventListener("DOMContentLoaded", A, !1), e.addEventListener("load", v.ready, !1); | ||
727 | else { | ||
728 | i.attachEvent("onreadystatechange", A), e.attachEvent("onload", v.ready); | ||
729 | var n = !1; | ||
730 | try { | ||
731 | n = e.frameElement == null && i.documentElement | ||
732 | } catch (s) {} | ||
733 | n && n.doScroll && function o() { | ||
734 | if (!v.isReady) { | ||
735 | try { | ||
736 | n.doScroll("left") | ||
737 | } catch (e) { | ||
738 | return setTimeout(o, 50) | ||
739 | } | ||
740 | v.ready() | ||
741 | } | ||
742 | }() | ||
743 | } | ||
744 | } | ||
745 | return r.promise(t) | ||
746 | }, v.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(e, t) { | ||
747 | O["[object " + t + "]"] = t.toLowerCase() | ||
748 | }), n = v(i); | ||
749 | var M = {}; | ||
750 | v.Callbacks = function(e) { | ||
751 | e = typeof e == "string" ? M[e] || _(e) : v.extend({}, e); | ||
752 | var n, r, i, s, o, u, a = [], | ||
753 | f = !e.once && [], | ||
754 | l = function(t) { | ||
755 | n = e.memory && t, r = !0, u = s || 0, s = 0, o = a.length, i = !0; | ||
756 | for (; a && u < o; u++) | ||
757 | if (a[u].apply(t[0], t[1]) === !1 && e.stopOnFalse) { | ||
758 | n = !1; | ||
759 | break | ||
760 | } | ||
761 | i = !1, a && (f ? f.length && l(f.shift()) : n ? a = [] : c.disable()) | ||
762 | }, | ||
763 | c = { | ||
764 | add: function() { | ||
765 | if (a) { | ||
766 | var t = a.length; | ||
767 | (function r(t) { | ||
768 | v.each(t, function(t, n) { | ||
769 | var i = v.type(n); | ||
770 | i === "function" ? (!e.unique || !c.has(n)) && a.push(n) : n && n.length && i !== "string" && r(n) | ||
771 | }) | ||
772 | })(arguments), i ? o = a.length : n && (s = t, l(n)) | ||
773 | } | ||
774 | return this | ||
775 | }, | ||
776 | remove: function() { | ||
777 | return a && v.each(arguments, function(e, t) { | ||
778 | var n; | ||
779 | while ((n = v.inArray(t, a, n)) > -1) a.splice(n, 1), i && (n <= o && o--, n <= u && u--) | ||
780 | }), this | ||
781 | }, | ||
782 | has: function(e) { | ||
783 | return v.inArray(e, a) > -1 | ||
784 | }, | ||
785 | empty: function() { | ||
786 | return a = [], this | ||
787 | }, | ||
788 | disable: function() { | ||
789 | return a = f = n = t, this | ||
790 | }, | ||
791 | disabled: function() { | ||
792 | return !a | ||
793 | }, | ||
794 | lock: function() { | ||
795 | return f = t, n || c.disable(), this | ||
796 | }, | ||
797 | locked: function() { | ||
798 | return !f | ||
799 | }, | ||
800 | fireWith: function(e, t) { | ||
801 | return t = t || [], t = [e, t.slice ? t.slice() : t], a && (!r || f) && (i ? f.push(t) : l(t)), this | ||
802 | }, | ||
803 | fire: function() { | ||
804 | return c.fireWith(this, arguments), this | ||
805 | }, | ||
806 | fired: function() { | ||
807 | return !!r | ||
808 | } | ||
809 | }; | ||
810 | return c | ||
811 | }, v.extend({ | ||
812 | Deferred: function(e) { | ||
813 | var t = [ | ||
814 | ["resolve", "done", v.Callbacks("once memory"), "resolved"], | ||
815 | ["reject", "fail", v.Callbacks("once memory"), "rejected"], | ||
816 | ["notify", "progress", v.Callbacks("memory")] | ||
817 | ], | ||
818 | n = "pending", | ||
819 | r = { | ||
820 | state: function() { | ||
821 | return n | ||
822 | }, | ||
823 | always: function() { | ||
824 | return i.done(arguments).fail(arguments), this | ||
825 | }, | ||
826 | then: function() { | ||
827 | var e = arguments; | ||
828 | return v.Deferred(function(n) { | ||
829 | v.each(t, function(t, r) { | ||
830 | var s = r[0], | ||
831 | o = e[t]; | ||
832 | i[r[1]](v.isFunction(o) ? function() { | ||
833 | var e = o.apply(this, arguments); | ||
834 | e && v.isFunction(e.promise) ? e.promise().done(n.resolve).fail(n.reject).progress(n.notify) : n[s + "With"](this === i ? n : this, [e]) | ||
835 | } : n[s]) | ||
836 | }), e = null | ||
837 | }).promise() | ||
838 | }, | ||
839 | promise: function(e) { | ||
840 | return e != null ? v.extend(e, r) : r | ||
841 | } | ||
842 | }, | ||
843 | i = {}; | ||
844 | return r.pipe = r.then, v.each(t, function(e, s) { | ||
845 | var o = s[2], | ||
846 | u = s[3]; | ||
847 | r[s[1]] = o.add, u && o.add(function() { | ||
848 | n = u | ||
849 | }, t[e ^ 1][2].disable, t[2][2].lock), i[s[0]] = o.fire, i[s[0] + "With"] = o.fireWith | ||
850 | }), r.promise(i), e && e.call(i, i), i | ||
851 | }, | ||
852 | when: function(e) { | ||
853 | var t = 0, | ||
854 | n = l.call(arguments), | ||
855 | r = n.length, | ||
856 | i = r !== 1 || e && v.isFunction(e.promise) ? r : 0, | ||
857 | s = i === 1 ? e : v.Deferred(), | ||
858 | o = function(e, t, n) { | ||
859 | return function(r) { | ||
860 | t[e] = this, n[e] = arguments.length > 1 ? l.call(arguments) : r, n === u ? s.notifyWith(t, n) : --i || s.resolveWith(t, n) | ||
861 | } | ||
862 | }, | ||
863 | u, a, f; | ||
864 | if (r > 1) { | ||
865 | u = new Array(r), a = new Array(r), f = new Array(r); | ||
866 | for (; t < r; t++) n[t] && v.isFunction(n[t].promise) ? n[t].promise().done(o(t, f, n)).fail(s.reject).progress(o(t, a, u)) : --i | ||
867 | } | ||
868 | return i || s.resolveWith(f, n), s.promise() | ||
869 | } | ||
870 | }), v.support = function() { | ||
871 | var t, n, r, s, o, u, a, f, l, c, h, p = i.createElement("div"); | ||
872 | p.setAttribute("className", "t"), p.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", n = p.getElementsByTagName("*"), r = p.getElementsByTagName("a")[0]; | ||
873 | if (!n || !r || !n.length) return {}; | ||
874 | s = i.createElement("select"), o = s.appendChild(i.createElement("option")), u = p.getElementsByTagName("input")[0], r.style.cssText = "top:1px;float:left;opacity:.5", t = { | ||
875 | leadingWhitespace: p.firstChild.nodeType === 3, | ||
876 | tbody: !p.getElementsByTagName("tbody").length, | ||
877 | htmlSerialize: !!p.getElementsByTagName("link").length, | ||
878 | style: /top/.test(r.getAttribute("style")), | ||
879 | hrefNormalized: r.getAttribute("href") === "/a", | ||
880 | opacity: /^0.5/.test(r.style.opacity), | ||
881 | cssFloat: !!r.style.cssFloat, | ||
882 | checkOn: u.value === "on", | ||
883 | optSelected: o.selected, | ||
884 | getSetAttribute: p.className !== "t", | ||
885 | enctype: !!i.createElement("form").enctype, | ||
886 | html5Clone: i.createElement("nav").cloneNode(!0).outerHTML !== "<:nav></:nav>", | ||
887 | boxModel: i.compatMode === "CSS1Compat", | ||
888 | submitBubbles: !0, | ||
889 | changeBubbles: !0, | ||
890 | focusinBubbles: !1, | ||
891 | deleteExpando: !0, | ||
892 | noCloneEvent: !0, | ||
893 | inlineBlockNeedsLayout: !1, | ||
894 | shrinkWrapBlocks: !1, | ||
895 | reliableMarginRight: !0, | ||
896 | boxSizingReliable: !0, | ||
897 | pixelPosition: !1 | ||
898 | }, u.checked = !0, t.noCloneChecked = u.cloneNode(!0).checked, s.disabled = !0, t.optDisabled = !o.disabled; | ||
899 | try { | ||
900 | delete p.test | ||
901 | } catch (d) { | ||
902 | t.deleteExpando = !1 | ||
903 | }!p.addEventListener && p.attachEvent && p.fireEvent && (p.attachEvent("onclick", h = function() { | ||
904 | t.noCloneEvent = !1 | ||
905 | }), p.cloneNode(!0).fireEvent("onclick"), p.detachEvent("onclick", h)), u = i.createElement("input"), u.value = "t", u.setAttribute("type", "radio"), t.radioValue = u.value === "t", u.setAttribute("checked", "checked"), u.setAttribute("name", "t"), p.appendChild(u), a = i.createDocumentFragment(), a.appendChild(p.lastChild), t.checkClone = a.cloneNode(!0).cloneNode(!0).lastChild.checked, t.appendChecked = u.checked, a.removeChild(u), a.appendChild(p); | ||
906 | if (p.attachEvent) | ||
907 | for (l in { | ||
908 | submit: !0, | ||
909 | change: !0, | ||
910 | focusin: !0 | ||
911 | }) f = "on" + l, c = f in p, c || (p.setAttribute(f, "return;"), c = typeof p[f] == "function"), t[l + "Bubbles"] = c; | ||
912 | return v(function() { | ||
913 | var n, r, s, o, u = "padding:0;margin:0;border:0;display:block;overflow:hidden;", | ||
914 | a = i.getElementsByTagName("body")[0]; | ||
915 | if (!a) return; | ||
916 | n = i.createElement("div"), n.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px", a.insertBefore(n, a.firstChild), r = i.createElement("div"), n.appendChild(r), r.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", s = r.getElementsByTagName("td"), s[0].style.cssText = "padding:0;margin:0;border:0;display:none", c = s[0].offsetHeight === 0, s[0].style.display = "", s[1].style.display = "none", t.reliableHiddenOffsets = c && s[0].offsetHeight === 0, r.innerHTML = "", r.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;", t.boxSizing = r.offsetWidth === 4, t.doesNotIncludeMarginInBodyOffset = a.offsetTop !== 1, e.getComputedStyle && (t.pixelPosition = (e.getComputedStyle(r, null) || {}).top !== "1%", t.boxSizingReliable = (e.getComputedStyle(r, null) || { | ||
917 | width: "4px" | ||
918 | }).width === "4px", o = i.createElement("div"), o.style.cssText = r.style.cssText = u, o.style.marginRight = o.style.width = "0", r.style.width = "1px", r.appendChild(o), t.reliableMarginRight = !parseFloat((e.getComputedStyle(o, null) || {}).marginRight)), typeof r.style.zoom != "undefined" && (r.innerHTML = "", r.style.cssText = u + "width:1px;padding:1px;display:inline;zoom:1", t.inlineBlockNeedsLayout = r.offsetWidth === 3, r.style.display = "block", r.style.overflow = "visible", r.innerHTML = "<div></div>", r.firstChild.style.width = "5px", t.shrinkWrapBlocks = r.offsetWidth !== 3, n.style.zoom = 1), a.removeChild(n), n = r = s = o = null | ||
919 | }), a.removeChild(p), n = r = s = o = u = a = p = null, t | ||
920 | }(); | ||
921 | var D = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/, | ||
922 | P = /([A-Z])/g; | ||
923 | v.extend({ | ||
924 | cache: {}, | ||
925 | deletedIds: [], | ||
926 | uuid: 0, | ||
927 | expando: "jQuery" + (v.fn.jquery + Math.random()).replace(/\D/g, ""), | ||
928 | noData: { | ||
929 | embed: !0, | ||
930 | object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", | ||
931 | applet: !0 | ||
932 | }, | ||
933 | hasData: function(e) { | ||
934 | return e = e.nodeType ? v.cache[e[v.expando]] : e[v.expando], !!e && !B(e) | ||
935 | }, | ||
936 | data: function(e, n, r, i) { | ||
937 | if (!v.acceptData(e)) return; | ||
938 | var s, o, u = v.expando, | ||
939 | a = typeof n == "string", | ||
940 | f = e.nodeType, | ||
941 | l = f ? v.cache : e, | ||
942 | c = f ? e[u] : e[u] && u; | ||
943 | if ((!c || !l[c] || !i && !l[c].data) && a && r === t) return; | ||
944 | c || (f ? e[u] = c = v.deletedIds.pop() || v.guid++ : c = u), l[c] || (l[c] = {}, f || (l[c].toJSON = v.noop)); | ||
945 | if (typeof n == "object" || typeof n == "function") i ? l[c] = v.extend(l[c], n) : l[c].data = v.extend(l[c].data, n); | ||
946 | return s = l[c], i || (s.data || (s.data = {}), s = s.data), r !== t && (s[v.camelCase(n)] = r), a ? (o = s[n], o == null && (o = s[v.camelCase(n)])) : o = s, o | ||
947 | }, | ||
948 | removeData: function(e, t, n) { | ||
949 | if (!v.acceptData(e)) return; | ||
950 | var r, i, s, o = e.nodeType, | ||
951 | u = o ? v.cache : e, | ||
952 | a = o ? e[v.expando] : v.expando; | ||
953 | if (!u[a]) return; | ||
954 | if (t) { | ||
955 | r = n ? u[a] : u[a].data; | ||
956 | if (r) { | ||
957 | v.isArray(t) || (t in r ? t = [t] : (t = v.camelCase(t), t in r ? t = [t] : t = t.split(" "))); | ||
958 | for (i = 0, s = t.length; i < s; i++) delete r[t[i]]; | ||
959 | if (!(n ? B : v.isEmptyObject)(r)) return | ||
960 | } | ||
961 | } | ||
962 | if (!n) { | ||
963 | delete u[a].data; | ||
964 | if (!B(u[a])) return | ||
965 | } | ||
966 | o ? v.cleanData([e], !0) : v.support.deleteExpando || u != u.window ? delete u[a] : u[a] = null | ||
967 | }, | ||
968 | _data: function(e, t, n) { | ||
969 | return v.data(e, t, n, !0) | ||
970 | }, | ||
971 | acceptData: function(e) { | ||
972 | var t = e.nodeName && v.noData[e.nodeName.toLowerCase()]; | ||
973 | return !t || t !== !0 && e.getAttribute("classid") === t | ||
974 | } | ||
975 | }), v.fn.extend({ | ||
976 | data: function(e, n) { | ||
977 | var r, i, s, o, u, a = this[0], | ||
978 | f = 0, | ||
979 | l = null; | ||
980 | if (e === t) { | ||
981 | if (this.length) { | ||
982 | l = v.data(a); | ||
983 | if (a.nodeType === 1 && !v._data(a, "parsedAttrs")) { | ||
984 | s = a.attributes; | ||
985 | for (u = s.length; f < u; f++) o = s[f].name, o.indexOf("data-") || (o = v.camelCase(o.substring(5)), H(a, o, l[o])); | ||
986 | v._data(a, "parsedAttrs", !0) | ||
987 | } | ||
988 | } | ||
989 | return l | ||
990 | } | ||
991 | return typeof e == "object" ? this.each(function() { | ||
992 | v.data(this, e) | ||
993 | }) : (r = e.split(".", 2), r[1] = r[1] ? "." + r[1] : "", i = r[1] + "!", v.access(this, function(n) { | ||
994 | if (n === t) return l = this.triggerHandler("getData" + i, [r[0]]), l === t && a && (l = v.data(a, e), l = H(a, e, l)), l === t && r[1] ? this.data(r[0]) : l; | ||
995 | r[1] = n, this.each(function() { | ||
996 | var t = v(this); | ||
997 | t.triggerHandler("setData" + i, r), v.data(this, e, n), t.triggerHandler("changeData" + i, r) | ||
998 | }) | ||
999 | }, null, n, arguments.length > 1, null, !1)) | ||
1000 | }, | ||
1001 | removeData: function(e) { | ||
1002 | return this.each(function() { | ||
1003 | v.removeData(this, e) | ||
1004 | }) | ||
1005 | } | ||
1006 | }), v.extend({ | ||
1007 | queue: function(e, t, n) { | ||
1008 | var r; | ||
1009 | if (e) return t = (t || "fx") + "queue", r = v._data(e, t), n && (!r || v.isArray(n) ? r = v._data(e, t, v.makeArray(n)) : r.push(n)), r || [] | ||
1010 | }, | ||
1011 | dequeue: function(e, t) { | ||
1012 | t = t || "fx"; | ||
1013 | var n = v.queue(e, t), | ||
1014 | r = n.length, | ||
1015 | i = n.shift(), | ||
1016 | s = v._queueHooks(e, t), | ||
1017 | o = function() { | ||
1018 | v.dequeue(e, t) | ||
1019 | }; | ||
1020 | i === "inprogress" && (i = n.shift(), r--), i && (t === "fx" && n.unshift("inprogress"), delete s.stop, i.call(e, o, s)), !r && s && s.empty.fire() | ||
1021 | }, | ||
1022 | _queueHooks: function(e, t) { | ||
1023 | var n = t + "queueHooks"; | ||
1024 | return v._data(e, n) || v._data(e, n, { | ||
1025 | empty: v.Callbacks("once memory").add(function() { | ||
1026 | v.removeData(e, t + "queue", !0), v.removeData(e, n, !0) | ||
1027 | }) | ||
1028 | }) | ||
1029 | } | ||
1030 | }), v.fn.extend({ | ||
1031 | queue: function(e, n) { | ||
1032 | var r = 2; | ||
1033 | return typeof e != "string" && (n = e, e = "fx", r--), arguments.length < r ? v.queue(this[0], e) : n === t ? this : this.each(function() { | ||
1034 | var t = v.queue(this, e, n); | ||
1035 | v._queueHooks(this, e), e === "fx" && t[0] !== "inprogress" && v.dequeue(this, e) | ||
1036 | }) | ||
1037 | }, | ||
1038 | dequeue: function(e) { | ||
1039 | return this.each(function() { | ||
1040 | v.dequeue(this, e) | ||
1041 | }) | ||
1042 | }, | ||
1043 | delay: function(e, t) { | ||
1044 | return e = v.fx ? v.fx.speeds[e] || e : e, t = t || "fx", this.queue(t, function(t, n) { | ||
1045 | var r = setTimeout(t, e); | ||
1046 | n.stop = function() { | ||
1047 | clearTimeout(r) | ||
1048 | } | ||
1049 | }) | ||
1050 | }, | ||
1051 | clearQueue: function(e) { | ||
1052 | return this.queue(e || "fx", []) | ||
1053 | }, | ||
1054 | promise: function(e, n) { | ||
1055 | var r, i = 1, | ||
1056 | s = v.Deferred(), | ||
1057 | o = this, | ||
1058 | u = this.length, | ||
1059 | a = function() { | ||
1060 | --i || s.resolveWith(o, [o]) | ||
1061 | }; | ||
1062 | typeof e != "string" && (n = e, e = t), e = e || "fx"; | ||
1063 | while (u--) r = v._data(o[u], e + "queueHooks"), r && r.empty && (i++, r.empty.add(a)); | ||
1064 | return a(), s.promise(n) | ||
1065 | } | ||
1066 | }); | ||
1067 | var j, F, I, q = /[\t\r\n]/g, | ||
1068 | R = /\r/g, | ||
1069 | U = /^(?:button|input)$/i, | ||
1070 | z = /^(?:button|input|object|select|textarea)$/i, | ||
1071 | W = /^a(?:rea|)$/i, | ||
1072 | X = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, | ||
1073 | V = v.support.getSetAttribute; | ||
1074 | v.fn.extend({ | ||
1075 | attr: function(e, t) { | ||
1076 | return v.access(this, v.attr, e, t, arguments.length > 1) | ||
1077 | }, | ||
1078 | removeAttr: function(e) { | ||
1079 | return this.each(function() { | ||
1080 | v.removeAttr(this, e) | ||
1081 | }) | ||
1082 | }, | ||
1083 | prop: function(e, t) { | ||
1084 | return v.access(this, v.prop, e, t, arguments.length > 1) | ||
1085 | }, | ||
1086 | removeProp: function(e) { | ||
1087 | return e = v.propFix[e] || e, this.each(function() { | ||
1088 | try { | ||
1089 | this[e] = t, delete this[e] | ||
1090 | } catch (n) {} | ||
1091 | }) | ||
1092 | }, | ||
1093 | addClass: function(e) { | ||
1094 | var t, n, r, i, s, o, u; | ||
1095 | if (v.isFunction(e)) return this.each(function(t) { | ||
1096 | v(this).addClass(e.call(this, t, this.className)) | ||
1097 | }); | ||
1098 | if (e && typeof e == "string") { | ||
1099 | t = e.split(y); | ||
1100 | for (n = 0, r = this.length; n < r; n++) { | ||
1101 | i = this[n]; | ||
1102 | if (i.nodeType === 1) | ||
1103 | if (!i.className && t.length === 1) i.className = e; | ||
1104 | else { | ||
1105 | s = " " + i.className + " "; | ||
1106 | for (o = 0, u = t.length; o < u; o++) s.indexOf(" " + t[o] + " ") < 0 && (s += t[o] + " "); | ||
1107 | i.className = v.trim(s) | ||
1108 | } | ||
1109 | } | ||
1110 | } | ||
1111 | return this | ||
1112 | }, | ||
1113 | removeClass: function(e) { | ||
1114 | var n, r, i, s, o, u, a; | ||
1115 | if (v.isFunction(e)) return this.each(function(t) { | ||
1116 | v(this).removeClass(e.call(this, t, this.className)) | ||
1117 | }); | ||
1118 | if (e && typeof e == "string" || e === t) { | ||
1119 | n = (e || "").split(y); | ||
1120 | for (u = 0, a = this.length; u < a; u++) { | ||
1121 | i = this[u]; | ||
1122 | if (i.nodeType === 1 && i.className) { | ||
1123 | r = (" " + i.className + " ").replace(q, " "); | ||
1124 | for (s = 0, o = n.length; s < o; s++) | ||
1125 | while (r.indexOf(" " + n[s] + " ") >= 0) r = r.replace(" " + n[s] + " ", " "); | ||
1126 | i.className = e ? v.trim(r) : "" | ||
1127 | } | ||
1128 | } | ||
1129 | } | ||
1130 | return this | ||
1131 | }, | ||
1132 | toggleClass: function(e, t) { | ||
1133 | var n = typeof e, | ||
1134 | r = typeof t == "boolean"; | ||
1135 | return v.isFunction(e) ? this.each(function(n) { | ||
1136 | v(this).toggleClass(e.call(this, n, this.className, t), t) | ||
1137 | }) : this.each(function() { | ||
1138 | if (n === "string") { | ||
1139 | var i, s = 0, | ||
1140 | o = v(this), | ||
1141 | u = t, | ||
1142 | a = e.split(y); | ||
1143 | while (i = a[s++]) u = r ? u : !o.hasClass(i), o[u ? "addClass" : "removeClass"](i) | ||
1144 | } else if (n === "undefined" || n === "boolean") this.className && v._data(this, "__className__", this.className), this.className = this.className || e === !1 ? "" : v._data(this, "__className__") || "" | ||
1145 | }) | ||
1146 | }, | ||
1147 | hasClass: function(e) { | ||
1148 | var t = " " + e + " ", | ||
1149 | n = 0, | ||
1150 | r = this.length; | ||
1151 | for (; n < r; n++) | ||
1152 | if (this[n].nodeType === 1 && (" " + this[n].className + " ").replace(q, " ").indexOf(t) >= 0) return !0; | ||
1153 | return !1 | ||
1154 | }, | ||
1155 | val: function(e) { | ||
1156 | var n, r, i, s = this[0]; | ||
1157 | if (!arguments.length) { | ||
1158 | if (s) return n = v.valHooks[s.type] || v.valHooks[s.nodeName.toLowerCase()], n && "get" in n && (r = n.get(s, "value")) !== t ? r : (r = s.value, typeof r == "string" ? r.replace(R, "") : r == null ? "" : r); | ||
1159 | return | ||
1160 | } | ||
1161 | return i = v.isFunction(e), this.each(function(r) { | ||
1162 | var s, o = v(this); | ||
1163 | if (this.nodeType !== 1) return; | ||
1164 | i ? s = e.call(this, r, o.val()) : s = e, s == null ? s = "" : typeof s == "number" ? s += "" : v.isArray(s) && (s = v.map(s, function(e) { | ||
1165 | return e == null ? "" : e + "" | ||
1166 | })), n = v.valHooks[this.type] || v.valHooks[this.nodeName.toLowerCase()]; | ||
1167 | if (!n || !("set" in n) || n.set(this, s, "value") === t) this.value = s | ||
1168 | }) | ||
1169 | } | ||
1170 | }), v.extend({ | ||
1171 | valHooks: { | ||
1172 | option: { | ||
1173 | get: function(e) { | ||
1174 | var t = e.attributes.value; | ||
1175 | return !t || t.specified ? e.value : e.text | ||
1176 | } | ||
1177 | }, | ||
1178 | select: { | ||
1179 | get: function(e) { | ||
1180 | var t, n, r = e.options, | ||
1181 | i = e.selectedIndex, | ||
1182 | s = e.type === "select-one" || i < 0, | ||
1183 | o = s ? null : [], | ||
1184 | u = s ? i + 1 : r.length, | ||
1185 | a = i < 0 ? u : s ? i : 0; | ||
1186 | for (; a < u; a++) { | ||
1187 | n = r[a]; | ||
1188 | if ((n.selected || a === i) && (v.support.optDisabled ? !n.disabled : n.getAttribute("disabled") === null) && (!n.parentNode.disabled || !v.nodeName(n.parentNode, "optgroup"))) { | ||
1189 | t = v(n).val(); | ||
1190 | if (s) return t; | ||
1191 | o.push(t) | ||
1192 | } | ||
1193 | } | ||
1194 | return o | ||
1195 | }, | ||
1196 | set: function(e, t) { | ||
1197 | var n = v.makeArray(t); | ||
1198 | return v(e).find("option").each(function() { | ||
1199 | this.selected = v.inArray(v(this).val(), n) >= 0 | ||
1200 | }), n.length || (e.selectedIndex = -1), n | ||
1201 | } | ||
1202 | } | ||
1203 | }, | ||
1204 | attrFn: {}, | ||
1205 | attr: function(e, n, r, i) { | ||
1206 | var s, o, u, a = e.nodeType; | ||
1207 | if (!e || a === 3 || a === 8 || a === 2) return; | ||
1208 | if (i && v.isFunction(v.fn[n])) return v(e)[n](r); | ||
1209 | if (typeof e.getAttribute == "undefined") return v.prop(e, n, r); | ||
1210 | u = a !== 1 || !v.isXMLDoc(e), u && (n = n.toLowerCase(), o = v.attrHooks[n] || (X.test(n) ? F : j)); | ||
1211 | if (r !== t) { | ||
1212 | if (r === null) { | ||
1213 | v.removeAttr(e, n); | ||
1214 | return | ||
1215 | } | ||
1216 | return o && "set" in o && u && (s = o.set(e, r, n)) !== t ? s : (e.setAttribute(n, r + ""), r) | ||
1217 | } | ||
1218 | return o && "get" in o && u && (s = o.get(e, n)) !== null ? s : (s = e.getAttribute(n), s === null ? t : s) | ||
1219 | }, | ||
1220 | removeAttr: function(e, t) { | ||
1221 | var n, r, i, s, o = 0; | ||
1222 | if (t && e.nodeType === 1) { | ||
1223 | r = t.split(y); | ||
1224 | for (; o < r.length; o++) i = r[o], i && (n = v.propFix[i] || i, s = X.test(i), s || v.attr(e, i, ""), e.removeAttribute(V ? i : n), s && n in e && (e[n] = !1)) | ||
1225 | } | ||
1226 | }, | ||
1227 | attrHooks: { | ||
1228 | type: { | ||
1229 | set: function(e, t) { | ||
1230 | if (U.test(e.nodeName) && e.parentNode) v.error("type property can't be changed"); | ||
1231 | else if (!v.support.radioValue && t === "radio" && v.nodeName(e, "input")) { | ||
1232 | var n = e.value; | ||
1233 | return e.setAttribute("type", t), n && (e.value = n), t | ||
1234 | } | ||
1235 | } | ||
1236 | }, | ||
1237 | value: { | ||
1238 | get: function(e, t) { | ||
1239 | return j && v.nodeName(e, "button") ? j.get(e, t) : t in e ? e.value : null | ||
1240 | }, | ||
1241 | set: function(e, t, n) { | ||
1242 | if (j && v.nodeName(e, "button")) return j.set(e, t, n); | ||
1243 | e.value = t | ||
1244 | } | ||
1245 | } | ||
1246 | }, | ||
1247 | propFix: { | ||
1248 | tabindex: "tabIndex", | ||
1249 | readonly: "readOnly", | ||
1250 | "for": "htmlFor", | ||
1251 | "class": "className", | ||
1252 | maxlength: "maxLength", | ||
1253 | cellspacing: "cellSpacing", | ||
1254 | cellpadding: "cellPadding", | ||
1255 | rowspan: "rowSpan", | ||
1256 | colspan: "colSpan", | ||
1257 | usemap: "useMap", | ||
1258 | frameborder: "frameBorder", | ||
1259 | contenteditable: "contentEditable" | ||
1260 | }, | ||
1261 | prop: function(e, n, r) { | ||
1262 | var i, s, o, u = e.nodeType; | ||
1263 | if (!e || u === 3 || u === 8 || u === 2) return; | ||
1264 | return o = u !== 1 || !v.isXMLDoc(e), o && (n = v.propFix[n] || n, s = v.propHooks[n]), r !== t ? s && "set" in s && (i = s.set(e, r, n)) !== t ? i : e[n] = r : s && "get" in s && (i = s.get(e, n)) !== null ? i : e[n] | ||
1265 | }, | ||
1266 | propHooks: { | ||
1267 | tabIndex: { | ||
1268 | get: function(e) { | ||
1269 | var n = e.getAttributeNode("tabindex"); | ||
1270 | return n && n.specified ? parseInt(n.value, 10) : z.test(e.nodeName) || W.test(e.nodeName) && e.href ? 0 : t | ||
1271 | } | ||
1272 | } | ||
1273 | } | ||
1274 | }), F = { | ||
1275 | get: function(e, n) { | ||
1276 | var r, i = v.prop(e, n); | ||
1277 | return i === !0 || typeof i != "boolean" && (r = e.getAttributeNode(n)) && r.nodeValue !== !1 ? n.toLowerCase() : t | ||
1278 | }, | ||
1279 | set: function(e, t, n) { | ||
1280 | var r; | ||
1281 | return t === !1 ? v.removeAttr(e, n) : (r = v.propFix[n] || n, r in e && (e[r] = !0), e.setAttribute(n, n.toLowerCase())), n | ||
1282 | } | ||
1283 | }, V || (I = { | ||
1284 | name: !0, | ||
1285 | id: !0, | ||
1286 | coords: !0 | ||
1287 | }, j = v.valHooks.button = { | ||
1288 | get: function(e, n) { | ||
1289 | var r; | ||
1290 | return r = e.getAttributeNode(n), r && (I[n] ? r.value !== "" : r.specified) ? r.value : t | ||
1291 | }, | ||
1292 | set: function(e, t, n) { | ||
1293 | var r = e.getAttributeNode(n); | ||
1294 | return r || (r = i.createAttribute(n), e.setAttributeNode(r)), r.value = t + "" | ||
1295 | } | ||
1296 | }, v.each(["width", "height"], function(e, t) { | ||
1297 | v.attrHooks[t] = v.extend(v.attrHooks[t], { | ||
1298 | set: function(e, n) { | ||
1299 | if (n === "") return e.setAttribute(t, "auto"), n | ||
1300 | } | ||
1301 | }) | ||
1302 | }), v.attrHooks.contenteditable = { | ||
1303 | get: j.get, | ||
1304 | set: function(e, t, n) { | ||
1305 | t === "" && (t = "false"), j.set(e, t, n) | ||
1306 | } | ||
1307 | }), v.support.hrefNormalized || v.each(["href", "src", "width", "height"], function(e, n) { | ||
1308 | v.attrHooks[n] = v.extend(v.attrHooks[n], { | ||
1309 | get: function(e) { | ||
1310 | var r = e.getAttribute(n, 2); | ||
1311 | return r === null ? t : r | ||
1312 | } | ||
1313 | }) | ||
1314 | }), v.support.style || (v.attrHooks.style = { | ||
1315 | get: function(e) { | ||
1316 | return e.style.cssText.toLowerCase() || t | ||
1317 | }, | ||
1318 | set: function(e, t) { | ||
1319 | return e.style.cssText = t + "" | ||
1320 | } | ||
1321 | }), v.support.optSelected || (v.propHooks.selected = v.extend(v.propHooks.selected, { | ||
1322 | get: function(e) { | ||
1323 | var t = e.parentNode; | ||
1324 | return t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex), null | ||
1325 | } | ||
1326 | })), v.support.enctype || (v.propFix.enctype = "encoding"), v.support.checkOn || v.each(["radio", "checkbox"], function() { | ||
1327 | v.valHooks[this] = { | ||
1328 | get: function(e) { | ||
1329 | return e.getAttribute("value") === null ? "on" : e.value | ||
1330 | } | ||
1331 | } | ||
1332 | }), v.each(["radio", "checkbox"], function() { | ||
1333 | v.valHooks[this] = v.extend(v.valHooks[this], { | ||
1334 | set: function(e, t) { | ||
1335 | if (v.isArray(t)) return e.checked = v.inArray(v(e).val(), t) >= 0 | ||
1336 | } | ||
1337 | }) | ||
1338 | }); | ||
1339 | var $ = /^(?:textarea|input|select)$/i, | ||
1340 | J = /^([^\.]*|)(?:\.(.+)|)$/, | ||
1341 | K = /(?:^|\s)hover(\.\S+|)\b/, | ||
1342 | Q = /^key/, | ||
1343 | G = /^(?:mouse|contextmenu)|click/, | ||
1344 | Y = /^(?:focusinfocus|focusoutblur)$/, | ||
1345 | Z = function(e) { | ||
1346 | return v.event.special.hover ? e : e.replace(K, "mouseenter$1 mouseleave$1") | ||
1347 | }; | ||
1348 | v.event = { | ||
1349 | add: function(e, n, r, i, s) { | ||
1350 | var o, u, a, f, l, c, h, p, d, m, g; | ||
1351 | if (e.nodeType === 3 || e.nodeType === 8 || !n || !r || !(o = v._data(e))) return; | ||
1352 | r.handler && (d = r, r = d.handler, s = d.selector), r.guid || (r.guid = v.guid++), a = o.events, a || (o.events = a = {}), u = o.handle, u || (o.handle = u = function(e) { | ||
1353 | return typeof v == "undefined" || !!e && v.event.triggered === e.type ? t : v.event.dispatch.apply(u.elem, arguments) | ||
1354 | }, u.elem = e), n = v.trim(Z(n)).split(" "); | ||
1355 | for (f = 0; f < n.length; f++) { | ||
1356 | l = J.exec(n[f]) || [], c = l[1], h = (l[2] || "").split(".").sort(), g = v.event.special[c] || {}, c = (s ? g.delegateType : g.bindType) || c, g = v.event.special[c] || {}, p = v.extend({ | ||
1357 | type: c, | ||
1358 | origType: l[1], | ||
1359 | data: i, | ||
1360 | handler: r, | ||
1361 | guid: r.guid, | ||
1362 | selector: s, | ||
1363 | needsContext: s && v.expr.match.needsContext.test(s), | ||
1364 | namespace: h.join(".") | ||
1365 | }, d), m = a[c]; | ||
1366 | if (!m) { | ||
1367 | m = a[c] = [], m.delegateCount = 0; | ||
1368 | if (!g.setup || g.setup.call(e, i, h, u) === !1) e.addEventListener ? e.addEventListener(c, u, !1) : e.attachEvent && e.attachEvent("on" + c, u) | ||
1369 | } | ||
1370 | g.add && (g.add.call(e, p), p.handler.guid || (p.handler.guid = r.guid)), s ? m.splice(m.delegateCount++, 0, p) : m.push(p), v.event.global[c] = !0 | ||
1371 | } | ||
1372 | e = null | ||
1373 | }, | ||
1374 | global: {}, | ||
1375 | remove: function(e, t, n, r, i) { | ||
1376 | var s, o, u, a, f, l, c, h, p, d, m, g = v.hasData(e) && v._data(e); | ||
1377 | if (!g || !(h = g.events)) return; | ||
1378 | t = v.trim(Z(t || "")).split(" "); | ||
1379 | for (s = 0; s < t.length; s++) { | ||
1380 | o = J.exec(t[s]) || [], u = a = o[1], f = o[2]; | ||
1381 | if (!u) { | ||
1382 | for (u in h) v.event.remove(e, u + t[s], n, r, !0); | ||
1383 | continue | ||
1384 | } | ||
1385 | p = v.event.special[u] || {}, u = (r ? p.delegateType : p.bindType) || u, d = h[u] || [], l = d.length, f = f ? new RegExp("(^|\\.)" + f.split(".").sort().join("\\.(?:.*\\.|)") + "(\\.|$)") : null; | ||
1386 | for (c = 0; c < d.length; c++) m = d[c], (i || a === m.origType) && (!n || n.guid === m.guid) && (!f || f.test(m.namespace)) && (!r || r === m.selector || r === "**" && m.selector) && (d.splice(c--, 1), m.selector && d.delegateCount--, p.remove && p.remove.call(e, m)); | ||
1387 | d.length === 0 && l !== d.length && ((!p.teardown || p.teardown.call(e, f, g.handle) === !1) && v.removeEvent(e, u, g.handle), delete h[u]) | ||
1388 | } | ||
1389 | v.isEmptyObject(h) && (delete g.handle, v.removeData(e, "events", !0)) | ||
1390 | }, | ||
1391 | customEvent: { | ||
1392 | getData: !0, | ||
1393 | setData: !0, | ||
1394 | changeData: !0 | ||
1395 | }, | ||
1396 | trigger: function(n, r, s, o) { | ||
1397 | if (!s || s.nodeType !== 3 && s.nodeType !== 8) { | ||
1398 | var u, a, f, l, c, h, p, d, m, g, y = n.type || n, | ||
1399 | b = []; | ||
1400 | if (Y.test(y + v.event.triggered)) return; | ||
1401 | y.indexOf("!") >= 0 && (y = y.slice(0, -1), a = !0), y.indexOf(".") >= 0 && (b = y.split("."), y = b.shift(), b.sort()); | ||
1402 | if ((!s || v.event.customEvent[y]) && !v.event.global[y]) return; | ||
1403 | n = typeof n == "object" ? n[v.expando] ? n : new v.Event(y, n) : new v.Event(y), n.type = y, n.isTrigger = !0, n.exclusive = a, n.namespace = b.join("."), n.namespace_re = n.namespace ? new RegExp("(^|\\.)" + b.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, h = y.indexOf(":") < 0 ? "on" + y : ""; | ||
1404 | if (!s) { | ||
1405 | u = v.cache; | ||
1406 | for (f in u) u[f].events && u[f].events[y] && v.event.trigger(n, r, u[f].handle.elem, !0); | ||
1407 | return | ||
1408 | } | ||
1409 | n.result = t, n.target || (n.target = s), r = r != null ? v.makeArray(r) : [], r.unshift(n), p = v.event.special[y] || {}; | ||
1410 | if (p.trigger && p.trigger.apply(s, r) === !1) return; | ||
1411 | m = [ | ||
1412 | [s, p.bindType || y] | ||
1413 | ]; | ||
1414 | if (!o && !p.noBubble && !v.isWindow(s)) { | ||
1415 | g = p.delegateType || y, l = Y.test(g + y) ? s : s.parentNode; | ||
1416 | for (c = s; l; l = l.parentNode) m.push([l, g]), c = l; | ||
1417 | c === (s.ownerDocument || i) && m.push([c.defaultView || c.parentWindow || e, g]) | ||
1418 | } | ||
1419 | for (f = 0; f < m.length && !n.isPropagationStopped(); f++) l = m[f][0], n.type = m[f][1], d = (v._data(l, "events") || {})[n.type] && v._data(l, "handle"), d && d.apply(l, r), d = h && l[h], d && v.acceptData(l) && d.apply && d.apply(l, r) === !1 && n.preventDefault(); | ||
1420 | return n.type = y, !o && !n.isDefaultPrevented() && (!p._default || p._default.apply(s.ownerDocument, r) === !1) && (y !== "click" || !v.nodeName(s, "a")) && v.acceptData(s) && h && s[y] && (y !== "focus" && y !== "blur" || n.target.offsetWidth !== 0) && !v.isWindow(s) && (c = s[h], c && (s[h] = null), v.event.triggered = y, s[y](), v.event.triggered = t, c && (s[h] = c)), n.result | ||
1421 | } | ||
1422 | return | ||
1423 | }, | ||
1424 | dispatch: function(n) { | ||
1425 | n = v.event.fix(n || e.event); | ||
1426 | var r, i, s, o, u, a, f, c, h, p, d = (v._data(this, "events") || {})[n.type] || [], | ||
1427 | m = d.delegateCount, | ||
1428 | g = l.call(arguments), | ||
1429 | y = !n.exclusive && !n.namespace, | ||
1430 | b = v.event.special[n.type] || {}, | ||
1431 | w = []; | ||
1432 | g[0] = n, n.delegateTarget = this; | ||
1433 | if (b.preDispatch && b.preDispatch.call(this, n) === !1) return; | ||
1434 | if (m && (!n.button || n.type !== "click")) | ||
1435 | for (s = n.target; s != this; s = s.parentNode || this) | ||
1436 | if (s.disabled !== !0 || n.type !== "click") { | ||
1437 | u = {}, f = []; | ||
1438 | for (r = 0; r < m; r++) c = d[r], h = c.selector, u[h] === t && (u[h] = c.needsContext ? v(h, this).index(s) >= 0 : v.find(h, this, null, [s]).length), u[h] && f.push(c); | ||
1439 | f.length && w.push({ | ||
1440 | elem: s, | ||
1441 | matches: f | ||
1442 | }) | ||
1443 | } | ||
1444 | d.length > m && w.push({ | ||
1445 | elem: this, | ||
1446 | matches: d.slice(m) | ||
1447 | }); | ||
1448 | for (r = 0; r < w.length && !n.isPropagationStopped(); r++) { | ||
1449 | a = w[r], n.currentTarget = a.elem; | ||
1450 | for (i = 0; i < a.matches.length && !n.isImmediatePropagationStopped(); i++) { | ||
1451 | c = a.matches[i]; | ||
1452 | if (y || !n.namespace && !c.namespace || n.namespace_re && n.namespace_re.test(c.namespace)) n.data = c.data, n.handleObj = c, o = ((v.event.special[c.origType] || {}).handle || c.handler).apply(a.elem, g), o !== t && (n.result = o, o === !1 && (n.preventDefault(), n.stopPropagation())) | ||
1453 | } | ||
1454 | } | ||
1455 | return b.postDispatch && b.postDispatch.call(this, n), n.result | ||
1456 | }, | ||
1457 | props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), | ||
1458 | fixHooks: {}, | ||
1459 | keyHooks: { | ||
1460 | props: "char charCode key keyCode".split(" "), | ||
1461 | filter: function(e, t) { | ||
1462 | return e.which == null && (e.which = t.charCode != null ? t.charCode : t.keyCode), e | ||
1463 | } | ||
1464 | }, | ||
1465 | mouseHooks: { | ||
1466 | props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "), | ||
1467 | filter: function(e, n) { | ||
1468 | var r, s, o, u = n.button, | ||
1469 | a = n.fromElement; | ||
1470 | return e.pageX == null && n.clientX != null && (r = e.target.ownerDocument || i, s = r.documentElement, o = r.body, e.pageX = n.clientX + (s && s.scrollLeft || o && o.scrollLeft || 0) - (s && s.clientLeft || o && o.clientLeft || 0), e.pageY = n.clientY + (s && s.scrollTop || o && o.scrollTop || 0) - (s && s.clientTop || o && o.clientTop || 0)), !e.relatedTarget && a && (e.relatedTarget = a === e.target ? n.toElement : a), !e.which && u !== t && (e.which = u & 1 ? 1 : u & 2 ? 3 : u & 4 ? 2 : 0), e | ||
1471 | } | ||
1472 | }, | ||
1473 | fix: function(e) { | ||
1474 | if (e[v.expando]) return e; | ||
1475 | var t, n, r = e, | ||
1476 | s = v.event.fixHooks[e.type] || {}, | ||
1477 | o = s.props ? this.props.concat(s.props) : this.props; | ||
1478 | e = v.Event(r); | ||
1479 | for (t = o.length; t;) n = o[--t], e[n] = r[n]; | ||
1480 | return e.target || (e.target = r.srcElement || i), e.target.nodeType === 3 && (e.target = e.target.parentNode), e.metaKey = !!e.metaKey, s.filter ? s.filter(e, r) : e | ||
1481 | }, | ||
1482 | special: { | ||
1483 | load: { | ||
1484 | noBubble: !0 | ||
1485 | }, | ||
1486 | focus: { | ||
1487 | delegateType: "focusin" | ||
1488 | }, | ||
1489 | blur: { | ||
1490 | delegateType: "focusout" | ||
1491 | }, | ||
1492 | beforeunload: { | ||
1493 | setup: function(e, t, n) { | ||
1494 | v.isWindow(this) && (this.onbeforeunload = n) | ||
1495 | }, | ||
1496 | teardown: function(e, t) { | ||
1497 | this.onbeforeunload === t && (this.onbeforeunload = null) | ||
1498 | } | ||
1499 | } | ||
1500 | }, | ||
1501 | simulate: function(e, t, n, r) { | ||
1502 | var i = v.extend(new v.Event, n, { | ||
1503 | type: e, | ||
1504 | isSimulated: !0, | ||
1505 | originalEvent: {} | ||
1506 | }); | ||
1507 | r ? v.event.trigger(i, null, t) : v.event.dispatch.call(t, i), i.isDefaultPrevented() && n.preventDefault() | ||
1508 | } | ||
1509 | }, v.event.handle = v.event.dispatch, v.removeEvent = i.removeEventListener ? function(e, t, n) { | ||
1510 | e.removeEventListener && e.removeEventListener(t, n, !1) | ||
1511 | } : function(e, t, n) { | ||
1512 | var r = "on" + t; | ||
1513 | e.detachEvent && (typeof e[r] == "undefined" && (e[r] = null), e.detachEvent(r, n)) | ||
1514 | }, v.Event = function(e, t) { | ||
1515 | if (!(this instanceof v.Event)) return new v.Event(e, t); | ||
1516 | e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || e.returnValue === !1 || e.getPreventDefault && e.getPreventDefault() ? tt : et) : this.type = e, t && v.extend(this, t), this.timeStamp = e && e.timeStamp || v.now(), this[v.expando] = !0 | ||
1517 | }, v.Event.prototype = { | ||
1518 | preventDefault: function() { | ||
1519 | this.isDefaultPrevented = tt; | ||
1520 | var e = this.originalEvent; | ||
1521 | if (!e) return; | ||
1522 | e.preventDefault ? e.preventDefault() : e.returnValue = !1 | ||
1523 | }, | ||
1524 | stopPropagation: function() { | ||
1525 | this.isPropagationStopped = tt; | ||
1526 | var e = this.originalEvent; | ||
1527 | if (!e) return; | ||
1528 | e.stopPropagation && e.stopPropagation(), e.cancelBubble = !0 | ||
1529 | }, | ||
1530 | stopImmediatePropagation: function() { | ||
1531 | this.isImmediatePropagationStopped = tt, this.stopPropagation() | ||
1532 | }, | ||
1533 | isDefaultPrevented: et, | ||
1534 | isPropagationStopped: et, | ||
1535 | isImmediatePropagationStopped: et | ||
1536 | }, v.each({ | ||
1537 | mouseenter: "mouseover", | ||
1538 | mouseleave: "mouseout" | ||
1539 | }, function(e, t) { | ||
1540 | v.event.special[e] = { | ||
1541 | delegateType: t, | ||
1542 | bindType: t, | ||
1543 | handle: function(e) { | ||
1544 | var n, r = this, | ||
1545 | i = e.relatedTarget, | ||
1546 | s = e.handleObj, | ||
1547 | o = s.selector; | ||
1548 | if (!i || i !== r && !v.contains(r, i)) e.type = s.origType, n = s.handler.apply(this, arguments), e.type = t; | ||
1549 | return n | ||
1550 | } | ||
1551 | } | ||
1552 | }), v.support.submitBubbles || (v.event.special.submit = { | ||
1553 | setup: function() { | ||
1554 | if (v.nodeName(this, "form")) return !1; | ||
1555 | v.event.add(this, "click._submit keypress._submit", function(e) { | ||
1556 | var n = e.target, | ||
1557 | r = v.nodeName(n, "input") || v.nodeName(n, "button") ? n.form : t; | ||
1558 | r && !v._data(r, "_submit_attached") && (v.event.add(r, "submit._submit", function(e) { | ||
1559 | e._submit_bubble = !0 | ||
1560 | }), v._data(r, "_submit_attached", !0)) | ||
1561 | }) | ||
1562 | }, | ||
1563 | postDispatch: function(e) { | ||
1564 | e._submit_bubble && (delete e._submit_bubble, this.parentNode && !e.isTrigger && v.event.simulate("submit", this.parentNode, e, !0)) | ||
1565 | }, | ||
1566 | teardown: function() { | ||
1567 | if (v.nodeName(this, "form")) return !1; | ||
1568 | v.event.remove(this, "._submit") | ||
1569 | } | ||
1570 | }), v.support.changeBubbles || (v.event.special.change = { | ||
1571 | setup: function() { | ||
1572 | if ($.test(this.nodeName)) { | ||
1573 | if (this.type === "checkbox" || this.type === "radio") v.event.add(this, "propertychange._change", function(e) { | ||
1574 | e.originalEvent.propertyName === "checked" && (this._just_changed = !0) | ||
1575 | }), v.event.add(this, "click._change", function(e) { | ||
1576 | this._just_changed && !e.isTrigger && (this._just_changed = !1), v.event.simulate("change", this, e, !0) | ||
1577 | }); | ||
1578 | return !1 | ||
1579 | } | ||
1580 | v.event.add(this, "beforeactivate._change", function(e) { | ||
1581 | var t = e.target; | ||
1582 | $.test(t.nodeName) && !v._data(t, "_change_attached") && (v.event.add(t, "change._change", function(e) { | ||
1583 | this.parentNode && !e.isSimulated && !e.isTrigger && v.event.simulate("change", this.parentNode, e, !0) | ||
1584 | }), v._data(t, "_change_attached", !0)) | ||
1585 | }) | ||
1586 | }, | ||
1587 | handle: function(e) { | ||
1588 | var t = e.target; | ||
1589 | if (this !== t || e.isSimulated || e.isTrigger || t.type !== "radio" && t.type !== "checkbox") return e.handleObj.handler.apply(this, arguments) | ||
1590 | }, | ||
1591 | teardown: function() { | ||
1592 | return v.event.remove(this, "._change"), !$.test(this.nodeName) | ||
1593 | } | ||
1594 | }), v.support.focusinBubbles || v.each({ | ||
1595 | focus: "focusin", | ||
1596 | blur: "focusout" | ||
1597 | }, function(e, t) { | ||
1598 | var n = 0, | ||
1599 | r = function(e) { | ||
1600 | v.event.simulate(t, e.target, v.event.fix(e), !0) | ||
1601 | }; | ||
1602 | v.event.special[t] = { | ||
1603 | setup: function() { | ||
1604 | n++ === 0 && i.addEventListener(e, r, !0) | ||
1605 | }, | ||
1606 | teardown: function() { | ||
1607 | --n === 0 && i.removeEventListener(e, r, !0) | ||
1608 | } | ||
1609 | } | ||
1610 | }), v.fn.extend({ | ||
1611 | on: function(e, n, r, i, s) { | ||
1612 | var o, u; | ||
1613 | if (typeof e == "object") { | ||
1614 | typeof n != "string" && (r = r || n, n = t); | ||
1615 | for (u in e) this.on(u, n, r, e[u], s); | ||
1616 | return this | ||
1617 | } | ||
1618 | r == null && i == null ? (i = n, r = n = t) : i == null && (typeof n == "string" ? (i = r, r = t) : (i = r, r = n, n = t)); | ||
1619 | if (i === !1) i = et; | ||
1620 | else if (!i) return this; | ||
1621 | return s === 1 && (o = i, i = function(e) { | ||
1622 | return v().off(e), o.apply(this, arguments) | ||
1623 | }, i.guid = o.guid || (o.guid = v.guid++)), this.each(function() { | ||
1624 | v.event.add(this, e, i, r, n) | ||
1625 | }) | ||
1626 | }, | ||
1627 | one: function(e, t, n, r) { | ||
1628 | return this.on(e, t, n, r, 1) | ||
1629 | }, | ||
1630 | off: function(e, n, r) { | ||
1631 | var i, s; | ||
1632 | if (e && e.preventDefault && e.handleObj) return i = e.handleObj, v(e.delegateTarget).off(i.namespace ? i.origType + "." + i.namespace : i.origType, i.selector, i.handler), this; | ||
1633 | if (typeof e == "object") { | ||
1634 | for (s in e) this.off(s, n, e[s]); | ||
1635 | return this | ||
1636 | } | ||
1637 | if (n === !1 || typeof n == "function") r = n, n = t; | ||
1638 | return r === !1 && (r = et), this.each(function() { | ||
1639 | v.event.remove(this, e, r, n) | ||
1640 | }) | ||
1641 | }, | ||
1642 | bind: function(e, t, n) { | ||
1643 | return this.on(e, null, t, n) | ||
1644 | }, | ||
1645 | unbind: function(e, t) { | ||
1646 | return this.off(e, null, t) | ||
1647 | }, | ||
1648 | live: function(e, t, n) { | ||
1649 | return v(this.context).on(e, this.selector, t, n), this | ||
1650 | }, | ||
1651 | die: function(e, t) { | ||
1652 | return v(this.context).off(e, this.selector || "**", t), this | ||
1653 | }, | ||
1654 | delegate: function(e, t, n, r) { | ||
1655 | return this.on(t, e, n, r) | ||
1656 | }, | ||
1657 | undelegate: function(e, t, n) { | ||
1658 | return arguments.length === 1 ? this.off(e, "**") : this.off(t, e || "**", n) | ||
1659 | }, | ||
1660 | trigger: function(e, t) { | ||
1661 | return this.each(function() { | ||
1662 | v.event.trigger(e, t, this) | ||
1663 | }) | ||
1664 | }, | ||
1665 | triggerHandler: function(e, t) { | ||
1666 | if (this[0]) return v.event.trigger(e, t, this[0], !0) | ||
1667 | }, | ||
1668 | toggle: function(e) { | ||
1669 | var t = arguments, | ||
1670 | n = e.guid || v.guid++, | ||
1671 | r = 0, | ||
1672 | i = function(n) { | ||
1673 | var i = (v._data(this, "lastToggle" + e.guid) || 0) % r; | ||
1674 | return v._data(this, "lastToggle" + e.guid, i + 1), n.preventDefault(), t[i].apply(this, arguments) || !1 | ||
1675 | }; | ||
1676 | i.guid = n; | ||
1677 | while (r < t.length) t[r++].guid = n; | ||
1678 | return this.click(i) | ||
1679 | }, | ||
1680 | hover: function(e, t) { | ||
1681 | return this.mouseenter(e).mouseleave(t || e) | ||
1682 | } | ||
1683 | }), v.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function(e, t) { | ||
1684 | v.fn[t] = function(e, n) { | ||
1685 | return n == null && (n = e, e = null), arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t) | ||
1686 | }, Q.test(t) && (v.event.fixHooks[t] = v.event.keyHooks), G.test(t) && (v.event.fixHooks[t] = v.event.mouseHooks) | ||
1687 | }), | ||
1688 | function(e, t) { | ||
1689 | function nt(e, t, n, r) { | ||
1690 | n = n || [], t = t || g; | ||
1691 | var i, s, a, f, l = t.nodeType; | ||
1692 | if (!e || typeof e != "string") return n; | ||
1693 | if (l !== 1 && l !== 9) return []; | ||
1694 | a = o(t); | ||
1695 | if (!a && !r) | ||
1696 | if (i = R.exec(e)) | ||
1697 | if (f = i[1]) { | ||
1698 | if (l === 9) { | ||
1699 | s = t.getElementById(f); | ||
1700 | if (!s || !s.parentNode) return n; | ||
1701 | if (s.id === f) return n.push(s), n | ||
1702 | } else if (t.ownerDocument && (s = t.ownerDocument.getElementById(f)) && u(t, s) && s.id === f) return n.push(s), n | ||
1703 | } else { | ||
1704 | if (i[2]) return S.apply(n, x.call(t.getElementsByTagName(e), 0)), n; | ||
1705 | if ((f = i[3]) && Z && t.getElementsByClassName) return S.apply(n, x.call(t.getElementsByClassName(f), 0)), n | ||
1706 | } | ||
1707 | return vt(e.replace(j, "$1"), t, n, r, a) | ||
1708 | } | ||
1709 | |||
1710 | function rt(e) { | ||
1711 | return function(t) { | ||
1712 | var n = t.nodeName.toLowerCase(); | ||
1713 | return n === "input" && t.type === e | ||
1714 | } | ||
1715 | } | ||
1716 | |||
1717 | function it(e) { | ||
1718 | return function(t) { | ||
1719 | var n = t.nodeName.toLowerCase(); | ||
1720 | return (n === "input" || n === "button") && t.type === e | ||
1721 | } | ||
1722 | } | ||
1723 | |||
1724 | function st(e) { | ||
1725 | return N(function(t) { | ||
1726 | return t = +t, N(function(n, r) { | ||
1727 | var i, s = e([], n.length, t), | ||
1728 | o = s.length; | ||
1729 | while (o--) n[i = s[o]] && (n[i] = !(r[i] = n[i])) | ||
1730 | }) | ||
1731 | }) | ||
1732 | } | ||
1733 | |||
1734 | function ot(e, t, n) { | ||
1735 | if (e === t) return n; | ||
1736 | var r = e.nextSibling; | ||
1737 | while (r) { | ||
1738 | if (r === t) return -1; | ||
1739 | r = r.nextSibling | ||
1740 | } | ||
1741 | return 1 | ||
1742 | } | ||
1743 | |||
1744 | function ut(e, t) { | ||
1745 | var n, r, s, o, u, a, f, l = L[d][e + " "]; | ||
1746 | if (l) return t ? 0 : l.slice(0); | ||
1747 | u = e, a = [], f = i.preFilter; | ||
1748 | while (u) { | ||
1749 | if (!n || (r = F.exec(u))) r && (u = u.slice(r[0].length) || u), a.push(s = []); | ||
1750 | n = !1; | ||
1751 | if (r = I.exec(u)) s.push(n = new m(r.shift())), u = u.slice(n.length), n.type = r[0].replace(j, " "); | ||
1752 | for (o in i.filter)(r = J[o].exec(u)) && (!f[o] || (r = f[o](r))) && (s.push(n = new m(r.shift())), u = u.slice(n.length), n.type = o, n.matches = r); | ||
1753 | if (!n) break | ||
1754 | } | ||
1755 | return t ? u.length : u ? nt.error(e) : L(e, a).slice(0) | ||
1756 | } | ||
1757 | |||
1758 | function at(e, t, r) { | ||
1759 | var i = t.dir, | ||
1760 | s = r && t.dir === "parentNode", | ||
1761 | o = w++; | ||
1762 | return t.first ? function(t, n, r) { | ||
1763 | while (t = t[i]) | ||
1764 | if (s || t.nodeType === 1) return e(t, n, r) | ||
1765 | } : function(t, r, u) { | ||
1766 | if (!u) { | ||
1767 | var a, f = b + " " + o + " ", | ||
1768 | l = f + n; | ||
1769 | while (t = t[i]) | ||
1770 | if (s || t.nodeType === 1) { | ||
1771 | if ((a = t[d]) === l) return t.sizset; | ||
1772 | if (typeof a == "string" && a.indexOf(f) === 0) { | ||
1773 | if (t.sizset) return t | ||
1774 | } else { | ||
1775 | t[d] = l; | ||
1776 | if (e(t, r, u)) return t.sizset = !0, t; | ||
1777 | t.sizset = !1 | ||
1778 | } | ||
1779 | } | ||
1780 | } else | ||
1781 | while (t = t[i]) | ||
1782 | if (s || t.nodeType === 1) | ||
1783 | if (e(t, r, u)) return t | ||
1784 | } | ||
1785 | } | ||
1786 | |||
1787 | function ft(e) { | ||
1788 | return e.length > 1 ? function(t, n, r) { | ||
1789 | var i = e.length; | ||
1790 | while (i--) | ||
1791 | if (!e[i](t, n, r)) return !1; | ||
1792 | return !0 | ||
1793 | } : e[0] | ||
1794 | } | ||
1795 | |||
1796 | function lt(e, t, n, r, i) { | ||
1797 | var s, o = [], | ||
1798 | u = 0, | ||
1799 | a = e.length, | ||
1800 | f = t != null; | ||
1801 | for (; u < a; u++) | ||
1802 | if (s = e[u]) | ||
1803 | if (!n || n(s, r, i)) o.push(s), f && t.push(u); | ||
1804 | return o | ||
1805 | } | ||
1806 | |||
1807 | function ct(e, t, n, r, i, s) { | ||
1808 | return r && !r[d] && (r = ct(r)), i && !i[d] && (i = ct(i, s)), N(function(s, o, u, a) { | ||
1809 | var f, l, c, h = [], | ||
1810 | p = [], | ||
1811 | d = o.length, | ||
1812 | v = s || dt(t || "*", u.nodeType ? [u] : u, []), | ||
1813 | m = e && (s || !t) ? lt(v, h, e, u, a) : v, | ||
1814 | g = n ? i || (s ? e : d || r) ? [] : o : m; | ||
1815 | n && n(m, g, u, a); | ||
1816 | if (r) { | ||
1817 | f = lt(g, p), r(f, [], u, a), l = f.length; | ||
1818 | while (l--) | ||
1819 | if (c = f[l]) g[p[l]] = !(m[p[l]] = c) | ||
1820 | } | ||
1821 | if (s) { | ||
1822 | if (i || e) { | ||
1823 | if (i) { | ||
1824 | f = [], l = g.length; | ||
1825 | while (l--)(c = g[l]) && f.push(m[l] = c); | ||
1826 | i(null, g = [], f, a) | ||
1827 | } | ||
1828 | l = g.length; | ||
1829 | while (l--)(c = g[l]) && (f = i ? T.call(s, c) : h[l]) > -1 && (s[f] = !(o[f] = c)) | ||
1830 | } | ||
1831 | } else g = lt(g === o ? g.splice(d, g.length) : g), i ? i(null, o, g, a) : S.apply(o, g) | ||
1832 | }) | ||
1833 | } | ||
1834 | |||
1835 | function ht(e) { | ||
1836 | var t, n, r, s = e.length, | ||
1837 | o = i.relative[e[0].type], | ||
1838 | u = o || i.relative[" "], | ||
1839 | a = o ? 1 : 0, | ||
1840 | f = at(function(e) { | ||
1841 | return e === t | ||
1842 | }, u, !0), | ||
1843 | l = at(function(e) { | ||
1844 | return T.call(t, e) > -1 | ||
1845 | }, u, !0), | ||
1846 | h = [ | ||
1847 | function(e, n, r) { | ||
1848 | return !o && (r || n !== c) || ((t = n).nodeType ? f(e, n, r) : l(e, n, r)) | ||
1849 | } | ||
1850 | ]; | ||
1851 | for (; a < s; a++) | ||
1852 | if (n = i.relative[e[a].type]) h = [at(ft(h), n)]; | ||
1853 | else { | ||
1854 | n = i.filter[e[a].type].apply(null, e[a].matches); | ||
1855 | if (n[d]) { | ||
1856 | r = ++a; | ||
1857 | for (; r < s; r++) | ||
1858 | if (i.relative[e[r].type]) break; | ||
1859 | return ct(a > 1 && ft(h), a > 1 && e.slice(0, a - 1).join("").replace(j, "$1"), n, a < r && ht(e.slice(a, r)), r < s && ht(e = e.slice(r)), r < s && e.join("")) | ||
1860 | } | ||
1861 | h.push(n) | ||
1862 | } | ||
1863 | return ft(h) | ||
1864 | } | ||
1865 | |||
1866 | function pt(e, t) { | ||
1867 | var r = t.length > 0, | ||
1868 | s = e.length > 0, | ||
1869 | o = function(u, a, f, l, h) { | ||
1870 | var p, d, v, m = [], | ||
1871 | y = 0, | ||
1872 | w = "0", | ||
1873 | x = u && [], | ||
1874 | T = h != null, | ||
1875 | N = c, | ||
1876 | C = u || s && i.find.TAG("*", h && a.parentNode || a), | ||
1877 | k = b += N == null ? 1 : Math.E; | ||
1878 | T && (c = a !== g && a, n = o.el); | ||
1879 | for (; | ||
1880 | (p = C[w]) != null; w++) { | ||
1881 | if (s && p) { | ||
1882 | for (d = 0; v = e[d]; d++) | ||
1883 | if (v(p, a, f)) { | ||
1884 | l.push(p); | ||
1885 | break | ||
1886 | } | ||
1887 | T && (b = k, n = ++o.el) | ||
1888 | } | ||
1889 | r && ((p = !v && p) && y--, u && x.push(p)) | ||
1890 | } | ||
1891 | y += w; | ||
1892 | if (r && w !== y) { | ||
1893 | for (d = 0; v = t[d]; d++) v(x, m, a, f); | ||
1894 | if (u) { | ||
1895 | if (y > 0) | ||
1896 | while (w--)!x[w] && !m[w] && (m[w] = E.call(l)); | ||
1897 | m = lt(m) | ||
1898 | } | ||
1899 | S.apply(l, m), T && !u && m.length > 0 && y + t.length > 1 && nt.uniqueSort(l) | ||
1900 | } | ||
1901 | return T && (b = k, c = N), x | ||
1902 | }; | ||
1903 | return o.el = 0, r ? N(o) : o | ||
1904 | } | ||
1905 | |||
1906 | function dt(e, t, n) { | ||
1907 | var r = 0, | ||
1908 | i = t.length; | ||
1909 | for (; r < i; r++) nt(e, t[r], n); | ||
1910 | return n | ||
1911 | } | ||
1912 | |||
1913 | function vt(e, t, n, r, s) { | ||
1914 | var o, u, f, l, c, h = ut(e), | ||
1915 | p = h.length; | ||
1916 | if (!r && h.length === 1) { | ||
1917 | u = h[0] = h[0].slice(0); | ||
1918 | if (u.length > 2 && (f = u[0]).type === "ID" && t.nodeType === 9 && !s && i.relative[u[1].type]) { | ||
1919 | t = i.find.ID(f.matches[0].replace($, ""), t, s)[0]; | ||
1920 | if (!t) return n; | ||
1921 | e = e.slice(u.shift().length) | ||
1922 | } | ||
1923 | for (o = J.POS.test(e) ? -1 : u.length - 1; o >= 0; o--) { | ||
1924 | f = u[o]; | ||
1925 | if (i.relative[l = f.type]) break; | ||
1926 | if (c = i.find[l]) | ||
1927 | if (r = c(f.matches[0].replace($, ""), z.test(u[0].type) && t.parentNode || t, s)) { | ||
1928 | u.splice(o, 1), e = r.length && u.join(""); | ||
1929 | if (!e) return S.apply(n, x.call(r, 0)), n; | ||
1930 | break | ||
1931 | } | ||
1932 | } | ||
1933 | } | ||
1934 | return a(e, h)(r, t, s, n, z.test(e)), n | ||
1935 | } | ||
1936 | |||
1937 | function mt() {} | ||
1938 | var n, r, i, s, o, u, a, f, l, c, h = !0, | ||
1939 | p = "undefined", | ||
1940 | d = ("sizcache" + Math.random()).replace(".", ""), | ||
1941 | m = String, | ||
1942 | g = e.document, | ||
1943 | y = g.documentElement, | ||
1944 | b = 0, | ||
1945 | w = 0, | ||
1946 | E = [].pop, | ||
1947 | S = [].push, | ||
1948 | x = [].slice, | ||
1949 | T = [].indexOf || function(e) { | ||
1950 | var t = 0, | ||
1951 | n = this.length; | ||
1952 | for (; t < n; t++) | ||
1953 | if (this[t] === e) return t; | ||
1954 | return -1 | ||
1955 | }, | ||
1956 | N = function(e, t) { | ||
1957 | return e[d] = t == null || t, e | ||
1958 | }, | ||
1959 | C = function() { | ||
1960 | var e = {}, | ||
1961 | t = []; | ||
1962 | return N(function(n, r) { | ||
1963 | return t.push(n) > i.cacheLength && delete e[t.shift()], e[n + " "] = r | ||
1964 | }, e) | ||
1965 | }, | ||
1966 | k = C(), | ||
1967 | L = C(), | ||
1968 | A = C(), | ||
1969 | O = "[\\x20\\t\\r\\n\\f]", | ||
1970 | M = "(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+", | ||
1971 | _ = M.replace("w", "w#"), | ||
1972 | D = "([*^$|!~]?=)", | ||
1973 | P = "\\[" + O + "*(" + M + ")" + O + "*(?:" + D + O + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + _ + ")|)|)" + O + "*\\]", | ||
1974 | H = ":(" + M + ")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:" + P + ")|[^:]|\\\\.)*|.*))\\)|)", | ||
1975 | B = ":(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + O + "*((?:-\\d)?\\d*)" + O + "*\\)|)(?=[^-]|$)", | ||
1976 | j = new RegExp("^" + O + "+|((?:^|[^\\\\])(?:\\\\.)*)" + O + "+$", "g"), | ||
1977 | F = new RegExp("^" + O + "*," + O + "*"), | ||
1978 | I = new RegExp("^" + O + "*([\\x20\\t\\r\\n\\f>+~])" + O + "*"), | ||
1979 | q = new RegExp(H), | ||
1980 | R = /^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/, | ||
1981 | U = /^:not/, | ||
1982 | z = /[\x20\t\r\n\f]*[+~]/, | ||
1983 | W = /:not\($/, | ||
1984 | X = /h\d/i, | ||
1985 | V = /input|select|textarea|button/i, | ||
1986 | $ = /\\(?!\\)/g, | ||
1987 | J = { | ||
1988 | ID: new RegExp("^#(" + M + ")"), | ||
1989 | CLASS: new RegExp("^\\.(" + M + ")"), | ||
1990 | NAME: new RegExp("^\\[name=['\"]?(" + M + ")['\"]?\\]"), | ||
1991 | TAG: new RegExp("^(" + M.replace("w", "w*") + ")"), | ||
1992 | ATTR: new RegExp("^" + P), | ||
1993 | PSEUDO: new RegExp("^" + H), | ||
1994 | POS: new RegExp(B, "i"), | ||
1995 | CHILD: new RegExp("^:(only|nth|first|last)-child(?:\\(" + O + "*(even|odd|(([+-]|)(\\d*)n|)" + O + "*(?:([+-]|)" + O + "*(\\d+)|))" + O + "*\\)|)", "i"), | ||
1996 | needsContext: new RegExp("^" + O + "*[>+~]|" + B, "i") | ||
1997 | }, | ||
1998 | K = function(e) { | ||
1999 | var t = g.createElement("div"); | ||
2000 | try { | ||
2001 | return e(t) | ||
2002 | } catch (n) { | ||
2003 | return !1 | ||
2004 | } finally { | ||
2005 | t = null | ||
2006 | } | ||
2007 | }, | ||
2008 | Q = K(function(e) { | ||
2009 | return e.appendChild(g.createComment("")), !e.getElementsByTagName("*").length | ||
2010 | }), | ||
2011 | G = K(function(e) { | ||
2012 | return e.innerHTML = "<a href='#'></a>", e.firstChild && typeof e.firstChild.getAttribute !== p && e.firstChild.getAttribute("href") === "#" | ||
2013 | }), | ||
2014 | Y = K(function(e) { | ||
2015 | e.innerHTML = "<select></select>"; | ||
2016 | var t = typeof e.lastChild.getAttribute("multiple"); | ||
2017 | return t !== "boolean" && t !== "string" | ||
2018 | }), | ||
2019 | Z = K(function(e) { | ||
2020 | return e.innerHTML = "<div class='hidden e'></div><div class='hidden'></div>", !e.getElementsByClassName || !e.getElementsByClassName("e").length ? !1 : (e.lastChild.className = "e", e.getElementsByClassName("e").length === 2) | ||
2021 | }), | ||
2022 | et = K(function(e) { | ||
2023 | e.id = d + 0, e.innerHTML = "<a name='" + d + "'></a><div name='" + d + "'></div>", y.insertBefore(e, y.firstChild); | ||
2024 | var t = g.getElementsByName && g.getElementsByName(d).length === 2 + g.getElementsByName(d + 0).length; | ||
2025 | return r = !g.getElementById(d), y.removeChild(e), t | ||
2026 | }); | ||
2027 | try { | ||
2028 | x.call(y.childNodes, 0)[0].nodeType | ||
2029 | } catch (tt) { | ||
2030 | x = function(e) { | ||
2031 | var t, n = []; | ||
2032 | for (; t = this[e]; e++) n.push(t); | ||
2033 | return n | ||
2034 | } | ||
2035 | } | ||
2036 | nt.matches = function(e, t) { | ||
2037 | return nt(e, null, null, t) | ||
2038 | }, nt.matchesSelector = function(e, t) { | ||
2039 | return nt(t, null, null, [e]).length > 0 | ||
2040 | }, s = nt.getText = function(e) { | ||
2041 | var t, n = "", | ||
2042 | r = 0, | ||
2043 | i = e.nodeType; | ||
2044 | if (i) { | ||
2045 | if (i === 1 || i === 9 || i === 11) { | ||
2046 | if (typeof e.textContent == "string") return e.textContent; | ||
2047 | for (e = e.firstChild; e; e = e.nextSibling) n += s(e) | ||
2048 | } else if (i === 3 || i === 4) return e.nodeValue | ||
2049 | } else | ||
2050 | for (; t = e[r]; r++) n += s(t); | ||
2051 | return n | ||
2052 | }, o = nt.isXML = function(e) { | ||
2053 | var t = e && (e.ownerDocument || e).documentElement; | ||
2054 | return t ? t.nodeName !== "HTML" : !1 | ||
2055 | }, u = nt.contains = y.contains ? function(e, t) { | ||
2056 | var n = e.nodeType === 9 ? e.documentElement : e, | ||
2057 | r = t && t.parentNode; | ||
2058 | return e === r || !!(r && r.nodeType === 1 && n.contains && n.contains(r)) | ||
2059 | } : y.compareDocumentPosition ? function(e, t) { | ||
2060 | return t && !!(e.compareDocumentPosition(t) & 16) | ||
2061 | } : function(e, t) { | ||
2062 | while (t = t.parentNode) | ||
2063 | if (t === e) return !0; | ||
2064 | return !1 | ||
2065 | }, nt.attr = function(e, t) { | ||
2066 | var n, r = o(e); | ||
2067 | return r || (t = t.toLowerCase()), (n = i.attrHandle[t]) ? n(e) : r || Y ? e.getAttribute(t) : (n = e.getAttributeNode(t), n ? typeof e[t] == "boolean" ? e[t] ? t : null : n.specified ? n.value : null : null) | ||
2068 | }, i = nt.selectors = { | ||
2069 | cacheLength: 50, | ||
2070 | createPseudo: N, | ||
2071 | match: J, | ||
2072 | attrHandle: G ? {} : { | ||
2073 | href: function(e) { | ||
2074 | return e.getAttribute("href", 2) | ||
2075 | }, | ||
2076 | type: function(e) { | ||
2077 | return e.getAttribute("type") | ||
2078 | } | ||
2079 | }, | ||
2080 | find: { | ||
2081 | ID: r ? function(e, t, n) { | ||
2082 | if (typeof t.getElementById !== p && !n) { | ||
2083 | var r = t.getElementById(e); | ||
2084 | return r && r.parentNode ? [r] : [] | ||
2085 | } | ||
2086 | } : function(e, n, r) { | ||
2087 | if (typeof n.getElementById !== p && !r) { | ||
2088 | var i = n.getElementById(e); | ||
2089 | return i ? i.id === e || typeof i.getAttributeNode !== p && i.getAttributeNode("id").value === e ? [i] : t : [] | ||
2090 | } | ||
2091 | }, | ||
2092 | TAG: Q ? function(e, t) { | ||
2093 | if (typeof t.getElementsByTagName !== p) return t.getElementsByTagName(e) | ||
2094 | } : function(e, t) { | ||
2095 | var n = t.getElementsByTagName(e); | ||
2096 | if (e === "*") { | ||
2097 | var r, i = [], | ||
2098 | s = 0; | ||
2099 | for (; r = n[s]; s++) r.nodeType === 1 && i.push(r); | ||
2100 | return i | ||
2101 | } | ||
2102 | return n | ||
2103 | }, | ||
2104 | NAME: et && function(e, t) { | ||
2105 | if (typeof t.getElementsByName !== p) return t.getElementsByName(name) | ||
2106 | }, | ||
2107 | CLASS: Z && function(e, t, n) { | ||
2108 | if (typeof t.getElementsByClassName !== p && !n) return t.getElementsByClassName(e) | ||
2109 | } | ||
2110 | }, | ||
2111 | relative: { | ||
2112 | ">": { | ||
2113 | dir: "parentNode", | ||
2114 | first: !0 | ||
2115 | }, | ||
2116 | " ": { | ||
2117 | dir: "parentNode" | ||
2118 | }, | ||
2119 | "+": { | ||
2120 | dir: "previousSibling", | ||
2121 | first: !0 | ||
2122 | }, | ||
2123 | "~": { | ||
2124 | dir: "previousSibling" | ||
2125 | } | ||
2126 | }, | ||
2127 | preFilter: { | ||
2128 | ATTR: function(e) { | ||
2129 | return e[1] = e[1].replace($, ""), e[3] = (e[4] || e[5] || "").replace($, ""), e[2] === "~=" && (e[3] = " " + e[3] + " "), e.slice(0, 4) | ||
2130 | }, | ||
2131 | CHILD: function(e) { | ||
2132 | return e[1] = e[1].toLowerCase(), e[1] === "nth" ? (e[2] || nt.error(e[0]), e[3] = +(e[3] ? e[4] + (e[5] || 1) : 2 * (e[2] === "even" || e[2] === "odd")), e[4] = +(e[6] + e[7] || e[2] === "odd")) : e[2] && nt.error(e[0]), e | ||
2133 | }, | ||
2134 | PSEUDO: function(e) { | ||
2135 | var t, n; | ||
2136 | if (J.CHILD.test(e[0])) return null; | ||
2137 | if (e[3]) e[2] = e[3]; | ||
2138 | else if (t = e[4]) q.test(t) && (n = ut(t, !0)) && (n = t.indexOf(")", t.length - n) - t.length) && (t = t.slice(0, n), e[0] = e[0].slice(0, n)), e[2] = t; | ||
2139 | return e.slice(0, 3) | ||
2140 | } | ||
2141 | }, | ||
2142 | filter: { | ||
2143 | ID: r ? function(e) { | ||
2144 | return e = e.replace($, ""), | ||
2145 | function(t) { | ||
2146 | return t.getAttribute("id") === e | ||
2147 | } | ||
2148 | } : function(e) { | ||
2149 | return e = e.replace($, ""), | ||
2150 | function(t) { | ||
2151 | var n = typeof t.getAttributeNode !== p && t.getAttributeNode("id"); | ||
2152 | return n && n.value === e | ||
2153 | } | ||
2154 | }, | ||
2155 | TAG: function(e) { | ||
2156 | return e === "*" ? function() { | ||
2157 | return !0 | ||
2158 | } : (e = e.replace($, "").toLowerCase(), function(t) { | ||
2159 | return t.nodeName && t.nodeName.toLowerCase() === e | ||
2160 | }) | ||
2161 | }, | ||
2162 | CLASS: function(e) { | ||
2163 | var t = k[d][e + " "]; | ||
2164 | return t || (t = new RegExp("(^|" + O + ")" + e + "(" + O + "|$)")) && k(e, function(e) { | ||
2165 | return t.test(e.className || typeof e.getAttribute !== p && e.getAttribute("class") || "") | ||
2166 | }) | ||
2167 | }, | ||
2168 | ATTR: function(e, t, n) { | ||
2169 | return function(r, i) { | ||
2170 | var s = nt.attr(r, e); | ||
2171 | return s == null ? t === "!=" : t ? (s += "", t === "=" ? s === n : t === "!=" ? s !== n : t === "^=" ? n && s.indexOf(n) === 0 : t === "*=" ? n && s.indexOf(n) > -1 : t === "$=" ? n && s.substr(s.length - n.length) === n : t === "~=" ? (" " + s + " ").indexOf(n) > -1 : t === "|=" ? s === n || s.substr(0, n.length + 1) === n + "-" : !1) : !0 | ||
2172 | } | ||
2173 | }, | ||
2174 | CHILD: function(e, t, n, r) { | ||
2175 | return e === "nth" ? function(e) { | ||
2176 | var t, i, s = e.parentNode; | ||
2177 | if (n === 1 && r === 0) return !0; | ||
2178 | if (s) { | ||
2179 | i = 0; | ||
2180 | for (t = s.firstChild; t; t = t.nextSibling) | ||
2181 | if (t.nodeType === 1) { | ||
2182 | i++; | ||
2183 | if (e === t) break | ||
2184 | } | ||
2185 | } | ||
2186 | return i -= r, i === n || i % n === 0 && i / n >= 0 | ||
2187 | } : function(t) { | ||
2188 | var n = t; | ||
2189 | switch (e) { | ||
2190 | case "only": | ||
2191 | case "first": | ||
2192 | while (n = n.previousSibling) | ||
2193 | if (n.nodeType === 1) return !1; | ||
2194 | if (e === "first") return !0; | ||
2195 | n = t; | ||
2196 | case "last": | ||
2197 | while (n = n.nextSibling) | ||
2198 | if (n.nodeType === 1) return !1; | ||
2199 | return !0 | ||
2200 | } | ||
2201 | } | ||
2202 | }, | ||
2203 | PSEUDO: function(e, t) { | ||
2204 | var n, r = i.pseudos[e] || i.setFilters[e.toLowerCase()] || nt.error("unsupported pseudo: " + e); | ||
2205 | return r[d] ? r(t) : r.length > 1 ? (n = [e, e, "", t], i.setFilters.hasOwnProperty(e.toLowerCase()) ? N(function(e, n) { | ||
2206 | var i, s = r(e, t), | ||
2207 | o = s.length; | ||
2208 | while (o--) i = T.call(e, s[o]), e[i] = !(n[i] = s[o]) | ||
2209 | }) : function(e) { | ||
2210 | return r(e, 0, n) | ||
2211 | }) : r | ||
2212 | } | ||
2213 | }, | ||
2214 | pseudos: { | ||
2215 | not: N(function(e) { | ||
2216 | var t = [], | ||
2217 | n = [], | ||
2218 | r = a(e.replace(j, "$1")); | ||
2219 | return r[d] ? N(function(e, t, n, i) { | ||
2220 | var s, o = r(e, null, i, []), | ||
2221 | u = e.length; | ||
2222 | while (u--) | ||
2223 | if (s = o[u]) e[u] = !(t[u] = s) | ||
2224 | }) : function(e, i, s) { | ||
2225 | return t[0] = e, r(t, null, s, n), !n.pop() | ||
2226 | } | ||
2227 | }), | ||
2228 | has: N(function(e) { | ||
2229 | return function(t) { | ||
2230 | return nt(e, t).length > 0 | ||
2231 | } | ||
2232 | }), | ||
2233 | contains: N(function(e) { | ||
2234 | return function(t) { | ||
2235 | return (t.textContent || t.innerText || s(t)).indexOf(e) > -1 | ||
2236 | } | ||
2237 | }), | ||
2238 | enabled: function(e) { | ||
2239 | return e.disabled === !1 | ||
2240 | }, | ||
2241 | disabled: function(e) { | ||
2242 | return e.disabled === !0 | ||
2243 | }, | ||
2244 | checked: function(e) { | ||
2245 | var t = e.nodeName.toLowerCase(); | ||
2246 | return t === "input" && !!e.checked || t === "option" && !!e.selected | ||
2247 | }, | ||
2248 | selected: function(e) { | ||
2249 | return e.parentNode && e.parentNode.selectedIndex, e.selected === !0 | ||
2250 | }, | ||
2251 | parent: function(e) { | ||
2252 | return !i.pseudos.empty(e) | ||
2253 | }, | ||
2254 | empty: function(e) { | ||
2255 | var t; | ||
2256 | e = e.firstChild; | ||
2257 | while (e) { | ||
2258 | if (e.nodeName > "@" || (t = e.nodeType) === 3 || t === 4) return !1; | ||
2259 | e = e.nextSibling | ||
2260 | } | ||
2261 | return !0 | ||
2262 | }, | ||
2263 | header: function(e) { | ||
2264 | return X.test(e.nodeName) | ||
2265 | }, | ||
2266 | text: function(e) { | ||
2267 | var t, n; | ||
2268 | return e.nodeName.toLowerCase() === "input" && (t = e.type) === "text" && ((n = e.getAttribute("type")) == null || n.toLowerCase() === t) | ||
2269 | }, | ||
2270 | radio: rt("radio"), | ||
2271 | checkbox: rt("checkbox"), | ||
2272 | file: rt("file"), | ||
2273 | password: rt("password"), | ||
2274 | image: rt("image"), | ||
2275 | submit: it("submit"), | ||
2276 | reset: it("reset"), | ||
2277 | button: function(e) { | ||
2278 | var t = e.nodeName.toLowerCase(); | ||
2279 | return t === "input" && e.type === "button" || t === "button" | ||
2280 | }, | ||
2281 | input: function(e) { | ||
2282 | return V.test(e.nodeName) | ||
2283 | }, | ||
2284 | focus: function(e) { | ||
2285 | var t = e.ownerDocument; | ||
2286 | return e === t.activeElement && (!t.hasFocus || t.hasFocus()) && !!(e.type || e.href || ~e.tabIndex) | ||
2287 | }, | ||
2288 | active: function(e) { | ||
2289 | return e === e.ownerDocument.activeElement | ||
2290 | }, | ||
2291 | first: st(function() { | ||
2292 | return [0] | ||
2293 | }), | ||
2294 | last: st(function(e, t) { | ||
2295 | return [t - 1] | ||
2296 | }), | ||
2297 | eq: st(function(e, t, n) { | ||
2298 | return [n < 0 ? n + t : n] | ||
2299 | }), | ||
2300 | even: st(function(e, t) { | ||
2301 | for (var n = 0; n < t; n += 2) e.push(n); | ||
2302 | return e | ||
2303 | }), | ||
2304 | odd: st(function(e, t) { | ||
2305 | for (var n = 1; n < t; n += 2) e.push(n); | ||
2306 | return e | ||
2307 | }), | ||
2308 | lt: st(function(e, t, n) { | ||
2309 | for (var r = n < 0 ? n + t : n; --r >= 0;) e.push(r); | ||
2310 | return e | ||
2311 | }), | ||
2312 | gt: st(function(e, t, n) { | ||
2313 | for (var r = n < 0 ? n + t : n; ++r < t;) e.push(r); | ||
2314 | return e | ||
2315 | }) | ||
2316 | } | ||
2317 | }, f = y.compareDocumentPosition ? function(e, t) { | ||
2318 | return e === t ? (l = !0, 0) : (!e.compareDocumentPosition || !t.compareDocumentPosition ? e.compareDocumentPosition : e.compareDocumentPosition(t) & 4) ? -1 : 1 | ||
2319 | } : function(e, t) { | ||
2320 | if (e === t) return l = !0, 0; | ||
2321 | if (e.sourceIndex && t.sourceIndex) return e.sourceIndex - t.sourceIndex; | ||
2322 | var n, r, i = [], | ||
2323 | s = [], | ||
2324 | o = e.parentNode, | ||
2325 | u = t.parentNode, | ||
2326 | a = o; | ||
2327 | if (o === u) return ot(e, t); | ||
2328 | if (!o) return -1; | ||
2329 | if (!u) return 1; | ||
2330 | while (a) i.unshift(a), a = a.parentNode; | ||
2331 | a = u; | ||
2332 | while (a) s.unshift(a), a = a.parentNode; | ||
2333 | n = i.length, r = s.length; | ||
2334 | for (var f = 0; f < n && f < r; f++) | ||
2335 | if (i[f] !== s[f]) return ot(i[f], s[f]); | ||
2336 | return f === n ? ot(e, s[f], -1) : ot(i[f], t, 1) | ||
2337 | }, [0, 0].sort(f), h = !l, nt.uniqueSort = function(e) { | ||
2338 | var t, n = [], | ||
2339 | r = 1, | ||
2340 | i = 0; | ||
2341 | l = h, e.sort(f); | ||
2342 | if (l) { | ||
2343 | for (; t = e[r]; r++) t === e[r - 1] && (i = n.push(r)); | ||
2344 | while (i--) e.splice(n[i], 1) | ||
2345 | } | ||
2346 | return e | ||
2347 | }, nt.error = function(e) { | ||
2348 | throw new Error("Syntax error, unrecognized expression: " + e) | ||
2349 | }, a = nt.compile = function(e, t) { | ||
2350 | var n, r = [], | ||
2351 | i = [], | ||
2352 | s = A[d][e + " "]; | ||
2353 | if (!s) { | ||
2354 | t || (t = ut(e)), n = t.length; | ||
2355 | while (n--) s = ht(t[n]), s[d] ? r.push(s) : i.push(s); | ||
2356 | s = A(e, pt(i, r)) | ||
2357 | } | ||
2358 | return s | ||
2359 | }, g.querySelectorAll && function() { | ||
2360 | var e, t = vt, | ||
2361 | n = /'|\\/g, | ||
2362 | r = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g, | ||
2363 | i = [":focus"], | ||
2364 | s = [":active"], | ||
2365 | u = y.matchesSelector || y.mozMatchesSelector || y.webkitMatchesSelector || y.oMatchesSelector || y.msMatchesSelector; | ||
2366 | K(function(e) { | ||
2367 | e.innerHTML = "<select><option selected=''></option></select>", e.querySelectorAll("[selected]").length || i.push("\\[" + O + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)"), e.querySelectorAll(":checked").length || i.push(":checked") | ||
2368 | }), K(function(e) { | ||
2369 | e.innerHTML = "<p test=''></p>", e.querySelectorAll("[test^='']").length && i.push("[*^$]=" + O + "*(?:\"\"|'')"), e.innerHTML = "<input type='hidden'/>", e.querySelectorAll(":enabled").length || i.push(":enabled", ":disabled") | ||
2370 | }), i = new RegExp(i.join("|")), vt = function(e, r, s, o, u) { | ||
2371 | if (!o && !u && !i.test(e)) { | ||
2372 | var a, f, l = !0, | ||
2373 | c = d, | ||
2374 | h = r, | ||
2375 | p = r.nodeType === 9 && e; | ||
2376 | if (r.nodeType === 1 && r.nodeName.toLowerCase() !== "object") { | ||
2377 | a = ut(e), (l = r.getAttribute("id")) ? c = l.replace(n, "\\$&") : r.setAttribute("id", c), c = "[id='" + c + "'] ", f = a.length; | ||
2378 | while (f--) a[f] = c + a[f].join(""); | ||
2379 | h = z.test(e) && r.parentNode || r, p = a.join(",") | ||
2380 | } | ||
2381 | if (p) try { | ||
2382 | return S.apply(s, x.call(h.querySelectorAll(p), 0)), s | ||
2383 | } catch (v) {} finally { | ||
2384 | l || r.removeAttribute("id") | ||
2385 | } | ||
2386 | } | ||
2387 | return t(e, r, s, o, u) | ||
2388 | }, u && (K(function(t) { | ||
2389 | e = u.call(t, "div"); | ||
2390 | try { | ||
2391 | u.call(t, "[test!='']:sizzle"), s.push("!=", H) | ||
2392 | } catch (n) {} | ||
2393 | }), s = new RegExp(s.join("|")), nt.matchesSelector = function(t, n) { | ||
2394 | n = n.replace(r, "='$1']"); | ||
2395 | if (!o(t) && !s.test(n) && !i.test(n)) try { | ||
2396 | var a = u.call(t, n); | ||
2397 | if (a || e || t.document && t.document.nodeType !== 11) return a | ||
2398 | } catch (f) {} | ||
2399 | return nt(n, null, null, [t]).length > 0 | ||
2400 | }) | ||
2401 | }(), i.pseudos.nth = i.pseudos.eq, i.filters = mt.prototype = i.pseudos, i.setFilters = new mt, nt.attr = v.attr, v.find = nt, v.expr = nt.selectors, v.expr[":"] = v.expr.pseudos, v.unique = nt.uniqueSort, v.text = nt.getText, v.isXMLDoc = nt.isXML, v.contains = nt.contains | ||
2402 | }(e); | ||
2403 | var nt = /Until$/, | ||
2404 | rt = /^(?:parents|prev(?:Until|All))/, | ||
2405 | it = /^.[^:#\[\.,]*$/, | ||
2406 | st = v.expr.match.needsContext, | ||
2407 | ot = { | ||
2408 | children: !0, | ||
2409 | contents: !0, | ||
2410 | next: !0, | ||
2411 | prev: !0 | ||
2412 | }; | ||
2413 | v.fn.extend({ | ||
2414 | find: function(e) { | ||
2415 | var t, n, r, i, s, o, u = this; | ||
2416 | if (typeof e != "string") return v(e).filter(function() { | ||
2417 | for (t = 0, n = u.length; t < n; t++) | ||
2418 | if (v.contains(u[t], this)) return !0 | ||
2419 | }); | ||
2420 | o = this.pushStack("", "find", e); | ||
2421 | for (t = 0, n = this.length; t < n; t++) { | ||
2422 | r = o.length, v.find(e, this[t], o); | ||
2423 | if (t > 0) | ||
2424 | for (i = r; i < o.length; i++) | ||
2425 | for (s = 0; s < r; s++) | ||
2426 | if (o[s] === o[i]) { | ||
2427 | o.splice(i--, 1); | ||
2428 | break | ||
2429 | } | ||
2430 | } | ||
2431 | return o | ||
2432 | }, | ||
2433 | has: function(e) { | ||
2434 | var t, n = v(e, this), | ||
2435 | r = n.length; | ||
2436 | return this.filter(function() { | ||
2437 | for (t = 0; t < r; t++) | ||
2438 | if (v.contains(this, n[t])) return !0 | ||
2439 | }) | ||
2440 | }, | ||
2441 | not: function(e) { | ||
2442 | return this.pushStack(ft(this, e, !1), "not", e) | ||
2443 | }, | ||
2444 | filter: function(e) { | ||
2445 | return this.pushStack(ft(this, e, !0), "filter", e) | ||
2446 | }, | ||
2447 | is: function(e) { | ||
2448 | return !!e && (typeof e == "string" ? st.test(e) ? v(e, this.context).index(this[0]) >= 0 : v.filter(e, this).length > 0 : this.filter(e).length > 0) | ||
2449 | }, | ||
2450 | closest: function(e, t) { | ||
2451 | var n, r = 0, | ||
2452 | i = this.length, | ||
2453 | s = [], | ||
2454 | o = st.test(e) || typeof e != "string" ? v(e, t || this.context) : 0; | ||
2455 | for (; r < i; r++) { | ||
2456 | n = this[r]; | ||
2457 | while (n && n.ownerDocument && n !== t && n.nodeType !== 11) { | ||
2458 | if (o ? o.index(n) > -1 : v.find.matchesSelector(n, e)) { | ||
2459 | s.push(n); | ||
2460 | break | ||
2461 | } | ||
2462 | n = n.parentNode | ||
2463 | } | ||
2464 | } | ||
2465 | return s = s.length > 1 ? v.unique(s) : s, this.pushStack(s, "closest", e) | ||
2466 | }, | ||
2467 | index: function(e) { | ||
2468 | return e ? typeof e == "string" ? v.inArray(this[0], v(e)) : v.inArray(e.jquery ? e[0] : e, this) : this[0] && this[0].parentNode ? this.prevAll().length : -1 | ||
2469 | }, | ||
2470 | add: function(e, t) { | ||
2471 | var n = typeof e == "string" ? v(e, t) : v.makeArray(e && e.nodeType ? [e] : e), | ||
2472 | r = v.merge(this.get(), n); | ||
2473 | return this.pushStack(ut(n[0]) || ut(r[0]) ? r : v.unique(r)) | ||
2474 | }, | ||
2475 | addBack: function(e) { | ||
2476 | return this.add(e == null ? this.prevObject : this.prevObject.filter(e)) | ||
2477 | } | ||
2478 | }), v.fn.andSelf = v.fn.addBack, v.each({ | ||
2479 | parent: function(e) { | ||
2480 | var t = e.parentNode; | ||
2481 | return t && t.nodeType !== 11 ? t : null | ||
2482 | }, | ||
2483 | parents: function(e) { | ||
2484 | return v.dir(e, "parentNode") | ||
2485 | }, | ||
2486 | parentsUntil: function(e, t, n) { | ||
2487 | return v.dir(e, "parentNode", n) | ||
2488 | }, | ||
2489 | next: function(e) { | ||
2490 | return at(e, "nextSibling") | ||
2491 | }, | ||
2492 | prev: function(e) { | ||
2493 | return at(e, "previousSibling") | ||
2494 | }, | ||
2495 | nextAll: function(e) { | ||
2496 | return v.dir(e, "nextSibling") | ||
2497 | }, | ||
2498 | prevAll: function(e) { | ||
2499 | return v.dir(e, "previousSibling") | ||
2500 | }, | ||
2501 | nextUntil: function(e, t, n) { | ||
2502 | return v.dir(e, "nextSibling", n) | ||
2503 | }, | ||
2504 | prevUntil: function(e, t, n) { | ||
2505 | return v.dir(e, "previousSibling", n) | ||
2506 | }, | ||
2507 | siblings: function(e) { | ||
2508 | return v.sibling((e.parentNode || {}).firstChild, e) | ||
2509 | }, | ||
2510 | children: function(e) { | ||
2511 | return v.sibling(e.firstChild) | ||
2512 | }, | ||
2513 | contents: function(e) { | ||
2514 | return v.nodeName(e, "iframe") ? e.contentDocument || e.contentWindow.document : v.merge([], e.childNodes) | ||
2515 | } | ||
2516 | }, function(e, t) { | ||
2517 | v.fn[e] = function(n, r) { | ||
2518 | var i = v.map(this, t, n); | ||
2519 | return nt.test(e) || (r = n), r && typeof r == "string" && (i = v.filter(r, i)), i = this.length > 1 && !ot[e] ? v.unique(i) : i, this.length > 1 && rt.test(e) && (i = i.reverse()), this.pushStack(i, e, l.call(arguments).join(",")) | ||
2520 | } | ||
2521 | }), v.extend({ | ||
2522 | filter: function(e, t, n) { | ||
2523 | return n && (e = ":not(" + e + ")"), t.length === 1 ? v.find.matchesSelector(t[0], e) ? [t[0]] : [] : v.find.matches(e, t) | ||
2524 | }, | ||
2525 | dir: function(e, n, r) { | ||
2526 | var i = [], | ||
2527 | s = e[n]; | ||
2528 | while (s && s.nodeType !== 9 && (r === t || s.nodeType !== 1 || !v(s).is(r))) s.nodeType === 1 && i.push(s), s = s[n]; | ||
2529 | return i | ||
2530 | }, | ||
2531 | sibling: function(e, t) { | ||
2532 | var n = []; | ||
2533 | for (; e; e = e.nextSibling) e.nodeType === 1 && e !== t && n.push(e); | ||
2534 | return n | ||
2535 | } | ||
2536 | }); | ||
2537 | var ct = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", | ||
2538 | ht = / jQuery\d+="(?:null|\d+)"/g, | ||
2539 | pt = /^\s+/, | ||
2540 | dt = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, | ||
2541 | vt = /<([\w:]+)/, | ||
2542 | mt = /<tbody/i, | ||
2543 | gt = /<|&#?\w+;/, | ||
2544 | yt = /<(?:script|style|link)/i, | ||
2545 | bt = /<(?:script|object|embed|option|style)/i, | ||
2546 | wt = new RegExp("<(?:" + ct + ")[\\s/>]", "i"), | ||
2547 | Et = /^(?:checkbox|radio)$/, | ||
2548 | St = /checked\s*(?:[^=]|=\s*.checked.)/i, | ||
2549 | xt = /\/(java|ecma)script/i, | ||
2550 | Tt = /^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g, | ||
2551 | Nt = { | ||
2552 | option: [1, "<select multiple='multiple'>", "</select>"], | ||
2553 | legend: [1, "<fieldset>", "</fieldset>"], | ||
2554 | thead: [1, "<table>", "</table>"], | ||
2555 | tr: [2, "<table><tbody>", "</tbody></table>"], | ||
2556 | td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], | ||
2557 | col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"], | ||
2558 | area: [1, "<map>", "</map>"], | ||
2559 | _default: [0, "", ""] | ||
2560 | }, | ||
2561 | Ct = lt(i), | ||
2562 | kt = Ct.appendChild(i.createElement("div")); | ||
2563 | Nt.optgroup = Nt.option, Nt.tbody = Nt.tfoot = Nt.colgroup = Nt.caption = Nt.thead, Nt.th = Nt.td, v.support.htmlSerialize || (Nt._default = [1, "X<div>", "</div>"]), v.fn.extend({ | ||
2564 | text: function(e) { | ||
2565 | return v.access(this, function(e) { | ||
2566 | return e === t ? v.text(this) : this.empty().append((this[0] && this[0].ownerDocument || i).createTextNode(e)) | ||
2567 | }, null, e, arguments.length) | ||
2568 | }, | ||
2569 | wrapAll: function(e) { | ||
2570 | if (v.isFunction(e)) return this.each(function(t) { | ||
2571 | v(this).wrapAll(e.call(this, t)) | ||
2572 | }); | ||
2573 | if (this[0]) { | ||
2574 | var t = v(e, this[0].ownerDocument).eq(0).clone(!0); | ||
2575 | this[0].parentNode && t.insertBefore(this[0]), t.map(function() { | ||
2576 | var e = this; | ||
2577 | while (e.firstChild && e.firstChild.nodeType === 1) e = e.firstChild; | ||
2578 | return e | ||
2579 | }).append(this) | ||
2580 | } | ||
2581 | return this | ||
2582 | }, | ||
2583 | wrapInner: function(e) { | ||
2584 | return v.isFunction(e) ? this.each(function(t) { | ||
2585 | v(this).wrapInner(e.call(this, t)) | ||
2586 | }) : this.each(function() { | ||
2587 | var t = v(this), | ||
2588 | n = t.contents(); | ||
2589 | n.length ? n.wrapAll(e) : t.append(e) | ||
2590 | }) | ||
2591 | }, | ||
2592 | wrap: function(e) { | ||
2593 | var t = v.isFunction(e); | ||
2594 | return this.each(function(n) { | ||
2595 | v(this).wrapAll(t ? e.call(this, n) : e) | ||
2596 | }) | ||
2597 | }, | ||
2598 | unwrap: function() { | ||
2599 | return this.parent().each(function() { | ||
2600 | v.nodeName(this, "body") || v(this).replaceWith(this.childNodes) | ||
2601 | }).end() | ||
2602 | }, | ||
2603 | append: function() { | ||
2604 | return this.domManip(arguments, !0, function(e) { | ||
2605 | (this.nodeType === 1 || this.nodeType === 11) && this.appendChild(e) | ||
2606 | }) | ||
2607 | }, | ||
2608 | prepend: function() { | ||
2609 | return this.domManip(arguments, !0, function(e) { | ||
2610 | (this.nodeType === 1 || this.nodeType === 11) && this.insertBefore(e, this.firstChild) | ||
2611 | }) | ||
2612 | }, | ||
2613 | before: function() { | ||
2614 | if (!ut(this[0])) return this.domManip(arguments, !1, function(e) { | ||
2615 | this.parentNode.insertBefore(e, this) | ||
2616 | }); | ||
2617 | if (arguments.length) { | ||
2618 | var e = v.clean(arguments); | ||
2619 | return this.pushStack(v.merge(e, this), "before", this.selector) | ||
2620 | } | ||
2621 | }, | ||
2622 | after: function() { | ||
2623 | if (!ut(this[0])) return this.domManip(arguments, !1, function(e) { | ||
2624 | this.parentNode.insertBefore(e, this.nextSibling) | ||
2625 | }); | ||
2626 | if (arguments.length) { | ||
2627 | var e = v.clean(arguments); | ||
2628 | return this.pushStack(v.merge(this, e), "after", this.selector) | ||
2629 | } | ||
2630 | }, | ||
2631 | remove: function(e, t) { | ||
2632 | var n, r = 0; | ||
2633 | for (; | ||
2634 | (n = this[r]) != null; r++) | ||
2635 | if (!e || v.filter(e, [n]).length)!t && n.nodeType === 1 && (v.cleanData(n.getElementsByTagName("*")), v.cleanData([n])), n.parentNode && n.parentNode.removeChild(n); | ||
2636 | return this | ||
2637 | }, | ||
2638 | empty: function() { | ||
2639 | var e, t = 0; | ||
2640 | for (; | ||
2641 | (e = this[t]) != null; t++) { | ||
2642 | e.nodeType === 1 && v.cleanData(e.getElementsByTagName("*")); | ||
2643 | while (e.firstChild) e.removeChild(e.firstChild) | ||
2644 | } | ||
2645 | return this | ||
2646 | }, | ||
2647 | clone: function(e, t) { | ||
2648 | return e = e == null ? !1 : e, t = t == null ? e : t, this.map(function() { | ||
2649 | return v.clone(this, e, t) | ||
2650 | }) | ||
2651 | }, | ||
2652 | html: function(e) { | ||
2653 | return v.access(this, function(e) { | ||
2654 | var n = this[0] || {}, | ||
2655 | r = 0, | ||
2656 | i = this.length; | ||
2657 | if (e === t) return n.nodeType === 1 ? n.innerHTML.replace(ht, "") : t; | ||
2658 | if (typeof e == "string" && !yt.test(e) && (v.support.htmlSerialize || !wt.test(e)) && (v.support.leadingWhitespace || !pt.test(e)) && !Nt[(vt.exec(e) || ["", ""])[1].toLowerCase()]) { | ||
2659 | e = e.replace(dt, "<$1></$2>"); | ||
2660 | try { | ||
2661 | for (; r < i; r++) n = this[r] || {}, n.nodeType === 1 && (v.cleanData(n.getElementsByTagName("*")), n.innerHTML = e); | ||
2662 | n = 0 | ||
2663 | } catch (s) {} | ||
2664 | } | ||
2665 | n && this.empty().append(e) | ||
2666 | }, null, e, arguments.length) | ||
2667 | }, | ||
2668 | replaceWith: function(e) { | ||
2669 | return ut(this[0]) ? this.length ? this.pushStack(v(v.isFunction(e) ? e() : e), "replaceWith", e) : this : v.isFunction(e) ? this.each(function(t) { | ||
2670 | var n = v(this), | ||
2671 | r = n.html(); | ||
2672 | n.replaceWith(e.call(this, t, r)) | ||
2673 | }) : (typeof e != "string" && (e = v(e).detach()), this.each(function() { | ||
2674 | var t = this.nextSibling, | ||
2675 | n = this.parentNode; | ||
2676 | v(this).remove(), t ? v(t).before(e) : v(n).append(e) | ||
2677 | })) | ||
2678 | }, | ||
2679 | detach: function(e) { | ||
2680 | return this.remove(e, !0) | ||
2681 | }, | ||
2682 | domManip: function(e, n, r) { | ||
2683 | e = [].concat.apply([], e); | ||
2684 | var i, s, o, u, a = 0, | ||
2685 | f = e[0], | ||
2686 | l = [], | ||
2687 | c = this.length; | ||
2688 | if (!v.support.checkClone && c > 1 && typeof f == "string" && St.test(f)) return this.each(function() { | ||
2689 | v(this).domManip(e, n, r) | ||
2690 | }); | ||
2691 | if (v.isFunction(f)) return this.each(function(i) { | ||
2692 | var s = v(this); | ||
2693 | e[0] = f.call(this, i, n ? s.html() : t), s.domManip(e, n, r) | ||
2694 | }); | ||
2695 | if (this[0]) { | ||
2696 | i = v.buildFragment(e, this, l), o = i.fragment, s = o.firstChild, o.childNodes.length === 1 && (o = s); | ||
2697 | if (s) { | ||
2698 | n = n && v.nodeName(s, "tr"); | ||
2699 | for (u = i.cacheable || c - 1; a < c; a++) r.call(n && v.nodeName(this[a], "table") ? Lt(this[a], "tbody") : this[a], a === u ? o : v.clone(o, !0, !0)) | ||
2700 | } | ||
2701 | o = s = null, l.length && v.each(l, function(e, t) { | ||
2702 | t.src ? v.ajax ? v.ajax({ | ||
2703 | url: t.src, | ||
2704 | type: "GET", | ||
2705 | dataType: "script", | ||
2706 | async: !1, | ||
2707 | global: !1, | ||
2708 | "throws": !0 | ||
2709 | }) : v.error("no ajax") : v.globalEval((t.text || t.textContent || t.innerHTML || "").replace(Tt, "")), t.parentNode && t.parentNode.removeChild(t) | ||
2710 | }) | ||
2711 | } | ||
2712 | return this | ||
2713 | } | ||
2714 | }), v.buildFragment = function(e, n, r) { | ||
2715 | var s, o, u, a = e[0]; | ||
2716 | return n = n || i, n = !n.nodeType && n[0] || n, n = n.ownerDocument || n, e.length === 1 && typeof a == "string" && a.length < 512 && n === i && a.charAt(0) === "<" && !bt.test(a) && (v.support.checkClone || !St.test(a)) && (v.support.html5Clone || !wt.test(a)) && (o = !0, s = v.fragments[a], u = s !== t), s || (s = n.createDocumentFragment(), v.clean(e, n, s, r), o && (v.fragments[a] = u && s)), { | ||
2717 | fragment: s, | ||
2718 | cacheable: o | ||
2719 | } | ||
2720 | }, v.fragments = {}, v.each({ | ||
2721 | appendTo: "append", | ||
2722 | prependTo: "prepend", | ||
2723 | insertBefore: "before", | ||
2724 | insertAfter: "after", | ||
2725 | replaceAll: "replaceWith" | ||
2726 | }, function(e, t) { | ||
2727 | v.fn[e] = function(n) { | ||
2728 | var r, i = 0, | ||
2729 | s = [], | ||
2730 | o = v(n), | ||
2731 | u = o.length, | ||
2732 | a = this.length === 1 && this[0].parentNode; | ||
2733 | if ((a == null || a && a.nodeType === 11 && a.childNodes.length === 1) && u === 1) return o[t](this[0]), this; | ||
2734 | for (; i < u; i++) r = (i > 0 ? this.clone(!0) : this).get(), v(o[i])[t](r), s = s.concat(r); | ||
2735 | return this.pushStack(s, e, o.selector) | ||
2736 | } | ||
2737 | }), v.extend({ | ||
2738 | clone: function(e, t, n) { | ||
2739 | var r, i, s, o; | ||
2740 | v.support.html5Clone || v.isXMLDoc(e) || !wt.test("<" + e.nodeName + ">") ? o = e.cloneNode(!0) : (kt.innerHTML = e.outerHTML, kt.removeChild(o = kt.firstChild)); | ||
2741 | if ((!v.support.noCloneEvent || !v.support.noCloneChecked) && (e.nodeType === 1 || e.nodeType === 11) && !v.isXMLDoc(e)) { | ||
2742 | Ot(e, o), r = Mt(e), i = Mt(o); | ||
2743 | for (s = 0; r[s]; ++s) i[s] && Ot(r[s], i[s]) | ||
2744 | } | ||
2745 | if (t) { | ||
2746 | At(e, o); | ||
2747 | if (n) { | ||
2748 | r = Mt(e), i = Mt(o); | ||
2749 | for (s = 0; r[s]; ++s) At(r[s], i[s]) | ||
2750 | } | ||
2751 | } | ||
2752 | return r = i = null, o | ||
2753 | }, | ||
2754 | clean: function(e, t, n, r) { | ||
2755 | var s, o, u, a, f, l, c, h, p, d, m, g, y = t === i && Ct, | ||
2756 | b = []; | ||
2757 | if (!t || typeof t.createDocumentFragment == "undefined") t = i; | ||
2758 | for (s = 0; | ||
2759 | (u = e[s]) != null; s++) { | ||
2760 | typeof u == "number" && (u += ""); | ||
2761 | if (!u) continue; | ||
2762 | if (typeof u == "string") | ||
2763 | if (!gt.test(u)) u = t.createTextNode(u); | ||
2764 | else { | ||
2765 | y = y || lt(t), c = t.createElement("div"), y.appendChild(c), u = u.replace(dt, "<$1></$2>"), a = (vt.exec(u) || ["", ""])[1].toLowerCase(), f = Nt[a] || Nt._default, l = f[0], c.innerHTML = f[1] + u + f[2]; | ||
2766 | while (l--) c = c.lastChild; | ||
2767 | if (!v.support.tbody) { | ||
2768 | h = mt.test(u), p = a === "table" && !h ? c.firstChild && c.firstChild.childNodes : f[1] === "<table>" && !h ? c.childNodes : []; | ||
2769 | for (o = p.length - 1; o >= 0; --o) v.nodeName(p[o], "tbody") && !p[o].childNodes.length && p[o].parentNode.removeChild(p[o]) | ||
2770 | }!v.support.leadingWhitespace && pt.test(u) && c.insertBefore(t.createTextNode(pt.exec(u)[0]), c.firstChild), u = c.childNodes, c.parentNode.removeChild(c) | ||
2771 | } | ||
2772 | u.nodeType ? b.push(u) : v.merge(b, u) | ||
2773 | } | ||
2774 | c && (u = c = y = null); | ||
2775 | if (!v.support.appendChecked) | ||
2776 | for (s = 0; | ||
2777 | (u = b[s]) != null; s++) v.nodeName(u, "input") ? _t(u) : typeof u.getElementsByTagName != "undefined" && v.grep(u.getElementsByTagName("input"), _t); | ||
2778 | if (n) { | ||
2779 | m = function(e) { | ||
2780 | if (!e.type || xt.test(e.type)) return r ? r.push(e.parentNode ? e.parentNode.removeChild(e) : e) : n.appendChild(e) | ||
2781 | }; | ||
2782 | for (s = 0; | ||
2783 | (u = b[s]) != null; s++) | ||
2784 | if (!v.nodeName(u, "script") || !m(u)) n.appendChild(u), typeof u.getElementsByTagName != "undefined" && (g = v.grep(v.merge([], u.getElementsByTagName("script")), m), b.splice.apply(b, [s + 1, 0].concat(g)), s += g.length) | ||
2785 | } | ||
2786 | return b | ||
2787 | }, | ||
2788 | cleanData: function(e, t) { | ||
2789 | var n, r, i, s, o = 0, | ||
2790 | u = v.expando, | ||
2791 | a = v.cache, | ||
2792 | f = v.support.deleteExpando, | ||
2793 | l = v.event.special; | ||
2794 | for (; | ||
2795 | (i = e[o]) != null; o++) | ||
2796 | if (t || v.acceptData(i)) { | ||
2797 | r = i[u], n = r && a[r]; | ||
2798 | if (n) { | ||
2799 | if (n.events) | ||
2800 | for (s in n.events) l[s] ? v.event.remove(i, s) : v.removeEvent(i, s, n.handle); | ||
2801 | a[r] && (delete a[r], f ? delete i[u] : i.removeAttribute ? i.removeAttribute(u) : i[u] = null, v.deletedIds.push(r)) | ||
2802 | } | ||
2803 | } | ||
2804 | } | ||
2805 | }), | ||
2806 | function() { | ||
2807 | var e, t; | ||
2808 | v.uaMatch = function(e) { | ||
2809 | e = e.toLowerCase(); | ||
2810 | var t = /(chrome)[ \/]([\w.]+)/.exec(e) || /(webkit)[ \/]([\w.]+)/.exec(e) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e) || /(msie) ([\w.]+)/.exec(e) || e.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e) || []; | ||
2811 | return { | ||
2812 | browser: t[1] || "", | ||
2813 | version: t[2] || "0" | ||
2814 | } | ||
2815 | }, e = v.uaMatch(o.userAgent), t = {}, e.browser && (t[e.browser] = !0, t.version = e.version), t.chrome ? t.webkit = !0 : t.webkit && (t.safari = !0), v.browser = t, v.sub = function() { | ||
2816 | function e(t, n) { | ||
2817 | return new e.fn.init(t, n) | ||
2818 | } | ||
2819 | v.extend(!0, e, this), e.superclass = this, e.fn = e.prototype = this(), e.fn.constructor = e, e.sub = this.sub, e.fn.init = function(r, i) { | ||
2820 | return i && i instanceof v && !(i instanceof e) && (i = e(i)), v.fn.init.call(this, r, i, t) | ||
2821 | }, e.fn.init.prototype = e.fn; | ||
2822 | var t = e(i); | ||
2823 | return e | ||
2824 | } | ||
2825 | }(); | ||
2826 | var Dt, Pt, Ht, Bt = /alpha\([^)]*\)/i, | ||
2827 | jt = /opacity=([^)]*)/, | ||
2828 | Ft = /^(top|right|bottom|left)$/, | ||
2829 | It = /^(none|table(?!-c[ea]).+)/, | ||
2830 | qt = /^margin/, | ||
2831 | Rt = new RegExp("^(" + m + ")(.*)$", "i"), | ||
2832 | Ut = new RegExp("^(" + m + ")(?!px)[a-z%]+$", "i"), | ||
2833 | zt = new RegExp("^([-+])=(" + m + ")", "i"), | ||
2834 | Wt = { | ||
2835 | BODY: "block" | ||
2836 | }, | ||
2837 | Xt = { | ||
2838 | position: "absolute", | ||
2839 | visibility: "hidden", | ||
2840 | display: "block" | ||
2841 | }, | ||
2842 | Vt = { | ||
2843 | letterSpacing: 0, | ||
2844 | fontWeight: 400 | ||
2845 | }, | ||
2846 | $t = ["Top", "Right", "Bottom", "Left"], | ||
2847 | Jt = ["Webkit", "O", "Moz", "ms"], | ||
2848 | Kt = v.fn.toggle; | ||
2849 | v.fn.extend({ | ||
2850 | css: function(e, n) { | ||
2851 | return v.access(this, function(e, n, r) { | ||
2852 | return r !== t ? v.style(e, n, r) : v.css(e, n) | ||
2853 | }, e, n, arguments.length > 1) | ||
2854 | }, | ||
2855 | show: function() { | ||
2856 | return Yt(this, !0) | ||
2857 | }, | ||
2858 | hide: function() { | ||
2859 | return Yt(this) | ||
2860 | }, | ||
2861 | toggle: function(e, t) { | ||
2862 | var n = typeof e == "boolean"; | ||
2863 | return v.isFunction(e) && v.isFunction(t) ? Kt.apply(this, arguments) : this.each(function() { | ||
2864 | (n ? e : Gt(this)) ? v(this).show() : v(this).hide() | ||
2865 | }) | ||
2866 | } | ||
2867 | }), v.extend({ | ||
2868 | cssHooks: { | ||
2869 | opacity: { | ||
2870 | get: function(e, t) { | ||
2871 | if (t) { | ||
2872 | var n = Dt(e, "opacity"); | ||
2873 | return n === "" ? "1" : n | ||
2874 | } | ||
2875 | } | ||
2876 | } | ||
2877 | }, | ||
2878 | cssNumber: { | ||
2879 | fillOpacity: !0, | ||
2880 | fontWeight: !0, | ||
2881 | lineHeight: !0, | ||
2882 | opacity: !0, | ||
2883 | orphans: !0, | ||
2884 | widows: !0, | ||
2885 | zIndex: !0, | ||
2886 | zoom: !0 | ||
2887 | }, | ||
2888 | cssProps: { | ||
2889 | "float": v.support.cssFloat ? "cssFloat" : "styleFloat" | ||
2890 | }, | ||
2891 | style: function(e, n, r, i) { | ||
2892 | if (!e || e.nodeType === 3 || e.nodeType === 8 || !e.style) return; | ||
2893 | var s, o, u, a = v.camelCase(n), | ||
2894 | f = e.style; | ||
2895 | n = v.cssProps[a] || (v.cssProps[a] = Qt(f, a)), u = v.cssHooks[n] || v.cssHooks[a]; | ||
2896 | if (r === t) return u && "get" in u && (s = u.get(e, !1, i)) !== t ? s : f[n]; | ||
2897 | o = typeof r, o === "string" && (s = zt.exec(r)) && (r = (s[1] + 1) * s[2] + parseFloat(v.css(e, n)), o = "number"); | ||
2898 | if (r == null || o === "number" && isNaN(r)) return; | ||
2899 | o === "number" && !v.cssNumber[a] && (r += "px"); | ||
2900 | if (!u || !("set" in u) || (r = u.set(e, r, i)) !== t) try { | ||
2901 | f[n] = r | ||
2902 | } catch (l) {} | ||
2903 | }, | ||
2904 | css: function(e, n, r, i) { | ||
2905 | var s, o, u, a = v.camelCase(n); | ||
2906 | return n = v.cssProps[a] || (v.cssProps[a] = Qt(e.style, a)), u = v.cssHooks[n] || v.cssHooks[a], u && "get" in u && (s = u.get(e, !0, i)), s === t && (s = Dt(e, n)), s === "normal" && n in Vt && (s = Vt[n]), r || i !== t ? (o = parseFloat(s), r || v.isNumeric(o) ? o || 0 : s) : s | ||
2907 | }, | ||
2908 | swap: function(e, t, n) { | ||
2909 | var r, i, s = {}; | ||
2910 | for (i in t) s[i] = e.style[i], e.style[i] = t[i]; | ||
2911 | r = n.call(e); | ||
2912 | for (i in t) e.style[i] = s[i]; | ||
2913 | return r | ||
2914 | } | ||
2915 | }), e.getComputedStyle ? Dt = function(t, n) { | ||
2916 | var r, i, s, o, u = e.getComputedStyle(t, null), | ||
2917 | a = t.style; | ||
2918 | return u && (r = u.getPropertyValue(n) || u[n], r === "" && !v.contains(t.ownerDocument, t) && (r = v.style(t, n)), Ut.test(r) && qt.test(n) && (i = a.width, s = a.minWidth, o = a.maxWidth, a.minWidth = a.maxWidth = a.width = r, r = u.width, a.width = i, a.minWidth = s, a.maxWidth = o)), r | ||
2919 | } : i.documentElement.currentStyle && (Dt = function(e, t) { | ||
2920 | var n, r, i = e.currentStyle && e.currentStyle[t], | ||
2921 | s = e.style; | ||
2922 | return i == null && s && s[t] && (i = s[t]), Ut.test(i) && !Ft.test(t) && (n = s.left, r = e.runtimeStyle && e.runtimeStyle.left, r && (e.runtimeStyle.left = e.currentStyle.left), s.left = t === "fontSize" ? "1em" : i, i = s.pixelLeft + "px", s.left = n, r && (e.runtimeStyle.left = r)), i === "" ? "auto" : i | ||
2923 | }), v.each(["height", "width"], function(e, t) { | ||
2924 | v.cssHooks[t] = { | ||
2925 | get: function(e, n, r) { | ||
2926 | if (n) return e.offsetWidth === 0 && It.test(Dt(e, "display")) ? v.swap(e, Xt, function() { | ||
2927 | return tn(e, t, r) | ||
2928 | }) : tn(e, t, r) | ||
2929 | }, | ||
2930 | set: function(e, n, r) { | ||
2931 | return Zt(e, n, r ? en(e, t, r, v.support.boxSizing && v.css(e, "boxSizing") === "border-box") : 0) | ||
2932 | } | ||
2933 | } | ||
2934 | }), v.support.opacity || (v.cssHooks.opacity = { | ||
2935 | get: function(e, t) { | ||
2936 | return jt.test((t && e.currentStyle ? e.currentStyle.filter : e.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : t ? "1" : "" | ||
2937 | }, | ||
2938 | set: function(e, t) { | ||
2939 | var n = e.style, | ||
2940 | r = e.currentStyle, | ||
2941 | i = v.isNumeric(t) ? "alpha(opacity=" + t * 100 + ")" : "", | ||
2942 | s = r && r.filter || n.filter || ""; | ||
2943 | n.zoom = 1; | ||
2944 | if (t >= 1 && v.trim(s.replace(Bt, "")) === "" && n.removeAttribute) { | ||
2945 | n.removeAttribute("filter"); | ||
2946 | if (r && !r.filter) return | ||
2947 | } | ||
2948 | n.filter = Bt.test(s) ? s.replace(Bt, i) : s + " " + i | ||
2949 | } | ||
2950 | }), v(function() { | ||
2951 | v.support.reliableMarginRight || (v.cssHooks.marginRight = { | ||
2952 | get: function(e, t) { | ||
2953 | return v.swap(e, { | ||
2954 | display: "inline-block" | ||
2955 | }, function() { | ||
2956 | if (t) return Dt(e, "marginRight") | ||
2957 | }) | ||
2958 | } | ||
2959 | }), !v.support.pixelPosition && v.fn.position && v.each(["top", "left"], function(e, t) { | ||
2960 | v.cssHooks[t] = { | ||
2961 | get: function(e, n) { | ||
2962 | if (n) { | ||
2963 | var r = Dt(e, t); | ||
2964 | return Ut.test(r) ? v(e).position()[t] + "px" : r | ||
2965 | } | ||
2966 | } | ||
2967 | } | ||
2968 | }) | ||
2969 | }), v.expr && v.expr.filters && (v.expr.filters.hidden = function(e) { | ||
2970 | return e.offsetWidth === 0 && e.offsetHeight === 0 || !v.support.reliableHiddenOffsets && (e.style && e.style.display || Dt(e, "display")) === "none" | ||
2971 | }, v.expr.filters.visible = function(e) { | ||
2972 | return !v.expr.filters.hidden(e) | ||
2973 | }), v.each({ | ||
2974 | margin: "", | ||
2975 | padding: "", | ||
2976 | border: "Width" | ||
2977 | }, function(e, t) { | ||
2978 | v.cssHooks[e + t] = { | ||
2979 | expand: function(n) { | ||
2980 | var r, i = typeof n == "string" ? n.split(" ") : [n], | ||
2981 | s = {}; | ||
2982 | for (r = 0; r < 4; r++) s[e + $t[r] + t] = i[r] || i[r - 2] || i[0]; | ||
2983 | return s | ||
2984 | } | ||
2985 | }, qt.test(e) || (v.cssHooks[e + t].set = Zt) | ||
2986 | }); | ||
2987 | var rn = /%20/g, | ||
2988 | sn = /\[\]$/, | ||
2989 | on = /\r?\n/g, | ||
2990 | un = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, | ||
2991 | an = /^(?:select|textarea)/i; | ||
2992 | v.fn.extend({ | ||
2993 | serialize: function() { | ||
2994 | return v.param(this.serializeArray()) | ||
2995 | }, | ||
2996 | serializeArray: function() { | ||
2997 | return this.map(function() { | ||
2998 | return this.elements ? v.makeArray(this.elements) : this | ||
2999 | }).filter(function() { | ||
3000 | return this.name && !this.disabled && (this.checked || an.test(this.nodeName) || un.test(this.type)) | ||
3001 | }).map(function(e, t) { | ||
3002 | var n = v(this).val(); | ||
3003 | return n == null ? null : v.isArray(n) ? v.map(n, function(e, n) { | ||
3004 | return { | ||
3005 | name: t.name, | ||
3006 | value: e.replace(on, "\r\n") | ||
3007 | } | ||
3008 | }) : { | ||
3009 | name: t.name, | ||
3010 | value: n.replace(on, "\r\n") | ||
3011 | } | ||
3012 | }).get() | ||
3013 | } | ||
3014 | }), v.param = function(e, n) { | ||
3015 | var r, i = [], | ||
3016 | s = function(e, t) { | ||
3017 | t = v.isFunction(t) ? t() : t == null ? "" : t, i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t) | ||
3018 | }; | ||
3019 | n === t && (n = v.ajaxSettings && v.ajaxSettings.traditional); | ||
3020 | if (v.isArray(e) || e.jquery && !v.isPlainObject(e)) v.each(e, function() { | ||
3021 | s(this.name, this.value) | ||
3022 | }); | ||
3023 | else | ||
3024 | for (r in e) fn(r, e[r], n, s); | ||
3025 | return i.join("&").replace(rn, "+") | ||
3026 | }; | ||
3027 | var ln, cn, hn = /#.*$/, | ||
3028 | pn = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, | ||
3029 | dn = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/, | ||
3030 | vn = /^(?:GET|HEAD)$/, | ||
3031 | mn = /^\/\//, | ||
3032 | gn = /\?/, | ||
3033 | yn = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, | ||
3034 | bn = /([?&])_=[^&]*/, | ||
3035 | wn = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/, | ||
3036 | En = v.fn.load, | ||
3037 | Sn = {}, | ||
3038 | xn = {}, | ||
3039 | Tn = ["*/"] + ["*"]; | ||
3040 | try { | ||
3041 | cn = s.href | ||
3042 | } catch (Nn) { | ||
3043 | cn = i.createElement("a"), cn.href = "", cn = cn.href | ||
3044 | } | ||
3045 | ln = wn.exec(cn.toLowerCase()) || [], v.fn.load = function(e, n, r) { | ||
3046 | if (typeof e != "string" && En) return En.apply(this, arguments); | ||
3047 | if (!this.length) return this; | ||
3048 | var i, s, o, u = this, | ||
3049 | a = e.indexOf(" "); | ||
3050 | return a >= 0 && (i = e.slice(a, e.length), e = e.slice(0, a)), v.isFunction(n) ? (r = n, n = t) : n && typeof n == "object" && (s = "POST"), v.ajax({ | ||
3051 | url: e, | ||
3052 | type: s, | ||
3053 | dataType: "html", | ||
3054 | data: n, | ||
3055 | complete: function(e, t) { | ||
3056 | r && u.each(r, o || [e.responseText, t, e]) | ||
3057 | } | ||
3058 | }).done(function(e) { | ||
3059 | o = arguments, u.html(i ? v("<div>").append(e.replace(yn, "")).find(i) : e) | ||
3060 | }), this | ||
3061 | }, v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function(e, t) { | ||
3062 | v.fn[t] = function(e) { | ||
3063 | return this.on(t, e) | ||
3064 | } | ||
3065 | }), v.each(["get", "post"], function(e, n) { | ||
3066 | v[n] = function(e, r, i, s) { | ||
3067 | return v.isFunction(r) && (s = s || i, i = r, r = t), v.ajax({ | ||
3068 | type: n, | ||
3069 | url: e, | ||
3070 | data: r, | ||
3071 | success: i, | ||
3072 | dataType: s | ||
3073 | }) | ||
3074 | } | ||
3075 | }), v.extend({ | ||
3076 | getScript: function(e, n) { | ||
3077 | return v.get(e, t, n, "script") | ||
3078 | }, | ||
3079 | getJSON: function(e, t, n) { | ||
3080 | return v.get(e, t, n, "json") | ||
3081 | }, | ||
3082 | ajaxSetup: function(e, t) { | ||
3083 | return t ? Ln(e, v.ajaxSettings) : (t = e, e = v.ajaxSettings), Ln(e, t), e | ||
3084 | }, | ||
3085 | ajaxSettings: { | ||
3086 | url: cn, | ||
3087 | isLocal: dn.test(ln[1]), | ||
3088 | global: !0, | ||
3089 | type: "GET", | ||
3090 | contentType: "application/x-www-form-urlencoded; charset=UTF-8", | ||
3091 | processData: !0, | ||
3092 | async: !0, | ||
3093 | accepts: { | ||
3094 | xml: "application/xml, text/xml", | ||
3095 | html: "text/html", | ||
3096 | text: "text/plain", | ||
3097 | json: "application/json, text/javascript", | ||
3098 | "*": Tn | ||
3099 | }, | ||
3100 | contents: { | ||
3101 | xml: /xml/, | ||
3102 | html: /html/, | ||
3103 | json: /json/ | ||
3104 | }, | ||
3105 | responseFields: { | ||
3106 | xml: "responseXML", | ||
3107 | text: "responseText" | ||
3108 | }, | ||
3109 | converters: { | ||
3110 | "* text": e.String, | ||
3111 | "text html": !0, | ||
3112 | "text json": v.parseJSON, | ||
3113 | "text xml": v.parseXML | ||
3114 | }, | ||
3115 | flatOptions: { | ||
3116 | context: !0, | ||
3117 | url: !0 | ||
3118 | } | ||
3119 | }, | ||
3120 | ajaxPrefilter: Cn(Sn), | ||
3121 | ajaxTransport: Cn(xn), | ||
3122 | ajax: function(e, n) { | ||
3123 | function T(e, n, s, a) { | ||
3124 | var l, y, b, w, S, T = n; | ||
3125 | if (E === 2) return; | ||
3126 | E = 2, u && clearTimeout(u), o = t, i = a || "", x.readyState = e > 0 ? 4 : 0, s && (w = An(c, x, s)); | ||
3127 | if (e >= 200 && e < 300 || e === 304) c.ifModified && (S = x.getResponseHeader("Last-Modified"), S && (v.lastModified[r] = S), S = x.getResponseHeader("Etag"), S && (v.etag[r] = S)), e === 304 ? (T = "notmodified", l = !0) : (l = On(c, w), T = l.state, y = l.data, b = l.error, l = !b); | ||
3128 | else { | ||
3129 | b = T; | ||
3130 | if (!T || e) T = "error", e < 0 && (e = 0) | ||
3131 | } | ||
3132 | x.status = e, x.statusText = (n || T) + "", l ? d.resolveWith(h, [y, T, x]) : d.rejectWith(h, [x, T, b]), x.statusCode(g), g = t, f && p.trigger("ajax" + (l ? "Success" : "Error"), [x, c, l ? y : b]), m.fireWith(h, [x, T]), f && (p.trigger("ajaxComplete", [x, c]), --v.active || v.event.trigger("ajaxStop")) | ||
3133 | } | ||
3134 | typeof e == "object" && (n = e, e = t), n = n || {}; | ||
3135 | var r, i, s, o, u, a, f, l, c = v.ajaxSetup({}, n), | ||
3136 | h = c.context || c, | ||
3137 | p = h !== c && (h.nodeType || h instanceof v) ? v(h) : v.event, | ||
3138 | d = v.Deferred(), | ||
3139 | m = v.Callbacks("once memory"), | ||
3140 | g = c.statusCode || {}, | ||
3141 | b = {}, | ||
3142 | w = {}, | ||
3143 | E = 0, | ||
3144 | S = "canceled", | ||
3145 | x = { | ||
3146 | readyState: 0, | ||
3147 | setRequestHeader: function(e, t) { | ||
3148 | if (!E) { | ||
3149 | var n = e.toLowerCase(); | ||
3150 | e = w[n] = w[n] || e, b[e] = t | ||
3151 | } | ||
3152 | return this | ||
3153 | }, | ||
3154 | getAllResponseHeaders: function() { | ||
3155 | return E === 2 ? i : null | ||
3156 | }, | ||
3157 | getResponseHeader: function(e) { | ||
3158 | var n; | ||
3159 | if (E === 2) { | ||
3160 | if (!s) { | ||
3161 | s = {}; | ||
3162 | while (n = pn.exec(i)) s[n[1].toLowerCase()] = n[2] | ||
3163 | } | ||
3164 | n = s[e.toLowerCase()] | ||
3165 | } | ||
3166 | return n === t ? null : n | ||
3167 | }, | ||
3168 | overrideMimeType: function(e) { | ||
3169 | return E || (c.mimeType = e), this | ||
3170 | }, | ||
3171 | abort: function(e) { | ||
3172 | return e = e || S, o && o.abort(e), T(0, e), this | ||
3173 | } | ||
3174 | }; | ||
3175 | d.promise(x), x.success = x.done, x.error = x.fail, x.complete = m.add, x.statusCode = function(e) { | ||
3176 | if (e) { | ||
3177 | var t; | ||
3178 | if (E < 2) | ||
3179 | for (t in e) g[t] = [g[t], e[t]]; | ||
3180 | else t = e[x.status], x.always(t) | ||
3181 | } | ||
3182 | return this | ||
3183 | }, c.url = ((e || c.url) + "").replace(hn, "").replace(mn, ln[1] + "//"), c.dataTypes = v.trim(c.dataType || "*").toLowerCase().split(y), c.crossDomain == null && (a = wn.exec(c.url.toLowerCase()), c.crossDomain = !(!a || a[1] === ln[1] && a[2] === ln[2] && (a[3] || (a[1] === "http:" ? 80 : 443)) == (ln[3] || (ln[1] === "http:" ? 80 : 443)))), c.data && c.processData && typeof c.data != "string" && (c.data = v.param(c.data, c.traditional)), kn(Sn, c, n, x); | ||
3184 | if (E === 2) return x; | ||
3185 | f = c.global, c.type = c.type.toUpperCase(), c.hasContent = !vn.test(c.type), f && v.active++ === 0 && v.event.trigger("ajaxStart"); | ||
3186 | if (!c.hasContent) { | ||
3187 | c.data && (c.url += (gn.test(c.url) ? "&" : "?") + c.data, delete c.data), r = c.url; | ||
3188 | if (c.cache === !1) { | ||
3189 | var N = v.now(), | ||
3190 | C = c.url.replace(bn, "$1_=" + N); | ||
3191 | c.url = C + (C === c.url ? (gn.test(c.url) ? "&" : "?") + "_=" + N : "") | ||
3192 | } | ||
3193 | }(c.data && c.hasContent && c.contentType !== !1 || n.contentType) && x.setRequestHeader("Content-Type", c.contentType), c.ifModified && (r = r || c.url, v.lastModified[r] && x.setRequestHeader("If-Modified-Since", v.lastModified[r]), v.etag[r] && x.setRequestHeader("If-None-Match", v.etag[r])), x.setRequestHeader("Accept", c.dataTypes[0] && c.accepts[c.dataTypes[0]] ? c.accepts[c.dataTypes[0]] + (c.dataTypes[0] !== "*" ? ", " + Tn + "; q=0.01" : "") : c.accepts["*"]); | ||
3194 | for (l in c.headers) x.setRequestHeader(l, c.headers[l]); | ||
3195 | if (!c.beforeSend || c.beforeSend.call(h, x, c) !== !1 && E !== 2) { | ||
3196 | S = "abort"; | ||
3197 | for (l in { | ||
3198 | success: 1, | ||
3199 | error: 1, | ||
3200 | complete: 1 | ||
3201 | }) x[l](c[l]); | ||
3202 | o = kn(xn, c, n, x); | ||
3203 | if (!o) T(-1, "No Transport"); | ||
3204 | else { | ||
3205 | x.readyState = 1, f && p.trigger("ajaxSend", [x, c]), c.async && c.timeout > 0 && (u = setTimeout(function() { | ||
3206 | x.abort("timeout") | ||
3207 | }, c.timeout)); | ||
3208 | try { | ||
3209 | E = 1, o.send(b, T) | ||
3210 | } catch (k) { | ||
3211 | if (!(E < 2)) throw k; | ||
3212 | T(-1, k) | ||
3213 | } | ||
3214 | } | ||
3215 | return x | ||
3216 | } | ||
3217 | return x.abort() | ||
3218 | }, | ||
3219 | active: 0, | ||
3220 | lastModified: {}, | ||
3221 | etag: {} | ||
3222 | }); | ||
3223 | var Mn = [], | ||
3224 | _n = /\?/, | ||
3225 | Dn = /(=)\?(?=&|$)|\?\?/, | ||
3226 | Pn = v.now(); | ||
3227 | v.ajaxSetup({ | ||
3228 | jsonp: "callback", | ||
3229 | jsonpCallback: function() { | ||
3230 | var e = Mn.pop() || v.expando + "_" + Pn++; | ||
3231 | return this[e] = !0, e | ||
3232 | } | ||
3233 | }), v.ajaxPrefilter("json jsonp", function(n, r, i) { | ||
3234 | var s, o, u, a = n.data, | ||
3235 | f = n.url, | ||
3236 | l = n.jsonp !== !1, | ||
3237 | c = l && Dn.test(f), | ||
3238 | h = l && !c && typeof a == "string" && !(n.contentType || "").indexOf("application/x-www-form-urlencoded") && Dn.test(a); | ||
3239 | if (n.dataTypes[0] === "jsonp" || c || h) return s = n.jsonpCallback = v.isFunction(n.jsonpCallback) ? n.jsonpCallback() : n.jsonpCallback, o = e[s], c ? n.url = f.replace(Dn, "$1" + s) : h ? n.data = a.replace(Dn, "$1" + s) : l && (n.url += (_n.test(f) ? "&" : "?") + n.jsonp + "=" + s), n.converters["script json"] = function() { | ||
3240 | return u || v.error(s + " was not called"), u[0] | ||
3241 | }, n.dataTypes[0] = "json", e[s] = function() { | ||
3242 | u = arguments | ||
3243 | }, i.always(function() { | ||
3244 | e[s] = o, n[s] && (n.jsonpCallback = r.jsonpCallback, Mn.push(s)), u && v.isFunction(o) && o(u[0]), u = o = t | ||
3245 | }), "script" | ||
3246 | }), v.ajaxSetup({ | ||
3247 | accepts: { | ||
3248 | script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" | ||
3249 | }, | ||
3250 | contents: { | ||
3251 | script: /javascript|ecmascript/ | ||
3252 | }, | ||
3253 | converters: { | ||
3254 | "text script": function(e) { | ||
3255 | return v.globalEval(e), e | ||
3256 | } | ||
3257 | } | ||
3258 | }), v.ajaxPrefilter("script", function(e) { | ||
3259 | e.cache === t && (e.cache = !1), e.crossDomain && (e.type = "GET", e.global = !1) | ||
3260 | }), v.ajaxTransport("script", function(e) { | ||
3261 | if (e.crossDomain) { | ||
3262 | var n, r = i.head || i.getElementsByTagName("head")[0] || i.documentElement; | ||
3263 | return { | ||
3264 | send: function(s, o) { | ||
3265 | n = i.createElement("script"), n.async = "async", e.scriptCharset && (n.charset = e.scriptCharset), n.src = e.url, n.onload = n.onreadystatechange = function(e, i) { | ||
3266 | if (i || !n.readyState || /loaded|complete/.test(n.readyState)) n.onload = n.onreadystatechange = null, r && n.parentNode && r.removeChild(n), n = t, i || o(200, "success") | ||
3267 | }, r.insertBefore(n, r.firstChild) | ||
3268 | }, | ||
3269 | abort: function() { | ||
3270 | n && n.onload(0, 1) | ||
3271 | } | ||
3272 | } | ||
3273 | } | ||
3274 | }); | ||
3275 | var Hn, Bn = e.ActiveXObject ? function() { | ||
3276 | for (var e in Hn) Hn[e](0, 1) | ||
3277 | } : !1, | ||
3278 | jn = 0; | ||
3279 | v.ajaxSettings.xhr = e.ActiveXObject ? function() { | ||
3280 | return !this.isLocal && Fn() || In() | ||
3281 | } : Fn, | ||
3282 | function(e) { | ||
3283 | v.extend(v.support, { | ||
3284 | ajax: !!e, | ||
3285 | cors: !!e && "withCredentials" in e | ||
3286 | }) | ||
3287 | }(v.ajaxSettings.xhr()), v.support.ajax && v.ajaxTransport(function(n) { | ||
3288 | if (!n.crossDomain || v.support.cors) { | ||
3289 | var r; | ||
3290 | return { | ||
3291 | send: function(i, s) { | ||
3292 | var o, u, a = n.xhr(); | ||
3293 | n.username ? a.open(n.type, n.url, n.async, n.username, n.password) : a.open(n.type, n.url, n.async); | ||
3294 | if (n.xhrFields) | ||
3295 | for (u in n.xhrFields) a[u] = n.xhrFields[u]; | ||
3296 | n.mimeType && a.overrideMimeType && a.overrideMimeType(n.mimeType), !n.crossDomain && !i["X-Requested-With"] && (i["X-Requested-With"] = "XMLHttpRequest"); | ||
3297 | try { | ||
3298 | for (u in i) a.setRequestHeader(u, i[u]) | ||
3299 | } catch (f) {} | ||
3300 | a.send(n.hasContent && n.data || null), r = function(e, i) { | ||
3301 | var u, f, l, c, h; | ||
3302 | try { | ||
3303 | if (r && (i || a.readyState === 4)) { | ||
3304 | r = t, o && (a.onreadystatechange = v.noop, Bn && delete Hn[o]); | ||
3305 | if (i) a.readyState !== 4 && a.abort(); | ||
3306 | else { | ||
3307 | u = a.status, l = a.getAllResponseHeaders(), c = {}, h = a.responseXML, h && h.documentElement && (c.xml = h); | ||
3308 | try { | ||
3309 | c.text = a.responseText | ||
3310 | } catch (p) {} | ||
3311 | try { | ||
3312 | f = a.statusText | ||
3313 | } catch (p) { | ||
3314 | f = "" | ||
3315 | }!u && n.isLocal && !n.crossDomain ? u = c.text ? 200 : 404 : u === 1223 && (u = 204) | ||
3316 | } | ||
3317 | } | ||
3318 | } catch (d) { | ||
3319 | i || s(-1, d) | ||
3320 | } | ||
3321 | c && s(u, f, c, l) | ||
3322 | }, n.async ? a.readyState === 4 ? setTimeout(r, 0) : (o = ++jn, Bn && (Hn || (Hn = {}, v(e).unload(Bn)), Hn[o] = r), a.onreadystatechange = r) : r() | ||
3323 | }, | ||
3324 | abort: function() { | ||
3325 | r && r(0, 1) | ||
3326 | } | ||
3327 | } | ||
3328 | } | ||
3329 | }); | ||
3330 | var qn, Rn, Un = /^(?:toggle|show|hide)$/, | ||
3331 | zn = new RegExp("^(?:([-+])=|)(" + m + ")([a-z%]*)$", "i"), | ||
3332 | Wn = /queueHooks$/, | ||
3333 | Xn = [Gn], | ||
3334 | Vn = { | ||
3335 | "*": [ | ||
3336 | function(e, t) { | ||
3337 | var n, r, i = this.createTween(e, t), | ||
3338 | s = zn.exec(t), | ||
3339 | o = i.cur(), | ||
3340 | u = +o || 0, | ||
3341 | a = 1, | ||
3342 | f = 20; | ||
3343 | if (s) { | ||
3344 | n = +s[2], r = s[3] || (v.cssNumber[e] ? "" : "px"); | ||
3345 | if (r !== "px" && u) { | ||
3346 | u = v.css(i.elem, e, !0) || n || 1; | ||
3347 | do a = a || ".5", u /= a, v.style(i.elem, e, u + r); while (a !== (a = i.cur() / o) && a !== 1 && --f) | ||
3348 | } | ||
3349 | i.unit = r, i.start = u, i.end = s[1] ? u + (s[1] + 1) * n : n | ||
3350 | } | ||
3351 | return i | ||
3352 | } | ||
3353 | ] | ||
3354 | }; | ||
3355 | v.Animation = v.extend(Kn, { | ||
3356 | tweener: function(e, t) { | ||
3357 | v.isFunction(e) ? (t = e, e = ["*"]) : e = e.split(" "); | ||
3358 | var n, r = 0, | ||
3359 | i = e.length; | ||
3360 | for (; r < i; r++) n = e[r], Vn[n] = Vn[n] || [], Vn[n].unshift(t) | ||
3361 | }, | ||
3362 | prefilter: function(e, t) { | ||
3363 | t ? Xn.unshift(e) : Xn.push(e) | ||
3364 | } | ||
3365 | }), v.Tween = Yn, Yn.prototype = { | ||
3366 | constructor: Yn, | ||
3367 | init: function(e, t, n, r, i, s) { | ||
3368 | this.elem = e, this.prop = n, this.easing = i || "swing", this.options = t, this.start = this.now = this.cur(), this.end = r, this.unit = s || (v.cssNumber[n] ? "" : "px") | ||
3369 | }, | ||
3370 | cur: function() { | ||
3371 | var e = Yn.propHooks[this.prop]; | ||
3372 | return e && e.get ? e.get(this) : Yn.propHooks._default.get(this) | ||
3373 | }, | ||
3374 | run: function(e) { | ||
3375 | var t, n = Yn.propHooks[this.prop]; | ||
3376 | return this.options.duration ? this.pos = t = v.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : Yn.propHooks._default.set(this), this | ||
3377 | } | ||
3378 | }, Yn.prototype.init.prototype = Yn.prototype, Yn.propHooks = { | ||
3379 | _default: { | ||
3380 | get: function(e) { | ||
3381 | var t; | ||
3382 | return e.elem[e.prop] == null || !!e.elem.style && e.elem.style[e.prop] != null ? (t = v.css(e.elem, e.prop, !1, ""), !t || t === "auto" ? 0 : t) : e.elem[e.prop] | ||
3383 | }, | ||
3384 | set: function(e) { | ||
3385 | v.fx.step[e.prop] ? v.fx.step[e.prop](e) : e.elem.style && (e.elem.style[v.cssProps[e.prop]] != null || v.cssHooks[e.prop]) ? v.style(e.elem, e.prop, e.now + e.unit) : e.elem[e.prop] = e.now | ||
3386 | } | ||
3387 | } | ||
3388 | }, Yn.propHooks.scrollTop = Yn.propHooks.scrollLeft = { | ||
3389 | set: function(e) { | ||
3390 | e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now) | ||
3391 | } | ||
3392 | }, v.each(["toggle", "show", "hide"], function(e, t) { | ||
3393 | var n = v.fn[t]; | ||
3394 | v.fn[t] = function(r, i, s) { | ||
3395 | return r == null || typeof r == "boolean" || !e && v.isFunction(r) && v.isFunction(i) ? n.apply(this, arguments) : this.animate(Zn(t, !0), r, i, s) | ||
3396 | } | ||
3397 | }), v.fn.extend({ | ||
3398 | fadeTo: function(e, t, n, r) { | ||
3399 | return this.filter(Gt).css("opacity", 0).show().end().animate({ | ||
3400 | opacity: t | ||
3401 | }, e, n, r) | ||
3402 | }, | ||
3403 | animate: function(e, t, n, r) { | ||
3404 | var i = v.isEmptyObject(e), | ||
3405 | s = v.speed(t, n, r), | ||
3406 | o = function() { | ||
3407 | var t = Kn(this, v.extend({}, e), s); | ||
3408 | i && t.stop(!0) | ||
3409 | }; | ||
3410 | return i || s.queue === !1 ? this.each(o) : this.queue(s.queue, o) | ||
3411 | }, | ||
3412 | stop: function(e, n, r) { | ||
3413 | var i = function(e) { | ||
3414 | var t = e.stop; | ||
3415 | delete e.stop, t(r) | ||
3416 | }; | ||
3417 | return typeof e != "string" && (r = n, n = e, e = t), n && e !== !1 && this.queue(e || "fx", []), this.each(function() { | ||
3418 | var t = !0, | ||
3419 | n = e != null && e + "queueHooks", | ||
3420 | s = v.timers, | ||
3421 | o = v._data(this); | ||
3422 | if (n) o[n] && o[n].stop && i(o[n]); | ||
3423 | else | ||
3424 | for (n in o) o[n] && o[n].stop && Wn.test(n) && i(o[n]); | ||
3425 | for (n = s.length; n--;) s[n].elem === this && (e == null || s[n].queue === e) && (s[n].anim.stop(r), t = !1, s.splice(n, 1)); | ||
3426 | (t || !r) && v.dequeue(this, e) | ||
3427 | }) | ||
3428 | } | ||
3429 | }), v.each({ | ||
3430 | slideDown: Zn("show"), | ||
3431 | slideUp: Zn("hide"), | ||
3432 | slideToggle: Zn("toggle"), | ||
3433 | fadeIn: { | ||
3434 | opacity: "show" | ||
3435 | }, | ||
3436 | fadeOut: { | ||
3437 | opacity: "hide" | ||
3438 | }, | ||
3439 | fadeToggle: { | ||
3440 | opacity: "toggle" | ||
3441 | } | ||
3442 | }, function(e, t) { | ||
3443 | v.fn[e] = function(e, n, r) { | ||
3444 | return this.animate(t, e, n, r) | ||
3445 | } | ||
3446 | }), v.speed = function(e, t, n) { | ||
3447 | var r = e && typeof e == "object" ? v.extend({}, e) : { | ||
3448 | complete: n || !n && t || v.isFunction(e) && e, | ||
3449 | duration: e, | ||
3450 | easing: n && t || t && !v.isFunction(t) && t | ||
3451 | }; | ||
3452 | r.duration = v.fx.off ? 0 : typeof r.duration == "number" ? r.duration : r.duration in v.fx.speeds ? v.fx.speeds[r.duration] : v.fx.speeds._default; | ||
3453 | if (r.queue == null || r.queue === !0) r.queue = "fx"; | ||
3454 | return r.old = r.complete, r.complete = function() { | ||
3455 | v.isFunction(r.old) && r.old.call(this), r.queue && v.dequeue(this, r.queue) | ||
3456 | }, r | ||
3457 | }, v.easing = { | ||
3458 | linear: function(e) { | ||
3459 | return e | ||
3460 | }, | ||
3461 | swing: function(e) { | ||
3462 | return .5 - Math.cos(e * Math.PI) / 2 | ||
3463 | } | ||
3464 | }, v.timers = [], v.fx = Yn.prototype.init, v.fx.tick = function() { | ||
3465 | var e, n = v.timers, | ||
3466 | r = 0; | ||
3467 | qn = v.now(); | ||
3468 | for (; r < n.length; r++) e = n[r], !e() && n[r] === e && n.splice(r--, 1); | ||
3469 | n.length || v.fx.stop(), qn = t | ||
3470 | }, v.fx.timer = function(e) { | ||
3471 | e() && v.timers.push(e) && !Rn && (Rn = setInterval(v.fx.tick, v.fx.interval)) | ||
3472 | }, v.fx.interval = 13, v.fx.stop = function() { | ||
3473 | clearInterval(Rn), Rn = null | ||
3474 | }, v.fx.speeds = { | ||
3475 | slow: 600, | ||
3476 | fast: 200, | ||
3477 | _default: 400 | ||
3478 | }, v.fx.step = {}, v.expr && v.expr.filters && (v.expr.filters.animated = function(e) { | ||
3479 | return v.grep(v.timers, function(t) { | ||
3480 | return e === t.elem | ||
3481 | }).length | ||
3482 | }); | ||
3483 | var er = /^(?:body|html)$/i; | ||
3484 | v.fn.offset = function(e) { | ||
3485 | if (arguments.length) return e === t ? this : this.each(function(t) { | ||
3486 | v.offset.setOffset(this, e, t) | ||
3487 | }); | ||
3488 | var n, r, i, s, o, u, a, f = { | ||
3489 | top: 0, | ||
3490 | left: 0 | ||
3491 | }, | ||
3492 | l = this[0], | ||
3493 | c = l && l.ownerDocument; | ||
3494 | if (!c) return; | ||
3495 | return (r = c.body) === l ? v.offset.bodyOffset(l) : (n = c.documentElement, v.contains(n, l) ? (typeof l.getBoundingClientRect != "undefined" && (f = l.getBoundingClientRect()), i = tr(c), s = n.clientTop || r.clientTop || 0, o = n.clientLeft || r.clientLeft || 0, u = i.pageYOffset || n.scrollTop, a = i.pageXOffset || n.scrollLeft, { | ||
3496 | top: f.top + u - s, | ||
3497 | left: f.left + a - o | ||
3498 | }) : f) | ||
3499 | }, v.offset = { | ||
3500 | bodyOffset: function(e) { | ||
3501 | var t = e.offsetTop, | ||
3502 | n = e.offsetLeft; | ||
3503 | return v.support.doesNotIncludeMarginInBodyOffset && (t += parseFloat(v.css(e, "marginTop")) || 0, n += parseFloat(v.css(e, "marginLeft")) || 0), { | ||
3504 | top: t, | ||
3505 | left: n | ||
3506 | } | ||
3507 | }, | ||
3508 | setOffset: function(e, t, n) { | ||
3509 | var r = v.css(e, "position"); | ||
3510 | r === "static" && (e.style.position = "relative"); | ||
3511 | var i = v(e), | ||
3512 | s = i.offset(), | ||
3513 | o = v.css(e, "top"), | ||
3514 | u = v.css(e, "left"), | ||
3515 | a = (r === "absolute" || r === "fixed") && v.inArray("auto", [o, u]) > -1, | ||
3516 | f = {}, | ||
3517 | l = {}, | ||
3518 | c, h; | ||
3519 | a ? (l = i.position(), c = l.top, h = l.left) : (c = parseFloat(o) || 0, h = parseFloat(u) || 0), v.isFunction(t) && (t = t.call(e, n, s)), t.top != null && (f.top = t.top - s.top + c), t.left != null && (f.left = t.left - s.left + h), "using" in t ? t.using.call(e, f) : i.css(f) | ||
3520 | } | ||
3521 | }, v.fn.extend({ | ||
3522 | position: function() { | ||
3523 | if (!this[0]) return; | ||
3524 | var e = this[0], | ||
3525 | t = this.offsetParent(), | ||
3526 | n = this.offset(), | ||
3527 | r = er.test(t[0].nodeName) ? { | ||
3528 | top: 0, | ||
3529 | left: 0 | ||
3530 | } : t.offset(); | ||
3531 | return n.top -= parseFloat(v.css(e, "marginTop")) || 0, n.left -= parseFloat(v.css(e, "marginLeft")) || 0, r.top += parseFloat(v.css(t[0], "borderTopWidth")) || 0, r.left += parseFloat(v.css(t[0], "borderLeftWidth")) || 0, { | ||
3532 | top: n.top - r.top, | ||
3533 | left: n.left - r.left | ||
3534 | } | ||
3535 | }, | ||
3536 | offsetParent: function() { | ||
3537 | return this.map(function() { | ||
3538 | var e = this.offsetParent || i.body; | ||
3539 | while (e && !er.test(e.nodeName) && v.css(e, "position") === "static") e = e.offsetParent; | ||
3540 | return e || i.body | ||
3541 | }) | ||
3542 | } | ||
3543 | }), v.each({ | ||
3544 | scrollLeft: "pageXOffset", | ||
3545 | scrollTop: "pageYOffset" | ||
3546 | }, function(e, n) { | ||
3547 | var r = /Y/.test(n); | ||
3548 | v.fn[e] = function(i) { | ||
3549 | return v.access(this, function(e, i, s) { | ||
3550 | var o = tr(e); | ||
3551 | if (s === t) return o ? n in o ? o[n] : o.document.documentElement[i] : e[i]; | ||
3552 | o ? o.scrollTo(r ? v(o).scrollLeft() : s, r ? s : v(o).scrollTop()) : e[i] = s | ||
3553 | }, e, i, arguments.length, null) | ||
3554 | } | ||
3555 | }), v.each({ | ||
3556 | Height: "height", | ||
3557 | Width: "width" | ||
3558 | }, function(e, n) { | ||
3559 | v.each({ | ||
3560 | padding: "inner" + e, | ||
3561 | content: n, | ||
3562 | "": "outer" + e | ||
3563 | }, function(r, i) { | ||
3564 | v.fn[i] = function(i, s) { | ||
3565 | var o = arguments.length && (r || typeof i != "boolean"), | ||
3566 | u = r || (i === !0 || s === !0 ? "margin" : "border"); | ||
3567 | return v.access(this, function(n, r, i) { | ||
3568 | var s; | ||
3569 | return v.isWindow(n) ? n.document.documentElement["client" + e] : n.nodeType === 9 ? (s = n.documentElement, Math.max(n.body["scroll" + e], s["scroll" + e], n.body["offset" + e], s["offset" + e], s["client" + e])) : i === t ? v.css(n, r, i, u) : v.style(n, r, i, u) | ||
3570 | }, n, o ? i : t, o, null) | ||
3571 | } | ||
3572 | }) | ||
3573 | }), e.jQuery = e.$ = v, typeof define == "function" && define.amd && define.amd.jQuery && define("jquery", [], function() { | ||
3574 | return v | ||
3575 | }) | ||
3576 | })(window); \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/js/jquery.swatchbook.js b/deprecated/jinwei.me/js/jquery.swatchbook.js new file mode 100644 index 0000000..dc6ce43 --- /dev/null +++ b/deprecated/jinwei.me/js/jquery.swatchbook.js | |||
@@ -0,0 +1,255 @@ | |||
1 | /** | ||
2 | * jquery.swatchbook.js v1.1.0 | ||
3 | * http://www.codrops.com | ||
4 | * | ||
5 | * Licensed under the MIT license. | ||
6 | * http://www.opensource.org/licenses/mit-license.php | ||
7 | * | ||
8 | * Copyright 2012, Codrops | ||
9 | * http://www.codrops.com | ||
10 | */ | ||
11 | |||
12 | ; | ||
13 | (function($, window, undefined) { | ||
14 | |||
15 | 'use strict'; | ||
16 | |||
17 | // global | ||
18 | var Modernizr = window.Modernizr; | ||
19 | |||
20 | jQuery.fn.reverse = [].reverse; | ||
21 | |||
22 | $.SwatchBook = function(options, element) { | ||
23 | |||
24 | this.$el = $(element); | ||
25 | this._init(options); | ||
26 | |||
27 | }; | ||
28 | |||
29 | $.SwatchBook.defaults = { | ||
30 | // index of initial centered item | ||
31 | center: 6, | ||
32 | // number of degrees that is between each item | ||
33 | angleInc: 8, | ||
34 | speed: 700, | ||
35 | easing: 'ease', | ||
36 | // amount in degrees for the opened item's next sibling | ||
37 | proximity: 45, | ||
38 | // amount in degrees between the opened item's next siblings | ||
39 | neighbor: 4, | ||
40 | // animate on load | ||
41 | onLoadAnim: true, | ||
42 | // if it should be closed by default | ||
43 | initclosed: false, | ||
44 | // index of the element that when clicked, triggers the open/close function | ||
45 | // by default there is no such element | ||
46 | closeIdx: -1, | ||
47 | // open one specific item initially (overrides initclosed) | ||
48 | openAt: -1 | ||
49 | }; | ||
50 | |||
51 | $.SwatchBook.prototype = { | ||
52 | |||
53 | _init: function(options) { | ||
54 | |||
55 | this.options = $.extend(true, {}, $.SwatchBook.defaults, options); | ||
56 | |||
57 | this.$items = this.$el.children('div'); | ||
58 | this.itemsCount = this.$items.length; | ||
59 | this.current = -1; | ||
60 | this.support = Modernizr.csstransitions; | ||
61 | this.cache = []; | ||
62 | |||
63 | if (this.options.onLoadAnim) { | ||
64 | this._setTransition(); | ||
65 | } | ||
66 | |||
67 | if (!this.options.initclosed) { | ||
68 | this._center(this.options.center, this.options.onLoadAnim); | ||
69 | } else { | ||
70 | |||
71 | this.isClosed = true; | ||
72 | if (!this.options.onLoadAnim) { | ||
73 | this._setTransition(); | ||
74 | } | ||
75 | |||
76 | } | ||
77 | |||
78 | if (this.options.openAt >= 0 && this.options.openAt < this.itemsCount) { | ||
79 | this._openItem(this.$items.eq(this.options.openAt)); | ||
80 | } | ||
81 | |||
82 | this._initEvents(); | ||
83 | |||
84 | }, | ||
85 | _setTransition: function() { | ||
86 | |||
87 | if (this.support) { | ||
88 | this.$items.css({ | ||
89 | 'transition': 'all ' + this.options.speed + 'ms ' + this.options.easing | ||
90 | }); | ||
91 | } | ||
92 | |||
93 | }, | ||
94 | _openclose: function() { | ||
95 | |||
96 | this.isClosed ? this._center(this.options.center, true) : this.$items.css({ | ||
97 | 'transform': 'rotate(0deg)' | ||
98 | }); | ||
99 | this.isClosed = !this.isClosed; | ||
100 | |||
101 | }, | ||
102 | _center: function(idx, anim) { | ||
103 | |||
104 | var self = this; | ||
105 | |||
106 | this.$items.each(function(i) { | ||
107 | |||
108 | var transformStr = 'rotate(' + (self.options.angleInc * (i - idx)) + 'deg)'; | ||
109 | $(this).css({ | ||
110 | 'transform': transformStr | ||
111 | }); | ||
112 | |||
113 | }); | ||
114 | |||
115 | }, | ||
116 | _openItem: function($item) { | ||
117 | |||
118 | var itmIdx = $item.index(); | ||
119 | |||
120 | if (itmIdx !== this.current) { | ||
121 | |||
122 | if (this.options.closeIdx !== -1 && itmIdx === this.options.closeIdx) { | ||
123 | |||
124 | this._openclose(); | ||
125 | this._setCurrent(); | ||
126 | |||
127 | } else { | ||
128 | |||
129 | this._setCurrent($item); | ||
130 | $item.css({ | ||
131 | 'transform': 'rotate(0deg)' | ||
132 | }); | ||
133 | this._rotateSiblings($item); | ||
134 | |||
135 | } | ||
136 | |||
137 | } | ||
138 | |||
139 | }, | ||
140 | _initEvents: function() { | ||
141 | |||
142 | var self = this; | ||
143 | |||
144 | this.$items.on('click.swatchbook', function(event) { | ||
145 | self._openItem($(this)); | ||
146 | }); | ||
147 | |||
148 | }, | ||
149 | _rotateSiblings: function($item) { | ||
150 | |||
151 | var self = this, | ||
152 | idx = $item.index(), | ||
153 | $cached = this.cache[idx], | ||
154 | $siblings; | ||
155 | |||
156 | if ($cached) { | ||
157 | $siblings = $cached; | ||
158 | } else { | ||
159 | |||
160 | $siblings = $item.siblings(); | ||
161 | this.cache[idx] = $siblings; | ||
162 | |||
163 | } | ||
164 | |||
165 | $siblings.each(function(i) { | ||
166 | |||
167 | var rotateVal = i < idx ? | ||
168 | self.options.angleInc * (i - idx) : | ||
169 | i - idx === 1 ? | ||
170 | self.options.proximity : | ||
171 | self.options.proximity + (i - idx - 1) * self.options.neighbor; | ||
172 | |||
173 | var transformStr = 'rotate(' + rotateVal + 'deg)'; | ||
174 | |||
175 | $(this).css({ | ||
176 | 'transform': transformStr | ||
177 | }); | ||
178 | |||
179 | }); | ||
180 | |||
181 | }, | ||
182 | _setCurrent: function($el) { | ||
183 | |||
184 | this.current = $el ? $el.index() : -1; | ||
185 | this.$items.removeClass('ff-active'); | ||
186 | if ($el) { | ||
187 | $el.addClass('ff-active'); | ||
188 | } | ||
189 | |||
190 | } | ||
191 | |||
192 | }; | ||
193 | |||
194 | var logError = function(message) { | ||
195 | |||
196 | if (window.console) { | ||
197 | |||
198 | window.console.error(message); | ||
199 | |||
200 | } | ||
201 | |||
202 | }; | ||
203 | |||
204 | $.fn.swatchbook = function(options) { | ||
205 | |||
206 | var instance = $.data(this, 'swatchbook'); | ||
207 | |||
208 | if (typeof options === 'string') { | ||
209 | |||
210 | var args = Array.prototype.slice.call(arguments, 1); | ||
211 | |||
212 | this.each(function() { | ||
213 | |||
214 | if (!instance) { | ||
215 | |||
216 | logError("cannot call methods on swatchbook prior to initialization; " + | ||
217 | "attempted to call method '" + options + "'"); | ||
218 | return; | ||
219 | |||
220 | } | ||
221 | |||
222 | if (!$.isFunction(instance[options]) || options.charAt(0) === "_") { | ||
223 | |||
224 | logError("no such method '" + options + "' for swatchbook instance"); | ||
225 | return; | ||
226 | |||
227 | } | ||
228 | |||
229 | instance[options].apply(instance, args); | ||
230 | |||
231 | }); | ||
232 | |||
233 | } else { | ||
234 | |||
235 | this.each(function() { | ||
236 | |||
237 | if (instance) { | ||
238 | |||
239 | instance._init(); | ||
240 | |||
241 | } else { | ||
242 | |||
243 | instance = $.data(this, 'swatchbook', new $.SwatchBook(options, this)); | ||
244 | |||
245 | } | ||
246 | |||
247 | }); | ||
248 | |||
249 | } | ||
250 | |||
251 | return instance; | ||
252 | |||
253 | }; | ||
254 | |||
255 | })(jQuery, window); \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/js/modernizr.custom.79639.js b/deprecated/jinwei.me/js/modernizr.custom.79639.js new file mode 100644 index 0000000..23b151c --- /dev/null +++ b/deprecated/jinwei.me/js/modernizr.custom.79639.js | |||
@@ -0,0 +1,167 @@ | |||
1 | /* Modernizr 2.5.3 (Custom Build) | MIT & BSD | ||
2 | * Build: http://www.modernizr.com/download/#-cssanimations-csstransforms-csstransforms3d-csstransitions-shiv-cssclasses-teststyles-testprop-testallprops-prefixes-domprefixes | ||
3 | */ | ||
4 | ; | ||
5 | window.Modernizr = function(a, b, c) { | ||
6 | function z(a) { | ||
7 | j.cssText = a | ||
8 | } | ||
9 | |||
10 | function A(a, b) { | ||
11 | return z(m.join(a + ";") + (b || "")) | ||
12 | } | ||
13 | |||
14 | function B(a, b) { | ||
15 | return typeof a === b | ||
16 | } | ||
17 | |||
18 | function C(a, b) { | ||
19 | return !!~("" + a).indexOf(b) | ||
20 | } | ||
21 | |||
22 | function D(a, b) { | ||
23 | for (var d in a) | ||
24 | if (j[a[d]] !== c) return b == "pfx" ? a[d] : !0; | ||
25 | return !1 | ||
26 | } | ||
27 | |||
28 | function E(a, b, d) { | ||
29 | for (var e in a) { | ||
30 | var f = b[a[e]]; | ||
31 | if (f !== c) return d === !1 ? a[e] : B(f, "function") ? f.bind(d || b) : f | ||
32 | } | ||
33 | return !1 | ||
34 | } | ||
35 | |||
36 | function F(a, b, c) { | ||
37 | var d = a.charAt(0).toUpperCase() + a.substr(1), | ||
38 | e = (a + " " + o.join(d + " ") + d).split(" "); | ||
39 | return B(b, "string") || B(b, "undefined") ? D(e, b) : (e = (a + " " + p.join(d + " ") + d).split(" "), E(e, b, c)) | ||
40 | } | ||
41 | var d = "2.5.3", | ||
42 | e = {}, | ||
43 | f = !0, | ||
44 | g = b.documentElement, | ||
45 | h = "modernizr", | ||
46 | i = b.createElement(h), | ||
47 | j = i.style, | ||
48 | k, l = {}.toString, | ||
49 | m = " -webkit- -moz- -o- -ms- ".split(" "), | ||
50 | n = "Webkit Moz O ms", | ||
51 | o = n.split(" "), | ||
52 | p = n.toLowerCase().split(" "), | ||
53 | q = {}, | ||
54 | r = {}, | ||
55 | s = {}, | ||
56 | t = [], | ||
57 | u = t.slice, | ||
58 | v, w = function(a, c, d, e) { | ||
59 | var f, i, j, k = b.createElement("div"), | ||
60 | l = b.body, | ||
61 | m = l ? l : b.createElement("body"); | ||
62 | if (parseInt(d, 10)) | ||
63 | while (d--) j = b.createElement("div"), j.id = e ? e[d] : h + (d + 1), k.appendChild(j); | ||
64 | return f = ["­", "<style>", a, "</style>"].join(""), k.id = h, (l ? k : m).innerHTML += f, m.appendChild(k), l || (m.style.background = "", g.appendChild(m)), i = c(k, a), l ? k.parentNode.removeChild(k) : m.parentNode.removeChild(m), !!i | ||
65 | }, | ||
66 | x = {}.hasOwnProperty, | ||
67 | y; | ||
68 | !B(x, "undefined") && !B(x.call, "undefined") ? y = function(a, b) { | ||
69 | return x.call(a, b) | ||
70 | } : y = function(a, b) { | ||
71 | return b in a && B(a.constructor.prototype[b], "undefined") | ||
72 | }, Function.prototype.bind || (Function.prototype.bind = function(b) { | ||
73 | var c = this; | ||
74 | if (typeof c != "function") throw new TypeError; | ||
75 | var d = u.call(arguments, 1), | ||
76 | e = function() { | ||
77 | if (this instanceof e) { | ||
78 | var a = function() {}; | ||
79 | a.prototype = c.prototype; | ||
80 | var f = new a, | ||
81 | g = c.apply(f, d.concat(u.call(arguments))); | ||
82 | return Object(g) === g ? g : f | ||
83 | } | ||
84 | return c.apply(b, d.concat(u.call(arguments))) | ||
85 | }; | ||
86 | return e | ||
87 | }); | ||
88 | var G = function(a, c) { | ||
89 | var d = a.join(""), | ||
90 | f = c.length; | ||
91 | w(d, function(a, c) { | ||
92 | var d = b.styleSheets[b.styleSheets.length - 1], | ||
93 | g = d ? d.cssRules && d.cssRules[0] ? d.cssRules[0].cssText : d.cssText || "" : "", | ||
94 | h = a.childNodes, | ||
95 | i = {}; | ||
96 | while (f--) i[h[f].id] = h[f]; | ||
97 | e.csstransforms3d = (i.csstransforms3d && i.csstransforms3d.offsetLeft) === 9 && i.csstransforms3d.offsetHeight === 3 | ||
98 | }, f, c) | ||
99 | }([, ["@media (", m.join("transform-3d),("), h, ")", "{#csstransforms3d{left:9px;position:absolute;height:3px;}}"].join("")], [, "csstransforms3d"]); | ||
100 | q.cssanimations = function() { | ||
101 | return F("animationName") | ||
102 | }, q.csstransforms = function() { | ||
103 | return !!F("transform") | ||
104 | }, q.csstransforms3d = function() { | ||
105 | var a = !!F("perspective"); | ||
106 | return a && "webkitPerspective" in g.style && (a = e.csstransforms3d), a | ||
107 | }, q.csstransitions = function() { | ||
108 | return F("transition") | ||
109 | }; | ||
110 | for (var H in q) y(q, H) && (v = H.toLowerCase(), e[v] = q[H](), t.push((e[v] ? "" : "no-") + v)); | ||
111 | return z(""), i = k = null, | ||
112 | function(a, b) { | ||
113 | function g(a, b) { | ||
114 | var c = a.createElement("p"), | ||
115 | d = a.getElementsByTagName("head")[0] || a.documentElement; | ||
116 | return c.innerHTML = "x<style>" + b + "</style>", d.insertBefore(c.lastChild, d.firstChild) | ||
117 | } | ||
118 | |||
119 | function h() { | ||
120 | var a = k.elements; | ||
121 | return typeof a == "string" ? a.split(" ") : a | ||
122 | } | ||
123 | |||
124 | function i(a) { | ||
125 | var b = {}, | ||
126 | c = a.createElement, | ||
127 | e = a.createDocumentFragment, | ||
128 | f = e(); | ||
129 | a.createElement = function(a) { | ||
130 | var e = (b[a] || (b[a] = c(a))).cloneNode(); | ||
131 | return k.shivMethods && e.canHaveChildren && !d.test(a) ? f.appendChild(e) : e | ||
132 | }, a.createDocumentFragment = Function("h,f", "return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&(" + h().join().replace(/\w+/g, function(a) { | ||
133 | return b[a] = c(a), f.createElement(a), 'c("' + a + '")' | ||
134 | }) + ");return n}")(k, f) | ||
135 | } | ||
136 | |||
137 | function j(a) { | ||
138 | var b; | ||
139 | return a.documentShived ? a : (k.shivCSS && !e && (b = !!g(a, "article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio{display:none}canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden]{display:none}audio[controls]{display:inline-block;*display:inline;*zoom:1}mark{background:#FF0;color:#000}")), f || (b = !i(a)), b && (a.documentShived = b), a) | ||
140 | } | ||
141 | var c = a.html5 || {}, | ||
142 | d = /^<|^(?:button|form|map|select|textarea)$/i, | ||
143 | e, f; | ||
144 | (function() { | ||
145 | var a = b.createElement("a"); | ||
146 | a.innerHTML = "<xyz></xyz>", e = "hidden" in a, f = a.childNodes.length == 1 || function() { | ||
147 | try { | ||
148 | b.createElement("a") | ||
149 | } catch (a) { | ||
150 | return !0 | ||
151 | } | ||
152 | var c = b.createDocumentFragment(); | ||
153 | return typeof c.cloneNode == "undefined" || typeof c.createDocumentFragment == "undefined" || typeof c.createElement == "undefined" | ||
154 | }() | ||
155 | })(); | ||
156 | var k = { | ||
157 | elements: c.elements || "abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video", | ||
158 | shivCSS: c.shivCSS !== !1, | ||
159 | shivMethods: c.shivMethods !== !1, | ||
160 | type: "default", | ||
161 | shivDocument: j | ||
162 | }; | ||
163 | a.html5 = k, j(b) | ||
164 | }(this, b), e._version = d, e._prefixes = m, e._domPrefixes = p, e._cssomPrefixes = o, e.testProp = function(a) { | ||
165 | return D([a]) | ||
166 | }, e.testAllProps = F, e.testStyles = w, g.className = g.className.replace(/(^|\s)no-js(\s|$)/, "$1$2") + (f ? " js " + t.join(" ") : ""), e | ||
167 | }(this, this.document); \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/mobile/css/bootstrap-theme.css b/deprecated/jinwei.me/mobile/css/bootstrap-theme.css new file mode 100644 index 0000000..a406992 --- /dev/null +++ b/deprecated/jinwei.me/mobile/css/bootstrap-theme.css | |||
@@ -0,0 +1,347 @@ | |||
1 | /*! | ||
2 | * Bootstrap v3.1.1 (http://getbootstrap.com) | ||
3 | * Copyright 2011-2014 Twitter, Inc. | ||
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
5 | */ | ||
6 | |||
7 | .btn-default, | ||
8 | .btn-primary, | ||
9 | .btn-success, | ||
10 | .btn-info, | ||
11 | .btn-warning, | ||
12 | .btn-danger { | ||
13 | text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); | ||
14 | -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); | ||
15 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); | ||
16 | } | ||
17 | .btn-default:active, | ||
18 | .btn-primary:active, | ||
19 | .btn-success:active, | ||
20 | .btn-info:active, | ||
21 | .btn-warning:active, | ||
22 | .btn-danger:active, | ||
23 | .btn-default.active, | ||
24 | .btn-primary.active, | ||
25 | .btn-success.active, | ||
26 | .btn-info.active, | ||
27 | .btn-warning.active, | ||
28 | .btn-danger.active { | ||
29 | -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); | ||
30 | box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); | ||
31 | } | ||
32 | .btn:active, | ||
33 | .btn.active { | ||
34 | background-image: none; | ||
35 | } | ||
36 | .btn-default { | ||
37 | text-shadow: 0 1px 0 #fff; | ||
38 | background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); | ||
39 | background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); | ||
40 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); | ||
41 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
42 | background-repeat: repeat-x; | ||
43 | border-color: #dbdbdb; | ||
44 | border-color: #ccc; | ||
45 | } | ||
46 | .btn-default:hover, | ||
47 | .btn-default:focus { | ||
48 | background-color: #e0e0e0; | ||
49 | background-position: 0 -15px; | ||
50 | } | ||
51 | .btn-default:active, | ||
52 | .btn-default.active { | ||
53 | background-color: #e0e0e0; | ||
54 | border-color: #dbdbdb; | ||
55 | } | ||
56 | .btn-primary { | ||
57 | background-image: -webkit-linear-gradient(top, #428bca 0%, #2d6ca2 100%); | ||
58 | background-image: linear-gradient(to bottom, #428bca 0%, #2d6ca2 100%); | ||
59 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff2d6ca2', GradientType=0); | ||
60 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
61 | background-repeat: repeat-x; | ||
62 | border-color: #2b669a; | ||
63 | } | ||
64 | .btn-primary:hover, | ||
65 | .btn-primary:focus { | ||
66 | background-color: #2d6ca2; | ||
67 | background-position: 0 -15px; | ||
68 | } | ||
69 | .btn-primary:active, | ||
70 | .btn-primary.active { | ||
71 | background-color: #2d6ca2; | ||
72 | border-color: #2b669a; | ||
73 | } | ||
74 | .btn-success { | ||
75 | background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); | ||
76 | background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); | ||
77 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); | ||
78 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
79 | background-repeat: repeat-x; | ||
80 | border-color: #3e8f3e; | ||
81 | } | ||
82 | .btn-success:hover, | ||
83 | .btn-success:focus { | ||
84 | background-color: #419641; | ||
85 | background-position: 0 -15px; | ||
86 | } | ||
87 | .btn-success:active, | ||
88 | .btn-success.active { | ||
89 | background-color: #419641; | ||
90 | border-color: #3e8f3e; | ||
91 | } | ||
92 | .btn-info { | ||
93 | background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); | ||
94 | background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); | ||
95 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); | ||
96 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
97 | background-repeat: repeat-x; | ||
98 | border-color: #28a4c9; | ||
99 | } | ||
100 | .btn-info:hover, | ||
101 | .btn-info:focus { | ||
102 | background-color: #2aabd2; | ||
103 | background-position: 0 -15px; | ||
104 | } | ||
105 | .btn-info:active, | ||
106 | .btn-info.active { | ||
107 | background-color: #2aabd2; | ||
108 | border-color: #28a4c9; | ||
109 | } | ||
110 | .btn-warning { | ||
111 | background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); | ||
112 | background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); | ||
113 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); | ||
114 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
115 | background-repeat: repeat-x; | ||
116 | border-color: #e38d13; | ||
117 | } | ||
118 | .btn-warning:hover, | ||
119 | .btn-warning:focus { | ||
120 | background-color: #eb9316; | ||
121 | background-position: 0 -15px; | ||
122 | } | ||
123 | .btn-warning:active, | ||
124 | .btn-warning.active { | ||
125 | background-color: #eb9316; | ||
126 | border-color: #e38d13; | ||
127 | } | ||
128 | .btn-danger { | ||
129 | background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); | ||
130 | background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); | ||
131 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); | ||
132 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
133 | background-repeat: repeat-x; | ||
134 | border-color: #b92c28; | ||
135 | } | ||
136 | .btn-danger:hover, | ||
137 | .btn-danger:focus { | ||
138 | background-color: #c12e2a; | ||
139 | background-position: 0 -15px; | ||
140 | } | ||
141 | .btn-danger:active, | ||
142 | .btn-danger.active { | ||
143 | background-color: #c12e2a; | ||
144 | border-color: #b92c28; | ||
145 | } | ||
146 | .thumbnail, | ||
147 | .img-thumbnail { | ||
148 | -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); | ||
149 | box-shadow: 0 1px 2px rgba(0, 0, 0, .075); | ||
150 | } | ||
151 | .dropdown-menu > li > a:hover, | ||
152 | .dropdown-menu > li > a:focus { | ||
153 | background-color: #e8e8e8; | ||
154 | background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||
155 | background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); | ||
156 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); | ||
157 | background-repeat: repeat-x; | ||
158 | } | ||
159 | .dropdown-menu > .active > a, | ||
160 | .dropdown-menu > .active > a:hover, | ||
161 | .dropdown-menu > .active > a:focus { | ||
162 | background-color: #357ebd; | ||
163 | background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%); | ||
164 | background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%); | ||
165 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0); | ||
166 | background-repeat: repeat-x; | ||
167 | } | ||
168 | .navbar-default { | ||
169 | background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); | ||
170 | background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); | ||
171 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); | ||
172 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
173 | background-repeat: repeat-x; | ||
174 | border-radius: 4px; | ||
175 | -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); | ||
176 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); | ||
177 | } | ||
178 | .navbar-default .navbar-nav > .active > a { | ||
179 | background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f3f3f3 100%); | ||
180 | background-image: linear-gradient(to bottom, #ebebeb 0%, #f3f3f3 100%); | ||
181 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff3f3f3', GradientType=0); | ||
182 | background-repeat: repeat-x; | ||
183 | -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); | ||
184 | box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); | ||
185 | } | ||
186 | .navbar-brand, | ||
187 | .navbar-nav > li > a { | ||
188 | text-shadow: 0 1px 0 rgba(255, 255, 255, .25); | ||
189 | } | ||
190 | .navbar-inverse { | ||
191 | background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); | ||
192 | background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); | ||
193 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); | ||
194 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
195 | background-repeat: repeat-x; | ||
196 | } | ||
197 | .navbar-inverse .navbar-nav > .active > a { | ||
198 | background-image: -webkit-linear-gradient(top, #222 0%, #282828 100%); | ||
199 | background-image: linear-gradient(to bottom, #222 0%, #282828 100%); | ||
200 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff282828', GradientType=0); | ||
201 | background-repeat: repeat-x; | ||
202 | -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); | ||
203 | box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); | ||
204 | } | ||
205 | .navbar-inverse .navbar-brand, | ||
206 | .navbar-inverse .navbar-nav > li > a { | ||
207 | text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); | ||
208 | } | ||
209 | .navbar-static-top, | ||
210 | .navbar-fixed-top, | ||
211 | .navbar-fixed-bottom { | ||
212 | border-radius: 0; | ||
213 | } | ||
214 | .alert { | ||
215 | text-shadow: 0 1px 0 rgba(255, 255, 255, .2); | ||
216 | -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); | ||
217 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); | ||
218 | } | ||
219 | .alert-success { | ||
220 | background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); | ||
221 | background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); | ||
222 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); | ||
223 | background-repeat: repeat-x; | ||
224 | border-color: #b2dba1; | ||
225 | } | ||
226 | .alert-info { | ||
227 | background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); | ||
228 | background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); | ||
229 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); | ||
230 | background-repeat: repeat-x; | ||
231 | border-color: #9acfea; | ||
232 | } | ||
233 | .alert-warning { | ||
234 | background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); | ||
235 | background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); | ||
236 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); | ||
237 | background-repeat: repeat-x; | ||
238 | border-color: #f5e79e; | ||
239 | } | ||
240 | .alert-danger { | ||
241 | background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); | ||
242 | background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); | ||
243 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); | ||
244 | background-repeat: repeat-x; | ||
245 | border-color: #dca7a7; | ||
246 | } | ||
247 | .progress { | ||
248 | background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); | ||
249 | background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); | ||
250 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); | ||
251 | background-repeat: repeat-x; | ||
252 | } | ||
253 | .progress-bar { | ||
254 | background-image: -webkit-linear-gradient(top, #428bca 0%, #3071a9 100%); | ||
255 | background-image: linear-gradient(to bottom, #428bca 0%, #3071a9 100%); | ||
256 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0); | ||
257 | background-repeat: repeat-x; | ||
258 | } | ||
259 | .progress-bar-success { | ||
260 | background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); | ||
261 | background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); | ||
262 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); | ||
263 | background-repeat: repeat-x; | ||
264 | } | ||
265 | .progress-bar-info { | ||
266 | background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); | ||
267 | background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); | ||
268 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); | ||
269 | background-repeat: repeat-x; | ||
270 | } | ||
271 | .progress-bar-warning { | ||
272 | background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); | ||
273 | background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); | ||
274 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); | ||
275 | background-repeat: repeat-x; | ||
276 | } | ||
277 | .progress-bar-danger { | ||
278 | background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); | ||
279 | background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); | ||
280 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); | ||
281 | background-repeat: repeat-x; | ||
282 | } | ||
283 | .list-group { | ||
284 | border-radius: 4px; | ||
285 | -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); | ||
286 | box-shadow: 0 1px 2px rgba(0, 0, 0, .075); | ||
287 | } | ||
288 | .list-group-item.active, | ||
289 | .list-group-item.active:hover, | ||
290 | .list-group-item.active:focus { | ||
291 | text-shadow: 0 -1px 0 #3071a9; | ||
292 | background-image: -webkit-linear-gradient(top, #428bca 0%, #3278b3 100%); | ||
293 | background-image: linear-gradient(to bottom, #428bca 0%, #3278b3 100%); | ||
294 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0); | ||
295 | background-repeat: repeat-x; | ||
296 | border-color: #3278b3; | ||
297 | } | ||
298 | .panel { | ||
299 | -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); | ||
300 | box-shadow: 0 1px 2px rgba(0, 0, 0, .05); | ||
301 | } | ||
302 | .panel-default > .panel-heading { | ||
303 | background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||
304 | background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); | ||
305 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); | ||
306 | background-repeat: repeat-x; | ||
307 | } | ||
308 | .panel-primary > .panel-heading { | ||
309 | background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%); | ||
310 | background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%); | ||
311 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0); | ||
312 | background-repeat: repeat-x; | ||
313 | } | ||
314 | .panel-success > .panel-heading { | ||
315 | background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); | ||
316 | background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); | ||
317 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); | ||
318 | background-repeat: repeat-x; | ||
319 | } | ||
320 | .panel-info > .panel-heading { | ||
321 | background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); | ||
322 | background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); | ||
323 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); | ||
324 | background-repeat: repeat-x; | ||
325 | } | ||
326 | .panel-warning > .panel-heading { | ||
327 | background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); | ||
328 | background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); | ||
329 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); | ||
330 | background-repeat: repeat-x; | ||
331 | } | ||
332 | .panel-danger > .panel-heading { | ||
333 | background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); | ||
334 | background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); | ||
335 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); | ||
336 | background-repeat: repeat-x; | ||
337 | } | ||
338 | .well { | ||
339 | background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); | ||
340 | background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); | ||
341 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); | ||
342 | background-repeat: repeat-x; | ||
343 | border-color: #dcdcdc; | ||
344 | -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); | ||
345 | box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); | ||
346 | } | ||
347 | /*# sourceMappingURL=bootstrap-theme.css.map */ | ||
diff --git a/deprecated/jinwei.me/mobile/css/bootstrap-theme.css.map b/deprecated/jinwei.me/mobile/css/bootstrap-theme.css.map new file mode 100644 index 0000000..b36fc9a --- /dev/null +++ b/deprecated/jinwei.me/mobile/css/bootstrap-theme.css.map | |||
@@ -0,0 +1 @@ | |||
{"version":3,"sources":["less/theme.less","less/mixins.less"],"names":[],"mappings":"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","sourcesContent":["\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-bg, 5%); @end-color: darken(@navbar-default-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-bg; @end-color: lighten(@navbar-inverse-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n}\n\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","//\n// Mixins\n// --------------------------------------------------\n\n\n// Utilities\n// -------------------------\n\n// Clearfix\n// Source: http://nicolasgallagher.com/micro-clearfix-hack/\n//\n// For modern browsers\n// 1. The space content is one way to avoid an Opera bug when the\n// contenteditable attribute is included anywhere else in the document.\n// Otherwise it causes space to appear at the top and bottom of elements\n// that are clearfixed.\n// 2. The use of `table` rather than `block` is only necessary if using\n// `:before` to contain the top-margins of child elements.\n.clearfix() {\n &:before,\n &:after {\n content: \" \"; // 1\n display: table; // 2\n }\n &:after {\n clear: both;\n }\n}\n\n// WebKit-style focus\n.tab-focus() {\n // Default\n outline: thin dotted;\n // WebKit\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n\n// Center-align a block level element\n.center-block() {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n\n// Sizing shortcuts\n.size(@width; @height) {\n width: @width;\n height: @height;\n}\n.square(@size) {\n .size(@size; @size);\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n &::-moz-placeholder { color: @color; // Firefox\n opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Text overflow\n// Requires inline-block or block for proper styling\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n// CSS image replacement\n//\n// Heads up! v3 launched with with only `.hide-text()`, but per our pattern for\n// mixins being reused as classes with the same name, this doesn't hold up. As\n// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. Note\n// that we cannot chain the mixins together in Less, so they are repeated.\n//\n// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757\n\n// Deprecated as of v3.0.1 (will be removed in v4)\n.hide-text() {\n font: ~\"0/0\" a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n// New mixin to use as of v3.0.1\n.text-hide() {\n .hide-text();\n}\n\n\n\n// CSS3 PROPERTIES\n// --------------------------------------------------\n\n// Single side border-radius\n.border-top-radius(@radius) {\n border-top-right-radius: @radius;\n border-top-left-radius: @radius;\n}\n.border-right-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-top-right-radius: @radius;\n}\n.border-bottom-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-bottom-left-radius: @radius;\n}\n.border-left-radius(@radius) {\n border-bottom-left-radius: @radius;\n border-top-left-radius: @radius;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support the\n// standard `box-shadow` property.\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Transitions\n.transition(@transition) {\n -webkit-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n// Transformations\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n transform: rotate(@degrees);\n}\n.scale(@ratio; @ratio-y...) {\n -webkit-transform: scale(@ratio, @ratio-y);\n -ms-transform: scale(@ratio, @ratio-y); // IE9 only\n transform: scale(@ratio, @ratio-y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n transform: translate(@x, @y);\n}\n.skew(@x; @y) {\n -webkit-transform: skew(@x, @y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n transform: skew(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n.backface-visibility(@visibility){\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// User select\n// For selecting text on the page\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n\n// Resize anything\n.resizable(@direction) {\n resize: @direction; // Options: horizontal, vertical, both\n overflow: auto; // Safari fix\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Opacity\n.opacity(@opacity) {\n opacity: @opacity;\n // IE8 filter\n @opacity-ie: (@opacity * 100);\n filter: ~\"alpha(opacity=@{opacity-ie})\";\n}\n\n\n\n// GRADIENTS\n// --------------------------------------------------\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, color-stop(@start-color @start-percent), color-stop(@end-color @end-percent)); // Safari 5.1-6, Chrome 10+\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n\n// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n\n\n\n// Retina images\n//\n// Short retina mixin for setting background-image and -size\n\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// COMPONENT MIXINS\n// --------------------------------------------------\n\n// Horizontal dividers\n// -------------------------\n// Dividers (basically an hr) within dropdowns and nav lists\n.nav-divider(@color: #e5e5e5) {\n height: 1px;\n margin: ((@line-height-computed / 2) - 1) 0;\n overflow: hidden;\n background-color: @color;\n}\n\n// Panels\n// -------------------------\n.panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) {\n border-color: @border;\n\n & > .panel-heading {\n color: @heading-text-color;\n background-color: @heading-bg-color;\n border-color: @heading-border;\n\n + .panel-collapse .panel-body {\n border-top-color: @border;\n }\n }\n & > .panel-footer {\n + .panel-collapse .panel-body {\n border-bottom-color: @border;\n }\n }\n}\n\n// Alerts\n// -------------------------\n.alert-variant(@background; @border; @text-color) {\n background-color: @background;\n border-color: @border;\n color: @text-color;\n\n hr {\n border-top-color: darken(@border, 5%);\n }\n .alert-link {\n color: darken(@text-color, 10%);\n }\n}\n\n// Tables\n// -------------------------\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n\n// List Groups\n// -------------------------\n.list-group-item-variant(@state; @background; @color) {\n .list-group-item-@{state} {\n color: @color;\n background-color: @background;\n\n a& {\n color: @color;\n\n .list-group-item-heading { color: inherit; }\n\n &:hover,\n &:focus {\n color: @color;\n background-color: darken(@background, 5%);\n }\n &.active,\n &.active:hover,\n &.active:focus {\n color: #fff;\n background-color: @color;\n border-color: @color;\n }\n }\n }\n}\n\n// Button variants\n// -------------------------\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:hover,\n &:focus,\n &:active,\n &.active,\n .open .dropdown-toggle& {\n color: @color;\n background-color: darken(@background, 8%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active,\n .open .dropdown-toggle& {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &:active,\n &.active {\n background-color: @background;\n border-color: @border;\n }\n }\n\n .badge {\n color: @background;\n background-color: @color;\n }\n}\n\n// Button sizes\n// -------------------------\n.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n}\n\n// Pagination\n// -------------------------\n.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @border-radius) {\n > li {\n > a,\n > span {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n }\n &:first-child {\n > a,\n > span {\n .border-left-radius(@border-radius);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius);\n }\n }\n }\n}\n\n// Labels\n// -------------------------\n.label-variant(@color) {\n background-color: @color;\n &[href] {\n &:hover,\n &:focus {\n background-color: darken(@color, 10%);\n }\n }\n}\n\n// Contextual backgrounds\n// -------------------------\n.bg-variant(@color) {\n background-color: @color;\n a&:hover {\n background-color: darken(@color, 10%);\n }\n}\n\n// Typography\n// -------------------------\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover {\n color: darken(@color, 10%);\n }\n}\n\n// Navbar vertical align\n// -------------------------\n// Vertically center elements in the navbar.\n// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.\n.navbar-vertical-align(@element-height) {\n margin-top: ((@navbar-height - @element-height) / 2);\n margin-bottom: ((@navbar-height - @element-height) / 2);\n}\n\n// Progress bars\n// -------------------------\n.progress-bar-variant(@color) {\n background-color: @color;\n .progress-striped & {\n #gradient > .striped();\n }\n}\n\n// Responsive utilities\n// -------------------------\n// More easily include all the states for responsive-utilities.less.\n.responsive-visibility() {\n display: block !important;\n table& { display: table; }\n tr& { display: table-row !important; }\n th&,\n td& { display: table-cell !important; }\n}\n\n.responsive-invisibility() {\n display: none !important;\n}\n\n\n// Grid System\n// -----------\n\n// Centered container element\n.container-fixed() {\n margin-right: auto;\n margin-left: auto;\n padding-left: (@grid-gutter-width / 2);\n padding-right: (@grid-gutter-width / 2);\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-left: (@gutter / -2);\n margin-right: (@gutter / -2);\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n @media (min-width: @screen-xs-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-xs-column-push(@columns) {\n @media (min-width: @screen-xs-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-xs-column-pull(@columns) {\n @media (min-width: @screen-xs-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n\n// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) when (@index = 1) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-left: (@grid-gutter-width / 2);\n padding-right: (@grid-gutter-width / 2);\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) when (@index = 1) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n\n// Form validation states\n//\n// Used in forms.less to generate the form validation CSS for warnings, errors,\n// and successes.\n\n.form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) {\n // Color the label and help text\n .help-block,\n .control-label,\n .radio,\n .checkbox,\n .radio-inline,\n .checkbox-inline {\n color: @text-color;\n }\n // Set the border and box shadow on specific inputs to match\n .form-control {\n border-color: @border-color;\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work\n &:focus {\n border-color: darken(@border-color, 10%);\n @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%);\n .box-shadow(@shadow);\n }\n }\n // Set validation states also for addons\n .input-group-addon {\n color: @text-color;\n border-color: @border-color;\n background-color: @background-color;\n }\n // Optional feedback icon\n .form-control-feedback {\n color: @text-color;\n }\n}\n\n// Form control focus state\n//\n// Generate a customized focus state and for any input with the specified color,\n// which defaults to the `@input-focus-border` variable.\n//\n// We highly encourage you to not customize the default value, but instead use\n// this to tweak colors on an as-needed basis. This aesthetic change is based on\n// WebKit's default styles, but applicable to a wider range of browsers. Its\n// usability and accessibility should be taken into account with any change.\n//\n// Example usage: change the default blue border and shadow to white for better\n// contrast against a dark gray background.\n\n.form-control-focus(@color: @input-border-focus) {\n @color-rgba: rgba(red(@color), green(@color), blue(@color), .6);\n &:focus {\n border-color: @color;\n outline: 0;\n .box-shadow(~\"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}\");\n }\n}\n\n// Form control sizing\n//\n// Relative text size, padding, and border-radii changes for form controls. For\n// horizontal sizing, wrap controls in the predefined grid classes. `<select>`\n// element gets special love because it's special, and that's a fact!\n\n.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n height: @input-height;\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n\n select& {\n height: @input-height;\n line-height: @input-height;\n }\n\n textarea&,\n select[multiple]& {\n height: auto;\n }\n}\n"]} \ No newline at end of file | |||
diff --git a/deprecated/jinwei.me/mobile/css/bootstrap-theme.min.css b/deprecated/jinwei.me/mobile/css/bootstrap-theme.min.css new file mode 100644 index 0000000..ba4bd28 --- /dev/null +++ b/deprecated/jinwei.me/mobile/css/bootstrap-theme.min.css | |||
@@ -0,0 +1,7 @@ | |||
1 | /*! | ||
2 | * Bootstrap v3.1.1 (http://getbootstrap.com) | ||
3 | * Copyright 2011-2014 Twitter, Inc. | ||
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
5 | */ | ||
6 | |||
7 | .btn-default,.btn-primary,.btn-success,.btn-info,.btn-warning,.btn-danger{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-default:active,.btn-primary:active,.btn-success:active,.btn-info:active,.btn-warning:active,.btn-danger:active,.btn-default.active,.btn-primary.active,.btn-success.active,.btn-info.active,.btn-warning.active,.btn-danger.active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn:active,.btn.active{background-image:none}.btn-default{background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;text-shadow:0 1px 0 #fff;border-color:#ccc}.btn-default:hover,.btn-default:focus{background-color:#e0e0e0;background-position:0 -15px}.btn-default:active,.btn-default.active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-primary{background-image:-webkit-linear-gradient(top,#428bca 0,#2d6ca2 100%);background-image:linear-gradient(to bottom,#428bca 0,#2d6ca2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff2d6ca2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#2b669a}.btn-primary:hover,.btn-primary:focus{background-color:#2d6ca2;background-position:0 -15px}.btn-primary:active,.btn-primary.active{background-color:#2d6ca2;border-color:#2b669a}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:hover,.btn-success:focus{background-color:#419641;background-position:0 -15px}.btn-success:active,.btn-success.active{background-color:#419641;border-color:#3e8f3e}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:hover,.btn-info:focus{background-color:#2aabd2;background-position:0 -15px}.btn-info:active,.btn-info.active{background-color:#2aabd2;border-color:#28a4c9}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:hover,.btn-warning:focus{background-color:#eb9316;background-position:0 -15px}.btn-warning:active,.btn-warning.active{background-color:#eb9316;border-color:#e38d13}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:hover,.btn-danger:focus{background-color:#c12e2a;background-position:0 -15px}.btn-danger:active,.btn-danger.active{background-color:#c12e2a;border-color:#b92c28}.thumbnail,.img-thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-color:#e8e8e8}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{background-image:-webkit-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0);background-color:#357ebd}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f3f3f3 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f3f3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff3f3f3', GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top,#222 0,#282828 100%);background-image:linear-gradient(to bottom,#222 0,#282828 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff282828', GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-static-top,.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0)}.progress-bar{background-image:-webkit-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0)}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0)}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0)}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0)}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{text-shadow:0 -1px 0 #3071a9;background-image:-webkit-linear-gradient(top,#428bca 0,#3278b3 100%);background-image:linear-gradient(to bottom,#428bca 0,#3278b3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0);border-color:#3278b3}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0)}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0)}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0)}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0)}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0)}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0)}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)} \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/mobile/css/bootstrap.css b/deprecated/jinwei.me/mobile/css/bootstrap.css new file mode 100644 index 0000000..7f36651 --- /dev/null +++ b/deprecated/jinwei.me/mobile/css/bootstrap.css | |||
@@ -0,0 +1,5785 @@ | |||
1 | /*! | ||
2 | * Bootstrap v3.1.1 (http://getbootstrap.com) | ||
3 | * Copyright 2011-2014 Twitter, Inc. | ||
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
5 | */ | ||
6 | |||
7 | /*! normalize.css v3.0.0 | MIT License | git.io/normalize */ | ||
8 | html { | ||
9 | font-family: sans-serif; | ||
10 | -webkit-text-size-adjust: 100%; | ||
11 | -ms-text-size-adjust: 100%; | ||
12 | } | ||
13 | body { | ||
14 | margin: 0; | ||
15 | } | ||
16 | article, | ||
17 | aside, | ||
18 | details, | ||
19 | figcaption, | ||
20 | figure, | ||
21 | footer, | ||
22 | header, | ||
23 | hgroup, | ||
24 | main, | ||
25 | nav, | ||
26 | section, | ||
27 | summary { | ||
28 | display: block; | ||
29 | } | ||
30 | audio, | ||
31 | canvas, | ||
32 | progress, | ||
33 | video { | ||
34 | display: inline-block; | ||
35 | vertical-align: baseline; | ||
36 | } | ||
37 | audio:not([controls]) { | ||
38 | display: none; | ||
39 | height: 0; | ||
40 | } | ||
41 | [hidden], | ||
42 | template { | ||
43 | display: none; | ||
44 | } | ||
45 | a { | ||
46 | background: transparent; | ||
47 | } | ||
48 | a:active, | ||
49 | a:hover { | ||
50 | outline: 0; | ||
51 | } | ||
52 | abbr[title] { | ||
53 | border-bottom: 1px dotted; | ||
54 | } | ||
55 | b, | ||
56 | strong { | ||
57 | font-weight: bold; | ||
58 | } | ||
59 | dfn { | ||
60 | font-style: italic; | ||
61 | } | ||
62 | h1 { | ||
63 | margin: .67em 0; | ||
64 | font-size: 2em; | ||
65 | } | ||
66 | mark { | ||
67 | color: #000; | ||
68 | background: #ff0; | ||
69 | } | ||
70 | small { | ||
71 | font-size: 80%; | ||
72 | } | ||
73 | sub, | ||
74 | sup { | ||
75 | position: relative; | ||
76 | font-size: 75%; | ||
77 | line-height: 0; | ||
78 | vertical-align: baseline; | ||
79 | } | ||
80 | sup { | ||
81 | top: -.5em; | ||
82 | } | ||
83 | sub { | ||
84 | bottom: -.25em; | ||
85 | } | ||
86 | img { | ||
87 | border: 0; | ||
88 | } | ||
89 | svg:not(:root) { | ||
90 | overflow: hidden; | ||
91 | } | ||
92 | figure { | ||
93 | margin: 1em 40px; | ||
94 | } | ||
95 | hr { | ||
96 | height: 0; | ||
97 | -moz-box-sizing: content-box; | ||
98 | box-sizing: content-box; | ||
99 | } | ||
100 | pre { | ||
101 | overflow: auto; | ||
102 | } | ||
103 | code, | ||
104 | kbd, | ||
105 | pre, | ||
106 | samp { | ||
107 | font-family: monospace, monospace; | ||
108 | font-size: 1em; | ||
109 | } | ||
110 | button, | ||
111 | input, | ||
112 | optgroup, | ||
113 | select, | ||
114 | textarea { | ||
115 | margin: 0; | ||
116 | font: inherit; | ||
117 | color: inherit; | ||
118 | } | ||
119 | button { | ||
120 | overflow: visible; | ||
121 | } | ||
122 | button, | ||
123 | select { | ||
124 | text-transform: none; | ||
125 | } | ||
126 | button, | ||
127 | html input[type="button"], | ||
128 | input[type="reset"], | ||
129 | input[type="submit"] { | ||
130 | -webkit-appearance: button; | ||
131 | cursor: pointer; | ||
132 | } | ||
133 | button[disabled], | ||
134 | html input[disabled] { | ||
135 | cursor: default; | ||
136 | } | ||
137 | button::-moz-focus-inner, | ||
138 | input::-moz-focus-inner { | ||
139 | padding: 0; | ||
140 | border: 0; | ||
141 | } | ||
142 | input { | ||
143 | line-height: normal; | ||
144 | } | ||
145 | input[type="checkbox"], | ||
146 | input[type="radio"] { | ||
147 | box-sizing: border-box; | ||
148 | padding: 0; | ||
149 | } | ||
150 | input[type="number"]::-webkit-inner-spin-button, | ||
151 | input[type="number"]::-webkit-outer-spin-button { | ||
152 | height: auto; | ||
153 | } | ||
154 | input[type="search"] { | ||
155 | -webkit-box-sizing: content-box; | ||
156 | -moz-box-sizing: content-box; | ||
157 | box-sizing: content-box; | ||
158 | -webkit-appearance: textfield; | ||
159 | } | ||
160 | input[type="search"]::-webkit-search-cancel-button, | ||
161 | input[type="search"]::-webkit-search-decoration { | ||
162 | -webkit-appearance: none; | ||
163 | } | ||
164 | fieldset { | ||
165 | padding: .35em .625em .75em; | ||
166 | margin: 0 2px; | ||
167 | border: 1px solid #c0c0c0; | ||
168 | } | ||
169 | legend { | ||
170 | padding: 0; | ||
171 | border: 0; | ||
172 | } | ||
173 | textarea { | ||
174 | overflow: auto; | ||
175 | } | ||
176 | optgroup { | ||
177 | font-weight: bold; | ||
178 | } | ||
179 | table { | ||
180 | border-spacing: 0; | ||
181 | border-collapse: collapse; | ||
182 | } | ||
183 | td, | ||
184 | th { | ||
185 | padding: 0; | ||
186 | } | ||
187 | @media print { | ||
188 | * { | ||
189 | color: #000 !important; | ||
190 | text-shadow: none !important; | ||
191 | background: transparent !important; | ||
192 | box-shadow: none !important; | ||
193 | } | ||
194 | a, | ||
195 | a:visited { | ||
196 | text-decoration: underline; | ||
197 | } | ||
198 | a[href]:after { | ||
199 | content: " (" attr(href) ")"; | ||
200 | } | ||
201 | abbr[title]:after { | ||
202 | content: " (" attr(title) ")"; | ||
203 | } | ||
204 | a[href^="javascript:"]:after, | ||
205 | a[href^="#"]:after { | ||
206 | content: ""; | ||
207 | } | ||
208 | pre, | ||
209 | blockquote { | ||
210 | border: 1px solid #999; | ||
211 | |||
212 | page-break-inside: avoid; | ||
213 | } | ||
214 | thead { | ||
215 | display: table-header-group; | ||
216 | } | ||
217 | tr, | ||
218 | img { | ||
219 | page-break-inside: avoid; | ||
220 | } | ||
221 | img { | ||
222 | max-width: 100% !important; | ||
223 | } | ||
224 | p, | ||
225 | h2, | ||
226 | h3 { | ||
227 | orphans: 3; | ||
228 | widows: 3; | ||
229 | } | ||
230 | h2, | ||
231 | h3 { | ||
232 | page-break-after: avoid; | ||
233 | } | ||
234 | select { | ||
235 | background: #fff !important; | ||
236 | } | ||
237 | .navbar { | ||
238 | display: none; | ||
239 | } | ||
240 | .table td, | ||
241 | .table th { | ||
242 | background-color: #fff !important; | ||
243 | } | ||
244 | .btn > .caret, | ||
245 | .dropup > .btn > .caret { | ||
246 | border-top-color: #000 !important; | ||
247 | } | ||
248 | .label { | ||
249 | border: 1px solid #000; | ||
250 | } | ||
251 | .table { | ||
252 | border-collapse: collapse !important; | ||
253 | } | ||
254 | .table-bordered th, | ||
255 | .table-bordered td { | ||
256 | border: 1px solid #ddd !important; | ||
257 | } | ||
258 | } | ||
259 | * { | ||
260 | -webkit-box-sizing: border-box; | ||
261 | -moz-box-sizing: border-box; | ||
262 | box-sizing: border-box; | ||
263 | } | ||
264 | *:before, | ||
265 | *:after { | ||
266 | -webkit-box-sizing: border-box; | ||
267 | -moz-box-sizing: border-box; | ||
268 | box-sizing: border-box; | ||
269 | } | ||
270 | html { | ||
271 | font-size: 62.5%; | ||
272 | |||
273 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); | ||
274 | } | ||
275 | body { | ||
276 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; | ||
277 | font-size: 14px; | ||
278 | line-height: 1.42857143; | ||
279 | color: #333; | ||
280 | background-color: #fff; | ||
281 | } | ||
282 | input, | ||
283 | button, | ||
284 | select, | ||
285 | textarea { | ||
286 | font-family: inherit; | ||
287 | font-size: inherit; | ||
288 | line-height: inherit; | ||
289 | } | ||
290 | a { | ||
291 | color: #428bca; | ||
292 | text-decoration: none; | ||
293 | } | ||
294 | a:hover, | ||
295 | a:focus { | ||
296 | color: #2a6496; | ||
297 | text-decoration: underline; | ||
298 | } | ||
299 | a:focus { | ||
300 | outline: thin dotted; | ||
301 | outline: 5px auto -webkit-focus-ring-color; | ||
302 | outline-offset: -2px; | ||
303 | } | ||
304 | figure { | ||
305 | margin: 0; | ||
306 | } | ||
307 | img { | ||
308 | vertical-align: middle; | ||
309 | } | ||
310 | .img-responsive, | ||
311 | .thumbnail > img, | ||
312 | .thumbnail a > img, | ||
313 | .carousel-inner > .item > img, | ||
314 | .carousel-inner > .item > a > img { | ||
315 | display: block; | ||
316 | max-width: 100%; | ||
317 | height: auto; | ||
318 | } | ||
319 | .img-rounded { | ||
320 | border-radius: 6px; | ||
321 | } | ||
322 | .img-thumbnail { | ||
323 | display: inline-block; | ||
324 | max-width: 100%; | ||
325 | height: auto; | ||
326 | padding: 4px; | ||
327 | line-height: 1.42857143; | ||
328 | background-color: #fff; | ||
329 | border: 1px solid #ddd; | ||
330 | border-radius: 4px; | ||
331 | -webkit-transition: all .2s ease-in-out; | ||
332 | transition: all .2s ease-in-out; | ||
333 | } | ||
334 | .img-circle { | ||
335 | border-radius: 50%; | ||
336 | } | ||
337 | hr { | ||
338 | margin-top: 20px; | ||
339 | margin-bottom: 20px; | ||
340 | border: 0; | ||
341 | border-top: 1px solid #eee; | ||
342 | } | ||
343 | .sr-only { | ||
344 | position: absolute; | ||
345 | width: 1px; | ||
346 | height: 1px; | ||
347 | padding: 0; | ||
348 | margin: -1px; | ||
349 | overflow: hidden; | ||
350 | clip: rect(0, 0, 0, 0); | ||
351 | border: 0; | ||
352 | } | ||
353 | h1, | ||
354 | h2, | ||
355 | h3, | ||
356 | h4, | ||
357 | h5, | ||
358 | h6, | ||
359 | .h1, | ||
360 | .h2, | ||
361 | .h3, | ||
362 | .h4, | ||
363 | .h5, | ||
364 | .h6 { | ||
365 | font-family: inherit; | ||
366 | font-weight: 500; | ||
367 | line-height: 1.1; | ||
368 | color: inherit; | ||
369 | } | ||
370 | h1 small, | ||
371 | h2 small, | ||
372 | h3 small, | ||
373 | h4 small, | ||
374 | h5 small, | ||
375 | h6 small, | ||
376 | .h1 small, | ||
377 | .h2 small, | ||
378 | .h3 small, | ||
379 | .h4 small, | ||
380 | .h5 small, | ||
381 | .h6 small, | ||
382 | h1 .small, | ||
383 | h2 .small, | ||
384 | h3 .small, | ||
385 | h4 .small, | ||
386 | h5 .small, | ||
387 | h6 .small, | ||
388 | .h1 .small, | ||
389 | .h2 .small, | ||
390 | .h3 .small, | ||
391 | .h4 .small, | ||
392 | .h5 .small, | ||
393 | .h6 .small { | ||
394 | font-weight: normal; | ||
395 | line-height: 1; | ||
396 | color: #999; | ||
397 | } | ||
398 | h1, | ||
399 | .h1, | ||
400 | h2, | ||
401 | .h2, | ||
402 | h3, | ||
403 | .h3 { | ||
404 | margin-top: 20px; | ||
405 | margin-bottom: 10px; | ||
406 | } | ||
407 | h1 small, | ||
408 | .h1 small, | ||
409 | h2 small, | ||
410 | .h2 small, | ||
411 | h3 small, | ||
412 | .h3 small, | ||
413 | h1 .small, | ||
414 | .h1 .small, | ||
415 | h2 .small, | ||
416 | .h2 .small, | ||
417 | h3 .small, | ||
418 | .h3 .small { | ||
419 | font-size: 65%; | ||
420 | } | ||
421 | h4, | ||
422 | .h4, | ||
423 | h5, | ||
424 | .h5, | ||
425 | h6, | ||
426 | .h6 { | ||
427 | margin-top: 10px; | ||
428 | margin-bottom: 10px; | ||
429 | } | ||
430 | h4 small, | ||
431 | .h4 small, | ||
432 | h5 small, | ||
433 | .h5 small, | ||
434 | h6 small, | ||
435 | .h6 small, | ||
436 | h4 .small, | ||
437 | .h4 .small, | ||
438 | h5 .small, | ||
439 | .h5 .small, | ||
440 | h6 .small, | ||
441 | .h6 .small { | ||
442 | font-size: 75%; | ||
443 | } | ||
444 | h1, | ||
445 | .h1 { | ||
446 | font-size: 36px; | ||
447 | } | ||
448 | h2, | ||
449 | .h2 { | ||
450 | font-size: 30px; | ||
451 | } | ||
452 | h3, | ||
453 | .h3 { | ||
454 | font-size: 24px; | ||
455 | } | ||
456 | h4, | ||
457 | .h4 { | ||
458 | font-size: 18px; | ||
459 | } | ||
460 | h5, | ||
461 | .h5 { | ||
462 | font-size: 14px; | ||
463 | } | ||
464 | h6, | ||
465 | .h6 { | ||
466 | font-size: 12px; | ||
467 | } | ||
468 | p { | ||
469 | margin: 0 0 10px; | ||
470 | } | ||
471 | .lead { | ||
472 | margin-bottom: 20px; | ||
473 | font-size: 16px; | ||
474 | font-weight: 200; | ||
475 | line-height: 1.4; | ||
476 | } | ||
477 | @media (min-width: 768px) { | ||
478 | .lead { | ||
479 | font-size: 21px; | ||
480 | } | ||
481 | } | ||
482 | small, | ||
483 | .small { | ||
484 | font-size: 85%; | ||
485 | } | ||
486 | cite { | ||
487 | font-style: normal; | ||
488 | } | ||
489 | .text-left { | ||
490 | text-align: left; | ||
491 | } | ||
492 | .text-right { | ||
493 | text-align: right; | ||
494 | } | ||
495 | .text-center { | ||
496 | text-align: center; | ||
497 | } | ||
498 | .text-justify { | ||
499 | text-align: justify; | ||
500 | } | ||
501 | .text-muted { | ||
502 | color: #999; | ||
503 | } | ||
504 | .text-primary { | ||
505 | color: #428bca; | ||
506 | } | ||
507 | a.text-primary:hover { | ||
508 | color: #3071a9; | ||
509 | } | ||
510 | .text-success { | ||
511 | color: #3c763d; | ||
512 | } | ||
513 | a.text-success:hover { | ||
514 | color: #2b542c; | ||
515 | } | ||
516 | .text-info { | ||
517 | color: #31708f; | ||
518 | } | ||
519 | a.text-info:hover { | ||
520 | color: #245269; | ||
521 | } | ||
522 | .text-warning { | ||
523 | color: #8a6d3b; | ||
524 | } | ||
525 | a.text-warning:hover { | ||
526 | color: #66512c; | ||
527 | } | ||
528 | .text-danger { | ||
529 | color: #a94442; | ||
530 | } | ||
531 | a.text-danger:hover { | ||
532 | color: #843534; | ||
533 | } | ||
534 | .bg-primary { | ||
535 | color: #fff; | ||
536 | background-color: #428bca; | ||
537 | } | ||
538 | a.bg-primary:hover { | ||
539 | background-color: #3071a9; | ||
540 | } | ||
541 | .bg-success { | ||
542 | background-color: #dff0d8; | ||
543 | } | ||
544 | a.bg-success:hover { | ||
545 | background-color: #c1e2b3; | ||
546 | } | ||
547 | .bg-info { | ||
548 | background-color: #d9edf7; | ||
549 | } | ||
550 | a.bg-info:hover { | ||
551 | background-color: #afd9ee; | ||
552 | } | ||
553 | .bg-warning { | ||
554 | background-color: #fcf8e3; | ||
555 | } | ||
556 | a.bg-warning:hover { | ||
557 | background-color: #f7ecb5; | ||
558 | } | ||
559 | .bg-danger { | ||
560 | background-color: #f2dede; | ||
561 | } | ||
562 | a.bg-danger:hover { | ||
563 | background-color: #e4b9b9; | ||
564 | } | ||
565 | .page-header { | ||
566 | padding-bottom: 9px; | ||
567 | margin: 40px 0 20px; | ||
568 | border-bottom: 1px solid #eee; | ||
569 | } | ||
570 | ul, | ||
571 | ol { | ||
572 | margin-top: 0; | ||
573 | margin-bottom: 10px; | ||
574 | } | ||
575 | ul ul, | ||
576 | ol ul, | ||
577 | ul ol, | ||
578 | ol ol { | ||
579 | margin-bottom: 0; | ||
580 | } | ||
581 | .list-unstyled { | ||
582 | padding-left: 0; | ||
583 | list-style: none; | ||
584 | } | ||
585 | .list-inline { | ||
586 | padding-left: 0; | ||
587 | margin-left: -5px; | ||
588 | list-style: none; | ||
589 | } | ||
590 | .list-inline > li { | ||
591 | display: inline-block; | ||
592 | padding-right: 5px; | ||
593 | padding-left: 5px; | ||
594 | } | ||
595 | dl { | ||
596 | margin-top: 0; | ||
597 | margin-bottom: 20px; | ||
598 | } | ||
599 | dt, | ||
600 | dd { | ||
601 | line-height: 1.42857143; | ||
602 | } | ||
603 | dt { | ||
604 | font-weight: bold; | ||
605 | } | ||
606 | dd { | ||
607 | margin-left: 0; | ||
608 | } | ||
609 | @media (min-width: 768px) { | ||
610 | .dl-horizontal dt { | ||
611 | float: left; | ||
612 | width: 160px; | ||
613 | overflow: hidden; | ||
614 | clear: left; | ||
615 | text-align: right; | ||
616 | text-overflow: ellipsis; | ||
617 | white-space: nowrap; | ||
618 | } | ||
619 | .dl-horizontal dd { | ||
620 | margin-left: 180px; | ||
621 | } | ||
622 | } | ||
623 | abbr[title], | ||
624 | abbr[data-original-title] { | ||
625 | cursor: help; | ||
626 | border-bottom: 1px dotted #999; | ||
627 | } | ||
628 | .initialism { | ||
629 | font-size: 90%; | ||
630 | text-transform: uppercase; | ||
631 | } | ||
632 | blockquote { | ||
633 | padding: 10px 20px; | ||
634 | margin: 0 0 20px; | ||
635 | font-size: 17.5px; | ||
636 | border-left: 5px solid #eee; | ||
637 | } | ||
638 | blockquote p:last-child, | ||
639 | blockquote ul:last-child, | ||
640 | blockquote ol:last-child { | ||
641 | margin-bottom: 0; | ||
642 | } | ||
643 | blockquote footer, | ||
644 | blockquote small, | ||
645 | blockquote .small { | ||
646 | display: block; | ||
647 | font-size: 80%; | ||
648 | line-height: 1.42857143; | ||
649 | color: #999; | ||
650 | } | ||
651 | blockquote footer:before, | ||
652 | blockquote small:before, | ||
653 | blockquote .small:before { | ||
654 | content: '\2014 \00A0'; | ||
655 | } | ||
656 | .blockquote-reverse, | ||
657 | blockquote.pull-right { | ||
658 | padding-right: 15px; | ||
659 | padding-left: 0; | ||
660 | text-align: right; | ||
661 | border-right: 5px solid #eee; | ||
662 | border-left: 0; | ||
663 | } | ||
664 | .blockquote-reverse footer:before, | ||
665 | blockquote.pull-right footer:before, | ||
666 | .blockquote-reverse small:before, | ||
667 | blockquote.pull-right small:before, | ||
668 | .blockquote-reverse .small:before, | ||
669 | blockquote.pull-right .small:before { | ||
670 | content: ''; | ||
671 | } | ||
672 | .blockquote-reverse footer:after, | ||
673 | blockquote.pull-right footer:after, | ||
674 | .blockquote-reverse small:after, | ||
675 | blockquote.pull-right small:after, | ||
676 | .blockquote-reverse .small:after, | ||
677 | blockquote.pull-right .small:after { | ||
678 | content: '\00A0 \2014'; | ||
679 | } | ||
680 | blockquote:before, | ||
681 | blockquote:after { | ||
682 | content: ""; | ||
683 | } | ||
684 | address { | ||
685 | margin-bottom: 20px; | ||
686 | font-style: normal; | ||
687 | line-height: 1.42857143; | ||
688 | } | ||
689 | code, | ||
690 | kbd, | ||
691 | pre, | ||
692 | samp { | ||
693 | font-family: Menlo, Monaco, Consolas, "Courier New", monospace; | ||
694 | } | ||
695 | code { | ||
696 | padding: 2px 4px; | ||
697 | font-size: 90%; | ||
698 | color: #c7254e; | ||
699 | white-space: nowrap; | ||
700 | background-color: #f9f2f4; | ||
701 | border-radius: 4px; | ||
702 | } | ||
703 | kbd { | ||
704 | padding: 2px 4px; | ||
705 | font-size: 90%; | ||
706 | color: #fff; | ||
707 | background-color: #333; | ||
708 | border-radius: 3px; | ||
709 | box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); | ||
710 | } | ||
711 | pre { | ||
712 | display: block; | ||
713 | padding: 9.5px; | ||
714 | margin: 0 0 10px; | ||
715 | font-size: 13px; | ||
716 | line-height: 1.42857143; | ||
717 | color: #333; | ||
718 | word-break: break-all; | ||
719 | word-wrap: break-word; | ||
720 | background-color: #f5f5f5; | ||
721 | border: 1px solid #ccc; | ||
722 | border-radius: 4px; | ||
723 | } | ||
724 | pre code { | ||
725 | padding: 0; | ||
726 | font-size: inherit; | ||
727 | color: inherit; | ||
728 | white-space: pre-wrap; | ||
729 | background-color: transparent; | ||
730 | border-radius: 0; | ||
731 | } | ||
732 | .pre-scrollable { | ||
733 | max-height: 340px; | ||
734 | overflow-y: scroll; | ||
735 | } | ||
736 | .container { | ||
737 | padding-right: 15px; | ||
738 | padding-left: 15px; | ||
739 | margin-right: auto; | ||
740 | margin-left: auto; | ||
741 | } | ||
742 | @media (min-width: 768px) { | ||
743 | .container { | ||
744 | width: 750px; | ||
745 | } | ||
746 | } | ||
747 | @media (min-width: 992px) { | ||
748 | .container { | ||
749 | width: 970px; | ||
750 | } | ||
751 | } | ||
752 | @media (min-width: 1200px) { | ||
753 | .container { | ||
754 | width: 1170px; | ||
755 | } | ||
756 | } | ||
757 | .container-fluid { | ||
758 | padding-right: 15px; | ||
759 | padding-left: 15px; | ||
760 | margin-right: auto; | ||
761 | margin-left: auto; | ||
762 | } | ||
763 | .row { | ||
764 | margin-right: -15px; | ||
765 | margin-left: -15px; | ||
766 | } | ||
767 | .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { | ||
768 | position: relative; | ||
769 | min-height: 1px; | ||
770 | padding-right: 15px; | ||
771 | padding-left: 15px; | ||
772 | } | ||
773 | .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { | ||
774 | float: left; | ||
775 | } | ||
776 | .col-xs-12 { | ||
777 | width: 100%; | ||
778 | } | ||
779 | .col-xs-11 { | ||
780 | width: 91.66666667%; | ||
781 | } | ||
782 | .col-xs-10 { | ||
783 | width: 83.33333333%; | ||
784 | } | ||
785 | .col-xs-9 { | ||
786 | width: 75%; | ||
787 | } | ||
788 | .col-xs-8 { | ||
789 | width: 66.66666667%; | ||
790 | } | ||
791 | .col-xs-7 { | ||
792 | width: 58.33333333%; | ||
793 | } | ||
794 | .col-xs-6 { | ||
795 | width: 50%; | ||
796 | } | ||
797 | .col-xs-5 { | ||
798 | width: 41.66666667%; | ||
799 | } | ||
800 | .col-xs-4 { | ||
801 | width: 33.33333333%; | ||
802 | } | ||
803 | .col-xs-3 { | ||
804 | width: 25%; | ||
805 | } | ||
806 | .col-xs-2 { | ||
807 | width: 16.66666667%; | ||
808 | } | ||
809 | .col-xs-1 { | ||
810 | width: 8.33333333%; | ||
811 | } | ||
812 | .col-xs-pull-12 { | ||
813 | right: 100%; | ||
814 | } | ||
815 | .col-xs-pull-11 { | ||
816 | right: 91.66666667%; | ||
817 | } | ||
818 | .col-xs-pull-10 { | ||
819 | right: 83.33333333%; | ||
820 | } | ||
821 | .col-xs-pull-9 { | ||
822 | right: 75%; | ||
823 | } | ||
824 | .col-xs-pull-8 { | ||
825 | right: 66.66666667%; | ||
826 | } | ||
827 | .col-xs-pull-7 { | ||
828 | right: 58.33333333%; | ||
829 | } | ||
830 | .col-xs-pull-6 { | ||
831 | right: 50%; | ||
832 | } | ||
833 | .col-xs-pull-5 { | ||
834 | right: 41.66666667%; | ||
835 | } | ||
836 | .col-xs-pull-4 { | ||
837 | right: 33.33333333%; | ||
838 | } | ||
839 | .col-xs-pull-3 { | ||
840 | right: 25%; | ||
841 | } | ||
842 | .col-xs-pull-2 { | ||
843 | right: 16.66666667%; | ||
844 | } | ||
845 | .col-xs-pull-1 { | ||
846 | right: 8.33333333%; | ||
847 | } | ||
848 | .col-xs-pull-0 { | ||
849 | right: 0; | ||
850 | } | ||
851 | .col-xs-push-12 { | ||
852 | left: 100%; | ||
853 | } | ||
854 | .col-xs-push-11 { | ||
855 | left: 91.66666667%; | ||
856 | } | ||
857 | .col-xs-push-10 { | ||
858 | left: 83.33333333%; | ||
859 | } | ||
860 | .col-xs-push-9 { | ||
861 | left: 75%; | ||
862 | } | ||
863 | .col-xs-push-8 { | ||
864 | left: 66.66666667%; | ||
865 | } | ||
866 | .col-xs-push-7 { | ||
867 | left: 58.33333333%; | ||
868 | } | ||
869 | .col-xs-push-6 { | ||
870 | left: 50%; | ||
871 | } | ||
872 | .col-xs-push-5 { | ||
873 | left: 41.66666667%; | ||
874 | } | ||
875 | .col-xs-push-4 { | ||
876 | left: 33.33333333%; | ||
877 | } | ||
878 | .col-xs-push-3 { | ||
879 | left: 25%; | ||
880 | } | ||
881 | .col-xs-push-2 { | ||
882 | left: 16.66666667%; | ||
883 | } | ||
884 | .col-xs-push-1 { | ||
885 | left: 8.33333333%; | ||
886 | } | ||
887 | .col-xs-push-0 { | ||
888 | left: 0; | ||
889 | } | ||
890 | .col-xs-offset-12 { | ||
891 | margin-left: 100%; | ||
892 | } | ||
893 | .col-xs-offset-11 { | ||
894 | margin-left: 91.66666667%; | ||
895 | } | ||
896 | .col-xs-offset-10 { | ||
897 | margin-left: 83.33333333%; | ||
898 | } | ||
899 | .col-xs-offset-9 { | ||
900 | margin-left: 75%; | ||
901 | } | ||
902 | .col-xs-offset-8 { | ||
903 | margin-left: 66.66666667%; | ||
904 | } | ||
905 | .col-xs-offset-7 { | ||
906 | margin-left: 58.33333333%; | ||
907 | } | ||
908 | .col-xs-offset-6 { | ||
909 | margin-left: 50%; | ||
910 | } | ||
911 | .col-xs-offset-5 { | ||
912 | margin-left: 41.66666667%; | ||
913 | } | ||
914 | .col-xs-offset-4 { | ||
915 | margin-left: 33.33333333%; | ||
916 | } | ||
917 | .col-xs-offset-3 { | ||
918 | margin-left: 25%; | ||
919 | } | ||
920 | .col-xs-offset-2 { | ||
921 | margin-left: 16.66666667%; | ||
922 | } | ||
923 | .col-xs-offset-1 { | ||
924 | margin-left: 8.33333333%; | ||
925 | } | ||
926 | .col-xs-offset-0 { | ||
927 | margin-left: 0; | ||
928 | } | ||
929 | @media (min-width: 768px) { | ||
930 | .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { | ||
931 | float: left; | ||
932 | } | ||
933 | .col-sm-12 { | ||
934 | width: 100%; | ||
935 | } | ||
936 | .col-sm-11 { | ||
937 | width: 91.66666667%; | ||
938 | } | ||
939 | .col-sm-10 { | ||
940 | width: 83.33333333%; | ||
941 | } | ||
942 | .col-sm-9 { | ||
943 | width: 75%; | ||
944 | } | ||
945 | .col-sm-8 { | ||
946 | width: 66.66666667%; | ||
947 | } | ||
948 | .col-sm-7 { | ||
949 | width: 58.33333333%; | ||
950 | } | ||
951 | .col-sm-6 { | ||
952 | width: 50%; | ||
953 | } | ||
954 | .col-sm-5 { | ||
955 | width: 41.66666667%; | ||
956 | } | ||
957 | .col-sm-4 { | ||
958 | width: 33.33333333%; | ||
959 | } | ||
960 | .col-sm-3 { | ||
961 | width: 25%; | ||
962 | } | ||
963 | .col-sm-2 { | ||
964 | width: 16.66666667%; | ||
965 | } | ||
966 | .col-sm-1 { | ||
967 | width: 8.33333333%; | ||
968 | } | ||
969 | .col-sm-pull-12 { | ||
970 | right: 100%; | ||
971 | } | ||
972 | .col-sm-pull-11 { | ||
973 | right: 91.66666667%; | ||
974 | } | ||
975 | .col-sm-pull-10 { | ||
976 | right: 83.33333333%; | ||
977 | } | ||
978 | .col-sm-pull-9 { | ||
979 | right: 75%; | ||
980 | } | ||
981 | .col-sm-pull-8 { | ||
982 | right: 66.66666667%; | ||
983 | } | ||
984 | .col-sm-pull-7 { | ||
985 | right: 58.33333333%; | ||
986 | } | ||
987 | .col-sm-pull-6 { | ||
988 | right: 50%; | ||
989 | } | ||
990 | .col-sm-pull-5 { | ||
991 | right: 41.66666667%; | ||
992 | } | ||
993 | .col-sm-pull-4 { | ||
994 | right: 33.33333333%; | ||
995 | } | ||
996 | .col-sm-pull-3 { | ||
997 | right: 25%; | ||
998 | } | ||
999 | .col-sm-pull-2 { | ||
1000 | right: 16.66666667%; | ||
1001 | } | ||
1002 | .col-sm-pull-1 { | ||
1003 | right: 8.33333333%; | ||
1004 | } | ||
1005 | .col-sm-pull-0 { | ||
1006 | right: 0; | ||
1007 | } | ||
1008 | .col-sm-push-12 { | ||
1009 | left: 100%; | ||
1010 | } | ||
1011 | .col-sm-push-11 { | ||
1012 | left: 91.66666667%; | ||
1013 | } | ||
1014 | .col-sm-push-10 { | ||
1015 | left: 83.33333333%; | ||
1016 | } | ||
1017 | .col-sm-push-9 { | ||
1018 | left: 75%; | ||
1019 | } | ||
1020 | .col-sm-push-8 { | ||
1021 | left: 66.66666667%; | ||
1022 | } | ||
1023 | .col-sm-push-7 { | ||
1024 | left: 58.33333333%; | ||
1025 | } | ||
1026 | .col-sm-push-6 { | ||
1027 | left: 50%; | ||
1028 | } | ||
1029 | .col-sm-push-5 { | ||
1030 | left: 41.66666667%; | ||
1031 | } | ||
1032 | .col-sm-push-4 { | ||
1033 | left: 33.33333333%; | ||
1034 | } | ||
1035 | .col-sm-push-3 { | ||
1036 | left: 25%; | ||
1037 | } | ||
1038 | .col-sm-push-2 { | ||
1039 | left: 16.66666667%; | ||
1040 | } | ||
1041 | .col-sm-push-1 { | ||
1042 | left: 8.33333333%; | ||
1043 | } | ||
1044 | .col-sm-push-0 { | ||
1045 | left: 0; | ||
1046 | } | ||
1047 | .col-sm-offset-12 { | ||
1048 | margin-left: 100%; | ||
1049 | } | ||
1050 | .col-sm-offset-11 { | ||
1051 | margin-left: 91.66666667%; | ||
1052 | } | ||
1053 | .col-sm-offset-10 { | ||
1054 | margin-left: 83.33333333%; | ||
1055 | } | ||
1056 | .col-sm-offset-9 { | ||
1057 | margin-left: 75%; | ||
1058 | } | ||
1059 | .col-sm-offset-8 { | ||
1060 | margin-left: 66.66666667%; | ||
1061 | } | ||
1062 | .col-sm-offset-7 { | ||
1063 | margin-left: 58.33333333%; | ||
1064 | } | ||
1065 | .col-sm-offset-6 { | ||
1066 | margin-left: 50%; | ||
1067 | } | ||
1068 | .col-sm-offset-5 { | ||
1069 | margin-left: 41.66666667%; | ||
1070 | } | ||
1071 | .col-sm-offset-4 { | ||
1072 | margin-left: 33.33333333%; | ||
1073 | } | ||
1074 | .col-sm-offset-3 { | ||
1075 | margin-left: 25%; | ||
1076 | } | ||
1077 | .col-sm-offset-2 { | ||
1078 | margin-left: 16.66666667%; | ||
1079 | } | ||
1080 | .col-sm-offset-1 { | ||
1081 | margin-left: 8.33333333%; | ||
1082 | } | ||
1083 | .col-sm-offset-0 { | ||
1084 | margin-left: 0; | ||
1085 | } | ||
1086 | } | ||
1087 | @media (min-width: 992px) { | ||
1088 | .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { | ||
1089 | float: left; | ||
1090 | } | ||
1091 | .col-md-12 { | ||
1092 | width: 100%; | ||
1093 | } | ||
1094 | .col-md-11 { | ||
1095 | width: 91.66666667%; | ||
1096 | } | ||
1097 | .col-md-10 { | ||
1098 | width: 83.33333333%; | ||
1099 | } | ||
1100 | .col-md-9 { | ||
1101 | width: 75%; | ||
1102 | } | ||
1103 | .col-md-8 { | ||
1104 | width: 66.66666667%; | ||
1105 | } | ||
1106 | .col-md-7 { | ||
1107 | width: 58.33333333%; | ||
1108 | } | ||
1109 | .col-md-6 { | ||
1110 | width: 50%; | ||
1111 | } | ||
1112 | .col-md-5 { | ||
1113 | width: 41.66666667%; | ||
1114 | } | ||
1115 | .col-md-4 { | ||
1116 | width: 33.33333333%; | ||
1117 | } | ||
1118 | .col-md-3 { | ||
1119 | width: 25%; | ||
1120 | } | ||
1121 | .col-md-2 { | ||
1122 | width: 16.66666667%; | ||
1123 | } | ||
1124 | .col-md-1 { | ||
1125 | width: 8.33333333%; | ||
1126 | } | ||
1127 | .col-md-pull-12 { | ||
1128 | right: 100%; | ||
1129 | } | ||
1130 | .col-md-pull-11 { | ||
1131 | right: 91.66666667%; | ||
1132 | } | ||
1133 | .col-md-pull-10 { | ||
1134 | right: 83.33333333%; | ||
1135 | } | ||
1136 | .col-md-pull-9 { | ||
1137 | right: 75%; | ||
1138 | } | ||
1139 | .col-md-pull-8 { | ||
1140 | right: 66.66666667%; | ||
1141 | } | ||
1142 | .col-md-pull-7 { | ||
1143 | right: 58.33333333%; | ||
1144 | } | ||
1145 | .col-md-pull-6 { | ||
1146 | right: 50%; | ||
1147 | } | ||
1148 | .col-md-pull-5 { | ||
1149 | right: 41.66666667%; | ||
1150 | } | ||
1151 | .col-md-pull-4 { | ||
1152 | right: 33.33333333%; | ||
1153 | } | ||
1154 | .col-md-pull-3 { | ||
1155 | right: 25%; | ||
1156 | } | ||
1157 | .col-md-pull-2 { | ||
1158 | right: 16.66666667%; | ||
1159 | } | ||
1160 | .col-md-pull-1 { | ||
1161 | right: 8.33333333%; | ||
1162 | } | ||
1163 | .col-md-pull-0 { | ||
1164 | right: 0; | ||
1165 | } | ||
1166 | .col-md-push-12 { | ||
1167 | left: 100%; | ||
1168 | } | ||
1169 | .col-md-push-11 { | ||
1170 | left: 91.66666667%; | ||
1171 | } | ||
1172 | .col-md-push-10 { | ||
1173 | left: 83.33333333%; | ||
1174 | } | ||
1175 | .col-md-push-9 { | ||
1176 | left: 75%; | ||
1177 | } | ||
1178 | .col-md-push-8 { | ||
1179 | left: 66.66666667%; | ||
1180 | } | ||
1181 | .col-md-push-7 { | ||
1182 | left: 58.33333333%; | ||
1183 | } | ||
1184 | .col-md-push-6 { | ||
1185 | left: 50%; | ||
1186 | } | ||
1187 | .col-md-push-5 { | ||
1188 | left: 41.66666667%; | ||
1189 | } | ||
1190 | .col-md-push-4 { | ||
1191 | left: 33.33333333%; | ||
1192 | } | ||
1193 | .col-md-push-3 { | ||
1194 | left: 25%; | ||
1195 | } | ||
1196 | .col-md-push-2 { | ||
1197 | left: 16.66666667%; | ||
1198 | } | ||
1199 | .col-md-push-1 { | ||
1200 | left: 8.33333333%; | ||
1201 | } | ||
1202 | .col-md-push-0 { | ||
1203 | left: 0; | ||
1204 | } | ||
1205 | .col-md-offset-12 { | ||
1206 | margin-left: 100%; | ||
1207 | } | ||
1208 | .col-md-offset-11 { | ||
1209 | margin-left: 91.66666667%; | ||
1210 | } | ||
1211 | .col-md-offset-10 { | ||
1212 | margin-left: 83.33333333%; | ||
1213 | } | ||
1214 | .col-md-offset-9 { | ||
1215 | margin-left: 75%; | ||
1216 | } | ||
1217 | .col-md-offset-8 { | ||
1218 | margin-left: 66.66666667%; | ||
1219 | } | ||
1220 | .col-md-offset-7 { | ||
1221 | margin-left: 58.33333333%; | ||
1222 | } | ||
1223 | .col-md-offset-6 { | ||
1224 | margin-left: 50%; | ||
1225 | } | ||
1226 | .col-md-offset-5 { | ||
1227 | margin-left: 41.66666667%; | ||
1228 | } | ||
1229 | .col-md-offset-4 { | ||
1230 | margin-left: 33.33333333%; | ||
1231 | } | ||
1232 | .col-md-offset-3 { | ||
1233 | margin-left: 25%; | ||
1234 | } | ||
1235 | .col-md-offset-2 { | ||
1236 | margin-left: 16.66666667%; | ||
1237 | } | ||
1238 | .col-md-offset-1 { | ||
1239 | margin-left: 8.33333333%; | ||
1240 | } | ||
1241 | .col-md-offset-0 { | ||
1242 | margin-left: 0; | ||
1243 | } | ||
1244 | } | ||
1245 | @media (min-width: 1200px) { | ||
1246 | .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { | ||
1247 | float: left; | ||
1248 | } | ||
1249 | .col-lg-12 { | ||
1250 | width: 100%; | ||
1251 | } | ||
1252 | .col-lg-11 { | ||
1253 | width: 91.66666667%; | ||
1254 | } | ||
1255 | .col-lg-10 { | ||
1256 | width: 83.33333333%; | ||
1257 | } | ||
1258 | .col-lg-9 { | ||
1259 | width: 75%; | ||
1260 | } | ||
1261 | .col-lg-8 { | ||
1262 | width: 66.66666667%; | ||
1263 | } | ||
1264 | .col-lg-7 { | ||
1265 | width: 58.33333333%; | ||
1266 | } | ||
1267 | .col-lg-6 { | ||
1268 | width: 50%; | ||
1269 | } | ||
1270 | .col-lg-5 { | ||
1271 | width: 41.66666667%; | ||
1272 | } | ||
1273 | .col-lg-4 { | ||
1274 | width: 33.33333333%; | ||
1275 | } | ||
1276 | .col-lg-3 { | ||
1277 | width: 25%; | ||
1278 | } | ||
1279 | .col-lg-2 { | ||
1280 | width: 16.66666667%; | ||
1281 | } | ||
1282 | .col-lg-1 { | ||
1283 | width: 8.33333333%; | ||
1284 | } | ||
1285 | .col-lg-pull-12 { | ||
1286 | right: 100%; | ||
1287 | } | ||
1288 | .col-lg-pull-11 { | ||
1289 | right: 91.66666667%; | ||
1290 | } | ||
1291 | .col-lg-pull-10 { | ||
1292 | right: 83.33333333%; | ||
1293 | } | ||
1294 | .col-lg-pull-9 { | ||
1295 | right: 75%; | ||
1296 | } | ||
1297 | .col-lg-pull-8 { | ||
1298 | right: 66.66666667%; | ||
1299 | } | ||
1300 | .col-lg-pull-7 { | ||
1301 | right: 58.33333333%; | ||
1302 | } | ||
1303 | .col-lg-pull-6 { | ||
1304 | right: 50%; | ||
1305 | } | ||
1306 | .col-lg-pull-5 { | ||
1307 | right: 41.66666667%; | ||
1308 | } | ||
1309 | .col-lg-pull-4 { | ||
1310 | right: 33.33333333%; | ||
1311 | } | ||
1312 | .col-lg-pull-3 { | ||
1313 | right: 25%; | ||
1314 | } | ||
1315 | .col-lg-pull-2 { | ||
1316 | right: 16.66666667%; | ||
1317 | } | ||
1318 | .col-lg-pull-1 { | ||
1319 | right: 8.33333333%; | ||
1320 | } | ||
1321 | .col-lg-pull-0 { | ||
1322 | right: 0; | ||
1323 | } | ||
1324 | .col-lg-push-12 { | ||
1325 | left: 100%; | ||
1326 | } | ||
1327 | .col-lg-push-11 { | ||
1328 | left: 91.66666667%; | ||
1329 | } | ||
1330 | .col-lg-push-10 { | ||
1331 | left: 83.33333333%; | ||
1332 | } | ||
1333 | .col-lg-push-9 { | ||
1334 | left: 75%; | ||
1335 | } | ||
1336 | .col-lg-push-8 { | ||
1337 | left: 66.66666667%; | ||
1338 | } | ||
1339 | .col-lg-push-7 { | ||
1340 | left: 58.33333333%; | ||
1341 | } | ||
1342 | .col-lg-push-6 { | ||
1343 | left: 50%; | ||
1344 | } | ||
1345 | .col-lg-push-5 { | ||
1346 | left: 41.66666667%; | ||
1347 | } | ||
1348 | .col-lg-push-4 { | ||
1349 | left: 33.33333333%; | ||
1350 | } | ||
1351 | .col-lg-push-3 { | ||
1352 | left: 25%; | ||
1353 | } | ||
1354 | .col-lg-push-2 { | ||
1355 | left: 16.66666667%; | ||
1356 | } | ||
1357 | .col-lg-push-1 { | ||
1358 | left: 8.33333333%; | ||
1359 | } | ||
1360 | .col-lg-push-0 { | ||
1361 | left: 0; | ||
1362 | } | ||
1363 | .col-lg-offset-12 { | ||
1364 | margin-left: 100%; | ||
1365 | } | ||
1366 | .col-lg-offset-11 { | ||
1367 | margin-left: 91.66666667%; | ||
1368 | } | ||
1369 | .col-lg-offset-10 { | ||
1370 | margin-left: 83.33333333%; | ||
1371 | } | ||
1372 | .col-lg-offset-9 { | ||
1373 | margin-left: 75%; | ||
1374 | } | ||
1375 | .col-lg-offset-8 { | ||
1376 | margin-left: 66.66666667%; | ||
1377 | } | ||
1378 | .col-lg-offset-7 { | ||
1379 | margin-left: 58.33333333%; | ||
1380 | } | ||
1381 | .col-lg-offset-6 { | ||
1382 | margin-left: 50%; | ||
1383 | } | ||
1384 | .col-lg-offset-5 { | ||
1385 | margin-left: 41.66666667%; | ||
1386 | } | ||
1387 | .col-lg-offset-4 { | ||
1388 | margin-left: 33.33333333%; | ||
1389 | } | ||
1390 | .col-lg-offset-3 { | ||
1391 | margin-left: 25%; | ||
1392 | } | ||
1393 | .col-lg-offset-2 { | ||
1394 | margin-left: 16.66666667%; | ||
1395 | } | ||
1396 | .col-lg-offset-1 { | ||
1397 | margin-left: 8.33333333%; | ||
1398 | } | ||
1399 | .col-lg-offset-0 { | ||
1400 | margin-left: 0; | ||
1401 | } | ||
1402 | } | ||
1403 | table { | ||
1404 | max-width: 100%; | ||
1405 | background-color: transparent; | ||
1406 | } | ||
1407 | th { | ||
1408 | text-align: left; | ||
1409 | } | ||
1410 | .table { | ||
1411 | width: 100%; | ||
1412 | margin-bottom: 20px; | ||
1413 | } | ||
1414 | .table > thead > tr > th, | ||
1415 | .table > tbody > tr > th, | ||
1416 | .table > tfoot > tr > th, | ||
1417 | .table > thead > tr > td, | ||
1418 | .table > tbody > tr > td, | ||
1419 | .table > tfoot > tr > td { | ||
1420 | padding: 8px; | ||
1421 | line-height: 1.42857143; | ||
1422 | vertical-align: top; | ||
1423 | border-top: 1px solid #ddd; | ||
1424 | } | ||
1425 | .table > thead > tr > th { | ||
1426 | vertical-align: bottom; | ||
1427 | border-bottom: 2px solid #ddd; | ||
1428 | } | ||
1429 | .table > caption + thead > tr:first-child > th, | ||
1430 | .table > colgroup + thead > tr:first-child > th, | ||
1431 | .table > thead:first-child > tr:first-child > th, | ||
1432 | .table > caption + thead > tr:first-child > td, | ||
1433 | .table > colgroup + thead > tr:first-child > td, | ||
1434 | .table > thead:first-child > tr:first-child > td { | ||
1435 | border-top: 0; | ||
1436 | } | ||
1437 | .table > tbody + tbody { | ||
1438 | border-top: 2px solid #ddd; | ||
1439 | } | ||
1440 | .table .table { | ||
1441 | background-color: #fff; | ||
1442 | } | ||
1443 | .table-condensed > thead > tr > th, | ||
1444 | .table-condensed > tbody > tr > th, | ||
1445 | .table-condensed > tfoot > tr > th, | ||
1446 | .table-condensed > thead > tr > td, | ||
1447 | .table-condensed > tbody > tr > td, | ||
1448 | .table-condensed > tfoot > tr > td { | ||
1449 | padding: 5px; | ||
1450 | } | ||
1451 | .table-bordered { | ||
1452 | border: 1px solid #ddd; | ||
1453 | } | ||
1454 | .table-bordered > thead > tr > th, | ||
1455 | .table-bordered > tbody > tr > th, | ||
1456 | .table-bordered > tfoot > tr > th, | ||
1457 | .table-bordered > thead > tr > td, | ||
1458 | .table-bordered > tbody > tr > td, | ||
1459 | .table-bordered > tfoot > tr > td { | ||
1460 | border: 1px solid #ddd; | ||
1461 | } | ||
1462 | .table-bordered > thead > tr > th, | ||
1463 | .table-bordered > thead > tr > td { | ||
1464 | border-bottom-width: 2px; | ||
1465 | } | ||
1466 | .table-striped > tbody > tr:nth-child(odd) > td, | ||
1467 | .table-striped > tbody > tr:nth-child(odd) > th { | ||
1468 | background-color: #f9f9f9; | ||
1469 | } | ||
1470 | .table-hover > tbody > tr:hover > td, | ||
1471 | .table-hover > tbody > tr:hover > th { | ||
1472 | background-color: #f5f5f5; | ||
1473 | } | ||
1474 | table col[class*="col-"] { | ||
1475 | position: static; | ||
1476 | display: table-column; | ||
1477 | float: none; | ||
1478 | } | ||
1479 | table td[class*="col-"], | ||
1480 | table th[class*="col-"] { | ||
1481 | position: static; | ||
1482 | display: table-cell; | ||
1483 | float: none; | ||
1484 | } | ||
1485 | .table > thead > tr > td.active, | ||
1486 | .table > tbody > tr > td.active, | ||
1487 | .table > tfoot > tr > td.active, | ||
1488 | .table > thead > tr > th.active, | ||
1489 | .table > tbody > tr > th.active, | ||
1490 | .table > tfoot > tr > th.active, | ||
1491 | .table > thead > tr.active > td, | ||
1492 | .table > tbody > tr.active > td, | ||
1493 | .table > tfoot > tr.active > td, | ||
1494 | .table > thead > tr.active > th, | ||
1495 | .table > tbody > tr.active > th, | ||
1496 | .table > tfoot > tr.active > th { | ||
1497 | background-color: #f5f5f5; | ||
1498 | } | ||
1499 | .table-hover > tbody > tr > td.active:hover, | ||
1500 | .table-hover > tbody > tr > th.active:hover, | ||
1501 | .table-hover > tbody > tr.active:hover > td, | ||
1502 | .table-hover > tbody > tr.active:hover > th { | ||
1503 | background-color: #e8e8e8; | ||
1504 | } | ||
1505 | .table > thead > tr > td.success, | ||
1506 | .table > tbody > tr > td.success, | ||
1507 | .table > tfoot > tr > td.success, | ||
1508 | .table > thead > tr > th.success, | ||
1509 | .table > tbody > tr > th.success, | ||
1510 | .table > tfoot > tr > th.success, | ||
1511 | .table > thead > tr.success > td, | ||
1512 | .table > tbody > tr.success > td, | ||
1513 | .table > tfoot > tr.success > td, | ||
1514 | .table > thead > tr.success > th, | ||
1515 | .table > tbody > tr.success > th, | ||
1516 | .table > tfoot > tr.success > th { | ||
1517 | background-color: #dff0d8; | ||
1518 | } | ||
1519 | .table-hover > tbody > tr > td.success:hover, | ||
1520 | .table-hover > tbody > tr > th.success:hover, | ||
1521 | .table-hover > tbody > tr.success:hover > td, | ||
1522 | .table-hover > tbody > tr.success:hover > th { | ||
1523 | background-color: #d0e9c6; | ||
1524 | } | ||
1525 | .table > thead > tr > td.info, | ||
1526 | .table > tbody > tr > td.info, | ||
1527 | .table > tfoot > tr > td.info, | ||
1528 | .table > thead > tr > th.info, | ||
1529 | .table > tbody > tr > th.info, | ||
1530 | .table > tfoot > tr > th.info, | ||
1531 | .table > thead > tr.info > td, | ||
1532 | .table > tbody > tr.info > td, | ||
1533 | .table > tfoot > tr.info > td, | ||
1534 | .table > thead > tr.info > th, | ||
1535 | .table > tbody > tr.info > th, | ||
1536 | .table > tfoot > tr.info > th { | ||
1537 | background-color: #d9edf7; | ||
1538 | } | ||
1539 | .table-hover > tbody > tr > td.info:hover, | ||
1540 | .table-hover > tbody > tr > th.info:hover, | ||
1541 | .table-hover > tbody > tr.info:hover > td, | ||
1542 | .table-hover > tbody > tr.info:hover > th { | ||
1543 | background-color: #c4e3f3; | ||
1544 | } | ||
1545 | .table > thead > tr > td.warning, | ||
1546 | .table > tbody > tr > td.warning, | ||
1547 | .table > tfoot > tr > td.warning, | ||
1548 | .table > thead > tr > th.warning, | ||
1549 | .table > tbody > tr > th.warning, | ||
1550 | .table > tfoot > tr > th.warning, | ||
1551 | .table > thead > tr.warning > td, | ||
1552 | .table > tbody > tr.warning > td, | ||
1553 | .table > tfoot > tr.warning > td, | ||
1554 | .table > thead > tr.warning > th, | ||
1555 | .table > tbody > tr.warning > th, | ||
1556 | .table > tfoot > tr.warning > th { | ||
1557 | background-color: #fcf8e3; | ||
1558 | } | ||
1559 | .table-hover > tbody > tr > td.warning:hover, | ||
1560 | .table-hover > tbody > tr > th.warning:hover, | ||
1561 | .table-hover > tbody > tr.warning:hover > td, | ||
1562 | .table-hover > tbody > tr.warning:hover > th { | ||
1563 | background-color: #faf2cc; | ||
1564 | } | ||
1565 | .table > thead > tr > td.danger, | ||
1566 | .table > tbody > tr > td.danger, | ||
1567 | .table > tfoot > tr > td.danger, | ||
1568 | .table > thead > tr > th.danger, | ||
1569 | .table > tbody > tr > th.danger, | ||
1570 | .table > tfoot > tr > th.danger, | ||
1571 | .table > thead > tr.danger > td, | ||
1572 | .table > tbody > tr.danger > td, | ||
1573 | .table > tfoot > tr.danger > td, | ||
1574 | .table > thead > tr.danger > th, | ||
1575 | .table > tbody > tr.danger > th, | ||
1576 | .table > tfoot > tr.danger > th { | ||
1577 | background-color: #f2dede; | ||
1578 | } | ||
1579 | .table-hover > tbody > tr > td.danger:hover, | ||
1580 | .table-hover > tbody > tr > th.danger:hover, | ||
1581 | .table-hover > tbody > tr.danger:hover > td, | ||
1582 | .table-hover > tbody > tr.danger:hover > th { | ||
1583 | background-color: #ebcccc; | ||
1584 | } | ||
1585 | @media (max-width: 767px) { | ||
1586 | .table-responsive { | ||
1587 | width: 100%; | ||
1588 | margin-bottom: 15px; | ||
1589 | overflow-x: scroll; | ||
1590 | overflow-y: hidden; | ||
1591 | -webkit-overflow-scrolling: touch; | ||
1592 | -ms-overflow-style: -ms-autohiding-scrollbar; | ||
1593 | border: 1px solid #ddd; | ||
1594 | } | ||
1595 | .table-responsive > .table { | ||
1596 | margin-bottom: 0; | ||
1597 | } | ||
1598 | .table-responsive > .table > thead > tr > th, | ||
1599 | .table-responsive > .table > tbody > tr > th, | ||
1600 | .table-responsive > .table > tfoot > tr > th, | ||
1601 | .table-responsive > .table > thead > tr > td, | ||
1602 | .table-responsive > .table > tbody > tr > td, | ||
1603 | .table-responsive > .table > tfoot > tr > td { | ||
1604 | white-space: nowrap; | ||
1605 | } | ||
1606 | .table-responsive > .table-bordered { | ||
1607 | border: 0; | ||
1608 | } | ||
1609 | .table-responsive > .table-bordered > thead > tr > th:first-child, | ||
1610 | .table-responsive > .table-bordered > tbody > tr > th:first-child, | ||
1611 | .table-responsive > .table-bordered > tfoot > tr > th:first-child, | ||
1612 | .table-responsive > .table-bordered > thead > tr > td:first-child, | ||
1613 | .table-responsive > .table-bordered > tbody > tr > td:first-child, | ||
1614 | .table-responsive > .table-bordered > tfoot > tr > td:first-child { | ||
1615 | border-left: 0; | ||
1616 | } | ||
1617 | .table-responsive > .table-bordered > thead > tr > th:last-child, | ||
1618 | .table-responsive > .table-bordered > tbody > tr > th:last-child, | ||
1619 | .table-responsive > .table-bordered > tfoot > tr > th:last-child, | ||
1620 | .table-responsive > .table-bordered > thead > tr > td:last-child, | ||
1621 | .table-responsive > .table-bordered > tbody > tr > td:last-child, | ||
1622 | .table-responsive > .table-bordered > tfoot > tr > td:last-child { | ||
1623 | border-right: 0; | ||
1624 | } | ||
1625 | .table-responsive > .table-bordered > tbody > tr:last-child > th, | ||
1626 | .table-responsive > .table-bordered > tfoot > tr:last-child > th, | ||
1627 | .table-responsive > .table-bordered > tbody > tr:last-child > td, | ||
1628 | .table-responsive > .table-bordered > tfoot > tr:last-child > td { | ||
1629 | border-bottom: 0; | ||
1630 | } | ||
1631 | } | ||
1632 | fieldset { | ||
1633 | min-width: 0; | ||
1634 | padding: 0; | ||
1635 | margin: 0; | ||
1636 | border: 0; | ||
1637 | } | ||
1638 | legend { | ||
1639 | display: block; | ||
1640 | width: 100%; | ||
1641 | padding: 0; | ||
1642 | margin-bottom: 20px; | ||
1643 | font-size: 21px; | ||
1644 | line-height: inherit; | ||
1645 | color: #333; | ||
1646 | border: 0; | ||
1647 | border-bottom: 1px solid #e5e5e5; | ||
1648 | } | ||
1649 | label { | ||
1650 | display: inline-block; | ||
1651 | margin-bottom: 5px; | ||
1652 | font-weight: bold; | ||
1653 | } | ||
1654 | input[type="search"] { | ||
1655 | -webkit-box-sizing: border-box; | ||
1656 | -moz-box-sizing: border-box; | ||
1657 | box-sizing: border-box; | ||
1658 | } | ||
1659 | input[type="radio"], | ||
1660 | input[type="checkbox"] { | ||
1661 | margin: 4px 0 0; | ||
1662 | margin-top: 1px \9; | ||
1663 | /* IE8-9 */ | ||
1664 | line-height: normal; | ||
1665 | } | ||
1666 | input[type="file"] { | ||
1667 | display: block; | ||
1668 | } | ||
1669 | input[type="range"] { | ||
1670 | display: block; | ||
1671 | width: 100%; | ||
1672 | } | ||
1673 | select[multiple], | ||
1674 | select[size] { | ||
1675 | height: auto; | ||
1676 | } | ||
1677 | input[type="file"]:focus, | ||
1678 | input[type="radio"]:focus, | ||
1679 | input[type="checkbox"]:focus { | ||
1680 | outline: thin dotted; | ||
1681 | outline: 5px auto -webkit-focus-ring-color; | ||
1682 | outline-offset: -2px; | ||
1683 | } | ||
1684 | output { | ||
1685 | display: block; | ||
1686 | padding-top: 7px; | ||
1687 | font-size: 14px; | ||
1688 | line-height: 1.42857143; | ||
1689 | color: #555; | ||
1690 | } | ||
1691 | .form-control { | ||
1692 | display: block; | ||
1693 | width: 100%; | ||
1694 | height: 34px; | ||
1695 | padding: 6px 12px; | ||
1696 | font-size: 14px; | ||
1697 | line-height: 1.42857143; | ||
1698 | color: #555; | ||
1699 | background-color: #fff; | ||
1700 | background-image: none; | ||
1701 | border: 1px solid #ccc; | ||
1702 | border-radius: 4px; | ||
1703 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | ||
1704 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | ||
1705 | -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; | ||
1706 | transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; | ||
1707 | } | ||
1708 | .form-control:focus { | ||
1709 | border-color: #66afe9; | ||
1710 | outline: 0; | ||
1711 | -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); | ||
1712 | box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); | ||
1713 | } | ||
1714 | .form-control::-moz-placeholder { | ||
1715 | color: #999; | ||
1716 | opacity: 1; | ||
1717 | } | ||
1718 | .form-control:-ms-input-placeholder { | ||
1719 | color: #999; | ||
1720 | } | ||
1721 | .form-control::-webkit-input-placeholder { | ||
1722 | color: #999; | ||
1723 | } | ||
1724 | .form-control[disabled], | ||
1725 | .form-control[readonly], | ||
1726 | fieldset[disabled] .form-control { | ||
1727 | cursor: not-allowed; | ||
1728 | background-color: #eee; | ||
1729 | opacity: 1; | ||
1730 | } | ||
1731 | textarea.form-control { | ||
1732 | height: auto; | ||
1733 | } | ||
1734 | input[type="search"] { | ||
1735 | -webkit-appearance: none; | ||
1736 | } | ||
1737 | input[type="date"] { | ||
1738 | line-height: 34px; | ||
1739 | } | ||
1740 | .form-group { | ||
1741 | margin-bottom: 15px; | ||
1742 | } | ||
1743 | .radio, | ||
1744 | .checkbox { | ||
1745 | display: block; | ||
1746 | min-height: 20px; | ||
1747 | padding-left: 20px; | ||
1748 | margin-top: 10px; | ||
1749 | margin-bottom: 10px; | ||
1750 | } | ||
1751 | .radio label, | ||
1752 | .checkbox label { | ||
1753 | display: inline; | ||
1754 | font-weight: normal; | ||
1755 | cursor: pointer; | ||
1756 | } | ||
1757 | .radio input[type="radio"], | ||
1758 | .radio-inline input[type="radio"], | ||
1759 | .checkbox input[type="checkbox"], | ||
1760 | .checkbox-inline input[type="checkbox"] { | ||
1761 | float: left; | ||
1762 | margin-left: -20px; | ||
1763 | } | ||
1764 | .radio + .radio, | ||
1765 | .checkbox + .checkbox { | ||
1766 | margin-top: -5px; | ||
1767 | } | ||
1768 | .radio-inline, | ||
1769 | .checkbox-inline { | ||
1770 | display: inline-block; | ||
1771 | padding-left: 20px; | ||
1772 | margin-bottom: 0; | ||
1773 | font-weight: normal; | ||
1774 | vertical-align: middle; | ||
1775 | cursor: pointer; | ||
1776 | } | ||
1777 | .radio-inline + .radio-inline, | ||
1778 | .checkbox-inline + .checkbox-inline { | ||
1779 | margin-top: 0; | ||
1780 | margin-left: 10px; | ||
1781 | } | ||
1782 | input[type="radio"][disabled], | ||
1783 | input[type="checkbox"][disabled], | ||
1784 | .radio[disabled], | ||
1785 | .radio-inline[disabled], | ||
1786 | .checkbox[disabled], | ||
1787 | .checkbox-inline[disabled], | ||
1788 | fieldset[disabled] input[type="radio"], | ||
1789 | fieldset[disabled] input[type="checkbox"], | ||
1790 | fieldset[disabled] .radio, | ||
1791 | fieldset[disabled] .radio-inline, | ||
1792 | fieldset[disabled] .checkbox, | ||
1793 | fieldset[disabled] .checkbox-inline { | ||
1794 | cursor: not-allowed; | ||
1795 | } | ||
1796 | .input-sm { | ||
1797 | height: 30px; | ||
1798 | padding: 5px 10px; | ||
1799 | font-size: 12px; | ||
1800 | line-height: 1.5; | ||
1801 | border-radius: 3px; | ||
1802 | } | ||
1803 | select.input-sm { | ||
1804 | height: 30px; | ||
1805 | line-height: 30px; | ||
1806 | } | ||
1807 | textarea.input-sm, | ||
1808 | select[multiple].input-sm { | ||
1809 | height: auto; | ||
1810 | } | ||
1811 | .input-lg { | ||
1812 | height: 46px; | ||
1813 | padding: 10px 16px; | ||
1814 | font-size: 18px; | ||
1815 | line-height: 1.33; | ||
1816 | border-radius: 6px; | ||
1817 | } | ||
1818 | select.input-lg { | ||
1819 | height: 46px; | ||
1820 | line-height: 46px; | ||
1821 | } | ||
1822 | textarea.input-lg, | ||
1823 | select[multiple].input-lg { | ||
1824 | height: auto; | ||
1825 | } | ||
1826 | .has-feedback { | ||
1827 | position: relative; | ||
1828 | } | ||
1829 | .has-feedback .form-control { | ||
1830 | padding-right: 42.5px; | ||
1831 | } | ||
1832 | .has-feedback .form-control-feedback { | ||
1833 | position: absolute; | ||
1834 | top: 25px; | ||
1835 | right: 0; | ||
1836 | display: block; | ||
1837 | width: 34px; | ||
1838 | height: 34px; | ||
1839 | line-height: 34px; | ||
1840 | text-align: center; | ||
1841 | } | ||
1842 | .has-success .help-block, | ||
1843 | .has-success .control-label, | ||
1844 | .has-success .radio, | ||
1845 | .has-success .checkbox, | ||
1846 | .has-success .radio-inline, | ||
1847 | .has-success .checkbox-inline { | ||
1848 | color: #3c763d; | ||
1849 | } | ||
1850 | .has-success .form-control { | ||
1851 | border-color: #3c763d; | ||
1852 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | ||
1853 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | ||
1854 | } | ||
1855 | .has-success .form-control:focus { | ||
1856 | border-color: #2b542c; | ||
1857 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; | ||
1858 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; | ||
1859 | } | ||
1860 | .has-success .input-group-addon { | ||
1861 | color: #3c763d; | ||
1862 | background-color: #dff0d8; | ||
1863 | border-color: #3c763d; | ||
1864 | } | ||
1865 | .has-success .form-control-feedback { | ||
1866 | color: #3c763d; | ||
1867 | } | ||
1868 | .has-warning .help-block, | ||
1869 | .has-warning .control-label, | ||
1870 | .has-warning .radio, | ||
1871 | .has-warning .checkbox, | ||
1872 | .has-warning .radio-inline, | ||
1873 | .has-warning .checkbox-inline { | ||
1874 | color: #8a6d3b; | ||
1875 | } | ||
1876 | .has-warning .form-control { | ||
1877 | border-color: #8a6d3b; | ||
1878 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | ||
1879 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | ||
1880 | } | ||
1881 | .has-warning .form-control:focus { | ||
1882 | border-color: #66512c; | ||
1883 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; | ||
1884 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; | ||
1885 | } | ||
1886 | .has-warning .input-group-addon { | ||
1887 | color: #8a6d3b; | ||
1888 | background-color: #fcf8e3; | ||
1889 | border-color: #8a6d3b; | ||
1890 | } | ||
1891 | .has-warning .form-control-feedback { | ||
1892 | color: #8a6d3b; | ||
1893 | } | ||
1894 | .has-error .help-block, | ||
1895 | .has-error .control-label, | ||
1896 | .has-error .radio, | ||
1897 | .has-error .checkbox, | ||
1898 | .has-error .radio-inline, | ||
1899 | .has-error .checkbox-inline { | ||
1900 | color: #a94442; | ||
1901 | } | ||
1902 | .has-error .form-control { | ||
1903 | border-color: #a94442; | ||
1904 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | ||
1905 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | ||
1906 | } | ||
1907 | .has-error .form-control:focus { | ||
1908 | border-color: #843534; | ||
1909 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; | ||
1910 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; | ||
1911 | } | ||
1912 | .has-error .input-group-addon { | ||
1913 | color: #a94442; | ||
1914 | background-color: #f2dede; | ||
1915 | border-color: #a94442; | ||
1916 | } | ||
1917 | .has-error .form-control-feedback { | ||
1918 | color: #a94442; | ||
1919 | } | ||
1920 | .form-control-static { | ||
1921 | margin-bottom: 0; | ||
1922 | } | ||
1923 | .help-block { | ||
1924 | display: block; | ||
1925 | margin-top: 5px; | ||
1926 | margin-bottom: 10px; | ||
1927 | color: #737373; | ||
1928 | } | ||
1929 | @media (min-width: 768px) { | ||
1930 | .form-inline .form-group { | ||
1931 | display: inline-block; | ||
1932 | margin-bottom: 0; | ||
1933 | vertical-align: middle; | ||
1934 | } | ||
1935 | .form-inline .form-control { | ||
1936 | display: inline-block; | ||
1937 | width: auto; | ||
1938 | vertical-align: middle; | ||
1939 | } | ||
1940 | .form-inline .input-group > .form-control { | ||
1941 | width: 100%; | ||
1942 | } | ||
1943 | .form-inline .control-label { | ||
1944 | margin-bottom: 0; | ||
1945 | vertical-align: middle; | ||
1946 | } | ||
1947 | .form-inline .radio, | ||
1948 | .form-inline .checkbox { | ||
1949 | display: inline-block; | ||
1950 | padding-left: 0; | ||
1951 | margin-top: 0; | ||
1952 | margin-bottom: 0; | ||
1953 | vertical-align: middle; | ||
1954 | } | ||
1955 | .form-inline .radio input[type="radio"], | ||
1956 | .form-inline .checkbox input[type="checkbox"] { | ||
1957 | float: none; | ||
1958 | margin-left: 0; | ||
1959 | } | ||
1960 | .form-inline .has-feedback .form-control-feedback { | ||
1961 | top: 0; | ||
1962 | } | ||
1963 | } | ||
1964 | .form-horizontal .control-label, | ||
1965 | .form-horizontal .radio, | ||
1966 | .form-horizontal .checkbox, | ||
1967 | .form-horizontal .radio-inline, | ||
1968 | .form-horizontal .checkbox-inline { | ||
1969 | padding-top: 7px; | ||
1970 | margin-top: 0; | ||
1971 | margin-bottom: 0; | ||
1972 | } | ||
1973 | .form-horizontal .radio, | ||
1974 | .form-horizontal .checkbox { | ||
1975 | min-height: 27px; | ||
1976 | } | ||
1977 | .form-horizontal .form-group { | ||
1978 | margin-right: -15px; | ||
1979 | margin-left: -15px; | ||
1980 | } | ||
1981 | .form-horizontal .form-control-static { | ||
1982 | padding-top: 7px; | ||
1983 | } | ||
1984 | @media (min-width: 768px) { | ||
1985 | .form-horizontal .control-label { | ||
1986 | text-align: right; | ||
1987 | } | ||
1988 | } | ||
1989 | .form-horizontal .has-feedback .form-control-feedback { | ||
1990 | top: 0; | ||
1991 | right: 15px; | ||
1992 | } | ||
1993 | .btn { | ||
1994 | display: inline-block; | ||
1995 | padding: 6px 12px; | ||
1996 | margin-bottom: 0; | ||
1997 | font-size: 14px; | ||
1998 | font-weight: normal; | ||
1999 | line-height: 1.42857143; | ||
2000 | text-align: center; | ||
2001 | white-space: nowrap; | ||
2002 | vertical-align: middle; | ||
2003 | cursor: pointer; | ||
2004 | -webkit-user-select: none; | ||
2005 | -moz-user-select: none; | ||
2006 | -ms-user-select: none; | ||
2007 | user-select: none; | ||
2008 | background-image: none; | ||
2009 | border: 1px solid transparent; | ||
2010 | border-radius: 4px; | ||
2011 | } | ||
2012 | .btn:focus, | ||
2013 | .btn:active:focus, | ||
2014 | .btn.active:focus { | ||
2015 | outline: thin dotted; | ||
2016 | outline: 5px auto -webkit-focus-ring-color; | ||
2017 | outline-offset: -2px; | ||
2018 | } | ||
2019 | .btn:hover, | ||
2020 | .btn:focus { | ||
2021 | color: #333; | ||
2022 | text-decoration: none; | ||
2023 | } | ||
2024 | .btn:active, | ||
2025 | .btn.active { | ||
2026 | background-image: none; | ||
2027 | outline: 0; | ||
2028 | -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); | ||
2029 | box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); | ||
2030 | } | ||
2031 | .btn.disabled, | ||
2032 | .btn[disabled], | ||
2033 | fieldset[disabled] .btn { | ||
2034 | pointer-events: none; | ||
2035 | cursor: not-allowed; | ||
2036 | filter: alpha(opacity=65); | ||
2037 | -webkit-box-shadow: none; | ||
2038 | box-shadow: none; | ||
2039 | opacity: .65; | ||
2040 | } | ||
2041 | .btn-default { | ||
2042 | color: #333; | ||
2043 | background-color: #fff; | ||
2044 | border-color: #ccc; | ||
2045 | } | ||
2046 | .btn-default:hover, | ||
2047 | .btn-default:focus, | ||
2048 | .btn-default:active, | ||
2049 | .btn-default.active, | ||
2050 | .open .dropdown-toggle.btn-default { | ||
2051 | color: #333; | ||
2052 | background-color: #ebebeb; | ||
2053 | border-color: #adadad; | ||
2054 | } | ||
2055 | .btn-default:active, | ||
2056 | .btn-default.active, | ||
2057 | .open .dropdown-toggle.btn-default { | ||
2058 | background-image: none; | ||
2059 | } | ||
2060 | .btn-default.disabled, | ||
2061 | .btn-default[disabled], | ||
2062 | fieldset[disabled] .btn-default, | ||
2063 | .btn-default.disabled:hover, | ||
2064 | .btn-default[disabled]:hover, | ||
2065 | fieldset[disabled] .btn-default:hover, | ||
2066 | .btn-default.disabled:focus, | ||
2067 | .btn-default[disabled]:focus, | ||
2068 | fieldset[disabled] .btn-default:focus, | ||
2069 | .btn-default.disabled:active, | ||
2070 | .btn-default[disabled]:active, | ||
2071 | fieldset[disabled] .btn-default:active, | ||
2072 | .btn-default.disabled.active, | ||
2073 | .btn-default[disabled].active, | ||
2074 | fieldset[disabled] .btn-default.active { | ||
2075 | background-color: #fff; | ||
2076 | border-color: #ccc; | ||
2077 | } | ||
2078 | .btn-default .badge { | ||
2079 | color: #fff; | ||
2080 | background-color: #333; | ||
2081 | } | ||
2082 | .btn-primary { | ||
2083 | color: #fff; | ||
2084 | background-color: #428bca; | ||
2085 | border-color: #357ebd; | ||
2086 | } | ||
2087 | .btn-primary:hover, | ||
2088 | .btn-primary:focus, | ||
2089 | .btn-primary:active, | ||
2090 | .btn-primary.active, | ||
2091 | .open .dropdown-toggle.btn-primary { | ||
2092 | color: #fff; | ||
2093 | background-color: #3276b1; | ||
2094 | border-color: #285e8e; | ||
2095 | } | ||
2096 | .btn-primary:active, | ||
2097 | .btn-primary.active, | ||
2098 | .open .dropdown-toggle.btn-primary { | ||
2099 | background-image: none; | ||
2100 | } | ||
2101 | .btn-primary.disabled, | ||
2102 | .btn-primary[disabled], | ||
2103 | fieldset[disabled] .btn-primary, | ||
2104 | .btn-primary.disabled:hover, | ||
2105 | .btn-primary[disabled]:hover, | ||
2106 | fieldset[disabled] .btn-primary:hover, | ||
2107 | .btn-primary.disabled:focus, | ||
2108 | .btn-primary[disabled]:focus, | ||
2109 | fieldset[disabled] .btn-primary:focus, | ||
2110 | .btn-primary.disabled:active, | ||
2111 | .btn-primary[disabled]:active, | ||
2112 | fieldset[disabled] .btn-primary:active, | ||
2113 | .btn-primary.disabled.active, | ||
2114 | .btn-primary[disabled].active, | ||
2115 | fieldset[disabled] .btn-primary.active { | ||
2116 | background-color: #428bca; | ||
2117 | border-color: #357ebd; | ||
2118 | } | ||
2119 | .btn-primary .badge { | ||
2120 | color: #428bca; | ||
2121 | background-color: #fff; | ||
2122 | } | ||
2123 | .btn-success { | ||
2124 | color: #fff; | ||
2125 | background-color: #5cb85c; | ||
2126 | border-color: #4cae4c; | ||
2127 | } | ||
2128 | .btn-success:hover, | ||
2129 | .btn-success:focus, | ||
2130 | .btn-success:active, | ||
2131 | .btn-success.active, | ||
2132 | .open .dropdown-toggle.btn-success { | ||
2133 | color: #fff; | ||
2134 | background-color: #47a447; | ||
2135 | border-color: #398439; | ||
2136 | } | ||
2137 | .btn-success:active, | ||
2138 | .btn-success.active, | ||
2139 | .open .dropdown-toggle.btn-success { | ||
2140 | background-image: none; | ||
2141 | } | ||
2142 | .btn-success.disabled, | ||
2143 | .btn-success[disabled], | ||
2144 | fieldset[disabled] .btn-success, | ||
2145 | .btn-success.disabled:hover, | ||
2146 | .btn-success[disabled]:hover, | ||
2147 | fieldset[disabled] .btn-success:hover, | ||
2148 | .btn-success.disabled:focus, | ||
2149 | .btn-success[disabled]:focus, | ||
2150 | fieldset[disabled] .btn-success:focus, | ||
2151 | .btn-success.disabled:active, | ||
2152 | .btn-success[disabled]:active, | ||
2153 | fieldset[disabled] .btn-success:active, | ||
2154 | .btn-success.disabled.active, | ||
2155 | .btn-success[disabled].active, | ||
2156 | fieldset[disabled] .btn-success.active { | ||
2157 | background-color: #5cb85c; | ||
2158 | border-color: #4cae4c; | ||
2159 | } | ||
2160 | .btn-success .badge { | ||
2161 | color: #5cb85c; | ||
2162 | background-color: #fff; | ||
2163 | } | ||
2164 | .btn-info { | ||
2165 | color: #fff; | ||
2166 | background-color: #5bc0de; | ||
2167 | border-color: #46b8da; | ||
2168 | } | ||
2169 | .btn-info:hover, | ||
2170 | .btn-info:focus, | ||
2171 | .btn-info:active, | ||
2172 | .btn-info.active, | ||
2173 | .open .dropdown-toggle.btn-info { | ||
2174 | color: #fff; | ||
2175 | background-color: #39b3d7; | ||
2176 | border-color: #269abc; | ||
2177 | } | ||
2178 | .btn-info:active, | ||
2179 | .btn-info.active, | ||
2180 | .open .dropdown-toggle.btn-info { | ||
2181 | background-image: none; | ||
2182 | } | ||
2183 | .btn-info.disabled, | ||
2184 | .btn-info[disabled], | ||
2185 | fieldset[disabled] .btn-info, | ||
2186 | .btn-info.disabled:hover, | ||
2187 | .btn-info[disabled]:hover, | ||
2188 | fieldset[disabled] .btn-info:hover, | ||
2189 | .btn-info.disabled:focus, | ||
2190 | .btn-info[disabled]:focus, | ||
2191 | fieldset[disabled] .btn-info:focus, | ||
2192 | .btn-info.disabled:active, | ||
2193 | .btn-info[disabled]:active, | ||
2194 | fieldset[disabled] .btn-info:active, | ||
2195 | .btn-info.disabled.active, | ||
2196 | .btn-info[disabled].active, | ||
2197 | fieldset[disabled] .btn-info.active { | ||
2198 | background-color: #5bc0de; | ||
2199 | border-color: #46b8da; | ||
2200 | } | ||
2201 | .btn-info .badge { | ||
2202 | color: #5bc0de; | ||
2203 | background-color: #fff; | ||
2204 | } | ||
2205 | .btn-warning { | ||
2206 | color: #fff; | ||
2207 | background-color: #f0ad4e; | ||
2208 | border-color: #eea236; | ||
2209 | } | ||
2210 | .btn-warning:hover, | ||
2211 | .btn-warning:focus, | ||
2212 | .btn-warning:active, | ||
2213 | .btn-warning.active, | ||
2214 | .open .dropdown-toggle.btn-warning { | ||
2215 | color: #fff; | ||
2216 | background-color: #ed9c28; | ||
2217 | border-color: #d58512; | ||
2218 | } | ||
2219 | .btn-warning:active, | ||
2220 | .btn-warning.active, | ||
2221 | .open .dropdown-toggle.btn-warning { | ||
2222 | background-image: none; | ||
2223 | } | ||
2224 | .btn-warning.disabled, | ||
2225 | .btn-warning[disabled], | ||
2226 | fieldset[disabled] .btn-warning, | ||
2227 | .btn-warning.disabled:hover, | ||
2228 | .btn-warning[disabled]:hover, | ||
2229 | fieldset[disabled] .btn-warning:hover, | ||
2230 | .btn-warning.disabled:focus, | ||
2231 | .btn-warning[disabled]:focus, | ||
2232 | fieldset[disabled] .btn-warning:focus, | ||
2233 | .btn-warning.disabled:active, | ||
2234 | .btn-warning[disabled]:active, | ||
2235 | fieldset[disabled] .btn-warning:active, | ||
2236 | .btn-warning.disabled.active, | ||
2237 | .btn-warning[disabled].active, | ||
2238 | fieldset[disabled] .btn-warning.active { | ||
2239 | background-color: #f0ad4e; | ||
2240 | border-color: #eea236; | ||
2241 | } | ||
2242 | .btn-warning .badge { | ||
2243 | color: #f0ad4e; | ||
2244 | background-color: #fff; | ||
2245 | } | ||
2246 | .btn-danger { | ||
2247 | color: #fff; | ||
2248 | background-color: #d9534f; | ||
2249 | border-color: #d43f3a; | ||
2250 | } | ||
2251 | .btn-danger:hover, | ||
2252 | .btn-danger:focus, | ||
2253 | .btn-danger:active, | ||
2254 | .btn-danger.active, | ||
2255 | .open .dropdown-toggle.btn-danger { | ||
2256 | color: #fff; | ||
2257 | background-color: #d2322d; | ||
2258 | border-color: #ac2925; | ||
2259 | } | ||
2260 | .btn-danger:active, | ||
2261 | .btn-danger.active, | ||
2262 | .open .dropdown-toggle.btn-danger { | ||
2263 | background-image: none; | ||
2264 | } | ||
2265 | .btn-danger.disabled, | ||
2266 | .btn-danger[disabled], | ||
2267 | fieldset[disabled] .btn-danger, | ||
2268 | .btn-danger.disabled:hover, | ||
2269 | .btn-danger[disabled]:hover, | ||
2270 | fieldset[disabled] .btn-danger:hover, | ||
2271 | .btn-danger.disabled:focus, | ||
2272 | .btn-danger[disabled]:focus, | ||
2273 | fieldset[disabled] .btn-danger:focus, | ||
2274 | .btn-danger.disabled:active, | ||
2275 | .btn-danger[disabled]:active, | ||
2276 | fieldset[disabled] .btn-danger:active, | ||
2277 | .btn-danger.disabled.active, | ||
2278 | .btn-danger[disabled].active, | ||
2279 | fieldset[disabled] .btn-danger.active { | ||
2280 | background-color: #d9534f; | ||
2281 | border-color: #d43f3a; | ||
2282 | } | ||
2283 | .btn-danger .badge { | ||
2284 | color: #d9534f; | ||
2285 | background-color: #fff; | ||
2286 | } | ||
2287 | .btn-link { | ||
2288 | font-weight: normal; | ||
2289 | color: #428bca; | ||
2290 | cursor: pointer; | ||
2291 | border-radius: 0; | ||
2292 | } | ||
2293 | .btn-link, | ||
2294 | .btn-link:active, | ||
2295 | .btn-link[disabled], | ||
2296 | fieldset[disabled] .btn-link { | ||
2297 | background-color: transparent; | ||
2298 | -webkit-box-shadow: none; | ||
2299 | box-shadow: none; | ||
2300 | } | ||
2301 | .btn-link, | ||
2302 | .btn-link:hover, | ||
2303 | .btn-link:focus, | ||
2304 | .btn-link:active { | ||
2305 | border-color: transparent; | ||
2306 | } | ||
2307 | .btn-link:hover, | ||
2308 | .btn-link:focus { | ||
2309 | color: #2a6496; | ||
2310 | text-decoration: underline; | ||
2311 | background-color: transparent; | ||
2312 | } | ||
2313 | .btn-link[disabled]:hover, | ||
2314 | fieldset[disabled] .btn-link:hover, | ||
2315 | .btn-link[disabled]:focus, | ||
2316 | fieldset[disabled] .btn-link:focus { | ||
2317 | color: #999; | ||
2318 | text-decoration: none; | ||
2319 | } | ||
2320 | .btn-lg, | ||
2321 | .btn-group-lg > .btn { | ||
2322 | padding: 10px 16px; | ||
2323 | font-size: 18px; | ||
2324 | line-height: 1.33; | ||
2325 | border-radius: 6px; | ||
2326 | } | ||
2327 | .btn-sm, | ||
2328 | .btn-group-sm > .btn { | ||
2329 | padding: 5px 10px; | ||
2330 | font-size: 12px; | ||
2331 | line-height: 1.5; | ||
2332 | border-radius: 3px; | ||
2333 | } | ||
2334 | .btn-xs, | ||
2335 | .btn-group-xs > .btn { | ||
2336 | padding: 1px 5px; | ||
2337 | font-size: 12px; | ||
2338 | line-height: 1.5; | ||
2339 | border-radius: 3px; | ||
2340 | } | ||
2341 | .btn-block { | ||
2342 | display: block; | ||
2343 | width: 100%; | ||
2344 | padding-right: 0; | ||
2345 | padding-left: 0; | ||
2346 | } | ||
2347 | .btn-block + .btn-block { | ||
2348 | margin-top: 5px; | ||
2349 | } | ||
2350 | input[type="submit"].btn-block, | ||
2351 | input[type="reset"].btn-block, | ||
2352 | input[type="button"].btn-block { | ||
2353 | width: 100%; | ||
2354 | } | ||
2355 | .fade { | ||
2356 | opacity: 0; | ||
2357 | -webkit-transition: opacity .15s linear; | ||
2358 | transition: opacity .15s linear; | ||
2359 | } | ||
2360 | .fade.in { | ||
2361 | opacity: 1; | ||
2362 | } | ||
2363 | .collapse { | ||
2364 | display: none; | ||
2365 | } | ||
2366 | .collapse.in { | ||
2367 | display: block; | ||
2368 | } | ||
2369 | .collapsing { | ||
2370 | position: relative; | ||
2371 | height: 0; | ||
2372 | overflow: hidden; | ||
2373 | -webkit-transition: height .35s ease; | ||
2374 | transition: height .35s ease; | ||
2375 | } | ||
2376 | @font-face { | ||
2377 | font-family: 'Glyphicons Halflings'; | ||
2378 | |||
2379 | src: url('../fonts/glyphicons-halflings-regular.eot'); | ||
2380 | src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); | ||
2381 | } | ||
2382 | .glyphicon { | ||
2383 | position: relative; | ||
2384 | top: 1px; | ||
2385 | display: inline-block; | ||
2386 | font-family: 'Glyphicons Halflings'; | ||
2387 | font-style: normal; | ||
2388 | font-weight: normal; | ||
2389 | line-height: 1; | ||
2390 | |||
2391 | -webkit-font-smoothing: antialiased; | ||
2392 | -moz-osx-font-smoothing: grayscale; | ||
2393 | } | ||
2394 | .glyphicon-asterisk:before { | ||
2395 | content: "\2a"; | ||
2396 | } | ||
2397 | .glyphicon-plus:before { | ||
2398 | content: "\2b"; | ||
2399 | } | ||
2400 | .glyphicon-euro:before { | ||
2401 | content: "\20ac"; | ||
2402 | } | ||
2403 | .glyphicon-minus:before { | ||
2404 | content: "\2212"; | ||
2405 | } | ||
2406 | .glyphicon-cloud:before { | ||
2407 | content: "\2601"; | ||
2408 | } | ||
2409 | .glyphicon-envelope:before { | ||
2410 | content: "\2709"; | ||
2411 | } | ||
2412 | .glyphicon-pencil:before { | ||
2413 | content: "\270f"; | ||
2414 | } | ||
2415 | .glyphicon-glass:before { | ||
2416 | content: "\e001"; | ||
2417 | } | ||
2418 | .glyphicon-music:before { | ||
2419 | content: "\e002"; | ||
2420 | } | ||
2421 | .glyphicon-search:before { | ||
2422 | content: "\e003"; | ||
2423 | } | ||
2424 | .glyphicon-heart:before { | ||
2425 | content: "\e005"; | ||
2426 | } | ||
2427 | .glyphicon-star:before { | ||
2428 | content: "\e006"; | ||
2429 | } | ||
2430 | .glyphicon-star-empty:before { | ||
2431 | content: "\e007"; | ||
2432 | } | ||
2433 | .glyphicon-user:before { | ||
2434 | content: "\e008"; | ||
2435 | } | ||
2436 | .glyphicon-film:before { | ||
2437 | content: "\e009"; | ||
2438 | } | ||
2439 | .glyphicon-th-large:before { | ||
2440 | content: "\e010"; | ||
2441 | } | ||
2442 | .glyphicon-th:before { | ||
2443 | content: "\e011"; | ||
2444 | } | ||
2445 | .glyphicon-th-list:before { | ||
2446 | content: "\e012"; | ||
2447 | } | ||
2448 | .glyphicon-ok:before { | ||
2449 | content: "\e013"; | ||
2450 | } | ||
2451 | .glyphicon-remove:before { | ||
2452 | content: "\e014"; | ||
2453 | } | ||
2454 | .glyphicon-zoom-in:before { | ||
2455 | content: "\e015"; | ||
2456 | } | ||
2457 | .glyphicon-zoom-out:before { | ||
2458 | content: "\e016"; | ||
2459 | } | ||
2460 | .glyphicon-off:before { | ||
2461 | content: "\e017"; | ||
2462 | } | ||
2463 | .glyphicon-signal:before { | ||
2464 | content: "\e018"; | ||
2465 | } | ||
2466 | .glyphicon-cog:before { | ||
2467 | content: "\e019"; | ||
2468 | } | ||
2469 | .glyphicon-trash:before { | ||
2470 | content: "\e020"; | ||
2471 | } | ||
2472 | .glyphicon-home:before { | ||
2473 | content: "\e021"; | ||
2474 | } | ||
2475 | .glyphicon-file:before { | ||
2476 | content: "\e022"; | ||
2477 | } | ||
2478 | .glyphicon-time:before { | ||
2479 | content: "\e023"; | ||
2480 | } | ||
2481 | .glyphicon-road:before { | ||
2482 | content: "\e024"; | ||
2483 | } | ||
2484 | .glyphicon-download-alt:before { | ||
2485 | content: "\e025"; | ||
2486 | } | ||
2487 | .glyphicon-download:before { | ||
2488 | content: "\e026"; | ||
2489 | } | ||
2490 | .glyphicon-upload:before { | ||
2491 | content: "\e027"; | ||
2492 | } | ||
2493 | .glyphicon-inbox:before { | ||
2494 | content: "\e028"; | ||
2495 | } | ||
2496 | .glyphicon-play-circle:before { | ||
2497 | content: "\e029"; | ||
2498 | } | ||
2499 | .glyphicon-repeat:before { | ||
2500 | content: "\e030"; | ||
2501 | } | ||
2502 | .glyphicon-refresh:before { | ||
2503 | content: "\e031"; | ||
2504 | } | ||
2505 | .glyphicon-list-alt:before { | ||
2506 | content: "\e032"; | ||
2507 | } | ||
2508 | .glyphicon-lock:before { | ||
2509 | content: "\e033"; | ||
2510 | } | ||
2511 | .glyphicon-flag:before { | ||
2512 | content: "\e034"; | ||
2513 | } | ||
2514 | .glyphicon-headphones:before { | ||
2515 | content: "\e035"; | ||
2516 | } | ||
2517 | .glyphicon-volume-off:before { | ||
2518 | content: "\e036"; | ||
2519 | } | ||
2520 | .glyphicon-volume-down:before { | ||
2521 | content: "\e037"; | ||
2522 | } | ||
2523 | .glyphicon-volume-up:before { | ||
2524 | content: "\e038"; | ||
2525 | } | ||
2526 | .glyphicon-qrcode:before { | ||
2527 | content: "\e039"; | ||
2528 | } | ||
2529 | .glyphicon-barcode:before { | ||
2530 | content: "\e040"; | ||
2531 | } | ||
2532 | .glyphicon-tag:before { | ||
2533 | content: "\e041"; | ||
2534 | } | ||
2535 | .glyphicon-tags:before { | ||
2536 | content: "\e042"; | ||
2537 | } | ||
2538 | .glyphicon-book:before { | ||
2539 | content: "\e043"; | ||
2540 | } | ||
2541 | .glyphicon-bookmark:before { | ||
2542 | content: "\e044"; | ||
2543 | } | ||
2544 | .glyphicon-print:before { | ||
2545 | content: "\e045"; | ||
2546 | } | ||
2547 | .glyphicon-camera:before { | ||
2548 | content: "\e046"; | ||
2549 | } | ||
2550 | .glyphicon-font:before { | ||
2551 | content: "\e047"; | ||
2552 | } | ||
2553 | .glyphicon-bold:before { | ||
2554 | content: "\e048"; | ||
2555 | } | ||
2556 | .glyphicon-italic:before { | ||
2557 | content: "\e049"; | ||
2558 | } | ||
2559 | .glyphicon-text-height:before { | ||
2560 | content: "\e050"; | ||
2561 | } | ||
2562 | .glyphicon-text-width:before { | ||
2563 | content: "\e051"; | ||
2564 | } | ||
2565 | .glyphicon-align-left:before { | ||
2566 | content: "\e052"; | ||
2567 | } | ||
2568 | .glyphicon-align-center:before { | ||
2569 | content: "\e053"; | ||
2570 | } | ||
2571 | .glyphicon-align-right:before { | ||
2572 | content: "\e054"; | ||
2573 | } | ||
2574 | .glyphicon-align-justify:before { | ||
2575 | content: "\e055"; | ||
2576 | } | ||
2577 | .glyphicon-list:before { | ||
2578 | content: "\e056"; | ||
2579 | } | ||
2580 | .glyphicon-indent-left:before { | ||
2581 | content: "\e057"; | ||
2582 | } | ||
2583 | .glyphicon-indent-right:before { | ||
2584 | content: "\e058"; | ||
2585 | } | ||
2586 | .glyphicon-facetime-video:before { | ||
2587 | content: "\e059"; | ||
2588 | } | ||
2589 | .glyphicon-picture:before { | ||
2590 | content: "\e060"; | ||
2591 | } | ||
2592 | .glyphicon-map-marker:before { | ||
2593 | content: "\e062"; | ||
2594 | } | ||
2595 | .glyphicon-adjust:before { | ||
2596 | content: "\e063"; | ||
2597 | } | ||
2598 | .glyphicon-tint:before { | ||
2599 | content: "\e064"; | ||
2600 | } | ||
2601 | .glyphicon-edit:before { | ||
2602 | content: "\e065"; | ||
2603 | } | ||
2604 | .glyphicon-share:before { | ||
2605 | content: "\e066"; | ||
2606 | } | ||
2607 | .glyphicon-check:before { | ||
2608 | content: "\e067"; | ||
2609 | } | ||
2610 | .glyphicon-move:before { | ||
2611 | content: "\e068"; | ||
2612 | } | ||
2613 | .glyphicon-step-backward:before { | ||
2614 | content: "\e069"; | ||
2615 | } | ||
2616 | .glyphicon-fast-backward:before { | ||
2617 | content: "\e070"; | ||
2618 | } | ||
2619 | .glyphicon-backward:before { | ||
2620 | content: "\e071"; | ||
2621 | } | ||
2622 | .glyphicon-play:before { | ||
2623 | content: "\e072"; | ||
2624 | } | ||
2625 | .glyphicon-pause:before { | ||
2626 | content: "\e073"; | ||
2627 | } | ||
2628 | .glyphicon-stop:before { | ||
2629 | content: "\e074"; | ||
2630 | } | ||
2631 | .glyphicon-forward:before { | ||
2632 | content: "\e075"; | ||
2633 | } | ||
2634 | .glyphicon-fast-forward:before { | ||
2635 | content: "\e076"; | ||
2636 | } | ||
2637 | .glyphicon-step-forward:before { | ||
2638 | content: "\e077"; | ||
2639 | } | ||
2640 | .glyphicon-eject:before { | ||
2641 | content: "\e078"; | ||
2642 | } | ||
2643 | .glyphicon-chevron-left:before { | ||
2644 | content: "\e079"; | ||
2645 | } | ||
2646 | .glyphicon-chevron-right:before { | ||
2647 | content: "\e080"; | ||
2648 | } | ||
2649 | .glyphicon-plus-sign:before { | ||
2650 | content: "\e081"; | ||
2651 | } | ||
2652 | .glyphicon-minus-sign:before { | ||
2653 | content: "\e082"; | ||
2654 | } | ||
2655 | .glyphicon-remove-sign:before { | ||
2656 | content: "\e083"; | ||
2657 | } | ||
2658 | .glyphicon-ok-sign:before { | ||
2659 | content: "\e084"; | ||
2660 | } | ||
2661 | .glyphicon-question-sign:before { | ||
2662 | content: "\e085"; | ||
2663 | } | ||
2664 | .glyphicon-info-sign:before { | ||
2665 | content: "\e086"; | ||
2666 | } | ||
2667 | .glyphicon-screenshot:before { | ||
2668 | content: "\e087"; | ||
2669 | } | ||
2670 | .glyphicon-remove-circle:before { | ||
2671 | content: "\e088"; | ||
2672 | } | ||
2673 | .glyphicon-ok-circle:before { | ||
2674 | content: "\e089"; | ||
2675 | } | ||
2676 | .glyphicon-ban-circle:before { | ||
2677 | content: "\e090"; | ||
2678 | } | ||
2679 | .glyphicon-arrow-left:before { | ||
2680 | content: "\e091"; | ||
2681 | } | ||
2682 | .glyphicon-arrow-right:before { | ||
2683 | content: "\e092"; | ||
2684 | } | ||
2685 | .glyphicon-arrow-up:before { | ||
2686 | content: "\e093"; | ||
2687 | } | ||
2688 | .glyphicon-arrow-down:before { | ||
2689 | content: "\e094"; | ||
2690 | } | ||
2691 | .glyphicon-share-alt:before { | ||
2692 | content: "\e095"; | ||
2693 | } | ||
2694 | .glyphicon-resize-full:before { | ||
2695 | content: "\e096"; | ||
2696 | } | ||
2697 | .glyphicon-resize-small:before { | ||
2698 | content: "\e097"; | ||
2699 | } | ||
2700 | .glyphicon-exclamation-sign:before { | ||
2701 | content: "\e101"; | ||
2702 | } | ||
2703 | .glyphicon-gift:before { | ||
2704 | content: "\e102"; | ||
2705 | } | ||
2706 | .glyphicon-leaf:before { | ||
2707 | content: "\e103"; | ||
2708 | } | ||
2709 | .glyphicon-fire:before { | ||
2710 | content: "\e104"; | ||
2711 | } | ||
2712 | .glyphicon-eye-open:before { | ||
2713 | content: "\e105"; | ||
2714 | } | ||
2715 | .glyphicon-eye-close:before { | ||
2716 | content: "\e106"; | ||
2717 | } | ||
2718 | .glyphicon-warning-sign:before { | ||
2719 | content: "\e107"; | ||
2720 | } | ||
2721 | .glyphicon-plane:before { | ||
2722 | content: "\e108"; | ||
2723 | } | ||
2724 | .glyphicon-calendar:before { | ||
2725 | content: "\e109"; | ||
2726 | } | ||
2727 | .glyphicon-random:before { | ||
2728 | content: "\e110"; | ||
2729 | } | ||
2730 | .glyphicon-comment:before { | ||
2731 | content: "\e111"; | ||
2732 | } | ||
2733 | .glyphicon-magnet:before { | ||
2734 | content: "\e112"; | ||
2735 | } | ||
2736 | .glyphicon-chevron-up:before { | ||
2737 | content: "\e113"; | ||
2738 | } | ||
2739 | .glyphicon-chevron-down:before { | ||
2740 | content: "\e114"; | ||
2741 | } | ||
2742 | .glyphicon-retweet:before { | ||
2743 | content: "\e115"; | ||
2744 | } | ||
2745 | .glyphicon-shopping-cart:before { | ||
2746 | content: "\e116"; | ||
2747 | } | ||
2748 | .glyphicon-folder-close:before { | ||
2749 | content: "\e117"; | ||
2750 | } | ||
2751 | .glyphicon-folder-open:before { | ||
2752 | content: "\e118"; | ||
2753 | } | ||
2754 | .glyphicon-resize-vertical:before { | ||
2755 | content: "\e119"; | ||
2756 | } | ||
2757 | .glyphicon-resize-horizontal:before { | ||
2758 | content: "\e120"; | ||
2759 | } | ||
2760 | .glyphicon-hdd:before { | ||
2761 | content: "\e121"; | ||
2762 | } | ||
2763 | .glyphicon-bullhorn:before { | ||
2764 | content: "\e122"; | ||
2765 | } | ||
2766 | .glyphicon-bell:before { | ||
2767 | content: "\e123"; | ||
2768 | } | ||
2769 | .glyphicon-certificate:before { | ||
2770 | content: "\e124"; | ||
2771 | } | ||
2772 | .glyphicon-thumbs-up:before { | ||
2773 | content: "\e125"; | ||
2774 | } | ||
2775 | .glyphicon-thumbs-down:before { | ||
2776 | content: "\e126"; | ||
2777 | } | ||
2778 | .glyphicon-hand-right:before { | ||
2779 | content: "\e127"; | ||
2780 | } | ||
2781 | .glyphicon-hand-left:before { | ||
2782 | content: "\e128"; | ||
2783 | } | ||
2784 | .glyphicon-hand-up:before { | ||
2785 | content: "\e129"; | ||
2786 | } | ||
2787 | .glyphicon-hand-down:before { | ||
2788 | content: "\e130"; | ||
2789 | } | ||
2790 | .glyphicon-circle-arrow-right:before { | ||
2791 | content: "\e131"; | ||
2792 | } | ||
2793 | .glyphicon-circle-arrow-left:before { | ||
2794 | content: "\e132"; | ||
2795 | } | ||
2796 | .glyphicon-circle-arrow-up:before { | ||
2797 | content: "\e133"; | ||
2798 | } | ||
2799 | .glyphicon-circle-arrow-down:before { | ||
2800 | content: "\e134"; | ||
2801 | } | ||
2802 | .glyphicon-globe:before { | ||
2803 | content: "\e135"; | ||
2804 | } | ||
2805 | .glyphicon-wrench:before { | ||
2806 | content: "\e136"; | ||
2807 | } | ||
2808 | .glyphicon-tasks:before { | ||
2809 | content: "\e137"; | ||
2810 | } | ||
2811 | .glyphicon-filter:before { | ||
2812 | content: "\e138"; | ||
2813 | } | ||
2814 | .glyphicon-briefcase:before { | ||
2815 | content: "\e139"; | ||
2816 | } | ||
2817 | .glyphicon-fullscreen:before { | ||
2818 | content: "\e140"; | ||
2819 | } | ||
2820 | .glyphicon-dashboard:before { | ||
2821 | content: "\e141"; | ||
2822 | } | ||
2823 | .glyphicon-paperclip:before { | ||
2824 | content: "\e142"; | ||
2825 | } | ||
2826 | .glyphicon-heart-empty:before { | ||
2827 | content: "\e143"; | ||
2828 | } | ||
2829 | .glyphicon-link:before { | ||
2830 | content: "\e144"; | ||
2831 | } | ||
2832 | .glyphicon-phone:before { | ||
2833 | content: "\e145"; | ||
2834 | } | ||
2835 | .glyphicon-pushpin:before { | ||
2836 | content: "\e146"; | ||
2837 | } | ||
2838 | .glyphicon-usd:before { | ||
2839 | content: "\e148"; | ||
2840 | } | ||
2841 | .glyphicon-gbp:before { | ||
2842 | content: "\e149"; | ||
2843 | } | ||
2844 | .glyphicon-sort:before { | ||
2845 | content: "\e150"; | ||
2846 | } | ||
2847 | .glyphicon-sort-by-alphabet:before { | ||
2848 | content: "\e151"; | ||
2849 | } | ||
2850 | .glyphicon-sort-by-alphabet-alt:before { | ||
2851 | content: "\e152"; | ||
2852 | } | ||
2853 | .glyphicon-sort-by-order:before { | ||
2854 | content: "\e153"; | ||
2855 | } | ||
2856 | .glyphicon-sort-by-order-alt:before { | ||
2857 | content: "\e154"; | ||
2858 | } | ||
2859 | .glyphicon-sort-by-attributes:before { | ||
2860 | content: "\e155"; | ||
2861 | } | ||
2862 | .glyphicon-sort-by-attributes-alt:before { | ||
2863 | content: "\e156"; | ||
2864 | } | ||
2865 | .glyphicon-unchecked:before { | ||
2866 | content: "\e157"; | ||
2867 | } | ||
2868 | .glyphicon-expand:before { | ||
2869 | content: "\e158"; | ||
2870 | } | ||
2871 | .glyphicon-collapse-down:before { | ||
2872 | content: "\e159"; | ||
2873 | } | ||
2874 | .glyphicon-collapse-up:before { | ||
2875 | content: "\e160"; | ||
2876 | } | ||
2877 | .glyphicon-log-in:before { | ||
2878 | content: "\e161"; | ||
2879 | } | ||
2880 | .glyphicon-flash:before { | ||
2881 | content: "\e162"; | ||
2882 | } | ||
2883 | .glyphicon-log-out:before { | ||
2884 | content: "\e163"; | ||
2885 | } | ||
2886 | .glyphicon-new-window:before { | ||
2887 | content: "\e164"; | ||
2888 | } | ||
2889 | .glyphicon-record:before { | ||
2890 | content: "\e165"; | ||
2891 | } | ||
2892 | .glyphicon-save:before { | ||
2893 | content: "\e166"; | ||
2894 | } | ||
2895 | .glyphicon-open:before { | ||
2896 | content: "\e167"; | ||
2897 | } | ||
2898 | .glyphicon-saved:before { | ||
2899 | content: "\e168"; | ||
2900 | } | ||
2901 | .glyphicon-import:before { | ||
2902 | content: "\e169"; | ||
2903 | } | ||
2904 | .glyphicon-export:before { | ||
2905 | content: "\e170"; | ||
2906 | } | ||
2907 | .glyphicon-send:before { | ||
2908 | content: "\e171"; | ||
2909 | } | ||
2910 | .glyphicon-floppy-disk:before { | ||
2911 | content: "\e172"; | ||
2912 | } | ||
2913 | .glyphicon-floppy-saved:before { | ||
2914 | content: "\e173"; | ||
2915 | } | ||
2916 | .glyphicon-floppy-remove:before { | ||
2917 | content: "\e174"; | ||
2918 | } | ||
2919 | .glyphicon-floppy-save:before { | ||
2920 | content: "\e175"; | ||
2921 | } | ||
2922 | .glyphicon-floppy-open:before { | ||
2923 | content: "\e176"; | ||
2924 | } | ||
2925 | .glyphicon-credit-card:before { | ||
2926 | content: "\e177"; | ||
2927 | } | ||
2928 | .glyphicon-transfer:before { | ||
2929 | content: "\e178"; | ||
2930 | } | ||
2931 | .glyphicon-cutlery:before { | ||
2932 | content: "\e179"; | ||
2933 | } | ||
2934 | .glyphicon-header:before { | ||
2935 | content: "\e180"; | ||
2936 | } | ||
2937 | .glyphicon-compressed:before { | ||
2938 | content: "\e181"; | ||
2939 | } | ||
2940 | .glyphicon-earphone:before { | ||
2941 | content: "\e182"; | ||
2942 | } | ||
2943 | .glyphicon-phone-alt:before { | ||
2944 | content: "\e183"; | ||
2945 | } | ||
2946 | .glyphicon-tower:before { | ||
2947 | content: "\e184"; | ||
2948 | } | ||
2949 | .glyphicon-stats:before { | ||
2950 | content: "\e185"; | ||
2951 | } | ||
2952 | .glyphicon-sd-video:before { | ||
2953 | content: "\e186"; | ||
2954 | } | ||
2955 | .glyphicon-hd-video:before { | ||
2956 | content: "\e187"; | ||
2957 | } | ||
2958 | .glyphicon-subtitles:before { | ||
2959 | content: "\e188"; | ||
2960 | } | ||
2961 | .glyphicon-sound-stereo:before { | ||
2962 | content: "\e189"; | ||
2963 | } | ||
2964 | .glyphicon-sound-dolby:before { | ||
2965 | content: "\e190"; | ||
2966 | } | ||
2967 | .glyphicon-sound-5-1:before { | ||
2968 | content: "\e191"; | ||
2969 | } | ||
2970 | .glyphicon-sound-6-1:before { | ||
2971 | content: "\e192"; | ||
2972 | } | ||
2973 | .glyphicon-sound-7-1:before { | ||
2974 | content: "\e193"; | ||
2975 | } | ||
2976 | .glyphicon-copyright-mark:before { | ||
2977 | content: "\e194"; | ||
2978 | } | ||
2979 | .glyphicon-registration-mark:before { | ||
2980 | content: "\e195"; | ||
2981 | } | ||
2982 | .glyphicon-cloud-download:before { | ||
2983 | content: "\e197"; | ||
2984 | } | ||
2985 | .glyphicon-cloud-upload:before { | ||
2986 | content: "\e198"; | ||
2987 | } | ||
2988 | .glyphicon-tree-conifer:before { | ||
2989 | content: "\e199"; | ||
2990 | } | ||
2991 | .glyphicon-tree-deciduous:before { | ||
2992 | content: "\e200"; | ||
2993 | } | ||
2994 | .caret { | ||
2995 | display: inline-block; | ||
2996 | width: 0; | ||
2997 | height: 0; | ||
2998 | margin-left: 2px; | ||
2999 | vertical-align: middle; | ||
3000 | border-top: 4px solid; | ||
3001 | border-right: 4px solid transparent; | ||
3002 | border-left: 4px solid transparent; | ||
3003 | } | ||
3004 | .dropdown { | ||
3005 | position: relative; | ||
3006 | } | ||
3007 | .dropdown-toggle:focus { | ||
3008 | outline: 0; | ||
3009 | } | ||
3010 | .dropdown-menu { | ||
3011 | position: absolute; | ||
3012 | top: 100%; | ||
3013 | left: 0; | ||
3014 | z-index: 1000; | ||
3015 | display: none; | ||
3016 | float: left; | ||
3017 | min-width: 160px; | ||
3018 | padding: 5px 0; | ||
3019 | margin: 2px 0 0; | ||
3020 | font-size: 14px; | ||
3021 | list-style: none; | ||
3022 | background-color: #fff; | ||
3023 | background-clip: padding-box; | ||
3024 | border: 1px solid #ccc; | ||
3025 | border: 1px solid rgba(0, 0, 0, .15); | ||
3026 | border-radius: 4px; | ||
3027 | -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); | ||
3028 | box-shadow: 0 6px 12px rgba(0, 0, 0, .175); | ||
3029 | } | ||
3030 | .dropdown-menu.pull-right { | ||
3031 | right: 0; | ||
3032 | left: auto; | ||
3033 | } | ||
3034 | .dropdown-menu .divider { | ||
3035 | height: 1px; | ||
3036 | margin: 9px 0; | ||
3037 | overflow: hidden; | ||
3038 | background-color: #e5e5e5; | ||
3039 | } | ||
3040 | .dropdown-menu > li > a { | ||
3041 | display: block; | ||
3042 | padding: 3px 20px; | ||
3043 | clear: both; | ||
3044 | font-weight: normal; | ||
3045 | line-height: 1.42857143; | ||
3046 | color: #333; | ||
3047 | white-space: nowrap; | ||
3048 | } | ||
3049 | .dropdown-menu > li > a:hover, | ||
3050 | .dropdown-menu > li > a:focus { | ||
3051 | color: #262626; | ||
3052 | text-decoration: none; | ||
3053 | background-color: #f5f5f5; | ||
3054 | } | ||
3055 | .dropdown-menu > .active > a, | ||
3056 | .dropdown-menu > .active > a:hover, | ||
3057 | .dropdown-menu > .active > a:focus { | ||
3058 | color: #fff; | ||
3059 | text-decoration: none; | ||
3060 | background-color: #428bca; | ||
3061 | outline: 0; | ||
3062 | } | ||
3063 | .dropdown-menu > .disabled > a, | ||
3064 | .dropdown-menu > .disabled > a:hover, | ||
3065 | .dropdown-menu > .disabled > a:focus { | ||
3066 | color: #999; | ||
3067 | } | ||
3068 | .dropdown-menu > .disabled > a:hover, | ||
3069 | .dropdown-menu > .disabled > a:focus { | ||
3070 | text-decoration: none; | ||
3071 | cursor: not-allowed; | ||
3072 | background-color: transparent; | ||
3073 | background-image: none; | ||
3074 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
3075 | } | ||
3076 | .open > .dropdown-menu { | ||
3077 | display: block; | ||
3078 | } | ||
3079 | .open > a { | ||
3080 | outline: 0; | ||
3081 | } | ||
3082 | .dropdown-menu-right { | ||
3083 | right: 0; | ||
3084 | left: auto; | ||
3085 | } | ||
3086 | .dropdown-menu-left { | ||
3087 | right: auto; | ||
3088 | left: 0; | ||
3089 | } | ||
3090 | .dropdown-header { | ||
3091 | display: block; | ||
3092 | padding: 3px 20px; | ||
3093 | font-size: 12px; | ||
3094 | line-height: 1.42857143; | ||
3095 | color: #999; | ||
3096 | } | ||
3097 | .dropdown-backdrop { | ||
3098 | position: fixed; | ||
3099 | top: 0; | ||
3100 | right: 0; | ||
3101 | bottom: 0; | ||
3102 | left: 0; | ||
3103 | z-index: 990; | ||
3104 | } | ||
3105 | .pull-right > .dropdown-menu { | ||
3106 | right: 0; | ||
3107 | left: auto; | ||
3108 | } | ||
3109 | .dropup .caret, | ||
3110 | .navbar-fixed-bottom .dropdown .caret { | ||
3111 | content: ""; | ||
3112 | border-top: 0; | ||
3113 | border-bottom: 4px solid; | ||
3114 | } | ||
3115 | .dropup .dropdown-menu, | ||
3116 | .navbar-fixed-bottom .dropdown .dropdown-menu { | ||
3117 | top: auto; | ||
3118 | bottom: 100%; | ||
3119 | margin-bottom: 1px; | ||
3120 | } | ||
3121 | @media (min-width: 768px) { | ||
3122 | .navbar-right .dropdown-menu { | ||
3123 | right: 0; | ||
3124 | left: auto; | ||
3125 | } | ||
3126 | .navbar-right .dropdown-menu-left { | ||
3127 | right: auto; | ||
3128 | left: 0; | ||
3129 | } | ||
3130 | } | ||
3131 | .btn-group, | ||
3132 | .btn-group-vertical { | ||
3133 | position: relative; | ||
3134 | display: inline-block; | ||
3135 | vertical-align: middle; | ||
3136 | } | ||
3137 | .btn-group > .btn, | ||
3138 | .btn-group-vertical > .btn { | ||
3139 | position: relative; | ||
3140 | float: left; | ||
3141 | } | ||
3142 | .btn-group > .btn:hover, | ||
3143 | .btn-group-vertical > .btn:hover, | ||
3144 | .btn-group > .btn:focus, | ||
3145 | .btn-group-vertical > .btn:focus, | ||
3146 | .btn-group > .btn:active, | ||
3147 | .btn-group-vertical > .btn:active, | ||
3148 | .btn-group > .btn.active, | ||
3149 | .btn-group-vertical > .btn.active { | ||
3150 | z-index: 2; | ||
3151 | } | ||
3152 | .btn-group > .btn:focus, | ||
3153 | .btn-group-vertical > .btn:focus { | ||
3154 | outline: none; | ||
3155 | } | ||
3156 | .btn-group .btn + .btn, | ||
3157 | .btn-group .btn + .btn-group, | ||
3158 | .btn-group .btn-group + .btn, | ||
3159 | .btn-group .btn-group + .btn-group { | ||
3160 | margin-left: -1px; | ||
3161 | } | ||
3162 | .btn-toolbar { | ||
3163 | margin-left: -5px; | ||
3164 | } | ||
3165 | .btn-toolbar .btn-group, | ||
3166 | .btn-toolbar .input-group { | ||
3167 | float: left; | ||
3168 | } | ||
3169 | .btn-toolbar > .btn, | ||
3170 | .btn-toolbar > .btn-group, | ||
3171 | .btn-toolbar > .input-group { | ||
3172 | margin-left: 5px; | ||
3173 | } | ||
3174 | .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { | ||
3175 | border-radius: 0; | ||
3176 | } | ||
3177 | .btn-group > .btn:first-child { | ||
3178 | margin-left: 0; | ||
3179 | } | ||
3180 | .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { | ||
3181 | border-top-right-radius: 0; | ||
3182 | border-bottom-right-radius: 0; | ||
3183 | } | ||
3184 | .btn-group > .btn:last-child:not(:first-child), | ||
3185 | .btn-group > .dropdown-toggle:not(:first-child) { | ||
3186 | border-top-left-radius: 0; | ||
3187 | border-bottom-left-radius: 0; | ||
3188 | } | ||
3189 | .btn-group > .btn-group { | ||
3190 | float: left; | ||
3191 | } | ||
3192 | .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { | ||
3193 | border-radius: 0; | ||
3194 | } | ||
3195 | .btn-group > .btn-group:first-child > .btn:last-child, | ||
3196 | .btn-group > .btn-group:first-child > .dropdown-toggle { | ||
3197 | border-top-right-radius: 0; | ||
3198 | border-bottom-right-radius: 0; | ||
3199 | } | ||
3200 | .btn-group > .btn-group:last-child > .btn:first-child { | ||
3201 | border-top-left-radius: 0; | ||
3202 | border-bottom-left-radius: 0; | ||
3203 | } | ||
3204 | .btn-group .dropdown-toggle:active, | ||
3205 | .btn-group.open .dropdown-toggle { | ||
3206 | outline: 0; | ||
3207 | } | ||
3208 | .btn-group > .btn + .dropdown-toggle { | ||
3209 | padding-right: 8px; | ||
3210 | padding-left: 8px; | ||
3211 | } | ||
3212 | .btn-group > .btn-lg + .dropdown-toggle { | ||
3213 | padding-right: 12px; | ||
3214 | padding-left: 12px; | ||
3215 | } | ||
3216 | .btn-group.open .dropdown-toggle { | ||
3217 | -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); | ||
3218 | box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); | ||
3219 | } | ||
3220 | .btn-group.open .dropdown-toggle.btn-link { | ||
3221 | -webkit-box-shadow: none; | ||
3222 | box-shadow: none; | ||
3223 | } | ||
3224 | .btn .caret { | ||
3225 | margin-left: 0; | ||
3226 | } | ||
3227 | .btn-lg .caret { | ||
3228 | border-width: 5px 5px 0; | ||
3229 | border-bottom-width: 0; | ||
3230 | } | ||
3231 | .dropup .btn-lg .caret { | ||
3232 | border-width: 0 5px 5px; | ||
3233 | } | ||
3234 | .btn-group-vertical > .btn, | ||
3235 | .btn-group-vertical > .btn-group, | ||
3236 | .btn-group-vertical > .btn-group > .btn { | ||
3237 | display: block; | ||
3238 | float: none; | ||
3239 | width: 100%; | ||
3240 | max-width: 100%; | ||
3241 | } | ||
3242 | .btn-group-vertical > .btn-group > .btn { | ||
3243 | float: none; | ||
3244 | } | ||
3245 | .btn-group-vertical > .btn + .btn, | ||
3246 | .btn-group-vertical > .btn + .btn-group, | ||
3247 | .btn-group-vertical > .btn-group + .btn, | ||
3248 | .btn-group-vertical > .btn-group + .btn-group { | ||
3249 | margin-top: -1px; | ||
3250 | margin-left: 0; | ||
3251 | } | ||
3252 | .btn-group-vertical > .btn:not(:first-child):not(:last-child) { | ||
3253 | border-radius: 0; | ||
3254 | } | ||
3255 | .btn-group-vertical > .btn:first-child:not(:last-child) { | ||
3256 | border-top-right-radius: 4px; | ||
3257 | border-bottom-right-radius: 0; | ||
3258 | border-bottom-left-radius: 0; | ||
3259 | } | ||
3260 | .btn-group-vertical > .btn:last-child:not(:first-child) { | ||
3261 | border-top-left-radius: 0; | ||
3262 | border-top-right-radius: 0; | ||
3263 | border-bottom-left-radius: 4px; | ||
3264 | } | ||
3265 | .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { | ||
3266 | border-radius: 0; | ||
3267 | } | ||
3268 | .btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, | ||
3269 | .btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { | ||
3270 | border-bottom-right-radius: 0; | ||
3271 | border-bottom-left-radius: 0; | ||
3272 | } | ||
3273 | .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { | ||
3274 | border-top-left-radius: 0; | ||
3275 | border-top-right-radius: 0; | ||
3276 | } | ||
3277 | .btn-group-justified { | ||
3278 | display: table; | ||
3279 | width: 100%; | ||
3280 | table-layout: fixed; | ||
3281 | border-collapse: separate; | ||
3282 | } | ||
3283 | .btn-group-justified > .btn, | ||
3284 | .btn-group-justified > .btn-group { | ||
3285 | display: table-cell; | ||
3286 | float: none; | ||
3287 | width: 1%; | ||
3288 | } | ||
3289 | .btn-group-justified > .btn-group .btn { | ||
3290 | width: 100%; | ||
3291 | } | ||
3292 | [data-toggle="buttons"] > .btn > input[type="radio"], | ||
3293 | [data-toggle="buttons"] > .btn > input[type="checkbox"] { | ||
3294 | display: none; | ||
3295 | } | ||
3296 | .input-group { | ||
3297 | position: relative; | ||
3298 | display: table; | ||
3299 | border-collapse: separate; | ||
3300 | } | ||
3301 | .input-group[class*="col-"] { | ||
3302 | float: none; | ||
3303 | padding-right: 0; | ||
3304 | padding-left: 0; | ||
3305 | } | ||
3306 | .input-group .form-control { | ||
3307 | position: relative; | ||
3308 | z-index: 2; | ||
3309 | float: left; | ||
3310 | width: 100%; | ||
3311 | margin-bottom: 0; | ||
3312 | } | ||
3313 | .input-group-lg > .form-control, | ||
3314 | .input-group-lg > .input-group-addon, | ||
3315 | .input-group-lg > .input-group-btn > .btn { | ||
3316 | height: 46px; | ||
3317 | padding: 10px 16px; | ||
3318 | font-size: 18px; | ||
3319 | line-height: 1.33; | ||
3320 | border-radius: 6px; | ||
3321 | } | ||
3322 | select.input-group-lg > .form-control, | ||
3323 | select.input-group-lg > .input-group-addon, | ||
3324 | select.input-group-lg > .input-group-btn > .btn { | ||
3325 | height: 46px; | ||
3326 | line-height: 46px; | ||
3327 | } | ||
3328 | textarea.input-group-lg > .form-control, | ||
3329 | textarea.input-group-lg > .input-group-addon, | ||
3330 | textarea.input-group-lg > .input-group-btn > .btn, | ||
3331 | select[multiple].input-group-lg > .form-control, | ||
3332 | select[multiple].input-group-lg > .input-group-addon, | ||
3333 | select[multiple].input-group-lg > .input-group-btn > .btn { | ||
3334 | height: auto; | ||
3335 | } | ||
3336 | .input-group-sm > .form-control, | ||
3337 | .input-group-sm > .input-group-addon, | ||
3338 | .input-group-sm > .input-group-btn > .btn { | ||
3339 | height: 30px; | ||
3340 | padding: 5px 10px; | ||
3341 | font-size: 12px; | ||
3342 | line-height: 1.5; | ||
3343 | border-radius: 3px; | ||
3344 | } | ||
3345 | select.input-group-sm > .form-control, | ||
3346 | select.input-group-sm > .input-group-addon, | ||
3347 | select.input-group-sm > .input-group-btn > .btn { | ||
3348 | height: 30px; | ||
3349 | line-height: 30px; | ||
3350 | } | ||
3351 | textarea.input-group-sm > .form-control, | ||
3352 | textarea.input-group-sm > .input-group-addon, | ||
3353 | textarea.input-group-sm > .input-group-btn > .btn, | ||
3354 | select[multiple].input-group-sm > .form-control, | ||
3355 | select[multiple].input-group-sm > .input-group-addon, | ||
3356 | select[multiple].input-group-sm > .input-group-btn > .btn { | ||
3357 | height: auto; | ||
3358 | } | ||
3359 | .input-group-addon, | ||
3360 | .input-group-btn, | ||
3361 | .input-group .form-control { | ||
3362 | display: table-cell; | ||
3363 | } | ||
3364 | .input-group-addon:not(:first-child):not(:last-child), | ||
3365 | .input-group-btn:not(:first-child):not(:last-child), | ||
3366 | .input-group .form-control:not(:first-child):not(:last-child) { | ||
3367 | border-radius: 0; | ||
3368 | } | ||
3369 | .input-group-addon, | ||
3370 | .input-group-btn { | ||
3371 | width: 1%; | ||
3372 | white-space: nowrap; | ||
3373 | vertical-align: middle; | ||
3374 | } | ||
3375 | .input-group-addon { | ||
3376 | padding: 6px 12px; | ||
3377 | font-size: 14px; | ||
3378 | font-weight: normal; | ||
3379 | line-height: 1; | ||
3380 | color: #555; | ||
3381 | text-align: center; | ||
3382 | background-color: #eee; | ||
3383 | border: 1px solid #ccc; | ||
3384 | border-radius: 4px; | ||
3385 | } | ||
3386 | .input-group-addon.input-sm { | ||
3387 | padding: 5px 10px; | ||
3388 | font-size: 12px; | ||
3389 | border-radius: 3px; | ||
3390 | } | ||
3391 | .input-group-addon.input-lg { | ||
3392 | padding: 10px 16px; | ||
3393 | font-size: 18px; | ||
3394 | border-radius: 6px; | ||
3395 | } | ||
3396 | .input-group-addon input[type="radio"], | ||
3397 | .input-group-addon input[type="checkbox"] { | ||
3398 | margin-top: 0; | ||
3399 | } | ||
3400 | .input-group .form-control:first-child, | ||
3401 | .input-group-addon:first-child, | ||
3402 | .input-group-btn:first-child > .btn, | ||
3403 | .input-group-btn:first-child > .btn-group > .btn, | ||
3404 | .input-group-btn:first-child > .dropdown-toggle, | ||
3405 | .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), | ||
3406 | .input-group-btn:last-child > .btn-group:not(:last-child) > .btn { | ||
3407 | border-top-right-radius: 0; | ||
3408 | border-bottom-right-radius: 0; | ||
3409 | } | ||
3410 | .input-group-addon:first-child { | ||
3411 | border-right: 0; | ||
3412 | } | ||
3413 | .input-group .form-control:last-child, | ||
3414 | .input-group-addon:last-child, | ||
3415 | .input-group-btn:last-child > .btn, | ||
3416 | .input-group-btn:last-child > .btn-group > .btn, | ||
3417 | .input-group-btn:last-child > .dropdown-toggle, | ||
3418 | .input-group-btn:first-child > .btn:not(:first-child), | ||
3419 | .input-group-btn:first-child > .btn-group:not(:first-child) > .btn { | ||
3420 | border-top-left-radius: 0; | ||
3421 | border-bottom-left-radius: 0; | ||
3422 | } | ||
3423 | .input-group-addon:last-child { | ||
3424 | border-left: 0; | ||
3425 | } | ||
3426 | .input-group-btn { | ||
3427 | position: relative; | ||
3428 | font-size: 0; | ||
3429 | white-space: nowrap; | ||
3430 | } | ||
3431 | .input-group-btn > .btn { | ||
3432 | position: relative; | ||
3433 | } | ||
3434 | .input-group-btn > .btn + .btn { | ||
3435 | margin-left: -1px; | ||
3436 | } | ||
3437 | .input-group-btn > .btn:hover, | ||
3438 | .input-group-btn > .btn:focus, | ||
3439 | .input-group-btn > .btn:active { | ||
3440 | z-index: 2; | ||
3441 | } | ||
3442 | .input-group-btn:first-child > .btn, | ||
3443 | .input-group-btn:first-child > .btn-group { | ||
3444 | margin-right: -1px; | ||
3445 | } | ||
3446 | .input-group-btn:last-child > .btn, | ||
3447 | .input-group-btn:last-child > .btn-group { | ||
3448 | margin-left: -1px; | ||
3449 | } | ||
3450 | .nav { | ||
3451 | padding-left: 0; | ||
3452 | margin-bottom: 0; | ||
3453 | list-style: none; | ||
3454 | } | ||
3455 | .nav > li { | ||
3456 | position: relative; | ||
3457 | display: block; | ||
3458 | } | ||
3459 | .nav > li > a { | ||
3460 | position: relative; | ||
3461 | display: block; | ||
3462 | padding: 10px 15px; | ||
3463 | } | ||
3464 | .nav > li > a:hover, | ||
3465 | .nav > li > a:focus { | ||
3466 | text-decoration: none; | ||
3467 | background-color: #eee; | ||
3468 | } | ||
3469 | .nav > li.disabled > a { | ||
3470 | color: #999; | ||
3471 | } | ||
3472 | .nav > li.disabled > a:hover, | ||
3473 | .nav > li.disabled > a:focus { | ||
3474 | color: #999; | ||
3475 | text-decoration: none; | ||
3476 | cursor: not-allowed; | ||
3477 | background-color: transparent; | ||
3478 | } | ||
3479 | .nav .open > a, | ||
3480 | .nav .open > a:hover, | ||
3481 | .nav .open > a:focus { | ||
3482 | background-color: #eee; | ||
3483 | border-color: #428bca; | ||
3484 | } | ||
3485 | .nav .nav-divider { | ||
3486 | height: 1px; | ||
3487 | margin: 9px 0; | ||
3488 | overflow: hidden; | ||
3489 | background-color: #e5e5e5; | ||
3490 | } | ||
3491 | .nav > li > a > img { | ||
3492 | max-width: none; | ||
3493 | } | ||
3494 | .nav-tabs { | ||
3495 | border-bottom: 1px solid #ddd; | ||
3496 | } | ||
3497 | .nav-tabs > li { | ||
3498 | float: left; | ||
3499 | margin-bottom: -1px; | ||
3500 | } | ||
3501 | .nav-tabs > li > a { | ||
3502 | margin-right: 2px; | ||
3503 | line-height: 1.42857143; | ||
3504 | border: 1px solid transparent; | ||
3505 | border-radius: 4px 4px 0 0; | ||
3506 | } | ||
3507 | .nav-tabs > li > a:hover { | ||
3508 | border-color: #eee #eee #ddd; | ||
3509 | } | ||
3510 | .nav-tabs > li.active > a, | ||
3511 | .nav-tabs > li.active > a:hover, | ||
3512 | .nav-tabs > li.active > a:focus { | ||
3513 | color: #555; | ||
3514 | cursor: default; | ||
3515 | background-color: #fff; | ||
3516 | border: 1px solid #ddd; | ||
3517 | border-bottom-color: transparent; | ||
3518 | } | ||
3519 | .nav-tabs.nav-justified { | ||
3520 | width: 100%; | ||
3521 | border-bottom: 0; | ||
3522 | } | ||
3523 | .nav-tabs.nav-justified > li { | ||
3524 | float: none; | ||
3525 | } | ||
3526 | .nav-tabs.nav-justified > li > a { | ||
3527 | margin-bottom: 5px; | ||
3528 | text-align: center; | ||
3529 | } | ||
3530 | .nav-tabs.nav-justified > .dropdown .dropdown-menu { | ||
3531 | top: auto; | ||
3532 | left: auto; | ||
3533 | } | ||
3534 | @media (min-width: 768px) { | ||
3535 | .nav-tabs.nav-justified > li { | ||
3536 | display: table-cell; | ||
3537 | width: 1%; | ||
3538 | } | ||
3539 | .nav-tabs.nav-justified > li > a { | ||
3540 | margin-bottom: 0; | ||
3541 | } | ||
3542 | } | ||
3543 | .nav-tabs.nav-justified > li > a { | ||
3544 | margin-right: 0; | ||
3545 | border-radius: 4px; | ||
3546 | } | ||
3547 | .nav-tabs.nav-justified > .active > a, | ||
3548 | .nav-tabs.nav-justified > .active > a:hover, | ||
3549 | .nav-tabs.nav-justified > .active > a:focus { | ||
3550 | border: 1px solid #ddd; | ||
3551 | } | ||
3552 | @media (min-width: 768px) { | ||
3553 | .nav-tabs.nav-justified > li > a { | ||
3554 | border-bottom: 1px solid #ddd; | ||
3555 | border-radius: 4px 4px 0 0; | ||
3556 | } | ||
3557 | .nav-tabs.nav-justified > .active > a, | ||
3558 | .nav-tabs.nav-justified > .active > a:hover, | ||
3559 | .nav-tabs.nav-justified > .active > a:focus { | ||
3560 | border-bottom-color: #fff; | ||
3561 | } | ||
3562 | } | ||
3563 | .nav-pills > li { | ||
3564 | float: left; | ||
3565 | } | ||
3566 | .nav-pills > li > a { | ||
3567 | border-radius: 4px; | ||
3568 | } | ||
3569 | .nav-pills > li + li { | ||
3570 | margin-left: 2px; | ||
3571 | } | ||
3572 | .nav-pills > li.active > a, | ||
3573 | .nav-pills > li.active > a:hover, | ||
3574 | .nav-pills > li.active > a:focus { | ||
3575 | color: #fff; | ||
3576 | background-color: #428bca; | ||
3577 | } | ||
3578 | .nav-stacked > li { | ||
3579 | float: none; | ||
3580 | } | ||
3581 | .nav-stacked > li + li { | ||
3582 | margin-top: 2px; | ||
3583 | margin-left: 0; | ||
3584 | } | ||
3585 | .nav-justified { | ||
3586 | width: 100%; | ||
3587 | } | ||
3588 | .nav-justified > li { | ||
3589 | float: none; | ||
3590 | } | ||
3591 | .nav-justified > li > a { | ||
3592 | margin-bottom: 5px; | ||
3593 | text-align: center; | ||
3594 | } | ||
3595 | .nav-justified > .dropdown .dropdown-menu { | ||
3596 | top: auto; | ||
3597 | left: auto; | ||
3598 | } | ||
3599 | @media (min-width: 768px) { | ||
3600 | .nav-justified > li { | ||
3601 | display: table-cell; | ||
3602 | width: 1%; | ||
3603 | } | ||
3604 | .nav-justified > li > a { | ||
3605 | margin-bottom: 0; | ||
3606 | } | ||
3607 | } | ||
3608 | .nav-tabs-justified { | ||
3609 | border-bottom: 0; | ||
3610 | } | ||
3611 | .nav-tabs-justified > li > a { | ||
3612 | margin-right: 0; | ||
3613 | border-radius: 4px; | ||
3614 | } | ||
3615 | .nav-tabs-justified > .active > a, | ||
3616 | .nav-tabs-justified > .active > a:hover, | ||
3617 | .nav-tabs-justified > .active > a:focus { | ||
3618 | border: 1px solid #ddd; | ||
3619 | } | ||
3620 | @media (min-width: 768px) { | ||
3621 | .nav-tabs-justified > li > a { | ||
3622 | border-bottom: 1px solid #ddd; | ||
3623 | border-radius: 4px 4px 0 0; | ||
3624 | } | ||
3625 | .nav-tabs-justified > .active > a, | ||
3626 | .nav-tabs-justified > .active > a:hover, | ||
3627 | .nav-tabs-justified > .active > a:focus { | ||
3628 | border-bottom-color: #fff; | ||
3629 | } | ||
3630 | } | ||
3631 | .tab-content > .tab-pane { | ||
3632 | display: none; | ||
3633 | } | ||
3634 | .tab-content > .active { | ||
3635 | display: block; | ||
3636 | } | ||
3637 | .nav-tabs .dropdown-menu { | ||
3638 | margin-top: -1px; | ||
3639 | border-top-left-radius: 0; | ||
3640 | border-top-right-radius: 0; | ||
3641 | } | ||
3642 | .navbar { | ||
3643 | position: relative; | ||
3644 | min-height: 50px; | ||
3645 | margin-bottom: 20px; | ||
3646 | border: 1px solid transparent; | ||
3647 | } | ||
3648 | @media (min-width: 768px) { | ||
3649 | .navbar { | ||
3650 | border-radius: 4px; | ||
3651 | } | ||
3652 | } | ||
3653 | @media (min-width: 768px) { | ||
3654 | .navbar-header { | ||
3655 | float: left; | ||
3656 | } | ||
3657 | } | ||
3658 | .navbar-collapse { | ||
3659 | max-height: 340px; | ||
3660 | padding-right: 15px; | ||
3661 | padding-left: 15px; | ||
3662 | overflow-x: visible; | ||
3663 | -webkit-overflow-scrolling: touch; | ||
3664 | border-top: 1px solid transparent; | ||
3665 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); | ||
3666 | } | ||
3667 | .navbar-collapse.in { | ||
3668 | overflow-y: auto; | ||
3669 | } | ||
3670 | @media (min-width: 768px) { | ||
3671 | .navbar-collapse { | ||
3672 | width: auto; | ||
3673 | border-top: 0; | ||
3674 | box-shadow: none; | ||
3675 | } | ||
3676 | .navbar-collapse.collapse { | ||
3677 | display: block !important; | ||
3678 | height: auto !important; | ||
3679 | padding-bottom: 0; | ||
3680 | overflow: visible !important; | ||
3681 | } | ||
3682 | .navbar-collapse.in { | ||
3683 | overflow-y: visible; | ||
3684 | } | ||
3685 | .navbar-fixed-top .navbar-collapse, | ||
3686 | .navbar-static-top .navbar-collapse, | ||
3687 | .navbar-fixed-bottom .navbar-collapse { | ||
3688 | padding-right: 0; | ||
3689 | padding-left: 0; | ||
3690 | } | ||
3691 | } | ||
3692 | .container > .navbar-header, | ||
3693 | .container-fluid > .navbar-header, | ||
3694 | .container > .navbar-collapse, | ||
3695 | .container-fluid > .navbar-collapse { | ||
3696 | margin-right: -15px; | ||
3697 | margin-left: -15px; | ||
3698 | } | ||
3699 | @media (min-width: 768px) { | ||
3700 | .container > .navbar-header, | ||
3701 | .container-fluid > .navbar-header, | ||
3702 | .container > .navbar-collapse, | ||
3703 | .container-fluid > .navbar-collapse { | ||
3704 | margin-right: 0; | ||
3705 | margin-left: 0; | ||
3706 | } | ||
3707 | } | ||
3708 | .navbar-static-top { | ||
3709 | z-index: 1000; | ||
3710 | border-width: 0 0 1px; | ||
3711 | } | ||
3712 | @media (min-width: 768px) { | ||
3713 | .navbar-static-top { | ||
3714 | border-radius: 0; | ||
3715 | } | ||
3716 | } | ||
3717 | .navbar-fixed-top, | ||
3718 | .navbar-fixed-bottom { | ||
3719 | position: fixed; | ||
3720 | right: 0; | ||
3721 | left: 0; | ||
3722 | z-index: 1030; | ||
3723 | } | ||
3724 | @media (min-width: 768px) { | ||
3725 | .navbar-fixed-top, | ||
3726 | .navbar-fixed-bottom { | ||
3727 | border-radius: 0; | ||
3728 | } | ||
3729 | } | ||
3730 | .navbar-fixed-top { | ||
3731 | top: 0; | ||
3732 | border-width: 0 0 1px; | ||
3733 | } | ||
3734 | .navbar-fixed-bottom { | ||
3735 | bottom: 0; | ||
3736 | margin-bottom: 0; | ||
3737 | border-width: 1px 0 0; | ||
3738 | } | ||
3739 | .navbar-brand { | ||
3740 | float: left; | ||
3741 | height: 50px; | ||
3742 | padding: 15px 15px; | ||
3743 | font-size: 18px; | ||
3744 | line-height: 20px; | ||
3745 | } | ||
3746 | .navbar-brand:hover, | ||
3747 | .navbar-brand:focus { | ||
3748 | text-decoration: none; | ||
3749 | } | ||
3750 | @media (min-width: 768px) { | ||
3751 | .navbar > .container .navbar-brand, | ||
3752 | .navbar > .container-fluid .navbar-brand { | ||
3753 | margin-left: -15px; | ||
3754 | } | ||
3755 | } | ||
3756 | .navbar-toggle { | ||
3757 | position: relative; | ||
3758 | float: right; | ||
3759 | padding: 9px 10px; | ||
3760 | margin-top: 8px; | ||
3761 | margin-right: 15px; | ||
3762 | margin-bottom: 8px; | ||
3763 | background-color: transparent; | ||
3764 | background-image: none; | ||
3765 | border: 1px solid transparent; | ||
3766 | border-radius: 4px; | ||
3767 | } | ||
3768 | .navbar-toggle:focus { | ||
3769 | outline: none; | ||
3770 | } | ||
3771 | .navbar-toggle .icon-bar { | ||
3772 | display: block; | ||
3773 | width: 22px; | ||
3774 | height: 2px; | ||
3775 | border-radius: 1px; | ||
3776 | } | ||
3777 | .navbar-toggle .icon-bar + .icon-bar { | ||
3778 | margin-top: 4px; | ||
3779 | } | ||
3780 | @media (min-width: 768px) { | ||
3781 | .navbar-toggle { | ||
3782 | display: none; | ||
3783 | } | ||
3784 | } | ||
3785 | .navbar-nav { | ||
3786 | margin: 7.5px -15px; | ||
3787 | } | ||
3788 | .navbar-nav > li > a { | ||
3789 | padding-top: 10px; | ||
3790 | padding-bottom: 10px; | ||
3791 | line-height: 20px; | ||
3792 | } | ||
3793 | @media (max-width: 767px) { | ||
3794 | .navbar-nav .open .dropdown-menu { | ||
3795 | position: static; | ||
3796 | float: none; | ||
3797 | width: auto; | ||
3798 | margin-top: 0; | ||
3799 | background-color: transparent; | ||
3800 | border: 0; | ||
3801 | box-shadow: none; | ||
3802 | } | ||
3803 | .navbar-nav .open .dropdown-menu > li > a, | ||
3804 | .navbar-nav .open .dropdown-menu .dropdown-header { | ||
3805 | padding: 5px 15px 5px 25px; | ||
3806 | } | ||
3807 | .navbar-nav .open .dropdown-menu > li > a { | ||
3808 | line-height: 20px; | ||
3809 | } | ||
3810 | .navbar-nav .open .dropdown-menu > li > a:hover, | ||
3811 | .navbar-nav .open .dropdown-menu > li > a:focus { | ||
3812 | background-image: none; | ||
3813 | } | ||
3814 | } | ||
3815 | @media (min-width: 768px) { | ||
3816 | .navbar-nav { | ||
3817 | float: left; | ||
3818 | margin: 0; | ||
3819 | } | ||
3820 | .navbar-nav > li { | ||
3821 | float: left; | ||
3822 | } | ||
3823 | .navbar-nav > li > a { | ||
3824 | padding-top: 15px; | ||
3825 | padding-bottom: 15px; | ||
3826 | } | ||
3827 | .navbar-nav.navbar-right:last-child { | ||
3828 | margin-right: -15px; | ||
3829 | } | ||
3830 | } | ||
3831 | @media (min-width: 768px) { | ||
3832 | .navbar-left { | ||
3833 | float: left !important; | ||
3834 | } | ||
3835 | .navbar-right { | ||
3836 | float: right !important; | ||
3837 | } | ||
3838 | } | ||
3839 | .navbar-form { | ||
3840 | padding: 10px 15px; | ||
3841 | margin-top: 8px; | ||
3842 | margin-right: -15px; | ||
3843 | margin-bottom: 8px; | ||
3844 | margin-left: -15px; | ||
3845 | border-top: 1px solid transparent; | ||
3846 | border-bottom: 1px solid transparent; | ||
3847 | -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); | ||
3848 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); | ||
3849 | } | ||
3850 | @media (min-width: 768px) { | ||
3851 | .navbar-form .form-group { | ||
3852 | display: inline-block; | ||
3853 | margin-bottom: 0; | ||
3854 | vertical-align: middle; | ||
3855 | } | ||
3856 | .navbar-form .form-control { | ||
3857 | display: inline-block; | ||
3858 | width: auto; | ||
3859 | vertical-align: middle; | ||
3860 | } | ||
3861 | .navbar-form .input-group > .form-control { | ||
3862 | width: 100%; | ||
3863 | } | ||
3864 | .navbar-form .control-label { | ||
3865 | margin-bottom: 0; | ||
3866 | vertical-align: middle; | ||
3867 | } | ||
3868 | .navbar-form .radio, | ||
3869 | .navbar-form .checkbox { | ||
3870 | display: inline-block; | ||
3871 | padding-left: 0; | ||
3872 | margin-top: 0; | ||
3873 | margin-bottom: 0; | ||
3874 | vertical-align: middle; | ||
3875 | } | ||
3876 | .navbar-form .radio input[type="radio"], | ||
3877 | .navbar-form .checkbox input[type="checkbox"] { | ||
3878 | float: none; | ||
3879 | margin-left: 0; | ||
3880 | } | ||
3881 | .navbar-form .has-feedback .form-control-feedback { | ||
3882 | top: 0; | ||
3883 | } | ||
3884 | } | ||
3885 | @media (max-width: 767px) { | ||
3886 | .navbar-form .form-group { | ||
3887 | margin-bottom: 5px; | ||
3888 | } | ||
3889 | } | ||
3890 | @media (min-width: 768px) { | ||
3891 | .navbar-form { | ||
3892 | width: auto; | ||
3893 | padding-top: 0; | ||
3894 | padding-bottom: 0; | ||
3895 | margin-right: 0; | ||
3896 | margin-left: 0; | ||
3897 | border: 0; | ||
3898 | -webkit-box-shadow: none; | ||
3899 | box-shadow: none; | ||
3900 | } | ||
3901 | .navbar-form.navbar-right:last-child { | ||
3902 | margin-right: -15px; | ||
3903 | } | ||
3904 | } | ||
3905 | .navbar-nav > li > .dropdown-menu { | ||
3906 | margin-top: 0; | ||
3907 | border-top-left-radius: 0; | ||
3908 | border-top-right-radius: 0; | ||
3909 | } | ||
3910 | .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { | ||
3911 | border-bottom-right-radius: 0; | ||
3912 | border-bottom-left-radius: 0; | ||
3913 | } | ||
3914 | .navbar-btn { | ||
3915 | margin-top: 8px; | ||
3916 | margin-bottom: 8px; | ||
3917 | } | ||
3918 | .navbar-btn.btn-sm { | ||
3919 | margin-top: 10px; | ||
3920 | margin-bottom: 10px; | ||
3921 | } | ||
3922 | .navbar-btn.btn-xs { | ||
3923 | margin-top: 14px; | ||
3924 | margin-bottom: 14px; | ||
3925 | } | ||
3926 | .navbar-text { | ||
3927 | margin-top: 15px; | ||
3928 | margin-bottom: 15px; | ||
3929 | } | ||
3930 | @media (min-width: 768px) { | ||
3931 | .navbar-text { | ||
3932 | float: left; | ||
3933 | margin-right: 15px; | ||
3934 | margin-left: 15px; | ||
3935 | } | ||
3936 | .navbar-text.navbar-right:last-child { | ||
3937 | margin-right: 0; | ||
3938 | } | ||
3939 | } | ||
3940 | .navbar-default { | ||
3941 | background-color: #f8f8f8; | ||
3942 | border-color: #e7e7e7; | ||
3943 | } | ||
3944 | .navbar-default .navbar-brand { | ||
3945 | color: #777; | ||
3946 | } | ||
3947 | .navbar-default .navbar-brand:hover, | ||
3948 | .navbar-default .navbar-brand:focus { | ||
3949 | color: #5e5e5e; | ||
3950 | background-color: transparent; | ||
3951 | } | ||
3952 | .navbar-default .navbar-text { | ||
3953 | color: #777; | ||
3954 | } | ||
3955 | .navbar-default .navbar-nav > li > a { | ||
3956 | color: #777; | ||
3957 | } | ||
3958 | .navbar-default .navbar-nav > li > a:hover, | ||
3959 | .navbar-default .navbar-nav > li > a:focus { | ||
3960 | color: #333; | ||
3961 | background-color: transparent; | ||
3962 | } | ||
3963 | .navbar-default .navbar-nav > .active > a, | ||
3964 | .navbar-default .navbar-nav > .active > a:hover, | ||
3965 | .navbar-default .navbar-nav > .active > a:focus { | ||
3966 | color: #555; | ||
3967 | background-color: #e7e7e7; | ||
3968 | } | ||
3969 | .navbar-default .navbar-nav > .disabled > a, | ||
3970 | .navbar-default .navbar-nav > .disabled > a:hover, | ||
3971 | .navbar-default .navbar-nav > .disabled > a:focus { | ||
3972 | color: #ccc; | ||
3973 | background-color: transparent; | ||
3974 | } | ||
3975 | .navbar-default .navbar-toggle { | ||
3976 | border-color: #ddd; | ||
3977 | } | ||
3978 | .navbar-default .navbar-toggle:hover, | ||
3979 | .navbar-default .navbar-toggle:focus { | ||
3980 | background-color: #ddd; | ||
3981 | } | ||
3982 | .navbar-default .navbar-toggle .icon-bar { | ||
3983 | background-color: #888; | ||
3984 | } | ||
3985 | .navbar-default .navbar-collapse, | ||
3986 | .navbar-default .navbar-form { | ||
3987 | border-color: #e7e7e7; | ||
3988 | } | ||
3989 | .navbar-default .navbar-nav > .open > a, | ||
3990 | .navbar-default .navbar-nav > .open > a:hover, | ||
3991 | .navbar-default .navbar-nav > .open > a:focus { | ||
3992 | color: #555; | ||
3993 | background-color: #e7e7e7; | ||
3994 | } | ||
3995 | @media (max-width: 767px) { | ||
3996 | .navbar-default .navbar-nav .open .dropdown-menu > li > a { | ||
3997 | color: #777; | ||
3998 | } | ||
3999 | .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, | ||
4000 | .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { | ||
4001 | color: #333; | ||
4002 | background-color: transparent; | ||
4003 | } | ||
4004 | .navbar-default .navbar-nav .open .dropdown-menu > .active > a, | ||
4005 | .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, | ||
4006 | .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { | ||
4007 | color: #555; | ||
4008 | background-color: #e7e7e7; | ||
4009 | } | ||
4010 | .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, | ||
4011 | .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, | ||
4012 | .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { | ||
4013 | color: #ccc; | ||
4014 | background-color: transparent; | ||
4015 | } | ||
4016 | } | ||
4017 | .navbar-default .navbar-link { | ||
4018 | color: #777; | ||
4019 | } | ||
4020 | .navbar-default .navbar-link:hover { | ||
4021 | color: #333; | ||
4022 | } | ||
4023 | .navbar-inverse { | ||
4024 | background-color: #222; | ||
4025 | border-color: #080808; | ||
4026 | } | ||
4027 | .navbar-inverse .navbar-brand { | ||
4028 | color: #999; | ||
4029 | } | ||
4030 | .navbar-inverse .navbar-brand:hover, | ||
4031 | .navbar-inverse .navbar-brand:focus { | ||
4032 | color: #fff; | ||
4033 | background-color: transparent; | ||
4034 | } | ||
4035 | .navbar-inverse .navbar-text { | ||
4036 | color: #999; | ||
4037 | } | ||
4038 | .navbar-inverse .navbar-nav > li > a { | ||
4039 | color: #999; | ||
4040 | } | ||
4041 | .navbar-inverse .navbar-nav > li > a:hover, | ||
4042 | .navbar-inverse .navbar-nav > li > a:focus { | ||
4043 | color: #fff; | ||
4044 | background-color: transparent; | ||
4045 | } | ||
4046 | .navbar-inverse .navbar-nav > .active > a, | ||
4047 | .navbar-inverse .navbar-nav > .active > a:hover, | ||
4048 | .navbar-inverse .navbar-nav > .active > a:focus { | ||
4049 | color: #fff; | ||
4050 | background-color: #080808; | ||
4051 | } | ||
4052 | .navbar-inverse .navbar-nav > .disabled > a, | ||
4053 | .navbar-inverse .navbar-nav > .disabled > a:hover, | ||
4054 | .navbar-inverse .navbar-nav > .disabled > a:focus { | ||
4055 | color: #444; | ||
4056 | background-color: transparent; | ||
4057 | } | ||
4058 | .navbar-inverse .navbar-toggle { | ||
4059 | border-color: #333; | ||
4060 | } | ||
4061 | .navbar-inverse .navbar-toggle:hover, | ||
4062 | .navbar-inverse .navbar-toggle:focus { | ||
4063 | background-color: #333; | ||
4064 | } | ||
4065 | .navbar-inverse .navbar-toggle .icon-bar { | ||
4066 | background-color: #fff; | ||
4067 | } | ||
4068 | .navbar-inverse .navbar-collapse, | ||
4069 | .navbar-inverse .navbar-form { | ||
4070 | border-color: #101010; | ||
4071 | } | ||
4072 | .navbar-inverse .navbar-nav > .open > a, | ||
4073 | .navbar-inverse .navbar-nav > .open > a:hover, | ||
4074 | .navbar-inverse .navbar-nav > .open > a:focus { | ||
4075 | color: #fff; | ||
4076 | background-color: #080808; | ||
4077 | } | ||
4078 | @media (max-width: 767px) { | ||
4079 | .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { | ||
4080 | border-color: #080808; | ||
4081 | } | ||
4082 | .navbar-inverse .navbar-nav .open .dropdown-menu .divider { | ||
4083 | background-color: #080808; | ||
4084 | } | ||
4085 | .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { | ||
4086 | color: #999; | ||
4087 | } | ||
4088 | .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, | ||
4089 | .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { | ||
4090 | color: #fff; | ||
4091 | background-color: transparent; | ||
4092 | } | ||
4093 | .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, | ||
4094 | .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, | ||
4095 | .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { | ||
4096 | color: #fff; | ||
4097 | background-color: #080808; | ||
4098 | } | ||
4099 | .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, | ||
4100 | .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, | ||
4101 | .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { | ||
4102 | color: #444; | ||
4103 | background-color: transparent; | ||
4104 | } | ||
4105 | } | ||
4106 | .navbar-inverse .navbar-link { | ||
4107 | color: #999; | ||
4108 | } | ||
4109 | .navbar-inverse .navbar-link:hover { | ||
4110 | color: #fff; | ||
4111 | } | ||
4112 | .breadcrumb { | ||
4113 | padding: 8px 15px; | ||
4114 | margin-bottom: 20px; | ||
4115 | list-style: none; | ||
4116 | background-color: #f5f5f5; | ||
4117 | border-radius: 4px; | ||
4118 | } | ||
4119 | .breadcrumb > li { | ||
4120 | display: inline-block; | ||
4121 | } | ||
4122 | .breadcrumb > li + li:before { | ||
4123 | padding: 0 5px; | ||
4124 | color: #ccc; | ||
4125 | content: "/\00a0"; | ||
4126 | } | ||
4127 | .breadcrumb > .active { | ||
4128 | color: #999; | ||
4129 | } | ||
4130 | .pagination { | ||
4131 | display: inline-block; | ||
4132 | padding-left: 0; | ||
4133 | margin: 20px 0; | ||
4134 | border-radius: 4px; | ||
4135 | } | ||
4136 | .pagination > li { | ||
4137 | display: inline; | ||
4138 | } | ||
4139 | .pagination > li > a, | ||
4140 | .pagination > li > span { | ||
4141 | position: relative; | ||
4142 | float: left; | ||
4143 | padding: 6px 12px; | ||
4144 | margin-left: -1px; | ||
4145 | line-height: 1.42857143; | ||
4146 | color: #428bca; | ||
4147 | text-decoration: none; | ||
4148 | background-color: #fff; | ||
4149 | border: 1px solid #ddd; | ||
4150 | } | ||
4151 | .pagination > li:first-child > a, | ||
4152 | .pagination > li:first-child > span { | ||
4153 | margin-left: 0; | ||
4154 | border-top-left-radius: 4px; | ||
4155 | border-bottom-left-radius: 4px; | ||
4156 | } | ||
4157 | .pagination > li:last-child > a, | ||
4158 | .pagination > li:last-child > span { | ||
4159 | border-top-right-radius: 4px; | ||
4160 | border-bottom-right-radius: 4px; | ||
4161 | } | ||
4162 | .pagination > li > a:hover, | ||
4163 | .pagination > li > span:hover, | ||
4164 | .pagination > li > a:focus, | ||
4165 | .pagination > li > span:focus { | ||
4166 | color: #2a6496; | ||
4167 | background-color: #eee; | ||
4168 | border-color: #ddd; | ||
4169 | } | ||
4170 | .pagination > .active > a, | ||
4171 | .pagination > .active > span, | ||
4172 | .pagination > .active > a:hover, | ||
4173 | .pagination > .active > span:hover, | ||
4174 | .pagination > .active > a:focus, | ||
4175 | .pagination > .active > span:focus { | ||
4176 | z-index: 2; | ||
4177 | color: #fff; | ||
4178 | cursor: default; | ||
4179 | background-color: #428bca; | ||
4180 | border-color: #428bca; | ||
4181 | } | ||
4182 | .pagination > .disabled > span, | ||
4183 | .pagination > .disabled > span:hover, | ||
4184 | .pagination > .disabled > span:focus, | ||
4185 | .pagination > .disabled > a, | ||
4186 | .pagination > .disabled > a:hover, | ||
4187 | .pagination > .disabled > a:focus { | ||
4188 | color: #999; | ||
4189 | cursor: not-allowed; | ||
4190 | background-color: #fff; | ||
4191 | border-color: #ddd; | ||
4192 | } | ||
4193 | .pagination-lg > li > a, | ||
4194 | .pagination-lg > li > span { | ||
4195 | padding: 10px 16px; | ||
4196 | font-size: 18px; | ||
4197 | } | ||
4198 | .pagination-lg > li:first-child > a, | ||
4199 | .pagination-lg > li:first-child > span { | ||
4200 | border-top-left-radius: 6px; | ||
4201 | border-bottom-left-radius: 6px; | ||
4202 | } | ||
4203 | .pagination-lg > li:last-child > a, | ||
4204 | .pagination-lg > li:last-child > span { | ||
4205 | border-top-right-radius: 6px; | ||
4206 | border-bottom-right-radius: 6px; | ||
4207 | } | ||
4208 | .pagination-sm > li > a, | ||
4209 | .pagination-sm > li > span { | ||
4210 | padding: 5px 10px; | ||
4211 | font-size: 12px; | ||
4212 | } | ||
4213 | .pagination-sm > li:first-child > a, | ||
4214 | .pagination-sm > li:first-child > span { | ||
4215 | border-top-left-radius: 3px; | ||
4216 | border-bottom-left-radius: 3px; | ||
4217 | } | ||
4218 | .pagination-sm > li:last-child > a, | ||
4219 | .pagination-sm > li:last-child > span { | ||
4220 | border-top-right-radius: 3px; | ||
4221 | border-bottom-right-radius: 3px; | ||
4222 | } | ||
4223 | .pager { | ||
4224 | padding-left: 0; | ||
4225 | margin: 20px 0; | ||
4226 | text-align: center; | ||
4227 | list-style: none; | ||
4228 | } | ||
4229 | .pager li { | ||
4230 | display: inline; | ||
4231 | } | ||
4232 | .pager li > a, | ||
4233 | .pager li > span { | ||
4234 | display: inline-block; | ||
4235 | padding: 5px 14px; | ||
4236 | background-color: #fff; | ||
4237 | border: 1px solid #ddd; | ||
4238 | border-radius: 15px; | ||
4239 | } | ||
4240 | .pager li > a:hover, | ||
4241 | .pager li > a:focus { | ||
4242 | text-decoration: none; | ||
4243 | background-color: #eee; | ||
4244 | } | ||
4245 | .pager .next > a, | ||
4246 | .pager .next > span { | ||
4247 | float: right; | ||
4248 | } | ||
4249 | .pager .previous > a, | ||
4250 | .pager .previous > span { | ||
4251 | float: left; | ||
4252 | } | ||
4253 | .pager .disabled > a, | ||
4254 | .pager .disabled > a:hover, | ||
4255 | .pager .disabled > a:focus, | ||
4256 | .pager .disabled > span { | ||
4257 | color: #999; | ||
4258 | cursor: not-allowed; | ||
4259 | background-color: #fff; | ||
4260 | } | ||
4261 | .label { | ||
4262 | display: inline; | ||
4263 | padding: .2em .6em .3em; | ||
4264 | font-size: 75%; | ||
4265 | font-weight: bold; | ||
4266 | line-height: 1; | ||
4267 | color: #fff; | ||
4268 | text-align: center; | ||
4269 | white-space: nowrap; | ||
4270 | vertical-align: baseline; | ||
4271 | border-radius: .25em; | ||
4272 | } | ||
4273 | .label[href]:hover, | ||
4274 | .label[href]:focus { | ||
4275 | color: #fff; | ||
4276 | text-decoration: none; | ||
4277 | cursor: pointer; | ||
4278 | } | ||
4279 | .label:empty { | ||
4280 | display: none; | ||
4281 | } | ||
4282 | .btn .label { | ||
4283 | position: relative; | ||
4284 | top: -1px; | ||
4285 | } | ||
4286 | .label-default { | ||
4287 | background-color: #999; | ||
4288 | } | ||
4289 | .label-default[href]:hover, | ||
4290 | .label-default[href]:focus { | ||
4291 | background-color: #808080; | ||
4292 | } | ||
4293 | .label-primary { | ||
4294 | background-color: #428bca; | ||
4295 | } | ||
4296 | .label-primary[href]:hover, | ||
4297 | .label-primary[href]:focus { | ||
4298 | background-color: #3071a9; | ||
4299 | } | ||
4300 | .label-success { | ||
4301 | background-color: #5cb85c; | ||
4302 | } | ||
4303 | .label-success[href]:hover, | ||
4304 | .label-success[href]:focus { | ||
4305 | background-color: #449d44; | ||
4306 | } | ||
4307 | .label-info { | ||
4308 | background-color: #5bc0de; | ||
4309 | } | ||
4310 | .label-info[href]:hover, | ||
4311 | .label-info[href]:focus { | ||
4312 | background-color: #31b0d5; | ||
4313 | } | ||
4314 | .label-warning { | ||
4315 | background-color: #f0ad4e; | ||
4316 | } | ||
4317 | .label-warning[href]:hover, | ||
4318 | .label-warning[href]:focus { | ||
4319 | background-color: #ec971f; | ||
4320 | } | ||
4321 | .label-danger { | ||
4322 | background-color: #d9534f; | ||
4323 | } | ||
4324 | .label-danger[href]:hover, | ||
4325 | .label-danger[href]:focus { | ||
4326 | background-color: #c9302c; | ||
4327 | } | ||
4328 | .badge { | ||
4329 | display: inline-block; | ||
4330 | min-width: 10px; | ||
4331 | padding: 3px 7px; | ||
4332 | font-size: 12px; | ||
4333 | font-weight: bold; | ||
4334 | line-height: 1; | ||
4335 | color: #fff; | ||
4336 | text-align: center; | ||
4337 | white-space: nowrap; | ||
4338 | vertical-align: baseline; | ||
4339 | background-color: #999; | ||
4340 | border-radius: 10px; | ||
4341 | } | ||
4342 | .badge:empty { | ||
4343 | display: none; | ||
4344 | } | ||
4345 | .btn .badge { | ||
4346 | position: relative; | ||
4347 | top: -1px; | ||
4348 | } | ||
4349 | .btn-xs .badge { | ||
4350 | top: 0; | ||
4351 | padding: 1px 5px; | ||
4352 | } | ||
4353 | a.badge:hover, | ||
4354 | a.badge:focus { | ||
4355 | color: #fff; | ||
4356 | text-decoration: none; | ||
4357 | cursor: pointer; | ||
4358 | } | ||
4359 | a.list-group-item.active > .badge, | ||
4360 | .nav-pills > .active > a > .badge { | ||
4361 | color: #428bca; | ||
4362 | background-color: #fff; | ||
4363 | } | ||
4364 | .nav-pills > li > a > .badge { | ||
4365 | margin-left: 3px; | ||
4366 | } | ||
4367 | .jumbotron { | ||
4368 | padding: 30px; | ||
4369 | margin-bottom: 30px; | ||
4370 | color: inherit; | ||
4371 | background-color: #eee; | ||
4372 | } | ||
4373 | .jumbotron h1, | ||
4374 | .jumbotron .h1 { | ||
4375 | color: inherit; | ||
4376 | } | ||
4377 | .jumbotron p { | ||
4378 | margin-bottom: 15px; | ||
4379 | font-size: 21px; | ||
4380 | font-weight: 200; | ||
4381 | } | ||
4382 | .container .jumbotron { | ||
4383 | border-radius: 6px; | ||
4384 | } | ||
4385 | .jumbotron .container { | ||
4386 | max-width: 100%; | ||
4387 | } | ||
4388 | @media screen and (min-width: 768px) { | ||
4389 | .jumbotron { | ||
4390 | padding-top: 48px; | ||
4391 | padding-bottom: 48px; | ||
4392 | } | ||
4393 | .container .jumbotron { | ||
4394 | padding-right: 60px; | ||
4395 | padding-left: 60px; | ||
4396 | } | ||
4397 | .jumbotron h1, | ||
4398 | .jumbotron .h1 { | ||
4399 | font-size: 63px; | ||
4400 | } | ||
4401 | } | ||
4402 | .thumbnail { | ||
4403 | display: block; | ||
4404 | padding: 4px; | ||
4405 | margin-bottom: 20px; | ||
4406 | line-height: 1.42857143; | ||
4407 | background-color: #fff; | ||
4408 | border: 1px solid #ddd; | ||
4409 | border-radius: 4px; | ||
4410 | -webkit-transition: all .2s ease-in-out; | ||
4411 | transition: all .2s ease-in-out; | ||
4412 | } | ||
4413 | .thumbnail > img, | ||
4414 | .thumbnail a > img { | ||
4415 | margin-right: auto; | ||
4416 | margin-left: auto; | ||
4417 | } | ||
4418 | a.thumbnail:hover, | ||
4419 | a.thumbnail:focus, | ||
4420 | a.thumbnail.active { | ||
4421 | border-color: #428bca; | ||
4422 | } | ||
4423 | .thumbnail .caption { | ||
4424 | padding: 9px; | ||
4425 | color: #333; | ||
4426 | } | ||
4427 | .alert { | ||
4428 | padding: 15px; | ||
4429 | margin-bottom: 20px; | ||
4430 | border: 1px solid transparent; | ||
4431 | border-radius: 4px; | ||
4432 | } | ||
4433 | .alert h4 { | ||
4434 | margin-top: 0; | ||
4435 | color: inherit; | ||
4436 | } | ||
4437 | .alert .alert-link { | ||
4438 | font-weight: bold; | ||
4439 | } | ||
4440 | .alert > p, | ||
4441 | .alert > ul { | ||
4442 | margin-bottom: 0; | ||
4443 | } | ||
4444 | .alert > p + p { | ||
4445 | margin-top: 5px; | ||
4446 | } | ||
4447 | .alert-dismissable { | ||
4448 | padding-right: 35px; | ||
4449 | } | ||
4450 | .alert-dismissable .close { | ||
4451 | position: relative; | ||
4452 | top: -2px; | ||
4453 | right: -21px; | ||
4454 | color: inherit; | ||
4455 | } | ||
4456 | .alert-success { | ||
4457 | color: #3c763d; | ||
4458 | background-color: #dff0d8; | ||
4459 | border-color: #d6e9c6; | ||
4460 | } | ||
4461 | .alert-success hr { | ||
4462 | border-top-color: #c9e2b3; | ||
4463 | } | ||
4464 | .alert-success .alert-link { | ||
4465 | color: #2b542c; | ||
4466 | } | ||
4467 | .alert-info { | ||
4468 | color: #31708f; | ||
4469 | background-color: #d9edf7; | ||
4470 | border-color: #bce8f1; | ||
4471 | } | ||
4472 | .alert-info hr { | ||
4473 | border-top-color: #a6e1ec; | ||
4474 | } | ||
4475 | .alert-info .alert-link { | ||
4476 | color: #245269; | ||
4477 | } | ||
4478 | .alert-warning { | ||
4479 | color: #8a6d3b; | ||
4480 | background-color: #fcf8e3; | ||
4481 | border-color: #faebcc; | ||
4482 | } | ||
4483 | .alert-warning hr { | ||
4484 | border-top-color: #f7e1b5; | ||
4485 | } | ||
4486 | .alert-warning .alert-link { | ||
4487 | color: #66512c; | ||
4488 | } | ||
4489 | .alert-danger { | ||
4490 | color: #a94442; | ||
4491 | background-color: #f2dede; | ||
4492 | border-color: #ebccd1; | ||
4493 | } | ||
4494 | .alert-danger hr { | ||
4495 | border-top-color: #e4b9c0; | ||
4496 | } | ||
4497 | .alert-danger .alert-link { | ||
4498 | color: #843534; | ||
4499 | } | ||
4500 | @-webkit-keyframes progress-bar-stripes { | ||
4501 | from { | ||
4502 | background-position: 40px 0; | ||
4503 | } | ||
4504 | to { | ||
4505 | background-position: 0 0; | ||
4506 | } | ||
4507 | } | ||
4508 | @keyframes progress-bar-stripes { | ||
4509 | from { | ||
4510 | background-position: 40px 0; | ||
4511 | } | ||
4512 | to { | ||
4513 | background-position: 0 0; | ||
4514 | } | ||
4515 | } | ||
4516 | .progress { | ||
4517 | height: 20px; | ||
4518 | margin-bottom: 20px; | ||
4519 | overflow: hidden; | ||
4520 | background-color: #f5f5f5; | ||
4521 | border-radius: 4px; | ||
4522 | -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); | ||
4523 | box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); | ||
4524 | } | ||
4525 | .progress-bar { | ||
4526 | float: left; | ||
4527 | width: 0; | ||
4528 | height: 100%; | ||
4529 | font-size: 12px; | ||
4530 | line-height: 20px; | ||
4531 | color: #fff; | ||
4532 | text-align: center; | ||
4533 | background-color: #428bca; | ||
4534 | -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); | ||
4535 | box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); | ||
4536 | -webkit-transition: width .6s ease; | ||
4537 | transition: width .6s ease; | ||
4538 | } | ||
4539 | .progress-striped .progress-bar { | ||
4540 | background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4541 | background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4542 | background-size: 40px 40px; | ||
4543 | } | ||
4544 | .progress.active .progress-bar { | ||
4545 | -webkit-animation: progress-bar-stripes 2s linear infinite; | ||
4546 | animation: progress-bar-stripes 2s linear infinite; | ||
4547 | } | ||
4548 | .progress-bar-success { | ||
4549 | background-color: #5cb85c; | ||
4550 | } | ||
4551 | .progress-striped .progress-bar-success { | ||
4552 | background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4553 | background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4554 | } | ||
4555 | .progress-bar-info { | ||
4556 | background-color: #5bc0de; | ||
4557 | } | ||
4558 | .progress-striped .progress-bar-info { | ||
4559 | background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4560 | background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4561 | } | ||
4562 | .progress-bar-warning { | ||
4563 | background-color: #f0ad4e; | ||
4564 | } | ||
4565 | .progress-striped .progress-bar-warning { | ||
4566 | background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4567 | background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4568 | } | ||
4569 | .progress-bar-danger { | ||
4570 | background-color: #d9534f; | ||
4571 | } | ||
4572 | .progress-striped .progress-bar-danger { | ||
4573 | background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4574 | background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
4575 | } | ||
4576 | .media, | ||
4577 | .media-body { | ||
4578 | overflow: hidden; | ||
4579 | zoom: 1; | ||
4580 | } | ||
4581 | .media, | ||
4582 | .media .media { | ||
4583 | margin-top: 15px; | ||
4584 | } | ||
4585 | .media:first-child { | ||
4586 | margin-top: 0; | ||
4587 | } | ||
4588 | .media-object { | ||
4589 | display: block; | ||
4590 | } | ||
4591 | .media-heading { | ||
4592 | margin: 0 0 5px; | ||
4593 | } | ||
4594 | .media > .pull-left { | ||
4595 | margin-right: 10px; | ||
4596 | } | ||
4597 | .media > .pull-right { | ||
4598 | margin-left: 10px; | ||
4599 | } | ||
4600 | .media-list { | ||
4601 | padding-left: 0; | ||
4602 | list-style: none; | ||
4603 | } | ||
4604 | .list-group { | ||
4605 | padding-left: 0; | ||
4606 | margin-bottom: 20px; | ||
4607 | } | ||
4608 | .list-group-item { | ||
4609 | position: relative; | ||
4610 | display: block; | ||
4611 | padding: 10px 15px; | ||
4612 | margin-bottom: -1px; | ||
4613 | background-color: #fff; | ||
4614 | border: 1px solid #ddd; | ||
4615 | } | ||
4616 | .list-group-item:first-child { | ||
4617 | border-top-left-radius: 4px; | ||
4618 | border-top-right-radius: 4px; | ||
4619 | } | ||
4620 | .list-group-item:last-child { | ||
4621 | margin-bottom: 0; | ||
4622 | border-bottom-right-radius: 4px; | ||
4623 | border-bottom-left-radius: 4px; | ||
4624 | } | ||
4625 | .list-group-item > .badge { | ||
4626 | float: right; | ||
4627 | } | ||
4628 | .list-group-item > .badge + .badge { | ||
4629 | margin-right: 5px; | ||
4630 | } | ||
4631 | a.list-group-item { | ||
4632 | color: #555; | ||
4633 | } | ||
4634 | a.list-group-item .list-group-item-heading { | ||
4635 | color: #333; | ||
4636 | } | ||
4637 | a.list-group-item:hover, | ||
4638 | a.list-group-item:focus { | ||
4639 | text-decoration: none; | ||
4640 | background-color: #f5f5f5; | ||
4641 | } | ||
4642 | a.list-group-item.active, | ||
4643 | a.list-group-item.active:hover, | ||
4644 | a.list-group-item.active:focus { | ||
4645 | z-index: 2; | ||
4646 | color: #fff; | ||
4647 | background-color: #428bca; | ||
4648 | border-color: #428bca; | ||
4649 | } | ||
4650 | a.list-group-item.active .list-group-item-heading, | ||
4651 | a.list-group-item.active:hover .list-group-item-heading, | ||
4652 | a.list-group-item.active:focus .list-group-item-heading { | ||
4653 | color: inherit; | ||
4654 | } | ||
4655 | a.list-group-item.active .list-group-item-text, | ||
4656 | a.list-group-item.active:hover .list-group-item-text, | ||
4657 | a.list-group-item.active:focus .list-group-item-text { | ||
4658 | color: #e1edf7; | ||
4659 | } | ||
4660 | .list-group-item-success { | ||
4661 | color: #3c763d; | ||
4662 | background-color: #dff0d8; | ||
4663 | } | ||
4664 | a.list-group-item-success { | ||
4665 | color: #3c763d; | ||
4666 | } | ||
4667 | a.list-group-item-success .list-group-item-heading { | ||
4668 | color: inherit; | ||
4669 | } | ||
4670 | a.list-group-item-success:hover, | ||
4671 | a.list-group-item-success:focus { | ||
4672 | color: #3c763d; | ||
4673 | background-color: #d0e9c6; | ||
4674 | } | ||
4675 | a.list-group-item-success.active, | ||
4676 | a.list-group-item-success.active:hover, | ||
4677 | a.list-group-item-success.active:focus { | ||
4678 | color: #fff; | ||
4679 | background-color: #3c763d; | ||
4680 | border-color: #3c763d; | ||
4681 | } | ||
4682 | .list-group-item-info { | ||
4683 | color: #31708f; | ||
4684 | background-color: #d9edf7; | ||
4685 | } | ||
4686 | a.list-group-item-info { | ||
4687 | color: #31708f; | ||
4688 | } | ||
4689 | a.list-group-item-info .list-group-item-heading { | ||
4690 | color: inherit; | ||
4691 | } | ||
4692 | a.list-group-item-info:hover, | ||
4693 | a.list-group-item-info:focus { | ||
4694 | color: #31708f; | ||
4695 | background-color: #c4e3f3; | ||
4696 | } | ||
4697 | a.list-group-item-info.active, | ||
4698 | a.list-group-item-info.active:hover, | ||
4699 | a.list-group-item-info.active:focus { | ||
4700 | color: #fff; | ||
4701 | background-color: #31708f; | ||
4702 | border-color: #31708f; | ||
4703 | } | ||
4704 | .list-group-item-warning { | ||
4705 | color: #8a6d3b; | ||
4706 | background-color: #fcf8e3; | ||
4707 | } | ||
4708 | a.list-group-item-warning { | ||
4709 | color: #8a6d3b; | ||
4710 | } | ||
4711 | a.list-group-item-warning .list-group-item-heading { | ||
4712 | color: inherit; | ||
4713 | } | ||
4714 | a.list-group-item-warning:hover, | ||
4715 | a.list-group-item-warning:focus { | ||
4716 | color: #8a6d3b; | ||
4717 | background-color: #faf2cc; | ||
4718 | } | ||
4719 | a.list-group-item-warning.active, | ||
4720 | a.list-group-item-warning.active:hover, | ||
4721 | a.list-group-item-warning.active:focus { | ||
4722 | color: #fff; | ||
4723 | background-color: #8a6d3b; | ||
4724 | border-color: #8a6d3b; | ||
4725 | } | ||
4726 | .list-group-item-danger { | ||
4727 | color: #a94442; | ||
4728 | background-color: #f2dede; | ||
4729 | } | ||
4730 | a.list-group-item-danger { | ||
4731 | color: #a94442; | ||
4732 | } | ||
4733 | a.list-group-item-danger .list-group-item-heading { | ||
4734 | color: inherit; | ||
4735 | } | ||
4736 | a.list-group-item-danger:hover, | ||
4737 | a.list-group-item-danger:focus { | ||
4738 | color: #a94442; | ||
4739 | background-color: #ebcccc; | ||
4740 | } | ||
4741 | a.list-group-item-danger.active, | ||
4742 | a.list-group-item-danger.active:hover, | ||
4743 | a.list-group-item-danger.active:focus { | ||
4744 | color: #fff; | ||
4745 | background-color: #a94442; | ||
4746 | border-color: #a94442; | ||
4747 | } | ||
4748 | .list-group-item-heading { | ||
4749 | margin-top: 0; | ||
4750 | margin-bottom: 5px; | ||
4751 | } | ||
4752 | .list-group-item-text { | ||
4753 | margin-bottom: 0; | ||
4754 | line-height: 1.3; | ||
4755 | } | ||
4756 | .panel { | ||
4757 | margin-bottom: 20px; | ||
4758 | background-color: #fff; | ||
4759 | border: 1px solid transparent; | ||
4760 | border-radius: 4px; | ||
4761 | -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); | ||
4762 | box-shadow: 0 1px 1px rgba(0, 0, 0, .05); | ||
4763 | } | ||
4764 | .panel-body { | ||
4765 | padding: 15px; | ||
4766 | } | ||
4767 | .panel-heading { | ||
4768 | padding: 10px 15px; | ||
4769 | border-bottom: 1px solid transparent; | ||
4770 | border-top-left-radius: 3px; | ||
4771 | border-top-right-radius: 3px; | ||
4772 | } | ||
4773 | .panel-heading > .dropdown .dropdown-toggle { | ||
4774 | color: inherit; | ||
4775 | } | ||
4776 | .panel-title { | ||
4777 | margin-top: 0; | ||
4778 | margin-bottom: 0; | ||
4779 | font-size: 16px; | ||
4780 | color: inherit; | ||
4781 | } | ||
4782 | .panel-title > a { | ||
4783 | color: inherit; | ||
4784 | } | ||
4785 | .panel-footer { | ||
4786 | padding: 10px 15px; | ||
4787 | background-color: #f5f5f5; | ||
4788 | border-top: 1px solid #ddd; | ||
4789 | border-bottom-right-radius: 3px; | ||
4790 | border-bottom-left-radius: 3px; | ||
4791 | } | ||
4792 | .panel > .list-group { | ||
4793 | margin-bottom: 0; | ||
4794 | } | ||
4795 | .panel > .list-group .list-group-item { | ||
4796 | border-width: 1px 0; | ||
4797 | border-radius: 0; | ||
4798 | } | ||
4799 | .panel > .list-group:first-child .list-group-item:first-child { | ||
4800 | border-top: 0; | ||
4801 | border-top-left-radius: 3px; | ||
4802 | border-top-right-radius: 3px; | ||
4803 | } | ||
4804 | .panel > .list-group:last-child .list-group-item:last-child { | ||
4805 | border-bottom: 0; | ||
4806 | border-bottom-right-radius: 3px; | ||
4807 | border-bottom-left-radius: 3px; | ||
4808 | } | ||
4809 | .panel-heading + .list-group .list-group-item:first-child { | ||
4810 | border-top-width: 0; | ||
4811 | } | ||
4812 | .panel > .table, | ||
4813 | .panel > .table-responsive > .table { | ||
4814 | margin-bottom: 0; | ||
4815 | } | ||
4816 | .panel > .table:first-child, | ||
4817 | .panel > .table-responsive:first-child > .table:first-child { | ||
4818 | border-top-left-radius: 3px; | ||
4819 | border-top-right-radius: 3px; | ||
4820 | } | ||
4821 | .panel > .table:first-child > thead:first-child > tr:first-child td:first-child, | ||
4822 | .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, | ||
4823 | .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, | ||
4824 | .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, | ||
4825 | .panel > .table:first-child > thead:first-child > tr:first-child th:first-child, | ||
4826 | .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, | ||
4827 | .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, | ||
4828 | .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { | ||
4829 | border-top-left-radius: 3px; | ||
4830 | } | ||
4831 | .panel > .table:first-child > thead:first-child > tr:first-child td:last-child, | ||
4832 | .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, | ||
4833 | .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, | ||
4834 | .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, | ||
4835 | .panel > .table:first-child > thead:first-child > tr:first-child th:last-child, | ||
4836 | .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, | ||
4837 | .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, | ||
4838 | .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { | ||
4839 | border-top-right-radius: 3px; | ||
4840 | } | ||
4841 | .panel > .table:last-child, | ||
4842 | .panel > .table-responsive:last-child > .table:last-child { | ||
4843 | border-bottom-right-radius: 3px; | ||
4844 | border-bottom-left-radius: 3px; | ||
4845 | } | ||
4846 | .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, | ||
4847 | .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, | ||
4848 | .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, | ||
4849 | .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, | ||
4850 | .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, | ||
4851 | .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, | ||
4852 | .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, | ||
4853 | .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { | ||
4854 | border-bottom-left-radius: 3px; | ||
4855 | } | ||
4856 | .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, | ||
4857 | .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, | ||
4858 | .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, | ||
4859 | .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, | ||
4860 | .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, | ||
4861 | .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, | ||
4862 | .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, | ||
4863 | .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { | ||
4864 | border-bottom-right-radius: 3px; | ||
4865 | } | ||
4866 | .panel > .panel-body + .table, | ||
4867 | .panel > .panel-body + .table-responsive { | ||
4868 | border-top: 1px solid #ddd; | ||
4869 | } | ||
4870 | .panel > .table > tbody:first-child > tr:first-child th, | ||
4871 | .panel > .table > tbody:first-child > tr:first-child td { | ||
4872 | border-top: 0; | ||
4873 | } | ||
4874 | .panel > .table-bordered, | ||
4875 | .panel > .table-responsive > .table-bordered { | ||
4876 | border: 0; | ||
4877 | } | ||
4878 | .panel > .table-bordered > thead > tr > th:first-child, | ||
4879 | .panel > .table-responsive > .table-bordered > thead > tr > th:first-child, | ||
4880 | .panel > .table-bordered > tbody > tr > th:first-child, | ||
4881 | .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, | ||
4882 | .panel > .table-bordered > tfoot > tr > th:first-child, | ||
4883 | .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, | ||
4884 | .panel > .table-bordered > thead > tr > td:first-child, | ||
4885 | .panel > .table-responsive > .table-bordered > thead > tr > td:first-child, | ||
4886 | .panel > .table-bordered > tbody > tr > td:first-child, | ||
4887 | .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, | ||
4888 | .panel > .table-bordered > tfoot > tr > td:first-child, | ||
4889 | .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { | ||
4890 | border-left: 0; | ||
4891 | } | ||
4892 | .panel > .table-bordered > thead > tr > th:last-child, | ||
4893 | .panel > .table-responsive > .table-bordered > thead > tr > th:last-child, | ||
4894 | .panel > .table-bordered > tbody > tr > th:last-child, | ||
4895 | .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, | ||
4896 | .panel > .table-bordered > tfoot > tr > th:last-child, | ||
4897 | .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, | ||
4898 | .panel > .table-bordered > thead > tr > td:last-child, | ||
4899 | .panel > .table-responsive > .table-bordered > thead > tr > td:last-child, | ||
4900 | .panel > .table-bordered > tbody > tr > td:last-child, | ||
4901 | .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, | ||
4902 | .panel > .table-bordered > tfoot > tr > td:last-child, | ||
4903 | .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { | ||
4904 | border-right: 0; | ||
4905 | } | ||
4906 | .panel > .table-bordered > thead > tr:first-child > td, | ||
4907 | .panel > .table-responsive > .table-bordered > thead > tr:first-child > td, | ||
4908 | .panel > .table-bordered > tbody > tr:first-child > td, | ||
4909 | .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, | ||
4910 | .panel > .table-bordered > thead > tr:first-child > th, | ||
4911 | .panel > .table-responsive > .table-bordered > thead > tr:first-child > th, | ||
4912 | .panel > .table-bordered > tbody > tr:first-child > th, | ||
4913 | .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { | ||
4914 | border-bottom: 0; | ||
4915 | } | ||
4916 | .panel > .table-bordered > tbody > tr:last-child > td, | ||
4917 | .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, | ||
4918 | .panel > .table-bordered > tfoot > tr:last-child > td, | ||
4919 | .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, | ||
4920 | .panel > .table-bordered > tbody > tr:last-child > th, | ||
4921 | .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, | ||
4922 | .panel > .table-bordered > tfoot > tr:last-child > th, | ||
4923 | .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { | ||
4924 | border-bottom: 0; | ||
4925 | } | ||
4926 | .panel > .table-responsive { | ||
4927 | margin-bottom: 0; | ||
4928 | border: 0; | ||
4929 | } | ||
4930 | .panel-group { | ||
4931 | margin-bottom: 20px; | ||
4932 | } | ||
4933 | .panel-group .panel { | ||
4934 | margin-bottom: 0; | ||
4935 | overflow: hidden; | ||
4936 | border-radius: 4px; | ||
4937 | } | ||
4938 | .panel-group .panel + .panel { | ||
4939 | margin-top: 5px; | ||
4940 | } | ||
4941 | .panel-group .panel-heading { | ||
4942 | border-bottom: 0; | ||
4943 | } | ||
4944 | .panel-group .panel-heading + .panel-collapse .panel-body { | ||
4945 | border-top: 1px solid #ddd; | ||
4946 | } | ||
4947 | .panel-group .panel-footer { | ||
4948 | border-top: 0; | ||
4949 | } | ||
4950 | .panel-group .panel-footer + .panel-collapse .panel-body { | ||
4951 | border-bottom: 1px solid #ddd; | ||
4952 | } | ||
4953 | .panel-default { | ||
4954 | border-color: #ddd; | ||
4955 | } | ||
4956 | .panel-default > .panel-heading { | ||
4957 | color: #333; | ||
4958 | background-color: #f5f5f5; | ||
4959 | border-color: #ddd; | ||
4960 | } | ||
4961 | .panel-default > .panel-heading + .panel-collapse .panel-body { | ||
4962 | border-top-color: #ddd; | ||
4963 | } | ||
4964 | .panel-default > .panel-footer + .panel-collapse .panel-body { | ||
4965 | border-bottom-color: #ddd; | ||
4966 | } | ||
4967 | .panel-primary { | ||
4968 | border-color: #428bca; | ||
4969 | } | ||
4970 | .panel-primary > .panel-heading { | ||
4971 | color: #fff; | ||
4972 | background-color: #428bca; | ||
4973 | border-color: #428bca; | ||
4974 | } | ||
4975 | .panel-primary > .panel-heading + .panel-collapse .panel-body { | ||
4976 | border-top-color: #428bca; | ||
4977 | } | ||
4978 | .panel-primary > .panel-footer + .panel-collapse .panel-body { | ||
4979 | border-bottom-color: #428bca; | ||
4980 | } | ||
4981 | .panel-success { | ||
4982 | border-color: #d6e9c6; | ||
4983 | } | ||
4984 | .panel-success > .panel-heading { | ||
4985 | color: #3c763d; | ||
4986 | background-color: #dff0d8; | ||
4987 | border-color: #d6e9c6; | ||
4988 | } | ||
4989 | .panel-success > .panel-heading + .panel-collapse .panel-body { | ||
4990 | border-top-color: #d6e9c6; | ||
4991 | } | ||
4992 | .panel-success > .panel-footer + .panel-collapse .panel-body { | ||
4993 | border-bottom-color: #d6e9c6; | ||
4994 | } | ||
4995 | .panel-info { | ||
4996 | border-color: #bce8f1; | ||
4997 | } | ||
4998 | .panel-info > .panel-heading { | ||
4999 | color: #31708f; | ||
5000 | background-color: #d9edf7; | ||
5001 | border-color: #bce8f1; | ||
5002 | } | ||
5003 | .panel-info > .panel-heading + .panel-collapse .panel-body { | ||
5004 | border-top-color: #bce8f1; | ||
5005 | } | ||
5006 | .panel-info > .panel-footer + .panel-collapse .panel-body { | ||
5007 | border-bottom-color: #bce8f1; | ||
5008 | } | ||
5009 | .panel-warning { | ||
5010 | border-color: #faebcc; | ||
5011 | } | ||
5012 | .panel-warning > .panel-heading { | ||
5013 | color: #8a6d3b; | ||
5014 | background-color: #fcf8e3; | ||
5015 | border-color: #faebcc; | ||
5016 | } | ||
5017 | .panel-warning > .panel-heading + .panel-collapse .panel-body { | ||
5018 | border-top-color: #faebcc; | ||
5019 | } | ||
5020 | .panel-warning > .panel-footer + .panel-collapse .panel-body { | ||
5021 | border-bottom-color: #faebcc; | ||
5022 | } | ||
5023 | .panel-danger { | ||
5024 | border-color: #ebccd1; | ||
5025 | } | ||
5026 | .panel-danger > .panel-heading { | ||
5027 | color: #a94442; | ||
5028 | background-color: #f2dede; | ||
5029 | border-color: #ebccd1; | ||
5030 | } | ||
5031 | .panel-danger > .panel-heading + .panel-collapse .panel-body { | ||
5032 | border-top-color: #ebccd1; | ||
5033 | } | ||
5034 | .panel-danger > .panel-footer + .panel-collapse .panel-body { | ||
5035 | border-bottom-color: #ebccd1; | ||
5036 | } | ||
5037 | .well { | ||
5038 | min-height: 20px; | ||
5039 | padding: 19px; | ||
5040 | margin-bottom: 20px; | ||
5041 | background-color: #f5f5f5; | ||
5042 | border: 1px solid #e3e3e3; | ||
5043 | border-radius: 4px; | ||
5044 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); | ||
5045 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); | ||
5046 | } | ||
5047 | .well blockquote { | ||
5048 | border-color: #ddd; | ||
5049 | border-color: rgba(0, 0, 0, .15); | ||
5050 | } | ||
5051 | .well-lg { | ||
5052 | padding: 24px; | ||
5053 | border-radius: 6px; | ||
5054 | } | ||
5055 | .well-sm { | ||
5056 | padding: 9px; | ||
5057 | border-radius: 3px; | ||
5058 | } | ||
5059 | .close { | ||
5060 | float: right; | ||
5061 | font-size: 21px; | ||
5062 | font-weight: bold; | ||
5063 | line-height: 1; | ||
5064 | color: #000; | ||
5065 | text-shadow: 0 1px 0 #fff; | ||
5066 | filter: alpha(opacity=20); | ||
5067 | opacity: .2; | ||
5068 | } | ||
5069 | .close:hover, | ||
5070 | .close:focus { | ||
5071 | color: #000; | ||
5072 | text-decoration: none; | ||
5073 | cursor: pointer; | ||
5074 | filter: alpha(opacity=50); | ||
5075 | opacity: .5; | ||
5076 | } | ||
5077 | button.close { | ||
5078 | -webkit-appearance: none; | ||
5079 | padding: 0; | ||
5080 | cursor: pointer; | ||
5081 | background: transparent; | ||
5082 | border: 0; | ||
5083 | } | ||
5084 | .modal-open { | ||
5085 | overflow: hidden; | ||
5086 | } | ||
5087 | .modal { | ||
5088 | position: fixed; | ||
5089 | top: 0; | ||
5090 | right: 0; | ||
5091 | bottom: 0; | ||
5092 | left: 0; | ||
5093 | z-index: 1050; | ||
5094 | display: none; | ||
5095 | overflow: auto; | ||
5096 | overflow-y: scroll; | ||
5097 | -webkit-overflow-scrolling: touch; | ||
5098 | outline: 0; | ||
5099 | } | ||
5100 | .modal.fade .modal-dialog { | ||
5101 | -webkit-transition: -webkit-transform .3s ease-out; | ||
5102 | -moz-transition: -moz-transform .3s ease-out; | ||
5103 | -o-transition: -o-transform .3s ease-out; | ||
5104 | transition: transform .3s ease-out; | ||
5105 | -webkit-transform: translate(0, -25%); | ||
5106 | -ms-transform: translate(0, -25%); | ||
5107 | transform: translate(0, -25%); | ||
5108 | } | ||
5109 | .modal.in .modal-dialog { | ||
5110 | -webkit-transform: translate(0, 0); | ||
5111 | -ms-transform: translate(0, 0); | ||
5112 | transform: translate(0, 0); | ||
5113 | } | ||
5114 | .modal-dialog { | ||
5115 | position: relative; | ||
5116 | width: auto; | ||
5117 | margin: 10px; | ||
5118 | } | ||
5119 | .modal-content { | ||
5120 | position: relative; | ||
5121 | background-color: #fff; | ||
5122 | background-clip: padding-box; | ||
5123 | border: 1px solid #999; | ||
5124 | border: 1px solid rgba(0, 0, 0, .2); | ||
5125 | border-radius: 6px; | ||
5126 | outline: none; | ||
5127 | -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); | ||
5128 | box-shadow: 0 3px 9px rgba(0, 0, 0, .5); | ||
5129 | } | ||
5130 | .modal-backdrop { | ||
5131 | position: fixed; | ||
5132 | top: 0; | ||
5133 | right: 0; | ||
5134 | bottom: 0; | ||
5135 | left: 0; | ||
5136 | z-index: 1040; | ||
5137 | background-color: #000; | ||
5138 | } | ||
5139 | .modal-backdrop.fade { | ||
5140 | filter: alpha(opacity=0); | ||
5141 | opacity: 0; | ||
5142 | } | ||
5143 | .modal-backdrop.in { | ||
5144 | filter: alpha(opacity=50); | ||
5145 | opacity: .5; | ||
5146 | } | ||
5147 | .modal-header { | ||
5148 | min-height: 16.42857143px; | ||
5149 | padding: 15px; | ||
5150 | border-bottom: 1px solid #e5e5e5; | ||
5151 | } | ||
5152 | .modal-header .close { | ||
5153 | margin-top: -2px; | ||
5154 | } | ||
5155 | .modal-title { | ||
5156 | margin: 0; | ||
5157 | line-height: 1.42857143; | ||
5158 | } | ||
5159 | .modal-body { | ||
5160 | position: relative; | ||
5161 | padding: 20px; | ||
5162 | } | ||
5163 | .modal-footer { | ||
5164 | padding: 19px 20px 20px; | ||
5165 | margin-top: 15px; | ||
5166 | text-align: right; | ||
5167 | border-top: 1px solid #e5e5e5; | ||
5168 | } | ||
5169 | .modal-footer .btn + .btn { | ||
5170 | margin-bottom: 0; | ||
5171 | margin-left: 5px; | ||
5172 | } | ||
5173 | .modal-footer .btn-group .btn + .btn { | ||
5174 | margin-left: -1px; | ||
5175 | } | ||
5176 | .modal-footer .btn-block + .btn-block { | ||
5177 | margin-left: 0; | ||
5178 | } | ||
5179 | @media (min-width: 768px) { | ||
5180 | .modal-dialog { | ||
5181 | width: 600px; | ||
5182 | margin: 30px auto; | ||
5183 | } | ||
5184 | .modal-content { | ||
5185 | -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); | ||
5186 | box-shadow: 0 5px 15px rgba(0, 0, 0, .5); | ||
5187 | } | ||
5188 | .modal-sm { | ||
5189 | width: 300px; | ||
5190 | } | ||
5191 | } | ||
5192 | @media (min-width: 992px) { | ||
5193 | .modal-lg { | ||
5194 | width: 900px; | ||
5195 | } | ||
5196 | } | ||
5197 | .tooltip { | ||
5198 | position: absolute; | ||
5199 | z-index: 1030; | ||
5200 | display: block; | ||
5201 | font-size: 12px; | ||
5202 | line-height: 1.4; | ||
5203 | visibility: visible; | ||
5204 | filter: alpha(opacity=0); | ||
5205 | opacity: 0; | ||
5206 | } | ||
5207 | .tooltip.in { | ||
5208 | filter: alpha(opacity=90); | ||
5209 | opacity: .9; | ||
5210 | } | ||
5211 | .tooltip.top { | ||
5212 | padding: 5px 0; | ||
5213 | margin-top: -3px; | ||
5214 | } | ||
5215 | .tooltip.right { | ||
5216 | padding: 0 5px; | ||
5217 | margin-left: 3px; | ||
5218 | } | ||
5219 | .tooltip.bottom { | ||
5220 | padding: 5px 0; | ||
5221 | margin-top: 3px; | ||
5222 | } | ||
5223 | .tooltip.left { | ||
5224 | padding: 0 5px; | ||
5225 | margin-left: -3px; | ||
5226 | } | ||
5227 | .tooltip-inner { | ||
5228 | max-width: 200px; | ||
5229 | padding: 3px 8px; | ||
5230 | color: #fff; | ||
5231 | text-align: center; | ||
5232 | text-decoration: none; | ||
5233 | background-color: #000; | ||
5234 | border-radius: 4px; | ||
5235 | } | ||
5236 | .tooltip-arrow { | ||
5237 | position: absolute; | ||
5238 | width: 0; | ||
5239 | height: 0; | ||
5240 | border-color: transparent; | ||
5241 | border-style: solid; | ||
5242 | } | ||
5243 | .tooltip.top .tooltip-arrow { | ||
5244 | bottom: 0; | ||
5245 | left: 50%; | ||
5246 | margin-left: -5px; | ||
5247 | border-width: 5px 5px 0; | ||
5248 | border-top-color: #000; | ||
5249 | } | ||
5250 | .tooltip.top-left .tooltip-arrow { | ||
5251 | bottom: 0; | ||
5252 | left: 5px; | ||
5253 | border-width: 5px 5px 0; | ||
5254 | border-top-color: #000; | ||
5255 | } | ||
5256 | .tooltip.top-right .tooltip-arrow { | ||
5257 | right: 5px; | ||
5258 | bottom: 0; | ||
5259 | border-width: 5px 5px 0; | ||
5260 | border-top-color: #000; | ||
5261 | } | ||
5262 | .tooltip.right .tooltip-arrow { | ||
5263 | top: 50%; | ||
5264 | left: 0; | ||
5265 | margin-top: -5px; | ||
5266 | border-width: 5px 5px 5px 0; | ||
5267 | border-right-color: #000; | ||
5268 | } | ||
5269 | .tooltip.left .tooltip-arrow { | ||
5270 | top: 50%; | ||
5271 | right: 0; | ||
5272 | margin-top: -5px; | ||
5273 | border-width: 5px 0 5px 5px; | ||
5274 | border-left-color: #000; | ||
5275 | } | ||
5276 | .tooltip.bottom .tooltip-arrow { | ||
5277 | top: 0; | ||
5278 | left: 50%; | ||
5279 | margin-left: -5px; | ||
5280 | border-width: 0 5px 5px; | ||
5281 | border-bottom-color: #000; | ||
5282 | } | ||
5283 | .tooltip.bottom-left .tooltip-arrow { | ||
5284 | top: 0; | ||
5285 | left: 5px; | ||
5286 | border-width: 0 5px 5px; | ||
5287 | border-bottom-color: #000; | ||
5288 | } | ||
5289 | .tooltip.bottom-right .tooltip-arrow { | ||
5290 | top: 0; | ||
5291 | right: 5px; | ||
5292 | border-width: 0 5px 5px; | ||
5293 | border-bottom-color: #000; | ||
5294 | } | ||
5295 | .popover { | ||
5296 | position: absolute; | ||
5297 | top: 0; | ||
5298 | left: 0; | ||
5299 | z-index: 1010; | ||
5300 | display: none; | ||
5301 | max-width: 276px; | ||
5302 | padding: 1px; | ||
5303 | text-align: left; | ||
5304 | white-space: normal; | ||
5305 | background-color: #fff; | ||
5306 | background-clip: padding-box; | ||
5307 | border: 1px solid #ccc; | ||
5308 | border: 1px solid rgba(0, 0, 0, .2); | ||
5309 | border-radius: 6px; | ||
5310 | -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); | ||
5311 | box-shadow: 0 5px 10px rgba(0, 0, 0, .2); | ||
5312 | } | ||
5313 | .popover.top { | ||
5314 | margin-top: -10px; | ||
5315 | } | ||
5316 | .popover.right { | ||
5317 | margin-left: 10px; | ||
5318 | } | ||
5319 | .popover.bottom { | ||
5320 | margin-top: 10px; | ||
5321 | } | ||
5322 | .popover.left { | ||
5323 | margin-left: -10px; | ||
5324 | } | ||
5325 | .popover-title { | ||
5326 | padding: 8px 14px; | ||
5327 | margin: 0; | ||
5328 | font-size: 14px; | ||
5329 | font-weight: normal; | ||
5330 | line-height: 18px; | ||
5331 | background-color: #f7f7f7; | ||
5332 | border-bottom: 1px solid #ebebeb; | ||
5333 | border-radius: 5px 5px 0 0; | ||
5334 | } | ||
5335 | .popover-content { | ||
5336 | padding: 9px 14px; | ||
5337 | } | ||
5338 | .popover > .arrow, | ||
5339 | .popover > .arrow:after { | ||
5340 | position: absolute; | ||
5341 | display: block; | ||
5342 | width: 0; | ||
5343 | height: 0; | ||
5344 | border-color: transparent; | ||
5345 | border-style: solid; | ||
5346 | } | ||
5347 | .popover > .arrow { | ||
5348 | border-width: 11px; | ||
5349 | } | ||
5350 | .popover > .arrow:after { | ||
5351 | content: ""; | ||
5352 | border-width: 10px; | ||
5353 | } | ||
5354 | .popover.top > .arrow { | ||
5355 | bottom: -11px; | ||
5356 | left: 50%; | ||
5357 | margin-left: -11px; | ||
5358 | border-top-color: #999; | ||
5359 | border-top-color: rgba(0, 0, 0, .25); | ||
5360 | border-bottom-width: 0; | ||
5361 | } | ||
5362 | .popover.top > .arrow:after { | ||
5363 | bottom: 1px; | ||
5364 | margin-left: -10px; | ||
5365 | content: " "; | ||
5366 | border-top-color: #fff; | ||
5367 | border-bottom-width: 0; | ||
5368 | } | ||
5369 | .popover.right > .arrow { | ||
5370 | top: 50%; | ||
5371 | left: -11px; | ||
5372 | margin-top: -11px; | ||
5373 | border-right-color: #999; | ||
5374 | border-right-color: rgba(0, 0, 0, .25); | ||
5375 | border-left-width: 0; | ||
5376 | } | ||
5377 | .popover.right > .arrow:after { | ||
5378 | bottom: -10px; | ||
5379 | left: 1px; | ||
5380 | content: " "; | ||
5381 | border-right-color: #fff; | ||
5382 | border-left-width: 0; | ||
5383 | } | ||
5384 | .popover.bottom > .arrow { | ||
5385 | top: -11px; | ||
5386 | left: 50%; | ||
5387 | margin-left: -11px; | ||
5388 | border-top-width: 0; | ||
5389 | border-bottom-color: #999; | ||
5390 | border-bottom-color: rgba(0, 0, 0, .25); | ||
5391 | } | ||
5392 | .popover.bottom > .arrow:after { | ||
5393 | top: 1px; | ||
5394 | margin-left: -10px; | ||
5395 | content: " "; | ||
5396 | border-top-width: 0; | ||
5397 | border-bottom-color: #fff; | ||
5398 | } | ||
5399 | .popover.left > .arrow { | ||
5400 | top: 50%; | ||
5401 | right: -11px; | ||
5402 | margin-top: -11px; | ||
5403 | border-right-width: 0; | ||
5404 | border-left-color: #999; | ||
5405 | border-left-color: rgba(0, 0, 0, .25); | ||
5406 | } | ||
5407 | .popover.left > .arrow:after { | ||
5408 | right: 1px; | ||
5409 | bottom: -10px; | ||
5410 | content: " "; | ||
5411 | border-right-width: 0; | ||
5412 | border-left-color: #fff; | ||
5413 | } | ||
5414 | .carousel { | ||
5415 | position: relative; | ||
5416 | } | ||
5417 | .carousel-inner { | ||
5418 | position: relative; | ||
5419 | width: 100%; | ||
5420 | overflow: hidden; | ||
5421 | } | ||
5422 | .carousel-inner > .item { | ||
5423 | position: relative; | ||
5424 | display: none; | ||
5425 | -webkit-transition: .6s ease-in-out left; | ||
5426 | transition: .6s ease-in-out left; | ||
5427 | } | ||
5428 | .carousel-inner > .item > img, | ||
5429 | .carousel-inner > .item > a > img { | ||
5430 | line-height: 1; | ||
5431 | } | ||
5432 | .carousel-inner > .active, | ||
5433 | .carousel-inner > .next, | ||
5434 | .carousel-inner > .prev { | ||
5435 | display: block; | ||
5436 | } | ||
5437 | .carousel-inner > .active { | ||
5438 | left: 0; | ||
5439 | } | ||
5440 | .carousel-inner > .next, | ||
5441 | .carousel-inner > .prev { | ||
5442 | position: absolute; | ||
5443 | top: 0; | ||
5444 | width: 100%; | ||
5445 | } | ||
5446 | .carousel-inner > .next { | ||
5447 | left: 100%; | ||
5448 | } | ||
5449 | .carousel-inner > .prev { | ||
5450 | left: -100%; | ||
5451 | } | ||
5452 | .carousel-inner > .next.left, | ||
5453 | .carousel-inner > .prev.right { | ||
5454 | left: 0; | ||
5455 | } | ||
5456 | .carousel-inner > .active.left { | ||
5457 | left: -100%; | ||
5458 | } | ||
5459 | .carousel-inner > .active.right { | ||
5460 | left: 100%; | ||
5461 | } | ||
5462 | .carousel-control { | ||
5463 | position: absolute; | ||
5464 | top: 0; | ||
5465 | bottom: 0; | ||
5466 | left: 0; | ||
5467 | width: 15%; | ||
5468 | font-size: 20px; | ||
5469 | color: #fff; | ||
5470 | text-align: center; | ||
5471 | text-shadow: 0 1px 2px rgba(0, 0, 0, .6); | ||
5472 | filter: alpha(opacity=50); | ||
5473 | opacity: .5; | ||
5474 | } | ||
5475 | .carousel-control.left { | ||
5476 | background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, .5) 0%), color-stop(rgba(0, 0, 0, .0001) 100%)); | ||
5477 | background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); | ||
5478 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); | ||
5479 | background-repeat: repeat-x; | ||
5480 | } | ||
5481 | .carousel-control.right { | ||
5482 | right: 0; | ||
5483 | left: auto; | ||
5484 | background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, .0001) 0%), color-stop(rgba(0, 0, 0, .5) 100%)); | ||
5485 | background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); | ||
5486 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); | ||
5487 | background-repeat: repeat-x; | ||
5488 | } | ||
5489 | .carousel-control:hover, | ||
5490 | .carousel-control:focus { | ||
5491 | color: #fff; | ||
5492 | text-decoration: none; | ||
5493 | filter: alpha(opacity=90); | ||
5494 | outline: none; | ||
5495 | opacity: .9; | ||
5496 | } | ||
5497 | .carousel-control .icon-prev, | ||
5498 | .carousel-control .icon-next, | ||
5499 | .carousel-control .glyphicon-chevron-left, | ||
5500 | .carousel-control .glyphicon-chevron-right { | ||
5501 | position: absolute; | ||
5502 | top: 50%; | ||
5503 | z-index: 5; | ||
5504 | display: inline-block; | ||
5505 | } | ||
5506 | .carousel-control .icon-prev, | ||
5507 | .carousel-control .glyphicon-chevron-left { | ||
5508 | left: 50%; | ||
5509 | } | ||
5510 | .carousel-control .icon-next, | ||
5511 | .carousel-control .glyphicon-chevron-right { | ||
5512 | right: 50%; | ||
5513 | } | ||
5514 | .carousel-control .icon-prev, | ||
5515 | .carousel-control .icon-next { | ||
5516 | width: 20px; | ||
5517 | height: 20px; | ||
5518 | margin-top: -10px; | ||
5519 | margin-left: -10px; | ||
5520 | font-family: serif; | ||
5521 | } | ||
5522 | .carousel-control .icon-prev:before { | ||
5523 | content: '\2039'; | ||
5524 | } | ||
5525 | .carousel-control .icon-next:before { | ||
5526 | content: '\203a'; | ||
5527 | } | ||
5528 | .carousel-indicators { | ||
5529 | position: absolute; | ||
5530 | bottom: 10px; | ||
5531 | left: 50%; | ||
5532 | z-index: 15; | ||
5533 | width: 60%; | ||
5534 | padding-left: 0; | ||
5535 | margin-left: -30%; | ||
5536 | text-align: center; | ||
5537 | list-style: none; | ||
5538 | } | ||
5539 | .carousel-indicators li { | ||
5540 | display: inline-block; | ||
5541 | width: 10px; | ||
5542 | height: 10px; | ||
5543 | margin: 1px; | ||
5544 | text-indent: -999px; | ||
5545 | cursor: pointer; | ||
5546 | background-color: #000 \9; | ||
5547 | background-color: rgba(0, 0, 0, 0); | ||
5548 | border: 1px solid #fff; | ||
5549 | border-radius: 10px; | ||
5550 | } | ||
5551 | .carousel-indicators .active { | ||
5552 | width: 12px; | ||
5553 | height: 12px; | ||
5554 | margin: 0; | ||
5555 | background-color: #fff; | ||
5556 | } | ||
5557 | .carousel-caption { | ||
5558 | position: absolute; | ||
5559 | right: 15%; | ||
5560 | bottom: 20px; | ||
5561 | left: 15%; | ||
5562 | z-index: 10; | ||
5563 | padding-top: 20px; | ||
5564 | padding-bottom: 20px; | ||
5565 | color: #fff; | ||
5566 | text-align: center; | ||
5567 | text-shadow: 0 1px 2px rgba(0, 0, 0, .6); | ||
5568 | } | ||
5569 | .carousel-caption .btn { | ||
5570 | text-shadow: none; | ||
5571 | } | ||
5572 | @media screen and (min-width: 768px) { | ||
5573 | .carousel-control .glyphicon-chevron-left, | ||
5574 | .carousel-control .glyphicon-chevron-right, | ||
5575 | .carousel-control .icon-prev, | ||
5576 | .carousel-control .icon-next { | ||
5577 | width: 30px; | ||
5578 | height: 30px; | ||
5579 | margin-top: -15px; | ||
5580 | margin-left: -15px; | ||
5581 | font-size: 30px; | ||
5582 | } | ||
5583 | .carousel-caption { | ||
5584 | right: 20%; | ||
5585 | left: 20%; | ||
5586 | padding-bottom: 30px; | ||
5587 | } | ||
5588 | .carousel-indicators { | ||
5589 | bottom: 20px; | ||
5590 | } | ||
5591 | } | ||
5592 | .clearfix:before, | ||
5593 | .clearfix:after, | ||
5594 | .container:before, | ||
5595 | .container:after, | ||
5596 | .container-fluid:before, | ||
5597 | .container-fluid:after, | ||
5598 | .row:before, | ||
5599 | .row:after, | ||
5600 | .form-horizontal .form-group:before, | ||
5601 | .form-horizontal .form-group:after, | ||
5602 | .btn-toolbar:before, | ||
5603 | .btn-toolbar:after, | ||
5604 | .btn-group-vertical > .btn-group:before, | ||
5605 | .btn-group-vertical > .btn-group:after, | ||
5606 | .nav:before, | ||
5607 | .nav:after, | ||
5608 | .navbar:before, | ||
5609 | .navbar:after, | ||
5610 | .navbar-header:before, | ||
5611 | .navbar-header:after, | ||
5612 | .navbar-collapse:before, | ||
5613 | .navbar-collapse:after, | ||
5614 | .pager:before, | ||
5615 | .pager:after, | ||
5616 | .panel-body:before, | ||
5617 | .panel-body:after, | ||
5618 | .modal-footer:before, | ||
5619 | .modal-footer:after { | ||
5620 | display: table; | ||
5621 | content: " "; | ||
5622 | } | ||
5623 | .clearfix:after, | ||
5624 | .container:after, | ||
5625 | .container-fluid:after, | ||
5626 | .row:after, | ||
5627 | .form-horizontal .form-group:after, | ||
5628 | .btn-toolbar:after, | ||
5629 | .btn-group-vertical > .btn-group:after, | ||
5630 | .nav:after, | ||
5631 | .navbar:after, | ||
5632 | .navbar-header:after, | ||
5633 | .navbar-collapse:after, | ||
5634 | .pager:after, | ||
5635 | .panel-body:after, | ||
5636 | .modal-footer:after { | ||
5637 | clear: both; | ||
5638 | } | ||
5639 | .center-block { | ||
5640 | display: block; | ||
5641 | margin-right: auto; | ||
5642 | margin-left: auto; | ||
5643 | } | ||
5644 | .pull-right { | ||
5645 | float: right !important; | ||
5646 | } | ||
5647 | .pull-left { | ||
5648 | float: left !important; | ||
5649 | } | ||
5650 | .hide { | ||
5651 | display: none !important; | ||
5652 | } | ||
5653 | .show { | ||
5654 | display: block !important; | ||
5655 | } | ||
5656 | .invisible { | ||
5657 | visibility: hidden; | ||
5658 | } | ||
5659 | .text-hide { | ||
5660 | font: 0/0 a; | ||
5661 | color: transparent; | ||
5662 | text-shadow: none; | ||
5663 | background-color: transparent; | ||
5664 | border: 0; | ||
5665 | } | ||
5666 | .hidden { | ||
5667 | display: none !important; | ||
5668 | visibility: hidden !important; | ||
5669 | } | ||
5670 | .affix { | ||
5671 | position: fixed; | ||
5672 | } | ||
5673 | @-ms-viewport { | ||
5674 | width: device-width; | ||
5675 | } | ||
5676 | .visible-xs, | ||
5677 | .visible-sm, | ||
5678 | .visible-md, | ||
5679 | .visible-lg { | ||
5680 | display: none !important; | ||
5681 | } | ||
5682 | @media (max-width: 767px) { | ||
5683 | .visible-xs { | ||
5684 | display: block !important; | ||
5685 | } | ||
5686 | table.visible-xs { | ||
5687 | display: table; | ||
5688 | } | ||
5689 | tr.visible-xs { | ||
5690 | display: table-row !important; | ||
5691 | } | ||
5692 | th.visible-xs, | ||
5693 | td.visible-xs { | ||
5694 | display: table-cell !important; | ||
5695 | } | ||
5696 | } | ||
5697 | @media (min-width: 768px) and (max-width: 991px) { | ||
5698 | .visible-sm { | ||
5699 | display: block !important; | ||
5700 | } | ||
5701 | table.visible-sm { | ||
5702 | display: table; | ||
5703 | } | ||
5704 | tr.visible-sm { | ||
5705 | display: table-row !important; | ||
5706 | } | ||
5707 | th.visible-sm, | ||
5708 | td.visible-sm { | ||
5709 | display: table-cell !important; | ||
5710 | } | ||
5711 | } | ||
5712 | @media (min-width: 992px) and (max-width: 1199px) { | ||
5713 | .visible-md { | ||
5714 | display: block !important; | ||
5715 | } | ||
5716 | table.visible-md { | ||
5717 | display: table; | ||
5718 | } | ||
5719 | tr.visible-md { | ||
5720 | display: table-row !important; | ||
5721 | } | ||
5722 | th.visible-md, | ||
5723 | td.visible-md { | ||
5724 | display: table-cell !important; | ||
5725 | } | ||
5726 | } | ||
5727 | @media (min-width: 1200px) { | ||
5728 | .visible-lg { | ||
5729 | display: block !important; | ||
5730 | } | ||
5731 | table.visible-lg { | ||
5732 | display: table; | ||
5733 | } | ||
5734 | tr.visible-lg { | ||
5735 | display: table-row !important; | ||
5736 | } | ||
5737 | th.visible-lg, | ||
5738 | td.visible-lg { | ||
5739 | display: table-cell !important; | ||
5740 | } | ||
5741 | } | ||
5742 | @media (max-width: 767px) { | ||
5743 | .hidden-xs { | ||
5744 | display: none !important; | ||
5745 | } | ||
5746 | } | ||
5747 | @media (min-width: 768px) and (max-width: 991px) { | ||
5748 | .hidden-sm { | ||
5749 | display: none !important; | ||
5750 | } | ||
5751 | } | ||
5752 | @media (min-width: 992px) and (max-width: 1199px) { | ||
5753 | .hidden-md { | ||
5754 | display: none !important; | ||
5755 | } | ||
5756 | } | ||
5757 | @media (min-width: 1200px) { | ||
5758 | .hidden-lg { | ||
5759 | display: none !important; | ||
5760 | } | ||
5761 | } | ||
5762 | .visible-print { | ||
5763 | display: none !important; | ||
5764 | } | ||
5765 | @media print { | ||
5766 | .visible-print { | ||
5767 | display: block !important; | ||
5768 | } | ||
5769 | table.visible-print { | ||
5770 | display: table; | ||
5771 | } | ||
5772 | tr.visible-print { | ||
5773 | display: table-row !important; | ||
5774 | } | ||
5775 | th.visible-print, | ||
5776 | td.visible-print { | ||
5777 | display: table-cell !important; | ||
5778 | } | ||
5779 | } | ||
5780 | @media print { | ||
5781 | .hidden-print { | ||
5782 | display: none !important; | ||
5783 | } | ||
5784 | } | ||
5785 | /*# sourceMappingURL=bootstrap.css.map */ | ||
diff --git a/deprecated/jinwei.me/mobile/css/bootstrap.css.map b/deprecated/jinwei.me/mobile/css/bootstrap.css.map new file mode 100644 index 0000000..6bc5a2d --- /dev/null +++ b/deprecated/jinwei.me/mobile/css/bootstrap.css.map | |||
@@ -0,0 +1 @@ | |||
{"version":3,"sources":["less/normalize.less","less/print.less","less/scaffolding.less","less/mixins.less","less/variables.less","less/thumbnails.less","less/carousel.less","less/type.less","less/code.less","less/grid.less","less/tables.less","less/forms.less","less/buttons.less","less/button-groups.less","less/component-animations.less","less/glyphicons.less","less/dropdowns.less","less/input-groups.less","less/navs.less","less/navbar.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/pager.less","less/labels.less","less/badges.less","less/jumbotron.less","less/alerts.less","less/progress-bars.less","less/media.less","less/list-group.less","less/panels.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/popovers.less","less/responsive-utilities.less"],"names":[],"mappings":"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","sourcesContent":["/*! normalize.css v3.0.0 | MIT License | git.io/normalize */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS text size adjust after orientation change, without disabling\n// user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined in IE 8/9.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9.\n// Hide the `template` element in IE, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background: transparent;\n}\n\n//\n// Improve readability when focused and also mouse hovered in all browsers.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// Address styling not present in IE 8/9, Safari 5, and Chrome.\n//\n\nabbr[title] {\n border-bottom: 1px dotted;\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari 5 and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari 5, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow displayed oddly in IE 9.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari 5.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8+, and Opera\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome\n// (include `-moz` to future-proof).\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n -moz-box-sizing: content-box;\n -webkit-box-sizing: content-box; // 2\n box-sizing: content-box;\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}","//\n// Basic print styles\n// --------------------------------------------------\n// Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css\n\n@media print {\n\n * {\n text-shadow: none !important;\n color: #000 !important; // Black prints faster: h5bp.com/s\n background: transparent !important;\n box-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links for images, or javascript/internal links\n a[href^=\"javascript:\"]:after,\n a[href^=\"#\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Chrome (OSX) fix for https://github.com/twbs/bootstrap/issues/11245\n // Once fixed, we can just straight up remove this.\n select {\n background: #fff !important;\n }\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .table {\n td,\n th {\n background-color: #fff !important;\n }\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n\n}\n","//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// http://getbootstrap.com/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 62.5%;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: underline;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: http://a11yproject.com/posts/how-to-hide-content/\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0,0,0,0);\n border: 0;\n}\n","//\n// Mixins\n// --------------------------------------------------\n\n\n// Utilities\n// -------------------------\n\n// Clearfix\n// Source: http://nicolasgallagher.com/micro-clearfix-hack/\n//\n// For modern browsers\n// 1. The space content is one way to avoid an Opera bug when the\n// contenteditable attribute is included anywhere else in the document.\n// Otherwise it causes space to appear at the top and bottom of elements\n// that are clearfixed.\n// 2. The use of `table` rather than `block` is only necessary if using\n// `:before` to contain the top-margins of child elements.\n.clearfix() {\n &:before,\n &:after {\n content: \" \"; // 1\n display: table; // 2\n }\n &:after {\n clear: both;\n }\n}\n\n// WebKit-style focus\n.tab-focus() {\n // Default\n outline: thin dotted;\n // WebKit\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n\n// Center-align a block level element\n.center-block() {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n\n// Sizing shortcuts\n.size(@width; @height) {\n width: @width;\n height: @height;\n}\n.square(@size) {\n .size(@size; @size);\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n &::-moz-placeholder { color: @color; // Firefox\n opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Text overflow\n// Requires inline-block or block for proper styling\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n// CSS image replacement\n//\n// Heads up! v3 launched with with only `.hide-text()`, but per our pattern for\n// mixins being reused as classes with the same name, this doesn't hold up. As\n// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. Note\n// that we cannot chain the mixins together in Less, so they are repeated.\n//\n// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757\n\n// Deprecated as of v3.0.1 (will be removed in v4)\n.hide-text() {\n font: ~\"0/0\" a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n// New mixin to use as of v3.0.1\n.text-hide() {\n .hide-text();\n}\n\n\n\n// CSS3 PROPERTIES\n// --------------------------------------------------\n\n// Single side border-radius\n.border-top-radius(@radius) {\n border-top-right-radius: @radius;\n border-top-left-radius: @radius;\n}\n.border-right-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-top-right-radius: @radius;\n}\n.border-bottom-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-bottom-left-radius: @radius;\n}\n.border-left-radius(@radius) {\n border-bottom-left-radius: @radius;\n border-top-left-radius: @radius;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support the\n// standard `box-shadow` property.\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Transitions\n.transition(@transition) {\n -webkit-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n// Transformations\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n transform: rotate(@degrees);\n}\n.scale(@ratio; @ratio-y...) {\n -webkit-transform: scale(@ratio, @ratio-y);\n -ms-transform: scale(@ratio, @ratio-y); // IE9 only\n transform: scale(@ratio, @ratio-y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n transform: translate(@x, @y);\n}\n.skew(@x; @y) {\n -webkit-transform: skew(@x, @y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n transform: skew(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n.backface-visibility(@visibility){\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// User select\n// For selecting text on the page\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n\n// Resize anything\n.resizable(@direction) {\n resize: @direction; // Options: horizontal, vertical, both\n overflow: auto; // Safari fix\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Opacity\n.opacity(@opacity) {\n opacity: @opacity;\n // IE8 filter\n @opacity-ie: (@opacity * 100);\n filter: ~\"alpha(opacity=@{opacity-ie})\";\n}\n\n\n\n// GRADIENTS\n// --------------------------------------------------\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, color-stop(@start-color @start-percent), color-stop(@end-color @end-percent)); // Safari 5.1-6, Chrome 10+\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n\n// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n\n\n\n// Retina images\n//\n// Short retina mixin for setting background-image and -size\n\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// COMPONENT MIXINS\n// --------------------------------------------------\n\n// Horizontal dividers\n// -------------------------\n// Dividers (basically an hr) within dropdowns and nav lists\n.nav-divider(@color: #e5e5e5) {\n height: 1px;\n margin: ((@line-height-computed / 2) - 1) 0;\n overflow: hidden;\n background-color: @color;\n}\n\n// Panels\n// -------------------------\n.panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) {\n border-color: @border;\n\n & > .panel-heading {\n color: @heading-text-color;\n background-color: @heading-bg-color;\n border-color: @heading-border;\n\n + .panel-collapse .panel-body {\n border-top-color: @border;\n }\n }\n & > .panel-footer {\n + .panel-collapse .panel-body {\n border-bottom-color: @border;\n }\n }\n}\n\n// Alerts\n// -------------------------\n.alert-variant(@background; @border; @text-color) {\n background-color: @background;\n border-color: @border;\n color: @text-color;\n\n hr {\n border-top-color: darken(@border, 5%);\n }\n .alert-link {\n color: darken(@text-color, 10%);\n }\n}\n\n// Tables\n// -------------------------\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n\n// List Groups\n// -------------------------\n.list-group-item-variant(@state; @background; @color) {\n .list-group-item-@{state} {\n color: @color;\n background-color: @background;\n\n a& {\n color: @color;\n\n .list-group-item-heading { color: inherit; }\n\n &:hover,\n &:focus {\n color: @color;\n background-color: darken(@background, 5%);\n }\n &.active,\n &.active:hover,\n &.active:focus {\n color: #fff;\n background-color: @color;\n border-color: @color;\n }\n }\n }\n}\n\n// Button variants\n// -------------------------\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:hover,\n &:focus,\n &:active,\n &.active,\n .open .dropdown-toggle& {\n color: @color;\n background-color: darken(@background, 8%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active,\n .open .dropdown-toggle& {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &:active,\n &.active {\n background-color: @background;\n border-color: @border;\n }\n }\n\n .badge {\n color: @background;\n background-color: @color;\n }\n}\n\n// Button sizes\n// -------------------------\n.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n}\n\n// Pagination\n// -------------------------\n.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @border-radius) {\n > li {\n > a,\n > span {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n }\n &:first-child {\n > a,\n > span {\n .border-left-radius(@border-radius);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius);\n }\n }\n }\n}\n\n// Labels\n// -------------------------\n.label-variant(@color) {\n background-color: @color;\n &[href] {\n &:hover,\n &:focus {\n background-color: darken(@color, 10%);\n }\n }\n}\n\n// Contextual backgrounds\n// -------------------------\n.bg-variant(@color) {\n background-color: @color;\n a&:hover {\n background-color: darken(@color, 10%);\n }\n}\n\n// Typography\n// -------------------------\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover {\n color: darken(@color, 10%);\n }\n}\n\n// Navbar vertical align\n// -------------------------\n// Vertically center elements in the navbar.\n// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.\n.navbar-vertical-align(@element-height) {\n margin-top: ((@navbar-height - @element-height) / 2);\n margin-bottom: ((@navbar-height - @element-height) / 2);\n}\n\n// Progress bars\n// -------------------------\n.progress-bar-variant(@color) {\n background-color: @color;\n .progress-striped & {\n #gradient > .striped();\n }\n}\n\n// Responsive utilities\n// -------------------------\n// More easily include all the states for responsive-utilities.less.\n.responsive-visibility() {\n display: block !important;\n table& { display: table; }\n tr& { display: table-row !important; }\n th&,\n td& { display: table-cell !important; }\n}\n\n.responsive-invisibility() {\n display: none !important;\n}\n\n\n// Grid System\n// -----------\n\n// Centered container element\n.container-fixed() {\n margin-right: auto;\n margin-left: auto;\n padding-left: (@grid-gutter-width / 2);\n padding-right: (@grid-gutter-width / 2);\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-left: (@gutter / -2);\n margin-right: (@gutter / -2);\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n @media (min-width: @screen-xs-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-xs-column-push(@columns) {\n @media (min-width: @screen-xs-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-xs-column-pull(@columns) {\n @media (min-width: @screen-xs-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n\n// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) when (@index = 1) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-left: (@grid-gutter-width / 2);\n padding-right: (@grid-gutter-width / 2);\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) when (@index = 1) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n\n// Form validation states\n//\n// Used in forms.less to generate the form validation CSS for warnings, errors,\n// and successes.\n\n.form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) {\n // Color the label and help text\n .help-block,\n .control-label,\n .radio,\n .checkbox,\n .radio-inline,\n .checkbox-inline {\n color: @text-color;\n }\n // Set the border and box shadow on specific inputs to match\n .form-control {\n border-color: @border-color;\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work\n &:focus {\n border-color: darken(@border-color, 10%);\n @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%);\n .box-shadow(@shadow);\n }\n }\n // Set validation states also for addons\n .input-group-addon {\n color: @text-color;\n border-color: @border-color;\n background-color: @background-color;\n }\n // Optional feedback icon\n .form-control-feedback {\n color: @text-color;\n }\n}\n\n// Form control focus state\n//\n// Generate a customized focus state and for any input with the specified color,\n// which defaults to the `@input-focus-border` variable.\n//\n// We highly encourage you to not customize the default value, but instead use\n// this to tweak colors on an as-needed basis. This aesthetic change is based on\n// WebKit's default styles, but applicable to a wider range of browsers. Its\n// usability and accessibility should be taken into account with any change.\n//\n// Example usage: change the default blue border and shadow to white for better\n// contrast against a dark gray background.\n\n.form-control-focus(@color: @input-border-focus) {\n @color-rgba: rgba(red(@color), green(@color), blue(@color), .6);\n &:focus {\n border-color: @color;\n outline: 0;\n .box-shadow(~\"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}\");\n }\n}\n\n// Form control sizing\n//\n// Relative text size, padding, and border-radii changes for form controls. For\n// horizontal sizing, wrap controls in the predefined grid classes. `<select>`\n// element gets special love because it's special, and that's a fact!\n\n.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n height: @input-height;\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n\n select& {\n height: @input-height;\n line-height: @input-height;\n }\n\n textarea&,\n select[multiple]& {\n height: auto;\n }\n}\n","//\n// Variables\n// --------------------------------------------------\n\n\n//== Colors\n//\n//## Gray and brand colors for use across Bootstrap.\n\n@gray-darker: lighten(#000, 13.5%); // #222\n@gray-dark: lighten(#000, 20%); // #333\n@gray: lighten(#000, 33.5%); // #555\n@gray-light: lighten(#000, 60%); // #999\n@gray-lighter: lighten(#000, 93.5%); // #eee\n\n@brand-primary: #428bca;\n@brand-success: #5cb85c;\n@brand-info: #5bc0de;\n@brand-warning: #f0ad4e;\n@brand-danger: #d9534f;\n\n\n//== Scaffolding\n//\n// ## Settings for some of the most global styles.\n\n//** Background color for `<body>`.\n@body-bg: #fff;\n//** Global text color on `<body>`.\n@text-color: @gray-dark;\n\n//** Global textual link color.\n@link-color: @brand-primary;\n//** Link hover color set via `darken()` function.\n@link-hover-color: darken(@link-color, 15%);\n\n\n//== Typography\n//\n//## Font, line-height, and color for body text, headings, and more.\n\n@font-family-sans-serif: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n@font-family-serif: Georgia, \"Times New Roman\", Times, serif;\n//** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`.\n@font-family-monospace: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n@font-family-base: @font-family-sans-serif;\n\n@font-size-base: 14px;\n@font-size-large: ceil((@font-size-base * 1.25)); // ~18px\n@font-size-small: ceil((@font-size-base * 0.85)); // ~12px\n\n@font-size-h1: floor((@font-size-base * 2.6)); // ~36px\n@font-size-h2: floor((@font-size-base * 2.15)); // ~30px\n@font-size-h3: ceil((@font-size-base * 1.7)); // ~24px\n@font-size-h4: ceil((@font-size-base * 1.25)); // ~18px\n@font-size-h5: @font-size-base;\n@font-size-h6: ceil((@font-size-base * 0.85)); // ~12px\n\n//** Unit-less `line-height` for use in components like buttons.\n@line-height-base: 1.428571429; // 20/14\n//** Computed \"line-height\" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.\n@line-height-computed: floor((@font-size-base * @line-height-base)); // ~20px\n\n//** By default, this inherits from the `<body>`.\n@headings-font-family: inherit;\n@headings-font-weight: 500;\n@headings-line-height: 1.1;\n@headings-color: inherit;\n\n\n//-- Iconography\n//\n//## Specify custom locations of the include Glyphicons icon font. Useful for those including Bootstrap via Bower.\n\n@icon-font-path: \"../fonts/\";\n@icon-font-name: \"glyphicons-halflings-regular\";\n@icon-font-svg-id: \"glyphicons_halflingsregular\";\n\n//== Components\n//\n//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).\n\n@padding-base-vertical: 6px;\n@padding-base-horizontal: 12px;\n\n@padding-large-vertical: 10px;\n@padding-large-horizontal: 16px;\n\n@padding-small-vertical: 5px;\n@padding-small-horizontal: 10px;\n\n@padding-xs-vertical: 1px;\n@padding-xs-horizontal: 5px;\n\n@line-height-large: 1.33;\n@line-height-small: 1.5;\n\n@border-radius-base: 4px;\n@border-radius-large: 6px;\n@border-radius-small: 3px;\n\n//** Global color for active items (e.g., navs or dropdowns).\n@component-active-color: #fff;\n//** Global background color for active items (e.g., navs or dropdowns).\n@component-active-bg: @brand-primary;\n\n//** Width of the `border` for generating carets that indicator dropdowns.\n@caret-width-base: 4px;\n//** Carets increase slightly in size for larger components.\n@caret-width-large: 5px;\n\n\n//== Tables\n//\n//## Customizes the `.table` component with basic values, each used across all table variations.\n\n//** Padding for `<th>`s and `<td>`s.\n@table-cell-padding: 8px;\n//** Padding for cells in `.table-condensed`.\n@table-condensed-cell-padding: 5px;\n\n//** Default background color used for all tables.\n@table-bg: transparent;\n//** Background color used for `.table-striped`.\n@table-bg-accent: #f9f9f9;\n//** Background color used for `.table-hover`.\n@table-bg-hover: #f5f5f5;\n@table-bg-active: @table-bg-hover;\n\n//** Border color for table and cell borders.\n@table-border-color: #ddd;\n\n\n//== Buttons\n//\n//## For each of Bootstrap's buttons, define text, background and border color.\n\n@btn-font-weight: normal;\n\n@btn-default-color: #333;\n@btn-default-bg: #fff;\n@btn-default-border: #ccc;\n\n@btn-primary-color: #fff;\n@btn-primary-bg: @brand-primary;\n@btn-primary-border: darken(@btn-primary-bg, 5%);\n\n@btn-success-color: #fff;\n@btn-success-bg: @brand-success;\n@btn-success-border: darken(@btn-success-bg, 5%);\n\n@btn-info-color: #fff;\n@btn-info-bg: @brand-info;\n@btn-info-border: darken(@btn-info-bg, 5%);\n\n@btn-warning-color: #fff;\n@btn-warning-bg: @brand-warning;\n@btn-warning-border: darken(@btn-warning-bg, 5%);\n\n@btn-danger-color: #fff;\n@btn-danger-bg: @brand-danger;\n@btn-danger-border: darken(@btn-danger-bg, 5%);\n\n@btn-link-disabled-color: @gray-light;\n\n\n//== Forms\n//\n//##\n\n//** `<input>` background color\n@input-bg: #fff;\n//** `<input disabled>` background color\n@input-bg-disabled: @gray-lighter;\n\n//** Text color for `<input>`s\n@input-color: @gray;\n//** `<input>` border color\n@input-border: #ccc;\n//** `<input>` border radius\n@input-border-radius: @border-radius-base;\n//** Border color for inputs on focus\n@input-border-focus: #66afe9;\n\n//** Placeholder text color\n@input-color-placeholder: @gray-light;\n\n//** Default `.form-control` height\n@input-height-base: (@line-height-computed + (@padding-base-vertical * 2) + 2);\n//** Large `.form-control` height\n@input-height-large: (ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2);\n//** Small `.form-control` height\n@input-height-small: (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2);\n\n@legend-color: @gray-dark;\n@legend-border-color: #e5e5e5;\n\n//** Background color for textual input addons\n@input-group-addon-bg: @gray-lighter;\n//** Border color for textual input addons\n@input-group-addon-border-color: @input-border;\n\n\n//== Dropdowns\n//\n//## Dropdown menu container and contents.\n\n//** Background for the dropdown menu.\n@dropdown-bg: #fff;\n//** Dropdown menu `border-color`.\n@dropdown-border: rgba(0,0,0,.15);\n//** Dropdown menu `border-color` **for IE8**.\n@dropdown-fallback-border: #ccc;\n//** Divider color for between dropdown items.\n@dropdown-divider-bg: #e5e5e5;\n\n//** Dropdown link text color.\n@dropdown-link-color: @gray-dark;\n//** Hover color for dropdown links.\n@dropdown-link-hover-color: darken(@gray-dark, 5%);\n//** Hover background for dropdown links.\n@dropdown-link-hover-bg: #f5f5f5;\n\n//** Active dropdown menu item text color.\n@dropdown-link-active-color: @component-active-color;\n//** Active dropdown menu item background color.\n@dropdown-link-active-bg: @component-active-bg;\n\n//** Disabled dropdown menu item background color.\n@dropdown-link-disabled-color: @gray-light;\n\n//** Text color for headers within dropdown menus.\n@dropdown-header-color: @gray-light;\n\n// Note: Deprecated @dropdown-caret-color as of v3.1.0\n@dropdown-caret-color: #000;\n\n\n//-- Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n//\n// Note: These variables are not generated into the Customizer.\n\n@zindex-navbar: 1000;\n@zindex-dropdown: 1000;\n@zindex-popover: 1010;\n@zindex-tooltip: 1030;\n@zindex-navbar-fixed: 1030;\n@zindex-modal-background: 1040;\n@zindex-modal: 1050;\n\n\n//== Media queries breakpoints\n//\n//## Define the breakpoints at which your layout will change, adapting to different screen sizes.\n\n// Extra small screen / phone\n// Note: Deprecated @screen-xs and @screen-phone as of v3.0.1\n@screen-xs: 480px;\n@screen-xs-min: @screen-xs;\n@screen-phone: @screen-xs-min;\n\n// Small screen / tablet\n// Note: Deprecated @screen-sm and @screen-tablet as of v3.0.1\n@screen-sm: 768px;\n@screen-sm-min: @screen-sm;\n@screen-tablet: @screen-sm-min;\n\n// Medium screen / desktop\n// Note: Deprecated @screen-md and @screen-desktop as of v3.0.1\n@screen-md: 992px;\n@screen-md-min: @screen-md;\n@screen-desktop: @screen-md-min;\n\n// Large screen / wide desktop\n// Note: Deprecated @screen-lg and @screen-lg-desktop as of v3.0.1\n@screen-lg: 1200px;\n@screen-lg-min: @screen-lg;\n@screen-lg-desktop: @screen-lg-min;\n\n// So media queries don't overlap when required, provide a maximum\n@screen-xs-max: (@screen-sm-min - 1);\n@screen-sm-max: (@screen-md-min - 1);\n@screen-md-max: (@screen-lg-min - 1);\n\n\n//== Grid system\n//\n//## Define your custom responsive grid.\n\n//** Number of columns in the grid.\n@grid-columns: 12;\n//** Padding between columns. Gets divided in half for the left and right.\n@grid-gutter-width: 30px;\n// Navbar collapse\n//** Point at which the navbar becomes uncollapsed.\n@grid-float-breakpoint: @screen-sm-min;\n//** Point at which the navbar begins collapsing.\n@grid-float-breakpoint-max: (@grid-float-breakpoint - 1);\n\n\n//== Container sizes\n//\n//## Define the maximum width of `.container` for different screen sizes.\n\n// Small screen / tablet\n@container-tablet: ((720px + @grid-gutter-width));\n//** For `@screen-sm-min` and up.\n@container-sm: @container-tablet;\n\n// Medium screen / desktop\n@container-desktop: ((940px + @grid-gutter-width));\n//** For `@screen-md-min` and up.\n@container-md: @container-desktop;\n\n// Large screen / wide desktop\n@container-large-desktop: ((1140px + @grid-gutter-width));\n//** For `@screen-lg-min` and up.\n@container-lg: @container-large-desktop;\n\n\n//== Navbar\n//\n//##\n\n// Basics of a navbar\n@navbar-height: 50px;\n@navbar-margin-bottom: @line-height-computed;\n@navbar-border-radius: @border-radius-base;\n@navbar-padding-horizontal: floor((@grid-gutter-width / 2));\n@navbar-padding-vertical: ((@navbar-height - @line-height-computed) / 2);\n@navbar-collapse-max-height: 340px;\n\n@navbar-default-color: #777;\n@navbar-default-bg: #f8f8f8;\n@navbar-default-border: darken(@navbar-default-bg, 6.5%);\n\n// Navbar links\n@navbar-default-link-color: #777;\n@navbar-default-link-hover-color: #333;\n@navbar-default-link-hover-bg: transparent;\n@navbar-default-link-active-color: #555;\n@navbar-default-link-active-bg: darken(@navbar-default-bg, 6.5%);\n@navbar-default-link-disabled-color: #ccc;\n@navbar-default-link-disabled-bg: transparent;\n\n// Navbar brand label\n@navbar-default-brand-color: @navbar-default-link-color;\n@navbar-default-brand-hover-color: darken(@navbar-default-brand-color, 10%);\n@navbar-default-brand-hover-bg: transparent;\n\n// Navbar toggle\n@navbar-default-toggle-hover-bg: #ddd;\n@navbar-default-toggle-icon-bar-bg: #888;\n@navbar-default-toggle-border-color: #ddd;\n\n\n// Inverted navbar\n// Reset inverted navbar basics\n@navbar-inverse-color: @gray-light;\n@navbar-inverse-bg: #222;\n@navbar-inverse-border: darken(@navbar-inverse-bg, 10%);\n\n// Inverted navbar links\n@navbar-inverse-link-color: @gray-light;\n@navbar-inverse-link-hover-color: #fff;\n@navbar-inverse-link-hover-bg: transparent;\n@navbar-inverse-link-active-color: @navbar-inverse-link-hover-color;\n@navbar-inverse-link-active-bg: darken(@navbar-inverse-bg, 10%);\n@navbar-inverse-link-disabled-color: #444;\n@navbar-inverse-link-disabled-bg: transparent;\n\n// Inverted navbar brand label\n@navbar-inverse-brand-color: @navbar-inverse-link-color;\n@navbar-inverse-brand-hover-color: #fff;\n@navbar-inverse-brand-hover-bg: transparent;\n\n// Inverted navbar toggle\n@navbar-inverse-toggle-hover-bg: #333;\n@navbar-inverse-toggle-icon-bar-bg: #fff;\n@navbar-inverse-toggle-border-color: #333;\n\n\n//== Navs\n//\n//##\n\n//=== Shared nav styles\n@nav-link-padding: 10px 15px;\n@nav-link-hover-bg: @gray-lighter;\n\n@nav-disabled-link-color: @gray-light;\n@nav-disabled-link-hover-color: @gray-light;\n\n@nav-open-link-hover-color: #fff;\n\n//== Tabs\n@nav-tabs-border-color: #ddd;\n\n@nav-tabs-link-hover-border-color: @gray-lighter;\n\n@nav-tabs-active-link-hover-bg: @body-bg;\n@nav-tabs-active-link-hover-color: @gray;\n@nav-tabs-active-link-hover-border-color: #ddd;\n\n@nav-tabs-justified-link-border-color: #ddd;\n@nav-tabs-justified-active-link-border-color: @body-bg;\n\n//== Pills\n@nav-pills-border-radius: @border-radius-base;\n@nav-pills-active-link-hover-bg: @component-active-bg;\n@nav-pills-active-link-hover-color: @component-active-color;\n\n\n//== Pagination\n//\n//##\n\n@pagination-color: @link-color;\n@pagination-bg: #fff;\n@pagination-border: #ddd;\n\n@pagination-hover-color: @link-hover-color;\n@pagination-hover-bg: @gray-lighter;\n@pagination-hover-border: #ddd;\n\n@pagination-active-color: #fff;\n@pagination-active-bg: @brand-primary;\n@pagination-active-border: @brand-primary;\n\n@pagination-disabled-color: @gray-light;\n@pagination-disabled-bg: #fff;\n@pagination-disabled-border: #ddd;\n\n\n//== Pager\n//\n//##\n\n@pager-bg: @pagination-bg;\n@pager-border: @pagination-border;\n@pager-border-radius: 15px;\n\n@pager-hover-bg: @pagination-hover-bg;\n\n@pager-active-bg: @pagination-active-bg;\n@pager-active-color: @pagination-active-color;\n\n@pager-disabled-color: @pagination-disabled-color;\n\n\n//== Jumbotron\n//\n//##\n\n@jumbotron-padding: 30px;\n@jumbotron-color: inherit;\n@jumbotron-bg: @gray-lighter;\n@jumbotron-heading-color: inherit;\n@jumbotron-font-size: ceil((@font-size-base * 1.5));\n\n\n//== Form states and alerts\n//\n//## Define colors for form feedback states and, by default, alerts.\n\n@state-success-text: #3c763d;\n@state-success-bg: #dff0d8;\n@state-success-border: darken(spin(@state-success-bg, -10), 5%);\n\n@state-info-text: #31708f;\n@state-info-bg: #d9edf7;\n@state-info-border: darken(spin(@state-info-bg, -10), 7%);\n\n@state-warning-text: #8a6d3b;\n@state-warning-bg: #fcf8e3;\n@state-warning-border: darken(spin(@state-warning-bg, -10), 5%);\n\n@state-danger-text: #a94442;\n@state-danger-bg: #f2dede;\n@state-danger-border: darken(spin(@state-danger-bg, -10), 5%);\n\n\n//== Tooltips\n//\n//##\n\n//** Tooltip max width\n@tooltip-max-width: 200px;\n//** Tooltip text color\n@tooltip-color: #fff;\n//** Tooltip background color\n@tooltip-bg: #000;\n@tooltip-opacity: .9;\n\n//** Tooltip arrow width\n@tooltip-arrow-width: 5px;\n//** Tooltip arrow color\n@tooltip-arrow-color: @tooltip-bg;\n\n\n//== Popovers\n//\n//##\n\n//** Popover body background color\n@popover-bg: #fff;\n//** Popover maximum width\n@popover-max-width: 276px;\n//** Popover border color\n@popover-border-color: rgba(0,0,0,.2);\n//** Popover fallback border color\n@popover-fallback-border-color: #ccc;\n\n//** Popover title background color\n@popover-title-bg: darken(@popover-bg, 3%);\n\n//** Popover arrow width\n@popover-arrow-width: 10px;\n//** Popover arrow color\n@popover-arrow-color: #fff;\n\n//** Popover outer arrow width\n@popover-arrow-outer-width: (@popover-arrow-width + 1);\n//** Popover outer arrow color\n@popover-arrow-outer-color: fadein(@popover-border-color, 5%);\n//** Popover outer arrow fallback color\n@popover-arrow-outer-fallback-color: darken(@popover-fallback-border-color, 20%);\n\n\n//== Labels\n//\n//##\n\n//** Default label background color\n@label-default-bg: @gray-light;\n//** Primary label background color\n@label-primary-bg: @brand-primary;\n//** Success label background color\n@label-success-bg: @brand-success;\n//** Info label background color\n@label-info-bg: @brand-info;\n//** Warning label background color\n@label-warning-bg: @brand-warning;\n//** Danger label background color\n@label-danger-bg: @brand-danger;\n\n//** Default label text color\n@label-color: #fff;\n//** Default text color of a linked label\n@label-link-hover-color: #fff;\n\n\n//== Modals\n//\n//##\n\n//** Padding applied to the modal body\n@modal-inner-padding: 20px;\n\n//** Padding applied to the modal title\n@modal-title-padding: 15px;\n//** Modal title line-height\n@modal-title-line-height: @line-height-base;\n\n//** Background color of modal content area\n@modal-content-bg: #fff;\n//** Modal content border color\n@modal-content-border-color: rgba(0,0,0,.2);\n//** Modal content border color **for IE8**\n@modal-content-fallback-border-color: #999;\n\n//** Modal backdrop background color\n@modal-backdrop-bg: #000;\n//** Modal backdrop opacity\n@modal-backdrop-opacity: .5;\n//** Modal header border color\n@modal-header-border-color: #e5e5e5;\n//** Modal footer border color\n@modal-footer-border-color: @modal-header-border-color;\n\n@modal-lg: 900px;\n@modal-md: 600px;\n@modal-sm: 300px;\n\n\n//== Alerts\n//\n//## Define alert colors, border radius, and padding.\n\n@alert-padding: 15px;\n@alert-border-radius: @border-radius-base;\n@alert-link-font-weight: bold;\n\n@alert-success-bg: @state-success-bg;\n@alert-success-text: @state-success-text;\n@alert-success-border: @state-success-border;\n\n@alert-info-bg: @state-info-bg;\n@alert-info-text: @state-info-text;\n@alert-info-border: @state-info-border;\n\n@alert-warning-bg: @state-warning-bg;\n@alert-warning-text: @state-warning-text;\n@alert-warning-border: @state-warning-border;\n\n@alert-danger-bg: @state-danger-bg;\n@alert-danger-text: @state-danger-text;\n@alert-danger-border: @state-danger-border;\n\n\n//== Progress bars\n//\n//##\n\n//** Background color of the whole progress component\n@progress-bg: #f5f5f5;\n//** Progress bar text color\n@progress-bar-color: #fff;\n\n//** Default progress bar color\n@progress-bar-bg: @brand-primary;\n//** Success progress bar color\n@progress-bar-success-bg: @brand-success;\n//** Warning progress bar color\n@progress-bar-warning-bg: @brand-warning;\n//** Danger progress bar color\n@progress-bar-danger-bg: @brand-danger;\n//** Info progress bar color\n@progress-bar-info-bg: @brand-info;\n\n\n//== List group\n//\n//##\n\n//** Background color on `.list-group-item`\n@list-group-bg: #fff;\n//** `.list-group-item` border color\n@list-group-border: #ddd;\n//** List group border radius\n@list-group-border-radius: @border-radius-base;\n\n//** Background color of single list elements on hover\n@list-group-hover-bg: #f5f5f5;\n//** Text color of active list elements\n@list-group-active-color: @component-active-color;\n//** Background color of active list elements\n@list-group-active-bg: @component-active-bg;\n//** Border color of active list elements\n@list-group-active-border: @list-group-active-bg;\n@list-group-active-text-color: lighten(@list-group-active-bg, 40%);\n\n@list-group-link-color: #555;\n@list-group-link-heading-color: #333;\n\n\n//== Panels\n//\n//##\n\n@panel-bg: #fff;\n@panel-body-padding: 15px;\n@panel-border-radius: @border-radius-base;\n\n//** Border color for elements within panels\n@panel-inner-border: #ddd;\n@panel-footer-bg: #f5f5f5;\n\n@panel-default-text: @gray-dark;\n@panel-default-border: #ddd;\n@panel-default-heading-bg: #f5f5f5;\n\n@panel-primary-text: #fff;\n@panel-primary-border: @brand-primary;\n@panel-primary-heading-bg: @brand-primary;\n\n@panel-success-text: @state-success-text;\n@panel-success-border: @state-success-border;\n@panel-success-heading-bg: @state-success-bg;\n\n@panel-info-text: @state-info-text;\n@panel-info-border: @state-info-border;\n@panel-info-heading-bg: @state-info-bg;\n\n@panel-warning-text: @state-warning-text;\n@panel-warning-border: @state-warning-border;\n@panel-warning-heading-bg: @state-warning-bg;\n\n@panel-danger-text: @state-danger-text;\n@panel-danger-border: @state-danger-border;\n@panel-danger-heading-bg: @state-danger-bg;\n\n\n//== Thumbnails\n//\n//##\n\n//** Padding around the thumbnail image\n@thumbnail-padding: 4px;\n//** Thumbnail background color\n@thumbnail-bg: @body-bg;\n//** Thumbnail border color\n@thumbnail-border: #ddd;\n//** Thumbnail border radius\n@thumbnail-border-radius: @border-radius-base;\n\n//** Custom text color for thumbnail captions\n@thumbnail-caption-color: @text-color;\n//** Padding around the thumbnail caption\n@thumbnail-caption-padding: 9px;\n\n\n//== Wells\n//\n//##\n\n@well-bg: #f5f5f5;\n@well-border: darken(@well-bg, 7%);\n\n\n//== Badges\n//\n//##\n\n@badge-color: #fff;\n//** Linked badge text color on hover\n@badge-link-hover-color: #fff;\n@badge-bg: @gray-light;\n\n//** Badge text color in active nav link\n@badge-active-color: @link-color;\n//** Badge background color in active nav link\n@badge-active-bg: #fff;\n\n@badge-font-weight: bold;\n@badge-line-height: 1;\n@badge-border-radius: 10px;\n\n\n//== Breadcrumbs\n//\n//##\n\n@breadcrumb-padding-vertical: 8px;\n@breadcrumb-padding-horizontal: 15px;\n//** Breadcrumb background color\n@breadcrumb-bg: #f5f5f5;\n//** Breadcrumb text color\n@breadcrumb-color: #ccc;\n//** Text color of current page in the breadcrumb\n@breadcrumb-active-color: @gray-light;\n//** Textual separator for between breadcrumb elements\n@breadcrumb-separator: \"/\";\n\n\n//== Carousel\n//\n//##\n\n@carousel-text-shadow: 0 1px 2px rgba(0,0,0,.6);\n\n@carousel-control-color: #fff;\n@carousel-control-width: 15%;\n@carousel-control-opacity: .5;\n@carousel-control-font-size: 20px;\n\n@carousel-indicator-active-bg: #fff;\n@carousel-indicator-border-color: #fff;\n\n@carousel-caption-color: #fff;\n\n\n//== Close\n//\n//##\n\n@close-font-weight: bold;\n@close-color: #000;\n@close-text-shadow: 0 1px 0 #fff;\n\n\n//== Code\n//\n//##\n\n@code-color: #c7254e;\n@code-bg: #f9f2f4;\n\n@kbd-color: #fff;\n@kbd-bg: #333;\n\n@pre-bg: #f5f5f5;\n@pre-color: @gray-dark;\n@pre-border-color: #ccc;\n@pre-scrollable-max-height: 340px;\n\n\n//== Type\n//\n//##\n\n//** Text muted color\n@text-muted: @gray-light;\n//** Abbreviations and acronyms border color\n@abbr-border-color: @gray-light;\n//** Headings small color\n@headings-small-color: @gray-light;\n//** Blockquote small color\n@blockquote-small-color: @gray-light;\n//** Blockquote font size\n@blockquote-font-size: (@font-size-base * 1.25);\n//** Blockquote border color\n@blockquote-border-color: @gray-lighter;\n//** Page header border color\n@page-header-border-color: @gray-lighter;\n\n\n//== Miscellaneous\n//\n//##\n\n//** Horizontal line color.\n@hr-border: @gray-lighter;\n\n//** Horizontal offset for forms and lists.\n@component-offset-horizontal: 180px;\n","//\n// Thumbnails\n// --------------------------------------------------\n\n\n// Mixin and adjust the regular image class\n.thumbnail {\n display: block;\n padding: @thumbnail-padding;\n margin-bottom: @line-height-computed;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n > img,\n a > img {\n &:extend(.img-responsive);\n margin-left: auto;\n margin-right: auto;\n }\n\n // Add a hover state for linked versions only\n a&:hover,\n a&:focus,\n a&.active {\n border-color: @link-color;\n }\n\n // Image captions\n .caption {\n padding: @thumbnail-caption-padding;\n color: @thumbnail-caption-color;\n }\n}\n","//\n// Carousel\n// --------------------------------------------------\n\n\n// Wrapper for the slide container and indicators\n.carousel {\n position: relative;\n}\n\n.carousel-inner {\n position: relative;\n overflow: hidden;\n width: 100%;\n\n > .item {\n display: none;\n position: relative;\n .transition(.6s ease-in-out left);\n\n // Account for jankitude on images\n > img,\n > a > img {\n &:extend(.img-responsive);\n line-height: 1;\n }\n }\n\n > .active,\n > .next,\n > .prev { display: block; }\n\n > .active {\n left: 0;\n }\n\n > .next,\n > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n }\n\n > .next {\n left: 100%;\n }\n > .prev {\n left: -100%;\n }\n > .next.left,\n > .prev.right {\n left: 0;\n }\n\n > .active.left {\n left: -100%;\n }\n > .active.right {\n left: 100%;\n }\n\n}\n\n// Left/right controls for nav\n// ---------------------------\n\n.carousel-control {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: @carousel-control-width;\n .opacity(@carousel-control-opacity);\n font-size: @carousel-control-font-size;\n color: @carousel-control-color;\n text-align: center;\n text-shadow: @carousel-text-shadow;\n // We can't have this transition here because WebKit cancels the carousel\n // animation if you trip this while in the middle of another animation.\n\n // Set gradients for backgrounds\n &.left {\n #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001));\n }\n &.right {\n left: auto;\n right: 0;\n #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5));\n }\n\n // Hover/focus state\n &:hover,\n &:focus {\n outline: none;\n color: @carousel-control-color;\n text-decoration: none;\n .opacity(.9);\n }\n\n // Toggles\n .icon-prev,\n .icon-next,\n .glyphicon-chevron-left,\n .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n }\n .icon-prev,\n .glyphicon-chevron-left {\n left: 50%;\n }\n .icon-next,\n .glyphicon-chevron-right {\n right: 50%;\n }\n .icon-prev,\n .icon-next {\n width: 20px;\n height: 20px;\n margin-top: -10px;\n margin-left: -10px;\n font-family: serif;\n }\n\n .icon-prev {\n &:before {\n content: '\\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039)\n }\n }\n .icon-next {\n &:before {\n content: '\\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A)\n }\n }\n}\n\n// Optional indicator pips\n//\n// Add an unordered list with the following class and add a list item for each\n// slide your carousel holds.\n\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n margin-left: -30%;\n padding-left: 0;\n list-style: none;\n text-align: center;\n\n li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n border: 1px solid @carousel-indicator-border-color;\n border-radius: 10px;\n cursor: pointer;\n\n // IE8-9 hack for event handling\n //\n // Internet Explorer 8-9 does not support clicks on elements without a set\n // `background-color`. We cannot use `filter` since that's not viewed as a\n // background color by the browser. Thus, a hack is needed.\n //\n // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we\n // set alpha transparency for the best results possible.\n background-color: #000 \\9; // IE8\n background-color: rgba(0,0,0,0); // IE9\n }\n .active {\n margin: 0;\n width: 12px;\n height: 12px;\n background-color: @carousel-indicator-active-bg;\n }\n}\n\n// Optional captions\n// -----------------------------\n// Hidden by default for smaller viewports\n.carousel-caption {\n position: absolute;\n left: 15%;\n right: 15%;\n bottom: 20px;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: @carousel-caption-color;\n text-align: center;\n text-shadow: @carousel-text-shadow;\n & .btn {\n text-shadow: none; // No shadow for button elements in carousel-caption\n }\n}\n\n\n// Scale up controls for tablets and up\n@media screen and (min-width: @screen-sm-min) {\n\n // Scale up the controls a smidge\n .carousel-control {\n .glyphicon-chevron-left,\n .glyphicon-chevron-right,\n .icon-prev,\n .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -15px;\n margin-left: -15px;\n font-size: 30px;\n }\n }\n\n // Show and left align the captions\n .carousel-caption {\n left: 20%;\n right: 20%;\n padding-bottom: 30px;\n }\n\n // Move up the indicators\n .carousel-indicators {\n bottom: 20px;\n }\n}\n","//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: normal;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 200;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: 14px base font * 85% = about 12px\nsmall,\n.small { font-size: 85%; }\n\n// Undo browser default styling\ncite { font-style: normal; }\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// --------------------------------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n@media (min-width: @grid-float-breakpoint) {\n .dl-horizontal {\n dt {\n float: left;\n width: (@component-offset-horizontal - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @component-offset-horizontal;\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n }\n}\n\n// MISC\n// ----\n\n// Abbreviations and acronyms\nabbr[title],\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted @abbr-border-color;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: '\\2014 \\00A0'; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n text-align: right;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: ''; }\n &:after {\n content: '\\00A0 \\2014'; // nbsp, em dash\n }\n }\n}\n\n// Quotes\nblockquote:before,\nblockquote:after {\n content: \"\";\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n","//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n white-space: nowrap;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n word-break: break-all;\n word-wrap: break-word;\n color: @pre-color;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n max-width: 100%;\n background-color: @table-bg;\n}\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-child(odd) {\n > td,\n > th {\n background-color: @table-bg-accent;\n }\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n > td,\n > th {\n background-color: @table-bg-hover;\n }\n }\n}\n\n\n// Table cell sizing\n//\n// Reset default table behavior\n\ntable col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-column;\n}\ntable {\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-cell;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n@media (max-width: @screen-xs-max) {\n .table-responsive {\n width: 100%;\n margin-bottom: (@line-height-computed * 0.75);\n overflow-y: hidden;\n overflow-x: scroll;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n -webkit-overflow-scrolling: touch;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n","//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n // Chrome and Firefox set a `min-width: -webkit-min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\n// Override content-box in Normalize (* isn't specific enough)\ninput[type=\"search\"] {\n .box-sizing(border-box);\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; /* IE8-9 */\n line-height: normal;\n}\n\n// Set the height of file controls to match text inputs\ninput[type=\"file\"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type=\"text\"]\n// input[type=\"password\"]\n// input[type=\"datetime\"]\n// input[type=\"datetime-local\"]\n// input[type=\"date\"]\n// input[type=\"month\"]\n// input[type=\"time\"]\n// input[type=\"week\"]\n// input[type=\"number\"]\n// input[type=\"email\"]\n// input[type=\"url\"]\n// input[type=\"search\"]\n// input[type=\"tel\"]\n// input[type=\"color\"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius;\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));\n .transition(~\"border-color ease-in-out .15s, box-shadow ease-in-out .15s\");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Disabled and read-only inputs\n //\n // HTML5 says that controls under a fieldset > legend:first-child won't be\n // disabled if the fieldset is disabled. Due to implementation difficulty, we\n // don't honor that edge case; we style them as disabled anyway.\n &[disabled],\n &[readonly],\n fieldset[disabled] & {\n cursor: not-allowed;\n background-color: @input-bg-disabled;\n opacity: 1; // iOS fix for unreadable disabled content\n }\n\n // Reset height for `textarea`s\n textarea& {\n height: auto;\n }\n}\n\n\n// Search inputs in iOS\n//\n// This overrides the extra rounded corners on search inputs in iOS so that our\n// `.form-control` class can properly style them. Note that this cannot simply\n// be added to `.form-control` as it's not specific enough. For details, see\n// https://github.com/twbs/bootstrap/issues/11586.\n\ninput[type=\"search\"] {\n -webkit-appearance: none;\n}\n\n\n// Special styles for iOS date input\n//\n// In Mobile Safari, date inputs require a pixel line-height that matches the\n// given height of the input.\n\ninput[type=\"date\"] {\n line-height: @input-height-base;\n}\n\n\n// Form groups\n//\n// Designed to help with the organization and spacing of vertical forms. For\n// horizontal forms, use the predefined grid classes.\n\n.form-group {\n margin-bottom: 15px;\n}\n\n\n// Checkboxes and radios\n//\n// Indent the labels to position radios/checkboxes as hanging controls.\n\n.radio,\n.checkbox {\n display: block;\n min-height: @line-height-computed; // clear the floating input if there is no label text\n margin-top: 10px;\n margin-bottom: 10px;\n padding-left: 20px;\n label {\n display: inline;\n font-weight: normal;\n cursor: pointer;\n }\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n float: left;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing\n}\n\n// Radios and checkboxes on same line\n.radio-inline,\n.checkbox-inline {\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px; // space out consecutive inline controls\n}\n\n// Apply same disabled cursor tweak as for inputs\n//\n// Note: Neither radios nor checkboxes can be readonly.\ninput[type=\"radio\"],\ninput[type=\"checkbox\"],\n.radio,\n.radio-inline,\n.checkbox,\n.checkbox-inline {\n &[disabled],\n fieldset[disabled] & {\n cursor: not-allowed;\n }\n}\n\n\n// Form control sizing\n//\n// Build on `.form-control` with modifier classes to decrease or increase the\n// height and font-size of form controls.\n\n.input-sm {\n .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n\n.input-lg {\n .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);\n}\n\n\n// Form control feedback states\n//\n// Apply contextual and semantic states to individual form controls.\n\n.has-feedback {\n // Enable absolute positioning\n position: relative;\n\n // Ensure icons don't overlap text\n .form-control {\n padding-right: (@input-height-base * 1.25);\n }\n\n // Feedback icon (requires .glyphicon classes)\n .form-control-feedback {\n position: absolute;\n top: (@line-height-computed + 5); // Height of the `label` and its margin\n right: 0;\n display: block;\n width: @input-height-base;\n height: @input-height-base;\n line-height: @input-height-base;\n text-align: center;\n }\n}\n\n// Feedback states\n.has-success {\n .form-control-validation(@state-success-text; @state-success-text; @state-success-bg);\n}\n.has-warning {\n .form-control-validation(@state-warning-text; @state-warning-text; @state-warning-bg);\n}\n.has-error {\n .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg);\n}\n\n\n// Static form control text\n//\n// Apply class to a `p` element to make any string of text align with labels in\n// a horizontal form layout.\n\n.form-control-static {\n margin-bottom: 0; // Remove default margin from `p`\n}\n\n\n// Help text\n//\n// Apply to any element you wish to create light text for placement immediately\n// below a form control. Use for general help, formatting, or instructional text.\n\n.help-block {\n display: block; // account for any element using help-block\n margin-top: 5px;\n margin-bottom: 10px;\n color: lighten(@text-color, 25%); // lighten the text some for contrast\n}\n\n\n\n// Inline forms\n//\n// Make forms appear inline(-block) by adding the `.form-inline` class. Inline\n// forms begin stacked on extra small (mobile) devices and then go inline when\n// viewports reach <768px.\n//\n// Requires wrapping inputs and labels with `.form-group` for proper display of\n// default HTML form controls and our custom form controls (e.g., input groups).\n//\n// Heads up! This is mixin-ed into `.navbar-form` in navbars.less.\n\n.form-inline {\n\n // Kick in the inline\n @media (min-width: @screen-sm-min) {\n // Inline-block all the things for \"inline\"\n .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n\n // In navbar-form, allow folks to *not* use `.form-group`\n .form-control {\n display: inline-block;\n width: auto; // Prevent labels from stacking above inputs in `.form-group`\n vertical-align: middle;\n }\n // Input groups need that 100% width though\n .input-group > .form-control {\n width: 100%;\n }\n\n .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n\n // Remove default margin on radios/checkboxes that were used for stacking, and\n // then undo the floating of radios and checkboxes to match (which also avoids\n // a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969).\n .radio,\n .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 0;\n vertical-align: middle;\n }\n .radio input[type=\"radio\"],\n .checkbox input[type=\"checkbox\"] {\n float: none;\n margin-left: 0;\n }\n\n // Validation states\n //\n // Reposition the icon because it's now within a grid column and columns have\n // `position: relative;` on them. Also accounts for the grid gutter padding.\n .has-feedback .form-control-feedback {\n top: 0;\n }\n }\n}\n\n\n// Horizontal forms\n//\n// Horizontal forms are built on grid classes and allow you to create forms with\n// labels on the left and inputs on the right.\n\n.form-horizontal {\n\n // Consistent vertical alignment of labels, radios, and checkboxes\n .control-label,\n .radio,\n .checkbox,\n .radio-inline,\n .checkbox-inline {\n margin-top: 0;\n margin-bottom: 0;\n padding-top: (@padding-base-vertical + 1); // Default padding plus a border\n }\n // Account for padding we're adding to ensure the alignment and of help text\n // and other content below items\n .radio,\n .checkbox {\n min-height: (@line-height-computed + (@padding-base-vertical + 1));\n }\n\n // Make form groups behave like rows\n .form-group {\n .make-row();\n }\n\n .form-control-static {\n padding-top: (@padding-base-vertical + 1);\n }\n\n // Only right align form labels here when the columns stop stacking\n @media (min-width: @screen-sm-min) {\n .control-label {\n text-align: right;\n }\n }\n\n // Validation states\n //\n // Reposition the icon because it's now within a grid column and columns have\n // `position: relative;` on them. Also accounts for the grid gutter padding.\n .has-feedback .form-control-feedback {\n top: 0;\n right: (@grid-gutter-width / 2);\n }\n}\n","//\n// Buttons\n// --------------------------------------------------\n\n\n// Base styles\n// --------------------------------------------------\n\n.btn {\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: @btn-font-weight;\n text-align: center;\n vertical-align: middle;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base);\n .user-select(none);\n\n &,\n &:active,\n &.active {\n &:focus {\n .tab-focus();\n }\n }\n\n &:hover,\n &:focus {\n color: @btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: not-allowed;\n pointer-events: none; // Future-proof disabling of clicks\n .opacity(.65);\n .box-shadow(none);\n }\n}\n\n\n// Alternate buttons\n// --------------------------------------------------\n\n.btn-default {\n .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);\n}\n.btn-primary {\n .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);\n}\n// Success appears as green\n.btn-success {\n .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);\n}\n// Info appears as blue-green\n.btn-info {\n .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);\n}\n// Warning appears as orange\n.btn-warning {\n .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);\n}\n// Danger and error appear as red\n.btn-danger {\n .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);\n}\n\n\n// Link buttons\n// -------------------------\n\n// Make a button look and behave like a link\n.btn-link {\n color: @link-color;\n font-weight: normal;\n cursor: pointer;\n border-radius: 0;\n\n &,\n &:active,\n &[disabled],\n fieldset[disabled] & {\n background-color: transparent;\n .box-shadow(none);\n }\n &,\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: underline;\n background-color: transparent;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @btn-link-disabled-color;\n text-decoration: none;\n }\n }\n}\n\n\n// Button Sizes\n// --------------------------------------------------\n\n.btn-lg {\n // line-height: ensure even-numbered height of button next to large input\n .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);\n}\n.btn-sm {\n // line-height: ensure proper height of button next to small input\n .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n.btn-xs {\n .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n\n\n// Block button\n// --------------------------------------------------\n\n.btn-block {\n display: block;\n width: 100%;\n padding-left: 0;\n padding-right: 0;\n}\n\n// Vertically space out multiple block buttons\n.btn-block + .btn-block {\n margin-top: 5px;\n}\n\n// Specificity overrides\ninput[type=\"submit\"],\ninput[type=\"reset\"],\ninput[type=\"button\"] {\n &.btn-block {\n width: 100%;\n }\n}\n","//\n// Button groups\n// --------------------------------------------------\n\n// Make the div behave like a button\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle; // match .btn alignment given font-size hack above\n > .btn {\n position: relative;\n float: left;\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active,\n &.active {\n z-index: 2;\n }\n &:focus {\n // Remove focus outline when dropdown JS adds it after closing the menu\n outline: none;\n }\n }\n}\n\n// Prevent double borders when buttons are next to each other\n.btn-group {\n .btn + .btn,\n .btn + .btn-group,\n .btn-group + .btn,\n .btn-group + .btn-group {\n margin-left: -1px;\n }\n}\n\n// Optional: Group multiple button groups together for a toolbar\n.btn-toolbar {\n margin-left: -5px; // Offset the first child's margin\n &:extend(.clearfix all);\n\n .btn-group,\n .input-group {\n float: left;\n }\n > .btn,\n > .btn-group,\n > .input-group {\n margin-left: 5px;\n }\n}\n\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n\n// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match\n.btn-group > .btn:first-child {\n margin-left: 0;\n &:not(:last-child):not(.dropdown-toggle) {\n .border-right-radius(0);\n }\n}\n// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n .border-left-radius(0);\n}\n\n// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-right-radius(0);\n }\n}\n.btn-group > .btn-group:last-child > .btn:first-child {\n .border-left-radius(0);\n}\n\n// On active and open, don't show outline\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n\n\n// Sizing\n//\n// Remix the default button sizing classes into new ones for easier manipulation.\n\n.btn-group-xs > .btn { &:extend(.btn-xs); }\n.btn-group-sm > .btn { &:extend(.btn-sm); }\n.btn-group-lg > .btn { &:extend(.btn-lg); }\n\n\n// Split button dropdowns\n// ----------------------\n\n// Give the line between buttons some depth\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n\n// The clickable button for toggling the menu\n// Remove the gradient and set the same inset shadow as the :active state\n.btn-group.open .dropdown-toggle {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n\n // Show no shadow for `.btn-link` since it has no other button styles.\n &.btn-link {\n .box-shadow(none);\n }\n}\n\n\n// Reposition the caret\n.btn .caret {\n margin-left: 0;\n}\n// Carets in other button sizes\n.btn-lg .caret {\n border-width: @caret-width-large @caret-width-large 0;\n border-bottom-width: 0;\n}\n// Upside down carets for .dropup\n.dropup .btn-lg .caret {\n border-width: 0 @caret-width-large @caret-width-large;\n}\n\n\n// Vertical button groups\n// ----------------------\n\n.btn-group-vertical {\n > .btn,\n > .btn-group,\n > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n }\n\n // Clear floats so dropdown menus can be properly placed\n > .btn-group {\n &:extend(.clearfix all);\n > .btn {\n float: none;\n }\n }\n\n > .btn + .btn,\n > .btn + .btn-group,\n > .btn-group + .btn,\n > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n }\n}\n\n.btn-group-vertical > .btn {\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n &:first-child:not(:last-child) {\n border-top-right-radius: @border-radius-base;\n .border-bottom-radius(0);\n }\n &:last-child:not(:first-child) {\n border-bottom-left-radius: @border-radius-base;\n .border-top-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-bottom-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-top-radius(0);\n}\n\n\n\n// Justified button groups\n// ----------------------\n\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n > .btn,\n > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n }\n > .btn-group .btn {\n width: 100%;\n }\n}\n\n\n// Checkbox and radio options\n[data-toggle=\"buttons\"] > .btn > input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn > input[type=\"checkbox\"] {\n display: none;\n}\n","//\n// Component animations\n// --------------------------------------------------\n\n// Heads up!\n//\n// We don't use the `.opacity()` mixin here since it causes a bug with text\n// fields in IE7-8. Source: https://github.com/twitter/bootstrap/pull/3552.\n\n.fade {\n opacity: 0;\n .transition(opacity .15s linear);\n &.in {\n opacity: 1;\n }\n}\n\n.collapse {\n display: none;\n &.in {\n display: block;\n }\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n .transition(height .35s ease);\n}\n","//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// <a href=\"#\"><span class=\"glyphicon glyphicon-star\"></span> Star</a>\n\n// Import the fonts\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: ~\"url('@{icon-font-path}@{icon-font-name}.eot')\";\n src: ~\"url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype')\",\n ~\"url('@{icon-font-path}@{icon-font-name}.woff') format('woff')\",\n ~\"url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype')\",\n ~\"url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg')\";\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\2a\"; } }\n.glyphicon-plus { &:before { content: \"\\2b\"; } }\n.glyphicon-euro { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n","//\n// Dropdown menus\n// --------------------------------------------------\n\n\n// Dropdown arrow/caret\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: @caret-width-base solid;\n border-right: @caret-width-base solid transparent;\n border-left: @caret-width-base solid transparent;\n}\n\n// The dropdown wrapper (div)\n.dropdown {\n position: relative;\n}\n\n// Prevent the focus on the dropdown toggle when closing dropdowns\n.dropdown-toggle:focus {\n outline: 0;\n}\n\n// The dropdown menu (ul)\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindex-dropdown;\n display: none; // none by default, but block on \"open\" of the menu\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0; // override default ul\n list-style: none;\n font-size: @font-size-base;\n background-color: @dropdown-bg;\n border: 1px solid @dropdown-fallback-border; // IE8 fallback\n border: 1px solid @dropdown-border;\n border-radius: @border-radius-base;\n .box-shadow(0 6px 12px rgba(0,0,0,.175));\n background-clip: padding-box;\n\n // Aligns the dropdown menu to right\n //\n // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]`\n &.pull-right {\n right: 0;\n left: auto;\n }\n\n // Dividers (basically an hr) within the dropdown\n .divider {\n .nav-divider(@dropdown-divider-bg);\n }\n\n // Links within the dropdown menu\n > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: @line-height-base;\n color: @dropdown-link-color;\n white-space: nowrap; // prevent links from randomly breaking onto new lines\n }\n}\n\n// Hover/Focus state\n.dropdown-menu > li > a {\n &:hover,\n &:focus {\n text-decoration: none;\n color: @dropdown-link-hover-color;\n background-color: @dropdown-link-hover-bg;\n }\n}\n\n// Active state\n.dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-active-color;\n text-decoration: none;\n outline: 0;\n background-color: @dropdown-link-active-bg;\n }\n}\n\n// Disabled state\n//\n// Gray out text and ensure the hover/focus state remains gray\n\n.dropdown-menu > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-disabled-color;\n }\n}\n// Nuke hover/focus effects\n.dropdown-menu > .disabled > a {\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none; // Remove CSS gradient\n .reset-filter();\n cursor: not-allowed;\n }\n}\n\n// Open state for the dropdown\n.open {\n // Show the menu\n > .dropdown-menu {\n display: block;\n }\n\n // Remove the outline when :focus is triggered\n > a {\n outline: 0;\n }\n}\n\n// Menu positioning\n//\n// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown\n// menu with the parent.\n.dropdown-menu-right {\n left: auto; // Reset the default from `.dropdown-menu`\n right: 0;\n}\n// With v3, we enabled auto-flipping if you have a dropdown within a right\n// aligned nav component. To enable the undoing of that, we provide an override\n// to restore the default dropdown menu alignment.\n//\n// This is only for left-aligning a dropdown menu within a `.navbar-right` or\n// `.pull-right` nav component.\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n\n// Dropdown section headers\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: @font-size-small;\n line-height: @line-height-base;\n color: @dropdown-header-color;\n}\n\n// Backdrop to catch body clicks on mobile, etc.\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: (@zindex-dropdown - 10);\n}\n\n// Right aligned dropdowns\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\n//\n// Just add .dropup after the standard .dropdown class and you're set, bro.\n// TODO: abstract this so that the navbar fixed styles are not placed here?\n\n.dropup,\n.navbar-fixed-bottom .dropdown {\n // Reverse the caret\n .caret {\n border-top: 0;\n border-bottom: @caret-width-base solid;\n content: \"\";\n }\n // Different positioning for bottom up menu\n .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 1px;\n }\n}\n\n\n// Component alignment\n//\n// Reiterate per navbar.less and the modified component alignment there.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-right {\n .dropdown-menu {\n .dropdown-menu-right();\n }\n // Necessary for overrides of the default right aligned menu.\n // Will remove come v4 in all likelihood.\n .dropdown-menu-left {\n .dropdown-menu-left();\n }\n }\n}\n\n","//\n// Input groups\n// --------------------------------------------------\n\n// Base styles\n// -------------------------\n.input-group {\n position: relative; // For dropdowns\n display: table;\n border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table\n\n // Undo padding and float of grid classes\n &[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n }\n\n .form-control {\n // Ensure that the input is always above the *appended* addon button for\n // proper border colors.\n position: relative;\n z-index: 2;\n\n // IE9 fubars the placeholder attribute in text inputs and the arrows on\n // select elements in input groups. To fix it, we float the input. Details:\n // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855\n float: left;\n\n width: 100%;\n margin-bottom: 0;\n }\n}\n\n// Sizing options\n//\n// Remix the default form control sizing classes into new ones for easier\n// manipulation.\n\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn { .input-lg(); }\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn { .input-sm(); }\n\n\n// Display as table-cell\n// -------------------------\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n}\n// Addon and addon wrapper for buttons\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle; // Match the inputs\n}\n\n// Text input groups\n// -------------------------\n.input-group-addon {\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n font-weight: normal;\n line-height: 1;\n color: @input-color;\n text-align: center;\n background-color: @input-group-addon-bg;\n border: 1px solid @input-group-addon-border-color;\n border-radius: @border-radius-base;\n\n // Sizing\n &.input-sm {\n padding: @padding-small-vertical @padding-small-horizontal;\n font-size: @font-size-small;\n border-radius: @border-radius-small;\n }\n &.input-lg {\n padding: @padding-large-vertical @padding-large-horizontal;\n font-size: @font-size-large;\n border-radius: @border-radius-large;\n }\n\n // Nuke default margins from checkboxes and radios to vertically center within.\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin-top: 0;\n }\n}\n\n// Reset rounded corners\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n .border-right-radius(0);\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n .border-left-radius(0);\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n\n// Button input groups\n// -------------------------\n.input-group-btn {\n position: relative;\n // Jankily prevent input button groups from wrapping with `white-space` and\n // `font-size` in combination with `inline-block` on buttons.\n font-size: 0;\n white-space: nowrap;\n\n // Negative margin for spacing, position for bringing hovered/focused/actived\n // element above the siblings.\n > .btn {\n position: relative;\n + .btn {\n margin-left: -1px;\n }\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n }\n\n // Negative margin to only have a 1px border between the two\n &:first-child {\n > .btn,\n > .btn-group {\n margin-right: -1px;\n }\n }\n &:last-child {\n > .btn,\n > .btn-group {\n margin-left: -1px;\n }\n }\n}\n","//\n// Navs\n// --------------------------------------------------\n\n\n// Base class\n// --------------------------------------------------\n\n.nav {\n margin-bottom: 0;\n padding-left: 0; // Override default ul/ol\n list-style: none;\n &:extend(.clearfix all);\n\n > li {\n position: relative;\n display: block;\n\n > a {\n position: relative;\n display: block;\n padding: @nav-link-padding;\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: @nav-link-hover-bg;\n }\n }\n\n // Disabled state sets text to gray and nukes hover/tab effects\n &.disabled > a {\n color: @nav-disabled-link-color;\n\n &:hover,\n &:focus {\n color: @nav-disabled-link-hover-color;\n text-decoration: none;\n background-color: transparent;\n cursor: not-allowed;\n }\n }\n }\n\n // Open dropdowns\n .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @nav-link-hover-bg;\n border-color: @link-color;\n }\n }\n\n // Nav dividers (deprecated with v3.0.1)\n //\n // This should have been removed in v3 with the dropping of `.nav-list`, but\n // we missed it. We don't currently support this anywhere, but in the interest\n // of maintaining backward compatibility in case you use it, it's deprecated.\n .nav-divider {\n .nav-divider();\n }\n\n // Prevent IE8 from misplacing imgs\n //\n // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989\n > li > a > img {\n max-width: none;\n }\n}\n\n\n// Tabs\n// -------------------------\n\n// Give the tabs something to sit on\n.nav-tabs {\n border-bottom: 1px solid @nav-tabs-border-color;\n > li {\n float: left;\n // Make the list-items overlay the bottom border\n margin-bottom: -1px;\n\n // Actual tabs (as links)\n > a {\n margin-right: 2px;\n line-height: @line-height-base;\n border: 1px solid transparent;\n border-radius: @border-radius-base @border-radius-base 0 0;\n &:hover {\n border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color;\n }\n }\n\n // Active state, and its :hover to override normal :hover\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-tabs-active-link-hover-color;\n background-color: @nav-tabs-active-link-hover-bg;\n border: 1px solid @nav-tabs-active-link-hover-border-color;\n border-bottom-color: transparent;\n cursor: default;\n }\n }\n }\n // pulling this in mainly for less shorthand\n &.nav-justified {\n .nav-justified();\n .nav-tabs-justified();\n }\n}\n\n\n// Pills\n// -------------------------\n.nav-pills {\n > li {\n float: left;\n\n // Links rendered as pills\n > a {\n border-radius: @nav-pills-border-radius;\n }\n + li {\n margin-left: 2px;\n }\n\n // Active state\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-pills-active-link-hover-color;\n background-color: @nav-pills-active-link-hover-bg;\n }\n }\n }\n}\n\n\n// Stacked pills\n.nav-stacked {\n > li {\n float: none;\n + li {\n margin-top: 2px;\n margin-left: 0; // no need for this gap between nav items\n }\n }\n}\n\n\n// Nav variations\n// --------------------------------------------------\n\n// Justified nav links\n// -------------------------\n\n.nav-justified {\n width: 100%;\n\n > li {\n float: none;\n > a {\n text-align: center;\n margin-bottom: 5px;\n }\n }\n\n > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n }\n\n @media (min-width: @screen-sm-min) {\n > li {\n display: table-cell;\n width: 1%;\n > a {\n margin-bottom: 0;\n }\n }\n }\n}\n\n// Move borders to anchors instead of bottom of list\n//\n// Mixin for adding on top the shared `.nav-justified` styles for our tabs\n.nav-tabs-justified {\n border-bottom: 0;\n\n > li > a {\n // Override margin from .nav-tabs\n margin-right: 0;\n border-radius: @border-radius-base;\n }\n\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border: 1px solid @nav-tabs-justified-link-border-color;\n }\n\n @media (min-width: @screen-sm-min) {\n > li > a {\n border-bottom: 1px solid @nav-tabs-justified-link-border-color;\n border-radius: @border-radius-base @border-radius-base 0 0;\n }\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border-bottom-color: @nav-tabs-justified-active-link-border-color;\n }\n }\n}\n\n\n// Tabbable tabs\n// -------------------------\n\n// Hide tabbable panes to start, show them when `.active`\n.tab-content {\n > .tab-pane {\n display: none;\n }\n > .active {\n display: block;\n }\n}\n\n\n// Dropdowns\n// -------------------------\n\n// Specific dropdowns\n.nav-tabs .dropdown-menu {\n // make dropdown border overlap tab border\n margin-top: -1px;\n // Remove the top rounded corners here since there is a hard edge above the menu\n .border-top-radius(0);\n}\n","//\n// Navbars\n// --------------------------------------------------\n\n\n// Wrapper and base class\n//\n// Provide a static navbar from which we expand to create full-width, fixed, and\n// other navbar variations.\n\n.navbar {\n position: relative;\n min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)\n margin-bottom: @navbar-margin-bottom;\n border: 1px solid transparent;\n\n // Prevent floats from breaking the navbar\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: @navbar-border-radius;\n }\n}\n\n\n// Navbar heading\n//\n// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy\n// styling of responsive aspects.\n\n.navbar-header {\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n }\n}\n\n\n// Navbar collapse (body)\n//\n// Group your navbar content into this for easy collapsing and expanding across\n// various device sizes. By default, this content is collapsed when <768px, but\n// will expand past that for a horizontal display.\n//\n// To start (on mobile devices) the navbar links, forms, and buttons are stacked\n// vertically and include a `max-height` to overflow in case you have too much\n// content for the user's viewport.\n\n.navbar-collapse {\n max-height: @navbar-collapse-max-height;\n overflow-x: visible;\n padding-right: @navbar-padding-horizontal;\n padding-left: @navbar-padding-horizontal;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255,255,255,.1);\n &:extend(.clearfix all);\n -webkit-overflow-scrolling: touch;\n\n &.in {\n overflow-y: auto;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border-top: 0;\n box-shadow: none;\n\n &.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0; // Override default setting\n overflow: visible !important;\n }\n\n &.in {\n overflow-y: visible;\n }\n\n // Undo the collapse side padding for navbars with containers to ensure\n // alignment of right-aligned contents.\n .navbar-fixed-top &,\n .navbar-static-top &,\n .navbar-fixed-bottom & {\n padding-left: 0;\n padding-right: 0;\n }\n }\n}\n\n\n// Both navbar header and collapse\n//\n// When a container is present, change the behavior of the header and collapse.\n\n.container,\n.container-fluid {\n > .navbar-header,\n > .navbar-collapse {\n margin-right: -@navbar-padding-horizontal;\n margin-left: -@navbar-padding-horizontal;\n\n @media (min-width: @grid-float-breakpoint) {\n margin-right: 0;\n margin-left: 0;\n }\n }\n}\n\n\n//\n// Navbar alignment options\n//\n// Display the navbar across the entirety of the page or fixed it to the top or\n// bottom of the page.\n\n// Static top (unfixed, but 100% wide) navbar\n.navbar-static-top {\n z-index: @zindex-navbar;\n border-width: 0 0 1px;\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n\n// Fix the top/bottom navbars when screen real estate supports it\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: @zindex-navbar-fixed;\n\n // Undo the rounded corners\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0; // override .navbar defaults\n border-width: 1px 0 0;\n}\n\n\n// Brand/project name\n\n.navbar-brand {\n float: left;\n padding: @navbar-padding-vertical @navbar-padding-horizontal;\n font-size: @font-size-large;\n line-height: @line-height-computed;\n height: @navbar-height;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n .navbar > .container &,\n .navbar > .container-fluid & {\n margin-left: -@navbar-padding-horizontal;\n }\n }\n}\n\n\n// Navbar toggle\n//\n// Custom button for toggling the `.navbar-collapse`, powered by the collapse\n// JavaScript plugin.\n\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: @navbar-padding-horizontal;\n padding: 9px 10px;\n .navbar-vertical-align(34px);\n background-color: transparent;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n border-radius: @border-radius-base;\n\n // We remove the `outline` here, but later compensate by attaching `:hover`\n // styles to `:focus`.\n &:focus {\n outline: none;\n }\n\n // Bars\n .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n }\n .icon-bar + .icon-bar {\n margin-top: 4px;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n display: none;\n }\n}\n\n\n// Navbar nav links\n//\n// Builds on top of the `.nav` components with its own modifier class to make\n// the nav the full height of the horizontal nav (above 768px).\n\n.navbar-nav {\n margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal;\n\n > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: @line-height-computed;\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n > li > a,\n .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n > li > a {\n line-height: @line-height-computed;\n &:hover,\n &:focus {\n background-image: none;\n }\n }\n }\n }\n\n // Uncollapse the nav\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin: 0;\n\n > li {\n float: left;\n > a {\n padding-top: @navbar-padding-vertical;\n padding-bottom: @navbar-padding-vertical;\n }\n }\n\n &.navbar-right:last-child {\n margin-right: -@navbar-padding-horizontal;\n }\n }\n}\n\n\n// Component alignment\n//\n// Repurpose the pull utilities as their own navbar utilities to avoid specificity\n// issues with parents and chaining. Only do this when the navbar is uncollapsed\n// though so that navbar contents properly stack and align in mobile.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-left { .pull-left(); }\n .navbar-right { .pull-right(); }\n}\n\n\n// Navbar form\n//\n// Extension of the `.form-inline` with some extra flavor for optimum display in\n// our navbars.\n\n.navbar-form {\n margin-left: -@navbar-padding-horizontal;\n margin-right: -@navbar-padding-horizontal;\n padding: 10px @navbar-padding-horizontal;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n\n // Mixin behavior for optimum display\n .form-inline();\n\n .form-group {\n @media (max-width: @grid-float-breakpoint-max) {\n margin-bottom: 5px;\n }\n }\n\n // Vertically center in expanded, horizontal navbar\n .navbar-vertical-align(@input-height-base);\n\n // Undo 100% width for pull classes\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n .box-shadow(none);\n\n // Outdent the form if last child to line up with content down the page\n &.navbar-right:last-child {\n margin-right: -@navbar-padding-horizontal;\n }\n }\n}\n\n\n// Dropdown menus\n\n// Menu position and menu carets\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n .border-top-radius(0);\n}\n// Menu position and menu caret support for dropups via extra dropup class\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n .border-bottom-radius(0);\n}\n\n\n// Buttons in navbars\n//\n// Vertically center a button within a navbar (when *not* in a form).\n\n.navbar-btn {\n .navbar-vertical-align(@input-height-base);\n\n &.btn-sm {\n .navbar-vertical-align(@input-height-small);\n }\n &.btn-xs {\n .navbar-vertical-align(22);\n }\n}\n\n\n// Text in navbars\n//\n// Add a class to make any element properly align itself vertically within the navbars.\n\n.navbar-text {\n .navbar-vertical-align(@line-height-computed);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin-left: @navbar-padding-horizontal;\n margin-right: @navbar-padding-horizontal;\n\n // Outdent the form if last child to line up with content down the page\n &.navbar-right:last-child {\n margin-right: 0;\n }\n }\n}\n\n// Alternate navbars\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n background-color: @navbar-default-bg;\n border-color: @navbar-default-border;\n\n .navbar-brand {\n color: @navbar-default-brand-color;\n &:hover,\n &:focus {\n color: @navbar-default-brand-hover-color;\n background-color: @navbar-default-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-default-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-default-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n\n .navbar-toggle {\n border-color: @navbar-default-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-default-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-default-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: @navbar-default-border;\n }\n\n // Dropdown menu items\n .navbar-nav {\n // Remove background color from open dropdown\n > .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @navbar-default-link-active-bg;\n color: @navbar-default-link-active-color;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n > li > a {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n }\n }\n\n\n // Links in navbars\n //\n // Add a class to ensure links outside the navbar nav are colored correctly.\n\n .navbar-link {\n color: @navbar-default-link-color;\n &:hover {\n color: @navbar-default-link-hover-color;\n }\n }\n\n}\n\n// Inverse navbar\n\n.navbar-inverse {\n background-color: @navbar-inverse-bg;\n border-color: @navbar-inverse-border;\n\n .navbar-brand {\n color: @navbar-inverse-brand-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-brand-hover-color;\n background-color: @navbar-inverse-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-inverse-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-inverse-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n\n // Darken the responsive nav toggle\n .navbar-toggle {\n border-color: @navbar-inverse-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-inverse-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-inverse-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: darken(@navbar-inverse-bg, 7%);\n }\n\n // Dropdowns\n .navbar-nav {\n > .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @navbar-inverse-link-active-bg;\n color: @navbar-inverse-link-active-color;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display\n .open .dropdown-menu {\n > .dropdown-header {\n border-color: @navbar-inverse-border;\n }\n .divider {\n background-color: @navbar-inverse-border;\n }\n > li > a {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n }\n }\n\n .navbar-link {\n color: @navbar-inverse-link-color;\n &:hover {\n color: @navbar-inverse-link-hover-color;\n }\n }\n\n}\n","//\n// Utility classes\n// --------------------------------------------------\n\n\n// Floats\n// -------------------------\n\n.clearfix {\n .clearfix();\n}\n.center-block {\n .center-block();\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n\n\n// Toggling content\n// -------------------------\n\n// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n .text-hide();\n}\n\n\n// Hide from screenreaders and browsers\n//\n// Credit: HTML5 Boilerplate\n\n.hidden {\n display: none !important;\n visibility: hidden !important;\n}\n\n\n// For Affix plugin\n// -------------------------\n\n.affix {\n position: fixed;\n}\n","//\n// Breadcrumbs\n// --------------------------------------------------\n\n\n.breadcrumb {\n padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal;\n margin-bottom: @line-height-computed;\n list-style: none;\n background-color: @breadcrumb-bg;\n border-radius: @border-radius-base;\n\n > li {\n display: inline-block;\n\n + li:before {\n content: \"@{breadcrumb-separator}\\00a0\"; // Unicode space added since inline-block means non-collapsing white-space\n padding: 0 5px;\n color: @breadcrumb-color;\n }\n }\n\n > .active {\n color: @breadcrumb-active-color;\n }\n}\n","//\n// Pagination (multiple pages)\n// --------------------------------------------------\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: @line-height-computed 0;\n border-radius: @border-radius-base;\n\n > li {\n display: inline; // Remove list-style and block-level defaults\n > a,\n > span {\n position: relative;\n float: left; // Collapse white-space\n padding: @padding-base-vertical @padding-base-horizontal;\n line-height: @line-height-base;\n text-decoration: none;\n color: @pagination-color;\n background-color: @pagination-bg;\n border: 1px solid @pagination-border;\n margin-left: -1px;\n }\n &:first-child {\n > a,\n > span {\n margin-left: 0;\n .border-left-radius(@border-radius-base);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius-base);\n }\n }\n }\n\n > li > a,\n > li > span {\n &:hover,\n &:focus {\n color: @pagination-hover-color;\n background-color: @pagination-hover-bg;\n border-color: @pagination-hover-border;\n }\n }\n\n > .active > a,\n > .active > span {\n &,\n &:hover,\n &:focus {\n z-index: 2;\n color: @pagination-active-color;\n background-color: @pagination-active-bg;\n border-color: @pagination-active-border;\n cursor: default;\n }\n }\n\n > .disabled {\n > span,\n > span:hover,\n > span:focus,\n > a,\n > a:hover,\n > a:focus {\n color: @pagination-disabled-color;\n background-color: @pagination-disabled-bg;\n border-color: @pagination-disabled-border;\n cursor: not-allowed;\n }\n }\n}\n\n// Sizing\n// --------------------------------------------------\n\n// Large\n.pagination-lg {\n .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @border-radius-large);\n}\n\n// Small\n.pagination-sm {\n .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @border-radius-small);\n}\n","//\n// Pager pagination\n// --------------------------------------------------\n\n\n.pager {\n padding-left: 0;\n margin: @line-height-computed 0;\n list-style: none;\n text-align: center;\n &:extend(.clearfix all);\n li {\n display: inline;\n > a,\n > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: @pager-bg;\n border: 1px solid @pager-border;\n border-radius: @pager-border-radius;\n }\n\n > a:hover,\n > a:focus {\n text-decoration: none;\n background-color: @pager-hover-bg;\n }\n }\n\n .next {\n > a,\n > span {\n float: right;\n }\n }\n\n .previous {\n > a,\n > span {\n float: left;\n }\n }\n\n .disabled {\n > a,\n > a:hover,\n > a:focus,\n > span {\n color: @pager-disabled-color;\n background-color: @pager-bg;\n cursor: not-allowed;\n }\n }\n\n}\n","//\n// Labels\n// --------------------------------------------------\n\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n // Add hover effects, but only for links\n &[href] {\n &:hover,\n &:focus {\n color: @label-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Empty labels collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for labels in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n}\n\n// Colors\n// Contextual variations (linked labels get darker on :hover)\n\n.label-default {\n .label-variant(@label-default-bg);\n}\n\n.label-primary {\n .label-variant(@label-primary-bg);\n}\n\n.label-success {\n .label-variant(@label-success-bg);\n}\n\n.label-info {\n .label-variant(@label-info-bg);\n}\n\n.label-warning {\n .label-variant(@label-warning-bg);\n}\n\n.label-danger {\n .label-variant(@label-danger-bg);\n}\n","//\n// Badges\n// --------------------------------------------------\n\n\n// Base classes\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: @font-size-small;\n font-weight: @badge-font-weight;\n color: @badge-color;\n line-height: @badge-line-height;\n vertical-align: baseline;\n white-space: nowrap;\n text-align: center;\n background-color: @badge-bg;\n border-radius: @badge-border-radius;\n\n // Empty badges collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for badges in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n .btn-xs & {\n top: 0;\n padding: 1px 5px;\n }\n}\n\n// Hover state, but only for links\na.badge {\n &:hover,\n &:focus {\n color: @badge-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n}\n\n// Account for counters in navs\na.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: @badge-active-color;\n background-color: @badge-active-bg;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n","//\n// Jumbotron\n// --------------------------------------------------\n\n\n.jumbotron {\n padding: @jumbotron-padding;\n margin-bottom: @jumbotron-padding;\n color: @jumbotron-color;\n background-color: @jumbotron-bg;\n\n h1,\n .h1 {\n color: @jumbotron-heading-color;\n }\n p {\n margin-bottom: (@jumbotron-padding / 2);\n font-size: @jumbotron-font-size;\n font-weight: 200;\n }\n\n .container & {\n border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container\n }\n\n .container {\n max-width: 100%;\n }\n\n @media screen and (min-width: @screen-sm-min) {\n padding-top: (@jumbotron-padding * 1.6);\n padding-bottom: (@jumbotron-padding * 1.6);\n\n .container & {\n padding-left: (@jumbotron-padding * 2);\n padding-right: (@jumbotron-padding * 2);\n }\n\n h1,\n .h1 {\n font-size: (@font-size-base * 4.5);\n }\n }\n}\n","//\n// Alerts\n// --------------------------------------------------\n\n\n// Base styles\n// -------------------------\n\n.alert {\n padding: @alert-padding;\n margin-bottom: @line-height-computed;\n border: 1px solid transparent;\n border-radius: @alert-border-radius;\n\n // Headings for larger alerts\n h4 {\n margin-top: 0;\n // Specified for the h4 to prevent conflicts of changing @headings-color\n color: inherit;\n }\n // Provide class for links that match alerts\n .alert-link {\n font-weight: @alert-link-font-weight;\n }\n\n // Improve alignment and spacing of inner content\n > p,\n > ul {\n margin-bottom: 0;\n }\n > p + p {\n margin-top: 5px;\n }\n}\n\n// Dismissable alerts\n//\n// Expand the right padding and account for the close button's positioning.\n\n.alert-dismissable {\n padding-right: (@alert-padding + 20);\n\n // Adjust close link position\n .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n }\n}\n\n// Alternate styles\n//\n// Generate contextual modifier classes for colorizing the alert.\n\n.alert-success {\n .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);\n}\n.alert-info {\n .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);\n}\n.alert-warning {\n .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);\n}\n.alert-danger {\n .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);\n}\n","//\n// Progress bars\n// --------------------------------------------------\n\n\n// Bar animations\n// -------------------------\n\n// WebKit\n@-webkit-keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n// Spec and IE10+\n@keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n\n\n// Bar itself\n// -------------------------\n\n// Outer container\n.progress {\n overflow: hidden;\n height: @line-height-computed;\n margin-bottom: @line-height-computed;\n background-color: @progress-bg;\n border-radius: @border-radius-base;\n .box-shadow(inset 0 1px 2px rgba(0,0,0,.1));\n}\n\n// Bar of progress\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: @font-size-small;\n line-height: @line-height-computed;\n color: @progress-bar-color;\n text-align: center;\n background-color: @progress-bar-bg;\n .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));\n .transition(width .6s ease);\n}\n\n// Striped bars\n.progress-striped .progress-bar {\n #gradient > .striped();\n background-size: 40px 40px;\n}\n\n// Call animation for the active one\n.progress.active .progress-bar {\n .animation(progress-bar-stripes 2s linear infinite);\n}\n\n\n\n// Variations\n// -------------------------\n\n.progress-bar-success {\n .progress-bar-variant(@progress-bar-success-bg);\n}\n\n.progress-bar-info {\n .progress-bar-variant(@progress-bar-info-bg);\n}\n\n.progress-bar-warning {\n .progress-bar-variant(@progress-bar-warning-bg);\n}\n\n.progress-bar-danger {\n .progress-bar-variant(@progress-bar-danger-bg);\n}\n","// Media objects\n// Source: http://stubbornella.org/content/?p=497\n// --------------------------------------------------\n\n\n// Common styles\n// -------------------------\n\n// Clear the floats\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n\n// Proper spacing between instances of .media\n.media,\n.media .media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n\n// For images and videos, set to block\n.media-object {\n display: block;\n}\n\n// Reset margins on headings for tighter default spacing\n.media-heading {\n margin: 0 0 5px;\n}\n\n\n// Media image alignment\n// -------------------------\n\n.media {\n > .pull-left {\n margin-right: 10px;\n }\n > .pull-right {\n margin-left: 10px;\n }\n}\n\n\n// Media list variation\n// -------------------------\n\n// Undo default ul/ol styles\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n","//\n// List groups\n// --------------------------------------------------\n\n\n// Base class\n//\n// Easily usable on <ul>, <ol>, or <div>.\n\n.list-group {\n // No need to set list-style: none; since .list-group-item is block level\n margin-bottom: 20px;\n padding-left: 0; // reset padding because ul and ol\n}\n\n\n// Individual list items\n//\n// Use on `li`s or `div`s within the `.list-group` parent.\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n // Place the border on the list items and negative margin up for better styling\n margin-bottom: -1px;\n background-color: @list-group-bg;\n border: 1px solid @list-group-border;\n\n // Round the first and last items\n &:first-child {\n .border-top-radius(@list-group-border-radius);\n }\n &:last-child {\n margin-bottom: 0;\n .border-bottom-radius(@list-group-border-radius);\n }\n\n // Align badges within list items\n > .badge {\n float: right;\n }\n > .badge + .badge {\n margin-right: 5px;\n }\n}\n\n\n// Linked list items\n//\n// Use anchor elements instead of `li`s or `div`s to create linked list items.\n// Includes an extra `.active` modifier class for showing selected items.\n\na.list-group-item {\n color: @list-group-link-color;\n\n .list-group-item-heading {\n color: @list-group-link-heading-color;\n }\n\n // Hover state\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: @list-group-hover-bg;\n }\n\n // Active class on item itself, not parent\n &.active,\n &.active:hover,\n &.active:focus {\n z-index: 2; // Place active items above their siblings for proper border styling\n color: @list-group-active-color;\n background-color: @list-group-active-bg;\n border-color: @list-group-active-border;\n\n // Force color to inherit for custom content\n .list-group-item-heading {\n color: inherit;\n }\n .list-group-item-text {\n color: @list-group-active-text-color;\n }\n }\n}\n\n\n// Contextual variants\n//\n// Add modifier classes to change text and background color on individual items.\n// Organizationally, this must come after the `:hover` states.\n\n.list-group-item-variant(success; @state-success-bg; @state-success-text);\n.list-group-item-variant(info; @state-info-bg; @state-info-text);\n.list-group-item-variant(warning; @state-warning-bg; @state-warning-text);\n.list-group-item-variant(danger; @state-danger-bg; @state-danger-text);\n\n\n// Custom content options\n//\n// Extra classes for creating well-formatted content within `.list-group-item`s.\n\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n","//\n// Panels\n// --------------------------------------------------\n\n\n// Base class\n.panel {\n margin-bottom: @line-height-computed;\n background-color: @panel-bg;\n border: 1px solid transparent;\n border-radius: @panel-border-radius;\n .box-shadow(0 1px 1px rgba(0,0,0,.05));\n}\n\n// Panel contents\n.panel-body {\n padding: @panel-body-padding;\n &:extend(.clearfix all);\n}\n\n// Optional heading\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n .border-top-radius((@panel-border-radius - 1));\n\n > .dropdown .dropdown-toggle {\n color: inherit;\n }\n}\n\n// Within heading, strip any `h*` tag of its default margins for spacing.\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: ceil((@font-size-base * 1.125));\n color: inherit;\n\n > a {\n color: inherit;\n }\n}\n\n// Optional footer (stays gray in every modifier class)\n.panel-footer {\n padding: 10px 15px;\n background-color: @panel-footer-bg;\n border-top: 1px solid @panel-inner-border;\n .border-bottom-radius((@panel-border-radius - 1));\n}\n\n\n// List groups in panels\n//\n// By default, space out list group content from panel headings to account for\n// any kind of custom content between the two.\n\n.panel {\n > .list-group {\n margin-bottom: 0;\n\n .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n }\n\n // Add border top radius for first one\n &:first-child {\n .list-group-item:first-child {\n border-top: 0;\n .border-top-radius((@panel-border-radius - 1));\n }\n }\n // Add border bottom radius for last one\n &:last-child {\n .list-group-item:last-child {\n border-bottom: 0;\n .border-bottom-radius((@panel-border-radius - 1));\n }\n }\n }\n}\n// Collapse space between when there's no additional content.\n.panel-heading + .list-group {\n .list-group-item:first-child {\n border-top-width: 0;\n }\n}\n\n\n// Tables in panels\n//\n// Place a non-bordered `.table` within a panel (not within a `.panel-body`) and\n// watch it go full width.\n\n.panel {\n > .table,\n > .table-responsive > .table {\n margin-bottom: 0;\n }\n // Add border top radius for first one\n > .table:first-child,\n > .table-responsive:first-child > .table:first-child {\n .border-top-radius((@panel-border-radius - 1));\n\n > thead:first-child,\n > tbody:first-child {\n > tr:first-child {\n td:first-child,\n th:first-child {\n border-top-left-radius: (@panel-border-radius - 1);\n }\n td:last-child,\n th:last-child {\n border-top-right-radius: (@panel-border-radius - 1);\n }\n }\n }\n }\n // Add border bottom radius for last one\n > .table:last-child,\n > .table-responsive:last-child > .table:last-child {\n .border-bottom-radius((@panel-border-radius - 1));\n\n > tbody:last-child,\n > tfoot:last-child {\n > tr:last-child {\n td:first-child,\n th:first-child {\n border-bottom-left-radius: (@panel-border-radius - 1);\n }\n td:last-child,\n th:last-child {\n border-bottom-right-radius: (@panel-border-radius - 1);\n }\n }\n }\n }\n > .panel-body + .table,\n > .panel-body + .table-responsive {\n border-top: 1px solid @table-border-color;\n }\n > .table > tbody:first-child > tr:first-child th,\n > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n }\n > .table-bordered,\n > .table-responsive > .table-bordered {\n border: 0;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n > thead,\n > tbody {\n > tr:first-child {\n > td,\n > th {\n border-bottom: 0;\n }\n }\n }\n > tbody,\n > tfoot {\n > tr:last-child {\n > td,\n > th {\n border-bottom: 0;\n }\n }\n }\n }\n > .table-responsive {\n border: 0;\n margin-bottom: 0;\n }\n}\n\n\n// Collapsable panels (aka, accordion)\n//\n// Wrap a series of panels in `.panel-group` to turn them into an accordion with\n// the help of our collapse JavaScript plugin.\n\n.panel-group {\n margin-bottom: @line-height-computed;\n\n // Tighten up margin so it's only between panels\n .panel {\n margin-bottom: 0;\n border-radius: @panel-border-radius;\n overflow: hidden; // crop contents when collapsed\n + .panel {\n margin-top: 5px;\n }\n }\n\n .panel-heading {\n border-bottom: 0;\n + .panel-collapse .panel-body {\n border-top: 1px solid @panel-inner-border;\n }\n }\n .panel-footer {\n border-top: 0;\n + .panel-collapse .panel-body {\n border-bottom: 1px solid @panel-inner-border;\n }\n }\n}\n\n\n// Contextual variations\n.panel-default {\n .panel-variant(@panel-default-border; @panel-default-text; @panel-default-heading-bg; @panel-default-border);\n}\n.panel-primary {\n .panel-variant(@panel-primary-border; @panel-primary-text; @panel-primary-heading-bg; @panel-primary-border);\n}\n.panel-success {\n .panel-variant(@panel-success-border; @panel-success-text; @panel-success-heading-bg; @panel-success-border);\n}\n.panel-info {\n .panel-variant(@panel-info-border; @panel-info-text; @panel-info-heading-bg; @panel-info-border);\n}\n.panel-warning {\n .panel-variant(@panel-warning-border; @panel-warning-text; @panel-warning-heading-bg; @panel-warning-border);\n}\n.panel-danger {\n .panel-variant(@panel-danger-border; @panel-danger-text; @panel-danger-heading-bg; @panel-danger-border);\n}\n","//\n// Wells\n// --------------------------------------------------\n\n\n// Base class\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: @well-bg;\n border: 1px solid @well-border;\n border-radius: @border-radius-base;\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.05));\n blockquote {\n border-color: #ddd;\n border-color: rgba(0,0,0,.15);\n }\n}\n\n// Sizes\n.well-lg {\n padding: 24px;\n border-radius: @border-radius-large;\n}\n.well-sm {\n padding: 9px;\n border-radius: @border-radius-small;\n}\n","//\n// Close icons\n// --------------------------------------------------\n\n\n.close {\n float: right;\n font-size: (@font-size-base * 1.5);\n font-weight: @close-font-weight;\n line-height: 1;\n color: @close-color;\n text-shadow: @close-text-shadow;\n .opacity(.2);\n\n &:hover,\n &:focus {\n color: @close-color;\n text-decoration: none;\n cursor: pointer;\n .opacity(.5);\n }\n\n // Additional properties for button version\n // iOS requires the button element instead of an anchor tag.\n // If you want the anchor version, it requires `href=\"#\"`.\n button& {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n }\n}\n","//\n// Modals\n// --------------------------------------------------\n\n// .modal-open - body class for killing the scroll\n// .modal - container to scroll within\n// .modal-dialog - positioning shell for the actual modal\n// .modal-content - actual modal w/ bg and corners and shit\n\n// Kill the scroll on the body\n.modal-open {\n overflow: hidden;\n}\n\n// Container that the modal scrolls within\n.modal {\n display: none;\n overflow: auto;\n overflow-y: scroll;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: @zindex-modal;\n -webkit-overflow-scrolling: touch;\n\n // Prevent Chrome on Windows from adding a focus outline. For details, see\n // https://github.com/twbs/bootstrap/pull/10951.\n outline: 0;\n\n // When fading in the modal, animate it to slide down\n &.fade .modal-dialog {\n .translate(0, -25%);\n .transition-transform(~\"0.3s ease-out\");\n }\n &.in .modal-dialog { .translate(0, 0)}\n}\n\n// Shell div to position the modal with bottom padding\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n\n// Actual modal\n.modal-content {\n position: relative;\n background-color: @modal-content-bg;\n border: 1px solid @modal-content-fallback-border-color; //old browsers fallback (ie8 etc)\n border: 1px solid @modal-content-border-color;\n border-radius: @border-radius-large;\n .box-shadow(0 3px 9px rgba(0,0,0,.5));\n background-clip: padding-box;\n // Remove focus outline from opened modal\n outline: none;\n}\n\n// Modal background\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: @zindex-modal-background;\n background-color: @modal-backdrop-bg;\n // Fade for backdrop\n &.fade { .opacity(0); }\n &.in { .opacity(@modal-backdrop-opacity); }\n}\n\n// Modal header\n// Top section of the modal w/ title and dismiss\n.modal-header {\n padding: @modal-title-padding;\n border-bottom: 1px solid @modal-header-border-color;\n min-height: (@modal-title-padding + @modal-title-line-height);\n}\n// Close icon\n.modal-header .close {\n margin-top: -2px;\n}\n\n// Title text within header\n.modal-title {\n margin: 0;\n line-height: @modal-title-line-height;\n}\n\n// Modal body\n// Where all modal content resides (sibling of .modal-header and .modal-footer)\n.modal-body {\n position: relative;\n padding: @modal-inner-padding;\n}\n\n// Footer (for actions)\n.modal-footer {\n margin-top: 15px;\n padding: (@modal-inner-padding - 1) @modal-inner-padding @modal-inner-padding;\n text-align: right; // right align buttons\n border-top: 1px solid @modal-footer-border-color;\n &:extend(.clearfix all); // clear it in case folks use .pull-* classes on buttons\n\n // Properly space out buttons\n .btn + .btn {\n margin-left: 5px;\n margin-bottom: 0; // account for input[type=\"submit\"] which gets the bottom margin like all other inputs\n }\n // but override that for button groups\n .btn-group .btn + .btn {\n margin-left: -1px;\n }\n // and override it for block buttons as well\n .btn-block + .btn-block {\n margin-left: 0;\n }\n}\n\n// Scale up the modal\n@media (min-width: @screen-sm-min) {\n // Automatically set modal's width for larger viewports\n .modal-dialog {\n width: @modal-md;\n margin: 30px auto;\n }\n .modal-content {\n .box-shadow(0 5px 15px rgba(0,0,0,.5));\n }\n\n // Modal sizes\n .modal-sm { width: @modal-sm; }\n}\n\n@media (min-width: @screen-md-min) {\n .modal-lg { width: @modal-lg; }\n}\n","//\n// Tooltips\n// --------------------------------------------------\n\n\n// Base class\n.tooltip {\n position: absolute;\n z-index: @zindex-tooltip;\n display: block;\n visibility: visible;\n font-size: @font-size-small;\n line-height: 1.4;\n .opacity(0);\n\n &.in { .opacity(@tooltip-opacity); }\n &.top { margin-top: -3px; padding: @tooltip-arrow-width 0; }\n &.right { margin-left: 3px; padding: 0 @tooltip-arrow-width; }\n &.bottom { margin-top: 3px; padding: @tooltip-arrow-width 0; }\n &.left { margin-left: -3px; padding: 0 @tooltip-arrow-width; }\n}\n\n// Wrapper for the tooltip content\n.tooltip-inner {\n max-width: @tooltip-max-width;\n padding: 3px 8px;\n color: @tooltip-color;\n text-align: center;\n text-decoration: none;\n background-color: @tooltip-bg;\n border-radius: @border-radius-base;\n}\n\n// Arrows\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.tooltip {\n &.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width 0;\n border-top-color: @tooltip-arrow-color;\n }\n &.top-left .tooltip-arrow {\n bottom: 0;\n left: @tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width 0;\n border-top-color: @tooltip-arrow-color;\n }\n &.top-right .tooltip-arrow {\n bottom: 0;\n right: @tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width 0;\n border-top-color: @tooltip-arrow-color;\n }\n &.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0;\n border-right-color: @tooltip-arrow-color;\n }\n &.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width;\n border-left-color: @tooltip-arrow-color;\n }\n &.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -@tooltip-arrow-width;\n border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;\n border-bottom-color: @tooltip-arrow-color;\n }\n &.bottom-left .tooltip-arrow {\n top: 0;\n left: @tooltip-arrow-width;\n border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;\n border-bottom-color: @tooltip-arrow-color;\n }\n &.bottom-right .tooltip-arrow {\n top: 0;\n right: @tooltip-arrow-width;\n border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;\n border-bottom-color: @tooltip-arrow-color;\n }\n}\n","//\n// Popovers\n// --------------------------------------------------\n\n\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: @zindex-popover;\n display: none;\n max-width: @popover-max-width;\n padding: 1px;\n text-align: left; // Reset given new insertion method\n background-color: @popover-bg;\n background-clip: padding-box;\n border: 1px solid @popover-fallback-border-color;\n border: 1px solid @popover-border-color;\n border-radius: @border-radius-large;\n .box-shadow(0 5px 10px rgba(0,0,0,.2));\n\n // Overrides for proper insertion\n white-space: normal;\n\n // Offset the popover to account for the popover arrow\n &.top { margin-top: -@popover-arrow-width; }\n &.right { margin-left: @popover-arrow-width; }\n &.bottom { margin-top: @popover-arrow-width; }\n &.left { margin-left: -@popover-arrow-width; }\n}\n\n.popover-title {\n margin: 0; // reset heading margin\n padding: 8px 14px;\n font-size: @font-size-base;\n font-weight: normal;\n line-height: 18px;\n background-color: @popover-title-bg;\n border-bottom: 1px solid darken(@popover-title-bg, 5%);\n border-radius: 5px 5px 0 0;\n}\n\n.popover-content {\n padding: 9px 14px;\n}\n\n// Arrows\n//\n// .arrow is outer, .arrow:after is inner\n\n.popover > .arrow {\n &,\n &:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n }\n}\n.popover > .arrow {\n border-width: @popover-arrow-outer-width;\n}\n.popover > .arrow:after {\n border-width: @popover-arrow-width;\n content: \"\";\n}\n\n.popover {\n &.top > .arrow {\n left: 50%;\n margin-left: -@popover-arrow-outer-width;\n border-bottom-width: 0;\n border-top-color: @popover-arrow-outer-fallback-color; // IE8 fallback\n border-top-color: @popover-arrow-outer-color;\n bottom: -@popover-arrow-outer-width;\n &:after {\n content: \" \";\n bottom: 1px;\n margin-left: -@popover-arrow-width;\n border-bottom-width: 0;\n border-top-color: @popover-arrow-color;\n }\n }\n &.right > .arrow {\n top: 50%;\n left: -@popover-arrow-outer-width;\n margin-top: -@popover-arrow-outer-width;\n border-left-width: 0;\n border-right-color: @popover-arrow-outer-fallback-color; // IE8 fallback\n border-right-color: @popover-arrow-outer-color;\n &:after {\n content: \" \";\n left: 1px;\n bottom: -@popover-arrow-width;\n border-left-width: 0;\n border-right-color: @popover-arrow-color;\n }\n }\n &.bottom > .arrow {\n left: 50%;\n margin-left: -@popover-arrow-outer-width;\n border-top-width: 0;\n border-bottom-color: @popover-arrow-outer-fallback-color; // IE8 fallback\n border-bottom-color: @popover-arrow-outer-color;\n top: -@popover-arrow-outer-width;\n &:after {\n content: \" \";\n top: 1px;\n margin-left: -@popover-arrow-width;\n border-top-width: 0;\n border-bottom-color: @popover-arrow-color;\n }\n }\n\n &.left > .arrow {\n top: 50%;\n right: -@popover-arrow-outer-width;\n margin-top: -@popover-arrow-outer-width;\n border-right-width: 0;\n border-left-color: @popover-arrow-outer-fallback-color; // IE8 fallback\n border-left-color: @popover-arrow-outer-color;\n &:after {\n content: \" \";\n right: 1px;\n border-right-width: 0;\n border-left-color: @popover-arrow-color;\n bottom: -@popover-arrow-width;\n }\n }\n\n}\n","//\n// Responsive: Utility classes\n// --------------------------------------------------\n\n\n// IE10 in Windows (Phone) 8\n//\n// Support for responsive views via media queries is kind of borked in IE10, for\n// Surface/desktop in split view and for Windows Phone 8. This particular fix\n// must be accompanied by a snippet of JavaScript to sniff the user agent and\n// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at\n// our Getting Started page for more information on this bug.\n//\n// For more information, see the following:\n//\n// Issue: https://github.com/twbs/bootstrap/issues/10497\n// Docs: http://getbootstrap.com/getting-started/#browsers\n// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/\n\n@-ms-viewport {\n width: device-width;\n}\n\n\n// Visibility utilities\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n .responsive-invisibility();\n}\n\n.visible-xs {\n @media (max-width: @screen-xs-max) {\n .responsive-visibility();\n }\n}\n.visible-sm {\n @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {\n .responsive-visibility();\n }\n}\n.visible-md {\n @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {\n .responsive-visibility();\n }\n}\n.visible-lg {\n @media (min-width: @screen-lg-min) {\n .responsive-visibility();\n }\n}\n\n.hidden-xs {\n @media (max-width: @screen-xs-max) {\n .responsive-invisibility();\n }\n}\n.hidden-sm {\n @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {\n .responsive-invisibility();\n }\n}\n.hidden-md {\n @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {\n .responsive-invisibility();\n }\n}\n.hidden-lg {\n @media (min-width: @screen-lg-min) {\n .responsive-invisibility();\n }\n}\n\n\n// Print utilities\n//\n// Media queries are placed on the inside to be mixin-friendly.\n\n.visible-print {\n .responsive-invisibility();\n\n @media print {\n .responsive-visibility();\n }\n}\n\n.hidden-print {\n @media print {\n .responsive-invisibility();\n }\n}\n"]} \ No newline at end of file | |||
diff --git a/deprecated/jinwei.me/mobile/css/bootstrap.min.css b/deprecated/jinwei.me/mobile/css/bootstrap.min.css new file mode 100644 index 0000000..679272d --- /dev/null +++ b/deprecated/jinwei.me/mobile/css/bootstrap.min.css | |||
@@ -0,0 +1,7 @@ | |||
1 | /*! | ||
2 | * Bootstrap v3.1.1 (http://getbootstrap.com) | ||
3 | * Copyright 2011-2014 Twitter, Inc. | ||
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
5 | */ | ||
6 | |||
7 | /*! normalize.css v3.0.0 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@media print{*{text-shadow:none!important;color:#000!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff!important}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:before,:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:400;line-height:1;color:#999}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}cite{font-style:normal}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-muted{color:#999}.text-primary{color:#428bca}a.text-primary:hover{color:#3071a9}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#428bca}a.bg-primary:hover{background-color:#3071a9}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#999}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}blockquote:before,blockquote:after{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;white-space:nowrap;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:0}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:0}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:0}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:0}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:0}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:0}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:0}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:0}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}@media (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=radio],input[type=checkbox]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}input[type=date]{line-height:34px}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;margin-top:10px;margin-bottom:10px;padding-left:20px}.radio label,.checkbox label{display:inline;font-weight:400;cursor:pointer}.radio input[type=radio],.radio-inline input[type=radio],.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type=radio][disabled],input[type=checkbox][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type=radio],fieldset[disabled] input[type=checkbox],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm,select[multiple].input-sm{height:auto}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:46px;line-height:46px}textarea.input-lg,select[multiple].input-lg{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.has-feedback .form-control-feedback{position:absolute;top:25px;right:0;display:block;width:34px;height:34px;line-height:34px;text-align:center}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.form-control-static{margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{float:none;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.form-horizontal .has-feedback .form-control-feedback{top:0;right:15px}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-primary .badge{color:#428bca;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#428bca;font-weight:400;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#999}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:768px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}[data-toggle=buttons]>.btn>input[type=radio],[data-toggle=buttons]>.btn>input[type=checkbox]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=radio],.input-group-addon input[type=checkbox]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.navbar-nav.navbar-right:last-child{margin-right:-15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin-top:8px;margin-bottom:8px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.navbar-form .radio input[type=radio],.navbar-form .checkbox input[type=checkbox]{float:none;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width:768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.navbar-form.navbar-right:last-child{margin-right:-15px}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}.navbar-text.navbar-right:last-child{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#080808;color:#fff}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.42857143;text-decoration:none;color:#428bca;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{color:#2a6496;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca;cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:gray}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#999;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge{top:0;padding:1px 5px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.container .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-left:auto;margin-right:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#428bca}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}a.list-group-item.active .list-group-item-heading,a.list-group-item.active:hover .list-group-item-heading,a.list-group-item.active:focus .list-group-item-heading{color:inherit}a.list-group-item.active .list-group-item-text,a.list-group-item.active:hover .list-group-item-text,a.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px;overflow:hidden}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:auto;overflow-y:scroll;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.42857143px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{margin-top:15px;padding:19px 20px 20px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1030;display:block;visibility:visible;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;right:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-control.left{background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.5) 0),color-stop(rgba(0,0,0,.0001) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.0001) 0),color-stop(rgba(0,0,0,.5) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:hover,.carousel-control:focus{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0)}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-footer:before,.modal-footer:after{content:" ";display:table}.clearfix:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-footer:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important;visibility:hidden!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}}@media print{.hidden-print{display:none!important}} \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/mobile/css/navbar.less b/deprecated/jinwei.me/mobile/css/navbar.less new file mode 100644 index 0000000..8c4c210 --- /dev/null +++ b/deprecated/jinwei.me/mobile/css/navbar.less | |||
@@ -0,0 +1,616 @@ | |||
1 | // | ||
2 | // Navbars | ||
3 | // -------------------------------------------------- | ||
4 | |||
5 | |||
6 | // Wrapper and base class | ||
7 | // | ||
8 | // Provide a static navbar from which we expand to create full-width, fixed, and | ||
9 | // other navbar variations. | ||
10 | |||
11 | .navbar { | ||
12 | position: relative; | ||
13 | min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode) | ||
14 | margin-bottom: @navbar-margin-bottom; | ||
15 | border: 1px solid transparent; | ||
16 | |||
17 | // Prevent floats from breaking the navbar | ||
18 | &:extend(.clearfix all); | ||
19 | |||
20 | @media (min-width: @grid-float-breakpoint) { | ||
21 | border-radius: @navbar-border-radius; | ||
22 | } | ||
23 | } | ||
24 | |||
25 | |||
26 | // Navbar heading | ||
27 | // | ||
28 | // Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy | ||
29 | // styling of responsive aspects. | ||
30 | |||
31 | .navbar-header { | ||
32 | &:extend(.clearfix all); | ||
33 | |||
34 | @media (min-width: @grid-float-breakpoint) { | ||
35 | float: left; | ||
36 | } | ||
37 | } | ||
38 | |||
39 | |||
40 | // Navbar collapse (body) | ||
41 | // | ||
42 | // Group your navbar content into this for easy collapsing and expanding across | ||
43 | // various device sizes. By default, this content is collapsed when <768px, but | ||
44 | // will expand past that for a horizontal display. | ||
45 | // | ||
46 | // To start (on mobile devices) the navbar links, forms, and buttons are stacked | ||
47 | // vertically and include a `max-height` to overflow in case you have too much | ||
48 | // content for the user's viewport. | ||
49 | |||
50 | .navbar-collapse { | ||
51 | max-height: @navbar-collapse-max-height; | ||
52 | overflow-x: visible; | ||
53 | padding-right: @navbar-padding-horizontal; | ||
54 | padding-left: @navbar-padding-horizontal; | ||
55 | border-top: 1px solid transparent; | ||
56 | box-shadow: inset 0 1px 0 rgba(255,255,255,.1); | ||
57 | &:extend(.clearfix all); | ||
58 | -webkit-overflow-scrolling: touch; | ||
59 | |||
60 | &.in { | ||
61 | overflow-y: auto; | ||
62 | } | ||
63 | |||
64 | @media (min-width: @grid-float-breakpoint) { | ||
65 | width: auto; | ||
66 | border-top: 0; | ||
67 | box-shadow: none; | ||
68 | |||
69 | &.collapse { | ||
70 | display: block !important; | ||
71 | height: auto !important; | ||
72 | padding-bottom: 0; // Override default setting | ||
73 | overflow: visible !important; | ||
74 | } | ||
75 | |||
76 | &.in { | ||
77 | overflow-y: visible; | ||
78 | } | ||
79 | |||
80 | // Undo the collapse side padding for navbars with containers to ensure | ||
81 | // alignment of right-aligned contents. | ||
82 | .navbar-fixed-top &, | ||
83 | .navbar-static-top &, | ||
84 | .navbar-fixed-bottom & { | ||
85 | padding-left: 0; | ||
86 | padding-right: 0; | ||
87 | } | ||
88 | } | ||
89 | } | ||
90 | |||
91 | |||
92 | // Both navbar header and collapse | ||
93 | // | ||
94 | // When a container is present, change the behavior of the header and collapse. | ||
95 | |||
96 | .container, | ||
97 | .container-fluid { | ||
98 | > .navbar-header, | ||
99 | > .navbar-collapse { | ||
100 | margin-right: -@navbar-padding-horizontal; | ||
101 | margin-left: -@navbar-padding-horizontal; | ||
102 | |||
103 | @media (min-width: @grid-float-breakpoint) { | ||
104 | margin-right: 0; | ||
105 | margin-left: 0; | ||
106 | } | ||
107 | } | ||
108 | } | ||
109 | |||
110 | |||
111 | // | ||
112 | // Navbar alignment options | ||
113 | // | ||
114 | // Display the navbar across the entirety of the page or fixed it to the top or | ||
115 | // bottom of the page. | ||
116 | |||
117 | // Static top (unfixed, but 100% wide) navbar | ||
118 | .navbar-static-top { | ||
119 | z-index: @zindex-navbar; | ||
120 | border-width: 0 0 1px; | ||
121 | |||
122 | @media (min-width: @grid-float-breakpoint) { | ||
123 | border-radius: 0; | ||
124 | } | ||
125 | } | ||
126 | |||
127 | // Fix the top/bottom navbars when screen real estate supports it | ||
128 | .navbar-fixed-top, | ||
129 | .navbar-fixed-bottom { | ||
130 | position: fixed; | ||
131 | right: 0; | ||
132 | left: 0; | ||
133 | z-index: @zindex-navbar-fixed; | ||
134 | |||
135 | // Undo the rounded corners | ||
136 | @media (min-width: @grid-float-breakpoint) { | ||
137 | border-radius: 0; | ||
138 | } | ||
139 | } | ||
140 | .navbar-fixed-top { | ||
141 | top: 0; | ||
142 | border-width: 0 0 1px; | ||
143 | } | ||
144 | .navbar-fixed-bottom { | ||
145 | bottom: 0; | ||
146 | margin-bottom: 0; // override .navbar defaults | ||
147 | border-width: 1px 0 0; | ||
148 | } | ||
149 | |||
150 | |||
151 | // Brand/project name | ||
152 | |||
153 | .navbar-brand { | ||
154 | float: left; | ||
155 | padding: @navbar-padding-vertical @navbar-padding-horizontal; | ||
156 | font-size: @font-size-large; | ||
157 | line-height: @line-height-computed; | ||
158 | height: @navbar-height; | ||
159 | |||
160 | &:hover, | ||
161 | &:focus { | ||
162 | text-decoration: none; | ||
163 | } | ||
164 | |||
165 | @media (min-width: @grid-float-breakpoint) { | ||
166 | .navbar > .container &, | ||
167 | .navbar > .container-fluid & { | ||
168 | margin-left: -@navbar-padding-horizontal; | ||
169 | } | ||
170 | } | ||
171 | } | ||
172 | |||
173 | |||
174 | // Navbar toggle | ||
175 | // | ||
176 | // Custom button for toggling the `.navbar-collapse`, powered by the collapse | ||
177 | // JavaScript plugin. | ||
178 | |||
179 | .navbar-toggle { | ||
180 | position: relative; | ||
181 | float: right; | ||
182 | margin-right: @navbar-padding-horizontal; | ||
183 | padding: 9px 10px; | ||
184 | .navbar-vertical-align(34px); | ||
185 | background-color: transparent; | ||
186 | background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 | ||
187 | border: 1px solid transparent; | ||
188 | border-radius: @border-radius-base; | ||
189 | |||
190 | // We remove the `outline` here, but later compensate by attaching `:hover` | ||
191 | // styles to `:focus`. | ||
192 | &:focus { | ||
193 | outline: none; | ||
194 | } | ||
195 | |||
196 | // Bars | ||
197 | .icon-bar { | ||
198 | display: block; | ||
199 | width: 22px; | ||
200 | height: 2px; | ||
201 | border-radius: 1px; | ||
202 | } | ||
203 | .icon-bar + .icon-bar { | ||
204 | margin-top: 4px; | ||
205 | } | ||
206 | |||
207 | @media (min-width: @grid-float-breakpoint) { | ||
208 | display: none; | ||
209 | } | ||
210 | } | ||
211 | |||
212 | |||
213 | // Navbar nav links | ||
214 | // | ||
215 | // Builds on top of the `.nav` components with its own modifier class to make | ||
216 | // the nav the full height of the horizontal nav (above 768px). | ||
217 | |||
218 | .navbar-nav { | ||
219 | margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal; | ||
220 | |||
221 | > li > a { | ||
222 | padding-top: 10px; | ||
223 | padding-bottom: 10px; | ||
224 | line-height: @line-height-computed; | ||
225 | } | ||
226 | |||
227 | @media (max-width: @grid-float-breakpoint-max) { | ||
228 | // Dropdowns get custom display when collapsed | ||
229 | .open .dropdown-menu { | ||
230 | position: static; | ||
231 | float: none; | ||
232 | width: auto; | ||
233 | margin-top: 0; | ||
234 | background-color: transparent; | ||
235 | border: 0; | ||
236 | box-shadow: none; | ||
237 | > li > a, | ||
238 | .dropdown-header { | ||
239 | padding: 5px 15px 5px 25px; | ||
240 | } | ||
241 | > li > a { | ||
242 | line-height: @line-height-computed; | ||
243 | &:hover, | ||
244 | &:focus { | ||
245 | background-image: none; | ||
246 | } | ||
247 | } | ||
248 | } | ||
249 | } | ||
250 | |||
251 | // Uncollapse the nav | ||
252 | @media (min-width: @grid-float-breakpoint) { | ||
253 | float: left; | ||
254 | margin: 0; | ||
255 | |||
256 | > li { | ||
257 | float: left; | ||
258 | > a { | ||
259 | padding-top: @navbar-padding-vertical; | ||
260 | padding-bottom: @navbar-padding-vertical; | ||
261 | } | ||
262 | } | ||
263 | |||
264 | &.navbar-right:last-child { | ||
265 | margin-right: -@navbar-padding-horizontal; | ||
266 | } | ||
267 | } | ||
268 | } | ||
269 | |||
270 | |||
271 | // Component alignment | ||
272 | // | ||
273 | // Repurpose the pull utilities as their own navbar utilities to avoid specificity | ||
274 | // issues with parents and chaining. Only do this when the navbar is uncollapsed | ||
275 | // though so that navbar contents properly stack and align in mobile. | ||
276 | |||
277 | @media (min-width: @grid-float-breakpoint) { | ||
278 | .navbar-left { .pull-left(); } | ||
279 | .navbar-right { .pull-right(); } | ||
280 | } | ||
281 | |||
282 | |||
283 | // Navbar form | ||
284 | // | ||
285 | // Extension of the `.form-inline` with some extra flavor for optimum display in | ||
286 | // our navbars. | ||
287 | |||
288 | .navbar-form { | ||
289 | margin-left: -@navbar-padding-horizontal; | ||
290 | margin-right: -@navbar-padding-horizontal; | ||
291 | padding: 10px @navbar-padding-horizontal; | ||
292 | border-top: 1px solid transparent; | ||
293 | border-bottom: 1px solid transparent; | ||
294 | @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); | ||
295 | .box-shadow(@shadow); | ||
296 | |||
297 | // Mixin behavior for optimum display | ||
298 | .form-inline(); | ||
299 | |||
300 | .form-group { | ||
301 | @media (max-width: @grid-float-breakpoint-max) { | ||
302 | margin-bottom: 5px; | ||
303 | } | ||
304 | } | ||
305 | |||
306 | // Vertically center in expanded, horizontal navbar | ||
307 | .navbar-vertical-align(@input-height-base); | ||
308 | |||
309 | // Undo 100% width for pull classes | ||
310 | @media (min-width: @grid-float-breakpoint) { | ||
311 | width: auto; | ||
312 | border: 0; | ||
313 | margin-left: 0; | ||
314 | margin-right: 0; | ||
315 | padding-top: 0; | ||
316 | padding-bottom: 0; | ||
317 | .box-shadow(none); | ||
318 | |||
319 | // Outdent the form if last child to line up with content down the page | ||
320 | &.navbar-right:last-child { | ||
321 | margin-right: -@navbar-padding-horizontal; | ||
322 | } | ||
323 | } | ||
324 | } | ||
325 | |||
326 | |||
327 | // Dropdown menus | ||
328 | |||
329 | // Menu position and menu carets | ||
330 | .navbar-nav > li > .dropdown-menu { | ||
331 | margin-top: 0; | ||
332 | .border-top-radius(0); | ||
333 | } | ||
334 | // Menu position and menu caret support for dropups via extra dropup class | ||
335 | .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { | ||
336 | .border-bottom-radius(0); | ||
337 | } | ||
338 | |||
339 | |||
340 | // Buttons in navbars | ||
341 | // | ||
342 | // Vertically center a button within a navbar (when *not* in a form). | ||
343 | |||
344 | .navbar-btn { | ||
345 | .navbar-vertical-align(@input-height-base); | ||
346 | |||
347 | &.btn-sm { | ||
348 | .navbar-vertical-align(@input-height-small); | ||
349 | } | ||
350 | &.btn-xs { | ||
351 | .navbar-vertical-align(22); | ||
352 | } | ||
353 | } | ||
354 | |||
355 | |||
356 | // Text in navbars | ||
357 | // | ||
358 | // Add a class to make any element properly align itself vertically within the navbars. | ||
359 | |||
360 | .navbar-text { | ||
361 | .navbar-vertical-align(@line-height-computed); | ||
362 | |||
363 | @media (min-width: @grid-float-breakpoint) { | ||
364 | float: left; | ||
365 | margin-left: @navbar-padding-horizontal; | ||
366 | margin-right: @navbar-padding-horizontal; | ||
367 | |||
368 | // Outdent the form if last child to line up with content down the page | ||
369 | &.navbar-right:last-child { | ||
370 | margin-right: 0; | ||
371 | } | ||
372 | } | ||
373 | } | ||
374 | |||
375 | // Alternate navbars | ||
376 | // -------------------------------------------------- | ||
377 | |||
378 | // Default navbar | ||
379 | .navbar-default { | ||
380 | background-color: @navbar-default-bg; | ||
381 | border-color: @navbar-default-border; | ||
382 | |||
383 | .navbar-brand { | ||
384 | color: @navbar-default-brand-color; | ||
385 | &:hover, | ||
386 | &:focus { | ||
387 | color: @navbar-default-brand-hover-color; | ||
388 | background-color: @navbar-default-brand-hover-bg; | ||
389 | } | ||
390 | } | ||
391 | |||
392 | .navbar-text { | ||
393 | color: @navbar-default-color; | ||
394 | } | ||
395 | |||
396 | .navbar-nav { | ||
397 | > li > a { | ||
398 | color: @navbar-default-link-color; | ||
399 | |||
400 | &:hover, | ||
401 | &:focus { | ||
402 | color: @navbar-default-link-hover-color; | ||
403 | background-color: @navbar-default-link-hover-bg; | ||
404 | } | ||
405 | } | ||
406 | > .active > a { | ||
407 | &, | ||
408 | &:hover, | ||
409 | &:focus { | ||
410 | color: @navbar-default-link-active-color; | ||
411 | background-color: @navbar-default-link-active-bg; | ||
412 | } | ||
413 | } | ||
414 | > .disabled > a { | ||
415 | &, | ||
416 | &:hover, | ||
417 | &:focus { | ||
418 | color: @navbar-default-link-disabled-color; | ||
419 | background-color: @navbar-default-link-disabled-bg; | ||
420 | } | ||
421 | } | ||
422 | } | ||
423 | |||
424 | .navbar-toggle { | ||
425 | border-color: @navbar-default-toggle-border-color; | ||
426 | &:hover, | ||
427 | &:focus { | ||
428 | background-color: @navbar-default-toggle-hover-bg; | ||
429 | } | ||
430 | .icon-bar { | ||
431 | background-color: @navbar-default-toggle-icon-bar-bg; | ||
432 | } | ||
433 | } | ||
434 | |||
435 | .navbar-collapse, | ||
436 | .navbar-form { | ||
437 | border-color: @navbar-default-border; | ||
438 | } | ||
439 | |||
440 | // Dropdown menu items | ||
441 | .navbar-nav { | ||
442 | // Remove background color from open dropdown | ||
443 | > .open > a { | ||
444 | &, | ||
445 | &:hover, | ||
446 | &:focus { | ||
447 | background-color: @navbar-default-link-active-bg; | ||
448 | color: @navbar-default-link-active-color; | ||
449 | } | ||
450 | } | ||
451 | |||
452 | @media (max-width: @grid-float-breakpoint-max) { | ||
453 | // Dropdowns get custom display when collapsed | ||
454 | .open .dropdown-menu { | ||
455 | > li > a { | ||
456 | color: @navbar-default-link-color; | ||
457 | &:hover, | ||
458 | &:focus { | ||
459 | color: @navbar-default-link-hover-color; | ||
460 | background-color: @navbar-default-link-hover-bg; | ||
461 | } | ||
462 | } | ||
463 | > .active > a { | ||
464 | &, | ||
465 | &:hover, | ||
466 | &:focus { | ||
467 | color: @navbar-default-link-active-color; | ||
468 | background-color: @navbar-default-link-active-bg; | ||
469 | } | ||
470 | } | ||
471 | > .disabled > a { | ||
472 | &, | ||
473 | &:hover, | ||
474 | &:focus { | ||
475 | color: @navbar-default-link-disabled-color; | ||
476 | background-color: @navbar-default-link-disabled-bg; | ||
477 | } | ||
478 | } | ||
479 | } | ||
480 | } | ||
481 | } | ||
482 | |||
483 | |||
484 | // Links in navbars | ||
485 | // | ||
486 | // Add a class to ensure links outside the navbar nav are colored correctly. | ||
487 | |||
488 | .navbar-link { | ||
489 | color: @navbar-default-link-color; | ||
490 | &:hover { | ||
491 | color: @navbar-default-link-hover-color; | ||
492 | } | ||
493 | } | ||
494 | |||
495 | } | ||
496 | |||
497 | // Inverse navbar | ||
498 | |||
499 | .navbar-inverse { | ||
500 | background-color: @navbar-inverse-bg; | ||
501 | border-color: @navbar-inverse-border; | ||
502 | |||
503 | .navbar-brand { | ||
504 | color: @navbar-inverse-brand-color; | ||
505 | &:hover, | ||
506 | &:focus { | ||
507 | color: @navbar-inverse-brand-hover-color; | ||
508 | background-color: @navbar-inverse-brand-hover-bg; | ||
509 | } | ||
510 | } | ||
511 | |||
512 | .navbar-text { | ||
513 | color: @navbar-inverse-color; | ||
514 | } | ||
515 | |||
516 | .navbar-nav { | ||
517 | > li > a { | ||
518 | color: @navbar-inverse-link-color; | ||
519 | |||
520 | &:hover, | ||
521 | &:focus { | ||
522 | color: @navbar-inverse-link-hover-color; | ||
523 | background-color: @navbar-inverse-link-hover-bg; | ||
524 | } | ||
525 | } | ||
526 | > .active > a { | ||
527 | &, | ||
528 | &:hover, | ||
529 | &:focus { | ||
530 | color: @navbar-inverse-link-active-color; | ||
531 | background-color: @navbar-inverse-link-active-bg; | ||
532 | } | ||
533 | } | ||
534 | > .disabled > a { | ||
535 | &, | ||
536 | &:hover, | ||
537 | &:focus { | ||
538 | color: @navbar-inverse-link-disabled-color; | ||
539 | background-color: @navbar-inverse-link-disabled-bg; | ||
540 | } | ||
541 | } | ||
542 | } | ||
543 | |||
544 | // Darken the responsive nav toggle | ||
545 | .navbar-toggle { | ||
546 | border-color: @navbar-inverse-toggle-border-color; | ||
547 | &:hover, | ||
548 | &:focus { | ||
549 | background-color: @navbar-inverse-toggle-hover-bg; | ||
550 | } | ||
551 | .icon-bar { | ||
552 | background-color: @navbar-inverse-toggle-icon-bar-bg; | ||
553 | } | ||
554 | } | ||
555 | |||
556 | .navbar-collapse, | ||
557 | .navbar-form { | ||
558 | border-color: darken(@navbar-inverse-bg, 7%); | ||
559 | } | ||
560 | |||
561 | // Dropdowns | ||
562 | .navbar-nav { | ||
563 | > .open > a { | ||
564 | &, | ||
565 | &:hover, | ||
566 | &:focus { | ||
567 | background-color: @navbar-inverse-link-active-bg; | ||
568 | color: @navbar-inverse-link-active-color; | ||
569 | } | ||
570 | } | ||
571 | |||
572 | @media (max-width: @grid-float-breakpoint-max) { | ||
573 | // Dropdowns get custom display | ||
574 | .open .dropdown-menu { | ||
575 | > .dropdown-header { | ||
576 | border-color: @navbar-inverse-border; | ||
577 | } | ||
578 | .divider { | ||
579 | background-color: @navbar-inverse-border; | ||
580 | } | ||
581 | > li > a { | ||
582 | color: @navbar-inverse-link-color; | ||
583 | &:hover, | ||
584 | &:focus { | ||
585 | color: @navbar-inverse-link-hover-color; | ||
586 | background-color: @navbar-inverse-link-hover-bg; | ||
587 | } | ||
588 | } | ||
589 | > .active > a { | ||
590 | &, | ||
591 | &:hover, | ||
592 | &:focus { | ||
593 | color: @navbar-inverse-link-active-color; | ||
594 | background-color: @navbar-inverse-link-active-bg; | ||
595 | } | ||
596 | } | ||
597 | > .disabled > a { | ||
598 | &, | ||
599 | &:hover, | ||
600 | &:focus { | ||
601 | color: @navbar-inverse-link-disabled-color; | ||
602 | background-color: @navbar-inverse-link-disabled-bg; | ||
603 | } | ||
604 | } | ||
605 | } | ||
606 | } | ||
607 | } | ||
608 | |||
609 | .navbar-link { | ||
610 | color: @navbar-inverse-link-color; | ||
611 | &:hover { | ||
612 | color: @navbar-inverse-link-hover-color; | ||
613 | } | ||
614 | } | ||
615 | |||
616 | } | ||
diff --git a/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.eot b/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.eot new file mode 100644 index 0000000..4a4ca86 --- /dev/null +++ b/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.eot | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.svg b/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.svg new file mode 100644 index 0000000..e3e2dc7 --- /dev/null +++ b/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.svg | |||
@@ -0,0 +1,229 @@ | |||
1 | <?xml version="1.0" standalone="no"?> | ||
2 | <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > | ||
3 | <svg xmlns="http://www.w3.org/2000/svg"> | ||
4 | <metadata></metadata> | ||
5 | <defs> | ||
6 | <font id="glyphicons_halflingsregular" horiz-adv-x="1200" > | ||
7 | <font-face units-per-em="1200" ascent="960" descent="-240" /> | ||
8 | <missing-glyph horiz-adv-x="500" /> | ||
9 | <glyph /> | ||
10 | <glyph /> | ||
11 | <glyph unicode="
" /> | ||
12 | <glyph unicode=" " /> | ||
13 | <glyph unicode="*" d="M100 500v200h259l-183 183l141 141l183 -183v259h200v-259l183 183l141 -141l-183 -183h259v-200h-259l183 -183l-141 -141l-183 183v-259h-200v259l-183 -183l-141 141l183 183h-259z" /> | ||
14 | <glyph unicode="+" d="M0 400v300h400v400h300v-400h400v-300h-400v-400h-300v400h-400z" /> | ||
15 | <glyph unicode=" " /> | ||
16 | <glyph unicode=" " horiz-adv-x="652" /> | ||
17 | <glyph unicode=" " horiz-adv-x="1304" /> | ||
18 | <glyph unicode=" " horiz-adv-x="652" /> | ||
19 | <glyph unicode=" " horiz-adv-x="1304" /> | ||
20 | <glyph unicode=" " horiz-adv-x="434" /> | ||
21 | <glyph unicode=" " horiz-adv-x="326" /> | ||
22 | <glyph unicode=" " horiz-adv-x="217" /> | ||
23 | <glyph unicode=" " horiz-adv-x="217" /> | ||
24 | <glyph unicode=" " horiz-adv-x="163" /> | ||
25 | <glyph unicode=" " horiz-adv-x="260" /> | ||
26 | <glyph unicode=" " horiz-adv-x="72" /> | ||
27 | <glyph unicode=" " horiz-adv-x="260" /> | ||
28 | <glyph unicode=" " horiz-adv-x="326" /> | ||
29 | <glyph unicode="€" d="M100 500l100 100h113q0 47 5 100h-218l100 100h135q37 167 112 257q117 141 297 141q242 0 354 -189q60 -103 66 -209h-181q0 55 -25.5 99t-63.5 68t-75 36.5t-67 12.5q-24 0 -52.5 -10t-62.5 -32t-65.5 -67t-50.5 -107h379l-100 -100h-300q-6 -46 -6 -100h406l-100 -100 h-300q9 -74 33 -132t52.5 -91t62 -54.5t59 -29t46.5 -7.5q29 0 66 13t75 37t63.5 67.5t25.5 96.5h174q-31 -172 -128 -278q-107 -117 -274 -117q-205 0 -324 158q-36 46 -69 131.5t-45 205.5h-217z" /> | ||
30 | <glyph unicode="−" d="M200 400h900v300h-900v-300z" /> | ||
31 | <glyph unicode="◼" horiz-adv-x="500" d="M0 0z" /> | ||
32 | <glyph unicode="☁" d="M-14 494q0 -80 56.5 -137t135.5 -57h750q120 0 205 86.5t85 207.5t-85 207t-205 86q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5z" /> | ||
33 | <glyph unicode="✉" d="M0 100l400 400l200 -200l200 200l400 -400h-1200zM0 300v600l300 -300zM0 1100l600 -603l600 603h-1200zM900 600l300 300v-600z" /> | ||
34 | <glyph unicode="✏" d="M-13 -13l333 112l-223 223zM187 403l214 -214l614 614l-214 214zM887 1103l214 -214l99 92q13 13 13 32.5t-13 33.5l-153 153q-15 13 -33 13t-33 -13z" /> | ||
35 | <glyph unicode="" d="M0 1200h1200l-500 -550v-550h300v-100h-800v100h300v550z" /> | ||
36 | <glyph unicode="" d="M14 84q18 -55 86 -75.5t147 5.5q65 21 109 69t44 90v606l600 155v-521q-64 16 -138 -7q-79 -26 -122.5 -83t-25.5 -111q18 -55 86 -75.5t147 4.5q70 23 111.5 63.5t41.5 95.5v881q0 10 -7 15.5t-17 2.5l-752 -193q-10 -3 -17 -12.5t-7 -19.5v-689q-64 17 -138 -7 q-79 -25 -122.5 -82t-25.5 -112z" /> | ||
37 | <glyph unicode="" d="M23 693q0 200 142 342t342 142t342 -142t142 -342q0 -142 -78 -261l300 -300q7 -8 7 -18t-7 -18l-109 -109q-8 -7 -18 -7t-18 7l-300 300q-119 -78 -261 -78q-200 0 -342 142t-142 342zM176 693q0 -136 97 -233t234 -97t233.5 96.5t96.5 233.5t-96.5 233.5t-233.5 96.5 t-234 -97t-97 -233z" /> | ||
38 | <glyph unicode="" d="M100 784q0 64 28 123t73 100.5t104.5 64t119 20.5t120 -38.5t104.5 -104.5q48 69 109.5 105t121.5 38t118.5 -20.5t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-149.5 152.5t-126.5 127.5 t-94 124.5t-33.5 117.5z" /> | ||
39 | <glyph unicode="" d="M-72 800h479l146 400h2l146 -400h472l-382 -278l145 -449l-384 275l-382 -275l146 447zM168 71l2 1z" /> | ||
40 | <glyph unicode="" d="M-72 800h479l146 400h2l146 -400h472l-382 -278l145 -449l-384 275l-382 -275l146 447zM168 71l2 1zM237 700l196 -142l-73 -226l192 140l195 -141l-74 229l193 140h-235l-77 211l-78 -211h-239z" /> | ||
41 | <glyph unicode="" d="M0 0v143l400 257v100q-37 0 -68.5 74.5t-31.5 125.5v200q0 124 88 212t212 88t212 -88t88 -212v-200q0 -51 -31.5 -125.5t-68.5 -74.5v-100l400 -257v-143h-1200z" /> | ||
42 | <glyph unicode="" d="M0 0v1100h1200v-1100h-1200zM100 100h100v100h-100v-100zM100 300h100v100h-100v-100zM100 500h100v100h-100v-100zM100 700h100v100h-100v-100zM100 900h100v100h-100v-100zM300 100h600v400h-600v-400zM300 600h600v400h-600v-400zM1000 100h100v100h-100v-100z M1000 300h100v100h-100v-100zM1000 500h100v100h-100v-100zM1000 700h100v100h-100v-100zM1000 900h100v100h-100v-100z" /> | ||
43 | <glyph unicode="" d="M0 50v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5zM0 650v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5zM600 50v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5zM600 650v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5z" /> | ||
44 | <glyph unicode="" d="M0 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM0 450v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200 q-21 0 -35.5 14.5t-14.5 35.5zM0 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5 t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 450v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5 v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 450v200q0 21 14.5 35.5t35.5 14.5h200 q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5z" /> | ||
45 | <glyph unicode="" d="M0 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM0 450q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v200q0 21 -14.5 35.5t-35.5 14.5h-200q-21 0 -35.5 -14.5 t-14.5 -35.5v-200zM0 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 50v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5 t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5zM400 450v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5zM400 850v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5 v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5z" /> | ||
46 | <glyph unicode="" d="M29 454l419 -420l818 820l-212 212l-607 -607l-206 207z" /> | ||
47 | <glyph unicode="" d="M106 318l282 282l-282 282l212 212l282 -282l282 282l212 -212l-282 -282l282 -282l-212 -212l-282 282l-282 -282z" /> | ||
48 | <glyph unicode="" d="M23 693q0 200 142 342t342 142t342 -142t142 -342q0 -142 -78 -261l300 -300q7 -8 7 -18t-7 -18l-109 -109q-8 -7 -18 -7t-18 7l-300 300q-119 -78 -261 -78q-200 0 -342 142t-142 342zM176 693q0 -136 97 -233t234 -97t233.5 96.5t96.5 233.5t-96.5 233.5t-233.5 96.5 t-234 -97t-97 -233zM300 600v200h100v100h200v-100h100v-200h-100v-100h-200v100h-100z" /> | ||
49 | <glyph unicode="" d="M23 694q0 200 142 342t342 142t342 -142t142 -342q0 -141 -78 -262l300 -299q7 -7 7 -18t-7 -18l-109 -109q-8 -8 -18 -8t-18 8l-300 300q-119 -78 -261 -78q-200 0 -342 142t-142 342zM176 694q0 -136 97 -233t234 -97t233.5 97t96.5 233t-96.5 233t-233.5 97t-234 -97 t-97 -233zM300 601h400v200h-400v-200z" /> | ||
50 | <glyph unicode="" d="M23 600q0 183 105 331t272 210v-166q-103 -55 -165 -155t-62 -220q0 -177 125 -302t302 -125t302 125t125 302q0 120 -62 220t-165 155v166q167 -62 272 -210t105 -331q0 -118 -45.5 -224.5t-123 -184t-184 -123t-224.5 -45.5t-224.5 45.5t-184 123t-123 184t-45.5 224.5 zM500 750q0 -21 14.5 -35.5t35.5 -14.5h100q21 0 35.5 14.5t14.5 35.5v400q0 21 -14.5 35.5t-35.5 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-400z" /> | ||
51 | <glyph unicode="" d="M100 1h200v300h-200v-300zM400 1v500h200v-500h-200zM700 1v800h200v-800h-200zM1000 1v1200h200v-1200h-200z" /> | ||
52 | <glyph unicode="" d="M26 601q0 -33 6 -74l151 -38l2 -6q14 -49 38 -93l3 -5l-80 -134q45 -59 105 -105l133 81l5 -3q45 -26 94 -39l5 -2l38 -151q40 -5 74 -5q27 0 74 5l38 151l6 2q46 13 93 39l5 3l134 -81q56 44 104 105l-80 134l3 5q24 44 39 93l1 6l152 38q5 40 5 74q0 28 -5 73l-152 38 l-1 6q-16 51 -39 93l-3 5l80 134q-44 58 -104 105l-134 -81l-5 3q-45 25 -93 39l-6 1l-38 152q-40 5 -74 5q-27 0 -74 -5l-38 -152l-5 -1q-50 -14 -94 -39l-5 -3l-133 81q-59 -47 -105 -105l80 -134l-3 -5q-25 -47 -38 -93l-2 -6l-151 -38q-6 -48 -6 -73zM385 601 q0 88 63 151t152 63t152 -63t63 -151q0 -89 -63 -152t-152 -63t-152 63t-63 152z" /> | ||
53 | <glyph unicode="" d="M100 1025v50q0 10 7.5 17.5t17.5 7.5h275v100q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5v-100h275q10 0 17.5 -7.5t7.5 -17.5v-50q0 -11 -7 -18t-18 -7h-1050q-11 0 -18 7t-7 18zM200 100v800h900v-800q0 -41 -29.5 -71t-70.5 -30h-700q-41 0 -70.5 30 t-29.5 71zM300 100h100v700h-100v-700zM500 100h100v700h-100v-700zM500 1100h300v100h-300v-100zM700 100h100v700h-100v-700zM900 100h100v700h-100v-700z" /> | ||
54 | <glyph unicode="" d="M1 601l656 644l644 -644h-200v-600h-300v400h-300v-400h-300v600h-200z" /> | ||
55 | <glyph unicode="" d="M100 25v1150q0 11 7 18t18 7h475v-500h400v-675q0 -11 -7 -18t-18 -7h-850q-11 0 -18 7t-7 18zM700 800v300l300 -300h-300z" /> | ||
56 | <glyph unicode="" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM500 500v400h100 v-300h200v-100h-300z" /> | ||
57 | <glyph unicode="" d="M-100 0l431 1200h209l-21 -300h162l-20 300h208l431 -1200h-538l-41 400h-242l-40 -400h-539zM488 500h224l-27 300h-170z" /> | ||
58 | <glyph unicode="" d="M0 0v400h490l-290 300h200v500h300v-500h200l-290 -300h490v-400h-1100zM813 200h175v100h-175v-100z" /> | ||
59 | <glyph unicode="" d="M1 600q0 122 47.5 233t127.5 191t191 127.5t233 47.5t233 -47.5t191 -127.5t127.5 -191t47.5 -233t-47.5 -233t-127.5 -191t-191 -127.5t-233 -47.5t-233 47.5t-191 127.5t-127.5 191t-47.5 233zM188 600q0 -170 121 -291t291 -121t291 121t121 291t-121 291t-291 121 t-291 -121t-121 -291zM350 600h150v300h200v-300h150l-250 -300z" /> | ||
60 | <glyph unicode="" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM350 600l250 300 l250 -300h-150v-300h-200v300h-150z" /> | ||
61 | <glyph unicode="" d="M0 25v475l200 700h800l199 -700l1 -475q0 -11 -7 -18t-18 -7h-1150q-11 0 -18 7t-7 18zM200 500h200l50 -200h300l50 200h200l-97 500h-606z" /> | ||
62 | <glyph unicode="" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -172 121.5 -293t292.5 -121t292.5 121t121.5 293q0 171 -121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM500 397v401 l297 -200z" /> | ||
63 | <glyph unicode="" d="M23 600q0 -118 45.5 -224.5t123 -184t184 -123t224.5 -45.5t224.5 45.5t184 123t123 184t45.5 224.5h-150q0 -177 -125 -302t-302 -125t-302 125t-125 302t125 302t302 125q136 0 246 -81l-146 -146h400v400l-145 -145q-157 122 -355 122q-118 0 -224.5 -45.5t-184 -123 t-123 -184t-45.5 -224.5z" /> | ||
64 | <glyph unicode="" d="M23 600q0 118 45.5 224.5t123 184t184 123t224.5 45.5q198 0 355 -122l145 145v-400h-400l147 147q-112 80 -247 80q-177 0 -302 -125t-125 -302h-150zM100 0v400h400l-147 -147q112 -80 247 -80q177 0 302 125t125 302h150q0 -118 -45.5 -224.5t-123 -184t-184 -123 t-224.5 -45.5q-198 0 -355 122z" /> | ||
65 | <glyph unicode="" d="M100 0h1100v1200h-1100v-1200zM200 100v900h900v-900h-900zM300 200v100h100v-100h-100zM300 400v100h100v-100h-100zM300 600v100h100v-100h-100zM300 800v100h100v-100h-100zM500 200h500v100h-500v-100zM500 400v100h500v-100h-500zM500 600v100h500v-100h-500z M500 800v100h500v-100h-500z" /> | ||
66 | <glyph unicode="" d="M0 100v600q0 41 29.5 70.5t70.5 29.5h100v200q0 82 59 141t141 59h300q82 0 141 -59t59 -141v-200h100q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-900q-41 0 -70.5 29.5t-29.5 70.5zM400 800h300v150q0 21 -14.5 35.5t-35.5 14.5h-200 q-21 0 -35.5 -14.5t-14.5 -35.5v-150z" /> | ||
67 | <glyph unicode="" d="M100 0v1100h100v-1100h-100zM300 400q60 60 127.5 84t127.5 17.5t122 -23t119 -30t110 -11t103 42t91 120.5v500q-40 -81 -101.5 -115.5t-127.5 -29.5t-138 25t-139.5 40t-125.5 25t-103 -29.5t-65 -115.5v-500z" /> | ||
68 | <glyph unicode="" d="M0 275q0 -11 7 -18t18 -7h50q11 0 18 7t7 18v300q0 127 70.5 231.5t184.5 161.5t245 57t245 -57t184.5 -161.5t70.5 -231.5v-300q0 -11 7 -18t18 -7h50q11 0 18 7t7 18v300q0 116 -49.5 227t-131 192.5t-192.5 131t-227 49.5t-227 -49.5t-192.5 -131t-131 -192.5 t-49.5 -227v-300zM200 20v460q0 8 6 14t14 6h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14zM800 20v460q0 8 6 14t14 6h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14z" /> | ||
69 | <glyph unicode="" d="M0 400h300l300 -200v800l-300 -200h-300v-400zM688 459l141 141l-141 141l71 71l141 -141l141 141l71 -71l-141 -141l141 -141l-71 -71l-141 141l-141 -141z" /> | ||
70 | <glyph unicode="" d="M0 400h300l300 -200v800l-300 -200h-300v-400zM700 857l69 53q111 -135 111 -310q0 -169 -106 -302l-67 54q86 110 86 248q0 146 -93 257z" /> | ||
71 | <glyph unicode="" d="M0 401v400h300l300 200v-800l-300 200h-300zM702 858l69 53q111 -135 111 -310q0 -170 -106 -303l-67 55q86 110 86 248q0 145 -93 257zM889 951l7 -8q123 -151 123 -344q0 -189 -119 -339l-7 -8l81 -66l6 8q142 178 142 405q0 230 -144 408l-6 8z" /> | ||
72 | <glyph unicode="" d="M0 0h500v500h-200v100h-100v-100h-200v-500zM0 600h100v100h400v100h100v100h-100v300h-500v-600zM100 100v300h300v-300h-300zM100 800v300h300v-300h-300zM200 200v100h100v-100h-100zM200 900h100v100h-100v-100zM500 500v100h300v-300h200v-100h-100v-100h-200v100 h-100v100h100v200h-200zM600 0v100h100v-100h-100zM600 1000h100v-300h200v-300h300v200h-200v100h200v500h-600v-200zM800 800v300h300v-300h-300zM900 0v100h300v-100h-300zM900 900v100h100v-100h-100zM1100 200v100h100v-100h-100z" /> | ||
73 | <glyph unicode="" d="M0 200h100v1000h-100v-1000zM100 0v100h300v-100h-300zM200 200v1000h100v-1000h-100zM500 0v91h100v-91h-100zM500 200v1000h200v-1000h-200zM700 0v91h100v-91h-100zM800 200v1000h100v-1000h-100zM900 0v91h200v-91h-200zM1000 200v1000h200v-1000h-200z" /> | ||
74 | <glyph unicode="" d="M0 700l1 475q0 10 7.5 17.5t17.5 7.5h474l700 -700l-500 -500zM148 953q0 -42 29 -71q30 -30 71.5 -30t71.5 30q29 29 29 71t-29 71q-30 30 -71.5 30t-71.5 -30q-29 -29 -29 -71z" /> | ||
75 | <glyph unicode="" d="M1 700l1 475q0 11 7 18t18 7h474l700 -700l-500 -500zM148 953q0 -42 30 -71q29 -30 71 -30t71 30q30 29 30 71t-30 71q-29 30 -71 30t-71 -30q-30 -29 -30 -71zM701 1200h100l700 -700l-500 -500l-50 50l450 450z" /> | ||
76 | <glyph unicode="" d="M100 0v1025l175 175h925v-1000l-100 -100v1000h-750l-100 -100h750v-1000h-900z" /> | ||
77 | <glyph unicode="" d="M200 0l450 444l450 -443v1150q0 20 -14.5 35t-35.5 15h-800q-21 0 -35.5 -15t-14.5 -35v-1151z" /> | ||
78 | <glyph unicode="" d="M0 100v700h200l100 -200h600l100 200h200v-700h-200v200h-800v-200h-200zM253 829l40 -124h592l62 124l-94 346q-2 11 -10 18t-18 7h-450q-10 0 -18 -7t-10 -18zM281 24l38 152q2 10 11.5 17t19.5 7h500q10 0 19.5 -7t11.5 -17l38 -152q2 -10 -3.5 -17t-15.5 -7h-600 q-10 0 -15.5 7t-3.5 17z" /> | ||
79 | <glyph unicode="" d="M0 200q0 -41 29.5 -70.5t70.5 -29.5h1000q41 0 70.5 29.5t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5h-150q-4 8 -11.5 21.5t-33 48t-53 61t-69 48t-83.5 21.5h-200q-41 0 -82 -20.5t-70 -50t-52 -59t-34 -50.5l-12 -20h-150q-41 0 -70.5 -29.5t-29.5 -70.5v-600z M356 500q0 100 72 172t172 72t172 -72t72 -172t-72 -172t-172 -72t-172 72t-72 172zM494 500q0 -44 31 -75t75 -31t75 31t31 75t-31 75t-75 31t-75 -31t-31 -75zM900 700v100h100v-100h-100z" /> | ||
80 | <glyph unicode="" d="M53 0h365v66q-41 0 -72 11t-49 38t1 71l92 234h391l82 -222q16 -45 -5.5 -88.5t-74.5 -43.5v-66h417v66q-34 1 -74 43q-18 19 -33 42t-21 37l-6 13l-385 998h-93l-399 -1006q-24 -48 -52 -75q-12 -12 -33 -25t-36 -20l-15 -7v-66zM416 521l178 457l46 -140l116 -317h-340 z" /> | ||
81 | <glyph unicode="" d="M100 0v89q41 7 70.5 32.5t29.5 65.5v827q0 28 -1 39.5t-5.5 26t-15.5 21t-29 14t-49 14.5v71l471 -1q120 0 213 -88t93 -228q0 -55 -11.5 -101.5t-28 -74t-33.5 -47.5t-28 -28l-12 -7q8 -3 21.5 -9t48 -31.5t60.5 -58t47.5 -91.5t21.5 -129q0 -84 -59 -156.5t-142 -111 t-162 -38.5h-500zM400 200h161q89 0 153 48.5t64 132.5q0 90 -62.5 154.5t-156.5 64.5h-159v-400zM400 700h139q76 0 130 61.5t54 138.5q0 82 -84 130.5t-239 48.5v-379z" /> | ||
82 | <glyph unicode="" d="M200 0v57q77 7 134.5 40.5t65.5 80.5l173 849q10 56 -10 74t-91 37q-6 1 -10.5 2.5t-9.5 2.5v57h425l2 -57q-33 -8 -62 -25.5t-46 -37t-29.5 -38t-17.5 -30.5l-5 -12l-128 -825q-10 -52 14 -82t95 -36v-57h-500z" /> | ||
83 | <glyph unicode="" d="M-75 200h75v800h-75l125 167l125 -167h-75v-800h75l-125 -167zM300 900v300h150h700h150v-300h-50q0 29 -8 48.5t-18.5 30t-33.5 15t-39.5 5.5t-50.5 1h-200v-850l100 -50v-100h-400v100l100 50v850h-200q-34 0 -50.5 -1t-40 -5.5t-33.5 -15t-18.5 -30t-8.5 -48.5h-49z " /> | ||
84 | <glyph unicode="" d="M33 51l167 125v-75h800v75l167 -125l-167 -125v75h-800v-75zM100 901v300h150h700h150v-300h-50q0 29 -8 48.5t-18 30t-33.5 15t-40 5.5t-50.5 1h-200v-650l100 -50v-100h-400v100l100 50v650h-200q-34 0 -50.5 -1t-39.5 -5.5t-33.5 -15t-18.5 -30t-8 -48.5h-50z" /> | ||
85 | <glyph unicode="" d="M0 50q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 350q0 -20 14.5 -35t35.5 -15h800q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-800q-21 0 -35.5 -14.5t-14.5 -35.5 v-100zM0 650q0 -20 14.5 -35t35.5 -15h1000q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1000q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 950q0 -20 14.5 -35t35.5 -15h600q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-600q-21 0 -35.5 -14.5 t-14.5 -35.5v-100z" /> | ||
86 | <glyph unicode="" d="M0 50q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 650q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5 v-100zM200 350q0 -20 14.5 -35t35.5 -15h700q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-700q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM200 950q0 -20 14.5 -35t35.5 -15h700q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-700q-21 0 -35.5 -14.5 t-14.5 -35.5v-100z" /> | ||
87 | <glyph unicode="" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM100 650v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1000q-21 0 -35.5 15 t-14.5 35zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM500 950v100q0 21 14.5 35.5t35.5 14.5h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-600 q-21 0 -35.5 15t-14.5 35z" /> | ||
88 | <glyph unicode="" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM0 350v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15 t-14.5 35zM0 650v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM0 950v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100 q-21 0 -35.5 15t-14.5 35z" /> | ||
89 | <glyph unicode="" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35zM0 350v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15 t-14.5 35zM0 650v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35zM0 950v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15 t-14.5 35zM300 50v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800 q-21 0 -35.5 15t-14.5 35zM300 650v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM300 950v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15 h-800q-21 0 -35.5 15t-14.5 35z" /> | ||
90 | <glyph unicode="" d="M-101 500v100h201v75l166 -125l-166 -125v75h-201zM300 0h100v1100h-100v-1100zM500 50q0 -20 14.5 -35t35.5 -15h600q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-600q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 350q0 -20 14.5 -35t35.5 -15h300q20 0 35 15t15 35 v100q0 21 -15 35.5t-35 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 650q0 -20 14.5 -35t35.5 -15h500q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 950q0 -20 14.5 -35t35.5 -15h100q20 0 35 15t15 35v100 q0 21 -15 35.5t-35 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-100z" /> | ||
91 | <glyph unicode="" d="M1 50q0 -20 14.5 -35t35.5 -15h600q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-600q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 350q0 -20 14.5 -35t35.5 -15h300q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 650 q0 -20 14.5 -35t35.5 -15h500q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 950q0 -20 14.5 -35t35.5 -15h100q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM801 0v1100h100v-1100 h-100zM934 550l167 -125v75h200v100h-200v75z" /> | ||
92 | <glyph unicode="" d="M0 275v650q0 31 22 53t53 22h750q31 0 53 -22t22 -53v-650q0 -31 -22 -53t-53 -22h-750q-31 0 -53 22t-22 53zM900 600l300 300v-600z" /> | ||
93 | <glyph unicode="" d="M0 44v1012q0 18 13 31t31 13h1112q19 0 31.5 -13t12.5 -31v-1012q0 -18 -12.5 -31t-31.5 -13h-1112q-18 0 -31 13t-13 31zM100 263l247 182l298 -131l-74 156l293 318l236 -288v500h-1000v-737zM208 750q0 56 39 95t95 39t95 -39t39 -95t-39 -95t-95 -39t-95 39t-39 95z " /> | ||
94 | <glyph unicode="" d="M148 745q0 124 60.5 231.5t165 172t226.5 64.5q123 0 227 -63t164.5 -169.5t60.5 -229.5t-73 -272q-73 -114 -166.5 -237t-150.5 -189l-57 -66q-10 9 -27 26t-66.5 70.5t-96 109t-104 135.5t-100.5 155q-63 139 -63 262zM342 772q0 -107 75.5 -182.5t181.5 -75.5 q107 0 182.5 75.5t75.5 182.5t-75.5 182t-182.5 75t-182 -75.5t-75 -181.5z" /> | ||
95 | <glyph unicode="" d="M1 600q0 122 47.5 233t127.5 191t191 127.5t233 47.5t233 -47.5t191 -127.5t127.5 -191t47.5 -233t-47.5 -233t-127.5 -191t-191 -127.5t-233 -47.5t-233 47.5t-191 127.5t-127.5 191t-47.5 233zM173 600q0 -177 125.5 -302t301.5 -125v854q-176 0 -301.5 -125 t-125.5 -302z" /> | ||
96 | <glyph unicode="" d="M117 406q0 94 34 186t88.5 172.5t112 159t115 177t87.5 194.5q21 -71 57.5 -142.5t76 -130.5t83 -118.5t82 -117t70 -116t50 -125.5t18.5 -136q0 -89 -39 -165.5t-102 -126.5t-140 -79.5t-156 -33.5q-114 6 -211.5 53t-161.5 139t-64 210zM243 414q14 -82 59.5 -136 t136.5 -80l16 98q-7 6 -18 17t-34 48t-33 77q-15 73 -14 143.5t10 122.5l9 51q-92 -110 -119.5 -185t-12.5 -156z" /> | ||
97 | <glyph unicode="" d="M0 400v300q0 165 117.5 282.5t282.5 117.5q366 -6 397 -14l-186 -186h-311q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v125l200 200v-225q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5 t-117.5 282.5zM436 341l161 50l412 412l-114 113l-405 -405zM995 1015l113 -113l113 113l-21 85l-92 28z" /> | ||
98 | <glyph unicode="" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h261l2 -80q-133 -32 -218 -120h-145q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5l200 153v-53q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5 zM423 524q30 38 81.5 64t103 35.5t99 14t77.5 3.5l29 -1v-209l360 324l-359 318v-216q-7 0 -19 -1t-48 -8t-69.5 -18.5t-76.5 -37t-76.5 -59t-62 -88t-39.5 -121.5z" /> | ||
99 | <glyph unicode="" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q61 0 127 -23l-178 -177h-349q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v69l200 200v-169q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5 t-117.5 282.5zM342 632l283 -284l567 567l-137 137l-430 -431l-146 147z" /> | ||
100 | <glyph unicode="" d="M0 603l300 296v-198h200v200h-200l300 300l295 -300h-195v-200h200v198l300 -296l-300 -300v198h-200v-200h195l-295 -300l-300 300h200v200h-200v-198z" /> | ||
101 | <glyph unicode="" d="M200 50v1000q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-437l500 487v-1100l-500 488v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5z" /> | ||
102 | <glyph unicode="" d="M0 50v1000q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-437l500 487v-487l500 487v-1100l-500 488v-488l-500 488v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5z" /> | ||
103 | <glyph unicode="" d="M136 550l564 550v-487l500 487v-1100l-500 488v-488z" /> | ||
104 | <glyph unicode="" d="M200 0l900 550l-900 550v-1100z" /> | ||
105 | <glyph unicode="" d="M200 150q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v800q0 21 -14.5 35.5t-35.5 14.5h-200q-21 0 -35.5 -14.5t-14.5 -35.5v-800zM600 150q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v800q0 21 -14.5 35.5t-35.5 14.5h-200 q-21 0 -35.5 -14.5t-14.5 -35.5v-800z" /> | ||
106 | <glyph unicode="" d="M200 150q0 -20 14.5 -35t35.5 -15h800q21 0 35.5 15t14.5 35v800q0 21 -14.5 35.5t-35.5 14.5h-800q-21 0 -35.5 -14.5t-14.5 -35.5v-800z" /> | ||
107 | <glyph unicode="" d="M0 0v1100l500 -487v487l564 -550l-564 -550v488z" /> | ||
108 | <glyph unicode="" d="M0 0v1100l500 -487v487l500 -487v437q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438l-500 -488v488z" /> | ||
109 | <glyph unicode="" d="M300 0v1100l500 -487v437q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438z" /> | ||
110 | <glyph unicode="" d="M100 250v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5zM100 500h1100l-550 564z" /> | ||
111 | <glyph unicode="" d="M185 599l592 -592l240 240l-353 353l353 353l-240 240z" /> | ||
112 | <glyph unicode="" d="M272 194l353 353l-353 353l241 240l572 -571l21 -22l-1 -1v-1l-592 -591z" /> | ||
113 | <glyph unicode="" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM300 500h200v-200h200v200h200v200h-200v200h-200v-200h-200v-200z" /> | ||
114 | <glyph unicode="" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM300 500h600v200h-600v-200z" /> | ||
115 | <glyph unicode="" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM246 459l213 -213l141 142l141 -142l213 213l-142 141l142 141l-213 212l-141 -141l-141 142l-212 -213l141 -141 z" /> | ||
116 | <glyph unicode="" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM270 551l276 -277l411 411l-175 174l-236 -236l-102 102z" /> | ||
117 | <glyph unicode="" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM364 700h143q4 0 11.5 -1t11 -1t6.5 3t3 9t1 11t3.5 8.5t3.5 6t5.5 4t6.5 2.5t9 1.5t9 0.5h11.5h12.5 q19 0 30 -10t11 -26q0 -22 -4 -28t-27 -22q-5 -1 -12.5 -3t-27 -13.5t-34 -27t-26.5 -46t-11 -68.5h200q5 3 14 8t31.5 25.5t39.5 45.5t31 69t14 94q0 51 -17.5 89t-42 58t-58.5 32t-58.5 15t-51.5 3q-50 0 -90.5 -12t-75 -38.5t-53.5 -74.5t-19 -114zM500 300h200v100h-200 v-100z" /> | ||
118 | <glyph unicode="" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM400 300h400v100h-100v300h-300v-100h100v-200h-100v-100zM500 800h200v100h-200v-100z" /> | ||
119 | <glyph unicode="" d="M0 500v200h195q31 125 98.5 199.5t206.5 100.5v200h200v-200q54 -20 113 -60t112.5 -105.5t71.5 -134.5h203v-200h-203q-25 -102 -116.5 -186t-180.5 -117v-197h-200v197q-140 27 -208 102.5t-98 200.5h-194zM290 500q24 -73 79.5 -127.5t130.5 -78.5v206h200v-206 q149 48 201 206h-201v200h200q-25 74 -75.5 127t-124.5 77v-204h-200v203q-75 -23 -130 -77t-79 -126h209v-200h-210z" /> | ||
120 | <glyph unicode="" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM356 465l135 135 l-135 135l109 109l135 -135l135 135l109 -109l-135 -135l135 -135l-109 -109l-135 135l-135 -135z" /> | ||
121 | <glyph unicode="" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM322 537l141 141 l87 -87l204 205l142 -142l-346 -345z" /> | ||
122 | <glyph unicode="" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -115 62 -215l568 567q-100 62 -216 62q-171 0 -292.5 -121.5t-121.5 -292.5zM391 245q97 -59 209 -59q171 0 292.5 121.5t121.5 292.5 q0 112 -59 209z" /> | ||
123 | <glyph unicode="" d="M0 547l600 453v-300h600v-300h-600v-301z" /> | ||
124 | <glyph unicode="" d="M0 400v300h600v300l600 -453l-600 -448v301h-600z" /> | ||
125 | <glyph unicode="" d="M204 600l450 600l444 -600h-298v-600h-300v600h-296z" /> | ||
126 | <glyph unicode="" d="M104 600h296v600h300v-600h298l-449 -600z" /> | ||
127 | <glyph unicode="" d="M0 200q6 132 41 238.5t103.5 193t184 138t271.5 59.5v271l600 -453l-600 -448v301q-95 -2 -183 -20t-170 -52t-147 -92.5t-100 -135.5z" /> | ||
128 | <glyph unicode="" d="M0 0v400l129 -129l294 294l142 -142l-294 -294l129 -129h-400zM635 777l142 -142l294 294l129 -129v400h-400l129 -129z" /> | ||
129 | <glyph unicode="" d="M34 176l295 295l-129 129h400v-400l-129 130l-295 -295zM600 600v400l129 -129l295 295l142 -141l-295 -295l129 -130h-400z" /> | ||
130 | <glyph unicode="" d="M23 600q0 118 45.5 224.5t123 184t184 123t224.5 45.5t224.5 -45.5t184 -123t123 -184t45.5 -224.5t-45.5 -224.5t-123 -184t-184 -123t-224.5 -45.5t-224.5 45.5t-184 123t-123 184t-45.5 224.5zM456 851l58 -302q4 -20 21.5 -34.5t37.5 -14.5h54q20 0 37.5 14.5 t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5h-207q-21 0 -33 -14.5t-8 -34.5zM500 300h200v100h-200v-100z" /> | ||
131 | <glyph unicode="" d="M0 800h100v-200h400v300h200v-300h400v200h100v100h-111q1 1 1 6.5t-1.5 15t-3.5 17.5l-34 172q-11 39 -41.5 63t-69.5 24q-32 0 -61 -17l-239 -144q-22 -13 -40 -35q-19 24 -40 36l-238 144q-33 18 -62 18q-39 0 -69.5 -23t-40.5 -61l-35 -177q-2 -8 -3 -18t-1 -15v-6 h-111v-100zM100 0h400v400h-400v-400zM200 900q-3 0 14 48t36 96l18 47l213 -191h-281zM700 0v400h400v-400h-400zM731 900l202 197q5 -12 12 -32.5t23 -64t25 -72t7 -28.5h-269z" /> | ||
132 | <glyph unicode="" d="M0 -22v143l216 193q-9 53 -13 83t-5.5 94t9 113t38.5 114t74 124q47 60 99.5 102.5t103 68t127.5 48t145.5 37.5t184.5 43.5t220 58.5q0 -189 -22 -343t-59 -258t-89 -181.5t-108.5 -120t-122 -68t-125.5 -30t-121.5 -1.5t-107.5 12.5t-87.5 17t-56.5 7.5l-99 -55z M238.5 300.5q19.5 -6.5 86.5 76.5q55 66 367 234q70 38 118.5 69.5t102 79t99 111.5t86.5 148q22 50 24 60t-6 19q-7 5 -17 5t-26.5 -14.5t-33.5 -39.5q-35 -51 -113.5 -108.5t-139.5 -89.5l-61 -32q-369 -197 -458 -401q-48 -111 -28.5 -117.5z" /> | ||
133 | <glyph unicode="" d="M111 408q0 -33 5 -63q9 -56 44 -119.5t105 -108.5q31 -21 64 -16t62 23.5t57 49.5t48 61.5t35 60.5q32 66 39 184.5t-13 157.5q79 -80 122 -164t26 -184q-5 -33 -20.5 -69.5t-37.5 -80.5q-10 -19 -14.5 -29t-12 -26t-9 -23.5t-3 -19t2.5 -15.5t11 -9.5t19.5 -5t30.5 2.5 t42 8q57 20 91 34t87.5 44.5t87 64t65.5 88.5t47 122q38 172 -44.5 341.5t-246.5 278.5q22 -44 43 -129q39 -159 -32 -154q-15 2 -33 9q-79 33 -120.5 100t-44 175.5t48.5 257.5q-13 -8 -34 -23.5t-72.5 -66.5t-88.5 -105.5t-60 -138t-8 -166.5q2 -12 8 -41.5t8 -43t6 -39.5 t3.5 -39.5t-1 -33.5t-6 -31.5t-13.5 -24t-21 -20.5t-31 -12q-38 -10 -67 13t-40.5 61.5t-15 81.5t10.5 75q-52 -46 -83.5 -101t-39 -107t-7.5 -85z" /> | ||
134 | <glyph unicode="" d="M-61 600l26 40q6 10 20 30t49 63.5t74.5 85.5t97 90t116.5 83.5t132.5 59t145.5 23.5t145.5 -23.5t132.5 -59t116.5 -83.5t97 -90t74.5 -85.5t49 -63.5t20 -30l26 -40l-26 -40q-6 -10 -20 -30t-49 -63.5t-74.5 -85.5t-97 -90t-116.5 -83.5t-132.5 -59t-145.5 -23.5 t-145.5 23.5t-132.5 59t-116.5 83.5t-97 90t-74.5 85.5t-49 63.5t-20 30zM120 600q7 -10 40.5 -58t56 -78.5t68 -77.5t87.5 -75t103 -49.5t125 -21.5t123.5 20t100.5 45.5t85.5 71.5t66.5 75.5t58 81.5t47 66q-1 1 -28.5 37.5t-42 55t-43.5 53t-57.5 63.5t-58.5 54 q49 -74 49 -163q0 -124 -88 -212t-212 -88t-212 88t-88 212q0 85 46 158q-102 -87 -226 -258zM377 656q49 -124 154 -191l105 105q-37 24 -75 72t-57 84l-20 36z" /> | ||
135 | <glyph unicode="" d="M-61 600l26 40q6 10 20 30t49 63.5t74.5 85.5t97 90t116.5 83.5t132.5 59t145.5 23.5q61 0 121 -17l37 142h148l-314 -1200h-148l37 143q-82 21 -165 71.5t-140 102t-109.5 112t-72 88.5t-29.5 43zM120 600q210 -282 393 -336l37 141q-107 18 -178.5 101.5t-71.5 193.5 q0 85 46 158q-102 -87 -226 -258zM377 656q49 -124 154 -191l47 47l23 87q-30 28 -59 69t-44 68l-14 26zM780 161l38 145q22 15 44.5 34t46 44t40.5 44t41 50.5t33.5 43.5t33 44t24.5 34q-97 127 -140 175l39 146q67 -54 131.5 -125.5t87.5 -103.5t36 -52l26 -40l-26 -40 q-7 -12 -25.5 -38t-63.5 -79.5t-95.5 -102.5t-124 -100t-146.5 -79z" /> | ||
136 | <glyph unicode="" d="M-97.5 34q13.5 -34 50.5 -34h1294q37 0 50.5 35.5t-7.5 67.5l-642 1056q-20 34 -48 36.5t-48 -29.5l-642 -1066q-21 -32 -7.5 -66zM155 200l445 723l445 -723h-345v100h-200v-100h-345zM500 600l100 -300l100 300v100h-200v-100z" /> | ||
137 | <glyph unicode="" d="M100 262v41q0 20 11 44.5t26 38.5l363 325v339q0 62 44 106t106 44t106 -44t44 -106v-339l363 -325q15 -14 26 -38.5t11 -44.5v-41q0 -20 -12 -26.5t-29 5.5l-359 249v-263q100 -91 100 -113v-64q0 -20 -13 -28.5t-32 0.5l-94 78h-222l-94 -78q-19 -9 -32 -0.5t-13 28.5 v64q0 22 100 113v263l-359 -249q-17 -12 -29 -5.5t-12 26.5z" /> | ||
138 | <glyph unicode="" d="M0 50q0 -20 14.5 -35t35.5 -15h1000q21 0 35.5 15t14.5 35v750h-1100v-750zM0 900h1100v150q0 21 -14.5 35.5t-35.5 14.5h-150v100h-100v-100h-500v100h-100v-100h-150q-21 0 -35.5 -14.5t-14.5 -35.5v-150zM100 100v100h100v-100h-100zM100 300v100h100v-100h-100z M100 500v100h100v-100h-100zM300 100v100h100v-100h-100zM300 300v100h100v-100h-100zM300 500v100h100v-100h-100zM500 100v100h100v-100h-100zM500 300v100h100v-100h-100zM500 500v100h100v-100h-100zM700 100v100h100v-100h-100zM700 300v100h100v-100h-100zM700 500 v100h100v-100h-100zM900 100v100h100v-100h-100zM900 300v100h100v-100h-100zM900 500v100h100v-100h-100z" /> | ||
139 | <glyph unicode="" d="M0 200v200h259l600 600h241v198l300 -295l-300 -300v197h-159l-600 -600h-341zM0 800h259l122 -122l141 142l-181 180h-341v-200zM678 381l141 142l122 -123h159v198l300 -295l-300 -300v197h-241z" /> | ||
140 | <glyph unicode="" d="M0 400v600q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-596l-304 -300v300h-100q-41 0 -70.5 29.5t-29.5 70.5z" /> | ||
141 | <glyph unicode="" d="M100 600v200h300v-250q0 -113 6 -145q17 -92 102 -117q39 -11 92 -11q37 0 66.5 5.5t50 15.5t36 24t24 31.5t14 37.5t7 42t2.5 45t0 47v25v250h300v-200q0 -42 -3 -83t-15 -104t-31.5 -116t-58 -109.5t-89 -96.5t-129 -65.5t-174.5 -25.5t-174.5 25.5t-129 65.5t-89 96.5 t-58 109.5t-31.5 116t-15 104t-3 83zM100 900v300h300v-300h-300zM800 900v300h300v-300h-300z" /> | ||
142 | <glyph unicode="" d="M-30 411l227 -227l352 353l353 -353l226 227l-578 579z" /> | ||
143 | <glyph unicode="" d="M70 797l580 -579l578 579l-226 227l-353 -353l-352 353z" /> | ||
144 | <glyph unicode="" d="M-198 700l299 283l300 -283h-203v-400h385l215 -200h-800v600h-196zM402 1000l215 -200h381v-400h-198l299 -283l299 283h-200v600h-796z" /> | ||
145 | <glyph unicode="" d="M18 939q-5 24 10 42q14 19 39 19h896l38 162q5 17 18.5 27.5t30.5 10.5h94q20 0 35 -14.5t15 -35.5t-15 -35.5t-35 -14.5h-54l-201 -961q-2 -4 -6 -10.5t-19 -17.5t-33 -11h-31v-50q0 -20 -14.5 -35t-35.5 -15t-35.5 15t-14.5 35v50h-300v-50q0 -20 -14.5 -35t-35.5 -15 t-35.5 15t-14.5 35v50h-50q-21 0 -35.5 15t-14.5 35q0 21 14.5 35.5t35.5 14.5h535l48 200h-633q-32 0 -54.5 21t-27.5 43z" /> | ||
146 | <glyph unicode="" d="M0 0v800h1200v-800h-1200zM0 900v100h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500v-100h-1200z" /> | ||
147 | <glyph unicode="" d="M1 0l300 700h1200l-300 -700h-1200zM1 400v600h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500v-200h-1000z" /> | ||
148 | <glyph unicode="" d="M302 300h198v600h-198l298 300l298 -300h-198v-600h198l-298 -300z" /> | ||
149 | <glyph unicode="" d="M0 600l300 298v-198h600v198l300 -298l-300 -297v197h-600v-197z" /> | ||
150 | <glyph unicode="" d="M0 100v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM31 400l172 739q5 22 23 41.5t38 19.5h672q19 0 37.5 -22.5t23.5 -45.5l172 -732h-1138zM800 100h100v100h-100v-100z M1000 100h100v100h-100v-100z" /> | ||
151 | <glyph unicode="" d="M-101 600v50q0 24 25 49t50 38l25 13v-250l-11 5.5t-24 14t-30 21.5t-24 27.5t-11 31.5zM100 500v250v8v8v7t0.5 7t1.5 5.5t2 5t3 4t4.5 3.5t6 1.5t7.5 0.5h200l675 250v-850l-675 200h-38l47 -276q2 -12 -3 -17.5t-11 -6t-21 -0.5h-8h-83q-20 0 -34.5 14t-18.5 35 q-55 337 -55 351zM1100 200v850q0 21 14.5 35.5t35.5 14.5q20 0 35 -14.5t15 -35.5v-850q0 -20 -15 -35t-35 -15q-21 0 -35.5 15t-14.5 35z" /> | ||
152 | <glyph unicode="" d="M74 350q0 21 13.5 35.5t33.5 14.5h18l117 173l63 327q15 77 76 140t144 83l-18 32q-6 19 3 32t29 13h94q20 0 29 -10.5t3 -29.5q-18 -36 -18 -37q83 -19 144 -82.5t76 -140.5l63 -327l118 -173h17q20 0 33.5 -14.5t13.5 -35.5q0 -20 -13 -40t-31 -27q-8 -3 -23 -8.5 t-65 -20t-103 -25t-132.5 -19.5t-158.5 -9q-125 0 -245.5 20.5t-178.5 40.5l-58 20q-18 7 -31 27.5t-13 40.5zM497 110q12 -49 40 -79.5t63 -30.5t63 30.5t39 79.5q-48 -6 -102 -6t-103 6z" /> | ||
153 | <glyph unicode="" d="M21 445l233 -45l-78 -224l224 78l45 -233l155 179l155 -179l45 233l224 -78l-78 224l234 45l-180 155l180 156l-234 44l78 225l-224 -78l-45 233l-155 -180l-155 180l-45 -233l-224 78l78 -225l-233 -44l179 -156z" /> | ||
154 | <glyph unicode="" d="M0 200h200v600h-200v-600zM300 275q0 -75 100 -75h61q124 -100 139 -100h250q46 0 83 57l238 344q29 31 29 74v100q0 44 -30.5 84.5t-69.5 40.5h-328q28 118 28 125v150q0 44 -30.5 84.5t-69.5 40.5h-50q-27 0 -51 -20t-38 -48l-96 -198l-145 -196q-20 -26 -20 -63v-400z M400 300v375l150 213l100 212h50v-175l-50 -225h450v-125l-250 -375h-214l-136 100h-100z" /> | ||
155 | <glyph unicode="" d="M0 400v600h200v-600h-200zM300 525v400q0 75 100 75h61q124 100 139 100h250q46 0 83 -57l238 -344q29 -31 29 -74v-100q0 -44 -30.5 -84.5t-69.5 -40.5h-328q28 -118 28 -125v-150q0 -44 -30.5 -84.5t-69.5 -40.5h-50q-27 0 -51 20t-38 48l-96 198l-145 196 q-20 26 -20 63zM400 525l150 -212l100 -213h50v175l-50 225h450v125l-250 375h-214l-136 -100h-100v-375z" /> | ||
156 | <glyph unicode="" d="M8 200v600h200v-600h-200zM308 275v525q0 17 14 35.5t28 28.5l14 9l362 230q14 6 25 6q17 0 29 -12l109 -112q14 -14 14 -34q0 -18 -11 -32l-85 -121h302q85 0 138.5 -38t53.5 -110t-54.5 -111t-138.5 -39h-107l-130 -339q-7 -22 -20.5 -41.5t-28.5 -19.5h-341 q-7 0 -90 81t-83 94zM408 289l100 -89h293l131 339q6 21 19.5 41t28.5 20h203q16 0 25 15t9 36q0 20 -9 34.5t-25 14.5h-457h-6.5h-7.5t-6.5 0.5t-6 1t-5 1.5t-5.5 2.5t-4 4t-4 5.5q-5 12 -5 20q0 14 10 27l147 183l-86 83l-339 -236v-503z" /> | ||
157 | <glyph unicode="" d="M-101 651q0 72 54 110t139 38l302 -1l-85 121q-11 16 -11 32q0 21 14 34l109 113q13 12 29 12q11 0 25 -6l365 -230q7 -4 17 -10.5t26.5 -26t16.5 -36.5v-526q0 -13 -86 -93.5t-94 -80.5h-341q-16 0 -29.5 20t-19.5 41l-130 339h-107q-84 0 -139 39t-55 111zM-1 601h222 q15 0 28.5 -20.5t19.5 -40.5l131 -339h293l107 89v502l-343 237l-87 -83l145 -184q10 -11 10 -26q0 -11 -5 -20q-1 -3 -3.5 -5.5l-4 -4t-5 -2.5t-5.5 -1.5t-6.5 -1t-6.5 -0.5h-7.5h-6.5h-476v-100zM1000 201v600h200v-600h-200z" /> | ||
158 | <glyph unicode="" d="M97 719l230 -363q4 -6 10.5 -15.5t26 -25t36.5 -15.5h525q13 0 94 83t81 90v342q0 15 -20 28.5t-41 19.5l-339 131v106q0 84 -39 139t-111 55t-110 -53.5t-38 -138.5v-302l-121 84q-15 12 -33.5 11.5t-32.5 -13.5l-112 -110q-22 -22 -6 -53zM172 739l83 86l183 -146 q22 -18 47 -5q3 1 5.5 3.5l4 4t2.5 5t1.5 5.5t1 6.5t0.5 6.5v7.5v6.5v456q0 22 25 31t50 -0.5t25 -30.5v-202q0 -16 20 -29.5t41 -19.5l339 -130v-294l-89 -100h-503zM400 0v200h600v-200h-600z" /> | ||
159 | <glyph unicode="" d="M2 585q-16 -31 6 -53l112 -110q13 -13 32 -13.5t34 10.5l121 85q0 -51 -0.5 -153.5t-0.5 -148.5q0 -84 38.5 -138t110.5 -54t111 55t39 139v106l339 131q20 6 40.5 19.5t20.5 28.5v342q0 7 -81 90t-94 83h-525q-17 0 -35.5 -14t-28.5 -28l-10 -15zM77 565l236 339h503 l89 -100v-294l-340 -130q-20 -6 -40 -20t-20 -29v-202q0 -22 -25 -31t-50 0t-25 31v456v14.5t-1.5 11.5t-5 12t-9.5 7q-24 13 -46 -5l-184 -146zM305 1104v200h600v-200h-600z" /> | ||
160 | <glyph unicode="" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q162 0 299.5 -80t217.5 -218t80 -300t-80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM298 701l2 -201h300l-2 -194l402 294l-402 298v-197h-300z" /> | ||
161 | <glyph unicode="" d="M0 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t231.5 47.5q122 0 232.5 -47.5t190.5 -127.5t127.5 -190.5t47.5 -232.5q0 -162 -80 -299.5t-218 -217.5t-300 -80t-299.5 80t-217.5 217.5t-80 299.5zM200 600l402 -294l-2 194h300l2 201h-300v197z" /> | ||
162 | <glyph unicode="" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q162 0 299.5 -80t217.5 -218t80 -300t-80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM300 600h200v-300h200v300h200l-300 400z" /> | ||
163 | <glyph unicode="" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q162 0 299.5 -80t217.5 -218t80 -300t-80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM300 600l300 -400l300 400h-200v300h-200v-300h-200z" /> | ||
164 | <glyph unicode="" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q121 0 231.5 -47.5t190.5 -127.5t127.5 -190.5t47.5 -232.5q0 -162 -80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM254 780q-8 -33 5.5 -92.5t7.5 -87.5q0 -9 17 -44t16 -60 q12 0 23 -5.5t23 -15t20 -13.5q24 -12 108 -42q22 -8 53 -31.5t59.5 -38.5t57.5 -11q8 -18 -15 -55t-20 -57q42 -71 87 -80q0 -6 -3 -15.5t-3.5 -14.5t4.5 -17q104 -3 221 112q30 29 47 47t34.5 49t20.5 62q-14 9 -37 9.5t-36 7.5q-14 7 -49 15t-52 19q-9 0 -39.5 -0.5 t-46.5 -1.5t-39 -6.5t-39 -16.5q-50 -35 -66 -12q-4 2 -3.5 25.5t0.5 25.5q-6 13 -26.5 17t-24.5 7q2 22 -2 41t-16.5 28t-38.5 -20q-23 -25 -42 4q-19 28 -8 58q6 16 22 22q6 -1 26 -1.5t33.5 -4t19.5 -13.5q12 -19 32 -37.5t34 -27.5l14 -8q0 3 9.5 39.5t5.5 57.5 q-4 23 14.5 44.5t22.5 31.5q5 14 10 35t8.5 31t15.5 22.5t34 21.5q-6 18 10 37q8 0 23.5 -1.5t24.5 -1.5t20.5 4.5t20.5 15.5q-10 23 -30.5 42.5t-38 30t-49 26.5t-43.5 23q11 39 2 44q31 -13 58 -14.5t39 3.5l11 4q7 36 -16.5 53.5t-64.5 28.5t-56 23q-19 -3 -37 0 q-15 -12 -36.5 -21t-34.5 -12t-44 -8t-39 -6q-15 -3 -45.5 0.5t-45.5 -2.5q-21 -7 -52 -26.5t-34 -34.5q-3 -11 6.5 -22.5t8.5 -18.5q-3 -34 -27.5 -90.5t-29.5 -79.5zM518 916q3 12 16 30t16 25q10 -10 18.5 -10t14 6t14.5 14.5t16 12.5q0 -24 17 -66.5t17 -43.5 q-9 2 -31 5t-36 5t-32 8t-30 14zM692 1003h1h-1z" /> | ||
165 | <glyph unicode="" d="M0 164.5q0 21.5 15 37.5l600 599q-33 101 6 201.5t135 154.5q164 92 306 -9l-259 -138l145 -232l251 126q13 -175 -151 -267q-123 -70 -253 -23l-596 -596q-15 -16 -36.5 -16t-36.5 16l-111 110q-15 15 -15 36.5z" /> | ||
166 | <glyph unicode="" horiz-adv-x="1220" d="M0 196v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM0 596v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5zM0 996v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM600 596h500v100h-500v-100zM800 196h300v100h-300v-100zM900 996h200v100h-200v-100z" /> | ||
167 | <glyph unicode="" d="M100 1100v100h1000v-100h-1000zM150 1000h900l-350 -500v-300l-200 -200v500z" /> | ||
168 | <glyph unicode="" d="M0 200v200h1200v-200q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM0 500v400q0 41 29.5 70.5t70.5 29.5h300v100q0 41 29.5 70.5t70.5 29.5h200q41 0 70.5 -29.5t29.5 -70.5v-100h300q41 0 70.5 -29.5t29.5 -70.5v-400h-500v100h-200v-100h-500z M500 1000h200v100h-200v-100z" /> | ||
169 | <glyph unicode="" d="M0 0v400l129 -129l200 200l142 -142l-200 -200l129 -129h-400zM0 800l129 129l200 -200l142 142l-200 200l129 129h-400v-400zM729 329l142 142l200 -200l129 129v-400h-400l129 129zM729 871l200 200l-129 129h400v-400l-129 129l-200 -200z" /> | ||
170 | <glyph unicode="" d="M0 596q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM182 596q0 -172 121.5 -293t292.5 -121t292.5 121t121.5 293q0 171 -121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM291 655 q0 23 15.5 38.5t38.5 15.5t39 -16t16 -38q0 -23 -16 -39t-39 -16q-22 0 -38 16t-16 39zM400 850q0 22 16 38.5t39 16.5q22 0 38 -16t16 -39t-16 -39t-38 -16q-23 0 -39 16.5t-16 38.5zM514 609q0 32 20.5 56.5t51.5 29.5l122 126l1 1q-9 14 -9 28q0 22 16 38.5t39 16.5 q22 0 38 -16t16 -39t-16 -39t-38 -16q-14 0 -29 10l-55 -145q17 -22 17 -51q0 -36 -25.5 -61.5t-61.5 -25.5t-61.5 25.5t-25.5 61.5zM800 655q0 22 16 38t39 16t38.5 -15.5t15.5 -38.5t-16 -39t-38 -16q-23 0 -39 16t-16 39z" /> | ||
171 | <glyph unicode="" d="M-40 375q-13 -95 35 -173q35 -57 94 -89t129 -32q63 0 119 28q33 16 65 40.5t52.5 45.5t59.5 64q40 44 57 61l394 394q35 35 47 84t-3 96q-27 87 -117 104q-20 2 -29 2q-46 0 -78.5 -16.5t-67.5 -51.5l-389 -396l-7 -7l69 -67l377 373q20 22 39 38q23 23 50 23 q38 0 53 -36q16 -39 -20 -75l-547 -547q-52 -52 -125 -52q-55 0 -100 33t-54 96q-5 35 2.5 66t31.5 63t42 50t56 54q24 21 44 41l348 348q52 52 82.5 79.5t84 54t107.5 26.5q25 0 48 -4q95 -17 154 -94.5t51 -175.5q-7 -101 -98 -192l-252 -249l-253 -256l7 -7l69 -60 l517 511q67 67 95 157t11 183q-16 87 -67 154t-130 103q-69 33 -152 33q-107 0 -197 -55q-40 -24 -111 -95l-512 -512q-68 -68 -81 -163z" /> | ||
172 | <glyph unicode="" d="M80 784q0 131 98.5 229.5t230.5 98.5q143 0 241 -129q103 129 246 129q129 0 226 -98.5t97 -229.5q0 -46 -17.5 -91t-61 -99t-77 -89.5t-104.5 -105.5q-197 -191 -293 -322l-17 -23l-16 23q-43 58 -100 122.5t-92 99.5t-101 100q-71 70 -104.5 105.5t-77 89.5t-61 99 t-17.5 91zM250 784q0 -27 30.5 -70t61.5 -75.5t95 -94.5l22 -22q93 -90 190 -201q82 92 195 203l12 12q64 62 97.5 97t64.5 79t31 72q0 71 -48 119.5t-105 48.5q-74 0 -132 -83l-118 -171l-114 174q-51 80 -123 80q-60 0 -109.5 -49.5t-49.5 -118.5z" /> | ||
173 | <glyph unicode="" d="M57 353q0 -95 66 -159l141 -142q68 -66 159 -66q93 0 159 66l283 283q66 66 66 159t-66 159l-141 141q-8 9 -19 17l-105 -105l212 -212l-389 -389l-247 248l95 95l-18 18q-46 45 -75 101l-55 -55q-66 -66 -66 -159zM269 706q0 -93 66 -159l141 -141q7 -7 19 -17l105 105 l-212 212l389 389l247 -247l-95 -96l18 -17q47 -49 77 -100l29 29q35 35 62.5 88t27.5 96q0 93 -66 159l-141 141q-66 66 -159 66q-95 0 -159 -66l-283 -283q-66 -64 -66 -159z" /> | ||
174 | <glyph unicode="" d="M200 100v953q0 21 30 46t81 48t129 38t163 15t162 -15t127 -38t79 -48t29 -46v-953q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-41 0 -70.5 29.5t-29.5 70.5zM300 300h600v700h-600v-700zM496 150q0 -43 30.5 -73.5t73.5 -30.5t73.5 30.5t30.5 73.5t-30.5 73.5t-73.5 30.5 t-73.5 -30.5t-30.5 -73.5z" /> | ||
175 | <glyph unicode="" d="M0 0l303 380l207 208l-210 212h300l267 279l-35 36q-15 14 -15 35t15 35q14 15 35 15t35 -15l283 -282q15 -15 15 -36t-15 -35q-14 -15 -35 -15t-35 15l-36 35l-279 -267v-300l-212 210l-208 -207z" /> | ||
176 | <glyph unicode="" d="M295 433h139q5 -77 48.5 -126.5t117.5 -64.5v335q-6 1 -15.5 4t-11.5 3q-46 14 -79 26.5t-72 36t-62.5 52t-40 72.5t-16.5 99q0 92 44 159.5t109 101t144 40.5v78h100v-79q38 -4 72.5 -13.5t75.5 -31.5t71 -53.5t51.5 -84t24.5 -118.5h-159q-8 72 -35 109.5t-101 50.5 v-307l64 -14q34 -7 64 -16.5t70 -31.5t67.5 -52t47.5 -80.5t20 -112.5q0 -139 -89 -224t-244 -96v-77h-100v78q-152 17 -237 104q-40 40 -52.5 93.5t-15.5 139.5zM466 889q0 -29 8 -51t16.5 -34t29.5 -22.5t31 -13.5t38 -10q7 -2 11 -3v274q-61 -8 -97.5 -37.5t-36.5 -102.5 zM700 237q170 18 170 151q0 64 -44 99.5t-126 60.5v-311z" /> | ||
177 | <glyph unicode="" d="M100 600v100h166q-24 49 -44 104q-10 26 -14.5 55.5t-3 72.5t25 90t68.5 87q97 88 263 88q129 0 230 -89t101 -208h-153q0 52 -34 89.5t-74 51.5t-76 14q-37 0 -79 -14.5t-62 -35.5q-41 -44 -41 -101q0 -28 16.5 -69.5t28 -62.5t41.5 -72h241v-100h-197q8 -50 -2.5 -115 t-31.5 -94q-41 -59 -99 -113q35 11 84 18t70 7q33 1 103 -16t103 -17q76 0 136 30l50 -147q-41 -25 -80.5 -36.5t-59 -13t-61.5 -1.5q-23 0 -128 33t-155 29q-39 -4 -82 -17t-66 -25l-24 -11l-55 145l16.5 11t15.5 10t13.5 9.5t14.5 12t14.5 14t17.5 18.5q48 55 54 126.5 t-30 142.5h-221z" /> | ||
178 | <glyph unicode="" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM602 900l298 300l298 -300h-198v-900h-200v900h-198z" /> | ||
179 | <glyph unicode="" d="M2 300h198v900h200v-900h198l-298 -300zM700 0v200h100v-100h200v-100h-300zM700 400v100h300v-200h-99v-100h-100v100h99v100h-200zM700 700v500h300v-500h-100v100h-100v-100h-100zM801 900h100v200h-100v-200z" /> | ||
180 | <glyph unicode="" d="M2 300h198v900h200v-900h198l-298 -300zM700 0v500h300v-500h-100v100h-100v-100h-100zM700 700v200h100v-100h200v-100h-300zM700 1100v100h300v-200h-99v-100h-100v100h99v100h-200zM801 200h100v200h-100v-200z" /> | ||
181 | <glyph unicode="" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM800 100v400h300v-500h-100v100h-200zM800 1100v100h200v-500h-100v400h-100zM901 200h100v200h-100v-200z" /> | ||
182 | <glyph unicode="" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM800 400v100h200v-500h-100v400h-100zM800 800v400h300v-500h-100v100h-200zM901 900h100v200h-100v-200z" /> | ||
183 | <glyph unicode="" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM700 100v200h500v-200h-500zM700 400v200h400v-200h-400zM700 700v200h300v-200h-300zM700 1000v200h200v-200h-200z" /> | ||
184 | <glyph unicode="" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM700 100v200h200v-200h-200zM700 400v200h300v-200h-300zM700 700v200h400v-200h-400zM700 1000v200h500v-200h-500z" /> | ||
185 | <glyph unicode="" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q162 0 281 -118.5t119 -281.5v-300q0 -165 -118.5 -282.5t-281.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500z" /> | ||
186 | <glyph unicode="" d="M0 400v300q0 163 119 281.5t281 118.5h300q165 0 282.5 -117.5t117.5 -282.5v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-163 0 -281.5 117.5t-118.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM400 300l333 250l-333 250v-500z" /> | ||
187 | <glyph unicode="" d="M0 400v300q0 163 117.5 281.5t282.5 118.5h300q163 0 281.5 -119t118.5 -281v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM300 700l250 -333l250 333h-500z" /> | ||
188 | <glyph unicode="" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q165 0 282.5 -117.5t117.5 -282.5v-300q0 -162 -118.5 -281t-281.5 -119h-300q-165 0 -282.5 118.5t-117.5 281.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM300 400h500l-250 333z" /> | ||
189 | <glyph unicode="" d="M0 400v300h300v200l400 -350l-400 -350v200h-300zM500 0v200h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-500v200h400q165 0 282.5 -117.5t117.5 -282.5v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-400z" /> | ||
190 | <glyph unicode="" d="M217 519q8 -19 31 -19h302q-155 -438 -160 -458q-5 -21 4 -32l9 -8h9q14 0 26 15q11 13 274.5 321.5t264.5 308.5q14 19 5 36q-8 17 -31 17l-301 -1q1 4 78 219.5t79 227.5q2 15 -5 27l-9 9h-9q-15 0 -25 -16q-4 -6 -98 -111.5t-228.5 -257t-209.5 -237.5q-16 -19 -6 -41 z" /> | ||
191 | <glyph unicode="" d="M0 400q0 -165 117.5 -282.5t282.5 -117.5h300q47 0 100 15v185h-500q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5h500v185q-14 4 -114 7.5t-193 5.5l-93 2q-165 0 -282.5 -117.5t-117.5 -282.5v-300zM600 400v300h300v200l400 -350l-400 -350v200h-300z " /> | ||
192 | <glyph unicode="" d="M0 400q0 -165 117.5 -282.5t282.5 -117.5h300q163 0 281.5 117.5t118.5 282.5v98l-78 73l-122 -123v-148q0 -41 -29.5 -70.5t-70.5 -29.5h-500q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5h156l118 122l-74 78h-100q-165 0 -282.5 -117.5t-117.5 -282.5 v-300zM496 709l353 342l-149 149h500v-500l-149 149l-342 -353z" /> | ||
193 | <glyph unicode="" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM406 600 q0 80 57 137t137 57t137 -57t57 -137t-57 -137t-137 -57t-137 57t-57 137z" /> | ||
194 | <glyph unicode="" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 800l445 -500l450 500h-295v400h-300v-400h-300zM900 150h100v50h-100v-50z" /> | ||
195 | <glyph unicode="" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 700h300v-300h300v300h295l-445 500zM900 150h100v50h-100v-50z" /> | ||
196 | <glyph unicode="" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 705l305 -305l596 596l-154 155l-442 -442l-150 151zM900 150h100v50h-100v-50z" /> | ||
197 | <glyph unicode="" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 988l97 -98l212 213l-97 97zM200 400l697 1l3 699l-250 -239l-149 149l-212 -212l149 -149zM900 150h100v50h-100v-50z" /> | ||
198 | <glyph unicode="" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM200 612l212 -212l98 97l-213 212zM300 1200l239 -250l-149 -149l212 -212l149 148l249 -237l-1 697zM900 150h100v50h-100v-50z" /> | ||
199 | <glyph unicode="" d="M23 415l1177 784v-1079l-475 272l-310 -393v416h-392zM494 210l672 938l-672 -712v-226z" /> | ||
200 | <glyph unicode="" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-850q0 -21 -15 -35.5t-35 -14.5h-150v400h-700v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 1000h100v200h-100v-200z" /> | ||
201 | <glyph unicode="" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-218l-276 -275l-120 120l-126 -127h-378v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM581 306l123 123l120 -120l353 352l123 -123l-475 -476zM600 1000h100v200h-100v-200z" /> | ||
202 | <glyph unicode="" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-269l-103 -103l-170 170l-298 -298h-329v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 1000h100v200h-100v-200zM700 133l170 170l-170 170l127 127l170 -170l170 170l127 -128l-170 -169l170 -170 l-127 -127l-170 170l-170 -170z" /> | ||
203 | <glyph unicode="" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-300h-400v-200h-500v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 300l300 -300l300 300h-200v300h-200v-300h-200zM600 1000v200h100v-200h-100z" /> | ||
204 | <glyph unicode="" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-402l-200 200l-298 -298h-402v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 300h200v-300h200v300h200l-300 300zM600 1000v200h100v-200h-100z" /> | ||
205 | <glyph unicode="" d="M0 250q0 -21 14.5 -35.5t35.5 -14.5h1100q21 0 35.5 14.5t14.5 35.5v550h-1200v-550zM0 900h1200v150q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-150zM100 300v200h400v-200h-400z" /> | ||
206 | <glyph unicode="" d="M0 400l300 298v-198h400v-200h-400v-198zM100 800v200h100v-200h-100zM300 800v200h100v-200h-100zM500 800v200h400v198l300 -298l-300 -298v198h-400zM800 300v200h100v-200h-100zM1000 300h100v200h-100v-200z" /> | ||
207 | <glyph unicode="" d="M100 700v400l50 100l50 -100v-300h100v300l50 100l50 -100v-300h100v300l50 100l50 -100v-400l-100 -203v-447q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v447zM800 597q0 -29 10.5 -55.5t25 -43t29 -28.5t25.5 -18l10 -5v-397q0 -21 14.5 -35.5 t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v1106q0 31 -18 40.5t-44 -7.5l-276 -116q-25 -17 -43.5 -51.5t-18.5 -65.5v-359z" /> | ||
208 | <glyph unicode="" d="M100 0h400v56q-75 0 -87.5 6t-12.5 44v394h500v-394q0 -38 -12.5 -44t-87.5 -6v-56h400v56q-4 0 -11 0.5t-24 3t-30 7t-24 15t-11 24.5v888q0 22 25 34.5t50 13.5l25 2v56h-400v-56q75 0 87.5 -6t12.5 -44v-394h-500v394q0 38 12.5 44t87.5 6v56h-400v-56q4 0 11 -0.5 t24 -3t30 -7t24 -15t11 -24.5v-888q0 -22 -25 -34.5t-50 -13.5l-25 -2v-56z" /> | ||
209 | <glyph unicode="" d="M0 300q0 -41 29.5 -70.5t70.5 -29.5h300q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-300q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM100 100h400l200 200h105l295 98v-298h-425l-100 -100h-375zM100 300v200h300v-200h-300zM100 600v200h300v-200h-300z M100 1000h400l200 -200v-98l295 98h105v200h-425l-100 100h-375zM700 402v163l400 133v-163z" /> | ||
210 | <glyph unicode="" d="M16.5 974.5q0.5 -21.5 16 -90t46.5 -140t104 -177.5t175 -208q103 -103 207.5 -176t180 -103.5t137 -47t92.5 -16.5l31 1l163 162q17 18 13.5 41t-22.5 37l-192 136q-19 14 -45 12t-42 -19l-118 -118q-142 101 -268 227t-227 268l118 118q17 17 20 41.5t-11 44.5 l-139 194q-14 19 -36.5 22t-40.5 -14l-162 -162q-1 -11 -0.5 -32.5z" /> | ||
211 | <glyph unicode="" d="M0 50v212q0 20 10.5 45.5t24.5 39.5l365 303v50q0 4 1 10.5t12 22.5t30 28.5t60 23t97 10.5t97 -10t60 -23.5t30 -27.5t12 -24l1 -10v-50l365 -303q14 -14 24.5 -39.5t10.5 -45.5v-212q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-20 0 -35 14.5t-15 35.5zM0 712 q0 -21 14.5 -33.5t34.5 -8.5l202 33q20 4 34.5 21t14.5 38v146q141 24 300 24t300 -24v-146q0 -21 14.5 -38t34.5 -21l202 -33q20 -4 34.5 8.5t14.5 33.5v200q-6 8 -19 20.5t-63 45t-112 57t-171 45t-235 20.5q-92 0 -175 -10.5t-141.5 -27t-108.5 -36.5t-81.5 -40 t-53.5 -36.5t-31 -27.5l-9 -10v-200z" /> | ||
212 | <glyph unicode="" d="M100 0v100h1100v-100h-1100zM175 200h950l-125 150v250l100 100v400h-100v-200h-100v200h-200v-200h-100v200h-200v-200h-100v200h-100v-400l100 -100v-250z" /> | ||
213 | <glyph unicode="" d="M100 0h300v400q0 41 -29.5 70.5t-70.5 29.5h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-400zM500 0v1000q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-1000h-300zM900 0v700q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-700h-300z" /> | ||
214 | <glyph unicode="" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v300h-200v100h200v100h-300v-300h200v-100h-200v-100zM600 300h200v100h100v300h-100v100h-200v-500 zM700 400v300h100v-300h-100z" /> | ||
215 | <glyph unicode="" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h100v200h100v-200h100v500h-100v-200h-100v200h-100v-500zM600 300h200v100h100v300h-100v100h-200v-500 zM700 400v300h100v-300h-100z" /> | ||
216 | <glyph unicode="" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v100h-200v300h200v100h-300v-500zM600 300h300v100h-200v300h200v100h-300v-500z" /> | ||
217 | <glyph unicode="" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 550l300 -150v300zM600 400l300 150l-300 150v-300z" /> | ||
218 | <glyph unicode="" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300v500h700v-500h-700zM300 400h130q41 0 68 42t27 107t-28.5 108t-66.5 43h-130v-300zM575 549 q0 -65 27 -107t68 -42h130v300h-130q-38 0 -66.5 -43t-28.5 -108z" /> | ||
219 | <glyph unicode="" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v300h-200v100h200v100h-300v-300h200v-100h-200v-100zM601 300h100v100h-100v-100zM700 700h100 v-400h100v500h-200v-100z" /> | ||
220 | <glyph unicode="" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v400h-200v100h-100v-500zM301 400v200h100v-200h-100zM601 300h100v100h-100v-100zM700 700h100 v-400h100v500h-200v-100z" /> | ||
221 | <glyph unicode="" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 700v100h300v-300h-99v-100h-100v100h99v200h-200zM201 300v100h100v-100h-100zM601 300v100h100v-100h-100z M700 700v100h200v-500h-100v400h-100z" /> | ||
222 | <glyph unicode="" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM400 500v200 l100 100h300v-100h-300v-200h300v-100h-300z" /> | ||
223 | <glyph unicode="" d="M0 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM182 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM400 400v400h300 l100 -100v-100h-100v100h-200v-100h200v-100h-200v-100h-100zM700 400v100h100v-100h-100z" /> | ||
224 | <glyph unicode="" d="M-14 494q0 -80 56.5 -137t135.5 -57h222v300h400v-300h128q120 0 205 86.5t85 207.5t-85 207t-205 86q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5zM300 200h200v300h200v-300h200 l-300 -300z" /> | ||
225 | <glyph unicode="" d="M-14 494q0 -80 56.5 -137t135.5 -57h8l414 414l403 -403q94 26 154.5 104.5t60.5 178.5q0 120 -85 206.5t-205 86.5q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5zM300 200l300 300 l300 -300h-200v-300h-200v300h-200z" /> | ||
226 | <glyph unicode="" d="M100 200h400v-155l-75 -45h350l-75 45v155h400l-270 300h170l-270 300h170l-300 333l-300 -333h170l-270 -300h170z" /> | ||
227 | <glyph unicode="" d="M121 700q0 -53 28.5 -97t75.5 -65q-4 -16 -4 -38q0 -74 52.5 -126.5t126.5 -52.5q56 0 100 30v-306l-75 -45h350l-75 45v306q46 -30 100 -30q74 0 126.5 52.5t52.5 126.5q0 24 -9 55q50 32 79.5 83t29.5 112q0 90 -61.5 155.5t-150.5 71.5q-26 89 -99.5 145.5 t-167.5 56.5q-116 0 -197.5 -81.5t-81.5 -197.5q0 -4 1 -11.5t1 -11.5q-14 2 -23 2q-74 0 -126.5 -52.5t-52.5 -126.5z" /> | ||
228 | </font> | ||
229 | </defs></svg> \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.ttf b/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 0000000..67fa00b --- /dev/null +++ b/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.ttf | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.woff b/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.woff new file mode 100644 index 0000000..8c54182 --- /dev/null +++ b/deprecated/jinwei.me/mobile/fonts/glyphicons-halflings-regular.woff | |||
Binary files differ | |||
diff --git a/deprecated/jinwei.me/mobile/index.html b/deprecated/jinwei.me/mobile/index.html new file mode 100644 index 0000000..9964c70 --- /dev/null +++ b/deprecated/jinwei.me/mobile/index.html | |||
@@ -0,0 +1,98 @@ | |||
1 | <!DOCTYPE html> | ||
2 | <html lang="en"> | ||
3 | |||
4 | <head> | ||
5 | <meta charset="utf-8"> | ||
6 | <meta http-equiv="X-UA-Compatible" content="IE=edge"> | ||
7 | <meta name="viewport" content="width=device-width, initial-scale=1"> | ||
8 | <script src="js/less.js" type="text/javascript"></script> | ||
9 | <title>Jinwei的小站</title> | ||
10 | <!-- Bootstrap core CSS --> | ||
11 | <link href="css/bootstrap.min.css" rel="stylesheet"> | ||
12 | <link rel="stylesheet/less" type="text/css" href="css/navbar.less"> | ||
13 | </head> | ||
14 | |||
15 | <body> | ||
16 | <div class="container"> | ||
17 | <!-- Static navbar --> | ||
18 | <div class="navbar navbar-default" role="navigation"> | ||
19 | <div class="container-fluid"> | ||
20 | <div class="navbar-header"> | ||
21 | <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> | ||
22 | <span class="sr-only">Toggle navigation</span> | ||
23 | <span class="icon-bar"></span> | ||
24 | <span class="icon-bar"></span> | ||
25 | <span class="icon-bar"></span> | ||
26 | </button> | ||
27 | <a class="navbar-brand" href="#">jinwei.me</a> | ||
28 | </div> | ||
29 | <div class="navbar-collapse collapse"> | ||
30 | <ul class="nav navbar-nav"> | ||
31 | <li class="active"> | ||
32 | <a href="http://jinwei-me.lofter.com">Blog</a> | ||
33 | </li> | ||
34 | <li class="dropdown"> | ||
35 | <a href="#" class="dropdown-toggle" data-toggle="dropdown"> | ||
36 | About me <b class="caret"></b> | ||
37 | </a> | ||
38 | <ul class="dropdown-menu"> | ||
39 | <li class="dropdown-header">Tags</li> | ||
40 | <li> | ||
41 | <a href="#">95后</a> | ||
42 | </li> | ||
43 | <li> | ||
44 | <a href="#">大一</a> | ||
45 | </li> | ||
46 | <li> | ||
47 | <a href="#">Go语言爱好者</a> | ||
48 | </li> | ||
49 | <li> | ||
50 | <a href="#">伪文青</a> | ||
51 | </li> | ||
52 | <li> | ||
53 | <a href="#">宅</a> | ||
54 | </li> | ||
55 | <li> | ||
56 | <a href="#">爱折腾</a> | ||
57 | </li> | ||
58 | <li> | ||
59 | <a href="#">爱技术</a> | ||
60 | </li> | ||
61 | <li> | ||
62 | <a href="#">爱有技术会设计的妹子</a> | ||
63 | </li> | ||
64 | </ul> | ||
65 | </li> | ||
66 | </ul> | ||
67 | <ul class="nav navbar-nav navbar-right"> | ||
68 | <li> | ||
69 | <a href="https://github.com/JinweiClarkChao/jinweiclarkchao.github.com" target="_blank">View it on Github</a> | ||
70 | </li> | ||
71 | </ul> | ||
72 | </div> | ||
73 | <!--/.nav-collapse --> | ||
74 | </div> | ||
75 | <!--/.container-fluid --> | ||
76 | </div> | ||
77 | <!-- Main component for a primary marketing message or call to action --> | ||
78 | <div class="jumbotron"> | ||
79 | <h1>Jinwei的小站</h1> | ||
80 | <p>如果你是Android用户,下载下面的App</p> | ||
81 | <p> | ||
82 | <a class="btn btn-lg btn-primary" href="http://jinwei-me.lofter.com/app" target="_blank" role="button">Download App</a> | ||
83 | </p> | ||
84 | <p>如果你是iPhone, iPad, Windows Phone, Blackberry等用户......</p> | ||
85 | <p> | ||
86 | <a class="btn btn-lg btn-primary" href="#" role="button">Wait for me</a> | ||
87 | </p> | ||
88 | </div> | ||
89 | </div> | ||
90 | <!-- /container --> | ||
91 | <!-- Bootstrap core JavaScript | ||
92 | ================================================== --> | ||
93 | <!-- Placed at the end of the document so the pages load faster --> | ||
94 | <script src="js/jquery.min.js"></script> | ||
95 | <script src="js/bootstrap.min.js"></script> | ||
96 | </body> | ||
97 | |||
98 | </html> | ||
diff --git a/deprecated/jinwei.me/mobile/js/bootstrap.js b/deprecated/jinwei.me/mobile/js/bootstrap.js new file mode 100644 index 0000000..1019e52 --- /dev/null +++ b/deprecated/jinwei.me/mobile/js/bootstrap.js | |||
@@ -0,0 +1,1988 @@ | |||
1 | /*! | ||
2 | * Bootstrap v3.1.1 (http://getbootstrap.com) | ||
3 | * Copyright 2011-2014 Twitter, Inc. | ||
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
5 | */ | ||
6 | |||
7 | if (typeof jQuery === 'undefined') { | ||
8 | throw new Error('Bootstrap\'s JavaScript requires jQuery') | ||
9 | } | ||
10 | |||
11 | /* ======================================================================== | ||
12 | * Bootstrap: transition.js v3.1.1 | ||
13 | * http://getbootstrap.com/javascript/#transitions | ||
14 | * ======================================================================== | ||
15 | * Copyright 2011-2014 Twitter, Inc. | ||
16 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
17 | * ======================================================================== */ | ||
18 | |||
19 | |||
20 | + function($) { | ||
21 | 'use strict'; | ||
22 | |||
23 | // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) | ||
24 | // ============================================================ | ||
25 | |||
26 | function transitionEnd() { | ||
27 | var el = document.createElement('bootstrap') | ||
28 | |||
29 | var transEndEventNames = { | ||
30 | 'WebkitTransition': 'webkitTransitionEnd', | ||
31 | 'MozTransition': 'transitionend', | ||
32 | 'OTransition': 'oTransitionEnd otransitionend', | ||
33 | 'transition': 'transitionend' | ||
34 | } | ||
35 | |||
36 | for (var name in transEndEventNames) { | ||
37 | if (el.style[name] !== undefined) { | ||
38 | return { | ||
39 | end: transEndEventNames[name] | ||
40 | } | ||
41 | } | ||
42 | } | ||
43 | |||
44 | return false // explicit for ie8 ( ._.) | ||
45 | } | ||
46 | |||
47 | // http://blog.alexmaccaw.com/css-transitions | ||
48 | $.fn.emulateTransitionEnd = function(duration) { | ||
49 | var called = false, | ||
50 | $el = this | ||
51 | $(this).one($.support.transition.end, function() { | ||
52 | called = true | ||
53 | }) | ||
54 | var callback = function() { | ||
55 | if (!called) $($el).trigger($.support.transition.end) | ||
56 | } | ||
57 | setTimeout(callback, duration) | ||
58 | return this | ||
59 | } | ||
60 | |||
61 | $(function() { | ||
62 | $.support.transition = transitionEnd() | ||
63 | }) | ||
64 | |||
65 | }(jQuery); | ||
66 | |||
67 | /* ======================================================================== | ||
68 | * Bootstrap: alert.js v3.1.1 | ||
69 | * http://getbootstrap.com/javascript/#alerts | ||
70 | * ======================================================================== | ||
71 | * Copyright 2011-2014 Twitter, Inc. | ||
72 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
73 | * ======================================================================== */ | ||
74 | |||
75 | |||
76 | + function($) { | ||
77 | 'use strict'; | ||
78 | |||
79 | // ALERT CLASS DEFINITION | ||
80 | // ====================== | ||
81 | |||
82 | var dismiss = '[data-dismiss="alert"]' | ||
83 | var Alert = function(el) { | ||
84 | $(el).on('click', dismiss, this.close) | ||
85 | } | ||
86 | |||
87 | Alert.prototype.close = function(e) { | ||
88 | var $this = $(this) | ||
89 | var selector = $this.attr('data-target') | ||
90 | |||
91 | if (!selector) { | ||
92 | selector = $this.attr('href') | ||
93 | selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 | ||
94 | } | ||
95 | |||
96 | var $parent = $(selector) | ||
97 | |||
98 | if (e) e.preventDefault() | ||
99 | |||
100 | if (!$parent.length) { | ||
101 | $parent = $this.hasClass('alert') ? $this : $this.parent() | ||
102 | } | ||
103 | |||
104 | $parent.trigger(e = $.Event('close.bs.alert')) | ||
105 | |||
106 | if (e.isDefaultPrevented()) return | ||
107 | |||
108 | $parent.removeClass('in') | ||
109 | |||
110 | function removeElement() { | ||
111 | $parent.trigger('closed.bs.alert').remove() | ||
112 | } | ||
113 | |||
114 | $.support.transition && $parent.hasClass('fade') ? | ||
115 | $parent | ||
116 | .one($.support.transition.end, removeElement) | ||
117 | .emulateTransitionEnd(150) : | ||
118 | removeElement() | ||
119 | } | ||
120 | |||
121 | |||
122 | // ALERT PLUGIN DEFINITION | ||
123 | // ======================= | ||
124 | |||
125 | var old = $.fn.alert | ||
126 | |||
127 | $.fn.alert = function(option) { | ||
128 | return this.each(function() { | ||
129 | var $this = $(this) | ||
130 | var data = $this.data('bs.alert') | ||
131 | |||
132 | if (!data) $this.data('bs.alert', (data = new Alert(this))) | ||
133 | if (typeof option == 'string') data[option].call($this) | ||
134 | }) | ||
135 | } | ||
136 | |||
137 | $.fn.alert.Constructor = Alert | ||
138 | |||
139 | |||
140 | // ALERT NO CONFLICT | ||
141 | // ================= | ||
142 | |||
143 | $.fn.alert.noConflict = function() { | ||
144 | $.fn.alert = old | ||
145 | return this | ||
146 | } | ||
147 | |||
148 | |||
149 | // ALERT DATA-API | ||
150 | // ============== | ||
151 | |||
152 | $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) | ||
153 | |||
154 | }(jQuery); | ||
155 | |||
156 | /* ======================================================================== | ||
157 | * Bootstrap: button.js v3.1.1 | ||
158 | * http://getbootstrap.com/javascript/#buttons | ||
159 | * ======================================================================== | ||
160 | * Copyright 2011-2014 Twitter, Inc. | ||
161 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
162 | * ======================================================================== */ | ||
163 | |||
164 | |||
165 | + function($) { | ||
166 | 'use strict'; | ||
167 | |||
168 | // BUTTON PUBLIC CLASS DEFINITION | ||
169 | // ============================== | ||
170 | |||
171 | var Button = function(element, options) { | ||
172 | this.$element = $(element) | ||
173 | this.options = $.extend({}, Button.DEFAULTS, options) | ||
174 | this.isLoading = false | ||
175 | } | ||
176 | |||
177 | Button.DEFAULTS = { | ||
178 | loadingText: 'loading...' | ||
179 | } | ||
180 | |||
181 | Button.prototype.setState = function(state) { | ||
182 | var d = 'disabled' | ||
183 | var $el = this.$element | ||
184 | var val = $el.is('input') ? 'val' : 'html' | ||
185 | var data = $el.data() | ||
186 | |||
187 | state = state + 'Text' | ||
188 | |||
189 | if (!data.resetText) $el.data('resetText', $el[val]()) | ||
190 | |||
191 | $el[val](data[state] || this.options[state]) | ||
192 | |||
193 | // push to event loop to allow forms to submit | ||
194 | setTimeout($.proxy(function() { | ||
195 | if (state == 'loadingText') { | ||
196 | this.isLoading = true | ||
197 | $el.addClass(d).attr(d, d) | ||
198 | } else if (this.isLoading) { | ||
199 | this.isLoading = false | ||
200 | $el.removeClass(d).removeAttr(d) | ||
201 | } | ||
202 | }, this), 0) | ||
203 | } | ||
204 | |||
205 | Button.prototype.toggle = function() { | ||
206 | var changed = true | ||
207 | var $parent = this.$element.closest('[data-toggle="buttons"]') | ||
208 | |||
209 | if ($parent.length) { | ||
210 | var $input = this.$element.find('input') | ||
211 | if ($input.prop('type') == 'radio') { | ||
212 | if ($input.prop('checked') && this.$element.hasClass('active')) changed = false | ||
213 | else $parent.find('.active').removeClass('active') | ||
214 | } | ||
215 | if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change') | ||
216 | } | ||
217 | |||
218 | if (changed) this.$element.toggleClass('active') | ||
219 | } | ||
220 | |||
221 | |||
222 | // BUTTON PLUGIN DEFINITION | ||
223 | // ======================== | ||
224 | |||
225 | var old = $.fn.button | ||
226 | |||
227 | $.fn.button = function(option) { | ||
228 | return this.each(function() { | ||
229 | var $this = $(this) | ||
230 | var data = $this.data('bs.button') | ||
231 | var options = typeof option == 'object' && option | ||
232 | |||
233 | if (!data) $this.data('bs.button', (data = new Button(this, options))) | ||
234 | |||
235 | if (option == 'toggle') data.toggle() | ||
236 | else if (option) data.setState(option) | ||
237 | }) | ||
238 | } | ||
239 | |||
240 | $.fn.button.Constructor = Button | ||
241 | |||
242 | |||
243 | // BUTTON NO CONFLICT | ||
244 | // ================== | ||
245 | |||
246 | $.fn.button.noConflict = function() { | ||
247 | $.fn.button = old | ||
248 | return this | ||
249 | } | ||
250 | |||
251 | |||
252 | // BUTTON DATA-API | ||
253 | // =============== | ||
254 | |||
255 | $(document).on('click.bs.button.data-api', '[data-toggle^=button]', function(e) { | ||
256 | var $btn = $(e.target) | ||
257 | if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') | ||
258 | $btn.button('toggle') | ||
259 | e.preventDefault() | ||
260 | }) | ||
261 | |||
262 | }(jQuery); | ||
263 | |||
264 | /* ======================================================================== | ||
265 | * Bootstrap: carousel.js v3.1.1 | ||
266 | * http://getbootstrap.com/javascript/#carousel | ||
267 | * ======================================================================== | ||
268 | * Copyright 2011-2014 Twitter, Inc. | ||
269 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
270 | * ======================================================================== */ | ||
271 | |||
272 | |||
273 | + function($) { | ||
274 | 'use strict'; | ||
275 | |||
276 | // CAROUSEL CLASS DEFINITION | ||
277 | // ========================= | ||
278 | |||
279 | var Carousel = function(element, options) { | ||
280 | this.$element = $(element) | ||
281 | this.$indicators = this.$element.find('.carousel-indicators') | ||
282 | this.options = options | ||
283 | this.paused = | ||
284 | this.sliding = | ||
285 | this.interval = | ||
286 | this.$active = | ||
287 | this.$items = null | ||
288 | |||
289 | this.options.pause == 'hover' && this.$element | ||
290 | .on('mouseenter', $.proxy(this.pause, this)) | ||
291 | .on('mouseleave', $.proxy(this.cycle, this)) | ||
292 | } | ||
293 | |||
294 | Carousel.DEFAULTS = { | ||
295 | interval: 5000, | ||
296 | pause: 'hover', | ||
297 | wrap: true | ||
298 | } | ||
299 | |||
300 | Carousel.prototype.cycle = function(e) { | ||
301 | e || (this.paused = false) | ||
302 | |||
303 | this.interval && clearInterval(this.interval) | ||
304 | |||
305 | this.options.interval && !this.paused && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) | ||
306 | |||
307 | return this | ||
308 | } | ||
309 | |||
310 | Carousel.prototype.getActiveIndex = function() { | ||
311 | this.$active = this.$element.find('.item.active') | ||
312 | this.$items = this.$active.parent().children() | ||
313 | |||
314 | return this.$items.index(this.$active) | ||
315 | } | ||
316 | |||
317 | Carousel.prototype.to = function(pos) { | ||
318 | var that = this | ||
319 | var activeIndex = this.getActiveIndex() | ||
320 | |||
321 | if (pos > (this.$items.length - 1) || pos < 0) return | ||
322 | |||
323 | if (this.sliding) return this.$element.one('slid.bs.carousel', function() { | ||
324 | that.to(pos) | ||
325 | }) | ||
326 | if (activeIndex == pos) return this.pause().cycle() | ||
327 | |||
328 | return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos])) | ||
329 | } | ||
330 | |||
331 | Carousel.prototype.pause = function(e) { | ||
332 | e || (this.paused = true) | ||
333 | |||
334 | if (this.$element.find('.next, .prev').length && $.support.transition) { | ||
335 | this.$element.trigger($.support.transition.end) | ||
336 | this.cycle(true) | ||
337 | } | ||
338 | |||
339 | this.interval = clearInterval(this.interval) | ||
340 | |||
341 | return this | ||
342 | } | ||
343 | |||
344 | Carousel.prototype.next = function() { | ||
345 | if (this.sliding) return | ||
346 | return this.slide('next') | ||
347 | } | ||
348 | |||
349 | Carousel.prototype.prev = function() { | ||
350 | if (this.sliding) return | ||
351 | return this.slide('prev') | ||
352 | } | ||
353 | |||
354 | Carousel.prototype.slide = function(type, next) { | ||
355 | var $active = this.$element.find('.item.active') | ||
356 | var $next = next || $active[type]() | ||
357 | var isCycling = this.interval | ||
358 | var direction = type == 'next' ? 'left' : 'right' | ||
359 | var fallback = type == 'next' ? 'first' : 'last' | ||
360 | var that = this | ||
361 | |||
362 | if (!$next.length) { | ||
363 | if (!this.options.wrap) return | ||
364 | $next = this.$element.find('.item')[fallback]() | ||
365 | } | ||
366 | |||
367 | if ($next.hasClass('active')) return this.sliding = false | ||
368 | |||
369 | var e = $.Event('slide.bs.carousel', { | ||
370 | relatedTarget: $next[0], | ||
371 | direction: direction | ||
372 | }) | ||
373 | this.$element.trigger(e) | ||
374 | if (e.isDefaultPrevented()) return | ||
375 | |||
376 | this.sliding = true | ||
377 | |||
378 | isCycling && this.pause() | ||
379 | |||
380 | if (this.$indicators.length) { | ||
381 | this.$indicators.find('.active').removeClass('active') | ||
382 | this.$element.one('slid.bs.carousel', function() { | ||
383 | var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()]) | ||
384 | $nextIndicator && $nextIndicator.addClass('active') | ||
385 | }) | ||
386 | } | ||
387 | |||
388 | if ($.support.transition && this.$element.hasClass('slide')) { | ||
389 | $next.addClass(type) | ||
390 | $next[0].offsetWidth // force reflow | ||
391 | $active.addClass(direction) | ||
392 | $next.addClass(direction) | ||
393 | $active | ||
394 | .one($.support.transition.end, function() { | ||
395 | $next.removeClass([type, direction].join(' ')).addClass('active') | ||
396 | $active.removeClass(['active', direction].join(' ')) | ||
397 | that.sliding = false | ||
398 | setTimeout(function() { | ||
399 | that.$element.trigger('slid.bs.carousel') | ||
400 | }, 0) | ||
401 | }) | ||
402 | .emulateTransitionEnd($active.css('transition-duration').slice(0, -1) * 1000) | ||
403 | } else { | ||
404 | $active.removeClass('active') | ||
405 | $next.addClass('active') | ||
406 | this.sliding = false | ||
407 | this.$element.trigger('slid.bs.carousel') | ||
408 | } | ||
409 | |||
410 | isCycling && this.cycle() | ||
411 | |||
412 | return this | ||
413 | } | ||
414 | |||
415 | |||
416 | // CAROUSEL PLUGIN DEFINITION | ||
417 | // ========================== | ||
418 | |||
419 | var old = $.fn.carousel | ||
420 | |||
421 | $.fn.carousel = function(option) { | ||
422 | return this.each(function() { | ||
423 | var $this = $(this) | ||
424 | var data = $this.data('bs.carousel') | ||
425 | var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) | ||
426 | var action = typeof option == 'string' ? option : options.slide | ||
427 | |||
428 | if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) | ||
429 | if (typeof option == 'number') data.to(option) | ||
430 | else if (action) data[action]() | ||
431 | else if (options.interval) data.pause().cycle() | ||
432 | }) | ||
433 | } | ||
434 | |||
435 | $.fn.carousel.Constructor = Carousel | ||
436 | |||
437 | |||
438 | // CAROUSEL NO CONFLICT | ||
439 | // ==================== | ||
440 | |||
441 | $.fn.carousel.noConflict = function() { | ||
442 | $.fn.carousel = old | ||
443 | return this | ||
444 | } | ||
445 | |||
446 | |||
447 | // CAROUSEL DATA-API | ||
448 | // ================= | ||
449 | |||
450 | $(document).on('click.bs.carousel.data-api', '[data-slide], [data-slide-to]', function(e) { | ||
451 | var $this = $(this), | ||
452 | href | ||
453 | var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 | ||
454 | var options = $.extend({}, $target.data(), $this.data()) | ||
455 | var slideIndex = $this.attr('data-slide-to') | ||
456 | if (slideIndex) options.interval = false | ||
457 | |||
458 | $target.carousel(options) | ||
459 | |||
460 | if (slideIndex = $this.attr('data-slide-to')) { | ||
461 | $target.data('bs.carousel').to(slideIndex) | ||
462 | } | ||
463 | |||
464 | e.preventDefault() | ||
465 | }) | ||
466 | |||
467 | $(window).on('load', function() { | ||
468 | $('[data-ride="carousel"]').each(function() { | ||
469 | var $carousel = $(this) | ||
470 | $carousel.carousel($carousel.data()) | ||
471 | }) | ||
472 | }) | ||
473 | |||
474 | }(jQuery); | ||
475 | |||
476 | /* ======================================================================== | ||
477 | * Bootstrap: collapse.js v3.1.1 | ||
478 | * http://getbootstrap.com/javascript/#collapse | ||
479 | * ======================================================================== | ||
480 | * Copyright 2011-2014 Twitter, Inc. | ||
481 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
482 | * ======================================================================== */ | ||
483 | |||
484 | |||
485 | + function($) { | ||
486 | 'use strict'; | ||
487 | |||
488 | // COLLAPSE PUBLIC CLASS DEFINITION | ||
489 | // ================================ | ||
490 | |||
491 | var Collapse = function(element, options) { | ||
492 | this.$element = $(element) | ||
493 | this.options = $.extend({}, Collapse.DEFAULTS, options) | ||
494 | this.transitioning = null | ||
495 | |||
496 | if (this.options.parent) this.$parent = $(this.options.parent) | ||
497 | if (this.options.toggle) this.toggle() | ||
498 | } | ||
499 | |||
500 | Collapse.DEFAULTS = { | ||
501 | toggle: true | ||
502 | } | ||
503 | |||
504 | Collapse.prototype.dimension = function() { | ||
505 | var hasWidth = this.$element.hasClass('width') | ||
506 | return hasWidth ? 'width' : 'height' | ||
507 | } | ||
508 | |||
509 | Collapse.prototype.show = function() { | ||
510 | if (this.transitioning || this.$element.hasClass('in')) return | ||
511 | |||
512 | var startEvent = $.Event('show.bs.collapse') | ||
513 | this.$element.trigger(startEvent) | ||
514 | if (startEvent.isDefaultPrevented()) return | ||
515 | |||
516 | var actives = this.$parent && this.$parent.find('> .panel > .in') | ||
517 | |||
518 | if (actives && actives.length) { | ||
519 | var hasData = actives.data('bs.collapse') | ||
520 | if (hasData && hasData.transitioning) return | ||
521 | actives.collapse('hide') | ||
522 | hasData || actives.data('bs.collapse', null) | ||
523 | } | ||
524 | |||
525 | var dimension = this.dimension() | ||
526 | |||
527 | this.$element | ||
528 | .removeClass('collapse') | ||
529 | .addClass('collapsing')[dimension](0) | ||
530 | |||
531 | this.transitioning = 1 | ||
532 | |||
533 | var complete = function() { | ||
534 | this.$element | ||
535 | .removeClass('collapsing') | ||
536 | .addClass('collapse in')[dimension]('auto') | ||
537 | this.transitioning = 0 | ||
538 | this.$element.trigger('shown.bs.collapse') | ||
539 | } | ||
540 | |||
541 | if (!$.support.transition) return complete.call(this) | ||
542 | |||
543 | var scrollSize = $.camelCase(['scroll', dimension].join('-')) | ||
544 | |||
545 | this.$element | ||
546 | .one($.support.transition.end, $.proxy(complete, this)) | ||
547 | .emulateTransitionEnd(350)[dimension](this.$element[0][scrollSize]) | ||
548 | } | ||
549 | |||
550 | Collapse.prototype.hide = function() { | ||
551 | if (this.transitioning || !this.$element.hasClass('in')) return | ||
552 | |||
553 | var startEvent = $.Event('hide.bs.collapse') | ||
554 | this.$element.trigger(startEvent) | ||
555 | if (startEvent.isDefaultPrevented()) return | ||
556 | |||
557 | var dimension = this.dimension() | ||
558 | |||
559 | this.$element[dimension](this.$element[dimension]())[0].offsetHeight | ||
560 | |||
561 | this.$element | ||
562 | .addClass('collapsing') | ||
563 | .removeClass('collapse') | ||
564 | .removeClass('in') | ||
565 | |||
566 | this.transitioning = 1 | ||
567 | |||
568 | var complete = function() { | ||
569 | this.transitioning = 0 | ||
570 | this.$element | ||
571 | .trigger('hidden.bs.collapse') | ||
572 | .removeClass('collapsing') | ||
573 | .addClass('collapse') | ||
574 | } | ||
575 | |||
576 | if (!$.support.transition) return complete.call(this) | ||
577 | |||
578 | this.$element[dimension](0) | ||
579 | .one($.support.transition.end, $.proxy(complete, this)) | ||
580 | .emulateTransitionEnd(350) | ||
581 | } | ||
582 | |||
583 | Collapse.prototype.toggle = function() { | ||
584 | this[this.$element.hasClass('in') ? 'hide' : 'show']() | ||
585 | } | ||
586 | |||
587 | |||
588 | // COLLAPSE PLUGIN DEFINITION | ||
589 | // ========================== | ||
590 | |||
591 | var old = $.fn.collapse | ||
592 | |||
593 | $.fn.collapse = function(option) { | ||
594 | return this.each(function() { | ||
595 | var $this = $(this) | ||
596 | var data = $this.data('bs.collapse') | ||
597 | var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) | ||
598 | |||
599 | if (!data && options.toggle && option == 'show') option = !option | ||
600 | if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) | ||
601 | if (typeof option == 'string') data[option]() | ||
602 | }) | ||
603 | } | ||
604 | |||
605 | $.fn.collapse.Constructor = Collapse | ||
606 | |||
607 | |||
608 | // COLLAPSE NO CONFLICT | ||
609 | // ==================== | ||
610 | |||
611 | $.fn.collapse.noConflict = function() { | ||
612 | $.fn.collapse = old | ||
613 | return this | ||
614 | } | ||
615 | |||
616 | |||
617 | // COLLAPSE DATA-API | ||
618 | // ================= | ||
619 | |||
620 | $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function(e) { | ||
621 | var $this = $(this), | ||
622 | href | ||
623 | var target = $this.attr('data-target') || e.preventDefault() || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 | ||
624 | var $target = $(target) | ||
625 | var data = $target.data('bs.collapse') | ||
626 | var option = data ? 'toggle' : $this.data() | ||
627 | var parent = $this.attr('data-parent') | ||
628 | var $parent = parent && $(parent) | ||
629 | |||
630 | if (!data || !data.transitioning) { | ||
631 | if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed') | ||
632 | $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed') | ||
633 | } | ||
634 | |||
635 | $target.collapse(option) | ||
636 | }) | ||
637 | |||
638 | }(jQuery); | ||
639 | |||
640 | /* ======================================================================== | ||
641 | * Bootstrap: dropdown.js v3.1.1 | ||
642 | * http://getbootstrap.com/javascript/#dropdowns | ||
643 | * ======================================================================== | ||
644 | * Copyright 2011-2014 Twitter, Inc. | ||
645 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
646 | * ======================================================================== */ | ||
647 | |||
648 | |||
649 | + function($) { | ||
650 | 'use strict'; | ||
651 | |||
652 | // DROPDOWN CLASS DEFINITION | ||
653 | // ========================= | ||
654 | |||
655 | var backdrop = '.dropdown-backdrop' | ||
656 | var toggle = '[data-toggle=dropdown]' | ||
657 | var Dropdown = function(element) { | ||
658 | $(element).on('click.bs.dropdown', this.toggle) | ||
659 | } | ||
660 | |||
661 | Dropdown.prototype.toggle = function(e) { | ||
662 | var $this = $(this) | ||
663 | |||
664 | if ($this.is('.disabled, :disabled')) return | ||
665 | |||
666 | var $parent = getParent($this) | ||
667 | var isActive = $parent.hasClass('open') | ||
668 | |||
669 | clearMenus() | ||
670 | |||
671 | if (!isActive) { | ||
672 | if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { | ||
673 | // if mobile we use a backdrop because click events don't delegate | ||
674 | $('<div class="dropdown-backdrop"/>').insertAfter($(this)).on('click', clearMenus) | ||
675 | } | ||
676 | |||
677 | var relatedTarget = { | ||
678 | relatedTarget: this | ||
679 | } | ||
680 | $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget)) | ||
681 | |||
682 | if (e.isDefaultPrevented()) return | ||
683 | |||
684 | $parent | ||
685 | .toggleClass('open') | ||
686 | .trigger('shown.bs.dropdown', relatedTarget) | ||
687 | |||
688 | $this.focus() | ||
689 | } | ||
690 | |||
691 | return false | ||
692 | } | ||
693 | |||
694 | Dropdown.prototype.keydown = function(e) { | ||
695 | if (!/(38|40|27)/.test(e.keyCode)) return | ||
696 | |||
697 | var $this = $(this) | ||
698 | |||
699 | e.preventDefault() | ||
700 | e.stopPropagation() | ||
701 | |||
702 | if ($this.is('.disabled, :disabled')) return | ||
703 | |||
704 | var $parent = getParent($this) | ||
705 | var isActive = $parent.hasClass('open') | ||
706 | |||
707 | if (!isActive || (isActive && e.keyCode == 27)) { | ||
708 | if (e.which == 27) $parent.find(toggle).focus() | ||
709 | return $this.click() | ||
710 | } | ||
711 | |||
712 | var desc = ' li:not(.divider):visible a' | ||
713 | var $items = $parent.find('[role=menu]' + desc + ', [role=listbox]' + desc) | ||
714 | |||
715 | if (!$items.length) return | ||
716 | |||
717 | var index = $items.index($items.filter(':focus')) | ||
718 | |||
719 | if (e.keyCode == 38 && index > 0) index-- // up | ||
720 | if (e.keyCode == 40 && index < $items.length - 1) index++ // down | ||
721 | if (!~index) index = 0 | ||
722 | |||
723 | $items.eq(index).focus() | ||
724 | } | ||
725 | |||
726 | function clearMenus(e) { | ||
727 | $(backdrop).remove() | ||
728 | $(toggle).each(function() { | ||
729 | var $parent = getParent($(this)) | ||
730 | var relatedTarget = { | ||
731 | relatedTarget: this | ||
732 | } | ||
733 | if (!$parent.hasClass('open')) return | ||
734 | $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget)) | ||
735 | if (e.isDefaultPrevented()) return | ||
736 | $parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget) | ||
737 | }) | ||
738 | } | ||
739 | |||
740 | function getParent($this) { | ||
741 | var selector = $this.attr('data-target') | ||
742 | |||
743 | if (!selector) { | ||
744 | selector = $this.attr('href') | ||
745 | selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 | ||
746 | } | ||
747 | |||
748 | var $parent = selector && $(selector) | ||
749 | |||
750 | return $parent && $parent.length ? $parent : $this.parent() | ||
751 | } | ||
752 | |||
753 | |||
754 | // DROPDOWN PLUGIN DEFINITION | ||
755 | // ========================== | ||
756 | |||
757 | var old = $.fn.dropdown | ||
758 | |||
759 | $.fn.dropdown = function(option) { | ||
760 | return this.each(function() { | ||
761 | var $this = $(this) | ||
762 | var data = $this.data('bs.dropdown') | ||
763 | |||
764 | if (!data) $this.data('bs.dropdown', (data = new Dropdown(this))) | ||
765 | if (typeof option == 'string') data[option].call($this) | ||
766 | }) | ||
767 | } | ||
768 | |||
769 | $.fn.dropdown.Constructor = Dropdown | ||
770 | |||
771 | |||
772 | // DROPDOWN NO CONFLICT | ||
773 | // ==================== | ||
774 | |||
775 | $.fn.dropdown.noConflict = function() { | ||
776 | $.fn.dropdown = old | ||
777 | return this | ||
778 | } | ||
779 | |||
780 | |||
781 | // APPLY TO STANDARD DROPDOWN ELEMENTS | ||
782 | // =================================== | ||
783 | |||
784 | $(document) | ||
785 | .on('click.bs.dropdown.data-api', clearMenus) | ||
786 | .on('click.bs.dropdown.data-api', '.dropdown form', function(e) { | ||
787 | e.stopPropagation() | ||
788 | }) | ||
789 | .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle) | ||
790 | .on('keydown.bs.dropdown.data-api', toggle + ', [role=menu], [role=listbox]', Dropdown.prototype.keydown) | ||
791 | |||
792 | }(jQuery); | ||
793 | |||
794 | /* ======================================================================== | ||
795 | * Bootstrap: modal.js v3.1.1 | ||
796 | * http://getbootstrap.com/javascript/#modals | ||
797 | * ======================================================================== | ||
798 | * Copyright 2011-2014 Twitter, Inc. | ||
799 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
800 | * ======================================================================== */ | ||
801 | |||
802 | |||
803 | + function($) { | ||
804 | 'use strict'; | ||
805 | |||
806 | // MODAL CLASS DEFINITION | ||
807 | // ====================== | ||
808 | |||
809 | var Modal = function(element, options) { | ||
810 | this.options = options | ||
811 | this.$element = $(element) | ||
812 | this.$backdrop = | ||
813 | this.isShown = null | ||
814 | |||
815 | if (this.options.remote) { | ||
816 | this.$element | ||
817 | .find('.modal-content') | ||
818 | .load(this.options.remote, $.proxy(function() { | ||
819 | this.$element.trigger('loaded.bs.modal') | ||
820 | }, this)) | ||
821 | } | ||
822 | } | ||
823 | |||
824 | Modal.DEFAULTS = { | ||
825 | backdrop: true, | ||
826 | keyboard: true, | ||
827 | show: true | ||
828 | } | ||
829 | |||
830 | Modal.prototype.toggle = function(_relatedTarget) { | ||
831 | return this[!this.isShown ? 'show' : 'hide'](_relatedTarget) | ||
832 | } | ||
833 | |||
834 | Modal.prototype.show = function(_relatedTarget) { | ||
835 | var that = this | ||
836 | var e = $.Event('show.bs.modal', { | ||
837 | relatedTarget: _relatedTarget | ||
838 | }) | ||
839 | |||
840 | this.$element.trigger(e) | ||
841 | |||
842 | if (this.isShown || e.isDefaultPrevented()) return | ||
843 | |||
844 | this.isShown = true | ||
845 | |||
846 | this.escape() | ||
847 | |||
848 | this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) | ||
849 | |||
850 | this.backdrop(function() { | ||
851 | var transition = $.support.transition && that.$element.hasClass('fade') | ||
852 | |||
853 | if (!that.$element.parent().length) { | ||
854 | that.$element.appendTo(document.body) // don't move modals dom position | ||
855 | } | ||
856 | |||
857 | that.$element | ||
858 | .show() | ||
859 | .scrollTop(0) | ||
860 | |||
861 | if (transition) { | ||
862 | that.$element[0].offsetWidth // force reflow | ||
863 | } | ||
864 | |||
865 | that.$element | ||
866 | .addClass('in') | ||
867 | .attr('aria-hidden', false) | ||
868 | |||
869 | that.enforceFocus() | ||
870 | |||
871 | var e = $.Event('shown.bs.modal', { | ||
872 | relatedTarget: _relatedTarget | ||
873 | }) | ||
874 | |||
875 | transition ? | ||
876 | that.$element.find('.modal-dialog') // wait for modal to slide in | ||
877 | .one($.support.transition.end, function() { | ||
878 | that.$element.focus().trigger(e) | ||
879 | }) | ||
880 | .emulateTransitionEnd(300) : | ||
881 | that.$element.focus().trigger(e) | ||
882 | }) | ||
883 | } | ||
884 | |||
885 | Modal.prototype.hide = function(e) { | ||
886 | if (e) e.preventDefault() | ||
887 | |||
888 | e = $.Event('hide.bs.modal') | ||
889 | |||
890 | this.$element.trigger(e) | ||
891 | |||
892 | if (!this.isShown || e.isDefaultPrevented()) return | ||
893 | |||
894 | this.isShown = false | ||
895 | |||
896 | this.escape() | ||
897 | |||
898 | $(document).off('focusin.bs.modal') | ||
899 | |||
900 | this.$element | ||
901 | .removeClass('in') | ||
902 | .attr('aria-hidden', true) | ||
903 | .off('click.dismiss.bs.modal') | ||
904 | |||
905 | $.support.transition && this.$element.hasClass('fade') ? | ||
906 | this.$element | ||
907 | .one($.support.transition.end, $.proxy(this.hideModal, this)) | ||
908 | .emulateTransitionEnd(300) : | ||
909 | this.hideModal() | ||
910 | } | ||
911 | |||
912 | Modal.prototype.enforceFocus = function() { | ||
913 | $(document) | ||
914 | .off('focusin.bs.modal') // guard against infinite focus loop | ||
915 | .on('focusin.bs.modal', $.proxy(function(e) { | ||
916 | if (this.$element[0] !== e.target && !this.$element.has(e.target).length) { | ||
917 | this.$element.focus() | ||
918 | } | ||
919 | }, this)) | ||
920 | } | ||
921 | |||
922 | Modal.prototype.escape = function() { | ||
923 | if (this.isShown && this.options.keyboard) { | ||
924 | this.$element.on('keyup.dismiss.bs.modal', $.proxy(function(e) { | ||
925 | e.which == 27 && this.hide() | ||
926 | }, this)) | ||
927 | } else if (!this.isShown) { | ||
928 | this.$element.off('keyup.dismiss.bs.modal') | ||
929 | } | ||
930 | } | ||
931 | |||
932 | Modal.prototype.hideModal = function() { | ||
933 | var that = this | ||
934 | this.$element.hide() | ||
935 | this.backdrop(function() { | ||
936 | that.removeBackdrop() | ||
937 | that.$element.trigger('hidden.bs.modal') | ||
938 | }) | ||
939 | } | ||
940 | |||
941 | Modal.prototype.removeBackdrop = function() { | ||
942 | this.$backdrop && this.$backdrop.remove() | ||
943 | this.$backdrop = null | ||
944 | } | ||
945 | |||
946 | Modal.prototype.backdrop = function(callback) { | ||
947 | var animate = this.$element.hasClass('fade') ? 'fade' : '' | ||
948 | |||
949 | if (this.isShown && this.options.backdrop) { | ||
950 | var doAnimate = $.support.transition && animate | ||
951 | |||
952 | this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />') | ||
953 | .appendTo(document.body) | ||
954 | |||
955 | this.$element.on('click.dismiss.bs.modal', $.proxy(function(e) { | ||
956 | if (e.target !== e.currentTarget) return | ||
957 | this.options.backdrop == 'static' ? this.$element[0].focus.call(this.$element[0]) : this.hide.call(this) | ||
958 | }, this)) | ||
959 | |||
960 | if (doAnimate) this.$backdrop[0].offsetWidth // force reflow | ||
961 | |||
962 | this.$backdrop.addClass('in') | ||
963 | |||
964 | if (!callback) return | ||
965 | |||
966 | doAnimate ? | ||
967 | this.$backdrop | ||
968 | .one($.support.transition.end, callback) | ||
969 | .emulateTransitionEnd(150) : | ||
970 | callback() | ||
971 | |||
972 | } else if (!this.isShown && this.$backdrop) { | ||
973 | this.$backdrop.removeClass('in') | ||
974 | |||
975 | $.support.transition && this.$element.hasClass('fade') ? | ||
976 | this.$backdrop | ||
977 | .one($.support.transition.end, callback) | ||
978 | .emulateTransitionEnd(150) : | ||
979 | callback() | ||
980 | |||
981 | } else if (callback) { | ||
982 | callback() | ||
983 | } | ||
984 | } | ||
985 | |||
986 | |||
987 | // MODAL PLUGIN DEFINITION | ||
988 | // ======================= | ||
989 | |||
990 | var old = $.fn.modal | ||
991 | |||
992 | $.fn.modal = function(option, _relatedTarget) { | ||
993 | return this.each(function() { | ||
994 | var $this = $(this) | ||
995 | var data = $this.data('bs.modal') | ||
996 | var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option) | ||
997 | |||
998 | if (!data) $this.data('bs.modal', (data = new Modal(this, options))) | ||
999 | if (typeof option == 'string') data[option](_relatedTarget) | ||
1000 | else if (options.show) data.show(_relatedTarget) | ||
1001 | }) | ||
1002 | } | ||
1003 | |||
1004 | $.fn.modal.Constructor = Modal | ||
1005 | |||
1006 | |||
1007 | // MODAL NO CONFLICT | ||
1008 | // ================= | ||
1009 | |||
1010 | $.fn.modal.noConflict = function() { | ||
1011 | $.fn.modal = old | ||
1012 | return this | ||
1013 | } | ||
1014 | |||
1015 | |||
1016 | // MODAL DATA-API | ||
1017 | // ============== | ||
1018 | |||
1019 | $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function(e) { | ||
1020 | var $this = $(this) | ||
1021 | var href = $this.attr('href') | ||
1022 | var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7 | ||
1023 | var option = $target.data('bs.modal') ? 'toggle' : $.extend({ | ||
1024 | remote: !/#/.test(href) && href | ||
1025 | }, $target.data(), $this.data()) | ||
1026 | |||
1027 | if ($this.is('a')) e.preventDefault() | ||
1028 | |||
1029 | $target | ||
1030 | .modal(option, this) | ||
1031 | .one('hide', function() { | ||
1032 | $this.is(':visible') && $this.focus() | ||
1033 | }) | ||
1034 | }) | ||
1035 | |||
1036 | $(document) | ||
1037 | .on('show.bs.modal', '.modal', function() { | ||
1038 | $(document.body).addClass('modal-open') | ||
1039 | }) | ||
1040 | .on('hidden.bs.modal', '.modal', function() { | ||
1041 | $(document.body).removeClass('modal-open') | ||
1042 | }) | ||
1043 | |||
1044 | }(jQuery); | ||
1045 | |||
1046 | /* ======================================================================== | ||
1047 | * Bootstrap: tooltip.js v3.1.1 | ||
1048 | * http://getbootstrap.com/javascript/#tooltip | ||
1049 | * Inspired by the original jQuery.tipsy by Jason Frame | ||
1050 | * ======================================================================== | ||
1051 | * Copyright 2011-2014 Twitter, Inc. | ||
1052 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
1053 | * ======================================================================== */ | ||
1054 | |||
1055 | |||
1056 | + function($) { | ||
1057 | 'use strict'; | ||
1058 | |||
1059 | // TOOLTIP PUBLIC CLASS DEFINITION | ||
1060 | // =============================== | ||
1061 | |||
1062 | var Tooltip = function(element, options) { | ||
1063 | this.type = | ||
1064 | this.options = | ||
1065 | this.enabled = | ||
1066 | this.timeout = | ||
1067 | this.hoverState = | ||
1068 | this.$element = null | ||
1069 | |||
1070 | this.init('tooltip', element, options) | ||
1071 | } | ||
1072 | |||
1073 | Tooltip.DEFAULTS = { | ||
1074 | animation: true, | ||
1075 | placement: 'top', | ||
1076 | selector: false, | ||
1077 | template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', | ||
1078 | trigger: 'hover focus', | ||
1079 | title: '', | ||
1080 | delay: 0, | ||
1081 | html: false, | ||
1082 | container: false | ||
1083 | } | ||
1084 | |||
1085 | Tooltip.prototype.init = function(type, element, options) { | ||
1086 | this.enabled = true | ||
1087 | this.type = type | ||
1088 | this.$element = $(element) | ||
1089 | this.options = this.getOptions(options) | ||
1090 | |||
1091 | var triggers = this.options.trigger.split(' ') | ||
1092 | |||
1093 | for (var i = triggers.length; i--;) { | ||
1094 | var trigger = triggers[i] | ||
1095 | |||
1096 | if (trigger == 'click') { | ||
1097 | this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) | ||
1098 | } else if (trigger != 'manual') { | ||
1099 | var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin' | ||
1100 | var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout' | ||
1101 | |||
1102 | this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) | ||
1103 | this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) | ||
1104 | } | ||
1105 | } | ||
1106 | |||
1107 | this.options.selector ? | ||
1108 | (this._options = $.extend({}, this.options, { | ||
1109 | trigger: 'manual', | ||
1110 | selector: '' | ||
1111 | })) : | ||
1112 | this.fixTitle() | ||
1113 | } | ||
1114 | |||
1115 | Tooltip.prototype.getDefaults = function() { | ||
1116 | return Tooltip.DEFAULTS | ||
1117 | } | ||
1118 | |||
1119 | Tooltip.prototype.getOptions = function(options) { | ||
1120 | options = $.extend({}, this.getDefaults(), this.$element.data(), options) | ||
1121 | |||
1122 | if (options.delay && typeof options.delay == 'number') { | ||
1123 | options.delay = { | ||
1124 | show: options.delay, | ||
1125 | hide: options.delay | ||
1126 | } | ||
1127 | } | ||
1128 | |||
1129 | return options | ||
1130 | } | ||
1131 | |||
1132 | Tooltip.prototype.getDelegateOptions = function() { | ||
1133 | var options = {} | ||
1134 | var defaults = this.getDefaults() | ||
1135 | |||
1136 | this._options && $.each(this._options, function(key, value) { | ||
1137 | if (defaults[key] != value) options[key] = value | ||
1138 | }) | ||
1139 | |||
1140 | return options | ||
1141 | } | ||
1142 | |||
1143 | Tooltip.prototype.enter = function(obj) { | ||
1144 | var self = obj instanceof this.constructor ? | ||
1145 | obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) | ||
1146 | |||
1147 | clearTimeout(self.timeout) | ||
1148 | |||
1149 | self.hoverState = 'in' | ||
1150 | |||
1151 | if (!self.options.delay || !self.options.delay.show) return self.show() | ||
1152 | |||
1153 | self.timeout = setTimeout(function() { | ||
1154 | if (self.hoverState == 'in') self.show() | ||
1155 | }, self.options.delay.show) | ||
1156 | } | ||
1157 | |||
1158 | Tooltip.prototype.leave = function(obj) { | ||
1159 | var self = obj instanceof this.constructor ? | ||
1160 | obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) | ||
1161 | |||
1162 | clearTimeout(self.timeout) | ||
1163 | |||
1164 | self.hoverState = 'out' | ||
1165 | |||
1166 | if (!self.options.delay || !self.options.delay.hide) return self.hide() | ||
1167 | |||
1168 | self.timeout = setTimeout(function() { | ||
1169 | if (self.hoverState == 'out') self.hide() | ||
1170 | }, self.options.delay.hide) | ||
1171 | } | ||
1172 | |||
1173 | Tooltip.prototype.show = function() { | ||
1174 | var e = $.Event('show.bs.' + this.type) | ||
1175 | |||
1176 | if (this.hasContent() && this.enabled) { | ||
1177 | this.$element.trigger(e) | ||
1178 | |||
1179 | if (e.isDefaultPrevented()) return | ||
1180 | var that = this; | ||
1181 | |||
1182 | var $tip = this.tip() | ||
1183 | |||
1184 | this.setContent() | ||
1185 | |||
1186 | if (this.options.animation) $tip.addClass('fade') | ||
1187 | |||
1188 | var placement = typeof this.options.placement == 'function' ? | ||
1189 | this.options.placement.call(this, $tip[0], this.$element[0]) : | ||
1190 | this.options.placement | ||
1191 | |||
1192 | var autoToken = /\s?auto?\s?/i | ||
1193 | var autoPlace = autoToken.test(placement) | ||
1194 | if (autoPlace) placement = placement.replace(autoToken, '') || 'top' | ||
1195 | |||
1196 | $tip | ||
1197 | .detach() | ||
1198 | .css({ | ||
1199 | top: 0, | ||
1200 | left: 0, | ||
1201 | display: 'block' | ||
1202 | }) | ||
1203 | .addClass(placement) | ||
1204 | |||
1205 | this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element) | ||
1206 | |||
1207 | var pos = this.getPosition() | ||
1208 | var actualWidth = $tip[0].offsetWidth | ||
1209 | var actualHeight = $tip[0].offsetHeight | ||
1210 | |||
1211 | if (autoPlace) { | ||
1212 | var $parent = this.$element.parent() | ||
1213 | |||
1214 | var orgPlacement = placement | ||
1215 | var docScroll = document.documentElement.scrollTop || document.body.scrollTop | ||
1216 | var parentWidth = this.options.container == 'body' ? window.innerWidth : $parent.outerWidth() | ||
1217 | var parentHeight = this.options.container == 'body' ? window.innerHeight : $parent.outerHeight() | ||
1218 | var parentLeft = this.options.container == 'body' ? 0 : $parent.offset().left | ||
1219 | |||
1220 | placement = placement == 'bottom' && pos.top + pos.height + actualHeight - docScroll > parentHeight ? 'top' : | ||
1221 | placement == 'top' && pos.top - docScroll - actualHeight < 0 ? 'bottom' : | ||
1222 | placement == 'right' && pos.right + actualWidth > parentWidth ? 'left' : | ||
1223 | placement == 'left' && pos.left - actualWidth < parentLeft ? 'right' : | ||
1224 | placement | ||
1225 | |||
1226 | $tip | ||
1227 | .removeClass(orgPlacement) | ||
1228 | .addClass(placement) | ||
1229 | } | ||
1230 | |||
1231 | var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) | ||
1232 | |||
1233 | this.applyPlacement(calculatedOffset, placement) | ||
1234 | this.hoverState = null | ||
1235 | |||
1236 | var complete = function() { | ||
1237 | that.$element.trigger('shown.bs.' + that.type) | ||
1238 | } | ||
1239 | |||
1240 | $.support.transition && this.$tip.hasClass('fade') ? | ||
1241 | $tip | ||
1242 | .one($.support.transition.end, complete) | ||
1243 | .emulateTransitionEnd(150) : | ||
1244 | complete() | ||
1245 | } | ||
1246 | } | ||
1247 | |||
1248 | Tooltip.prototype.applyPlacement = function(offset, placement) { | ||
1249 | var replace | ||
1250 | var $tip = this.tip() | ||
1251 | var width = $tip[0].offsetWidth | ||
1252 | var height = $tip[0].offsetHeight | ||
1253 | |||
1254 | // manually read margins because getBoundingClientRect includes difference | ||
1255 | var marginTop = parseInt($tip.css('margin-top'), 10) | ||
1256 | var marginLeft = parseInt($tip.css('margin-left'), 10) | ||
1257 | |||
1258 | // we must check for NaN for ie 8/9 | ||
1259 | if (isNaN(marginTop)) marginTop = 0 | ||
1260 | if (isNaN(marginLeft)) marginLeft = 0 | ||
1261 | |||
1262 | offset.top = offset.top + marginTop | ||
1263 | offset.left = offset.left + marginLeft | ||
1264 | |||
1265 | // $.fn.offset doesn't round pixel values | ||
1266 | // so we use setOffset directly with our own function B-0 | ||
1267 | $.offset.setOffset($tip[0], $.extend({ | ||
1268 | using: function(props) { | ||
1269 | $tip.css({ | ||
1270 | top: Math.round(props.top), | ||
1271 | left: Math.round(props.left) | ||
1272 | }) | ||
1273 | } | ||
1274 | }, offset), 0) | ||
1275 | |||
1276 | $tip.addClass('in') | ||
1277 | |||
1278 | // check to see if placing tip in new offset caused the tip to resize itself | ||
1279 | var actualWidth = $tip[0].offsetWidth | ||
1280 | var actualHeight = $tip[0].offsetHeight | ||
1281 | |||
1282 | if (placement == 'top' && actualHeight != height) { | ||
1283 | replace = true | ||
1284 | offset.top = offset.top + height - actualHeight | ||
1285 | } | ||
1286 | |||
1287 | if (/bottom|top/.test(placement)) { | ||
1288 | var delta = 0 | ||
1289 | |||
1290 | if (offset.left < 0) { | ||
1291 | delta = offset.left * -2 | ||
1292 | offset.left = 0 | ||
1293 | |||
1294 | $tip.offset(offset) | ||
1295 | |||
1296 | actualWidth = $tip[0].offsetWidth | ||
1297 | actualHeight = $tip[0].offsetHeight | ||
1298 | } | ||
1299 | |||
1300 | this.replaceArrow(delta - width + actualWidth, actualWidth, 'left') | ||
1301 | } else { | ||
1302 | this.replaceArrow(actualHeight - height, actualHeight, 'top') | ||
1303 | } | ||
1304 | |||
1305 | if (replace) $tip.offset(offset) | ||
1306 | } | ||
1307 | |||
1308 | Tooltip.prototype.replaceArrow = function(delta, dimension, position) { | ||
1309 | this.arrow().css(position, delta ? (50 * (1 - delta / dimension) + '%') : '') | ||
1310 | } | ||
1311 | |||
1312 | Tooltip.prototype.setContent = function() { | ||
1313 | var $tip = this.tip() | ||
1314 | var title = this.getTitle() | ||
1315 | |||
1316 | $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) | ||
1317 | $tip.removeClass('fade in top bottom left right') | ||
1318 | } | ||
1319 | |||
1320 | Tooltip.prototype.hide = function() { | ||
1321 | var that = this | ||
1322 | var $tip = this.tip() | ||
1323 | var e = $.Event('hide.bs.' + this.type) | ||
1324 | |||
1325 | function complete() { | ||
1326 | if (that.hoverState != 'in') $tip.detach() | ||
1327 | that.$element.trigger('hidden.bs.' + that.type) | ||
1328 | } | ||
1329 | |||
1330 | this.$element.trigger(e) | ||
1331 | |||
1332 | if (e.isDefaultPrevented()) return | ||
1333 | |||
1334 | $tip.removeClass('in') | ||
1335 | |||
1336 | $.support.transition && this.$tip.hasClass('fade') ? | ||
1337 | $tip | ||
1338 | .one($.support.transition.end, complete) | ||
1339 | .emulateTransitionEnd(150) : | ||
1340 | complete() | ||
1341 | |||
1342 | this.hoverState = null | ||
1343 | |||
1344 | return this | ||
1345 | } | ||
1346 | |||
1347 | Tooltip.prototype.fixTitle = function() { | ||
1348 | var $e = this.$element | ||
1349 | if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') { | ||
1350 | $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') | ||
1351 | } | ||
1352 | } | ||
1353 | |||
1354 | Tooltip.prototype.hasContent = function() { | ||
1355 | return this.getTitle() | ||
1356 | } | ||
1357 | |||
1358 | Tooltip.prototype.getPosition = function() { | ||
1359 | var el = this.$element[0] | ||
1360 | return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : { | ||
1361 | width: el.offsetWidth, | ||
1362 | height: el.offsetHeight | ||
1363 | }, this.$element.offset()) | ||
1364 | } | ||
1365 | |||
1366 | Tooltip.prototype.getCalculatedOffset = function(placement, pos, actualWidth, actualHeight) { | ||
1367 | return placement == 'bottom' ? { | ||
1368 | top: pos.top + pos.height, | ||
1369 | left: pos.left + pos.width / 2 - actualWidth / 2 | ||
1370 | } : | ||
1371 | placement == 'top' ? { | ||
1372 | top: pos.top - actualHeight, | ||
1373 | left: pos.left + pos.width / 2 - actualWidth / 2 | ||
1374 | } : | ||
1375 | placement == 'left' ? { | ||
1376 | top: pos.top + pos.height / 2 - actualHeight / 2, | ||
1377 | left: pos.left - actualWidth | ||
1378 | } : | ||
1379 | /* placement == 'right' */ | ||
1380 | { | ||
1381 | top: pos.top + pos.height / 2 - actualHeight / 2, | ||
1382 | left: pos.left + pos.width | ||
1383 | } | ||
1384 | } | ||
1385 | |||
1386 | Tooltip.prototype.getTitle = function() { | ||
1387 | var title | ||
1388 | var $e = this.$element | ||
1389 | var o = this.options | ||
1390 | |||
1391 | title = $e.attr('data-original-title') || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) | ||
1392 | |||
1393 | return title | ||
1394 | } | ||
1395 | |||
1396 | Tooltip.prototype.tip = function() { | ||
1397 | return this.$tip = this.$tip || $(this.options.template) | ||
1398 | } | ||
1399 | |||
1400 | Tooltip.prototype.arrow = function() { | ||
1401 | return this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow') | ||
1402 | } | ||
1403 | |||
1404 | Tooltip.prototype.validate = function() { | ||
1405 | if (!this.$element[0].parentNode) { | ||
1406 | this.hide() | ||
1407 | this.$element = null | ||
1408 | this.options = null | ||
1409 | } | ||
1410 | } | ||
1411 | |||
1412 | Tooltip.prototype.enable = function() { | ||
1413 | this.enabled = true | ||
1414 | } | ||
1415 | |||
1416 | Tooltip.prototype.disable = function() { | ||
1417 | this.enabled = false | ||
1418 | } | ||
1419 | |||
1420 | Tooltip.prototype.toggleEnabled = function() { | ||
1421 | this.enabled = !this.enabled | ||
1422 | } | ||
1423 | |||
1424 | Tooltip.prototype.toggle = function(e) { | ||
1425 | var self = e ? $(e.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) : this | ||
1426 | self.tip().hasClass('in') ? self.leave(self) : self.enter(self) | ||
1427 | } | ||
1428 | |||
1429 | Tooltip.prototype.destroy = function() { | ||
1430 | clearTimeout(this.timeout) | ||
1431 | this.hide().$element.off('.' + this.type).removeData('bs.' + this.type) | ||
1432 | } | ||
1433 | |||
1434 | |||
1435 | // TOOLTIP PLUGIN DEFINITION | ||
1436 | // ========================= | ||
1437 | |||
1438 | var old = $.fn.tooltip | ||
1439 | |||
1440 | $.fn.tooltip = function(option) { | ||
1441 | return this.each(function() { | ||
1442 | var $this = $(this) | ||
1443 | var data = $this.data('bs.tooltip') | ||
1444 | var options = typeof option == 'object' && option | ||
1445 | |||
1446 | if (!data && option == 'destroy') return | ||
1447 | if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) | ||
1448 | if (typeof option == 'string') data[option]() | ||
1449 | }) | ||
1450 | } | ||
1451 | |||
1452 | $.fn.tooltip.Constructor = Tooltip | ||
1453 | |||
1454 | |||
1455 | // TOOLTIP NO CONFLICT | ||
1456 | // =================== | ||
1457 | |||
1458 | $.fn.tooltip.noConflict = function() { | ||
1459 | $.fn.tooltip = old | ||
1460 | return this | ||
1461 | } | ||
1462 | |||
1463 | }(jQuery); | ||
1464 | |||
1465 | /* ======================================================================== | ||
1466 | * Bootstrap: popover.js v3.1.1 | ||
1467 | * http://getbootstrap.com/javascript/#popovers | ||
1468 | * ======================================================================== | ||
1469 | * Copyright 2011-2014 Twitter, Inc. | ||
1470 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
1471 | * ======================================================================== */ | ||
1472 | |||
1473 | |||
1474 | + function($) { | ||
1475 | 'use strict'; | ||
1476 | |||
1477 | // POPOVER PUBLIC CLASS DEFINITION | ||
1478 | // =============================== | ||
1479 | |||
1480 | var Popover = function(element, options) { | ||
1481 | this.init('popover', element, options) | ||
1482 | } | ||
1483 | |||
1484 | if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js') | ||
1485 | |||
1486 | Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, { | ||
1487 | placement: 'right', | ||
1488 | trigger: 'click', | ||
1489 | content: '', | ||
1490 | template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' | ||
1491 | }) | ||
1492 | |||
1493 | |||
1494 | // NOTE: POPOVER EXTENDS tooltip.js | ||
1495 | // ================================ | ||
1496 | |||
1497 | Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype) | ||
1498 | |||
1499 | Popover.prototype.constructor = Popover | ||
1500 | |||
1501 | Popover.prototype.getDefaults = function() { | ||
1502 | return Popover.DEFAULTS | ||
1503 | } | ||
1504 | |||
1505 | Popover.prototype.setContent = function() { | ||
1506 | var $tip = this.tip() | ||
1507 | var title = this.getTitle() | ||
1508 | var content = this.getContent() | ||
1509 | |||
1510 | $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) | ||
1511 | $tip.find('.popover-content')[ // we use append for html objects to maintain js events | ||
1512 | this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text' | ||
1513 | ](content) | ||
1514 | |||
1515 | $tip.removeClass('fade top bottom left right in') | ||
1516 | |||
1517 | // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do | ||
1518 | // this manually by checking the contents. | ||
1519 | if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide() | ||
1520 | } | ||
1521 | |||
1522 | Popover.prototype.hasContent = function() { | ||
1523 | return this.getTitle() || this.getContent() | ||
1524 | } | ||
1525 | |||
1526 | Popover.prototype.getContent = function() { | ||
1527 | var $e = this.$element | ||
1528 | var o = this.options | ||
1529 | |||
1530 | return $e.attr('data-content') || (typeof o.content == 'function' ? | ||
1531 | o.content.call($e[0]) : | ||
1532 | o.content) | ||
1533 | } | ||
1534 | |||
1535 | Popover.prototype.arrow = function() { | ||
1536 | return this.$arrow = this.$arrow || this.tip().find('.arrow') | ||
1537 | } | ||
1538 | |||
1539 | Popover.prototype.tip = function() { | ||
1540 | if (!this.$tip) this.$tip = $(this.options.template) | ||
1541 | return this.$tip | ||
1542 | } | ||
1543 | |||
1544 | |||
1545 | // POPOVER PLUGIN DEFINITION | ||
1546 | // ========================= | ||
1547 | |||
1548 | var old = $.fn.popover | ||
1549 | |||
1550 | $.fn.popover = function(option) { | ||
1551 | return this.each(function() { | ||
1552 | var $this = $(this) | ||
1553 | var data = $this.data('bs.popover') | ||
1554 | var options = typeof option == 'object' && option | ||
1555 | |||
1556 | if (!data && option == 'destroy') return | ||
1557 | if (!data) $this.data('bs.popover', (data = new Popover(this, options))) | ||
1558 | if (typeof option == 'string') data[option]() | ||
1559 | }) | ||
1560 | } | ||
1561 | |||
1562 | $.fn.popover.Constructor = Popover | ||
1563 | |||
1564 | |||
1565 | // POPOVER NO CONFLICT | ||
1566 | // =================== | ||
1567 | |||
1568 | $.fn.popover.noConflict = function() { | ||
1569 | $.fn.popover = old | ||
1570 | return this | ||
1571 | } | ||
1572 | |||
1573 | }(jQuery); | ||
1574 | |||
1575 | /* ======================================================================== | ||
1576 | * Bootstrap: scrollspy.js v3.1.1 | ||
1577 | * http://getbootstrap.com/javascript/#scrollspy | ||
1578 | * ======================================================================== | ||
1579 | * Copyright 2011-2014 Twitter, Inc. | ||
1580 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
1581 | * ======================================================================== */ | ||
1582 | |||
1583 | |||
1584 | + function($) { | ||
1585 | 'use strict'; | ||
1586 | |||
1587 | // SCROLLSPY CLASS DEFINITION | ||
1588 | // ========================== | ||
1589 | |||
1590 | function ScrollSpy(element, options) { | ||
1591 | var href | ||
1592 | var process = $.proxy(this.process, this) | ||
1593 | |||
1594 | this.$element = $(element).is('body') ? $(window) : $(element) | ||
1595 | this.$body = $('body') | ||
1596 | this.$scrollElement = this.$element.on('scroll.bs.scroll-spy.data-api', process) | ||
1597 | this.options = $.extend({}, ScrollSpy.DEFAULTS, options) | ||
1598 | this.selector = (this.options.target || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 | ||
1599 | || '') + ' .nav li > a' | ||
1600 | this.offsets = $([]) | ||
1601 | this.targets = $([]) | ||
1602 | this.activeTarget = null | ||
1603 | |||
1604 | this.refresh() | ||
1605 | this.process() | ||
1606 | } | ||
1607 | |||
1608 | ScrollSpy.DEFAULTS = { | ||
1609 | offset: 10 | ||
1610 | } | ||
1611 | |||
1612 | ScrollSpy.prototype.refresh = function() { | ||
1613 | var offsetMethod = this.$element[0] == window ? 'offset' : 'position' | ||
1614 | |||
1615 | this.offsets = $([]) | ||
1616 | this.targets = $([]) | ||
1617 | |||
1618 | var self = this | ||
1619 | var $targets = this.$body | ||
1620 | .find(this.selector) | ||
1621 | .map(function() { | ||
1622 | var $el = $(this) | ||
1623 | var href = $el.data('target') || $el.attr('href') | ||
1624 | var $href = /^#./.test(href) && $(href) | ||
1625 | |||
1626 | return ($href && $href.length && $href.is(':visible') && [ | ||
1627 | [$href[offsetMethod]().top + (!$.isWindow(self.$scrollElement.get(0)) && self.$scrollElement.scrollTop()), href] | ||
1628 | ]) || null | ||
1629 | }) | ||
1630 | .sort(function(a, b) { | ||
1631 | return a[0] - b[0] | ||
1632 | }) | ||
1633 | .each(function() { | ||
1634 | self.offsets.push(this[0]) | ||
1635 | self.targets.push(this[1]) | ||
1636 | }) | ||
1637 | } | ||
1638 | |||
1639 | ScrollSpy.prototype.process = function() { | ||
1640 | var scrollTop = this.$scrollElement.scrollTop() + this.options.offset | ||
1641 | var scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight | ||
1642 | var maxScroll = scrollHeight - this.$scrollElement.height() | ||
1643 | var offsets = this.offsets | ||
1644 | var targets = this.targets | ||
1645 | var activeTarget = this.activeTarget | ||
1646 | var i | ||
1647 | |||
1648 | if (scrollTop >= maxScroll) { | ||
1649 | return activeTarget != (i = targets.last()[0]) && this.activate(i) | ||
1650 | } | ||
1651 | |||
1652 | if (activeTarget && scrollTop <= offsets[0]) { | ||
1653 | return activeTarget != (i = targets[0]) && this.activate(i) | ||
1654 | } | ||
1655 | |||
1656 | for (i = offsets.length; i--;) { | ||
1657 | activeTarget != targets[i] && scrollTop >= offsets[i] && (!offsets[i + 1] || scrollTop <= offsets[i + 1]) && this.activate(targets[i]) | ||
1658 | } | ||
1659 | } | ||
1660 | |||
1661 | ScrollSpy.prototype.activate = function(target) { | ||
1662 | this.activeTarget = target | ||
1663 | |||
1664 | $(this.selector) | ||
1665 | .parentsUntil(this.options.target, '.active') | ||
1666 | .removeClass('active') | ||
1667 | |||
1668 | var selector = this.selector + | ||
1669 | '[data-target="' + target + '"],' + | ||
1670 | this.selector + '[href="' + target + '"]' | ||
1671 | |||
1672 | var active = $(selector) | ||
1673 | .parents('li') | ||
1674 | .addClass('active') | ||
1675 | |||
1676 | if (active.parent('.dropdown-menu').length) { | ||
1677 | active = active | ||
1678 | .closest('li.dropdown') | ||
1679 | .addClass('active') | ||
1680 | } | ||
1681 | |||
1682 | active.trigger('activate.bs.scrollspy') | ||
1683 | } | ||
1684 | |||
1685 | |||
1686 | // SCROLLSPY PLUGIN DEFINITION | ||
1687 | // =========================== | ||
1688 | |||
1689 | var old = $.fn.scrollspy | ||
1690 | |||
1691 | $.fn.scrollspy = function(option) { | ||
1692 | return this.each(function() { | ||
1693 | var $this = $(this) | ||
1694 | var data = $this.data('bs.scrollspy') | ||
1695 | var options = typeof option == 'object' && option | ||
1696 | |||
1697 | if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options))) | ||
1698 | if (typeof option == 'string') data[option]() | ||
1699 | }) | ||
1700 | } | ||
1701 | |||
1702 | $.fn.scrollspy.Constructor = ScrollSpy | ||
1703 | |||
1704 | |||
1705 | // SCROLLSPY NO CONFLICT | ||
1706 | // ===================== | ||
1707 | |||
1708 | $.fn.scrollspy.noConflict = function() { | ||
1709 | $.fn.scrollspy = old | ||
1710 | return this | ||
1711 | } | ||
1712 | |||
1713 | |||
1714 | // SCROLLSPY DATA-API | ||
1715 | // ================== | ||
1716 | |||
1717 | $(window).on('load', function() { | ||
1718 | $('[data-spy="scroll"]').each(function() { | ||
1719 | var $spy = $(this) | ||
1720 | $spy.scrollspy($spy.data()) | ||
1721 | }) | ||
1722 | }) | ||
1723 | |||
1724 | }(jQuery); | ||
1725 | |||
1726 | /* ======================================================================== | ||
1727 | * Bootstrap: tab.js v3.1.1 | ||
1728 | * http://getbootstrap.com/javascript/#tabs | ||
1729 | * ======================================================================== | ||
1730 | * Copyright 2011-2014 Twitter, Inc. | ||
1731 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
1732 | * ======================================================================== */ | ||
1733 | |||
1734 | |||
1735 | + function($) { | ||
1736 | 'use strict'; | ||
1737 | |||
1738 | // TAB CLASS DEFINITION | ||
1739 | // ==================== | ||
1740 | |||
1741 | var Tab = function(element) { | ||
1742 | this.element = $(element) | ||
1743 | } | ||
1744 | |||
1745 | Tab.prototype.show = function() { | ||
1746 | var $this = this.element | ||
1747 | var $ul = $this.closest('ul:not(.dropdown-menu)') | ||
1748 | var selector = $this.data('target') | ||
1749 | |||
1750 | if (!selector) { | ||
1751 | selector = $this.attr('href') | ||
1752 | selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 | ||
1753 | } | ||
1754 | |||
1755 | if ($this.parent('li').hasClass('active')) return | ||
1756 | |||
1757 | var previous = $ul.find('.active:last a')[0] | ||
1758 | var e = $.Event('show.bs.tab', { | ||
1759 | relatedTarget: previous | ||
1760 | }) | ||
1761 | |||
1762 | $this.trigger(e) | ||
1763 | |||
1764 | if (e.isDefaultPrevented()) return | ||
1765 | |||
1766 | var $target = $(selector) | ||
1767 | |||
1768 | this.activate($this.parent('li'), $ul) | ||
1769 | this.activate($target, $target.parent(), function() { | ||
1770 | $this.trigger({ | ||
1771 | type: 'shown.bs.tab', | ||
1772 | relatedTarget: previous | ||
1773 | }) | ||
1774 | }) | ||
1775 | } | ||
1776 | |||
1777 | Tab.prototype.activate = function(element, container, callback) { | ||
1778 | var $active = container.find('> .active') | ||
1779 | var transition = callback && $.support.transition && $active.hasClass('fade') | ||
1780 | |||
1781 | function next() { | ||
1782 | $active | ||
1783 | .removeClass('active') | ||
1784 | .find('> .dropdown-menu > .active') | ||
1785 | .removeClass('active') | ||
1786 | |||
1787 | element.addClass('active') | ||
1788 | |||
1789 | if (transition) { | ||
1790 | element[0].offsetWidth // reflow for transition | ||
1791 | element.addClass('in') | ||
1792 | } else { | ||
1793 | element.removeClass('fade') | ||
1794 | } | ||
1795 | |||
1796 | if (element.parent('.dropdown-menu')) { | ||
1797 | element.closest('li.dropdown').addClass('active') | ||
1798 | } | ||
1799 | |||
1800 | callback && callback() | ||
1801 | } | ||
1802 | |||
1803 | transition ? | ||
1804 | $active | ||
1805 | .one($.support.transition.end, next) | ||
1806 | .emulateTransitionEnd(150) : | ||
1807 | next() | ||
1808 | |||
1809 | $active.removeClass('in') | ||
1810 | } | ||
1811 | |||
1812 | |||
1813 | // TAB PLUGIN DEFINITION | ||
1814 | // ===================== | ||
1815 | |||
1816 | var old = $.fn.tab | ||
1817 | |||
1818 | $.fn.tab = function(option) { | ||
1819 | return this.each(function() { | ||
1820 | var $this = $(this) | ||
1821 | var data = $this.data('bs.tab') | ||
1822 | |||
1823 | if (!data) $this.data('bs.tab', (data = new Tab(this))) | ||
1824 | if (typeof option == 'string') data[option]() | ||
1825 | }) | ||
1826 | } | ||
1827 | |||
1828 | $.fn.tab.Constructor = Tab | ||
1829 | |||
1830 | |||
1831 | // TAB NO CONFLICT | ||
1832 | // =============== | ||
1833 | |||
1834 | $.fn.tab.noConflict = function() { | ||
1835 | $.fn.tab = old | ||
1836 | return this | ||
1837 | } | ||
1838 | |||
1839 | |||
1840 | // TAB DATA-API | ||
1841 | // ============ | ||
1842 | |||
1843 | $(document).on('click.bs.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function(e) { | ||
1844 | e.preventDefault() | ||
1845 | $(this).tab('show') | ||
1846 | }) | ||
1847 | |||
1848 | }(jQuery); | ||
1849 | |||
1850 | /* ======================================================================== | ||
1851 | * Bootstrap: affix.js v3.1.1 | ||
1852 | * http://getbootstrap.com/javascript/#affix | ||
1853 | * ======================================================================== | ||
1854 | * Copyright 2011-2014 Twitter, Inc. | ||
1855 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
1856 | * ======================================================================== */ | ||
1857 | |||
1858 | |||
1859 | + function($) { | ||
1860 | 'use strict'; | ||
1861 | |||
1862 | // AFFIX CLASS DEFINITION | ||
1863 | // ====================== | ||
1864 | |||
1865 | var Affix = function(element, options) { | ||
1866 | this.options = $.extend({}, Affix.DEFAULTS, options) | ||
1867 | this.$window = $(window) | ||
1868 | .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) | ||
1869 | .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) | ||
1870 | |||
1871 | this.$element = $(element) | ||
1872 | this.affixed = | ||
1873 | this.unpin = | ||
1874 | this.pinnedOffset = null | ||
1875 | |||
1876 | this.checkPosition() | ||
1877 | } | ||
1878 | |||
1879 | Affix.RESET = 'affix affix-top affix-bottom' | ||
1880 | |||
1881 | Affix.DEFAULTS = { | ||
1882 | offset: 0 | ||
1883 | } | ||
1884 | |||
1885 | Affix.prototype.getPinnedOffset = function() { | ||
1886 | if (this.pinnedOffset) return this.pinnedOffset | ||
1887 | this.$element.removeClass(Affix.RESET).addClass('affix') | ||
1888 | var scrollTop = this.$window.scrollTop() | ||
1889 | var position = this.$element.offset() | ||
1890 | return (this.pinnedOffset = position.top - scrollTop) | ||
1891 | } | ||
1892 | |||
1893 | Affix.prototype.checkPositionWithEventLoop = function() { | ||
1894 | setTimeout($.proxy(this.checkPosition, this), 1) | ||
1895 | } | ||
1896 | |||
1897 | Affix.prototype.checkPosition = function() { | ||
1898 | if (!this.$element.is(':visible')) return | ||
1899 | |||
1900 | var scrollHeight = $(document).height() | ||
1901 | var scrollTop = this.$window.scrollTop() | ||
1902 | var position = this.$element.offset() | ||
1903 | var offset = this.options.offset | ||
1904 | var offsetTop = offset.top | ||
1905 | var offsetBottom = offset.bottom | ||
1906 | |||
1907 | if (this.affixed == 'top') position.top += scrollTop | ||
1908 | |||
1909 | if (typeof offset != 'object') offsetBottom = offsetTop = offset | ||
1910 | if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) | ||
1911 | if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) | ||
1912 | |||
1913 | var affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ? false : | ||
1914 | offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ? 'bottom' : | ||
1915 | offsetTop != null && (scrollTop <= offsetTop) ? 'top' : false | ||
1916 | |||
1917 | if (this.affixed === affix) return | ||
1918 | if (this.unpin) this.$element.css('top', '') | ||
1919 | |||
1920 | var affixType = 'affix' + (affix ? '-' + affix : '') | ||
1921 | var e = $.Event(affixType + '.bs.affix') | ||
1922 | |||
1923 | this.$element.trigger(e) | ||
1924 | |||
1925 | if (e.isDefaultPrevented()) return | ||
1926 | |||
1927 | this.affixed = affix | ||
1928 | this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null | ||
1929 | |||
1930 | this.$element | ||
1931 | .removeClass(Affix.RESET) | ||
1932 | .addClass(affixType) | ||
1933 | .trigger($.Event(affixType.replace('affix', 'affixed'))) | ||
1934 | |||
1935 | if (affix == 'bottom') { | ||
1936 | this.$element.offset({ | ||
1937 | top: scrollHeight - offsetBottom - this.$element.height() | ||
1938 | }) | ||
1939 | } | ||
1940 | } | ||
1941 | |||
1942 | |||
1943 | // AFFIX PLUGIN DEFINITION | ||
1944 | // ======================= | ||
1945 | |||
1946 | var old = $.fn.affix | ||
1947 | |||
1948 | $.fn.affix = function(option) { | ||
1949 | return this.each(function() { | ||
1950 | var $this = $(this) | ||
1951 | var data = $this.data('bs.affix') | ||
1952 | var options = typeof option == 'object' && option | ||
1953 | |||
1954 | if (!data) $this.data('bs.affix', (data = new Affix(this, options))) | ||
1955 | if (typeof option == 'string') data[option]() | ||
1956 | }) | ||
1957 | } | ||
1958 | |||
1959 | $.fn.affix.Constructor = Affix | ||
1960 | |||
1961 | |||
1962 | // AFFIX NO CONFLICT | ||
1963 | // ================= | ||
1964 | |||
1965 | $.fn.affix.noConflict = function() { | ||
1966 | $.fn.affix = old | ||
1967 | return this | ||
1968 | } | ||
1969 | |||
1970 | |||
1971 | // AFFIX DATA-API | ||
1972 | // ============== | ||
1973 | |||
1974 | $(window).on('load', function() { | ||
1975 | $('[data-spy="affix"]').each(function() { | ||
1976 | var $spy = $(this) | ||
1977 | var data = $spy.data() | ||
1978 | |||
1979 | data.offset = data.offset || {} | ||
1980 | |||
1981 | if (data.offsetBottom) data.offset.bottom = data.offsetBottom | ||
1982 | if (data.offsetTop) data.offset.top = data.offsetTop | ||
1983 | |||
1984 | $spy.affix(data) | ||
1985 | }) | ||
1986 | }) | ||
1987 | |||
1988 | }(jQuery); \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/mobile/js/bootstrap.min.js b/deprecated/jinwei.me/mobile/js/bootstrap.min.js new file mode 100644 index 0000000..42eb86f --- /dev/null +++ b/deprecated/jinwei.me/mobile/js/bootstrap.min.js | |||
@@ -0,0 +1,759 @@ | |||
1 | /*! | ||
2 | * Bootstrap v3.1.1 (http://getbootstrap.com) | ||
3 | * Copyright 2011-2014 Twitter, Inc. | ||
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
5 | */ | ||
6 | if ("undefined" == typeof jQuery) throw new Error("Bootstrap's JavaScript requires jQuery"); + function(a) { | ||
7 | "use strict"; | ||
8 | |||
9 | function b() { | ||
10 | var a = document.createElement("bootstrap"), | ||
11 | b = { | ||
12 | WebkitTransition: "webkitTransitionEnd", | ||
13 | MozTransition: "transitionend", | ||
14 | OTransition: "oTransitionEnd otransitionend", | ||
15 | transition: "transitionend" | ||
16 | }; | ||
17 | for (var c in b) | ||
18 | if (void 0 !== a.style[c]) return { | ||
19 | end: b[c] | ||
20 | }; | ||
21 | return !1 | ||
22 | } | ||
23 | a.fn.emulateTransitionEnd = function(b) { | ||
24 | var c = !1, | ||
25 | d = this; | ||
26 | a(this).one(a.support.transition.end, function() { | ||
27 | c = !0 | ||
28 | }); | ||
29 | var e = function() { | ||
30 | c || a(d).trigger(a.support.transition.end) | ||
31 | }; | ||
32 | return setTimeout(e, b), this | ||
33 | }, a(function() { | ||
34 | a.support.transition = b() | ||
35 | }) | ||
36 | }(jQuery), + function(a) { | ||
37 | "use strict"; | ||
38 | var b = '[data-dismiss="alert"]', | ||
39 | c = function(c) { | ||
40 | a(c).on("click", b, this.close) | ||
41 | }; | ||
42 | c.prototype.close = function(b) { | ||
43 | function c() { | ||
44 | f.trigger("closed.bs.alert").remove() | ||
45 | } | ||
46 | var d = a(this), | ||
47 | e = d.attr("data-target"); | ||
48 | e || (e = d.attr("href"), e = e && e.replace(/.*(?=#[^\s]*$)/, "")); | ||
49 | var f = a(e); | ||
50 | b && b.preventDefault(), f.length || (f = d.hasClass("alert") ? d : d.parent()), f.trigger(b = a.Event("close.bs.alert")), b.isDefaultPrevented() || (f.removeClass("in"), a.support.transition && f.hasClass("fade") ? f.one(a.support.transition.end, c).emulateTransitionEnd(150) : c()) | ||
51 | }; | ||
52 | var d = a.fn.alert; | ||
53 | a.fn.alert = function(b) { | ||
54 | return this.each(function() { | ||
55 | var d = a(this), | ||
56 | e = d.data("bs.alert"); | ||
57 | e || d.data("bs.alert", e = new c(this)), "string" == typeof b && e[b].call(d) | ||
58 | }) | ||
59 | }, a.fn.alert.Constructor = c, a.fn.alert.noConflict = function() { | ||
60 | return a.fn.alert = d, this | ||
61 | }, a(document).on("click.bs.alert.data-api", b, c.prototype.close) | ||
62 | }(jQuery), + function(a) { | ||
63 | "use strict"; | ||
64 | var b = function(c, d) { | ||
65 | this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d), this.isLoading = !1 | ||
66 | }; | ||
67 | b.DEFAULTS = { | ||
68 | loadingText: "loading..." | ||
69 | }, b.prototype.setState = function(b) { | ||
70 | var c = "disabled", | ||
71 | d = this.$element, | ||
72 | e = d.is("input") ? "val" : "html", | ||
73 | f = d.data(); | ||
74 | b += "Text", f.resetText || d.data("resetText", d[e]()), d[e](f[b] || this.options[b]), setTimeout(a.proxy(function() { | ||
75 | "loadingText" == b ? (this.isLoading = !0, d.addClass(c).attr(c, c)) : this.isLoading && (this.isLoading = !1, d.removeClass(c).removeAttr(c)) | ||
76 | }, this), 0) | ||
77 | }, b.prototype.toggle = function() { | ||
78 | var a = !0, | ||
79 | b = this.$element.closest('[data-toggle="buttons"]'); | ||
80 | if (b.length) { | ||
81 | var c = this.$element.find("input"); | ||
82 | "radio" == c.prop("type") && (c.prop("checked") && this.$element.hasClass("active") ? a = !1 : b.find(".active").removeClass("active")), a && c.prop("checked", !this.$element.hasClass("active")).trigger("change") | ||
83 | } | ||
84 | a && this.$element.toggleClass("active") | ||
85 | }; | ||
86 | var c = a.fn.button; | ||
87 | a.fn.button = function(c) { | ||
88 | return this.each(function() { | ||
89 | var d = a(this), | ||
90 | e = d.data("bs.button"), | ||
91 | f = "object" == typeof c && c; | ||
92 | e || d.data("bs.button", e = new b(this, f)), "toggle" == c ? e.toggle() : c && e.setState(c) | ||
93 | }) | ||
94 | }, a.fn.button.Constructor = b, a.fn.button.noConflict = function() { | ||
95 | return a.fn.button = c, this | ||
96 | }, a(document).on("click.bs.button.data-api", "[data-toggle^=button]", function(b) { | ||
97 | var c = a(b.target); | ||
98 | c.hasClass("btn") || (c = c.closest(".btn")), c.button("toggle"), b.preventDefault() | ||
99 | }) | ||
100 | }(jQuery), + function(a) { | ||
101 | "use strict"; | ||
102 | var b = function(b, c) { | ||
103 | this.$element = a(b), this.$indicators = this.$element.find(".carousel-indicators"), this.options = c, this.paused = this.sliding = this.interval = this.$active = this.$items = null, "hover" == this.options.pause && this.$element.on("mouseenter", a.proxy(this.pause, this)).on("mouseleave", a.proxy(this.cycle, this)) | ||
104 | }; | ||
105 | b.DEFAULTS = { | ||
106 | interval: 5e3, | ||
107 | pause: "hover", | ||
108 | wrap: !0 | ||
109 | }, b.prototype.cycle = function(b) { | ||
110 | return b || (this.paused = !1), this.interval && clearInterval(this.interval), this.options.interval && !this.paused && (this.interval = setInterval(a.proxy(this.next, this), this.options.interval)), this | ||
111 | }, b.prototype.getActiveIndex = function() { | ||
112 | return this.$active = this.$element.find(".item.active"), this.$items = this.$active.parent().children(), this.$items.index(this.$active) | ||
113 | }, b.prototype.to = function(b) { | ||
114 | var c = this, | ||
115 | d = this.getActiveIndex(); | ||
116 | return b > this.$items.length - 1 || 0 > b ? void 0 : this.sliding ? this.$element.one("slid.bs.carousel", function() { | ||
117 | c.to(b) | ||
118 | }) : d == b ? this.pause().cycle() : this.slide(b > d ? "next" : "prev", a(this.$items[b])) | ||
119 | }, b.prototype.pause = function(b) { | ||
120 | return b || (this.paused = !0), this.$element.find(".next, .prev").length && a.support.transition && (this.$element.trigger(a.support.transition.end), this.cycle(!0)), this.interval = clearInterval(this.interval), this | ||
121 | }, b.prototype.next = function() { | ||
122 | return this.sliding ? void 0 : this.slide("next") | ||
123 | }, b.prototype.prev = function() { | ||
124 | return this.sliding ? void 0 : this.slide("prev") | ||
125 | }, b.prototype.slide = function(b, c) { | ||
126 | var d = this.$element.find(".item.active"), | ||
127 | e = c || d[b](), | ||
128 | f = this.interval, | ||
129 | g = "next" == b ? "left" : "right", | ||
130 | h = "next" == b ? "first" : "last", | ||
131 | i = this; | ||
132 | if (!e.length) { | ||
133 | if (!this.options.wrap) return; | ||
134 | e = this.$element.find(".item")[h]() | ||
135 | } | ||
136 | if (e.hasClass("active")) return this.sliding = !1; | ||
137 | var j = a.Event("slide.bs.carousel", { | ||
138 | relatedTarget: e[0], | ||
139 | direction: g | ||
140 | }); | ||
141 | return this.$element.trigger(j), j.isDefaultPrevented() ? void 0 : (this.sliding = !0, f && this.pause(), this.$indicators.length && (this.$indicators.find(".active").removeClass("active"), this.$element.one("slid.bs.carousel", function() { | ||
142 | var b = a(i.$indicators.children()[i.getActiveIndex()]); | ||
143 | b && b.addClass("active") | ||
144 | })), a.support.transition && this.$element.hasClass("slide") ? (e.addClass(b), e[0].offsetWidth, d.addClass(g), e.addClass(g), d.one(a.support.transition.end, function() { | ||
145 | e.removeClass([b, g].join(" ")).addClass("active"), d.removeClass(["active", g].join(" ")), i.sliding = !1, setTimeout(function() { | ||
146 | i.$element.trigger("slid.bs.carousel") | ||
147 | }, 0) | ||
148 | }).emulateTransitionEnd(1e3 * d.css("transition-duration").slice(0, -1))) : (d.removeClass("active"), e.addClass("active"), this.sliding = !1, this.$element.trigger("slid.bs.carousel")), f && this.cycle(), this) | ||
149 | }; | ||
150 | var c = a.fn.carousel; | ||
151 | a.fn.carousel = function(c) { | ||
152 | return this.each(function() { | ||
153 | var d = a(this), | ||
154 | e = d.data("bs.carousel"), | ||
155 | f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c), | ||
156 | g = "string" == typeof c ? c : f.slide; | ||
157 | e || d.data("bs.carousel", e = new b(this, f)), "number" == typeof c ? e.to(c) : g ? e[g]() : f.interval && e.pause().cycle() | ||
158 | }) | ||
159 | }, a.fn.carousel.Constructor = b, a.fn.carousel.noConflict = function() { | ||
160 | return a.fn.carousel = c, this | ||
161 | }, a(document).on("click.bs.carousel.data-api", "[data-slide], [data-slide-to]", function(b) { | ||
162 | var c, d = a(this), | ||
163 | e = a(d.attr("data-target") || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, "")), | ||
164 | f = a.extend({}, e.data(), d.data()), | ||
165 | g = d.attr("data-slide-to"); | ||
166 | g && (f.interval = !1), e.carousel(f), (g = d.attr("data-slide-to")) && e.data("bs.carousel").to(g), b.preventDefault() | ||
167 | }), a(window).on("load", function() { | ||
168 | a('[data-ride="carousel"]').each(function() { | ||
169 | var b = a(this); | ||
170 | b.carousel(b.data()) | ||
171 | }) | ||
172 | }) | ||
173 | }(jQuery), + function(a) { | ||
174 | "use strict"; | ||
175 | var b = function(c, d) { | ||
176 | this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d), this.transitioning = null, this.options.parent && (this.$parent = a(this.options.parent)), this.options.toggle && this.toggle() | ||
177 | }; | ||
178 | b.DEFAULTS = { | ||
179 | toggle: !0 | ||
180 | }, b.prototype.dimension = function() { | ||
181 | var a = this.$element.hasClass("width"); | ||
182 | return a ? "width" : "height" | ||
183 | }, b.prototype.show = function() { | ||
184 | if (!this.transitioning && !this.$element.hasClass("in")) { | ||
185 | var b = a.Event("show.bs.collapse"); | ||
186 | if (this.$element.trigger(b), !b.isDefaultPrevented()) { | ||
187 | var c = this.$parent && this.$parent.find("> .panel > .in"); | ||
188 | if (c && c.length) { | ||
189 | var d = c.data("bs.collapse"); | ||
190 | if (d && d.transitioning) return; | ||
191 | c.collapse("hide"), d || c.data("bs.collapse", null) | ||
192 | } | ||
193 | var e = this.dimension(); | ||
194 | this.$element.removeClass("collapse").addClass("collapsing")[e](0), this.transitioning = 1; | ||
195 | var f = function() { | ||
196 | this.$element.removeClass("collapsing").addClass("collapse in")[e]("auto"), this.transitioning = 0, this.$element.trigger("shown.bs.collapse") | ||
197 | }; | ||
198 | if (!a.support.transition) return f.call(this); | ||
199 | var g = a.camelCase(["scroll", e].join("-")); | ||
200 | this.$element.one(a.support.transition.end, a.proxy(f, this)).emulateTransitionEnd(350)[e](this.$element[0][g]) | ||
201 | } | ||
202 | } | ||
203 | }, b.prototype.hide = function() { | ||
204 | if (!this.transitioning && this.$element.hasClass("in")) { | ||
205 | var b = a.Event("hide.bs.collapse"); | ||
206 | if (this.$element.trigger(b), !b.isDefaultPrevented()) { | ||
207 | var c = this.dimension(); | ||
208 | this.$element[c](this.$element[c]())[0].offsetHeight, this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"), this.transitioning = 1; | ||
209 | var d = function() { | ||
210 | this.transitioning = 0, this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse") | ||
211 | }; | ||
212 | return a.support.transition ? void this.$element[c](0).one(a.support.transition.end, a.proxy(d, this)).emulateTransitionEnd(350) : d.call(this) | ||
213 | } | ||
214 | } | ||
215 | }, b.prototype.toggle = function() { | ||
216 | this[this.$element.hasClass("in") ? "hide" : "show"]() | ||
217 | }; | ||
218 | var c = a.fn.collapse; | ||
219 | a.fn.collapse = function(c) { | ||
220 | return this.each(function() { | ||
221 | var d = a(this), | ||
222 | e = d.data("bs.collapse"), | ||
223 | f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c); | ||
224 | !e && f.toggle && "show" == c && (c = !c), e || d.data("bs.collapse", e = new b(this, f)), "string" == typeof c && e[c]() | ||
225 | }) | ||
226 | }, a.fn.collapse.Constructor = b, a.fn.collapse.noConflict = function() { | ||
227 | return a.fn.collapse = c, this | ||
228 | }, a(document).on("click.bs.collapse.data-api", "[data-toggle=collapse]", function(b) { | ||
229 | var c, d = a(this), | ||
230 | e = d.attr("data-target") || b.preventDefault() || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, ""), | ||
231 | f = a(e), | ||
232 | g = f.data("bs.collapse"), | ||
233 | h = g ? "toggle" : d.data(), | ||
234 | i = d.attr("data-parent"), | ||
235 | j = i && a(i); | ||
236 | g && g.transitioning || (j && j.find('[data-toggle=collapse][data-parent="' + i + '"]').not(d).addClass("collapsed"), d[f.hasClass("in") ? "addClass" : "removeClass"]("collapsed")), f.collapse(h) | ||
237 | }) | ||
238 | }(jQuery), + function(a) { | ||
239 | "use strict"; | ||
240 | |||
241 | function b(b) { | ||
242 | a(d).remove(), a(e).each(function() { | ||
243 | var d = c(a(this)), | ||
244 | e = { | ||
245 | relatedTarget: this | ||
246 | }; | ||
247 | d.hasClass("open") && (d.trigger(b = a.Event("hide.bs.dropdown", e)), b.isDefaultPrevented() || d.removeClass("open").trigger("hidden.bs.dropdown", e)) | ||
248 | }) | ||
249 | } | ||
250 | |||
251 | function c(b) { | ||
252 | var c = b.attr("data-target"); | ||
253 | c || (c = b.attr("href"), c = c && /#[A-Za-z]/.test(c) && c.replace(/.*(?=#[^\s]*$)/, "")); | ||
254 | var d = c && a(c); | ||
255 | return d && d.length ? d : b.parent() | ||
256 | } | ||
257 | var d = ".dropdown-backdrop", | ||
258 | e = "[data-toggle=dropdown]", | ||
259 | f = function(b) { | ||
260 | a(b).on("click.bs.dropdown", this.toggle) | ||
261 | }; | ||
262 | f.prototype.toggle = function(d) { | ||
263 | var e = a(this); | ||
264 | if (!e.is(".disabled, :disabled")) { | ||
265 | var f = c(e), | ||
266 | g = f.hasClass("open"); | ||
267 | if (b(), !g) { | ||
268 | "ontouchstart" in document.documentElement && !f.closest(".navbar-nav").length && a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click", b); | ||
269 | var h = { | ||
270 | relatedTarget: this | ||
271 | }; | ||
272 | if (f.trigger(d = a.Event("show.bs.dropdown", h)), d.isDefaultPrevented()) return; | ||
273 | f.toggleClass("open").trigger("shown.bs.dropdown", h), e.focus() | ||
274 | } | ||
275 | return !1 | ||
276 | } | ||
277 | }, f.prototype.keydown = function(b) { | ||
278 | if (/(38|40|27)/.test(b.keyCode)) { | ||
279 | var d = a(this); | ||
280 | if (b.preventDefault(), b.stopPropagation(), !d.is(".disabled, :disabled")) { | ||
281 | var f = c(d), | ||
282 | g = f.hasClass("open"); | ||
283 | if (!g || g && 27 == b.keyCode) return 27 == b.which && f.find(e).focus(), d.click(); | ||
284 | var h = " li:not(.divider):visible a", | ||
285 | i = f.find("[role=menu]" + h + ", [role=listbox]" + h); | ||
286 | if (i.length) { | ||
287 | var j = i.index(i.filter(":focus")); | ||
288 | 38 == b.keyCode && j > 0 && j--, 40 == b.keyCode && j < i.length - 1 && j++, ~j || (j = 0), i.eq(j).focus() | ||
289 | } | ||
290 | } | ||
291 | } | ||
292 | }; | ||
293 | var g = a.fn.dropdown; | ||
294 | a.fn.dropdown = function(b) { | ||
295 | return this.each(function() { | ||
296 | var c = a(this), | ||
297 | d = c.data("bs.dropdown"); | ||
298 | d || c.data("bs.dropdown", d = new f(this)), "string" == typeof b && d[b].call(c) | ||
299 | }) | ||
300 | }, a.fn.dropdown.Constructor = f, a.fn.dropdown.noConflict = function() { | ||
301 | return a.fn.dropdown = g, this | ||
302 | }, a(document).on("click.bs.dropdown.data-api", b).on("click.bs.dropdown.data-api", ".dropdown form", function(a) { | ||
303 | a.stopPropagation() | ||
304 | }).on("click.bs.dropdown.data-api", e, f.prototype.toggle).on("keydown.bs.dropdown.data-api", e + ", [role=menu], [role=listbox]", f.prototype.keydown) | ||
305 | }(jQuery), + function(a) { | ||
306 | "use strict"; | ||
307 | var b = function(b, c) { | ||
308 | this.options = c, this.$element = a(b), this.$backdrop = this.isShown = null, this.options.remote && this.$element.find(".modal-content").load(this.options.remote, a.proxy(function() { | ||
309 | this.$element.trigger("loaded.bs.modal") | ||
310 | }, this)) | ||
311 | }; | ||
312 | b.DEFAULTS = { | ||
313 | backdrop: !0, | ||
314 | keyboard: !0, | ||
315 | show: !0 | ||
316 | }, b.prototype.toggle = function(a) { | ||
317 | return this[this.isShown ? "hide" : "show"](a) | ||
318 | }, b.prototype.show = function(b) { | ||
319 | var c = this, | ||
320 | d = a.Event("show.bs.modal", { | ||
321 | relatedTarget: b | ||
322 | }); | ||
323 | this.$element.trigger(d), this.isShown || d.isDefaultPrevented() || (this.isShown = !0, this.escape(), this.$element.on("click.dismiss.bs.modal", '[data-dismiss="modal"]', a.proxy(this.hide, this)), this.backdrop(function() { | ||
324 | var d = a.support.transition && c.$element.hasClass("fade"); | ||
325 | c.$element.parent().length || c.$element.appendTo(document.body), c.$element.show().scrollTop(0), d && c.$element[0].offsetWidth, c.$element.addClass("in").attr("aria-hidden", !1), c.enforceFocus(); | ||
326 | var e = a.Event("shown.bs.modal", { | ||
327 | relatedTarget: b | ||
328 | }); | ||
329 | d ? c.$element.find(".modal-dialog").one(a.support.transition.end, function() { | ||
330 | c.$element.focus().trigger(e) | ||
331 | }).emulateTransitionEnd(300) : c.$element.focus().trigger(e) | ||
332 | })) | ||
333 | }, b.prototype.hide = function(b) { | ||
334 | b && b.preventDefault(), b = a.Event("hide.bs.modal"), this.$element.trigger(b), this.isShown && !b.isDefaultPrevented() && (this.isShown = !1, this.escape(), a(document).off("focusin.bs.modal"), this.$element.removeClass("in").attr("aria-hidden", !0).off("click.dismiss.bs.modal"), a.support.transition && this.$element.hasClass("fade") ? this.$element.one(a.support.transition.end, a.proxy(this.hideModal, this)).emulateTransitionEnd(300) : this.hideModal()) | ||
335 | }, b.prototype.enforceFocus = function() { | ||
336 | a(document).off("focusin.bs.modal").on("focusin.bs.modal", a.proxy(function(a) { | ||
337 | this.$element[0] === a.target || this.$element.has(a.target).length || this.$element.focus() | ||
338 | }, this)) | ||
339 | }, b.prototype.escape = function() { | ||
340 | this.isShown && this.options.keyboard ? this.$element.on("keyup.dismiss.bs.modal", a.proxy(function(a) { | ||
341 | 27 == a.which && this.hide() | ||
342 | }, this)) : this.isShown || this.$element.off("keyup.dismiss.bs.modal") | ||
343 | }, b.prototype.hideModal = function() { | ||
344 | var a = this; | ||
345 | this.$element.hide(), this.backdrop(function() { | ||
346 | a.removeBackdrop(), a.$element.trigger("hidden.bs.modal") | ||
347 | }) | ||
348 | }, b.prototype.removeBackdrop = function() { | ||
349 | this.$backdrop && this.$backdrop.remove(), this.$backdrop = null | ||
350 | }, b.prototype.backdrop = function(b) { | ||
351 | var c = this.$element.hasClass("fade") ? "fade" : ""; | ||
352 | if (this.isShown && this.options.backdrop) { | ||
353 | var d = a.support.transition && c; | ||
354 | if (this.$backdrop = a('<div class="modal-backdrop ' + c + '" />').appendTo(document.body), this.$element.on("click.dismiss.bs.modal", a.proxy(function(a) { | ||
355 | a.target === a.currentTarget && ("static" == this.options.backdrop ? this.$element[0].focus.call(this.$element[0]) : this.hide.call(this)) | ||
356 | }, this)), d && this.$backdrop[0].offsetWidth, this.$backdrop.addClass("in"), !b) return; | ||
357 | d ? this.$backdrop.one(a.support.transition.end, b).emulateTransitionEnd(150) : b() | ||
358 | } else !this.isShown && this.$backdrop ? (this.$backdrop.removeClass("in"), a.support.transition && this.$element.hasClass("fade") ? this.$backdrop.one(a.support.transition.end, b).emulateTransitionEnd(150) : b()) : b && b() | ||
359 | }; | ||
360 | var c = a.fn.modal; | ||
361 | a.fn.modal = function(c, d) { | ||
362 | return this.each(function() { | ||
363 | var e = a(this), | ||
364 | f = e.data("bs.modal"), | ||
365 | g = a.extend({}, b.DEFAULTS, e.data(), "object" == typeof c && c); | ||
366 | f || e.data("bs.modal", f = new b(this, g)), "string" == typeof c ? f[c](d) : g.show && f.show(d) | ||
367 | }) | ||
368 | }, a.fn.modal.Constructor = b, a.fn.modal.noConflict = function() { | ||
369 | return a.fn.modal = c, this | ||
370 | }, a(document).on("click.bs.modal.data-api", '[data-toggle="modal"]', function(b) { | ||
371 | var c = a(this), | ||
372 | d = c.attr("href"), | ||
373 | e = a(c.attr("data-target") || d && d.replace(/.*(?=#[^\s]+$)/, "")), | ||
374 | f = e.data("bs.modal") ? "toggle" : a.extend({ | ||
375 | remote: !/#/.test(d) && d | ||
376 | }, e.data(), c.data()); | ||
377 | c.is("a") && b.preventDefault(), e.modal(f, this).one("hide", function() { | ||
378 | c.is(":visible") && c.focus() | ||
379 | }) | ||
380 | }), a(document).on("show.bs.modal", ".modal", function() { | ||
381 | a(document.body).addClass("modal-open") | ||
382 | }).on("hidden.bs.modal", ".modal", function() { | ||
383 | a(document.body).removeClass("modal-open") | ||
384 | }) | ||
385 | }(jQuery), + function(a) { | ||
386 | "use strict"; | ||
387 | var b = function(a, b) { | ||
388 | this.type = this.options = this.enabled = this.timeout = this.hoverState = this.$element = null, this.init("tooltip", a, b) | ||
389 | }; | ||
390 | b.DEFAULTS = { | ||
391 | animation: !0, | ||
392 | placement: "top", | ||
393 | selector: !1, | ||
394 | template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', | ||
395 | trigger: "hover focus", | ||
396 | title: "", | ||
397 | delay: 0, | ||
398 | html: !1, | ||
399 | container: !1 | ||
400 | }, b.prototype.init = function(b, c, d) { | ||
401 | this.enabled = !0, this.type = b, this.$element = a(c), this.options = this.getOptions(d); | ||
402 | for (var e = this.options.trigger.split(" "), f = e.length; f--;) { | ||
403 | var g = e[f]; | ||
404 | if ("click" == g) this.$element.on("click." + this.type, this.options.selector, a.proxy(this.toggle, this)); | ||
405 | else if ("manual" != g) { | ||
406 | var h = "hover" == g ? "mouseenter" : "focusin", | ||
407 | i = "hover" == g ? "mouseleave" : "focusout"; | ||
408 | this.$element.on(h + "." + this.type, this.options.selector, a.proxy(this.enter, this)), this.$element.on(i + "." + this.type, this.options.selector, a.proxy(this.leave, this)) | ||
409 | } | ||
410 | } | ||
411 | this.options.selector ? this._options = a.extend({}, this.options, { | ||
412 | trigger: "manual", | ||
413 | selector: "" | ||
414 | }) : this.fixTitle() | ||
415 | }, b.prototype.getDefaults = function() { | ||
416 | return b.DEFAULTS | ||
417 | }, b.prototype.getOptions = function(b) { | ||
418 | return b = a.extend({}, this.getDefaults(), this.$element.data(), b), b.delay && "number" == typeof b.delay && (b.delay = { | ||
419 | show: b.delay, | ||
420 | hide: b.delay | ||
421 | }), b | ||
422 | }, b.prototype.getDelegateOptions = function() { | ||
423 | var b = {}, | ||
424 | c = this.getDefaults(); | ||
425 | return this._options && a.each(this._options, function(a, d) { | ||
426 | c[a] != d && (b[a] = d) | ||
427 | }), b | ||
428 | }, b.prototype.enter = function(b) { | ||
429 | var c = b instanceof this.constructor ? b : a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type); | ||
430 | return clearTimeout(c.timeout), c.hoverState = "in", c.options.delay && c.options.delay.show ? void(c.timeout = setTimeout(function() { | ||
431 | "in" == c.hoverState && c.show() | ||
432 | }, c.options.delay.show)) : c.show() | ||
433 | }, b.prototype.leave = function(b) { | ||
434 | var c = b instanceof this.constructor ? b : a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type); | ||
435 | return clearTimeout(c.timeout), c.hoverState = "out", c.options.delay && c.options.delay.hide ? void(c.timeout = setTimeout(function() { | ||
436 | "out" == c.hoverState && c.hide() | ||
437 | }, c.options.delay.hide)) : c.hide() | ||
438 | }, b.prototype.show = function() { | ||
439 | var b = a.Event("show.bs." + this.type); | ||
440 | if (this.hasContent() && this.enabled) { | ||
441 | if (this.$element.trigger(b), b.isDefaultPrevented()) return; | ||
442 | var c = this, | ||
443 | d = this.tip(); | ||
444 | this.setContent(), this.options.animation && d.addClass("fade"); | ||
445 | var e = "function" == typeof this.options.placement ? this.options.placement.call(this, d[0], this.$element[0]) : this.options.placement, | ||
446 | f = /\s?auto?\s?/i, | ||
447 | g = f.test(e); | ||
448 | g && (e = e.replace(f, "") || "top"), d.detach().css({ | ||
449 | top: 0, | ||
450 | left: 0, | ||
451 | display: "block" | ||
452 | }).addClass(e), this.options.container ? d.appendTo(this.options.container) : d.insertAfter(this.$element); | ||
453 | var h = this.getPosition(), | ||
454 | i = d[0].offsetWidth, | ||
455 | j = d[0].offsetHeight; | ||
456 | if (g) { | ||
457 | var k = this.$element.parent(), | ||
458 | l = e, | ||
459 | m = document.documentElement.scrollTop || document.body.scrollTop, | ||
460 | n = "body" == this.options.container ? window.innerWidth : k.outerWidth(), | ||
461 | o = "body" == this.options.container ? window.innerHeight : k.outerHeight(), | ||
462 | p = "body" == this.options.container ? 0 : k.offset().left; | ||
463 | e = "bottom" == e && h.top + h.height + j - m > o ? "top" : "top" == e && h.top - m - j < 0 ? "bottom" : "right" == e && h.right + i > n ? "left" : "left" == e && h.left - i < p ? "right" : e, d.removeClass(l).addClass(e) | ||
464 | } | ||
465 | var q = this.getCalculatedOffset(e, h, i, j); | ||
466 | this.applyPlacement(q, e), this.hoverState = null; | ||
467 | var r = function() { | ||
468 | c.$element.trigger("shown.bs." + c.type) | ||
469 | }; | ||
470 | a.support.transition && this.$tip.hasClass("fade") ? d.one(a.support.transition.end, r).emulateTransitionEnd(150) : r() | ||
471 | } | ||
472 | }, b.prototype.applyPlacement = function(b, c) { | ||
473 | var d, e = this.tip(), | ||
474 | f = e[0].offsetWidth, | ||
475 | g = e[0].offsetHeight, | ||
476 | h = parseInt(e.css("margin-top"), 10), | ||
477 | i = parseInt(e.css("margin-left"), 10); | ||
478 | isNaN(h) && (h = 0), isNaN(i) && (i = 0), b.top = b.top + h, b.left = b.left + i, a.offset.setOffset(e[0], a.extend({ | ||
479 | using: function(a) { | ||
480 | e.css({ | ||
481 | top: Math.round(a.top), | ||
482 | left: Math.round(a.left) | ||
483 | }) | ||
484 | } | ||
485 | }, b), 0), e.addClass("in"); | ||
486 | var j = e[0].offsetWidth, | ||
487 | k = e[0].offsetHeight; | ||
488 | if ("top" == c && k != g && (d = !0, b.top = b.top + g - k), /bottom|top/.test(c)) { | ||
489 | var l = 0; | ||
490 | b.left < 0 && (l = -2 * b.left, b.left = 0, e.offset(b), j = e[0].offsetWidth, k = e[0].offsetHeight), this.replaceArrow(l - f + j, j, "left") | ||
491 | } else this.replaceArrow(k - g, k, "top"); | ||
492 | d && e.offset(b) | ||
493 | }, b.prototype.replaceArrow = function(a, b, c) { | ||
494 | this.arrow().css(c, a ? 50 * (1 - a / b) + "%" : "") | ||
495 | }, b.prototype.setContent = function() { | ||
496 | var a = this.tip(), | ||
497 | b = this.getTitle(); | ||
498 | a.find(".tooltip-inner")[this.options.html ? "html" : "text"](b), a.removeClass("fade in top bottom left right") | ||
499 | }, b.prototype.hide = function() { | ||
500 | function b() { | ||
501 | "in" != c.hoverState && d.detach(), c.$element.trigger("hidden.bs." + c.type) | ||
502 | } | ||
503 | var c = this, | ||
504 | d = this.tip(), | ||
505 | e = a.Event("hide.bs." + this.type); | ||
506 | return this.$element.trigger(e), e.isDefaultPrevented() ? void 0 : (d.removeClass("in"), a.support.transition && this.$tip.hasClass("fade") ? d.one(a.support.transition.end, b).emulateTransitionEnd(150) : b(), this.hoverState = null, this) | ||
507 | }, b.prototype.fixTitle = function() { | ||
508 | var a = this.$element; | ||
509 | (a.attr("title") || "string" != typeof a.attr("data-original-title")) && a.attr("data-original-title", a.attr("title") || "").attr("title", "") | ||
510 | }, b.prototype.hasContent = function() { | ||
511 | return this.getTitle() | ||
512 | }, b.prototype.getPosition = function() { | ||
513 | var b = this.$element[0]; | ||
514 | return a.extend({}, "function" == typeof b.getBoundingClientRect ? b.getBoundingClientRect() : { | ||
515 | width: b.offsetWidth, | ||
516 | height: b.offsetHeight | ||
517 | }, this.$element.offset()) | ||
518 | }, b.prototype.getCalculatedOffset = function(a, b, c, d) { | ||
519 | return "bottom" == a ? { | ||
520 | top: b.top + b.height, | ||
521 | left: b.left + b.width / 2 - c / 2 | ||
522 | } : "top" == a ? { | ||
523 | top: b.top - d, | ||
524 | left: b.left + b.width / 2 - c / 2 | ||
525 | } : "left" == a ? { | ||
526 | top: b.top + b.height / 2 - d / 2, | ||
527 | left: b.left - c | ||
528 | } : { | ||
529 | top: b.top + b.height / 2 - d / 2, | ||
530 | left: b.left + b.width | ||
531 | } | ||
532 | }, b.prototype.getTitle = function() { | ||
533 | var a, b = this.$element, | ||
534 | c = this.options; | ||
535 | return a = b.attr("data-original-title") || ("function" == typeof c.title ? c.title.call(b[0]) : c.title) | ||
536 | }, b.prototype.tip = function() { | ||
537 | return this.$tip = this.$tip || a(this.options.template) | ||
538 | }, b.prototype.arrow = function() { | ||
539 | return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow") | ||
540 | }, b.prototype.validate = function() { | ||
541 | this.$element[0].parentNode || (this.hide(), this.$element = null, this.options = null) | ||
542 | }, b.prototype.enable = function() { | ||
543 | this.enabled = !0 | ||
544 | }, b.prototype.disable = function() { | ||
545 | this.enabled = !1 | ||
546 | }, b.prototype.toggleEnabled = function() { | ||
547 | this.enabled = !this.enabled | ||
548 | }, b.prototype.toggle = function(b) { | ||
549 | var c = b ? a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type) : this; | ||
550 | c.tip().hasClass("in") ? c.leave(c) : c.enter(c) | ||
551 | }, b.prototype.destroy = function() { | ||
552 | clearTimeout(this.timeout), this.hide().$element.off("." + this.type).removeData("bs." + this.type) | ||
553 | }; | ||
554 | var c = a.fn.tooltip; | ||
555 | a.fn.tooltip = function(c) { | ||
556 | return this.each(function() { | ||
557 | var d = a(this), | ||
558 | e = d.data("bs.tooltip"), | ||
559 | f = "object" == typeof c && c; | ||
560 | (e || "destroy" != c) && (e || d.data("bs.tooltip", e = new b(this, f)), "string" == typeof c && e[c]()) | ||
561 | }) | ||
562 | }, a.fn.tooltip.Constructor = b, a.fn.tooltip.noConflict = function() { | ||
563 | return a.fn.tooltip = c, this | ||
564 | } | ||
565 | }(jQuery), + function(a) { | ||
566 | "use strict"; | ||
567 | var b = function(a, b) { | ||
568 | this.init("popover", a, b) | ||
569 | }; | ||
570 | if (!a.fn.tooltip) throw new Error("Popover requires tooltip.js"); | ||
571 | b.DEFAULTS = a.extend({}, a.fn.tooltip.Constructor.DEFAULTS, { | ||
572 | placement: "right", | ||
573 | trigger: "click", | ||
574 | content: "", | ||
575 | template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' | ||
576 | }), b.prototype = a.extend({}, a.fn.tooltip.Constructor.prototype), b.prototype.constructor = b, b.prototype.getDefaults = function() { | ||
577 | return b.DEFAULTS | ||
578 | }, b.prototype.setContent = function() { | ||
579 | var a = this.tip(), | ||
580 | b = this.getTitle(), | ||
581 | c = this.getContent(); | ||
582 | a.find(".popover-title")[this.options.html ? "html" : "text"](b), a.find(".popover-content")[this.options.html ? "string" == typeof c ? "html" : "append" : "text"](c), a.removeClass("fade top bottom left right in"), a.find(".popover-title").html() || a.find(".popover-title").hide() | ||
583 | }, b.prototype.hasContent = function() { | ||
584 | return this.getTitle() || this.getContent() | ||
585 | }, b.prototype.getContent = function() { | ||
586 | var a = this.$element, | ||
587 | b = this.options; | ||
588 | return a.attr("data-content") || ("function" == typeof b.content ? b.content.call(a[0]) : b.content) | ||
589 | }, b.prototype.arrow = function() { | ||
590 | return this.$arrow = this.$arrow || this.tip().find(".arrow") | ||
591 | }, b.prototype.tip = function() { | ||
592 | return this.$tip || (this.$tip = a(this.options.template)), this.$tip | ||
593 | }; | ||
594 | var c = a.fn.popover; | ||
595 | a.fn.popover = function(c) { | ||
596 | return this.each(function() { | ||
597 | var d = a(this), | ||
598 | e = d.data("bs.popover"), | ||
599 | f = "object" == typeof c && c; | ||
600 | (e || "destroy" != c) && (e || d.data("bs.popover", e = new b(this, f)), "string" == typeof c && e[c]()) | ||
601 | }) | ||
602 | }, a.fn.popover.Constructor = b, a.fn.popover.noConflict = function() { | ||
603 | return a.fn.popover = c, this | ||
604 | } | ||
605 | }(jQuery), + function(a) { | ||
606 | "use strict"; | ||
607 | |||
608 | function b(c, d) { | ||
609 | var e, f = a.proxy(this.process, this); | ||
610 | this.$element = a(a(c).is("body") ? window : c), this.$body = a("body"), this.$scrollElement = this.$element.on("scroll.bs.scroll-spy.data-api", f), this.options = a.extend({}, b.DEFAULTS, d), this.selector = (this.options.target || (e = a(c).attr("href")) && e.replace(/.*(?=#[^\s]+$)/, "") || "") + " .nav li > a", this.offsets = a([]), this.targets = a([]), this.activeTarget = null, this.refresh(), this.process() | ||
611 | } | ||
612 | b.DEFAULTS = { | ||
613 | offset: 10 | ||
614 | }, b.prototype.refresh = function() { | ||
615 | var b = this.$element[0] == window ? "offset" : "position"; | ||
616 | this.offsets = a([]), this.targets = a([]); { | ||
617 | var c = this; | ||
618 | this.$body.find(this.selector).map(function() { | ||
619 | var d = a(this), | ||
620 | e = d.data("target") || d.attr("href"), | ||
621 | f = /^#./.test(e) && a(e); | ||
622 | return f && f.length && f.is(":visible") && [ | ||
623 | [f[b]().top + (!a.isWindow(c.$scrollElement.get(0)) && c.$scrollElement.scrollTop()), e] | ||
624 | ] || null | ||
625 | }).sort(function(a, b) { | ||
626 | return a[0] - b[0] | ||
627 | }).each(function() { | ||
628 | c.offsets.push(this[0]), c.targets.push(this[1]) | ||
629 | }) | ||
630 | } | ||
631 | }, b.prototype.process = function() { | ||
632 | var a, b = this.$scrollElement.scrollTop() + this.options.offset, | ||
633 | c = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight, | ||
634 | d = c - this.$scrollElement.height(), | ||
635 | e = this.offsets, | ||
636 | f = this.targets, | ||
637 | g = this.activeTarget; | ||
638 | if (b >= d) return g != (a = f.last()[0]) && this.activate(a); | ||
639 | if (g && b <= e[0]) return g != (a = f[0]) && this.activate(a); | ||
640 | for (a = e.length; a--;) g != f[a] && b >= e[a] && (!e[a + 1] || b <= e[a + 1]) && this.activate(f[a]) | ||
641 | }, b.prototype.activate = function(b) { | ||
642 | this.activeTarget = b, a(this.selector).parentsUntil(this.options.target, ".active").removeClass("active"); | ||
643 | var c = this.selector + '[data-target="' + b + '"],' + this.selector + '[href="' + b + '"]', | ||
644 | d = a(c).parents("li").addClass("active"); | ||
645 | d.parent(".dropdown-menu").length && (d = d.closest("li.dropdown").addClass("active")), d.trigger("activate.bs.scrollspy") | ||
646 | }; | ||
647 | var c = a.fn.scrollspy; | ||
648 | a.fn.scrollspy = function(c) { | ||
649 | return this.each(function() { | ||
650 | var d = a(this), | ||
651 | e = d.data("bs.scrollspy"), | ||
652 | f = "object" == typeof c && c; | ||
653 | e || d.data("bs.scrollspy", e = new b(this, f)), "string" == typeof c && e[c]() | ||
654 | }) | ||
655 | }, a.fn.scrollspy.Constructor = b, a.fn.scrollspy.noConflict = function() { | ||
656 | return a.fn.scrollspy = c, this | ||
657 | }, a(window).on("load", function() { | ||
658 | a('[data-spy="scroll"]').each(function() { | ||
659 | var b = a(this); | ||
660 | b.scrollspy(b.data()) | ||
661 | }) | ||
662 | }) | ||
663 | }(jQuery), + function(a) { | ||
664 | "use strict"; | ||
665 | var b = function(b) { | ||
666 | this.element = a(b) | ||
667 | }; | ||
668 | b.prototype.show = function() { | ||
669 | var b = this.element, | ||
670 | c = b.closest("ul:not(.dropdown-menu)"), | ||
671 | d = b.data("target"); | ||
672 | if (d || (d = b.attr("href"), d = d && d.replace(/.*(?=#[^\s]*$)/, "")), !b.parent("li").hasClass("active")) { | ||
673 | var e = c.find(".active:last a")[0], | ||
674 | f = a.Event("show.bs.tab", { | ||
675 | relatedTarget: e | ||
676 | }); | ||
677 | if (b.trigger(f), !f.isDefaultPrevented()) { | ||
678 | var g = a(d); | ||
679 | this.activate(b.parent("li"), c), this.activate(g, g.parent(), function() { | ||
680 | b.trigger({ | ||
681 | type: "shown.bs.tab", | ||
682 | relatedTarget: e | ||
683 | }) | ||
684 | }) | ||
685 | } | ||
686 | } | ||
687 | }, b.prototype.activate = function(b, c, d) { | ||
688 | function e() { | ||
689 | f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"), b.addClass("active"), g ? (b[0].offsetWidth, b.addClass("in")) : b.removeClass("fade"), b.parent(".dropdown-menu") && b.closest("li.dropdown").addClass("active"), d && d() | ||
690 | } | ||
691 | var f = c.find("> .active"), | ||
692 | g = d && a.support.transition && f.hasClass("fade"); | ||
693 | g ? f.one(a.support.transition.end, e).emulateTransitionEnd(150) : e(), f.removeClass("in") | ||
694 | }; | ||
695 | var c = a.fn.tab; | ||
696 | a.fn.tab = function(c) { | ||
697 | return this.each(function() { | ||
698 | var d = a(this), | ||
699 | e = d.data("bs.tab"); | ||
700 | e || d.data("bs.tab", e = new b(this)), "string" == typeof c && e[c]() | ||
701 | }) | ||
702 | }, a.fn.tab.Constructor = b, a.fn.tab.noConflict = function() { | ||
703 | return a.fn.tab = c, this | ||
704 | }, a(document).on("click.bs.tab.data-api", '[data-toggle="tab"], [data-toggle="pill"]', function(b) { | ||
705 | b.preventDefault(), a(this).tab("show") | ||
706 | }) | ||
707 | }(jQuery), + function(a) { | ||
708 | "use strict"; | ||
709 | var b = function(c, d) { | ||
710 | this.options = a.extend({}, b.DEFAULTS, d), this.$window = a(window).on("scroll.bs.affix.data-api", a.proxy(this.checkPosition, this)).on("click.bs.affix.data-api", a.proxy(this.checkPositionWithEventLoop, this)), this.$element = a(c), this.affixed = this.unpin = this.pinnedOffset = null, this.checkPosition() | ||
711 | }; | ||
712 | b.RESET = "affix affix-top affix-bottom", b.DEFAULTS = { | ||
713 | offset: 0 | ||
714 | }, b.prototype.getPinnedOffset = function() { | ||
715 | if (this.pinnedOffset) return this.pinnedOffset; | ||
716 | this.$element.removeClass(b.RESET).addClass("affix"); | ||
717 | var a = this.$window.scrollTop(), | ||
718 | c = this.$element.offset(); | ||
719 | return this.pinnedOffset = c.top - a | ||
720 | }, b.prototype.checkPositionWithEventLoop = function() { | ||
721 | setTimeout(a.proxy(this.checkPosition, this), 1) | ||
722 | }, b.prototype.checkPosition = function() { | ||
723 | if (this.$element.is(":visible")) { | ||
724 | var c = a(document).height(), | ||
725 | d = this.$window.scrollTop(), | ||
726 | e = this.$element.offset(), | ||
727 | f = this.options.offset, | ||
728 | g = f.top, | ||
729 | h = f.bottom; | ||
730 | "top" == this.affixed && (e.top += d), "object" != typeof f && (h = g = f), "function" == typeof g && (g = f.top(this.$element)), "function" == typeof h && (h = f.bottom(this.$element)); | ||
731 | var i = null != this.unpin && d + this.unpin <= e.top ? !1 : null != h && e.top + this.$element.height() >= c - h ? "bottom" : null != g && g >= d ? "top" : !1; | ||
732 | if (this.affixed !== i) { | ||
733 | this.unpin && this.$element.css("top", ""); | ||
734 | var j = "affix" + (i ? "-" + i : ""), | ||
735 | k = a.Event(j + ".bs.affix"); | ||
736 | this.$element.trigger(k), k.isDefaultPrevented() || (this.affixed = i, this.unpin = "bottom" == i ? this.getPinnedOffset() : null, this.$element.removeClass(b.RESET).addClass(j).trigger(a.Event(j.replace("affix", "affixed"))), "bottom" == i && this.$element.offset({ | ||
737 | top: c - h - this.$element.height() | ||
738 | })) | ||
739 | } | ||
740 | } | ||
741 | }; | ||
742 | var c = a.fn.affix; | ||
743 | a.fn.affix = function(c) { | ||
744 | return this.each(function() { | ||
745 | var d = a(this), | ||
746 | e = d.data("bs.affix"), | ||
747 | f = "object" == typeof c && c; | ||
748 | e || d.data("bs.affix", e = new b(this, f)), "string" == typeof c && e[c]() | ||
749 | }) | ||
750 | }, a.fn.affix.Constructor = b, a.fn.affix.noConflict = function() { | ||
751 | return a.fn.affix = c, this | ||
752 | }, a(window).on("load", function() { | ||
753 | a('[data-spy="affix"]').each(function() { | ||
754 | var b = a(this), | ||
755 | c = b.data(); | ||
756 | c.offset = c.offset || {}, c.offsetBottom && (c.offset.bottom = c.offsetBottom), c.offsetTop && (c.offset.top = c.offsetTop), b.affix(c) | ||
757 | }) | ||
758 | }) | ||
759 | }(jQuery); \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/mobile/js/jquery.min.js b/deprecated/jinwei.me/mobile/js/jquery.min.js new file mode 100644 index 0000000..60479ce --- /dev/null +++ b/deprecated/jinwei.me/mobile/js/jquery.min.js | |||
@@ -0,0 +1,3375 @@ | |||
1 | /*! jQuery v1.11.0 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ ! function(a, b) { | ||
2 | "object" == typeof module && "object" == typeof module.exports ? module.exports = a.document ? b(a, !0) : function(a) { | ||
3 | if (!a.document) throw new Error("jQuery requires a window with a document"); | ||
4 | return b(a) | ||
5 | } : b(a) | ||
6 | }("undefined" != typeof window ? window : this, function(a, b) { | ||
7 | var c = [], | ||
8 | d = c.slice, | ||
9 | e = c.concat, | ||
10 | f = c.push, | ||
11 | g = c.indexOf, | ||
12 | h = {}, | ||
13 | i = h.toString, | ||
14 | j = h.hasOwnProperty, | ||
15 | k = "".trim, | ||
16 | l = {}, | ||
17 | m = "1.11.0", | ||
18 | n = function(a, b) { | ||
19 | return new n.fn.init(a, b) | ||
20 | }, | ||
21 | o = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, | ||
22 | p = /^-ms-/, | ||
23 | q = /-([\da-z])/gi, | ||
24 | r = function(a, b) { | ||
25 | return b.toUpperCase() | ||
26 | }; | ||
27 | n.fn = n.prototype = { | ||
28 | jquery: m, | ||
29 | constructor: n, | ||
30 | selector: "", | ||
31 | length: 0, | ||
32 | toArray: function() { | ||
33 | return d.call(this) | ||
34 | }, | ||
35 | get: function(a) { | ||
36 | return null != a ? 0 > a ? this[a + this.length] : this[a] : d.call(this) | ||
37 | }, | ||
38 | pushStack: function(a) { | ||
39 | var b = n.merge(this.constructor(), a); | ||
40 | return b.prevObject = this, b.context = this.context, b | ||
41 | }, | ||
42 | each: function(a, b) { | ||
43 | return n.each(this, a, b) | ||
44 | }, | ||
45 | map: function(a) { | ||
46 | return this.pushStack(n.map(this, function(b, c) { | ||
47 | return a.call(b, c, b) | ||
48 | })) | ||
49 | }, | ||
50 | slice: function() { | ||
51 | return this.pushStack(d.apply(this, arguments)) | ||
52 | }, | ||
53 | first: function() { | ||
54 | return this.eq(0) | ||
55 | }, | ||
56 | last: function() { | ||
57 | return this.eq(-1) | ||
58 | }, | ||
59 | eq: function(a) { | ||
60 | var b = this.length, | ||
61 | c = +a + (0 > a ? b : 0); | ||
62 | return this.pushStack(c >= 0 && b > c ? [this[c]] : []) | ||
63 | }, | ||
64 | end: function() { | ||
65 | return this.prevObject || this.constructor(null) | ||
66 | }, | ||
67 | push: f, | ||
68 | sort: c.sort, | ||
69 | splice: c.splice | ||
70 | }, n.extend = n.fn.extend = function() { | ||
71 | var a, b, c, d, e, f, g = arguments[0] || {}, | ||
72 | h = 1, | ||
73 | i = arguments.length, | ||
74 | j = !1; | ||
75 | for ("boolean" == typeof g && (j = g, g = arguments[h] || {}, h++), "object" == typeof g || n.isFunction(g) || (g = {}), h === i && (g = this, h--); i > h; h++) | ||
76 | if (null != (e = arguments[h])) | ||
77 | for (d in e) a = g[d], c = e[d], g !== c && (j && c && (n.isPlainObject(c) || (b = n.isArray(c))) ? (b ? (b = !1, f = a && n.isArray(a) ? a : []) : f = a && n.isPlainObject(a) ? a : {}, g[d] = n.extend(j, f, c)) : void 0 !== c && (g[d] = c)); | ||
78 | return g | ||
79 | }, n.extend({ | ||
80 | expando: "jQuery" + (m + Math.random()).replace(/\D/g, ""), | ||
81 | isReady: !0, | ||
82 | error: function(a) { | ||
83 | throw new Error(a) | ||
84 | }, | ||
85 | noop: function() {}, | ||
86 | isFunction: function(a) { | ||
87 | return "function" === n.type(a) | ||
88 | }, | ||
89 | isArray: Array.isArray || function(a) { | ||
90 | return "array" === n.type(a) | ||
91 | }, | ||
92 | isWindow: function(a) { | ||
93 | return null != a && a == a.window | ||
94 | }, | ||
95 | isNumeric: function(a) { | ||
96 | return a - parseFloat(a) >= 0 | ||
97 | }, | ||
98 | isEmptyObject: function(a) { | ||
99 | var b; | ||
100 | for (b in a) return !1; | ||
101 | return !0 | ||
102 | }, | ||
103 | isPlainObject: function(a) { | ||
104 | var b; | ||
105 | if (!a || "object" !== n.type(a) || a.nodeType || n.isWindow(a)) return !1; | ||
106 | try { | ||
107 | if (a.constructor && !j.call(a, "constructor") && !j.call(a.constructor.prototype, "isPrototypeOf")) return !1 | ||
108 | } catch (c) { | ||
109 | return !1 | ||
110 | } | ||
111 | if (l.ownLast) | ||
112 | for (b in a) return j.call(a, b); | ||
113 | for (b in a); | ||
114 | return void 0 === b || j.call(a, b) | ||
115 | }, | ||
116 | type: function(a) { | ||
117 | return null == a ? a + "" : "object" == typeof a || "function" == typeof a ? h[i.call(a)] || "object" : typeof a | ||
118 | }, | ||
119 | globalEval: function(b) { | ||
120 | b && n.trim(b) && (a.execScript || function(b) { | ||
121 | a.eval.call(a, b) | ||
122 | })(b) | ||
123 | }, | ||
124 | camelCase: function(a) { | ||
125 | return a.replace(p, "ms-").replace(q, r) | ||
126 | }, | ||
127 | nodeName: function(a, b) { | ||
128 | return a.nodeName && a.nodeName.toLowerCase() === b.toLowerCase() | ||
129 | }, | ||
130 | each: function(a, b, c) { | ||
131 | var d, e = 0, | ||
132 | f = a.length, | ||
133 | g = s(a); | ||
134 | if (c) { | ||
135 | if (g) { | ||
136 | for (; f > e; e++) | ||
137 | if (d = b.apply(a[e], c), d === !1) break | ||
138 | } else | ||
139 | for (e in a) | ||
140 | if (d = b.apply(a[e], c), d === !1) break | ||
141 | } else if (g) { | ||
142 | for (; f > e; e++) | ||
143 | if (d = b.call(a[e], e, a[e]), d === !1) break | ||
144 | } else | ||
145 | for (e in a) | ||
146 | if (d = b.call(a[e], e, a[e]), d === !1) break; return a | ||
147 | }, | ||
148 | trim: k && !k.call("\ufeff\xa0") ? function(a) { | ||
149 | return null == a ? "" : k.call(a) | ||
150 | } : function(a) { | ||
151 | return null == a ? "" : (a + "").replace(o, "") | ||
152 | }, | ||
153 | makeArray: function(a, b) { | ||
154 | var c = b || []; | ||
155 | return null != a && (s(Object(a)) ? n.merge(c, "string" == typeof a ? [a] : a) : f.call(c, a)), c | ||
156 | }, | ||
157 | inArray: function(a, b, c) { | ||
158 | var d; | ||
159 | if (b) { | ||
160 | if (g) return g.call(b, a, c); | ||
161 | for (d = b.length, c = c ? 0 > c ? Math.max(0, d + c) : c : 0; d > c; c++) | ||
162 | if (c in b && b[c] === a) return c | ||
163 | } | ||
164 | return -1 | ||
165 | }, | ||
166 | merge: function(a, b) { | ||
167 | var c = +b.length, | ||
168 | d = 0, | ||
169 | e = a.length; | ||
170 | while (c > d) a[e++] = b[d++]; | ||
171 | if (c !== c) | ||
172 | while (void 0 !== b[d]) a[e++] = b[d++]; | ||
173 | return a.length = e, a | ||
174 | }, | ||
175 | grep: function(a, b, c) { | ||
176 | for (var d, e = [], f = 0, g = a.length, h = !c; g > f; f++) d = !b(a[f], f), d !== h && e.push(a[f]); | ||
177 | return e | ||
178 | }, | ||
179 | map: function(a, b, c) { | ||
180 | var d, f = 0, | ||
181 | g = a.length, | ||
182 | h = s(a), | ||
183 | i = []; | ||
184 | if (h) | ||
185 | for (; g > f; f++) d = b(a[f], f, c), null != d && i.push(d); | ||
186 | else | ||
187 | for (f in a) d = b(a[f], f, c), null != d && i.push(d); | ||
188 | return e.apply([], i) | ||
189 | }, | ||
190 | guid: 1, | ||
191 | proxy: function(a, b) { | ||
192 | var c, e, f; | ||
193 | return "string" == typeof b && (f = a[b], b = a, a = f), n.isFunction(a) ? (c = d.call(arguments, 2), e = function() { | ||
194 | return a.apply(b || this, c.concat(d.call(arguments))) | ||
195 | }, e.guid = a.guid = a.guid || n.guid++, e) : void 0 | ||
196 | }, | ||
197 | now: function() { | ||
198 | return +new Date | ||
199 | }, | ||
200 | support: l | ||
201 | }), n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(a, b) { | ||
202 | h["[object " + b + "]"] = b.toLowerCase() | ||
203 | }); | ||
204 | |||
205 | function s(a) { | ||
206 | var b = a.length, | ||
207 | c = n.type(a); | ||
208 | return "function" === c || n.isWindow(a) ? !1 : 1 === a.nodeType && b ? !0 : "array" === c || 0 === b || "number" == typeof b && b > 0 && b - 1 in a | ||
209 | } | ||
210 | var t = function(a) { | ||
211 | var b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s = "sizzle" + -new Date, | ||
212 | t = a.document, | ||
213 | u = 0, | ||
214 | v = 0, | ||
215 | w = eb(), | ||
216 | x = eb(), | ||
217 | y = eb(), | ||
218 | z = function(a, b) { | ||
219 | return a === b && (j = !0), 0 | ||
220 | }, | ||
221 | A = "undefined", | ||
222 | B = 1 << 31, | ||
223 | C = {}.hasOwnProperty, | ||
224 | D = [], | ||
225 | E = D.pop, | ||
226 | F = D.push, | ||
227 | G = D.push, | ||
228 | H = D.slice, | ||
229 | I = D.indexOf || function(a) { | ||
230 | for (var b = 0, c = this.length; c > b; b++) | ||
231 | if (this[b] === a) return b; | ||
232 | return -1 | ||
233 | }, | ||
234 | J = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", | ||
235 | K = "[\\x20\\t\\r\\n\\f]", | ||
236 | L = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", | ||
237 | M = L.replace("w", "w#"), | ||
238 | N = "\\[" + K + "*(" + L + ")" + K + "*(?:([*^$|!~]?=)" + K + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + M + ")|)|)" + K + "*\\]", | ||
239 | O = ":(" + L + ")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + N.replace(3, 8) + ")*)|.*)\\)|)", | ||
240 | P = new RegExp("^" + K + "+|((?:^|[^\\\\])(?:\\\\.)*)" + K + "+$", "g"), | ||
241 | Q = new RegExp("^" + K + "*," + K + "*"), | ||
242 | R = new RegExp("^" + K + "*([>+~]|" + K + ")" + K + "*"), | ||
243 | S = new RegExp("=" + K + "*([^\\]'\"]*?)" + K + "*\\]", "g"), | ||
244 | T = new RegExp(O), | ||
245 | U = new RegExp("^" + M + "$"), | ||
246 | V = { | ||
247 | ID: new RegExp("^#(" + L + ")"), | ||
248 | CLASS: new RegExp("^\\.(" + L + ")"), | ||
249 | TAG: new RegExp("^(" + L.replace("w", "w*") + ")"), | ||
250 | ATTR: new RegExp("^" + N), | ||
251 | PSEUDO: new RegExp("^" + O), | ||
252 | CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + K + "*(even|odd|(([+-]|)(\\d*)n|)" + K + "*(?:([+-]|)" + K + "*(\\d+)|))" + K + "*\\)|)", "i"), | ||
253 | bool: new RegExp("^(?:" + J + ")$", "i"), | ||
254 | needsContext: new RegExp("^" + K + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + K + "*((?:-\\d)?\\d*)" + K + "*\\)|)(?=[^-]|$)", "i") | ||
255 | }, | ||
256 | W = /^(?:input|select|textarea|button)$/i, | ||
257 | X = /^h\d$/i, | ||
258 | Y = /^[^{]+\{\s*\[native \w/, | ||
259 | Z = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, | ||
260 | $ = /[+~]/, | ||
261 | _ = /'|\\/g, | ||
262 | ab = new RegExp("\\\\([\\da-f]{1,6}" + K + "?|(" + K + ")|.)", "ig"), | ||
263 | bb = function(a, b, c) { | ||
264 | var d = "0x" + b - 65536; | ||
265 | return d !== d || c ? b : 0 > d ? String.fromCharCode(d + 65536) : String.fromCharCode(d >> 10 | 55296, 1023 & d | 56320) | ||
266 | }; | ||
267 | try { | ||
268 | G.apply(D = H.call(t.childNodes), t.childNodes), D[t.childNodes.length].nodeType | ||
269 | } catch (cb) { | ||
270 | G = { | ||
271 | apply: D.length ? function(a, b) { | ||
272 | F.apply(a, H.call(b)) | ||
273 | } : function(a, b) { | ||
274 | var c = a.length, | ||
275 | d = 0; | ||
276 | while (a[c++] = b[d++]); | ||
277 | a.length = c - 1 | ||
278 | } | ||
279 | } | ||
280 | } | ||
281 | |||
282 | function db(a, b, d, e) { | ||
283 | var f, g, h, i, j, m, p, q, u, v; | ||
284 | if ((b ? b.ownerDocument || b : t) !== l && k(b), b = b || l, d = d || [], !a || "string" != typeof a) return d; | ||
285 | if (1 !== (i = b.nodeType) && 9 !== i) return []; | ||
286 | if (n && !e) { | ||
287 | if (f = Z.exec(a)) | ||
288 | if (h = f[1]) { | ||
289 | if (9 === i) { | ||
290 | if (g = b.getElementById(h), !g || !g.parentNode) return d; | ||
291 | if (g.id === h) return d.push(g), d | ||
292 | } else if (b.ownerDocument && (g = b.ownerDocument.getElementById(h)) && r(b, g) && g.id === h) return d.push(g), d | ||
293 | } else { | ||
294 | if (f[2]) return G.apply(d, b.getElementsByTagName(a)), d; | ||
295 | if ((h = f[3]) && c.getElementsByClassName && b.getElementsByClassName) return G.apply(d, b.getElementsByClassName(h)), d | ||
296 | } | ||
297 | if (c.qsa && (!o || !o.test(a))) { | ||
298 | if (q = p = s, u = b, v = 9 === i && a, 1 === i && "object" !== b.nodeName.toLowerCase()) { | ||
299 | m = ob(a), (p = b.getAttribute("id")) ? q = p.replace(_, "\\$&") : b.setAttribute("id", q), q = "[id='" + q + "'] ", j = m.length; | ||
300 | while (j--) m[j] = q + pb(m[j]); | ||
301 | u = $.test(a) && mb(b.parentNode) || b, v = m.join(",") | ||
302 | } | ||
303 | if (v) try { | ||
304 | return G.apply(d, u.querySelectorAll(v)), d | ||
305 | } catch (w) {} finally { | ||
306 | p || b.removeAttribute("id") | ||
307 | } | ||
308 | } | ||
309 | } | ||
310 | return xb(a.replace(P, "$1"), b, d, e) | ||
311 | } | ||
312 | |||
313 | function eb() { | ||
314 | var a = []; | ||
315 | |||
316 | function b(c, e) { | ||
317 | return a.push(c + " ") > d.cacheLength && delete b[a.shift()], b[c + " "] = e | ||
318 | } | ||
319 | return b | ||
320 | } | ||
321 | |||
322 | function fb(a) { | ||
323 | return a[s] = !0, a | ||
324 | } | ||
325 | |||
326 | function gb(a) { | ||
327 | var b = l.createElement("div"); | ||
328 | try { | ||
329 | return !!a(b) | ||
330 | } catch (c) { | ||
331 | return !1 | ||
332 | } finally { | ||
333 | b.parentNode && b.parentNode.removeChild(b), b = null | ||
334 | } | ||
335 | } | ||
336 | |||
337 | function hb(a, b) { | ||
338 | var c = a.split("|"), | ||
339 | e = a.length; | ||
340 | while (e--) d.attrHandle[c[e]] = b | ||
341 | } | ||
342 | |||
343 | function ib(a, b) { | ||
344 | var c = b && a, | ||
345 | d = c && 1 === a.nodeType && 1 === b.nodeType && (~b.sourceIndex || B) - (~a.sourceIndex || B); | ||
346 | if (d) return d; | ||
347 | if (c) | ||
348 | while (c = c.nextSibling) | ||
349 | if (c === b) return -1; | ||
350 | return a ? 1 : -1 | ||
351 | } | ||
352 | |||
353 | function jb(a) { | ||
354 | return function(b) { | ||
355 | var c = b.nodeName.toLowerCase(); | ||
356 | return "input" === c && b.type === a | ||
357 | } | ||
358 | } | ||
359 | |||
360 | function kb(a) { | ||
361 | return function(b) { | ||
362 | var c = b.nodeName.toLowerCase(); | ||
363 | return ("input" === c || "button" === c) && b.type === a | ||
364 | } | ||
365 | } | ||
366 | |||
367 | function lb(a) { | ||
368 | return fb(function(b) { | ||
369 | return b = +b, fb(function(c, d) { | ||
370 | var e, f = a([], c.length, b), | ||
371 | g = f.length; | ||
372 | while (g--) c[e = f[g]] && (c[e] = !(d[e] = c[e])) | ||
373 | }) | ||
374 | }) | ||
375 | } | ||
376 | |||
377 | function mb(a) { | ||
378 | return a && typeof a.getElementsByTagName !== A && a | ||
379 | } | ||
380 | c = db.support = {}, f = db.isXML = function(a) { | ||
381 | var b = a && (a.ownerDocument || a).documentElement; | ||
382 | return b ? "HTML" !== b.nodeName : !1 | ||
383 | }, k = db.setDocument = function(a) { | ||
384 | var b, e = a ? a.ownerDocument || a : t, | ||
385 | g = e.defaultView; | ||
386 | return e !== l && 9 === e.nodeType && e.documentElement ? (l = e, m = e.documentElement, n = !f(e), g && g !== g.top && (g.addEventListener ? g.addEventListener("unload", function() { | ||
387 | k() | ||
388 | }, !1) : g.attachEvent && g.attachEvent("onunload", function() { | ||
389 | k() | ||
390 | })), c.attributes = gb(function(a) { | ||
391 | return a.className = "i", !a.getAttribute("className") | ||
392 | }), c.getElementsByTagName = gb(function(a) { | ||
393 | return a.appendChild(e.createComment("")), !a.getElementsByTagName("*").length | ||
394 | }), c.getElementsByClassName = Y.test(e.getElementsByClassName) && gb(function(a) { | ||
395 | return a.innerHTML = "<div class='a'></div><div class='a i'></div>", a.firstChild.className = "i", 2 === a.getElementsByClassName("i").length | ||
396 | }), c.getById = gb(function(a) { | ||
397 | return m.appendChild(a).id = s, !e.getElementsByName || !e.getElementsByName(s).length | ||
398 | }), c.getById ? (d.find.ID = function(a, b) { | ||
399 | if (typeof b.getElementById !== A && n) { | ||
400 | var c = b.getElementById(a); | ||
401 | return c && c.parentNode ? [c] : [] | ||
402 | } | ||
403 | }, d.filter.ID = function(a) { | ||
404 | var b = a.replace(ab, bb); | ||
405 | return function(a) { | ||
406 | return a.getAttribute("id") === b | ||
407 | } | ||
408 | }) : (delete d.find.ID, d.filter.ID = function(a) { | ||
409 | var b = a.replace(ab, bb); | ||
410 | return function(a) { | ||
411 | var c = typeof a.getAttributeNode !== A && a.getAttributeNode("id"); | ||
412 | return c && c.value === b | ||
413 | } | ||
414 | }), d.find.TAG = c.getElementsByTagName ? function(a, b) { | ||
415 | return typeof b.getElementsByTagName !== A ? b.getElementsByTagName(a) : void 0 | ||
416 | } : function(a, b) { | ||
417 | var c, d = [], | ||
418 | e = 0, | ||
419 | f = b.getElementsByTagName(a); | ||
420 | if ("*" === a) { | ||
421 | while (c = f[e++]) 1 === c.nodeType && d.push(c); | ||
422 | return d | ||
423 | } | ||
424 | return f | ||
425 | }, d.find.CLASS = c.getElementsByClassName && function(a, b) { | ||
426 | return typeof b.getElementsByClassName !== A && n ? b.getElementsByClassName(a) : void 0 | ||
427 | }, p = [], o = [], (c.qsa = Y.test(e.querySelectorAll)) && (gb(function(a) { | ||
428 | a.innerHTML = "<select t=''><option selected=''></option></select>", a.querySelectorAll("[t^='']").length && o.push("[*^$]=" + K + "*(?:''|\"\")"), a.querySelectorAll("[selected]").length || o.push("\\[" + K + "*(?:value|" + J + ")"), a.querySelectorAll(":checked").length || o.push(":checked") | ||
429 | }), gb(function(a) { | ||
430 | var b = e.createElement("input"); | ||
431 | b.setAttribute("type", "hidden"), a.appendChild(b).setAttribute("name", "D"), a.querySelectorAll("[name=d]").length && o.push("name" + K + "*[*^$|!~]?="), a.querySelectorAll(":enabled").length || o.push(":enabled", ":disabled"), a.querySelectorAll("*,:x"), o.push(",.*:") | ||
432 | })), (c.matchesSelector = Y.test(q = m.webkitMatchesSelector || m.mozMatchesSelector || m.oMatchesSelector || m.msMatchesSelector)) && gb(function(a) { | ||
433 | c.disconnectedMatch = q.call(a, "div"), q.call(a, "[s!='']:x"), p.push("!=", O) | ||
434 | }), o = o.length && new RegExp(o.join("|")), p = p.length && new RegExp(p.join("|")), b = Y.test(m.compareDocumentPosition), r = b || Y.test(m.contains) ? function(a, b) { | ||
435 | var c = 9 === a.nodeType ? a.documentElement : a, | ||
436 | d = b && b.parentNode; | ||
437 | return a === d || !(!d || 1 !== d.nodeType || !(c.contains ? c.contains(d) : a.compareDocumentPosition && 16 & a.compareDocumentPosition(d))) | ||
438 | } : function(a, b) { | ||
439 | if (b) | ||
440 | while (b = b.parentNode) | ||
441 | if (b === a) return !0; | ||
442 | return !1 | ||
443 | }, z = b ? function(a, b) { | ||
444 | if (a === b) return j = !0, 0; | ||
445 | var d = !a.compareDocumentPosition - !b.compareDocumentPosition; | ||
446 | return d ? d : (d = (a.ownerDocument || a) === (b.ownerDocument || b) ? a.compareDocumentPosition(b) : 1, 1 & d || !c.sortDetached && b.compareDocumentPosition(a) === d ? a === e || a.ownerDocument === t && r(t, a) ? -1 : b === e || b.ownerDocument === t && r(t, b) ? 1 : i ? I.call(i, a) - I.call(i, b) : 0 : 4 & d ? -1 : 1) | ||
447 | } : function(a, b) { | ||
448 | if (a === b) return j = !0, 0; | ||
449 | var c, d = 0, | ||
450 | f = a.parentNode, | ||
451 | g = b.parentNode, | ||
452 | h = [a], | ||
453 | k = [b]; | ||
454 | if (!f || !g) return a === e ? -1 : b === e ? 1 : f ? -1 : g ? 1 : i ? I.call(i, a) - I.call(i, b) : 0; | ||
455 | if (f === g) return ib(a, b); | ||
456 | c = a; | ||
457 | while (c = c.parentNode) h.unshift(c); | ||
458 | c = b; | ||
459 | while (c = c.parentNode) k.unshift(c); | ||
460 | while (h[d] === k[d]) d++; | ||
461 | return d ? ib(h[d], k[d]) : h[d] === t ? -1 : k[d] === t ? 1 : 0 | ||
462 | }, e) : l | ||
463 | }, db.matches = function(a, b) { | ||
464 | return db(a, null, null, b) | ||
465 | }, db.matchesSelector = function(a, b) { | ||
466 | if ((a.ownerDocument || a) !== l && k(a), b = b.replace(S, "='$1']"), !(!c.matchesSelector || !n || p && p.test(b) || o && o.test(b))) try { | ||
467 | var d = q.call(a, b); | ||
468 | if (d || c.disconnectedMatch || a.document && 11 !== a.document.nodeType) return d | ||
469 | } catch (e) {} | ||
470 | return db(b, l, null, [a]).length > 0 | ||
471 | }, db.contains = function(a, b) { | ||
472 | return (a.ownerDocument || a) !== l && k(a), r(a, b) | ||
473 | }, db.attr = function(a, b) { | ||
474 | (a.ownerDocument || a) !== l && k(a); | ||
475 | var e = d.attrHandle[b.toLowerCase()], | ||
476 | f = e && C.call(d.attrHandle, b.toLowerCase()) ? e(a, b, !n) : void 0; | ||
477 | return void 0 !== f ? f : c.attributes || !n ? a.getAttribute(b) : (f = a.getAttributeNode(b)) && f.specified ? f.value : null | ||
478 | }, db.error = function(a) { | ||
479 | throw new Error("Syntax error, unrecognized expression: " + a) | ||
480 | }, db.uniqueSort = function(a) { | ||
481 | var b, d = [], | ||
482 | e = 0, | ||
483 | f = 0; | ||
484 | if (j = !c.detectDuplicates, i = !c.sortStable && a.slice(0), a.sort(z), j) { | ||
485 | while (b = a[f++]) b === a[f] && (e = d.push(f)); | ||
486 | while (e--) a.splice(d[e], 1) | ||
487 | } | ||
488 | return i = null, a | ||
489 | }, e = db.getText = function(a) { | ||
490 | var b, c = "", | ||
491 | d = 0, | ||
492 | f = a.nodeType; | ||
493 | if (f) { | ||
494 | if (1 === f || 9 === f || 11 === f) { | ||
495 | if ("string" == typeof a.textContent) return a.textContent; | ||
496 | for (a = a.firstChild; a; a = a.nextSibling) c += e(a) | ||
497 | } else if (3 === f || 4 === f) return a.nodeValue | ||
498 | } else | ||
499 | while (b = a[d++]) c += e(b); | ||
500 | return c | ||
501 | }, d = db.selectors = { | ||
502 | cacheLength: 50, | ||
503 | createPseudo: fb, | ||
504 | match: V, | ||
505 | attrHandle: {}, | ||
506 | find: {}, | ||
507 | relative: { | ||
508 | ">": { | ||
509 | dir: "parentNode", | ||
510 | first: !0 | ||
511 | }, | ||
512 | " ": { | ||
513 | dir: "parentNode" | ||
514 | }, | ||
515 | "+": { | ||
516 | dir: "previousSibling", | ||
517 | first: !0 | ||
518 | }, | ||
519 | "~": { | ||
520 | dir: "previousSibling" | ||
521 | } | ||
522 | }, | ||
523 | preFilter: { | ||
524 | ATTR: function(a) { | ||
525 | return a[1] = a[1].replace(ab, bb), a[3] = (a[4] || a[5] || "").replace(ab, bb), "~=" === a[2] && (a[3] = " " + a[3] + " "), a.slice(0, 4) | ||
526 | }, | ||
527 | CHILD: function(a) { | ||
528 | return a[1] = a[1].toLowerCase(), "nth" === a[1].slice(0, 3) ? (a[3] || db.error(a[0]), a[4] = +(a[4] ? a[5] + (a[6] || 1) : 2 * ("even" === a[3] || "odd" === a[3])), a[5] = +(a[7] + a[8] || "odd" === a[3])) : a[3] && db.error(a[0]), a | ||
529 | }, | ||
530 | PSEUDO: function(a) { | ||
531 | var b, c = !a[5] && a[2]; | ||
532 | return V.CHILD.test(a[0]) ? null : (a[3] && void 0 !== a[4] ? a[2] = a[4] : c && T.test(c) && (b = ob(c, !0)) && (b = c.indexOf(")", c.length - b) - c.length) && (a[0] = a[0].slice(0, b), a[2] = c.slice(0, b)), a.slice(0, 3)) | ||
533 | } | ||
534 | }, | ||
535 | filter: { | ||
536 | TAG: function(a) { | ||
537 | var b = a.replace(ab, bb).toLowerCase(); | ||
538 | return "*" === a ? function() { | ||
539 | return !0 | ||
540 | } : function(a) { | ||
541 | return a.nodeName && a.nodeName.toLowerCase() === b | ||
542 | } | ||
543 | }, | ||
544 | CLASS: function(a) { | ||
545 | var b = w[a + " "]; | ||
546 | return b || (b = new RegExp("(^|" + K + ")" + a + "(" + K + "|$)")) && w(a, function(a) { | ||
547 | return b.test("string" == typeof a.className && a.className || typeof a.getAttribute !== A && a.getAttribute("class") || "") | ||
548 | }) | ||
549 | }, | ||
550 | ATTR: function(a, b, c) { | ||
551 | return function(d) { | ||
552 | var e = db.attr(d, a); | ||
553 | return null == e ? "!=" === b : b ? (e += "", "=" === b ? e === c : "!=" === b ? e !== c : "^=" === b ? c && 0 === e.indexOf(c) : "*=" === b ? c && e.indexOf(c) > -1 : "$=" === b ? c && e.slice(-c.length) === c : "~=" === b ? (" " + e + " ").indexOf(c) > -1 : "|=" === b ? e === c || e.slice(0, c.length + 1) === c + "-" : !1) : !0 | ||
554 | } | ||
555 | }, | ||
556 | CHILD: function(a, b, c, d, e) { | ||
557 | var f = "nth" !== a.slice(0, 3), | ||
558 | g = "last" !== a.slice(-4), | ||
559 | h = "of-type" === b; | ||
560 | return 1 === d && 0 === e ? function(a) { | ||
561 | return !!a.parentNode | ||
562 | } : function(b, c, i) { | ||
563 | var j, k, l, m, n, o, p = f !== g ? "nextSibling" : "previousSibling", | ||
564 | q = b.parentNode, | ||
565 | r = h && b.nodeName.toLowerCase(), | ||
566 | t = !i && !h; | ||
567 | if (q) { | ||
568 | if (f) { | ||
569 | while (p) { | ||
570 | l = b; | ||
571 | while (l = l[p]) | ||
572 | if (h ? l.nodeName.toLowerCase() === r : 1 === l.nodeType) return !1; | ||
573 | o = p = "only" === a && !o && "nextSibling" | ||
574 | } | ||
575 | return !0 | ||
576 | } | ||
577 | if (o = [g ? q.firstChild : q.lastChild], g && t) { | ||
578 | k = q[s] || (q[s] = {}), j = k[a] || [], n = j[0] === u && j[1], m = j[0] === u && j[2], l = n && q.childNodes[n]; | ||
579 | while (l = ++n && l && l[p] || (m = n = 0) || o.pop()) | ||
580 | if (1 === l.nodeType && ++m && l === b) { | ||
581 | k[a] = [u, n, m]; | ||
582 | break | ||
583 | } | ||
584 | } else if (t && (j = (b[s] || (b[s] = {}))[a]) && j[0] === u) m = j[1]; | ||
585 | else | ||
586 | while (l = ++n && l && l[p] || (m = n = 0) || o.pop()) | ||
587 | if ((h ? l.nodeName.toLowerCase() === r : 1 === l.nodeType) && ++m && (t && ((l[s] || (l[s] = {}))[a] = [u, m]), l === b)) break; return m -= e, m === d || m % d === 0 && m / d >= 0 | ||
588 | } | ||
589 | } | ||
590 | }, | ||
591 | PSEUDO: function(a, b) { | ||
592 | var c, e = d.pseudos[a] || d.setFilters[a.toLowerCase()] || db.error("unsupported pseudo: " + a); | ||
593 | return e[s] ? e(b) : e.length > 1 ? (c = [a, a, "", b], d.setFilters.hasOwnProperty(a.toLowerCase()) ? fb(function(a, c) { | ||
594 | var d, f = e(a, b), | ||
595 | g = f.length; | ||
596 | while (g--) d = I.call(a, f[g]), a[d] = !(c[d] = f[g]) | ||
597 | }) : function(a) { | ||
598 | return e(a, 0, c) | ||
599 | }) : e | ||
600 | } | ||
601 | }, | ||
602 | pseudos: { | ||
603 | not: fb(function(a) { | ||
604 | var b = [], | ||
605 | c = [], | ||
606 | d = g(a.replace(P, "$1")); | ||
607 | return d[s] ? fb(function(a, b, c, e) { | ||
608 | var f, g = d(a, null, e, []), | ||
609 | h = a.length; | ||
610 | while (h--)(f = g[h]) && (a[h] = !(b[h] = f)) | ||
611 | }) : function(a, e, f) { | ||
612 | return b[0] = a, d(b, null, f, c), !c.pop() | ||
613 | } | ||
614 | }), | ||
615 | has: fb(function(a) { | ||
616 | return function(b) { | ||
617 | return db(a, b).length > 0 | ||
618 | } | ||
619 | }), | ||
620 | contains: fb(function(a) { | ||
621 | return function(b) { | ||
622 | return (b.textContent || b.innerText || e(b)).indexOf(a) > -1 | ||
623 | } | ||
624 | }), | ||
625 | lang: fb(function(a) { | ||
626 | return U.test(a || "") || db.error("unsupported lang: " + a), a = a.replace(ab, bb).toLowerCase(), | ||
627 | function(b) { | ||
628 | var c; | ||
629 | do | ||
630 | if (c = n ? b.lang : b.getAttribute("xml:lang") || b.getAttribute("lang")) return c = c.toLowerCase(), c === a || 0 === c.indexOf(a + "-"); | ||
631 | while ((b = b.parentNode) && 1 === b.nodeType); | ||
632 | return !1 | ||
633 | } | ||
634 | }), | ||
635 | target: function(b) { | ||
636 | var c = a.location && a.location.hash; | ||
637 | return c && c.slice(1) === b.id | ||
638 | }, | ||
639 | root: function(a) { | ||
640 | return a === m | ||
641 | }, | ||
642 | focus: function(a) { | ||
643 | return a === l.activeElement && (!l.hasFocus || l.hasFocus()) && !!(a.type || a.href || ~a.tabIndex) | ||
644 | }, | ||
645 | enabled: function(a) { | ||
646 | return a.disabled === !1 | ||
647 | }, | ||
648 | disabled: function(a) { | ||
649 | return a.disabled === !0 | ||
650 | }, | ||
651 | checked: function(a) { | ||
652 | var b = a.nodeName.toLowerCase(); | ||
653 | return "input" === b && !!a.checked || "option" === b && !!a.selected | ||
654 | }, | ||
655 | selected: function(a) { | ||
656 | return a.parentNode && a.parentNode.selectedIndex, a.selected === !0 | ||
657 | }, | ||
658 | empty: function(a) { | ||
659 | for (a = a.firstChild; a; a = a.nextSibling) | ||
660 | if (a.nodeType < 6) return !1; | ||
661 | return !0 | ||
662 | }, | ||
663 | parent: function(a) { | ||
664 | return !d.pseudos.empty(a) | ||
665 | }, | ||
666 | header: function(a) { | ||
667 | return X.test(a.nodeName) | ||
668 | }, | ||
669 | input: function(a) { | ||
670 | return W.test(a.nodeName) | ||
671 | }, | ||
672 | button: function(a) { | ||
673 | var b = a.nodeName.toLowerCase(); | ||
674 | return "input" === b && "button" === a.type || "button" === b | ||
675 | }, | ||
676 | text: function(a) { | ||
677 | var b; | ||
678 | return "input" === a.nodeName.toLowerCase() && "text" === a.type && (null == (b = a.getAttribute("type")) || "text" === b.toLowerCase()) | ||
679 | }, | ||
680 | first: lb(function() { | ||
681 | return [0] | ||
682 | }), | ||
683 | last: lb(function(a, b) { | ||
684 | return [b - 1] | ||
685 | }), | ||
686 | eq: lb(function(a, b, c) { | ||
687 | return [0 > c ? c + b : c] | ||
688 | }), | ||
689 | even: lb(function(a, b) { | ||
690 | for (var c = 0; b > c; c += 2) a.push(c); | ||
691 | return a | ||
692 | }), | ||
693 | odd: lb(function(a, b) { | ||
694 | for (var c = 1; b > c; c += 2) a.push(c); | ||
695 | return a | ||
696 | }), | ||
697 | lt: lb(function(a, b, c) { | ||
698 | for (var d = 0 > c ? c + b : c; --d >= 0;) a.push(d); | ||
699 | return a | ||
700 | }), | ||
701 | gt: lb(function(a, b, c) { | ||
702 | for (var d = 0 > c ? c + b : c; ++d < b;) a.push(d); | ||
703 | return a | ||
704 | }) | ||
705 | } | ||
706 | }, d.pseudos.nth = d.pseudos.eq; | ||
707 | for (b in { | ||
708 | radio: !0, | ||
709 | checkbox: !0, | ||
710 | file: !0, | ||
711 | password: !0, | ||
712 | image: !0 | ||
713 | }) d.pseudos[b] = jb(b); | ||
714 | for (b in { | ||
715 | submit: !0, | ||
716 | reset: !0 | ||
717 | }) d.pseudos[b] = kb(b); | ||
718 | |||
719 | function nb() {} | ||
720 | nb.prototype = d.filters = d.pseudos, d.setFilters = new nb; | ||
721 | |||
722 | function ob(a, b) { | ||
723 | var c, e, f, g, h, i, j, k = x[a + " "]; | ||
724 | if (k) return b ? 0 : k.slice(0); | ||
725 | h = a, i = [], j = d.preFilter; | ||
726 | while (h) { | ||
727 | (!c || (e = Q.exec(h))) && (e && (h = h.slice(e[0].length) || h), i.push(f = [])), c = !1, (e = R.exec(h)) && (c = e.shift(), f.push({ | ||
728 | value: c, | ||
729 | type: e[0].replace(P, " ") | ||
730 | }), h = h.slice(c.length)); | ||
731 | for (g in d.filter)!(e = V[g].exec(h)) || j[g] && !(e = j[g](e)) || (c = e.shift(), f.push({ | ||
732 | value: c, | ||
733 | type: g, | ||
734 | matches: e | ||
735 | }), h = h.slice(c.length)); | ||
736 | if (!c) break | ||
737 | } | ||
738 | return b ? h.length : h ? db.error(a) : x(a, i).slice(0) | ||
739 | } | ||
740 | |||
741 | function pb(a) { | ||
742 | for (var b = 0, c = a.length, d = ""; c > b; b++) d += a[b].value; | ||
743 | return d | ||
744 | } | ||
745 | |||
746 | function qb(a, b, c) { | ||
747 | var d = b.dir, | ||
748 | e = c && "parentNode" === d, | ||
749 | f = v++; | ||
750 | return b.first ? function(b, c, f) { | ||
751 | while (b = b[d]) | ||
752 | if (1 === b.nodeType || e) return a(b, c, f) | ||
753 | } : function(b, c, g) { | ||
754 | var h, i, j = [u, f]; | ||
755 | if (g) { | ||
756 | while (b = b[d]) | ||
757 | if ((1 === b.nodeType || e) && a(b, c, g)) return !0 | ||
758 | } else | ||
759 | while (b = b[d]) | ||
760 | if (1 === b.nodeType || e) { | ||
761 | if (i = b[s] || (b[s] = {}), (h = i[d]) && h[0] === u && h[1] === f) return j[2] = h[2]; | ||
762 | if (i[d] = j, j[2] = a(b, c, g)) return !0 | ||
763 | } | ||
764 | } | ||
765 | } | ||
766 | |||
767 | function rb(a) { | ||
768 | return a.length > 1 ? function(b, c, d) { | ||
769 | var e = a.length; | ||
770 | while (e--) | ||
771 | if (!a[e](b, c, d)) return !1; | ||
772 | return !0 | ||
773 | } : a[0] | ||
774 | } | ||
775 | |||
776 | function sb(a, b, c, d, e) { | ||
777 | for (var f, g = [], h = 0, i = a.length, j = null != b; i > h; h++)(f = a[h]) && (!c || c(f, d, e)) && (g.push(f), j && b.push(h)); | ||
778 | return g | ||
779 | } | ||
780 | |||
781 | function tb(a, b, c, d, e, f) { | ||
782 | return d && !d[s] && (d = tb(d)), e && !e[s] && (e = tb(e, f)), fb(function(f, g, h, i) { | ||
783 | var j, k, l, m = [], | ||
784 | n = [], | ||
785 | o = g.length, | ||
786 | p = f || wb(b || "*", h.nodeType ? [h] : h, []), | ||
787 | q = !a || !f && b ? p : sb(p, m, a, h, i), | ||
788 | r = c ? e || (f ? a : o || d) ? [] : g : q; | ||
789 | if (c && c(q, r, h, i), d) { | ||
790 | j = sb(r, n), d(j, [], h, i), k = j.length; | ||
791 | while (k--)(l = j[k]) && (r[n[k]] = !(q[n[k]] = l)) | ||
792 | } | ||
793 | if (f) { | ||
794 | if (e || a) { | ||
795 | if (e) { | ||
796 | j = [], k = r.length; | ||
797 | while (k--)(l = r[k]) && j.push(q[k] = l); | ||
798 | e(null, r = [], j, i) | ||
799 | } | ||
800 | k = r.length; | ||
801 | while (k--)(l = r[k]) && (j = e ? I.call(f, l) : m[k]) > -1 && (f[j] = !(g[j] = l)) | ||
802 | } | ||
803 | } else r = sb(r === g ? r.splice(o, r.length) : r), e ? e(null, g, r, i) : G.apply(g, r) | ||
804 | }) | ||
805 | } | ||
806 | |||
807 | function ub(a) { | ||
808 | for (var b, c, e, f = a.length, g = d.relative[a[0].type], i = g || d.relative[" "], j = g ? 1 : 0, k = qb(function(a) { | ||
809 | return a === b | ||
810 | }, i, !0), l = qb(function(a) { | ||
811 | return I.call(b, a) > -1 | ||
812 | }, i, !0), m = [ | ||
813 | function(a, c, d) { | ||
814 | return !g && (d || c !== h) || ((b = c).nodeType ? k(a, c, d) : l(a, c, d)) | ||
815 | } | ||
816 | ]; f > j; j++) | ||
817 | if (c = d.relative[a[j].type]) m = [qb(rb(m), c)]; | ||
818 | else { | ||
819 | if (c = d.filter[a[j].type].apply(null, a[j].matches), c[s]) { | ||
820 | for (e = ++j; f > e; e++) | ||
821 | if (d.relative[a[e].type]) break; | ||
822 | return tb(j > 1 && rb(m), j > 1 && pb(a.slice(0, j - 1).concat({ | ||
823 | value: " " === a[j - 2].type ? "*" : "" | ||
824 | })).replace(P, "$1"), c, e > j && ub(a.slice(j, e)), f > e && ub(a = a.slice(e)), f > e && pb(a)) | ||
825 | } | ||
826 | m.push(c) | ||
827 | } | ||
828 | return rb(m) | ||
829 | } | ||
830 | |||
831 | function vb(a, b) { | ||
832 | var c = b.length > 0, | ||
833 | e = a.length > 0, | ||
834 | f = function(f, g, i, j, k) { | ||
835 | var m, n, o, p = 0, | ||
836 | q = "0", | ||
837 | r = f && [], | ||
838 | s = [], | ||
839 | t = h, | ||
840 | v = f || e && d.find.TAG("*", k), | ||
841 | w = u += null == t ? 1 : Math.random() || .1, | ||
842 | x = v.length; | ||
843 | for (k && (h = g !== l && g); q !== x && null != (m = v[q]); q++) { | ||
844 | if (e && m) { | ||
845 | n = 0; | ||
846 | while (o = a[n++]) | ||
847 | if (o(m, g, i)) { | ||
848 | j.push(m); | ||
849 | break | ||
850 | } | ||
851 | k && (u = w) | ||
852 | } | ||
853 | c && ((m = !o && m) && p--, f && r.push(m)) | ||
854 | } | ||
855 | if (p += q, c && q !== p) { | ||
856 | n = 0; | ||
857 | while (o = b[n++]) o(r, s, g, i); | ||
858 | if (f) { | ||
859 | if (p > 0) | ||
860 | while (q--) r[q] || s[q] || (s[q] = E.call(j)); | ||
861 | s = sb(s) | ||
862 | } | ||
863 | G.apply(j, s), k && !f && s.length > 0 && p + b.length > 1 && db.uniqueSort(j) | ||
864 | } | ||
865 | return k && (u = w, h = t), r | ||
866 | }; | ||
867 | return c ? fb(f) : f | ||
868 | } | ||
869 | g = db.compile = function(a, b) { | ||
870 | var c, d = [], | ||
871 | e = [], | ||
872 | f = y[a + " "]; | ||
873 | if (!f) { | ||
874 | b || (b = ob(a)), c = b.length; | ||
875 | while (c--) f = ub(b[c]), f[s] ? d.push(f) : e.push(f); | ||
876 | f = y(a, vb(e, d)) | ||
877 | } | ||
878 | return f | ||
879 | }; | ||
880 | |||
881 | function wb(a, b, c) { | ||
882 | for (var d = 0, e = b.length; e > d; d++) db(a, b[d], c); | ||
883 | return c | ||
884 | } | ||
885 | |||
886 | function xb(a, b, e, f) { | ||
887 | var h, i, j, k, l, m = ob(a); | ||
888 | if (!f && 1 === m.length) { | ||
889 | if (i = m[0] = m[0].slice(0), i.length > 2 && "ID" === (j = i[0]).type && c.getById && 9 === b.nodeType && n && d.relative[i[1].type]) { | ||
890 | if (b = (d.find.ID(j.matches[0].replace(ab, bb), b) || [])[0], !b) return e; | ||
891 | a = a.slice(i.shift().value.length) | ||
892 | } | ||
893 | h = V.needsContext.test(a) ? 0 : i.length; | ||
894 | while (h--) { | ||
895 | if (j = i[h], d.relative[k = j.type]) break; | ||
896 | if ((l = d.find[k]) && (f = l(j.matches[0].replace(ab, bb), $.test(i[0].type) && mb(b.parentNode) || b))) { | ||
897 | if (i.splice(h, 1), a = f.length && pb(i), !a) return G.apply(e, f), e; | ||
898 | break | ||
899 | } | ||
900 | } | ||
901 | } | ||
902 | return g(a, m)(f, b, !n, e, $.test(a) && mb(b.parentNode) || b), e | ||
903 | } | ||
904 | return c.sortStable = s.split("").sort(z).join("") === s, c.detectDuplicates = !!j, k(), c.sortDetached = gb(function(a) { | ||
905 | return 1 & a.compareDocumentPosition(l.createElement("div")) | ||
906 | }), gb(function(a) { | ||
907 | return a.innerHTML = "<a href='#'></a>", "#" === a.firstChild.getAttribute("href") | ||
908 | }) || hb("type|href|height|width", function(a, b, c) { | ||
909 | return c ? void 0 : a.getAttribute(b, "type" === b.toLowerCase() ? 1 : 2) | ||
910 | }), c.attributes && gb(function(a) { | ||
911 | return a.innerHTML = "<input/>", a.firstChild.setAttribute("value", ""), "" === a.firstChild.getAttribute("value") | ||
912 | }) || hb("value", function(a, b, c) { | ||
913 | return c || "input" !== a.nodeName.toLowerCase() ? void 0 : a.defaultValue | ||
914 | }), gb(function(a) { | ||
915 | return null == a.getAttribute("disabled") | ||
916 | }) || hb(J, function(a, b, c) { | ||
917 | var d; | ||
918 | return c ? void 0 : a[b] === !0 ? b.toLowerCase() : (d = a.getAttributeNode(b)) && d.specified ? d.value : null | ||
919 | }), db | ||
920 | }(a); | ||
921 | n.find = t, n.expr = t.selectors, n.expr[":"] = n.expr.pseudos, n.unique = t.uniqueSort, n.text = t.getText, n.isXMLDoc = t.isXML, n.contains = t.contains; | ||
922 | var u = n.expr.match.needsContext, | ||
923 | v = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, | ||
924 | w = /^.[^:#\[\.,]*$/; | ||
925 | |||
926 | function x(a, b, c) { | ||
927 | if (n.isFunction(b)) return n.grep(a, function(a, d) { | ||
928 | return !!b.call(a, d, a) !== c | ||
929 | }); | ||
930 | if (b.nodeType) return n.grep(a, function(a) { | ||
931 | return a === b !== c | ||
932 | }); | ||
933 | if ("string" == typeof b) { | ||
934 | if (w.test(b)) return n.filter(b, a, c); | ||
935 | b = n.filter(b, a) | ||
936 | } | ||
937 | return n.grep(a, function(a) { | ||
938 | return n.inArray(a, b) >= 0 !== c | ||
939 | }) | ||
940 | } | ||
941 | n.filter = function(a, b, c) { | ||
942 | var d = b[0]; | ||
943 | return c && (a = ":not(" + a + ")"), 1 === b.length && 1 === d.nodeType ? n.find.matchesSelector(d, a) ? [d] : [] : n.find.matches(a, n.grep(b, function(a) { | ||
944 | return 1 === a.nodeType | ||
945 | })) | ||
946 | }, n.fn.extend({ | ||
947 | find: function(a) { | ||
948 | var b, c = [], | ||
949 | d = this, | ||
950 | e = d.length; | ||
951 | if ("string" != typeof a) return this.pushStack(n(a).filter(function() { | ||
952 | for (b = 0; e > b; b++) | ||
953 | if (n.contains(d[b], this)) return !0 | ||
954 | })); | ||
955 | for (b = 0; e > b; b++) n.find(a, d[b], c); | ||
956 | return c = this.pushStack(e > 1 ? n.unique(c) : c), c.selector = this.selector ? this.selector + " " + a : a, c | ||
957 | }, | ||
958 | filter: function(a) { | ||
959 | return this.pushStack(x(this, a || [], !1)) | ||
960 | }, | ||
961 | not: function(a) { | ||
962 | return this.pushStack(x(this, a || [], !0)) | ||
963 | }, | ||
964 | is: function(a) { | ||
965 | return !!x(this, "string" == typeof a && u.test(a) ? n(a) : a || [], !1).length | ||
966 | } | ||
967 | }); | ||
968 | var y, z = a.document, | ||
969 | A = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, | ||
970 | B = n.fn.init = function(a, b) { | ||
971 | var c, d; | ||
972 | if (!a) return this; | ||
973 | if ("string" == typeof a) { | ||
974 | if (c = "<" === a.charAt(0) && ">" === a.charAt(a.length - 1) && a.length >= 3 ? [null, a, null] : A.exec(a), !c || !c[1] && b) return !b || b.jquery ? (b || y).find(a) : this.constructor(b).find(a); | ||
975 | if (c[1]) { | ||
976 | if (b = b instanceof n ? b[0] : b, n.merge(this, n.parseHTML(c[1], b && b.nodeType ? b.ownerDocument || b : z, !0)), v.test(c[1]) && n.isPlainObject(b)) | ||
977 | for (c in b) n.isFunction(this[c]) ? this[c](b[c]) : this.attr(c, b[c]); | ||
978 | return this | ||
979 | } | ||
980 | if (d = z.getElementById(c[2]), d && d.parentNode) { | ||
981 | if (d.id !== c[2]) return y.find(a); | ||
982 | this.length = 1, this[0] = d | ||
983 | } | ||
984 | return this.context = z, this.selector = a, this | ||
985 | } | ||
986 | return a.nodeType ? (this.context = this[0] = a, this.length = 1, this) : n.isFunction(a) ? "undefined" != typeof y.ready ? y.ready(a) : a(n) : (void 0 !== a.selector && (this.selector = a.selector, this.context = a.context), n.makeArray(a, this)) | ||
987 | }; | ||
988 | B.prototype = n.fn, y = n(z); | ||
989 | var C = /^(?:parents|prev(?:Until|All))/, | ||
990 | D = { | ||
991 | children: !0, | ||
992 | contents: !0, | ||
993 | next: !0, | ||
994 | prev: !0 | ||
995 | }; | ||
996 | n.extend({ | ||
997 | dir: function(a, b, c) { | ||
998 | var d = [], | ||
999 | e = a[b]; | ||
1000 | while (e && 9 !== e.nodeType && (void 0 === c || 1 !== e.nodeType || !n(e).is(c))) 1 === e.nodeType && d.push(e), e = e[b]; | ||
1001 | return d | ||
1002 | }, | ||
1003 | sibling: function(a, b) { | ||
1004 | for (var c = []; a; a = a.nextSibling) 1 === a.nodeType && a !== b && c.push(a); | ||
1005 | return c | ||
1006 | } | ||
1007 | }), n.fn.extend({ | ||
1008 | has: function(a) { | ||
1009 | var b, c = n(a, this), | ||
1010 | d = c.length; | ||
1011 | return this.filter(function() { | ||
1012 | for (b = 0; d > b; b++) | ||
1013 | if (n.contains(this, c[b])) return !0 | ||
1014 | }) | ||
1015 | }, | ||
1016 | closest: function(a, b) { | ||
1017 | for (var c, d = 0, e = this.length, f = [], g = u.test(a) || "string" != typeof a ? n(a, b || this.context) : 0; e > d; d++) | ||
1018 | for (c = this[d]; c && c !== b; c = c.parentNode) | ||
1019 | if (c.nodeType < 11 && (g ? g.index(c) > -1 : 1 === c.nodeType && n.find.matchesSelector(c, a))) { | ||
1020 | f.push(c); | ||
1021 | break | ||
1022 | } | ||
1023 | return this.pushStack(f.length > 1 ? n.unique(f) : f) | ||
1024 | }, | ||
1025 | index: function(a) { | ||
1026 | return a ? "string" == typeof a ? n.inArray(this[0], n(a)) : n.inArray(a.jquery ? a[0] : a, this) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1 | ||
1027 | }, | ||
1028 | add: function(a, b) { | ||
1029 | return this.pushStack(n.unique(n.merge(this.get(), n(a, b)))) | ||
1030 | }, | ||
1031 | addBack: function(a) { | ||
1032 | return this.add(null == a ? this.prevObject : this.prevObject.filter(a)) | ||
1033 | } | ||
1034 | }); | ||
1035 | |||
1036 | function E(a, b) { | ||
1037 | do a = a[b]; while (a && 1 !== a.nodeType); | ||
1038 | return a | ||
1039 | } | ||
1040 | n.each({ | ||
1041 | parent: function(a) { | ||
1042 | var b = a.parentNode; | ||
1043 | return b && 11 !== b.nodeType ? b : null | ||
1044 | }, | ||
1045 | parents: function(a) { | ||
1046 | return n.dir(a, "parentNode") | ||
1047 | }, | ||
1048 | parentsUntil: function(a, b, c) { | ||
1049 | return n.dir(a, "parentNode", c) | ||
1050 | }, | ||
1051 | next: function(a) { | ||
1052 | return E(a, "nextSibling") | ||
1053 | }, | ||
1054 | prev: function(a) { | ||
1055 | return E(a, "previousSibling") | ||
1056 | }, | ||
1057 | nextAll: function(a) { | ||
1058 | return n.dir(a, "nextSibling") | ||
1059 | }, | ||
1060 | prevAll: function(a) { | ||
1061 | return n.dir(a, "previousSibling") | ||
1062 | }, | ||
1063 | nextUntil: function(a, b, c) { | ||
1064 | return n.dir(a, "nextSibling", c) | ||
1065 | }, | ||
1066 | prevUntil: function(a, b, c) { | ||
1067 | return n.dir(a, "previousSibling", c) | ||
1068 | }, | ||
1069 | siblings: function(a) { | ||
1070 | return n.sibling((a.parentNode || {}).firstChild, a) | ||
1071 | }, | ||
1072 | children: function(a) { | ||
1073 | return n.sibling(a.firstChild) | ||
1074 | }, | ||
1075 | contents: function(a) { | ||
1076 | return n.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : n.merge([], a.childNodes) | ||
1077 | } | ||
1078 | }, function(a, b) { | ||
1079 | n.fn[a] = function(c, d) { | ||
1080 | var e = n.map(this, b, c); | ||
1081 | return "Until" !== a.slice(-5) && (d = c), d && "string" == typeof d && (e = n.filter(d, e)), this.length > 1 && (D[a] || (e = n.unique(e)), C.test(a) && (e = e.reverse())), this.pushStack(e) | ||
1082 | } | ||
1083 | }); | ||
1084 | var F = /\S+/g, | ||
1085 | G = {}; | ||
1086 | |||
1087 | function H(a) { | ||
1088 | var b = G[a] = {}; | ||
1089 | return n.each(a.match(F) || [], function(a, c) { | ||
1090 | b[c] = !0 | ||
1091 | }), b | ||
1092 | } | ||
1093 | n.Callbacks = function(a) { | ||
1094 | a = "string" == typeof a ? G[a] || H(a) : n.extend({}, a); | ||
1095 | var b, c, d, e, f, g, h = [], | ||
1096 | i = !a.once && [], | ||
1097 | j = function(l) { | ||
1098 | for (c = a.memory && l, d = !0, f = g || 0, g = 0, e = h.length, b = !0; h && e > f; f++) | ||
1099 | if (h[f].apply(l[0], l[1]) === !1 && a.stopOnFalse) { | ||
1100 | c = !1; | ||
1101 | break | ||
1102 | } | ||
1103 | b = !1, h && (i ? i.length && j(i.shift()) : c ? h = [] : k.disable()) | ||
1104 | }, | ||
1105 | k = { | ||
1106 | add: function() { | ||
1107 | if (h) { | ||
1108 | var d = h.length; | ||
1109 | ! function f(b) { | ||
1110 | n.each(b, function(b, c) { | ||
1111 | var d = n.type(c); | ||
1112 | "function" === d ? a.unique && k.has(c) || h.push(c) : c && c.length && "string" !== d && f(c) | ||
1113 | }) | ||
1114 | }(arguments), b ? e = h.length : c && (g = d, j(c)) | ||
1115 | } | ||
1116 | return this | ||
1117 | }, | ||
1118 | remove: function() { | ||
1119 | return h && n.each(arguments, function(a, c) { | ||
1120 | var d; | ||
1121 | while ((d = n.inArray(c, h, d)) > -1) h.splice(d, 1), b && (e >= d && e--, f >= d && f--) | ||
1122 | }), this | ||
1123 | }, | ||
1124 | has: function(a) { | ||
1125 | return a ? n.inArray(a, h) > -1 : !(!h || !h.length) | ||
1126 | }, | ||
1127 | empty: function() { | ||
1128 | return h = [], e = 0, this | ||
1129 | }, | ||
1130 | disable: function() { | ||
1131 | return h = i = c = void 0, this | ||
1132 | }, | ||
1133 | disabled: function() { | ||
1134 | return !h | ||
1135 | }, | ||
1136 | lock: function() { | ||
1137 | return i = void 0, c || k.disable(), this | ||
1138 | }, | ||
1139 | locked: function() { | ||
1140 | return !i | ||
1141 | }, | ||
1142 | fireWith: function(a, c) { | ||
1143 | return !h || d && !i || (c = c || [], c = [a, c.slice ? c.slice() : c], b ? i.push(c) : j(c)), this | ||
1144 | }, | ||
1145 | fire: function() { | ||
1146 | return k.fireWith(this, arguments), this | ||
1147 | }, | ||
1148 | fired: function() { | ||
1149 | return !!d | ||
1150 | } | ||
1151 | }; | ||
1152 | return k | ||
1153 | }, n.extend({ | ||
1154 | Deferred: function(a) { | ||
1155 | var b = [ | ||
1156 | ["resolve", "done", n.Callbacks("once memory"), "resolved"], | ||
1157 | ["reject", "fail", n.Callbacks("once memory"), "rejected"], | ||
1158 | ["notify", "progress", n.Callbacks("memory")] | ||
1159 | ], | ||
1160 | c = "pending", | ||
1161 | d = { | ||
1162 | state: function() { | ||
1163 | return c | ||
1164 | }, | ||
1165 | always: function() { | ||
1166 | return e.done(arguments).fail(arguments), this | ||
1167 | }, | ||
1168 | then: function() { | ||
1169 | var a = arguments; | ||
1170 | return n.Deferred(function(c) { | ||
1171 | n.each(b, function(b, f) { | ||
1172 | var g = n.isFunction(a[b]) && a[b]; | ||
1173 | e[f[1]](function() { | ||
1174 | var a = g && g.apply(this, arguments); | ||
1175 | a && n.isFunction(a.promise) ? a.promise().done(c.resolve).fail(c.reject).progress(c.notify) : c[f[0] + "With"](this === d ? c.promise() : this, g ? [a] : arguments) | ||
1176 | }) | ||
1177 | }), a = null | ||
1178 | }).promise() | ||
1179 | }, | ||
1180 | promise: function(a) { | ||
1181 | return null != a ? n.extend(a, d) : d | ||
1182 | } | ||
1183 | }, | ||
1184 | e = {}; | ||
1185 | return d.pipe = d.then, n.each(b, function(a, f) { | ||
1186 | var g = f[2], | ||
1187 | h = f[3]; | ||
1188 | d[f[1]] = g.add, h && g.add(function() { | ||
1189 | c = h | ||
1190 | }, b[1 ^ a][2].disable, b[2][2].lock), e[f[0]] = function() { | ||
1191 | return e[f[0] + "With"](this === e ? d : this, arguments), this | ||
1192 | }, e[f[0] + "With"] = g.fireWith | ||
1193 | }), d.promise(e), a && a.call(e, e), e | ||
1194 | }, | ||
1195 | when: function(a) { | ||
1196 | var b = 0, | ||
1197 | c = d.call(arguments), | ||
1198 | e = c.length, | ||
1199 | f = 1 !== e || a && n.isFunction(a.promise) ? e : 0, | ||
1200 | g = 1 === f ? a : n.Deferred(), | ||
1201 | h = function(a, b, c) { | ||
1202 | return function(e) { | ||
1203 | b[a] = this, c[a] = arguments.length > 1 ? d.call(arguments) : e, c === i ? g.notifyWith(b, c) : --f || g.resolveWith(b, c) | ||
1204 | } | ||
1205 | }, | ||
1206 | i, j, k; | ||
1207 | if (e > 1) | ||
1208 | for (i = new Array(e), j = new Array(e), k = new Array(e); e > b; b++) c[b] && n.isFunction(c[b].promise) ? c[b].promise().done(h(b, k, c)).fail(g.reject).progress(h(b, j, i)) : --f; | ||
1209 | return f || g.resolveWith(k, c), g.promise() | ||
1210 | } | ||
1211 | }); | ||
1212 | var I; | ||
1213 | n.fn.ready = function(a) { | ||
1214 | return n.ready.promise().done(a), this | ||
1215 | }, n.extend({ | ||
1216 | isReady: !1, | ||
1217 | readyWait: 1, | ||
1218 | holdReady: function(a) { | ||
1219 | a ? n.readyWait++ : n.ready(!0) | ||
1220 | }, | ||
1221 | ready: function(a) { | ||
1222 | if (a === !0 ? !--n.readyWait : !n.isReady) { | ||
1223 | if (!z.body) return setTimeout(n.ready); | ||
1224 | n.isReady = !0, a !== !0 && --n.readyWait > 0 || (I.resolveWith(z, [n]), n.fn.trigger && n(z).trigger("ready").off("ready")) | ||
1225 | } | ||
1226 | } | ||
1227 | }); | ||
1228 | |||
1229 | function J() { | ||
1230 | z.addEventListener ? (z.removeEventListener("DOMContentLoaded", K, !1), a.removeEventListener("load", K, !1)) : (z.detachEvent("onreadystatechange", K), a.detachEvent("onload", K)) | ||
1231 | } | ||
1232 | |||
1233 | function K() { | ||
1234 | (z.addEventListener || "load" === event.type || "complete" === z.readyState) && (J(), n.ready()) | ||
1235 | } | ||
1236 | n.ready.promise = function(b) { | ||
1237 | if (!I) | ||
1238 | if (I = n.Deferred(), "complete" === z.readyState) setTimeout(n.ready); | ||
1239 | else if (z.addEventListener) z.addEventListener("DOMContentLoaded", K, !1), a.addEventListener("load", K, !1); | ||
1240 | else { | ||
1241 | z.attachEvent("onreadystatechange", K), a.attachEvent("onload", K); | ||
1242 | var c = !1; | ||
1243 | try { | ||
1244 | c = null == a.frameElement && z.documentElement | ||
1245 | } catch (d) {} | ||
1246 | c && c.doScroll && ! function e() { | ||
1247 | if (!n.isReady) { | ||
1248 | try { | ||
1249 | c.doScroll("left") | ||
1250 | } catch (a) { | ||
1251 | return setTimeout(e, 50) | ||
1252 | } | ||
1253 | J(), n.ready() | ||
1254 | } | ||
1255 | }() | ||
1256 | } | ||
1257 | return I.promise(b) | ||
1258 | }; | ||
1259 | var L = "undefined", | ||
1260 | M; | ||
1261 | for (M in n(l)) break; | ||
1262 | l.ownLast = "0" !== M, l.inlineBlockNeedsLayout = !1, n(function() { | ||
1263 | var a, b, c = z.getElementsByTagName("body")[0]; | ||
1264 | c && (a = z.createElement("div"), a.style.cssText = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px", b = z.createElement("div"), c.appendChild(a).appendChild(b), typeof b.style.zoom !== L && (b.style.cssText = "border:0;margin:0;width:1px;padding:1px;display:inline;zoom:1", (l.inlineBlockNeedsLayout = 3 === b.offsetWidth) && (c.style.zoom = 1)), c.removeChild(a), a = b = null) | ||
1265 | }), | ||
1266 | function() { | ||
1267 | var a = z.createElement("div"); | ||
1268 | if (null == l.deleteExpando) { | ||
1269 | l.deleteExpando = !0; | ||
1270 | try { | ||
1271 | delete a.test | ||
1272 | } catch (b) { | ||
1273 | l.deleteExpando = !1 | ||
1274 | } | ||
1275 | } | ||
1276 | a = null | ||
1277 | }(), n.acceptData = function(a) { | ||
1278 | var b = n.noData[(a.nodeName + " ").toLowerCase()], | ||
1279 | c = +a.nodeType || 1; | ||
1280 | return 1 !== c && 9 !== c ? !1 : !b || b !== !0 && a.getAttribute("classid") === b | ||
1281 | }; | ||
1282 | var N = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, | ||
1283 | O = /([A-Z])/g; | ||
1284 | |||
1285 | function P(a, b, c) { | ||
1286 | if (void 0 === c && 1 === a.nodeType) { | ||
1287 | var d = "data-" + b.replace(O, "-$1").toLowerCase(); | ||
1288 | if (c = a.getAttribute(d), "string" == typeof c) { | ||
1289 | try { | ||
1290 | c = "true" === c ? !0 : "false" === c ? !1 : "null" === c ? null : +c + "" === c ? +c : N.test(c) ? n.parseJSON(c) : c | ||
1291 | } catch (e) {} | ||
1292 | n.data(a, b, c) | ||
1293 | } else c = void 0 | ||
1294 | } | ||
1295 | return c | ||
1296 | } | ||
1297 | |||
1298 | function Q(a) { | ||
1299 | var b; | ||
1300 | for (b in a) | ||
1301 | if (("data" !== b || !n.isEmptyObject(a[b])) && "toJSON" !== b) return !1; | ||
1302 | return !0 | ||
1303 | } | ||
1304 | |||
1305 | function R(a, b, d, e) { | ||
1306 | if (n.acceptData(a)) { | ||
1307 | var f, g, h = n.expando, | ||
1308 | i = a.nodeType, | ||
1309 | j = i ? n.cache : a, | ||
1310 | k = i ? a[h] : a[h] && h; | ||
1311 | if (k && j[k] && (e || j[k].data) || void 0 !== d || "string" != typeof b) return k || (k = i ? a[h] = c.pop() || n.guid++ : h), j[k] || (j[k] = i ? {} : { | ||
1312 | toJSON: n.noop | ||
1313 | }), ("object" == typeof b || "function" == typeof b) && (e ? j[k] = n.extend(j[k], b) : j[k].data = n.extend(j[k].data, b)), g = j[k], e || (g.data || (g.data = {}), g = g.data), void 0 !== d && (g[n.camelCase(b)] = d), "string" == typeof b ? (f = g[b], null == f && (f = g[n.camelCase(b)])) : f = g, f | ||
1314 | } | ||
1315 | } | ||
1316 | |||
1317 | function S(a, b, c) { | ||
1318 | if (n.acceptData(a)) { | ||
1319 | var d, e, f = a.nodeType, | ||
1320 | g = f ? n.cache : a, | ||
1321 | h = f ? a[n.expando] : n.expando; | ||
1322 | if (g[h]) { | ||
1323 | if (b && (d = c ? g[h] : g[h].data)) { | ||
1324 | n.isArray(b) ? b = b.concat(n.map(b, n.camelCase)) : b in d ? b = [b] : (b = n.camelCase(b), b = b in d ? [b] : b.split(" ")), e = b.length; | ||
1325 | while (e--) delete d[b[e]]; | ||
1326 | if (c ? !Q(d) : !n.isEmptyObject(d)) return | ||
1327 | }(c || (delete g[h].data, Q(g[h]))) && (f ? n.cleanData([a], !0) : l.deleteExpando || g != g.window ? delete g[h] : g[h] = null) | ||
1328 | } | ||
1329 | } | ||
1330 | } | ||
1331 | n.extend({ | ||
1332 | cache: {}, | ||
1333 | noData: { | ||
1334 | "applet ": !0, | ||
1335 | "embed ": !0, | ||
1336 | "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" | ||
1337 | }, | ||
1338 | hasData: function(a) { | ||
1339 | return a = a.nodeType ? n.cache[a[n.expando]] : a[n.expando], !!a && !Q(a) | ||
1340 | }, | ||
1341 | data: function(a, b, c) { | ||
1342 | return R(a, b, c) | ||
1343 | }, | ||
1344 | removeData: function(a, b) { | ||
1345 | return S(a, b) | ||
1346 | }, | ||
1347 | _data: function(a, b, c) { | ||
1348 | return R(a, b, c, !0) | ||
1349 | }, | ||
1350 | _removeData: function(a, b) { | ||
1351 | return S(a, b, !0) | ||
1352 | } | ||
1353 | }), n.fn.extend({ | ||
1354 | data: function(a, b) { | ||
1355 | var c, d, e, f = this[0], | ||
1356 | g = f && f.attributes; | ||
1357 | if (void 0 === a) { | ||
1358 | if (this.length && (e = n.data(f), 1 === f.nodeType && !n._data(f, "parsedAttrs"))) { | ||
1359 | c = g.length; | ||
1360 | while (c--) d = g[c].name, 0 === d.indexOf("data-") && (d = n.camelCase(d.slice(5)), P(f, d, e[d])); | ||
1361 | n._data(f, "parsedAttrs", !0) | ||
1362 | } | ||
1363 | return e | ||
1364 | } | ||
1365 | return "object" == typeof a ? this.each(function() { | ||
1366 | n.data(this, a) | ||
1367 | }) : arguments.length > 1 ? this.each(function() { | ||
1368 | n.data(this, a, b) | ||
1369 | }) : f ? P(f, a, n.data(f, a)) : void 0 | ||
1370 | }, | ||
1371 | removeData: function(a) { | ||
1372 | return this.each(function() { | ||
1373 | n.removeData(this, a) | ||
1374 | }) | ||
1375 | } | ||
1376 | }), n.extend({ | ||
1377 | queue: function(a, b, c) { | ||
1378 | var d; | ||
1379 | return a ? (b = (b || "fx") + "queue", d = n._data(a, b), c && (!d || n.isArray(c) ? d = n._data(a, b, n.makeArray(c)) : d.push(c)), d || []) : void 0 | ||
1380 | }, | ||
1381 | dequeue: function(a, b) { | ||
1382 | b = b || "fx"; | ||
1383 | var c = n.queue(a, b), | ||
1384 | d = c.length, | ||
1385 | e = c.shift(), | ||
1386 | f = n._queueHooks(a, b), | ||
1387 | g = function() { | ||
1388 | n.dequeue(a, b) | ||
1389 | }; | ||
1390 | "inprogress" === e && (e = c.shift(), d--), e && ("fx" === b && c.unshift("inprogress"), delete f.stop, e.call(a, g, f)), !d && f && f.empty.fire() | ||
1391 | }, | ||
1392 | _queueHooks: function(a, b) { | ||
1393 | var c = b + "queueHooks"; | ||
1394 | return n._data(a, c) || n._data(a, c, { | ||
1395 | empty: n.Callbacks("once memory").add(function() { | ||
1396 | n._removeData(a, b + "queue"), n._removeData(a, c) | ||
1397 | }) | ||
1398 | }) | ||
1399 | } | ||
1400 | }), n.fn.extend({ | ||
1401 | queue: function(a, b) { | ||
1402 | var c = 2; | ||
1403 | return "string" != typeof a && (b = a, a = "fx", c--), arguments.length < c ? n.queue(this[0], a) : void 0 === b ? this : this.each(function() { | ||
1404 | var c = n.queue(this, a, b); | ||
1405 | n._queueHooks(this, a), "fx" === a && "inprogress" !== c[0] && n.dequeue(this, a) | ||
1406 | }) | ||
1407 | }, | ||
1408 | dequeue: function(a) { | ||
1409 | return this.each(function() { | ||
1410 | n.dequeue(this, a) | ||
1411 | }) | ||
1412 | }, | ||
1413 | clearQueue: function(a) { | ||
1414 | return this.queue(a || "fx", []) | ||
1415 | }, | ||
1416 | promise: function(a, b) { | ||
1417 | var c, d = 1, | ||
1418 | e = n.Deferred(), | ||
1419 | f = this, | ||
1420 | g = this.length, | ||
1421 | h = function() { | ||
1422 | --d || e.resolveWith(f, [f]) | ||
1423 | }; | ||
1424 | "string" != typeof a && (b = a, a = void 0), a = a || "fx"; | ||
1425 | while (g--) c = n._data(f[g], a + "queueHooks"), c && c.empty && (d++, c.empty.add(h)); | ||
1426 | return h(), e.promise(b) | ||
1427 | } | ||
1428 | }); | ||
1429 | var T = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, | ||
1430 | U = ["Top", "Right", "Bottom", "Left"], | ||
1431 | V = function(a, b) { | ||
1432 | return a = b || a, "none" === n.css(a, "display") || !n.contains(a.ownerDocument, a) | ||
1433 | }, | ||
1434 | W = n.access = function(a, b, c, d, e, f, g) { | ||
1435 | var h = 0, | ||
1436 | i = a.length, | ||
1437 | j = null == c; | ||
1438 | if ("object" === n.type(c)) { | ||
1439 | e = !0; | ||
1440 | for (h in c) n.access(a, b, h, c[h], !0, f, g) | ||
1441 | } else if (void 0 !== d && (e = !0, n.isFunction(d) || (g = !0), j && (g ? (b.call(a, d), b = null) : (j = b, b = function(a, b, c) { | ||
1442 | return j.call(n(a), c) | ||
1443 | })), b)) | ||
1444 | for (; i > h; h++) b(a[h], c, g ? d : d.call(a[h], h, b(a[h], c))); | ||
1445 | return e ? a : j ? b.call(a) : i ? b(a[0], c) : f | ||
1446 | }, | ||
1447 | X = /^(?:checkbox|radio)$/i; | ||
1448 | ! function() { | ||
1449 | var a = z.createDocumentFragment(), | ||
1450 | b = z.createElement("div"), | ||
1451 | c = z.createElement("input"); | ||
1452 | if (b.setAttribute("className", "t"), b.innerHTML = " <link/><table></table><a href='/a'>a</a>", l.leadingWhitespace = 3 === b.firstChild.nodeType, l.tbody = !b.getElementsByTagName("tbody").length, l.htmlSerialize = !!b.getElementsByTagName("link").length, l.html5Clone = "<:nav></:nav>" !== z.createElement("nav").cloneNode(!0).outerHTML, c.type = "checkbox", c.checked = !0, a.appendChild(c), l.appendChecked = c.checked, b.innerHTML = "<textarea>x</textarea>", l.noCloneChecked = !!b.cloneNode(!0).lastChild.defaultValue, a.appendChild(b), b.innerHTML = "<input type='radio' checked='checked' name='t'/>", l.checkClone = b.cloneNode(!0).cloneNode(!0).lastChild.checked, l.noCloneEvent = !0, b.attachEvent && (b.attachEvent("onclick", function() { | ||
1453 | l.noCloneEvent = !1 | ||
1454 | }), b.cloneNode(!0).click()), null == l.deleteExpando) { | ||
1455 | l.deleteExpando = !0; | ||
1456 | try { | ||
1457 | delete b.test | ||
1458 | } catch (d) { | ||
1459 | l.deleteExpando = !1 | ||
1460 | } | ||
1461 | } | ||
1462 | a = b = c = null | ||
1463 | }(), | ||
1464 | function() { | ||
1465 | var b, c, d = z.createElement("div"); | ||
1466 | for (b in { | ||
1467 | submit: !0, | ||
1468 | change: !0, | ||
1469 | focusin: !0 | ||
1470 | }) c = "on" + b, (l[b + "Bubbles"] = c in a) || (d.setAttribute(c, "t"), l[b + "Bubbles"] = d.attributes[c].expando === !1); | ||
1471 | d = null | ||
1472 | }(); | ||
1473 | var Y = /^(?:input|select|textarea)$/i, | ||
1474 | Z = /^key/, | ||
1475 | $ = /^(?:mouse|contextmenu)|click/, | ||
1476 | _ = /^(?:focusinfocus|focusoutblur)$/, | ||
1477 | ab = /^([^.]*)(?:\.(.+)|)$/; | ||
1478 | |||
1479 | function bb() { | ||
1480 | return !0 | ||
1481 | } | ||
1482 | |||
1483 | function cb() { | ||
1484 | return !1 | ||
1485 | } | ||
1486 | |||
1487 | function db() { | ||
1488 | try { | ||
1489 | return z.activeElement | ||
1490 | } catch (a) {} | ||
1491 | } | ||
1492 | n.event = { | ||
1493 | global: {}, | ||
1494 | add: function(a, b, c, d, e) { | ||
1495 | var f, g, h, i, j, k, l, m, o, p, q, r = n._data(a); | ||
1496 | if (r) { | ||
1497 | c.handler && (i = c, c = i.handler, e = i.selector), c.guid || (c.guid = n.guid++), (g = r.events) || (g = r.events = {}), (k = r.handle) || (k = r.handle = function(a) { | ||
1498 | return typeof n === L || a && n.event.triggered === a.type ? void 0 : n.event.dispatch.apply(k.elem, arguments) | ||
1499 | }, k.elem = a), b = (b || "").match(F) || [""], h = b.length; | ||
1500 | while (h--) f = ab.exec(b[h]) || [], o = q = f[1], p = (f[2] || "").split(".").sort(), o && (j = n.event.special[o] || {}, o = (e ? j.delegateType : j.bindType) || o, j = n.event.special[o] || {}, l = n.extend({ | ||
1501 | type: o, | ||
1502 | origType: q, | ||
1503 | data: d, | ||
1504 | handler: c, | ||
1505 | guid: c.guid, | ||
1506 | selector: e, | ||
1507 | needsContext: e && n.expr.match.needsContext.test(e), | ||
1508 | namespace: p.join(".") | ||
1509 | }, i), (m = g[o]) || (m = g[o] = [], m.delegateCount = 0, j.setup && j.setup.call(a, d, p, k) !== !1 || (a.addEventListener ? a.addEventListener(o, k, !1) : a.attachEvent && a.attachEvent("on" + o, k))), j.add && (j.add.call(a, l), l.handler.guid || (l.handler.guid = c.guid)), e ? m.splice(m.delegateCount++, 0, l) : m.push(l), n.event.global[o] = !0); | ||
1510 | a = null | ||
1511 | } | ||
1512 | }, | ||
1513 | remove: function(a, b, c, d, e) { | ||
1514 | var f, g, h, i, j, k, l, m, o, p, q, r = n.hasData(a) && n._data(a); | ||
1515 | if (r && (k = r.events)) { | ||
1516 | b = (b || "").match(F) || [""], j = b.length; | ||
1517 | while (j--) | ||
1518 | if (h = ab.exec(b[j]) || [], o = q = h[1], p = (h[2] || "").split(".").sort(), o) { | ||
1519 | l = n.event.special[o] || {}, o = (d ? l.delegateType : l.bindType) || o, m = k[o] || [], h = h[2] && new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)"), i = f = m.length; | ||
1520 | while (f--) g = m[f], !e && q !== g.origType || c && c.guid !== g.guid || h && !h.test(g.namespace) || d && d !== g.selector && ("**" !== d || !g.selector) || (m.splice(f, 1), g.selector && m.delegateCount--, l.remove && l.remove.call(a, g)); | ||
1521 | i && !m.length && (l.teardown && l.teardown.call(a, p, r.handle) !== !1 || n.removeEvent(a, o, r.handle), delete k[o]) | ||
1522 | } else | ||
1523 | for (o in k) n.event.remove(a, o + b[j], c, d, !0); | ||
1524 | n.isEmptyObject(k) && (delete r.handle, n._removeData(a, "events")) | ||
1525 | } | ||
1526 | }, | ||
1527 | trigger: function(b, c, d, e) { | ||
1528 | var f, g, h, i, k, l, m, o = [d || z], | ||
1529 | p = j.call(b, "type") ? b.type : b, | ||
1530 | q = j.call(b, "namespace") ? b.namespace.split(".") : []; | ||
1531 | if (h = l = d = d || z, 3 !== d.nodeType && 8 !== d.nodeType && !_.test(p + n.event.triggered) && (p.indexOf(".") >= 0 && (q = p.split("."), p = q.shift(), q.sort()), g = p.indexOf(":") < 0 && "on" + p, b = b[n.expando] ? b : new n.Event(p, "object" == typeof b && b), b.isTrigger = e ? 2 : 3, b.namespace = q.join("."), b.namespace_re = b.namespace ? new RegExp("(^|\\.)" + q.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, b.result = void 0, b.target || (b.target = d), c = null == c ? [b] : n.makeArray(c, [b]), k = n.event.special[p] || {}, e || !k.trigger || k.trigger.apply(d, c) !== !1)) { | ||
1532 | if (!e && !k.noBubble && !n.isWindow(d)) { | ||
1533 | for (i = k.delegateType || p, _.test(i + p) || (h = h.parentNode); h; h = h.parentNode) o.push(h), l = h; | ||
1534 | l === (d.ownerDocument || z) && o.push(l.defaultView || l.parentWindow || a) | ||
1535 | } | ||
1536 | m = 0; | ||
1537 | while ((h = o[m++]) && !b.isPropagationStopped()) b.type = m > 1 ? i : k.bindType || p, f = (n._data(h, "events") || {})[b.type] && n._data(h, "handle"), f && f.apply(h, c), f = g && h[g], f && f.apply && n.acceptData(h) && (b.result = f.apply(h, c), b.result === !1 && b.preventDefault()); | ||
1538 | if (b.type = p, !e && !b.isDefaultPrevented() && (!k._default || k._default.apply(o.pop(), c) === !1) && n.acceptData(d) && g && d[p] && !n.isWindow(d)) { | ||
1539 | l = d[g], l && (d[g] = null), n.event.triggered = p; | ||
1540 | try { | ||
1541 | d[p]() | ||
1542 | } catch (r) {} | ||
1543 | n.event.triggered = void 0, l && (d[g] = l) | ||
1544 | } | ||
1545 | return b.result | ||
1546 | } | ||
1547 | }, | ||
1548 | dispatch: function(a) { | ||
1549 | a = n.event.fix(a); | ||
1550 | var b, c, e, f, g, h = [], | ||
1551 | i = d.call(arguments), | ||
1552 | j = (n._data(this, "events") || {})[a.type] || [], | ||
1553 | k = n.event.special[a.type] || {}; | ||
1554 | if (i[0] = a, a.delegateTarget = this, !k.preDispatch || k.preDispatch.call(this, a) !== !1) { | ||
1555 | h = n.event.handlers.call(this, a, j), b = 0; | ||
1556 | while ((f = h[b++]) && !a.isPropagationStopped()) { | ||
1557 | a.currentTarget = f.elem, g = 0; | ||
1558 | while ((e = f.handlers[g++]) && !a.isImmediatePropagationStopped())(!a.namespace_re || a.namespace_re.test(e.namespace)) && (a.handleObj = e, a.data = e.data, c = ((n.event.special[e.origType] || {}).handle || e.handler).apply(f.elem, i), void 0 !== c && (a.result = c) === !1 && (a.preventDefault(), a.stopPropagation())) | ||
1559 | } | ||
1560 | return k.postDispatch && k.postDispatch.call(this, a), a.result | ||
1561 | } | ||
1562 | }, | ||
1563 | handlers: function(a, b) { | ||
1564 | var c, d, e, f, g = [], | ||
1565 | h = b.delegateCount, | ||
1566 | i = a.target; | ||
1567 | if (h && i.nodeType && (!a.button || "click" !== a.type)) | ||
1568 | for (; i != this; i = i.parentNode || this) | ||
1569 | if (1 === i.nodeType && (i.disabled !== !0 || "click" !== a.type)) { | ||
1570 | for (e = [], f = 0; h > f; f++) d = b[f], c = d.selector + " ", void 0 === e[c] && (e[c] = d.needsContext ? n(c, this).index(i) >= 0 : n.find(c, this, null, [i]).length), e[c] && e.push(d); | ||
1571 | e.length && g.push({ | ||
1572 | elem: i, | ||
1573 | handlers: e | ||
1574 | }) | ||
1575 | } | ||
1576 | return h < b.length && g.push({ | ||
1577 | elem: this, | ||
1578 | handlers: b.slice(h) | ||
1579 | }), g | ||
1580 | }, | ||
1581 | fix: function(a) { | ||
1582 | if (a[n.expando]) return a; | ||
1583 | var b, c, d, e = a.type, | ||
1584 | f = a, | ||
1585 | g = this.fixHooks[e]; | ||
1586 | g || (this.fixHooks[e] = g = $.test(e) ? this.mouseHooks : Z.test(e) ? this.keyHooks : {}), d = g.props ? this.props.concat(g.props) : this.props, a = new n.Event(f), b = d.length; | ||
1587 | while (b--) c = d[b], a[c] = f[c]; | ||
1588 | return a.target || (a.target = f.srcElement || z), 3 === a.target.nodeType && (a.target = a.target.parentNode), a.metaKey = !!a.metaKey, g.filter ? g.filter(a, f) : a | ||
1589 | }, | ||
1590 | props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), | ||
1591 | fixHooks: {}, | ||
1592 | keyHooks: { | ||
1593 | props: "char charCode key keyCode".split(" "), | ||
1594 | filter: function(a, b) { | ||
1595 | return null == a.which && (a.which = null != b.charCode ? b.charCode : b.keyCode), a | ||
1596 | } | ||
1597 | }, | ||
1598 | mouseHooks: { | ||
1599 | props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "), | ||
1600 | filter: function(a, b) { | ||
1601 | var c, d, e, f = b.button, | ||
1602 | g = b.fromElement; | ||
1603 | return null == a.pageX && null != b.clientX && (d = a.target.ownerDocument || z, e = d.documentElement, c = d.body, a.pageX = b.clientX + (e && e.scrollLeft || c && c.scrollLeft || 0) - (e && e.clientLeft || c && c.clientLeft || 0), a.pageY = b.clientY + (e && e.scrollTop || c && c.scrollTop || 0) - (e && e.clientTop || c && c.clientTop || 0)), !a.relatedTarget && g && (a.relatedTarget = g === a.target ? b.toElement : g), a.which || void 0 === f || (a.which = 1 & f ? 1 : 2 & f ? 3 : 4 & f ? 2 : 0), a | ||
1604 | } | ||
1605 | }, | ||
1606 | special: { | ||
1607 | load: { | ||
1608 | noBubble: !0 | ||
1609 | }, | ||
1610 | focus: { | ||
1611 | trigger: function() { | ||
1612 | if (this !== db() && this.focus) try { | ||
1613 | return this.focus(), !1 | ||
1614 | } catch (a) {} | ||
1615 | }, | ||
1616 | delegateType: "focusin" | ||
1617 | }, | ||
1618 | blur: { | ||
1619 | trigger: function() { | ||
1620 | return this === db() && this.blur ? (this.blur(), !1) : void 0 | ||
1621 | }, | ||
1622 | delegateType: "focusout" | ||
1623 | }, | ||
1624 | click: { | ||
1625 | trigger: function() { | ||
1626 | return n.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : void 0 | ||
1627 | }, | ||
1628 | _default: function(a) { | ||
1629 | return n.nodeName(a.target, "a") | ||
1630 | } | ||
1631 | }, | ||
1632 | beforeunload: { | ||
1633 | postDispatch: function(a) { | ||
1634 | void 0 !== a.result && (a.originalEvent.returnValue = a.result) | ||
1635 | } | ||
1636 | } | ||
1637 | }, | ||
1638 | simulate: function(a, b, c, d) { | ||
1639 | var e = n.extend(new n.Event, c, { | ||
1640 | type: a, | ||
1641 | isSimulated: !0, | ||
1642 | originalEvent: {} | ||
1643 | }); | ||
1644 | d ? n.event.trigger(e, null, b) : n.event.dispatch.call(b, e), e.isDefaultPrevented() && c.preventDefault() | ||
1645 | } | ||
1646 | }, n.removeEvent = z.removeEventListener ? function(a, b, c) { | ||
1647 | a.removeEventListener && a.removeEventListener(b, c, !1) | ||
1648 | } : function(a, b, c) { | ||
1649 | var d = "on" + b; | ||
1650 | a.detachEvent && (typeof a[d] === L && (a[d] = null), a.detachEvent(d, c)) | ||
1651 | }, n.Event = function(a, b) { | ||
1652 | return this instanceof n.Event ? (a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || void 0 === a.defaultPrevented && (a.returnValue === !1 || a.getPreventDefault && a.getPreventDefault()) ? bb : cb) : this.type = a, b && n.extend(this, b), this.timeStamp = a && a.timeStamp || n.now(), void(this[n.expando] = !0)) : new n.Event(a, b) | ||
1653 | }, n.Event.prototype = { | ||
1654 | isDefaultPrevented: cb, | ||
1655 | isPropagationStopped: cb, | ||
1656 | isImmediatePropagationStopped: cb, | ||
1657 | preventDefault: function() { | ||
1658 | var a = this.originalEvent; | ||
1659 | this.isDefaultPrevented = bb, a && (a.preventDefault ? a.preventDefault() : a.returnValue = !1) | ||
1660 | }, | ||
1661 | stopPropagation: function() { | ||
1662 | var a = this.originalEvent; | ||
1663 | this.isPropagationStopped = bb, a && (a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0) | ||
1664 | }, | ||
1665 | stopImmediatePropagation: function() { | ||
1666 | this.isImmediatePropagationStopped = bb, this.stopPropagation() | ||
1667 | } | ||
1668 | }, n.each({ | ||
1669 | mouseenter: "mouseover", | ||
1670 | mouseleave: "mouseout" | ||
1671 | }, function(a, b) { | ||
1672 | n.event.special[a] = { | ||
1673 | delegateType: b, | ||
1674 | bindType: b, | ||
1675 | handle: function(a) { | ||
1676 | var c, d = this, | ||
1677 | e = a.relatedTarget, | ||
1678 | f = a.handleObj; | ||
1679 | return (!e || e !== d && !n.contains(d, e)) && (a.type = f.origType, c = f.handler.apply(this, arguments), a.type = b), c | ||
1680 | } | ||
1681 | } | ||
1682 | }), l.submitBubbles || (n.event.special.submit = { | ||
1683 | setup: function() { | ||
1684 | return n.nodeName(this, "form") ? !1 : void n.event.add(this, "click._submit keypress._submit", function(a) { | ||
1685 | var b = a.target, | ||
1686 | c = n.nodeName(b, "input") || n.nodeName(b, "button") ? b.form : void 0; | ||
1687 | c && !n._data(c, "submitBubbles") && (n.event.add(c, "submit._submit", function(a) { | ||
1688 | a._submit_bubble = !0 | ||
1689 | }), n._data(c, "submitBubbles", !0)) | ||
1690 | }) | ||
1691 | }, | ||
1692 | postDispatch: function(a) { | ||
1693 | a._submit_bubble && (delete a._submit_bubble, this.parentNode && !a.isTrigger && n.event.simulate("submit", this.parentNode, a, !0)) | ||
1694 | }, | ||
1695 | teardown: function() { | ||
1696 | return n.nodeName(this, "form") ? !1 : void n.event.remove(this, "._submit") | ||
1697 | } | ||
1698 | }), l.changeBubbles || (n.event.special.change = { | ||
1699 | setup: function() { | ||
1700 | return Y.test(this.nodeName) ? (("checkbox" === this.type || "radio" === this.type) && (n.event.add(this, "propertychange._change", function(a) { | ||
1701 | "checked" === a.originalEvent.propertyName && (this._just_changed = !0) | ||
1702 | }), n.event.add(this, "click._change", function(a) { | ||
1703 | this._just_changed && !a.isTrigger && (this._just_changed = !1), n.event.simulate("change", this, a, !0) | ||
1704 | })), !1) : void n.event.add(this, "beforeactivate._change", function(a) { | ||
1705 | var b = a.target; | ||
1706 | Y.test(b.nodeName) && !n._data(b, "changeBubbles") && (n.event.add(b, "change._change", function(a) { | ||
1707 | !this.parentNode || a.isSimulated || a.isTrigger || n.event.simulate("change", this.parentNode, a, !0) | ||
1708 | }), n._data(b, "changeBubbles", !0)) | ||
1709 | }) | ||
1710 | }, | ||
1711 | handle: function(a) { | ||
1712 | var b = a.target; | ||
1713 | return this !== b || a.isSimulated || a.isTrigger || "radio" !== b.type && "checkbox" !== b.type ? a.handleObj.handler.apply(this, arguments) : void 0 | ||
1714 | }, | ||
1715 | teardown: function() { | ||
1716 | return n.event.remove(this, "._change"), !Y.test(this.nodeName) | ||
1717 | } | ||
1718 | }), l.focusinBubbles || n.each({ | ||
1719 | focus: "focusin", | ||
1720 | blur: "focusout" | ||
1721 | }, function(a, b) { | ||
1722 | var c = function(a) { | ||
1723 | n.event.simulate(b, a.target, n.event.fix(a), !0) | ||
1724 | }; | ||
1725 | n.event.special[b] = { | ||
1726 | setup: function() { | ||
1727 | var d = this.ownerDocument || this, | ||
1728 | e = n._data(d, b); | ||
1729 | e || d.addEventListener(a, c, !0), n._data(d, b, (e || 0) + 1) | ||
1730 | }, | ||
1731 | teardown: function() { | ||
1732 | var d = this.ownerDocument || this, | ||
1733 | e = n._data(d, b) - 1; | ||
1734 | e ? n._data(d, b, e) : (d.removeEventListener(a, c, !0), n._removeData(d, b)) | ||
1735 | } | ||
1736 | } | ||
1737 | }), n.fn.extend({ | ||
1738 | on: function(a, b, c, d, e) { | ||
1739 | var f, g; | ||
1740 | if ("object" == typeof a) { | ||
1741 | "string" != typeof b && (c = c || b, b = void 0); | ||
1742 | for (f in a) this.on(f, b, c, a[f], e); | ||
1743 | return this | ||
1744 | } | ||
1745 | if (null == c && null == d ? (d = b, c = b = void 0) : null == d && ("string" == typeof b ? (d = c, c = void 0) : (d = c, c = b, b = void 0)), d === !1) d = cb; | ||
1746 | else if (!d) return this; | ||
1747 | return 1 === e && (g = d, d = function(a) { | ||
1748 | return n().off(a), g.apply(this, arguments) | ||
1749 | }, d.guid = g.guid || (g.guid = n.guid++)), this.each(function() { | ||
1750 | n.event.add(this, a, d, c, b) | ||
1751 | }) | ||
1752 | }, | ||
1753 | one: function(a, b, c, d) { | ||
1754 | return this.on(a, b, c, d, 1) | ||
1755 | }, | ||
1756 | off: function(a, b, c) { | ||
1757 | var d, e; | ||
1758 | if (a && a.preventDefault && a.handleObj) return d = a.handleObj, n(a.delegateTarget).off(d.namespace ? d.origType + "." + d.namespace : d.origType, d.selector, d.handler), this; | ||
1759 | if ("object" == typeof a) { | ||
1760 | for (e in a) this.off(e, b, a[e]); | ||
1761 | return this | ||
1762 | } | ||
1763 | return (b === !1 || "function" == typeof b) && (c = b, b = void 0), c === !1 && (c = cb), this.each(function() { | ||
1764 | n.event.remove(this, a, c, b) | ||
1765 | }) | ||
1766 | }, | ||
1767 | trigger: function(a, b) { | ||
1768 | return this.each(function() { | ||
1769 | n.event.trigger(a, b, this) | ||
1770 | }) | ||
1771 | }, | ||
1772 | triggerHandler: function(a, b) { | ||
1773 | var c = this[0]; | ||
1774 | return c ? n.event.trigger(a, b, c, !0) : void 0 | ||
1775 | } | ||
1776 | }); | ||
1777 | |||
1778 | function eb(a) { | ||
1779 | var b = fb.split("|"), | ||
1780 | c = a.createDocumentFragment(); | ||
1781 | if (c.createElement) | ||
1782 | while (b.length) c.createElement(b.pop()); | ||
1783 | return c | ||
1784 | } | ||
1785 | var fb = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", | ||
1786 | gb = / jQuery\d+="(?:null|\d+)"/g, | ||
1787 | hb = new RegExp("<(?:" + fb + ")[\\s/>]", "i"), | ||
1788 | ib = /^\s+/, | ||
1789 | jb = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, | ||
1790 | kb = /<([\w:]+)/, | ||
1791 | lb = /<tbody/i, | ||
1792 | mb = /<|&#?\w+;/, | ||
1793 | nb = /<(?:script|style|link)/i, | ||
1794 | ob = /checked\s*(?:[^=]|=\s*.checked.)/i, | ||
1795 | pb = /^$|\/(?:java|ecma)script/i, | ||
1796 | qb = /^true\/(.*)/, | ||
1797 | rb = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g, | ||
1798 | sb = { | ||
1799 | option: [1, "<select multiple='multiple'>", "</select>"], | ||
1800 | legend: [1, "<fieldset>", "</fieldset>"], | ||
1801 | area: [1, "<map>", "</map>"], | ||
1802 | param: [1, "<object>", "</object>"], | ||
1803 | thead: [1, "<table>", "</table>"], | ||
1804 | tr: [2, "<table><tbody>", "</tbody></table>"], | ||
1805 | col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"], | ||
1806 | td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], | ||
1807 | _default: l.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"] | ||
1808 | }, | ||
1809 | tb = eb(z), | ||
1810 | ub = tb.appendChild(z.createElement("div")); | ||
1811 | sb.optgroup = sb.option, sb.tbody = sb.tfoot = sb.colgroup = sb.caption = sb.thead, sb.th = sb.td; | ||
1812 | |||
1813 | function vb(a, b) { | ||
1814 | var c, d, e = 0, | ||
1815 | f = typeof a.getElementsByTagName !== L ? a.getElementsByTagName(b || "*") : typeof a.querySelectorAll !== L ? a.querySelectorAll(b || "*") : void 0; | ||
1816 | if (!f) | ||
1817 | for (f = [], c = a.childNodes || a; null != (d = c[e]); e++)!b || n.nodeName(d, b) ? f.push(d) : n.merge(f, vb(d, b)); | ||
1818 | return void 0 === b || b && n.nodeName(a, b) ? n.merge([a], f) : f | ||
1819 | } | ||
1820 | |||
1821 | function wb(a) { | ||
1822 | X.test(a.type) && (a.defaultChecked = a.checked) | ||
1823 | } | ||
1824 | |||
1825 | function xb(a, b) { | ||
1826 | return n.nodeName(a, "table") && n.nodeName(11 !== b.nodeType ? b : b.firstChild, "tr") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a | ||
1827 | } | ||
1828 | |||
1829 | function yb(a) { | ||
1830 | return a.type = (null !== n.find.attr(a, "type")) + "/" + a.type, a | ||
1831 | } | ||
1832 | |||
1833 | function zb(a) { | ||
1834 | var b = qb.exec(a.type); | ||
1835 | return b ? a.type = b[1] : a.removeAttribute("type"), a | ||
1836 | } | ||
1837 | |||
1838 | function Ab(a, b) { | ||
1839 | for (var c, d = 0; null != (c = a[d]); d++) n._data(c, "globalEval", !b || n._data(b[d], "globalEval")) | ||
1840 | } | ||
1841 | |||
1842 | function Bb(a, b) { | ||
1843 | if (1 === b.nodeType && n.hasData(a)) { | ||
1844 | var c, d, e, f = n._data(a), | ||
1845 | g = n._data(b, f), | ||
1846 | h = f.events; | ||
1847 | if (h) { | ||
1848 | delete g.handle, g.events = {}; | ||
1849 | for (c in h) | ||
1850 | for (d = 0, e = h[c].length; e > d; d++) n.event.add(b, c, h[c][d]) | ||
1851 | } | ||
1852 | g.data && (g.data = n.extend({}, g.data)) | ||
1853 | } | ||
1854 | } | ||
1855 | |||
1856 | function Cb(a, b) { | ||
1857 | var c, d, e; | ||
1858 | if (1 === b.nodeType) { | ||
1859 | if (c = b.nodeName.toLowerCase(), !l.noCloneEvent && b[n.expando]) { | ||
1860 | e = n._data(b); | ||
1861 | for (d in e.events) n.removeEvent(b, d, e.handle); | ||
1862 | b.removeAttribute(n.expando) | ||
1863 | } | ||
1864 | "script" === c && b.text !== a.text ? (yb(b).text = a.text, zb(b)) : "object" === c ? (b.parentNode && (b.outerHTML = a.outerHTML), l.html5Clone && a.innerHTML && !n.trim(b.innerHTML) && (b.innerHTML = a.innerHTML)) : "input" === c && X.test(a.type) ? (b.defaultChecked = b.checked = a.checked, b.value !== a.value && (b.value = a.value)) : "option" === c ? b.defaultSelected = b.selected = a.defaultSelected : ("input" === c || "textarea" === c) && (b.defaultValue = a.defaultValue) | ||
1865 | } | ||
1866 | } | ||
1867 | n.extend({ | ||
1868 | clone: function(a, b, c) { | ||
1869 | var d, e, f, g, h, i = n.contains(a.ownerDocument, a); | ||
1870 | if (l.html5Clone || n.isXMLDoc(a) || !hb.test("<" + a.nodeName + ">") ? f = a.cloneNode(!0) : (ub.innerHTML = a.outerHTML, ub.removeChild(f = ub.firstChild)), !(l.noCloneEvent && l.noCloneChecked || 1 !== a.nodeType && 11 !== a.nodeType || n.isXMLDoc(a))) | ||
1871 | for (d = vb(f), h = vb(a), g = 0; null != (e = h[g]); ++g) d[g] && Cb(e, d[g]); | ||
1872 | if (b) | ||
1873 | if (c) | ||
1874 | for (h = h || vb(a), d = d || vb(f), g = 0; null != (e = h[g]); g++) Bb(e, d[g]); | ||
1875 | else Bb(a, f); | ||
1876 | return d = vb(f, "script"), d.length > 0 && Ab(d, !i && vb(a, "script")), d = h = e = null, f | ||
1877 | }, | ||
1878 | buildFragment: function(a, b, c, d) { | ||
1879 | for (var e, f, g, h, i, j, k, m = a.length, o = eb(b), p = [], q = 0; m > q; q++) | ||
1880 | if (f = a[q], f || 0 === f) | ||
1881 | if ("object" === n.type(f)) n.merge(p, f.nodeType ? [f] : f); | ||
1882 | else if (mb.test(f)) { | ||
1883 | h = h || o.appendChild(b.createElement("div")), i = (kb.exec(f) || ["", ""])[1].toLowerCase(), k = sb[i] || sb._default, h.innerHTML = k[1] + f.replace(jb, "<$1></$2>") + k[2], e = k[0]; | ||
1884 | while (e--) h = h.lastChild; | ||
1885 | if (!l.leadingWhitespace && ib.test(f) && p.push(b.createTextNode(ib.exec(f)[0])), !l.tbody) { | ||
1886 | f = "table" !== i || lb.test(f) ? "<table>" !== k[1] || lb.test(f) ? 0 : h : h.firstChild, e = f && f.childNodes.length; | ||
1887 | while (e--) n.nodeName(j = f.childNodes[e], "tbody") && !j.childNodes.length && f.removeChild(j) | ||
1888 | } | ||
1889 | n.merge(p, h.childNodes), h.textContent = ""; | ||
1890 | while (h.firstChild) h.removeChild(h.firstChild); | ||
1891 | h = o.lastChild | ||
1892 | } else p.push(b.createTextNode(f)); | ||
1893 | h && o.removeChild(h), l.appendChecked || n.grep(vb(p, "input"), wb), q = 0; | ||
1894 | while (f = p[q++]) | ||
1895 | if ((!d || -1 === n.inArray(f, d)) && (g = n.contains(f.ownerDocument, f), h = vb(o.appendChild(f), "script"), g && Ab(h), c)) { | ||
1896 | e = 0; | ||
1897 | while (f = h[e++]) pb.test(f.type || "") && c.push(f) | ||
1898 | } | ||
1899 | return h = null, o | ||
1900 | }, | ||
1901 | cleanData: function(a, b) { | ||
1902 | for (var d, e, f, g, h = 0, i = n.expando, j = n.cache, k = l.deleteExpando, m = n.event.special; null != (d = a[h]); h++) | ||
1903 | if ((b || n.acceptData(d)) && (f = d[i], g = f && j[f])) { | ||
1904 | if (g.events) | ||
1905 | for (e in g.events) m[e] ? n.event.remove(d, e) : n.removeEvent(d, e, g.handle); | ||
1906 | j[f] && (delete j[f], k ? delete d[i] : typeof d.removeAttribute !== L ? d.removeAttribute(i) : d[i] = null, c.push(f)) | ||
1907 | } | ||
1908 | } | ||
1909 | }), n.fn.extend({ | ||
1910 | text: function(a) { | ||
1911 | return W(this, function(a) { | ||
1912 | return void 0 === a ? n.text(this) : this.empty().append((this[0] && this[0].ownerDocument || z).createTextNode(a)) | ||
1913 | }, null, a, arguments.length) | ||
1914 | }, | ||
1915 | append: function() { | ||
1916 | return this.domManip(arguments, function(a) { | ||
1917 | if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { | ||
1918 | var b = xb(this, a); | ||
1919 | b.appendChild(a) | ||
1920 | } | ||
1921 | }) | ||
1922 | }, | ||
1923 | prepend: function() { | ||
1924 | return this.domManip(arguments, function(a) { | ||
1925 | if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { | ||
1926 | var b = xb(this, a); | ||
1927 | b.insertBefore(a, b.firstChild) | ||
1928 | } | ||
1929 | }) | ||
1930 | }, | ||
1931 | before: function() { | ||
1932 | return this.domManip(arguments, function(a) { | ||
1933 | this.parentNode && this.parentNode.insertBefore(a, this) | ||
1934 | }) | ||
1935 | }, | ||
1936 | after: function() { | ||
1937 | return this.domManip(arguments, function(a) { | ||
1938 | this.parentNode && this.parentNode.insertBefore(a, this.nextSibling) | ||
1939 | }) | ||
1940 | }, | ||
1941 | remove: function(a, b) { | ||
1942 | for (var c, d = a ? n.filter(a, this) : this, e = 0; null != (c = d[e]); e++) b || 1 !== c.nodeType || n.cleanData(vb(c)), c.parentNode && (b && n.contains(c.ownerDocument, c) && Ab(vb(c, "script")), c.parentNode.removeChild(c)); | ||
1943 | return this | ||
1944 | }, | ||
1945 | empty: function() { | ||
1946 | for (var a, b = 0; null != (a = this[b]); b++) { | ||
1947 | 1 === a.nodeType && n.cleanData(vb(a, !1)); | ||
1948 | while (a.firstChild) a.removeChild(a.firstChild); | ||
1949 | a.options && n.nodeName(a, "select") && (a.options.length = 0) | ||
1950 | } | ||
1951 | return this | ||
1952 | }, | ||
1953 | clone: function(a, b) { | ||
1954 | return a = null == a ? !1 : a, b = null == b ? a : b, this.map(function() { | ||
1955 | return n.clone(this, a, b) | ||
1956 | }) | ||
1957 | }, | ||
1958 | html: function(a) { | ||
1959 | return W(this, function(a) { | ||
1960 | var b = this[0] || {}, | ||
1961 | c = 0, | ||
1962 | d = this.length; | ||
1963 | if (void 0 === a) return 1 === b.nodeType ? b.innerHTML.replace(gb, "") : void 0; | ||
1964 | if (!("string" != typeof a || nb.test(a) || !l.htmlSerialize && hb.test(a) || !l.leadingWhitespace && ib.test(a) || sb[(kb.exec(a) || ["", ""])[1].toLowerCase()])) { | ||
1965 | a = a.replace(jb, "<$1></$2>"); | ||
1966 | try { | ||
1967 | for (; d > c; c++) b = this[c] || {}, 1 === b.nodeType && (n.cleanData(vb(b, !1)), b.innerHTML = a); | ||
1968 | b = 0 | ||
1969 | } catch (e) {} | ||
1970 | } | ||
1971 | b && this.empty().append(a) | ||
1972 | }, null, a, arguments.length) | ||
1973 | }, | ||
1974 | replaceWith: function() { | ||
1975 | var a = arguments[0]; | ||
1976 | return this.domManip(arguments, function(b) { | ||
1977 | a = this.parentNode, n.cleanData(vb(this)), a && a.replaceChild(b, this) | ||
1978 | }), a && (a.length || a.nodeType) ? this : this.remove() | ||
1979 | }, | ||
1980 | detach: function(a) { | ||
1981 | return this.remove(a, !0) | ||
1982 | }, | ||
1983 | domManip: function(a, b) { | ||
1984 | a = e.apply([], a); | ||
1985 | var c, d, f, g, h, i, j = 0, | ||
1986 | k = this.length, | ||
1987 | m = this, | ||
1988 | o = k - 1, | ||
1989 | p = a[0], | ||
1990 | q = n.isFunction(p); | ||
1991 | if (q || k > 1 && "string" == typeof p && !l.checkClone && ob.test(p)) return this.each(function(c) { | ||
1992 | var d = m.eq(c); | ||
1993 | q && (a[0] = p.call(this, c, d.html())), d.domManip(a, b) | ||
1994 | }); | ||
1995 | if (k && (i = n.buildFragment(a, this[0].ownerDocument, !1, this), c = i.firstChild, 1 === i.childNodes.length && (i = c), c)) { | ||
1996 | for (g = n.map(vb(i, "script"), yb), f = g.length; k > j; j++) d = i, j !== o && (d = n.clone(d, !0, !0), f && n.merge(g, vb(d, "script"))), b.call(this[j], d, j); | ||
1997 | if (f) | ||
1998 | for (h = g[g.length - 1].ownerDocument, n.map(g, zb), j = 0; f > j; j++) d = g[j], pb.test(d.type || "") && !n._data(d, "globalEval") && n.contains(h, d) && (d.src ? n._evalUrl && n._evalUrl(d.src) : n.globalEval((d.text || d.textContent || d.innerHTML || "").replace(rb, ""))); | ||
1999 | i = c = null | ||
2000 | } | ||
2001 | return this | ||
2002 | } | ||
2003 | }), n.each({ | ||
2004 | appendTo: "append", | ||
2005 | prependTo: "prepend", | ||
2006 | insertBefore: "before", | ||
2007 | insertAfter: "after", | ||
2008 | replaceAll: "replaceWith" | ||
2009 | }, function(a, b) { | ||
2010 | n.fn[a] = function(a) { | ||
2011 | for (var c, d = 0, e = [], g = n(a), h = g.length - 1; h >= d; d++) c = d === h ? this : this.clone(!0), n(g[d])[b](c), f.apply(e, c.get()); | ||
2012 | return this.pushStack(e) | ||
2013 | } | ||
2014 | }); | ||
2015 | var Db, Eb = {}; | ||
2016 | |||
2017 | function Fb(b, c) { | ||
2018 | var d = n(c.createElement(b)).appendTo(c.body), | ||
2019 | e = a.getDefaultComputedStyle ? a.getDefaultComputedStyle(d[0]).display : n.css(d[0], "display"); | ||
2020 | return d.detach(), e | ||
2021 | } | ||
2022 | |||
2023 | function Gb(a) { | ||
2024 | var b = z, | ||
2025 | c = Eb[a]; | ||
2026 | return c || (c = Fb(a, b), "none" !== c && c || (Db = (Db || n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement), b = (Db[0].contentWindow || Db[0].contentDocument).document, b.write(), b.close(), c = Fb(a, b), Db.detach()), Eb[a] = c), c | ||
2027 | }! function() { | ||
2028 | var a, b, c = z.createElement("div"), | ||
2029 | d = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;padding:0;margin:0;border:0"; | ||
2030 | c.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", a = c.getElementsByTagName("a")[0], a.style.cssText = "float:left;opacity:.5", l.opacity = /^0.5/.test(a.style.opacity), l.cssFloat = !!a.style.cssFloat, c.style.backgroundClip = "content-box", c.cloneNode(!0).style.backgroundClip = "", l.clearCloneStyle = "content-box" === c.style.backgroundClip, a = c = null, l.shrinkWrapBlocks = function() { | ||
2031 | var a, c, e, f; | ||
2032 | if (null == b) { | ||
2033 | if (a = z.getElementsByTagName("body")[0], !a) return; | ||
2034 | f = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px", c = z.createElement("div"), e = z.createElement("div"), a.appendChild(c).appendChild(e), b = !1, typeof e.style.zoom !== L && (e.style.cssText = d + ";width:1px;padding:1px;zoom:1", e.innerHTML = "<div></div>", e.firstChild.style.width = "5px", b = 3 !== e.offsetWidth), a.removeChild(c), a = c = e = null | ||
2035 | } | ||
2036 | return b | ||
2037 | } | ||
2038 | }(); | ||
2039 | var Hb = /^margin/, | ||
2040 | Ib = new RegExp("^(" + T + ")(?!px)[a-z%]+$", "i"), | ||
2041 | Jb, Kb, Lb = /^(top|right|bottom|left)$/; | ||
2042 | a.getComputedStyle ? (Jb = function(a) { | ||
2043 | return a.ownerDocument.defaultView.getComputedStyle(a, null) | ||
2044 | }, Kb = function(a, b, c) { | ||
2045 | var d, e, f, g, h = a.style; | ||
2046 | return c = c || Jb(a), g = c ? c.getPropertyValue(b) || c[b] : void 0, c && ("" !== g || n.contains(a.ownerDocument, a) || (g = n.style(a, b)), Ib.test(g) && Hb.test(b) && (d = h.width, e = h.minWidth, f = h.maxWidth, h.minWidth = h.maxWidth = h.width = g, g = c.width, h.width = d, h.minWidth = e, h.maxWidth = f)), void 0 === g ? g : g + "" | ||
2047 | }) : z.documentElement.currentStyle && (Jb = function(a) { | ||
2048 | return a.currentStyle | ||
2049 | }, Kb = function(a, b, c) { | ||
2050 | var d, e, f, g, h = a.style; | ||
2051 | return c = c || Jb(a), g = c ? c[b] : void 0, null == g && h && h[b] && (g = h[b]), Ib.test(g) && !Lb.test(b) && (d = h.left, e = a.runtimeStyle, f = e && e.left, f && (e.left = a.currentStyle.left), h.left = "fontSize" === b ? "1em" : g, g = h.pixelLeft + "px", h.left = d, f && (e.left = f)), void 0 === g ? g : g + "" || "auto" | ||
2052 | }); | ||
2053 | |||
2054 | function Mb(a, b) { | ||
2055 | return { | ||
2056 | get: function() { | ||
2057 | var c = a(); | ||
2058 | if (null != c) return c ? void delete this.get : (this.get = b).apply(this, arguments) | ||
2059 | } | ||
2060 | } | ||
2061 | }! function() { | ||
2062 | var b, c, d, e, f, g, h = z.createElement("div"), | ||
2063 | i = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px", | ||
2064 | j = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;padding:0;margin:0;border:0"; | ||
2065 | h.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", b = h.getElementsByTagName("a")[0], b.style.cssText = "float:left;opacity:.5", l.opacity = /^0.5/.test(b.style.opacity), l.cssFloat = !!b.style.cssFloat, h.style.backgroundClip = "content-box", h.cloneNode(!0).style.backgroundClip = "", l.clearCloneStyle = "content-box" === h.style.backgroundClip, b = h = null, n.extend(l, { | ||
2066 | reliableHiddenOffsets: function() { | ||
2067 | if (null != c) return c; | ||
2068 | var a, b, d, e = z.createElement("div"), | ||
2069 | f = z.getElementsByTagName("body")[0]; | ||
2070 | if (f) return e.setAttribute("className", "t"), e.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", a = z.createElement("div"), a.style.cssText = i, f.appendChild(a).appendChild(e), e.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", b = e.getElementsByTagName("td"), b[0].style.cssText = "padding:0;margin:0;border:0;display:none", d = 0 === b[0].offsetHeight, b[0].style.display = "", b[1].style.display = "none", c = d && 0 === b[0].offsetHeight, f.removeChild(a), e = f = null, c | ||
2071 | }, | ||
2072 | boxSizing: function() { | ||
2073 | return null == d && k(), d | ||
2074 | }, | ||
2075 | boxSizingReliable: function() { | ||
2076 | return null == e && k(), e | ||
2077 | }, | ||
2078 | pixelPosition: function() { | ||
2079 | return null == f && k(), f | ||
2080 | }, | ||
2081 | reliableMarginRight: function() { | ||
2082 | var b, c, d, e; | ||
2083 | if (null == g && a.getComputedStyle) { | ||
2084 | if (b = z.getElementsByTagName("body")[0], !b) return; | ||
2085 | c = z.createElement("div"), d = z.createElement("div"), c.style.cssText = i, b.appendChild(c).appendChild(d), e = d.appendChild(z.createElement("div")), e.style.cssText = d.style.cssText = j, e.style.marginRight = e.style.width = "0", d.style.width = "1px", g = !parseFloat((a.getComputedStyle(e, null) || {}).marginRight), b.removeChild(c) | ||
2086 | } | ||
2087 | return g | ||
2088 | } | ||
2089 | }); | ||
2090 | |||
2091 | function k() { | ||
2092 | var b, c, h = z.getElementsByTagName("body")[0]; | ||
2093 | h && (b = z.createElement("div"), c = z.createElement("div"), b.style.cssText = i, h.appendChild(b).appendChild(c), c.style.cssText = "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;display:block;padding:1px;border:1px;width:4px;margin-top:1%;top:1%", n.swap(h, null != h.style.zoom ? { | ||
2094 | zoom: 1 | ||
2095 | } : {}, function() { | ||
2096 | d = 4 === c.offsetWidth | ||
2097 | }), e = !0, f = !1, g = !0, a.getComputedStyle && (f = "1%" !== (a.getComputedStyle(c, null) || {}).top, e = "4px" === (a.getComputedStyle(c, null) || { | ||
2098 | width: "4px" | ||
2099 | }).width), h.removeChild(b), c = h = null) | ||
2100 | } | ||
2101 | }(), n.swap = function(a, b, c, d) { | ||
2102 | var e, f, g = {}; | ||
2103 | for (f in b) g[f] = a.style[f], a.style[f] = b[f]; | ||
2104 | e = c.apply(a, d || []); | ||
2105 | for (f in b) a.style[f] = g[f]; | ||
2106 | return e | ||
2107 | }; | ||
2108 | var Nb = /alpha\([^)]*\)/i, | ||
2109 | Ob = /opacity\s*=\s*([^)]*)/, | ||
2110 | Pb = /^(none|table(?!-c[ea]).+)/, | ||
2111 | Qb = new RegExp("^(" + T + ")(.*)$", "i"), | ||
2112 | Rb = new RegExp("^([+-])=(" + T + ")", "i"), | ||
2113 | Sb = { | ||
2114 | position: "absolute", | ||
2115 | visibility: "hidden", | ||
2116 | display: "block" | ||
2117 | }, | ||
2118 | Tb = { | ||
2119 | letterSpacing: 0, | ||
2120 | fontWeight: 400 | ||
2121 | }, | ||
2122 | Ub = ["Webkit", "O", "Moz", "ms"]; | ||
2123 | |||
2124 | function Vb(a, b) { | ||
2125 | if (b in a) return b; | ||
2126 | var c = b.charAt(0).toUpperCase() + b.slice(1), | ||
2127 | d = b, | ||
2128 | e = Ub.length; | ||
2129 | while (e--) | ||
2130 | if (b = Ub[e] + c, b in a) return b; | ||
2131 | return d | ||
2132 | } | ||
2133 | |||
2134 | function Wb(a, b) { | ||
2135 | for (var c, d, e, f = [], g = 0, h = a.length; h > g; g++) d = a[g], d.style && (f[g] = n._data(d, "olddisplay"), c = d.style.display, b ? (f[g] || "none" !== c || (d.style.display = ""), "" === d.style.display && V(d) && (f[g] = n._data(d, "olddisplay", Gb(d.nodeName)))) : f[g] || (e = V(d), (c && "none" !== c || !e) && n._data(d, "olddisplay", e ? c : n.css(d, "display")))); | ||
2136 | for (g = 0; h > g; g++) d = a[g], d.style && (b && "none" !== d.style.display && "" !== d.style.display || (d.style.display = b ? f[g] || "" : "none")); | ||
2137 | return a | ||
2138 | } | ||
2139 | |||
2140 | function Xb(a, b, c) { | ||
2141 | var d = Qb.exec(b); | ||
2142 | return d ? Math.max(0, d[1] - (c || 0)) + (d[2] || "px") : b | ||
2143 | } | ||
2144 | |||
2145 | function Yb(a, b, c, d, e) { | ||
2146 | for (var f = c === (d ? "border" : "content") ? 4 : "width" === b ? 1 : 0, g = 0; 4 > f; f += 2) "margin" === c && (g += n.css(a, c + U[f], !0, e)), d ? ("content" === c && (g -= n.css(a, "padding" + U[f], !0, e)), "margin" !== c && (g -= n.css(a, "border" + U[f] + "Width", !0, e))) : (g += n.css(a, "padding" + U[f], !0, e), "padding" !== c && (g += n.css(a, "border" + U[f] + "Width", !0, e))); | ||
2147 | return g | ||
2148 | } | ||
2149 | |||
2150 | function Zb(a, b, c) { | ||
2151 | var d = !0, | ||
2152 | e = "width" === b ? a.offsetWidth : a.offsetHeight, | ||
2153 | f = Jb(a), | ||
2154 | g = l.boxSizing() && "border-box" === n.css(a, "boxSizing", !1, f); | ||
2155 | if (0 >= e || null == e) { | ||
2156 | if (e = Kb(a, b, f), (0 > e || null == e) && (e = a.style[b]), Ib.test(e)) return e; | ||
2157 | d = g && (l.boxSizingReliable() || e === a.style[b]), e = parseFloat(e) || 0 | ||
2158 | } | ||
2159 | return e + Yb(a, b, c || (g ? "border" : "content"), d, f) + "px" | ||
2160 | } | ||
2161 | n.extend({ | ||
2162 | cssHooks: { | ||
2163 | opacity: { | ||
2164 | get: function(a, b) { | ||
2165 | if (b) { | ||
2166 | var c = Kb(a, "opacity"); | ||
2167 | return "" === c ? "1" : c | ||
2168 | } | ||
2169 | } | ||
2170 | } | ||
2171 | }, | ||
2172 | cssNumber: { | ||
2173 | columnCount: !0, | ||
2174 | fillOpacity: !0, | ||
2175 | fontWeight: !0, | ||
2176 | lineHeight: !0, | ||
2177 | opacity: !0, | ||
2178 | order: !0, | ||
2179 | orphans: !0, | ||
2180 | widows: !0, | ||
2181 | zIndex: !0, | ||
2182 | zoom: !0 | ||
2183 | }, | ||
2184 | cssProps: { | ||
2185 | "float": l.cssFloat ? "cssFloat" : "styleFloat" | ||
2186 | }, | ||
2187 | style: function(a, b, c, d) { | ||
2188 | if (a && 3 !== a.nodeType && 8 !== a.nodeType && a.style) { | ||
2189 | var e, f, g, h = n.camelCase(b), | ||
2190 | i = a.style; | ||
2191 | if (b = n.cssProps[h] || (n.cssProps[h] = Vb(i, h)), g = n.cssHooks[b] || n.cssHooks[h], void 0 === c) return g && "get" in g && void 0 !== (e = g.get(a, !1, d)) ? e : i[b]; | ||
2192 | if (f = typeof c, "string" === f && (e = Rb.exec(c)) && (c = (e[1] + 1) * e[2] + parseFloat(n.css(a, b)), f = "number"), null != c && c === c && ("number" !== f || n.cssNumber[h] || (c += "px"), l.clearCloneStyle || "" !== c || 0 !== b.indexOf("background") || (i[b] = "inherit"), !(g && "set" in g && void 0 === (c = g.set(a, c, d))))) try { | ||
2193 | i[b] = "", i[b] = c | ||
2194 | } catch (j) {} | ||
2195 | } | ||
2196 | }, | ||
2197 | css: function(a, b, c, d) { | ||
2198 | var e, f, g, h = n.camelCase(b); | ||
2199 | return b = n.cssProps[h] || (n.cssProps[h] = Vb(a.style, h)), g = n.cssHooks[b] || n.cssHooks[h], g && "get" in g && (f = g.get(a, !0, c)), void 0 === f && (f = Kb(a, b, d)), "normal" === f && b in Tb && (f = Tb[b]), "" === c || c ? (e = parseFloat(f), c === !0 || n.isNumeric(e) ? e || 0 : f) : f | ||
2200 | } | ||
2201 | }), n.each(["height", "width"], function(a, b) { | ||
2202 | n.cssHooks[b] = { | ||
2203 | get: function(a, c, d) { | ||
2204 | return c ? 0 === a.offsetWidth && Pb.test(n.css(a, "display")) ? n.swap(a, Sb, function() { | ||
2205 | return Zb(a, b, d) | ||
2206 | }) : Zb(a, b, d) : void 0 | ||
2207 | }, | ||
2208 | set: function(a, c, d) { | ||
2209 | var e = d && Jb(a); | ||
2210 | return Xb(a, c, d ? Yb(a, b, d, l.boxSizing() && "border-box" === n.css(a, "boxSizing", !1, e), e) : 0) | ||
2211 | } | ||
2212 | } | ||
2213 | }), l.opacity || (n.cssHooks.opacity = { | ||
2214 | get: function(a, b) { | ||
2215 | return Ob.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : b ? "1" : "" | ||
2216 | }, | ||
2217 | set: function(a, b) { | ||
2218 | var c = a.style, | ||
2219 | d = a.currentStyle, | ||
2220 | e = n.isNumeric(b) ? "alpha(opacity=" + 100 * b + ")" : "", | ||
2221 | f = d && d.filter || c.filter || ""; | ||
2222 | c.zoom = 1, (b >= 1 || "" === b) && "" === n.trim(f.replace(Nb, "")) && c.removeAttribute && (c.removeAttribute("filter"), "" === b || d && !d.filter) || (c.filter = Nb.test(f) ? f.replace(Nb, e) : f + " " + e) | ||
2223 | } | ||
2224 | }), n.cssHooks.marginRight = Mb(l.reliableMarginRight, function(a, b) { | ||
2225 | return b ? n.swap(a, { | ||
2226 | display: "inline-block" | ||
2227 | }, Kb, [a, "marginRight"]) : void 0 | ||
2228 | }), n.each({ | ||
2229 | margin: "", | ||
2230 | padding: "", | ||
2231 | border: "Width" | ||
2232 | }, function(a, b) { | ||
2233 | n.cssHooks[a + b] = { | ||
2234 | expand: function(c) { | ||
2235 | for (var d = 0, e = {}, f = "string" == typeof c ? c.split(" ") : [c]; 4 > d; d++) e[a + U[d] + b] = f[d] || f[d - 2] || f[0]; | ||
2236 | return e | ||
2237 | } | ||
2238 | }, Hb.test(a) || (n.cssHooks[a + b].set = Xb) | ||
2239 | }), n.fn.extend({ | ||
2240 | css: function(a, b) { | ||
2241 | return W(this, function(a, b, c) { | ||
2242 | var d, e, f = {}, | ||
2243 | g = 0; | ||
2244 | if (n.isArray(b)) { | ||
2245 | for (d = Jb(a), e = b.length; e > g; g++) f[b[g]] = n.css(a, b[g], !1, d); | ||
2246 | return f | ||
2247 | } | ||
2248 | return void 0 !== c ? n.style(a, b, c) : n.css(a, b) | ||
2249 | }, a, b, arguments.length > 1) | ||
2250 | }, | ||
2251 | show: function() { | ||
2252 | return Wb(this, !0) | ||
2253 | }, | ||
2254 | hide: function() { | ||
2255 | return Wb(this) | ||
2256 | }, | ||
2257 | toggle: function(a) { | ||
2258 | return "boolean" == typeof a ? a ? this.show() : this.hide() : this.each(function() { | ||
2259 | V(this) ? n(this).show() : n(this).hide() | ||
2260 | }) | ||
2261 | } | ||
2262 | }); | ||
2263 | |||
2264 | function $b(a, b, c, d, e) { | ||
2265 | return new $b.prototype.init(a, b, c, d, e) | ||
2266 | } | ||
2267 | n.Tween = $b, $b.prototype = { | ||
2268 | constructor: $b, | ||
2269 | init: function(a, b, c, d, e, f) { | ||
2270 | this.elem = a, this.prop = c, this.easing = e || "swing", this.options = b, this.start = this.now = this.cur(), this.end = d, this.unit = f || (n.cssNumber[c] ? "" : "px") | ||
2271 | }, | ||
2272 | cur: function() { | ||
2273 | var a = $b.propHooks[this.prop]; | ||
2274 | return a && a.get ? a.get(this) : $b.propHooks._default.get(this) | ||
2275 | }, | ||
2276 | run: function(a) { | ||
2277 | var b, c = $b.propHooks[this.prop]; | ||
2278 | return this.pos = b = this.options.duration ? n.easing[this.easing](a, this.options.duration * a, 0, 1, this.options.duration) : a, this.now = (this.end - this.start) * b + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), c && c.set ? c.set(this) : $b.propHooks._default.set(this), this | ||
2279 | } | ||
2280 | }, $b.prototype.init.prototype = $b.prototype, $b.propHooks = { | ||
2281 | _default: { | ||
2282 | get: function(a) { | ||
2283 | var b; | ||
2284 | return null == a.elem[a.prop] || a.elem.style && null != a.elem.style[a.prop] ? (b = n.css(a.elem, a.prop, ""), b && "auto" !== b ? b : 0) : a.elem[a.prop] | ||
2285 | }, | ||
2286 | set: function(a) { | ||
2287 | n.fx.step[a.prop] ? n.fx.step[a.prop](a) : a.elem.style && (null != a.elem.style[n.cssProps[a.prop]] || n.cssHooks[a.prop]) ? n.style(a.elem, a.prop, a.now + a.unit) : a.elem[a.prop] = a.now | ||
2288 | } | ||
2289 | } | ||
2290 | }, $b.propHooks.scrollTop = $b.propHooks.scrollLeft = { | ||
2291 | set: function(a) { | ||
2292 | a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now) | ||
2293 | } | ||
2294 | }, n.easing = { | ||
2295 | linear: function(a) { | ||
2296 | return a | ||
2297 | }, | ||
2298 | swing: function(a) { | ||
2299 | return .5 - Math.cos(a * Math.PI) / 2 | ||
2300 | } | ||
2301 | }, n.fx = $b.prototype.init, n.fx.step = {}; | ||
2302 | var _b, ac, bc = /^(?:toggle|show|hide)$/, | ||
2303 | cc = new RegExp("^(?:([+-])=|)(" + T + ")([a-z%]*)$", "i"), | ||
2304 | dc = /queueHooks$/, | ||
2305 | ec = [jc], | ||
2306 | fc = { | ||
2307 | "*": [ | ||
2308 | function(a, b) { | ||
2309 | var c = this.createTween(a, b), | ||
2310 | d = c.cur(), | ||
2311 | e = cc.exec(b), | ||
2312 | f = e && e[3] || (n.cssNumber[a] ? "" : "px"), | ||
2313 | g = (n.cssNumber[a] || "px" !== f && +d) && cc.exec(n.css(c.elem, a)), | ||
2314 | h = 1, | ||
2315 | i = 20; | ||
2316 | if (g && g[3] !== f) { | ||
2317 | f = f || g[3], e = e || [], g = +d || 1; | ||
2318 | do h = h || ".5", g /= h, n.style(c.elem, a, g + f); while (h !== (h = c.cur() / d) && 1 !== h && --i) | ||
2319 | } | ||
2320 | return e && (g = c.start = +g || +d || 0, c.unit = f, c.end = e[1] ? g + (e[1] + 1) * e[2] : +e[2]), c | ||
2321 | } | ||
2322 | ] | ||
2323 | }; | ||
2324 | |||
2325 | function gc() { | ||
2326 | return setTimeout(function() { | ||
2327 | _b = void 0 | ||
2328 | }), _b = n.now() | ||
2329 | } | ||
2330 | |||
2331 | function hc(a, b) { | ||
2332 | var c, d = { | ||
2333 | height: a | ||
2334 | }, | ||
2335 | e = 0; | ||
2336 | for (b = b ? 1 : 0; 4 > e; e += 2 - b) c = U[e], d["margin" + c] = d["padding" + c] = a; | ||
2337 | return b && (d.opacity = d.width = a), d | ||
2338 | } | ||
2339 | |||
2340 | function ic(a, b, c) { | ||
2341 | for (var d, e = (fc[b] || []).concat(fc["*"]), f = 0, g = e.length; g > f; f++) | ||
2342 | if (d = e[f].call(c, b, a)) return d | ||
2343 | } | ||
2344 | |||
2345 | function jc(a, b, c) { | ||
2346 | var d, e, f, g, h, i, j, k, m = this, | ||
2347 | o = {}, | ||
2348 | p = a.style, | ||
2349 | q = a.nodeType && V(a), | ||
2350 | r = n._data(a, "fxshow"); | ||
2351 | c.queue || (h = n._queueHooks(a, "fx"), null == h.unqueued && (h.unqueued = 0, i = h.empty.fire, h.empty.fire = function() { | ||
2352 | h.unqueued || i() | ||
2353 | }), h.unqueued++, m.always(function() { | ||
2354 | m.always(function() { | ||
2355 | h.unqueued--, n.queue(a, "fx").length || h.empty.fire() | ||
2356 | }) | ||
2357 | })), 1 === a.nodeType && ("height" in b || "width" in b) && (c.overflow = [p.overflow, p.overflowX, p.overflowY], j = n.css(a, "display"), k = Gb(a.nodeName), "none" === j && (j = k), "inline" === j && "none" === n.css(a, "float") && (l.inlineBlockNeedsLayout && "inline" !== k ? p.zoom = 1 : p.display = "inline-block")), c.overflow && (p.overflow = "hidden", l.shrinkWrapBlocks() || m.always(function() { | ||
2358 | p.overflow = c.overflow[0], p.overflowX = c.overflow[1], p.overflowY = c.overflow[2] | ||
2359 | })); | ||
2360 | for (d in b) | ||
2361 | if (e = b[d], bc.exec(e)) { | ||
2362 | if (delete b[d], f = f || "toggle" === e, e === (q ? "hide" : "show")) { | ||
2363 | if ("show" !== e || !r || void 0 === r[d]) continue; | ||
2364 | q = !0 | ||
2365 | } | ||
2366 | o[d] = r && r[d] || n.style(a, d) | ||
2367 | } | ||
2368 | if (!n.isEmptyObject(o)) { | ||
2369 | r ? "hidden" in r && (q = r.hidden) : r = n._data(a, "fxshow", {}), f && (r.hidden = !q), q ? n(a).show() : m.done(function() { | ||
2370 | n(a).hide() | ||
2371 | }), m.done(function() { | ||
2372 | var b; | ||
2373 | n._removeData(a, "fxshow"); | ||
2374 | for (b in o) n.style(a, b, o[b]) | ||
2375 | }); | ||
2376 | for (d in o) g = ic(q ? r[d] : 0, d, m), d in r || (r[d] = g.start, q && (g.end = g.start, g.start = "width" === d || "height" === d ? 1 : 0)) | ||
2377 | } | ||
2378 | } | ||
2379 | |||
2380 | function kc(a, b) { | ||
2381 | var c, d, e, f, g; | ||
2382 | for (c in a) | ||
2383 | if (d = n.camelCase(c), e = b[d], f = a[c], n.isArray(f) && (e = f[1], f = a[c] = f[0]), c !== d && (a[d] = f, delete a[c]), g = n.cssHooks[d], g && "expand" in g) { | ||
2384 | f = g.expand(f), delete a[d]; | ||
2385 | for (c in f) c in a || (a[c] = f[c], b[c] = e) | ||
2386 | } else b[d] = e | ||
2387 | } | ||
2388 | |||
2389 | function lc(a, b, c) { | ||
2390 | var d, e, f = 0, | ||
2391 | g = ec.length, | ||
2392 | h = n.Deferred().always(function() { | ||
2393 | delete i.elem | ||
2394 | }), | ||
2395 | i = function() { | ||
2396 | if (e) return !1; | ||
2397 | for (var b = _b || gc(), c = Math.max(0, j.startTime + j.duration - b), d = c / j.duration || 0, f = 1 - d, g = 0, i = j.tweens.length; i > g; g++) j.tweens[g].run(f); | ||
2398 | return h.notifyWith(a, [j, f, c]), 1 > f && i ? c : (h.resolveWith(a, [j]), !1) | ||
2399 | }, | ||
2400 | j = h.promise({ | ||
2401 | elem: a, | ||
2402 | props: n.extend({}, b), | ||
2403 | opts: n.extend(!0, { | ||
2404 | specialEasing: {} | ||
2405 | }, c), | ||
2406 | originalProperties: b, | ||
2407 | originalOptions: c, | ||
2408 | startTime: _b || gc(), | ||
2409 | duration: c.duration, | ||
2410 | tweens: [], | ||
2411 | createTween: function(b, c) { | ||
2412 | var d = n.Tween(a, j.opts, b, c, j.opts.specialEasing[b] || j.opts.easing); | ||
2413 | return j.tweens.push(d), d | ||
2414 | }, | ||
2415 | stop: function(b) { | ||
2416 | var c = 0, | ||
2417 | d = b ? j.tweens.length : 0; | ||
2418 | if (e) return this; | ||
2419 | for (e = !0; d > c; c++) j.tweens[c].run(1); | ||
2420 | return b ? h.resolveWith(a, [j, b]) : h.rejectWith(a, [j, b]), this | ||
2421 | } | ||
2422 | }), | ||
2423 | k = j.props; | ||
2424 | for (kc(k, j.opts.specialEasing); g > f; f++) | ||
2425 | if (d = ec[f].call(j, a, k, j.opts)) return d; | ||
2426 | return n.map(k, ic, j), n.isFunction(j.opts.start) && j.opts.start.call(a, j), n.fx.timer(n.extend(i, { | ||
2427 | elem: a, | ||
2428 | anim: j, | ||
2429 | queue: j.opts.queue | ||
2430 | })), j.progress(j.opts.progress).done(j.opts.done, j.opts.complete).fail(j.opts.fail).always(j.opts.always) | ||
2431 | } | ||
2432 | n.Animation = n.extend(lc, { | ||
2433 | tweener: function(a, b) { | ||
2434 | n.isFunction(a) ? (b = a, a = ["*"]) : a = a.split(" "); | ||
2435 | for (var c, d = 0, e = a.length; e > d; d++) c = a[d], fc[c] = fc[c] || [], fc[c].unshift(b) | ||
2436 | }, | ||
2437 | prefilter: function(a, b) { | ||
2438 | b ? ec.unshift(a) : ec.push(a) | ||
2439 | } | ||
2440 | }), n.speed = function(a, b, c) { | ||
2441 | var d = a && "object" == typeof a ? n.extend({}, a) : { | ||
2442 | complete: c || !c && b || n.isFunction(a) && a, | ||
2443 | duration: a, | ||
2444 | easing: c && b || b && !n.isFunction(b) && b | ||
2445 | }; | ||
2446 | return d.duration = n.fx.off ? 0 : "number" == typeof d.duration ? d.duration : d.duration in n.fx.speeds ? n.fx.speeds[d.duration] : n.fx.speeds._default, (null == d.queue || d.queue === !0) && (d.queue = "fx"), d.old = d.complete, d.complete = function() { | ||
2447 | n.isFunction(d.old) && d.old.call(this), d.queue && n.dequeue(this, d.queue) | ||
2448 | }, d | ||
2449 | }, n.fn.extend({ | ||
2450 | fadeTo: function(a, b, c, d) { | ||
2451 | return this.filter(V).css("opacity", 0).show().end().animate({ | ||
2452 | opacity: b | ||
2453 | }, a, c, d) | ||
2454 | }, | ||
2455 | animate: function(a, b, c, d) { | ||
2456 | var e = n.isEmptyObject(a), | ||
2457 | f = n.speed(b, c, d), | ||
2458 | g = function() { | ||
2459 | var b = lc(this, n.extend({}, a), f); | ||
2460 | (e || n._data(this, "finish")) && b.stop(!0) | ||
2461 | }; | ||
2462 | return g.finish = g, e || f.queue === !1 ? this.each(g) : this.queue(f.queue, g) | ||
2463 | }, | ||
2464 | stop: function(a, b, c) { | ||
2465 | var d = function(a) { | ||
2466 | var b = a.stop; | ||
2467 | delete a.stop, b(c) | ||
2468 | }; | ||
2469 | return "string" != typeof a && (c = b, b = a, a = void 0), b && a !== !1 && this.queue(a || "fx", []), this.each(function() { | ||
2470 | var b = !0, | ||
2471 | e = null != a && a + "queueHooks", | ||
2472 | f = n.timers, | ||
2473 | g = n._data(this); | ||
2474 | if (e) g[e] && g[e].stop && d(g[e]); | ||
2475 | else | ||
2476 | for (e in g) g[e] && g[e].stop && dc.test(e) && d(g[e]); | ||
2477 | for (e = f.length; e--;) f[e].elem !== this || null != a && f[e].queue !== a || (f[e].anim.stop(c), b = !1, f.splice(e, 1)); | ||
2478 | (b || !c) && n.dequeue(this, a) | ||
2479 | }) | ||
2480 | }, | ||
2481 | finish: function(a) { | ||
2482 | return a !== !1 && (a = a || "fx"), this.each(function() { | ||
2483 | var b, c = n._data(this), | ||
2484 | d = c[a + "queue"], | ||
2485 | e = c[a + "queueHooks"], | ||
2486 | f = n.timers, | ||
2487 | g = d ? d.length : 0; | ||
2488 | for (c.finish = !0, n.queue(this, a, []), e && e.stop && e.stop.call(this, !0), b = f.length; b--;) f[b].elem === this && f[b].queue === a && (f[b].anim.stop(!0), f.splice(b, 1)); | ||
2489 | for (b = 0; g > b; b++) d[b] && d[b].finish && d[b].finish.call(this); | ||
2490 | delete c.finish | ||
2491 | }) | ||
2492 | } | ||
2493 | }), n.each(["toggle", "show", "hide"], function(a, b) { | ||
2494 | var c = n.fn[b]; | ||
2495 | n.fn[b] = function(a, d, e) { | ||
2496 | return null == a || "boolean" == typeof a ? c.apply(this, arguments) : this.animate(hc(b, !0), a, d, e) | ||
2497 | } | ||
2498 | }), n.each({ | ||
2499 | slideDown: hc("show"), | ||
2500 | slideUp: hc("hide"), | ||
2501 | slideToggle: hc("toggle"), | ||
2502 | fadeIn: { | ||
2503 | opacity: "show" | ||
2504 | }, | ||
2505 | fadeOut: { | ||
2506 | opacity: "hide" | ||
2507 | }, | ||
2508 | fadeToggle: { | ||
2509 | opacity: "toggle" | ||
2510 | } | ||
2511 | }, function(a, b) { | ||
2512 | n.fn[a] = function(a, c, d) { | ||
2513 | return this.animate(b, a, c, d) | ||
2514 | } | ||
2515 | }), n.timers = [], n.fx.tick = function() { | ||
2516 | var a, b = n.timers, | ||
2517 | c = 0; | ||
2518 | for (_b = n.now(); c < b.length; c++) a = b[c], a() || b[c] !== a || b.splice(c--, 1); | ||
2519 | b.length || n.fx.stop(), _b = void 0 | ||
2520 | }, n.fx.timer = function(a) { | ||
2521 | n.timers.push(a), a() ? n.fx.start() : n.timers.pop() | ||
2522 | }, n.fx.interval = 13, n.fx.start = function() { | ||
2523 | ac || (ac = setInterval(n.fx.tick, n.fx.interval)) | ||
2524 | }, n.fx.stop = function() { | ||
2525 | clearInterval(ac), ac = null | ||
2526 | }, n.fx.speeds = { | ||
2527 | slow: 600, | ||
2528 | fast: 200, | ||
2529 | _default: 400 | ||
2530 | }, n.fn.delay = function(a, b) { | ||
2531 | return a = n.fx ? n.fx.speeds[a] || a : a, b = b || "fx", this.queue(b, function(b, c) { | ||
2532 | var d = setTimeout(b, a); | ||
2533 | c.stop = function() { | ||
2534 | clearTimeout(d) | ||
2535 | } | ||
2536 | }) | ||
2537 | }, | ||
2538 | function() { | ||
2539 | var a, b, c, d, e = z.createElement("div"); | ||
2540 | e.setAttribute("className", "t"), e.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", a = e.getElementsByTagName("a")[0], c = z.createElement("select"), d = c.appendChild(z.createElement("option")), b = e.getElementsByTagName("input")[0], a.style.cssText = "top:1px", l.getSetAttribute = "t" !== e.className, l.style = /top/.test(a.getAttribute("style")), l.hrefNormalized = "/a" === a.getAttribute("href"), l.checkOn = !!b.value, l.optSelected = d.selected, l.enctype = !!z.createElement("form").enctype, c.disabled = !0, l.optDisabled = !d.disabled, b = z.createElement("input"), b.setAttribute("value", ""), l.input = "" === b.getAttribute("value"), b.value = "t", b.setAttribute("type", "radio"), l.radioValue = "t" === b.value, a = b = c = d = e = null | ||
2541 | }(); | ||
2542 | var mc = /\r/g; | ||
2543 | n.fn.extend({ | ||
2544 | val: function(a) { | ||
2545 | var b, c, d, e = this[0]; { | ||
2546 | if (arguments.length) return d = n.isFunction(a), this.each(function(c) { | ||
2547 | var e; | ||
2548 | 1 === this.nodeType && (e = d ? a.call(this, c, n(this).val()) : a, null == e ? e = "" : "number" == typeof e ? e += "" : n.isArray(e) && (e = n.map(e, function(a) { | ||
2549 | return null == a ? "" : a + "" | ||
2550 | })), b = n.valHooks[this.type] || n.valHooks[this.nodeName.toLowerCase()], b && "set" in b && void 0 !== b.set(this, e, "value") || (this.value = e)) | ||
2551 | }); | ||
2552 | if (e) return b = n.valHooks[e.type] || n.valHooks[e.nodeName.toLowerCase()], b && "get" in b && void 0 !== (c = b.get(e, "value")) ? c : (c = e.value, "string" == typeof c ? c.replace(mc, "") : null == c ? "" : c) | ||
2553 | } | ||
2554 | } | ||
2555 | }), n.extend({ | ||
2556 | valHooks: { | ||
2557 | option: { | ||
2558 | get: function(a) { | ||
2559 | var b = n.find.attr(a, "value"); | ||
2560 | return null != b ? b : n.text(a) | ||
2561 | } | ||
2562 | }, | ||
2563 | select: { | ||
2564 | get: function(a) { | ||
2565 | for (var b, c, d = a.options, e = a.selectedIndex, f = "select-one" === a.type || 0 > e, g = f ? null : [], h = f ? e + 1 : d.length, i = 0 > e ? h : f ? e : 0; h > i; i++) | ||
2566 | if (c = d[i], !(!c.selected && i !== e || (l.optDisabled ? c.disabled : null !== c.getAttribute("disabled")) || c.parentNode.disabled && n.nodeName(c.parentNode, "optgroup"))) { | ||
2567 | if (b = n(c).val(), f) return b; | ||
2568 | g.push(b) | ||
2569 | } | ||
2570 | return g | ||
2571 | }, | ||
2572 | set: function(a, b) { | ||
2573 | var c, d, e = a.options, | ||
2574 | f = n.makeArray(b), | ||
2575 | g = e.length; | ||
2576 | while (g--) | ||
2577 | if (d = e[g], n.inArray(n.valHooks.option.get(d), f) >= 0) try { | ||
2578 | d.selected = c = !0 | ||
2579 | } catch (h) { | ||
2580 | d.scrollHeight | ||
2581 | } else d.selected = !1; | ||
2582 | return c || (a.selectedIndex = -1), e | ||
2583 | } | ||
2584 | } | ||
2585 | } | ||
2586 | }), n.each(["radio", "checkbox"], function() { | ||
2587 | n.valHooks[this] = { | ||
2588 | set: function(a, b) { | ||
2589 | return n.isArray(b) ? a.checked = n.inArray(n(a).val(), b) >= 0 : void 0 | ||
2590 | } | ||
2591 | }, l.checkOn || (n.valHooks[this].get = function(a) { | ||
2592 | return null === a.getAttribute("value") ? "on" : a.value | ||
2593 | }) | ||
2594 | }); | ||
2595 | var nc, oc, pc = n.expr.attrHandle, | ||
2596 | qc = /^(?:checked|selected)$/i, | ||
2597 | rc = l.getSetAttribute, | ||
2598 | sc = l.input; | ||
2599 | n.fn.extend({ | ||
2600 | attr: function(a, b) { | ||
2601 | return W(this, n.attr, a, b, arguments.length > 1) | ||
2602 | }, | ||
2603 | removeAttr: function(a) { | ||
2604 | return this.each(function() { | ||
2605 | n.removeAttr(this, a) | ||
2606 | }) | ||
2607 | } | ||
2608 | }), n.extend({ | ||
2609 | attr: function(a, b, c) { | ||
2610 | var d, e, f = a.nodeType; | ||
2611 | if (a && 3 !== f && 8 !== f && 2 !== f) return typeof a.getAttribute === L ? n.prop(a, b, c) : (1 === f && n.isXMLDoc(a) || (b = b.toLowerCase(), d = n.attrHooks[b] || (n.expr.match.bool.test(b) ? oc : nc)), void 0 === c ? d && "get" in d && null !== (e = d.get(a, b)) ? e : (e = n.find.attr(a, b), null == e ? void 0 : e) : null !== c ? d && "set" in d && void 0 !== (e = d.set(a, c, b)) ? e : (a.setAttribute(b, c + ""), c) : void n.removeAttr(a, b)) | ||
2612 | }, | ||
2613 | removeAttr: function(a, b) { | ||
2614 | var c, d, e = 0, | ||
2615 | f = b && b.match(F); | ||
2616 | if (f && 1 === a.nodeType) | ||
2617 | while (c = f[e++]) d = n.propFix[c] || c, n.expr.match.bool.test(c) ? sc && rc || !qc.test(c) ? a[d] = !1 : a[n.camelCase("default-" + c)] = a[d] = !1 : n.attr(a, c, ""), a.removeAttribute(rc ? c : d) | ||
2618 | }, | ||
2619 | attrHooks: { | ||
2620 | type: { | ||
2621 | set: function(a, b) { | ||
2622 | if (!l.radioValue && "radio" === b && n.nodeName(a, "input")) { | ||
2623 | var c = a.value; | ||
2624 | return a.setAttribute("type", b), c && (a.value = c), b | ||
2625 | } | ||
2626 | } | ||
2627 | } | ||
2628 | } | ||
2629 | }), oc = { | ||
2630 | set: function(a, b, c) { | ||
2631 | return b === !1 ? n.removeAttr(a, c) : sc && rc || !qc.test(c) ? a.setAttribute(!rc && n.propFix[c] || c, c) : a[n.camelCase("default-" + c)] = a[c] = !0, c | ||
2632 | } | ||
2633 | }, n.each(n.expr.match.bool.source.match(/\w+/g), function(a, b) { | ||
2634 | var c = pc[b] || n.find.attr; | ||
2635 | pc[b] = sc && rc || !qc.test(b) ? function(a, b, d) { | ||
2636 | var e, f; | ||
2637 | return d || (f = pc[b], pc[b] = e, e = null != c(a, b, d) ? b.toLowerCase() : null, pc[b] = f), e | ||
2638 | } : function(a, b, c) { | ||
2639 | return c ? void 0 : a[n.camelCase("default-" + b)] ? b.toLowerCase() : null | ||
2640 | } | ||
2641 | }), sc && rc || (n.attrHooks.value = { | ||
2642 | set: function(a, b, c) { | ||
2643 | return n.nodeName(a, "input") ? void(a.defaultValue = b) : nc && nc.set(a, b, c) | ||
2644 | } | ||
2645 | }), rc || (nc = { | ||
2646 | set: function(a, b, c) { | ||
2647 | var d = a.getAttributeNode(c); | ||
2648 | return d || a.setAttributeNode(d = a.ownerDocument.createAttribute(c)), d.value = b += "", "value" === c || b === a.getAttribute(c) ? b : void 0 | ||
2649 | } | ||
2650 | }, pc.id = pc.name = pc.coords = function(a, b, c) { | ||
2651 | var d; | ||
2652 | return c ? void 0 : (d = a.getAttributeNode(b)) && "" !== d.value ? d.value : null | ||
2653 | }, n.valHooks.button = { | ||
2654 | get: function(a, b) { | ||
2655 | var c = a.getAttributeNode(b); | ||
2656 | return c && c.specified ? c.value : void 0 | ||
2657 | }, | ||
2658 | set: nc.set | ||
2659 | }, n.attrHooks.contenteditable = { | ||
2660 | set: function(a, b, c) { | ||
2661 | nc.set(a, "" === b ? !1 : b, c) | ||
2662 | } | ||
2663 | }, n.each(["width", "height"], function(a, b) { | ||
2664 | n.attrHooks[b] = { | ||
2665 | set: function(a, c) { | ||
2666 | return "" === c ? (a.setAttribute(b, "auto"), c) : void 0 | ||
2667 | } | ||
2668 | } | ||
2669 | })), l.style || (n.attrHooks.style = { | ||
2670 | get: function(a) { | ||
2671 | return a.style.cssText || void 0 | ||
2672 | }, | ||
2673 | set: function(a, b) { | ||
2674 | return a.style.cssText = b + "" | ||
2675 | } | ||
2676 | }); | ||
2677 | var tc = /^(?:input|select|textarea|button|object)$/i, | ||
2678 | uc = /^(?:a|area)$/i; | ||
2679 | n.fn.extend({ | ||
2680 | prop: function(a, b) { | ||
2681 | return W(this, n.prop, a, b, arguments.length > 1) | ||
2682 | }, | ||
2683 | removeProp: function(a) { | ||
2684 | return a = n.propFix[a] || a, this.each(function() { | ||
2685 | try { | ||
2686 | this[a] = void 0, delete this[a] | ||
2687 | } catch (b) {} | ||
2688 | }) | ||
2689 | } | ||
2690 | }), n.extend({ | ||
2691 | propFix: { | ||
2692 | "for": "htmlFor", | ||
2693 | "class": "className" | ||
2694 | }, | ||
2695 | prop: function(a, b, c) { | ||
2696 | var d, e, f, g = a.nodeType; | ||
2697 | if (a && 3 !== g && 8 !== g && 2 !== g) return f = 1 !== g || !n.isXMLDoc(a), f && (b = n.propFix[b] || b, e = n.propHooks[b]), void 0 !== c ? e && "set" in e && void 0 !== (d = e.set(a, c, b)) ? d : a[b] = c : e && "get" in e && null !== (d = e.get(a, b)) ? d : a[b] | ||
2698 | }, | ||
2699 | propHooks: { | ||
2700 | tabIndex: { | ||
2701 | get: function(a) { | ||
2702 | var b = n.find.attr(a, "tabindex"); | ||
2703 | return b ? parseInt(b, 10) : tc.test(a.nodeName) || uc.test(a.nodeName) && a.href ? 0 : -1 | ||
2704 | } | ||
2705 | } | ||
2706 | } | ||
2707 | }), l.hrefNormalized || n.each(["href", "src"], function(a, b) { | ||
2708 | n.propHooks[b] = { | ||
2709 | get: function(a) { | ||
2710 | return a.getAttribute(b, 4) | ||
2711 | } | ||
2712 | } | ||
2713 | }), l.optSelected || (n.propHooks.selected = { | ||
2714 | get: function(a) { | ||
2715 | var b = a.parentNode; | ||
2716 | return b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex), null | ||
2717 | } | ||
2718 | }), n.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function() { | ||
2719 | n.propFix[this.toLowerCase()] = this | ||
2720 | }), l.enctype || (n.propFix.enctype = "encoding"); | ||
2721 | var vc = /[\t\r\n\f]/g; | ||
2722 | n.fn.extend({ | ||
2723 | addClass: function(a) { | ||
2724 | var b, c, d, e, f, g, h = 0, | ||
2725 | i = this.length, | ||
2726 | j = "string" == typeof a && a; | ||
2727 | if (n.isFunction(a)) return this.each(function(b) { | ||
2728 | n(this).addClass(a.call(this, b, this.className)) | ||
2729 | }); | ||
2730 | if (j) | ||
2731 | for (b = (a || "").match(F) || []; i > h; h++) | ||
2732 | if (c = this[h], d = 1 === c.nodeType && (c.className ? (" " + c.className + " ").replace(vc, " ") : " ")) { | ||
2733 | f = 0; | ||
2734 | while (e = b[f++]) d.indexOf(" " + e + " ") < 0 && (d += e + " "); | ||
2735 | g = n.trim(d), c.className !== g && (c.className = g) | ||
2736 | } | ||
2737 | return this | ||
2738 | }, | ||
2739 | removeClass: function(a) { | ||
2740 | var b, c, d, e, f, g, h = 0, | ||
2741 | i = this.length, | ||
2742 | j = 0 === arguments.length || "string" == typeof a && a; | ||
2743 | if (n.isFunction(a)) return this.each(function(b) { | ||
2744 | n(this).removeClass(a.call(this, b, this.className)) | ||
2745 | }); | ||
2746 | if (j) | ||
2747 | for (b = (a || "").match(F) || []; i > h; h++) | ||
2748 | if (c = this[h], d = 1 === c.nodeType && (c.className ? (" " + c.className + " ").replace(vc, " ") : "")) { | ||
2749 | f = 0; | ||
2750 | while (e = b[f++]) | ||
2751 | while (d.indexOf(" " + e + " ") >= 0) d = d.replace(" " + e + " ", " "); | ||
2752 | g = a ? n.trim(d) : "", c.className !== g && (c.className = g) | ||
2753 | } | ||
2754 | return this | ||
2755 | }, | ||
2756 | toggleClass: function(a, b) { | ||
2757 | var c = typeof a; | ||
2758 | return "boolean" == typeof b && "string" === c ? b ? this.addClass(a) : this.removeClass(a) : this.each(n.isFunction(a) ? function(c) { | ||
2759 | n(this).toggleClass(a.call(this, c, this.className, b), b) | ||
2760 | } : function() { | ||
2761 | if ("string" === c) { | ||
2762 | var b, d = 0, | ||
2763 | e = n(this), | ||
2764 | f = a.match(F) || []; | ||
2765 | while (b = f[d++]) e.hasClass(b) ? e.removeClass(b) : e.addClass(b) | ||
2766 | } else(c === L || "boolean" === c) && (this.className && n._data(this, "__className__", this.className), this.className = this.className || a === !1 ? "" : n._data(this, "__className__") || "") | ||
2767 | }) | ||
2768 | }, | ||
2769 | hasClass: function(a) { | ||
2770 | for (var b = " " + a + " ", c = 0, d = this.length; d > c; c++) | ||
2771 | if (1 === this[c].nodeType && (" " + this[c].className + " ").replace(vc, " ").indexOf(b) >= 0) return !0; | ||
2772 | return !1 | ||
2773 | } | ||
2774 | }), n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function(a, b) { | ||
2775 | n.fn[b] = function(a, c) { | ||
2776 | return arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b) | ||
2777 | } | ||
2778 | }), n.fn.extend({ | ||
2779 | hover: function(a, b) { | ||
2780 | return this.mouseenter(a).mouseleave(b || a) | ||
2781 | }, | ||
2782 | bind: function(a, b, c) { | ||
2783 | return this.on(a, null, b, c) | ||
2784 | }, | ||
2785 | unbind: function(a, b) { | ||
2786 | return this.off(a, null, b) | ||
2787 | }, | ||
2788 | delegate: function(a, b, c, d) { | ||
2789 | return this.on(b, a, c, d) | ||
2790 | }, | ||
2791 | undelegate: function(a, b, c) { | ||
2792 | return 1 === arguments.length ? this.off(a, "**") : this.off(b, a || "**", c) | ||
2793 | } | ||
2794 | }); | ||
2795 | var wc = n.now(), | ||
2796 | xc = /\?/, | ||
2797 | yc = /(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g; | ||
2798 | n.parseJSON = function(b) { | ||
2799 | if (a.JSON && a.JSON.parse) return a.JSON.parse(b + ""); | ||
2800 | var c, d = null, | ||
2801 | e = n.trim(b + ""); | ||
2802 | return e && !n.trim(e.replace(yc, function(a, b, e, f) { | ||
2803 | return c && b && (d = 0), 0 === d ? a : (c = e || b, d += !f - !e, "") | ||
2804 | })) ? Function("return " + e)() : n.error("Invalid JSON: " + b) | ||
2805 | }, n.parseXML = function(b) { | ||
2806 | var c, d; | ||
2807 | if (!b || "string" != typeof b) return null; | ||
2808 | try { | ||
2809 | a.DOMParser ? (d = new DOMParser, c = d.parseFromString(b, "text/xml")) : (c = new ActiveXObject("Microsoft.XMLDOM"), c.async = "false", c.loadXML(b)) | ||
2810 | } catch (e) { | ||
2811 | c = void 0 | ||
2812 | } | ||
2813 | return c && c.documentElement && !c.getElementsByTagName("parsererror").length || n.error("Invalid XML: " + b), c | ||
2814 | }; | ||
2815 | var zc, Ac, Bc = /#.*$/, | ||
2816 | Cc = /([?&])_=[^&]*/, | ||
2817 | Dc = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm, | ||
2818 | Ec = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, | ||
2819 | Fc = /^(?:GET|HEAD)$/, | ||
2820 | Gc = /^\/\//, | ||
2821 | Hc = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/, | ||
2822 | Ic = {}, | ||
2823 | Jc = {}, | ||
2824 | Kc = "*/".concat("*"); | ||
2825 | try { | ||
2826 | Ac = location.href | ||
2827 | } catch (Lc) { | ||
2828 | Ac = z.createElement("a"), Ac.href = "", Ac = Ac.href | ||
2829 | } | ||
2830 | zc = Hc.exec(Ac.toLowerCase()) || []; | ||
2831 | |||
2832 | function Mc(a) { | ||
2833 | return function(b, c) { | ||
2834 | "string" != typeof b && (c = b, b = "*"); | ||
2835 | var d, e = 0, | ||
2836 | f = b.toLowerCase().match(F) || []; | ||
2837 | if (n.isFunction(c)) | ||
2838 | while (d = f[e++]) "+" === d.charAt(0) ? (d = d.slice(1) || "*", (a[d] = a[d] || []).unshift(c)) : (a[d] = a[d] || []).push(c) | ||
2839 | } | ||
2840 | } | ||
2841 | |||
2842 | function Nc(a, b, c, d) { | ||
2843 | var e = {}, | ||
2844 | f = a === Jc; | ||
2845 | |||
2846 | function g(h) { | ||
2847 | var i; | ||
2848 | return e[h] = !0, n.each(a[h] || [], function(a, h) { | ||
2849 | var j = h(b, c, d); | ||
2850 | return "string" != typeof j || f || e[j] ? f ? !(i = j) : void 0 : (b.dataTypes.unshift(j), g(j), !1) | ||
2851 | }), i | ||
2852 | } | ||
2853 | return g(b.dataTypes[0]) || !e["*"] && g("*") | ||
2854 | } | ||
2855 | |||
2856 | function Oc(a, b) { | ||
2857 | var c, d, e = n.ajaxSettings.flatOptions || {}; | ||
2858 | for (d in b) void 0 !== b[d] && ((e[d] ? a : c || (c = {}))[d] = b[d]); | ||
2859 | return c && n.extend(!0, a, c), a | ||
2860 | } | ||
2861 | |||
2862 | function Pc(a, b, c) { | ||
2863 | var d, e, f, g, h = a.contents, | ||
2864 | i = a.dataTypes; | ||
2865 | while ("*" === i[0]) i.shift(), void 0 === e && (e = a.mimeType || b.getResponseHeader("Content-Type")); | ||
2866 | if (e) | ||
2867 | for (g in h) | ||
2868 | if (h[g] && h[g].test(e)) { | ||
2869 | i.unshift(g); | ||
2870 | break | ||
2871 | } | ||
2872 | if (i[0] in c) f = i[0]; | ||
2873 | else { | ||
2874 | for (g in c) { | ||
2875 | if (!i[0] || a.converters[g + " " + i[0]]) { | ||
2876 | f = g; | ||
2877 | break | ||
2878 | } | ||
2879 | d || (d = g) | ||
2880 | } | ||
2881 | f = f || d | ||
2882 | } | ||
2883 | return f ? (f !== i[0] && i.unshift(f), c[f]) : void 0 | ||
2884 | } | ||
2885 | |||
2886 | function Qc(a, b, c, d) { | ||
2887 | var e, f, g, h, i, j = {}, | ||
2888 | k = a.dataTypes.slice(); | ||
2889 | if (k[1]) | ||
2890 | for (g in a.converters) j[g.toLowerCase()] = a.converters[g]; | ||
2891 | f = k.shift(); | ||
2892 | while (f) | ||
2893 | if (a.responseFields[f] && (c[a.responseFields[f]] = b), !i && d && a.dataFilter && (b = a.dataFilter(b, a.dataType)), i = f, f = k.shift()) | ||
2894 | if ("*" === f) f = i; | ||
2895 | else if ("*" !== i && i !== f) { | ||
2896 | if (g = j[i + " " + f] || j["* " + f], !g) | ||
2897 | for (e in j) | ||
2898 | if (h = e.split(" "), h[1] === f && (g = j[i + " " + h[0]] || j["* " + h[0]])) { | ||
2899 | g === !0 ? g = j[e] : j[e] !== !0 && (f = h[0], k.unshift(h[1])); | ||
2900 | break | ||
2901 | } | ||
2902 | if (g !== !0) | ||
2903 | if (g && a["throws"]) b = g(b); | ||
2904 | else try { | ||
2905 | b = g(b) | ||
2906 | } catch (l) { | ||
2907 | return { | ||
2908 | state: "parsererror", | ||
2909 | error: g ? l : "No conversion from " + i + " to " + f | ||
2910 | } | ||
2911 | } | ||
2912 | } | ||
2913 | return { | ||
2914 | state: "success", | ||
2915 | data: b | ||
2916 | } | ||
2917 | } | ||
2918 | n.extend({ | ||
2919 | active: 0, | ||
2920 | lastModified: {}, | ||
2921 | etag: {}, | ||
2922 | ajaxSettings: { | ||
2923 | url: Ac, | ||
2924 | type: "GET", | ||
2925 | isLocal: Ec.test(zc[1]), | ||
2926 | global: !0, | ||
2927 | processData: !0, | ||
2928 | async: !0, | ||
2929 | contentType: "application/x-www-form-urlencoded; charset=UTF-8", | ||
2930 | accepts: { | ||
2931 | "*": Kc, | ||
2932 | text: "text/plain", | ||
2933 | html: "text/html", | ||
2934 | xml: "application/xml, text/xml", | ||
2935 | json: "application/json, text/javascript" | ||
2936 | }, | ||
2937 | contents: { | ||
2938 | xml: /xml/, | ||
2939 | html: /html/, | ||
2940 | json: /json/ | ||
2941 | }, | ||
2942 | responseFields: { | ||
2943 | xml: "responseXML", | ||
2944 | text: "responseText", | ||
2945 | json: "responseJSON" | ||
2946 | }, | ||
2947 | converters: { | ||
2948 | "* text": String, | ||
2949 | "text html": !0, | ||
2950 | "text json": n.parseJSON, | ||
2951 | "text xml": n.parseXML | ||
2952 | }, | ||
2953 | flatOptions: { | ||
2954 | url: !0, | ||
2955 | context: !0 | ||
2956 | } | ||
2957 | }, | ||
2958 | ajaxSetup: function(a, b) { | ||
2959 | return b ? Oc(Oc(a, n.ajaxSettings), b) : Oc(n.ajaxSettings, a) | ||
2960 | }, | ||
2961 | ajaxPrefilter: Mc(Ic), | ||
2962 | ajaxTransport: Mc(Jc), | ||
2963 | ajax: function(a, b) { | ||
2964 | "object" == typeof a && (b = a, a = void 0), b = b || {}; | ||
2965 | var c, d, e, f, g, h, i, j, k = n.ajaxSetup({}, b), | ||
2966 | l = k.context || k, | ||
2967 | m = k.context && (l.nodeType || l.jquery) ? n(l) : n.event, | ||
2968 | o = n.Deferred(), | ||
2969 | p = n.Callbacks("once memory"), | ||
2970 | q = k.statusCode || {}, | ||
2971 | r = {}, | ||
2972 | s = {}, | ||
2973 | t = 0, | ||
2974 | u = "canceled", | ||
2975 | v = { | ||
2976 | readyState: 0, | ||
2977 | getResponseHeader: function(a) { | ||
2978 | var b; | ||
2979 | if (2 === t) { | ||
2980 | if (!j) { | ||
2981 | j = {}; | ||
2982 | while (b = Dc.exec(f)) j[b[1].toLowerCase()] = b[2] | ||
2983 | } | ||
2984 | b = j[a.toLowerCase()] | ||
2985 | } | ||
2986 | return null == b ? null : b | ||
2987 | }, | ||
2988 | getAllResponseHeaders: function() { | ||
2989 | return 2 === t ? f : null | ||
2990 | }, | ||
2991 | setRequestHeader: function(a, b) { | ||
2992 | var c = a.toLowerCase(); | ||
2993 | return t || (a = s[c] = s[c] || a, r[a] = b), this | ||
2994 | }, | ||
2995 | overrideMimeType: function(a) { | ||
2996 | return t || (k.mimeType = a), this | ||
2997 | }, | ||
2998 | statusCode: function(a) { | ||
2999 | var b; | ||
3000 | if (a) | ||
3001 | if (2 > t) | ||
3002 | for (b in a) q[b] = [q[b], a[b]]; | ||
3003 | else v.always(a[v.status]); | ||
3004 | return this | ||
3005 | }, | ||
3006 | abort: function(a) { | ||
3007 | var b = a || u; | ||
3008 | return i && i.abort(b), x(0, b), this | ||
3009 | } | ||
3010 | }; | ||
3011 | if (o.promise(v).complete = p.add, v.success = v.done, v.error = v.fail, k.url = ((a || k.url || Ac) + "").replace(Bc, "").replace(Gc, zc[1] + "//"), k.type = b.method || b.type || k.method || k.type, k.dataTypes = n.trim(k.dataType || "*").toLowerCase().match(F) || [""], null == k.crossDomain && (c = Hc.exec(k.url.toLowerCase()), k.crossDomain = !(!c || c[1] === zc[1] && c[2] === zc[2] && (c[3] || ("http:" === c[1] ? "80" : "443")) === (zc[3] || ("http:" === zc[1] ? "80" : "443")))), k.data && k.processData && "string" != typeof k.data && (k.data = n.param(k.data, k.traditional)), Nc(Ic, k, b, v), 2 === t) return v; | ||
3012 | h = k.global, h && 0 === n.active++ && n.event.trigger("ajaxStart"), k.type = k.type.toUpperCase(), k.hasContent = !Fc.test(k.type), e = k.url, k.hasContent || (k.data && (e = k.url += (xc.test(e) ? "&" : "?") + k.data, delete k.data), k.cache === !1 && (k.url = Cc.test(e) ? e.replace(Cc, "$1_=" + wc++) : e + (xc.test(e) ? "&" : "?") + "_=" + wc++)), k.ifModified && (n.lastModified[e] && v.setRequestHeader("If-Modified-Since", n.lastModified[e]), n.etag[e] && v.setRequestHeader("If-None-Match", n.etag[e])), (k.data && k.hasContent && k.contentType !== !1 || b.contentType) && v.setRequestHeader("Content-Type", k.contentType), v.setRequestHeader("Accept", k.dataTypes[0] && k.accepts[k.dataTypes[0]] ? k.accepts[k.dataTypes[0]] + ("*" !== k.dataTypes[0] ? ", " + Kc + "; q=0.01" : "") : k.accepts["*"]); | ||
3013 | for (d in k.headers) v.setRequestHeader(d, k.headers[d]); | ||
3014 | if (k.beforeSend && (k.beforeSend.call(l, v, k) === !1 || 2 === t)) return v.abort(); | ||
3015 | u = "abort"; | ||
3016 | for (d in { | ||
3017 | success: 1, | ||
3018 | error: 1, | ||
3019 | complete: 1 | ||
3020 | }) v[d](k[d]); | ||
3021 | if (i = Nc(Jc, k, b, v)) { | ||
3022 | v.readyState = 1, h && m.trigger("ajaxSend", [v, k]), k.async && k.timeout > 0 && (g = setTimeout(function() { | ||
3023 | v.abort("timeout") | ||
3024 | }, k.timeout)); | ||
3025 | try { | ||
3026 | t = 1, i.send(r, x) | ||
3027 | } catch (w) { | ||
3028 | if (!(2 > t)) throw w; | ||
3029 | x(-1, w) | ||
3030 | } | ||
3031 | } else x(-1, "No Transport"); | ||
3032 | |||
3033 | function x(a, b, c, d) { | ||
3034 | var j, r, s, u, w, x = b; | ||
3035 | 2 !== t && (t = 2, g && clearTimeout(g), i = void 0, f = d || "", v.readyState = a > 0 ? 4 : 0, j = a >= 200 && 300 > a || 304 === a, c && (u = Pc(k, v, c)), u = Qc(k, u, v, j), j ? (k.ifModified && (w = v.getResponseHeader("Last-Modified"), w && (n.lastModified[e] = w), w = v.getResponseHeader("etag"), w && (n.etag[e] = w)), 204 === a || "HEAD" === k.type ? x = "nocontent" : 304 === a ? x = "notmodified" : (x = u.state, r = u.data, s = u.error, j = !s)) : (s = x, (a || !x) && (x = "error", 0 > a && (a = 0))), v.status = a, v.statusText = (b || x) + "", j ? o.resolveWith(l, [r, x, v]) : o.rejectWith(l, [v, x, s]), v.statusCode(q), q = void 0, h && m.trigger(j ? "ajaxSuccess" : "ajaxError", [v, k, j ? r : s]), p.fireWith(l, [v, x]), h && (m.trigger("ajaxComplete", [v, k]), --n.active || n.event.trigger("ajaxStop"))) | ||
3036 | } | ||
3037 | return v | ||
3038 | }, | ||
3039 | getJSON: function(a, b, c) { | ||
3040 | return n.get(a, b, c, "json") | ||
3041 | }, | ||
3042 | getScript: function(a, b) { | ||
3043 | return n.get(a, void 0, b, "script") | ||
3044 | } | ||
3045 | }), n.each(["get", "post"], function(a, b) { | ||
3046 | n[b] = function(a, c, d, e) { | ||
3047 | return n.isFunction(c) && (e = e || d, d = c, c = void 0), n.ajax({ | ||
3048 | url: a, | ||
3049 | type: b, | ||
3050 | dataType: e, | ||
3051 | data: c, | ||
3052 | success: d | ||
3053 | }) | ||
3054 | } | ||
3055 | }), n.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function(a, b) { | ||
3056 | n.fn[b] = function(a) { | ||
3057 | return this.on(b, a) | ||
3058 | } | ||
3059 | }), n._evalUrl = function(a) { | ||
3060 | return n.ajax({ | ||
3061 | url: a, | ||
3062 | type: "GET", | ||
3063 | dataType: "script", | ||
3064 | async: !1, | ||
3065 | global: !1, | ||
3066 | "throws": !0 | ||
3067 | }) | ||
3068 | }, n.fn.extend({ | ||
3069 | wrapAll: function(a) { | ||
3070 | if (n.isFunction(a)) return this.each(function(b) { | ||
3071 | n(this).wrapAll(a.call(this, b)) | ||
3072 | }); | ||
3073 | if (this[0]) { | ||
3074 | var b = n(a, this[0].ownerDocument).eq(0).clone(!0); | ||
3075 | this[0].parentNode && b.insertBefore(this[0]), b.map(function() { | ||
3076 | var a = this; | ||
3077 | while (a.firstChild && 1 === a.firstChild.nodeType) a = a.firstChild; | ||
3078 | return a | ||
3079 | }).append(this) | ||
3080 | } | ||
3081 | return this | ||
3082 | }, | ||
3083 | wrapInner: function(a) { | ||
3084 | return this.each(n.isFunction(a) ? function(b) { | ||
3085 | n(this).wrapInner(a.call(this, b)) | ||
3086 | } : function() { | ||
3087 | var b = n(this), | ||
3088 | c = b.contents(); | ||
3089 | c.length ? c.wrapAll(a) : b.append(a) | ||
3090 | }) | ||
3091 | }, | ||
3092 | wrap: function(a) { | ||
3093 | var b = n.isFunction(a); | ||
3094 | return this.each(function(c) { | ||
3095 | n(this).wrapAll(b ? a.call(this, c) : a) | ||
3096 | }) | ||
3097 | }, | ||
3098 | unwrap: function() { | ||
3099 | return this.parent().each(function() { | ||
3100 | n.nodeName(this, "body") || n(this).replaceWith(this.childNodes) | ||
3101 | }).end() | ||
3102 | } | ||
3103 | }), n.expr.filters.hidden = function(a) { | ||
3104 | return a.offsetWidth <= 0 && a.offsetHeight <= 0 || !l.reliableHiddenOffsets() && "none" === (a.style && a.style.display || n.css(a, "display")) | ||
3105 | }, n.expr.filters.visible = function(a) { | ||
3106 | return !n.expr.filters.hidden(a) | ||
3107 | }; | ||
3108 | var Rc = /%20/g, | ||
3109 | Sc = /\[\]$/, | ||
3110 | Tc = /\r?\n/g, | ||
3111 | Uc = /^(?:submit|button|image|reset|file)$/i, | ||
3112 | Vc = /^(?:input|select|textarea|keygen)/i; | ||
3113 | |||
3114 | function Wc(a, b, c, d) { | ||
3115 | var e; | ||
3116 | if (n.isArray(b)) n.each(b, function(b, e) { | ||
3117 | c || Sc.test(a) ? d(a, e) : Wc(a + "[" + ("object" == typeof e ? b : "") + "]", e, c, d) | ||
3118 | }); | ||
3119 | else if (c || "object" !== n.type(b)) d(a, b); | ||
3120 | else | ||
3121 | for (e in b) Wc(a + "[" + e + "]", b[e], c, d) | ||
3122 | } | ||
3123 | n.param = function(a, b) { | ||
3124 | var c, d = [], | ||
3125 | e = function(a, b) { | ||
3126 | b = n.isFunction(b) ? b() : null == b ? "" : b, d[d.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b) | ||
3127 | }; | ||
3128 | if (void 0 === b && (b = n.ajaxSettings && n.ajaxSettings.traditional), n.isArray(a) || a.jquery && !n.isPlainObject(a)) n.each(a, function() { | ||
3129 | e(this.name, this.value) | ||
3130 | }); | ||
3131 | else | ||
3132 | for (c in a) Wc(c, a[c], b, e); | ||
3133 | return d.join("&").replace(Rc, "+") | ||
3134 | }, n.fn.extend({ | ||
3135 | serialize: function() { | ||
3136 | return n.param(this.serializeArray()) | ||
3137 | }, | ||
3138 | serializeArray: function() { | ||
3139 | return this.map(function() { | ||
3140 | var a = n.prop(this, "elements"); | ||
3141 | return a ? n.makeArray(a) : this | ||
3142 | }).filter(function() { | ||
3143 | var a = this.type; | ||
3144 | return this.name && !n(this).is(":disabled") && Vc.test(this.nodeName) && !Uc.test(a) && (this.checked || !X.test(a)) | ||
3145 | }).map(function(a, b) { | ||
3146 | var c = n(this).val(); | ||
3147 | return null == c ? null : n.isArray(c) ? n.map(c, function(a) { | ||
3148 | return { | ||
3149 | name: b.name, | ||
3150 | value: a.replace(Tc, "\r\n") | ||
3151 | } | ||
3152 | }) : { | ||
3153 | name: b.name, | ||
3154 | value: c.replace(Tc, "\r\n") | ||
3155 | } | ||
3156 | }).get() | ||
3157 | } | ||
3158 | }), n.ajaxSettings.xhr = void 0 !== a.ActiveXObject ? function() { | ||
3159 | return !this.isLocal && /^(get|post|head|put|delete|options)$/i.test(this.type) && $c() || _c() | ||
3160 | } : $c; | ||
3161 | var Xc = 0, | ||
3162 | Yc = {}, | ||
3163 | Zc = n.ajaxSettings.xhr(); | ||
3164 | a.ActiveXObject && n(a).on("unload", function() { | ||
3165 | for (var a in Yc) Yc[a](void 0, !0) | ||
3166 | }), l.cors = !!Zc && "withCredentials" in Zc, Zc = l.ajax = !!Zc, Zc && n.ajaxTransport(function(a) { | ||
3167 | if (!a.crossDomain || l.cors) { | ||
3168 | var b; | ||
3169 | return { | ||
3170 | send: function(c, d) { | ||
3171 | var e, f = a.xhr(), | ||
3172 | g = ++Xc; | ||
3173 | if (f.open(a.type, a.url, a.async, a.username, a.password), a.xhrFields) | ||
3174 | for (e in a.xhrFields) f[e] = a.xhrFields[e]; | ||
3175 | a.mimeType && f.overrideMimeType && f.overrideMimeType(a.mimeType), a.crossDomain || c["X-Requested-With"] || (c["X-Requested-With"] = "XMLHttpRequest"); | ||
3176 | for (e in c) void 0 !== c[e] && f.setRequestHeader(e, c[e] + ""); | ||
3177 | f.send(a.hasContent && a.data || null), b = function(c, e) { | ||
3178 | var h, i, j; | ||
3179 | if (b && (e || 4 === f.readyState)) | ||
3180 | if (delete Yc[g], b = void 0, f.onreadystatechange = n.noop, e) 4 !== f.readyState && f.abort(); | ||
3181 | else { | ||
3182 | j = {}, h = f.status, "string" == typeof f.responseText && (j.text = f.responseText); | ||
3183 | try { | ||
3184 | i = f.statusText | ||
3185 | } catch (k) { | ||
3186 | i = "" | ||
3187 | } | ||
3188 | h || !a.isLocal || a.crossDomain ? 1223 === h && (h = 204) : h = j.text ? 200 : 404 | ||
3189 | } | ||
3190 | j && d(h, i, j, f.getAllResponseHeaders()) | ||
3191 | }, a.async ? 4 === f.readyState ? setTimeout(b) : f.onreadystatechange = Yc[g] = b : b() | ||
3192 | }, | ||
3193 | abort: function() { | ||
3194 | b && b(void 0, !0) | ||
3195 | } | ||
3196 | } | ||
3197 | } | ||
3198 | }); | ||
3199 | |||
3200 | function $c() { | ||
3201 | try { | ||
3202 | return new a.XMLHttpRequest | ||
3203 | } catch (b) {} | ||
3204 | } | ||
3205 | |||
3206 | function _c() { | ||
3207 | try { | ||
3208 | return new a.ActiveXObject("Microsoft.XMLHTTP") | ||
3209 | } catch (b) {} | ||
3210 | } | ||
3211 | n.ajaxSetup({ | ||
3212 | accepts: { | ||
3213 | script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" | ||
3214 | }, | ||
3215 | contents: { | ||
3216 | script: /(?:java|ecma)script/ | ||
3217 | }, | ||
3218 | converters: { | ||
3219 | "text script": function(a) { | ||
3220 | return n.globalEval(a), a | ||
3221 | } | ||
3222 | } | ||
3223 | }), n.ajaxPrefilter("script", function(a) { | ||
3224 | void 0 === a.cache && (a.cache = !1), a.crossDomain && (a.type = "GET", a.global = !1) | ||
3225 | }), n.ajaxTransport("script", function(a) { | ||
3226 | if (a.crossDomain) { | ||
3227 | var b, c = z.head || n("head")[0] || z.documentElement; | ||
3228 | return { | ||
3229 | send: function(d, e) { | ||
3230 | b = z.createElement("script"), b.async = !0, a.scriptCharset && (b.charset = a.scriptCharset), b.src = a.url, b.onload = b.onreadystatechange = function(a, c) { | ||
3231 | (c || !b.readyState || /loaded|complete/.test(b.readyState)) && (b.onload = b.onreadystatechange = null, b.parentNode && b.parentNode.removeChild(b), b = null, c || e(200, "success")) | ||
3232 | }, c.insertBefore(b, c.firstChild) | ||
3233 | }, | ||
3234 | abort: function() { | ||
3235 | b && b.onload(void 0, !0) | ||
3236 | } | ||
3237 | } | ||
3238 | } | ||
3239 | }); | ||
3240 | var ad = [], | ||
3241 | bd = /(=)\?(?=&|$)|\?\?/; | ||
3242 | n.ajaxSetup({ | ||
3243 | jsonp: "callback", | ||
3244 | jsonpCallback: function() { | ||
3245 | var a = ad.pop() || n.expando + "_" + wc++; | ||
3246 | return this[a] = !0, a | ||
3247 | } | ||
3248 | }), n.ajaxPrefilter("json jsonp", function(b, c, d) { | ||
3249 | var e, f, g, h = b.jsonp !== !1 && (bd.test(b.url) ? "url" : "string" == typeof b.data && !(b.contentType || "").indexOf("application/x-www-form-urlencoded") && bd.test(b.data) && "data"); | ||
3250 | return h || "jsonp" === b.dataTypes[0] ? (e = b.jsonpCallback = n.isFunction(b.jsonpCallback) ? b.jsonpCallback() : b.jsonpCallback, h ? b[h] = b[h].replace(bd, "$1" + e) : b.jsonp !== !1 && (b.url += (xc.test(b.url) ? "&" : "?") + b.jsonp + "=" + e), b.converters["script json"] = function() { | ||
3251 | return g || n.error(e + " was not called"), g[0] | ||
3252 | }, b.dataTypes[0] = "json", f = a[e], a[e] = function() { | ||
3253 | g = arguments | ||
3254 | }, d.always(function() { | ||
3255 | a[e] = f, b[e] && (b.jsonpCallback = c.jsonpCallback, ad.push(e)), g && n.isFunction(f) && f(g[0]), g = f = void 0 | ||
3256 | }), "script") : void 0 | ||
3257 | }), n.parseHTML = function(a, b, c) { | ||
3258 | if (!a || "string" != typeof a) return null; | ||
3259 | "boolean" == typeof b && (c = b, b = !1), b = b || z; | ||
3260 | var d = v.exec(a), | ||
3261 | e = !c && []; | ||
3262 | return d ? [b.createElement(d[1])] : (d = n.buildFragment([a], b, e), e && e.length && n(e).remove(), n.merge([], d.childNodes)) | ||
3263 | }; | ||
3264 | var cd = n.fn.load; | ||
3265 | n.fn.load = function(a, b, c) { | ||
3266 | if ("string" != typeof a && cd) return cd.apply(this, arguments); | ||
3267 | var d, e, f, g = this, | ||
3268 | h = a.indexOf(" "); | ||
3269 | return h >= 0 && (d = a.slice(h, a.length), a = a.slice(0, h)), n.isFunction(b) ? (c = b, b = void 0) : b && "object" == typeof b && (f = "POST"), g.length > 0 && n.ajax({ | ||
3270 | url: a, | ||
3271 | type: f, | ||
3272 | dataType: "html", | ||
3273 | data: b | ||
3274 | }).done(function(a) { | ||
3275 | e = arguments, g.html(d ? n("<div>").append(n.parseHTML(a)).find(d) : a) | ||
3276 | }).complete(c && function(a, b) { | ||
3277 | g.each(c, e || [a.responseText, b, a]) | ||
3278 | }), this | ||
3279 | }, n.expr.filters.animated = function(a) { | ||
3280 | return n.grep(n.timers, function(b) { | ||
3281 | return a === b.elem | ||
3282 | }).length | ||
3283 | }; | ||
3284 | var dd = a.document.documentElement; | ||
3285 | |||
3286 | function ed(a) { | ||
3287 | return n.isWindow(a) ? a : 9 === a.nodeType ? a.defaultView || a.parentWindow : !1 | ||
3288 | } | ||
3289 | n.offset = { | ||
3290 | setOffset: function(a, b, c) { | ||
3291 | var d, e, f, g, h, i, j, k = n.css(a, "position"), | ||
3292 | l = n(a), | ||
3293 | m = {}; | ||
3294 | "static" === k && (a.style.position = "relative"), h = l.offset(), f = n.css(a, "top"), i = n.css(a, "left"), j = ("absolute" === k || "fixed" === k) && n.inArray("auto", [f, i]) > -1, j ? (d = l.position(), g = d.top, e = d.left) : (g = parseFloat(f) || 0, e = parseFloat(i) || 0), n.isFunction(b) && (b = b.call(a, c, h)), null != b.top && (m.top = b.top - h.top + g), null != b.left && (m.left = b.left - h.left + e), "using" in b ? b.using.call(a, m) : l.css(m) | ||
3295 | } | ||
3296 | }, n.fn.extend({ | ||
3297 | offset: function(a) { | ||
3298 | if (arguments.length) return void 0 === a ? this : this.each(function(b) { | ||
3299 | n.offset.setOffset(this, a, b) | ||
3300 | }); | ||
3301 | var b, c, d = { | ||
3302 | top: 0, | ||
3303 | left: 0 | ||
3304 | }, | ||
3305 | e = this[0], | ||
3306 | f = e && e.ownerDocument; | ||
3307 | if (f) return b = f.documentElement, n.contains(b, e) ? (typeof e.getBoundingClientRect !== L && (d = e.getBoundingClientRect()), c = ed(f), { | ||
3308 | top: d.top + (c.pageYOffset || b.scrollTop) - (b.clientTop || 0), | ||
3309 | left: d.left + (c.pageXOffset || b.scrollLeft) - (b.clientLeft || 0) | ||
3310 | }) : d | ||
3311 | }, | ||
3312 | position: function() { | ||
3313 | if (this[0]) { | ||
3314 | var a, b, c = { | ||
3315 | top: 0, | ||
3316 | left: 0 | ||
3317 | }, | ||
3318 | d = this[0]; | ||
3319 | return "fixed" === n.css(d, "position") ? b = d.getBoundingClientRect() : (a = this.offsetParent(), b = this.offset(), n.nodeName(a[0], "html") || (c = a.offset()), c.top += n.css(a[0], "borderTopWidth", !0), c.left += n.css(a[0], "borderLeftWidth", !0)), { | ||
3320 | top: b.top - c.top - n.css(d, "marginTop", !0), | ||
3321 | left: b.left - c.left - n.css(d, "marginLeft", !0) | ||
3322 | } | ||
3323 | } | ||
3324 | }, | ||
3325 | offsetParent: function() { | ||
3326 | return this.map(function() { | ||
3327 | var a = this.offsetParent || dd; | ||
3328 | while (a && !n.nodeName(a, "html") && "static" === n.css(a, "position")) a = a.offsetParent; | ||
3329 | return a || dd | ||
3330 | }) | ||
3331 | } | ||
3332 | }), n.each({ | ||
3333 | scrollLeft: "pageXOffset", | ||
3334 | scrollTop: "pageYOffset" | ||
3335 | }, function(a, b) { | ||
3336 | var c = /Y/.test(b); | ||
3337 | n.fn[a] = function(d) { | ||
3338 | return W(this, function(a, d, e) { | ||
3339 | var f = ed(a); | ||
3340 | return void 0 === e ? f ? b in f ? f[b] : f.document.documentElement[d] : a[d] : void(f ? f.scrollTo(c ? n(f).scrollLeft() : e, c ? e : n(f).scrollTop()) : a[d] = e) | ||
3341 | }, a, d, arguments.length, null) | ||
3342 | } | ||
3343 | }), n.each(["top", "left"], function(a, b) { | ||
3344 | n.cssHooks[b] = Mb(l.pixelPosition, function(a, c) { | ||
3345 | return c ? (c = Kb(a, b), Ib.test(c) ? n(a).position()[b] + "px" : c) : void 0 | ||
3346 | }) | ||
3347 | }), n.each({ | ||
3348 | Height: "height", | ||
3349 | Width: "width" | ||
3350 | }, function(a, b) { | ||
3351 | n.each({ | ||
3352 | padding: "inner" + a, | ||
3353 | content: b, | ||
3354 | "": "outer" + a | ||
3355 | }, function(c, d) { | ||
3356 | n.fn[d] = function(d, e) { | ||
3357 | var f = arguments.length && (c || "boolean" != typeof d), | ||
3358 | g = c || (d === !0 || e === !0 ? "margin" : "border"); | ||
3359 | return W(this, function(b, c, d) { | ||
3360 | var e; | ||
3361 | return n.isWindow(b) ? b.document.documentElement["client" + a] : 9 === b.nodeType ? (e = b.documentElement, Math.max(b.body["scroll" + a], e["scroll" + a], b.body["offset" + a], e["offset" + a], e["client" + a])) : void 0 === d ? n.css(b, c, g) : n.style(b, c, d, g) | ||
3362 | }, b, f ? d : void 0, f, null) | ||
3363 | } | ||
3364 | }) | ||
3365 | }), n.fn.size = function() { | ||
3366 | return this.length | ||
3367 | }, n.fn.andSelf = n.fn.addBack, "function" == typeof define && define.amd && define("jquery", [], function() { | ||
3368 | return n | ||
3369 | }); | ||
3370 | var fd = a.jQuery, | ||
3371 | gd = a.$; | ||
3372 | return n.noConflict = function(b) { | ||
3373 | return a.$ === n && (a.$ = gd), b && a.jQuery === n && (a.jQuery = fd), n | ||
3374 | }, typeof b === L && (a.jQuery = a.$ = n), n | ||
3375 | }); \ No newline at end of file | ||
diff --git a/deprecated/jinwei.me/mobile/js/less.js b/deprecated/jinwei.me/mobile/js/less.js new file mode 100644 index 0000000..01ba958 --- /dev/null +++ b/deprecated/jinwei.me/mobile/js/less.js | |||
@@ -0,0 +1,3635 @@ | |||
1 | /*! | ||
2 | * LESS - Leaner CSS v1.7.0 | ||
3 | * http://lesscss.org | ||
4 | * | ||
5 | * Copyright (c) 2009-2014, Alexis Sellier <[email protected]> | ||
6 | * Licensed under the Apache v2 License. | ||
7 | * | ||
8 | */ | ||
9 | |||
10 | /** * @license Apache v2 | ||
11 | */ | ||
12 | |||
13 | ! function(a, b) { | ||
14 | function c(b) { | ||
15 | return a.less[b.split("/")[1]] | ||
16 | } | ||
17 | |||
18 | function d(a, b) { | ||
19 | "undefined" != typeof console && w.logLevel >= b && console.log("less: " + a) | ||
20 | } | ||
21 | |||
22 | function e(a) { | ||
23 | return a.replace(/^[a-z-]+:\/+?[^\/]+/, "").replace(/^\//, "").replace(/\.[a-zA-Z]+$/, "").replace(/[^\.\w-]+/g, "-").replace(/\./g, ":") | ||
24 | } | ||
25 | |||
26 | function f(a, c) { | ||
27 | var e = "{line} {content}", | ||
28 | f = a.filename || c, | ||
29 | g = [], | ||
30 | h = (a.type || "Syntax") + "Error: " + (a.message || "There is an error in your .less file") + " in " + f + " ", | ||
31 | i = function(a, c, d) { | ||
32 | a.extract[c] !== b && g.push(e.replace(/\{line\}/, (parseInt(a.line, 10) || 0) + (c - 1)).replace(/\{class\}/, d).replace(/\{content\}/, a.extract[c])) | ||
33 | }; | ||
34 | a.extract ? (i(a, 0, ""), i(a, 1, "line"), i(a, 2, ""), h += "on line " + a.line + ", column " + (a.column + 1) + ":\n" + g.join("\n")) : a.stack && (h += a.stack), d(h, z.errors) | ||
35 | } | ||
36 | |||
37 | function g(a, b, c) { | ||
38 | var f = b.href || "", | ||
39 | g = "less:" + (b.title || e(f)), | ||
40 | h = document.getElementById(g), | ||
41 | i = !1, | ||
42 | j = document.createElement("style"); | ||
43 | if (j.setAttribute("type", "text/css"), b.media && j.setAttribute("media", b.media), j.id = g, j.styleSheet) try { | ||
44 | j.styleSheet.cssText = a | ||
45 | } catch (k) { | ||
46 | throw new Error("Couldn't reassign styleSheet.cssText.") | ||
47 | } else j.appendChild(document.createTextNode(a)), i = null !== h && h.childNodes.length > 0 && j.childNodes.length > 0 && h.firstChild.nodeValue === j.firstChild.nodeValue; | ||
48 | var l = document.getElementsByTagName("head")[0]; | ||
49 | if (null === h || i === !1) { | ||
50 | var m = b && b.nextSibling || null; | ||
51 | m ? m.parentNode.insertBefore(j, m) : l.appendChild(j) | ||
52 | } | ||
53 | if (h && i === !1 && h.parentNode.removeChild(h), c && D) { | ||
54 | d("saving " + f + " to cache.", z.info); | ||
55 | try { | ||
56 | D.setItem(f, a), D.setItem(f + ":timestamp", c) | ||
57 | } catch (k) { | ||
58 | d("failed to save", z.errors) | ||
59 | } | ||
60 | } | ||
61 | } | ||
62 | |||
63 | function h(a) { | ||
64 | return w.postProcessor && "function" == typeof w.postProcessor && (a = w.postProcessor.call(a, a) || a), a | ||
65 | } | ||
66 | |||
67 | function i(a, c) { | ||
68 | var d, f, h = "less-error-message:" + e(c || ""), | ||
69 | i = '<li><label>{line}</label><pre class="{class}">{content}</pre></li>', | ||
70 | j = document.createElement("div"), | ||
71 | k = [], | ||
72 | l = a.filename || c, | ||
73 | m = l.match(/([^\/]+(\?.*)?)$/)[1]; | ||
74 | j.id = h, j.className = "less-error-message", f = "<h3>" + (a.type || "Syntax") + "Error: " + (a.message || "There is an error in your .less file") + '</h3><p>in <a href="' + l + '">' + m + "</a> "; | ||
75 | var n = function(a, c, d) { | ||
76 | a.extract[c] !== b && k.push(i.replace(/\{line\}/, (parseInt(a.line, 10) || 0) + (c - 1)).replace(/\{class\}/, d).replace(/\{content\}/, a.extract[c])) | ||
77 | }; | ||
78 | a.extract ? (n(a, 0, ""), n(a, 1, "line"), n(a, 2, ""), f += "on line " + a.line + ", column " + (a.column + 1) + ":</p><ul>" + k.join("") + "</ul>") : a.stack && (f += "<br/>" + a.stack.split("\n").slice(1).join("<br/>")), j.innerHTML = f, g([".less-error-message ul, .less-error-message li {", "list-style-type: none;", "margin-right: 15px;", "padding: 4px 0;", "margin: 0;", "}", ".less-error-message label {", "font-size: 12px;", "margin-right: 15px;", "padding: 4px 0;", "color: #cc7777;", "}", ".less-error-message pre {", "color: #dd6666;", "padding: 4px 0;", "margin: 0;", "display: inline-block;", "}", ".less-error-message pre.line {", "color: #ff0000;", "}", ".less-error-message h3 {", "font-size: 20px;", "font-weight: bold;", "padding: 15px 0 5px 0;", "margin: 0;", "}", ".less-error-message a {", "color: #10a", "}", ".less-error-message .error {", "color: red;", "font-weight: bold;", "padding-bottom: 2px;", "border-bottom: 1px dashed red;", "}"].join("\n"), { | ||
79 | title: "error-message" | ||
80 | }), j.style.cssText = ["font-family: Arial, sans-serif", "border: 1px solid #e00", "background-color: #eee", "border-radius: 5px", "-webkit-border-radius: 5px", "-moz-border-radius: 5px", "color: #e00", "padding: 15px", "margin-bottom: 15px"].join(";"), "development" == w.env && (d = setInterval(function() { | ||
81 | document.body && (document.getElementById(h) ? document.body.replaceChild(j, document.getElementById(h)) : document.body.insertBefore(j, document.body.firstChild), clearInterval(d)) | ||
82 | }, 10)) | ||
83 | } | ||
84 | |||
85 | function j(a, b) { | ||
86 | w.errorReporting && "html" !== w.errorReporting ? "console" === w.errorReporting ? f(a, b) : "function" == typeof w.errorReporting && w.errorReporting("add", a, b) : i(a, b) | ||
87 | } | ||
88 | |||
89 | function k(a) { | ||
90 | var b = document.getElementById("less-error-message:" + e(a)); | ||
91 | b && b.parentNode.removeChild(b) | ||
92 | } | ||
93 | |||
94 | function l() {} | ||
95 | |||
96 | function m(a) { | ||
97 | w.errorReporting && "html" !== w.errorReporting ? "console" === w.errorReporting ? l(a) : "function" == typeof w.errorReporting && w.errorReporting("remove", a) : k(a) | ||
98 | } | ||
99 | |||
100 | function n(a) { | ||
101 | for (var b, c = document.getElementsByTagName("style"), d = 0; d < c.length; d++) | ||
102 | if (b = c[d], b.type.match(C)) { | ||
103 | var e = new w.tree.parseEnv(w), | ||
104 | f = b.innerHTML || ""; | ||
105 | e.filename = document.location.href.replace(/#.*$/, ""), (a || w.globalVars) && (e.useFileCache = !0); | ||
106 | var g = function(a) { | ||
107 | return function(b, c) { | ||
108 | if (b) return j(b, "inline"); | ||
109 | var d = c.toCSS(w); | ||
110 | a.type = "text/css", a.styleSheet ? a.styleSheet.cssText = d : a.innerHTML = d | ||
111 | } | ||
112 | }(b); | ||
113 | new w.Parser(e).parse(f, g, { | ||
114 | globalVars: w.globalVars, | ||
115 | modifyVars: a | ||
116 | }) | ||
117 | } | ||
118 | } | ||
119 | |||
120 | function o(a, b) { | ||
121 | var c, d, e = /^((?:[a-z-]+:)?\/+?(?:[^\/\?#]*\/)|([\/\\]))?((?:[^\/\\\?#]*[\/\\])*)([^\/\\\?#]*)([#\?].*)?$/i, | ||
122 | f = a.match(e), | ||
123 | g = {}, | ||
124 | h = []; | ||
125 | if (!f) throw new Error("Could not parse sheet href - '" + a + "'"); | ||
126 | if (!f[1] || f[2]) { | ||
127 | if (d = b.match(e), !d) throw new Error("Could not parse page url - '" + b + "'"); | ||
128 | f[1] = f[1] || d[1] || "", f[2] || (f[3] = d[3] + f[3]) | ||
129 | } | ||
130 | if (f[3]) { | ||
131 | for (h = f[3].replace(/\\/g, "/").split("/"), c = 0; c < h.length; c++) "." === h[c] && (h.splice(c, 1), c -= 1); | ||
132 | for (c = 0; c < h.length; c++) ".." === h[c] && c > 0 && (h.splice(c - 1, 2), c -= 2) | ||
133 | } | ||
134 | return g.hostPart = f[1], g.directories = h, g.path = f[1] + h.join("/"), g.fileUrl = g.path + (f[4] || ""), g.url = g.fileUrl + (f[5] || ""), g | ||
135 | } | ||
136 | |||
137 | function p(a, b) { | ||
138 | var c, d, e, f, g = o(a), | ||
139 | h = o(b), | ||
140 | i = ""; | ||
141 | if (g.hostPart !== h.hostPart) return ""; | ||
142 | for (d = Math.max(h.directories.length, g.directories.length), c = 0; d > c && h.directories[c] === g.directories[c]; c++); | ||
143 | for (f = h.directories.slice(c), e = g.directories.slice(c), c = 0; c < f.length - 1; c++) i += "../"; | ||
144 | for (c = 0; c < e.length - 1; c++) i += e[c] + "/"; | ||
145 | return i | ||
146 | } | ||
147 | |||
148 | function q() { | ||
149 | if (a.XMLHttpRequest && ("file:" !== a.location.protocol || !a.ActiveXObject)) return new XMLHttpRequest; | ||
150 | try { | ||
151 | return new ActiveXObject("Microsoft.XMLHTTP") | ||
152 | } catch (b) { | ||
153 | return d("browser doesn't support AJAX.", z.errors), null | ||
154 | } | ||
155 | } | ||
156 | |||
157 | function r(a, b, c, e) { | ||
158 | function f(b, c, d) { | ||
159 | b.status >= 200 && b.status < 300 ? c(b.responseText, b.getResponseHeader("Last-Modified")) : "function" == typeof d && d(b.status, a) | ||
160 | } | ||
161 | var g = q(), | ||
162 | h = y ? w.fileAsync : w.async; | ||
163 | "function" == typeof g.overrideMimeType && g.overrideMimeType("text/css"), d("XHR: Getting '" + a + "'", z.debug), g.open("GET", a, h), g.setRequestHeader("Accept", b || "text/x-less, text/css; q=0.9, */*; q=0.5"), g.send(null), y && !w.fileAsync ? 0 === g.status || g.status >= 200 && g.status < 300 ? c(g.responseText) : e(g.status, a) : h ? g.onreadystatechange = function() { | ||
164 | 4 == g.readyState && f(g, c, e) | ||
165 | } : f(g, c, e) | ||
166 | } | ||
167 | |||
168 | function s(b, c, d, e) { | ||
169 | c && c.currentDirectory && !/^([a-z-]+:)?\//.test(b) && (b = c.currentDirectory + b); | ||
170 | var f = o(b, a.location.href), | ||
171 | g = f.url, | ||
172 | h = { | ||
173 | currentDirectory: f.path, | ||
174 | filename: g | ||
175 | }; | ||
176 | if (c ? (h.entryPath = c.entryPath, h.rootpath = c.rootpath, h.rootFilename = c.rootFilename, h.relativeUrls = c.relativeUrls) : (h.entryPath = f.path, h.rootpath = w.rootpath || f.path, h.rootFilename = g, h.relativeUrls = e.relativeUrls), h.relativeUrls && (h.rootpath = e.rootpath ? o(e.rootpath + p(f.path, h.entryPath)).path : f.path), e.useFileCache && E[g]) try { | ||
177 | var i = E[g]; | ||
178 | d(null, i, g, h, { | ||
179 | lastModified: new Date | ||
180 | }) | ||
181 | } catch (j) { | ||
182 | d(j, null, g) | ||
183 | } else r(g, e.mime, function(a, b) { | ||
184 | E[g] = a; | ||
185 | try { | ||
186 | d(null, a, g, h, { | ||
187 | lastModified: b | ||
188 | }) | ||
189 | } catch (c) { | ||
190 | d(c, null, g) | ||
191 | } | ||
192 | }, function(a, b) { | ||
193 | d({ | ||
194 | type: "File", | ||
195 | message: "'" + b + "' wasn't found (" + a + ")" | ||
196 | }, null, g) | ||
197 | }) | ||
198 | } | ||
199 | |||
200 | function t(a, b, c, d, e) { | ||
201 | var f = new w.tree.parseEnv(w); | ||
202 | f.mime = a.type, (e || w.globalVars) && (f.useFileCache = !0), s(a.href, null, function(h, i, j, k, l) { | ||
203 | if (l) { | ||
204 | l.remaining = d; | ||
205 | var n = D && D.getItem(j), | ||
206 | o = D && D.getItem(j + ":timestamp"); | ||
207 | if (!c && o && l.lastModified && new Date(l.lastModified).valueOf() === new Date(o).valueOf()) return g(n, a), l.local = !0, void b(null, null, i, a, l, j) | ||
208 | } | ||
209 | m(j), i ? (f.currentFileInfo = k, new w.Parser(f).parse(i, function(c, d) { | ||
210 | if (c) return b(c, null, null, a); | ||
211 | try { | ||
212 | b(c, d, i, a, l, j) | ||
213 | } catch (c) { | ||
214 | b(c, null, null, a) | ||
215 | } | ||
216 | }, { | ||
217 | modifyVars: e, | ||
218 | globalVars: w.globalVars | ||
219 | })) : b(h, null, null, a, l, j) | ||
220 | }, f, e) | ||
221 | } | ||
222 | |||
223 | function u(a, b, c) { | ||
224 | for (var d = 0; d < w.sheets.length; d++) t(w.sheets[d], a, b, w.sheets.length - (d + 1), c) | ||
225 | } | ||
226 | |||
227 | function v() { | ||
228 | "development" === w.env ? (w.optimization = 0, w.watchTimer = setInterval(function() { | ||
229 | w.watchMode && u(function(a, b, c, d, e) { | ||
230 | if (a) j(a, d.href); | ||
231 | else if (b) { | ||
232 | var f = b.toCSS(w); | ||
233 | f = h(f), g(f, d, e.lastModified) | ||
234 | } | ||
235 | }) | ||
236 | }, w.poll)) : w.optimization = 3 | ||
237 | }("undefined" == typeof a.less || "undefined" != typeof a.less.nodeType) && (a.less = {}), w = a.less, x = a.less.tree = {}, w.mode = "browser"; | ||
238 | var w, x; | ||
239 | w === b && (w = exports, x = c("./tree"), w.mode = "node"), w.Parser = function(a) { | ||
240 | function d() { | ||
241 | D = y, G.push({ | ||
242 | current: C, | ||
243 | i: y, | ||
244 | j: z | ||
245 | }) | ||
246 | } | ||
247 | |||
248 | function e() { | ||
249 | var a = G.pop(); | ||
250 | C = a.current, D = y = a.i, z = a.j | ||
251 | } | ||
252 | |||
253 | function f() { | ||
254 | G.pop() | ||
255 | } | ||
256 | |||
257 | function g() { | ||
258 | y > D && (C = C.slice(y - D), D = y) | ||
259 | } | ||
260 | |||
261 | function h(a, b) { | ||
262 | var c = a.charCodeAt(0 | b); | ||
263 | return 32 >= c && (32 === c || 10 === c || 9 === c) | ||
264 | } | ||
265 | |||
266 | function i(a) { | ||
267 | var b, c, d = typeof a; | ||
268 | return "string" === d ? v.charAt(y) !== a ? null : (l(1), a) : (g(), (b = a.exec(C)) ? (c = b[0].length, l(c), "string" == typeof b ? b : 1 === b.length ? b[0] : b) : null) | ||
269 | } | ||
270 | |||
271 | function j(a) { | ||
272 | y > D && (C = C.slice(y - D), D = y); | ||
273 | var b = a.exec(C); | ||
274 | return b ? (l(b[0].length), "string" == typeof b ? b : 1 === b.length ? b[0] : b) : null | ||
275 | } | ||
276 | |||
277 | function k(a) { | ||
278 | return v.charAt(y) !== a ? null : (l(1), a) | ||
279 | } | ||
280 | |||
281 | function l(a) { | ||
282 | for (var b, c = y, d = z, e = y - D, f = y + C.length - e, g = y += a, h = v; f > y && (b = h.charCodeAt(y), !(b > 32)) && (32 === b || 10 === b || 9 === b || 13 === b); y++); | ||
283 | return C = C.slice(a + y - g + e), D = y, !C.length && z < B.length - 1 ? (C = B[++z], l(0), !0) : c !== y || d !== z | ||
284 | } | ||
285 | |||
286 | function m(a, b) { | ||
287 | var c = "[object Function]" === Object.prototype.toString.call(a) ? a.call(F) : i(a); | ||
288 | return c ? c : void o(b || ("string" == typeof a ? "expected '" + a + "' got '" + v.charAt(y) + "'" : "unexpected token")) | ||
289 | } | ||
290 | |||
291 | function n(a, b) { | ||
292 | return v.charAt(y) === a ? (l(1), a) : void o(b || "expected '" + a + "' got '" + v.charAt(y) + "'") | ||
293 | } | ||
294 | |||
295 | function o(a, b) { | ||
296 | var c = new Error(a); | ||
297 | throw c.index = y, c.type = b || "Syntax", c | ||
298 | } | ||
299 | |||
300 | function p(a) { | ||
301 | return "string" == typeof a ? v.charAt(y) === a : a.test(C) | ||
302 | } | ||
303 | |||
304 | function q(a) { | ||
305 | return v.charAt(y) === a | ||
306 | } | ||
307 | |||
308 | function r(a, b) { | ||
309 | return a.filename && b.currentFileInfo.filename && a.filename !== b.currentFileInfo.filename ? E.imports.contents[a.filename] : v | ||
310 | } | ||
311 | |||
312 | function s(a, b) { | ||
313 | for (var c = a + 1, d = null, e = -1; --c >= 0 && "\n" !== b.charAt(c);) e++; | ||
314 | return "number" == typeof a && (d = (b.slice(0, a).match(/\n/g) || "").length), { | ||
315 | line: d, | ||
316 | column: e | ||
317 | } | ||
318 | } | ||
319 | |||
320 | function t(a, b, d) { | ||
321 | var e = d.currentFileInfo.filename; | ||
322 | return "browser" !== w.mode && "rhino" !== w.mode && (e = c("path").resolve(e)), { | ||
323 | lineNumber: s(a, b).line + 1, | ||
324 | fileName: e | ||
325 | } | ||
326 | } | ||
327 | |||
328 | function u(a, b) { | ||
329 | var c = r(a, b), | ||
330 | d = s(a.index, c), | ||
331 | e = d.line, | ||
332 | f = d.column, | ||
333 | g = a.call && s(a.call, c).line, | ||
334 | h = c.split("\n"); | ||
335 | this.type = a.type || "Syntax", this.message = a.message, this.filename = a.filename || b.currentFileInfo.filename, this.index = a.index, this.line = "number" == typeof e ? e + 1 : null, this.callLine = g + 1, this.callExtract = h[g], this.stack = a.stack, this.column = f, this.extract = [h[e - 1], h[e], h[e + 1]] | ||
336 | } | ||
337 | var v, y, z, A, B, C, D, E, F, G = [], | ||
338 | H = a && a.filename; | ||
339 | a instanceof x.parseEnv || (a = new x.parseEnv(a)); | ||
340 | var I = this.imports = { | ||
341 | paths: a.paths || [], | ||
342 | queue: [], | ||
343 | files: a.files, | ||
344 | contents: a.contents, | ||
345 | contentsIgnoredChars: a.contentsIgnoredChars, | ||
346 | mime: a.mime, | ||
347 | error: null, | ||
348 | push: function(b, c, d, e) { | ||
349 | var f = this; | ||
350 | this.queue.push(b); | ||
351 | var g = function(a, c, d) { | ||
352 | f.queue.splice(f.queue.indexOf(b), 1); | ||
353 | var g = d === H; | ||
354 | f.files[d] = c, a && !f.error && (f.error = a), e(a, c, g, d) | ||
355 | }; | ||
356 | w.Parser.importer ? w.Parser.importer(b, c, g, a) : w.Parser.fileLoader(b, c, function(b, e, f, h) { | ||
357 | if (b) return void g(b); | ||
358 | var i = new x.parseEnv(a); | ||
359 | i.currentFileInfo = h, i.processImports = !1, i.contents[f] = e, (c.reference || d.reference) && (h.reference = !0), d.inline ? g(null, e, f) : new w.Parser(i).parse(e, function(a, b) { | ||
360 | g(a, b, f) | ||
361 | }) | ||
362 | }, a) | ||
363 | } | ||
364 | }, | ||
365 | J = j; | ||
366 | return u.prototype = new Error, u.prototype.constructor = u, this.env = a = a || {}, this.optimization = "optimization" in this.env ? this.env.optimization : 1, E = { | ||
367 | imports: I, | ||
368 | parse: function(d, e, f) { | ||
369 | var g, h, i, j, k, l = null, | ||
370 | m = ""; | ||
371 | if (y = z = D = A = 0, j = f && f.globalVars ? w.Parser.serializeVars(f.globalVars) + "\n" : "", k = f && f.modifyVars ? "\n" + w.Parser.serializeVars(f.modifyVars) : "", (j || f && f.banner) && (m = (f && f.banner ? f.banner : "") + j, E.imports.contentsIgnoredChars[a.currentFileInfo.filename] = m.length), d = d.replace(/\r\n/g, "\n"), v = d = m + d.replace(/^\uFEFF/, "") + k, E.imports.contents[a.currentFileInfo.filename] = d, B = function(b) { | ||
372 | function c(b, c) { | ||
373 | l = new u({ | ||
374 | index: c || i, | ||
375 | type: "Parse", | ||
376 | message: b, | ||
377 | filename: a.currentFileInfo.filename | ||
378 | }, a) | ||
379 | } | ||
380 | |||
381 | function d(a) { | ||
382 | var c = i - s; | ||
383 | 512 > c && !a || !c || (r.push(b.slice(s, i + 1)), s = i + 1) | ||
384 | } | ||
385 | var e, f, g, h, i, j, k, m, n, o = b.length, | ||
386 | p = 0, | ||
387 | q = 0, | ||
388 | r = [], | ||
389 | s = 0; | ||
390 | for (i = 0; o > i; i++) | ||
391 | if (k = b.charCodeAt(i), !(k >= 97 && 122 >= k || 34 > k)) switch (k) { | ||
392 | case 40: | ||
393 | q++, f = i; | ||
394 | continue; | ||
395 | case 41: | ||
396 | if (--q < 0) return c("missing opening `(`"); | ||
397 | continue; | ||
398 | case 59: | ||
399 | q || d(); | ||
400 | continue; | ||
401 | case 123: | ||
402 | p++, e = i; | ||
403 | continue; | ||
404 | case 125: | ||
405 | if (--p < 0) return c("missing opening `{`"); | ||
406 | p || q || d(); | ||
407 | continue; | ||
408 | case 92: | ||
409 | if (o - 1 > i) { | ||
410 | i++; | ||
411 | continue | ||
412 | } | ||
413 | return c("unescaped `\\`"); | ||
414 | case 34: | ||
415 | case 39: | ||
416 | case 96: | ||
417 | for (n = 0, j = i, i += 1; o > i; i++) | ||
418 | if (m = b.charCodeAt(i), !(m > 96)) { | ||
419 | if (m == k) { | ||
420 | n = 1; | ||
421 | break | ||
422 | } | ||
423 | if (92 == m) { | ||
424 | if (i == o - 1) return c("unescaped `\\`"); | ||
425 | i++ | ||
426 | } | ||
427 | } | ||
428 | if (n) continue; | ||
429 | return c("unmatched `" + String.fromCharCode(k) + "`", j); | ||
430 | case 47: | ||
431 | if (q || i == o - 1) continue; | ||
432 | if (m = b.charCodeAt(i + 1), 47 == m) | ||
433 | for (i += 2; o > i && (m = b.charCodeAt(i), !(13 >= m) || 10 != m && 13 != m); i++); | ||
434 | else if (42 == m) { | ||
435 | for (g = j = i, i += 2; o - 1 > i && (m = b.charCodeAt(i), 125 == m && (h = i), 42 != m || 47 != b.charCodeAt(i + 1)); i++); | ||
436 | if (i == o - 1) return c("missing closing `*/`", j); | ||
437 | i++ | ||
438 | } | ||
439 | continue; | ||
440 | case 42: | ||
441 | if (o - 1 > i && 47 == b.charCodeAt(i + 1)) return c("unmatched `/*`"); | ||
442 | continue | ||
443 | } | ||
444 | return 0 !== p ? g > e && h > g ? c("missing closing `}` or `*/`", e) : c("missing closing `}`", e) : 0 !== q ? c("missing closing `)`", f) : (d(!0), r) | ||
445 | }(d), l) return e(new u(l, a)); | ||
446 | C = B[0]; | ||
447 | try { | ||
448 | g = new x.Ruleset(null, this.parsers.primary()), g.root = !0, g.firstRoot = !0 | ||
449 | } catch (n) { | ||
450 | return e(new u(n, a)) | ||
451 | } | ||
452 | if (g.toCSS = function(d) { | ||
453 | return function(e, f) { | ||
454 | e = e || {}; | ||
455 | var g, h, i = new x.evalEnv(e); | ||
456 | "object" != typeof f || Array.isArray(f) || (f = Object.keys(f).map(function(a) { | ||
457 | var b = f[a]; | ||
458 | return b instanceof x.Value || (b instanceof x.Expression || (b = new x.Expression([b])), b = new x.Value([b])), new x.Rule("@" + a, b, !1, null, 0) | ||
459 | }), i.frames = [new x.Ruleset(null, f)]); | ||
460 | try { | ||
461 | var j, k = [], | ||
462 | l = [new x.joinSelectorVisitor, new x.processExtendsVisitor, new x.toCSSVisitor({ | ||
463 | compress: Boolean(e.compress) | ||
464 | })], | ||
465 | m = this; | ||
466 | if (e.plugins) | ||
467 | for (j = 0; j < e.plugins.length; j++) e.plugins[j].isPreEvalVisitor ? k.push(e.plugins[j]) : e.plugins[j].isPreVisitor ? l.splice(0, 0, e.plugins[j]) : l.push(e.plugins[j]); | ||
468 | for (j = 0; j < k.length; j++) k[j].run(m); | ||
469 | for (g = d.call(m, i), j = 0; j < l.length; j++) l[j].run(g); | ||
470 | e.sourceMap && (g = new x.sourceMapOutput({ | ||
471 | contentsIgnoredCharsMap: E.imports.contentsIgnoredChars, | ||
472 | writeSourceMap: e.writeSourceMap, | ||
473 | rootNode: g, | ||
474 | contentsMap: E.imports.contents, | ||
475 | sourceMapFilename: e.sourceMapFilename, | ||
476 | sourceMapURL: e.sourceMapURL, | ||
477 | outputFilename: e.sourceMapOutputFilename, | ||
478 | sourceMapBasepath: e.sourceMapBasepath, | ||
479 | sourceMapRootpath: e.sourceMapRootpath, | ||
480 | outputSourceFiles: e.outputSourceFiles, | ||
481 | sourceMapGenerator: e.sourceMapGenerator | ||
482 | })), h = g.toCSS({ | ||
483 | compress: Boolean(e.compress), | ||
484 | dumpLineNumbers: a.dumpLineNumbers, | ||
485 | strictUnits: Boolean(e.strictUnits), | ||
486 | numPrecision: 8 | ||
487 | }) | ||
488 | } catch (n) { | ||
489 | throw new u(n, a) | ||
490 | } | ||
491 | if (e.cleancss && "node" === w.mode) { | ||
492 | var o = c("clean-css"), | ||
493 | p = e.cleancssOptions || {}; | ||
494 | return p.keepSpecialComments === b && (p.keepSpecialComments = "*"), p.processImport = !1, p.noRebase = !0, p.noAdvanced === b && (p.noAdvanced = !0), new o(p).minify(h) | ||
495 | } | ||
496 | return e.compress ? h.replace(/(^(\s)+)|((\s)+$)/g, "") : h | ||
497 | } | ||
498 | }(g.eval), y < v.length - 1) { | ||
499 | y = A; | ||
500 | var o = s(y, v); | ||
501 | i = v.split("\n"), h = o.line + 1, l = { | ||
502 | type: "Parse", | ||
503 | message: "Unrecognised input", | ||
504 | index: y, | ||
505 | filename: a.currentFileInfo.filename, | ||
506 | line: h, | ||
507 | column: o.column, | ||
508 | extract: [i[h - 2], i[h - 1], i[h]] | ||
509 | } | ||
510 | } | ||
511 | var p = function(b) { | ||
512 | return b = l || b || E.imports.error, b ? (b instanceof u || (b = new u(b, a)), e(b)) : e(null, g) | ||
513 | }; | ||
514 | return a.processImports === !1 ? p() : void new x.importVisitor(this.imports, p).run(g) | ||
515 | }, | ||
516 | parsers: F = { | ||
517 | primary: function() { | ||
518 | for (var a, b = this.mixin, c = J, d = []; C;) { | ||
519 | if (a = this.extendRule() || b.definition() || this.rule() || this.ruleset() || b.call() || this.comment() || this.rulesetCall() || this.directive()) d.push(a); | ||
520 | else if (!c(/^[\s\n]+/) && !c(/^;+/)) break; | ||
521 | if (q("}")) break | ||
522 | } | ||
523 | return d | ||
524 | }, | ||
525 | comment: function() { | ||
526 | var b; | ||
527 | if ("/" === v.charAt(y)) return "/" === v.charAt(y + 1) ? new x.Comment(j(/^\/\/.*/), !0, y, a.currentFileInfo) : (b = j(/^\/\*(?:[^*]|\*+[^\/*])*\*+\/\n?/), b ? new x.Comment(b, !1, y, a.currentFileInfo) : void 0) | ||
528 | }, | ||
529 | comments: function() { | ||
530 | for (var a, b = [];;) { | ||
531 | if (a = this.comment(), !a) break; | ||
532 | b.push(a) | ||
533 | } | ||
534 | return b | ||
535 | }, | ||
536 | entities: { | ||
537 | quoted: function() { | ||
538 | var b, c, d = y, | ||
539 | e = y; | ||
540 | return "~" === v.charAt(d) && (d++, c = !0), '"' === v.charAt(d) || "'" === v.charAt(d) ? (c && k("~"), b = j(/^"((?:[^"\\\r\n]|\\.)*)"|'((?:[^'\\\r\n]|\\.)*)'/), b ? new x.Quoted(b[0], b[1] || b[2], c, e, a.currentFileInfo) : void 0) : void 0 | ||
541 | }, | ||
542 | keyword: function() { | ||
543 | var a; | ||
544 | if (a = j(/^%|^[_A-Za-z-][_A-Za-z0-9-]*/)) { | ||
545 | var b = x.Color.fromKeyword(a); | ||
546 | return b ? b : new x.Keyword(a) | ||
547 | } | ||
548 | }, | ||
549 | call: function() { | ||
550 | var b, c, d, e, f = y; | ||
551 | if (b = /^([\w-]+|%|progid:[\w\.]+)\(/.exec(C)) { | ||
552 | if (b = b[1], c = b.toLowerCase(), "url" === c) return null; | ||
553 | if (y += b.length, "alpha" === c && (e = F.alpha(), "undefined" != typeof e)) return e; | ||
554 | if (k("("), d = this.arguments(), k(")")) return b ? new x.Call(b, d, f, a.currentFileInfo) : void 0 | ||
555 | } | ||
556 | }, | ||
557 | arguments: function() { | ||
558 | for (var a, b = [];;) { | ||
559 | if (a = this.assignment() || F.expression(), !a) break; | ||
560 | if (b.push(a), !k(",")) break | ||
561 | } | ||
562 | return b | ||
563 | }, | ||
564 | literal: function() { | ||
565 | return this.dimension() || this.color() || this.quoted() || this.unicodeDescriptor() | ||
566 | }, | ||
567 | assignment: function() { | ||
568 | var a, b; | ||
569 | return a = j(/^\w+(?=\s?=)/i), a && k("=") ? (b = F.entity(), b ? new x.Assignment(a, b) : void 0) : void 0 | ||
570 | }, | ||
571 | url: function() { | ||
572 | var b; | ||
573 | if ("u" === v.charAt(y) && j(/^url\(/)) return b = this.quoted() || this.variable() || j(/^(?:(?:\\[\(\)'"])|[^\(\)'"])+/) || "", n(")"), new x.URL(null != b.value || b instanceof x.Variable ? b : new x.Anonymous(b), a.currentFileInfo) | ||
574 | }, | ||
575 | variable: function() { | ||
576 | var b, c = y; | ||
577 | return "@" === v.charAt(y) && (b = j(/^@@?[\w-]+/)) ? new x.Variable(b, c, a.currentFileInfo) : void 0 | ||
578 | }, | ||
579 | variableCurly: function() { | ||
580 | var b, c = y; | ||
581 | return "@" === v.charAt(y) && (b = j(/^@\{([\w-]+)\}/)) ? new x.Variable("@" + b[1], c, a.currentFileInfo) : void 0 | ||
582 | }, | ||
583 | color: function() { | ||
584 | var a; | ||
585 | return "#" === v.charAt(y) && (a = j(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})/)) ? new x.Color(a[1]) : void 0 | ||
586 | }, | ||
587 | dimension: function() { | ||
588 | var a, b = v.charCodeAt(y); | ||
589 | if (!(b > 57 || 43 > b || 47 === b || 44 == b)) return a = j(/^([+-]?\d*\.?\d+)(%|[a-z]+)?/), a ? new x.Dimension(a[1], a[2]) : void 0 | ||
590 | }, | ||
591 | unicodeDescriptor: function() { | ||
592 | var a; | ||
593 | return a = j(/^U\+[0-9a-fA-F?]+(\-[0-9a-fA-F?]+)?/), a ? new x.UnicodeDescriptor(a[0]) : void 0 | ||
594 | }, | ||
595 | javascript: function() { | ||
596 | var c, d, e = y; | ||
597 | return "~" === v.charAt(e) && (e++, d = !0), "`" === v.charAt(e) ? (a.javascriptEnabled === b || a.javascriptEnabled || o("You are using JavaScript, which has been disabled."), d && k("~"), c = j(/^`([^`]*)`/), c ? new x.JavaScript(c[1], y, d) : void 0) : void 0 | ||
598 | } | ||
599 | }, | ||
600 | variable: function() { | ||
601 | var a; | ||
602 | return "@" === v.charAt(y) && (a = j(/^(@[\w-]+)\s*:/)) ? a[1] : void 0 | ||
603 | }, | ||
604 | rulesetCall: function() { | ||
605 | var a; | ||
606 | return "@" === v.charAt(y) && (a = j(/^(@[\w-]+)\s*\(\s*\)\s*;/)) ? new x.RulesetCall(a[1]) : void 0 | ||
607 | }, | ||
608 | extend: function(a) { | ||
609 | var b, c, d, e, f, g = y; | ||
610 | if (j(a ? /^&:extend\(/ : /^:extend\(/)) { | ||
611 | do { | ||
612 | for (d = null, b = null; !(d = j(/^(all)(?=\s*(\)|,))/)) && (c = this.element());) b ? b.push(c) : b = [c]; | ||
613 | d = d && d[1], f = new x.Extend(new x.Selector(b), d, g), e ? e.push(f) : e = [f] | ||
614 | } while (k(",")); | ||
615 | return m(/^\)/), a && m(/^;/), e | ||
616 | } | ||
617 | }, | ||
618 | extendRule: function() { | ||
619 | return this.extend(!0) | ||
620 | }, | ||
621 | mixin: { | ||
622 | call: function() { | ||
623 | var b, c, g, h, i, l, m = v.charAt(y), | ||
624 | o = !1, | ||
625 | p = y; | ||
626 | if ("." === m || "#" === m) { | ||
627 | for (d();;) { | ||
628 | if (b = y, h = j(/^[#.](?:[\w-]|\\(?:[A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9]))+/), !h) break; | ||
629 | g = new x.Element(i, h, b, a.currentFileInfo), c ? c.push(g) : c = [g], i = k(">") | ||
630 | } | ||
631 | return c && (k("(") && (l = this.args(!0).args, n(")")), F.important() && (o = !0), F.end()) ? (f(), new x.mixin.Call(c, l, p, a.currentFileInfo, o)) : void e() | ||
632 | } | ||
633 | }, | ||
634 | args: function(a) { | ||
635 | var b, c, g, h, i, l, m = E.parsers, | ||
636 | n = m.entities, | ||
637 | p = { | ||
638 | args: null, | ||
639 | variadic: !1 | ||
640 | }, | ||
641 | q = [], | ||
642 | r = [], | ||
643 | s = []; | ||
644 | for (d();;) { | ||
645 | if (a) l = m.detachedRuleset() || m.expression(); | ||
646 | else { | ||
647 | if (m.comments(), "." === v.charAt(y) && j(/^\.{3}/)) { | ||
648 | p.variadic = !0, k(";") && !b && (b = !0), (b ? r : s).push({ | ||
649 | variadic: !0 | ||
650 | }); | ||
651 | break | ||
652 | } | ||
653 | l = n.variable() || n.literal() || n.keyword() | ||
654 | } if (!l) break; | ||
655 | h = null, l.throwAwayComments && l.throwAwayComments(), i = l; | ||
656 | var t = null; | ||
657 | if (a ? l.value && 1 == l.value.length && (t = l.value[0]) : t = l, t && t instanceof x.Variable) | ||
658 | if (k(":")) { | ||
659 | if (q.length > 0 && (b && o("Cannot mix ; and , as delimiter types"), c = !0), i = a && m.detachedRuleset() || m.expression(), !i) { | ||
660 | if (!a) return e(), p.args = [], p; | ||
661 | o("could not understand value for named argument") | ||
662 | } | ||
663 | h = g = t.name | ||
664 | } else { | ||
665 | if (!a && j(/^\.{3}/)) { | ||
666 | p.variadic = !0, k(";") && !b && (b = !0), (b ? r : s).push({ | ||
667 | name: l.name, | ||
668 | variadic: !0 | ||
669 | }); | ||
670 | break | ||
671 | } | ||
672 | a || (g = h = t.name, i = null) | ||
673 | } | ||
674 | i && q.push(i), s.push({ | ||
675 | name: h, | ||
676 | value: i | ||
677 | }), k(",") || (k(";") || b) && (c && o("Cannot mix ; and , as delimiter types"), b = !0, q.length > 1 && (i = new x.Value(q)), r.push({ | ||
678 | name: g, | ||
679 | value: i | ||
680 | }), g = null, q = [], c = !1) | ||
681 | } | ||
682 | return f(), p.args = b ? r : s, p | ||
683 | }, | ||
684 | definition: function() { | ||
685 | var a, b, c, g, h = [], | ||
686 | i = !1; | ||
687 | if (!("." !== v.charAt(y) && "#" !== v.charAt(y) || p(/^[^{]*\}/))) | ||
688 | if (d(), b = j(/^([#.](?:[\w-]|\\(?:[A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9]))+)\s*\(/)) { | ||
689 | a = b[1]; | ||
690 | var l = this.args(!1); | ||
691 | if (h = l.args, i = l.variadic, !k(")")) return A = y, void e(); | ||
692 | if (F.comments(), j(/^when/) && (g = m(F.conditions, "expected condition")), c = F.block()) return f(), new x.mixin.Definition(a, h, c, g, i); | ||
693 | e() | ||
694 | } else f() | ||
695 | } | ||
696 | }, | ||
697 | entity: function() { | ||
698 | var a = this.entities; | ||
699 | return a.literal() || a.variable() || a.url() || a.call() || a.keyword() || a.javascript() || this.comment() | ||
700 | }, | ||
701 | end: function() { | ||
702 | return k(";") || q("}") | ||
703 | }, | ||
704 | alpha: function() { | ||
705 | var a; | ||
706 | if (j(/^\(opacity=/i)) return a = j(/^\d+/) || this.entities.variable(), a ? (n(")"), new x.Alpha(a)) : void 0 | ||
707 | }, | ||
708 | element: function() { | ||
709 | var b, c, g, h = y; | ||
710 | return c = this.combinator(), b = j(/^(?:\d+\.\d+|\d+)%/) || j(/^(?:[.#]?|:*)(?:[\w-]|[^\x00-\x9f]|\\(?:[A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9]))+/) || k("*") || k("&") || this.attribute() || j(/^\([^()@]+\)/) || j(/^[\.#](?=@)/) || this.entities.variableCurly(), b || (d(), k("(") ? (g = this.selector()) && k(")") ? (b = new x.Paren(g), f()) : e() : f()), b ? new x.Element(c, b, h, a.currentFileInfo) : void 0 | ||
711 | }, | ||
712 | combinator: function() { | ||
713 | var a = v.charAt(y); | ||
714 | if (">" === a || "+" === a || "~" === a || "|" === a || "^" === a) { | ||
715 | for (y++, "^" === v.charAt(y) && (a = "^^", y++); h(v, y);) y++; | ||
716 | return new x.Combinator(a) | ||
717 | } | ||
718 | return new x.Combinator(h(v, y - 1) ? " " : null) | ||
719 | }, | ||
720 | lessSelector: function() { | ||
721 | return this.selector(!0) | ||
722 | }, | ||
723 | selector: function(b) { | ||
724 | for (var c, d, e, f, g, h, i, j = y, k = J; | ||
725 | (b && (g = this.extend()) || b && (h = k(/^when/)) || (f = this.element())) && (h ? i = m(this.conditions, "expected condition") : i ? o("CSS guard can only be used at the end of selector") : g ? d ? d.push(g) : d = [g] : (d && o("Extend can only be used at the end of selector"), e = v.charAt(y), c ? c.push(f) : c = [f], f = null), "{" !== e && "}" !== e && ";" !== e && "," !== e && ")" !== e);); | ||
726 | return c ? new x.Selector(c, d, i, j, a.currentFileInfo) : void(d && o("Extend must be used to extend a selector, it cannot be used on its own")) | ||
727 | }, | ||
728 | attribute: function() { | ||
729 | if (k("[")) { | ||
730 | var a, b, c, d = this.entities; | ||
731 | return (a = d.variableCurly()) || (a = m(/^(?:[_A-Za-z0-9-\*]*\|)?(?:[_A-Za-z0-9-]|\\.)+/)), c = j(/^[|~*$^]?=/), c && (b = d.quoted() || j(/^[0-9]+%/) || j(/^[\w-]+/) || d.variableCurly()), n("]"), new x.Attribute(a, c, b) | ||
732 | } | ||
733 | }, | ||
734 | block: function() { | ||
735 | var a; | ||
736 | return k("{") && (a = this.primary()) && k("}") ? a : void 0 | ||
737 | }, | ||
738 | blockRuleset: function() { | ||
739 | var a = this.block(); | ||
740 | return a && (a = new x.Ruleset(null, a)), a | ||
741 | }, | ||
742 | detachedRuleset: function() { | ||
743 | var a = this.blockRuleset(); | ||
744 | return a ? new x.DetachedRuleset(a) : void 0 | ||
745 | }, | ||
746 | ruleset: function() { | ||
747 | var b, c, g, h; | ||
748 | for (d(), a.dumpLineNumbers && (h = t(y, v, a));;) { | ||
749 | if (c = this.lessSelector(), !c) break; | ||
750 | if (b ? b.push(c) : b = [c], this.comments(), c.condition && b.length > 1 && o("Guards are only currently allowed on a single selector."), !k(",")) break; | ||
751 | c.condition && o("Guards are only currently allowed on a single selector."), this.comments() | ||
752 | } | ||
753 | if (b && (g = this.block())) { | ||
754 | f(); | ||
755 | var i = new x.Ruleset(b, g, a.strictImports); | ||
756 | return a.dumpLineNumbers && (i.debugInfo = h), i | ||
757 | } | ||
758 | A = y, e() | ||
759 | }, | ||
760 | rule: function(b) { | ||
761 | var c, g, h, i, j, k = y, | ||
762 | l = v.charAt(k); | ||
763 | if ("." !== l && "#" !== l && "&" !== l) | ||
764 | if (d(), c = this.variable() || this.ruleProperty()) { | ||
765 | if (j = "string" == typeof c, j && (g = this.detachedRuleset()), g || (g = b || !a.compress && !j ? this.anonymousValue() || this.value() : this.value() || this.anonymousValue(), h = this.important(), i = !j && c.pop().value), g && this.end()) return f(), new x.Rule(c, g, h, i, k, a.currentFileInfo); | ||
766 | if (A = y, e(), g && !b) return this.rule(!0) | ||
767 | } else f() | ||
768 | }, | ||
769 | anonymousValue: function() { | ||
770 | var a; | ||
771 | return a = /^([^@+\/'"*`(;{}-]*);/.exec(C), a ? (y += a[0].length - 1, new x.Anonymous(a[1])) : void 0 | ||
772 | }, | ||
773 | "import": function() { | ||
774 | var b, c, g = y; | ||
775 | d(); | ||
776 | var h = j(/^@import?\s+/), | ||
777 | i = (h ? this.importOptions() : null) || {}; | ||
778 | return h && (b = this.entities.quoted() || this.entities.url()) && (c = this.mediaFeatures(), k(";")) ? (f(), c = c && new x.Value(c), new x.Import(b, c, i, g, a.currentFileInfo)) : void e() | ||
779 | }, | ||
780 | importOptions: function() { | ||
781 | var a, b, c, d = {}; | ||
782 | if (!k("(")) return null; | ||
783 | do | ||
784 | if (a = this.importOption()) { | ||
785 | switch (b = a, c = !0, b) { | ||
786 | case "css": | ||
787 | b = "less", c = !1; | ||
788 | break; | ||
789 | case "once": | ||
790 | b = "multiple", c = !1 | ||
791 | } | ||
792 | if (d[b] = c, !k(",")) break | ||
793 | } | ||
794 | while (a); | ||
795 | return n(")"), d | ||
796 | }, | ||
797 | importOption: function() { | ||
798 | var a = j(/^(less|css|multiple|once|inline|reference)/); | ||
799 | return a ? a[1] : void 0 | ||
800 | }, | ||
801 | mediaFeature: function() { | ||
802 | var b, c, d = this.entities, | ||
803 | e = []; | ||
804 | do | ||
805 | if (b = d.keyword() || d.variable()) e.push(b); | ||
806 | else if (k("(")) { | ||
807 | if (c = this.property(), b = this.value(), !k(")")) return null; | ||
808 | if (c && b) e.push(new x.Paren(new x.Rule(c, b, null, null, y, a.currentFileInfo, !0))); | ||
809 | else { | ||
810 | if (!b) return null; | ||
811 | e.push(new x.Paren(b)) | ||
812 | } | ||
813 | } while (b); | ||
814 | return e.length > 0 ? new x.Expression(e) : void 0 | ||
815 | }, | ||
816 | mediaFeatures: function() { | ||
817 | var a, b = this.entities, | ||
818 | c = []; | ||
819 | do | ||
820 | if (a = this.mediaFeature()) { | ||
821 | if (c.push(a), !k(",")) break | ||
822 | } else if (a = b.variable(), a && (c.push(a), !k(","))) break; while (a); | ||
823 | return c.length > 0 ? c : null | ||
824 | }, | ||
825 | media: function() { | ||
826 | var b, c, d, e; | ||
827 | return a.dumpLineNumbers && (e = t(y, v, a)), j(/^@media/) && (b = this.mediaFeatures(), c = this.block()) ? (d = new x.Media(c, b, y, a.currentFileInfo), a.dumpLineNumbers && (d.debugInfo = e), d) : void 0 | ||
828 | }, | ||
829 | directive: function() { | ||
830 | var b, c, g, h, i, l, m, n = y, | ||
831 | p = !0; | ||
832 | if ("@" === v.charAt(y)) { | ||
833 | if (c = this["import"]() || this.media()) return c; | ||
834 | if (d(), b = j(/^@[a-z-]+/)) { | ||
835 | switch (h = b, "-" == b.charAt(1) && b.indexOf("-", 2) > 0 && (h = "@" + b.slice(b.indexOf("-", 2) + 1)), h) { | ||
836 | case "@charset": | ||
837 | i = !0, p = !1; | ||
838 | break; | ||
839 | case "@namespace": | ||
840 | l = !0, p = !1; | ||
841 | break; | ||
842 | case "@keyframes": | ||
843 | i = !0; | ||
844 | break; | ||
845 | case "@host": | ||
846 | case "@page": | ||
847 | case "@document": | ||
848 | case "@supports": | ||
849 | m = !0 | ||
850 | } | ||
851 | return i ? (c = this.entity(), c || o("expected " + b + " identifier")) : l ? (c = this.expression(), c || o("expected " + b + " expression")) : m && (c = (j(/^[^{;]+/) || "").trim(), c && (c = new x.Anonymous(c))), p && (g = this.blockRuleset()), g || !p && c && k(";") ? (f(), new x.Directive(b, c, g, n, a.currentFileInfo, a.dumpLineNumbers ? t(n, v, a) : null)) : void e() | ||
852 | } | ||
853 | } | ||
854 | }, | ||
855 | value: function() { | ||
856 | var a, b = []; | ||
857 | do | ||
858 | if (a = this.expression(), a && (b.push(a), !k(","))) break; | ||
859 | while (a); | ||
860 | return b.length > 0 ? new x.Value(b) : void 0 | ||
861 | }, | ||
862 | important: function() { | ||
863 | return "!" === v.charAt(y) ? j(/^! *important/) : void 0 | ||
864 | }, | ||
865 | sub: function() { | ||
866 | var a, b; | ||
867 | return k("(") && (a = this.addition()) ? (b = new x.Expression([a]), n(")"), b.parens = !0, b) : void 0 | ||
868 | }, | ||
869 | multiplication: function() { | ||
870 | var a, b, c, d, e; | ||
871 | if (a = this.operand()) { | ||
872 | for (e = h(v, y - 1);;) { | ||
873 | if (p(/^\/[*\/]/)) break; | ||
874 | if (c = k("/") || k("*"), !c) break; | ||
875 | if (b = this.operand(), !b) break; | ||
876 | a.parensInOp = !0, b.parensInOp = !0, d = new x.Operation(c, [d || a, b], e), e = h(v, y - 1) | ||
877 | } | ||
878 | return d || a | ||
879 | } | ||
880 | }, | ||
881 | addition: function() { | ||
882 | var a, b, c, d, e; | ||
883 | if (a = this.multiplication()) { | ||
884 | for (e = h(v, y - 1);;) { | ||
885 | if (c = j(/^[-+]\s+/) || !e && (k("+") || k("-")), !c) break; | ||
886 | if (b = this.multiplication(), !b) break; | ||
887 | a.parensInOp = !0, b.parensInOp = !0, d = new x.Operation(c, [d || a, b], e), e = h(v, y - 1) | ||
888 | } | ||
889 | return d || a | ||
890 | } | ||
891 | }, | ||
892 | conditions: function() { | ||
893 | var a, b, c, d = y; | ||
894 | if (a = this.condition()) { | ||
895 | for (;;) { | ||
896 | if (!p(/^,\s*(not\s*)?\(/) || !k(",")) break; | ||
897 | if (b = this.condition(), !b) break; | ||
898 | c = new x.Condition("or", c || a, b, d) | ||
899 | } | ||
900 | return c || a | ||
901 | } | ||
902 | }, | ||
903 | condition: function() { | ||
904 | var a, b, c, d, e = this.entities, | ||
905 | f = y, | ||
906 | g = !1; | ||
907 | return j(/^not/) && (g = !0), n("("), a = this.addition() || e.keyword() || e.quoted(), a ? (d = j(/^(?:>=|<=|=<|[<=>])/), d ? (b = this.addition() || e.keyword() || e.quoted(), b ? c = new x.Condition(d, a, b, f, g) : o("expected expression")) : c = new x.Condition("=", a, new x.Keyword("true"), f, g), n(")"), j(/^and/) ? new x.Condition("and", c, this.condition()) : c) : void 0 | ||
908 | }, | ||
909 | operand: function() { | ||
910 | var a, b = this.entities, | ||
911 | c = v.charAt(y + 1); | ||
912 | "-" !== v.charAt(y) || "@" !== c && "(" !== c || (a = k("-")); | ||
913 | var d = this.sub() || b.dimension() || b.color() || b.variable() || b.call(); | ||
914 | return a && (d.parensInOp = !0, d = new x.Negative(d)), d | ||
915 | }, | ||
916 | expression: function() { | ||
917 | var a, b, c = []; | ||
918 | do a = this.addition() || this.entity(), a && (c.push(a), p(/^\/[\/*]/) || (b = k("/"), b && c.push(new x.Anonymous(b)))); while (a); | ||
919 | return c.length > 0 ? new x.Expression(c) : void 0 | ||
920 | }, | ||
921 | property: function() { | ||
922 | var a = j(/^(\*?-?[_a-zA-Z0-9-]+)\s*:/); | ||
923 | return a ? a[1] : void 0 | ||
924 | }, | ||
925 | ruleProperty: function() { | ||
926 | function b(a) { | ||
927 | var b = a.exec(e); | ||
928 | return b ? (g.push(y + h), h += b[0].length, e = e.slice(b[1].length), f.push(b[1])) : void 0 | ||
929 | } | ||
930 | var c, d, e = C, | ||
931 | f = [], | ||
932 | g = [], | ||
933 | h = 0; | ||
934 | for (b(/^(\*?)/); b(/^((?:[\w-]+)|(?:@\{[\w-]+\}))/);); | ||
935 | if (f.length > 1 && b(/^\s*((?:\+_|\+)?)\s*:/)) { | ||
936 | for (l(h), "" === f[0] && (f.shift(), g.shift()), d = 0; d < f.length; d++) c = f[d], f[d] = "@" !== c.charAt(0) ? new x.Keyword(c) : new x.Variable("@" + c.slice(2, -1), g[d], a.currentFileInfo); | ||
937 | return f | ||
938 | } | ||
939 | } | ||
940 | } | ||
941 | } | ||
942 | }, w.Parser.serializeVars = function(a) { | ||
943 | var b = ""; | ||
944 | for (var c in a) | ||
945 | if (Object.hasOwnProperty.call(a, c)) { | ||
946 | var d = a[c]; | ||
947 | b += ("@" === c[0] ? "" : "@") + c + ": " + d + (";" === ("" + d).slice(-1) ? "" : ";") | ||
948 | } | ||
949 | return b | ||
950 | }, | ||
951 | function(d) { | ||
952 | function e(a, b, c) { | ||
953 | if (!(c instanceof d.Dimension)) throw { | ||
954 | type: "Argument", | ||
955 | message: "argument must be a number" | ||
956 | }; | ||
957 | return null == b ? b = c.unit : c = c.unify(), new d.Dimension(a(parseFloat(c.value)), b) | ||
958 | } | ||
959 | |||
960 | function f(a, b, c) { | ||
961 | var e, f, g, h, i = b.alpha, | ||
962 | j = c.alpha, | ||
963 | k = []; | ||
964 | g = j + i * (1 - j); | ||
965 | for (var l = 0; 3 > l; l++) e = b.rgb[l] / 255, f = c.rgb[l] / 255, h = a(e, f), g && (h = (j * f + i * (e - j * (e + f - h))) / g), k[l] = 255 * h; | ||
966 | return new d.Color(k, g) | ||
967 | } | ||
968 | |||
969 | function g() { | ||
970 | var a, b = d.functions; | ||
971 | for (a in l) l.hasOwnProperty(a) && (b[a] = e.bind(null, Math[a], l[a])); | ||
972 | for (a in m) m.hasOwnProperty(a) && (b[a] = f.bind(null, m[a])); | ||
973 | a = d.defaultFunc, b["default"] = a.eval.bind(a) | ||
974 | } | ||
975 | |||
976 | function h(a) { | ||
977 | return d.functions.hsla(a.h, a.s, a.l, a.a) | ||
978 | } | ||
979 | |||
980 | function i(a, b) { | ||
981 | return a instanceof d.Dimension && a.unit.is("%") ? parseFloat(a.value * b / 100) : j(a) | ||
982 | } | ||
983 | |||
984 | function j(a) { | ||
985 | if (a instanceof d.Dimension) return parseFloat(a.unit.is("%") ? a.value / 100 : a.value); | ||
986 | if ("number" == typeof a) return a; | ||
987 | throw { | ||
988 | error: "RuntimeError", | ||
989 | message: "color functions take numbers as parameters" | ||
990 | } | ||
991 | } | ||
992 | |||
993 | function k(a) { | ||
994 | return Math.min(1, Math.max(0, a)) | ||
995 | } | ||
996 | d.functions = { | ||
997 | rgb: function(a, b, c) { | ||
998 | return this.rgba(a, b, c, 1) | ||
999 | }, | ||
1000 | rgba: function(a, b, c, e) { | ||
1001 | var f = [a, b, c].map(function(a) { | ||
1002 | return i(a, 255) | ||
1003 | }); | ||
1004 | return e = j(e), new d.Color(f, e) | ||
1005 | }, | ||
1006 | hsl: function(a, b, c) { | ||
1007 | return this.hsla(a, b, c, 1) | ||
1008 | }, | ||
1009 | hsla: function(a, b, c, d) { | ||
1010 | function e(a) { | ||
1011 | return a = 0 > a ? a + 1 : a > 1 ? a - 1 : a, 1 > 6 * a ? g + (f - g) * a * 6 : 1 > 2 * a ? f : 2 > 3 * a ? g + (f - g) * (2 / 3 - a) * 6 : g | ||
1012 | } | ||
1013 | a = j(a) % 360 / 360, b = k(j(b)), c = k(j(c)), d = k(j(d)); | ||
1014 | var f = .5 >= c ? c * (b + 1) : c + b - c * b, | ||
1015 | g = 2 * c - f; | ||
1016 | return this.rgba(255 * e(a + 1 / 3), 255 * e(a), 255 * e(a - 1 / 3), d) | ||
1017 | }, | ||
1018 | hsv: function(a, b, c) { | ||
1019 | return this.hsva(a, b, c, 1) | ||
1020 | }, | ||
1021 | hsva: function(a, b, c, d) { | ||
1022 | a = j(a) % 360 / 360 * 360, b = j(b), c = j(c), d = j(d); | ||
1023 | var e, f; | ||
1024 | e = Math.floor(a / 60 % 6), f = a / 60 - e; | ||
1025 | var g = [c, c * (1 - b), c * (1 - f * b), c * (1 - (1 - f) * b)], | ||
1026 | h = [ | ||
1027 | [0, 3, 1], | ||
1028 | [2, 0, 1], | ||
1029 | [1, 0, 3], | ||
1030 | [1, 2, 0], | ||
1031 | [3, 1, 0], | ||
1032 | [0, 1, 2] | ||
1033 | ]; | ||
1034 | return this.rgba(255 * g[h[e][0]], 255 * g[h[e][1]], 255 * g[h[e][2]], d) | ||
1035 | }, | ||
1036 | hue: function(a) { | ||
1037 | return new d.Dimension(Math.round(a.toHSL().h)) | ||
1038 | }, | ||
1039 | saturation: function(a) { | ||
1040 | return new d.Dimension(Math.round(100 * a.toHSL().s), "%") | ||
1041 | }, | ||
1042 | lightness: function(a) { | ||
1043 | return new d.Dimension(Math.round(100 * a.toHSL().l), "%") | ||
1044 | }, | ||
1045 | hsvhue: function(a) { | ||
1046 | return new d.Dimension(Math.round(a.toHSV().h)) | ||
1047 | }, | ||
1048 | hsvsaturation: function(a) { | ||
1049 | return new d.Dimension(Math.round(100 * a.toHSV().s), "%") | ||
1050 | }, | ||
1051 | hsvvalue: function(a) { | ||
1052 | return new d.Dimension(Math.round(100 * a.toHSV().v), "%") | ||
1053 | }, | ||
1054 | red: function(a) { | ||
1055 | return new d.Dimension(a.rgb[0]) | ||
1056 | }, | ||
1057 | green: function(a) { | ||
1058 | return new d.Dimension(a.rgb[1]) | ||
1059 | }, | ||
1060 | blue: function(a) { | ||
1061 | return new d.Dimension(a.rgb[2]) | ||
1062 | }, | ||
1063 | alpha: function(a) { | ||
1064 | return new d.Dimension(a.toHSL().a) | ||
1065 | }, | ||
1066 | luma: function(a) { | ||
1067 | return new d.Dimension(Math.round(a.luma() * a.alpha * 100), "%") | ||
1068 | }, | ||
1069 | luminance: function(a) { | ||
1070 | var b = .2126 * a.rgb[0] / 255 + .7152 * a.rgb[1] / 255 + .0722 * a.rgb[2] / 255; | ||
1071 | return new d.Dimension(Math.round(b * a.alpha * 100), "%") | ||
1072 | }, | ||
1073 | saturate: function(a, b) { | ||
1074 | if (!a.rgb) return null; | ||
1075 | var c = a.toHSL(); | ||
1076 | return c.s += b.value / 100, c.s = k(c.s), h(c) | ||
1077 | }, | ||
1078 | desaturate: function(a, b) { | ||
1079 | var c = a.toHSL(); | ||
1080 | return c.s -= b.value / 100, c.s = k(c.s), h(c) | ||
1081 | }, | ||
1082 | lighten: function(a, b) { | ||
1083 | var c = a.toHSL(); | ||
1084 | return c.l += b.value / 100, c.l = k(c.l), h(c) | ||
1085 | }, | ||
1086 | darken: function(a, b) { | ||
1087 | var c = a.toHSL(); | ||
1088 | return c.l -= b.value / 100, c.l = k(c.l), h(c) | ||
1089 | }, | ||
1090 | fadein: function(a, b) { | ||
1091 | var c = a.toHSL(); | ||
1092 | return c.a += b.value / 100, c.a = k(c.a), h(c) | ||
1093 | }, | ||
1094 | fadeout: function(a, b) { | ||
1095 | var c = a.toHSL(); | ||
1096 | return c.a -= b.value / 100, c.a = k(c.a), h(c) | ||
1097 | }, | ||
1098 | fade: function(a, b) { | ||
1099 | var c = a.toHSL(); | ||
1100 | return c.a = b.value / 100, c.a = k(c.a), h(c) | ||
1101 | }, | ||
1102 | spin: function(a, b) { | ||
1103 | var c = a.toHSL(), | ||
1104 | d = (c.h + b.value) % 360; | ||
1105 | return c.h = 0 > d ? 360 + d : d, h(c) | ||
1106 | }, | ||
1107 | mix: function(a, b, c) { | ||
1108 | c || (c = new d.Dimension(50)); | ||
1109 | var e = c.value / 100, | ||
1110 | f = 2 * e - 1, | ||
1111 | g = a.toHSL().a - b.toHSL().a, | ||
1112 | h = ((f * g == -1 ? f : (f + g) / (1 + f * g)) + 1) / 2, | ||
1113 | i = 1 - h, | ||
1114 | j = [a.rgb[0] * h + b.rgb[0] * i, a.rgb[1] * h + b.rgb[1] * i, a.rgb[2] * h + b.rgb[2] * i], | ||
1115 | k = a.alpha * e + b.alpha * (1 - e); | ||
1116 | return new d.Color(j, k) | ||
1117 | }, | ||
1118 | greyscale: function(a) { | ||
1119 | return this.desaturate(a, new d.Dimension(100)) | ||
1120 | }, | ||
1121 | contrast: function(a, b, c, d) { | ||
1122 | if (!a.rgb) return null; | ||
1123 | if ("undefined" == typeof c && (c = this.rgba(255, 255, 255, 1)), "undefined" == typeof b && (b = this.rgba(0, 0, 0, 1)), b.luma() > c.luma()) { | ||
1124 | var e = c; | ||
1125 | c = b, b = e | ||
1126 | } | ||
1127 | return d = "undefined" == typeof d ? .43 : j(d), a.luma() < d ? c : b | ||
1128 | }, | ||
1129 | e: function(a) { | ||
1130 | return new d.Anonymous(a instanceof d.JavaScript ? a.evaluated : a) | ||
1131 | }, | ||
1132 | escape: function(a) { | ||
1133 | return new d.Anonymous(encodeURI(a.value).replace(/=/g, "%3D").replace(/:/g, "%3A").replace(/#/g, "%23").replace(/;/g, "%3B").replace(/\(/g, "%28").replace(/\)/g, "%29")) | ||
1134 | }, | ||
1135 | replace: function(a, b, c, e) { | ||
1136 | var f = a.value; | ||
1137 | return f = f.replace(new RegExp(b.value, e ? e.value : ""), c.value), new d.Quoted(a.quote || "", f, a.escaped) | ||
1138 | }, | ||
1139 | "%": function(a) { | ||
1140 | for (var b = Array.prototype.slice.call(arguments, 1), c = a.value, e = 0; e < b.length; e++) c = c.replace(/%[sda]/i, function(a) { | ||
1141 | var c = a.match(/s/i) ? b[e].value : b[e].toCSS(); | ||
1142 | return a.match(/[A-Z]$/) ? encodeURIComponent(c) : c | ||
1143 | }); | ||
1144 | return c = c.replace(/%%/g, "%"), new d.Quoted(a.quote || "", c, a.escaped) | ||
1145 | }, | ||
1146 | unit: function(a, b) { | ||
1147 | if (!(a instanceof d.Dimension)) throw { | ||
1148 | type: "Argument", | ||
1149 | message: "the first argument to unit must be a number" + (a instanceof d.Operation ? ". Have you forgotten parenthesis?" : "") | ||
1150 | }; | ||
1151 | return b = b ? b instanceof d.Keyword ? b.value : b.toCSS() : "", new d.Dimension(a.value, b) | ||
1152 | }, | ||
1153 | convert: function(a, b) { | ||
1154 | return a.convertTo(b.value) | ||
1155 | }, | ||
1156 | round: function(a, b) { | ||
1157 | var c = "undefined" == typeof b ? 0 : b.value; | ||
1158 | return e(function(a) { | ||
1159 | return a.toFixed(c) | ||
1160 | }, null, a) | ||
1161 | }, | ||
1162 | pi: function() { | ||
1163 | return new d.Dimension(Math.PI) | ||
1164 | }, | ||
1165 | mod: function(a, b) { | ||
1166 | return new d.Dimension(a.value % b.value, a.unit) | ||
1167 | }, | ||
1168 | pow: function(a, b) { | ||
1169 | if ("number" == typeof a && "number" == typeof b) a = new d.Dimension(a), b = new d.Dimension(b); | ||
1170 | else if (!(a instanceof d.Dimension && b instanceof d.Dimension)) throw { | ||
1171 | type: "Argument", | ||
1172 | message: "arguments must be numbers" | ||
1173 | }; | ||
1174 | return new d.Dimension(Math.pow(a.value, b.value), a.unit) | ||
1175 | }, | ||
1176 | _minmax: function(a, c) { | ||
1177 | switch (c = Array.prototype.slice.call(c), c.length) { | ||
1178 | case 0: | ||
1179 | throw { | ||
1180 | type: "Argument", | ||
1181 | message: "one or more arguments required" | ||
1182 | } | ||
1183 | } | ||
1184 | var e, f, g, h, i, j, k, l, m = [], | ||
1185 | n = {}; | ||
1186 | for (e = 0; e < c.length; e++) | ||
1187 | if (g = c[e], g instanceof d.Dimension) | ||
1188 | if (h = "" === g.unit.toString() && l !== b ? new d.Dimension(g.value, l).unify() : g.unify(), j = "" === h.unit.toString() && k !== b ? k : h.unit.toString(), k = "" !== j && k === b || "" !== j && "" === m[0].unify().unit.toString() ? j : k, l = "" !== j && l === b ? g.unit.toString() : l, f = n[""] !== b && "" !== j && j === k ? n[""] : n[j], f !== b) i = "" === m[f].unit.toString() && l !== b ? new d.Dimension(m[f].value, l).unify() : m[f].unify(), (a && h.value < i.value || !a && h.value > i.value) && (m[f] = g); | ||
1189 | else { | ||
1190 | if (k !== b && j !== k) throw { | ||
1191 | type: "Argument", | ||
1192 | message: "incompatible types" | ||
1193 | }; | ||
1194 | n[j] = m.length, m.push(g) | ||
1195 | } else Array.isArray(c[e].value) && Array.prototype.push.apply(c, Array.prototype.slice.call(c[e].value)); | ||
1196 | return 1 == m.length ? m[0] : (c = m.map(function(a) { | ||
1197 | return a.toCSS(this.env) | ||
1198 | }).join(this.env.compress ? "," : ", "), new d.Anonymous((a ? "min" : "max") + "(" + c + ")")) | ||
1199 | }, | ||
1200 | min: function() { | ||
1201 | return this._minmax(!0, arguments) | ||
1202 | }, | ||
1203 | max: function() { | ||
1204 | return this._minmax(!1, arguments) | ||
1205 | }, | ||
1206 | "get-unit": function(a) { | ||
1207 | return new d.Anonymous(a.unit) | ||
1208 | }, | ||
1209 | argb: function(a) { | ||
1210 | return new d.Anonymous(a.toARGB()) | ||
1211 | }, | ||
1212 | percentage: function(a) { | ||
1213 | return new d.Dimension(100 * a.value, "%") | ||
1214 | }, | ||
1215 | color: function(a) { | ||
1216 | if (a instanceof d.Quoted) { | ||
1217 | var b, c = a.value; | ||
1218 | if (b = d.Color.fromKeyword(c)) return b; | ||
1219 | if (/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})/.test(c)) return new d.Color(c.slice(1)); | ||
1220 | throw { | ||
1221 | type: "Argument", | ||
1222 | message: "argument must be a color keyword or 3/6 digit hex e.g. #FFF" | ||
1223 | } | ||
1224 | } | ||
1225 | throw { | ||
1226 | type: "Argument", | ||
1227 | message: "argument must be a string" | ||
1228 | } | ||
1229 | }, | ||
1230 | iscolor: function(a) { | ||
1231 | return this._isa(a, d.Color) | ||
1232 | }, | ||
1233 | isnumber: function(a) { | ||
1234 | return this._isa(a, d.Dimension) | ||
1235 | }, | ||
1236 | isstring: function(a) { | ||
1237 | return this._isa(a, d.Quoted) | ||
1238 | }, | ||
1239 | iskeyword: function(a) { | ||
1240 | return this._isa(a, d.Keyword) | ||
1241 | }, | ||
1242 | isurl: function(a) { | ||
1243 | return this._isa(a, d.URL) | ||
1244 | }, | ||
1245 | ispixel: function(a) { | ||
1246 | return this.isunit(a, "px") | ||
1247 | }, | ||
1248 | ispercentage: function(a) { | ||
1249 | return this.isunit(a, "%") | ||
1250 | }, | ||
1251 | isem: function(a) { | ||
1252 | return this.isunit(a, "em") | ||
1253 | }, | ||
1254 | isunit: function(a, b) { | ||
1255 | return a instanceof d.Dimension && a.unit.is(b.value || b) ? d.True : d.False | ||
1256 | }, | ||
1257 | _isa: function(a, b) { | ||
1258 | return a instanceof b ? d.True : d.False | ||
1259 | }, | ||
1260 | tint: function(a, b) { | ||
1261 | return this.mix(this.rgb(255, 255, 255), a, b) | ||
1262 | }, | ||
1263 | shade: function(a, b) { | ||
1264 | return this.mix(this.rgb(0, 0, 0), a, b) | ||
1265 | }, | ||
1266 | extract: function(a, b) { | ||
1267 | return b = b.value - 1, Array.isArray(a.value) ? a.value[b] : Array(a)[b] | ||
1268 | }, | ||
1269 | length: function(a) { | ||
1270 | var b = Array.isArray(a.value) ? a.value.length : 1; | ||
1271 | return new d.Dimension(b) | ||
1272 | }, | ||
1273 | "data-uri": function(b, e) { | ||
1274 | if ("undefined" != typeof a) return new d.URL(e || b, this.currentFileInfo).eval(this.env); | ||
1275 | var f = b.value, | ||
1276 | g = e && e.value, | ||
1277 | h = c("fs"), | ||
1278 | i = c("path"), | ||
1279 | j = !1; | ||
1280 | if (arguments.length < 2 && (g = f), this.env.isPathRelative(g) && (g = this.currentFileInfo.relativeUrls ? i.join(this.currentFileInfo.currentDirectory, g) : i.join(this.currentFileInfo.entryPath, g)), arguments.length < 2) { | ||
1281 | var k; | ||
1282 | try { | ||
1283 | k = c("mime") | ||
1284 | } catch (l) { | ||
1285 | k = d._mime | ||
1286 | } | ||
1287 | f = k.lookup(g); | ||
1288 | var m = k.charsets.lookup(f); | ||
1289 | j = ["US-ASCII", "UTF-8"].indexOf(m) < 0, j && (f += ";base64") | ||
1290 | } else j = /;base64$/.test(f); | ||
1291 | var n = h.readFileSync(g), | ||
1292 | o = 32, | ||
1293 | p = parseInt(n.length / 1024, 10); | ||
1294 | if (p >= o && this.env.ieCompat !== !1) return this.env.silent || console.warn("Skipped data-uri embedding of %s because its size (%dKB) exceeds IE8-safe %dKB!", g, p, o), new d.URL(e || b, this.currentFileInfo).eval(this.env); | ||
1295 | n = j ? n.toString("base64") : encodeURIComponent(n); | ||
1296 | var q = '"data:' + f + "," + n + '"'; | ||
1297 | return new d.URL(new d.Anonymous(q)) | ||
1298 | }, | ||
1299 | "svg-gradient": function(a) { | ||
1300 | function e() { | ||
1301 | throw { | ||
1302 | type: "Argument", | ||
1303 | message: "svg-gradient expects direction, start_color [start_position], [color position,]..., end_color [end_position]" | ||
1304 | } | ||
1305 | } | ||
1306 | arguments.length < 3 && e(); | ||
1307 | var f, g, h, i, j, k, l, m = Array.prototype.slice.call(arguments, 1), | ||
1308 | n = "linear", | ||
1309 | o = 'x="0" y="0" width="1" height="1"', | ||
1310 | p = !0, | ||
1311 | q = { | ||
1312 | compress: !1 | ||
1313 | }, | ||
1314 | r = a.toCSS(q); | ||
1315 | switch (r) { | ||
1316 | case "to bottom": | ||
1317 | f = 'x1="0%" y1="0%" x2="0%" y2="100%"'; | ||
1318 | break; | ||
1319 | case "to right": | ||
1320 | f = 'x1="0%" y1="0%" x2="100%" y2="0%"'; | ||
1321 | break; | ||
1322 | case "to bottom right": | ||
1323 | f = 'x1="0%" y1="0%" x2="100%" y2="100%"'; | ||
1324 | break; | ||
1325 | case "to top right": | ||
1326 | f = 'x1="0%" y1="100%" x2="100%" y2="0%"'; | ||
1327 | break; | ||
1328 | case "ellipse": | ||
1329 | case "ellipse at center": | ||
1330 | n = "radial", f = 'cx="50%" cy="50%" r="75%"', o = 'x="-50" y="-50" width="101" height="101"'; | ||
1331 | break; | ||
1332 | default: | ||
1333 | throw { | ||
1334 | type: "Argument", | ||
1335 | message: "svg-gradient direction must be 'to bottom', 'to right', 'to bottom right', 'to top right' or 'ellipse at center'" | ||
1336 | } | ||
1337 | } | ||
1338 | for (g = '<?xml version="1.0" ?><svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="100%" height="100%" viewBox="0 0 1 1" preserveAspectRatio="none"><' + n + 'Gradient id="gradient" gradientUnits="userSpaceOnUse" ' + f + ">", h = 0; h < m.length; h += 1) m[h].value ? (i = m[h].value[0], j = m[h].value[1]) : (i = m[h], j = b), i instanceof d.Color && ((0 === h || h + 1 === m.length) && j === b || j instanceof d.Dimension) || e(), k = j ? j.toCSS(q) : 0 === h ? "0%" : "100%", l = i.alpha, g += '<stop offset="' + k + '" stop-color="' + i.toRGB() + '"' + (1 > l ? ' stop-opacity="' + l + '"' : "") + "/>"; | ||
1339 | if (g += "</" + n + "Gradient><rect " + o + ' fill="url(#gradient)" /></svg>', p) try { | ||
1340 | g = c("./encoder").encodeBase64(g) | ||
1341 | } catch (s) { | ||
1342 | p = !1 | ||
1343 | } | ||
1344 | return g = "'data:image/svg+xml" + (p ? ";base64" : "") + "," + g + "'", new d.URL(new d.Anonymous(g)) | ||
1345 | } | ||
1346 | }, d._mime = { | ||
1347 | _types: { | ||
1348 | ".htm": "text/html", | ||
1349 | ".html": "text/html", | ||
1350 | ".gif": "image/gif", | ||
1351 | ".jpg": "image/jpeg", | ||
1352 | ".jpeg": "image/jpeg", | ||
1353 | ".png": "image/png" | ||
1354 | }, | ||
1355 | lookup: function(a) { | ||
1356 | var e = c("path").extname(a), | ||
1357 | f = d._mime._types[e]; | ||
1358 | if (f === b) throw new Error('Optional dependency "mime" is required for ' + e); | ||
1359 | return f | ||
1360 | }, | ||
1361 | charsets: { | ||
1362 | lookup: function(a) { | ||
1363 | return a && /^text\//.test(a) ? "UTF-8" : "" | ||
1364 | } | ||
1365 | } | ||
1366 | }; | ||
1367 | var l = { | ||
1368 | ceil: null, | ||
1369 | floor: null, | ||
1370 | sqrt: null, | ||
1371 | abs: null, | ||
1372 | tan: "", | ||
1373 | sin: "", | ||
1374 | cos: "", | ||
1375 | atan: "rad", | ||
1376 | asin: "rad", | ||
1377 | acos: "rad" | ||
1378 | }, | ||
1379 | m = { | ||
1380 | multiply: function(a, b) { | ||
1381 | return a * b | ||
1382 | }, | ||
1383 | screen: function(a, b) { | ||
1384 | return a + b - a * b | ||
1385 | }, | ||
1386 | overlay: function(a, b) { | ||
1387 | return a *= 2, 1 >= a ? m.multiply(a, b) : m.screen(a - 1, b) | ||
1388 | }, | ||
1389 | softlight: function(a, b) { | ||
1390 | var c = 1, | ||
1391 | d = a; | ||
1392 | return b > .5 && (d = 1, c = a > .25 ? Math.sqrt(a) : ((16 * a - 12) * a + 4) * a), a - (1 - 2 * b) * d * (c - a) | ||
1393 | }, | ||
1394 | hardlight: function(a, b) { | ||
1395 | return m.overlay(b, a) | ||
1396 | }, | ||
1397 | difference: function(a, b) { | ||
1398 | return Math.abs(a - b) | ||
1399 | }, | ||
1400 | exclusion: function(a, b) { | ||
1401 | return a + b - 2 * a * b | ||
1402 | }, | ||
1403 | average: function(a, b) { | ||
1404 | return (a + b) / 2 | ||
1405 | }, | ||
1406 | negation: function(a, b) { | ||
1407 | return 1 - Math.abs(a + b - 1) | ||
1408 | } | ||
1409 | }; | ||
1410 | d.defaultFunc = { | ||
1411 | eval: function() { | ||
1412 | var a = this.value_, | ||
1413 | b = this.error_; | ||
1414 | if (b) throw b; | ||
1415 | return null != a ? a ? d.True : d.False : void 0 | ||
1416 | }, | ||
1417 | value: function(a) { | ||
1418 | this.value_ = a | ||
1419 | }, | ||
1420 | error: function(a) { | ||
1421 | this.error_ = a | ||
1422 | }, | ||
1423 | reset: function() { | ||
1424 | this.value_ = this.error_ = null | ||
1425 | } | ||
1426 | }, g(), d.fround = function(a, b) { | ||
1427 | var c; | ||
1428 | return a && null != a.numPrecision ? (c = Math.pow(10, a.numPrecision), Math.round(b * c) / c) : b | ||
1429 | }, d.functionCall = function(a, b) { | ||
1430 | this.env = a, this.currentFileInfo = b | ||
1431 | }, d.functionCall.prototype = d.functions | ||
1432 | }(c("./tree")), | ||
1433 | function(a) { | ||
1434 | a.colors = { | ||
1435 | aliceblue: "#f0f8ff", | ||
1436 | antiquewhite: "#faebd7", | ||
1437 | aqua: "#00ffff", | ||
1438 | aquamarine: "#7fffd4", | ||
1439 | azure: "#f0ffff", | ||
1440 | beige: "#f5f5dc", | ||
1441 | bisque: "#ffe4c4", | ||
1442 | black: "#000000", | ||
1443 | blanchedalmond: "#ffebcd", | ||
1444 | blue: "#0000ff", | ||
1445 | blueviolet: "#8a2be2", | ||
1446 | brown: "#a52a2a", | ||
1447 | burlywood: "#deb887", | ||
1448 | cadetblue: "#5f9ea0", | ||
1449 | chartreuse: "#7fff00", | ||
1450 | chocolate: "#d2691e", | ||
1451 | coral: "#ff7f50", | ||
1452 | cornflowerblue: "#6495ed", | ||
1453 | cornsilk: "#fff8dc", | ||
1454 | crimson: "#dc143c", | ||
1455 | cyan: "#00ffff", | ||
1456 | darkblue: "#00008b", | ||
1457 | darkcyan: "#008b8b", | ||
1458 | darkgoldenrod: "#b8860b", | ||
1459 | darkgray: "#a9a9a9", | ||
1460 | darkgrey: "#a9a9a9", | ||
1461 | darkgreen: "#006400", | ||
1462 | darkkhaki: "#bdb76b", | ||
1463 | darkmagenta: "#8b008b", | ||
1464 | darkolivegreen: "#556b2f", | ||
1465 | darkorange: "#ff8c00", | ||
1466 | darkorchid: "#9932cc", | ||
1467 | darkred: "#8b0000", | ||
1468 | darksalmon: "#e9967a", | ||
1469 | darkseagreen: "#8fbc8f", | ||
1470 | darkslateblue: "#483d8b", | ||
1471 | darkslategray: "#2f4f4f", | ||
1472 | darkslategrey: "#2f4f4f", | ||
1473 | darkturquoise: "#00ced1", | ||
1474 | darkviolet: "#9400d3", | ||
1475 | deeppink: "#ff1493", | ||
1476 | deepskyblue: "#00bfff", | ||
1477 | dimgray: "#696969", | ||
1478 | dimgrey: "#696969", | ||
1479 | dodgerblue: "#1e90ff", | ||
1480 | firebrick: "#b22222", | ||
1481 | floralwhite: "#fffaf0", | ||
1482 | forestgreen: "#228b22", | ||
1483 | fuchsia: "#ff00ff", | ||
1484 | gainsboro: "#dcdcdc", | ||
1485 | ghostwhite: "#f8f8ff", | ||
1486 | gold: "#ffd700", | ||
1487 | goldenrod: "#daa520", | ||
1488 | gray: "#808080", | ||
1489 | grey: "#808080", | ||
1490 | green: "#008000", | ||
1491 | greenyellow: "#adff2f", | ||
1492 | honeydew: "#f0fff0", | ||
1493 | hotpink: "#ff69b4", | ||
1494 | indianred: "#cd5c5c", | ||
1495 | indigo: "#4b0082", | ||
1496 | ivory: "#fffff0", | ||
1497 | khaki: "#f0e68c", | ||
1498 | lavender: "#e6e6fa", | ||
1499 | lavenderblush: "#fff0f5", | ||
1500 | lawngreen: "#7cfc00", | ||
1501 | lemonchiffon: "#fffacd", | ||
1502 | lightblue: "#add8e6", | ||
1503 | lightcoral: "#f08080", | ||
1504 | lightcyan: "#e0ffff", | ||
1505 | lightgoldenrodyellow: "#fafad2", | ||
1506 | lightgray: "#d3d3d3", | ||
1507 | lightgrey: "#d3d3d3", | ||
1508 | lightgreen: "#90ee90", | ||
1509 | lightpink: "#ffb6c1", | ||
1510 | lightsalmon: "#ffa07a", | ||
1511 | lightseagreen: "#20b2aa", | ||
1512 | lightskyblue: "#87cefa", | ||
1513 | lightslategray: "#778899", | ||
1514 | lightslategrey: "#778899", | ||
1515 | lightsteelblue: "#b0c4de", | ||
1516 | lightyellow: "#ffffe0", | ||
1517 | lime: "#00ff00", | ||
1518 | limegreen: "#32cd32", | ||
1519 | linen: "#faf0e6", | ||
1520 | magenta: "#ff00ff", | ||
1521 | maroon: "#800000", | ||
1522 | mediumaquamarine: "#66cdaa", | ||
1523 | mediumblue: "#0000cd", | ||
1524 | mediumorchid: "#ba55d3", | ||
1525 | mediumpurple: "#9370d8", | ||
1526 | mediumseagreen: "#3cb371", | ||
1527 | mediumslateblue: "#7b68ee", | ||
1528 | mediumspringgreen: "#00fa9a", | ||
1529 | mediumturquoise: "#48d1cc", | ||
1530 | mediumvioletred: "#c71585", | ||
1531 | midnightblue: "#191970", | ||
1532 | mintcream: "#f5fffa", | ||
1533 | mistyrose: "#ffe4e1", | ||
1534 | moccasin: "#ffe4b5", | ||
1535 | navajowhite: "#ffdead", | ||
1536 | navy: "#000080", | ||
1537 | oldlace: "#fdf5e6", | ||
1538 | olive: "#808000", | ||
1539 | olivedrab: "#6b8e23", | ||
1540 | orange: "#ffa500", | ||
1541 | orangered: "#ff4500", | ||
1542 | orchid: "#da70d6", | ||
1543 | palegoldenrod: "#eee8aa", | ||
1544 | palegreen: "#98fb98", | ||
1545 | paleturquoise: "#afeeee", | ||
1546 | palevioletred: "#d87093", | ||
1547 | papayawhip: "#ffefd5", | ||
1548 | peachpuff: "#ffdab9", | ||
1549 | peru: "#cd853f", | ||
1550 | pink: "#ffc0cb", | ||
1551 | plum: "#dda0dd", | ||
1552 | powderblue: "#b0e0e6", | ||
1553 | purple: "#800080", | ||
1554 | red: "#ff0000", | ||
1555 | rosybrown: "#bc8f8f", | ||
1556 | royalblue: "#4169e1", | ||
1557 | saddlebrown: "#8b4513", | ||
1558 | salmon: "#fa8072", | ||
1559 | sandybrown: "#f4a460", | ||
1560 | seagreen: "#2e8b57", | ||
1561 | seashell: "#fff5ee", | ||
1562 | sienna: "#a0522d", | ||
1563 | silver: "#c0c0c0", | ||
1564 | skyblue: "#87ceeb", | ||
1565 | slateblue: "#6a5acd", | ||
1566 | slategray: "#708090", | ||
1567 | slategrey: "#708090", | ||
1568 | snow: "#fffafa", | ||
1569 | springgreen: "#00ff7f", | ||
1570 | steelblue: "#4682b4", | ||
1571 | tan: "#d2b48c", | ||
1572 | teal: "#008080", | ||
1573 | thistle: "#d8bfd8", | ||
1574 | tomato: "#ff6347", | ||
1575 | turquoise: "#40e0d0", | ||
1576 | violet: "#ee82ee", | ||
1577 | wheat: "#f5deb3", | ||
1578 | white: "#ffffff", | ||
1579 | whitesmoke: "#f5f5f5", | ||
1580 | yellow: "#ffff00", | ||
1581 | yellowgreen: "#9acd32" | ||
1582 | } | ||
1583 | }(c("./tree")), | ||
1584 | function(a) { | ||
1585 | a.debugInfo = function(b, c, d) { | ||
1586 | var e = ""; | ||
1587 | if (b.dumpLineNumbers && !b.compress) switch (b.dumpLineNumbers) { | ||
1588 | case "comments": | ||
1589 | e = a.debugInfo.asComment(c); | ||
1590 | break; | ||
1591 | case "mediaquery": | ||
1592 | e = a.debugInfo.asMediaQuery(c); | ||
1593 | break; | ||
1594 | case "all": | ||
1595 | e = a.debugInfo.asComment(c) + (d || "") + a.debugInfo.asMediaQuery(c) | ||
1596 | } | ||
1597 | return e | ||
1598 | }, a.debugInfo.asComment = function(a) { | ||
1599 | return "/* line " + a.debugInfo.lineNumber + ", " + a.debugInfo.fileName + " */\n" | ||
1600 | }, a.debugInfo.asMediaQuery = function(a) { | ||
1601 | return "@media -sass-debug-info{filename{font-family:" + ("file://" + a.debugInfo.fileName).replace(/([.:\/\\])/g, function(a) { | ||
1602 | return "\\" == a && (a = "/"), "\\" + a | ||
1603 | }) + "}line{font-family:\\00003" + a.debugInfo.lineNumber + "}}\n" | ||
1604 | }, a.find = function(a, b) { | ||
1605 | for (var c, d = 0; d < a.length; d++) | ||
1606 | if (c = b.call(a, a[d])) return c; | ||
1607 | return null | ||
1608 | }, a.jsify = function(a) { | ||
1609 | return Array.isArray(a.value) && a.value.length > 1 ? "[" + a.value.map(function(a) { | ||
1610 | return a.toCSS(!1) | ||
1611 | }).join(", ") + "]" : a.toCSS(!1) | ||
1612 | }, a.toCSS = function(a) { | ||
1613 | var b = []; | ||
1614 | return this.genCSS(a, { | ||
1615 | add: function(a) { | ||
1616 | b.push(a) | ||
1617 | }, | ||
1618 | isEmpty: function() { | ||
1619 | return 0 === b.length | ||
1620 | } | ||
1621 | }), b.join("") | ||
1622 | }, a.outputRuleset = function(a, b, c) { | ||
1623 | var d, e = c.length; | ||
1624 | if (a.tabLevel = (0 | a.tabLevel) + 1, a.compress) { | ||
1625 | for (b.add("{"), d = 0; e > d; d++) c[d].genCSS(a, b); | ||
1626 | return b.add("}"), void a.tabLevel-- | ||
1627 | } | ||
1628 | var f = "\n" + Array(a.tabLevel).join(" "), | ||
1629 | g = f + " "; | ||
1630 | if (e) { | ||
1631 | for (b.add(" {" + g), c[0].genCSS(a, b), d = 1; e > d; d++) b.add(g), c[d].genCSS(a, b); | ||
1632 | b.add(f + "}") | ||
1633 | } else b.add(" {" + f + "}"); | ||
1634 | a.tabLevel-- | ||
1635 | } | ||
1636 | }(c("./tree")), | ||
1637 | function(a) { | ||
1638 | a.Alpha = function(a) { | ||
1639 | this.value = a | ||
1640 | }, a.Alpha.prototype = { | ||
1641 | type: "Alpha", | ||
1642 | accept: function(a) { | ||
1643 | this.value = a.visit(this.value) | ||
1644 | }, | ||
1645 | eval: function(b) { | ||
1646 | return this.value.eval ? new a.Alpha(this.value.eval(b)) : this | ||
1647 | }, | ||
1648 | genCSS: function(a, b) { | ||
1649 | b.add("alpha(opacity="), this.value.genCSS ? this.value.genCSS(a, b) : b.add(this.value), b.add(")") | ||
1650 | }, | ||
1651 | toCSS: a.toCSS | ||
1652 | } | ||
1653 | }(c("../tree")), | ||
1654 | function(a) { | ||
1655 | a.Anonymous = function(a, b, c, d) { | ||
1656 | this.value = a.value || a, this.index = b, this.mapLines = d, this.currentFileInfo = c | ||
1657 | }, a.Anonymous.prototype = { | ||
1658 | type: "Anonymous", | ||
1659 | eval: function() { | ||
1660 | return new a.Anonymous(this.value, this.index, this.currentFileInfo, this.mapLines) | ||
1661 | }, | ||
1662 | compare: function(a) { | ||
1663 | if (!a.toCSS) return -1; | ||
1664 | var b = this.toCSS(), | ||
1665 | c = a.toCSS(); | ||
1666 | return b === c ? 0 : c > b ? -1 : 1 | ||
1667 | }, | ||
1668 | genCSS: function(a, b) { | ||
1669 | b.add(this.value, this.currentFileInfo, this.index, this.mapLines) | ||
1670 | }, | ||
1671 | toCSS: a.toCSS | ||
1672 | } | ||
1673 | }(c("../tree")), | ||
1674 | function(a) { | ||
1675 | a.Assignment = function(a, b) { | ||
1676 | this.key = a, this.value = b | ||
1677 | }, a.Assignment.prototype = { | ||
1678 | type: "Assignment", | ||
1679 | accept: function(a) { | ||
1680 | this.value = a.visit(this.value) | ||
1681 | }, | ||
1682 | eval: function(b) { | ||
1683 | return this.value.eval ? new a.Assignment(this.key, this.value.eval(b)) : this | ||
1684 | }, | ||
1685 | genCSS: function(a, b) { | ||
1686 | b.add(this.key + "="), this.value.genCSS ? this.value.genCSS(a, b) : b.add(this.value) | ||
1687 | }, | ||
1688 | toCSS: a.toCSS | ||
1689 | } | ||
1690 | }(c("../tree")), | ||
1691 | function(a) { | ||
1692 | a.Call = function(a, b, c, d) { | ||
1693 | this.name = a, this.args = b, this.index = c, this.currentFileInfo = d | ||
1694 | }, a.Call.prototype = { | ||
1695 | type: "Call", | ||
1696 | accept: function(a) { | ||
1697 | this.args && (this.args = a.visitArray(this.args)) | ||
1698 | }, | ||
1699 | eval: function(b) { | ||
1700 | var c, d, e = this.args.map(function(a) { | ||
1701 | return a.eval(b) | ||
1702 | }), | ||
1703 | f = this.name.toLowerCase(); | ||
1704 | if (f in a.functions) try { | ||
1705 | if (d = new a.functionCall(b, this.currentFileInfo), c = d[f].apply(d, e), null != c) return c | ||
1706 | } catch (g) { | ||
1707 | throw { | ||
1708 | type: g.type || "Runtime", | ||
1709 | message: "error evaluating function `" + this.name + "`" + (g.message ? ": " + g.message : ""), | ||
1710 | index: this.index, | ||
1711 | filename: this.currentFileInfo.filename | ||
1712 | } | ||
1713 | } | ||
1714 | return new a.Call(this.name, e, this.index, this.currentFileInfo) | ||
1715 | }, | ||
1716 | genCSS: function(a, b) { | ||
1717 | b.add(this.name + "(", this.currentFileInfo, this.index); | ||
1718 | for (var c = 0; c < this.args.length; c++) this.args[c].genCSS(a, b), c + 1 < this.args.length && b.add(", "); | ||
1719 | b.add(")") | ||
1720 | }, | ||
1721 | toCSS: a.toCSS | ||
1722 | } | ||
1723 | }(c("../tree")), | ||
1724 | function(a) { | ||
1725 | function b(a) { | ||
1726 | return "#" + a.map(function(a) { | ||
1727 | return a = c(Math.round(a), 255), (16 > a ? "0" : "") + a.toString(16) | ||
1728 | }).join("") | ||
1729 | } | ||
1730 | |||
1731 | function c(a, b) { | ||
1732 | return Math.min(Math.max(a, 0), b) | ||
1733 | } | ||
1734 | a.Color = function(a, b) { | ||
1735 | this.rgb = Array.isArray(a) ? a : 6 == a.length ? a.match(/.{2}/g).map(function(a) { | ||
1736 | return parseInt(a, 16) | ||
1737 | }) : a.split("").map(function(a) { | ||
1738 | return parseInt(a + a, 16) | ||
1739 | }), this.alpha = "number" == typeof b ? b : 1 | ||
1740 | }; | ||
1741 | var d = "transparent"; | ||
1742 | a.Color.prototype = { | ||
1743 | type: "Color", | ||
1744 | eval: function() { | ||
1745 | return this | ||
1746 | }, | ||
1747 | luma: function() { | ||
1748 | var a = this.rgb[0] / 255, | ||
1749 | b = this.rgb[1] / 255, | ||
1750 | c = this.rgb[2] / 255; | ||
1751 | return a = .03928 >= a ? a / 12.92 : Math.pow((a + .055) / 1.055, 2.4), b = .03928 >= b ? b / 12.92 : Math.pow((b + .055) / 1.055, 2.4), c = .03928 >= c ? c / 12.92 : Math.pow((c + .055) / 1.055, 2.4), .2126 * a + .7152 * b + .0722 * c | ||
1752 | }, | ||
1753 | genCSS: function(a, b) { | ||
1754 | b.add(this.toCSS(a)) | ||
1755 | }, | ||
1756 | toCSS: function(b, e) { | ||
1757 | var f = b && b.compress && !e, | ||
1758 | g = a.fround(b, this.alpha); | ||
1759 | if (1 > g) return 0 === g && this.isTransparentKeyword ? d : "rgba(" + this.rgb.map(function(a) { | ||
1760 | return c(Math.round(a), 255) | ||
1761 | }).concat(c(g, 1)).join("," + (f ? "" : " ")) + ")"; | ||
1762 | var h = this.toRGB(); | ||
1763 | if (f) { | ||
1764 | var i = h.split(""); | ||
1765 | i[1] === i[2] && i[3] === i[4] && i[5] === i[6] && (h = "#" + i[1] + i[3] + i[5]) | ||
1766 | } | ||
1767 | return h | ||
1768 | }, | ||
1769 | operate: function(b, c, d) { | ||
1770 | for (var e = [], f = this.alpha * (1 - d.alpha) + d.alpha, g = 0; 3 > g; g++) e[g] = a.operate(b, c, this.rgb[g], d.rgb[g]); | ||
1771 | return new a.Color(e, f) | ||
1772 | }, | ||
1773 | toRGB: function() { | ||
1774 | return b(this.rgb) | ||
1775 | }, | ||
1776 | toHSL: function() { | ||
1777 | var a, b, c = this.rgb[0] / 255, | ||
1778 | d = this.rgb[1] / 255, | ||
1779 | e = this.rgb[2] / 255, | ||
1780 | f = this.alpha, | ||
1781 | g = Math.max(c, d, e), | ||
1782 | h = Math.min(c, d, e), | ||
1783 | i = (g + h) / 2, | ||
1784 | j = g - h; | ||
1785 | if (g === h) a = b = 0; | ||
1786 | else { | ||
1787 | switch (b = i > .5 ? j / (2 - g - h) : j / (g + h), g) { | ||
1788 | case c: | ||
1789 | a = (d - e) / j + (e > d ? 6 : 0); | ||
1790 | break; | ||
1791 | case d: | ||
1792 | a = (e - c) / j + 2; | ||
1793 | break; | ||
1794 | case e: | ||
1795 | a = (c - d) / j + 4 | ||
1796 | } | ||
1797 | a /= 6 | ||
1798 | } | ||
1799 | return { | ||
1800 | h: 360 * a, | ||
1801 | s: b, | ||
1802 | l: i, | ||
1803 | a: f | ||
1804 | } | ||
1805 | }, | ||
1806 | toHSV: function() { | ||
1807 | var a, b, c = this.rgb[0] / 255, | ||
1808 | d = this.rgb[1] / 255, | ||
1809 | e = this.rgb[2] / 255, | ||
1810 | f = this.alpha, | ||
1811 | g = Math.max(c, d, e), | ||
1812 | h = Math.min(c, d, e), | ||
1813 | i = g, | ||
1814 | j = g - h; | ||
1815 | if (b = 0 === g ? 0 : j / g, g === h) a = 0; | ||
1816 | else { | ||
1817 | switch (g) { | ||
1818 | case c: | ||
1819 | a = (d - e) / j + (e > d ? 6 : 0); | ||
1820 | break; | ||
1821 | case d: | ||
1822 | a = (e - c) / j + 2; | ||
1823 | break; | ||
1824 | case e: | ||
1825 | a = (c - d) / j + 4 | ||
1826 | } | ||
1827 | a /= 6 | ||
1828 | } | ||
1829 | return { | ||
1830 | h: 360 * a, | ||
1831 | s: b, | ||
1832 | v: i, | ||
1833 | a: f | ||
1834 | } | ||
1835 | }, | ||
1836 | toARGB: function() { | ||
1837 | return b([255 * this.alpha].concat(this.rgb)) | ||
1838 | }, | ||
1839 | compare: function(a) { | ||
1840 | return a.rgb ? a.rgb[0] === this.rgb[0] && a.rgb[1] === this.rgb[1] && a.rgb[2] === this.rgb[2] && a.alpha === this.alpha ? 0 : -1 : -1 | ||
1841 | } | ||
1842 | }, a.Color.fromKeyword = function(b) { | ||
1843 | if (b = b.toLowerCase(), a.colors.hasOwnProperty(b)) return new a.Color(a.colors[b].slice(1)); | ||
1844 | if (b === d) { | ||
1845 | var c = new a.Color([0, 0, 0], 0); | ||
1846 | return c.isTransparentKeyword = !0, c | ||
1847 | } | ||
1848 | } | ||
1849 | }(c("../tree")), | ||
1850 | function(a) { | ||
1851 | a.Comment = function(a, b, c, d) { | ||
1852 | this.value = a, this.silent = !!b, this.currentFileInfo = d | ||
1853 | }, a.Comment.prototype = { | ||
1854 | type: "Comment", | ||
1855 | genCSS: function(b, c) { | ||
1856 | this.debugInfo && c.add(a.debugInfo(b, this), this.currentFileInfo, this.index), c.add(this.value.trim()) | ||
1857 | }, | ||
1858 | toCSS: a.toCSS, | ||
1859 | isSilent: function(a) { | ||
1860 | var b = this.currentFileInfo && this.currentFileInfo.reference && !this.isReferenced, | ||
1861 | c = a.compress && !this.value.match(/^\/\*!/); | ||
1862 | return this.silent || b || c | ||
1863 | }, | ||
1864 | eval: function() { | ||
1865 | return this | ||
1866 | }, | ||
1867 | markReferenced: function() { | ||
1868 | this.isReferenced = !0 | ||
1869 | } | ||
1870 | } | ||
1871 | }(c("../tree")), | ||
1872 | function(a) { | ||
1873 | a.Condition = function(a, b, c, d, e) { | ||
1874 | this.op = a.trim(), this.lvalue = b, this.rvalue = c, this.index = d, this.negate = e | ||
1875 | }, a.Condition.prototype = { | ||
1876 | type: "Condition", | ||
1877 | accept: function(a) { | ||
1878 | this.lvalue = a.visit(this.lvalue), this.rvalue = a.visit(this.rvalue) | ||
1879 | }, | ||
1880 | eval: function(a) { | ||
1881 | var b, c = this.lvalue.eval(a), | ||
1882 | d = this.rvalue.eval(a), | ||
1883 | e = this.index; | ||
1884 | return b = function(a) { | ||
1885 | switch (a) { | ||
1886 | case "and": | ||
1887 | return c && d; | ||
1888 | case "or": | ||
1889 | return c || d; | ||
1890 | default: | ||
1891 | if (c.compare) b = c.compare(d); | ||
1892 | else { | ||
1893 | if (!d.compare) throw { | ||
1894 | type: "Type", | ||
1895 | message: "Unable to perform comparison", | ||
1896 | index: e | ||
1897 | }; | ||
1898 | b = d.compare(c) | ||
1899 | } | ||
1900 | switch (b) { | ||
1901 | case -1: | ||
1902 | return "<" === a || "=<" === a || "<=" === a; | ||
1903 | case 0: | ||
1904 | return "=" === a || ">=" === a || "=<" === a || "<=" === a; | ||
1905 | case 1: | ||
1906 | return ">" === a || ">=" === a | ||
1907 | } | ||
1908 | } | ||
1909 | }(this.op), this.negate ? !b : b | ||
1910 | } | ||
1911 | } | ||
1912 | }(c("../tree")), | ||
1913 | function(a) { | ||
1914 | a.DetachedRuleset = function(a, b) { | ||
1915 | this.ruleset = a, this.frames = b | ||
1916 | }, a.DetachedRuleset.prototype = { | ||
1917 | type: "DetachedRuleset", | ||
1918 | accept: function(a) { | ||
1919 | this.ruleset = a.visit(this.ruleset) | ||
1920 | }, | ||
1921 | eval: function(b) { | ||
1922 | var c = this.frames || b.frames.slice(0); | ||
1923 | return new a.DetachedRuleset(this.ruleset, c) | ||
1924 | }, | ||
1925 | callEval: function(b) { | ||
1926 | return this.ruleset.eval(this.frames ? new a.evalEnv(b, this.frames.concat(b.frames)) : b) | ||
1927 | } | ||
1928 | } | ||
1929 | }(c("../tree")), | ||
1930 | function(a) { | ||
1931 | a.Dimension = function(c, d) { | ||
1932 | this.value = parseFloat(c), this.unit = d && d instanceof a.Unit ? d : new a.Unit(d ? [d] : b) | ||
1933 | }, a.Dimension.prototype = { | ||
1934 | type: "Dimension", | ||
1935 | accept: function(a) { | ||
1936 | this.unit = a.visit(this.unit) | ||
1937 | }, | ||
1938 | eval: function() { | ||
1939 | return this | ||
1940 | }, | ||
1941 | toColor: function() { | ||
1942 | return new a.Color([this.value, this.value, this.value]) | ||
1943 | }, | ||
1944 | genCSS: function(b, c) { | ||
1945 | if (b && b.strictUnits && !this.unit.isSingular()) throw new Error("Multiple units in dimension. Correct the units or use the unit function. Bad unit: " + this.unit.toString()); | ||
1946 | var d = a.fround(b, this.value), | ||
1947 | e = String(d); | ||
1948 | if (0 !== d && 1e-6 > d && d > -1e-6 && (e = d.toFixed(20).replace(/0+$/, "")), b && b.compress) { | ||
1949 | if (0 === d && this.unit.isLength()) return void c.add(e); | ||
1950 | d > 0 && 1 > d && (e = e.substr(1)) | ||
1951 | } | ||
1952 | c.add(e), this.unit.genCSS(b, c) | ||
1953 | }, | ||
1954 | toCSS: a.toCSS, | ||
1955 | operate: function(b, c, d) { | ||
1956 | var e = a.operate(b, c, this.value, d.value), | ||
1957 | f = this.unit.clone(); | ||
1958 | if ("+" === c || "-" === c) | ||
1959 | if (0 === f.numerator.length && 0 === f.denominator.length) f.numerator = d.unit.numerator.slice(0), f.denominator = d.unit.denominator.slice(0); | ||
1960 | else if (0 === d.unit.numerator.length && 0 === f.denominator.length); | ||
1961 | else { | ||
1962 | if (d = d.convertTo(this.unit.usedUnits()), b.strictUnits && d.unit.toString() !== f.toString()) throw new Error("Incompatible units. Change the units or use the unit function. Bad units: '" + f.toString() + "' and '" + d.unit.toString() + "'."); | ||
1963 | e = a.operate(b, c, this.value, d.value) | ||
1964 | } else "*" === c ? (f.numerator = f.numerator.concat(d.unit.numerator).sort(), f.denominator = f.denominator.concat(d.unit.denominator).sort(), f.cancel()) : "/" === c && (f.numerator = f.numerator.concat(d.unit.denominator).sort(), f.denominator = f.denominator.concat(d.unit.numerator).sort(), f.cancel()); | ||
1965 | return new a.Dimension(e, f) | ||
1966 | }, | ||
1967 | compare: function(b) { | ||
1968 | if (b instanceof a.Dimension) { | ||
1969 | var c, d, e, f; | ||
1970 | if (this.unit.isEmpty() || b.unit.isEmpty()) c = this, d = b; | ||
1971 | else if (c = this.unify(), d = b.unify(), 0 !== c.unit.compare(d.unit)) return -1; | ||
1972 | return e = c.value, f = d.value, f > e ? -1 : e > f ? 1 : 0 | ||
1973 | } | ||
1974 | return -1 | ||
1975 | }, | ||
1976 | unify: function() { | ||
1977 | return this.convertTo({ | ||
1978 | length: "px", | ||
1979 | duration: "s", | ||
1980 | angle: "rad" | ||
1981 | }) | ||
1982 | }, | ||
1983 | convertTo: function(b) { | ||
1984 | var c, d, e, f, g, h = this.value, | ||
1985 | i = this.unit.clone(), | ||
1986 | j = {}; | ||
1987 | if ("string" == typeof b) { | ||
1988 | for (c in a.UnitConversions) a.UnitConversions[c].hasOwnProperty(b) && (j = {}, j[c] = b); | ||
1989 | b = j | ||
1990 | } | ||
1991 | g = function(a, b) { | ||
1992 | return e.hasOwnProperty(a) ? (b ? h /= e[a] / e[f] : h *= e[a] / e[f], f) : a | ||
1993 | }; | ||
1994 | for (d in b) b.hasOwnProperty(d) && (f = b[d], e = a.UnitConversions[d], i.map(g)); | ||
1995 | return i.cancel(), new a.Dimension(h, i) | ||
1996 | } | ||
1997 | }, a.UnitConversions = { | ||
1998 | length: { | ||
1999 | m: 1, | ||
2000 | cm: .01, | ||
2001 | mm: .001, | ||
2002 | "in": .0254, | ||
2003 | px: .0254 / 96, | ||
2004 | pt: .0254 / 72, | ||
2005 | pc: .0254 / 72 * 12 | ||
2006 | }, | ||
2007 | duration: { | ||
2008 | s: 1, | ||
2009 | ms: .001 | ||
2010 | }, | ||
2011 | angle: { | ||
2012 | rad: 1 / (2 * Math.PI), | ||
2013 | deg: 1 / 360, | ||
2014 | grad: .0025, | ||
2015 | turn: 1 | ||
2016 | } | ||
2017 | }, a.Unit = function(a, b, c) { | ||
2018 | this.numerator = a ? a.slice(0).sort() : [], this.denominator = b ? b.slice(0).sort() : [], this.backupUnit = c | ||
2019 | }, a.Unit.prototype = { | ||
2020 | type: "Unit", | ||
2021 | clone: function() { | ||
2022 | return new a.Unit(this.numerator.slice(0), this.denominator.slice(0), this.backupUnit) | ||
2023 | }, | ||
2024 | genCSS: function(a, b) { | ||
2025 | this.numerator.length >= 1 ? b.add(this.numerator[0]) : this.denominator.length >= 1 ? b.add(this.denominator[0]) : a && a.strictUnits || !this.backupUnit || b.add(this.backupUnit) | ||
2026 | }, | ||
2027 | toCSS: a.toCSS, | ||
2028 | toString: function() { | ||
2029 | var a, b = this.numerator.join("*"); | ||
2030 | for (a = 0; a < this.denominator.length; a++) b += "/" + this.denominator[a]; | ||
2031 | return b | ||
2032 | }, | ||
2033 | compare: function(a) { | ||
2034 | return this.is(a.toString()) ? 0 : -1 | ||
2035 | }, | ||
2036 | is: function(a) { | ||
2037 | return this.toString() === a | ||
2038 | }, | ||
2039 | isLength: function() { | ||
2040 | return Boolean(this.toCSS().match(/px|em|%|in|cm|mm|pc|pt|ex/)) | ||
2041 | }, | ||
2042 | isEmpty: function() { | ||
2043 | return 0 === this.numerator.length && 0 === this.denominator.length | ||
2044 | }, | ||
2045 | isSingular: function() { | ||
2046 | return this.numerator.length <= 1 && 0 === this.denominator.length | ||
2047 | }, | ||
2048 | map: function(a) { | ||
2049 | var b; | ||
2050 | for (b = 0; b < this.numerator.length; b++) this.numerator[b] = a(this.numerator[b], !1); | ||
2051 | for (b = 0; b < this.denominator.length; b++) this.denominator[b] = a(this.denominator[b], !0) | ||
2052 | }, | ||
2053 | usedUnits: function() { | ||
2054 | var b, c, d = {}; | ||
2055 | c = function(a) { | ||
2056 | return b.hasOwnProperty(a) && !d[e] && (d[e] = a), a | ||
2057 | }; | ||
2058 | for (var e in a.UnitConversions) a.UnitConversions.hasOwnProperty(e) && (b = a.UnitConversions[e], this.map(c)); | ||
2059 | return d | ||
2060 | }, | ||
2061 | cancel: function() { | ||
2062 | var a, b, c, d = {}; | ||
2063 | for (b = 0; b < this.numerator.length; b++) a = this.numerator[b], c || (c = a), d[a] = (d[a] || 0) + 1; | ||
2064 | for (b = 0; b < this.denominator.length; b++) a = this.denominator[b], c || (c = a), d[a] = (d[a] || 0) - 1; | ||
2065 | this.numerator = [], this.denominator = []; | ||
2066 | for (a in d) | ||
2067 | if (d.hasOwnProperty(a)) { | ||
2068 | var e = d[a]; | ||
2069 | if (e > 0) | ||
2070 | for (b = 0; e > b; b++) this.numerator.push(a); | ||
2071 | else if (0 > e) | ||
2072 | for (b = 0; - e > b; b++) this.denominator.push(a) | ||
2073 | } | ||
2074 | 0 === this.numerator.length && 0 === this.denominator.length && c && (this.backupUnit = c), this.numerator.sort(), this.denominator.sort() | ||
2075 | } | ||
2076 | } | ||
2077 | }(c("../tree")), | ||
2078 | function(a) { | ||
2079 | a.Directive = function(a, b, c, d, e, f) { | ||
2080 | this.name = a, this.value = b, c && (this.rules = c, this.rules.allowImports = !0), this.index = d, this.currentFileInfo = e, this.debugInfo = f | ||
2081 | }, a.Directive.prototype = { | ||
2082 | type: "Directive", | ||
2083 | accept: function(a) { | ||
2084 | var b = this.value, | ||
2085 | c = this.rules; | ||
2086 | c && (c = a.visit(c)), b && (b = a.visit(b)) | ||
2087 | }, | ||
2088 | genCSS: function(b, c) { | ||
2089 | var d = this.value, | ||
2090 | e = this.rules; | ||
2091 | c.add(this.name, this.currentFileInfo, this.index), d && (c.add(" "), d.genCSS(b, c)), e ? a.outputRuleset(b, c, [e]) : c.add(";") | ||
2092 | }, | ||
2093 | toCSS: a.toCSS, | ||
2094 | eval: function(b) { | ||
2095 | var c = this.value, | ||
2096 | d = this.rules; | ||
2097 | return c && (c = c.eval(b)), d && (d = d.eval(b), d.root = !0), new a.Directive(this.name, c, d, this.index, this.currentFileInfo, this.debugInfo) | ||
2098 | }, | ||
2099 | variable: function(b) { | ||
2100 | return this.rules ? a.Ruleset.prototype.variable.call(this.rules, b) : void 0 | ||
2101 | }, | ||
2102 | find: function() { | ||
2103 | return this.rules ? a.Ruleset.prototype.find.apply(this.rules, arguments) : void 0 | ||
2104 | }, | ||
2105 | rulesets: function() { | ||
2106 | return this.rules ? a.Ruleset.prototype.rulesets.apply(this.rules) : void 0 | ||
2107 | }, | ||
2108 | markReferenced: function() { | ||
2109 | var a, b; | ||
2110 | if (this.isReferenced = !0, this.rules) | ||
2111 | for (b = this.rules.rules, a = 0; a < b.length; a++) b[a].markReferenced && b[a].markReferenced() | ||
2112 | } | ||
2113 | } | ||
2114 | }(c("../tree")), | ||
2115 | function(a) { | ||
2116 | a.Element = function(b, c, d, e) { | ||
2117 | this.combinator = b instanceof a.Combinator ? b : new a.Combinator(b), this.value = "string" == typeof c ? c.trim() : c ? c : "", this.index = d, this.currentFileInfo = e | ||
2118 | }, a.Element.prototype = { | ||
2119 | type: "Element", | ||
2120 | accept: function(a) { | ||
2121 | var b = this.value; | ||
2122 | this.combinator = a.visit(this.combinator), "object" == typeof b && (this.value = a.visit(b)) | ||
2123 | }, | ||
2124 | eval: function(b) { | ||
2125 | return new a.Element(this.combinator, this.value.eval ? this.value.eval(b) : this.value, this.index, this.currentFileInfo) | ||
2126 | }, | ||
2127 | genCSS: function(a, b) { | ||
2128 | b.add(this.toCSS(a), this.currentFileInfo, this.index) | ||
2129 | }, | ||
2130 | toCSS: function(a) { | ||
2131 | var b = this.value.toCSS ? this.value.toCSS(a) : this.value; | ||
2132 | return "" === b && "&" === this.combinator.value.charAt(0) ? "" : this.combinator.toCSS(a || {}) + b | ||
2133 | } | ||
2134 | }, a.Attribute = function(a, b, c) { | ||
2135 | this.key = a, this.op = b, this.value = c | ||
2136 | }, a.Attribute.prototype = { | ||
2137 | type: "Attribute", | ||
2138 | eval: function(b) { | ||
2139 | return new a.Attribute(this.key.eval ? this.key.eval(b) : this.key, this.op, this.value && this.value.eval ? this.value.eval(b) : this.value) | ||
2140 | }, | ||
2141 | genCSS: function(a, b) { | ||
2142 | b.add(this.toCSS(a)) | ||
2143 | }, | ||
2144 | toCSS: function(a) { | ||
2145 | var b = this.key.toCSS ? this.key.toCSS(a) : this.key; | ||
2146 | return this.op && (b += this.op, b += this.value.toCSS ? this.value.toCSS(a) : this.value), "[" + b + "]" | ||
2147 | } | ||
2148 | }, a.Combinator = function(a) { | ||
2149 | this.value = " " === a ? " " : a ? a.trim() : "" | ||
2150 | }, a.Combinator.prototype = { | ||
2151 | type: "Combinator", | ||
2152 | _outputMap: { | ||
2153 | "": "", | ||
2154 | " ": " ", | ||
2155 | ":": " :", | ||
2156 | "+": " + ", | ||
2157 | "~": " ~ ", | ||
2158 | ">": " > ", | ||
2159 | "|": "|", | ||
2160 | "^": " ^ ", | ||
2161 | "^^": " ^^ " | ||
2162 | }, | ||
2163 | _outputMapCompressed: { | ||
2164 | "": "", | ||
2165 | " ": " ", | ||
2166 | ":": " :", | ||
2167 | "+": "+", | ||
2168 | "~": "~", | ||
2169 | ">": ">", | ||
2170 | "|": "|", | ||
2171 | "^": "^", | ||
2172 | "^^": "^^" | ||
2173 | }, | ||
2174 | genCSS: function(a, b) { | ||
2175 | b.add((a.compress ? this._outputMapCompressed : this._outputMap)[this.value]) | ||
2176 | }, | ||
2177 | toCSS: a.toCSS | ||
2178 | } | ||
2179 | }(c("../tree")), | ||
2180 | function(a) { | ||
2181 | a.Expression = function(a) { | ||
2182 | this.value = a | ||
2183 | }, a.Expression.prototype = { | ||
2184 | type: "Expression", | ||
2185 | accept: function(a) { | ||
2186 | this.value && (this.value = a.visitArray(this.value)) | ||
2187 | }, | ||
2188 | eval: function(b) { | ||
2189 | var c, d = this.parens && !this.parensInOp, | ||
2190 | e = !1; | ||
2191 | return d && b.inParenthesis(), this.value.length > 1 ? c = new a.Expression(this.value.map(function(a) { | ||
2192 | return a.eval(b) | ||
2193 | })) : 1 === this.value.length ? (this.value[0].parens && !this.value[0].parensInOp && (e = !0), c = this.value[0].eval(b)) : c = this, d && b.outOfParenthesis(), this.parens && this.parensInOp && !b.isMathOn() && !e && (c = new a.Paren(c)), c | ||
2194 | }, | ||
2195 | genCSS: function(a, b) { | ||
2196 | for (var c = 0; c < this.value.length; c++) this.value[c].genCSS(a, b), c + 1 < this.value.length && b.add(" ") | ||
2197 | }, | ||
2198 | toCSS: a.toCSS, | ||
2199 | throwAwayComments: function() { | ||
2200 | this.value = this.value.filter(function(b) { | ||
2201 | return !(b instanceof a.Comment) | ||
2202 | }) | ||
2203 | } | ||
2204 | } | ||
2205 | }(c("../tree")), | ||
2206 | function(a) { | ||
2207 | a.Extend = function(b, c, d) { | ||
2208 | switch (this.selector = b, this.option = c, this.index = d, this.object_id = a.Extend.next_id++, this.parent_ids = [this.object_id], c) { | ||
2209 | case "all": | ||
2210 | this.allowBefore = !0, this.allowAfter = !0; | ||
2211 | break; | ||
2212 | default: | ||
2213 | this.allowBefore = !1, this.allowAfter = !1 | ||
2214 | } | ||
2215 | }, a.Extend.next_id = 0, a.Extend.prototype = { | ||
2216 | type: "Extend", | ||
2217 | accept: function(a) { | ||
2218 | this.selector = a.visit(this.selector) | ||
2219 | }, | ||
2220 | eval: function(b) { | ||
2221 | return new a.Extend(this.selector.eval(b), this.option, this.index) | ||
2222 | }, | ||
2223 | clone: function() { | ||
2224 | return new a.Extend(this.selector, this.option, this.index) | ||
2225 | }, | ||
2226 | findSelfSelectors: function(a) { | ||
2227 | var b, c, d = []; | ||
2228 | for (b = 0; b < a.length; b++) c = a[b].elements, b > 0 && c.length && "" === c[0].combinator.value && (c[0].combinator.value = " "), d = d.concat(a[b].elements); | ||
2229 | this.selfSelectors = [{ | ||
2230 | elements: d | ||
2231 | }] | ||
2232 | } | ||
2233 | } | ||
2234 | }(c("../tree")), | ||
2235 | function(a) { | ||
2236 | a.Import = function(a, c, d, e, f) { | ||
2237 | if (this.options = d, this.index = e, this.path = a, this.features = c, this.currentFileInfo = f, this.options.less !== b || this.options.inline) this.css = !this.options.less || this.options.inline; | ||
2238 | else { | ||
2239 | var g = this.getPath(); | ||
2240 | g && /css([\?;].*)?$/.test(g) && (this.css = !0) | ||
2241 | } | ||
2242 | }, a.Import.prototype = { | ||
2243 | type: "Import", | ||
2244 | accept: function(a) { | ||
2245 | this.features && (this.features = a.visit(this.features)), this.path = a.visit(this.path), !this.options.inline && this.root && (this.root = a.visit(this.root)) | ||
2246 | }, | ||
2247 | genCSS: function(a, b) { | ||
2248 | this.css && (b.add("@import ", this.currentFileInfo, this.index), this.path.genCSS(a, b), this.features && (b.add(" "), this.features.genCSS(a, b)), b.add(";")) | ||
2249 | }, | ||
2250 | toCSS: a.toCSS, | ||
2251 | getPath: function() { | ||
2252 | if (this.path instanceof a.Quoted) { | ||
2253 | var c = this.path.value; | ||
2254 | return this.css !== b || /(\.[a-z]*$)|([\?;].*)$/.test(c) ? c : c + ".less" | ||
2255 | } | ||
2256 | return this.path instanceof a.URL ? this.path.value.value : null | ||
2257 | }, | ||
2258 | evalForImport: function(b) { | ||
2259 | return new a.Import(this.path.eval(b), this.features, this.options, this.index, this.currentFileInfo) | ||
2260 | }, | ||
2261 | evalPath: function(b) { | ||
2262 | var c = this.path.eval(b), | ||
2263 | d = this.currentFileInfo && this.currentFileInfo.rootpath; | ||
2264 | if (!(c instanceof a.URL)) { | ||
2265 | if (d) { | ||
2266 | var e = c.value; | ||
2267 | e && b.isPathRelative(e) && (c.value = d + e) | ||
2268 | } | ||
2269 | c.value = b.normalizePath(c.value) | ||
2270 | } | ||
2271 | return c | ||
2272 | }, | ||
2273 | eval: function(b) { | ||
2274 | var c, d = this.features && this.features.eval(b); | ||
2275 | if (this.skip && ("function" == typeof this.skip && (this.skip = this.skip()), this.skip)) return []; | ||
2276 | if (this.options.inline) { | ||
2277 | var e = new a.Anonymous(this.root, 0, { | ||
2278 | filename: this.importedFilename | ||
2279 | }, !0); | ||
2280 | return this.features ? new a.Media([e], this.features.value) : [e] | ||
2281 | } | ||
2282 | if (this.css) { | ||
2283 | var f = new a.Import(this.evalPath(b), d, this.options, this.index); | ||
2284 | if (!f.css && this.error) throw this.error; | ||
2285 | return f | ||
2286 | } | ||
2287 | return c = new a.Ruleset(null, this.root.rules.slice(0)), c.evalImports(b), this.features ? new a.Media(c.rules, this.features.value) : c.rules | ||
2288 | } | ||
2289 | } | ||
2290 | }(c("../tree")), | ||
2291 | function(a) { | ||
2292 | a.JavaScript = function(a, b, c) { | ||
2293 | this.escaped = c, this.expression = a, this.index = b | ||
2294 | }, a.JavaScript.prototype = { | ||
2295 | type: "JavaScript", | ||
2296 | eval: function(b) { | ||
2297 | var c, d = this, | ||
2298 | e = {}, | ||
2299 | f = this.expression.replace(/@\{([\w-]+)\}/g, function(c, e) { | ||
2300 | return a.jsify(new a.Variable("@" + e, d.index).eval(b)) | ||
2301 | }); | ||
2302 | try { | ||
2303 | f = new Function("return (" + f + ")") | ||
2304 | } catch (g) { | ||
2305 | throw { | ||
2306 | message: "JavaScript evaluation error: " + g.message + " from `" + f + "`", | ||
2307 | index: this.index | ||
2308 | } | ||
2309 | } | ||
2310 | var h = b.frames[0].variables(); | ||
2311 | for (var i in h) h.hasOwnProperty(i) && (e[i.slice(1)] = { | ||
2312 | value: h[i].value, | ||
2313 | toJS: function() { | ||
2314 | return this.value.eval(b).toCSS() | ||
2315 | } | ||
2316 | }); | ||
2317 | try { | ||
2318 | c = f.call(e) | ||
2319 | } catch (g) { | ||
2320 | throw { | ||
2321 | message: "JavaScript evaluation error: '" + g.name + ": " + g.message.replace(/["]/g, "'") + "'", | ||
2322 | index: this.index | ||
2323 | } | ||
2324 | } | ||
2325 | return "number" == typeof c ? new a.Dimension(c) : "string" == typeof c ? new a.Quoted('"' + c + '"', c, this.escaped, this.index) : new a.Anonymous(Array.isArray(c) ? c.join(", ") : c) | ||
2326 | } | ||
2327 | } | ||
2328 | }(c("../tree")), | ||
2329 | function(a) { | ||
2330 | a.Keyword = function(a) { | ||
2331 | this.value = a | ||
2332 | }, a.Keyword.prototype = { | ||
2333 | type: "Keyword", | ||
2334 | eval: function() { | ||
2335 | return this | ||
2336 | }, | ||
2337 | genCSS: function(a, b) { | ||
2338 | if ("%" === this.value) throw { | ||
2339 | type: "Syntax", | ||
2340 | message: "Invalid % without number" | ||
2341 | }; | ||
2342 | b.add(this.value) | ||
2343 | }, | ||
2344 | toCSS: a.toCSS, | ||
2345 | compare: function(b) { | ||
2346 | return b instanceof a.Keyword ? b.value === this.value ? 0 : 1 : -1 | ||
2347 | } | ||
2348 | }, a.True = new a.Keyword("true"), a.False = new a.Keyword("false") | ||
2349 | }(c("../tree")), | ||
2350 | function(a) { | ||
2351 | a.Media = function(b, c, d, e) { | ||
2352 | this.index = d, this.currentFileInfo = e; | ||
2353 | var f = this.emptySelectors(); | ||
2354 | this.features = new a.Value(c), this.rules = [new a.Ruleset(f, b)], this.rules[0].allowImports = !0 | ||
2355 | }, a.Media.prototype = { | ||
2356 | type: "Media", | ||
2357 | accept: function(a) { | ||
2358 | this.features && (this.features = a.visit(this.features)), this.rules && (this.rules = a.visitArray(this.rules)) | ||
2359 | }, | ||
2360 | genCSS: function(b, c) { | ||
2361 | c.add("@media ", this.currentFileInfo, this.index), this.features.genCSS(b, c), a.outputRuleset(b, c, this.rules) | ||
2362 | }, | ||
2363 | toCSS: a.toCSS, | ||
2364 | eval: function(b) { | ||
2365 | b.mediaBlocks || (b.mediaBlocks = [], b.mediaPath = []); | ||
2366 | var c = new a.Media(null, [], this.index, this.currentFileInfo); | ||
2367 | this.debugInfo && (this.rules[0].debugInfo = this.debugInfo, c.debugInfo = this.debugInfo); | ||
2368 | var d = !1; | ||
2369 | b.strictMath || (d = !0, b.strictMath = !0); | ||
2370 | try { | ||
2371 | c.features = this.features.eval(b) | ||
2372 | } finally { | ||
2373 | d && (b.strictMath = !1) | ||
2374 | } | ||
2375 | return b.mediaPath.push(c), b.mediaBlocks.push(c), b.frames.unshift(this.rules[0]), c.rules = [this.rules[0].eval(b)], b.frames.shift(), b.mediaPath.pop(), 0 === b.mediaPath.length ? c.evalTop(b) : c.evalNested(b) | ||
2376 | }, | ||
2377 | variable: function(b) { | ||
2378 | return a.Ruleset.prototype.variable.call(this.rules[0], b) | ||
2379 | }, | ||
2380 | find: function() { | ||
2381 | return a.Ruleset.prototype.find.apply(this.rules[0], arguments) | ||
2382 | }, | ||
2383 | rulesets: function() { | ||
2384 | return a.Ruleset.prototype.rulesets.apply(this.rules[0]) | ||
2385 | }, | ||
2386 | emptySelectors: function() { | ||
2387 | var b = new a.Element("", "&", this.index, this.currentFileInfo), | ||
2388 | c = [new a.Selector([b], null, null, this.index, this.currentFileInfo)]; | ||
2389 | return c[0].mediaEmpty = !0, c | ||
2390 | }, | ||
2391 | markReferenced: function() { | ||
2392 | var a, b = this.rules[0].rules; | ||
2393 | for (this.rules[0].markReferenced(), this.isReferenced = !0, a = 0; a < b.length; a++) b[a].markReferenced && b[a].markReferenced() | ||
2394 | }, | ||
2395 | evalTop: function(b) { | ||
2396 | var c = this; | ||
2397 | if (b.mediaBlocks.length > 1) { | ||
2398 | var d = this.emptySelectors(); | ||
2399 | c = new a.Ruleset(d, b.mediaBlocks), c.multiMedia = !0 | ||
2400 | } | ||
2401 | return delete b.mediaBlocks, delete b.mediaPath, c | ||
2402 | }, | ||
2403 | evalNested: function(b) { | ||
2404 | var c, d, e = b.mediaPath.concat([this]); | ||
2405 | for (c = 0; c < e.length; c++) d = e[c].features instanceof a.Value ? e[c].features.value : e[c].features, e[c] = Array.isArray(d) ? d : [d]; | ||
2406 | return this.features = new a.Value(this.permute(e).map(function(b) { | ||
2407 | for (b = b.map(function(b) { | ||
2408 | return b.toCSS ? b : new a.Anonymous(b) | ||
2409 | }), c = b.length - 1; c > 0; c--) b.splice(c, 0, new a.Anonymous("and")); | ||
2410 | return new a.Expression(b) | ||
2411 | })), new a.Ruleset([], []) | ||
2412 | }, | ||
2413 | permute: function(a) { | ||
2414 | if (0 === a.length) return []; | ||
2415 | if (1 === a.length) return a[0]; | ||
2416 | for (var b = [], c = this.permute(a.slice(1)), d = 0; d < c.length; d++) | ||
2417 | for (var e = 0; e < a[0].length; e++) b.push([a[0][e]].concat(c[d])); | ||
2418 | return b | ||
2419 | }, | ||
2420 | bubbleSelectors: function(b) { | ||
2421 | b && (this.rules = [new a.Ruleset(b.slice(0), [this.rules[0]])]) | ||
2422 | } | ||
2423 | } | ||
2424 | }(c("../tree")), | ||
2425 | function(a) { | ||
2426 | a.mixin = {}, a.mixin.Call = function(b, c, d, e, f) { | ||
2427 | this.selector = new a.Selector(b), this.arguments = c && c.length ? c : null, this.index = d, this.currentFileInfo = e, this.important = f | ||
2428 | }, a.mixin.Call.prototype = { | ||
2429 | type: "MixinCall", | ||
2430 | accept: function(a) { | ||
2431 | this.selector && (this.selector = a.visit(this.selector)), this.arguments && (this.arguments = a.visitArray(this.arguments)) | ||
2432 | }, | ||
2433 | eval: function(b) { | ||
2434 | var c, d, e, f, g, h, i, j, k, l, m, n, o = [], | ||
2435 | p = !1, | ||
2436 | q = [], | ||
2437 | r = [], | ||
2438 | s = a.defaultFunc, | ||
2439 | t = 0, | ||
2440 | u = 1, | ||
2441 | v = 2; | ||
2442 | for (e = this.arguments && this.arguments.map(function(a) { | ||
2443 | return { | ||
2444 | name: a.name, | ||
2445 | value: a.value.eval(b) | ||
2446 | } | ||
2447 | }), f = 0; f < b.frames.length; f++) | ||
2448 | if ((c = b.frames[f].find(this.selector)).length > 0) { | ||
2449 | for (j = !0, g = 0; g < c.length; g++) { | ||
2450 | for (d = c[g], i = !1, h = 0; h < b.frames.length; h++) | ||
2451 | if (!(d instanceof a.mixin.Definition) && d === (b.frames[h].originalRuleset || b.frames[h])) { | ||
2452 | i = !0; | ||
2453 | break | ||
2454 | } | ||
2455 | if (!i && d.matchArgs(e, b)) { | ||
2456 | if (l = { | ||
2457 | mixin: d, | ||
2458 | group: t | ||
2459 | }, d.matchCondition) { | ||
2460 | for (h = 0; 2 > h; h++) s.value(h), r[h] = d.matchCondition(e, b); | ||
2461 | (r[0] || r[1]) && (r[0] != r[1] && (l.group = r[1] ? u : v), q.push(l)) | ||
2462 | } else q.push(l); | ||
2463 | p = !0 | ||
2464 | } | ||
2465 | } | ||
2466 | for (s.reset(), n = [0, 0, 0], g = 0; g < q.length; g++) n[q[g].group]++; | ||
2467 | if (n[t] > 0) m = v; | ||
2468 | else if (m = u, n[u] + n[v] > 1) throw { | ||
2469 | type: "Runtime", | ||
2470 | message: "Ambiguous use of `default()` found when matching for `" + this.format(e) + "`", | ||
2471 | index: this.index, | ||
2472 | filename: this.currentFileInfo.filename | ||
2473 | }; | ||
2474 | for (g = 0; g < q.length; g++) | ||
2475 | if (l = q[g].group, l === t || l === m) try { | ||
2476 | d = q[g].mixin, d instanceof a.mixin.Definition || (d = new a.mixin.Definition("", [], d.rules, null, !1), d.originalRuleset = c[g].originalRuleset || c[g]), Array.prototype.push.apply(o, d.evalCall(b, e, this.important).rules) | ||
2477 | } catch (w) { | ||
2478 | throw { | ||
2479 | message: w.message, | ||
2480 | index: this.index, | ||
2481 | filename: this.currentFileInfo.filename, | ||
2482 | stack: w.stack | ||
2483 | } | ||
2484 | } | ||
2485 | if (p) { | ||
2486 | if (!this.currentFileInfo || !this.currentFileInfo.reference) | ||
2487 | for (f = 0; f < o.length; f++) k = o[f], k.markReferenced && k.markReferenced(); | ||
2488 | return o | ||
2489 | } | ||
2490 | } | ||
2491 | throw j ? { | ||
2492 | type: "Runtime", | ||
2493 | message: "No matching definition was found for `" + this.format(e) + "`", | ||
2494 | index: this.index, | ||
2495 | filename: this.currentFileInfo.filename | ||
2496 | } : { | ||
2497 | type: "Name", | ||
2498 | message: this.selector.toCSS().trim() + " is undefined", | ||
2499 | index: this.index, | ||
2500 | filename: this.currentFileInfo.filename | ||
2501 | } | ||
2502 | }, | ||
2503 | format: function(a) { | ||
2504 | return this.selector.toCSS().trim() + "(" + (a ? a.map(function(a) { | ||
2505 | var b = ""; | ||
2506 | return a.name && (b += a.name + ":"), b += a.value.toCSS ? a.value.toCSS() : "???" | ||
2507 | }).join(", ") : "") + ")" | ||
2508 | } | ||
2509 | }, a.mixin.Definition = function(b, c, d, e, f, g) { | ||
2510 | this.name = b, this.selectors = [new a.Selector([new a.Element(null, b, this.index, this.currentFileInfo)])], this.params = c, this.condition = e, this.variadic = f, this.arity = c.length, this.rules = d, this._lookups = {}, this.required = c.reduce(function(a, b) { | ||
2511 | return !b.name || b.name && !b.value ? a + 1 : a | ||
2512 | }, 0), this.parent = a.Ruleset.prototype, this.frames = g | ||
2513 | }, a.mixin.Definition.prototype = { | ||
2514 | type: "MixinDefinition", | ||
2515 | accept: function(a) { | ||
2516 | this.params && this.params.length && (this.params = a.visitArray(this.params)), this.rules = a.visitArray(this.rules), this.condition && (this.condition = a.visit(this.condition)) | ||
2517 | }, | ||
2518 | variable: function(a) { | ||
2519 | return this.parent.variable.call(this, a) | ||
2520 | }, | ||
2521 | variables: function() { | ||
2522 | return this.parent.variables.call(this) | ||
2523 | }, | ||
2524 | find: function() { | ||
2525 | return this.parent.find.apply(this, arguments) | ||
2526 | }, | ||
2527 | rulesets: function() { | ||
2528 | return this.parent.rulesets.apply(this) | ||
2529 | }, | ||
2530 | evalParams: function(b, c, d, e) { | ||
2531 | var f, g, h, i, j, k, l, m, n = new a.Ruleset(null, null), | ||
2532 | o = this.params.slice(0), | ||
2533 | p = 0; | ||
2534 | if (c = new a.evalEnv(c, [n].concat(c.frames)), d) | ||
2535 | for (d = d.slice(0), p = d.length, h = 0; p > h; h++) | ||
2536 | if (g = d[h], k = g && g.name) { | ||
2537 | for (l = !1, i = 0; i < o.length; i++) | ||
2538 | if (!e[i] && k === o[i].name) { | ||
2539 | e[i] = g.value.eval(b), n.prependRule(new a.Rule(k, g.value.eval(b))), l = !0; | ||
2540 | break | ||
2541 | } | ||
2542 | if (l) { | ||
2543 | d.splice(h, 1), h--; | ||
2544 | continue | ||
2545 | } | ||
2546 | throw { | ||
2547 | type: "Runtime", | ||
2548 | message: "Named argument for " + this.name + " " + d[h].name + " not found" | ||
2549 | } | ||
2550 | } | ||
2551 | for (m = 0, h = 0; h < o.length; h++) | ||
2552 | if (!e[h]) { | ||
2553 | if (g = d && d[m], k = o[h].name) | ||
2554 | if (o[h].variadic) { | ||
2555 | for (f = [], i = m; p > i; i++) f.push(d[i].value.eval(b)); | ||
2556 | n.prependRule(new a.Rule(k, new a.Expression(f).eval(b))) | ||
2557 | } else { | ||
2558 | if (j = g && g.value) j = j.eval(b); | ||
2559 | else { | ||
2560 | if (!o[h].value) throw { | ||
2561 | type: "Runtime", | ||
2562 | message: "wrong number of arguments for " + this.name + " (" + p + " for " + this.arity + ")" | ||
2563 | }; | ||
2564 | j = o[h].value.eval(c), n.resetCache() | ||
2565 | } | ||
2566 | n.prependRule(new a.Rule(k, j)), e[h] = j | ||
2567 | } | ||
2568 | if (o[h].variadic && d) | ||
2569 | for (i = m; p > i; i++) e[i] = d[i].value.eval(b); | ||
2570 | m++ | ||
2571 | } | ||
2572 | return n | ||
2573 | }, | ||
2574 | eval: function(b) { | ||
2575 | return new a.mixin.Definition(this.name, this.params, this.rules, this.condition, this.variadic, this.frames || b.frames.slice(0)) | ||
2576 | }, | ||
2577 | evalCall: function(b, c, d) { | ||
2578 | var e, f, g = [], | ||
2579 | h = this.frames ? this.frames.concat(b.frames) : b.frames, | ||
2580 | i = this.evalParams(b, new a.evalEnv(b, h), c, g); | ||
2581 | return i.prependRule(new a.Rule("@arguments", new a.Expression(g).eval(b))), e = this.rules.slice(0), f = new a.Ruleset(null, e), f.originalRuleset = this, f = f.eval(new a.evalEnv(b, [this, i].concat(h))), d && (f = this.parent.makeImportant.apply(f)), f | ||
2582 | }, | ||
2583 | matchCondition: function(b, c) { | ||
2584 | return this.condition && !this.condition.eval(new a.evalEnv(c, [this.evalParams(c, new a.evalEnv(c, this.frames.concat(c.frames)), b, [])].concat(this.frames).concat(c.frames))) ? !1 : !0 | ||
2585 | }, | ||
2586 | matchArgs: function(a, b) { | ||
2587 | var c, d = a && a.length || 0; | ||
2588 | if (this.variadic) { | ||
2589 | if (d < this.required - 1) return !1 | ||
2590 | } else { | ||
2591 | if (d < this.required) return !1; | ||
2592 | if (d > this.params.length) return !1 | ||
2593 | } | ||
2594 | c = Math.min(d, this.arity); | ||
2595 | for (var e = 0; c > e; e++) | ||
2596 | if (!this.params[e].name && !this.params[e].variadic && a[e].value.eval(b).toCSS() != this.params[e].value.eval(b).toCSS()) return !1; | ||
2597 | return !0 | ||
2598 | } | ||
2599 | } | ||
2600 | }(c("../tree")), | ||
2601 | function(a) { | ||
2602 | a.Negative = function(a) { | ||
2603 | this.value = a | ||
2604 | }, a.Negative.prototype = { | ||
2605 | type: "Negative", | ||
2606 | accept: function(a) { | ||
2607 | this.value = a.visit(this.value) | ||
2608 | }, | ||
2609 | genCSS: function(a, b) { | ||
2610 | b.add("-"), this.value.genCSS(a, b) | ||
2611 | }, | ||
2612 | toCSS: a.toCSS, | ||
2613 | eval: function(b) { | ||
2614 | return b.isMathOn() ? new a.Operation("*", [new a.Dimension(-1), this.value]).eval(b) : new a.Negative(this.value.eval(b)) | ||
2615 | } | ||
2616 | } | ||
2617 | }(c("../tree")), | ||
2618 | function(a) { | ||
2619 | a.Operation = function(a, b, c) { | ||
2620 | this.op = a.trim(), this.operands = b, this.isSpaced = c | ||
2621 | }, a.Operation.prototype = { | ||
2622 | type: "Operation", | ||
2623 | accept: function(a) { | ||
2624 | this.operands = a.visit(this.operands) | ||
2625 | }, | ||
2626 | eval: function(b) { | ||
2627 | var c = this.operands[0].eval(b), | ||
2628 | d = this.operands[1].eval(b); | ||
2629 | if (b.isMathOn()) { | ||
2630 | if (c instanceof a.Dimension && d instanceof a.Color && (c = c.toColor()), d instanceof a.Dimension && c instanceof a.Color && (d = d.toColor()), !c.operate) throw { | ||
2631 | type: "Operation", | ||
2632 | message: "Operation on an invalid type" | ||
2633 | }; | ||
2634 | return c.operate(b, this.op, d) | ||
2635 | } | ||
2636 | return new a.Operation(this.op, [c, d], this.isSpaced) | ||
2637 | }, | ||
2638 | genCSS: function(a, b) { | ||
2639 | this.operands[0].genCSS(a, b), this.isSpaced && b.add(" "), b.add(this.op), this.isSpaced && b.add(" "), this.operands[1].genCSS(a, b) | ||
2640 | }, | ||
2641 | toCSS: a.toCSS | ||
2642 | }, a.operate = function(a, b, c, d) { | ||
2643 | switch (b) { | ||
2644 | case "+": | ||
2645 | return c + d; | ||
2646 | case "-": | ||
2647 | return c - d; | ||
2648 | case "*": | ||
2649 | return c * d; | ||
2650 | case "/": | ||
2651 | return c / d | ||
2652 | } | ||
2653 | } | ||
2654 | }(c("../tree")), | ||
2655 | function(a) { | ||
2656 | a.Paren = function(a) { | ||
2657 | this.value = a | ||
2658 | }, a.Paren.prototype = { | ||
2659 | type: "Paren", | ||
2660 | accept: function(a) { | ||
2661 | this.value = a.visit(this.value) | ||
2662 | }, | ||
2663 | genCSS: function(a, b) { | ||
2664 | b.add("("), this.value.genCSS(a, b), b.add(")") | ||
2665 | }, | ||
2666 | toCSS: a.toCSS, | ||
2667 | eval: function(b) { | ||
2668 | return new a.Paren(this.value.eval(b)) | ||
2669 | } | ||
2670 | } | ||
2671 | }(c("../tree")), | ||
2672 | function(a) { | ||
2673 | a.Quoted = function(a, b, c, d, e) { | ||
2674 | this.escaped = c, this.value = b || "", this.quote = a.charAt(0), this.index = d, this.currentFileInfo = e | ||
2675 | }, a.Quoted.prototype = { | ||
2676 | type: "Quoted", | ||
2677 | genCSS: function(a, b) { | ||
2678 | this.escaped || b.add(this.quote, this.currentFileInfo, this.index), b.add(this.value), this.escaped || b.add(this.quote) | ||
2679 | }, | ||
2680 | toCSS: a.toCSS, | ||
2681 | eval: function(b) { | ||
2682 | var c = this, | ||
2683 | d = this.value.replace(/`([^`]+)`/g, function(d, e) { | ||
2684 | return new a.JavaScript(e, c.index, !0).eval(b).value | ||
2685 | }).replace(/@\{([\w-]+)\}/g, function(d, e) { | ||
2686 | var f = new a.Variable("@" + e, c.index, c.currentFileInfo).eval(b, !0); | ||
2687 | return f instanceof a.Quoted ? f.value : f.toCSS() | ||
2688 | }); | ||
2689 | return new a.Quoted(this.quote + d + this.quote, d, this.escaped, this.index, this.currentFileInfo) | ||
2690 | }, | ||
2691 | compare: function(a) { | ||
2692 | if (!a.toCSS) return -1; | ||
2693 | var b = this.toCSS(), | ||
2694 | c = a.toCSS(); | ||
2695 | return b === c ? 0 : c > b ? -1 : 1 | ||
2696 | } | ||
2697 | } | ||
2698 | }(c("../tree")), | ||
2699 | function(a) { | ||
2700 | function b(a, b) { | ||
2701 | var c, d = "", | ||
2702 | e = b.length, | ||
2703 | f = { | ||
2704 | add: function(a) { | ||
2705 | d += a | ||
2706 | } | ||
2707 | }; | ||
2708 | for (c = 0; e > c; c++) b[c].eval(a).genCSS(a, f); | ||
2709 | return d | ||
2710 | } | ||
2711 | a.Rule = function(b, c, d, e, f, g, h) { | ||
2712 | this.name = b, this.value = c instanceof a.Value || c instanceof a.Ruleset ? c : new a.Value([c]), this.important = d ? " " + d.trim() : "", this.merge = e, this.index = f, this.currentFileInfo = g, this.inline = h || !1, this.variable = b.charAt && "@" === b.charAt(0) | ||
2713 | }, a.Rule.prototype = { | ||
2714 | type: "Rule", | ||
2715 | accept: function(a) { | ||
2716 | this.value = a.visit(this.value) | ||
2717 | }, | ||
2718 | genCSS: function(a, b) { | ||
2719 | b.add(this.name + (a.compress ? ":" : ": "), this.currentFileInfo, this.index); | ||
2720 | try { | ||
2721 | this.value.genCSS(a, b) | ||
2722 | } catch (c) { | ||
2723 | throw c.index = this.index, c.filename = this.currentFileInfo.filename, c | ||
2724 | } | ||
2725 | b.add(this.important + (this.inline || a.lastRule && a.compress ? "" : ";"), this.currentFileInfo, this.index) | ||
2726 | }, | ||
2727 | toCSS: a.toCSS, | ||
2728 | eval: function(c) { | ||
2729 | var d, e = !1, | ||
2730 | f = this.name; | ||
2731 | "string" != typeof f && (f = 1 === f.length && f[0] instanceof a.Keyword ? f[0].value : b(c, f)), "font" !== f || c.strictMath || (e = !0, c.strictMath = !0); | ||
2732 | try { | ||
2733 | if (d = this.value.eval(c), !this.variable && "DetachedRuleset" === d.type) throw { | ||
2734 | message: "Rulesets cannot be evaluated on a property.", | ||
2735 | index: this.index, | ||
2736 | filename: this.currentFileInfo.filename | ||
2737 | }; | ||
2738 | return new a.Rule(f, d, this.important, this.merge, this.index, this.currentFileInfo, this.inline) | ||
2739 | } catch (g) { | ||
2740 | throw "number" != typeof g.index && (g.index = this.index, g.filename = this.currentFileInfo.filename), g | ||
2741 | } finally { | ||
2742 | e && (c.strictMath = !1) | ||
2743 | } | ||
2744 | }, | ||
2745 | makeImportant: function() { | ||
2746 | return new a.Rule(this.name, this.value, "!important", this.merge, this.index, this.currentFileInfo, this.inline) | ||
2747 | } | ||
2748 | } | ||
2749 | }(c("../tree")), | ||
2750 | function(a) { | ||
2751 | a.RulesetCall = function(a) { | ||
2752 | this.variable = a | ||
2753 | }, a.RulesetCall.prototype = { | ||
2754 | type: "RulesetCall", | ||
2755 | accept: function() {}, | ||
2756 | eval: function(b) { | ||
2757 | var c = new a.Variable(this.variable).eval(b); | ||
2758 | return c.callEval(b) | ||
2759 | } | ||
2760 | } | ||
2761 | }(c("../tree")), | ||
2762 | function(a) { | ||
2763 | a.Ruleset = function(a, b, c) { | ||
2764 | this.selectors = a, this.rules = b, this._lookups = {}, this.strictImports = c | ||
2765 | }, a.Ruleset.prototype = { | ||
2766 | type: "Ruleset", | ||
2767 | accept: function(a) { | ||
2768 | this.paths ? a.visitArray(this.paths, !0) : this.selectors && (this.selectors = a.visitArray(this.selectors)), this.rules && this.rules.length && (this.rules = a.visitArray(this.rules)) | ||
2769 | }, | ||
2770 | eval: function(b) { | ||
2771 | var c, d, e, f, g = this.selectors, | ||
2772 | h = a.defaultFunc, | ||
2773 | i = !1; | ||
2774 | if (g && (d = g.length)) { | ||
2775 | for (c = [], h.error({ | ||
2776 | type: "Syntax", | ||
2777 | message: "it is currently only allowed in parametric mixin guards," | ||
2778 | }), f = 0; d > f; f++) e = g[f].eval(b), c.push(e), e.evaldCondition && (i = !0); | ||
2779 | h.reset() | ||
2780 | } else i = !0; | ||
2781 | var j, k, l = this.rules ? this.rules.slice(0) : null, | ||
2782 | m = new a.Ruleset(c, l, this.strictImports); | ||
2783 | m.originalRuleset = this, m.root = this.root, m.firstRoot = this.firstRoot, m.allowImports = this.allowImports, this.debugInfo && (m.debugInfo = this.debugInfo), i || (l.length = 0); | ||
2784 | var n = b.frames; | ||
2785 | n.unshift(m); | ||
2786 | var o = b.selectors; | ||
2787 | o || (b.selectors = o = []), o.unshift(this.selectors), (m.root || m.allowImports || !m.strictImports) && m.evalImports(b); | ||
2788 | var p = m.rules, | ||
2789 | q = p ? p.length : 0; | ||
2790 | for (f = 0; q > f; f++)(p[f] instanceof a.mixin.Definition || p[f] instanceof a.DetachedRuleset) && (p[f] = p[f].eval(b)); | ||
2791 | var r = b.mediaBlocks && b.mediaBlocks.length || 0; | ||
2792 | for (f = 0; q > f; f++) p[f] instanceof a.mixin.Call ? (l = p[f].eval(b).filter(function(b) { | ||
2793 | return b instanceof a.Rule && b.variable ? !m.variable(b.name) : !0 | ||
2794 | }), p.splice.apply(p, [f, 1].concat(l)), q += l.length - 1, f += l.length - 1, m.resetCache()) : p[f] instanceof a.RulesetCall && (l = p[f].eval(b).rules.filter(function(b) { | ||
2795 | return b instanceof a.Rule && b.variable ? !1 : !0 | ||
2796 | }), p.splice.apply(p, [f, 1].concat(l)), q += l.length - 1, f += l.length - 1, m.resetCache()); | ||
2797 | for (f = 0; f < p.length; f++) j = p[f], j instanceof a.mixin.Definition || j instanceof a.DetachedRuleset || (p[f] = j = j.eval ? j.eval(b) : j); | ||
2798 | for (f = 0; f < p.length; f++) | ||
2799 | if (j = p[f], j instanceof a.Ruleset && j.selectors && 1 === j.selectors.length && j.selectors[0].isJustParentSelector()) { | ||
2800 | p.splice(f--, 1); | ||
2801 | for (var s = 0; s < j.rules.length; s++) k = j.rules[s], k instanceof a.Rule && k.variable || p.splice(++f, 0, k) | ||
2802 | } | ||
2803 | if (n.shift(), o.shift(), b.mediaBlocks) | ||
2804 | for (f = r; f < b.mediaBlocks.length; f++) b.mediaBlocks[f].bubbleSelectors(c); | ||
2805 | return m | ||
2806 | }, | ||
2807 | evalImports: function(b) { | ||
2808 | var c, d, e = this.rules; | ||
2809 | if (e) | ||
2810 | for (c = 0; c < e.length; c++) e[c] instanceof a.Import && (d = e[c].eval(b), d && d.length ? (e.splice.apply(e, [c, 1].concat(d)), c += d.length - 1) : e.splice(c, 1, d), this.resetCache()) | ||
2811 | }, | ||
2812 | makeImportant: function() { | ||
2813 | return new a.Ruleset(this.selectors, this.rules.map(function(a) { | ||
2814 | return a.makeImportant ? a.makeImportant() : a | ||
2815 | }), this.strictImports) | ||
2816 | }, | ||
2817 | matchArgs: function(a) { | ||
2818 | return !a || 0 === a.length | ||
2819 | }, | ||
2820 | matchCondition: function(b, c) { | ||
2821 | var d = this.selectors[this.selectors.length - 1]; | ||
2822 | return d.evaldCondition ? d.condition && !d.condition.eval(new a.evalEnv(c, c.frames)) ? !1 : !0 : !1 | ||
2823 | }, | ||
2824 | resetCache: function() { | ||
2825 | this._rulesets = null, this._variables = null, this._lookups = {} | ||
2826 | }, | ||
2827 | variables: function() { | ||
2828 | return this._variables || (this._variables = this.rules ? this.rules.reduce(function(b, c) { | ||
2829 | return c instanceof a.Rule && c.variable === !0 && (b[c.name] = c), b | ||
2830 | }, {}) : {}), this._variables | ||
2831 | }, | ||
2832 | variable: function(a) { | ||
2833 | return this.variables()[a] | ||
2834 | }, | ||
2835 | rulesets: function() { | ||
2836 | if (!this.rules) return null; | ||
2837 | var b, c, d = a.Ruleset, | ||
2838 | e = a.mixin.Definition, | ||
2839 | f = [], | ||
2840 | g = this.rules, | ||
2841 | h = g.length; | ||
2842 | for (b = 0; h > b; b++) c = g[b], (c instanceof d || c instanceof e) && f.push(c); | ||
2843 | return f | ||
2844 | }, | ||
2845 | prependRule: function(a) { | ||
2846 | var b = this.rules; | ||
2847 | b ? b.unshift(a) : this.rules = [a] | ||
2848 | }, | ||
2849 | find: function(b, c) { | ||
2850 | c = c || this; | ||
2851 | var d, e = [], | ||
2852 | f = b.toCSS(); | ||
2853 | return f in this._lookups ? this._lookups[f] : (this.rulesets().forEach(function(f) { | ||
2854 | if (f !== c) | ||
2855 | for (var g = 0; g < f.selectors.length; g++) | ||
2856 | if (d = b.match(f.selectors[g])) { | ||
2857 | b.elements.length > d ? Array.prototype.push.apply(e, f.find(new a.Selector(b.elements.slice(d)), c)) : e.push(f); | ||
2858 | break | ||
2859 | } | ||
2860 | }), this._lookups[f] = e, e) | ||
2861 | }, | ||
2862 | genCSS: function(b, c) { | ||
2863 | var d, e, f, g, h, i, j = [], | ||
2864 | k = []; | ||
2865 | b.tabLevel = b.tabLevel || 0, this.root || b.tabLevel++; | ||
2866 | var l, m = b.compress ? "" : Array(b.tabLevel + 1).join(" "), | ||
2867 | n = b.compress ? "" : Array(b.tabLevel).join(" "); | ||
2868 | for (d = 0; d < this.rules.length; d++) h = this.rules[d], h.rules || h instanceof a.Media || h instanceof a.Directive || this.root && h instanceof a.Comment ? k.push(h) : j.push(h); | ||
2869 | if (!this.root) { | ||
2870 | g = a.debugInfo(b, this, n), g && (c.add(g), c.add(n)); | ||
2871 | var o, p = this.paths, | ||
2872 | q = p.length; | ||
2873 | for (l = b.compress ? "," : ",\n" + n, d = 0; q > d; d++) | ||
2874 | if (i = p[d], o = i.length) | ||
2875 | for (d > 0 && c.add(l), b.firstSelector = !0, i[0].genCSS(b, c), b.firstSelector = !1, e = 1; o > e; e++) i[e].genCSS(b, c); | ||
2876 | c.add((b.compress ? "{" : " {\n") + m) | ||
2877 | } | ||
2878 | for (d = 0; d < j.length; d++) h = j[d], d + 1 !== j.length || this.root && 0 !== k.length && !this.firstRoot || (b.lastRule = !0), h.genCSS ? h.genCSS(b, c) : h.value && c.add(h.value.toString()), b.lastRule ? b.lastRule = !1 : c.add(b.compress ? "" : "\n" + m); | ||
2879 | if (this.root || (c.add(b.compress ? "}" : "\n" + n + "}"), b.tabLevel--), l = (b.compress ? "" : "\n") + (this.root ? m : n), f = k.length) | ||
2880 | for (j.length && l && c.add(l), k[0].genCSS(b, c), d = 1; f > d; d++) l && c.add(l), k[d].genCSS(b, c); | ||
2881 | c.isEmpty() || b.compress || !this.firstRoot || c.add("\n") | ||
2882 | }, | ||
2883 | toCSS: a.toCSS, | ||
2884 | markReferenced: function() { | ||
2885 | if (this.selectors) | ||
2886 | for (var a = 0; a < this.selectors.length; a++) this.selectors[a].markReferenced() | ||
2887 | }, | ||
2888 | joinSelectors: function(a, b, c) { | ||
2889 | for (var d = 0; d < c.length; d++) this.joinSelector(a, b, c[d]) | ||
2890 | }, | ||
2891 | joinSelector: function(b, c, d) { | ||
2892 | var e, f, g, h, i, j, k, l, m, n, o, p, q, r, s; | ||
2893 | for (e = 0; e < d.elements.length; e++) j = d.elements[e], "&" === j.value && (h = !0); | ||
2894 | if (h) { | ||
2895 | for (r = [], i = [ | ||
2896 | [] | ||
2897 | ], e = 0; e < d.elements.length; e++) | ||
2898 | if (j = d.elements[e], "&" !== j.value) r.push(j); | ||
2899 | else { | ||
2900 | for (s = [], r.length > 0 && this.mergeElementsOnToSelectors(r, i), f = 0; f < i.length; f++) | ||
2901 | if (k = i[f], 0 === c.length) k.length > 0 && (k[0].elements = k[0].elements.slice(0), k[0].elements.push(new a.Element(j.combinator, "", j.index, j.currentFileInfo))), s.push(k); | ||
2902 | else | ||
2903 | for (g = 0; g < c.length; g++) l = c[g], m = [], n = [], p = !0, k.length > 0 ? (m = k.slice(0), q = m.pop(), o = d.createDerived(q.elements.slice(0)), p = !1) : o = d.createDerived([]), l.length > 1 && (n = n.concat(l.slice(1))), l.length > 0 && (p = !1, o.elements.push(new a.Element(j.combinator, l[0].elements[0].value, j.index, j.currentFileInfo)), o.elements = o.elements.concat(l[0].elements.slice(1))), p || m.push(o), m = m.concat(n), s.push(m); | ||
2904 | i = s, r = [] | ||
2905 | } | ||
2906 | for (r.length > 0 && this.mergeElementsOnToSelectors(r, i), e = 0; e < i.length; e++) i[e].length > 0 && b.push(i[e]) | ||
2907 | } else if (c.length > 0) | ||
2908 | for (e = 0; e < c.length; e++) b.push(c[e].concat(d)); | ||
2909 | else b.push([d]) | ||
2910 | }, | ||
2911 | mergeElementsOnToSelectors: function(b, c) { | ||
2912 | var d, e; | ||
2913 | if (0 === c.length) return void c.push([new a.Selector(b)]); | ||
2914 | for (d = 0; d < c.length; d++) e = c[d], e.length > 0 ? e[e.length - 1] = e[e.length - 1].createDerived(e[e.length - 1].elements.concat(b)) : e.push(new a.Selector(b)) | ||
2915 | } | ||
2916 | } | ||
2917 | }(c("../tree")), | ||
2918 | function(a) { | ||
2919 | a.Selector = function(a, b, c, d, e, f) { | ||
2920 | this.elements = a, this.extendList = b, this.condition = c, this.currentFileInfo = e || {}, this.isReferenced = f, c || (this.evaldCondition = !0) | ||
2921 | }, a.Selector.prototype = { | ||
2922 | type: "Selector", | ||
2923 | accept: function(a) { | ||
2924 | this.elements && (this.elements = a.visitArray(this.elements)), this.extendList && (this.extendList = a.visitArray(this.extendList)), this.condition && (this.condition = a.visit(this.condition)) | ||
2925 | }, | ||
2926 | createDerived: function(b, c, d) { | ||
2927 | d = null != d ? d : this.evaldCondition; | ||
2928 | var e = new a.Selector(b, c || this.extendList, null, this.index, this.currentFileInfo, this.isReferenced); | ||
2929 | return e.evaldCondition = d, e.mediaEmpty = this.mediaEmpty, e | ||
2930 | }, | ||
2931 | match: function(a) { | ||
2932 | var b, c, d = this.elements, | ||
2933 | e = d.length; | ||
2934 | if (a.CacheElements(), b = a._elements.length, 0 === b || b > e) return 0; | ||
2935 | for (c = 0; b > c; c++) | ||
2936 | if (d[c].value !== a._elements[c]) return 0; | ||
2937 | return b | ||
2938 | }, | ||
2939 | CacheElements: function() { | ||
2940 | var a, b, c, d = ""; | ||
2941 | if (!this._elements) { | ||
2942 | for (a = this.elements.length, c = 0; a > c; c++) | ||
2943 | if (b = this.elements[c], d += b.combinator.value, b.value.value) { | ||
2944 | if ("string" != typeof b.value.value) { | ||
2945 | d = ""; | ||
2946 | break | ||
2947 | } | ||
2948 | d += b.value.value | ||
2949 | } else d += b.value; | ||
2950 | this._elements = d.match(/[,&#\.\w-]([\w-]|(\\.))*/g), this._elements ? "&" === this._elements[0] && this._elements.shift() : this._elements = [] | ||
2951 | } | ||
2952 | }, | ||
2953 | isJustParentSelector: function() { | ||
2954 | return !this.mediaEmpty && 1 === this.elements.length && "&" === this.elements[0].value && (" " === this.elements[0].combinator.value || "" === this.elements[0].combinator.value) | ||
2955 | }, | ||
2956 | eval: function(a) { | ||
2957 | var b = this.condition && this.condition.eval(a), | ||
2958 | c = this.elements, | ||
2959 | d = this.extendList; | ||
2960 | return c = c && c.map(function(b) { | ||
2961 | return b.eval(a) | ||
2962 | }), d = d && d.map(function(b) { | ||
2963 | return b.eval(a) | ||
2964 | }), this.createDerived(c, d, b) | ||
2965 | }, | ||
2966 | genCSS: function(a, b) { | ||
2967 | var c, d; | ||
2968 | if (a && a.firstSelector || "" !== this.elements[0].combinator.value || b.add(" ", this.currentFileInfo, this.index), !this._css) | ||
2969 | for (c = 0; c < this.elements.length; c++) d = this.elements[c], d.genCSS(a, b) | ||
2970 | }, | ||
2971 | toCSS: a.toCSS, | ||
2972 | markReferenced: function() { | ||
2973 | this.isReferenced = !0 | ||
2974 | }, | ||
2975 | getIsReferenced: function() { | ||
2976 | return !this.currentFileInfo.reference || this.isReferenced | ||
2977 | }, | ||
2978 | getIsOutput: function() { | ||
2979 | return this.evaldCondition | ||
2980 | } | ||
2981 | } | ||
2982 | }(c("../tree")), | ||
2983 | function(a) { | ||
2984 | a.UnicodeDescriptor = function(a) { | ||
2985 | this.value = a | ||
2986 | }, a.UnicodeDescriptor.prototype = { | ||
2987 | type: "UnicodeDescriptor", | ||
2988 | genCSS: function(a, b) { | ||
2989 | b.add(this.value) | ||
2990 | }, | ||
2991 | toCSS: a.toCSS, | ||
2992 | eval: function() { | ||
2993 | return this | ||
2994 | } | ||
2995 | } | ||
2996 | }(c("../tree")), | ||
2997 | function(a) { | ||
2998 | a.URL = function(a, b, c) { | ||
2999 | this.value = a, this.currentFileInfo = b, this.isEvald = c | ||
3000 | }, a.URL.prototype = { | ||
3001 | type: "Url", | ||
3002 | accept: function(a) { | ||
3003 | this.value = a.visit(this.value) | ||
3004 | }, | ||
3005 | genCSS: function(a, b) { | ||
3006 | b.add("url("), this.value.genCSS(a, b), b.add(")") | ||
3007 | }, | ||
3008 | toCSS: a.toCSS, | ||
3009 | eval: function(b) { | ||
3010 | var c, d = this.value.eval(b); | ||
3011 | if (!this.isEvald && (c = this.currentFileInfo && this.currentFileInfo.rootpath, c && "string" == typeof d.value && b.isPathRelative(d.value) && (d.quote || (c = c.replace(/[\(\)'"\s]/g, function(a) { | ||
3012 | return "\\" + a | ||
3013 | })), d.value = c + d.value), d.value = b.normalizePath(d.value), b.urlArgs && !d.value.match(/^\s*data:/))) { | ||
3014 | var e = -1 === d.value.indexOf("?") ? "?" : "&", | ||
3015 | f = e + b.urlArgs; - 1 !== d.value.indexOf("#") ? d.value = d.value.replace("#", f + "#") : d.value += f | ||
3016 | } | ||
3017 | return new a.URL(d, this.currentFileInfo, !0) | ||
3018 | } | ||
3019 | } | ||
3020 | }(c("../tree")), | ||
3021 | function(a) { | ||
3022 | a.Value = function(a) { | ||
3023 | this.value = a | ||
3024 | }, a.Value.prototype = { | ||
3025 | type: "Value", | ||
3026 | accept: function(a) { | ||
3027 | this.value && (this.value = a.visitArray(this.value)) | ||
3028 | }, | ||
3029 | eval: function(b) { | ||
3030 | return 1 === this.value.length ? this.value[0].eval(b) : new a.Value(this.value.map(function(a) { | ||
3031 | return a.eval(b) | ||
3032 | })) | ||
3033 | }, | ||
3034 | genCSS: function(a, b) { | ||
3035 | var c; | ||
3036 | for (c = 0; c < this.value.length; c++) this.value[c].genCSS(a, b), c + 1 < this.value.length && b.add(a && a.compress ? "," : ", ") | ||
3037 | }, | ||
3038 | toCSS: a.toCSS | ||
3039 | } | ||
3040 | }(c("../tree")), | ||
3041 | function(a) { | ||
3042 | a.Variable = function(a, b, c) { | ||
3043 | this.name = a, this.index = b, this.currentFileInfo = c || {} | ||
3044 | }, a.Variable.prototype = { | ||
3045 | type: "Variable", | ||
3046 | eval: function(b) { | ||
3047 | var c, d = this.name; | ||
3048 | if (0 === d.indexOf("@@") && (d = "@" + new a.Variable(d.slice(1)).eval(b).value), this.evaluating) throw { | ||
3049 | type: "Name", | ||
3050 | message: "Recursive variable definition for " + d, | ||
3051 | filename: this.currentFileInfo.file, | ||
3052 | index: this.index | ||
3053 | }; | ||
3054 | if (this.evaluating = !0, c = a.find(b.frames, function(a) { | ||
3055 | var c = a.variable(d); | ||
3056 | return c ? c.value.eval(b) : void 0 | ||
3057 | })) return this.evaluating = !1, c; | ||
3058 | throw { | ||
3059 | type: "Name", | ||
3060 | message: "variable " + d + " is undefined", | ||
3061 | filename: this.currentFileInfo.filename, | ||
3062 | index: this.index | ||
3063 | } | ||
3064 | } | ||
3065 | } | ||
3066 | }(c("../tree")), | ||
3067 | function(a) { | ||
3068 | var b = ["paths", "optimization", "files", "contents", "contentsIgnoredChars", "relativeUrls", "rootpath", "strictImports", "insecure", "dumpLineNumbers", "compress", "processImports", "syncImport", "javascriptEnabled", "mime", "useFileCache", "currentFileInfo"]; | ||
3069 | a.parseEnv = function(a) { | ||
3070 | if (d(a, this, b), this.contents || (this.contents = {}), this.contentsIgnoredChars || (this.contentsIgnoredChars = {}), this.files || (this.files = {}), !this.currentFileInfo) { | ||
3071 | var c = a && a.filename || "input", | ||
3072 | e = c.replace(/[^\/\\]*$/, ""); | ||
3073 | a && (a.filename = null), this.currentFileInfo = { | ||
3074 | filename: c, | ||
3075 | relativeUrls: this.relativeUrls, | ||
3076 | rootpath: a && a.rootpath || "", | ||
3077 | currentDirectory: e, | ||
3078 | entryPath: e, | ||
3079 | rootFilename: c | ||
3080 | } | ||
3081 | } | ||
3082 | }; | ||
3083 | var c = ["silent", "verbose", "compress", "yuicompress", "ieCompat", "strictMath", "strictUnits", "cleancss", "sourceMap", "importMultiple", "urlArgs"]; | ||
3084 | a.evalEnv = function(a, b) { | ||
3085 | d(a, this, c), this.frames = b || [] | ||
3086 | }, a.evalEnv.prototype.inParenthesis = function() { | ||
3087 | this.parensStack || (this.parensStack = []), this.parensStack.push(!0) | ||
3088 | }, a.evalEnv.prototype.outOfParenthesis = function() { | ||
3089 | this.parensStack.pop() | ||
3090 | }, a.evalEnv.prototype.isMathOn = function() { | ||
3091 | return this.strictMath ? this.parensStack && this.parensStack.length : !0 | ||
3092 | }, a.evalEnv.prototype.isPathRelative = function(a) { | ||
3093 | return !/^(?:[a-z-]+:|\/)/.test(a) | ||
3094 | }, a.evalEnv.prototype.normalizePath = function(a) { | ||
3095 | var b, c = a.split("/").reverse(); | ||
3096 | for (a = []; 0 !== c.length;) switch (b = c.pop()) { | ||
3097 | case ".": | ||
3098 | break; | ||
3099 | case "..": | ||
3100 | 0 === a.length || ".." === a[a.length - 1] ? a.push(b) : a.pop(); | ||
3101 | break; | ||
3102 | default: | ||
3103 | a.push(b) | ||
3104 | } | ||
3105 | return a.join("/") | ||
3106 | }; | ||
3107 | var d = function(a, b, c) { | ||
3108 | if (a) | ||
3109 | for (var d = 0; d < c.length; d++) a.hasOwnProperty(c[d]) && (b[c[d]] = a[c[d]]) | ||
3110 | } | ||
3111 | }(c("./tree")), | ||
3112 | function(a) { | ||
3113 | function b(a) { | ||
3114 | return a | ||
3115 | } | ||
3116 | |||
3117 | function c(a, b) { | ||
3118 | var d, e; | ||
3119 | for (d in a) | ||
3120 | if (a.hasOwnProperty(d)) switch (e = a[d], typeof e) { | ||
3121 | case "function": | ||
3122 | e.prototype && e.prototype.type && (e.prototype.typeIndex = b++); | ||
3123 | break; | ||
3124 | case "object": | ||
3125 | b = c(e, b) | ||
3126 | } | ||
3127 | return b | ||
3128 | } | ||
3129 | var d = { | ||
3130 | visitDeeper: !0 | ||
3131 | }, | ||
3132 | e = !1; | ||
3133 | a.visitor = function(b) { | ||
3134 | this._implementation = b, this._visitFnCache = [], e || (c(a, 1), e = !0) | ||
3135 | }, a.visitor.prototype = { | ||
3136 | visit: function(a) { | ||
3137 | if (!a) return a; | ||
3138 | var c = a.typeIndex; | ||
3139 | if (!c) return a; | ||
3140 | var e, f = this._visitFnCache, | ||
3141 | g = this._implementation, | ||
3142 | h = c << 1, | ||
3143 | i = 1 | h, | ||
3144 | j = f[h], | ||
3145 | k = f[i], | ||
3146 | l = d; | ||
3147 | if (l.visitDeeper = !0, j || (e = "visit" + a.type, j = g[e] || b, k = g[e + "Out"] || b, f[h] = j, f[i] = k), j !== b) { | ||
3148 | var m = j.call(g, a, l); | ||
3149 | g.isReplacing && (a = m) | ||
3150 | } | ||
3151 | return l.visitDeeper && a && a.accept && a.accept(this), k != b && k.call(g, a), a | ||
3152 | }, | ||
3153 | visitArray: function(a, b) { | ||
3154 | if (!a) return a; | ||
3155 | var c, d = a.length; | ||
3156 | if (b || !this._implementation.isReplacing) { | ||
3157 | for (c = 0; d > c; c++) this.visit(a[c]); | ||
3158 | return a | ||
3159 | } | ||
3160 | var e = []; | ||
3161 | for (c = 0; d > c; c++) { | ||
3162 | var f = this.visit(a[c]); | ||
3163 | f.splice ? f.length && this.flatten(f, e) : e.push(f) | ||
3164 | } | ||
3165 | return e | ||
3166 | }, | ||
3167 | flatten: function(a, b) { | ||
3168 | b || (b = []); | ||
3169 | var c, d, e, f, g, h; | ||
3170 | for (d = 0, c = a.length; c > d; d++) | ||
3171 | if (e = a[d], e.splice) | ||
3172 | for (g = 0, f = e.length; f > g; g++) h = e[g], h.splice ? h.length && this.flatten(h, b) : b.push(h); | ||
3173 | else b.push(e); | ||
3174 | return b | ||
3175 | } | ||
3176 | } | ||
3177 | }(c("./tree")), | ||
3178 | function(a) { | ||
3179 | a.importVisitor = function(b, c, d, e, f) { | ||
3180 | if (this._visitor = new a.visitor(this), this._importer = b, this._finish = c, this.env = d || new a.evalEnv, this.importCount = 0, this.onceFileDetectionMap = e || {}, this.recursionDetector = {}, f) | ||
3181 | for (var g in f) f.hasOwnProperty(g) && (this.recursionDetector[g] = !0) | ||
3182 | }, a.importVisitor.prototype = { | ||
3183 | isReplacing: !0, | ||
3184 | run: function(a) { | ||
3185 | var b; | ||
3186 | try { | ||
3187 | this._visitor.visit(a) | ||
3188 | } catch (c) { | ||
3189 | b = c | ||
3190 | } | ||
3191 | this.isFinished = !0, 0 === this.importCount && this._finish(b) | ||
3192 | }, | ||
3193 | visitImport: function(b, c) { | ||
3194 | var d, e = this, | ||
3195 | f = b.options.inline; | ||
3196 | if (!b.css || f) { | ||
3197 | try { | ||
3198 | d = b.evalForImport(this.env) | ||
3199 | } catch (g) { | ||
3200 | g.filename || (g.index = b.index, g.filename = b.currentFileInfo.filename), b.css = !0, b.error = g | ||
3201 | } | ||
3202 | if (d && (!d.css || f)) { | ||
3203 | b = d, this.importCount++; | ||
3204 | var h = new a.evalEnv(this.env, this.env.frames.slice(0)); | ||
3205 | b.options.multiple && (h.importMultiple = !0), this._importer.push(b.getPath(), b.currentFileInfo, b.options, function(c, d, g, i) { | ||
3206 | c && !c.filename && (c.index = b.index, c.filename = b.currentFileInfo.filename), h.importMultiple || (b.skip = g ? !0 : function() { | ||
3207 | return i in e.onceFileDetectionMap ? !0 : (e.onceFileDetectionMap[i] = !0, !1) | ||
3208 | }); | ||
3209 | var j = function(a) { | ||
3210 | e.importCount--, 0 === e.importCount && e.isFinished && e._finish(a) | ||
3211 | }; | ||
3212 | if (d) { | ||
3213 | b.root = d, b.importedFilename = i; | ||
3214 | var k = g || i in e.recursionDetector; | ||
3215 | if (!f && (h.importMultiple || !k)) return e.recursionDetector[i] = !0, void new a.importVisitor(e._importer, j, h, e.onceFileDetectionMap, e.recursionDetector).run(d) | ||
3216 | } | ||
3217 | j() | ||
3218 | }) | ||
3219 | } | ||
3220 | } | ||
3221 | return c.visitDeeper = !1, b | ||
3222 | }, | ||
3223 | visitRule: function(a, b) { | ||
3224 | return b.visitDeeper = !1, a | ||
3225 | }, | ||
3226 | visitDirective: function(a) { | ||
3227 | return this.env.frames.unshift(a), a | ||
3228 | }, | ||
3229 | visitDirectiveOut: function() { | ||
3230 | this.env.frames.shift() | ||
3231 | }, | ||
3232 | visitMixinDefinition: function(a) { | ||
3233 | return this.env.frames.unshift(a), a | ||
3234 | }, | ||
3235 | visitMixinDefinitionOut: function() { | ||
3236 | this.env.frames.shift() | ||
3237 | }, | ||
3238 | visitRuleset: function(a) { | ||
3239 | return this.env.frames.unshift(a), a | ||
3240 | }, | ||
3241 | visitRulesetOut: function() { | ||
3242 | this.env.frames.shift() | ||
3243 | }, | ||
3244 | visitMedia: function(a) { | ||
3245 | return this.env.frames.unshift(a.ruleset), a | ||
3246 | }, | ||
3247 | visitMediaOut: function() { | ||
3248 | this.env.frames.shift() | ||
3249 | } | ||
3250 | } | ||
3251 | }(c("./tree")), | ||
3252 | function(a) { | ||
3253 | a.joinSelectorVisitor = function() { | ||
3254 | this.contexts = [ | ||
3255 | [] | ||
3256 | ], this._visitor = new a.visitor(this) | ||
3257 | }, a.joinSelectorVisitor.prototype = { | ||
3258 | run: function(a) { | ||
3259 | return this._visitor.visit(a) | ||
3260 | }, | ||
3261 | visitRule: function(a, b) { | ||
3262 | b.visitDeeper = !1 | ||
3263 | }, | ||
3264 | visitMixinDefinition: function(a, b) { | ||
3265 | b.visitDeeper = !1 | ||
3266 | }, | ||
3267 | visitRuleset: function(a) { | ||
3268 | var b, c = this.contexts[this.contexts.length - 1], | ||
3269 | d = []; | ||
3270 | this.contexts.push(d), a.root || (b = a.selectors, b && (b = b.filter(function(a) { | ||
3271 | return a.getIsOutput() | ||
3272 | }), a.selectors = b.length ? b : b = null, b && a.joinSelectors(d, c, b)), b || (a.rules = null), a.paths = d) | ||
3273 | }, | ||
3274 | visitRulesetOut: function() { | ||
3275 | this.contexts.length = this.contexts.length - 1 | ||
3276 | }, | ||
3277 | visitMedia: function(a) { | ||
3278 | var b = this.contexts[this.contexts.length - 1]; | ||
3279 | a.rules[0].root = 0 === b.length || b[0].multiMedia | ||
3280 | } | ||
3281 | } | ||
3282 | }(c("./tree")), | ||
3283 | function(a) { | ||
3284 | a.toCSSVisitor = function(b) { | ||
3285 | this._visitor = new a.visitor(this), this._env = b | ||
3286 | }, a.toCSSVisitor.prototype = { | ||
3287 | isReplacing: !0, | ||
3288 | run: function(a) { | ||
3289 | return this._visitor.visit(a) | ||
3290 | }, | ||
3291 | visitRule: function(a) { | ||
3292 | return a.variable ? [] : a | ||
3293 | }, | ||
3294 | visitMixinDefinition: function(a) { | ||
3295 | return a.frames = [], [] | ||
3296 | }, | ||
3297 | visitExtend: function() { | ||
3298 | return [] | ||
3299 | }, | ||
3300 | visitComment: function(a) { | ||
3301 | return a.isSilent(this._env) ? [] : a | ||
3302 | }, | ||
3303 | visitMedia: function(a, b) { | ||
3304 | return a.accept(this._visitor), b.visitDeeper = !1, a.rules.length ? a : [] | ||
3305 | }, | ||
3306 | visitDirective: function(b) { | ||
3307 | if (b.currentFileInfo.reference && !b.isReferenced) return []; | ||
3308 | if ("@charset" === b.name) { | ||
3309 | if (this.charset) { | ||
3310 | if (b.debugInfo) { | ||
3311 | var c = new a.Comment("/* " + b.toCSS(this._env).replace(/\n/g, "") + " */\n"); | ||
3312 | return c.debugInfo = b.debugInfo, this._visitor.visit(c) | ||
3313 | } | ||
3314 | return [] | ||
3315 | } | ||
3316 | this.charset = !0 | ||
3317 | } | ||
3318 | return b | ||
3319 | }, | ||
3320 | checkPropertiesInRoot: function(b) { | ||
3321 | for (var c, d = 0; d < b.length; d++) | ||
3322 | if (c = b[d], c instanceof a.Rule && !c.variable) throw { | ||
3323 | message: "properties must be inside selector blocks, they cannot be in the root.", | ||
3324 | index: c.index, | ||
3325 | filename: c.currentFileInfo ? c.currentFileInfo.filename : null | ||
3326 | } | ||
3327 | }, | ||
3328 | visitRuleset: function(b, c) { | ||
3329 | var d, e = []; | ||
3330 | if (b.firstRoot && this.checkPropertiesInRoot(b.rules), b.root) b.accept(this._visitor), c.visitDeeper = !1, (b.firstRoot || b.rules && b.rules.length > 0) && e.splice(0, 0, b); | ||
3331 | else { | ||
3332 | b.paths && (b.paths = b.paths.filter(function(b) { | ||
3333 | var c; | ||
3334 | for (" " === b[0].elements[0].combinator.value && (b[0].elements[0].combinator = new a.Combinator("")), c = 0; c < b.length; c++) | ||
3335 | if (b[c].getIsReferenced() && b[c].getIsOutput()) return !0; | ||
3336 | return !1 | ||
3337 | })); | ||
3338 | for (var f = b.rules, g = f ? f.length : 0, h = 0; g > h;) d = f[h], d && d.rules ? (e.push(this._visitor.visit(d)), f.splice(h, 1), g--) : h++; | ||
3339 | g > 0 ? b.accept(this._visitor) : b.rules = null, c.visitDeeper = !1, f = b.rules, f && (this._mergeRules(f), f = b.rules), f && (this._removeDuplicateRules(f), f = b.rules), f && f.length > 0 && b.paths.length > 0 && e.splice(0, 0, b) | ||
3340 | } | ||
3341 | return 1 === e.length ? e[0] : e | ||
3342 | }, | ||
3343 | _removeDuplicateRules: function(b) { | ||
3344 | if (b) { | ||
3345 | var c, d, e, f = {}; | ||
3346 | for (e = b.length - 1; e >= 0; e--) | ||
3347 | if (d = b[e], d instanceof a.Rule) | ||
3348 | if (f[d.name]) { | ||
3349 | c = f[d.name], c instanceof a.Rule && (c = f[d.name] = [f[d.name].toCSS(this._env)]); | ||
3350 | var g = d.toCSS(this._env); - 1 !== c.indexOf(g) ? b.splice(e, 1) : c.push(g) | ||
3351 | } else f[d.name] = d | ||
3352 | } | ||
3353 | }, | ||
3354 | _mergeRules: function(b) { | ||
3355 | if (b) { | ||
3356 | for (var c, d, e, f = {}, g = 0; g < b.length; g++) d = b[g], d instanceof a.Rule && d.merge && (e = [d.name, d.important ? "!" : ""].join(","), f[e] ? b.splice(g--, 1) : f[e] = [], f[e].push(d)); | ||
3357 | Object.keys(f).map(function(b) { | ||
3358 | function e(b) { | ||
3359 | return new a.Expression(b.map(function(a) { | ||
3360 | return a.value | ||
3361 | })) | ||
3362 | } | ||
3363 | |||
3364 | function g(b) { | ||
3365 | return new a.Value(b.map(function(a) { | ||
3366 | return a | ||
3367 | })) | ||
3368 | } | ||
3369 | if (c = f[b], c.length > 1) { | ||
3370 | d = c[0]; | ||
3371 | var h = [], | ||
3372 | i = []; | ||
3373 | c.map(function(a) { | ||
3374 | "+" === a.merge && (i.length > 0 && h.push(e(i)), i = []), i.push(a) | ||
3375 | }), h.push(e(i)), d.value = g(h) | ||
3376 | } | ||
3377 | }) | ||
3378 | } | ||
3379 | } | ||
3380 | } | ||
3381 | }(c("./tree")), | ||
3382 | function(a) { | ||
3383 | a.extendFinderVisitor = function() { | ||
3384 | this._visitor = new a.visitor(this), this.contexts = [], this.allExtendsStack = [ | ||
3385 | [] | ||
3386 | ] | ||
3387 | }, a.extendFinderVisitor.prototype = { | ||
3388 | run: function(a) { | ||
3389 | return a = this._visitor.visit(a), a.allExtends = this.allExtendsStack[0], a | ||
3390 | }, | ||
3391 | visitRule: function(a, b) { | ||
3392 | b.visitDeeper = !1 | ||
3393 | }, | ||
3394 | visitMixinDefinition: function(a, b) { | ||
3395 | b.visitDeeper = !1 | ||
3396 | }, | ||
3397 | visitRuleset: function(b) { | ||
3398 | if (!b.root) { | ||
3399 | var c, d, e, f, g = [], | ||
3400 | h = b.rules, | ||
3401 | i = h ? h.length : 0; | ||
3402 | for (c = 0; i > c; c++) b.rules[c] instanceof a.Extend && (g.push(h[c]), b.extendOnEveryPath = !0); | ||
3403 | var j = b.paths; | ||
3404 | for (c = 0; c < j.length; c++) { | ||
3405 | var k = j[c], | ||
3406 | l = k[k.length - 1], | ||
3407 | m = l.extendList; | ||
3408 | for (f = m ? m.slice(0).concat(g) : g, f && (f = f.map(function(a) { | ||
3409 | return a.clone() | ||
3410 | })), d = 0; d < f.length; d++) this.foundExtends = !0, e = f[d], e.findSelfSelectors(k), e.ruleset = b, 0 === d && (e.firstExtendOnThisSelectorPath = !0), this.allExtendsStack[this.allExtendsStack.length - 1].push(e) | ||
3411 | } | ||
3412 | this.contexts.push(b.selectors) | ||
3413 | } | ||
3414 | }, | ||
3415 | visitRulesetOut: function(a) { | ||
3416 | a.root || (this.contexts.length = this.contexts.length - 1) | ||
3417 | }, | ||
3418 | visitMedia: function(a) { | ||
3419 | a.allExtends = [], this.allExtendsStack.push(a.allExtends) | ||
3420 | }, | ||
3421 | visitMediaOut: function() { | ||
3422 | this.allExtendsStack.length = this.allExtendsStack.length - 1 | ||
3423 | }, | ||
3424 | visitDirective: function(a) { | ||
3425 | a.allExtends = [], this.allExtendsStack.push(a.allExtends) | ||
3426 | }, | ||
3427 | visitDirectiveOut: function() { | ||
3428 | this.allExtendsStack.length = this.allExtendsStack.length - 1 | ||
3429 | } | ||
3430 | }, a.processExtendsVisitor = function() { | ||
3431 | this._visitor = new a.visitor(this) | ||
3432 | }, a.processExtendsVisitor.prototype = { | ||
3433 | run: function(b) { | ||
3434 | var c = new a.extendFinderVisitor; | ||
3435 | return c.run(b), c.foundExtends ? (b.allExtends = b.allExtends.concat(this.doExtendChaining(b.allExtends, b.allExtends)), this.allExtendsStack = [b.allExtends], this._visitor.visit(b)) : b | ||
3436 | }, | ||
3437 | doExtendChaining: function(b, c, d) { | ||
3438 | var e, f, g, h, i, j, k, l, m = [], | ||
3439 | n = this; | ||
3440 | for (d = d || 0, e = 0; e < b.length; e++) | ||
3441 | for (f = 0; f < c.length; f++) j = b[e], k = c[f], j.parent_ids.indexOf(k.object_id) >= 0 || (i = [k.selfSelectors[0]], g = n.findMatch(j, i), g.length && j.selfSelectors.forEach(function(b) { | ||
3442 | h = n.extendSelector(g, i, b), l = new a.Extend(k.selector, k.option, 0), l.selfSelectors = h, h[h.length - 1].extendList = [l], m.push(l), l.ruleset = k.ruleset, l.parent_ids = l.parent_ids.concat(k.parent_ids, j.parent_ids), k.firstExtendOnThisSelectorPath && (l.firstExtendOnThisSelectorPath = !0, k.ruleset.paths.push(h)) | ||
3443 | })); | ||
3444 | if (m.length) { | ||
3445 | if (this.extendChainCount++, d > 100) { | ||
3446 | var o = "{unable to calculate}", | ||
3447 | p = "{unable to calculate}"; | ||
3448 | try { | ||
3449 | o = m[0].selfSelectors[0].toCSS(), p = m[0].selector.toCSS() | ||
3450 | } catch (q) {} | ||
3451 | throw { | ||
3452 | message: "extend circular reference detected. One of the circular extends is currently:" + o + ":extend(" + p + ")" | ||
3453 | } | ||
3454 | } | ||
3455 | return m.concat(n.doExtendChaining(m, c, d + 1)) | ||
3456 | } | ||
3457 | return m | ||
3458 | }, | ||
3459 | visitRule: function(a, b) { | ||
3460 | b.visitDeeper = !1 | ||
3461 | }, | ||
3462 | visitMixinDefinition: function(a, b) { | ||
3463 | b.visitDeeper = !1 | ||
3464 | }, | ||
3465 | visitSelector: function(a, b) { | ||
3466 | b.visitDeeper = !1 | ||
3467 | }, | ||
3468 | visitRuleset: function(a) { | ||
3469 | if (!a.root) { | ||
3470 | var b, c, d, e, f = this.allExtendsStack[this.allExtendsStack.length - 1], | ||
3471 | g = [], | ||
3472 | h = this; | ||
3473 | for (d = 0; d < f.length; d++) | ||
3474 | for (c = 0; c < a.paths.length; c++) | ||
3475 | if (e = a.paths[c], !a.extendOnEveryPath) { | ||
3476 | var i = e[e.length - 1].extendList; | ||
3477 | i && i.length || (b = this.findMatch(f[d], e), b.length && f[d].selfSelectors.forEach(function(a) { | ||
3478 | g.push(h.extendSelector(b, e, a)) | ||
3479 | })) | ||
3480 | } | ||
3481 | a.paths = a.paths.concat(g) | ||
3482 | } | ||
3483 | }, | ||
3484 | findMatch: function(a, b) { | ||
3485 | var c, d, e, f, g, h, i, j = this, | ||
3486 | k = a.selector.elements, | ||
3487 | l = [], | ||
3488 | m = []; | ||
3489 | for (c = 0; c < b.length; c++) | ||
3490 | for (d = b[c], e = 0; e < d.elements.length; e++) | ||
3491 | for (f = d.elements[e], (a.allowBefore || 0 === c && 0 === e) && l.push({ | ||
3492 | pathIndex: c, | ||
3493 | index: e, | ||
3494 | matched: 0, | ||
3495 | initialCombinator: f.combinator | ||
3496 | }), h = 0; h < l.length; h++) i = l[h], g = f.combinator.value, "" === g && 0 === e && (g = " "), !j.isElementValuesEqual(k[i.matched].value, f.value) || i.matched > 0 && k[i.matched].combinator.value !== g ? i = null : i.matched++, i && (i.finished = i.matched === k.length, i.finished && !a.allowAfter && (e + 1 < d.elements.length || c + 1 < b.length) && (i = null)), i ? i.finished && (i.length = k.length, i.endPathIndex = c, i.endPathElementIndex = e + 1, l.length = 0, m.push(i)) : (l.splice(h, 1), h--); | ||
3497 | return m | ||
3498 | }, | ||
3499 | isElementValuesEqual: function(b, c) { | ||
3500 | if ("string" == typeof b || "string" == typeof c) return b === c; | ||
3501 | if (b instanceof a.Attribute) return b.op !== c.op || b.key !== c.key ? !1 : b.value && c.value ? (b = b.value.value || b.value, c = c.value.value || c.value, b === c) : b.value || c.value ? !1 : !0; | ||
3502 | if (b = b.value, c = c.value, b instanceof a.Selector) { | ||
3503 | if (!(c instanceof a.Selector) || b.elements.length !== c.elements.length) return !1; | ||
3504 | for (var d = 0; d < b.elements.length; d++) { | ||
3505 | if (b.elements[d].combinator.value !== c.elements[d].combinator.value && (0 !== d || (b.elements[d].combinator.value || " ") !== (c.elements[d].combinator.value || " "))) return !1; | ||
3506 | if (!this.isElementValuesEqual(b.elements[d].value, c.elements[d].value)) return !1 | ||
3507 | } | ||
3508 | return !0 | ||
3509 | } | ||
3510 | return !1 | ||
3511 | }, | ||
3512 | extendSelector: function(b, c, d) { | ||
3513 | var e, f, g, h, i, j = 0, | ||
3514 | k = 0, | ||
3515 | l = []; | ||
3516 | for (e = 0; e < b.length; e++) h = b[e], f = c[h.pathIndex], g = new a.Element(h.initialCombinator, d.elements[0].value, d.elements[0].index, d.elements[0].currentFileInfo), h.pathIndex > j && k > 0 && (l[l.length - 1].elements = l[l.length - 1].elements.concat(c[j].elements.slice(k)), k = 0, j++), i = f.elements.slice(k, h.index).concat([g]).concat(d.elements.slice(1)), j === h.pathIndex && e > 0 ? l[l.length - 1].elements = l[l.length - 1].elements.concat(i) : (l = l.concat(c.slice(j, h.pathIndex)), l.push(new a.Selector(i))), j = h.endPathIndex, k = h.endPathElementIndex, k >= c[j].elements.length && (k = 0, j++); | ||
3517 | return j < c.length && k > 0 && (l[l.length - 1].elements = l[l.length - 1].elements.concat(c[j].elements.slice(k)), j++), l = l.concat(c.slice(j, c.length)) | ||
3518 | }, | ||
3519 | visitRulesetOut: function() {}, | ||
3520 | visitMedia: function(a) { | ||
3521 | var b = a.allExtends.concat(this.allExtendsStack[this.allExtendsStack.length - 1]); | ||
3522 | b = b.concat(this.doExtendChaining(b, a.allExtends)), this.allExtendsStack.push(b) | ||
3523 | }, | ||
3524 | visitMediaOut: function() { | ||
3525 | this.allExtendsStack.length = this.allExtendsStack.length - 1 | ||
3526 | }, | ||
3527 | visitDirective: function(a) { | ||
3528 | var b = a.allExtends.concat(this.allExtendsStack[this.allExtendsStack.length - 1]); | ||
3529 | b = b.concat(this.doExtendChaining(b, a.allExtends)), this.allExtendsStack.push(b) | ||
3530 | }, | ||
3531 | visitDirectiveOut: function() { | ||
3532 | this.allExtendsStack.length = this.allExtendsStack.length - 1 | ||
3533 | } | ||
3534 | } | ||
3535 | }(c("./tree")), | ||
3536 | function(a) { | ||
3537 | a.sourceMapOutput = function(a) { | ||
3538 | this._css = [], this._rootNode = a.rootNode, this._writeSourceMap = a.writeSourceMap, this._contentsMap = a.contentsMap, this._contentsIgnoredCharsMap = a.contentsIgnoredCharsMap, this._sourceMapFilename = a.sourceMapFilename, this._outputFilename = a.outputFilename, this._sourceMapURL = a.sourceMapURL, a.sourceMapBasepath && (this._sourceMapBasepath = a.sourceMapBasepath.replace(/\\/g, "/")), this._sourceMapRootpath = a.sourceMapRootpath, this._outputSourceFiles = a.outputSourceFiles, this._sourceMapGeneratorConstructor = a.sourceMapGenerator || c("source-map").SourceMapGenerator, this._sourceMapRootpath && "/" !== this._sourceMapRootpath.charAt(this._sourceMapRootpath.length - 1) && (this._sourceMapRootpath += "/"), this._lineNumber = 0, this._column = 0 | ||
3539 | }, a.sourceMapOutput.prototype.normalizeFilename = function(a) { | ||
3540 | return a = a.replace(/\\/g, "/"), this._sourceMapBasepath && 0 === a.indexOf(this._sourceMapBasepath) && (a = a.substring(this._sourceMapBasepath.length), ("\\" === a.charAt(0) || "/" === a.charAt(0)) && (a = a.substring(1))), (this._sourceMapRootpath || "") + a | ||
3541 | }, a.sourceMapOutput.prototype.add = function(a, b, c, d) { | ||
3542 | if (a) { | ||
3543 | var e, f, g, h, i; | ||
3544 | if (b) { | ||
3545 | var j = this._contentsMap[b.filename]; | ||
3546 | this._contentsIgnoredCharsMap[b.filename] && (c -= this._contentsIgnoredCharsMap[b.filename], 0 > c && (c = 0), j = j.slice(this._contentsIgnoredCharsMap[b.filename])), j = j.substring(0, c), f = j.split("\n"), h = f[f.length - 1] | ||
3547 | } | ||
3548 | if (e = a.split("\n"), g = e[e.length - 1], b) | ||
3549 | if (d) | ||
3550 | for (i = 0; i < e.length; i++) this._sourceMapGenerator.addMapping({ | ||
3551 | generated: { | ||
3552 | line: this._lineNumber + i + 1, | ||
3553 | column: 0 === i ? this._column : 0 | ||
3554 | }, | ||
3555 | original: { | ||
3556 | line: f.length + i, | ||
3557 | column: 0 === i ? h.length : 0 | ||
3558 | }, | ||
3559 | source: this.normalizeFilename(b.filename) | ||
3560 | }); | ||
3561 | else this._sourceMapGenerator.addMapping({ | ||
3562 | generated: { | ||
3563 | line: this._lineNumber + 1, | ||
3564 | column: this._column | ||
3565 | }, | ||
3566 | original: { | ||
3567 | line: f.length, | ||
3568 | column: h.length | ||
3569 | }, | ||
3570 | source: this.normalizeFilename(b.filename) | ||
3571 | }); | ||
3572 | 1 === e.length ? this._column += g.length : (this._lineNumber += e.length - 1, this._column = g.length), this._css.push(a) | ||
3573 | } | ||
3574 | }, a.sourceMapOutput.prototype.isEmpty = function() { | ||
3575 | return 0 === this._css.length | ||
3576 | }, a.sourceMapOutput.prototype.toCSS = function(a) { | ||
3577 | if (this._sourceMapGenerator = new this._sourceMapGeneratorConstructor({ | ||
3578 | file: this._outputFilename, | ||
3579 | sourceRoot: null | ||
3580 | }), this._outputSourceFiles) | ||
3581 | for (var b in this._contentsMap) | ||
3582 | if (this._contentsMap.hasOwnProperty(b)) { | ||
3583 | var c = this._contentsMap[b]; | ||
3584 | this._contentsIgnoredCharsMap[b] && (c = c.slice(this._contentsIgnoredCharsMap[b])), this._sourceMapGenerator.setSourceContent(this.normalizeFilename(b), c) | ||
3585 | } | ||
3586 | if (this._rootNode.genCSS(a, this), this._css.length > 0) { | ||
3587 | var d, e = JSON.stringify(this._sourceMapGenerator.toJSON()); | ||
3588 | this._sourceMapURL ? d = this._sourceMapURL : this._sourceMapFilename && (d = this.normalizeFilename(this._sourceMapFilename)), this._writeSourceMap ? this._writeSourceMap(e) : d = "data:application/json," + encodeURIComponent(e), d && this._css.push("/*# sourceMappingURL=" + d + " */") | ||
3589 | } | ||
3590 | return this._css.join("") | ||
3591 | } | ||
3592 | }(c("./tree")); | ||
3593 | var y = /^(file|chrome(-extension)?|resource|qrc|app):/.test(location.protocol); | ||
3594 | w.env = w.env || ("127.0.0.1" == location.hostname || "0.0.0.0" == location.hostname || "localhost" == location.hostname || location.port && location.port.length > 0 || y ? "development" : "production"); | ||
3595 | var z = { | ||
3596 | debug: 3, | ||
3597 | info: 2, | ||
3598 | errors: 1, | ||
3599 | none: 0 | ||
3600 | }; | ||
3601 | if (w.logLevel = "undefined" != typeof w.logLevel ? w.logLevel : "development" === w.env ? z.debug : z.errors, w.async = w.async || !1, w.fileAsync = w.fileAsync || !1, w.poll = w.poll || (y ? 1e3 : 1500), w.functions) | ||
3602 | for (var A in w.functions) w.functions.hasOwnProperty(A) && (w.tree.functions[A] = w.functions[A]); | ||
3603 | var B = /!dumpLineNumbers:(comments|mediaquery|all)/.exec(location.hash); | ||
3604 | B && (w.dumpLineNumbers = B[1]); | ||
3605 | var C = /^text\/(x-)?less$/, | ||
3606 | D = null, | ||
3607 | E = {}; | ||
3608 | if (w.watch = function() { | ||
3609 | return w.watchMode || (w.env = "development", v()), this.watchMode = !0, !0 | ||
3610 | }, w.unwatch = function() { | ||
3611 | return clearInterval(w.watchTimer), this.watchMode = !1, !1 | ||
3612 | }, /!watch/.test(location.hash) && w.watch(), "development" != w.env) try { | ||
3613 | D = "undefined" == typeof a.localStorage ? null : a.localStorage | ||
3614 | } catch (F) {} | ||
3615 | var G = document.getElementsByTagName("link"); | ||
3616 | w.sheets = []; | ||
3617 | for (var H = 0; H < G.length; H++)("stylesheet/less" === G[H].rel || G[H].rel.match(/stylesheet/) && G[H].type.match(C)) && w.sheets.push(G[H]); | ||
3618 | w.modifyVars = function(a) { | ||
3619 | w.refresh(!1, a) | ||
3620 | }, w.refresh = function(a, b) { | ||
3621 | var c, e; | ||
3622 | c = e = new Date, u(function(a, b, f, i, k) { | ||
3623 | if (a) return j(a, i.href); | ||
3624 | if (k.local) d("loading " + i.href + " from cache.", z.info); | ||
3625 | else { | ||
3626 | d("parsed " + i.href + " successfully.", z.debug); | ||
3627 | var l = b.toCSS(w); | ||
3628 | l = h(l), g(l, i, k.lastModified) | ||
3629 | } | ||
3630 | d("css for " + i.href + " generated in " + (new Date - e) + "ms", z.info), 0 === k.remaining && d("less has finished. css generated in " + (new Date - c) + "ms", z.info), e = new Date | ||
3631 | }, a, b), n(b) | ||
3632 | }, w.refreshStyles = n, w.Parser.fileLoader = s, w.refresh("development" === w.env), "function" == typeof define && define.amd && define(function() { | ||
3633 | return w | ||
3634 | }) | ||
3635 | }(window); \ No newline at end of file | ||