contour 0.0.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. data/.gitignore +7 -0
  2. data/CHANGELOG.rdoc +13 -0
  3. data/README.rdoc +56 -0
  4. data/app/controllers/contour/authentications_controller.rb +60 -0
  5. data/app/controllers/contour/registrations_controller.rb +16 -0
  6. data/app/controllers/contour/samples_controller.rb +5 -0
  7. data/app/controllers/contour/sessions_controller.rb +3 -0
  8. data/app/views/contour/authentications/_index.html.erb +25 -0
  9. data/app/views/contour/authentications/_menu.html.erb +25 -0
  10. data/app/views/contour/authentications/index.html.erb +27 -0
  11. data/app/views/contour/layouts/_menu.html.erb +32 -0
  12. data/app/views/contour/layouts/_message.html.erb +8 -0
  13. data/app/views/contour/layouts/application.html.erb +47 -0
  14. data/app/views/contour/registrations/edit.html.erb +25 -0
  15. data/app/views/contour/registrations/new.html.erb +37 -0
  16. data/app/views/contour/samples/index.html.erb +27 -0
  17. data/app/views/contour/sessions/new.html.erb +25 -0
  18. data/app/views/devise/passwords/edit.html.erb +16 -0
  19. data/app/views/devise/passwords/new.html.erb +12 -0
  20. data/contour.gemspec +27 -0
  21. data/lib/contour.rb +36 -0
  22. data/lib/contour/engine.rb +8 -0
  23. data/lib/contour/version.rb +1 -1
  24. data/lib/generators/contour/install_generator.rb +38 -0
  25. data/lib/generators/templates/contour.rb +30 -0
  26. data/lib/generators/templates/devise.rb +153 -0
  27. data/lib/generators/templates/omniauth.rb +22 -0
  28. data/lib/generators/templates/omniauth_fix.rb +98 -0
  29. data/lib/generators/templates/rack_fix.rb +44 -0
  30. data/vendor/assets/images/authbuttons/cas_32.png +0 -0
  31. data/vendor/assets/images/authbuttons/cas_64.png +0 -0
  32. data/vendor/assets/images/authbuttons/facebook_32.png +0 -0
  33. data/vendor/assets/images/authbuttons/facebook_64.png +0 -0
  34. data/vendor/assets/images/authbuttons/google_apps_32.png +0 -0
  35. data/vendor/assets/images/authbuttons/google_apps_64.png +0 -0
  36. data/vendor/assets/images/authbuttons/ldap_32.png +0 -0
  37. data/vendor/assets/images/authbuttons/ldap_64.png +0 -0
  38. data/vendor/assets/images/authbuttons/linkedin_32.png +0 -0
  39. data/vendor/assets/images/authbuttons/linkedin_64.png +0 -0
  40. data/vendor/assets/images/authbuttons/openid_32.png +0 -0
  41. data/vendor/assets/images/authbuttons/openid_64.png +0 -0
  42. data/vendor/assets/images/authbuttons/twitter_32.png +0 -0
  43. data/vendor/assets/images/authbuttons/twitter_64.png +0 -0
  44. data/vendor/assets/images/redmond/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  45. data/vendor/assets/images/redmond/ui-bg_flat_55_fbec88_40x100.png +0 -0
  46. data/vendor/assets/images/redmond/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
  47. data/vendor/assets/images/redmond/ui-bg_glass_85_dfeffc_1x400.png +0 -0
  48. data/vendor/assets/images/redmond/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  49. data/vendor/assets/images/redmond/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  50. data/vendor/assets/images/redmond/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
  51. data/vendor/assets/images/redmond/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  52. data/vendor/assets/images/redmond/ui-icons_217bc0_256x240.png +0 -0
  53. data/vendor/assets/images/redmond/ui-icons_2e83ff_256x240.png +0 -0
  54. data/vendor/assets/images/redmond/ui-icons_469bdd_256x240.png +0 -0
  55. data/vendor/assets/images/redmond/ui-icons_6da8d5_256x240.png +0 -0
  56. data/vendor/assets/images/redmond/ui-icons_cd0a0a_256x240.png +0 -0
  57. data/vendor/assets/images/redmond/ui-icons_d8e7f3_256x240.png +0 -0
  58. data/vendor/assets/images/redmond/ui-icons_f9bd01_256x240.png +0 -0
  59. data/vendor/assets/javascripts/contour.js +8 -0
  60. data/vendor/assets/javascripts/errors.js.coffee +10 -0
  61. data/vendor/assets/javascripts/external/exporting-2.1.4.src.js +673 -0
  62. data/vendor/assets/javascripts/external/highcharts-2.1.4.src.js +10668 -0
  63. data/vendor/assets/javascripts/external/jquery-ui-1.8.10.custom.min.js +782 -0
  64. data/vendor/assets/javascripts/external/waypoints.js +610 -0
  65. data/vendor/assets/javascripts/global.js.coffee +38 -0
  66. data/vendor/assets/javascripts/menu.js.coffee +6 -0
  67. data/vendor/assets/javascripts/popup.js.coffee +67 -0
  68. data/vendor/assets/stylesheets/authentication.css +63 -0
  69. data/vendor/assets/stylesheets/bluetrip-screen.css +324 -0
  70. data/vendor/assets/stylesheets/contour.css +15 -0
  71. data/vendor/assets/stylesheets/global.css +59 -0
  72. data/vendor/assets/stylesheets/header.css +18 -0
  73. data/vendor/assets/stylesheets/jquery-ui-1.8.10.custom.css +574 -0
  74. data/vendor/assets/stylesheets/menu.css +77 -0
  75. data/vendor/assets/stylesheets/message.css +27 -0
  76. data/vendor/assets/stylesheets/popup.css +79 -0
  77. metadata +114 -29
  78. data/README +0 -18
@@ -0,0 +1,38 @@
1
+ # Global functions referenced from HTML
2
+ @showWaiting = (element_id, text, centered) ->
3
+ element = $(element_id)
4
+ if element && centered
5
+ element.html('<br /><center><img width=\"13\" height=\"13\" src=\"' + root_url + 'assets/ajax-loader.gif\" align=\"absmiddle\" alt=\"...\" />' + text + '</center><br />')
6
+ else if element
7
+ element.html('<img width=\"13\" height=\"13\" src=\"' + root_url + 'assets/ajax-loader.gif\" align=\"absmiddle\" alt=\"...\" />' + text)
8
+
9
+ # Mouse Out Functions to Show and Hide Divs
10
+
11
+ @isTrueMouseOut = (e, handler) ->
12
+ if e.type != 'mouseout'
13
+ return false
14
+
15
+ # relTarget
16
+ if e.relatedTarget
17
+ relTarget = e.relatedTarget
18
+ else if e.type == 'mouseout'
19
+ relTarget = e.toElement
20
+ else
21
+ relTarget = e.fromElement
22
+ while relTarget && relTarget != handler
23
+ relTarget = relTarget.parentNode
24
+ relTarget != handler
25
+
26
+ @hideOnMouseOut = (elements) ->
27
+ $.each(elements, (index, value) ->
28
+ element = $(value)
29
+ element.mouseout((e, handler) ->
30
+ if isTrueMouseOut(e||window.event, this) then element.hide()
31
+ )
32
+ )
33
+
34
+ @showMessage = (elements) ->
35
+ $.each(elements, (index, value) ->
36
+ element = $(value)
37
+ element.fadeIn(2000)
38
+ )
@@ -0,0 +1,6 @@
1
+ jQuery ->
2
+ $('#menu').waypoint( (event, direction) ->
3
+ $(this).toggleClass('sticky', direction == "down")
4
+ $(this).css( left: $("#header").offset().left )
5
+ event.stopPropagation()
6
+ )
@@ -0,0 +1,67 @@
1
+ # Popup Code converted to CoffeeScript
2
+ # Original Code by:
3
+ # /***************************/
4
+ # //@Author: Adrian "yEnS" Mato Gondelle
5
+ # //@website: www.yensdesign.com
6
+ # //@email: yensamg@gmail.com
7
+ # //@license: Feel free to use it, but keep this credits please!
8
+ # /***************************/
9
+
10
+ # SETTING UP OUR POPUP
11
+ # 0 means disabled; 1 means enabled;
12
+ window.popupStatus = 0
13
+
14
+ # loading popup with jQuery magic!
15
+ @loadPopup = () ->
16
+ # loads popup only if it is disabled
17
+ if window.popupStatus==0
18
+ $("#background_popup").css
19
+ "opacity": "0.7"
20
+ $("#background_popup").fadeIn("slow")
21
+ $("#popup").fadeIn("slow")
22
+ window.popupStatus = 1
23
+
24
+ # disabling popup with jQuery magic!
25
+ @disablePopup = () ->
26
+ # disables popup only if it is enabled
27
+ if window.popupStatus==1
28
+ $("#background_popup").fadeOut("slow")
29
+ $("#popup").fadeOut("slow")
30
+ window.popupStatus = 0
31
+
32
+ # centering popup
33
+ @centerPopup = () ->
34
+ # request data for centering
35
+ windowWidth = document.documentElement.clientWidth
36
+ windowHeight = document.documentElement.clientHeight
37
+ popupHeight = $("#popup").height()
38
+ popupWidth = $("#popup").width()
39
+ # centering
40
+ $("#popup").css(
41
+ "position": "fixed"
42
+ "top": windowHeight/2-popupHeight/2
43
+ "left": windowWidth/2-popupWidth/2
44
+ )
45
+
46
+ # only need force for IE6
47
+ $("#background_popup").css(
48
+ "height": windowHeight
49
+ )
50
+
51
+ $("#popup_content, #popup_content_left, #popup_content_right").css(
52
+ "height": ($("#popup").height() - $("#popup_content").position().top) + "px"
53
+ )
54
+
55
+ jQuery ->
56
+ # Remove the popup, click the x or click outside of popup event
57
+ $("#popup_close, #background_popup").click(() -> disablePopup())
58
+
59
+ # Press Escape event!
60
+ $(document).keypress((e) -> if e.keyCode==27 && window.popupStatus==1 then disablePopup() )
61
+
62
+ # Resize the popup window if the window is resized and the popup is open.
63
+ $(window).resize( () ->
64
+ if popupStatus == 1
65
+ centerPopup()
66
+ $('#accordion').accordion( "resize" )
67
+ )
@@ -0,0 +1,63 @@
1
+ /* Authentication Styling */
2
+ .authentications {
3
+ margin-bottom: 30px;
4
+ }
5
+
6
+ .authentication {
7
+ width: 130px;
8
+ float: left;
9
+ background-color: #EEE;
10
+ border: solid 1px #999;
11
+ padding: 5px 10px;
12
+ border-radius: 8px;
13
+ -moz-border-radius: 8px;
14
+ -webkit-border-radius: 8px;
15
+ position: relative;
16
+ margin-right: 10px;
17
+ }
18
+
19
+ .authentication .remove {
20
+ text-decoration: none;
21
+ position: absolute;
22
+ top: 3px;
23
+ right: 3px;
24
+ color: #333;
25
+ padding: 2px 4px;
26
+ font-size: 10px;
27
+ }
28
+
29
+ .authentication .remove:hover {
30
+ color: #CCC;
31
+ background-color: #777;
32
+ border-radius: 6px;
33
+ -moz-border-radius: 6px;
34
+ -webkit-border-radius: 6px;
35
+ }
36
+
37
+ .authentication img {
38
+ float: left;
39
+ margin-right: 10px;
40
+ }
41
+
42
+ .authentication .provider {
43
+ font-weight: bold;
44
+ }
45
+
46
+ .authentication .uid {
47
+ color: #666;
48
+ font-size: 11px;
49
+ overflow: hidden;
50
+ white-space: nowrap;
51
+ }
52
+
53
+ .auth_provider img {
54
+ display: block;
55
+ }
56
+
57
+ .auth_provider {
58
+ float: left;
59
+ text-decoration: none;
60
+ margin-right: 20px;
61
+ text-align: center;
62
+ margin-bottom: 10px;
63
+ }
@@ -0,0 +1,324 @@
1
+ /*************************************
2
+ WELCOME TO THE STYLESHEET
3
+ --------------------------------------
4
+ screen.css
5
+ BlueTrip CSS Framework
6
+ http://bluetrip.org
7
+ ***************************************/
8
+
9
+ /*** MEYER RESET v1.0 ***/
10
+ html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0}
11
+
12
+ /*** BASIC TYPOGRAPHY ***/
13
+ html { font-size: 62.5%; font-family: "Liberation Sans", Helvetica, Arial, sans-serif; }
14
+ strong, th, thead td, h1, h2, h3, h4, h5, h6 { font-weight: bold; }
15
+ cite, em, dfn { font-style: italic; }
16
+ code, kbd, samp, pre, tt, var, input[type='text'], input[type='password'], textarea { font-size: 92%; font-family: monaco, "Lucida Console", courier, monospace; }
17
+ del { text-decoration: line-through; color: #666; }
18
+ ins, dfn { border-bottom: 1px solid #ccc; }
19
+ small, sup, sub { font-size: 85%; }
20
+ abbr, acronym { text-transform: uppercase; font-size: 85%; letter-spacing: .1em; }
21
+ a abbr, a acronym { border: none; }
22
+ abbr[title], acronym[title], dfn[title] { cursor: help; border-bottom: 1px solid #ccc; }
23
+ sup { vertical-align: super; }
24
+ sub { vertical-align: sub; }
25
+
26
+ /*** QUOTES ***/
27
+ blockquote { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; color: #666; }
28
+ blockquote *:first-child:before { content: "\201C"; }
29
+ blockquote *:first-child:after { content: "\201D"; }
30
+
31
+ /*** FORMS ***/
32
+ fieldset { padding:1.4em; margin: 0 0 1.5em 0; border: 1px solid #ccc; }
33
+ legend { font-weight: bold; font-size:1.2em; }
34
+ label { font-weight: bold; }
35
+ textarea, input[type='text'], input[type='password'], select { border: 1px solid #ccc; background: #fff; }
36
+ textarea:hover, input[type='text']:hover, input[type='password']:hover, select:hover { border-color: #aaa; }
37
+ textarea:focus, input[type='text']:focus, input[type='password']:focus, select:focus { border-color: #888; outline: 2px solid #ffffaa; }
38
+ input, select { cursor: pointer; }
39
+ input[type='text'],input[type='password'] { cursor: text; }
40
+
41
+ /*** BASE SIZES ***/
42
+ .container { font-size: 1.2em; line-height: 1.6em; }
43
+ h1 { font-size: 1.9em; }
44
+ h2 { font-size: 1.7em; }
45
+ h3 { font-size: 1.5em; }
46
+ h4 { font-size: 1.3em; }
47
+ h5 { font-size: 1.2em; }
48
+ h6 { font-size: 1em; }
49
+
50
+ /*** LISTS ***/
51
+ ul li { margin-left: .85em; }
52
+ ul { list-style-type: disc; }
53
+ ul ul { list-style-type: square; }
54
+ ul ul ul { list-style-type: circle; }
55
+ ol { list-style-position: outside; list-style-type: decimal; }
56
+ dt { font-weight: bold; }
57
+
58
+ /*** TABLES ***/
59
+ table { border-top: 1px solid #ccc; border-left: 1px solid #ccc; }
60
+ th, td { border-bottom: 1px solid #ddd; border-right: 1px solid #ccc; }
61
+
62
+ /*** MARGINS & PADDINGS ***/
63
+ blockquote *:first-child { margin: .8em 0; }
64
+ hr, p, ul, ol, dl, pre, blockquote, address, table, form { margin-bottom: 1.6em; }
65
+ /*** NOTE: Calulate header margins: TOP: 1.6em/size, BOTTOM: 1.6em/size/2 ***/
66
+ h1 { margin: 1em 0 .5em; }
67
+ h2 { margin: 1.07em 0 .535em; }
68
+ h3 { margin: 1.14em 0 .57em; }
69
+ h4 { margin: 1.23em 0 .615em; }
70
+ h5 { margin: 1.33em 0 .67em; }
71
+ h6 { margin: 1.6em 0 .8em; }
72
+ th, td { padding: .8em; }
73
+ caption { padding-bottom: .8em; } /*** padding instead of margin for IE ***/
74
+ blockquote { padding: 0 1em; margin: 1.6em 0; }
75
+ fieldset { padding: 0 1em 1em 1em; margin: 1.6em 0; } /*** padding-top is margin-top for fieldsets in Opera ***/
76
+ legend { padding-left: .8em; padding-right: .8em; }
77
+ legend+* { margin-top: 1em; } /*** compensates for the opera margin bug ***/
78
+ textarea, input { padding: .3em .4em .15em .4em; }
79
+ select { padding: .1em .2em 0 .2em; }
80
+ option { padding: 0 .4em; }
81
+ a { position: relative; padding: 0.3em 0 .1em 0; } /*** for larger click-area ***/
82
+ dt { margin-top: .8em; margin-bottom: .4em; }
83
+ ul { margin-left: 1.5em; }
84
+ ol { margin-left: 2.35em; }
85
+ ol ol, ul ol { margin-left: 2.5em; }
86
+ form div { margin-bottom: .8em; }
87
+
88
+ /*** COLORS ***/
89
+ a:link { text-decoration: underline; color: #36c; }
90
+ a:visited { text-decoration: underline; color: #99c; }
91
+ a:hover { text-decoration: underline; color: #c33; }
92
+ a:active, a:focus { text-decoration: underline; color: #000; }
93
+ code, pre { color: #c33; } /*** very optional, but still useful. W3C uses about the same colors for codes ***/
94
+
95
+ /*** 24 COLUMN GRID ***/
96
+ .container {width:950px;margin:0 auto;}
97
+ .showgrid {background:url(../assets/grid.png);}
98
+ body {margin:1.5em 0;}
99
+ div.span-1, div.span-2, div.span-3, div.span-4, div.span-5, div.span-6, div.span-7, div.span-8, div.span-9, div.span-10, div.span-11, div.span-12, div.span-13, div.span-14, div.span-15, div.span-16, div.span-17, div.span-18, div.span-19, div.span-20, div.span-21, div.span-22, div.span-23 {float:left;margin-right:10px;}
100
+ div.span-24 {float:left;}
101
+ div.last {margin-right:0;}
102
+ .span-1 {width:30px;}
103
+ .span-2 {width:70px;}
104
+ .span-3 {width:110px;}
105
+ .span-4 {width:150px;}
106
+ .span-5 {width:190px;}
107
+ .span-6 {width:230px;}
108
+ .span-7 {width:270px;}
109
+ .span-8 {width:310px;}
110
+ .span-9 {width:350px;}
111
+ .span-10 {width:390px;}
112
+ .span-11 {width:430px;}
113
+ .span-12 {width:470px;}
114
+ .span-13 {width:510px;}
115
+ .span-14 {width:550px;}
116
+ .span-15 {width:590px;}
117
+ .span-16 {width:630px;}
118
+ .span-17 {width:670px;}
119
+ .span-18 {width:710px;}
120
+ .span-19 {width:750px;}
121
+ .span-20 {width:790px;}
122
+ .span-21 {width:830px;}
123
+ .span-22 {width:870px;}
124
+ .span-23 {width:910px;}
125
+ .span-24, div.span-24 {width:950px;}
126
+ .suffix-1 {padding-right:40px;}
127
+ .suffix-2 {padding-right:80px;}
128
+ .suffix-3 {padding-right:120px;}
129
+ .suffix-4 {padding-right:160px;}
130
+ .suffix-5 {padding-right:200px;}
131
+ .suffix-6 {padding-right:240px;}
132
+ .suffix-7 {padding-right:280px;}
133
+ .suffix-8 {padding-right:320px;}
134
+ .suffix-9 {padding-right:360px;}
135
+ .suffix-10 {padding-right:400px;}
136
+ .suffix-11 {padding-right:440px;}
137
+ .suffix-12 {padding-right:480px;}
138
+ .suffix-13 {padding-right:520px;}
139
+ .suffix-14 {padding-right:560px;}
140
+ .suffix-15 {padding-right:600px;}
141
+ .suffix-16 {padding-right:640px;}
142
+ .suffix-17 {padding-right:680px;}
143
+ .suffix-18 {padding-right:720px;}
144
+ .suffix-19 {padding-right:760px;}
145
+ .suffix-20 {padding-right:800px;}
146
+ .suffix-21 {padding-right:840px;}
147
+ .suffix-22 {padding-right:880px;}
148
+ .suffix-23 {padding-right:920px;}
149
+ .prefix-1 {padding-left:40px;}
150
+ .prefix-2 {padding-left:80px;}
151
+ .prefix-3 {padding-left:120px;}
152
+ .prefix-4 {padding-left:160px;}
153
+ .prefix-5 {padding-left:200px;}
154
+ .prefix-6 {padding-left:240px;}
155
+ .prefix-7 {padding-left:280px;}
156
+ .prefix-8 {padding-left:320px;}
157
+ .prefix-9 {padding-left:360px;}
158
+ .prefix-10 {padding-left:400px;}
159
+ .prefix-11 {padding-left:440px;}
160
+ .prefix-12 {padding-left:480px;}
161
+ .prefix-13 {padding-left:520px;}
162
+ .prefix-14 {padding-left:560px;}
163
+ .prefix-15 {padding-left:600px;}
164
+ .prefix-16 {padding-left:640px;}
165
+ .prefix-17 {padding-left:680px;}
166
+ .prefix-18 {padding-left:720px;}
167
+ .prefix-19 {padding-left:760px;}
168
+ .prefix-20 {padding-left:800px;}
169
+ .prefix-21 {padding-left:840px;}
170
+ .prefix-22 {padding-left:880px;}
171
+ .prefix-23 {padding-left:920px;}
172
+ div.border {padding-right:4px;margin-right:5px;border-right:1px solid #eee;}
173
+ div.colborder {padding-right:24px;margin-right:25px;border-right:1px solid #eee;}
174
+ .pull-1 {margin-left:-40px;}
175
+ .pull-2 {margin-left:-80px;}
176
+ .pull-3 {margin-left:-120px;}
177
+ .pull-4 {margin-left:-160px;}
178
+ .pull-5 {margin-left:-200px;}
179
+ .pull-6 {margin-left:-240px;}
180
+ .pull-7 {margin-left:-280px;}
181
+ .pull-8 {margin-left:-320px;}
182
+ .pull-9 {margin-left:-360px;}
183
+ .pull-10 {margin-left:-400px;}
184
+ .pull-11 {margin-left:-440px;}
185
+ .pull-12 {margin-left:-480px;}
186
+ .pull-13 {margin-left:-520px;}
187
+ .pull-14 {margin-left:-560px;}
188
+ .pull-15 {margin-left:-600px;}
189
+ .pull-16 {margin-left:-640px;}
190
+ .pull-17 {margin-left:-680px;}
191
+ .pull-18 {margin-left:-720px;}
192
+ .pull-19 {margin-left:-760px;}
193
+ .pull-20 {margin-left:-800px;}
194
+ .pull-21 {margin-left:-840px;}
195
+ .pull-22 {margin-left:-880px;}
196
+ .pull-23 {margin-left:-920px;}
197
+ .pull-24 {margin-left:-960px;}
198
+ .pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {float:left;position:relative;}
199
+ .push-1 {margin:0 -40px 1.5em 40px;}
200
+ .push-2 {margin:0 -80px 1.5em 80px;}
201
+ .push-3 {margin:0 -120px 1.5em 120px;}
202
+ .push-4 {margin:0 -160px 1.5em 160px;}
203
+ .push-5 {margin:0 -200px 1.5em 200px;}
204
+ .push-6 {margin:0 -240px 1.5em 240px;}
205
+ .push-7 {margin:0 -280px 1.5em 280px;}
206
+ .push-8 {margin:0 -320px 1.5em 320px;}
207
+ .push-9 {margin:0 -360px 1.5em 360px;}
208
+ .push-10 {margin:0 -400px 1.5em 400px;}
209
+ .push-11 {margin:0 -440px 1.5em 440px;}
210
+ .push-12 {margin:0 -480px 1.5em 480px;}
211
+ .push-13 {margin:0 -520px 1.5em 520px;}
212
+ .push-14 {margin:0 -560px 1.5em 560px;}
213
+ .push-15 {margin:0 -600px 1.5em 600px;}
214
+ .push-16 {margin:0 -640px 1.5em 640px;}
215
+ .push-17 {margin:0 -680px 1.5em 680px;}
216
+ .push-18 {margin:0 -720px 1.5em 720px;}
217
+ .push-19 {margin:0 -760px 1.5em 760px;}
218
+ .push-20 {margin:0 -800px 1.5em 800px;}
219
+ .push-21 {margin:0 -840px 1.5em 840px;}
220
+ .push-22 {margin:0 -880px 1.5em 880px;}
221
+ .push-23 {margin:0 -920px 1.5em 920px;}
222
+ .push-24 {margin:0 -960px 1.5em 960px;}
223
+ .push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {float:right;position:relative;}
224
+ hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:.1em;margin:0 0 1.45em;border:none;}
225
+ hr.space {background:#fff;color:#fff;}
226
+ .clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;max-height:0;overflow:hidden;}
227
+ .clearfix, .container {display:inline-block;}
228
+ * html .clearfix, * html .container {height:1%;}
229
+ .clearfix, .container {display:block;}
230
+ .clear {clear:both;}
231
+
232
+ /*** FANCY SERIF ***/
233
+ .fancy { color: #666; font-family: "Warnock Pro", "Goudy Old Style","Palatino","Book Antiqua", Georgia, serif; font-style: italic; font-weight: normal; }
234
+
235
+ /*** SMALL CAPS ***/
236
+ .caps { font-variant: small-caps; letter-spacing: 1px; text-transform: lowercase; font-size:1.2em; font-weight:bold; padding:0 2px; }
237
+
238
+ /*** NO LINK ICON (use class="noicon" to remove the link icon from a specific link) ***/
239
+ body a.noicon { background:none !important; padding:0 !important; margin:0 !important; }
240
+
241
+ /*** LINK PADDING FOR ICONS ***/
242
+ a[href^="http:"],
243
+ a[href^="mailto:"],
244
+ a[href$=".pdf"],
245
+ a[href$=".doc"],
246
+ a[href$=".docx"],
247
+ a[href$=".xls"],
248
+ a[href$=".rss"],
249
+ a[href$=".rdf"],
250
+ a[href^="aim:"] { padding:2px 22px 2px 0; margin:-2px 0; background-repeat: no-repeat; background-position: right center; }
251
+
252
+ /*** EXTERNAL LINK ICONS ***/
253
+ a[href^="http:"] { background-image: url(../assets/icons/external.png); padding-right: 14px; }
254
+ a[href^="mailto:"] { background-image: url(../assets/icons/email.png); }
255
+ a[href^="http:"]:visited { background-image: url(../assets/icons/visited.png); }
256
+
257
+ /*** FILE LINK ICONS ***/
258
+ a[href$=".pdf"] { background-image: url(../assets/icons/pdf.png); }
259
+ a[href$=".doc"],
260
+ a[href$=".docx"] { background-image: url(../assets/icons/doc.png); }
261
+ a[href$=".xls"] { background-image: url(../assets/icons/xls.png); }
262
+
263
+ /*** MISCELLANEOUS LINK ICONS ***/
264
+ a[href$=".rss"],
265
+ a[href$=".rdf"] { background-image: url(../assets/icons/feed.png); }
266
+ a[href^="aim:"] { background-image: url(../assets/icons/im.png); }
267
+ a[href^="http://yourwebsite.com"] { background:none; padding:0; margin:0; }
268
+
269
+ /*** TEXT CLASSES ***/
270
+ .small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
271
+ .large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
272
+ .hide {display:none;}
273
+ .quiet {color:#666;}
274
+ .loud {color:#000;}
275
+ .highlight {background:#ff0;}
276
+ .top {margin-top:0;padding-top:0;}
277
+ .bottom {margin-bottom:0;padding-bottom:0;}
278
+ .thin {font-weight: lighter;}
279
+ .error, .notice, .success {padding:.8em;margin-bottom:1.6em;border:2px solid #ddd;}
280
+ .error {background:#FBE3E4;color:#8a1f11;border-color:#FBC2C4;}
281
+ .notice {background:#FFF6BF;color:#514721;border-color:#FFD324;}
282
+ .success {background:#E6EFC2;color:#264409;border-color:#C6D880;}
283
+ .error a {color:#8a1f11; background:none; padding:0; margin:0; }
284
+ .notice a {color:#514721; background:none; padding:0; margin:0; }
285
+ .success a {color:#264409; background:none; padding:0; margin:0; }
286
+ .center {text-align: center;}
287
+
288
+ /*** STYLES FOR BUTTONS ***/
289
+ a.button, button {
290
+ display: inline-block;
291
+ float: left;
292
+ margin:0 0.583em 0.667em 0;
293
+ padding:5px 10px 5px 7px; /*** Links ***/
294
+ border:1px solid #dedede;
295
+ border-top:1px solid #eee;
296
+ border-left:1px solid #eee;
297
+ background-color:#f5f5f5;
298
+ font-family:"Liberation Sans", Helvetica, Arial, sans-serif;
299
+ font-size:100%;
300
+ line-height:130%;
301
+ text-decoration:none;
302
+ font-weight:bold;
303
+ color:#565656;
304
+ cursor:pointer;
305
+ }
306
+ button { width:auto; overflow:visible; padding:5px 10px 5px 7px; } /*button { width:auto; overflow:visible; padding:4px 10px 3px 7px; }*/
307
+ button[type] { padding:4px 10px 4px 7px; line-height:17px; }
308
+ *:first-child+html .container button[type] { padding:4px 10px 3px 7px; }
309
+ button img, a.button img{ margin:0 3px -3px 0 !important; padding:0; border:none; width:16px; height:16px; float:none; }
310
+
311
+ /*** STANDARD BUTTONS ***/
312
+ button:hover, a.button:hover{ background-color:#dff4ff; border:1px solid #c2e1ef; color:#336699; }
313
+ a.button:active, button:active{ background-color:#6299c5; border:1px solid #6299c5; color:#fff; }
314
+
315
+ /*** POSITIVE (LIGHT BACKGROUND) ***/
316
+ body .positive { color:#529214; }
317
+ a.positive:hover, button.positive:hover { background-color:#E6EFC2; border:1px solid #C6D880; color:#529214; }
318
+ a.positive:active, button.positive:active { background-color:#529214; border:1px solid #529214; color:#fff; }
319
+
320
+ /*** NEGATIVE (DARK BACKGROUND)***/
321
+ body .negative { color:#d12f19; }
322
+ a.negative:hover, button.negative:hover { background:#fbe3e4; border:1px solid #fbc2c4; color:#d12f19; }
323
+ a.negative:active, button.negative:active { background-color:#d12f19; border:1px solid #d12f19; color:#fff; }
324
+