flat-ui-sass 2.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +18 -0
  3. data/.gitmodules +3 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +256 -0
  7. data/Rakefile +14 -0
  8. data/app/helpers/flat_ui/rails/icon_helper.rb +60 -0
  9. data/bin/fui_convert +9 -0
  10. data/flat-ui-sass.gemspec +28 -0
  11. data/lib/flat-ui-sass.rb +98 -0
  12. data/lib/flat-ui-sass/cli.rb +56 -0
  13. data/lib/flat-ui-sass/engine.rb +13 -0
  14. data/lib/flat-ui-sass/sass_functions.rb +56 -0
  15. data/lib/flat-ui-sass/version.rb +4 -0
  16. data/lib/tasks/converter.rb +99 -0
  17. data/lib/tasks/converter/filesystem.rb +16 -0
  18. data/lib/tasks/converter/flat_ui_fonts_conversion.rb +19 -0
  19. data/lib/tasks/converter/flat_ui_images_conversion.rb +19 -0
  20. data/lib/tasks/converter/flat_ui_js_conversion.rb +28 -0
  21. data/lib/tasks/converter/flat_ui_less_conversion.rb +328 -0
  22. data/lib/tasks/converter/logger.rb +61 -0
  23. data/lib/tasks/flat-ui-sass.rake +8 -0
  24. data/templates/project/_variables.scss.erb +5 -0
  25. data/templates/project/manifest.rb +57 -0
  26. data/templates/project/styles.scss +4 -0
  27. data/vendor/assets/fonts/flat-ui/flat-ui-icons-regular.eot +0 -0
  28. data/vendor/assets/fonts/flat-ui/flat-ui-icons-regular.svg +140 -0
  29. data/vendor/assets/fonts/flat-ui/flat-ui-icons-regular.ttf +0 -0
  30. data/vendor/assets/fonts/flat-ui/flat-ui-icons-regular.woff +0 -0
  31. data/vendor/assets/images/flat-ui/icons/png/Book.png +0 -0
  32. data/vendor/assets/images/flat-ui/icons/png/Calendar.png +0 -0
  33. data/vendor/assets/images/flat-ui/icons/png/Chat.png +0 -0
  34. data/vendor/assets/images/flat-ui/icons/png/Clipboard.png +0 -0
  35. data/vendor/assets/images/flat-ui/icons/png/Compas.png +0 -0
  36. data/vendor/assets/images/flat-ui/icons/png/Gift-Box.png +0 -0
  37. data/vendor/assets/images/flat-ui/icons/png/Infinity-Loop.png +0 -0
  38. data/vendor/assets/images/flat-ui/icons/png/Mail.png +0 -0
  39. data/vendor/assets/images/flat-ui/icons/png/Map.png +0 -0
  40. data/vendor/assets/images/flat-ui/icons/png/Pensils.png +0 -0
  41. data/vendor/assets/images/flat-ui/icons/png/Pocket.png +0 -0
  42. data/vendor/assets/images/flat-ui/icons/png/Retina-Ready.png +0 -0
  43. data/vendor/assets/images/flat-ui/icons/png/Toilet-Paper.png +0 -0
  44. data/vendor/assets/images/flat-ui/icons/png/Watches.png +0 -0
  45. data/vendor/assets/images/flat-ui/icons/svg/book.svg +1 -0
  46. data/vendor/assets/images/flat-ui/icons/svg/calendar.svg +1 -0
  47. data/vendor/assets/images/flat-ui/icons/svg/chat.svg +1 -0
  48. data/vendor/assets/images/flat-ui/icons/svg/clipboard.svg +1 -0
  49. data/vendor/assets/images/flat-ui/icons/svg/clocks.svg +9 -0
  50. data/vendor/assets/images/flat-ui/icons/svg/compas.svg +1 -0
  51. data/vendor/assets/images/flat-ui/icons/svg/gift-box.svg +1 -0
  52. data/vendor/assets/images/flat-ui/icons/svg/loop.svg +5 -0
  53. data/vendor/assets/images/flat-ui/icons/svg/mail.svg +1 -0
  54. data/vendor/assets/images/flat-ui/icons/svg/map.svg +1 -0
  55. data/vendor/assets/images/flat-ui/icons/svg/paper-bag.svg +1 -0
  56. data/vendor/assets/images/flat-ui/icons/svg/pencils.svg +1 -0
  57. data/vendor/assets/images/flat-ui/icons/svg/retina.svg +1 -0
  58. data/vendor/assets/images/flat-ui/icons/svg/toilet-paper.svg +1 -0
  59. data/vendor/assets/images/flat-ui/login/icon.png +0 -0
  60. data/vendor/assets/images/flat-ui/login/imac-2x.png +0 -0
  61. data/vendor/assets/images/flat-ui/login/imac.png +0 -0
  62. data/vendor/assets/images/flat-ui/switch/mask-square.png +0 -0
  63. data/vendor/assets/images/flat-ui/switch/mask.png +0 -0
  64. data/vendor/assets/images/flat-ui/tile/ribbon-2x.png +0 -0
  65. data/vendor/assets/images/flat-ui/tile/ribbon.png +0 -0
  66. data/vendor/assets/images/flat-ui/todo/done-2x.png +0 -0
  67. data/vendor/assets/images/flat-ui/todo/done.png +0 -0
  68. data/vendor/assets/images/flat-ui/todo/search-2x.png +0 -0
  69. data/vendor/assets/images/flat-ui/todo/search.png +0 -0
  70. data/vendor/assets/images/flat-ui/todo/todo-2x.png +0 -0
  71. data/vendor/assets/images/flat-ui/todo/todo.png +0 -0
  72. data/vendor/assets/images/flat-ui/video/fullscreen-2x.png +0 -0
  73. data/vendor/assets/images/flat-ui/video/fullscreen.png +0 -0
  74. data/vendor/assets/images/flat-ui/video/pause-2x.png +0 -0
  75. data/vendor/assets/images/flat-ui/video/pause.png +0 -0
  76. data/vendor/assets/images/flat-ui/video/play-2x.png +0 -0
  77. data/vendor/assets/images/flat-ui/video/play.png +0 -0
  78. data/vendor/assets/images/flat-ui/video/poster.jpg +0 -0
  79. data/vendor/assets/images/flat-ui/video/volume-full-2x.png +0 -0
  80. data/vendor/assets/images/flat-ui/video/volume-full.png +0 -0
  81. data/vendor/assets/images/flat-ui/video/volume-off-2x.png +0 -0
  82. data/vendor/assets/images/flat-ui/video/volume-off.png +0 -0
  83. data/vendor/assets/javascripts/flat-ui.js +2 -0
  84. data/vendor/assets/javascripts/flat-ui/flatui-checkbox.js +112 -0
  85. data/vendor/assets/javascripts/flat-ui/flatui-radio.js +139 -0
  86. data/vendor/assets/stylesheets/flat-ui.scss +1 -0
  87. data/vendor/assets/stylesheets/flat-ui/_mixins.scss +878 -0
  88. data/vendor/assets/stylesheets/flat-ui/_spaces.scss +172 -0
  89. data/vendor/assets/stylesheets/flat-ui/_variables.scss +509 -0
  90. data/vendor/assets/stylesheets/flat-ui/flat-ui.scss +45 -0
  91. data/vendor/assets/stylesheets/flat-ui/modules/_button-groups.scss +110 -0
  92. data/vendor/assets/stylesheets/flat-ui/modules/_buttons.scss +151 -0
  93. data/vendor/assets/stylesheets/flat-ui/modules/_caret.scss +30 -0
  94. data/vendor/assets/stylesheets/flat-ui/modules/_checkbox-and-radio.scss +143 -0
  95. data/vendor/assets/stylesheets/flat-ui/modules/_code.scss +49 -0
  96. data/vendor/assets/stylesheets/flat-ui/modules/_dropdown.scss +223 -0
  97. data/vendor/assets/stylesheets/flat-ui/modules/_footer.scss +76 -0
  98. data/vendor/assets/stylesheets/flat-ui/modules/_forms.scss +188 -0
  99. data/vendor/assets/stylesheets/flat-ui/modules/_glyphicons.scss +135 -0
  100. data/vendor/assets/stylesheets/flat-ui/modules/_input-groups.scss +153 -0
  101. data/vendor/assets/stylesheets/flat-ui/modules/_input-icons.scss +72 -0
  102. data/vendor/assets/stylesheets/flat-ui/modules/_local-fonts.scss +69 -0
  103. data/vendor/assets/stylesheets/flat-ui/modules/_login.scss +111 -0
  104. data/vendor/assets/stylesheets/flat-ui/modules/_navbar.scss +876 -0
  105. data/vendor/assets/stylesheets/flat-ui/modules/_pager.scss +51 -0
  106. data/vendor/assets/stylesheets/flat-ui/modules/_pagination.scss +166 -0
  107. data/vendor/assets/stylesheets/flat-ui/modules/_palette.scss +71 -0
  108. data/vendor/assets/stylesheets/flat-ui/modules/_progress-bars.scss +34 -0
  109. data/vendor/assets/stylesheets/flat-ui/modules/_scaffolding.scss +64 -0
  110. data/vendor/assets/stylesheets/flat-ui/modules/_select.scss +145 -0
  111. data/vendor/assets/stylesheets/flat-ui/modules/_share.scss +44 -0
  112. data/vendor/assets/stylesheets/flat-ui/modules/_slider.scss +105 -0
  113. data/vendor/assets/stylesheets/flat-ui/modules/_switch.scss +150 -0
  114. data/vendor/assets/stylesheets/flat-ui/modules/_tagsinput.scss +121 -0
  115. data/vendor/assets/stylesheets/flat-ui/modules/_thumbnails.scss +38 -0
  116. data/vendor/assets/stylesheets/flat-ui/modules/_tile.scss +54 -0
  117. data/vendor/assets/stylesheets/flat-ui/modules/_todo.scss +110 -0
  118. data/vendor/assets/stylesheets/flat-ui/modules/_tooltip.scss +56 -0
  119. data/vendor/assets/stylesheets/flat-ui/modules/_type.scss +208 -0
  120. data/vendor/assets/stylesheets/flat-ui/modules/_typeahead.scss +41 -0
  121. data/vendor/assets/stylesheets/flat-ui/modules/_video.scss +458 -0
  122. metadata +251 -0
@@ -0,0 +1,876 @@
1
+ //
2
+ // Navbars
3
+ // --------------------------------------------------
4
+
5
+ // Wrapper and base class
6
+ //
7
+ // Provide a static navbar from which we expand to create full-width, fixed, and
8
+ // other navbar variations.
9
+
10
+ .navbar {
11
+ font-size: floor($component-font-size-base * 1.067); // ~16px
12
+ min-height: $navbar-height-base;
13
+ margin-bottom: $navbar-margin-bottom;
14
+ border: none;
15
+ border-radius: $navbar-border-radius;
16
+ }
17
+
18
+ // Navbar heading
19
+ //
20
+ // Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy
21
+ // styling of responsive aspects.
22
+
23
+ .navbar-header {
24
+ @media (min-width: $grid-float-breakpoint) {
25
+ float: left;
26
+ }
27
+ }
28
+
29
+ // Navbar collapse (body)
30
+ //
31
+ // Group your navbar content into this for easy collapsing and expanding across
32
+ // various device sizes. By default, this content is collapsed when <768px, but
33
+ // will expand past that for a horizontal display.
34
+ //
35
+ // To start (on mobile devices) the navbar links, forms, and buttons are stacked
36
+ // vertically and include a `max-height` to overflow in case you have too much
37
+ // content for the user's viewport.
38
+
39
+ .navbar-collapse {
40
+ box-shadow: none;
41
+ padding-right: 21px;
42
+ padding-left: 21px;
43
+
44
+ @media (min-width: $grid-float-breakpoint) {
45
+ // Account for first and last children spacing
46
+ .navbar-nav.navbar-left:first-child {
47
+ margin-left: -21px;
48
+
49
+ > li:first-child a {
50
+ @include border-left-radius($navbar-border-radius);
51
+ }
52
+ }
53
+ .navbar-nav.navbar-right:last-child {
54
+ margin-right: -21px;
55
+
56
+ .navbar > .container & {
57
+ margin-right: -36px;
58
+ }
59
+ > .dropdown:last-child > a {
60
+ border-radius: 0 $navbar-border-radius $navbar-border-radius 0;
61
+ }
62
+ }
63
+ .navbar-form.navbar-right:last-child {
64
+ margin-right: -17px;
65
+
66
+ .navbar-fixed-top &,
67
+ .navbar-fixed-bottom & {
68
+ margin-right: 0;
69
+ }
70
+ }
71
+ }
72
+ @media (max-width: $grid-float-breakpoint-max) {
73
+ .navbar-nav.navbar-right:last-child {
74
+ margin-bottom: 3px;
75
+ }
76
+ }
77
+ }
78
+
79
+ // Both navbar header and collapse
80
+ //
81
+ // When a container is present, change the behavior of the header and collapse.
82
+
83
+ .container,
84
+ .container-fluid {
85
+ > .navbar-header,
86
+ > .navbar-collapse {
87
+ margin-right: -21px;
88
+ margin-left: -21px;
89
+
90
+ @media (min-width: $grid-float-breakpoint) {
91
+ margin-right: 0;
92
+ margin-left: 0;
93
+ }
94
+ }
95
+ }
96
+
97
+ //
98
+ // Navbar alignment options
99
+ //
100
+ // Display the navbar across the entirety of the page or fixed it to the top or
101
+ // bottom of the page.
102
+
103
+ // Static top (unfixed, but 100% wide) navbar
104
+ .navbar-static-top {
105
+ z-index: $zindex-navbar;
106
+ border-width: 0;
107
+ border-radius: 0;
108
+ }
109
+
110
+ // Fix the top/bottom navbars when screen real estate supports it
111
+ .navbar-fixed-top,
112
+ .navbar-fixed-bottom {
113
+ z-index: $zindex-navbar-fixed;
114
+ border-radius: 0;
115
+ }
116
+ .navbar-fixed-top {
117
+ border-width: 0;
118
+ }
119
+ .navbar-fixed-bottom {
120
+ margin-bottom: 0; // override .navbar defaults
121
+ border-width: 0;
122
+ }
123
+
124
+ // Brand/project name
125
+
126
+ .navbar-brand {
127
+ font-size: floor($component-font-size-base * 1.6); // ~24px
128
+ line-height: 1.042; // ~25px
129
+ font-weight: 700;
130
+ padding: (($navbar-height-base - 25px) / 2) 21px;
131
+
132
+ > [class*="fui-"] {
133
+ font-size: floor($component-font-size-base * 1.267); // ~19px
134
+ line-height: 1.263; // ~24px
135
+ vertical-align: top;
136
+ }
137
+
138
+ @media (min-width: $grid-float-breakpoint) {
139
+ .navbar > .container &,
140
+ .navbar > .container-fluid & {
141
+ margin-left: -21px;
142
+ }
143
+ }
144
+ }
145
+
146
+ // Navbar toggle
147
+ //
148
+ // Custom button for toggling the `.navbar-collapse`, powered by the collapse
149
+ // JavaScript plugin.
150
+
151
+ .navbar-toggle {
152
+ border: none;
153
+ color: $brand-primary;
154
+ margin: 0 0 0 21px;
155
+ padding: 0 21px;
156
+ height: $navbar-height-base;
157
+ line-height: $navbar-height-base;
158
+
159
+ &:before {
160
+ color: $link-color;
161
+ content: "\e00c";
162
+ font-family: "Flat-UI-Icons";
163
+ font-size: floor($component-font-size-base * 1.467); // ~22px
164
+ font-style: normal;
165
+ font-weight: normal;
166
+ -webkit-font-smoothing: antialiased;
167
+ @include transition(color .25s linear);
168
+ }
169
+ &:hover,
170
+ &:focus {
171
+ outline: none;
172
+
173
+ &:before {
174
+ color: $link-hover-color;
175
+ }
176
+ }
177
+ .icon-bar {
178
+ display: none;
179
+ }
180
+
181
+ @media (min-width: $grid-float-breakpoint) {
182
+ display: none;
183
+ }
184
+ }
185
+
186
+ // Navbar nav links
187
+ //
188
+ // Builds on top of the `.nav` components with it's own modifier class to make
189
+ // the nav the full height of the horizontal nav (above 768px).
190
+
191
+ .navbar-nav {
192
+ margin: 0;
193
+
194
+ > li > a {
195
+ font-size: floor($component-font-size-base * 1.067); // ~16px
196
+ padding: (($navbar-height-base - 23px) / 2) 21px;
197
+ line-height: 23px;
198
+ font-weight: 700;
199
+ }
200
+
201
+ .dropdown-toggle .caret {
202
+ border-top-color: $link-color;
203
+ border-bottom-color: $link-color;
204
+ border-width: 8px 6px 0;
205
+ margin-left: 12px;
206
+ }
207
+ > li > a:hover,
208
+ > li > a:focus,
209
+ .open > a:focus,
210
+ .open > a:hover {
211
+ background-color: transparent;
212
+
213
+ .caret {
214
+ border-top-color: $link-hover-color;
215
+ border-bottom-color: $link-hover-color;
216
+ }
217
+ }
218
+
219
+ [class^="fui-"] {
220
+ line-height: 20px;
221
+ position: relative;
222
+ top: 1px;
223
+ }
224
+ .visible-sm,
225
+ .visible-xs {
226
+ > [class^="fui-"] {
227
+ margin-left: 12px;
228
+ }
229
+ }
230
+
231
+ @media (max-width: $grid-float-breakpoint-max) {
232
+ margin: 0 -21px;
233
+
234
+ // Dropdowns get custom display when collapsed
235
+ .open .dropdown-menu {
236
+ > li > a,
237
+ .dropdown-header {
238
+ padding: 7px 15px 7px 31px !important;
239
+ }
240
+ > li > a {
241
+ line-height: 23px;
242
+ }
243
+ }
244
+ > li > a {
245
+ padding-top: 7px;
246
+ padding-bottom: 7px;
247
+ }
248
+ }
249
+ }
250
+
251
+ // Navbar form
252
+ //
253
+ // Extension of the `.form-inline` with some extra flavor for optimum display in
254
+ // our navbars.
255
+
256
+ @include input-size('.navbar-input', $input-height-small, 5px, 10px, $input-font-size-small, $navbar-input-line-height);
257
+
258
+ .navbar-form {
259
+ @include box-shadow(none);
260
+ margin-top: 0;
261
+ margin-bottom: 0;
262
+ padding-right: 19px;
263
+ padding-left: 19px;
264
+
265
+ // Vertically center in expanded, horizontal navbar
266
+ @include navbar-vertical-align($input-height-small);
267
+
268
+ .form-group {
269
+ @media (max-width: $grid-float-breakpoint-max) {
270
+ margin-bottom: 5px;
271
+ }
272
+ }
273
+
274
+ @media (max-width: $grid-float-breakpoint-max) {
275
+ margin: 3px -21px;
276
+ width: auto;
277
+ }
278
+
279
+ .navbar-nav + &.navbar-left,
280
+ &.navbar-right:last-child { // Width fix for Webkit and IE11
281
+ @media (min-width: $grid-float-breakpoint) {
282
+ width: 260px;
283
+ }
284
+ }
285
+
286
+ // Controls sizing
287
+ .form-control,
288
+ .input-group-addon,
289
+ .btn { @extend .navbar-input; }
290
+
291
+ // Reset rounded corners
292
+ @include form-controls-corners-reset();
293
+
294
+ .form-control {
295
+ font-size: $component-font-size-base;
296
+ border-radius: 5px;
297
+ display: table-cell;
298
+ }
299
+ .form-group + .btn {
300
+ font-size: $component-font-size-base;
301
+ border-radius: 5px;
302
+ margin-left: 4px;
303
+ }
304
+
305
+ @media (max-width: $grid-float-breakpoint-max) {
306
+ .form-group {
307
+ margin-bottom: 0;
308
+
309
+ & + .btn {
310
+ margin-top: 9px;
311
+ margin-left: 0;
312
+ }
313
+ }
314
+ }
315
+ }
316
+
317
+ // Dropdown menus
318
+
319
+ // Menu position and menu carets
320
+ .navbar-nav > li {
321
+ > .dropdown-menu {
322
+ min-width: 100%;
323
+ border-radius: $border-radius-base;
324
+
325
+ @media (max-width: $grid-float-breakpoint-max) {
326
+ @include transition(all 0s);
327
+ display: none;
328
+ }
329
+ }
330
+ &.open > .dropdown-menu {
331
+ @media (max-width: $grid-float-breakpoint-max) {
332
+ margin-top: 0 !important;
333
+ display: block;
334
+ }
335
+ }
336
+ }
337
+
338
+ // Menu position and menu caret support for dropups via extra dropup class
339
+ .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
340
+ @include border-bottom-radius($border-radius-base);
341
+ }
342
+
343
+ .navbar-nav > .open > .dropdown-toggle,
344
+ .navbar-nav > .open > .dropdown-toggle:focus,
345
+ .navbar-nav > .open > .dropdown-toggle:hover {
346
+ background-color: transparent;
347
+ }
348
+
349
+ // Text in navbars
350
+ //
351
+ // Add a class to make any element properly align itself vertically within the navbars.
352
+
353
+ .navbar-text {
354
+ font-size: floor($component-font-size-base * 1.067); // ~16px
355
+ line-height: 1.438; // ~23px
356
+ color: $brand-primary;
357
+ margin-top: 0;
358
+ margin-bottom: 0;
359
+
360
+ @include navbar-vertical-align(23px, $navbar-height-base);
361
+
362
+ @media (min-width: $grid-float-breakpoint) {
363
+ margin-left: 21px;
364
+ margin-right: 21px;
365
+
366
+ // Outdent the form if last child to line up with content down the page
367
+ &.navbar-right:last-child {
368
+ margin-right: 0;
369
+ }
370
+ }
371
+ }
372
+
373
+ // Buttons in navbars
374
+ //
375
+ // Vertically center a button within a navbar (when *not* in a form).
376
+
377
+ .navbar-btn {
378
+ margin-top: (($navbar-height-base - $input-height-base) / 2);
379
+ margin-bottom: (($navbar-height-base - $input-height-base) / 2);
380
+
381
+ &.btn-sm {
382
+ margin-top: (($navbar-height-base - $input-height-small) / 2);
383
+ margin-bottom: (($navbar-height-base - $input-height-small) / 2) - 1;
384
+ }
385
+ &.btn-xs {
386
+ margin-top: (($navbar-height-base - 25) / 2);
387
+ margin-bottom: (($navbar-height-base - 25) / 2);
388
+ }
389
+ }
390
+
391
+ // Unread icon
392
+ //
393
+ .navbar-unread,
394
+ .navbar-new {
395
+ font-family: $font-family-base;
396
+ background-color: $brand-secondary;
397
+ border-radius: 50%;
398
+ color: $inverse;
399
+ font-size: 0;
400
+ font-weight: 700;
401
+ height: 6px;
402
+ line-height: 1;
403
+ position: absolute;
404
+ right: 12px;
405
+ text-align: center;
406
+ top: 35%;
407
+ width: 6px;
408
+ z-index: 10;
409
+
410
+ @media (max-width: $grid-float-breakpoint) {
411
+ position: static;
412
+ float: right;
413
+ margin: 0 0 0 10px;
414
+ }
415
+
416
+ .active & {
417
+ background-color: $inverse;
418
+ display: none;
419
+ }
420
+ }
421
+
422
+ .navbar-new {
423
+ background-color: $brand-danger;
424
+ font-size: 12px;
425
+ height: 18px;
426
+ line-height: 17px;
427
+ margin: -6px -10px;
428
+ min-width: 18px;
429
+ padding: 0 1px;
430
+ width: auto;
431
+ -webkit-font-smoothing: subpixel-antialiased;
432
+ }
433
+
434
+ // Alternate navbars
435
+ // --------------------------------------------------
436
+
437
+ // Default navbar
438
+ .navbar-default {
439
+ background-color: $navbar-default-bg;
440
+
441
+ .navbar-brand {
442
+ color: $navbar-default-brand-color;
443
+ &:hover,
444
+ &:focus {
445
+ color: $navbar-default-brand-hover-color;
446
+ background-color: $navbar-default-brand-hover-bg;
447
+ }
448
+ }
449
+
450
+ .navbar-toggle {
451
+ &:before {
452
+ color: $navbar-default-toggle-color;
453
+ }
454
+ &:hover,
455
+ &:focus {
456
+ background-color: transparent;
457
+
458
+ &:before {
459
+ color: $navbar-default-toggle-hover-color;
460
+ }
461
+ }
462
+ }
463
+
464
+ .navbar-collapse,
465
+ .navbar-form {
466
+ border-color: $navbar-default-form-border;
467
+ border-width: 2px;
468
+ }
469
+
470
+ .navbar-nav {
471
+ > li > a {
472
+ color: $navbar-default-link-color;
473
+
474
+ &:hover,
475
+ &:focus {
476
+ color: $navbar-default-link-hover-color;
477
+ background-color: $navbar-default-link-hover-bg;
478
+ }
479
+ }
480
+ > .active > a {
481
+ &,
482
+ &:hover,
483
+ &:focus {
484
+ color: $navbar-default-link-active-color;
485
+ background-color: $navbar-default-link-active-bg;
486
+ }
487
+ }
488
+ > .disabled > a {
489
+ &,
490
+ &:hover,
491
+ &:focus {
492
+ color: $navbar-default-link-disabled-color;
493
+ background-color: $navbar-default-link-disabled-bg;
494
+ }
495
+ }
496
+ }
497
+
498
+ // Dropdown menu items and carets
499
+ .navbar-nav {
500
+ // Caret text color
501
+ > .dropdown > a .caret {
502
+ border-top-color: $navbar-default-caret-color;
503
+ border-bottom-color: $navbar-default-caret-color;
504
+ }
505
+ // Caret should match text color on active
506
+ > .active > a .caret {
507
+ border-top-color: $navbar-default-caret-active-color;
508
+ border-bottom-color: $navbar-default-caret-active-color;
509
+ }
510
+ // Caret should match text color on hover
511
+ > .dropdown > a:hover .caret,
512
+ > .dropdown > a:focus .caret {
513
+ border-top-color: $navbar-default-caret-hover-color;
514
+ border-bottom-color: $navbar-default-caret-hover-color;
515
+ }
516
+
517
+ // Remove background color from open dropdown
518
+ > .open > a {
519
+ &,
520
+ &:hover,
521
+ &:focus {
522
+ background-color: $navbar-default-link-active-bg;
523
+ color: $navbar-default-link-active-color;
524
+ .caret {
525
+ border-top-color: $navbar-default-caret-active-color;
526
+ border-bottom-color: $navbar-default-caret-active-color;
527
+ }
528
+ }
529
+ }
530
+
531
+
532
+ @media (max-width: $grid-float-breakpoint-max) {
533
+ // Dropdowns get custom display when collapsed
534
+ .open .dropdown-menu {
535
+ > li > a {
536
+ color: $navbar-default-link-color;
537
+ &:hover,
538
+ &:focus {
539
+ color: $navbar-default-link-hover-color;
540
+ background-color: $navbar-default-link-hover-bg;
541
+ }
542
+ }
543
+ > .active > a {
544
+ &,
545
+ &:hover,
546
+ &:focus {
547
+ color: $navbar-default-link-active-color;
548
+ background-color: $navbar-default-link-active-bg;
549
+ }
550
+ }
551
+ > .disabled > a {
552
+ &,
553
+ &:hover,
554
+ &:focus {
555
+ color: $navbar-default-link-disabled-color;
556
+ background-color: $navbar-default-link-disabled-bg;
557
+ }
558
+ }
559
+ }
560
+ }
561
+ }
562
+
563
+ .navbar-form {
564
+ .form-control {
565
+ border-color: transparent;
566
+ @include placeholder($navbar-default-form-placeholder);
567
+
568
+ &:focus {
569
+ border-color: $brand-secondary;
570
+ color: $brand-secondary;
571
+ }
572
+ }
573
+ .input-group-btn .btn {
574
+ border-color: transparent;
575
+ color: $navbar-default-form-icon;
576
+ }
577
+ .input-group.focus {
578
+ .form-control,
579
+ .input-group-btn .btn {
580
+ border-color: $brand-secondary;
581
+ color: $brand-secondary;
582
+ }
583
+ }
584
+ }
585
+
586
+ .navbar-text {
587
+ color: $brand-primary;
588
+
589
+ a {
590
+ color: $navbar-default-link-color;
591
+
592
+ &:hover,
593
+ &:focus {
594
+ color: $navbar-default-link-hover-color;
595
+ }
596
+ }
597
+ }
598
+ }
599
+
600
+ // Inverse navbar
601
+ .navbar-inverse {
602
+ background-color: $navbar-inverse-bg;
603
+
604
+ .navbar-brand {
605
+ color: $navbar-inverse-brand-color;
606
+ &:hover,
607
+ &:focus {
608
+ color: $navbar-inverse-brand-hover-color;
609
+ background-color: $navbar-inverse-brand-hover-bg;
610
+ }
611
+ }
612
+
613
+ .navbar-toggle {
614
+ &:before {
615
+ color: $navbar-inverse-toggle-color;
616
+ }
617
+ &:hover,
618
+ &:focus {
619
+ background-color: transparent;
620
+
621
+ &:before {
622
+ color: $navbar-inverse-toggle-hover-color;
623
+ }
624
+ }
625
+ }
626
+
627
+ .navbar-collapse {
628
+ border-color: $navbar-inverse-form-border;
629
+ border-width: 2px;
630
+ }
631
+
632
+ .navbar-nav {
633
+ > li > a {
634
+ color: $navbar-inverse-link-color;
635
+
636
+ &:hover,
637
+ &:focus {
638
+ color: $navbar-inverse-link-hover-color;
639
+ background-color: $navbar-inverse-link-hover-bg;
640
+ }
641
+ }
642
+ > .active > a {
643
+ &,
644
+ &:hover,
645
+ &:focus {
646
+ color: $navbar-inverse-link-active-color;
647
+ background-color: $navbar-inverse-link-active-bg;
648
+ }
649
+ }
650
+ > .disabled > a {
651
+ &,
652
+ &:hover,
653
+ &:focus {
654
+ color: $navbar-inverse-link-disabled-color;
655
+ background-color: $navbar-inverse-link-disabled-bg;
656
+ }
657
+ }
658
+ }
659
+
660
+ // Dropdown menu items and carets
661
+ .navbar-nav {
662
+ // Caret should match text color on hover
663
+ > .dropdown > a:hover .caret,
664
+ > .dropdown > a:focus .caret {
665
+ border-top-color: $navbar-inverse-caret-hover-color;
666
+ border-bottom-color: $navbar-inverse-caret-hover-color;
667
+ }
668
+
669
+ // Remove background color from open dropdown
670
+ > .open > a {
671
+ &,
672
+ &:hover,
673
+ &:focus {
674
+ background-color: $navbar-inverse-link-active-bg;
675
+ color: $navbar-inverse-link-active-color;
676
+ border-left-color: transparent;
677
+ .caret {
678
+ border-top-color: $navbar-inverse-link-active-color;
679
+ border-bottom-color: $navbar-inverse-link-active-color;
680
+ }
681
+ }
682
+ }
683
+ > .dropdown > a .caret {
684
+ border-top-color: $navbar-inverse-caret-color;
685
+ border-bottom-color: $navbar-inverse-caret-color;
686
+ }
687
+
688
+ > .open {
689
+ > .dropdown-arrow {
690
+ border-top-color: $navbar-inverse-dropdown-arrow;
691
+ border-bottom-color: $navbar-inverse-dropdown-arrow;
692
+ }
693
+ > .dropdown-menu {
694
+ background-color: $navbar-inverse-dropdown-bg;
695
+ padding: 3px 4px;
696
+
697
+ > li > a {
698
+ color: $navbar-inverse-dropdown-link-color;
699
+ border-radius: $border-radius-base;
700
+ padding: 6px 9px;
701
+
702
+ &:hover,
703
+ &:focus {
704
+ color: $navbar-inverse-dropdown-link-hover-color;
705
+ background-color: $navbar-inverse-dropdown-link-hover-bg;
706
+ }
707
+ }
708
+ > .divider {
709
+ background-color: $navbar-inverse-divider;
710
+ height: 2px;
711
+ margin-left: -4px;
712
+ margin-right: -4px;
713
+ }
714
+ }
715
+ }
716
+
717
+ @media (max-width: $grid-float-breakpoint-max) {
718
+ > li > a {
719
+ border-left-width: 0;
720
+ }
721
+ // Dropdowns get custom display when collapsed
722
+ .open .dropdown-menu {
723
+ > li > a {
724
+ color: $navbar-inverse-link-color;
725
+ &:hover,
726
+ &:focus {
727
+ color: $navbar-inverse-link-hover-color;
728
+ background-color: $navbar-inverse-link-hover-bg;
729
+ }
730
+ }
731
+ > .active > a {
732
+ &,
733
+ &:hover,
734
+ &:focus {
735
+ color: $navbar-inverse-link-active-color;
736
+ background-color: $navbar-inverse-link-active-bg;
737
+ }
738
+ }
739
+ > .disabled > a {
740
+ &,
741
+ &:hover,
742
+ &:focus {
743
+ color: $navbar-inverse-link-disabled-color;
744
+ background-color: $navbar-inverse-link-disabled-bg;
745
+ }
746
+ }
747
+ }
748
+ // Custom background for dividers when collapsed
749
+ .dropdown-menu .divider {
750
+ background-color: $navbar-inverse-divider;
751
+ }
752
+ }
753
+ }
754
+
755
+ .navbar-form {
756
+ .form-control {
757
+ color: $navbar-inverse-form-placeholder;
758
+ border-color: transparent;
759
+ background-color: $navbar-inverse-form-bg;
760
+ @include placeholder($navbar-inverse-form-placeholder);
761
+
762
+ &:focus {
763
+ border-color: $brand-secondary;
764
+ color: $brand-secondary;
765
+ }
766
+ }
767
+ .btn {
768
+ @include button-variant($btn-default-color, $brand-secondary, $btn-primary-hover-bg, $btn-primary-active-bg);
769
+ }
770
+ .input-group-btn .btn {
771
+ border-color: transparent;
772
+ background-color: $navbar-inverse-form-bg;
773
+ color: $navbar-inverse-form-icon;
774
+ }
775
+ .input-group.focus {
776
+ .form-control,
777
+ .input-group-btn .btn {
778
+ border-color: $brand-secondary;
779
+ color: $brand-secondary;
780
+ }
781
+ }
782
+
783
+ @media (max-width: $grid-float-breakpoint-max) {
784
+ border-color: $navbar-inverse-form-border;
785
+ border-width: 2px 0;
786
+ }
787
+ }
788
+
789
+ .navbar-text {
790
+ color: $inverse;
791
+
792
+ a {
793
+ color: $navbar-inverse-link-color;
794
+
795
+ &:hover,
796
+ &:focus {
797
+ color: $navbar-inverse-link-hover-color;
798
+ }
799
+ }
800
+ }
801
+
802
+ .navbar-btn {
803
+ @include button-variant($btn-default-color, $brand-secondary, $btn-primary-hover-bg, $btn-primary-active-bg);
804
+ }
805
+ }
806
+
807
+ // Embossed navbar
808
+ .navbar-embossed {
809
+ @media (min-width: $grid-float-breakpoint) {
810
+ > .navbar-collapse {
811
+ border-radius: $navbar-border-radius;
812
+ @include box-shadow(inset 0 -2px 0 fade(black, 15%));
813
+ }
814
+ &.navbar-inverse .navbar-nav {
815
+ .active > a,
816
+ .open > a {
817
+ @include box-shadow(inset 0 -2px 0 fade(black, 15%));
818
+ }
819
+ }
820
+ }
821
+ }
822
+
823
+ // Large navbar
824
+ .navbar-lg {
825
+ min-height: $navbar-height-large;
826
+
827
+ .navbar-brand {
828
+ line-height: 1;
829
+ padding-top: (($navbar-height-large - 24px) / 2);
830
+ padding-bottom: (($navbar-height-large - 24px) / 2);
831
+
832
+ > [class*="fui-"] {
833
+ font-size: floor($component-font-size-base * 1.6); // ~24px
834
+ line-height: 1;
835
+ }
836
+ }
837
+
838
+ .navbar-nav {
839
+ > li > a {
840
+ font-size: $component-font-size-base;
841
+ line-height: 1.6;
842
+
843
+ @media (min-width: $grid-float-breakpoint) {
844
+ padding-top: (($navbar-height-large - 24px) / 2);
845
+ padding-bottom: (($navbar-height-large - 24px) / 2);
846
+ }
847
+ }
848
+ }
849
+
850
+ .navbar-toggle {
851
+ height: $navbar-height-large;
852
+ line-height: $navbar-height-large;
853
+ }
854
+
855
+ .navbar-form {
856
+ @include navbar-vertical-align($input-height-small, $navbar-height-large);
857
+ }
858
+
859
+ .navbar-text {
860
+ @include navbar-vertical-align(23px, $navbar-height-large);
861
+ }
862
+
863
+ .navbar-btn {
864
+ margin-top: (($navbar-height-large - $input-height-base) / 2);
865
+ margin-bottom: (($navbar-height-large - $input-height-base) / 2);
866
+
867
+ &.btn-sm {
868
+ margin-top: (($navbar-height-large - $input-height-small) / 2);
869
+ margin-bottom: (($navbar-height-large - $input-height-small) / 2);
870
+ }
871
+ &.btn-xs {
872
+ margin-top: (($navbar-height-large - 25px) / 2);
873
+ margin-bottom: (($navbar-height-large - 25px) / 2);
874
+ }
875
+ }
876
+ }