897ebd1e18c1e79b43ac8020aeafdd3aa536c224
[bootswatch] / superhero / bootswatch.less
1 // Superhero 2.2.2
2 // Bootswatch
3 // -----------------------------------------------------
4
5
6 // TYPOGRAPHY
7 // --------------------------------------------------
8
9 @import url(//fonts.googleapis.com/css?family=Oswald);
10 @import url(//fonts.googleapis.com/css?family=Noticia+Text);
11
12 h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, h6 {
13         font-family: @headingsFontFamily;
14         color: @orange;
15         text-shadow: -1px 1px 0 darken(@orange, 30%);
16 }
17
18 h1, h2 {
19         text-shadow: -2px 2px 0 darken(@orange, 30%);
20 }
21
22 h1 {
23         line-height: 55px;
24 }
25
26 code, pre {
27         background-color: lighten(@blue, 8%);
28         border: none;
29         color: @textColor;
30 }
31
32 // SCAFFOLDING
33 // --------------------------------------------------
34
35 .page-header {
36         border-bottom: none;
37 }
38
39 blockquote {
40         border-left: 5px solid @blue;
41 }
42
43 blockquote.pull-right {
44         border-right: 5px solid @blue;
45 }
46
47 // NAVBAR
48 // --------------------------------------------------
49
50 .navbar {
51
52         .navbar-inner {
53                 .box-shadow(none);
54                 background-image: none;
55         }
56
57         .brand {
58                 padding: 25px 20px 15px;
59                 font-family: @headingsFontFamily;
60                 font-size: 30px;
61                 text-shadow: -2px 2px 0 darken(@orange, 30%);
62         }
63
64         .nav > li > a {
65                 padding: 23px 20px 13px;
66                 line-height: 30px;
67                 font-family: @headingsFontFamily;
68                 font-size: 22px;
69                 text-shadow: -2px 2px 0 darken(@orange, 30%);
70         }
71
72         .brand:hover,
73         .nav > li > a:hover,
74         .nav > li.active > a:hover,
75         .nav > li.dropdown.open > a,
76         .nav > li.dropdown.open > a:hover {
77                 position: relative;
78                 top: 1px;
79                 left: -1px;
80                 color: @orange;
81                 text-shadow: -1px 1px 0 darken(@orange, 30%);
82         }
83
84         .nav > .active > a,
85         .nav > .active > a:hover,
86         .nav > .active > a:focus {
87                 .box-shadow(none);
88         }
89
90         .navbar-text {
91                 padding: 23px 20px 13px;
92                 line-height: 30px;
93                 font-family: @headingsFontFamily;
94                 font-size: 22px;
95                 text-shadow: -2px 2px 0 @gray;
96         }
97
98         .navbar-search {
99                 margin-top: 24px;
100         }
101
102         .navbar-search .search-query {
103                 font-family: @baseFontFamily;
104                 font-size: @baseFontSize;
105                 line-height: @baseLineHeight;
106                 .box-shadow(none);
107         }
108
109         &.navbar-inverse .navbar-search .search-query {
110                 color: @blueDark;
111         }
112
113         .divider-vertical {
114                 height: 70px;
115         }
116
117         .nav .dropdown-toggle .caret,
118         .nav .open.dropdown .caret {
119                 margin-top: 14px;
120                 border-top-color: @textColor;
121         }
122
123         .dropdown-menu::before {
124                 border: none;
125         }
126
127         .dropdown-menu::after {
128                 left: 20px;
129                 border-left: 7px solid transparent;
130                 border-right: 7px solid transparent;
131                 border-bottom: 7px solid lighten(@blue, 10%);
132         }
133
134         [class^="icon-"], [class*=" icon-"] {
135                 vertical-align: 20%;
136         }
137
138         .btn-navbar {
139                 background-color: @blue;
140                 border-color: transparent;
141         }
142 }
143
144 @media (max-width: @navbarCollapseWidth) {
145
146         .navbar .nav-collapse {
147
148                 .border-radius(4px);
149
150                 .nav li > a {
151                         color: @orange;
152
153                         &:hover {
154                                 background-color: lighten(@blue, 10%) !important;
155                                 background-image: none;
156                         }
157                 }
158
159                 .navbar-form,
160                 .navbar-search {
161                         border-top: none;
162                         border-bottom: none;
163                         .box-shadow(none);
164                 }
165
166                 .nav-header {
167                         color: @textColor;
168                 }
169         }
170 }
171
172 div.subnav {
173         background-color: @blue;
174         background-image: none;
175         border: none;
176
177         .nav > li > a,
178         .nav > li.active > a {
179                 border-left: none;
180                 border-right: none;
181                 color: @textColor;
182         }
183
184         .nav > li > a:hover,
185         .nav > li.active > a:hover {
186                 background-color: lighten(@blue, 10%);
187         }
188
189         .nav > li + li > a {
190                 border-top: 0px solid transparent;
191         }
192
193         .nav > li:first-child > a,
194         .nav > li:first-child > a:hover,
195         .nav > li.active:first-child > a,
196         .nav > li.active:first-child > a:hover {
197                 .border-radius(4px 0 0 4px);
198         }
199
200         .nav > li.active > a,
201         .nav > li.active > a:hover {
202                 color: @white;
203                 background-color: @orange;
204                 background-image: none;
205                 .box-shadow(none);
206         }
207
208         &.subnav-fixed {
209                 top: 70px;
210                 .box-shadow(none);
211
212                 .nav > li > a,
213                 .nav > li.active > a,
214                 .nav > li > a:hover,
215                 .nav > li.active > a:hover {
216                         border-color: transparent;
217                         padding-left: 12px;
218                         padding-right: 12px;
219                         .border-radius(0);
220                 }
221
222                 .nav > li > a:hover,
223                 .nav > li.active > a:hover {
224                         color: @white;
225                 }
226         }
227
228         .nav > .active > a .caret,
229         .nav > .active > a:hover .caret {
230                 border-top-color: @textColor;
231         }
232 }
233
234 // NAVIGATION
235 // --------------------------------------------------
236
237 .nav .nav-header {
238         color: @textColor;
239         text-shadow: none;
240 }
241
242 .nav-list {
243         padding: 0 15px;
244 }
245
246 .nav-list > li > a, .nav-list .nav-header {
247         text-shadow: none;
248         color: @textColor;
249 }
250
251 .nav-list .active > a, .nav-list .active > a:hover {
252         text-shadow: none;
253         color: @white;
254 }
255
256 .nav-list li > a:hover {
257         background-color: lighten(@blue, 10%);
258 }
259
260 .nav-tabs, .nav-tabs.nav-stacked > li > a {
261         border-color: transparent;
262 }
263
264 .nav-tabs {
265         > li > a {
266                 background-color: @blue;
267                 color: @textColor;
268         }
269
270         li.active > a,
271         li.active > a:hover,
272         &.nav-stacked > li.active > a:hover {
273                 color: @white;
274                 background-color: @orange;
275                 border-color: transparent;
276         }
277
278         li > a:hover,
279         &.nav-stacked > li > a:hover {
280                 background-color: lighten(@blue, 10%);
281                 border-color: transparent;
282         }
283 }
284
285 .nav-pills > li > a {
286         color: @textColor;
287         background-color: @blue;
288 }
289
290 .nav-pills > li:hover > a {
291         background-color: lighten(@blue, 10%);
292         border-color: transparent;
293 }
294
295 .nav-tabs .open .dropdown-toggle,
296 .nav-pills .open .dropdown-toggle,
297 .nav > .open.active > a:hover {
298         background-color: lighten(@blue, 10%);
299         border-color: transparent;
300 }
301
302 .nav-pills .dropdown .caret,
303 .nav-pills .dropdown:hover .caret {
304         border-top-color: @textColor;
305 }
306
307 .dropdown.open .dropdown-menu > li > a:hover,
308 .dropdown.open .dropdown-menu > li.active > a:hover {
309         background-color: @orange;
310         color: @white;
311 }
312
313 .tabbable .nav-tabs,
314 .tabbable .nav-tabs > li.active > a,
315 .tabbable .nav-tabs > li > a:hover,
316 .tabbable .nav-tabs > li.active > a:hover {
317         border-color: transparent;
318 }
319
320 .breadcrumb {
321         background-color: @blue;
322         background-image: none;
323         border: none;
324         .box-shadow(none);
325
326         li {
327                 text-shadow: none;
328         }
329
330         .divider {
331                 color: @textColor;
332         }
333 }
334
335 .pagination {
336
337         ul {
338                 background-image: none;
339                 border-color: transparent;
340         }
341
342         ul > li > a,
343         ul > li > span {
344                 border: none;
345                 color: @textColor;
346         }
347
348         ul > li > a:hover {
349                 background: lighten(@blue, 10%);
350         }
351
352         ul > .active > a,
353         ul > .active > a:hover,
354         ul > .active > span,
355         ul > .active > span:hover {
356                 background-color: @orange;
357                 color: @white;
358         }
359
360         ul > .disabled > a,
361         ul > .disabled > a:hover,
362         ul > .disabled > span,
363         ul > .disabled > span:hover {
364                 background: darken(@blue, 5%);
365         }
366 }
367
368 .pager {
369
370         a {
371                 color: @textColor;
372                 background-color: @blue;
373                 border-color: transparent;
374
375                 &:hover {
376                         background: lighten(@blue, 10%);
377                 }
378         }
379
380         .disabled a,
381         .disabled a:hover {
382                 background-color: @blue;
383         }
384 }
385
386 // BUTTONS
387 // --------------------------------------------------
388
389 .btn,
390 .btn:hover {
391         text-shadow: none;
392         background-image: none;
393         .box-shadow(-2px 2px 0 rgba(0, 0, 0, 0.2));
394         border: none;
395 }
396
397 .btn-warning {
398         background-color: @yellow;
399 }
400
401 .btn-primary, .btn-primary:hover {
402         .box-shadow(-2px 2px 0 darken(@btnPrimaryBackground, 30%));
403 }
404
405 .btn-warning, .btn-warning:hover {
406         .box-shadow(-2px 2px 0 darken(@yellow, 30%));
407 }
408
409 .btn-danger, .btn-danger:hover {
410         .box-shadow(-2px 2px 0 darken(#ee5f5b, 30%));
411 }
412
413 .btn-success, .btn-success:hover {
414         .box-shadow(-2px 2px 0 darken(#62c462, 30%));
415 }
416
417 .btn-info, .btn-info:hover {
418         .box-shadow(-2px 2px 0 darken(#5bc0de, 40%));
419 }
420
421 .btn-inverse, .btn-inverse:hover {
422         .box-shadow(-2px 2px 0 darken(#454545, 20%));
423 }
424
425 .btn.dropdown-toggle, .btn.dropdown-toggle:hover {
426         .box-shadow(0 2px 0 darken(@white, 80%));
427 }
428
429 .btn-primary.dropdown-toggle, .btn-primary.dropdown-toggle:hover {
430         .box-shadow(0 2px 0 darken(@btnPrimaryBackground, 30%));
431 }
432
433 .btn-warning.dropdown-toggle, .btn-warning.dropdown-toggle:hover {
434         .box-shadow(0 2px 0 darken(@yellow, 30%));
435 }
436
437 .btn-danger.dropdown-toggle, .btn-danger.dropdown-toggle:hover {
438         .box-shadow(0 2px 0 darken(#ee5f5b, 30%));
439 }
440
441 .btn-success.dropdown-toggle, .btn-success.dropdown-toggle:hover {
442         .box-shadow(0 2px 0 darken(#62c462, 30%));
443 }
444
445 .btn-info.dropdown-toggle, .btn-info.dropdown-toggle:hover {
446         .box-shadow(0 2px 0 darken(#5bc0de, 40%));
447 }
448
449 .btn-inverse.dropdown-toggle, .btn-inverse.dropdown-toggle:hover {
450         .box-shadow(0 2px 0 darken(#454545, 20%));
451 }
452
453 .btn.active,
454 .btn:active {
455         position: relative;
456         top: 1px;
457         left: -1px;
458         .box-shadow(-1px 1px 0 darken(@white, 80%))
459 }
460
461 .btn.disabled,
462 .btn.disabled.active,
463 .btn.disabled:active,
464 .btn[disabled] {
465         .box-shadow(none);
466         text-shadow: none;
467         top: 0;
468         left: 0;
469 }
470
471 [class^="icon-"], [class*=" icon-"] {
472         vertical-align: -13%;
473 }
474
475 // TABLES
476 // -----------------------------------------------------
477
478 .table,
479 .table-striped tbody > tr > td:first-child,
480 .table-striped tbody > tr > td:last-child, {
481         .border-radius(4px);
482 }
483
484 // FORMS
485 // --------------------------------------------------
486
487 input, button, select, textarea {
488         font-family: 'Noticia Text', serif;
489 }
490
491 legend {
492         border-bottom: none;
493         font-family: @headingsFontFamily;
494         color: @orange;
495         text-shadow: -2px 2px 0 darken(@orange, 30%);
496 }
497
498 label {
499         color: @textColor;
500         line-height: 15px;
501 }
502
503 .help-block {
504         color: @textColor;
505         opacity: 0.6;
506 }
507
508 .form-actions {
509         border-top: none;
510 }
511
512 .control-group.warning {
513   .formFieldState(lighten(@warningText, 10%), lighten(@warningText, 10%), @warningBackground);
514 }
515
516 .control-group.error {
517   .formFieldState(lighten(@errorText, 10%), lighten(@errorText, 10%), @errorBackground);
518 }
519
520 .control-group.success {
521   .formFieldState(lighten(@successText, 10%), lighten(@successText, 10%), @successBackground);
522 }
523
524 .input-append .add-on,
525 .input-prepend .add-on,
526 .input-append .btn,
527 .input-prepend .btn {
528         color: @bodyBackground;
529 }
530
531 // DROPDOWNS
532 // --------------------------------------------------
533
534 .dropdown .caret {
535         margin-top: 14px;
536         opacity: 1;
537         border-left: 6px solid transparent;
538         border-right: 6px solid transparent;
539         border-top: 6px solid lighten(@blue, 10%);
540 }
541
542 // ALERTS, LABELS, BADGES
543 // --------------------------------------------------
544
545 .label {
546         background-color: @blue;
547         color: @textColor;
548 }
549
550 .label-important {
551         background-color: @errorText;
552 }
553
554 .label-warning {
555         background-color: @orange;
556 }
557
558 .label-success {
559         background-color: @successText;
560 }
561
562 .label-info {
563         background-color: @infoText;
564 }
565
566 .alert {
567   background-color: @blue;
568   border: none;
569   color: @textColor;
570   text-shadow: none;
571
572   a {
573         color: lighten(@orange, 12%);
574   }
575 }
576
577 .alert .alert-heading {
578         color: @orange;
579 }
580
581 .alert-success {
582   background-color: @successText;
583 }
584
585 .alert-danger,
586 .alert-error {
587   background-color: @errorText;
588 }
589
590 .alert-info {
591   background-color: @infoText;
592 }
593
594 // MISC
595 // --------------------------------------------------
596
597 .well, .hero-unit {
598         border: none;
599         .box-shadow(none);
600 }
601
602 .hero-unit h1 {
603         color: @orange;
604         line-height: 2em;
605 }
606
607 .progress {
608         background-color: darken(@blueDark, 5%);
609         background-image: none;
610         .box-shadow(none);
611
612         .bar {
613                 .box-shadow(none);
614         }
615 }
616
617 .thumbnail {
618         border: none;
619         background: @blue;
620         .border-radius(3px);
621 }
622
623 .modal {
624         background-color: transparent;
625
626         &-header,
627         &-body,
628         &-footer {
629                 .box-shadow(none);
630                 background-color: @bodyBackground;
631                 border: none;
632         }
633
634         &-header {
635                 .border-radius(4px 4px 0 0);
636         }
637
638         &-footer {
639                 .border-radius(0 0 4px 4px);
640         }
641 }
642
643 // MEDIA QUERIES
644 // --------------------------------------------------
645
646 @media (max-width: 768px) {
647
648         div.subnav {
649
650                 .nav > li {
651
652                         &:first-child > a,
653                         &:first-child > a:hover,
654                         &.active:first-child > a,
655                         &.active:first-child > a:hover {
656                                 .border-radius(4px 4px 0 0);
657                         }
658
659                         &:last-child > a,
660                         &:last-child > a:hover,
661                         &.active:last-child > a,
662                         &.active:last-child > a:hover {
663                                 .border-radius(0 0 4px 4px);
664                         }
665                 }
666         }
667 }