2 * Bootstrap v3.4.0 (http://getbootstrap.com)
3 * Copyright 2011-2016 Twitter, Inc.
4 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
8 // Load core variables and mixins
9 // --------------------------------------------------
11 @import "variables.less";
12 @import "mixins.less";
17 // --------------------------------------------------
26 text-shadow: 0 -1px 0 rgba(0,0,0,.2);
27 @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);
33 .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
38 fieldset[disabled] & {
47 // Mixin for generating new styles
48 .btn-styles(@btn-color: #555) {
49 #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));
50 .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620
51 background-repeat: repeat-x;
52 border-color: darken(@btn-color, 14%);
56 background-color: darken(@btn-color, 12%);
57 background-position: 0 -15px;
62 background-color: darken(@btn-color, 12%);
63 border-color: darken(@btn-color, 14%);
68 fieldset[disabled] & {
75 background-color: darken(@btn-color, 12%);
76 background-image: none;
83 // Remove the gradient for the pressed/active state
86 background-image: none;
90 // Apply the mixin to the buttons
91 .btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }
92 .btn-primary { .btn-styles(@btn-primary-bg); }
93 .btn-success { .btn-styles(@btn-success-bg); }
94 .btn-info { .btn-styles(@btn-info-bg); }
95 .btn-warning { .btn-styles(@btn-warning-bg); }
96 .btn-danger { .btn-styles(@btn-danger-bg); }
101 // --------------------------------------------------
105 .box-shadow(0 1px 2px rgba(0,0,0,.075));
111 // --------------------------------------------------
113 .dropdown-menu > li > a:hover,
114 .dropdown-menu > li > a:focus {
115 #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));
116 background-color: darken(@dropdown-link-hover-bg, 5%);
118 .dropdown-menu > .active > a,
119 .dropdown-menu > .active > a:hover,
120 .dropdown-menu > .active > a:focus {
121 #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));
122 background-color: darken(@dropdown-link-active-bg, 5%);
128 // --------------------------------------------------
132 #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);
133 .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered
134 border-radius: @navbar-border-radius;
135 @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);
136 .box-shadow(@shadow);
138 .navbar-nav > .open > a,
139 .navbar-nav > .active > a {
140 #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));
141 .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));
145 .navbar-nav > li > a {
146 text-shadow: 0 1px 0 rgba(255,255,255,.25);
151 #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);
152 .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257
153 border-radius: @navbar-border-radius;
154 .navbar-nav > .open > a,
155 .navbar-nav > .active > a {
156 #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));
157 .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));
161 .navbar-nav > li > a {
162 text-shadow: 0 -1px 0 rgba(0,0,0,.25);
166 // Undo rounded corners in static and fixed navbars
169 .navbar-fixed-bottom {
173 // Fix active state of dropdown items in collapsed mode
174 @media (max-width: @grid-float-breakpoint-max) {
175 .navbar .navbar-nav .open .dropdown-menu > .active > a {
180 #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));
188 // --------------------------------------------------
192 text-shadow: 0 1px 0 rgba(255,255,255,.2);
193 @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);
194 .box-shadow(@shadow);
197 // Mixin for generating new styles
198 .alert-styles(@color) {
199 #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));
200 border-color: darken(@color, 15%);
203 // Apply the mixin to the alerts
204 .alert-success { .alert-styles(@alert-success-bg); }
205 .alert-info { .alert-styles(@alert-info-bg); }
206 .alert-warning { .alert-styles(@alert-warning-bg); }
207 .alert-danger { .alert-styles(@alert-danger-bg); }
212 // --------------------------------------------------
214 // Give the progress background some depth
216 #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)
219 // Mixin for generating new styles
220 .progress-bar-styles(@color) {
221 #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));
224 // Apply the mixin to the progress bars
225 .progress-bar { .progress-bar-styles(@progress-bar-bg); }
226 .progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }
227 .progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }
228 .progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }
229 .progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }
231 // Reset the striped class because our mixins don't do multiple gradients and
232 // the above custom styles override the new `.progress-bar-striped` in v3.2.0.
233 .progress-bar-striped {
234 #gradient > .striped();
240 // --------------------------------------------------
243 border-radius: @border-radius-base;
244 .box-shadow(0 1px 2px rgba(0,0,0,.075));
246 .list-group-item.active,
247 .list-group-item.active:hover,
248 .list-group-item.active:focus {
249 text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);
250 #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));
251 border-color: darken(@list-group-active-border, 7.5%);
261 // --------------------------------------------------
265 .box-shadow(0 1px 2px rgba(0,0,0,.05));
268 // Mixin for generating new styles
269 .panel-heading-styles(@color) {
270 #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));
273 // Apply the mixin to the panel headings only
274 .panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }
275 .panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }
276 .panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }
277 .panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }
278 .panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }
279 .panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }
284 // --------------------------------------------------
287 #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);
288 border-color: darken(@well-bg, 10%);
289 @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);
290 .box-shadow(@shadow);