bootstrap-sass 1.2.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of bootstrap-sass might be problematic. Click here for more details.

data/LICENSE ADDED
@@ -0,0 +1,14 @@
1
+ Copyright 2011 Twitter, Inc.
2
+
3
+ Licensed under the Apache License, Version 2.0 (the "License");
4
+ you may not use this file except in compliance with the License.
5
+ You may obtain a copy of the License at
6
+
7
+ http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ Unless required by applicable law or agreed to in writing, software
10
+ distributed under the License is distributed on an "AS IS" BASIS,
11
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ See the License for the specific language governing permissions and
13
+ limitations under the License.
14
+
data/README.md ADDED
@@ -0,0 +1,20 @@
1
+ # Bootstrap for Rails
2
+
3
+ `bootstrap-sass` is an SASS-powered version of [Twitter's Bootstrap](http://github.com/twitter/bootstrap), ready to drop right into your asset-pipeline powered Rails applications.
4
+
5
+ Enjoy.
6
+
7
+ ## Usage
8
+
9
+ In your gemfile:
10
+
11
+ gem 'bootstrap-sass', '1.2.0'
12
+
13
+ In your css file of choice:
14
+
15
+ /*
16
+ *= require bootstrap
17
+ */
18
+
19
+ Simples.
20
+
@@ -0,0 +1,8 @@
1
+ module Bootstrap
2
+ module Rails
3
+ class Engine < ::Rails::Engine
4
+ # Rails, will you please look in our vendor? kthx
5
+ end
6
+ end
7
+ end
8
+
@@ -0,0 +1,24 @@
1
+ /*!
2
+ * Bootstrap 1.2.0
3
+ *
4
+ * Copyright 2011 Twitter, Inc
5
+ * Licensed under the Apache License v2.0
6
+ * http://www.apache.org/licenses/LICENSE-2.0
7
+ *
8
+ * Designed and built with all the love in the world @twitter by @mdo and @fat, and crafted into SASS by the fine typing of Thomas McDonald
9
+ * Date: 6th September, 2011
10
+ */
11
+
12
+ // CSS Reset
13
+ @import "bootstrap/reset";
14
+
15
+ // Core
16
+ @import "bootstrap/preboot";
17
+ @import "bootstrap/scaffolding";
18
+
19
+ // Styled patterns and elements
20
+ @import "bootstrap/type";
21
+ @import "bootstrap/forms";
22
+ @import "bootstrap/tables";
23
+ @import "bootstrap/patterns";
24
+
@@ -0,0 +1,371 @@
1
+ /* forms.css.scss
2
+ * Base styles for various input types, form layouts, and states
3
+ * ------------------------------------------------------------- */
4
+
5
+ // FORM STYLES
6
+ // -----------
7
+
8
+ form {
9
+ margin-bottom: $baseline;
10
+ }
11
+
12
+ // Groups of fields with labels on top (legends)
13
+ fieldset {
14
+ margin-bottom: $baseline;
15
+ padding-top: $baseline;
16
+ legend {
17
+ display: block;
18
+ margin-left: 150px;
19
+ font-size: 20px;
20
+ line-height: 1;
21
+ *margin: 0 0 5px 145px; /* IE6-7 */
22
+ *line-height: 1.5; /* IE6-7 */
23
+ color: $grayDark;
24
+ }
25
+ }
26
+
27
+ // Parent element that clears floats and wraps labels and fields together
28
+ .clearfix {
29
+ margin-bottom: $baseline;
30
+ }
31
+
32
+ // Set font for forms
33
+ label, input, select, textarea {
34
+ @include sans-serif-font(normal,13px,normal);
35
+ }
36
+
37
+ // Float labels left
38
+ label {
39
+ padding-top: 6px;
40
+ font-size: 13px;
41
+ line-height: 18px;
42
+ float: left;
43
+ width: 130px;
44
+ text-align: right;
45
+ color: $grayDark;
46
+ }
47
+
48
+ // Shift over the inside div to align all label's relevant content
49
+ div.input {
50
+ margin-left: 150px;
51
+ }
52
+
53
+ // Checkboxs and radio buttons
54
+ input[type=checkbox], input[type=radio] {
55
+ cursor: pointer;
56
+ }
57
+
58
+ // Inputs, Textareas, Selects
59
+ input, textarea, select, .uneditable-input {
60
+ display: inline-block;
61
+ width: 210px;
62
+ height: $baseline;
63
+ padding: 4px;
64
+ font-size: 13px;
65
+ line-height: $baseline;
66
+ color: $gray;
67
+ border: 1px solid #ccc;
68
+ @include border-radius(3px);
69
+ }
70
+
71
+ /* mini reset for non-html5 file types */
72
+ input[type=checkbox], input[type=radio] {
73
+ width: auto;
74
+ height: auto;
75
+ padding: 0;
76
+ margin: 3px 0;
77
+ *margin-top: 0; /* IE6-7 */
78
+ line-height: normal;
79
+ border: none;
80
+ }
81
+
82
+ input[type=file] {
83
+ background-color: #fff;
84
+ padding: initial;
85
+ border: initial;
86
+ line-height: initial;
87
+ @include box-shadow(none);
88
+ }
89
+
90
+ input[type=button], input[type=reset], input[type=submit] {
91
+ width: auto;
92
+ height: auto;
93
+ }
94
+
95
+ select, input[type=file] {
96
+ height: $baseline * 1.5;
97
+ line-height: $baseline * 1.5;
98
+ }
99
+
100
+ textarea {
101
+ height: auto;
102
+ }
103
+
104
+ .uneditable-input {
105
+ background-color: #eee;
106
+ display: block;
107
+ border-color: #ccc;
108
+ @include box-shadow(inset 0 1px 2px rgba(0,0,0,.075));
109
+ }
110
+
111
+ // Placeholder text gets special styles; can't be bundled together though for some reason
112
+ :-moz-placeholder {
113
+ color: $grayLight;
114
+ }
115
+ ::-webkit-input-placeholder {
116
+ color: $grayLight;
117
+ }
118
+
119
+ // Focus states
120
+ input, select, textarea {
121
+ $transition: border linear .2s, box-shadow linear .2s;
122
+ @include transition($transition);
123
+ @include box-shadow(inset 0 1px 3px rgba(0,0,0,.1));
124
+ }
125
+ input:focus, textarea:focus {
126
+ outline: none;
127
+ border-color: rgba(82,168,236,.8);
128
+ $shadow: inset 0 1px 3px rgba(0,0,0,.1), 0 0 8px rgba(82,168,236,.6);
129
+ @include box-shadow($shadow);
130
+ }
131
+
132
+ // Error styles
133
+ form div.error {
134
+ background: lighten($red, 57%);
135
+ padding: 10px 0;
136
+ margin: -10px 0 10px;
137
+ @include border-radius(4px);
138
+ $error-text: desaturate(lighten($red, 25%), 25%);
139
+ > label, span.help-inline, span.help-block {
140
+ color: $red;
141
+ }
142
+ input, textarea {
143
+ border-color: $error-text;
144
+ @include box-shadow(0 0 3px rgba(171,41,32,.25));
145
+ &:focus {
146
+ border-color: darken($error-text, 10%);
147
+ @include box-shadow(0 0 6px rgba(171,41,32,.5));
148
+ }
149
+ }
150
+ .input-prepend, .input-append {
151
+ span.add-on {
152
+ background: lighten($red, 50%);
153
+ border-color: $error-text;
154
+ color: darken($error-text, 10%);
155
+ }
156
+ }
157
+ }
158
+
159
+ // Form element sizes
160
+ .input-mini, input.mini, textarea.mini, select.mini {
161
+ width: 60px;
162
+ }
163
+ .input-small, input.small, textarea.small, select.small {
164
+ width: 90px;
165
+ }
166
+ .input-medium, input.medium, textarea.medium, select.medium {
167
+ width: 150px;
168
+ }
169
+ .input-large, input.large, textarea.large, select.large {
170
+ width: 210px;
171
+ }
172
+ .input-xlarge, input.xlarge, textarea.xlarge, select.xlarge {
173
+ width: 270px;
174
+ }
175
+ .input-xxlarge, input.xxlarge, textarea.xxlarge, select.xxlarge {
176
+ width: 530px;
177
+ }
178
+ textarea.xxlarge {
179
+ overflow-y: scroll;
180
+ }
181
+
182
+ // Turn off focus for disabled (read-only) form elements
183
+ input[readonly]:focus, textarea[readonly]:focus, input.disabled {
184
+ background: #f5f5f5;
185
+ border-color: #ddd;
186
+ @include box-shadow(none);
187
+ }
188
+
189
+ // Actions (the buttons)
190
+ .actions {
191
+ background: #f5f5f5;
192
+ margin-top: $baseline;
193
+ margin-bottom: $baseline;
194
+ padding: ($baseline - 1) 20px $baseline 150px;
195
+ border-top: 1px solid #ddd;
196
+ @include border-radius(0 0 3px 3px);
197
+ .secondary-action {
198
+ float: right;
199
+ a {
200
+ line-height: 30px;
201
+ &:hover {
202
+ text-decoration: underline;
203
+ }
204
+ }
205
+ }
206
+ }
207
+
208
+ // Help Text
209
+ .help-inline, .help-block {
210
+ font-size: 12px;
211
+ line-height: $baseline;
212
+ color: $grayLight;
213
+ }
214
+ .help-inline {
215
+ padding-left: 5px;
216
+ *position: relative; /* IE6-7 */
217
+ *top: -5px; /* IE6-7 */
218
+ }
219
+
220
+ // Big blocks of help text
221
+ .help-block {
222
+ display: block;
223
+ max-width: 600px;
224
+ }
225
+
226
+ // Inline Fields (input fields that appear as inline objects
227
+ .inline-inputs {
228
+ color: $gray;
229
+ span, input {
230
+ display: inline-block;
231
+ }
232
+ input.mini {
233
+ width: 60px;
234
+ }
235
+ input.small {
236
+ width: 90px;
237
+ }
238
+ span {
239
+ padding: 0 2px 0 1px;
240
+ }
241
+ }
242
+
243
+ // Allow us to put symbols and text within the input field for a cleaner look
244
+ .input-prepend, .input-append {
245
+ input {
246
+ @include border-radius(0 3px 3px 0);
247
+ }
248
+ .add-on {
249
+ background: #f5f5f5;
250
+ float: left;
251
+ display: block;
252
+ width: auto;
253
+ min-width: 16px;
254
+ padding: 4px 4px 4px 5px;
255
+ color: $grayLight;
256
+ font-weight: normal;
257
+ line-height: 18px;
258
+ height: 18px;
259
+ text-align: center;
260
+ text-shadow: 0 1px 0 #fff;
261
+ border: 1px solid #ccc;
262
+ border-right-width: 0;
263
+ @include border-radius(3px 0 0 3px);
264
+ }
265
+ .active {
266
+ background: lighten($green, 30);
267
+ border-color: $green;
268
+ }
269
+ }
270
+ .input-prepend {
271
+ .add-on {
272
+ *margin-top: 1px; /* IE6-7 */
273
+ }
274
+ }
275
+ .input-append {
276
+ input {
277
+ float: left;
278
+ @include border-radius(3px 0 0 3px);
279
+ }
280
+ .add-on {
281
+ @include border-radius(0 3px 3px 0);
282
+ border-right-width: 1px;
283
+ border-left-width: 0;
284
+ }
285
+ }
286
+
287
+ // Stacked options for forms (radio buttons or checkboxes)
288
+ .inputs-list {
289
+ margin: 0 0 5px;
290
+ width: 100%;
291
+ li {
292
+ display: block;
293
+ padding: 0;
294
+ width: 100%;
295
+ label {
296
+ display: block;
297
+ float: none;
298
+ width: auto;
299
+ padding: 0;
300
+ line-height: $baseline;
301
+ text-align: left;
302
+ white-space: normal;
303
+ strong {
304
+ color: $gray;
305
+ }
306
+ small {
307
+ font-size: 12px;
308
+ font-weight: normal;
309
+ }
310
+ }
311
+ ul.inputs-list {
312
+ margin-left: 25px;
313
+ margin-bottom: 10px;
314
+ padding-top: 0;
315
+ }
316
+ &:first-child {
317
+ padding-top: 5px;
318
+ }
319
+ }
320
+ input[type=radio], input[type=checkbox] {
321
+ margin-bottom: 0;
322
+ }
323
+ }
324
+
325
+ // Stacked forms
326
+ .form-stacked {
327
+ padding-left: 20px;
328
+ fieldset {
329
+ padding-top: $baseline / 2;
330
+ }
331
+ legend {
332
+ margin-left: 0;
333
+ }
334
+ label {
335
+ display: block;
336
+ float: none;
337
+ width: auto;
338
+ font-weight: bold;
339
+ text-align: left;
340
+ line-height: 20px;
341
+ padding-top: 0;
342
+ }
343
+ .clearfix {
344
+ margin-bottom: $baseline / 2;
345
+ div.input {
346
+ margin-left: 0;
347
+ }
348
+ }
349
+ .inputs-list {
350
+ margin-bottom: 0;
351
+ li {
352
+ padding-top: 0;
353
+ label {
354
+ font-weight: normal;
355
+ padding-top: 0;
356
+ }
357
+ }
358
+ }
359
+ div.error {
360
+ padding-top: 10px;
361
+ padding-bottom: 10px;
362
+ padding-left: 10px;
363
+ margin-top: 0;
364
+ margin-left: -10px;
365
+ }
366
+ .actions {
367
+ margin-left: -20px;
368
+ padding-left: 20px;
369
+ }
370
+ }
371
+
@@ -0,0 +1,776 @@
1
+ /* patterns.css.scss
2
+ * Repeatable UI elements outside the base styles provided from the scaffolding
3
+ * ---------------------------------------------------------------------------- */
4
+
5
+ // TOPBAR
6
+ // ------
7
+
8
+ // Topbar for Branding and Nav
9
+ .topbar {
10
+ height: 40px;
11
+ position: fixed;
12
+ top: 0;
13
+ left: 0;
14
+ right: 0;
15
+ z-index: 10000;
16
+ overflow: visible;
17
+
18
+ // Links get text shadow
19
+ a {
20
+ color: $grayLight;
21
+ text-shadow: 0 -1px 0 rgba(0,0,0,.25);
22
+ }
23
+
24
+ // Hover and active states
25
+ a:hover,
26
+ ul .active a {
27
+ background-color: #333;
28
+ background-color: rgba(255,255,255,.05);
29
+ color: $white;
30
+ text-decoration: none;
31
+ }
32
+
33
+ // Website name
34
+ h3 {
35
+ position: relative;
36
+ a {
37
+ float: left;
38
+ display: block;
39
+ padding: 8px 20px 12px;
40
+ margin-left: -20px; // negative indent to left-align the text down the page
41
+ color: $white;
42
+ font-size: 20px;
43
+ font-weight: 200;
44
+ line-height: 1;
45
+ }
46
+ }
47
+
48
+ // Search Form
49
+ form {
50
+ float: left;
51
+ margin: 5px 0 0 0;
52
+ position: relative;
53
+ @include opacity(100);
54
+ }
55
+ input {
56
+ background-color: #444;
57
+ background-color: rgba(255,255,255,.3);
58
+ @include sans-serif-font(13px, normal, 1);
59
+ padding: 4px 9px;
60
+ color: #fff;
61
+ color: rgba(255,255,255,.75);
62
+ border: 1px solid #111;
63
+ @include border-radius(4px);
64
+ $shadow: inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0px rgba(255,255,255,.25);
65
+ @include box-shadow($shadow);
66
+ @include transition(none);
67
+
68
+ // Placeholder text gets special styles; can't be bundled together though for some reason
69
+ &:-moz-placeholder {
70
+ color: $grayLighter;
71
+ }
72
+ &::-webkit-input-placeholder {
73
+ color: $grayLighter;
74
+ }
75
+ // Hover states
76
+ &:hover {
77
+ background-color: $grayLight;
78
+ background-color: rgba(255,255,255,.5);
79
+ color: #fff;
80
+ }
81
+ // Focus states (we use .focused since IE8 and down doesn't support :focus)
82
+ &:focus, &.focused {
83
+ outline: none;
84
+ background-color: #fff;
85
+ color: $grayDark;
86
+ text-shadow: 0 1px 0 #fff;
87
+ border: 0;
88
+ padding: 5px 10px;
89
+ @include box-shadow(0 0 3px rgba(0,0,0,.15));
90
+ }
91
+ }
92
+ }
93
+
94
+ // gradient is applied to it's own element because overflow visible is not honored by ie when filter is present
95
+ // For backwards compatability, include .topbar .fill
96
+ .topbar-inner, .topbar .fill {
97
+ background-color: #222;
98
+ @include vertical-gradient(#333, #222);
99
+ $shadow: 0 1px 3px rgba(0,0,0,.25), inset 0 -1px 0 rgba(0,0,0,.1);
100
+ @include box-shadow($shadow);
101
+ }
102
+
103
+ // NAVIGATION
104
+ // ----------
105
+
106
+ // Topbar Nav
107
+ // ul.nav for all topbar based navigation to avoid inheritance issues and over-specificity
108
+ // For backwards compatibility, leave in .topbar div > ul
109
+ .topbar div > ul, .nav {
110
+ display: block;
111
+ float: left;
112
+ margin: 0 10px 0 0;
113
+ position: relative;
114
+ left: 0;
115
+ > li {
116
+ display: block;
117
+ float: left;
118
+ }
119
+ a {
120
+ display: block;
121
+ float: none;
122
+ padding: 10px 10px 11px;
123
+ line-height: 19px;
124
+ text-decoration: none;
125
+ &:hover {
126
+ color: #fff;
127
+ text-decoration: none;
128
+ }
129
+ }
130
+ .active a {
131
+ background-color: #222;
132
+ background-color: rgba(0,0,0,.5);
133
+ }
134
+
135
+ // Secondary (floated right) nav in topbar
136
+ &.secondary-nav {
137
+ float: right;
138
+ margin-left: 10px;
139
+ margin-right: 0;
140
+ // backwards compatibility
141
+ .menu-dropdown, .dropdown-menu {
142
+ right: 0;
143
+ }
144
+ }
145
+ // Dropdowns within the .nav
146
+ // a.menu:hover and li.open .menu for backwards compatibility
147
+ a.menu:hover, li.open .menu, .dropdown-toggle:hover, .dropdown.open .dropdown-toggle {
148
+ background: #444;
149
+ background: rgba(255,255,255,.05);
150
+ }
151
+ // .menu-dropdown for backwards compatibility
152
+ .menu-dropdown, .dropdown-menu {
153
+ background-color: #333;
154
+ // a.menu for backwards compatibility
155
+ a.menu, .dropdown-toggle {
156
+ color: #fff;
157
+ &.open {
158
+ background: #444;
159
+ background: rgba(255,255,255,.05);
160
+ }
161
+ }
162
+ li a {
163
+ color: #999;
164
+ text-shadow: 0 1px 0 rgba(0,0,0,.5);
165
+ &:hover {
166
+ @include vertical-gradient(#292929,#191919);
167
+ color: #fff;
168
+ }
169
+ }
170
+ .divider {
171
+ background-color: #222;
172
+ border-color: #444;
173
+ }
174
+ }
175
+ }
176
+
177
+ // For backwards compatability with new dropdowns, redeclare dropdown link padding
178
+ .topbar ul .menu-dropdown li a, .topbar ul .dropdown-menu li a {
179
+ padding: 4px 15px;
180
+ }
181
+
182
+ // Dropdown Menus
183
+ // Use the .menu class on any <li> element within the topbar or ul.tabs and you'll get some superfancy dropdowns
184
+ // li.menu for backwards compatibility
185
+ li.menu, .dropdown {
186
+ position: relative;
187
+ }
188
+ // The link that is clicked to toggle the dropdown
189
+ // a.menu for backwards compatibility
190
+ a.menu:after, .dropdown-toggle:after {
191
+ width: 0;
192
+ height: 0;
193
+ display: inline-block;
194
+ content: "&darr;";
195
+ text-indent: -99999px;
196
+ vertical-align: top;
197
+ margin-top: 8px;
198
+ margin-left: 4px;
199
+ border-left: 4px solid transparent;
200
+ border-right: 4px solid transparent;
201
+ border-top: 4px solid #fff;
202
+ @include opacity(50);
203
+ }
204
+ // The dropdown menu (ul)
205
+ // .menu-dropdown for backwards compatibility
206
+ .menu-dropdown, .dropdown-menu {
207
+ background-color: #fff;
208
+ float: left;
209
+ display: none; // None by default, but block on "open" of the menu
210
+ position: absolute;
211
+ top: 40px;
212
+ min-width: 160px;
213
+ max-width: 220px;
214
+ _width: 160px;
215
+ margin-left: 0; // override default ul styles
216
+ margin-right: 0;
217
+ padding: 6px 0;
218
+ zoom: 1; // do we need this?
219
+ border-color: #999;
220
+ border-color: rgba(0,0,0,.2);
221
+ border-style: solid;
222
+ border-width: 0 1px 1px;
223
+ @include border-radius(0 0 6px 6px);
224
+ @include box-shadow(0 2px 4px rgba(0,0,0,.2));
225
+ @include background-clip(padding-box);
226
+
227
+ // Unfloat any li's to make them stack
228
+ li {
229
+ float: none;
230
+ display: block;
231
+ background-color: none;
232
+ }
233
+ // Dividers (basically an hr) within the dropdown
234
+ .divider {
235
+ height: 1px;
236
+ margin: 5px 0;
237
+ overflow: hidden;
238
+ background-color: #eee;
239
+ border-bottom: 1px solid #fff;
240
+ }
241
+ }
242
+
243
+ .topbar .dropdown-menu, .dropdown-menu {
244
+ // Links within the dropdown menu
245
+ a {
246
+ display: block;
247
+ padding: 4px 15px;
248
+ clear: both;
249
+ font-weight: normal;
250
+ line-height: 18px;
251
+ color: $gray;
252
+ text-shadow: 0 1px 0 #fff;
253
+ // Hover state
254
+ &:hover {
255
+ @include vertical-gradient(#eee, #ddd);
256
+ color: $grayDark;
257
+ text-decoration: none;
258
+ $shadow: inset 0 1px 0 rgba(0,0,0,.025), inset 0 -1px rgba(0,0,0,.025);
259
+ @include box-shadow($shadow);
260
+ }
261
+ }
262
+ }
263
+
264
+ // Open state for the dropdown
265
+ // .open for backwards compatibility
266
+ .open, .dropdown.open {
267
+ // .menu for backwards compatibility
268
+ .menu, .dropdown-toggle {
269
+ color: #fff;
270
+ background: #ccc;
271
+ background: rgba(0,0,0,.3);
272
+ }
273
+ // .menu-dropdown for backwards compatibility
274
+ .menu-dropdown, .dropdown-menu {
275
+ display: block;
276
+ }
277
+ }
278
+
279
+ // Tabs and Pills
280
+ .tabs, .pills {
281
+ margin: 0 0 20px;
282
+ padding: 0;
283
+ list-style: none;
284
+ @include clearfix();
285
+ > li {
286
+ float: left;
287
+ > a {
288
+ display: block;
289
+ }
290
+ }
291
+ }
292
+
293
+ // Basic Tabs
294
+ .tabs {
295
+ width: 100%;
296
+ border-bottom: 1px solid #ddd;
297
+ > li {
298
+ position: relative; // For the dropdowns mostly
299
+ top: 1px;
300
+ > a {
301
+ margin-right: 2px;
302
+ padding: 0 15px;
303
+ line-height: ($baseline * 2) - 1;
304
+ @include border-radius(4px 4px 0 0);
305
+ &:hover {
306
+ background-color: #eee;
307
+ border-bottom: 1px solid #ddd;
308
+ text-decoration: none;
309
+ }
310
+ }
311
+ &.active > a {
312
+ background-color: #fff;
313
+ padding: 0 14px;
314
+ border: 1px solid #ddd;
315
+ border-bottom: 0;
316
+ color: $gray;
317
+ }
318
+ }
319
+ // first one for backwards compatibility
320
+ .menu-dropdown, .dropdown-menu {
321
+ top: 35px;
322
+ border-width: 1px;
323
+ @include border-radius(0 6px 6px 6px);
324
+ }
325
+ // first one for backwards compatibility
326
+ a.menu:after, .dropdown-toggle:after {
327
+ border-top-color: #999;
328
+ margin-top: 15px;
329
+ margin-left: 5px;
330
+ }
331
+ // first one for backwards compatibility
332
+ li.open a.menu:after, .dropdown.open .dropdown-toggle:after {
333
+ border-top-color: #555;
334
+ }
335
+ }
336
+
337
+ // Basic pill nav
338
+ .pills {
339
+ a {
340
+ margin: 5px 3px 5px 0;
341
+ padding: 0 15px;
342
+ text-shadow: 0 1px 1px #fff;
343
+ line-height: 30px;
344
+ @include border-radius(15px);
345
+ &:hover {
346
+ background: $linkColorHover;
347
+ color: #fff;
348
+ text-decoration: none;
349
+ text-shadow: 0 1px 1px rgba(0,0,0,.25);
350
+ }
351
+ }
352
+ .active a {
353
+ background: $linkColor;
354
+ color: #fff;
355
+ text-shadow: 0 1px 1px rgba(0,0,0,.25);
356
+ }
357
+ }
358
+
359
+
360
+ // PAGE HEADERS
361
+ // ------------
362
+
363
+ .hero-unit {
364
+ background-color: #f5f5f5;
365
+ margin-top: 60px;
366
+ margin-bottom: 30px;
367
+ padding: 60px;
368
+ @include border-radius(6px);
369
+ h1 {
370
+ margin-bottom: 0;
371
+ font-size: 60px;
372
+ line-height: 1;
373
+ letter-spacing: -1px;
374
+ }
375
+ p {
376
+ font-size: 18px;
377
+ font-weight: 200;
378
+ line-height: $baseline * 1.5;
379
+ }
380
+ }
381
+ footer {
382
+ margin-top: $baseline - 1;
383
+ padding-top: $baseline - 1;
384
+ border-top: 1px solid #eee;
385
+ }
386
+
387
+
388
+ // PAGE HEADERS
389
+ // ------------
390
+
391
+ .page-header {
392
+ margin-bottom: $baseline - 1;
393
+ border-bottom: 1px solid #ddd;
394
+ @include box-shadow(0 1px 0 rgba(255,255,255,.5));
395
+ h1 {
396
+ margin-bottom: ($baseline / 2) - 1px;
397
+ }
398
+ }
399
+
400
+
401
+ // BUTTON STYLES
402
+ // -------------
403
+
404
+ // Base .btn styles
405
+ .btn {
406
+ // Button Base
407
+ cursor: pointer;
408
+ display: inline-block;
409
+ @include vertical-three-colors-gradient(#ffffff, #ffffff, 25%, darken(#ffffff, 10%)); // Don't use .gradientbar() here since it does a three-color gradient
410
+ padding: 5px 14px 6px;
411
+ text-shadow: 0 1px 1px rgba(255,255,255,.75);
412
+ color: #333;
413
+ font-size: 13px;
414
+ line-height: normal;
415
+ border: 1px solid #ccc;
416
+ border-bottom-color: #bbb;
417
+ @include border-radius(4px);
418
+ $shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
419
+ @include box-shadow($shadow);
420
+
421
+ &:hover {
422
+ background-position: 0 -15px;
423
+ color: #333;
424
+ text-decoration: none;
425
+ }
426
+
427
+ // Primary Button Type
428
+ &.primary {
429
+ color:#fff;
430
+ @include gradientBar($blue, $blueDark)
431
+ }
432
+
433
+ // Transitions
434
+ @include transition(.1s linear all);
435
+
436
+ // Active and Disabled states
437
+ &:active {
438
+ $shadow: inset 0 2px 4px rgba(0,0,0,.25), 0 1px 2px rgba(0,0,0,.05);
439
+ @include box-shadow($shadow);
440
+ }
441
+ &.disabled {
442
+ cursor: default;
443
+ background-image: none;
444
+ @include opacity(65);
445
+ @include box-shadow(none);
446
+ }
447
+ &[disabled] {
448
+ // disabled pseudo can't be included with .disabled
449
+ // def because IE8 and below will drop it ;_;
450
+ cursor: default;
451
+ background-image: none;
452
+ @include opacity(65);
453
+ @include box-shadow(none);
454
+ }
455
+
456
+ // Button Sizes
457
+ &.large {
458
+ font-size: 16px;
459
+ line-height: normal;
460
+ padding: 9px 14px 9px;
461
+ @include border-radius(6px);
462
+ }
463
+ &.small {
464
+ padding: 7px 9px 7px;
465
+ font-size: 11px;
466
+ }
467
+ }
468
+ // Super jank hack for removing border-radius from IE9 so we can keep filter gradients on alerts and buttons
469
+ :root .alert-message, :root .btn {
470
+ border-radius: 0 \0;
471
+ }
472
+
473
+ // Help Firefox not be a jerk about adding extra padding to buttons
474
+ button.btn, input[type=submit].btn {
475
+ &::-moz-focus-inner {
476
+ padding: 0;
477
+ border: 0;
478
+ }
479
+ }
480
+
481
+ // ERROR STYLES
482
+ // ------------
483
+
484
+ // Base alert styles
485
+ .alert-message {
486
+ @include gradientBar(#fceec1, #eedc94); // warning by default
487
+ margin-bottom: $baseline;
488
+ padding: 7px 14px;
489
+ color: $grayDark;
490
+ text-shadow: 0 1px 0 rgba(255,255,255,.5);
491
+ border-width: 1px;
492
+ border-style: solid;
493
+ @include border-radius(4px);
494
+ @include box-shadow(inset 0 1px 0 rgba(255,255,255,.25));
495
+
496
+ // Remove extra margin from content
497
+ h5 {
498
+ line-height: $baseline;
499
+ }
500
+ p {
501
+ margin-bottom: 0;
502
+ }
503
+ div {
504
+ margin-top: 5px;
505
+ margin-bottom: 2px;
506
+ line-height: 28px;
507
+ }
508
+ .btn {
509
+ // Provide actions with buttons
510
+ @include box-shadow(0 1px 0 rgba(255,255,255,.25));
511
+ }
512
+ .close {
513
+ float: right;
514
+ margin-top: -2px;
515
+ color: $black;
516
+ font-size: 20px;
517
+ font-weight: bold;
518
+ text-shadow: 0 1px 0 rgba(255,255,255,1);
519
+ @include opacity(20);
520
+ &:hover {
521
+ color: $black;
522
+ text-decoration: none;
523
+ @include opacity(40);
524
+ }
525
+ }
526
+
527
+ &.block-message {
528
+ background-image: none;
529
+ background-color: lighten(#fceec1, 5%);
530
+ padding: 14px;
531
+ border-color: #fceec1;
532
+ @include box-shadow(none);
533
+
534
+ p {
535
+ margin-right: 30px;
536
+ }
537
+ .alert-actions {
538
+ margin-top: 5px;
539
+ }
540
+ &.error, &.success, &.info {
541
+ color: $grayDark;
542
+ text-shadow: 0 1px 0 rgba(255,255,255,.5);
543
+ }
544
+ &.error {
545
+ background-color: lighten(#f56a66, 25%);
546
+ border-color: lighten(#f56a66, 20%);
547
+ }
548
+ &.success {
549
+ background-color: lighten(#62c462, 30%);
550
+ border-color: lighten(#62c462, 25%);
551
+ }
552
+ &.info {
553
+ background-color: lighten(#6bd0ee, 25%);
554
+ border-color: lighten(#6bd0ee, 20%);
555
+ }
556
+ }
557
+ }
558
+
559
+
560
+ // PAGINATION
561
+ // ----------
562
+
563
+ .pagination {
564
+ height: $baseline * 2;
565
+ margin: $baseline 0;
566
+ ul {
567
+ float: left;
568
+ margin: 0;
569
+ border: 1px solid #ddd;
570
+ border: 1px solid rgba(0,0,0,.15);
571
+ @include border-radius(3px);
572
+ @include box-shadow(0 1px 2px rgba(0,0,0,.05));
573
+ }
574
+ li {
575
+ display: inline;
576
+ }
577
+ a {
578
+ float: left;
579
+ padding: 0 14px;
580
+ line-height: ($baseline * 2) - 2;
581
+ border-right: 1px solid;
582
+ border-right-color: #ddd;
583
+ border-right-color: rgba(0,0,0,.15);
584
+ *border-right-color: #ddd; /* IE6-7 */
585
+ text-decoration: none;
586
+ }
587
+ a:hover, .active a {
588
+ background-color: lighten($blue, 45%);
589
+ }
590
+ .disabled a, .disabled a:hover {
591
+ background-color: transparent;
592
+ color: $grayLight;
593
+ }
594
+ .next a {
595
+ border: 0;
596
+ }
597
+ }
598
+
599
+ // WELLS
600
+ // -----
601
+ .well {
602
+ background-color: #f5f5f5;
603
+ margin-bottom: 20px;
604
+ padding: 19px;
605
+ min-height: 20px;
606
+ border: 1px solid #eee;
607
+ border: 1px solid rgba(0,0,0,.05);
608
+ @include border-radius(4px);
609
+ @include box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
610
+ }
611
+
612
+ // MODALS
613
+ // ------
614
+ .modal-backdrop {
615
+ background-color: rgba(0,0,0,.5);
616
+ position: fixed;
617
+ top: 0;
618
+ left: 0;
619
+ right: 0;
620
+ bottom: 0;
621
+ z-index: 1000;
622
+ }
623
+ .modal {
624
+ position: fixed;
625
+ top: 50%;
626
+ left: 50%;
627
+ z-index: 2000;
628
+ width: 560px;
629
+ margin: -280px 0 0 -250px;
630
+ background-color: $white;
631
+ border: 1px solid #999;
632
+ border: 1px solid rgba(0,0,0,.3);
633
+ *border: 1px solid #999; /* IE6-7 */
634
+ @include border-radius(6px);
635
+ @include box-shadow(0 3px 7px rgba(0,0,0,0.3));
636
+ @include background-clip(padding-box);
637
+ }
638
+ .modal-header {
639
+ border-bottom: 1px solid #eee;
640
+ padding: 5px 20px;
641
+ .close {
642
+ position: absolute;
643
+ right: 10px;
644
+ top: 10px;
645
+ color: #999;
646
+ line-height:10px;
647
+ font-size: 18px;
648
+ }
649
+ }
650
+ .modal-body {
651
+ padding: 20px;
652
+ }
653
+ .modal-footer {
654
+ background-color: #f5f5f5;
655
+ padding: 14px 20px 15px;
656
+ border-top: 1px solid #ddd;
657
+ @include border-radius(0 0 6px 6px);
658
+ @include box-shadow(inset 0 1px 0 #fff);
659
+ @include clearfix();
660
+ margin-bottom: 0;
661
+ .btn {
662
+ float: right;
663
+ margin-left: 10px;
664
+ }
665
+ }
666
+
667
+ // POPOVER ARROWS
668
+ // --------------
669
+ @mixin above-arrow($arrowWidth: 5px) {
670
+ bottom: 0;
671
+ left: 50%;
672
+ margin-left: -$arrowWidth;
673
+ border-left: $arrowWidth solid transparent;
674
+ border-right: $arrowWidth solid transparent;
675
+ border-top: $arrowWidth solid #000;
676
+ }
677
+ @mixin left-arrow($arrowWidth: 5px) {
678
+ top: 50%;
679
+ right: 0;
680
+ margin-top: -$arrowWidth;
681
+ border-top: $arrowWidth solid transparent;
682
+ border-bottom: $arrowWidth solid transparent;
683
+ border-left: $arrowWidth solid #000;
684
+ }
685
+ @mixin below-arrow($arrowWidth: 5px) {
686
+ top: 0;
687
+ left: 50%;
688
+ margin-left: -$arrowWidth;
689
+ border-left: $arrowWidth solid transparent;
690
+ border-right: $arrowWidth solid transparent;
691
+ border-bottom: $arrowWidth solid #000;
692
+ }
693
+ @mixin right-arrow($arrowWidth: 5px) {
694
+ top: 50%;
695
+ left: 0;
696
+ margin-top: -$arrowWidth;
697
+ border-top: $arrowWidth solid transparent;
698
+ border-bottom: $arrowWidth solid transparent;
699
+ border-right: $arrowWidth solid #000;
700
+ }
701
+
702
+ // TWIPSY
703
+ // ------
704
+ .twipsy {
705
+ display: block;
706
+ position: absolute;
707
+ visibility: visible;
708
+ padding: 5px;
709
+ font-size: 11px;
710
+ z-index: 1000;
711
+ @include opacity(80);
712
+ &.above .twipsy-arrow { @include above-arrow(); }
713
+ &.left .twipsy-arrow { @include left-arrow(); }
714
+ &.below .twipsy-arrow { @include below-arrow(); }
715
+ &.right .twipsy-arrow { @include right-arrow(); }
716
+ }
717
+ .twipsy-inner {
718
+ padding: 3px 8px;
719
+ background-color: #000;
720
+ color: white;
721
+ text-align: center;
722
+ max-width: 200px;
723
+ text-decoration: none;
724
+ @include border-radius(4px);
725
+ }
726
+ .twipsy-arrow {
727
+ position: absolute;
728
+ width: 0;
729
+ height: 0;
730
+ }
731
+
732
+ // POPOVERS
733
+ // --------
734
+ .popover {
735
+ position: absolute;
736
+ top: 0;
737
+ left: 0;
738
+ z-index: 1000;
739
+ padding: 5px;
740
+ display: none;
741
+ &.above .arrow { @include above-arrow(); }
742
+ &.right .arrow { @include right-arrow(); }
743
+ &.below .arrow { @include below-arrow(); }
744
+ &.left .arrow { @include left-arrow(); }
745
+ .arrow {
746
+ position: absolute;
747
+ width: 0;
748
+ height: 0;
749
+ }
750
+ .inner {
751
+ background: #333;
752
+ background: rgba(0,0,0,.8);
753
+ padding: 3px;
754
+ overflow: hidden;
755
+ width: 280px;
756
+ @include border-radius(6px);
757
+ @include box-shadow(0 3px 7px rgba(0,0,0,0.3));
758
+ }
759
+ .title {
760
+ background-color: #f5f5f5;
761
+ padding: 9px 15px;
762
+ line-height: 1;
763
+ @include border-radius(3px 3px 0 0);
764
+ border-bottom:1px solid #eee;
765
+ }
766
+ .content {
767
+ background-color: $white;
768
+ padding: 14px;
769
+ @include border-radius(0 0 3px 3px);
770
+ @include background-clip(padding-box);
771
+ p, ul, ol {
772
+ margin-bottom: 0;
773
+ }
774
+ }
775
+ }
776
+