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