cardinal-rails 3.1.0.00

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +7 -0
  2. data/License.txt +21 -0
  3. data/README.md +39 -0
  4. data/lib/cardinal/rails.rb +8 -0
  5. data/lib/cardinal/rails/version.rb +5 -0
  6. data/vendor/assets/stylesheets/cardinal.less +83 -0
  7. data/vendor/assets/stylesheets/core/base/anchors.less +18 -0
  8. data/vendor/assets/stylesheets/core/base/blockquotes.less +45 -0
  9. data/vendor/assets/stylesheets/core/base/code.less +68 -0
  10. data/vendor/assets/stylesheets/core/base/embedded-content.less +89 -0
  11. data/vendor/assets/stylesheets/core/base/form-elements.less +130 -0
  12. data/vendor/assets/stylesheets/core/base/headings.less +50 -0
  13. data/vendor/assets/stylesheets/core/base/horizontal-rules.less +10 -0
  14. data/vendor/assets/stylesheets/core/base/lists.less +57 -0
  15. data/vendor/assets/stylesheets/core/base/print.less +69 -0
  16. data/vendor/assets/stylesheets/core/base/root.less +90 -0
  17. data/vendor/assets/stylesheets/core/base/selections.less +30 -0
  18. data/vendor/assets/stylesheets/core/base/tables.less +18 -0
  19. data/vendor/assets/stylesheets/core/base/text-elements.less +83 -0
  20. data/vendor/assets/stylesheets/core/debug.less +154 -0
  21. data/vendor/assets/stylesheets/core/mixins/antialiasing.less +8 -0
  22. data/vendor/assets/stylesheets/core/mixins/clearing.less +27 -0
  23. data/vendor/assets/stylesheets/core/mixins/font-face.less +33 -0
  24. data/vendor/assets/stylesheets/core/mixins/media-queries.less +154 -0
  25. data/vendor/assets/stylesheets/core/mixins/momentum-scrolling.less +8 -0
  26. data/vendor/assets/stylesheets/core/mixins/text-truncate.less +9 -0
  27. data/vendor/assets/stylesheets/core/mixins/to-rem.less +76 -0
  28. data/vendor/assets/stylesheets/core/mixins/vertically-centered.less +9 -0
  29. data/vendor/assets/stylesheets/core/normalize.less +427 -0
  30. data/vendor/assets/stylesheets/core/reset.less +140 -0
  31. data/vendor/assets/stylesheets/core/variables.less +436 -0
  32. data/vendor/assets/stylesheets/layout/boxes.less +53 -0
  33. data/vendor/assets/stylesheets/layout/grids.less +614 -0
  34. data/vendor/assets/stylesheets/layout/wrappers.less +30 -0
  35. data/vendor/assets/stylesheets/objects/buttons.less +132 -0
  36. data/vendor/assets/stylesheets/objects/forms.less +61 -0
  37. data/vendor/assets/stylesheets/objects/lists.less +45 -0
  38. data/vendor/assets/stylesheets/objects/tables.less +116 -0
  39. data/vendor/assets/stylesheets/utilities/display.less +355 -0
  40. data/vendor/assets/stylesheets/utilities/floats.less +137 -0
  41. data/vendor/assets/stylesheets/utilities/font-sizes.less +269 -0
  42. data/vendor/assets/stylesheets/utilities/margins.less +1322 -0
  43. data/vendor/assets/stylesheets/utilities/paddings.less +1322 -0
  44. data/vendor/assets/stylesheets/utilities/positions.less +125 -0
  45. data/vendor/assets/stylesheets/utilities/text-alignment.less +127 -0
  46. data/vendor/assets/stylesheets/utilities/vertical-alignment.less +98 -0
  47. data/vendor/assets/stylesheets/utilities/visually-hidden.less +43 -0
  48. data/vendor/assets/stylesheets/utilities/widths.less +1455 -0
  49. data/vendor/assets/stylesheets/utilities/z-index.less +292 -0
  50. metadata +141 -0
@@ -0,0 +1,30 @@
1
+ /* ========================================================================== *\
2
+ Layout -> Wrappers ($layout-wrappers)
3
+ \* ========================================================================== */
4
+
5
+ .wrapper {
6
+ width: @wrapper-width;
7
+ .to-rem(max-width, @wrapper-max-width);
8
+ margin: 0 auto;
9
+
10
+ @media print {
11
+ width: auto;
12
+ }
13
+ }
14
+
15
+ /**
16
+ * Force `.wrapper` to sit flush with its parent.
17
+ */
18
+
19
+ .wrapper-flush {
20
+ width: 100%;
21
+ }
22
+
23
+ /**
24
+ * Remove any width constraints from the `.wrapper`.
25
+ */
26
+
27
+ .wrapper-full-bleed {
28
+ width: auto;
29
+ max-width: none;
30
+ }
@@ -0,0 +1,132 @@
1
+ /* ========================================================================== *\
2
+ Objects -> Buttons ($objects-buttons)
3
+ \* ========================================================================== */
4
+
5
+ .btn {
6
+ font-family: @btn-font-family;
7
+ font-weight: @btn-font-weight;
8
+ line-height: @btn-line-height;
9
+ display: inline-block;
10
+ margin: 0;
11
+ .to-rem(padding, @btn-padding);
12
+ cursor: pointer;
13
+ text-align: center;
14
+ vertical-align: middle;
15
+ white-space: nowrap;
16
+ text-decoration: none;
17
+ color: @btn-text-color;
18
+ border: 0 none;
19
+ background-color: @btn-background-color;
20
+
21
+ .antialiasing();
22
+
23
+ /**
24
+ * States
25
+ */
26
+
27
+ &:hover {
28
+ background-color: lighten(@btn-background-color, 2%);
29
+ }
30
+
31
+ &:active,
32
+ &.is-active {
33
+ background-color: darken(@btn-background-color, 2%);
34
+ .to-rem(box-shadow, 0 0 @spacing-third, hsla(0, 0%, 0%, 0.25) inset);
35
+ }
36
+
37
+ &:active:focus {
38
+ outline: 0 none;
39
+ }
40
+
41
+ /**
42
+ * Provide a consistent button focus style across browsers.
43
+ */
44
+
45
+ &:focus {
46
+ outline: @btn-focus-outline-width @btn-focus-outline-style @btn-focus-outline-color;
47
+ }
48
+
49
+ &:disabled,
50
+ &[disabled],
51
+ &.is-disabled {
52
+ cursor: not-allowed;
53
+ pointer-events: none;
54
+ opacity: 0.50;
55
+ box-shadow: none;
56
+ text-shadow: none;
57
+ }
58
+ }
59
+
60
+ /**
61
+ * Shapes
62
+ */
63
+
64
+ .btn-round,
65
+ input[type="button"].btn-round,
66
+ input[type="submit"].btn-round {
67
+ .to-rem(border-radius, @btn-border-radius);
68
+ }
69
+
70
+ /**
71
+ * Sizes
72
+ */
73
+
74
+ .btn-xs {
75
+ .to-rem(font-size, @btn-xs-font-size);
76
+ .to-rem(padding, @btn-xs-padding);
77
+ }
78
+
79
+ .btn-sm {
80
+ .to-rem(font-size, @btn-sm-font-size);
81
+ .to-rem(padding, @btn-sm-padding);
82
+ }
83
+
84
+ .btn-block {
85
+ display: block;
86
+ }
87
+
88
+ .screen-lg-min({
89
+ .btn-lg,
90
+ .btn-block {
91
+ .to-rem(font-size, @btn-lg-font-size);
92
+ .to-rem(padding, @btn-lg-padding);
93
+ }
94
+ });
95
+
96
+ /**
97
+ * Colors
98
+ */
99
+
100
+ .btn-primary {
101
+ color: @btn-primary-text-color;
102
+ background-color: @btn-primary-bg-color;
103
+ }
104
+
105
+ .btn-primary:hover {
106
+ background-color: lighten(@btn-primary-bg-color, 4%);
107
+ }
108
+
109
+ .btn-primary:active,
110
+ .btn-primary.is-active {
111
+ background-color: darken(@btn-primary-bg-color, 4%);
112
+ }
113
+
114
+ /**
115
+ * Groups
116
+ */
117
+
118
+ .btn-group .btn {
119
+ .to-rem(margin, @btn-group-margin);
120
+
121
+ &.btn-lg {
122
+ .to-rem(margin, @btn-lg-group-margin);
123
+ }
124
+
125
+ &:first-child {
126
+ margin-left: 0;
127
+ }
128
+
129
+ &:last-child {
130
+ margin-right: 0;
131
+ }
132
+ }
@@ -0,0 +1,61 @@
1
+ /* ========================================================================== *\
2
+ Objects -> Forms ($objects-forms)
3
+ \* ========================================================================== */
4
+
5
+ .form-label {
6
+ display: inline-block;
7
+ }
8
+
9
+ .form-label + .form-input,
10
+ .form-label + .form-select,
11
+ .form-label + .form-textarea {
12
+ .to-rem(margin-top, @form-label-margin);
13
+ }
14
+
15
+ /**
16
+ * Give certain <input>, <select>, and <textarea> elements some default
17
+ * styles
18
+ */
19
+
20
+ .form-input[type="date"],
21
+ .form-input[type="datetime"],
22
+ .form-input[type="datetime-local"],
23
+ .form-input[type="email"],
24
+ .form-input[type="month"],
25
+ .form-input[type="number"],
26
+ .form-input[type="password"],
27
+ .form-input[type="search"],
28
+ .form-input[type="tel"],
29
+ .form-input[type="text"],
30
+ .form-input[type="time"],
31
+ .form-input[type="url"],
32
+ .form-input[type="week"],
33
+ .form-select,
34
+ .form-textarea {
35
+ line-height: @form-input-line-height;
36
+ display: block;
37
+ width: 100%;
38
+ .to-rem(height, @form-input-height);
39
+ .to-rem(padding, @form-input-padding);
40
+ color: @form-input-text-color;
41
+ .to-rem(border, @form-input-border-width, @form-input-border-style @form-input-border-color);
42
+ outline: 0 none;
43
+ &:focus {
44
+ border-color: @form-input-focus-border-color;
45
+ outline: 0 none;
46
+ }
47
+ }
48
+
49
+ /**
50
+ * 1. Increase padding to correct line-height in Firefox
51
+ * 2. Give <select> menus a solid background color
52
+ */
53
+
54
+ .form-select {
55
+ .to-rem(padding, @form-select-padding); /* 1 */
56
+ background: @form-select-background-color; /* 2 */
57
+ }
58
+
59
+ .form-input-round {
60
+ .to-rem(border-radius, @form-input-border-radius);
61
+ }
@@ -0,0 +1,45 @@
1
+ /* ========================================================================== *\
2
+ Objects -> Lists ($objects-lists)
3
+ \* ========================================================================== */
4
+
5
+ /**
6
+ * Bare Lists
7
+ *
8
+ * Use to remove default list styles from <ol> and <ul> elements.
9
+ */
10
+
11
+ .list-bare {
12
+ list-style: none;
13
+
14
+ li {
15
+ margin-left: 0;
16
+ }
17
+ }
18
+
19
+ /**
20
+ * Inline Lists
21
+ *
22
+ * Create inline-style list items with <ol> and <ul> elements.
23
+ */
24
+
25
+ .list-inline {
26
+ list-style: none;
27
+ padding: 0;
28
+
29
+ li {
30
+ display: inline;
31
+ margin-left: 0;
32
+ }
33
+ }
34
+
35
+ /**
36
+ * Delimited lists
37
+ */
38
+
39
+ .list-inline-delimited {
40
+ > li + li {
41
+ &:before {
42
+ content: @list-inline-delimiter-content;
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,116 @@
1
+ /* ========================================================================== *\
2
+ Objects -> Tables ($objects-tables)
3
+ \* ========================================================================== */
4
+
5
+ /**
6
+ * Wrap a <table> with a `.table-container` element to add horizontal scrolling
7
+ * if the <table> contents overflow its grandparent.
8
+ */
9
+
10
+ .table-container {
11
+ .momentum-scrolling();
12
+ }
13
+
14
+ /* Default, borderless */
15
+ .table {
16
+ width: 100%;
17
+ max-width: 100%;
18
+
19
+ caption {
20
+ font-weight: @table-caption-font-weight;
21
+ font-style: @table-caption-font-style;
22
+ .to-rem(padding-bottom, @table-caption-padding-bottom);
23
+ //padding-bottom: (@base-spacing-unit * 0.375);
24
+ }
25
+
26
+ th,
27
+ tfoot td {
28
+ font-weight: 700;
29
+ text-align: left;
30
+ color: @table-header-footer-text-color;
31
+ }
32
+
33
+ thead th,
34
+ tfoot td {
35
+ background-color: @table-header-footer-bg-color;
36
+ }
37
+
38
+ th,
39
+ td {
40
+ .to-rem(padding, @table-cell-padding);
41
+ //padding: (@base-spacing-unit * 0.625);
42
+ vertical-align: top;
43
+ }
44
+ }
45
+
46
+ /**
47
+ * Give the <table> element an outer border.
48
+ */
49
+
50
+ .table-border {
51
+ .to-rem(border, @table-border-width, @table-border-style @table-border-color);
52
+ }
53
+
54
+ /**
55
+ * Give the <table> element inner cell borders.
56
+ */
57
+
58
+ .table-border-cells th,
59
+ .table-border-cells td {
60
+ .to-rem(border-top, @table-border-width, @table-border-style @table-border-color);
61
+ .to-rem(border-left, @table-border-width, @table-border-style @table-border-color);
62
+ }
63
+
64
+ /**
65
+ * Give Give the <table> inner row borders.
66
+ */
67
+
68
+ .table-border-rows th,
69
+ .table-border-rows td {
70
+ .to-rem(border-top, @table-border-width, @table-border-style @table-border-color);
71
+ }
72
+
73
+ /**
74
+ * Remove border on 1st-row cells to avoid a double border.
75
+ */
76
+
77
+ .table-border.table-border-cells thead:first-child tr:first-child th,
78
+ .table-border.table-border-cells thead:first-child tr:first-child td,
79
+ .table-border.table-border-rows thead:first-child tr:first-child th,
80
+ .table-border.table-border-rows thead:first-child tr:first-child td {
81
+ border-top: 0;
82
+ }
83
+
84
+ /**
85
+ * Remove border on 1st cells in every row to create a grid effect.
86
+ */
87
+
88
+ .table-border-cells tr th:first-child,
89
+ .table-border-cells tr td:first-child {
90
+ border-left: 0;
91
+ }
92
+
93
+ /**
94
+ * Remove border on 1st-row cells to create a grid effect.
95
+ */
96
+
97
+ .table-border-cells tr:first-child th,
98
+ .table-border-cells thead:first-child tr:first-child th {
99
+ border-top: 0;
100
+ }
101
+
102
+ /**
103
+ * Add a bottom border to the last row in the table.
104
+ */
105
+
106
+ .table-border-rows tr:last-child td {
107
+ .to-rem(border-bottom, @table-border-width, @table-border-style @table-border-color);
108
+ }
109
+
110
+ /**
111
+ * Alternate `background-color` for all table rows.
112
+ */
113
+
114
+ .table-striped tbody > tr:nth-child(odd) > td {
115
+ background-color: @table-stripe-background-color;
116
+ }
@@ -0,0 +1,355 @@
1
+ /* ========================================================================== *\
2
+ Utilities -> Display ($utilities-display)
3
+ \* ========================================================================== */
4
+
5
+ //
6
+ // d = display
7
+ // n = none
8
+ // i = inline
9
+ // b = block
10
+ // ib = inline-block
11
+ // it = inline-table
12
+ // t = table
13
+ // tr = table-row
14
+ // trg = table-row-group
15
+ // tc = table-cell
16
+ // col = table-column
17
+ // colg = table-column-group
18
+ //
19
+
20
+ .dn {
21
+ display: none !important;
22
+ }
23
+
24
+ .di {
25
+ display: inline !important;
26
+ }
27
+
28
+ .db {
29
+ display: block !important;
30
+ }
31
+
32
+ /**
33
+ * 1. Fix Firefox bug where an <img> styled with `max-width: 100%` inside a
34
+ * parent styled `inline-block` displays at its default size, not 100% of the
35
+ * parent container.
36
+ */
37
+
38
+ .dib {
39
+ display: inline-block !important;
40
+ max-width: 100% !important; /* 1 */
41
+ }
42
+
43
+ .dit {
44
+ display: inline-table !important;
45
+ }
46
+
47
+ .dt {
48
+ display: table !important;
49
+ table-layout: fixed !important;
50
+ width: 100% !important;
51
+ }
52
+
53
+ .dtr {
54
+ display: table-row !important;
55
+ }
56
+
57
+ .dtrg {
58
+ display: table-row-group !important;
59
+ }
60
+
61
+ .dtc {
62
+ display: table-cell !important;
63
+ }
64
+
65
+ .dtcol {
66
+ display: table-column !important;
67
+ }
68
+
69
+ .dtcolg {
70
+ display: table-column-group !important;
71
+ }
72
+
73
+ .screens({
74
+ .xs-dn {
75
+ display: none !important;
76
+ }
77
+
78
+ .xs-di {
79
+ display: inline !important;
80
+ }
81
+
82
+ .xs-db {
83
+ display: block !important;
84
+ }
85
+
86
+ .xs-dib {
87
+ display: inline-block !important;
88
+ max-width: 100% !important;
89
+ }
90
+
91
+ .xs-dit {
92
+ display: inline-table !important;
93
+ }
94
+
95
+ .xs-dt {
96
+ display: table !important;
97
+ table-layout: fixed !important;
98
+ width: 100% !important;
99
+ }
100
+
101
+ .xs-dtr {
102
+ display: table-row !important;
103
+ }
104
+
105
+ .xs-dtrg {
106
+ display: table-row-group !important;
107
+ }
108
+
109
+ .xs-dtc {
110
+ display: table-cell !important;
111
+ }
112
+
113
+ .xs-dtcol {
114
+ display: table-column !important;
115
+ }
116
+
117
+ .xs-dtcolg {
118
+ display: table-column-group !important;
119
+ }
120
+ },{
121
+ .sm-dn {
122
+ display: none !important;
123
+ }
124
+
125
+ .sm-di {
126
+ display: inline !important;
127
+ }
128
+
129
+ .sm-db {
130
+ display: block !important;
131
+ }
132
+
133
+ .sm-dib {
134
+ display: inline-block !important;
135
+ max-width: 100% !important;
136
+ }
137
+
138
+ .sm-dit {
139
+ display: inline-table !important;
140
+ }
141
+
142
+ .sm-dt {
143
+ display: table !important;
144
+ table-layout: fixed !important;
145
+ width: 100% !important;
146
+ }
147
+
148
+ .sm-dtr {
149
+ display: table-row !important;
150
+ }
151
+
152
+ .sm-dtrg {
153
+ display: table-row-group !important;
154
+ }
155
+
156
+ .sm-dtc {
157
+ display: table-cell !important;
158
+ }
159
+
160
+ .sm-dtcol {
161
+ display: table-column !important;
162
+ }
163
+
164
+ .sm-dtcolg {
165
+ display: table-column-group !important;
166
+ }
167
+ },{
168
+ .md-dn {
169
+ display: none !important;
170
+ }
171
+
172
+ .md-di {
173
+ display: inline !important;
174
+ }
175
+
176
+ .md-db {
177
+ display: block !important;
178
+ }
179
+
180
+ .md-dib {
181
+ display: inline-block !important;
182
+ max-width: 100% !important;
183
+ }
184
+
185
+ .md-dit {
186
+ display: inline-table !important;
187
+ }
188
+
189
+ .md-dt {
190
+ display: table !important;
191
+ table-layout: fixed !important;
192
+ width: 100% !important;
193
+ }
194
+
195
+ .md-dtr {
196
+ display: table-row !important;
197
+ }
198
+
199
+ .md-dtrg {
200
+ display: table-row-group !important;
201
+ }
202
+
203
+ .md-dtc {
204
+ display: table-cell !important;
205
+ }
206
+
207
+ .md-dtcol {
208
+ display: table-column !important;
209
+ }
210
+
211
+ .md-dtcolg {
212
+ display: table-column-group !important;
213
+ }
214
+ },{
215
+ .lg-dn {
216
+ display: none !important;
217
+ }
218
+
219
+ .lg-di {
220
+ display: inline !important;
221
+ }
222
+
223
+ .lg-db {
224
+ display: block !important;
225
+ }
226
+
227
+ .lg-dib {
228
+ display: inline-block !important;
229
+ max-width: 100% !important;
230
+ }
231
+
232
+ .lg-dit {
233
+ display: inline-table !important;
234
+ }
235
+
236
+ .lg-dt {
237
+ display: table !important;
238
+ table-layout: fixed !important;
239
+ width: 100% !important;
240
+ }
241
+
242
+ .lg-dtr {
243
+ display: table-row !important;
244
+ }
245
+
246
+ .lg-dtrg {
247
+ display: table-row-group !important;
248
+ }
249
+
250
+ .lg-dtc {
251
+ display: table-cell !important;
252
+ }
253
+
254
+ .lg-dtcol {
255
+ display: table-column !important;
256
+ }
257
+
258
+ .lg-dtcolg {
259
+ display: table-column-group !important;
260
+ }
261
+ },{
262
+ .xl-dn {
263
+ display: none !important;
264
+ }
265
+
266
+ .xl-di {
267
+ display: inline !important;
268
+ }
269
+
270
+ .xl-db {
271
+ display: block !important;
272
+ }
273
+
274
+ .xl-dib {
275
+ display: inline-block !important;
276
+ max-width: 100% !important;
277
+ }
278
+
279
+ .xl-dit {
280
+ display: inline-table !important;
281
+ }
282
+
283
+ .xl-dt {
284
+ display: table !important;
285
+ table-layout: fixed !important;
286
+ width: 100% !important;
287
+ }
288
+
289
+ .xl-dtr {
290
+ display: table-row !important;
291
+ }
292
+
293
+ .xl-dtrg {
294
+ display: table-row-group !important;
295
+ }
296
+
297
+ .xl-dtc {
298
+ display: table-cell !important;
299
+ }
300
+
301
+ .xl-dtcol {
302
+ display: table-column !important;
303
+ }
304
+
305
+ .xl-dtcolg {
306
+ display: table-column-group !important;
307
+ }
308
+ },{
309
+ .xxl-dn {
310
+ display: none !important;
311
+ }
312
+
313
+ .xxl-di {
314
+ display: inline !important;
315
+ }
316
+
317
+ .xxl-db {
318
+ display: block !important;
319
+ }
320
+
321
+ .xxl-dib {
322
+ display: inline-block !important;
323
+ max-width: 100% !important;
324
+ }
325
+
326
+ .xxl-dit {
327
+ display: inline-table !important;
328
+ }
329
+
330
+ .xxl-dt {
331
+ display: table !important;
332
+ table-layout: fixed !important;
333
+ width: 100% !important;
334
+ }
335
+
336
+ .xxl-dtr {
337
+ display: table-row !important;
338
+ }
339
+
340
+ .xxl-dtrg {
341
+ display: table-row-group !important;
342
+ }
343
+
344
+ .xxl-dtc {
345
+ display: table-cell !important;
346
+ }
347
+
348
+ .xxl-dtcol {
349
+ display: table-column !important;
350
+ }
351
+
352
+ .xxl-dtcolg {
353
+ display: table-column-group !important;
354
+ }
355
+ });