[mod] oscar: get bootstrap and typeahead from NPM
This commit is contained in:
		
							parent
							
								
									44407353ef
								
							
						
					
					
						commit
						86912e2272
					
				
							
								
								
									
										7
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								Makefile
									
									
									
									
									
								
							| @ -126,8 +126,8 @@ node.clean: | ||||
| # build themes
 | ||||
| # ------------
 | ||||
| 
 | ||||
| PHONY += themes.bootstrap themes themes.oscar themes.simple | ||||
| themes: buildenv themes.bootstrap themes.oscar themes.simple | ||||
| PHONY += themes themes.oscar themes.simple | ||||
| themes: buildenv themes.oscar themes.simple | ||||
| 
 | ||||
| quiet_cmd_lessc = LESSC     $3 | ||||
|       cmd_lessc = PATH="$$(npm bin):$$PATH" \
 | ||||
| @ -145,9 +145,6 @@ themes.simple: node.env | ||||
| 	$(Q)echo '[!] build simple theme' | ||||
| 	$(call cmd,grunt,searx/static/themes/simple/gruntfile.js) | ||||
| 
 | ||||
| themes.bootstrap: node.env | ||||
| 	$(call cmd,lessc,less/bootstrap/bootstrap.less,css/bootstrap.min.css) | ||||
| 
 | ||||
| 
 | ||||
| # docker
 | ||||
| # ------
 | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								searx/static/css/bootstrap.min.css
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/css/bootstrap.min.css
									
									
									
									
										vendored
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							| Before Width: | Height: | Size: 62 KiB | 
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								searx/static/js/bootstrap.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/js/bootstrap.min.js
									
									
									
									
										vendored
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								searx/static/js/typeahead.bundle.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/js/typeahead.bundle.min.js
									
									
									
									
										vendored
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,297 +0,0 @@ | ||||
| { | ||||
|   "always-semicolon": true, | ||||
|   "block-indent": 2, | ||||
|   "colon-space": [0, 1], | ||||
|   "color-case": "lower", | ||||
|   "color-shorthand": true, | ||||
|   "combinator-space": true, | ||||
|   "element-case": "lower", | ||||
|   "eof-newline": true, | ||||
|   "leading-zero": false, | ||||
|   "remove-empty-rulesets": true, | ||||
|   "rule-indent": 2, | ||||
|   "stick-brace": " ", | ||||
|   "strip-spaces": true, | ||||
|   "unitless-zero": true, | ||||
|   "vendor-prefix-align": true, | ||||
|   "sort-order": [ | ||||
|     [ | ||||
|       "position", | ||||
|       "top", | ||||
|       "right", | ||||
|       "bottom", | ||||
|       "left", | ||||
|       "z-index", | ||||
|       "display", | ||||
|       "float", | ||||
|       "width", | ||||
|       "min-width", | ||||
|       "max-width", | ||||
|       "height", | ||||
|       "min-height", | ||||
|       "max-height", | ||||
|       "-webkit-box-sizing", | ||||
|       "-moz-box-sizing", | ||||
|       "box-sizing", | ||||
|       "-webkit-appearance", | ||||
|       "padding", | ||||
|       "padding-top", | ||||
|       "padding-right", | ||||
|       "padding-bottom", | ||||
|       "padding-left", | ||||
|       "margin", | ||||
|       "margin-top", | ||||
|       "margin-right", | ||||
|       "margin-bottom", | ||||
|       "margin-left", | ||||
|       "overflow", | ||||
|       "overflow-x", | ||||
|       "overflow-y", | ||||
|       "-webkit-overflow-scrolling", | ||||
|       "-ms-overflow-x", | ||||
|       "-ms-overflow-y", | ||||
|       "-ms-overflow-style", | ||||
|       "clip", | ||||
|       "clear", | ||||
|       "font", | ||||
|       "font-family", | ||||
|       "font-size", | ||||
|       "font-style", | ||||
|       "font-weight", | ||||
|       "font-variant", | ||||
|       "font-size-adjust", | ||||
|       "font-stretch", | ||||
|       "font-effect", | ||||
|       "font-emphasize", | ||||
|       "font-emphasize-position", | ||||
|       "font-emphasize-style", | ||||
|       "font-smooth", | ||||
|       "-webkit-hyphens", | ||||
|       "-moz-hyphens", | ||||
|       "hyphens", | ||||
|       "line-height", | ||||
|       "color", | ||||
|       "text-align", | ||||
|       "-webkit-text-align-last", | ||||
|       "-moz-text-align-last", | ||||
|       "-ms-text-align-last", | ||||
|       "text-align-last", | ||||
|       "text-emphasis", | ||||
|       "text-emphasis-color", | ||||
|       "text-emphasis-style", | ||||
|       "text-emphasis-position", | ||||
|       "text-decoration", | ||||
|       "text-indent", | ||||
|       "text-justify", | ||||
|       "text-outline", | ||||
|       "-ms-text-overflow", | ||||
|       "text-overflow", | ||||
|       "text-overflow-ellipsis", | ||||
|       "text-overflow-mode", | ||||
|       "text-shadow", | ||||
|       "text-transform", | ||||
|       "text-wrap", | ||||
|       "-webkit-text-size-adjust", | ||||
|       "-ms-text-size-adjust", | ||||
|       "letter-spacing", | ||||
|       "-ms-word-break", | ||||
|       "word-break", | ||||
|       "word-spacing", | ||||
|       "-ms-word-wrap", | ||||
|       "word-wrap", | ||||
|       "-moz-tab-size", | ||||
|       "-o-tab-size", | ||||
|       "tab-size", | ||||
|       "white-space", | ||||
|       "vertical-align", | ||||
|       "list-style", | ||||
|       "list-style-position", | ||||
|       "list-style-type", | ||||
|       "list-style-image", | ||||
|       "pointer-events", | ||||
|       "cursor", | ||||
|       "visibility", | ||||
|       "zoom", | ||||
|       "flex-direction", | ||||
|       "flex-order", | ||||
|       "flex-pack", | ||||
|       "flex-align", | ||||
|       "table-layout", | ||||
|       "empty-cells", | ||||
|       "caption-side", | ||||
|       "border-spacing", | ||||
|       "border-collapse", | ||||
|       "content", | ||||
|       "quotes", | ||||
|       "counter-reset", | ||||
|       "counter-increment", | ||||
|       "resize", | ||||
|       "-webkit-user-select", | ||||
|       "-moz-user-select", | ||||
|       "-ms-user-select", | ||||
|       "-o-user-select", | ||||
|       "user-select", | ||||
|       "nav-index", | ||||
|       "nav-up", | ||||
|       "nav-right", | ||||
|       "nav-down", | ||||
|       "nav-left", | ||||
|       "background", | ||||
|       "background-color", | ||||
|       "background-image", | ||||
|       "-ms-filter:\\'progid:DXImageTransform.Microsoft.gradient", | ||||
|       "filter:progid:DXImageTransform.Microsoft.gradient", | ||||
|       "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader", | ||||
|       "filter", | ||||
|       "background-repeat", | ||||
|       "background-attachment", | ||||
|       "background-position", | ||||
|       "background-position-x", | ||||
|       "background-position-y", | ||||
|       "-webkit-background-clip", | ||||
|       "-moz-background-clip", | ||||
|       "background-clip", | ||||
|       "background-origin", | ||||
|       "-webkit-background-size", | ||||
|       "-moz-background-size", | ||||
|       "-o-background-size", | ||||
|       "background-size", | ||||
|       "border", | ||||
|       "border-color", | ||||
|       "border-style", | ||||
|       "border-width", | ||||
|       "border-top", | ||||
|       "border-top-color", | ||||
|       "border-top-style", | ||||
|       "border-top-width", | ||||
|       "border-right", | ||||
|       "border-right-color", | ||||
|       "border-right-style", | ||||
|       "border-right-width", | ||||
|       "border-bottom", | ||||
|       "border-bottom-color", | ||||
|       "border-bottom-style", | ||||
|       "border-bottom-width", | ||||
|       "border-left", | ||||
|       "border-left-color", | ||||
|       "border-left-style", | ||||
|       "border-left-width", | ||||
|       "border-radius", | ||||
|       "border-top-left-radius", | ||||
|       "border-top-right-radius", | ||||
|       "border-bottom-right-radius", | ||||
|       "border-bottom-left-radius", | ||||
|       "-webkit-border-image", | ||||
|       "-moz-border-image", | ||||
|       "-o-border-image", | ||||
|       "border-image", | ||||
|       "-webkit-border-image-source", | ||||
|       "-moz-border-image-source", | ||||
|       "-o-border-image-source", | ||||
|       "border-image-source", | ||||
|       "-webkit-border-image-slice", | ||||
|       "-moz-border-image-slice", | ||||
|       "-o-border-image-slice", | ||||
|       "border-image-slice", | ||||
|       "-webkit-border-image-width", | ||||
|       "-moz-border-image-width", | ||||
|       "-o-border-image-width", | ||||
|       "border-image-width", | ||||
|       "-webkit-border-image-outset", | ||||
|       "-moz-border-image-outset", | ||||
|       "-o-border-image-outset", | ||||
|       "border-image-outset", | ||||
|       "-webkit-border-image-repeat", | ||||
|       "-moz-border-image-repeat", | ||||
|       "-o-border-image-repeat", | ||||
|       "border-image-repeat", | ||||
|       "outline", | ||||
|       "outline-width", | ||||
|       "outline-style", | ||||
|       "outline-color", | ||||
|       "outline-offset", | ||||
|       "-webkit-box-shadow", | ||||
|       "-moz-box-shadow", | ||||
|       "box-shadow", | ||||
|       "filter:progid:DXImageTransform.Microsoft.Alpha(Opacity", | ||||
|       "-ms-filter:\\'progid:DXImageTransform.Microsoft.Alpha", | ||||
|       "opacity", | ||||
|       "-ms-interpolation-mode", | ||||
|       "-webkit-transition", | ||||
|       "-moz-transition", | ||||
|       "-ms-transition", | ||||
|       "-o-transition", | ||||
|       "transition", | ||||
|       "-webkit-transition-delay", | ||||
|       "-moz-transition-delay", | ||||
|       "-ms-transition-delay", | ||||
|       "-o-transition-delay", | ||||
|       "transition-delay", | ||||
|       "-webkit-transition-timing-function", | ||||
|       "-moz-transition-timing-function", | ||||
|       "-ms-transition-timing-function", | ||||
|       "-o-transition-timing-function", | ||||
|       "transition-timing-function", | ||||
|       "-webkit-transition-duration", | ||||
|       "-moz-transition-duration", | ||||
|       "-ms-transition-duration", | ||||
|       "-o-transition-duration", | ||||
|       "transition-duration", | ||||
|       "-webkit-transition-property", | ||||
|       "-moz-transition-property", | ||||
|       "-ms-transition-property", | ||||
|       "-o-transition-property", | ||||
|       "transition-property", | ||||
|       "-webkit-transform", | ||||
|       "-moz-transform", | ||||
|       "-ms-transform", | ||||
|       "-o-transform", | ||||
|       "transform", | ||||
|       "-webkit-transform-origin", | ||||
|       "-moz-transform-origin", | ||||
|       "-ms-transform-origin", | ||||
|       "-o-transform-origin", | ||||
|       "transform-origin", | ||||
|       "-webkit-animation", | ||||
|       "-moz-animation", | ||||
|       "-ms-animation", | ||||
|       "-o-animation", | ||||
|       "animation", | ||||
|       "-webkit-animation-name", | ||||
|       "-moz-animation-name", | ||||
|       "-ms-animation-name", | ||||
|       "-o-animation-name", | ||||
|       "animation-name", | ||||
|       "-webkit-animation-duration", | ||||
|       "-moz-animation-duration", | ||||
|       "-ms-animation-duration", | ||||
|       "-o-animation-duration", | ||||
|       "animation-duration", | ||||
|       "-webkit-animation-play-state", | ||||
|       "-moz-animation-play-state", | ||||
|       "-ms-animation-play-state", | ||||
|       "-o-animation-play-state", | ||||
|       "animation-play-state", | ||||
|       "-webkit-animation-timing-function", | ||||
|       "-moz-animation-timing-function", | ||||
|       "-ms-animation-timing-function", | ||||
|       "-o-animation-timing-function", | ||||
|       "animation-timing-function", | ||||
|       "-webkit-animation-delay", | ||||
|       "-moz-animation-delay", | ||||
|       "-ms-animation-delay", | ||||
|       "-o-animation-delay", | ||||
|       "animation-delay", | ||||
|       "-webkit-animation-iteration-count", | ||||
|       "-moz-animation-iteration-count", | ||||
|       "-ms-animation-iteration-count", | ||||
|       "-o-animation-iteration-count", | ||||
|       "animation-iteration-count", | ||||
|       "-webkit-animation-direction", | ||||
|       "-moz-animation-direction", | ||||
|       "-ms-animation-direction", | ||||
|       "-o-animation-direction", | ||||
|       "animation-direction" | ||||
|     ] | ||||
|   ] | ||||
| } | ||||
| @ -1,19 +0,0 @@ | ||||
| { | ||||
|   "adjoining-classes": false, | ||||
|   "box-sizing": false, | ||||
|   "box-model": false, | ||||
|   "compatible-vendor-prefixes": false, | ||||
|   "floats": false, | ||||
|   "font-sizes": false, | ||||
|   "gradients": false, | ||||
|   "important": false, | ||||
|   "known-properties": false, | ||||
|   "outline-none": false, | ||||
|   "qualified-headings": false, | ||||
|   "regex-selectors": false, | ||||
|   "shorthand": false, | ||||
|   "text-indent": false, | ||||
|   "unique-headings": false, | ||||
|   "universal-selector": false, | ||||
|   "unqualified-attributes": false | ||||
| } | ||||
| @ -1,68 +0,0 @@ | ||||
| // | ||||
| // Alerts | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Base styles | ||||
| // ------------------------- | ||||
| 
 | ||||
| .alert { | ||||
|   padding: @alert-padding; | ||||
|   margin-bottom: @line-height-computed; | ||||
|   border: 1px solid transparent; | ||||
|   border-radius: @alert-border-radius; | ||||
| 
 | ||||
|   // Headings for larger alerts | ||||
|   h4 { | ||||
|     margin-top: 0; | ||||
|     // Specified for the h4 to prevent conflicts of changing @headings-color | ||||
|     color: inherit; | ||||
|   } | ||||
|   // Provide class for links that match alerts | ||||
|   .alert-link { | ||||
|     font-weight: @alert-link-font-weight; | ||||
|   } | ||||
| 
 | ||||
|   // Improve alignment and spacing of inner content | ||||
|   > p, | ||||
|   > ul { | ||||
|     margin-bottom: 0; | ||||
|   } | ||||
|   > p + p { | ||||
|     margin-top: 5px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Dismissible alerts | ||||
| // | ||||
| // Expand the right padding and account for the close button's positioning. | ||||
| 
 | ||||
| .alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0. | ||||
| .alert-dismissible { | ||||
|   padding-right: (@alert-padding + 20); | ||||
| 
 | ||||
|   // Adjust close link position | ||||
|   .close { | ||||
|     position: relative; | ||||
|     top: -2px; | ||||
|     right: -21px; | ||||
|     color: inherit; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Alternate styles | ||||
| // | ||||
| // Generate contextual modifier classes for colorizing the alert. | ||||
| 
 | ||||
| .alert-success { | ||||
|   .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text); | ||||
| } | ||||
| .alert-info { | ||||
|   .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text); | ||||
| } | ||||
| .alert-warning { | ||||
|   .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text); | ||||
| } | ||||
| .alert-danger { | ||||
|   .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text); | ||||
| } | ||||
| @ -1,55 +0,0 @@ | ||||
| // | ||||
| // Badges | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Base class | ||||
| .badge { | ||||
|   display: inline-block; | ||||
|   min-width: 10px; | ||||
|   padding: 3px 7px; | ||||
|   font-size: @font-size-small; | ||||
|   font-weight: @badge-font-weight; | ||||
|   color: @badge-color; | ||||
|   line-height: @badge-line-height; | ||||
|   vertical-align: baseline; | ||||
|   white-space: nowrap; | ||||
|   text-align: center; | ||||
|   background-color: @badge-bg; | ||||
|   border-radius: @badge-border-radius; | ||||
| 
 | ||||
|   // Empty badges collapse automatically (not available in IE8) | ||||
|   &:empty { | ||||
|     display: none; | ||||
|   } | ||||
| 
 | ||||
|   // Quick fix for badges in buttons | ||||
|   .btn & { | ||||
|     position: relative; | ||||
|     top: -1px; | ||||
|   } | ||||
|   .btn-xs & { | ||||
|     top: 0; | ||||
|     padding: 1px 5px; | ||||
|   } | ||||
| 
 | ||||
|   // Hover state, but only for links | ||||
|   a& { | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       color: @badge-link-hover-color; | ||||
|       text-decoration: none; | ||||
|       cursor: pointer; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Account for badges in navs | ||||
|   a.list-group-item.active > &, | ||||
|   .nav-pills > .active > a > & { | ||||
|     color: @badge-active-color; | ||||
|     background-color: @badge-active-bg; | ||||
|   } | ||||
|   .nav-pills > li > a > & { | ||||
|     margin-left: 3px; | ||||
|   } | ||||
| } | ||||
							
								
								
									
										53
									
								
								searx/static/less/bootstrap/bootstrap.less
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										53
									
								
								searx/static/less/bootstrap/bootstrap.less
									
									
									
									
										vendored
									
									
								
							| @ -1,53 +0,0 @@ | ||||
| // Core variables and mixins | ||||
| @import "variables.less"; | ||||
| @import "mixins.less"; | ||||
| 
 | ||||
| // Reset and dependencies | ||||
| @import "normalize.less"; | ||||
| @import "print.less"; | ||||
| @import "glyphicons.less"; | ||||
| 
 | ||||
| // Core CSS | ||||
| @import "scaffolding.less"; | ||||
| @import "type.less"; | ||||
| @import "code.less"; | ||||
| @import "grid.less"; | ||||
| @import "tables.less"; | ||||
| @import "forms.less"; | ||||
| @import "buttons.less"; | ||||
| 
 | ||||
| // Components | ||||
| @import "component-animations.less"; | ||||
| @import "dropdowns.less"; | ||||
| @import "button-groups.less"; | ||||
| @import "input-groups.less"; | ||||
| @import "navs.less"; | ||||
| @import "navbar.less"; | ||||
| @import "breadcrumbs.less"; | ||||
| @import "pagination.less"; | ||||
| @import "pager.less"; | ||||
| @import "labels.less"; | ||||
| @import "badges.less"; | ||||
| @import "jumbotron.less"; | ||||
| @import "thumbnails.less"; | ||||
| @import "alerts.less"; | ||||
| @import "progress-bars.less"; | ||||
| @import "media.less"; | ||||
| @import "list-group.less"; | ||||
| @import "panels.less"; | ||||
| @import "responsive-embed.less"; | ||||
| @import "wells.less"; | ||||
| @import "close.less"; | ||||
| 
 | ||||
| // Components w/ JavaScript | ||||
| @import "modals.less"; | ||||
| @import "tooltip.less"; | ||||
| @import "popovers.less"; | ||||
| @import "carousel.less"; | ||||
| 
 | ||||
| // Utility classes | ||||
| @import "utilities.less"; | ||||
| @import "responsive-utilities.less"; | ||||
| 
 | ||||
| // own additions | ||||
| @import "typeahead.less"; | ||||
| @ -1,26 +0,0 @@ | ||||
| // | ||||
| // Breadcrumbs | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| .breadcrumb { | ||||
|   padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal; | ||||
|   margin-bottom: @line-height-computed; | ||||
|   list-style: none; | ||||
|   background-color: @breadcrumb-bg; | ||||
|   border-radius: @border-radius-base; | ||||
| 
 | ||||
|   > li { | ||||
|     display: inline-block; | ||||
| 
 | ||||
|     + li:before { | ||||
|       content: "@{breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space | ||||
|       padding: 0 5px; | ||||
|       color: @breadcrumb-color; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   > .active { | ||||
|     color: @breadcrumb-active-color; | ||||
|   } | ||||
| } | ||||
| @ -1,240 +0,0 @@ | ||||
| // | ||||
| // Button groups | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Make the div behave like a button | ||||
| .btn-group, | ||||
| .btn-group-vertical { | ||||
|   position: relative; | ||||
|   display: inline-block; | ||||
|   vertical-align: middle; // match .btn alignment given font-size hack above | ||||
|   > .btn { | ||||
|     position: relative; | ||||
|     float: left; | ||||
|     // Bring the "active" button to the front | ||||
|     &:hover, | ||||
|     &:focus, | ||||
|     &:active, | ||||
|     &.active { | ||||
|       z-index: 2; | ||||
|     } | ||||
|     &:focus { | ||||
|       // Remove focus outline when dropdown JS adds it after closing the menu | ||||
|       outline: 0; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Prevent double borders when buttons are next to each other | ||||
| .btn-group { | ||||
|   .btn + .btn, | ||||
|   .btn + .btn-group, | ||||
|   .btn-group + .btn, | ||||
|   .btn-group + .btn-group { | ||||
|     margin-left: -1px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Optional: Group multiple button groups together for a toolbar | ||||
| .btn-toolbar { | ||||
|   margin-left: -5px; // Offset the first child's margin | ||||
|   &:extend(.clearfix all); | ||||
| 
 | ||||
|   .btn-group, | ||||
|   .input-group { | ||||
|     float: left; | ||||
|   } | ||||
|   > .btn, | ||||
|   > .btn-group, | ||||
|   > .input-group { | ||||
|     margin-left: 5px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { | ||||
|   border-radius: 0; | ||||
| } | ||||
| 
 | ||||
| // Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match | ||||
| .btn-group > .btn:first-child { | ||||
|   margin-left: 0; | ||||
|   &:not(:last-child):not(.dropdown-toggle) { | ||||
|     .border-right-radius(0); | ||||
|   } | ||||
| } | ||||
| // Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it | ||||
| .btn-group > .btn:last-child:not(:first-child), | ||||
| .btn-group > .dropdown-toggle:not(:first-child) { | ||||
|   .border-left-radius(0); | ||||
| } | ||||
| 
 | ||||
| // Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group) | ||||
| .btn-group > .btn-group { | ||||
|   float: left; | ||||
| } | ||||
| .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { | ||||
|   border-radius: 0; | ||||
| } | ||||
| .btn-group > .btn-group:first-child { | ||||
|   > .btn:last-child, | ||||
|   > .dropdown-toggle { | ||||
|     .border-right-radius(0); | ||||
|   } | ||||
| } | ||||
| .btn-group > .btn-group:last-child > .btn:first-child { | ||||
|   .border-left-radius(0); | ||||
| } | ||||
| 
 | ||||
| // On active and open, don't show outline | ||||
| .btn-group .dropdown-toggle:active, | ||||
| .btn-group.open .dropdown-toggle { | ||||
|   outline: 0; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Sizing | ||||
| // | ||||
| // Remix the default button sizing classes into new ones for easier manipulation. | ||||
| 
 | ||||
| .btn-group-xs > .btn { &:extend(.btn-xs); } | ||||
| .btn-group-sm > .btn { &:extend(.btn-sm); } | ||||
| .btn-group-lg > .btn { &:extend(.btn-lg); } | ||||
| 
 | ||||
| 
 | ||||
| // Split button dropdowns | ||||
| // ---------------------- | ||||
| 
 | ||||
| // Give the line between buttons some depth | ||||
| .btn-group > .btn + .dropdown-toggle { | ||||
|   padding-left: 8px; | ||||
|   padding-right: 8px; | ||||
| } | ||||
| .btn-group > .btn-lg + .dropdown-toggle { | ||||
|   padding-left: 12px; | ||||
|   padding-right: 12px; | ||||
| } | ||||
| 
 | ||||
| // The clickable button for toggling the menu | ||||
| // Remove the gradient and set the same inset shadow as the :active state | ||||
| .btn-group.open .dropdown-toggle { | ||||
|   .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); | ||||
| 
 | ||||
|   // Show no shadow for `.btn-link` since it has no other button styles. | ||||
|   &.btn-link { | ||||
|     .box-shadow(none); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Reposition the caret | ||||
| .btn .caret { | ||||
|   margin-left: 0; | ||||
| } | ||||
| // Carets in other button sizes | ||||
| .btn-lg .caret { | ||||
|   border-width: @caret-width-large @caret-width-large 0; | ||||
|   border-bottom-width: 0; | ||||
| } | ||||
| // Upside down carets for .dropup | ||||
| .dropup .btn-lg .caret { | ||||
|   border-width: 0 @caret-width-large @caret-width-large; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Vertical button groups | ||||
| // ---------------------- | ||||
| 
 | ||||
| .btn-group-vertical { | ||||
|   > .btn, | ||||
|   > .btn-group, | ||||
|   > .btn-group > .btn { | ||||
|     display: block; | ||||
|     float: none; | ||||
|     width: 100%; | ||||
|     max-width: 100%; | ||||
|   } | ||||
| 
 | ||||
|   // Clear floats so dropdown menus can be properly placed | ||||
|   > .btn-group { | ||||
|     &:extend(.clearfix all); | ||||
|     > .btn { | ||||
|       float: none; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   > .btn + .btn, | ||||
|   > .btn + .btn-group, | ||||
|   > .btn-group + .btn, | ||||
|   > .btn-group + .btn-group { | ||||
|     margin-top: -1px; | ||||
|     margin-left: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .btn-group-vertical > .btn { | ||||
|   &:not(:first-child):not(:last-child) { | ||||
|     border-radius: 0; | ||||
|   } | ||||
|   &:first-child:not(:last-child) { | ||||
|     border-top-right-radius: @border-radius-base; | ||||
|     .border-bottom-radius(0); | ||||
|   } | ||||
|   &:last-child:not(:first-child) { | ||||
|     border-bottom-left-radius: @border-radius-base; | ||||
|     .border-top-radius(0); | ||||
|   } | ||||
| } | ||||
| .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { | ||||
|   border-radius: 0; | ||||
| } | ||||
| .btn-group-vertical > .btn-group:first-child:not(:last-child) { | ||||
|   > .btn:last-child, | ||||
|   > .dropdown-toggle { | ||||
|     .border-bottom-radius(0); | ||||
|   } | ||||
| } | ||||
| .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { | ||||
|   .border-top-radius(0); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // Justified button groups | ||||
| // ---------------------- | ||||
| 
 | ||||
| .btn-group-justified { | ||||
|   display: table; | ||||
|   width: 100%; | ||||
|   table-layout: fixed; | ||||
|   border-collapse: separate; | ||||
|   > .btn, | ||||
|   > .btn-group { | ||||
|     float: none; | ||||
|     display: table-cell; | ||||
|     width: 1%; | ||||
|   } | ||||
|   > .btn-group .btn { | ||||
|     width: 100%; | ||||
|   } | ||||
| 
 | ||||
|   > .btn-group .dropdown-menu { | ||||
|     left: auto; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Checkbox and radio options | ||||
| // | ||||
| // In order to support the browser's form validation feedback, powered by the | ||||
| // `required` attribute, we have to "hide" the inputs via `opacity`. We cannot | ||||
| // use `display: none;` or `visibility: hidden;` as that also hides the popover. | ||||
| // This way, we ensure a DOM element is visible to position the popover from. | ||||
| // | ||||
| // See https://github.com/twbs/bootstrap/pull/12794 for more. | ||||
| 
 | ||||
| [data-toggle="buttons"] > .btn > input[type="radio"], | ||||
| [data-toggle="buttons"] > .btn > input[type="checkbox"] { | ||||
|   position: absolute; | ||||
|   z-index: -1; | ||||
|   .opacity(0); | ||||
| } | ||||
| @ -1,157 +0,0 @@ | ||||
| // | ||||
| // Buttons | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Base styles | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .btn { | ||||
|   display: inline-block; | ||||
|   margin-bottom: 0; // For input.btn | ||||
|   font-weight: @btn-font-weight; | ||||
|   text-align: center; | ||||
|   vertical-align: middle; | ||||
|   cursor: pointer; | ||||
|   background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 | ||||
|   border: 1px solid transparent; | ||||
|   white-space: nowrap; | ||||
|   .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base); | ||||
|   .user-select(none); | ||||
| 
 | ||||
|   &, | ||||
|   &:active, | ||||
|   &.active { | ||||
|     &:focus { | ||||
|       .tab-focus(); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     color: @btn-default-color; | ||||
|     text-decoration: none; | ||||
|   } | ||||
| 
 | ||||
|   &:active, | ||||
|   &.active { | ||||
|     outline: 0; | ||||
|     background-image: none; | ||||
|     .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); | ||||
|   } | ||||
| 
 | ||||
|   &.disabled, | ||||
|   &[disabled], | ||||
|   fieldset[disabled] & { | ||||
|     cursor: not-allowed; | ||||
|     pointer-events: none; // Future-proof disabling of clicks | ||||
|     .opacity(.65); | ||||
|     .box-shadow(none); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Alternate buttons | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .btn-default { | ||||
|   .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border); | ||||
| } | ||||
| .btn-primary { | ||||
|   .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border); | ||||
| } | ||||
| // Success appears as green | ||||
| .btn-success { | ||||
|   .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border); | ||||
| } | ||||
| // Info appears as blue-green | ||||
| .btn-info { | ||||
|   .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border); | ||||
| } | ||||
| // Warning appears as orange | ||||
| .btn-warning { | ||||
|   .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border); | ||||
| } | ||||
| // Danger and error appear as red | ||||
| .btn-danger { | ||||
|   .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Link buttons | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Make a button look and behave like a link | ||||
| .btn-link { | ||||
|   color: @link-color; | ||||
|   font-weight: normal; | ||||
|   cursor: pointer; | ||||
|   border-radius: 0; | ||||
| 
 | ||||
|   &, | ||||
|   &:active, | ||||
|   &[disabled], | ||||
|   fieldset[disabled] & { | ||||
|     background-color: transparent; | ||||
|     .box-shadow(none); | ||||
|   } | ||||
|   &, | ||||
|   &:hover, | ||||
|   &:focus, | ||||
|   &:active { | ||||
|     border-color: transparent; | ||||
|   } | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     color: @link-hover-color; | ||||
|     text-decoration: underline; | ||||
|     background-color: transparent; | ||||
|   } | ||||
|   &[disabled], | ||||
|   fieldset[disabled] & { | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       color: @btn-link-disabled-color; | ||||
|       text-decoration: none; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Button Sizes | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .btn-lg { | ||||
|   // line-height: ensure even-numbered height of button next to large input | ||||
|   .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); | ||||
| } | ||||
| .btn-sm { | ||||
|   // line-height: ensure proper height of button next to small input | ||||
|   .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); | ||||
| } | ||||
| .btn-xs { | ||||
|   .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Block button | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .btn-block { | ||||
|   display: block; | ||||
|   width: 100%; | ||||
| } | ||||
| 
 | ||||
| // Vertically space out multiple block buttons | ||||
| .btn-block + .btn-block { | ||||
|   margin-top: 5px; | ||||
| } | ||||
| 
 | ||||
| // Specificity overrides | ||||
| input[type="submit"], | ||||
| input[type="reset"], | ||||
| input[type="button"] { | ||||
|   &.btn-block { | ||||
|     width: 100%; | ||||
|   } | ||||
| } | ||||
| @ -1,243 +0,0 @@ | ||||
| // | ||||
| // Carousel | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Wrapper for the slide container and indicators | ||||
| .carousel { | ||||
|   position: relative; | ||||
| } | ||||
| 
 | ||||
| .carousel-inner { | ||||
|   position: relative; | ||||
|   overflow: hidden; | ||||
|   width: 100%; | ||||
| 
 | ||||
|   > .item { | ||||
|     display: none; | ||||
|     position: relative; | ||||
|     .transition(.6s ease-in-out left); | ||||
| 
 | ||||
|     // Account for jankitude on images | ||||
|     > img, | ||||
|     > a > img { | ||||
|       &:extend(.img-responsive); | ||||
|       line-height: 1; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   > .active, | ||||
|   > .next, | ||||
|   > .prev { | ||||
|     display: block; | ||||
|   } | ||||
| 
 | ||||
|   > .active { | ||||
|     left: 0; | ||||
|   } | ||||
| 
 | ||||
|   > .next, | ||||
|   > .prev { | ||||
|     position: absolute; | ||||
|     top: 0; | ||||
|     width: 100%; | ||||
|   } | ||||
| 
 | ||||
|   > .next { | ||||
|     left: 100%; | ||||
|   } | ||||
|   > .prev { | ||||
|     left: -100%; | ||||
|   } | ||||
|   > .next.left, | ||||
|   > .prev.right { | ||||
|     left: 0; | ||||
|   } | ||||
| 
 | ||||
|   > .active.left { | ||||
|     left: -100%; | ||||
|   } | ||||
|   > .active.right { | ||||
|     left: 100%; | ||||
|   } | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| // Left/right controls for nav | ||||
| // --------------------------- | ||||
| 
 | ||||
| .carousel-control { | ||||
|   position: absolute; | ||||
|   top: 0; | ||||
|   left: 0; | ||||
|   bottom: 0; | ||||
|   width: @carousel-control-width; | ||||
|   .opacity(@carousel-control-opacity); | ||||
|   font-size: @carousel-control-font-size; | ||||
|   color: @carousel-control-color; | ||||
|   text-align: center; | ||||
|   text-shadow: @carousel-text-shadow; | ||||
|   // We can't have this transition here because WebKit cancels the carousel | ||||
|   // animation if you trip this while in the middle of another animation. | ||||
| 
 | ||||
|   // Set gradients for backgrounds | ||||
|   &.left { | ||||
|     #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001)); | ||||
|   } | ||||
|   &.right { | ||||
|     left: auto; | ||||
|     right: 0; | ||||
|     #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5)); | ||||
|   } | ||||
| 
 | ||||
|   // Hover/focus state | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     outline: 0; | ||||
|     color: @carousel-control-color; | ||||
|     text-decoration: none; | ||||
|     .opacity(.9); | ||||
|   } | ||||
| 
 | ||||
|   // Toggles | ||||
|   .icon-prev, | ||||
|   .icon-next, | ||||
|   .glyphicon-chevron-left, | ||||
|   .glyphicon-chevron-right { | ||||
|     position: absolute; | ||||
|     top: 50%; | ||||
|     z-index: 5; | ||||
|     display: inline-block; | ||||
|   } | ||||
|   .icon-prev, | ||||
|   .glyphicon-chevron-left { | ||||
|     left: 50%; | ||||
|     margin-left: -10px; | ||||
|   } | ||||
|   .icon-next, | ||||
|   .glyphicon-chevron-right { | ||||
|     right: 50%; | ||||
|     margin-right: -10px; | ||||
|   } | ||||
|   .icon-prev, | ||||
|   .icon-next { | ||||
|     width:  20px; | ||||
|     height: 20px; | ||||
|     margin-top: -10px; | ||||
|     font-family: serif; | ||||
|   } | ||||
| 
 | ||||
| 
 | ||||
|   .icon-prev { | ||||
|     &:before { | ||||
|       content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039) | ||||
|     } | ||||
|   } | ||||
|   .icon-next { | ||||
|     &:before { | ||||
|       content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A) | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Optional indicator pips | ||||
| // | ||||
| // Add an unordered list with the following class and add a list item for each | ||||
| // slide your carousel holds. | ||||
| 
 | ||||
| .carousel-indicators { | ||||
|   position: absolute; | ||||
|   bottom: 10px; | ||||
|   left: 50%; | ||||
|   z-index: 15; | ||||
|   width: 60%; | ||||
|   margin-left: -30%; | ||||
|   padding-left: 0; | ||||
|   list-style: none; | ||||
|   text-align: center; | ||||
| 
 | ||||
|   li { | ||||
|     display: inline-block; | ||||
|     width:  10px; | ||||
|     height: 10px; | ||||
|     margin: 1px; | ||||
|     text-indent: -999px; | ||||
|     border: 1px solid @carousel-indicator-border-color; | ||||
|     border-radius: 10px; | ||||
|     cursor: pointer; | ||||
| 
 | ||||
|     // IE8-9 hack for event handling | ||||
|     // | ||||
|     // Internet Explorer 8-9 does not support clicks on elements without a set | ||||
|     // `background-color`. We cannot use `filter` since that's not viewed as a | ||||
|     // background color by the browser. Thus, a hack is needed. | ||||
|     // | ||||
|     // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we | ||||
|     // set alpha transparency for the best results possible. | ||||
|     background-color: #000 \9; // IE8 | ||||
|     background-color: rgba(0,0,0,0); // IE9 | ||||
|   } | ||||
|   .active { | ||||
|     margin: 0; | ||||
|     width:  12px; | ||||
|     height: 12px; | ||||
|     background-color: @carousel-indicator-active-bg; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Optional captions | ||||
| // ----------------------------- | ||||
| // Hidden by default for smaller viewports | ||||
| .carousel-caption { | ||||
|   position: absolute; | ||||
|   left: 15%; | ||||
|   right: 15%; | ||||
|   bottom: 20px; | ||||
|   z-index: 10; | ||||
|   padding-top: 20px; | ||||
|   padding-bottom: 20px; | ||||
|   color: @carousel-caption-color; | ||||
|   text-align: center; | ||||
|   text-shadow: @carousel-text-shadow; | ||||
|   & .btn { | ||||
|     text-shadow: none; // No shadow for button elements in carousel-caption | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Scale up controls for tablets and up | ||||
| @media screen and (min-width: @screen-sm-min) { | ||||
| 
 | ||||
|   // Scale up the controls a smidge | ||||
|   .carousel-control { | ||||
|     .glyphicon-chevron-left, | ||||
|     .glyphicon-chevron-right, | ||||
|     .icon-prev, | ||||
|     .icon-next { | ||||
|       width: 30px; | ||||
|       height: 30px; | ||||
|       margin-top: -15px; | ||||
|       font-size: 30px; | ||||
|     } | ||||
|     .glyphicon-chevron-left, | ||||
|     .icon-prev { | ||||
|       margin-left: -15px; | ||||
|     } | ||||
|     .glyphicon-chevron-right, | ||||
|     .icon-next { | ||||
|       margin-right: -15px; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Show and left align the captions | ||||
|   .carousel-caption { | ||||
|     left: 20%; | ||||
|     right: 20%; | ||||
|     padding-bottom: 30px; | ||||
|   } | ||||
| 
 | ||||
|   // Move up the indicators | ||||
|   .carousel-indicators { | ||||
|     bottom: 20px; | ||||
|   } | ||||
| } | ||||
| @ -1,33 +0,0 @@ | ||||
| // | ||||
| // Close icons | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| .close { | ||||
|   float: right; | ||||
|   font-size: (@font-size-base * 1.5); | ||||
|   font-weight: @close-font-weight; | ||||
|   line-height: 1; | ||||
|   color: @close-color; | ||||
|   text-shadow: @close-text-shadow; | ||||
|   .opacity(.2); | ||||
| 
 | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     color: @close-color; | ||||
|     text-decoration: none; | ||||
|     cursor: pointer; | ||||
|     .opacity(.5); | ||||
|   } | ||||
| 
 | ||||
|   // Additional properties for button version | ||||
|   // iOS requires the button element instead of an anchor tag. | ||||
|   // If you want the anchor version, it requires `href="#"`. | ||||
|   button& { | ||||
|     padding: 0; | ||||
|     cursor: pointer; | ||||
|     background: transparent; | ||||
|     border: 0; | ||||
|     -webkit-appearance: none; | ||||
|   } | ||||
| } | ||||
| @ -1,68 +0,0 @@ | ||||
| // | ||||
| // Code (inline and block) | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Inline and block code styles | ||||
| code, | ||||
| kbd, | ||||
| pre, | ||||
| samp { | ||||
|   font-family: @font-family-monospace; | ||||
| } | ||||
| 
 | ||||
| // Inline code | ||||
| code { | ||||
|   padding: 2px 4px; | ||||
|   font-size: 90%; | ||||
|   color: @code-color; | ||||
|   background-color: @code-bg; | ||||
|   border-radius: @border-radius-base; | ||||
| } | ||||
| 
 | ||||
| // User input typically entered via keyboard | ||||
| kbd { | ||||
|   padding: 2px 4px; | ||||
|   font-size: 90%; | ||||
|   color: @kbd-color; | ||||
|   background-color: @kbd-bg; | ||||
|   border-radius: @border-radius-small; | ||||
|   box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); | ||||
| 
 | ||||
|   kbd { | ||||
|     padding: 0; | ||||
|     font-size: 100%; | ||||
|     box-shadow: none; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Blocks of code | ||||
| pre { | ||||
|   display: block; | ||||
|   padding: ((@line-height-computed - 1) / 2); | ||||
|   margin: 0 0 (@line-height-computed / 2); | ||||
|   font-size: (@font-size-base - 1); // 14px to 13px | ||||
|   line-height: @line-height-base; | ||||
|   word-break: break-all; | ||||
|   word-wrap: break-word; | ||||
|   color: @pre-color; | ||||
|   background-color: @pre-bg; | ||||
|   border: 1px solid @pre-border-color; | ||||
|   border-radius: @border-radius-base; | ||||
| 
 | ||||
|   // Account for some code outputs that place code tags in pre tags | ||||
|   code { | ||||
|     padding: 0; | ||||
|     font-size: inherit; | ||||
|     color: inherit; | ||||
|     white-space: pre-wrap; | ||||
|     background-color: transparent; | ||||
|     border-radius: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Enable scrollable blocks of code | ||||
| .pre-scrollable { | ||||
|   max-height: @pre-scrollable-max-height; | ||||
|   overflow-y: scroll; | ||||
| } | ||||
| @ -1,31 +0,0 @@ | ||||
| // | ||||
| // Component animations | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Heads up! | ||||
| // | ||||
| // We don't use the `.opacity()` mixin here since it causes a bug with text | ||||
| // fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. | ||||
| 
 | ||||
| .fade { | ||||
|   opacity: 0; | ||||
|   .transition(opacity .15s linear); | ||||
|   &.in { | ||||
|     opacity: 1; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .collapse { | ||||
|   display: none; | ||||
| 
 | ||||
|   &.in      { display: block; } | ||||
|   tr&.in    { display: table-row; } | ||||
|   tbody&.in { display: table-row-group; } | ||||
| } | ||||
| 
 | ||||
| .collapsing { | ||||
|   position: relative; | ||||
|   height: 0; | ||||
|   overflow: hidden; | ||||
|   .transition(height .35s ease); | ||||
| } | ||||
| @ -1,215 +0,0 @@ | ||||
| // | ||||
| // Dropdown menus | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Dropdown arrow/caret | ||||
| .caret { | ||||
|   display: inline-block; | ||||
|   width: 0; | ||||
|   height: 0; | ||||
|   margin-left: 2px; | ||||
|   vertical-align: middle; | ||||
|   border-top:   @caret-width-base solid; | ||||
|   border-right: @caret-width-base solid transparent; | ||||
|   border-left:  @caret-width-base solid transparent; | ||||
| } | ||||
| 
 | ||||
| // The dropdown wrapper (div) | ||||
| .dropdown { | ||||
|   position: relative; | ||||
| } | ||||
| 
 | ||||
| // Prevent the focus on the dropdown toggle when closing dropdowns | ||||
| .dropdown-toggle:focus { | ||||
|   outline: 0; | ||||
| } | ||||
| 
 | ||||
| // The dropdown menu (ul) | ||||
| .dropdown-menu { | ||||
|   position: absolute; | ||||
|   top: 100%; | ||||
|   left: 0; | ||||
|   z-index: @zindex-dropdown; | ||||
|   display: none; // none by default, but block on "open" of the menu | ||||
|   float: left; | ||||
|   min-width: 160px; | ||||
|   padding: 5px 0; | ||||
|   margin: 2px 0 0; // override default ul | ||||
|   list-style: none; | ||||
|   font-size: @font-size-base; | ||||
|   text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) | ||||
|   background-color: @dropdown-bg; | ||||
|   border: 1px solid @dropdown-fallback-border; // IE8 fallback | ||||
|   border: 1px solid @dropdown-border; | ||||
|   border-radius: @border-radius-base; | ||||
|   .box-shadow(0 6px 12px rgba(0,0,0,.175)); | ||||
|   background-clip: padding-box; | ||||
| 
 | ||||
|   // Aligns the dropdown menu to right | ||||
|   // | ||||
|   // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]` | ||||
|   &.pull-right { | ||||
|     right: 0; | ||||
|     left: auto; | ||||
|   } | ||||
| 
 | ||||
|   // Dividers (basically an hr) within the dropdown | ||||
|   .divider { | ||||
|     .nav-divider(@dropdown-divider-bg); | ||||
|   } | ||||
| 
 | ||||
|   // Links within the dropdown menu | ||||
|   > li > a { | ||||
|     display: block; | ||||
|     padding: 3px 20px; | ||||
|     clear: both; | ||||
|     font-weight: normal; | ||||
|     line-height: @line-height-base; | ||||
|     color: @dropdown-link-color; | ||||
|     white-space: nowrap; // prevent links from randomly breaking onto new lines | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Hover/Focus state | ||||
| .dropdown-menu > li > a { | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     text-decoration: none; | ||||
|     color: @dropdown-link-hover-color; | ||||
|     background-color: @dropdown-link-hover-bg; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Active state | ||||
| .dropdown-menu > .active > a { | ||||
|   &, | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     color: @dropdown-link-active-color; | ||||
|     text-decoration: none; | ||||
|     outline: 0; | ||||
|     background-color: @dropdown-link-active-bg; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Disabled state | ||||
| // | ||||
| // Gray out text and ensure the hover/focus state remains gray | ||||
| 
 | ||||
| .dropdown-menu > .disabled > a { | ||||
|   &, | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     color: @dropdown-link-disabled-color; | ||||
|   } | ||||
| } | ||||
| // Nuke hover/focus effects | ||||
| .dropdown-menu > .disabled > a { | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     text-decoration: none; | ||||
|     background-color: transparent; | ||||
|     background-image: none; // Remove CSS gradient | ||||
|     .reset-filter(); | ||||
|     cursor: not-allowed; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Open state for the dropdown | ||||
| .open { | ||||
|   // Show the menu | ||||
|   > .dropdown-menu { | ||||
|     display: block; | ||||
|   } | ||||
| 
 | ||||
|   // Remove the outline when :focus is triggered | ||||
|   > a { | ||||
|     outline: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Menu positioning | ||||
| // | ||||
| // Add extra class to `.dropdown-menu` to flip the alignment of the dropdown | ||||
| // menu with the parent. | ||||
| .dropdown-menu-right { | ||||
|   left: auto; // Reset the default from `.dropdown-menu` | ||||
|   right: 0; | ||||
| } | ||||
| // With v3, we enabled auto-flipping if you have a dropdown within a right | ||||
| // aligned nav component. To enable the undoing of that, we provide an override | ||||
| // to restore the default dropdown menu alignment. | ||||
| // | ||||
| // This is only for left-aligning a dropdown menu within a `.navbar-right` or | ||||
| // `.pull-right` nav component. | ||||
| .dropdown-menu-left { | ||||
|   left: 0; | ||||
|   right: auto; | ||||
| } | ||||
| 
 | ||||
| // Dropdown section headers | ||||
| .dropdown-header { | ||||
|   display: block; | ||||
|   padding: 3px 20px; | ||||
|   font-size: @font-size-small; | ||||
|   line-height: @line-height-base; | ||||
|   color: @dropdown-header-color; | ||||
|   white-space: nowrap; // as with > li > a | ||||
| } | ||||
| 
 | ||||
| // Backdrop to catch body clicks on mobile, etc. | ||||
| .dropdown-backdrop { | ||||
|   position: fixed; | ||||
|   left: 0; | ||||
|   right: 0; | ||||
|   bottom: 0; | ||||
|   top: 0; | ||||
|   z-index: (@zindex-dropdown - 10); | ||||
| } | ||||
| 
 | ||||
| // Right aligned dropdowns | ||||
| .pull-right > .dropdown-menu { | ||||
|   right: 0; | ||||
|   left: auto; | ||||
| } | ||||
| 
 | ||||
| // Allow for dropdowns to go bottom up (aka, dropup-menu) | ||||
| // | ||||
| // Just add .dropup after the standard .dropdown class and you're set, bro. | ||||
| // TODO: abstract this so that the navbar fixed styles are not placed here? | ||||
| 
 | ||||
| .dropup, | ||||
| .navbar-fixed-bottom .dropdown { | ||||
|   // Reverse the caret | ||||
|   .caret { | ||||
|     border-top: 0; | ||||
|     border-bottom: @caret-width-base solid; | ||||
|     content: ""; | ||||
|   } | ||||
|   // Different positioning for bottom up menu | ||||
|   .dropdown-menu { | ||||
|     top: auto; | ||||
|     bottom: 100%; | ||||
|     margin-bottom: 1px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Component alignment | ||||
| // | ||||
| // Reiterate per navbar.less and the modified component alignment there. | ||||
| 
 | ||||
| @media (min-width: @grid-float-breakpoint) { | ||||
|   .navbar-right { | ||||
|     .dropdown-menu { | ||||
|       .dropdown-menu-right(); | ||||
|     } | ||||
|     // Necessary for overrides of the default right aligned menu. | ||||
|     // Will remove come v4 in all likelihood. | ||||
|     .dropdown-menu-left { | ||||
|       .dropdown-menu-left(); | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| @ -1,540 +0,0 @@ | ||||
| // | ||||
| // Forms | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Normalize non-controls | ||||
| // | ||||
| // Restyle and baseline non-control form elements. | ||||
| 
 | ||||
| fieldset { | ||||
|   padding: 0; | ||||
|   margin: 0; | ||||
|   border: 0; | ||||
|   // Chrome and Firefox set a `min-width: min-content;` on fieldsets, | ||||
|   // so we reset that to ensure it behaves more like a standard block element. | ||||
|   // See https://github.com/twbs/bootstrap/issues/12359. | ||||
|   min-width: 0; | ||||
| } | ||||
| 
 | ||||
| legend { | ||||
|   display: block; | ||||
|   width: 100%; | ||||
|   padding: 0; | ||||
|   margin-bottom: @line-height-computed; | ||||
|   font-size: (@font-size-base * 1.5); | ||||
|   line-height: inherit; | ||||
|   color: @legend-color; | ||||
|   border: 0; | ||||
|   border-bottom: 1px solid @legend-border-color; | ||||
| } | ||||
| 
 | ||||
| label { | ||||
|   display: inline-block; | ||||
|   max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141) | ||||
|   margin-bottom: 5px; | ||||
|   font-weight: bold; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Normalize form controls | ||||
| // | ||||
| // While most of our form styles require extra classes, some basic normalization | ||||
| // is required to ensure optimum display with or without those classes to better | ||||
| // address browser inconsistencies. | ||||
| 
 | ||||
| // Override content-box in Normalize (* isn't specific enough) | ||||
| input[type="search"] { | ||||
|   .box-sizing(border-box); | ||||
| } | ||||
| 
 | ||||
| // Position radios and checkboxes better | ||||
| input[type="radio"], | ||||
| input[type="checkbox"] { | ||||
|   margin: 4px 0 0; | ||||
|   margin-top: 1px \9; // IE8-9 | ||||
|   line-height: normal; | ||||
| } | ||||
| 
 | ||||
| // Set the height of file controls to match text inputs | ||||
| input[type="file"] { | ||||
|   display: block; | ||||
| } | ||||
| 
 | ||||
| // Make range inputs behave like textual form controls | ||||
| input[type="range"] { | ||||
|   display: block; | ||||
|   width: 100%; | ||||
| } | ||||
| 
 | ||||
| // Make multiple select elements height not fixed | ||||
| select[multiple], | ||||
| select[size] { | ||||
|   height: auto; | ||||
| } | ||||
| 
 | ||||
| // Focus for file, radio, and checkbox | ||||
| input[type="file"]:focus, | ||||
| input[type="radio"]:focus, | ||||
| input[type="checkbox"]:focus { | ||||
|   .tab-focus(); | ||||
| } | ||||
| 
 | ||||
| // Adjust output element | ||||
| output { | ||||
|   display: block; | ||||
|   padding-top: (@padding-base-vertical + 1); | ||||
|   font-size: @font-size-base; | ||||
|   line-height: @line-height-base; | ||||
|   color: @input-color; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Common form controls | ||||
| // | ||||
| // Shared size and type resets for form controls. Apply `.form-control` to any | ||||
| // of the following form controls: | ||||
| // | ||||
| // select | ||||
| // textarea | ||||
| // input[type="text"] | ||||
| // input[type="password"] | ||||
| // input[type="datetime"] | ||||
| // input[type="datetime-local"] | ||||
| // input[type="date"] | ||||
| // input[type="month"] | ||||
| // input[type="time"] | ||||
| // input[type="week"] | ||||
| // input[type="number"] | ||||
| // input[type="email"] | ||||
| // input[type="url"] | ||||
| // input[type="search"] | ||||
| // input[type="tel"] | ||||
| // input[type="color"] | ||||
| 
 | ||||
| .form-control { | ||||
|   display: block; | ||||
|   width: 100%; | ||||
|   height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border) | ||||
|   padding: @padding-base-vertical @padding-base-horizontal; | ||||
|   font-size: @font-size-base; | ||||
|   line-height: @line-height-base; | ||||
|   color: @input-color; | ||||
|   background-color: @input-bg; | ||||
|   background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 | ||||
|   border: 1px solid @input-border; | ||||
|   border-radius: @input-border-radius; | ||||
|   .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); | ||||
|   .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s"); | ||||
| 
 | ||||
|   // Customize the `:focus` state to imitate native WebKit styles. | ||||
|   .form-control-focus(); | ||||
| 
 | ||||
|   // Placeholder | ||||
|   .placeholder(); | ||||
| 
 | ||||
|   // Disabled and read-only inputs | ||||
|   // | ||||
|   // HTML5 says that controls under a fieldset > legend:first-child won't be | ||||
|   // disabled if the fieldset is disabled. Due to implementation difficulty, we | ||||
|   // don't honor that edge case; we style them as disabled anyway. | ||||
|   &[disabled], | ||||
|   &[readonly], | ||||
|   fieldset[disabled] & { | ||||
|     cursor: not-allowed; | ||||
|     background-color: @input-bg-disabled; | ||||
|     opacity: 1; // iOS fix for unreadable disabled content | ||||
|   } | ||||
| 
 | ||||
|   // Reset height for `textarea`s | ||||
|   textarea& { | ||||
|     height: auto; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Search inputs in iOS | ||||
| // | ||||
| // This overrides the extra rounded corners on search inputs in iOS so that our | ||||
| // `.form-control` class can properly style them. Note that this cannot simply | ||||
| // be added to `.form-control` as it's not specific enough. For details, see | ||||
| // https://github.com/twbs/bootstrap/issues/11586. | ||||
| 
 | ||||
| input[type="search"] { | ||||
|   -webkit-appearance: none; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Special styles for iOS temporal inputs | ||||
| // | ||||
| // In Mobile Safari, setting `display: block` on temporal inputs causes the | ||||
| // text within the input to become vertically misaligned. | ||||
| // As a workaround, we set a pixel line-height that matches the | ||||
| // given height of the input. Since this fucks up everything else, we have to | ||||
| // appropriately reset it for Internet Explorer and the size variations. | ||||
| 
 | ||||
| input[type="date"], | ||||
| input[type="time"], | ||||
| input[type="datetime-local"], | ||||
| input[type="month"] { | ||||
|   line-height: @input-height-base; | ||||
|   // IE8+ misaligns the text within date inputs, so we reset | ||||
|   line-height: @line-height-base ~"\0"; | ||||
| 
 | ||||
|   &.input-sm { | ||||
|     line-height: @input-height-small; | ||||
|   } | ||||
|   &.input-lg { | ||||
|     line-height: @input-height-large; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Form groups | ||||
| // | ||||
| // Designed to help with the organization and spacing of vertical forms. For | ||||
| // horizontal forms, use the predefined grid classes. | ||||
| 
 | ||||
| .form-group { | ||||
|   margin-bottom: 15px; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Checkboxes and radios | ||||
| // | ||||
| // Indent the labels to position radios/checkboxes as hanging controls. | ||||
| 
 | ||||
| .radio, | ||||
| .checkbox { | ||||
|   position: relative; | ||||
|   display: block; | ||||
|   min-height: @line-height-computed; // clear the floating input if there is no label text | ||||
|   margin-top: 10px; | ||||
|   margin-bottom: 10px; | ||||
| 
 | ||||
|   label { | ||||
|     padding-left: 20px; | ||||
|     margin-bottom: 0; | ||||
|     font-weight: normal; | ||||
|     cursor: pointer; | ||||
|   } | ||||
| } | ||||
| .radio input[type="radio"], | ||||
| .radio-inline input[type="radio"], | ||||
| .checkbox input[type="checkbox"], | ||||
| .checkbox-inline input[type="checkbox"] { | ||||
|   position: absolute; | ||||
|   margin-left: -20px; | ||||
|   margin-top: 4px \9; | ||||
| } | ||||
| 
 | ||||
| .radio + .radio, | ||||
| .checkbox + .checkbox { | ||||
|   margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing | ||||
| } | ||||
| 
 | ||||
| // Radios and checkboxes on same line | ||||
| .radio-inline, | ||||
| .checkbox-inline { | ||||
|   display: inline-block; | ||||
|   padding-left: 20px; | ||||
|   margin-bottom: 0; | ||||
|   vertical-align: middle; | ||||
|   font-weight: normal; | ||||
|   cursor: pointer; | ||||
| } | ||||
| .radio-inline + .radio-inline, | ||||
| .checkbox-inline + .checkbox-inline { | ||||
|   margin-top: 0; | ||||
|   margin-left: 10px; // space out consecutive inline controls | ||||
| } | ||||
| 
 | ||||
| // Apply same disabled cursor tweak as for inputs | ||||
| // Some special care is needed because <label>s don't inherit their parent's `cursor`. | ||||
| // | ||||
| // Note: Neither radios nor checkboxes can be readonly. | ||||
| input[type="radio"], | ||||
| input[type="checkbox"] { | ||||
|   &[disabled], | ||||
|   &.disabled, | ||||
|   fieldset[disabled] & { | ||||
|     cursor: not-allowed; | ||||
|   } | ||||
| } | ||||
| // These classes are used directly on <label>s | ||||
| .radio-inline, | ||||
| .checkbox-inline { | ||||
|   &.disabled, | ||||
|   fieldset[disabled] & { | ||||
|     cursor: not-allowed; | ||||
|   } | ||||
| } | ||||
| // These classes are used on elements with <label> descendants | ||||
| .radio, | ||||
| .checkbox { | ||||
|   &.disabled, | ||||
|   fieldset[disabled] & { | ||||
|     label { | ||||
|       cursor: not-allowed; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Static form control text | ||||
| // | ||||
| // Apply class to a `p` element to make any string of text align with labels in | ||||
| // a horizontal form layout. | ||||
| 
 | ||||
| .form-control-static { | ||||
|   // Size it appropriately next to real form controls | ||||
|   padding-top: (@padding-base-vertical + 1); | ||||
|   padding-bottom: (@padding-base-vertical + 1); | ||||
|   // Remove default margin from `p` | ||||
|   margin-bottom: 0; | ||||
| 
 | ||||
|   &.input-lg, | ||||
|   &.input-sm { | ||||
|     padding-left: 0; | ||||
|     padding-right: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Form control sizing | ||||
| // | ||||
| // Build on `.form-control` with modifier classes to decrease or increase the | ||||
| // height and font-size of form controls. | ||||
| 
 | ||||
| .input-sm { | ||||
|   .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); | ||||
| } | ||||
| 
 | ||||
| .input-lg { | ||||
|   .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Form control feedback states | ||||
| // | ||||
| // Apply contextual and semantic states to individual form controls. | ||||
| 
 | ||||
| .has-feedback { | ||||
|   // Enable absolute positioning | ||||
|   position: relative; | ||||
| 
 | ||||
|   // Ensure icons don't overlap text | ||||
|   .form-control { | ||||
|     padding-right: (@input-height-base * 1.25); | ||||
|   } | ||||
| } | ||||
| // Feedback icon (requires .glyphicon classes) | ||||
| .form-control-feedback { | ||||
|   position: absolute; | ||||
|   top: (@line-height-computed + 5); // Height of the `label` and its margin | ||||
|   right: 0; | ||||
|   z-index: 2; // Ensure icon is above input groups | ||||
|   display: block; | ||||
|   width: @input-height-base; | ||||
|   height: @input-height-base; | ||||
|   line-height: @input-height-base; | ||||
|   text-align: center; | ||||
| } | ||||
| .input-lg + .form-control-feedback { | ||||
|   width: @input-height-large; | ||||
|   height: @input-height-large; | ||||
|   line-height: @input-height-large; | ||||
| } | ||||
| .input-sm + .form-control-feedback { | ||||
|   width: @input-height-small; | ||||
|   height: @input-height-small; | ||||
|   line-height: @input-height-small; | ||||
| } | ||||
| 
 | ||||
| // Feedback states | ||||
| .has-success { | ||||
|   .form-control-validation(@state-success-text; @state-success-text; @state-success-bg); | ||||
| } | ||||
| .has-warning { | ||||
|   .form-control-validation(@state-warning-text; @state-warning-text; @state-warning-bg); | ||||
| } | ||||
| .has-error { | ||||
|   .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Reposition feedback icon if label is hidden with "screenreader only" state | ||||
| .has-feedback label.sr-only ~ .form-control-feedback { | ||||
|   top: 0; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Help text | ||||
| // | ||||
| // Apply to any element you wish to create light text for placement immediately | ||||
| // below a form control. Use for general help, formatting, or instructional text. | ||||
| 
 | ||||
| .help-block { | ||||
|   display: block; // account for any element using help-block | ||||
|   margin-top: 5px; | ||||
|   margin-bottom: 10px; | ||||
|   color: lighten(@text-color, 25%); // lighten the text some for contrast | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // Inline forms | ||||
| // | ||||
| // Make forms appear inline(-block) by adding the `.form-inline` class. Inline | ||||
| // forms begin stacked on extra small (mobile) devices and then go inline when | ||||
| // viewports reach <768px. | ||||
| // | ||||
| // Requires wrapping inputs and labels with `.form-group` for proper display of | ||||
| // default HTML form controls and our custom form controls (e.g., input groups). | ||||
| // | ||||
| // Heads up! This is mixin-ed into `.navbar-form` in navbars.less. | ||||
| 
 | ||||
| .form-inline { | ||||
| 
 | ||||
|   // Kick in the inline | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     // Inline-block all the things for "inline" | ||||
|     .form-group { | ||||
|       display: inline-block; | ||||
|       margin-bottom: 0; | ||||
|       vertical-align: middle; | ||||
|     } | ||||
| 
 | ||||
|     // In navbar-form, allow folks to *not* use `.form-group` | ||||
|     .form-control { | ||||
|       display: inline-block; | ||||
|       width: auto; // Prevent labels from stacking above inputs in `.form-group` | ||||
|       vertical-align: middle; | ||||
|     } | ||||
| 
 | ||||
|     .input-group { | ||||
|       display: inline-table; | ||||
|       vertical-align: middle; | ||||
| 
 | ||||
|       .input-group-addon, | ||||
|       .input-group-btn, | ||||
|       .form-control { | ||||
|         width: auto; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     // Input groups need that 100% width though | ||||
|     .input-group > .form-control { | ||||
|       width: 100%; | ||||
|     } | ||||
| 
 | ||||
|     .control-label { | ||||
|       margin-bottom: 0; | ||||
|       vertical-align: middle; | ||||
|     } | ||||
| 
 | ||||
|     // Remove default margin on radios/checkboxes that were used for stacking, and | ||||
|     // then undo the floating of radios and checkboxes to match (which also avoids | ||||
|     // a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969). | ||||
|     .radio, | ||||
|     .checkbox { | ||||
|       display: inline-block; | ||||
|       margin-top: 0; | ||||
|       margin-bottom: 0; | ||||
|       vertical-align: middle; | ||||
| 
 | ||||
|       label { | ||||
|         padding-left: 0; | ||||
|       } | ||||
|     } | ||||
|     .radio input[type="radio"], | ||||
|     .checkbox input[type="checkbox"] { | ||||
|       position: relative; | ||||
|       margin-left: 0; | ||||
|     } | ||||
| 
 | ||||
|     // Validation states | ||||
|     // | ||||
|     // Reposition the icon because it's now within a grid column and columns have | ||||
|     // `position: relative;` on them. Also accounts for the grid gutter padding. | ||||
|     .has-feedback .form-control-feedback { | ||||
|       top: 0; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Horizontal forms | ||||
| // | ||||
| // Horizontal forms are built on grid classes and allow you to create forms with | ||||
| // labels on the left and inputs on the right. | ||||
| 
 | ||||
| .form-horizontal { | ||||
| 
 | ||||
|   // Consistent vertical alignment of radios and checkboxes | ||||
|   // | ||||
|   // Labels also get some reset styles, but that is scoped to a media query below. | ||||
|   .radio, | ||||
|   .checkbox, | ||||
|   .radio-inline, | ||||
|   .checkbox-inline { | ||||
|     margin-top: 0; | ||||
|     margin-bottom: 0; | ||||
|     padding-top: (@padding-base-vertical + 1); // Default padding plus a border | ||||
|   } | ||||
|   // Account for padding we're adding to ensure the alignment and of help text | ||||
|   // and other content below items | ||||
|   .radio, | ||||
|   .checkbox { | ||||
|     min-height: (@line-height-computed + (@padding-base-vertical + 1)); | ||||
|   } | ||||
| 
 | ||||
|   // Make form groups behave like rows | ||||
|   .form-group { | ||||
|     .make-row(); | ||||
|   } | ||||
| 
 | ||||
|   // Reset spacing and right align labels, but scope to media queries so that | ||||
|   // labels on narrow viewports stack the same as a default form example. | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     .control-label { | ||||
|       text-align: right; | ||||
|       margin-bottom: 0; | ||||
|       padding-top: (@padding-base-vertical + 1); // Default padding plus a border | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Validation states | ||||
|   // | ||||
|   // Reposition the icon because it's now within a grid column and columns have | ||||
|   // `position: relative;` on them. Also accounts for the grid gutter padding. | ||||
|   .has-feedback .form-control-feedback { | ||||
|     top: 0; | ||||
|     right: (@grid-gutter-width / 2); | ||||
|   } | ||||
| 
 | ||||
|   // Form group sizes | ||||
|   // | ||||
|   // Quick utility class for applying `.input-lg` and `.input-sm` styles to the | ||||
|   // inputs and labels within a `.form-group`. | ||||
|   .form-group-lg { | ||||
|     @media (min-width: @screen-sm-min) { | ||||
|       .control-label { | ||||
|         padding-top: ((@padding-large-vertical * @line-height-large) + 1); | ||||
|       } | ||||
|     } | ||||
|     .form-control { | ||||
|       &:extend(.input-lg); | ||||
|     } | ||||
|   } | ||||
|   .form-group-sm { | ||||
|     @media (min-width: @screen-sm-min) { | ||||
|       .control-label { | ||||
|         padding-top: (@padding-small-vertical + 1); | ||||
|       } | ||||
|     } | ||||
|     .form-control { | ||||
|       &:extend(.input-sm); | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,233 +0,0 @@ | ||||
| // | ||||
| // Glyphicons for Bootstrap | ||||
| // | ||||
| // Since icons are fonts, they can be placed anywhere text is placed and are | ||||
| // thus automatically sized to match the surrounding child. To use, create an | ||||
| // inline element with the appropriate classes, like so: | ||||
| // | ||||
| // <a href="#"><span class="glyphicon glyphicon-star"></span> Star</a> | ||||
| 
 | ||||
| // Import the fonts | ||||
| @font-face { | ||||
|   font-family: 'Glyphicons Halflings'; | ||||
|   src: url('@{icon-font-path}@{icon-font-name}.eot'); | ||||
|   src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'), | ||||
|        url('@{icon-font-path}@{icon-font-name}.woff') format('woff'), | ||||
|        url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'), | ||||
|        url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg'); | ||||
| } | ||||
| 
 | ||||
| // Catchall baseclass | ||||
| .glyphicon { | ||||
|   position: relative; | ||||
|   top: 1px; | ||||
|   display: inline-block; | ||||
|   font-family: 'Glyphicons Halflings'; | ||||
|   font-style: normal; | ||||
|   font-weight: normal; | ||||
|   line-height: 1; | ||||
|   -webkit-font-smoothing: antialiased; | ||||
|   -moz-osx-font-smoothing: grayscale; | ||||
| } | ||||
| 
 | ||||
| // Individual icons | ||||
| .glyphicon-asterisk               { &:before { content: "\2a"; } } | ||||
| .glyphicon-plus                   { &:before { content: "\2b"; } } | ||||
| .glyphicon-euro                   { &:before { content: "\20ac"; } } | ||||
| .glyphicon-minus                  { &:before { content: "\2212"; } } | ||||
| .glyphicon-cloud                  { &:before { content: "\2601"; } } | ||||
| .glyphicon-envelope               { &:before { content: "\2709"; } } | ||||
| .glyphicon-pencil                 { &:before { content: "\270f"; } } | ||||
| .glyphicon-glass                  { &:before { content: "\e001"; } } | ||||
| .glyphicon-music                  { &:before { content: "\e002"; } } | ||||
| .glyphicon-search                 { &:before { content: "\e003"; } } | ||||
| .glyphicon-heart                  { &:before { content: "\e005"; } } | ||||
| .glyphicon-star                   { &:before { content: "\e006"; } } | ||||
| .glyphicon-star-empty             { &:before { content: "\e007"; } } | ||||
| .glyphicon-user                   { &:before { content: "\e008"; } } | ||||
| .glyphicon-film                   { &:before { content: "\e009"; } } | ||||
| .glyphicon-th-large               { &:before { content: "\e010"; } } | ||||
| .glyphicon-th                     { &:before { content: "\e011"; } } | ||||
| .glyphicon-th-list                { &:before { content: "\e012"; } } | ||||
| .glyphicon-ok                     { &:before { content: "\e013"; } } | ||||
| .glyphicon-remove                 { &:before { content: "\e014"; } } | ||||
| .glyphicon-zoom-in                { &:before { content: "\e015"; } } | ||||
| .glyphicon-zoom-out               { &:before { content: "\e016"; } } | ||||
| .glyphicon-off                    { &:before { content: "\e017"; } } | ||||
| .glyphicon-signal                 { &:before { content: "\e018"; } } | ||||
| .glyphicon-cog                    { &:before { content: "\e019"; } } | ||||
| .glyphicon-trash                  { &:before { content: "\e020"; } } | ||||
| .glyphicon-home                   { &:before { content: "\e021"; } } | ||||
| .glyphicon-file                   { &:before { content: "\e022"; } } | ||||
| .glyphicon-time                   { &:before { content: "\e023"; } } | ||||
| .glyphicon-road                   { &:before { content: "\e024"; } } | ||||
| .glyphicon-download-alt           { &:before { content: "\e025"; } } | ||||
| .glyphicon-download               { &:before { content: "\e026"; } } | ||||
| .glyphicon-upload                 { &:before { content: "\e027"; } } | ||||
| .glyphicon-inbox                  { &:before { content: "\e028"; } } | ||||
| .glyphicon-play-circle            { &:before { content: "\e029"; } } | ||||
| .glyphicon-repeat                 { &:before { content: "\e030"; } } | ||||
| .glyphicon-refresh                { &:before { content: "\e031"; } } | ||||
| .glyphicon-list-alt               { &:before { content: "\e032"; } } | ||||
| .glyphicon-lock                   { &:before { content: "\e033"; } } | ||||
| .glyphicon-flag                   { &:before { content: "\e034"; } } | ||||
| .glyphicon-headphones             { &:before { content: "\e035"; } } | ||||
| .glyphicon-volume-off             { &:before { content: "\e036"; } } | ||||
| .glyphicon-volume-down            { &:before { content: "\e037"; } } | ||||
| .glyphicon-volume-up              { &:before { content: "\e038"; } } | ||||
| .glyphicon-qrcode                 { &:before { content: "\e039"; } } | ||||
| .glyphicon-barcode                { &:before { content: "\e040"; } } | ||||
| .glyphicon-tag                    { &:before { content: "\e041"; } } | ||||
| .glyphicon-tags                   { &:before { content: "\e042"; } } | ||||
| .glyphicon-book                   { &:before { content: "\e043"; } } | ||||
| .glyphicon-bookmark               { &:before { content: "\e044"; } } | ||||
| .glyphicon-print                  { &:before { content: "\e045"; } } | ||||
| .glyphicon-camera                 { &:before { content: "\e046"; } } | ||||
| .glyphicon-font                   { &:before { content: "\e047"; } } | ||||
| .glyphicon-bold                   { &:before { content: "\e048"; } } | ||||
| .glyphicon-italic                 { &:before { content: "\e049"; } } | ||||
| .glyphicon-text-height            { &:before { content: "\e050"; } } | ||||
| .glyphicon-text-width             { &:before { content: "\e051"; } } | ||||
| .glyphicon-align-left             { &:before { content: "\e052"; } } | ||||
| .glyphicon-align-center           { &:before { content: "\e053"; } } | ||||
| .glyphicon-align-right            { &:before { content: "\e054"; } } | ||||
| .glyphicon-align-justify          { &:before { content: "\e055"; } } | ||||
| .glyphicon-list                   { &:before { content: "\e056"; } } | ||||
| .glyphicon-indent-left            { &:before { content: "\e057"; } } | ||||
| .glyphicon-indent-right           { &:before { content: "\e058"; } } | ||||
| .glyphicon-facetime-video         { &:before { content: "\e059"; } } | ||||
| .glyphicon-picture                { &:before { content: "\e060"; } } | ||||
| .glyphicon-map-marker             { &:before { content: "\e062"; } } | ||||
| .glyphicon-adjust                 { &:before { content: "\e063"; } } | ||||
| .glyphicon-tint                   { &:before { content: "\e064"; } } | ||||
| .glyphicon-edit                   { &:before { content: "\e065"; } } | ||||
| .glyphicon-share                  { &:before { content: "\e066"; } } | ||||
| .glyphicon-check                  { &:before { content: "\e067"; } } | ||||
| .glyphicon-move                   { &:before { content: "\e068"; } } | ||||
| .glyphicon-step-backward          { &:before { content: "\e069"; } } | ||||
| .glyphicon-fast-backward          { &:before { content: "\e070"; } } | ||||
| .glyphicon-backward               { &:before { content: "\e071"; } } | ||||
| .glyphicon-play                   { &:before { content: "\e072"; } } | ||||
| .glyphicon-pause                  { &:before { content: "\e073"; } } | ||||
| .glyphicon-stop                   { &:before { content: "\e074"; } } | ||||
| .glyphicon-forward                { &:before { content: "\e075"; } } | ||||
| .glyphicon-fast-forward           { &:before { content: "\e076"; } } | ||||
| .glyphicon-step-forward           { &:before { content: "\e077"; } } | ||||
| .glyphicon-eject                  { &:before { content: "\e078"; } } | ||||
| .glyphicon-chevron-left           { &:before { content: "\e079"; } } | ||||
| .glyphicon-chevron-right          { &:before { content: "\e080"; } } | ||||
| .glyphicon-plus-sign              { &:before { content: "\e081"; } } | ||||
| .glyphicon-minus-sign             { &:before { content: "\e082"; } } | ||||
| .glyphicon-remove-sign            { &:before { content: "\e083"; } } | ||||
| .glyphicon-ok-sign                { &:before { content: "\e084"; } } | ||||
| .glyphicon-question-sign          { &:before { content: "\e085"; } } | ||||
| .glyphicon-info-sign              { &:before { content: "\e086"; } } | ||||
| .glyphicon-screenshot             { &:before { content: "\e087"; } } | ||||
| .glyphicon-remove-circle          { &:before { content: "\e088"; } } | ||||
| .glyphicon-ok-circle              { &:before { content: "\e089"; } } | ||||
| .glyphicon-ban-circle             { &:before { content: "\e090"; } } | ||||
| .glyphicon-arrow-left             { &:before { content: "\e091"; } } | ||||
| .glyphicon-arrow-right            { &:before { content: "\e092"; } } | ||||
| .glyphicon-arrow-up               { &:before { content: "\e093"; } } | ||||
| .glyphicon-arrow-down             { &:before { content: "\e094"; } } | ||||
| .glyphicon-share-alt              { &:before { content: "\e095"; } } | ||||
| .glyphicon-resize-full            { &:before { content: "\e096"; } } | ||||
| .glyphicon-resize-small           { &:before { content: "\e097"; } } | ||||
| .glyphicon-exclamation-sign       { &:before { content: "\e101"; } } | ||||
| .glyphicon-gift                   { &:before { content: "\e102"; } } | ||||
| .glyphicon-leaf                   { &:before { content: "\e103"; } } | ||||
| .glyphicon-fire                   { &:before { content: "\e104"; } } | ||||
| .glyphicon-eye-open               { &:before { content: "\e105"; } } | ||||
| .glyphicon-eye-close              { &:before { content: "\e106"; } } | ||||
| .glyphicon-warning-sign           { &:before { content: "\e107"; } } | ||||
| .glyphicon-plane                  { &:before { content: "\e108"; } } | ||||
| .glyphicon-calendar               { &:before { content: "\e109"; } } | ||||
| .glyphicon-random                 { &:before { content: "\e110"; } } | ||||
| .glyphicon-comment                { &:before { content: "\e111"; } } | ||||
| .glyphicon-magnet                 { &:before { content: "\e112"; } } | ||||
| .glyphicon-chevron-up             { &:before { content: "\e113"; } } | ||||
| .glyphicon-chevron-down           { &:before { content: "\e114"; } } | ||||
| .glyphicon-retweet                { &:before { content: "\e115"; } } | ||||
| .glyphicon-shopping-cart          { &:before { content: "\e116"; } } | ||||
| .glyphicon-folder-close           { &:before { content: "\e117"; } } | ||||
| .glyphicon-folder-open            { &:before { content: "\e118"; } } | ||||
| .glyphicon-resize-vertical        { &:before { content: "\e119"; } } | ||||
| .glyphicon-resize-horizontal      { &:before { content: "\e120"; } } | ||||
| .glyphicon-hdd                    { &:before { content: "\e121"; } } | ||||
| .glyphicon-bullhorn               { &:before { content: "\e122"; } } | ||||
| .glyphicon-bell                   { &:before { content: "\e123"; } } | ||||
| .glyphicon-certificate            { &:before { content: "\e124"; } } | ||||
| .glyphicon-thumbs-up              { &:before { content: "\e125"; } } | ||||
| .glyphicon-thumbs-down            { &:before { content: "\e126"; } } | ||||
| .glyphicon-hand-right             { &:before { content: "\e127"; } } | ||||
| .glyphicon-hand-left              { &:before { content: "\e128"; } } | ||||
| .glyphicon-hand-up                { &:before { content: "\e129"; } } | ||||
| .glyphicon-hand-down              { &:before { content: "\e130"; } } | ||||
| .glyphicon-circle-arrow-right     { &:before { content: "\e131"; } } | ||||
| .glyphicon-circle-arrow-left      { &:before { content: "\e132"; } } | ||||
| .glyphicon-circle-arrow-up        { &:before { content: "\e133"; } } | ||||
| .glyphicon-circle-arrow-down      { &:before { content: "\e134"; } } | ||||
| .glyphicon-globe                  { &:before { content: "\e135"; } } | ||||
| .glyphicon-wrench                 { &:before { content: "\e136"; } } | ||||
| .glyphicon-tasks                  { &:before { content: "\e137"; } } | ||||
| .glyphicon-filter                 { &:before { content: "\e138"; } } | ||||
| .glyphicon-briefcase              { &:before { content: "\e139"; } } | ||||
| .glyphicon-fullscreen             { &:before { content: "\e140"; } } | ||||
| .glyphicon-dashboard              { &:before { content: "\e141"; } } | ||||
| .glyphicon-paperclip              { &:before { content: "\e142"; } } | ||||
| .glyphicon-heart-empty            { &:before { content: "\e143"; } } | ||||
| .glyphicon-link                   { &:before { content: "\e144"; } } | ||||
| .glyphicon-phone                  { &:before { content: "\e145"; } } | ||||
| .glyphicon-pushpin                { &:before { content: "\e146"; } } | ||||
| .glyphicon-usd                    { &:before { content: "\e148"; } } | ||||
| .glyphicon-gbp                    { &:before { content: "\e149"; } } | ||||
| .glyphicon-sort                   { &:before { content: "\e150"; } } | ||||
| .glyphicon-sort-by-alphabet       { &:before { content: "\e151"; } } | ||||
| .glyphicon-sort-by-alphabet-alt   { &:before { content: "\e152"; } } | ||||
| .glyphicon-sort-by-order          { &:before { content: "\e153"; } } | ||||
| .glyphicon-sort-by-order-alt      { &:before { content: "\e154"; } } | ||||
| .glyphicon-sort-by-attributes     { &:before { content: "\e155"; } } | ||||
| .glyphicon-sort-by-attributes-alt { &:before { content: "\e156"; } } | ||||
| .glyphicon-unchecked              { &:before { content: "\e157"; } } | ||||
| .glyphicon-expand                 { &:before { content: "\e158"; } } | ||||
| .glyphicon-collapse-down          { &:before { content: "\e159"; } } | ||||
| .glyphicon-collapse-up            { &:before { content: "\e160"; } } | ||||
| .glyphicon-log-in                 { &:before { content: "\e161"; } } | ||||
| .glyphicon-flash                  { &:before { content: "\e162"; } } | ||||
| .glyphicon-log-out                { &:before { content: "\e163"; } } | ||||
| .glyphicon-new-window             { &:before { content: "\e164"; } } | ||||
| .glyphicon-record                 { &:before { content: "\e165"; } } | ||||
| .glyphicon-save                   { &:before { content: "\e166"; } } | ||||
| .glyphicon-open                   { &:before { content: "\e167"; } } | ||||
| .glyphicon-saved                  { &:before { content: "\e168"; } } | ||||
| .glyphicon-import                 { &:before { content: "\e169"; } } | ||||
| .glyphicon-export                 { &:before { content: "\e170"; } } | ||||
| .glyphicon-send                   { &:before { content: "\e171"; } } | ||||
| .glyphicon-floppy-disk            { &:before { content: "\e172"; } } | ||||
| .glyphicon-floppy-saved           { &:before { content: "\e173"; } } | ||||
| .glyphicon-floppy-remove          { &:before { content: "\e174"; } } | ||||
| .glyphicon-floppy-save            { &:before { content: "\e175"; } } | ||||
| .glyphicon-floppy-open            { &:before { content: "\e176"; } } | ||||
| .glyphicon-credit-card            { &:before { content: "\e177"; } } | ||||
| .glyphicon-transfer               { &:before { content: "\e178"; } } | ||||
| .glyphicon-cutlery                { &:before { content: "\e179"; } } | ||||
| .glyphicon-header                 { &:before { content: "\e180"; } } | ||||
| .glyphicon-compressed             { &:before { content: "\e181"; } } | ||||
| .glyphicon-earphone               { &:before { content: "\e182"; } } | ||||
| .glyphicon-phone-alt              { &:before { content: "\e183"; } } | ||||
| .glyphicon-tower                  { &:before { content: "\e184"; } } | ||||
| .glyphicon-stats                  { &:before { content: "\e185"; } } | ||||
| .glyphicon-sd-video               { &:before { content: "\e186"; } } | ||||
| .glyphicon-hd-video               { &:before { content: "\e187"; } } | ||||
| .glyphicon-subtitles              { &:before { content: "\e188"; } } | ||||
| .glyphicon-sound-stereo           { &:before { content: "\e189"; } } | ||||
| .glyphicon-sound-dolby            { &:before { content: "\e190"; } } | ||||
| .glyphicon-sound-5-1              { &:before { content: "\e191"; } } | ||||
| .glyphicon-sound-6-1              { &:before { content: "\e192"; } } | ||||
| .glyphicon-sound-7-1              { &:before { content: "\e193"; } } | ||||
| .glyphicon-copyright-mark         { &:before { content: "\e194"; } } | ||||
| .glyphicon-registration-mark      { &:before { content: "\e195"; } } | ||||
| .glyphicon-cloud-download         { &:before { content: "\e197"; } } | ||||
| .glyphicon-cloud-upload           { &:before { content: "\e198"; } } | ||||
| .glyphicon-tree-conifer           { &:before { content: "\e199"; } } | ||||
| .glyphicon-tree-deciduous         { &:before { content: "\e200"; } } | ||||
| @ -1,84 +0,0 @@ | ||||
| // | ||||
| // Grid system | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Container widths | ||||
| // | ||||
| // Set the container width, and override it for fixed navbars in media queries. | ||||
| 
 | ||||
| .container { | ||||
|   .container-fixed(); | ||||
| 
 | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     width: @container-sm; | ||||
|   } | ||||
|   @media (min-width: @screen-md-min) { | ||||
|     width: @container-md; | ||||
|   } | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     width: @container-lg; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Fluid container | ||||
| // | ||||
| // Utilizes the mixin meant for fixed width containers, but without any defined | ||||
| // width for fluid, full width layouts. | ||||
| 
 | ||||
| .container-fluid { | ||||
|   .container-fixed(); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Row | ||||
| // | ||||
| // Rows contain and clear the floats of your columns. | ||||
| 
 | ||||
| .row { | ||||
|   .make-row(); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Columns | ||||
| // | ||||
| // Common styles for small and large grid columns | ||||
| 
 | ||||
| .make-grid-columns(); | ||||
| 
 | ||||
| 
 | ||||
| // Extra small grid | ||||
| // | ||||
| // Columns, offsets, pushes, and pulls for extra small devices like | ||||
| // smartphones. | ||||
| 
 | ||||
| .make-grid(xs); | ||||
| 
 | ||||
| 
 | ||||
| // Small grid | ||||
| // | ||||
| // Columns, offsets, pushes, and pulls for the small device range, from phones | ||||
| // to tablets. | ||||
| 
 | ||||
| @media (min-width: @screen-sm-min) { | ||||
|   .make-grid(sm); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Medium grid | ||||
| // | ||||
| // Columns, offsets, pushes, and pulls for the desktop device range. | ||||
| 
 | ||||
| @media (min-width: @screen-md-min) { | ||||
|   .make-grid(md); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Large grid | ||||
| // | ||||
| // Columns, offsets, pushes, and pulls for the large desktop device range. | ||||
| 
 | ||||
| @media (min-width: @screen-lg-min) { | ||||
|   .make-grid(lg); | ||||
| } | ||||
| @ -1,166 +0,0 @@ | ||||
| // | ||||
| // Input groups | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Base styles | ||||
| // ------------------------- | ||||
| .input-group { | ||||
|   position: relative; // For dropdowns | ||||
|   display: table; | ||||
|   border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table | ||||
| 
 | ||||
|   // Undo padding and float of grid classes | ||||
|   &[class*="col-"] { | ||||
|     float: none; | ||||
|     padding-left: 0; | ||||
|     padding-right: 0; | ||||
|   } | ||||
| 
 | ||||
|   .form-control { | ||||
|     // Ensure that the input is always above the *appended* addon button for | ||||
|     // proper border colors. | ||||
|     position: relative; | ||||
|     z-index: 2; | ||||
| 
 | ||||
|     // IE9 fubars the placeholder attribute in text inputs and the arrows on | ||||
|     // select elements in input groups. To fix it, we float the input. Details: | ||||
|     // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855 | ||||
|     float: left; | ||||
| 
 | ||||
|     width: 100%; | ||||
|     margin-bottom: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Sizing options | ||||
| // | ||||
| // Remix the default form control sizing classes into new ones for easier | ||||
| // manipulation. | ||||
| 
 | ||||
| .input-group-lg > .form-control, | ||||
| .input-group-lg > .input-group-addon, | ||||
| .input-group-lg > .input-group-btn > .btn { | ||||
|   .input-lg(); | ||||
| } | ||||
| .input-group-sm > .form-control, | ||||
| .input-group-sm > .input-group-addon, | ||||
| .input-group-sm > .input-group-btn > .btn { | ||||
|   .input-sm(); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Display as table-cell | ||||
| // ------------------------- | ||||
| .input-group-addon, | ||||
| .input-group-btn, | ||||
| .input-group .form-control { | ||||
|   display: table-cell; | ||||
| 
 | ||||
|   &:not(:first-child):not(:last-child) { | ||||
|     border-radius: 0; | ||||
|   } | ||||
| } | ||||
| // Addon and addon wrapper for buttons | ||||
| .input-group-addon, | ||||
| .input-group-btn { | ||||
|   width: 1%; | ||||
|   white-space: nowrap; | ||||
|   vertical-align: middle; // Match the inputs | ||||
| } | ||||
| 
 | ||||
| // Text input groups | ||||
| // ------------------------- | ||||
| .input-group-addon { | ||||
|   padding: @padding-base-vertical @padding-base-horizontal; | ||||
|   font-size: @font-size-base; | ||||
|   font-weight: normal; | ||||
|   line-height: 1; | ||||
|   color: @input-color; | ||||
|   text-align: center; | ||||
|   background-color: @input-group-addon-bg; | ||||
|   border: 1px solid @input-group-addon-border-color; | ||||
|   border-radius: @border-radius-base; | ||||
| 
 | ||||
|   // Sizing | ||||
|   &.input-sm { | ||||
|     padding: @padding-small-vertical @padding-small-horizontal; | ||||
|     font-size: @font-size-small; | ||||
|     border-radius: @border-radius-small; | ||||
|   } | ||||
|   &.input-lg { | ||||
|     padding: @padding-large-vertical @padding-large-horizontal; | ||||
|     font-size: @font-size-large; | ||||
|     border-radius: @border-radius-large; | ||||
|   } | ||||
| 
 | ||||
|   // Nuke default margins from checkboxes and radios to vertically center within. | ||||
|   input[type="radio"], | ||||
|   input[type="checkbox"] { | ||||
|     margin-top: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Reset rounded corners | ||||
| .input-group .form-control:first-child, | ||||
| .input-group-addon:first-child, | ||||
| .input-group-btn:first-child > .btn, | ||||
| .input-group-btn:first-child > .btn-group > .btn, | ||||
| .input-group-btn:first-child > .dropdown-toggle, | ||||
| .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), | ||||
| .input-group-btn:last-child > .btn-group:not(:last-child) > .btn { | ||||
|   .border-right-radius(0); | ||||
| } | ||||
| .input-group-addon:first-child { | ||||
|   border-right: 0; | ||||
| } | ||||
| .input-group .form-control:last-child, | ||||
| .input-group-addon:last-child, | ||||
| .input-group-btn:last-child > .btn, | ||||
| .input-group-btn:last-child > .btn-group > .btn, | ||||
| .input-group-btn:last-child > .dropdown-toggle, | ||||
| .input-group-btn:first-child > .btn:not(:first-child), | ||||
| .input-group-btn:first-child > .btn-group:not(:first-child) > .btn { | ||||
|   .border-left-radius(0); | ||||
| } | ||||
| .input-group-addon:last-child { | ||||
|   border-left: 0; | ||||
| } | ||||
| 
 | ||||
| // Button input groups | ||||
| // ------------------------- | ||||
| .input-group-btn { | ||||
|   position: relative; | ||||
|   // Jankily prevent input button groups from wrapping with `white-space` and | ||||
|   // `font-size` in combination with `inline-block` on buttons. | ||||
|   font-size: 0; | ||||
|   white-space: nowrap; | ||||
| 
 | ||||
|   // Negative margin for spacing, position for bringing hovered/focused/actived | ||||
|   // element above the siblings. | ||||
|   > .btn { | ||||
|     position: relative; | ||||
|     + .btn { | ||||
|       margin-left: -1px; | ||||
|     } | ||||
|     // Bring the "active" button to the front | ||||
|     &:hover, | ||||
|     &:focus, | ||||
|     &:active { | ||||
|       z-index: 2; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Negative margin to only have a 1px border between the two | ||||
|   &:first-child { | ||||
|     > .btn, | ||||
|     > .btn-group { | ||||
|       margin-right: -1px; | ||||
|     } | ||||
|   } | ||||
|   &:last-child { | ||||
|     > .btn, | ||||
|     > .btn-group { | ||||
|       margin-left: -1px; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,48 +0,0 @@ | ||||
| // | ||||
| // Jumbotron | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| .jumbotron { | ||||
|   padding: @jumbotron-padding; | ||||
|   margin-bottom: @jumbotron-padding; | ||||
|   color: @jumbotron-color; | ||||
|   background-color: @jumbotron-bg; | ||||
| 
 | ||||
|   h1, | ||||
|   .h1 { | ||||
|     color: @jumbotron-heading-color; | ||||
|   } | ||||
|   p { | ||||
|     margin-bottom: (@jumbotron-padding / 2); | ||||
|     font-size: @jumbotron-font-size; | ||||
|     font-weight: 200; | ||||
|   } | ||||
| 
 | ||||
|   > hr { | ||||
|     border-top-color: darken(@jumbotron-bg, 10%); | ||||
|   } | ||||
| 
 | ||||
|   .container & { | ||||
|     border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container | ||||
|   } | ||||
| 
 | ||||
|   .container { | ||||
|     max-width: 100%; | ||||
|   } | ||||
| 
 | ||||
|   @media screen and (min-width: @screen-sm-min) { | ||||
|     padding-top:    (@jumbotron-padding * 1.6); | ||||
|     padding-bottom: (@jumbotron-padding * 1.6); | ||||
| 
 | ||||
|     .container & { | ||||
|       padding-left:  (@jumbotron-padding * 2); | ||||
|       padding-right: (@jumbotron-padding * 2); | ||||
|     } | ||||
| 
 | ||||
|     h1, | ||||
|     .h1 { | ||||
|       font-size: (@font-size-base * 4.5); | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,64 +0,0 @@ | ||||
| // | ||||
| // Labels | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .label { | ||||
|   display: inline; | ||||
|   padding: .2em .6em .3em; | ||||
|   font-size: 75%; | ||||
|   font-weight: bold; | ||||
|   line-height: 1; | ||||
|   color: @label-color; | ||||
|   text-align: center; | ||||
|   white-space: nowrap; | ||||
|   vertical-align: baseline; | ||||
|   border-radius: .25em; | ||||
| 
 | ||||
|   // Add hover effects, but only for links | ||||
|   a& { | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       color: @label-link-hover-color; | ||||
|       text-decoration: none; | ||||
|       cursor: pointer; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Empty labels collapse automatically (not available in IE8) | ||||
|   &:empty { | ||||
|     display: none; | ||||
|   } | ||||
| 
 | ||||
|   // Quick fix for labels in buttons | ||||
|   .btn & { | ||||
|     position: relative; | ||||
|     top: -1px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Colors | ||||
| // Contextual variations (linked labels get darker on :hover) | ||||
| 
 | ||||
| .label-default { | ||||
|   .label-variant(@label-default-bg); | ||||
| } | ||||
| 
 | ||||
| .label-primary { | ||||
|   .label-variant(@label-primary-bg); | ||||
| } | ||||
| 
 | ||||
| .label-success { | ||||
|   .label-variant(@label-success-bg); | ||||
| } | ||||
| 
 | ||||
| .label-info { | ||||
|   .label-variant(@label-info-bg); | ||||
| } | ||||
| 
 | ||||
| .label-warning { | ||||
|   .label-variant(@label-warning-bg); | ||||
| } | ||||
| 
 | ||||
| .label-danger { | ||||
|   .label-variant(@label-danger-bg); | ||||
| } | ||||
| @ -1,131 +0,0 @@ | ||||
| // | ||||
| // List groups | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Base class | ||||
| // | ||||
| // Easily usable on <ul>, <ol>, or <div>. | ||||
| 
 | ||||
| .list-group { | ||||
|   // No need to set list-style: none; since .list-group-item is block level | ||||
|   margin-bottom: 20px; | ||||
|   padding-left: 0; // reset padding because ul and ol | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Individual list items | ||||
| // | ||||
| // Use on `li`s or `div`s within the `.list-group` parent. | ||||
| 
 | ||||
| .list-group-item { | ||||
|   position: relative; | ||||
|   display: block; | ||||
|   padding: 10px 15px; | ||||
|   // Place the border on the list items and negative margin up for better styling | ||||
|   margin-bottom: -1px; | ||||
|   background-color: @list-group-bg; | ||||
|   border: 1px solid @list-group-border; | ||||
| 
 | ||||
|   // Round the first and last items | ||||
|   &:first-child { | ||||
|     .border-top-radius(@list-group-border-radius); | ||||
|   } | ||||
|   &:last-child { | ||||
|     margin-bottom: 0; | ||||
|     .border-bottom-radius(@list-group-border-radius); | ||||
|   } | ||||
| 
 | ||||
|   // Align badges within list items | ||||
|   > .badge { | ||||
|     float: right; | ||||
|   } | ||||
|   > .badge + .badge { | ||||
|     margin-right: 5px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Linked list items | ||||
| // | ||||
| // Use anchor elements instead of `li`s or `div`s to create linked list items. | ||||
| // Includes an extra `.active` modifier class for showing selected items. | ||||
| 
 | ||||
| a.list-group-item { | ||||
|   color: @list-group-link-color; | ||||
| 
 | ||||
|   .list-group-item-heading { | ||||
|     color: @list-group-link-heading-color; | ||||
|   } | ||||
| 
 | ||||
|   // Hover state | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     text-decoration: none; | ||||
|     color: @list-group-link-hover-color; | ||||
|     background-color: @list-group-hover-bg; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .list-group-item { | ||||
|   // Disabled state | ||||
|   &.disabled, | ||||
|   &.disabled:hover, | ||||
|   &.disabled:focus { | ||||
|     background-color: @list-group-disabled-bg; | ||||
|     color: @list-group-disabled-color; | ||||
| 
 | ||||
|     // Force color to inherit for custom content | ||||
|     .list-group-item-heading { | ||||
|       color: inherit; | ||||
|     } | ||||
|     .list-group-item-text { | ||||
|       color: @list-group-disabled-text-color; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Active class on item itself, not parent | ||||
|   &.active, | ||||
|   &.active:hover, | ||||
|   &.active:focus { | ||||
|     z-index: 2; // Place active items above their siblings for proper border styling | ||||
|     color: @list-group-active-color; | ||||
|     background-color: @list-group-active-bg; | ||||
|     border-color: @list-group-active-border; | ||||
| 
 | ||||
|     // Force color to inherit for custom content | ||||
|     .list-group-item-heading, | ||||
|     .list-group-item-heading > small, | ||||
|     .list-group-item-heading > .small { | ||||
|       color: inherit; | ||||
|     } | ||||
|     .list-group-item-text { | ||||
|       color: @list-group-active-text-color; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Contextual variants | ||||
| // | ||||
| // Add modifier classes to change text and background color on individual items. | ||||
| // Organizationally, this must come after the `:hover` states. | ||||
| 
 | ||||
| .list-group-item-variant(success; @state-success-bg; @state-success-text); | ||||
| .list-group-item-variant(info; @state-info-bg; @state-info-text); | ||||
| .list-group-item-variant(warning; @state-warning-bg; @state-warning-text); | ||||
| .list-group-item-variant(danger; @state-danger-bg; @state-danger-text); | ||||
| 
 | ||||
| 
 | ||||
| // Custom content options | ||||
| // | ||||
| // Extra classes for creating well-formatted content within `.list-group-item`s. | ||||
| 
 | ||||
| .list-group-item-heading { | ||||
|   margin-top: 0; | ||||
|   margin-bottom: 5px; | ||||
| } | ||||
| .list-group-item-text { | ||||
|   margin-bottom: 0; | ||||
|   line-height: 1.3; | ||||
| } | ||||
| @ -1,56 +0,0 @@ | ||||
| // Media objects | ||||
| // Source: http://stubbornella.org/content/?p=497 | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Common styles | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Clear the floats | ||||
| .media, | ||||
| .media-body { | ||||
|   overflow: hidden; | ||||
|   zoom: 1; | ||||
| } | ||||
| 
 | ||||
| // Proper spacing between instances of .media | ||||
| .media, | ||||
| .media .media { | ||||
|   margin-top: 15px; | ||||
| } | ||||
| .media:first-child { | ||||
|   margin-top: 0; | ||||
| } | ||||
| 
 | ||||
| // For images and videos, set to block | ||||
| .media-object { | ||||
|   display: block; | ||||
| } | ||||
| 
 | ||||
| // Reset margins on headings for tighter default spacing | ||||
| .media-heading { | ||||
|   margin: 0 0 5px; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Media image alignment | ||||
| // ------------------------- | ||||
| 
 | ||||
| .media { | ||||
|   > .pull-left { | ||||
|     margin-right: 10px; | ||||
|   } | ||||
|   > .pull-right { | ||||
|     margin-left: 10px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Media list variation | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Undo default ul/ol styles | ||||
| .media-list { | ||||
|   padding-left: 0; | ||||
|   list-style: none; | ||||
| } | ||||
| @ -1,39 +0,0 @@ | ||||
| // Mixins | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Utilities | ||||
| @import "mixins/hide-text.less"; | ||||
| @import "mixins/opacity.less"; | ||||
| @import "mixins/image.less"; | ||||
| @import "mixins/labels.less"; | ||||
| @import "mixins/reset-filter.less"; | ||||
| @import "mixins/resize.less"; | ||||
| @import "mixins/responsive-visibility.less"; | ||||
| @import "mixins/size.less"; | ||||
| @import "mixins/tab-focus.less"; | ||||
| @import "mixins/text-emphasis.less"; | ||||
| @import "mixins/text-overflow.less"; | ||||
| @import "mixins/vendor-prefixes.less"; | ||||
| 
 | ||||
| // Components | ||||
| @import "mixins/alerts.less"; | ||||
| @import "mixins/buttons.less"; | ||||
| @import "mixins/panels.less"; | ||||
| @import "mixins/pagination.less"; | ||||
| @import "mixins/list-group.less"; | ||||
| @import "mixins/nav-divider.less"; | ||||
| @import "mixins/forms.less"; | ||||
| @import "mixins/progress-bar.less"; | ||||
| @import "mixins/table-row.less"; | ||||
| 
 | ||||
| // Skins | ||||
| @import "mixins/background-variant.less"; | ||||
| @import "mixins/border-radius.less"; | ||||
| @import "mixins/gradients.less"; | ||||
| 
 | ||||
| // Layout | ||||
| @import "mixins/clearfix.less"; | ||||
| @import "mixins/center-block.less"; | ||||
| @import "mixins/nav-vertical-align.less"; | ||||
| @import "mixins/grid-framework.less"; | ||||
| @import "mixins/grid.less"; | ||||
| @ -1,14 +0,0 @@ | ||||
| // Alerts | ||||
| 
 | ||||
| .alert-variant(@background; @border; @text-color) { | ||||
|   background-color: @background; | ||||
|   border-color: @border; | ||||
|   color: @text-color; | ||||
| 
 | ||||
|   hr { | ||||
|     border-top-color: darken(@border, 5%); | ||||
|   } | ||||
|   .alert-link { | ||||
|     color: darken(@text-color, 10%); | ||||
|   } | ||||
| } | ||||
| @ -1,8 +0,0 @@ | ||||
| // Contextual backgrounds | ||||
| 
 | ||||
| .bg-variant(@color) { | ||||
|   background-color: @color; | ||||
|   a&:hover { | ||||
|     background-color: darken(@color, 10%); | ||||
|   } | ||||
| } | ||||
| @ -1,18 +0,0 @@ | ||||
| // Single side border-radius | ||||
| 
 | ||||
| .border-top-radius(@radius) { | ||||
|   border-top-right-radius: @radius; | ||||
|    border-top-left-radius: @radius; | ||||
| } | ||||
| .border-right-radius(@radius) { | ||||
|   border-bottom-right-radius: @radius; | ||||
|      border-top-right-radius: @radius; | ||||
| } | ||||
| .border-bottom-radius(@radius) { | ||||
|   border-bottom-right-radius: @radius; | ||||
|    border-bottom-left-radius: @radius; | ||||
| } | ||||
| .border-left-radius(@radius) { | ||||
|   border-bottom-left-radius: @radius; | ||||
|      border-top-left-radius: @radius; | ||||
| } | ||||
| @ -1,50 +0,0 @@ | ||||
| // Button variants | ||||
| // | ||||
| // Easily pump out default styles, as well as :hover, :focus, :active, | ||||
| // and disabled options for all buttons | ||||
| 
 | ||||
| .button-variant(@color; @background; @border) { | ||||
|   color: @color; | ||||
|   background-color: @background; | ||||
|   border-color: @border; | ||||
| 
 | ||||
|   &:hover, | ||||
|   &:focus, | ||||
|   &:active, | ||||
|   &.active, | ||||
|   .open > .dropdown-toggle& { | ||||
|     color: @color; | ||||
|     background-color: darken(@background, 10%); | ||||
|         border-color: darken(@border, 12%); | ||||
|   } | ||||
|   &:active, | ||||
|   &.active, | ||||
|   .open > .dropdown-toggle& { | ||||
|     background-image: none; | ||||
|   } | ||||
|   &.disabled, | ||||
|   &[disabled], | ||||
|   fieldset[disabled] & { | ||||
|     &, | ||||
|     &:hover, | ||||
|     &:focus, | ||||
|     &:active, | ||||
|     &.active { | ||||
|       background-color: @background; | ||||
|           border-color: @border; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .badge { | ||||
|     color: @background; | ||||
|     background-color: @color; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Button sizes | ||||
| .button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { | ||||
|   padding: @padding-vertical @padding-horizontal; | ||||
|   font-size: @font-size; | ||||
|   line-height: @line-height; | ||||
|   border-radius: @border-radius; | ||||
| } | ||||
| @ -1,7 +0,0 @@ | ||||
| // Center-align a block level element | ||||
| 
 | ||||
| .center-block() { | ||||
|   display: block; | ||||
|   margin-left: auto; | ||||
|   margin-right: auto; | ||||
| } | ||||
| @ -1,22 +0,0 @@ | ||||
| // Clearfix | ||||
| // | ||||
| // For modern browsers | ||||
| // 1. The space content is one way to avoid an Opera bug when the | ||||
| //    contenteditable attribute is included anywhere else in the document. | ||||
| //    Otherwise it causes space to appear at the top and bottom of elements | ||||
| //    that are clearfixed. | ||||
| // 2. The use of `table` rather than `block` is only necessary if using | ||||
| //    `:before` to contain the top-margins of child elements. | ||||
| // | ||||
| // Source: http://nicolasgallagher.com/micro-clearfix-hack/ | ||||
| 
 | ||||
| .clearfix() { | ||||
|   &:before, | ||||
|   &:after { | ||||
|     content: " "; // 1 | ||||
|     display: table; // 2 | ||||
|   } | ||||
|   &:after { | ||||
|     clear: both; | ||||
|   } | ||||
| } | ||||
| @ -1,81 +0,0 @@ | ||||
| // Form validation states | ||||
| // | ||||
| // Used in forms.less to generate the form validation CSS for warnings, errors, | ||||
| // and successes. | ||||
| 
 | ||||
| .form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) { | ||||
|   // Color the label and help text | ||||
|   .help-block, | ||||
|   .control-label, | ||||
|   .radio, | ||||
|   .checkbox, | ||||
|   .radio-inline, | ||||
|   .checkbox-inline  { | ||||
|     color: @text-color; | ||||
|   } | ||||
|   // Set the border and box shadow on specific inputs to match | ||||
|   .form-control { | ||||
|     border-color: @border-color; | ||||
|     .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work | ||||
|     &:focus { | ||||
|       border-color: darken(@border-color, 10%); | ||||
|       @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%); | ||||
|       .box-shadow(@shadow); | ||||
|     } | ||||
|   } | ||||
|   // Set validation states also for addons | ||||
|   .input-group-addon { | ||||
|     color: @text-color; | ||||
|     border-color: @border-color; | ||||
|     background-color: @background-color; | ||||
|   } | ||||
|   // Optional feedback icon | ||||
|   .form-control-feedback { | ||||
|     color: @text-color; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Form control focus state | ||||
| // | ||||
| // Generate a customized focus state and for any input with the specified color, | ||||
| // which defaults to the `@input-border-focus` variable. | ||||
| // | ||||
| // We highly encourage you to not customize the default value, but instead use | ||||
| // this to tweak colors on an as-needed basis. This aesthetic change is based on | ||||
| // WebKit's default styles, but applicable to a wider range of browsers. Its | ||||
| // usability and accessibility should be taken into account with any change. | ||||
| // | ||||
| // Example usage: change the default blue border and shadow to white for better | ||||
| // contrast against a dark gray background. | ||||
| .form-control-focus(@color: @input-border-focus) { | ||||
|   @color-rgba: rgba(red(@color), green(@color), blue(@color), .6); | ||||
|   &:focus { | ||||
|     border-color: @color; | ||||
|     outline: 0; | ||||
|     .box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}"); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Form control sizing | ||||
| // | ||||
| // Relative text size, padding, and border-radii changes for form controls. For | ||||
| // horizontal sizing, wrap controls in the predefined grid classes. `<select>` | ||||
| // element gets special love because it's special, and that's a fact! | ||||
| .input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { | ||||
|   height: @input-height; | ||||
|   padding: @padding-vertical @padding-horizontal; | ||||
|   font-size: @font-size; | ||||
|   line-height: @line-height; | ||||
|   border-radius: @border-radius; | ||||
| 
 | ||||
|   select& { | ||||
|     height: @input-height; | ||||
|     line-height: @input-height; | ||||
|   } | ||||
| 
 | ||||
|   textarea&, | ||||
|   select[multiple]& { | ||||
|     height: auto; | ||||
|   } | ||||
| } | ||||
| @ -1,59 +0,0 @@ | ||||
| // Gradients | ||||
| 
 | ||||
| #gradient { | ||||
| 
 | ||||
|   // Horizontal gradient, from left to right | ||||
|   // | ||||
|   // Creates two color stops, start and end, by specifying a color and position for each color stop. | ||||
|   // Color stops are not available in IE9 and below. | ||||
|   .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) { | ||||
|     background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+ | ||||
|     background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12 | ||||
|     background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ | ||||
|     background-repeat: repeat-x; | ||||
|     filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down | ||||
|   } | ||||
| 
 | ||||
|   // Vertical gradient, from top to bottom | ||||
|   // | ||||
|   // Creates two color stops, start and end, by specifying a color and position for each color stop. | ||||
|   // Color stops are not available in IE9 and below. | ||||
|   .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) { | ||||
|     background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent);  // Safari 5.1-6, Chrome 10+ | ||||
|     background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent);  // Opera 12 | ||||
|     background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ | ||||
|     background-repeat: repeat-x; | ||||
|     filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down | ||||
|   } | ||||
| 
 | ||||
|   .directional(@start-color: #555; @end-color: #333; @deg: 45deg) { | ||||
|     background-repeat: repeat-x; | ||||
|     background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+ | ||||
|     background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12 | ||||
|     background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ | ||||
|   } | ||||
|   .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) { | ||||
|     background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color); | ||||
|     background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color); | ||||
|     background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color); | ||||
|     background-repeat: no-repeat; | ||||
|     filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback | ||||
|   } | ||||
|   .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) { | ||||
|     background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color); | ||||
|     background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color); | ||||
|     background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color); | ||||
|     background-repeat: no-repeat; | ||||
|     filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback | ||||
|   } | ||||
|   .radial(@inner-color: #555; @outer-color: #333) { | ||||
|     background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color); | ||||
|     background-image: radial-gradient(circle, @inner-color, @outer-color); | ||||
|     background-repeat: no-repeat; | ||||
|   } | ||||
|   .striped(@color: rgba(255,255,255,.15); @angle: 45deg) { | ||||
|     background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); | ||||
|     background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); | ||||
|     background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); | ||||
|   } | ||||
| } | ||||
| @ -1,91 +0,0 @@ | ||||
| // Framework grid generation | ||||
| // | ||||
| // Used only by Bootstrap to generate the correct number of grid classes given | ||||
| // any value of `@grid-columns`. | ||||
| 
 | ||||
| .make-grid-columns() { | ||||
|   // Common styles for all sizes of grid columns, widths 1-12 | ||||
|   .col(@index) when (@index = 1) { // initial | ||||
|     @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}"; | ||||
|     .col((@index + 1), @item); | ||||
|   } | ||||
|   .col(@index, @list) when (@index =< @grid-columns) { // general; "=<" isn't a typo | ||||
|     @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}"; | ||||
|     .col((@index + 1), ~"@{list}, @{item}"); | ||||
|   } | ||||
|   .col(@index, @list) when (@index > @grid-columns) { // terminal | ||||
|     @{list} { | ||||
|       position: relative; | ||||
|       // Prevent columns from collapsing when empty | ||||
|       min-height: 1px; | ||||
|       // Inner gutter via padding | ||||
|       padding-left:  (@grid-gutter-width / 2); | ||||
|       padding-right: (@grid-gutter-width / 2); | ||||
|     } | ||||
|   } | ||||
|   .col(1); // kickstart it | ||||
| } | ||||
| 
 | ||||
| .float-grid-columns(@class) { | ||||
|   .col(@index) when (@index = 1) { // initial | ||||
|     @item: ~".col-@{class}-@{index}"; | ||||
|     .col((@index + 1), @item); | ||||
|   } | ||||
|   .col(@index, @list) when (@index =< @grid-columns) { // general | ||||
|     @item: ~".col-@{class}-@{index}"; | ||||
|     .col((@index + 1), ~"@{list}, @{item}"); | ||||
|   } | ||||
|   .col(@index, @list) when (@index > @grid-columns) { // terminal | ||||
|     @{list} { | ||||
|       float: left; | ||||
|     } | ||||
|   } | ||||
|   .col(1); // kickstart it | ||||
| } | ||||
| 
 | ||||
| .calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) { | ||||
|   .col-@{class}-@{index} { | ||||
|     width: percentage((@index / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) { | ||||
|   .col-@{class}-push-@{index} { | ||||
|     left: percentage((@index / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) { | ||||
|   .col-@{class}-push-0 { | ||||
|     left: auto; | ||||
|   } | ||||
| } | ||||
| .calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) { | ||||
|   .col-@{class}-pull-@{index} { | ||||
|     right: percentage((@index / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) { | ||||
|   .col-@{class}-pull-0 { | ||||
|     right: auto; | ||||
|   } | ||||
| } | ||||
| .calc-grid-column(@index, @class, @type) when (@type = offset) { | ||||
|   .col-@{class}-offset-@{index} { | ||||
|     margin-left: percentage((@index / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Basic looping in LESS | ||||
| .loop-grid-columns(@index, @class, @type) when (@index >= 0) { | ||||
|   .calc-grid-column(@index, @class, @type); | ||||
|   // next iteration | ||||
|   .loop-grid-columns((@index - 1), @class, @type); | ||||
| } | ||||
| 
 | ||||
| // Create grid for specific class | ||||
| .make-grid(@class) { | ||||
|   .float-grid-columns(@class); | ||||
|   .loop-grid-columns(@grid-columns, @class, width); | ||||
|   .loop-grid-columns(@grid-columns, @class, pull); | ||||
|   .loop-grid-columns(@grid-columns, @class, push); | ||||
|   .loop-grid-columns(@grid-columns, @class, offset); | ||||
| } | ||||
| @ -1,122 +0,0 @@ | ||||
| // Grid system | ||||
| // | ||||
| // Generate semantic grid columns with these mixins. | ||||
| 
 | ||||
| // Centered container element | ||||
| .container-fixed(@gutter: @grid-gutter-width) { | ||||
|   margin-right: auto; | ||||
|   margin-left: auto; | ||||
|   padding-left:  (@gutter / 2); | ||||
|   padding-right: (@gutter / 2); | ||||
|   &:extend(.clearfix all); | ||||
| } | ||||
| 
 | ||||
| // Creates a wrapper for a series of columns | ||||
| .make-row(@gutter: @grid-gutter-width) { | ||||
|   margin-left:  (@gutter / -2); | ||||
|   margin-right: (@gutter / -2); | ||||
|   &:extend(.clearfix all); | ||||
| } | ||||
| 
 | ||||
| // Generate the extra small columns | ||||
| .make-xs-column(@columns; @gutter: @grid-gutter-width) { | ||||
|   position: relative; | ||||
|   float: left; | ||||
|   width: percentage((@columns / @grid-columns)); | ||||
|   min-height: 1px; | ||||
|   padding-left:  (@gutter / 2); | ||||
|   padding-right: (@gutter / 2); | ||||
| } | ||||
| .make-xs-column-offset(@columns) { | ||||
|   margin-left: percentage((@columns / @grid-columns)); | ||||
| } | ||||
| .make-xs-column-push(@columns) { | ||||
|   left: percentage((@columns / @grid-columns)); | ||||
| } | ||||
| .make-xs-column-pull(@columns) { | ||||
|   right: percentage((@columns / @grid-columns)); | ||||
| } | ||||
| 
 | ||||
| // Generate the small columns | ||||
| .make-sm-column(@columns; @gutter: @grid-gutter-width) { | ||||
|   position: relative; | ||||
|   min-height: 1px; | ||||
|   padding-left:  (@gutter / 2); | ||||
|   padding-right: (@gutter / 2); | ||||
| 
 | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     float: left; | ||||
|     width: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-sm-column-offset(@columns) { | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     margin-left: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-sm-column-push(@columns) { | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     left: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-sm-column-pull(@columns) { | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     right: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Generate the medium columns | ||||
| .make-md-column(@columns; @gutter: @grid-gutter-width) { | ||||
|   position: relative; | ||||
|   min-height: 1px; | ||||
|   padding-left:  (@gutter / 2); | ||||
|   padding-right: (@gutter / 2); | ||||
| 
 | ||||
|   @media (min-width: @screen-md-min) { | ||||
|     float: left; | ||||
|     width: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-md-column-offset(@columns) { | ||||
|   @media (min-width: @screen-md-min) { | ||||
|     margin-left: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-md-column-push(@columns) { | ||||
|   @media (min-width: @screen-md-min) { | ||||
|     left: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-md-column-pull(@columns) { | ||||
|   @media (min-width: @screen-md-min) { | ||||
|     right: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Generate the large columns | ||||
| .make-lg-column(@columns; @gutter: @grid-gutter-width) { | ||||
|   position: relative; | ||||
|   min-height: 1px; | ||||
|   padding-left:  (@gutter / 2); | ||||
|   padding-right: (@gutter / 2); | ||||
| 
 | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     float: left; | ||||
|     width: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-lg-column-offset(@columns) { | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     margin-left: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-lg-column-push(@columns) { | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     left: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| .make-lg-column-pull(@columns) { | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     right: percentage((@columns / @grid-columns)); | ||||
|   } | ||||
| } | ||||
| @ -1,21 +0,0 @@ | ||||
| // CSS image replacement | ||||
| // | ||||
| // Heads up! v3 launched with with only `.hide-text()`, but per our pattern for | ||||
| // mixins being reused as classes with the same name, this doesn't hold up. As | ||||
| // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. | ||||
| // | ||||
| // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757 | ||||
| 
 | ||||
| // Deprecated as of v3.0.1 (will be removed in v4) | ||||
| .hide-text() { | ||||
|   font: ~"0/0" a; | ||||
|   color: transparent; | ||||
|   text-shadow: none; | ||||
|   background-color: transparent; | ||||
|   border: 0; | ||||
| } | ||||
| 
 | ||||
| // New mixin to use as of v3.0.1 | ||||
| .text-hide() { | ||||
|   .hide-text(); | ||||
| } | ||||
| @ -1,34 +0,0 @@ | ||||
| // Image Mixins | ||||
| // - Responsive image | ||||
| // - Retina image | ||||
| 
 | ||||
| 
 | ||||
| // Responsive image | ||||
| // | ||||
| // Keep images from scaling beyond the width of their parents. | ||||
| .img-responsive(@display: block) { | ||||
|   display: @display; | ||||
|   width: 100% \9; // Force IE10 and below to size SVG images correctly | ||||
|   max-width: 100%; // Part 1: Set a maximum relative to the parent | ||||
|   height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Retina image | ||||
| // | ||||
| // Short retina mixin for setting background-image and -size. Note that the | ||||
| // spelling of `min--moz-device-pixel-ratio` is intentional. | ||||
| .img-retina(@file-1x; @file-2x; @width-1x; @height-1x) { | ||||
|   background-image: url("@{file-1x}"); | ||||
| 
 | ||||
|   @media | ||||
|   only screen and (-webkit-min-device-pixel-ratio: 2), | ||||
|   only screen and (   min--moz-device-pixel-ratio: 2), | ||||
|   only screen and (     -o-min-device-pixel-ratio: 2/1), | ||||
|   only screen and (        min-device-pixel-ratio: 2), | ||||
|   only screen and (                min-resolution: 192dpi), | ||||
|   only screen and (                min-resolution: 2dppx) { | ||||
|     background-image: url("@{file-2x}"); | ||||
|     background-size: @width-1x @height-1x; | ||||
|   } | ||||
| } | ||||
| @ -1,12 +0,0 @@ | ||||
| // Labels | ||||
| 
 | ||||
| .label-variant(@color) { | ||||
|   background-color: @color; | ||||
|    | ||||
|   &[href] { | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       background-color: darken(@color, 10%); | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,29 +0,0 @@ | ||||
| // List Groups | ||||
| 
 | ||||
| .list-group-item-variant(@state; @background; @color) { | ||||
|   .list-group-item-@{state} { | ||||
|     color: @color; | ||||
|     background-color: @background; | ||||
| 
 | ||||
|     a& { | ||||
|       color: @color; | ||||
| 
 | ||||
|       .list-group-item-heading { | ||||
|         color: inherit; | ||||
|       } | ||||
| 
 | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @color; | ||||
|         background-color: darken(@background, 5%); | ||||
|       } | ||||
|       &.active, | ||||
|       &.active:hover, | ||||
|       &.active:focus { | ||||
|         color: #fff; | ||||
|         background-color: @color; | ||||
|         border-color: @color; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,10 +0,0 @@ | ||||
| // Horizontal dividers | ||||
| // | ||||
| // Dividers (basically an hr) within dropdowns and nav lists | ||||
| 
 | ||||
| .nav-divider(@color: #e5e5e5) { | ||||
|   height: 1px; | ||||
|   margin: ((@line-height-computed / 2) - 1) 0; | ||||
|   overflow: hidden; | ||||
|   background-color: @color; | ||||
| } | ||||
| @ -1,9 +0,0 @@ | ||||
| // Navbar vertical align | ||||
| // | ||||
| // Vertically center elements in the navbar. | ||||
| // Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin. | ||||
| 
 | ||||
| .navbar-vertical-align(@element-height) { | ||||
|   margin-top: ((@navbar-height - @element-height) / 2); | ||||
|   margin-bottom: ((@navbar-height - @element-height) / 2); | ||||
| } | ||||
| @ -1,8 +0,0 @@ | ||||
| // Opacity | ||||
| 
 | ||||
| .opacity(@opacity) { | ||||
|   opacity: @opacity; | ||||
|   // IE8 filter | ||||
|   @opacity-ie: (@opacity * 100); | ||||
|   filter: ~"alpha(opacity=@{opacity-ie})"; | ||||
| } | ||||
| @ -1,23 +0,0 @@ | ||||
| // Pagination | ||||
| 
 | ||||
| .pagination-size(@padding-vertical; @padding-horizontal; @font-size; @border-radius) { | ||||
|   > li { | ||||
|     > a, | ||||
|     > span { | ||||
|       padding: @padding-vertical @padding-horizontal; | ||||
|       font-size: @font-size; | ||||
|     } | ||||
|     &:first-child { | ||||
|       > a, | ||||
|       > span { | ||||
|         .border-left-radius(@border-radius); | ||||
|       } | ||||
|     } | ||||
|     &:last-child { | ||||
|       > a, | ||||
|       > span { | ||||
|         .border-right-radius(@border-radius); | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,24 +0,0 @@ | ||||
| // Panels | ||||
| 
 | ||||
| .panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) { | ||||
|   border-color: @border; | ||||
| 
 | ||||
|   & > .panel-heading { | ||||
|     color: @heading-text-color; | ||||
|     background-color: @heading-bg-color; | ||||
|     border-color: @heading-border; | ||||
| 
 | ||||
|     + .panel-collapse > .panel-body { | ||||
|       border-top-color: @border; | ||||
|     } | ||||
|     .badge { | ||||
|       color: @heading-bg-color; | ||||
|       background-color: @heading-text-color; | ||||
|     } | ||||
|   } | ||||
|   & > .panel-footer { | ||||
|     + .panel-collapse > .panel-body { | ||||
|       border-bottom-color: @border; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,10 +0,0 @@ | ||||
| // Progress bars | ||||
| 
 | ||||
| .progress-bar-variant(@color) { | ||||
|   background-color: @color; | ||||
| 
 | ||||
|   // Deprecated parent class requirement as of v3.2.0 | ||||
|   .progress-striped & { | ||||
|     #gradient > .striped(); | ||||
|   } | ||||
| } | ||||
| @ -1,8 +0,0 @@ | ||||
| // Reset filters for IE | ||||
| // | ||||
| // When you need to remove a gradient background, do not forget to use this to reset | ||||
| // the IE filter for IE9 and below. | ||||
| 
 | ||||
| .reset-filter() { | ||||
|   filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)")); | ||||
| } | ||||
| @ -1,6 +0,0 @@ | ||||
| // Resize anything | ||||
| 
 | ||||
| .resizable(@direction) { | ||||
|   resize: @direction; // Options: horizontal, vertical, both | ||||
|   overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible` | ||||
| } | ||||
| @ -1,15 +0,0 @@ | ||||
| // Responsive utilities | ||||
| 
 | ||||
| // | ||||
| // More easily include all the states for responsive-utilities.less. | ||||
| .responsive-visibility() { | ||||
|   display: block !important; | ||||
|   table&  { display: table; } | ||||
|   tr&     { display: table-row !important; } | ||||
|   th&, | ||||
|   td&     { display: table-cell !important; } | ||||
| } | ||||
| 
 | ||||
| .responsive-invisibility() { | ||||
|   display: none !important; | ||||
| } | ||||
| @ -1,10 +0,0 @@ | ||||
| // Sizing shortcuts | ||||
| 
 | ||||
| .size(@width; @height) { | ||||
|   width: @width; | ||||
|   height: @height; | ||||
| } | ||||
| 
 | ||||
| .square(@size) { | ||||
|   .size(@size; @size); | ||||
| } | ||||
| @ -1,9 +0,0 @@ | ||||
| // WebKit-style focus | ||||
| 
 | ||||
| .tab-focus() { | ||||
|   // Default | ||||
|   outline: thin dotted; | ||||
|   // WebKit | ||||
|   outline: 5px auto -webkit-focus-ring-color; | ||||
|   outline-offset: -2px; | ||||
| } | ||||
| @ -1,28 +0,0 @@ | ||||
| // Tables | ||||
| 
 | ||||
| .table-row-variant(@state; @background) { | ||||
|   // Exact selectors below required to override `.table-striped` and prevent | ||||
|   // inheritance to nested tables. | ||||
|   .table > thead > tr, | ||||
|   .table > tbody > tr, | ||||
|   .table > tfoot > tr { | ||||
|     > td.@{state}, | ||||
|     > th.@{state}, | ||||
|     &.@{state} > td, | ||||
|     &.@{state} > th { | ||||
|       background-color: @background; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Hover states for `.table-hover` | ||||
|   // Note: this is not available for cells or rows within `thead` or `tfoot`. | ||||
|   .table-hover > tbody > tr { | ||||
|     > td.@{state}:hover, | ||||
|     > th.@{state}:hover, | ||||
|     &.@{state}:hover > td, | ||||
|     &:hover > .@{state}, | ||||
|     &.@{state}:hover > th { | ||||
|       background-color: darken(@background, 5%); | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,8 +0,0 @@ | ||||
| // Typography | ||||
| 
 | ||||
| .text-emphasis-variant(@color) { | ||||
|   color: @color; | ||||
|   a&:hover { | ||||
|     color: darken(@color, 10%); | ||||
|   } | ||||
| } | ||||
| @ -1,8 +0,0 @@ | ||||
| // Text overflow | ||||
| // Requires inline-block or block for proper styling | ||||
| 
 | ||||
| .text-overflow() { | ||||
|   overflow: hidden; | ||||
|   text-overflow: ellipsis; | ||||
|   white-space: nowrap; | ||||
| } | ||||
| @ -1,224 +0,0 @@ | ||||
| // Vendor Prefixes | ||||
| // | ||||
| // All vendor mixins are deprecated as of v3.2.0 due to the introduction of | ||||
| // Autoprefixer in our Gruntfile. They will be removed in v4. | ||||
| 
 | ||||
| // - Animations | ||||
| // - Backface visibility | ||||
| // - Box shadow | ||||
| // - Box sizing | ||||
| // - Content columns | ||||
| // - Hyphens | ||||
| // - Placeholder text | ||||
| // - Transformations | ||||
| // - Transitions | ||||
| // - User Select | ||||
| 
 | ||||
| 
 | ||||
| // Animations | ||||
| .animation(@animation) { | ||||
|   -webkit-animation: @animation; | ||||
|        -o-animation: @animation; | ||||
|           animation: @animation; | ||||
| } | ||||
| .animation-name(@name) { | ||||
|   -webkit-animation-name: @name; | ||||
|           animation-name: @name; | ||||
| } | ||||
| .animation-duration(@duration) { | ||||
|   -webkit-animation-duration: @duration; | ||||
|           animation-duration: @duration; | ||||
| } | ||||
| .animation-timing-function(@timing-function) { | ||||
|   -webkit-animation-timing-function: @timing-function; | ||||
|           animation-timing-function: @timing-function; | ||||
| } | ||||
| .animation-delay(@delay) { | ||||
|   -webkit-animation-delay: @delay; | ||||
|           animation-delay: @delay; | ||||
| } | ||||
| .animation-iteration-count(@iteration-count) { | ||||
|   -webkit-animation-iteration-count: @iteration-count; | ||||
|           animation-iteration-count: @iteration-count; | ||||
| } | ||||
| .animation-direction(@direction) { | ||||
|   -webkit-animation-direction: @direction; | ||||
|           animation-direction: @direction; | ||||
| } | ||||
| .animation-fill-mode(@fill-mode) { | ||||
|   -webkit-animation-fill-mode: @fill-mode; | ||||
|           animation-fill-mode: @fill-mode; | ||||
| } | ||||
| 
 | ||||
| // Backface visibility | ||||
| // Prevent browsers from flickering when using CSS 3D transforms. | ||||
| // Default value is `visible`, but can be changed to `hidden` | ||||
| 
 | ||||
| .backface-visibility(@visibility){ | ||||
|   -webkit-backface-visibility: @visibility; | ||||
|      -moz-backface-visibility: @visibility; | ||||
|           backface-visibility: @visibility; | ||||
| } | ||||
| 
 | ||||
| // Drop shadows | ||||
| // | ||||
| // Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's | ||||
| // supported browsers that have box shadow capabilities now support it. | ||||
| 
 | ||||
| .box-shadow(@shadow) { | ||||
|   -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1 | ||||
|           box-shadow: @shadow; | ||||
| } | ||||
| 
 | ||||
| // Box sizing | ||||
| .box-sizing(@boxmodel) { | ||||
|   -webkit-box-sizing: @boxmodel; | ||||
|      -moz-box-sizing: @boxmodel; | ||||
|           box-sizing: @boxmodel; | ||||
| } | ||||
| 
 | ||||
| // CSS3 Content Columns | ||||
| .content-columns(@column-count; @column-gap: @grid-gutter-width) { | ||||
|   -webkit-column-count: @column-count; | ||||
|      -moz-column-count: @column-count; | ||||
|           column-count: @column-count; | ||||
|   -webkit-column-gap: @column-gap; | ||||
|      -moz-column-gap: @column-gap; | ||||
|           column-gap: @column-gap; | ||||
| } | ||||
| 
 | ||||
| // Optional hyphenation | ||||
| .hyphens(@mode: auto) { | ||||
|   word-wrap: break-word; | ||||
|   -webkit-hyphens: @mode; | ||||
|      -moz-hyphens: @mode; | ||||
|       -ms-hyphens: @mode; // IE10+ | ||||
|        -o-hyphens: @mode; | ||||
|           hyphens: @mode; | ||||
| } | ||||
| 
 | ||||
| // Placeholder text | ||||
| .placeholder(@color: @input-color-placeholder) { | ||||
|   &::-moz-placeholder           { color: @color;   // Firefox | ||||
|                                   opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526 | ||||
|   &:-ms-input-placeholder       { color: @color; } // Internet Explorer 10+ | ||||
|   &::-webkit-input-placeholder  { color: @color; } // Safari and Chrome | ||||
| } | ||||
| 
 | ||||
| // Transformations | ||||
| .scale(@ratio) { | ||||
|   -webkit-transform: scale(@ratio); | ||||
|       -ms-transform: scale(@ratio); // IE9 only | ||||
|        -o-transform: scale(@ratio); | ||||
|           transform: scale(@ratio); | ||||
| } | ||||
| .scale(@ratioX; @ratioY) { | ||||
|   -webkit-transform: scale(@ratioX, @ratioY); | ||||
|       -ms-transform: scale(@ratioX, @ratioY); // IE9 only | ||||
|        -o-transform: scale(@ratioX, @ratioY); | ||||
|           transform: scale(@ratioX, @ratioY); | ||||
| } | ||||
| .scaleX(@ratio) { | ||||
|   -webkit-transform: scaleX(@ratio); | ||||
|       -ms-transform: scaleX(@ratio); // IE9 only | ||||
|        -o-transform: scaleX(@ratio); | ||||
|           transform: scaleX(@ratio); | ||||
| } | ||||
| .scaleY(@ratio) { | ||||
|   -webkit-transform: scaleY(@ratio); | ||||
|       -ms-transform: scaleY(@ratio); // IE9 only | ||||
|        -o-transform: scaleY(@ratio); | ||||
|           transform: scaleY(@ratio); | ||||
| } | ||||
| .skew(@x; @y) { | ||||
|   -webkit-transform: skewX(@x) skewY(@y); | ||||
|       -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+ | ||||
|        -o-transform: skewX(@x) skewY(@y); | ||||
|           transform: skewX(@x) skewY(@y); | ||||
| } | ||||
| .translate(@x; @y) { | ||||
|   -webkit-transform: translate(@x, @y); | ||||
|       -ms-transform: translate(@x, @y); // IE9 only | ||||
|        -o-transform: translate(@x, @y); | ||||
|           transform: translate(@x, @y); | ||||
| } | ||||
| .translate3d(@x; @y; @z) { | ||||
|   -webkit-transform: translate3d(@x, @y, @z); | ||||
|           transform: translate3d(@x, @y, @z); | ||||
| } | ||||
| .rotate(@degrees) { | ||||
|   -webkit-transform: rotate(@degrees); | ||||
|       -ms-transform: rotate(@degrees); // IE9 only | ||||
|        -o-transform: rotate(@degrees); | ||||
|           transform: rotate(@degrees); | ||||
| } | ||||
| .rotateX(@degrees) { | ||||
|   -webkit-transform: rotateX(@degrees); | ||||
|       -ms-transform: rotateX(@degrees); // IE9 only | ||||
|        -o-transform: rotateX(@degrees); | ||||
|           transform: rotateX(@degrees); | ||||
| } | ||||
| .rotateY(@degrees) { | ||||
|   -webkit-transform: rotateY(@degrees); | ||||
|       -ms-transform: rotateY(@degrees); // IE9 only | ||||
|        -o-transform: rotateY(@degrees); | ||||
|           transform: rotateY(@degrees); | ||||
| } | ||||
| .perspective(@perspective) { | ||||
|   -webkit-perspective: @perspective; | ||||
|      -moz-perspective: @perspective; | ||||
|           perspective: @perspective; | ||||
| } | ||||
| .perspective-origin(@perspective) { | ||||
|   -webkit-perspective-origin: @perspective; | ||||
|      -moz-perspective-origin: @perspective; | ||||
|           perspective-origin: @perspective; | ||||
| } | ||||
| .transform-origin(@origin) { | ||||
|   -webkit-transform-origin: @origin; | ||||
|      -moz-transform-origin: @origin; | ||||
|       -ms-transform-origin: @origin; // IE9 only | ||||
|           transform-origin: @origin; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Transitions | ||||
| 
 | ||||
| .transition(@transition) { | ||||
|   -webkit-transition: @transition; | ||||
|        -o-transition: @transition; | ||||
|           transition: @transition; | ||||
| } | ||||
| .transition-property(@transition-property) { | ||||
|   -webkit-transition-property: @transition-property; | ||||
|           transition-property: @transition-property; | ||||
| } | ||||
| .transition-delay(@transition-delay) { | ||||
|   -webkit-transition-delay: @transition-delay; | ||||
|           transition-delay: @transition-delay; | ||||
| } | ||||
| .transition-duration(@transition-duration) { | ||||
|   -webkit-transition-duration: @transition-duration; | ||||
|           transition-duration: @transition-duration; | ||||
| } | ||||
| .transition-timing-function(@timing-function) { | ||||
|   -webkit-transition-timing-function: @timing-function; | ||||
|           transition-timing-function: @timing-function; | ||||
| } | ||||
| .transition-transform(@transition) { | ||||
|   -webkit-transition: -webkit-transform @transition; | ||||
|      -moz-transition: -moz-transform @transition; | ||||
|        -o-transition: -o-transform @transition; | ||||
|           transition: transform @transition; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // User select | ||||
| // For selecting text on the page | ||||
| 
 | ||||
| .user-select(@select) { | ||||
|   -webkit-user-select: @select; | ||||
|      -moz-user-select: @select; | ||||
|       -ms-user-select: @select; // IE10+ | ||||
|           user-select: @select; | ||||
| } | ||||
| @ -1,150 +0,0 @@ | ||||
| // | ||||
| // Modals | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // .modal-open      - body class for killing the scroll | ||||
| // .modal           - container to scroll within | ||||
| // .modal-dialog    - positioning shell for the actual modal | ||||
| // .modal-content   - actual modal w/ bg and corners and shit | ||||
| 
 | ||||
| // Kill the scroll on the body | ||||
| .modal-open { | ||||
|   overflow: hidden; | ||||
| } | ||||
| 
 | ||||
| // Container that the modal scrolls within | ||||
| .modal { | ||||
|   display: none; | ||||
|   overflow: hidden; | ||||
|   position: fixed; | ||||
|   top: 0; | ||||
|   right: 0; | ||||
|   bottom: 0; | ||||
|   left: 0; | ||||
|   z-index: @zindex-modal; | ||||
|   -webkit-overflow-scrolling: touch; | ||||
| 
 | ||||
|   // Prevent Chrome on Windows from adding a focus outline. For details, see | ||||
|   // https://github.com/twbs/bootstrap/pull/10951. | ||||
|   outline: 0; | ||||
| 
 | ||||
|   // When fading in the modal, animate it to slide down | ||||
|   &.fade .modal-dialog { | ||||
|     .translate3d(0, -25%, 0); | ||||
|     .transition-transform(~"0.3s ease-out"); | ||||
|   } | ||||
|   &.in .modal-dialog { .translate3d(0, 0, 0) } | ||||
| } | ||||
| .modal-open .modal { | ||||
|   overflow-x: hidden; | ||||
|   overflow-y: auto; | ||||
| } | ||||
| 
 | ||||
| // Shell div to position the modal with bottom padding | ||||
| .modal-dialog { | ||||
|   position: relative; | ||||
|   width: auto; | ||||
|   margin: 10px; | ||||
| } | ||||
| 
 | ||||
| // Actual modal | ||||
| .modal-content { | ||||
|   position: relative; | ||||
|   background-color: @modal-content-bg; | ||||
|   border: 1px solid @modal-content-fallback-border-color; //old browsers fallback (ie8 etc) | ||||
|   border: 1px solid @modal-content-border-color; | ||||
|   border-radius: @border-radius-large; | ||||
|   .box-shadow(0 3px 9px rgba(0,0,0,.5)); | ||||
|   background-clip: padding-box; | ||||
|   // Remove focus outline from opened modal | ||||
|   outline: 0; | ||||
| } | ||||
| 
 | ||||
| // Modal background | ||||
| .modal-backdrop { | ||||
|   position: fixed; | ||||
|   top: 0; | ||||
|   right: 0; | ||||
|   bottom: 0; | ||||
|   left: 0; | ||||
|   z-index: @zindex-modal-background; | ||||
|   background-color: @modal-backdrop-bg; | ||||
|   // Fade for backdrop | ||||
|   &.fade { .opacity(0); } | ||||
|   &.in { .opacity(@modal-backdrop-opacity); } | ||||
| } | ||||
| 
 | ||||
| // Modal header | ||||
| // Top section of the modal w/ title and dismiss | ||||
| .modal-header { | ||||
|   padding: @modal-title-padding; | ||||
|   border-bottom: 1px solid @modal-header-border-color; | ||||
|   min-height: (@modal-title-padding + @modal-title-line-height); | ||||
| } | ||||
| // Close icon | ||||
| .modal-header .close { | ||||
|   margin-top: -2px; | ||||
| } | ||||
| 
 | ||||
| // Title text within header | ||||
| .modal-title { | ||||
|   margin: 0; | ||||
|   line-height: @modal-title-line-height; | ||||
| } | ||||
| 
 | ||||
| // Modal body | ||||
| // Where all modal content resides (sibling of .modal-header and .modal-footer) | ||||
| .modal-body { | ||||
|   position: relative; | ||||
|   padding: @modal-inner-padding; | ||||
| } | ||||
| 
 | ||||
| // Footer (for actions) | ||||
| .modal-footer { | ||||
|   padding: @modal-inner-padding; | ||||
|   text-align: right; // right align buttons | ||||
|   border-top: 1px solid @modal-footer-border-color; | ||||
|   &:extend(.clearfix all); // clear it in case folks use .pull-* classes on buttons | ||||
| 
 | ||||
|   // Properly space out buttons | ||||
|   .btn + .btn { | ||||
|     margin-left: 5px; | ||||
|     margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs | ||||
|   } | ||||
|   // but override that for button groups | ||||
|   .btn-group .btn + .btn { | ||||
|     margin-left: -1px; | ||||
|   } | ||||
|   // and override it for block buttons as well | ||||
|   .btn-block + .btn-block { | ||||
|     margin-left: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Measure scrollbar width for padding body during modal show/hide | ||||
| .modal-scrollbar-measure { | ||||
|   position: absolute; | ||||
|   top: -9999px; | ||||
|   width: 50px; | ||||
|   height: 50px; | ||||
|   overflow: scroll; | ||||
| } | ||||
| 
 | ||||
| // Scale up the modal | ||||
| @media (min-width: @screen-sm-min) { | ||||
|   // Automatically set modal's width for larger viewports | ||||
|   .modal-dialog { | ||||
|     width: @modal-md; | ||||
|     margin: 30px auto; | ||||
|   } | ||||
|   .modal-content { | ||||
|     .box-shadow(0 5px 15px rgba(0,0,0,.5)); | ||||
|   } | ||||
| 
 | ||||
|   // Modal sizes | ||||
|   .modal-sm { width: @modal-sm; } | ||||
| } | ||||
| 
 | ||||
| @media (min-width: @screen-md-min) { | ||||
|   .modal-lg { width: @modal-lg; } | ||||
| } | ||||
| @ -1,655 +0,0 @@ | ||||
| // | ||||
| // Navbars | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Wrapper and base class | ||||
| // | ||||
| // Provide a static navbar from which we expand to create full-width, fixed, and | ||||
| // other navbar variations. | ||||
| 
 | ||||
| .navbar { | ||||
|   position: relative; | ||||
|   min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode) | ||||
|   margin-bottom: @navbar-margin-bottom; | ||||
|   border: 1px solid transparent; | ||||
| 
 | ||||
|   // Prevent floats from breaking the navbar | ||||
|   &:extend(.clearfix all); | ||||
| 
 | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     border-radius: @navbar-border-radius; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Navbar heading | ||||
| // | ||||
| // Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy | ||||
| // styling of responsive aspects. | ||||
| 
 | ||||
| .navbar-header { | ||||
|   &:extend(.clearfix all); | ||||
| 
 | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     float: left; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Navbar collapse (body) | ||||
| // | ||||
| // Group your navbar content into this for easy collapsing and expanding across | ||||
| // various device sizes. By default, this content is collapsed when <768px, but | ||||
| // will expand past that for a horizontal display. | ||||
| // | ||||
| // To start (on mobile devices) the navbar links, forms, and buttons are stacked | ||||
| // vertically and include a `max-height` to overflow in case you have too much | ||||
| // content for the user's viewport. | ||||
| 
 | ||||
| .navbar-collapse { | ||||
|   overflow-x: visible; | ||||
|   padding-right: @navbar-padding-horizontal; | ||||
|   padding-left:  @navbar-padding-horizontal; | ||||
|   border-top: 1px solid transparent; | ||||
|   box-shadow: inset 0 1px 0 rgba(255,255,255,.1); | ||||
|   &:extend(.clearfix all); | ||||
|   -webkit-overflow-scrolling: touch; | ||||
| 
 | ||||
|   &.in { | ||||
|     overflow-y: auto; | ||||
|   } | ||||
| 
 | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     width: auto; | ||||
|     border-top: 0; | ||||
|     box-shadow: none; | ||||
| 
 | ||||
|     &.collapse { | ||||
|       display: block !important; | ||||
|       height: auto !important; | ||||
|       padding-bottom: 0; // Override default setting | ||||
|       overflow: visible !important; | ||||
|     } | ||||
| 
 | ||||
|     &.in { | ||||
|       overflow-y: visible; | ||||
|     } | ||||
| 
 | ||||
|     // Undo the collapse side padding for navbars with containers to ensure | ||||
|     // alignment of right-aligned contents. | ||||
|     .navbar-fixed-top &, | ||||
|     .navbar-static-top &, | ||||
|     .navbar-fixed-bottom & { | ||||
|       padding-left: 0; | ||||
|       padding-right: 0; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .navbar-fixed-top, | ||||
| .navbar-fixed-bottom { | ||||
|   .navbar-collapse { | ||||
|     max-height: @navbar-collapse-max-height; | ||||
| 
 | ||||
|     @media (max-width: @screen-xs-min) and (orientation: landscape) { | ||||
|       max-height: 200px; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Both navbar header and collapse | ||||
| // | ||||
| // When a container is present, change the behavior of the header and collapse. | ||||
| 
 | ||||
| .container, | ||||
| .container-fluid { | ||||
|   > .navbar-header, | ||||
|   > .navbar-collapse { | ||||
|     margin-right: -@navbar-padding-horizontal; | ||||
|     margin-left:  -@navbar-padding-horizontal; | ||||
| 
 | ||||
|     @media (min-width: @grid-float-breakpoint) { | ||||
|       margin-right: 0; | ||||
|       margin-left:  0; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Navbar alignment options | ||||
| // | ||||
| // Display the navbar across the entirety of the page or fixed it to the top or | ||||
| // bottom of the page. | ||||
| 
 | ||||
| // Static top (unfixed, but 100% wide) navbar | ||||
| .navbar-static-top { | ||||
|   z-index: @zindex-navbar; | ||||
|   border-width: 0 0 1px; | ||||
| 
 | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     border-radius: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Fix the top/bottom navbars when screen real estate supports it | ||||
| .navbar-fixed-top, | ||||
| .navbar-fixed-bottom { | ||||
|   position: fixed; | ||||
|   right: 0; | ||||
|   left: 0; | ||||
|   z-index: @zindex-navbar-fixed; | ||||
|   .translate3d(0, 0, 0); | ||||
| 
 | ||||
|   // Undo the rounded corners | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     border-radius: 0; | ||||
|   } | ||||
| } | ||||
| .navbar-fixed-top { | ||||
|   top: 0; | ||||
|   border-width: 0 0 1px; | ||||
| } | ||||
| .navbar-fixed-bottom { | ||||
|   bottom: 0; | ||||
|   margin-bottom: 0; // override .navbar defaults | ||||
|   border-width: 1px 0 0; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Brand/project name | ||||
| 
 | ||||
| .navbar-brand { | ||||
|   float: left; | ||||
|   padding: @navbar-padding-vertical @navbar-padding-horizontal; | ||||
|   font-size: @font-size-large; | ||||
|   line-height: @line-height-computed; | ||||
|   height: @navbar-height; | ||||
| 
 | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     text-decoration: none; | ||||
|   } | ||||
| 
 | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     .navbar > .container &, | ||||
|     .navbar > .container-fluid & { | ||||
|       margin-left: -@navbar-padding-horizontal; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Navbar toggle | ||||
| // | ||||
| // Custom button for toggling the `.navbar-collapse`, powered by the collapse | ||||
| // JavaScript plugin. | ||||
| 
 | ||||
| .navbar-toggle { | ||||
|   position: relative; | ||||
|   float: right; | ||||
|   margin-right: @navbar-padding-horizontal; | ||||
|   padding: 9px 10px; | ||||
|   .navbar-vertical-align(34px); | ||||
|   background-color: transparent; | ||||
|   background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 | ||||
|   border: 1px solid transparent; | ||||
|   border-radius: @border-radius-base; | ||||
| 
 | ||||
|   // We remove the `outline` here, but later compensate by attaching `:hover` | ||||
|   // styles to `:focus`. | ||||
|   &:focus { | ||||
|     outline: 0; | ||||
|   } | ||||
| 
 | ||||
|   // Bars | ||||
|   .icon-bar { | ||||
|     display: block; | ||||
|     width: 22px; | ||||
|     height: 2px; | ||||
|     border-radius: 1px; | ||||
|   } | ||||
|   .icon-bar + .icon-bar { | ||||
|     margin-top: 4px; | ||||
|   } | ||||
| 
 | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     display: none; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Navbar nav links | ||||
| // | ||||
| // Builds on top of the `.nav` components with its own modifier class to make | ||||
| // the nav the full height of the horizontal nav (above 768px). | ||||
| 
 | ||||
| .navbar-nav { | ||||
|   margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal; | ||||
| 
 | ||||
|   > li > a { | ||||
|     padding-top:    10px; | ||||
|     padding-bottom: 10px; | ||||
|     line-height: @line-height-computed; | ||||
|   } | ||||
| 
 | ||||
|   @media (max-width: @grid-float-breakpoint-max) { | ||||
|     // Dropdowns get custom display when collapsed | ||||
|     .open .dropdown-menu { | ||||
|       position: static; | ||||
|       float: none; | ||||
|       width: auto; | ||||
|       margin-top: 0; | ||||
|       background-color: transparent; | ||||
|       border: 0; | ||||
|       box-shadow: none; | ||||
|       > li > a, | ||||
|       .dropdown-header { | ||||
|         padding: 5px 15px 5px 25px; | ||||
|       } | ||||
|       > li > a { | ||||
|         line-height: @line-height-computed; | ||||
|         &:hover, | ||||
|         &:focus { | ||||
|           background-image: none; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Uncollapse the nav | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     float: left; | ||||
|     margin: 0; | ||||
| 
 | ||||
|     > li { | ||||
|       float: left; | ||||
|       > a { | ||||
|         padding-top:    @navbar-padding-vertical; | ||||
|         padding-bottom: @navbar-padding-vertical; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     &.navbar-right:last-child { | ||||
|       margin-right: -@navbar-padding-horizontal; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Component alignment | ||||
| // | ||||
| // Repurpose the pull utilities as their own navbar utilities to avoid specificity | ||||
| // issues with parents and chaining. Only do this when the navbar is uncollapsed | ||||
| // though so that navbar contents properly stack and align in mobile. | ||||
| 
 | ||||
| @media (min-width: @grid-float-breakpoint) { | ||||
|   .navbar-left  { .pull-left(); } | ||||
|   .navbar-right { .pull-right(); } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Navbar form | ||||
| // | ||||
| // Extension of the `.form-inline` with some extra flavor for optimum display in | ||||
| // our navbars. | ||||
| 
 | ||||
| .navbar-form { | ||||
|   margin-left: -@navbar-padding-horizontal; | ||||
|   margin-right: -@navbar-padding-horizontal; | ||||
|   padding: 10px @navbar-padding-horizontal; | ||||
|   border-top: 1px solid transparent; | ||||
|   border-bottom: 1px solid transparent; | ||||
|   @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); | ||||
|   .box-shadow(@shadow); | ||||
| 
 | ||||
|   // Mixin behavior for optimum display | ||||
|   .form-inline(); | ||||
| 
 | ||||
|   .form-group { | ||||
|     @media (max-width: @grid-float-breakpoint-max) { | ||||
|       margin-bottom: 5px; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Vertically center in expanded, horizontal navbar | ||||
|   .navbar-vertical-align(@input-height-base); | ||||
| 
 | ||||
|   // Undo 100% width for pull classes | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     width: auto; | ||||
|     border: 0; | ||||
|     margin-left: 0; | ||||
|     margin-right: 0; | ||||
|     padding-top: 0; | ||||
|     padding-bottom: 0; | ||||
|     .box-shadow(none); | ||||
| 
 | ||||
|     // Outdent the form if last child to line up with content down the page | ||||
|     &.navbar-right:last-child { | ||||
|       margin-right: -@navbar-padding-horizontal; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Dropdown menus | ||||
| 
 | ||||
| // Menu position and menu carets | ||||
| .navbar-nav > li > .dropdown-menu { | ||||
|   margin-top: 0; | ||||
|   .border-top-radius(0); | ||||
| } | ||||
| // Menu position and menu caret support for dropups via extra dropup class | ||||
| .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { | ||||
|   .border-bottom-radius(0); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Buttons in navbars | ||||
| // | ||||
| // Vertically center a button within a navbar (when *not* in a form). | ||||
| 
 | ||||
| .navbar-btn { | ||||
|   .navbar-vertical-align(@input-height-base); | ||||
| 
 | ||||
|   &.btn-sm { | ||||
|     .navbar-vertical-align(@input-height-small); | ||||
|   } | ||||
|   &.btn-xs { | ||||
|     .navbar-vertical-align(22); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Text in navbars | ||||
| // | ||||
| // Add a class to make any element properly align itself vertically within the navbars. | ||||
| 
 | ||||
| .navbar-text { | ||||
|   .navbar-vertical-align(@line-height-computed); | ||||
| 
 | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     float: left; | ||||
|     margin-left: @navbar-padding-horizontal; | ||||
|     margin-right: @navbar-padding-horizontal; | ||||
| 
 | ||||
|     // Outdent the form if last child to line up with content down the page | ||||
|     &.navbar-right:last-child { | ||||
|       margin-right: 0; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Alternate navbars | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Default navbar | ||||
| .navbar-default { | ||||
|   background-color: @navbar-default-bg; | ||||
|   border-color: @navbar-default-border; | ||||
| 
 | ||||
|   .navbar-brand { | ||||
|     color: @navbar-default-brand-color; | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       color: @navbar-default-brand-hover-color; | ||||
|       background-color: @navbar-default-brand-hover-bg; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .navbar-text { | ||||
|     color: @navbar-default-color; | ||||
|   } | ||||
| 
 | ||||
|   .navbar-nav { | ||||
|     > li > a { | ||||
|       color: @navbar-default-link-color; | ||||
| 
 | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @navbar-default-link-hover-color; | ||||
|         background-color: @navbar-default-link-hover-bg; | ||||
|       } | ||||
|     } | ||||
|     > .active > a { | ||||
|       &, | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @navbar-default-link-active-color; | ||||
|         background-color: @navbar-default-link-active-bg; | ||||
|       } | ||||
|     } | ||||
|     > .disabled > a { | ||||
|       &, | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @navbar-default-link-disabled-color; | ||||
|         background-color: @navbar-default-link-disabled-bg; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .navbar-toggle { | ||||
|     border-color: @navbar-default-toggle-border-color; | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       background-color: @navbar-default-toggle-hover-bg; | ||||
|     } | ||||
|     .icon-bar { | ||||
|       background-color: @navbar-default-toggle-icon-bar-bg; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .navbar-collapse, | ||||
|   .navbar-form { | ||||
|     border-color: @navbar-default-border; | ||||
|   } | ||||
| 
 | ||||
|   // Dropdown menu items | ||||
|   .navbar-nav { | ||||
|     // Remove background color from open dropdown | ||||
|     > .open > a { | ||||
|       &, | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         background-color: @navbar-default-link-active-bg; | ||||
|         color: @navbar-default-link-active-color; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     @media (max-width: @grid-float-breakpoint-max) { | ||||
|       // Dropdowns get custom display when collapsed | ||||
|       .open .dropdown-menu { | ||||
|         > li > a { | ||||
|           color: @navbar-default-link-color; | ||||
|           &:hover, | ||||
|           &:focus { | ||||
|             color: @navbar-default-link-hover-color; | ||||
|             background-color: @navbar-default-link-hover-bg; | ||||
|           } | ||||
|         } | ||||
|         > .active > a { | ||||
|           &, | ||||
|           &:hover, | ||||
|           &:focus { | ||||
|             color: @navbar-default-link-active-color; | ||||
|             background-color: @navbar-default-link-active-bg; | ||||
|           } | ||||
|         } | ||||
|         > .disabled > a { | ||||
|           &, | ||||
|           &:hover, | ||||
|           &:focus { | ||||
|             color: @navbar-default-link-disabled-color; | ||||
|             background-color: @navbar-default-link-disabled-bg; | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
| 
 | ||||
|   // Links in navbars | ||||
|   // | ||||
|   // Add a class to ensure links outside the navbar nav are colored correctly. | ||||
| 
 | ||||
|   .navbar-link { | ||||
|     color: @navbar-default-link-color; | ||||
|     &:hover { | ||||
|       color: @navbar-default-link-hover-color; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .btn-link { | ||||
|     color: @navbar-default-link-color; | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       color: @navbar-default-link-hover-color; | ||||
|     } | ||||
|     &[disabled], | ||||
|     fieldset[disabled] & { | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @navbar-default-link-disabled-color; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Inverse navbar | ||||
| 
 | ||||
| .navbar-inverse { | ||||
|   background-color: @navbar-inverse-bg; | ||||
|   border-color: @navbar-inverse-border; | ||||
| 
 | ||||
|   .navbar-brand { | ||||
|     color: @navbar-inverse-brand-color; | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       color: @navbar-inverse-brand-hover-color; | ||||
|       background-color: @navbar-inverse-brand-hover-bg; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .navbar-text { | ||||
|     color: @navbar-inverse-color; | ||||
|   } | ||||
| 
 | ||||
|   .navbar-nav { | ||||
|     > li > a { | ||||
|       color: @navbar-inverse-link-color; | ||||
| 
 | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @navbar-inverse-link-hover-color; | ||||
|         background-color: @navbar-inverse-link-hover-bg; | ||||
|       } | ||||
|     } | ||||
|     > .active > a { | ||||
|       &, | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @navbar-inverse-link-active-color; | ||||
|         background-color: @navbar-inverse-link-active-bg; | ||||
|       } | ||||
|     } | ||||
|     > .disabled > a { | ||||
|       &, | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @navbar-inverse-link-disabled-color; | ||||
|         background-color: @navbar-inverse-link-disabled-bg; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Darken the responsive nav toggle | ||||
|   .navbar-toggle { | ||||
|     border-color: @navbar-inverse-toggle-border-color; | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       background-color: @navbar-inverse-toggle-hover-bg; | ||||
|     } | ||||
|     .icon-bar { | ||||
|       background-color: @navbar-inverse-toggle-icon-bar-bg; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .navbar-collapse, | ||||
|   .navbar-form { | ||||
|     border-color: darken(@navbar-inverse-bg, 7%); | ||||
|   } | ||||
| 
 | ||||
|   // Dropdowns | ||||
|   .navbar-nav { | ||||
|     > .open > a { | ||||
|       &, | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         background-color: @navbar-inverse-link-active-bg; | ||||
|         color: @navbar-inverse-link-active-color; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     @media (max-width: @grid-float-breakpoint-max) { | ||||
|       // Dropdowns get custom display | ||||
|       .open .dropdown-menu { | ||||
|         > .dropdown-header { | ||||
|           border-color: @navbar-inverse-border; | ||||
|         } | ||||
|         .divider { | ||||
|           background-color: @navbar-inverse-border; | ||||
|         } | ||||
|         > li > a { | ||||
|           color: @navbar-inverse-link-color; | ||||
|           &:hover, | ||||
|           &:focus { | ||||
|             color: @navbar-inverse-link-hover-color; | ||||
|             background-color: @navbar-inverse-link-hover-bg; | ||||
|           } | ||||
|         } | ||||
|         > .active > a { | ||||
|           &, | ||||
|           &:hover, | ||||
|           &:focus { | ||||
|             color: @navbar-inverse-link-active-color; | ||||
|             background-color: @navbar-inverse-link-active-bg; | ||||
|           } | ||||
|         } | ||||
|         > .disabled > a { | ||||
|           &, | ||||
|           &:hover, | ||||
|           &:focus { | ||||
|             color: @navbar-inverse-link-disabled-color; | ||||
|             background-color: @navbar-inverse-link-disabled-bg; | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .navbar-link { | ||||
|     color: @navbar-inverse-link-color; | ||||
|     &:hover { | ||||
|       color: @navbar-inverse-link-hover-color; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .btn-link { | ||||
|     color: @navbar-inverse-link-color; | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       color: @navbar-inverse-link-hover-color; | ||||
|     } | ||||
|     &[disabled], | ||||
|     fieldset[disabled] & { | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @navbar-inverse-link-disabled-color; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,242 +0,0 @@ | ||||
| // | ||||
| // Navs | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Base class | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .nav { | ||||
|   margin-bottom: 0; | ||||
|   padding-left: 0; // Override default ul/ol | ||||
|   list-style: none; | ||||
|   &:extend(.clearfix all); | ||||
| 
 | ||||
|   > li { | ||||
|     position: relative; | ||||
|     display: block; | ||||
| 
 | ||||
|     > a { | ||||
|       position: relative; | ||||
|       display: block; | ||||
|       padding: @nav-link-padding; | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         text-decoration: none; | ||||
|         background-color: @nav-link-hover-bg; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     // Disabled state sets text to gray and nukes hover/tab effects | ||||
|     &.disabled > a { | ||||
|       color: @nav-disabled-link-color; | ||||
| 
 | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @nav-disabled-link-hover-color; | ||||
|         text-decoration: none; | ||||
|         background-color: transparent; | ||||
|         cursor: not-allowed; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Open dropdowns | ||||
|   .open > a { | ||||
|     &, | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       background-color: @nav-link-hover-bg; | ||||
|       border-color: @link-color; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Nav dividers (deprecated with v3.0.1) | ||||
|   // | ||||
|   // This should have been removed in v3 with the dropping of `.nav-list`, but | ||||
|   // we missed it. We don't currently support this anywhere, but in the interest | ||||
|   // of maintaining backward compatibility in case you use it, it's deprecated. | ||||
|   .nav-divider { | ||||
|     .nav-divider(); | ||||
|   } | ||||
| 
 | ||||
|   // Prevent IE8 from misplacing imgs | ||||
|   // | ||||
|   // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989 | ||||
|   > li > a > img { | ||||
|     max-width: none; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Tabs | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Give the tabs something to sit on | ||||
| .nav-tabs { | ||||
|   border-bottom: 1px solid @nav-tabs-border-color; | ||||
|   > li { | ||||
|     float: left; | ||||
|     // Make the list-items overlay the bottom border | ||||
|     margin-bottom: -1px; | ||||
| 
 | ||||
|     // Actual tabs (as links) | ||||
|     > a { | ||||
|       margin-right: 2px; | ||||
|       line-height: @line-height-base; | ||||
|       border: 1px solid transparent; | ||||
|       border-radius: @border-radius-base @border-radius-base 0 0; | ||||
|       &:hover { | ||||
|         border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     // Active state, and its :hover to override normal :hover | ||||
|     &.active > a { | ||||
|       &, | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @nav-tabs-active-link-hover-color; | ||||
|         background-color: @nav-tabs-active-link-hover-bg; | ||||
|         border: 1px solid @nav-tabs-active-link-hover-border-color; | ||||
|         border-bottom-color: transparent; | ||||
|         cursor: default; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|   // pulling this in mainly for less shorthand | ||||
|   &.nav-justified { | ||||
|     .nav-justified(); | ||||
|     .nav-tabs-justified(); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Pills | ||||
| // ------------------------- | ||||
| .nav-pills { | ||||
|   > li { | ||||
|     float: left; | ||||
| 
 | ||||
|     // Links rendered as pills | ||||
|     > a { | ||||
|       border-radius: @nav-pills-border-radius; | ||||
|     } | ||||
|     + li { | ||||
|       margin-left: 2px; | ||||
|     } | ||||
| 
 | ||||
|     // Active state | ||||
|     &.active > a { | ||||
|       &, | ||||
|       &:hover, | ||||
|       &:focus { | ||||
|         color: @nav-pills-active-link-hover-color; | ||||
|         background-color: @nav-pills-active-link-hover-bg; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Stacked pills | ||||
| .nav-stacked { | ||||
|   > li { | ||||
|     float: none; | ||||
|     + li { | ||||
|       margin-top: 2px; | ||||
|       margin-left: 0; // no need for this gap between nav items | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Nav variations | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Justified nav links | ||||
| // ------------------------- | ||||
| 
 | ||||
| .nav-justified { | ||||
|   width: 100%; | ||||
| 
 | ||||
|   > li { | ||||
|     float: none; | ||||
|     > a { | ||||
|       text-align: center; | ||||
|       margin-bottom: 5px; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   > .dropdown .dropdown-menu { | ||||
|     top: auto; | ||||
|     left: auto; | ||||
|   } | ||||
| 
 | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     > li { | ||||
|       display: table-cell; | ||||
|       width: 1%; | ||||
|       > a { | ||||
|         margin-bottom: 0; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Move borders to anchors instead of bottom of list | ||||
| // | ||||
| // Mixin for adding on top the shared `.nav-justified` styles for our tabs | ||||
| .nav-tabs-justified { | ||||
|   border-bottom: 0; | ||||
| 
 | ||||
|   > li > a { | ||||
|     // Override margin from .nav-tabs | ||||
|     margin-right: 0; | ||||
|     border-radius: @border-radius-base; | ||||
|   } | ||||
| 
 | ||||
|   > .active > a, | ||||
|   > .active > a:hover, | ||||
|   > .active > a:focus { | ||||
|     border: 1px solid @nav-tabs-justified-link-border-color; | ||||
|   } | ||||
| 
 | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     > li > a { | ||||
|       border-bottom: 1px solid @nav-tabs-justified-link-border-color; | ||||
|       border-radius: @border-radius-base @border-radius-base 0 0; | ||||
|     } | ||||
|     > .active > a, | ||||
|     > .active > a:hover, | ||||
|     > .active > a:focus { | ||||
|       border-bottom-color: @nav-tabs-justified-active-link-border-color; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Tabbable tabs | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Hide tabbable panes to start, show them when `.active` | ||||
| .tab-content { | ||||
|   > .tab-pane { | ||||
|     display: none; | ||||
|   } | ||||
|   > .active { | ||||
|     display: block; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Dropdowns | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Specific dropdowns | ||||
| .nav-tabs .dropdown-menu { | ||||
|   // make dropdown border overlap tab border | ||||
|   margin-top: -1px; | ||||
|   // Remove the top rounded corners here since there is a hard edge above the menu | ||||
|   .border-top-radius(0); | ||||
| } | ||||
							
								
								
									
										425
									
								
								searx/static/less/bootstrap/normalize.less
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										425
									
								
								searx/static/less/bootstrap/normalize.less
									
									
									
									
										vendored
									
									
								
							| @ -1,425 +0,0 @@ | ||||
| /*! normalize.css v3.0.1 | MIT License | git.io/normalize */ | ||||
| 
 | ||||
| // | ||||
| // 1. Set default font family to sans-serif. | ||||
| // 2. Prevent iOS text size adjust after orientation change, without disabling | ||||
| //    user zoom. | ||||
| // | ||||
| 
 | ||||
| html { | ||||
|   font-family: sans-serif; // 1 | ||||
|   -ms-text-size-adjust: 100%; // 2 | ||||
|   -webkit-text-size-adjust: 100%; // 2 | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Remove default margin. | ||||
| // | ||||
| 
 | ||||
| body { | ||||
|   margin: 0; | ||||
| } | ||||
| 
 | ||||
| // HTML5 display definitions | ||||
| // ========================================================================== | ||||
| 
 | ||||
| // | ||||
| // Correct `block` display not defined for any HTML5 element in IE 8/9. | ||||
| // Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox. | ||||
| // Correct `block` display not defined for `main` in IE 11. | ||||
| // | ||||
| 
 | ||||
| article, | ||||
| aside, | ||||
| details, | ||||
| figcaption, | ||||
| figure, | ||||
| footer, | ||||
| header, | ||||
| hgroup, | ||||
| main, | ||||
| nav, | ||||
| section, | ||||
| summary { | ||||
|   display: block; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // 1. Correct `inline-block` display not defined in IE 8/9. | ||||
| // 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. | ||||
| // | ||||
| 
 | ||||
| audio, | ||||
| canvas, | ||||
| progress, | ||||
| video { | ||||
|   display: inline-block; // 1 | ||||
|   vertical-align: baseline; // 2 | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Prevent modern browsers from displaying `audio` without controls. | ||||
| // Remove excess height in iOS 5 devices. | ||||
| // | ||||
| 
 | ||||
| audio:not([controls]) { | ||||
|   display: none; | ||||
|   height: 0; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address `[hidden]` styling not present in IE 8/9/10. | ||||
| // Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. | ||||
| // | ||||
| 
 | ||||
| [hidden], | ||||
| template { | ||||
|   display: none; | ||||
| } | ||||
| 
 | ||||
| // Links | ||||
| // ========================================================================== | ||||
| 
 | ||||
| // | ||||
| // Remove the gray background color from active links in IE 10. | ||||
| // | ||||
| 
 | ||||
| a { | ||||
|   background: transparent; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Improve readability when focused and also mouse hovered in all browsers. | ||||
| // | ||||
| 
 | ||||
| a:active, | ||||
| a:hover { | ||||
|   outline: 0; | ||||
| } | ||||
| 
 | ||||
| // Text-level semantics | ||||
| // ========================================================================== | ||||
| 
 | ||||
| // | ||||
| // Address styling not present in IE 8/9/10/11, Safari, and Chrome. | ||||
| // | ||||
| 
 | ||||
| abbr[title] { | ||||
|   border-bottom: 1px dotted; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address style set to `bolder` in Firefox 4+, Safari, and Chrome. | ||||
| // | ||||
| 
 | ||||
| b, | ||||
| strong { | ||||
|   font-weight: bold; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address styling not present in Safari and Chrome. | ||||
| // | ||||
| 
 | ||||
| dfn { | ||||
|   font-style: italic; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address variable `h1` font-size and margin within `section` and `article` | ||||
| // contexts in Firefox 4+, Safari, and Chrome. | ||||
| // | ||||
| 
 | ||||
| h1 { | ||||
|   font-size: 2em; | ||||
|   margin: 0.67em 0; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address styling not present in IE 8/9. | ||||
| // | ||||
| 
 | ||||
| mark { | ||||
|   background: #ff0; | ||||
|   color: #000; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address inconsistent and variable font size in all browsers. | ||||
| // | ||||
| 
 | ||||
| small { | ||||
|   font-size: 80%; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Prevent `sub` and `sup` affecting `line-height` in all browsers. | ||||
| // | ||||
| 
 | ||||
| sub, | ||||
| sup { | ||||
|   font-size: 75%; | ||||
|   line-height: 0; | ||||
|   position: relative; | ||||
|   vertical-align: baseline; | ||||
| } | ||||
| 
 | ||||
| sup { | ||||
|   top: -0.5em; | ||||
| } | ||||
| 
 | ||||
| sub { | ||||
|   bottom: -0.25em; | ||||
| } | ||||
| 
 | ||||
| // Embedded content | ||||
| // ========================================================================== | ||||
| 
 | ||||
| // | ||||
| // Remove border when inside `a` element in IE 8/9/10. | ||||
| // | ||||
| 
 | ||||
| img { | ||||
|   border: 0; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Correct overflow not hidden in IE 9/10/11. | ||||
| // | ||||
| 
 | ||||
| svg:not(:root) { | ||||
|   overflow: hidden; | ||||
| } | ||||
| 
 | ||||
| // Grouping content | ||||
| // ========================================================================== | ||||
| 
 | ||||
| // | ||||
| // Address margin not present in IE 8/9 and Safari. | ||||
| // | ||||
| 
 | ||||
| figure { | ||||
|   margin: 1em 40px; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address differences between Firefox and other browsers. | ||||
| // | ||||
| 
 | ||||
| hr { | ||||
|   -moz-box-sizing: content-box; | ||||
|   box-sizing: content-box; | ||||
|   height: 0; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Contain overflow in all browsers. | ||||
| // | ||||
| 
 | ||||
| pre { | ||||
|   overflow: auto; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address odd `em`-unit font size rendering in all browsers. | ||||
| // | ||||
| 
 | ||||
| code, | ||||
| kbd, | ||||
| pre, | ||||
| samp { | ||||
|   font-family: monospace, monospace; | ||||
|   font-size: 1em; | ||||
| } | ||||
| 
 | ||||
| // Forms | ||||
| // ========================================================================== | ||||
| 
 | ||||
| // | ||||
| // Known limitation: by default, Chrome and Safari on OS X allow very limited | ||||
| // styling of `select`, unless a `border` property is set. | ||||
| // | ||||
| 
 | ||||
| // | ||||
| // 1. Correct color not being inherited. | ||||
| //    Known issue: affects color of disabled elements. | ||||
| // 2. Correct font properties not being inherited. | ||||
| // 3. Address margins set differently in Firefox 4+, Safari, and Chrome. | ||||
| // | ||||
| 
 | ||||
| button, | ||||
| input, | ||||
| optgroup, | ||||
| select, | ||||
| textarea { | ||||
|   color: inherit; // 1 | ||||
|   font: inherit; // 2 | ||||
|   margin: 0; // 3 | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address `overflow` set to `hidden` in IE 8/9/10/11. | ||||
| // | ||||
| 
 | ||||
| button { | ||||
|   overflow: visible; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address inconsistent `text-transform` inheritance for `button` and `select`. | ||||
| // All other form control elements do not inherit `text-transform` values. | ||||
| // Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. | ||||
| // Correct `select` style inheritance in Firefox. | ||||
| // | ||||
| 
 | ||||
| button, | ||||
| select { | ||||
|   text-transform: none; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` | ||||
| //    and `video` controls. | ||||
| // 2. Correct inability to style clickable `input` types in iOS. | ||||
| // 3. Improve usability and consistency of cursor style between image-type | ||||
| //    `input` and others. | ||||
| // | ||||
| 
 | ||||
| button, | ||||
| html input[type="button"], // 1 | ||||
| input[type="reset"], | ||||
| input[type="submit"] { | ||||
|   -webkit-appearance: button; // 2 | ||||
|   cursor: pointer; // 3 | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Re-set default cursor for disabled elements. | ||||
| // | ||||
| 
 | ||||
| button[disabled], | ||||
| html input[disabled] { | ||||
|   cursor: default; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Remove inner padding and border in Firefox 4+. | ||||
| // | ||||
| 
 | ||||
| button::-moz-focus-inner, | ||||
| input::-moz-focus-inner { | ||||
|   border: 0; | ||||
|   padding: 0; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Address Firefox 4+ setting `line-height` on `input` using `!important` in | ||||
| // the UA stylesheet. | ||||
| // | ||||
| 
 | ||||
| input { | ||||
|   line-height: normal; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // It's recommended that you don't attempt to style these elements. | ||||
| // Firefox's implementation doesn't respect box-sizing, padding, or width. | ||||
| // | ||||
| // 1. Address box sizing set to `content-box` in IE 8/9/10. | ||||
| // 2. Remove excess padding in IE 8/9/10. | ||||
| // | ||||
| 
 | ||||
| input[type="checkbox"], | ||||
| input[type="radio"] { | ||||
|   box-sizing: border-box; // 1 | ||||
|   padding: 0; // 2 | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Fix the cursor style for Chrome's increment/decrement buttons. For certain | ||||
| // `font-size` values of the `input`, it causes the cursor style of the | ||||
| // decrement button to change from `default` to `text`. | ||||
| // | ||||
| 
 | ||||
| input[type="number"]::-webkit-inner-spin-button, | ||||
| input[type="number"]::-webkit-outer-spin-button { | ||||
|   height: auto; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // 1. Address `appearance` set to `searchfield` in Safari and Chrome. | ||||
| // 2. Address `box-sizing` set to `border-box` in Safari and Chrome | ||||
| //    (include `-moz` to future-proof). | ||||
| // | ||||
| 
 | ||||
| input[type="search"] { | ||||
|   -webkit-appearance: textfield; // 1 | ||||
|   -moz-box-sizing: content-box; | ||||
|   -webkit-box-sizing: content-box; // 2 | ||||
|   box-sizing: content-box; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Remove inner padding and search cancel button in Safari and Chrome on OS X. | ||||
| // Safari (but not Chrome) clips the cancel button when the search input has | ||||
| // padding (and `textfield` appearance). | ||||
| // | ||||
| 
 | ||||
| input[type="search"]::-webkit-search-cancel-button, | ||||
| input[type="search"]::-webkit-search-decoration { | ||||
|   -webkit-appearance: none; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Define consistent border, margin, and padding. | ||||
| // | ||||
| 
 | ||||
| fieldset { | ||||
|   border: 1px solid #c0c0c0; | ||||
|   margin: 0 2px; | ||||
|   padding: 0.35em 0.625em 0.75em; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // 1. Correct `color` not being inherited in IE 8/9/10/11. | ||||
| // 2. Remove padding so people aren't caught out if they zero out fieldsets. | ||||
| // | ||||
| 
 | ||||
| legend { | ||||
|   border: 0; // 1 | ||||
|   padding: 0; // 2 | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Remove default vertical scrollbar in IE 8/9/10/11. | ||||
| // | ||||
| 
 | ||||
| textarea { | ||||
|   overflow: auto; | ||||
| } | ||||
| 
 | ||||
| // | ||||
| // Don't inherit the `font-weight` (applied by a rule above). | ||||
| // NOTE: the default cannot safely be changed in Chrome and Safari on OS X. | ||||
| // | ||||
| 
 | ||||
| optgroup { | ||||
|   font-weight: bold; | ||||
| } | ||||
| 
 | ||||
| // Tables | ||||
| // ========================================================================== | ||||
| 
 | ||||
| // | ||||
| // Remove most spacing between table cells. | ||||
| // | ||||
| 
 | ||||
| table { | ||||
|   border-collapse: collapse; | ||||
|   border-spacing: 0; | ||||
| } | ||||
| 
 | ||||
| td, | ||||
| th { | ||||
|   padding: 0; | ||||
| } | ||||
| @ -1,55 +0,0 @@ | ||||
| // | ||||
| // Pager pagination | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| .pager { | ||||
|   padding-left: 0; | ||||
|   margin: @line-height-computed 0; | ||||
|   list-style: none; | ||||
|   text-align: center; | ||||
|   &:extend(.clearfix all); | ||||
|   li { | ||||
|     display: inline; | ||||
|     > a, | ||||
|     > span { | ||||
|       display: inline-block; | ||||
|       padding: 5px 14px; | ||||
|       background-color: @pager-bg; | ||||
|       border: 1px solid @pager-border; | ||||
|       border-radius: @pager-border-radius; | ||||
|     } | ||||
| 
 | ||||
|     > a:hover, | ||||
|     > a:focus { | ||||
|       text-decoration: none; | ||||
|       background-color: @pager-hover-bg; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .next { | ||||
|     > a, | ||||
|     > span { | ||||
|       float: right; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .previous { | ||||
|     > a, | ||||
|     > span { | ||||
|       float: left; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .disabled { | ||||
|     > a, | ||||
|     > a:hover, | ||||
|     > a:focus, | ||||
|     > span { | ||||
|       color: @pager-disabled-color; | ||||
|       background-color: @pager-bg; | ||||
|       cursor: not-allowed; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
| } | ||||
| @ -1,88 +0,0 @@ | ||||
| // | ||||
| // Pagination (multiple pages) | ||||
| // -------------------------------------------------- | ||||
| .pagination { | ||||
|   display: inline-block; | ||||
|   padding-left: 0; | ||||
|   margin: @line-height-computed 0; | ||||
|   border-radius: @border-radius-base; | ||||
| 
 | ||||
|   > li { | ||||
|     display: inline; // Remove list-style and block-level defaults | ||||
|     > a, | ||||
|     > span { | ||||
|       position: relative; | ||||
|       float: left; // Collapse white-space | ||||
|       padding: @padding-base-vertical @padding-base-horizontal; | ||||
|       line-height: @line-height-base; | ||||
|       text-decoration: none; | ||||
|       color: @pagination-color; | ||||
|       background-color: @pagination-bg; | ||||
|       border: 1px solid @pagination-border; | ||||
|       margin-left: -1px; | ||||
|     } | ||||
|     &:first-child { | ||||
|       > a, | ||||
|       > span { | ||||
|         margin-left: 0; | ||||
|         .border-left-radius(@border-radius-base); | ||||
|       } | ||||
|     } | ||||
|     &:last-child { | ||||
|       > a, | ||||
|       > span { | ||||
|         .border-right-radius(@border-radius-base); | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   > li > a, | ||||
|   > li > span { | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       color: @pagination-hover-color; | ||||
|       background-color: @pagination-hover-bg; | ||||
|       border-color: @pagination-hover-border; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   > .active > a, | ||||
|   > .active > span { | ||||
|     &, | ||||
|     &:hover, | ||||
|     &:focus { | ||||
|       z-index: 2; | ||||
|       color: @pagination-active-color; | ||||
|       background-color: @pagination-active-bg; | ||||
|       border-color: @pagination-active-border; | ||||
|       cursor: default; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   > .disabled { | ||||
|     > span, | ||||
|     > span:hover, | ||||
|     > span:focus, | ||||
|     > a, | ||||
|     > a:hover, | ||||
|     > a:focus { | ||||
|       color: @pagination-disabled-color; | ||||
|       background-color: @pagination-disabled-bg; | ||||
|       border-color: @pagination-disabled-border; | ||||
|       cursor: not-allowed; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Sizing | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Large | ||||
| .pagination-lg { | ||||
|   .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @border-radius-large); | ||||
| } | ||||
| 
 | ||||
| // Small | ||||
| .pagination-sm { | ||||
|   .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @border-radius-small); | ||||
| } | ||||
| @ -1,243 +0,0 @@ | ||||
| // | ||||
| // Panels | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Base class | ||||
| .panel { | ||||
|   margin-bottom: @line-height-computed; | ||||
|   background-color: @panel-bg; | ||||
|   border: 1px solid transparent; | ||||
|   border-radius: @panel-border-radius; | ||||
|   .box-shadow(0 1px 1px rgba(0,0,0,.05)); | ||||
| } | ||||
| 
 | ||||
| // Panel contents | ||||
| .panel-body { | ||||
|   padding: @panel-body-padding; | ||||
|   &:extend(.clearfix all); | ||||
| } | ||||
| 
 | ||||
| // Optional heading | ||||
| .panel-heading { | ||||
|   padding: @panel-heading-padding; | ||||
|   border-bottom: 1px solid transparent; | ||||
|   .border-top-radius((@panel-border-radius - 1)); | ||||
| 
 | ||||
|   > .dropdown .dropdown-toggle { | ||||
|     color: inherit; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Within heading, strip any `h*` tag of its default margins for spacing. | ||||
| .panel-title { | ||||
|   margin-top: 0; | ||||
|   margin-bottom: 0; | ||||
|   font-size: ceil((@font-size-base * 1.125)); | ||||
|   color: inherit; | ||||
| 
 | ||||
|   > a { | ||||
|     color: inherit; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Optional footer (stays gray in every modifier class) | ||||
| .panel-footer { | ||||
|   padding: @panel-footer-padding; | ||||
|   background-color: @panel-footer-bg; | ||||
|   border-top: 1px solid @panel-inner-border; | ||||
|   .border-bottom-radius((@panel-border-radius - 1)); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // List groups in panels | ||||
| // | ||||
| // By default, space out list group content from panel headings to account for | ||||
| // any kind of custom content between the two. | ||||
| 
 | ||||
| .panel { | ||||
|   > .list-group { | ||||
|     margin-bottom: 0; | ||||
| 
 | ||||
|     .list-group-item { | ||||
|       border-width: 1px 0; | ||||
|       border-radius: 0; | ||||
|     } | ||||
| 
 | ||||
|     // Add border top radius for first one | ||||
|     &:first-child { | ||||
|       .list-group-item:first-child { | ||||
|         border-top: 0; | ||||
|         .border-top-radius((@panel-border-radius - 1)); | ||||
|       } | ||||
|     } | ||||
|     // Add border bottom radius for last one | ||||
|     &:last-child { | ||||
|       .list-group-item:last-child { | ||||
|         border-bottom: 0; | ||||
|         .border-bottom-radius((@panel-border-radius - 1)); | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| // Collapse space between when there's no additional content. | ||||
| .panel-heading + .list-group { | ||||
|   .list-group-item:first-child { | ||||
|     border-top-width: 0; | ||||
|   } | ||||
| } | ||||
| .list-group + .panel-footer { | ||||
|   border-top-width: 0; | ||||
| } | ||||
| 
 | ||||
| // Tables in panels | ||||
| // | ||||
| // Place a non-bordered `.table` within a panel (not within a `.panel-body`) and | ||||
| // watch it go full width. | ||||
| 
 | ||||
| .panel { | ||||
|   > .table, | ||||
|   > .table-responsive > .table, | ||||
|   > .panel-collapse > .table { | ||||
|     margin-bottom: 0; | ||||
|   } | ||||
|   // Add border top radius for first one | ||||
|   > .table:first-child, | ||||
|   > .table-responsive:first-child > .table:first-child { | ||||
|     .border-top-radius((@panel-border-radius - 1)); | ||||
| 
 | ||||
|     > thead:first-child, | ||||
|     > tbody:first-child { | ||||
|       > tr:first-child { | ||||
|         td:first-child, | ||||
|         th:first-child { | ||||
|           border-top-left-radius: (@panel-border-radius - 1); | ||||
|         } | ||||
|         td:last-child, | ||||
|         th:last-child { | ||||
|           border-top-right-radius: (@panel-border-radius - 1); | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|   // Add border bottom radius for last one | ||||
|   > .table:last-child, | ||||
|   > .table-responsive:last-child > .table:last-child { | ||||
|     .border-bottom-radius((@panel-border-radius - 1)); | ||||
| 
 | ||||
|     > tbody:last-child, | ||||
|     > tfoot:last-child { | ||||
|       > tr:last-child { | ||||
|         td:first-child, | ||||
|         th:first-child { | ||||
|           border-bottom-left-radius: (@panel-border-radius - 1); | ||||
|         } | ||||
|         td:last-child, | ||||
|         th:last-child { | ||||
|           border-bottom-right-radius: (@panel-border-radius - 1); | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|   > .panel-body + .table, | ||||
|   > .panel-body + .table-responsive { | ||||
|     border-top: 1px solid @table-border-color; | ||||
|   } | ||||
|   > .table > tbody:first-child > tr:first-child th, | ||||
|   > .table > tbody:first-child > tr:first-child td { | ||||
|     border-top: 0; | ||||
|   } | ||||
|   > .table-bordered, | ||||
|   > .table-responsive > .table-bordered { | ||||
|     border: 0; | ||||
|     > thead, | ||||
|     > tbody, | ||||
|     > tfoot { | ||||
|       > tr { | ||||
|         > th:first-child, | ||||
|         > td:first-child { | ||||
|           border-left: 0; | ||||
|         } | ||||
|         > th:last-child, | ||||
|         > td:last-child { | ||||
|           border-right: 0; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|     > thead, | ||||
|     > tbody { | ||||
|       > tr:first-child { | ||||
|         > td, | ||||
|         > th { | ||||
|           border-bottom: 0; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|     > tbody, | ||||
|     > tfoot { | ||||
|       > tr:last-child { | ||||
|         > td, | ||||
|         > th { | ||||
|           border-bottom: 0; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|   > .table-responsive { | ||||
|     border: 0; | ||||
|     margin-bottom: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Collapsable panels (aka, accordion) | ||||
| // | ||||
| // Wrap a series of panels in `.panel-group` to turn them into an accordion with | ||||
| // the help of our collapse JavaScript plugin. | ||||
| 
 | ||||
| .panel-group { | ||||
|   margin-bottom: @line-height-computed; | ||||
| 
 | ||||
|   // Tighten up margin so it's only between panels | ||||
|   .panel { | ||||
|     margin-bottom: 0; | ||||
|     border-radius: @panel-border-radius; | ||||
|     + .panel { | ||||
|       margin-top: 5px; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .panel-heading { | ||||
|     border-bottom: 0; | ||||
|     + .panel-collapse > .panel-body { | ||||
|       border-top: 1px solid @panel-inner-border; | ||||
|     } | ||||
|   } | ||||
|   .panel-footer { | ||||
|     border-top: 0; | ||||
|     + .panel-collapse .panel-body { | ||||
|       border-bottom: 1px solid @panel-inner-border; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Contextual variations | ||||
| .panel-default { | ||||
|   .panel-variant(@panel-default-border; @panel-default-text; @panel-default-heading-bg; @panel-default-border); | ||||
| } | ||||
| .panel-primary { | ||||
|   .panel-variant(@panel-primary-border; @panel-primary-text; @panel-primary-heading-bg; @panel-primary-border); | ||||
| } | ||||
| .panel-success { | ||||
|   .panel-variant(@panel-success-border; @panel-success-text; @panel-success-heading-bg; @panel-success-border); | ||||
| } | ||||
| .panel-info { | ||||
|   .panel-variant(@panel-info-border; @panel-info-text; @panel-info-heading-bg; @panel-info-border); | ||||
| } | ||||
| .panel-warning { | ||||
|   .panel-variant(@panel-warning-border; @panel-warning-text; @panel-warning-heading-bg; @panel-warning-border); | ||||
| } | ||||
| .panel-danger { | ||||
|   .panel-variant(@panel-danger-border; @panel-danger-text; @panel-danger-heading-bg; @panel-danger-border); | ||||
| } | ||||
| @ -1,133 +0,0 @@ | ||||
| // | ||||
| // Popovers | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| .popover { | ||||
|   position: absolute; | ||||
|   top: 0; | ||||
|   left: 0; | ||||
|   z-index: @zindex-popover; | ||||
|   display: none; | ||||
|   max-width: @popover-max-width; | ||||
|   padding: 1px; | ||||
|   text-align: left; // Reset given new insertion method | ||||
|   background-color: @popover-bg; | ||||
|   background-clip: padding-box; | ||||
|   border: 1px solid @popover-fallback-border-color; | ||||
|   border: 1px solid @popover-border-color; | ||||
|   border-radius: @border-radius-large; | ||||
|   .box-shadow(0 5px 10px rgba(0,0,0,.2)); | ||||
| 
 | ||||
|   // Overrides for proper insertion | ||||
|   white-space: normal; | ||||
| 
 | ||||
|   // Offset the popover to account for the popover arrow | ||||
|   &.top     { margin-top: -@popover-arrow-width; } | ||||
|   &.right   { margin-left: @popover-arrow-width; } | ||||
|   &.bottom  { margin-top: @popover-arrow-width; } | ||||
|   &.left    { margin-left: -@popover-arrow-width; } | ||||
| } | ||||
| 
 | ||||
| .popover-title { | ||||
|   margin: 0; // reset heading margin | ||||
|   padding: 8px 14px; | ||||
|   font-size: @font-size-base; | ||||
|   font-weight: normal; | ||||
|   line-height: 18px; | ||||
|   background-color: @popover-title-bg; | ||||
|   border-bottom: 1px solid darken(@popover-title-bg, 5%); | ||||
|   border-radius: (@border-radius-large - 1) (@border-radius-large - 1) 0 0; | ||||
| } | ||||
| 
 | ||||
| .popover-content { | ||||
|   padding: 9px 14px; | ||||
| } | ||||
| 
 | ||||
| // Arrows | ||||
| // | ||||
| // .arrow is outer, .arrow:after is inner | ||||
| 
 | ||||
| .popover > .arrow { | ||||
|   &, | ||||
|   &:after { | ||||
|     position: absolute; | ||||
|     display: block; | ||||
|     width: 0; | ||||
|     height: 0; | ||||
|     border-color: transparent; | ||||
|     border-style: solid; | ||||
|   } | ||||
| } | ||||
| .popover > .arrow { | ||||
|   border-width: @popover-arrow-outer-width; | ||||
| } | ||||
| .popover > .arrow:after { | ||||
|   border-width: @popover-arrow-width; | ||||
|   content: ""; | ||||
| } | ||||
| 
 | ||||
| .popover { | ||||
|   &.top > .arrow { | ||||
|     left: 50%; | ||||
|     margin-left: -@popover-arrow-outer-width; | ||||
|     border-bottom-width: 0; | ||||
|     border-top-color: @popover-arrow-outer-fallback-color; // IE8 fallback | ||||
|     border-top-color: @popover-arrow-outer-color; | ||||
|     bottom: -@popover-arrow-outer-width; | ||||
|     &:after { | ||||
|       content: " "; | ||||
|       bottom: 1px; | ||||
|       margin-left: -@popover-arrow-width; | ||||
|       border-bottom-width: 0; | ||||
|       border-top-color: @popover-arrow-color; | ||||
|     } | ||||
|   } | ||||
|   &.right > .arrow { | ||||
|     top: 50%; | ||||
|     left: -@popover-arrow-outer-width; | ||||
|     margin-top: -@popover-arrow-outer-width; | ||||
|     border-left-width: 0; | ||||
|     border-right-color: @popover-arrow-outer-fallback-color; // IE8 fallback | ||||
|     border-right-color: @popover-arrow-outer-color; | ||||
|     &:after { | ||||
|       content: " "; | ||||
|       left: 1px; | ||||
|       bottom: -@popover-arrow-width; | ||||
|       border-left-width: 0; | ||||
|       border-right-color: @popover-arrow-color; | ||||
|     } | ||||
|   } | ||||
|   &.bottom > .arrow { | ||||
|     left: 50%; | ||||
|     margin-left: -@popover-arrow-outer-width; | ||||
|     border-top-width: 0; | ||||
|     border-bottom-color: @popover-arrow-outer-fallback-color; // IE8 fallback | ||||
|     border-bottom-color: @popover-arrow-outer-color; | ||||
|     top: -@popover-arrow-outer-width; | ||||
|     &:after { | ||||
|       content: " "; | ||||
|       top: 1px; | ||||
|       margin-left: -@popover-arrow-width; | ||||
|       border-top-width: 0; | ||||
|       border-bottom-color: @popover-arrow-color; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   &.left > .arrow { | ||||
|     top: 50%; | ||||
|     right: -@popover-arrow-outer-width; | ||||
|     margin-top: -@popover-arrow-outer-width; | ||||
|     border-right-width: 0; | ||||
|     border-left-color: @popover-arrow-outer-fallback-color; // IE8 fallback | ||||
|     border-left-color: @popover-arrow-outer-color; | ||||
|     &:after { | ||||
|       content: " "; | ||||
|       right: 1px; | ||||
|       border-right-width: 0; | ||||
|       border-left-color: @popover-arrow-color; | ||||
|       bottom: -@popover-arrow-width; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
| } | ||||
| @ -1,101 +0,0 @@ | ||||
| // | ||||
| // Basic print styles | ||||
| // -------------------------------------------------- | ||||
| // Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css | ||||
| 
 | ||||
| @media print { | ||||
| 
 | ||||
|   * { | ||||
|     text-shadow: none !important; | ||||
|     color: #000 !important; // Black prints faster: h5bp.com/s | ||||
|     background: transparent !important; | ||||
|     box-shadow: none !important; | ||||
|   } | ||||
| 
 | ||||
|   a, | ||||
|   a:visited { | ||||
|     text-decoration: underline; | ||||
|   } | ||||
| 
 | ||||
|   a[href]:after { | ||||
|     content: " (" attr(href) ")"; | ||||
|   } | ||||
| 
 | ||||
|   abbr[title]:after { | ||||
|     content: " (" attr(title) ")"; | ||||
|   } | ||||
| 
 | ||||
|   // Don't show links for images, or javascript/internal links | ||||
|   a[href^="javascript:"]:after, | ||||
|   a[href^="#"]:after { | ||||
|     content: ""; | ||||
|   } | ||||
| 
 | ||||
|   pre, | ||||
|   blockquote { | ||||
|     border: 1px solid #999; | ||||
|     page-break-inside: avoid; | ||||
|   } | ||||
| 
 | ||||
|   thead { | ||||
|     display: table-header-group; // h5bp.com/t | ||||
|   } | ||||
| 
 | ||||
|   tr, | ||||
|   img { | ||||
|     page-break-inside: avoid; | ||||
|   } | ||||
| 
 | ||||
|   img { | ||||
|     max-width: 100% !important; | ||||
|   } | ||||
| 
 | ||||
|   p, | ||||
|   h2, | ||||
|   h3 { | ||||
|     orphans: 3; | ||||
|     widows: 3; | ||||
|   } | ||||
| 
 | ||||
|   h2, | ||||
|   h3 { | ||||
|     page-break-after: avoid; | ||||
|   } | ||||
| 
 | ||||
|   // Chrome (OSX) fix for https://github.com/twbs/bootstrap/issues/11245 | ||||
|   // Once fixed, we can just straight up remove this. | ||||
|   select { | ||||
|     background: #fff !important; | ||||
|   } | ||||
| 
 | ||||
|   // Bootstrap components | ||||
|   .navbar { | ||||
|     display: none; | ||||
|   } | ||||
|   .table { | ||||
|     td, | ||||
|     th { | ||||
|       background-color: #fff !important; | ||||
|     } | ||||
|   } | ||||
|   .btn, | ||||
|   .dropup > .btn { | ||||
|     > .caret { | ||||
|       border-top-color: #000 !important; | ||||
|     } | ||||
|   } | ||||
|   .label { | ||||
|     border: 1px solid #000; | ||||
|   } | ||||
| 
 | ||||
|   .table { | ||||
|     border-collapse: collapse !important; | ||||
|   } | ||||
|   .table-bordered { | ||||
|     th, | ||||
|     td { | ||||
|       border: 1px solid #ddd !important; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
| } | ||||
| @ -1,105 +0,0 @@ | ||||
| // | ||||
| // Progress bars | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Bar animations | ||||
| // ------------------------- | ||||
| 
 | ||||
| // WebKit | ||||
| @-webkit-keyframes progress-bar-stripes { | ||||
|   from  { background-position: 40px 0; } | ||||
|   to    { background-position: 0 0; } | ||||
| } | ||||
| 
 | ||||
| // Spec and IE10+ | ||||
| @keyframes progress-bar-stripes { | ||||
|   from  { background-position: 40px 0; } | ||||
|   to    { background-position: 0 0; } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // Bar itself | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Outer container | ||||
| .progress { | ||||
|   overflow: hidden; | ||||
|   height: @line-height-computed; | ||||
|   margin-bottom: @line-height-computed; | ||||
|   background-color: @progress-bg; | ||||
|   border-radius: @border-radius-base; | ||||
|   .box-shadow(inset 0 1px 2px rgba(0,0,0,.1)); | ||||
| } | ||||
| 
 | ||||
| // Bar of progress | ||||
| .progress-bar { | ||||
|   float: left; | ||||
|   width: 0%; | ||||
|   height: 100%; | ||||
|   font-size: @font-size-small; | ||||
|   line-height: @line-height-computed; | ||||
|   color: @progress-bar-color; | ||||
|   text-align: center; | ||||
|   background-color: @progress-bar-bg; | ||||
|   .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15)); | ||||
|   .transition(width .6s ease); | ||||
| } | ||||
| 
 | ||||
| // Striped bars | ||||
| // | ||||
| // `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the | ||||
| // `.progress-bar-striped` class, which you just add to an existing | ||||
| // `.progress-bar`. | ||||
| .progress-striped .progress-bar, | ||||
| .progress-bar-striped { | ||||
|   #gradient > .striped(); | ||||
|   background-size: 40px 40px; | ||||
| } | ||||
| 
 | ||||
| // Call animation for the active one | ||||
| // | ||||
| // `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the | ||||
| // `.progress-bar.active` approach. | ||||
| .progress.active .progress-bar, | ||||
| .progress-bar.active { | ||||
|   .animation(progress-bar-stripes 2s linear infinite); | ||||
| } | ||||
| 
 | ||||
| // Account for lower percentages | ||||
| .progress-bar { | ||||
|   &[aria-valuenow="1"], | ||||
|   &[aria-valuenow="2"] { | ||||
|     min-width: 30px; | ||||
|   } | ||||
| 
 | ||||
|   &[aria-valuenow="0"] { | ||||
|     color: @gray-light; | ||||
|     min-width: 30px; | ||||
|     background-color: transparent; | ||||
|     background-image: none; | ||||
|     box-shadow: none; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // Variations | ||||
| // ------------------------- | ||||
| 
 | ||||
| .progress-bar-success { | ||||
|   .progress-bar-variant(@progress-bar-success-bg); | ||||
| } | ||||
| 
 | ||||
| .progress-bar-info { | ||||
|   .progress-bar-variant(@progress-bar-info-bg); | ||||
| } | ||||
| 
 | ||||
| .progress-bar-warning { | ||||
|   .progress-bar-variant(@progress-bar-warning-bg); | ||||
| } | ||||
| 
 | ||||
| .progress-bar-danger { | ||||
|   .progress-bar-variant(@progress-bar-danger-bg); | ||||
| } | ||||
| @ -1,34 +0,0 @@ | ||||
| // Embeds responsive | ||||
| // | ||||
| // Credit: Nicolas Gallagher and SUIT CSS. | ||||
| 
 | ||||
| .embed-responsive { | ||||
|   position: relative; | ||||
|   display: block; | ||||
|   height: 0; | ||||
|   padding: 0; | ||||
|   overflow: hidden; | ||||
| 
 | ||||
|   .embed-responsive-item, | ||||
|   iframe, | ||||
|   embed, | ||||
|   object { | ||||
|     position: absolute; | ||||
|     top: 0; | ||||
|     left: 0; | ||||
|     bottom: 0; | ||||
|     height: 100%; | ||||
|     width: 100%; | ||||
|     border: 0; | ||||
|   } | ||||
| 
 | ||||
|   // Modifier class for 16:9 aspect ratio | ||||
|   &.embed-responsive-16by9 { | ||||
|     padding-bottom: 56.25%; | ||||
|   } | ||||
| 
 | ||||
|   // Modifier class for 4:3 aspect ratio | ||||
|   &.embed-responsive-4by3 { | ||||
|     padding-bottom: 75%; | ||||
|   } | ||||
| } | ||||
| @ -1,194 +0,0 @@ | ||||
| // | ||||
| // Responsive: Utility classes | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // IE10 in Windows (Phone) 8 | ||||
| // | ||||
| // Support for responsive views via media queries is kind of borked in IE10, for | ||||
| // Surface/desktop in split view and for Windows Phone 8. This particular fix | ||||
| // must be accompanied by a snippet of JavaScript to sniff the user agent and | ||||
| // apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at | ||||
| // our Getting Started page for more information on this bug. | ||||
| // | ||||
| // For more information, see the following: | ||||
| // | ||||
| // Issue: https://github.com/twbs/bootstrap/issues/10497 | ||||
| // Docs: http://getbootstrap.com/getting-started/#support-ie10-width | ||||
| // Source: http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ | ||||
| // Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ | ||||
| 
 | ||||
| @-ms-viewport { | ||||
|   width: device-width; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Visibility utilities | ||||
| // Note: Deprecated .visible-xs, .visible-sm, .visible-md, and .visible-lg as of v3.2.0 | ||||
| .visible-xs, | ||||
| .visible-sm, | ||||
| .visible-md, | ||||
| .visible-lg { | ||||
|   .responsive-invisibility(); | ||||
| } | ||||
| 
 | ||||
| .visible-xs-block, | ||||
| .visible-xs-inline, | ||||
| .visible-xs-inline-block, | ||||
| .visible-sm-block, | ||||
| .visible-sm-inline, | ||||
| .visible-sm-inline-block, | ||||
| .visible-md-block, | ||||
| .visible-md-inline, | ||||
| .visible-md-inline-block, | ||||
| .visible-lg-block, | ||||
| .visible-lg-inline, | ||||
| .visible-lg-inline-block { | ||||
|   display: none !important; | ||||
| } | ||||
| 
 | ||||
| .visible-xs { | ||||
|   @media (max-width: @screen-xs-max) { | ||||
|     .responsive-visibility(); | ||||
|   } | ||||
| } | ||||
| .visible-xs-block { | ||||
|   @media (max-width: @screen-xs-max) { | ||||
|     display: block !important; | ||||
|   } | ||||
| } | ||||
| .visible-xs-inline { | ||||
|   @media (max-width: @screen-xs-max) { | ||||
|     display: inline !important; | ||||
|   } | ||||
| } | ||||
| .visible-xs-inline-block { | ||||
|   @media (max-width: @screen-xs-max) { | ||||
|     display: inline-block !important; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .visible-sm { | ||||
|   @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { | ||||
|     .responsive-visibility(); | ||||
|   } | ||||
| } | ||||
| .visible-sm-block { | ||||
|   @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { | ||||
|     display: block !important; | ||||
|   } | ||||
| } | ||||
| .visible-sm-inline { | ||||
|   @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { | ||||
|     display: inline !important; | ||||
|   } | ||||
| } | ||||
| .visible-sm-inline-block { | ||||
|   @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { | ||||
|     display: inline-block !important; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .visible-md { | ||||
|   @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { | ||||
|     .responsive-visibility(); | ||||
|   } | ||||
| } | ||||
| .visible-md-block { | ||||
|   @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { | ||||
|     display: block !important; | ||||
|   } | ||||
| } | ||||
| .visible-md-inline { | ||||
|   @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { | ||||
|     display: inline !important; | ||||
|   } | ||||
| } | ||||
| .visible-md-inline-block { | ||||
|   @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { | ||||
|     display: inline-block !important; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .visible-lg { | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     .responsive-visibility(); | ||||
|   } | ||||
| } | ||||
| .visible-lg-block { | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     display: block !important; | ||||
|   } | ||||
| } | ||||
| .visible-lg-inline { | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     display: inline !important; | ||||
|   } | ||||
| } | ||||
| .visible-lg-inline-block { | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     display: inline-block !important; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .hidden-xs { | ||||
|   @media (max-width: @screen-xs-max) { | ||||
|     .responsive-invisibility(); | ||||
|   } | ||||
| } | ||||
| .hidden-sm { | ||||
|   @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { | ||||
|     .responsive-invisibility(); | ||||
|   } | ||||
| } | ||||
| .hidden-md { | ||||
|   @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { | ||||
|     .responsive-invisibility(); | ||||
|   } | ||||
| } | ||||
| .hidden-lg { | ||||
|   @media (min-width: @screen-lg-min) { | ||||
|     .responsive-invisibility(); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Print utilities | ||||
| // | ||||
| // Media queries are placed on the inside to be mixin-friendly. | ||||
| 
 | ||||
| // Note: Deprecated .visible-print as of v3.2.0 | ||||
| .visible-print { | ||||
|   .responsive-invisibility(); | ||||
| 
 | ||||
|   @media print { | ||||
|     .responsive-visibility(); | ||||
|   } | ||||
| } | ||||
| .visible-print-block { | ||||
|   display: none !important; | ||||
| 
 | ||||
|   @media print { | ||||
|     display: block !important; | ||||
|   } | ||||
| } | ||||
| .visible-print-inline { | ||||
|   display: none !important; | ||||
| 
 | ||||
|   @media print { | ||||
|     display: inline !important; | ||||
|   } | ||||
| } | ||||
| .visible-print-inline-block { | ||||
|   display: none !important; | ||||
| 
 | ||||
|   @media print { | ||||
|     display: inline-block !important; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .hidden-print { | ||||
|   @media print { | ||||
|     .responsive-invisibility(); | ||||
|   } | ||||
| } | ||||
| @ -1,150 +0,0 @@ | ||||
| // | ||||
| // Scaffolding | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Reset the box-sizing | ||||
| // | ||||
| // Heads up! This reset may cause conflicts with some third-party widgets. | ||||
| // For recommendations on resolving such conflicts, see | ||||
| // http://getbootstrap.com/getting-started/#third-box-sizing | ||||
| * { | ||||
|   .box-sizing(border-box); | ||||
| } | ||||
| *:before, | ||||
| *:after { | ||||
|   .box-sizing(border-box); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Body reset | ||||
| 
 | ||||
| html { | ||||
|   font-size: 10px; | ||||
|   -webkit-tap-highlight-color: rgba(0,0,0,0); | ||||
| } | ||||
| 
 | ||||
| body { | ||||
|   font-family: @font-family-base; | ||||
|   font-size: @font-size-base; | ||||
|   line-height: @line-height-base; | ||||
|   color: @text-color; | ||||
|   background-color: @body-bg; | ||||
| } | ||||
| 
 | ||||
| // Reset fonts for relevant elements | ||||
| input, | ||||
| button, | ||||
| select, | ||||
| textarea { | ||||
|   font-family: inherit; | ||||
|   font-size: inherit; | ||||
|   line-height: inherit; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Links | ||||
| 
 | ||||
| a { | ||||
|   color: @link-color; | ||||
|   text-decoration: none; | ||||
| 
 | ||||
|   &:hover, | ||||
|   &:focus { | ||||
|     color: @link-hover-color; | ||||
|     text-decoration: underline; | ||||
|   } | ||||
| 
 | ||||
|   &:focus { | ||||
|     .tab-focus(); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Figures | ||||
| // | ||||
| // We reset this here because previously Normalize had no `figure` margins. This | ||||
| // ensures we don't break anyone's use of the element. | ||||
| 
 | ||||
| figure { | ||||
|   margin: 0; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Images | ||||
| 
 | ||||
| img { | ||||
|   vertical-align: middle; | ||||
| } | ||||
| 
 | ||||
| // Responsive images (ensure images don't scale beyond their parents) | ||||
| .img-responsive { | ||||
|   .img-responsive(); | ||||
| } | ||||
| 
 | ||||
| // Rounded corners | ||||
| .img-rounded { | ||||
|   border-radius: @border-radius-large; | ||||
| } | ||||
| 
 | ||||
| // Image thumbnails | ||||
| // | ||||
| // Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`. | ||||
| .img-thumbnail { | ||||
|   padding: @thumbnail-padding; | ||||
|   line-height: @line-height-base; | ||||
|   background-color: @thumbnail-bg; | ||||
|   border: 1px solid @thumbnail-border; | ||||
|   border-radius: @thumbnail-border-radius; | ||||
|   .transition(all .2s ease-in-out); | ||||
| 
 | ||||
|   // Keep them at most 100% wide | ||||
|   .img-responsive(inline-block); | ||||
| } | ||||
| 
 | ||||
| // Perfect circle | ||||
| .img-circle { | ||||
|   border-radius: 50%; // set radius in percents | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Horizontal rules | ||||
| 
 | ||||
| hr { | ||||
|   margin-top:    @line-height-computed; | ||||
|   margin-bottom: @line-height-computed; | ||||
|   border: 0; | ||||
|   border-top: 1px solid @hr-border; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Only display content to screen readers | ||||
| // | ||||
| // See: http://a11yproject.com/posts/how-to-hide-content/ | ||||
| 
 | ||||
| .sr-only { | ||||
|   position: absolute; | ||||
|   width: 1px; | ||||
|   height: 1px; | ||||
|   margin: -1px; | ||||
|   padding: 0; | ||||
|   overflow: hidden; | ||||
|   clip: rect(0,0,0,0); | ||||
|   border: 0; | ||||
| } | ||||
| 
 | ||||
| // Use in conjunction with .sr-only to only display content when it's focused. | ||||
| // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 | ||||
| // Credit: HTML5 Boilerplate | ||||
| 
 | ||||
| .sr-only-focusable { | ||||
|   &:active, | ||||
|   &:focus { | ||||
|     position: static; | ||||
|     width: auto; | ||||
|     height: auto; | ||||
|     margin: 0; | ||||
|     overflow: visible; | ||||
|     clip: auto; | ||||
|   } | ||||
| } | ||||
| @ -1,233 +0,0 @@ | ||||
| // | ||||
| // Tables | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| table { | ||||
|   background-color: @table-bg; | ||||
| } | ||||
| th { | ||||
|   text-align: left; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Baseline styles | ||||
| 
 | ||||
| .table { | ||||
|   width: 100%; | ||||
|   max-width: 100%; | ||||
|   margin-bottom: @line-height-computed; | ||||
|   // Cells | ||||
|   > thead, | ||||
|   > tbody, | ||||
|   > tfoot { | ||||
|     > tr { | ||||
|       > th, | ||||
|       > td { | ||||
|         padding: @table-cell-padding; | ||||
|         line-height: @line-height-base; | ||||
|         vertical-align: top; | ||||
|         border-top: 1px solid @table-border-color; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|   // Bottom align for column headings | ||||
|   > thead > tr > th { | ||||
|     vertical-align: bottom; | ||||
|     border-bottom: 2px solid @table-border-color; | ||||
|   } | ||||
|   // Remove top border from thead by default | ||||
|   > caption + thead, | ||||
|   > colgroup + thead, | ||||
|   > thead:first-child { | ||||
|     > tr:first-child { | ||||
|       > th, | ||||
|       > td { | ||||
|         border-top: 0; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|   // Account for multiple tbody instances | ||||
|   > tbody + tbody { | ||||
|     border-top: 2px solid @table-border-color; | ||||
|   } | ||||
| 
 | ||||
|   // Nesting | ||||
|   .table { | ||||
|     background-color: @body-bg; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Condensed table w/ half padding | ||||
| 
 | ||||
| .table-condensed { | ||||
|   > thead, | ||||
|   > tbody, | ||||
|   > tfoot { | ||||
|     > tr { | ||||
|       > th, | ||||
|       > td { | ||||
|         padding: @table-condensed-cell-padding; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Bordered version | ||||
| // | ||||
| // Add borders all around the table and between all the columns. | ||||
| 
 | ||||
| .table-bordered { | ||||
|   border: 1px solid @table-border-color; | ||||
|   > thead, | ||||
|   > tbody, | ||||
|   > tfoot { | ||||
|     > tr { | ||||
|       > th, | ||||
|       > td { | ||||
|         border: 1px solid @table-border-color; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|   > thead > tr { | ||||
|     > th, | ||||
|     > td { | ||||
|       border-bottom-width: 2px; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Zebra-striping | ||||
| // | ||||
| // Default zebra-stripe styles (alternating gray and transparent backgrounds) | ||||
| 
 | ||||
| .table-striped { | ||||
|   > tbody > tr:nth-child(odd) { | ||||
|     > td, | ||||
|     > th { | ||||
|       background-color: @table-bg-accent; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Hover effect | ||||
| // | ||||
| // Placed here since it has to come after the potential zebra striping | ||||
| 
 | ||||
| .table-hover { | ||||
|   > tbody > tr:hover { | ||||
|     > td, | ||||
|     > th { | ||||
|       background-color: @table-bg-hover; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Table cell sizing | ||||
| // | ||||
| // Reset default table behavior | ||||
| 
 | ||||
| table col[class*="col-"] { | ||||
|   position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623) | ||||
|   float: none; | ||||
|   display: table-column; | ||||
| } | ||||
| table { | ||||
|   td, | ||||
|   th { | ||||
|     &[class*="col-"] { | ||||
|       position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623) | ||||
|       float: none; | ||||
|       display: table-cell; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Table backgrounds | ||||
| // | ||||
| // Exact selectors below required to override `.table-striped` and prevent | ||||
| // inheritance to nested tables. | ||||
| 
 | ||||
| // Generate the contextual variants | ||||
| .table-row-variant(active; @table-bg-active); | ||||
| .table-row-variant(success; @state-success-bg); | ||||
| .table-row-variant(info; @state-info-bg); | ||||
| .table-row-variant(warning; @state-warning-bg); | ||||
| .table-row-variant(danger; @state-danger-bg); | ||||
| 
 | ||||
| 
 | ||||
| // Responsive tables | ||||
| // | ||||
| // Wrap your tables in `.table-responsive` and we'll make them mobile friendly | ||||
| // by enabling horizontal scrolling. Only applies <768px. Everything above that | ||||
| // will display normally. | ||||
| 
 | ||||
| .table-responsive { | ||||
|   @media screen and (max-width: @screen-xs-max) { | ||||
|     width: 100%; | ||||
|     margin-bottom: (@line-height-computed * 0.75); | ||||
|     overflow-y: hidden; | ||||
|     overflow-x: auto; | ||||
|     -ms-overflow-style: -ms-autohiding-scrollbar; | ||||
|     border: 1px solid @table-border-color; | ||||
|     -webkit-overflow-scrolling: touch; | ||||
| 
 | ||||
|     // Tighten up spacing | ||||
|     > .table { | ||||
|       margin-bottom: 0; | ||||
| 
 | ||||
|       // Ensure the content doesn't wrap | ||||
|       > thead, | ||||
|       > tbody, | ||||
|       > tfoot { | ||||
|         > tr { | ||||
|           > th, | ||||
|           > td { | ||||
|             white-space: nowrap; | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     // Special overrides for the bordered tables | ||||
|     > .table-bordered { | ||||
|       border: 0; | ||||
| 
 | ||||
|       // Nuke the appropriate borders so that the parent can handle them | ||||
|       > thead, | ||||
|       > tbody, | ||||
|       > tfoot { | ||||
|         > tr { | ||||
|           > th:first-child, | ||||
|           > td:first-child { | ||||
|             border-left: 0; | ||||
|           } | ||||
|           > th:last-child, | ||||
|           > td:last-child { | ||||
|             border-right: 0; | ||||
|           } | ||||
|         } | ||||
|       } | ||||
| 
 | ||||
|       // Only nuke the last row's bottom-border in `tbody` and `tfoot` since | ||||
|       // chances are there will be only one `tr` in a `thead` and that would | ||||
|       // remove the border altogether. | ||||
|       > tbody, | ||||
|       > tfoot { | ||||
|         > tr:last-child { | ||||
|           > th, | ||||
|           > td { | ||||
|             border-bottom: 0; | ||||
|           } | ||||
|         } | ||||
|       } | ||||
| 
 | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,258 +0,0 @@ | ||||
| 
 | ||||
| // | ||||
| // Load core variables and mixins | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| @import "variables.less"; | ||||
| @import "mixins.less"; | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Buttons | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Common styles | ||||
| .btn-default, | ||||
| .btn-primary, | ||||
| .btn-success, | ||||
| .btn-info, | ||||
| .btn-warning, | ||||
| .btn-danger { | ||||
|   text-shadow: 0 -1px 0 rgba(0,0,0,.2); | ||||
|   @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075); | ||||
|   .box-shadow(@shadow); | ||||
| 
 | ||||
|   // Reset the shadow | ||||
|   &:active, | ||||
|   &.active { | ||||
|     .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Mixin for generating new styles | ||||
| .btn-styles(@btn-color: #555) { | ||||
|   #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%)); | ||||
|   .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: darken(@btn-color, 14%); | ||||
| 
 | ||||
|   &:hover, | ||||
|   &:focus  { | ||||
|     background-color: darken(@btn-color, 12%); | ||||
|     background-position: 0 -15px; | ||||
|   } | ||||
| 
 | ||||
|   &:active, | ||||
|   &.active { | ||||
|     background-color: darken(@btn-color, 12%); | ||||
|     border-color: darken(@btn-color, 14%); | ||||
|   } | ||||
| 
 | ||||
|   &:disabled, | ||||
|   &[disabled] { | ||||
|     background-color: darken(@btn-color, 12%); | ||||
|     background-image: none; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Common styles | ||||
| .btn { | ||||
|   // Remove the gradient for the pressed/active state | ||||
|   &:active, | ||||
|   &.active { | ||||
|     background-image: none; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Apply the mixin to the buttons | ||||
| .btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; } | ||||
| .btn-primary { .btn-styles(@btn-primary-bg); } | ||||
| .btn-success { .btn-styles(@btn-success-bg); } | ||||
| .btn-info    { .btn-styles(@btn-info-bg); } | ||||
| .btn-warning { .btn-styles(@btn-warning-bg); } | ||||
| .btn-danger  { .btn-styles(@btn-danger-bg); } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Images | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .thumbnail, | ||||
| .img-thumbnail { | ||||
|   .box-shadow(0 1px 2px rgba(0,0,0,.075)); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Dropdowns | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .dropdown-menu > li > a:hover, | ||||
| .dropdown-menu > li > a:focus { | ||||
|   #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%)); | ||||
|   background-color: darken(@dropdown-link-hover-bg, 5%); | ||||
| } | ||||
| .dropdown-menu > .active > a, | ||||
| .dropdown-menu > .active > a:hover, | ||||
| .dropdown-menu > .active > a:focus { | ||||
|   #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%)); | ||||
|   background-color: darken(@dropdown-link-active-bg, 5%); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Navbar | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Default navbar | ||||
| .navbar-default { | ||||
|   #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg); | ||||
|   .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered | ||||
|   border-radius: @navbar-border-radius; | ||||
|   @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075); | ||||
|   .box-shadow(@shadow); | ||||
| 
 | ||||
|   .navbar-nav > .active > a { | ||||
|     #gradient > .vertical(@start-color: darken(@navbar-default-bg, 5%); @end-color: darken(@navbar-default-bg, 2%)); | ||||
|     .box-shadow(inset 0 3px 9px rgba(0,0,0,.075)); | ||||
|   } | ||||
| } | ||||
| .navbar-brand, | ||||
| .navbar-nav > li > a { | ||||
|   text-shadow: 0 1px 0 rgba(255,255,255,.25); | ||||
| } | ||||
| 
 | ||||
| // Inverted navbar | ||||
| .navbar-inverse { | ||||
|   #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg); | ||||
|   .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered | ||||
| 
 | ||||
|   .navbar-nav > .active > a { | ||||
|     #gradient > .vertical(@start-color: @navbar-inverse-bg; @end-color: lighten(@navbar-inverse-bg, 2.5%)); | ||||
|     .box-shadow(inset 0 3px 9px rgba(0,0,0,.25)); | ||||
|   } | ||||
| 
 | ||||
|   .navbar-brand, | ||||
|   .navbar-nav > li > a { | ||||
|     text-shadow: 0 -1px 0 rgba(0,0,0,.25); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Undo rounded corners in static and fixed navbars | ||||
| .navbar-static-top, | ||||
| .navbar-fixed-top, | ||||
| .navbar-fixed-bottom { | ||||
|   border-radius: 0; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Alerts | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Common styles | ||||
| .alert { | ||||
|   text-shadow: 0 1px 0 rgba(255,255,255,.2); | ||||
|   @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05); | ||||
|   .box-shadow(@shadow); | ||||
| } | ||||
| 
 | ||||
| // Mixin for generating new styles | ||||
| .alert-styles(@color) { | ||||
|   #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%)); | ||||
|   border-color: darken(@color, 15%); | ||||
| } | ||||
| 
 | ||||
| // Apply the mixin to the alerts | ||||
| .alert-success    { .alert-styles(@alert-success-bg); } | ||||
| .alert-info       { .alert-styles(@alert-info-bg); } | ||||
| .alert-warning    { .alert-styles(@alert-warning-bg); } | ||||
| .alert-danger     { .alert-styles(@alert-danger-bg); } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Progress bars | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Give the progress background some depth | ||||
| .progress { | ||||
|   #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg) | ||||
| } | ||||
| 
 | ||||
| // Mixin for generating new styles | ||||
| .progress-bar-styles(@color) { | ||||
|   #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%)); | ||||
| } | ||||
| 
 | ||||
| // Apply the mixin to the progress bars | ||||
| .progress-bar            { .progress-bar-styles(@progress-bar-bg); } | ||||
| .progress-bar-success    { .progress-bar-styles(@progress-bar-success-bg); } | ||||
| .progress-bar-info       { .progress-bar-styles(@progress-bar-info-bg); } | ||||
| .progress-bar-warning    { .progress-bar-styles(@progress-bar-warning-bg); } | ||||
| .progress-bar-danger     { .progress-bar-styles(@progress-bar-danger-bg); } | ||||
| 
 | ||||
| // Reset the striped class because our mixins don't do multiple gradients and | ||||
| // the above custom styles override the new `.progress-bar-striped` in v3.2.0. | ||||
| .progress-bar-striped { | ||||
|   #gradient > .striped(); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // List groups | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .list-group { | ||||
|   border-radius: @border-radius-base; | ||||
|   .box-shadow(0 1px 2px rgba(0,0,0,.075)); | ||||
| } | ||||
| .list-group-item.active, | ||||
| .list-group-item.active:hover, | ||||
| .list-group-item.active:focus { | ||||
|   text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%); | ||||
|   #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%)); | ||||
|   border-color: darken(@list-group-active-border, 7.5%); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Panels | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| // Common styles | ||||
| .panel { | ||||
|   .box-shadow(0 1px 2px rgba(0,0,0,.05)); | ||||
| } | ||||
| 
 | ||||
| // Mixin for generating new styles | ||||
| .panel-heading-styles(@color) { | ||||
|   #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%)); | ||||
| } | ||||
| 
 | ||||
| // Apply the mixin to the panel headings only | ||||
| .panel-default > .panel-heading   { .panel-heading-styles(@panel-default-heading-bg); } | ||||
| .panel-primary > .panel-heading   { .panel-heading-styles(@panel-primary-heading-bg); } | ||||
| .panel-success > .panel-heading   { .panel-heading-styles(@panel-success-heading-bg); } | ||||
| .panel-info > .panel-heading      { .panel-heading-styles(@panel-info-heading-bg); } | ||||
| .panel-warning > .panel-heading   { .panel-heading-styles(@panel-warning-heading-bg); } | ||||
| .panel-danger > .panel-heading    { .panel-heading-styles(@panel-danger-heading-bg); } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| // | ||||
| // Wells | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| .well { | ||||
|   #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg); | ||||
|   border-color: darken(@well-bg, 10%); | ||||
|   @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1); | ||||
|   .box-shadow(@shadow); | ||||
| } | ||||
| @ -1,36 +0,0 @@ | ||||
| // | ||||
| // Thumbnails | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Mixin and adjust the regular image class | ||||
| .thumbnail { | ||||
|   display: block; | ||||
|   padding: @thumbnail-padding; | ||||
|   margin-bottom: @line-height-computed; | ||||
|   line-height: @line-height-base; | ||||
|   background-color: @thumbnail-bg; | ||||
|   border: 1px solid @thumbnail-border; | ||||
|   border-radius: @thumbnail-border-radius; | ||||
|   .transition(all .2s ease-in-out); | ||||
| 
 | ||||
|   > img, | ||||
|   a > img { | ||||
|     &:extend(.img-responsive); | ||||
|     margin-left: auto; | ||||
|     margin-right: auto; | ||||
|   } | ||||
| 
 | ||||
|   // Add a hover state for linked versions only | ||||
|   a&:hover, | ||||
|   a&:focus, | ||||
|   a&.active { | ||||
|     border-color: @link-color; | ||||
|   } | ||||
| 
 | ||||
|   // Image captions | ||||
|   .caption { | ||||
|     padding: @thumbnail-caption-padding; | ||||
|     color: @thumbnail-caption-color; | ||||
|   } | ||||
| } | ||||
| @ -1,95 +0,0 @@ | ||||
| // | ||||
| // Tooltips | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Base class | ||||
| .tooltip { | ||||
|   position: absolute; | ||||
|   z-index: @zindex-tooltip; | ||||
|   display: block; | ||||
|   visibility: visible; | ||||
|   font-size: @font-size-small; | ||||
|   line-height: 1.4; | ||||
|   .opacity(0); | ||||
| 
 | ||||
|   &.in     { .opacity(@tooltip-opacity); } | ||||
|   &.top    { margin-top:  -3px; padding: @tooltip-arrow-width 0; } | ||||
|   &.right  { margin-left:  3px; padding: 0 @tooltip-arrow-width; } | ||||
|   &.bottom { margin-top:   3px; padding: @tooltip-arrow-width 0; } | ||||
|   &.left   { margin-left: -3px; padding: 0 @tooltip-arrow-width; } | ||||
| } | ||||
| 
 | ||||
| // Wrapper for the tooltip content | ||||
| .tooltip-inner { | ||||
|   max-width: @tooltip-max-width; | ||||
|   padding: 3px 8px; | ||||
|   color: @tooltip-color; | ||||
|   text-align: center; | ||||
|   text-decoration: none; | ||||
|   background-color: @tooltip-bg; | ||||
|   border-radius: @border-radius-base; | ||||
| } | ||||
| 
 | ||||
| // Arrows | ||||
| .tooltip-arrow { | ||||
|   position: absolute; | ||||
|   width: 0; | ||||
|   height: 0; | ||||
|   border-color: transparent; | ||||
|   border-style: solid; | ||||
| } | ||||
| .tooltip { | ||||
|   &.top .tooltip-arrow { | ||||
|     bottom: 0; | ||||
|     left: 50%; | ||||
|     margin-left: -@tooltip-arrow-width; | ||||
|     border-width: @tooltip-arrow-width @tooltip-arrow-width 0; | ||||
|     border-top-color: @tooltip-arrow-color; | ||||
|   } | ||||
|   &.top-left .tooltip-arrow { | ||||
|     bottom: 0; | ||||
|     left: @tooltip-arrow-width; | ||||
|     border-width: @tooltip-arrow-width @tooltip-arrow-width 0; | ||||
|     border-top-color: @tooltip-arrow-color; | ||||
|   } | ||||
|   &.top-right .tooltip-arrow { | ||||
|     bottom: 0; | ||||
|     right: @tooltip-arrow-width; | ||||
|     border-width: @tooltip-arrow-width @tooltip-arrow-width 0; | ||||
|     border-top-color: @tooltip-arrow-color; | ||||
|   } | ||||
|   &.right .tooltip-arrow { | ||||
|     top: 50%; | ||||
|     left: 0; | ||||
|     margin-top: -@tooltip-arrow-width; | ||||
|     border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0; | ||||
|     border-right-color: @tooltip-arrow-color; | ||||
|   } | ||||
|   &.left .tooltip-arrow { | ||||
|     top: 50%; | ||||
|     right: 0; | ||||
|     margin-top: -@tooltip-arrow-width; | ||||
|     border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width; | ||||
|     border-left-color: @tooltip-arrow-color; | ||||
|   } | ||||
|   &.bottom .tooltip-arrow { | ||||
|     top: 0; | ||||
|     left: 50%; | ||||
|     margin-left: -@tooltip-arrow-width; | ||||
|     border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; | ||||
|     border-bottom-color: @tooltip-arrow-color; | ||||
|   } | ||||
|   &.bottom-left .tooltip-arrow { | ||||
|     top: 0; | ||||
|     left: @tooltip-arrow-width; | ||||
|     border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; | ||||
|     border-bottom-color: @tooltip-arrow-color; | ||||
|   } | ||||
|   &.bottom-right .tooltip-arrow { | ||||
|     top: 0; | ||||
|     right: @tooltip-arrow-width; | ||||
|     border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; | ||||
|     border-bottom-color: @tooltip-arrow-color; | ||||
|   } | ||||
| } | ||||
| @ -1,313 +0,0 @@ | ||||
| // | ||||
| // Typography | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Headings | ||||
| // ------------------------- | ||||
| 
 | ||||
| h1, h2, h3, h4, h5, h6, | ||||
| .h1, .h2, .h3, .h4, .h5, .h6 { | ||||
|   font-family: @headings-font-family; | ||||
|   font-weight: @headings-font-weight; | ||||
|   line-height: @headings-line-height; | ||||
|   color: @headings-color; | ||||
| 
 | ||||
|   small, | ||||
|   .small { | ||||
|     font-weight: normal; | ||||
|     line-height: 1; | ||||
|     color: @headings-small-color; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| h1, .h1, | ||||
| h2, .h2, | ||||
| h3, .h3 { | ||||
|   margin-top: @line-height-computed; | ||||
|   margin-bottom: (@line-height-computed / 2); | ||||
| 
 | ||||
|   small, | ||||
|   .small { | ||||
|     font-size: 65%; | ||||
|   } | ||||
| } | ||||
| h4, .h4, | ||||
| h5, .h5, | ||||
| h6, .h6 { | ||||
|   margin-top: (@line-height-computed / 2); | ||||
|   margin-bottom: (@line-height-computed / 2); | ||||
| 
 | ||||
|   small, | ||||
|   .small { | ||||
|     font-size: 75%; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| h1, .h1 { font-size: @font-size-h1; } | ||||
| h2, .h2 { font-size: @font-size-h2; } | ||||
| h3, .h3 { font-size: @font-size-h3; } | ||||
| h4, .h4 { font-size: @font-size-h4; } | ||||
| h5, .h5 { font-size: @font-size-h5; } | ||||
| h6, .h6 { font-size: @font-size-h6; } | ||||
| 
 | ||||
| 
 | ||||
| // Body text | ||||
| // ------------------------- | ||||
| 
 | ||||
| p { | ||||
|   margin: 0 0 (@line-height-computed / 2); | ||||
| } | ||||
| 
 | ||||
| .lead { | ||||
|   margin-bottom: @line-height-computed; | ||||
|   font-size: floor((@font-size-base * 1.15)); | ||||
|   font-weight: 300; | ||||
|   line-height: 1.4; | ||||
| 
 | ||||
|   @media (min-width: @screen-sm-min) { | ||||
|     font-size: (@font-size-base * 1.5); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Emphasis & misc | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Ex: (12px small font / 14px base font) * 100% = about 85% | ||||
| small, | ||||
| .small { | ||||
|   font-size: floor((100% * @font-size-small / @font-size-base)); | ||||
| } | ||||
| 
 | ||||
| // Undo browser default styling | ||||
| cite { | ||||
|   font-style: normal; | ||||
| } | ||||
| 
 | ||||
| mark, | ||||
| .mark { | ||||
|   background-color: @state-warning-bg; | ||||
|   padding: .2em; | ||||
| } | ||||
| 
 | ||||
| // Alignment | ||||
| .text-left           { text-align: left; } | ||||
| .text-right          { text-align: right; } | ||||
| .text-center         { text-align: center; } | ||||
| .text-justify        { text-align: justify; } | ||||
| .text-nowrap         { white-space: nowrap; } | ||||
| 
 | ||||
| // Transformation | ||||
| .text-lowercase      { text-transform: lowercase; } | ||||
| .text-uppercase      { text-transform: uppercase; } | ||||
| .text-capitalize     { text-transform: capitalize; } | ||||
| 
 | ||||
| // Contextual colors | ||||
| .text-muted { | ||||
|   color: @text-muted; | ||||
| } | ||||
| .text-primary { | ||||
|   .text-emphasis-variant(@brand-primary); | ||||
| } | ||||
| .text-success { | ||||
|   .text-emphasis-variant(@state-success-text); | ||||
| } | ||||
| .text-info { | ||||
|   .text-emphasis-variant(@state-info-text); | ||||
| } | ||||
| .text-warning { | ||||
|   .text-emphasis-variant(@state-warning-text); | ||||
| } | ||||
| .text-danger { | ||||
|   .text-emphasis-variant(@state-danger-text); | ||||
| } | ||||
| 
 | ||||
| // Contextual backgrounds | ||||
| // For now we'll leave these alongside the text classes until v4 when we can | ||||
| // safely shift things around (per SemVer rules). | ||||
| .bg-primary { | ||||
|   // Given the contrast here, this is the only class to have its color inverted | ||||
|   // automatically. | ||||
|   color: #fff; | ||||
|   .bg-variant(@brand-primary); | ||||
| } | ||||
| .bg-success { | ||||
|   .bg-variant(@state-success-bg); | ||||
| } | ||||
| .bg-info { | ||||
|   .bg-variant(@state-info-bg); | ||||
| } | ||||
| .bg-warning { | ||||
|   .bg-variant(@state-warning-bg); | ||||
| } | ||||
| .bg-danger { | ||||
|   .bg-variant(@state-danger-bg); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Page header | ||||
| // ------------------------- | ||||
| 
 | ||||
| .page-header { | ||||
|   padding-bottom: ((@line-height-computed / 2) - 1); | ||||
|   margin: (@line-height-computed * 2) 0 @line-height-computed; | ||||
|   border-bottom: 1px solid @page-header-border-color; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Lists | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Unordered and Ordered lists | ||||
| ul, | ||||
| ol { | ||||
|   margin-top: 0; | ||||
|   margin-bottom: (@line-height-computed / 2); | ||||
|   ul, | ||||
|   ol { | ||||
|     margin-bottom: 0; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // List options | ||||
| 
 | ||||
| // Unstyled keeps list items block level, just removes default browser padding and list-style | ||||
| .list-unstyled { | ||||
|   padding-left: 0; | ||||
|   list-style: none; | ||||
| } | ||||
| 
 | ||||
| // Inline turns list items into inline-block | ||||
| .list-inline { | ||||
|   .list-unstyled(); | ||||
|   margin-left: -5px; | ||||
| 
 | ||||
|   > li { | ||||
|     display: inline-block; | ||||
|     padding-left: 5px; | ||||
|     padding-right: 5px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Description Lists | ||||
| dl { | ||||
|   margin-top: 0; // Remove browser default | ||||
|   margin-bottom: @line-height-computed; | ||||
| } | ||||
| dt, | ||||
| dd { | ||||
|   line-height: @line-height-base; | ||||
| } | ||||
| dt { | ||||
|   font-weight: bold; | ||||
| } | ||||
| dd { | ||||
|   margin-left: 0; // Undo browser default | ||||
| } | ||||
| 
 | ||||
| // Horizontal description lists | ||||
| // | ||||
| // Defaults to being stacked without any of the below styles applied, until the | ||||
| // grid breakpoint is reached (default of ~768px). | ||||
| 
 | ||||
| .dl-horizontal { | ||||
|   dd { | ||||
|     &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present | ||||
|   } | ||||
| 
 | ||||
|   @media (min-width: @grid-float-breakpoint) { | ||||
|     dt { | ||||
|       float: left; | ||||
|       width: (@dl-horizontal-offset - 20); | ||||
|       clear: left; | ||||
|       text-align: right; | ||||
|       .text-overflow(); | ||||
|     } | ||||
|     dd { | ||||
|       margin-left: @dl-horizontal-offset; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Misc | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Abbreviations and acronyms | ||||
| abbr[title], | ||||
| // Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257 | ||||
| abbr[data-original-title] { | ||||
|   cursor: help; | ||||
|   border-bottom: 1px dotted @abbr-border-color; | ||||
| } | ||||
| .initialism { | ||||
|   font-size: 90%; | ||||
|   text-transform: uppercase; | ||||
| } | ||||
| 
 | ||||
| // Blockquotes | ||||
| blockquote { | ||||
|   padding: (@line-height-computed / 2) @line-height-computed; | ||||
|   margin: 0 0 @line-height-computed; | ||||
|   font-size: @blockquote-font-size; | ||||
|   border-left: 5px solid @blockquote-border-color; | ||||
| 
 | ||||
|   p, | ||||
|   ul, | ||||
|   ol { | ||||
|     &:last-child { | ||||
|       margin-bottom: 0; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // Note: Deprecated small and .small as of v3.1.0 | ||||
|   // Context: https://github.com/twbs/bootstrap/issues/11660 | ||||
|   footer, | ||||
|   small, | ||||
|   .small { | ||||
|     display: block; | ||||
|     font-size: 80%; // back to default font-size | ||||
|     line-height: @line-height-base; | ||||
|     color: @blockquote-small-color; | ||||
| 
 | ||||
|     &:before { | ||||
|       content: '\2014 \00A0'; // em dash, nbsp | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Opposite alignment of blockquote | ||||
| // | ||||
| // Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0. | ||||
| .blockquote-reverse, | ||||
| blockquote.pull-right { | ||||
|   padding-right: 15px; | ||||
|   padding-left: 0; | ||||
|   border-right: 5px solid @blockquote-border-color; | ||||
|   border-left: 0; | ||||
|   text-align: right; | ||||
| 
 | ||||
|   // Account for citation | ||||
|   footer, | ||||
|   small, | ||||
|   .small { | ||||
|     &:before { content: ''; } | ||||
|     &:after { | ||||
|       content: '\00A0 \2014'; // nbsp, em dash | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Quotes | ||||
| blockquote:before, | ||||
| blockquote:after { | ||||
|   content: ""; | ||||
| } | ||||
| 
 | ||||
| // Addresses | ||||
| address { | ||||
|   margin-bottom: @line-height-computed; | ||||
|   font-style: normal; | ||||
|   line-height: @line-height-base; | ||||
| } | ||||
| @ -1,153 +0,0 @@ | ||||
| /* | ||||
|  * typehead.js-bootstrap3.less | ||||
|  * @version 0.2.3 | ||||
|  * https://github.com/hyspace/typeahead.js-bootstrap3.less | ||||
|  * | ||||
|  * Licensed under the MIT license: | ||||
|  * http://www.opensource.org/licenses/MIT | ||||
|  */ | ||||
| 
 | ||||
| //custom mixin for .form-control-validation | ||||
| .typeahead-form-control(@border-color: #ccc;) { | ||||
|   border-color: @border-color; | ||||
|   .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work | ||||
|   &:focus { | ||||
|     border-color: darken(@border-color, 10%); | ||||
|     @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%); | ||||
|     .box-shadow(@shadow); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| //main styles for control | ||||
| .tt-input, | ||||
| .tt-hint { | ||||
|   .twitter-typeahead &{ | ||||
|     //validation states | ||||
|     .has-warning &{ | ||||
|       .typeahead-form-control(@state-warning-text); | ||||
|     } | ||||
|     .has-error &{ | ||||
|       .typeahead-form-control(@state-danger-text); | ||||
|     } | ||||
|     .has-success &{ | ||||
|       .typeahead-form-control(@state-success-text); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   //border | ||||
|   .input-group .twitter-typeahead:first-child &{ | ||||
|     .border-left-radius(@border-radius-base); | ||||
|   } | ||||
|   .input-group .twitter-typeahead:last-child &{ | ||||
|     .border-right-radius(@border-radius-base); | ||||
|   } | ||||
| 
 | ||||
|   //sizing - small:size and border | ||||
|   .input-group.input-group-sm .twitter-typeahead &{ | ||||
|     .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); | ||||
|   } | ||||
|   .input-group.input-group-sm .twitter-typeahead:not(:first-child):not(:last-child) &{ | ||||
|     border-radius: 0; | ||||
|   } | ||||
|   .input-group.input-group-sm .twitter-typeahead:first-child &{ | ||||
|     .border-left-radius(@border-radius-small); | ||||
|     .border-right-radius(0); | ||||
|   } | ||||
|   .input-group.input-group-sm .twitter-typeahead:last-child &{ | ||||
|     .border-left-radius(0); | ||||
|     .border-right-radius(@border-radius-small); | ||||
|   } | ||||
| 
 | ||||
|   //sizing - large:size and border | ||||
|   .input-group.input-group-lg .twitter-typeahead &{ | ||||
|     .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); | ||||
|   } | ||||
|   .input-group.input-group-lg .twitter-typeahead:not(:first-child):not(:last-child) &{ | ||||
|     border-radius: 0; | ||||
|   } | ||||
|   .input-group.input-group-lg .twitter-typeahead:first-child &{ | ||||
|     .border-left-radius(@border-radius-large); | ||||
|     .border-right-radius(0); | ||||
|   } | ||||
|   .input-group.input-group-lg .twitter-typeahead:last-child &{ | ||||
|     .border-left-radius(0); | ||||
|     .border-right-radius(@border-radius-large); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| //for wrapper | ||||
| .twitter-typeahead { | ||||
|   width: 100%; | ||||
|   .input-group &{ | ||||
|     //overwrite `display:inline-block` style | ||||
|     display: table-cell!important; | ||||
|     float: left; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| //particular style for each other | ||||
| .twitter-typeahead .tt-hint { | ||||
|   color: @text-muted;//color - hint | ||||
| } | ||||
| .twitter-typeahead .tt-input { | ||||
|   z-index: 2; | ||||
|   //disabled status | ||||
|   //overwrite inline styles of .tt-query | ||||
|   &[disabled], | ||||
|   &[readonly], | ||||
|   fieldset[disabled] & { | ||||
|     cursor: not-allowed; | ||||
|     //overwirte inline style | ||||
|     background-color: @input-bg-disabled!important; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| //dropdown styles | ||||
| .tt-dropdown-menu { | ||||
|   //dropdown menu | ||||
|   position: absolute; | ||||
|   top: 100%; | ||||
|   left: 0; | ||||
|   z-index: @zindex-dropdown; | ||||
|   min-width: 160px; | ||||
|   width: 100%; | ||||
|   padding: 5px 0; | ||||
|   margin: 2px 0 0; | ||||
|   list-style: none; | ||||
|   font-size: @font-size-base; | ||||
|   background-color: @dropdown-bg; | ||||
|   border: 1px solid @dropdown-fallback-border; | ||||
|   border: 1px solid @dropdown-border; | ||||
|   border-radius: @border-radius-base; | ||||
|   .box-shadow(0 6px 12px rgba(0,0,0,.175)); | ||||
|   background-clip: padding-box; | ||||
|   *border-right-width: 2px; | ||||
|   *border-bottom-width: 2px; | ||||
| 
 | ||||
|   .tt-suggestion { | ||||
|     //item | ||||
|     display: block; | ||||
|     padding: 3px 20px; | ||||
|     clear: both; | ||||
|     font-weight: normal; | ||||
|     line-height: @line-height-base; | ||||
|     color: @dropdown-link-color; | ||||
|     white-space: nowrap; | ||||
|     text-align: left; | ||||
|     cursor: pointer !important; | ||||
|     &.tt-cursor { | ||||
|       //item selected | ||||
|       text-decoration: none; | ||||
|       outline: 0; | ||||
|       background-color: @dropdown-link-hover-bg; | ||||
|       color: @dropdown-link-hover-color; | ||||
|       a { | ||||
|         //link in item selected | ||||
|         color: @dropdown-link-hover-color; | ||||
|       } | ||||
|     } | ||||
|     p { | ||||
|       margin: 0; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -1,57 +0,0 @@ | ||||
| // | ||||
| // Utility classes | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Floats | ||||
| // ------------------------- | ||||
| 
 | ||||
| .clearfix { | ||||
|   .clearfix(); | ||||
| } | ||||
| .center-block { | ||||
|   .center-block(); | ||||
| } | ||||
| .pull-right { | ||||
|   float: right !important; | ||||
| } | ||||
| .pull-left { | ||||
|   float: left !important; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Toggling content | ||||
| // ------------------------- | ||||
| 
 | ||||
| // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 | ||||
| .hide { | ||||
|   display: none !important; | ||||
| } | ||||
| .show { | ||||
|   display: block !important; | ||||
| } | ||||
| .invisible { | ||||
|   visibility: hidden; | ||||
| } | ||||
| .text-hide { | ||||
|   .text-hide(); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // Hide from screenreaders and browsers | ||||
| // | ||||
| // Credit: HTML5 Boilerplate | ||||
| 
 | ||||
| .hidden { | ||||
|   display: none !important; | ||||
|   visibility: hidden !important; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| // For Affix plugin | ||||
| // ------------------------- | ||||
| 
 | ||||
| .affix { | ||||
|   position: fixed; | ||||
|   .translate3d(0, 0, 0); | ||||
| } | ||||
| @ -1,846 +0,0 @@ | ||||
| // | ||||
| // Variables | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| //== Colors | ||||
| // | ||||
| //## Gray and brand colors for use across Bootstrap. | ||||
| 
 | ||||
| @gray-darker:            lighten(#000, 13.5%); // #222 | ||||
| @gray-dark:              lighten(#000, 20%);   // #333 | ||||
| @gray:                   lighten(#000, 33.5%); // #555 | ||||
| @gray-light:             lighten(#000, 46.7%); // #777 | ||||
| @gray-lighter:           lighten(#000, 93.5%); // #eee | ||||
| 
 | ||||
| @brand-primary:         #428bca; | ||||
| @brand-success:         #5cb85c; | ||||
| @brand-info:            #5bc0de; | ||||
| @brand-warning:         #f0ad4e; | ||||
| @brand-danger:          #d9534f; | ||||
| 
 | ||||
| 
 | ||||
| //== Scaffolding | ||||
| // | ||||
| //## Settings for some of the most global styles. | ||||
| 
 | ||||
| //** Background color for `<body>`. | ||||
| @body-bg:               #fff; | ||||
| //** Global text color on `<body>`. | ||||
| @text-color:            @gray-dark; | ||||
| 
 | ||||
| //** Global textual link color. | ||||
| @link-color:            @brand-primary; | ||||
| //** Link hover color set via `darken()` function. | ||||
| @link-hover-color:      darken(@link-color, 15%); | ||||
| 
 | ||||
| 
 | ||||
| //== Typography | ||||
| // | ||||
| //## Font, line-height, and color for body text, headings, and more. | ||||
| 
 | ||||
| @font-family-sans-serif:  "Helvetica Neue", Helvetica, Arial, sans-serif; | ||||
| @font-family-serif:       Georgia, "Times New Roman", Times, serif; | ||||
| //** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`. | ||||
| @font-family-monospace:   Menlo, Monaco, Consolas, "Courier New", monospace; | ||||
| @font-family-base:        @font-family-sans-serif; | ||||
| 
 | ||||
| @font-size-base:          14px; | ||||
| @font-size-large:         ceil((@font-size-base * 1.25)); // ~18px | ||||
| @font-size-small:         ceil((@font-size-base * 0.85)); // ~12px | ||||
| 
 | ||||
| @font-size-h1:            floor((@font-size-base * 2.6)); // ~36px | ||||
| @font-size-h2:            floor((@font-size-base * 2.15)); // ~30px | ||||
| @font-size-h3:            ceil((@font-size-base * 1.7)); // ~24px | ||||
| @font-size-h4:            ceil((@font-size-base * 1.25)); // ~18px | ||||
| @font-size-h5:            @font-size-base; | ||||
| @font-size-h6:            ceil((@font-size-base * 0.85)); // ~12px | ||||
| 
 | ||||
| //** Unit-less `line-height` for use in components like buttons. | ||||
| @line-height-base:        1.428571429; // 20/14 | ||||
| //** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc. | ||||
| @line-height-computed:    floor((@font-size-base * @line-height-base)); // ~20px | ||||
| 
 | ||||
| //** By default, this inherits from the `<body>`. | ||||
| @headings-font-family:    inherit; | ||||
| @headings-font-weight:    500; | ||||
| @headings-line-height:    1.1; | ||||
| @headings-color:          inherit; | ||||
| 
 | ||||
| 
 | ||||
| //== Iconography | ||||
| // | ||||
| //## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower. | ||||
| 
 | ||||
| //** Load fonts from this directory. | ||||
| @icon-font-path:          "../fonts/"; | ||||
| //** File name for all font files. | ||||
| @icon-font-name:          "glyphicons-halflings-regular"; | ||||
| //** Element ID within SVG icon file. | ||||
| @icon-font-svg-id:        "glyphicons_halflingsregular"; | ||||
| 
 | ||||
| 
 | ||||
| //== Components | ||||
| // | ||||
| //## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start). | ||||
| 
 | ||||
| @padding-base-vertical:     6px; | ||||
| @padding-base-horizontal:   12px; | ||||
| 
 | ||||
| @padding-large-vertical:    10px; | ||||
| @padding-large-horizontal:  16px; | ||||
| 
 | ||||
| @padding-small-vertical:    5px; | ||||
| @padding-small-horizontal:  10px; | ||||
| 
 | ||||
| @padding-xs-vertical:       1px; | ||||
| @padding-xs-horizontal:     5px; | ||||
| 
 | ||||
| @line-height-large:         1.33; | ||||
| @line-height-small:         1.5; | ||||
| 
 | ||||
| @border-radius-base:        4px; | ||||
| @border-radius-large:       6px; | ||||
| @border-radius-small:       3px; | ||||
| 
 | ||||
| //** Global color for active items (e.g., navs or dropdowns). | ||||
| @component-active-color:    #fff; | ||||
| //** Global background color for active items (e.g., navs or dropdowns). | ||||
| @component-active-bg:       @brand-primary; | ||||
| 
 | ||||
| //** Width of the `border` for generating carets that indicator dropdowns. | ||||
| @caret-width-base:          4px; | ||||
| //** Carets increase slightly in size for larger components. | ||||
| @caret-width-large:         5px; | ||||
| 
 | ||||
| 
 | ||||
| //== Tables | ||||
| // | ||||
| //## Customizes the `.table` component with basic values, each used across all table variations. | ||||
| 
 | ||||
| //** Padding for `<th>`s and `<td>`s. | ||||
| @table-cell-padding:            8px; | ||||
| //** Padding for cells in `.table-condensed`. | ||||
| @table-condensed-cell-padding:  5px; | ||||
| 
 | ||||
| //** Default background color used for all tables. | ||||
| @table-bg:                      transparent; | ||||
| //** Background color used for `.table-striped`. | ||||
| @table-bg-accent:               #f9f9f9; | ||||
| //** Background color used for `.table-hover`. | ||||
| @table-bg-hover:                #f5f5f5; | ||||
| @table-bg-active:               @table-bg-hover; | ||||
| 
 | ||||
| //** Border color for table and cell borders. | ||||
| @table-border-color:            #ddd; | ||||
| 
 | ||||
| 
 | ||||
| //== Buttons | ||||
| // | ||||
| //## For each of Bootstrap's buttons, define text, background and border color. | ||||
| 
 | ||||
| @btn-font-weight:                normal; | ||||
| 
 | ||||
| @btn-default-color:              #333; | ||||
| @btn-default-bg:                 #fff; | ||||
| @btn-default-border:             #ccc; | ||||
| 
 | ||||
| @btn-primary-color:              #fff; | ||||
| @btn-primary-bg:                 @brand-primary; | ||||
| @btn-primary-border:             darken(@btn-primary-bg, 5%); | ||||
| 
 | ||||
| @btn-success-color:              #fff; | ||||
| @btn-success-bg:                 @brand-success; | ||||
| @btn-success-border:             darken(@btn-success-bg, 5%); | ||||
| 
 | ||||
| @btn-info-color:                 #fff; | ||||
| @btn-info-bg:                    @brand-info; | ||||
| @btn-info-border:                darken(@btn-info-bg, 5%); | ||||
| 
 | ||||
| @btn-warning-color:              #fff; | ||||
| @btn-warning-bg:                 @brand-warning; | ||||
| @btn-warning-border:             darken(@btn-warning-bg, 5%); | ||||
| 
 | ||||
| @btn-danger-color:               #fff; | ||||
| @btn-danger-bg:                  @brand-danger; | ||||
| @btn-danger-border:              darken(@btn-danger-bg, 5%); | ||||
| 
 | ||||
| @btn-link-disabled-color:        @gray-light; | ||||
| 
 | ||||
| 
 | ||||
| //== Forms | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** `<input>` background color | ||||
| @input-bg:                       #fff; | ||||
| //** `<input disabled>` background color | ||||
| @input-bg-disabled:              @gray-lighter; | ||||
| 
 | ||||
| //** Text color for `<input>`s | ||||
| @input-color:                    @gray; | ||||
| //** `<input>` border color | ||||
| @input-border:                   #ccc; | ||||
| //** `<input>` border radius | ||||
| @input-border-radius:            @border-radius-base; | ||||
| //** Border color for inputs on focus | ||||
| @input-border-focus:             #66afe9; | ||||
| 
 | ||||
| //** Placeholder text color | ||||
| @input-color-placeholder:        @gray-light; | ||||
| 
 | ||||
| //** Default `.form-control` height | ||||
| @input-height-base:              (@line-height-computed + (@padding-base-vertical * 2) + 2); | ||||
| //** Large `.form-control` height | ||||
| @input-height-large:             (ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2); | ||||
| //** Small `.form-control` height | ||||
| @input-height-small:             (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2); | ||||
| 
 | ||||
| @legend-color:                   @gray-dark; | ||||
| @legend-border-color:            #e5e5e5; | ||||
| 
 | ||||
| //** Background color for textual input addons | ||||
| @input-group-addon-bg:           @gray-lighter; | ||||
| //** Border color for textual input addons | ||||
| @input-group-addon-border-color: @input-border; | ||||
| 
 | ||||
| 
 | ||||
| //== Dropdowns | ||||
| // | ||||
| //## Dropdown menu container and contents. | ||||
| 
 | ||||
| //** Background for the dropdown menu. | ||||
| @dropdown-bg:                    #fff; | ||||
| //** Dropdown menu `border-color`. | ||||
| @dropdown-border:                rgba(0,0,0,.15); | ||||
| //** Dropdown menu `border-color` **for IE8**. | ||||
| @dropdown-fallback-border:       #ccc; | ||||
| //** Divider color for between dropdown items. | ||||
| @dropdown-divider-bg:            #e5e5e5; | ||||
| 
 | ||||
| //** Dropdown link text color. | ||||
| @dropdown-link-color:            @gray-dark; | ||||
| //** Hover color for dropdown links. | ||||
| @dropdown-link-hover-color:      darken(@gray-dark, 5%); | ||||
| //** Hover background for dropdown links. | ||||
| @dropdown-link-hover-bg:         #f5f5f5; | ||||
| 
 | ||||
| //** Active dropdown menu item text color. | ||||
| @dropdown-link-active-color:     @component-active-color; | ||||
| //** Active dropdown menu item background color. | ||||
| @dropdown-link-active-bg:        @component-active-bg; | ||||
| 
 | ||||
| //** Disabled dropdown menu item background color. | ||||
| @dropdown-link-disabled-color:   @gray-light; | ||||
| 
 | ||||
| //** Text color for headers within dropdown menus. | ||||
| @dropdown-header-color:          @gray-light; | ||||
| 
 | ||||
| //** Deprecated `@dropdown-caret-color` as of v3.1.0 | ||||
| @dropdown-caret-color:           #000; | ||||
| 
 | ||||
| 
 | ||||
| //-- Z-index master list | ||||
| // | ||||
| // Warning: Avoid customizing these values. They're used for a bird's eye view | ||||
| // of components dependent on the z-axis and are designed to all work together. | ||||
| // | ||||
| // Note: These variables are not generated into the Customizer. | ||||
| 
 | ||||
| @zindex-navbar:            1000; | ||||
| @zindex-dropdown:          1000; | ||||
| @zindex-popover:           1060; | ||||
| @zindex-tooltip:           1070; | ||||
| @zindex-navbar-fixed:      1030; | ||||
| @zindex-modal-background:  1040; | ||||
| @zindex-modal:             1050; | ||||
| 
 | ||||
| 
 | ||||
| //== Media queries breakpoints | ||||
| // | ||||
| //## Define the breakpoints at which your layout will change, adapting to different screen sizes. | ||||
| 
 | ||||
| // Extra small screen / phone | ||||
| //** Deprecated `@screen-xs` as of v3.0.1 | ||||
| @screen-xs:                  480px; | ||||
| //** Deprecated `@screen-xs-min` as of v3.2.0 | ||||
| @screen-xs-min:              @screen-xs; | ||||
| //** Deprecated `@screen-phone` as of v3.0.1 | ||||
| @screen-phone:               @screen-xs-min; | ||||
| 
 | ||||
| // Small screen / tablet | ||||
| //** Deprecated `@screen-sm` as of v3.0.1 | ||||
| @screen-sm:                  768px; | ||||
| @screen-sm-min:              @screen-sm; | ||||
| //** Deprecated `@screen-tablet` as of v3.0.1 | ||||
| @screen-tablet:              @screen-sm-min; | ||||
| 
 | ||||
| // Medium screen / desktop | ||||
| //** Deprecated `@screen-md` as of v3.0.1 | ||||
| @screen-md:                  992px; | ||||
| @screen-md-min:              @screen-md; | ||||
| //** Deprecated `@screen-desktop` as of v3.0.1 | ||||
| @screen-desktop:             @screen-md-min; | ||||
| 
 | ||||
| // Large screen / wide desktop | ||||
| //** Deprecated `@screen-lg` as of v3.0.1 | ||||
| @screen-lg:                  1200px; | ||||
| @screen-lg-min:              @screen-lg; | ||||
| //** Deprecated `@screen-lg-desktop` as of v3.0.1 | ||||
| @screen-lg-desktop:          @screen-lg-min; | ||||
| 
 | ||||
| // So media queries don't overlap when required, provide a maximum | ||||
| @screen-xs-max:              (@screen-sm-min - 1); | ||||
| @screen-sm-max:              (@screen-md-min - 1); | ||||
| @screen-md-max:              (@screen-lg-min - 1); | ||||
| 
 | ||||
| 
 | ||||
| //== Grid system | ||||
| // | ||||
| //## Define your custom responsive grid. | ||||
| 
 | ||||
| //** Number of columns in the grid. | ||||
| @grid-columns:              12; | ||||
| //** Padding between columns. Gets divided in half for the left and right. | ||||
| @grid-gutter-width:         30px; | ||||
| // Navbar collapse | ||||
| //** Point at which the navbar becomes uncollapsed. | ||||
| @grid-float-breakpoint:     @screen-sm-min; | ||||
| //** Point at which the navbar begins collapsing. | ||||
| @grid-float-breakpoint-max: (@grid-float-breakpoint - 1); | ||||
| 
 | ||||
| 
 | ||||
| //== Container sizes | ||||
| // | ||||
| //## Define the maximum width of `.container` for different screen sizes. | ||||
| 
 | ||||
| // Small screen / tablet | ||||
| @container-tablet:             ((720px + @grid-gutter-width)); | ||||
| //** For `@screen-sm-min` and up. | ||||
| @container-sm:                 @container-tablet; | ||||
| 
 | ||||
| // Medium screen / desktop | ||||
| @container-desktop:            ((940px + @grid-gutter-width)); | ||||
| //** For `@screen-md-min` and up. | ||||
| @container-md:                 @container-desktop; | ||||
| 
 | ||||
| // Large screen / wide desktop | ||||
| @container-large-desktop:      ((1140px + @grid-gutter-width)); | ||||
| //** For `@screen-lg-min` and up. | ||||
| @container-lg:                 @container-large-desktop; | ||||
| 
 | ||||
| 
 | ||||
| //== Navbar | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| // Basics of a navbar | ||||
| @navbar-height:                    50px; | ||||
| @navbar-margin-bottom:             @line-height-computed; | ||||
| @navbar-border-radius:             @border-radius-base; | ||||
| @navbar-padding-horizontal:        floor((@grid-gutter-width / 2)); | ||||
| @navbar-padding-vertical:          ((@navbar-height - @line-height-computed) / 2); | ||||
| @navbar-collapse-max-height:       340px; | ||||
| 
 | ||||
| @navbar-default-color:             #777; | ||||
| @navbar-default-bg:                #f8f8f8; | ||||
| @navbar-default-border:            darken(@navbar-default-bg, 6.5%); | ||||
| 
 | ||||
| // Navbar links | ||||
| @navbar-default-link-color:                #777; | ||||
| @navbar-default-link-hover-color:          #333; | ||||
| @navbar-default-link-hover-bg:             transparent; | ||||
| @navbar-default-link-active-color:         #555; | ||||
| @navbar-default-link-active-bg:            darken(@navbar-default-bg, 6.5%); | ||||
| @navbar-default-link-disabled-color:       #ccc; | ||||
| @navbar-default-link-disabled-bg:          transparent; | ||||
| 
 | ||||
| // Navbar brand label | ||||
| @navbar-default-brand-color:               @navbar-default-link-color; | ||||
| @navbar-default-brand-hover-color:         darken(@navbar-default-brand-color, 10%); | ||||
| @navbar-default-brand-hover-bg:            transparent; | ||||
| 
 | ||||
| // Navbar toggle | ||||
| @navbar-default-toggle-hover-bg:           #ddd; | ||||
| @navbar-default-toggle-icon-bar-bg:        #888; | ||||
| @navbar-default-toggle-border-color:       #ddd; | ||||
| 
 | ||||
| 
 | ||||
| // Inverted navbar | ||||
| // Reset inverted navbar basics | ||||
| @navbar-inverse-color:                      @gray-light; | ||||
| @navbar-inverse-bg:                         #222; | ||||
| @navbar-inverse-border:                     darken(@navbar-inverse-bg, 10%); | ||||
| 
 | ||||
| // Inverted navbar links | ||||
| @navbar-inverse-link-color:                 @gray-light; | ||||
| @navbar-inverse-link-hover-color:           #fff; | ||||
| @navbar-inverse-link-hover-bg:              transparent; | ||||
| @navbar-inverse-link-active-color:          @navbar-inverse-link-hover-color; | ||||
| @navbar-inverse-link-active-bg:             darken(@navbar-inverse-bg, 10%); | ||||
| @navbar-inverse-link-disabled-color:        #444; | ||||
| @navbar-inverse-link-disabled-bg:           transparent; | ||||
| 
 | ||||
| // Inverted navbar brand label | ||||
| @navbar-inverse-brand-color:                @navbar-inverse-link-color; | ||||
| @navbar-inverse-brand-hover-color:          #fff; | ||||
| @navbar-inverse-brand-hover-bg:             transparent; | ||||
| 
 | ||||
| // Inverted navbar toggle | ||||
| @navbar-inverse-toggle-hover-bg:            #333; | ||||
| @navbar-inverse-toggle-icon-bar-bg:         #fff; | ||||
| @navbar-inverse-toggle-border-color:        #333; | ||||
| 
 | ||||
| 
 | ||||
| //== Navs | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //=== Shared nav styles | ||||
| @nav-link-padding:                          10px 15px; | ||||
| @nav-link-hover-bg:                         @gray-lighter; | ||||
| 
 | ||||
| @nav-disabled-link-color:                   @gray-light; | ||||
| @nav-disabled-link-hover-color:             @gray-light; | ||||
| 
 | ||||
| @nav-open-link-hover-color:                 #fff; | ||||
| 
 | ||||
| //== Tabs | ||||
| @nav-tabs-border-color:                     #ddd; | ||||
| 
 | ||||
| @nav-tabs-link-hover-border-color:          @gray-lighter; | ||||
| 
 | ||||
| @nav-tabs-active-link-hover-bg:             @body-bg; | ||||
| @nav-tabs-active-link-hover-color:          @gray; | ||||
| @nav-tabs-active-link-hover-border-color:   #ddd; | ||||
| 
 | ||||
| @nav-tabs-justified-link-border-color:            #ddd; | ||||
| @nav-tabs-justified-active-link-border-color:     @body-bg; | ||||
| 
 | ||||
| //== Pills | ||||
| @nav-pills-border-radius:                   @border-radius-base; | ||||
| @nav-pills-active-link-hover-bg:            @component-active-bg; | ||||
| @nav-pills-active-link-hover-color:         @component-active-color; | ||||
| 
 | ||||
| 
 | ||||
| //== Pagination | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @pagination-color:                     @link-color; | ||||
| @pagination-bg:                        #fff; | ||||
| @pagination-border:                    #ddd; | ||||
| 
 | ||||
| @pagination-hover-color:               @link-hover-color; | ||||
| @pagination-hover-bg:                  @gray-lighter; | ||||
| @pagination-hover-border:              #ddd; | ||||
| 
 | ||||
| @pagination-active-color:              #fff; | ||||
| @pagination-active-bg:                 @brand-primary; | ||||
| @pagination-active-border:             @brand-primary; | ||||
| 
 | ||||
| @pagination-disabled-color:            @gray-light; | ||||
| @pagination-disabled-bg:               #fff; | ||||
| @pagination-disabled-border:           #ddd; | ||||
| 
 | ||||
| 
 | ||||
| //== Pager | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @pager-bg:                             @pagination-bg; | ||||
| @pager-border:                         @pagination-border; | ||||
| @pager-border-radius:                  15px; | ||||
| 
 | ||||
| @pager-hover-bg:                       @pagination-hover-bg; | ||||
| 
 | ||||
| @pager-active-bg:                      @pagination-active-bg; | ||||
| @pager-active-color:                   @pagination-active-color; | ||||
| 
 | ||||
| @pager-disabled-color:                 @pagination-disabled-color; | ||||
| 
 | ||||
| 
 | ||||
| //== Jumbotron | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @jumbotron-padding:              30px; | ||||
| @jumbotron-color:                inherit; | ||||
| @jumbotron-bg:                   @gray-lighter; | ||||
| @jumbotron-heading-color:        inherit; | ||||
| @jumbotron-font-size:            ceil((@font-size-base * 1.5)); | ||||
| 
 | ||||
| 
 | ||||
| //== Form states and alerts | ||||
| // | ||||
| //## Define colors for form feedback states and, by default, alerts. | ||||
| 
 | ||||
| @state-success-text:             #3c763d; | ||||
| @state-success-bg:               #dff0d8; | ||||
| @state-success-border:           darken(spin(@state-success-bg, -10), 5%); | ||||
| 
 | ||||
| @state-info-text:                #31708f; | ||||
| @state-info-bg:                  #d9edf7; | ||||
| @state-info-border:              darken(spin(@state-info-bg, -10), 7%); | ||||
| 
 | ||||
| @state-warning-text:             #8a6d3b; | ||||
| @state-warning-bg:               #fcf8e3; | ||||
| @state-warning-border:           darken(spin(@state-warning-bg, -10), 5%); | ||||
| 
 | ||||
| @state-danger-text:              #a94442; | ||||
| @state-danger-bg:                #f2dede; | ||||
| @state-danger-border:            darken(spin(@state-danger-bg, -10), 5%); | ||||
| 
 | ||||
| 
 | ||||
| //== Tooltips | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** Tooltip max width | ||||
| @tooltip-max-width:           200px; | ||||
| //** Tooltip text color | ||||
| @tooltip-color:               #fff; | ||||
| //** Tooltip background color | ||||
| @tooltip-bg:                  #000; | ||||
| @tooltip-opacity:             .9; | ||||
| 
 | ||||
| //** Tooltip arrow width | ||||
| @tooltip-arrow-width:         5px; | ||||
| //** Tooltip arrow color | ||||
| @tooltip-arrow-color:         @tooltip-bg; | ||||
| 
 | ||||
| 
 | ||||
| //== Popovers | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** Popover body background color | ||||
| @popover-bg:                          #fff; | ||||
| //** Popover maximum width | ||||
| @popover-max-width:                   276px; | ||||
| //** Popover border color | ||||
| @popover-border-color:                rgba(0,0,0,.2); | ||||
| //** Popover fallback border color | ||||
| @popover-fallback-border-color:       #ccc; | ||||
| 
 | ||||
| //** Popover title background color | ||||
| @popover-title-bg:                    darken(@popover-bg, 3%); | ||||
| 
 | ||||
| //** Popover arrow width | ||||
| @popover-arrow-width:                 10px; | ||||
| //** Popover arrow color | ||||
| @popover-arrow-color:                 #fff; | ||||
| 
 | ||||
| //** Popover outer arrow width | ||||
| @popover-arrow-outer-width:           (@popover-arrow-width + 1); | ||||
| //** Popover outer arrow color | ||||
| @popover-arrow-outer-color:           fadein(@popover-border-color, 5%); | ||||
| //** Popover outer arrow fallback color | ||||
| @popover-arrow-outer-fallback-color:  darken(@popover-fallback-border-color, 20%); | ||||
| 
 | ||||
| 
 | ||||
| //== Labels | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** Default label background color | ||||
| @label-default-bg:            @gray-light; | ||||
| //** Primary label background color | ||||
| @label-primary-bg:            @brand-primary; | ||||
| //** Success label background color | ||||
| @label-success-bg:            @brand-success; | ||||
| //** Info label background color | ||||
| @label-info-bg:               @brand-info; | ||||
| //** Warning label background color | ||||
| @label-warning-bg:            @brand-warning; | ||||
| //** Danger label background color | ||||
| @label-danger-bg:             @brand-danger; | ||||
| 
 | ||||
| //** Default label text color | ||||
| @label-color:                 #fff; | ||||
| //** Default text color of a linked label | ||||
| @label-link-hover-color:      #fff; | ||||
| 
 | ||||
| 
 | ||||
| //== Modals | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** Padding applied to the modal body | ||||
| @modal-inner-padding:         15px; | ||||
| 
 | ||||
| //** Padding applied to the modal title | ||||
| @modal-title-padding:         15px; | ||||
| //** Modal title line-height | ||||
| @modal-title-line-height:     @line-height-base; | ||||
| 
 | ||||
| //** Background color of modal content area | ||||
| @modal-content-bg:                             #fff; | ||||
| //** Modal content border color | ||||
| @modal-content-border-color:                   rgba(0,0,0,.2); | ||||
| //** Modal content border color **for IE8** | ||||
| @modal-content-fallback-border-color:          #999; | ||||
| 
 | ||||
| //** Modal backdrop background color | ||||
| @modal-backdrop-bg:           #000; | ||||
| //** Modal backdrop opacity | ||||
| @modal-backdrop-opacity:      .5; | ||||
| //** Modal header border color | ||||
| @modal-header-border-color:   #e5e5e5; | ||||
| //** Modal footer border color | ||||
| @modal-footer-border-color:   @modal-header-border-color; | ||||
| 
 | ||||
| @modal-lg:                    900px; | ||||
| @modal-md:                    600px; | ||||
| @modal-sm:                    300px; | ||||
| 
 | ||||
| 
 | ||||
| //== Alerts | ||||
| // | ||||
| //## Define alert colors, border radius, and padding. | ||||
| 
 | ||||
| @alert-padding:               15px; | ||||
| @alert-border-radius:         @border-radius-base; | ||||
| @alert-link-font-weight:      bold; | ||||
| 
 | ||||
| @alert-success-bg:            @state-success-bg; | ||||
| @alert-success-text:          @state-success-text; | ||||
| @alert-success-border:        @state-success-border; | ||||
| 
 | ||||
| @alert-info-bg:               @state-info-bg; | ||||
| @alert-info-text:             @state-info-text; | ||||
| @alert-info-border:           @state-info-border; | ||||
| 
 | ||||
| @alert-warning-bg:            @state-warning-bg; | ||||
| @alert-warning-text:          @state-warning-text; | ||||
| @alert-warning-border:        @state-warning-border; | ||||
| 
 | ||||
| @alert-danger-bg:             @state-danger-bg; | ||||
| @alert-danger-text:           @state-danger-text; | ||||
| @alert-danger-border:         @state-danger-border; | ||||
| 
 | ||||
| 
 | ||||
| //== Progress bars | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** Background color of the whole progress component | ||||
| @progress-bg:                 #f5f5f5; | ||||
| //** Progress bar text color | ||||
| @progress-bar-color:          #fff; | ||||
| 
 | ||||
| //** Default progress bar color | ||||
| @progress-bar-bg:             @brand-primary; | ||||
| //** Success progress bar color | ||||
| @progress-bar-success-bg:     @brand-success; | ||||
| //** Warning progress bar color | ||||
| @progress-bar-warning-bg:     @brand-warning; | ||||
| //** Danger progress bar color | ||||
| @progress-bar-danger-bg:      @brand-danger; | ||||
| //** Info progress bar color | ||||
| @progress-bar-info-bg:        @brand-info; | ||||
| 
 | ||||
| 
 | ||||
| //== List group | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** Background color on `.list-group-item` | ||||
| @list-group-bg:                 #fff; | ||||
| //** `.list-group-item` border color | ||||
| @list-group-border:             #ddd; | ||||
| //** List group border radius | ||||
| @list-group-border-radius:      @border-radius-base; | ||||
| 
 | ||||
| //** Background color of single list items on hover | ||||
| @list-group-hover-bg:           #f5f5f5; | ||||
| //** Text color of active list items | ||||
| @list-group-active-color:       @component-active-color; | ||||
| //** Background color of active list items | ||||
| @list-group-active-bg:          @component-active-bg; | ||||
| //** Border color of active list elements | ||||
| @list-group-active-border:      @list-group-active-bg; | ||||
| //** Text color for content within active list items | ||||
| @list-group-active-text-color:  lighten(@list-group-active-bg, 40%); | ||||
| 
 | ||||
| //** Text color of disabled list items | ||||
| @list-group-disabled-color:      @gray-light; | ||||
| //** Background color of disabled list items | ||||
| @list-group-disabled-bg:         @gray-lighter; | ||||
| //** Text color for content within disabled list items | ||||
| @list-group-disabled-text-color: @list-group-disabled-color; | ||||
| 
 | ||||
| @list-group-link-color:         #555; | ||||
| @list-group-link-hover-color:   @list-group-link-color; | ||||
| @list-group-link-heading-color: #333; | ||||
| 
 | ||||
| 
 | ||||
| //== Panels | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @panel-bg:                    #fff; | ||||
| @panel-body-padding:          15px; | ||||
| @panel-heading-padding:       10px 15px; | ||||
| @panel-footer-padding:        @panel-heading-padding; | ||||
| @panel-border-radius:         @border-radius-base; | ||||
| 
 | ||||
| //** Border color for elements within panels | ||||
| @panel-inner-border:          #ddd; | ||||
| @panel-footer-bg:             #f5f5f5; | ||||
| 
 | ||||
| @panel-default-text:          @gray-dark; | ||||
| @panel-default-border:        #ddd; | ||||
| @panel-default-heading-bg:    #f5f5f5; | ||||
| 
 | ||||
| @panel-primary-text:          #fff; | ||||
| @panel-primary-border:        @brand-primary; | ||||
| @panel-primary-heading-bg:    @brand-primary; | ||||
| 
 | ||||
| @panel-success-text:          @state-success-text; | ||||
| @panel-success-border:        @state-success-border; | ||||
| @panel-success-heading-bg:    @state-success-bg; | ||||
| 
 | ||||
| @panel-info-text:             @state-info-text; | ||||
| @panel-info-border:           @state-info-border; | ||||
| @panel-info-heading-bg:       @state-info-bg; | ||||
| 
 | ||||
| @panel-warning-text:          @state-warning-text; | ||||
| @panel-warning-border:        @state-warning-border; | ||||
| @panel-warning-heading-bg:    @state-warning-bg; | ||||
| 
 | ||||
| @panel-danger-text:           @state-danger-text; | ||||
| @panel-danger-border:         @state-danger-border; | ||||
| @panel-danger-heading-bg:     @state-danger-bg; | ||||
| 
 | ||||
| 
 | ||||
| //== Thumbnails | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** Padding around the thumbnail image | ||||
| @thumbnail-padding:           4px; | ||||
| //** Thumbnail background color | ||||
| @thumbnail-bg:                @body-bg; | ||||
| //** Thumbnail border color | ||||
| @thumbnail-border:            #ddd; | ||||
| //** Thumbnail border radius | ||||
| @thumbnail-border-radius:     @border-radius-base; | ||||
| 
 | ||||
| //** Custom text color for thumbnail captions | ||||
| @thumbnail-caption-color:     @text-color; | ||||
| //** Padding around the thumbnail caption | ||||
| @thumbnail-caption-padding:   9px; | ||||
| 
 | ||||
| 
 | ||||
| //== Wells | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @well-bg:                     #f5f5f5; | ||||
| @well-border:                 darken(@well-bg, 7%); | ||||
| 
 | ||||
| 
 | ||||
| //== Badges | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @badge-color:                 #fff; | ||||
| //** Linked badge text color on hover | ||||
| @badge-link-hover-color:      #fff; | ||||
| @badge-bg:                    @gray-light; | ||||
| 
 | ||||
| //** Badge text color in active nav link | ||||
| @badge-active-color:          @link-color; | ||||
| //** Badge background color in active nav link | ||||
| @badge-active-bg:             #fff; | ||||
| 
 | ||||
| @badge-font-weight:           bold; | ||||
| @badge-line-height:           1; | ||||
| @badge-border-radius:         10px; | ||||
| 
 | ||||
| 
 | ||||
| //== Breadcrumbs | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @breadcrumb-padding-vertical:   8px; | ||||
| @breadcrumb-padding-horizontal: 15px; | ||||
| //** Breadcrumb background color | ||||
| @breadcrumb-bg:                 #f5f5f5; | ||||
| //** Breadcrumb text color | ||||
| @breadcrumb-color:              #ccc; | ||||
| //** Text color of current page in the breadcrumb | ||||
| @breadcrumb-active-color:       @gray-light; | ||||
| //** Textual separator for between breadcrumb elements | ||||
| @breadcrumb-separator:          "/"; | ||||
| 
 | ||||
| 
 | ||||
| //== Carousel | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6); | ||||
| 
 | ||||
| @carousel-control-color:                      #fff; | ||||
| @carousel-control-width:                      15%; | ||||
| @carousel-control-opacity:                    .5; | ||||
| @carousel-control-font-size:                  20px; | ||||
| 
 | ||||
| @carousel-indicator-active-bg:                #fff; | ||||
| @carousel-indicator-border-color:             #fff; | ||||
| 
 | ||||
| @carousel-caption-color:                      #fff; | ||||
| 
 | ||||
| 
 | ||||
| //== Close | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @close-font-weight:           bold; | ||||
| @close-color:                 #000; | ||||
| @close-text-shadow:           0 1px 0 #fff; | ||||
| 
 | ||||
| 
 | ||||
| //== Code | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| @code-color:                  #c7254e; | ||||
| @code-bg:                     #f9f2f4; | ||||
| 
 | ||||
| @kbd-color:                   #fff; | ||||
| @kbd-bg:                      #333; | ||||
| 
 | ||||
| @pre-bg:                      #f5f5f5; | ||||
| @pre-color:                   @gray-dark; | ||||
| @pre-border-color:            #ccc; | ||||
| @pre-scrollable-max-height:   340px; | ||||
| 
 | ||||
| 
 | ||||
| //== Type | ||||
| // | ||||
| //## | ||||
| 
 | ||||
| //** Horizontal offset for forms and lists. | ||||
| @component-offset-horizontal: 180px; | ||||
| //** Text muted color | ||||
| @text-muted:                  @gray-light; | ||||
| //** Abbreviations and acronyms border color | ||||
| @abbr-border-color:           @gray-light; | ||||
| //** Headings small color | ||||
| @headings-small-color:        @gray-light; | ||||
| //** Blockquote small color | ||||
| @blockquote-small-color:      @gray-light; | ||||
| //** Blockquote font size | ||||
| @blockquote-font-size:        (@font-size-base * 1.25); | ||||
| //** Blockquote border color | ||||
| @blockquote-border-color:     @gray-lighter; | ||||
| //** Page header border color | ||||
| @page-header-border-color:    @gray-lighter; | ||||
| //** Width of horizontal description list titles | ||||
| @dl-horizontal-offset:        @component-offset-horizontal; | ||||
| //** Horizontal line color. | ||||
| @hr-border:                   @gray-lighter; | ||||
| 
 | ||||
| 
 | ||||
| @ -1,29 +0,0 @@ | ||||
| // | ||||
| // Wells | ||||
| // -------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| // Base class | ||||
| .well { | ||||
|   min-height: 20px; | ||||
|   padding: 19px; | ||||
|   margin-bottom: 20px; | ||||
|   background-color: @well-bg; | ||||
|   border: 1px solid @well-border; | ||||
|   border-radius: @border-radius-base; | ||||
|   .box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); | ||||
|   blockquote { | ||||
|     border-color: #ddd; | ||||
|     border-color: rgba(0,0,0,.15); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Sizes | ||||
| .well-lg { | ||||
|   padding: 24px; | ||||
|   border-radius: @border-radius-large; | ||||
| } | ||||
| .well-sm { | ||||
|   padding: 9px; | ||||
|   border-radius: @border-radius-small; | ||||
| } | ||||
							
								
								
									
										587
									
								
								searx/static/themes/oscar/css/bootstrap-theme.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										587
									
								
								searx/static/themes/oscar/css/bootstrap-theme.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,587 @@ | ||||
| /*! | ||||
|  * Bootstrap v3.4.1 (https://getbootstrap.com/) | ||||
|  * Copyright 2011-2019 Twitter, Inc. | ||||
|  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||||
|  */ | ||||
| .btn-default, | ||||
| .btn-primary, | ||||
| .btn-success, | ||||
| .btn-info, | ||||
| .btn-warning, | ||||
| .btn-danger { | ||||
|   text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); | ||||
|   -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); | ||||
|   box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); | ||||
| } | ||||
| .btn-default:active, | ||||
| .btn-primary:active, | ||||
| .btn-success:active, | ||||
| .btn-info:active, | ||||
| .btn-warning:active, | ||||
| .btn-danger:active, | ||||
| .btn-default.active, | ||||
| .btn-primary.active, | ||||
| .btn-success.active, | ||||
| .btn-info.active, | ||||
| .btn-warning.active, | ||||
| .btn-danger.active { | ||||
|   -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); | ||||
|   box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); | ||||
| } | ||||
| .btn-default.disabled, | ||||
| .btn-primary.disabled, | ||||
| .btn-success.disabled, | ||||
| .btn-info.disabled, | ||||
| .btn-warning.disabled, | ||||
| .btn-danger.disabled, | ||||
| .btn-default[disabled], | ||||
| .btn-primary[disabled], | ||||
| .btn-success[disabled], | ||||
| .btn-info[disabled], | ||||
| .btn-warning[disabled], | ||||
| .btn-danger[disabled], | ||||
| fieldset[disabled] .btn-default, | ||||
| fieldset[disabled] .btn-primary, | ||||
| fieldset[disabled] .btn-success, | ||||
| fieldset[disabled] .btn-info, | ||||
| fieldset[disabled] .btn-warning, | ||||
| fieldset[disabled] .btn-danger { | ||||
|   -webkit-box-shadow: none; | ||||
|   box-shadow: none; | ||||
| } | ||||
| .btn-default .badge, | ||||
| .btn-primary .badge, | ||||
| .btn-success .badge, | ||||
| .btn-info .badge, | ||||
| .btn-warning .badge, | ||||
| .btn-danger .badge { | ||||
|   text-shadow: none; | ||||
| } | ||||
| .btn:active, | ||||
| .btn.active { | ||||
|   background-image: none; | ||||
| } | ||||
| .btn-default { | ||||
|   background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); | ||||
|   background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); | ||||
|   background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #dbdbdb; | ||||
|   text-shadow: 0 1px 0 #fff; | ||||
|   border-color: #ccc; | ||||
| } | ||||
| .btn-default:hover, | ||||
| .btn-default:focus { | ||||
|   background-color: #e0e0e0; | ||||
|   background-position: 0 -15px; | ||||
| } | ||||
| .btn-default:active, | ||||
| .btn-default.active { | ||||
|   background-color: #e0e0e0; | ||||
|   border-color: #dbdbdb; | ||||
| } | ||||
| .btn-default.disabled, | ||||
| .btn-default[disabled], | ||||
| fieldset[disabled] .btn-default, | ||||
| .btn-default.disabled:hover, | ||||
| .btn-default[disabled]:hover, | ||||
| fieldset[disabled] .btn-default:hover, | ||||
| .btn-default.disabled:focus, | ||||
| .btn-default[disabled]:focus, | ||||
| fieldset[disabled] .btn-default:focus, | ||||
| .btn-default.disabled.focus, | ||||
| .btn-default[disabled].focus, | ||||
| fieldset[disabled] .btn-default.focus, | ||||
| .btn-default.disabled:active, | ||||
| .btn-default[disabled]:active, | ||||
| fieldset[disabled] .btn-default:active, | ||||
| .btn-default.disabled.active, | ||||
| .btn-default[disabled].active, | ||||
| fieldset[disabled] .btn-default.active { | ||||
|   background-color: #e0e0e0; | ||||
|   background-image: none; | ||||
| } | ||||
| .btn-primary { | ||||
|   background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); | ||||
|   background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); | ||||
|   background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #245580; | ||||
| } | ||||
| .btn-primary:hover, | ||||
| .btn-primary:focus { | ||||
|   background-color: #265a88; | ||||
|   background-position: 0 -15px; | ||||
| } | ||||
| .btn-primary:active, | ||||
| .btn-primary.active { | ||||
|   background-color: #265a88; | ||||
|   border-color: #245580; | ||||
| } | ||||
| .btn-primary.disabled, | ||||
| .btn-primary[disabled], | ||||
| fieldset[disabled] .btn-primary, | ||||
| .btn-primary.disabled:hover, | ||||
| .btn-primary[disabled]:hover, | ||||
| fieldset[disabled] .btn-primary:hover, | ||||
| .btn-primary.disabled:focus, | ||||
| .btn-primary[disabled]:focus, | ||||
| fieldset[disabled] .btn-primary:focus, | ||||
| .btn-primary.disabled.focus, | ||||
| .btn-primary[disabled].focus, | ||||
| fieldset[disabled] .btn-primary.focus, | ||||
| .btn-primary.disabled:active, | ||||
| .btn-primary[disabled]:active, | ||||
| fieldset[disabled] .btn-primary:active, | ||||
| .btn-primary.disabled.active, | ||||
| .btn-primary[disabled].active, | ||||
| fieldset[disabled] .btn-primary.active { | ||||
|   background-color: #265a88; | ||||
|   background-image: none; | ||||
| } | ||||
| .btn-success { | ||||
|   background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); | ||||
|   background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); | ||||
|   background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #3e8f3e; | ||||
| } | ||||
| .btn-success:hover, | ||||
| .btn-success:focus { | ||||
|   background-color: #419641; | ||||
|   background-position: 0 -15px; | ||||
| } | ||||
| .btn-success:active, | ||||
| .btn-success.active { | ||||
|   background-color: #419641; | ||||
|   border-color: #3e8f3e; | ||||
| } | ||||
| .btn-success.disabled, | ||||
| .btn-success[disabled], | ||||
| fieldset[disabled] .btn-success, | ||||
| .btn-success.disabled:hover, | ||||
| .btn-success[disabled]:hover, | ||||
| fieldset[disabled] .btn-success:hover, | ||||
| .btn-success.disabled:focus, | ||||
| .btn-success[disabled]:focus, | ||||
| fieldset[disabled] .btn-success:focus, | ||||
| .btn-success.disabled.focus, | ||||
| .btn-success[disabled].focus, | ||||
| fieldset[disabled] .btn-success.focus, | ||||
| .btn-success.disabled:active, | ||||
| .btn-success[disabled]:active, | ||||
| fieldset[disabled] .btn-success:active, | ||||
| .btn-success.disabled.active, | ||||
| .btn-success[disabled].active, | ||||
| fieldset[disabled] .btn-success.active { | ||||
|   background-color: #419641; | ||||
|   background-image: none; | ||||
| } | ||||
| .btn-info { | ||||
|   background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); | ||||
|   background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); | ||||
|   background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #28a4c9; | ||||
| } | ||||
| .btn-info:hover, | ||||
| .btn-info:focus { | ||||
|   background-color: #2aabd2; | ||||
|   background-position: 0 -15px; | ||||
| } | ||||
| .btn-info:active, | ||||
| .btn-info.active { | ||||
|   background-color: #2aabd2; | ||||
|   border-color: #28a4c9; | ||||
| } | ||||
| .btn-info.disabled, | ||||
| .btn-info[disabled], | ||||
| fieldset[disabled] .btn-info, | ||||
| .btn-info.disabled:hover, | ||||
| .btn-info[disabled]:hover, | ||||
| fieldset[disabled] .btn-info:hover, | ||||
| .btn-info.disabled:focus, | ||||
| .btn-info[disabled]:focus, | ||||
| fieldset[disabled] .btn-info:focus, | ||||
| .btn-info.disabled.focus, | ||||
| .btn-info[disabled].focus, | ||||
| fieldset[disabled] .btn-info.focus, | ||||
| .btn-info.disabled:active, | ||||
| .btn-info[disabled]:active, | ||||
| fieldset[disabled] .btn-info:active, | ||||
| .btn-info.disabled.active, | ||||
| .btn-info[disabled].active, | ||||
| fieldset[disabled] .btn-info.active { | ||||
|   background-color: #2aabd2; | ||||
|   background-image: none; | ||||
| } | ||||
| .btn-warning { | ||||
|   background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); | ||||
|   background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); | ||||
|   background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #e38d13; | ||||
| } | ||||
| .btn-warning:hover, | ||||
| .btn-warning:focus { | ||||
|   background-color: #eb9316; | ||||
|   background-position: 0 -15px; | ||||
| } | ||||
| .btn-warning:active, | ||||
| .btn-warning.active { | ||||
|   background-color: #eb9316; | ||||
|   border-color: #e38d13; | ||||
| } | ||||
| .btn-warning.disabled, | ||||
| .btn-warning[disabled], | ||||
| fieldset[disabled] .btn-warning, | ||||
| .btn-warning.disabled:hover, | ||||
| .btn-warning[disabled]:hover, | ||||
| fieldset[disabled] .btn-warning:hover, | ||||
| .btn-warning.disabled:focus, | ||||
| .btn-warning[disabled]:focus, | ||||
| fieldset[disabled] .btn-warning:focus, | ||||
| .btn-warning.disabled.focus, | ||||
| .btn-warning[disabled].focus, | ||||
| fieldset[disabled] .btn-warning.focus, | ||||
| .btn-warning.disabled:active, | ||||
| .btn-warning[disabled]:active, | ||||
| fieldset[disabled] .btn-warning:active, | ||||
| .btn-warning.disabled.active, | ||||
| .btn-warning[disabled].active, | ||||
| fieldset[disabled] .btn-warning.active { | ||||
|   background-color: #eb9316; | ||||
|   background-image: none; | ||||
| } | ||||
| .btn-danger { | ||||
|   background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); | ||||
|   background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); | ||||
|   background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #b92c28; | ||||
| } | ||||
| .btn-danger:hover, | ||||
| .btn-danger:focus { | ||||
|   background-color: #c12e2a; | ||||
|   background-position: 0 -15px; | ||||
| } | ||||
| .btn-danger:active, | ||||
| .btn-danger.active { | ||||
|   background-color: #c12e2a; | ||||
|   border-color: #b92c28; | ||||
| } | ||||
| .btn-danger.disabled, | ||||
| .btn-danger[disabled], | ||||
| fieldset[disabled] .btn-danger, | ||||
| .btn-danger.disabled:hover, | ||||
| .btn-danger[disabled]:hover, | ||||
| fieldset[disabled] .btn-danger:hover, | ||||
| .btn-danger.disabled:focus, | ||||
| .btn-danger[disabled]:focus, | ||||
| fieldset[disabled] .btn-danger:focus, | ||||
| .btn-danger.disabled.focus, | ||||
| .btn-danger[disabled].focus, | ||||
| fieldset[disabled] .btn-danger.focus, | ||||
| .btn-danger.disabled:active, | ||||
| .btn-danger[disabled]:active, | ||||
| fieldset[disabled] .btn-danger:active, | ||||
| .btn-danger.disabled.active, | ||||
| .btn-danger[disabled].active, | ||||
| fieldset[disabled] .btn-danger.active { | ||||
|   background-color: #c12e2a; | ||||
|   background-image: none; | ||||
| } | ||||
| .thumbnail, | ||||
| .img-thumbnail { | ||||
|   -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); | ||||
|   box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); | ||||
| } | ||||
| .dropdown-menu > li > a:hover, | ||||
| .dropdown-menu > li > a:focus { | ||||
|   background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||||
|   background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); | ||||
|   background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   background-color: #e8e8e8; | ||||
| } | ||||
| .dropdown-menu > .active > a, | ||||
| .dropdown-menu > .active > a:hover, | ||||
| .dropdown-menu > .active > a:focus { | ||||
|   background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||||
|   background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); | ||||
|   background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   background-color: #2e6da4; | ||||
| } | ||||
| .navbar-default { | ||||
|   background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%); | ||||
|   background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f8f8f8)); | ||||
|   background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||||
|   border-radius: 4px; | ||||
|   -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075); | ||||
|   box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075); | ||||
| } | ||||
| .navbar-default .navbar-nav > .open > a, | ||||
| .navbar-default .navbar-nav > .active > a { | ||||
|   background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); | ||||
|   background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); | ||||
|   background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075); | ||||
|   box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075); | ||||
| } | ||||
| .navbar-brand, | ||||
| .navbar-nav > li > a { | ||||
|   text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); | ||||
| } | ||||
| .navbar-inverse { | ||||
|   background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); | ||||
|   background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); | ||||
|   background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||||
|   border-radius: 4px; | ||||
| } | ||||
| .navbar-inverse .navbar-nav > .open > a, | ||||
| .navbar-inverse .navbar-nav > .active > a { | ||||
|   background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); | ||||
|   background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); | ||||
|   background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25); | ||||
|   box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25); | ||||
| } | ||||
| .navbar-inverse .navbar-brand, | ||||
| .navbar-inverse .navbar-nav > li > a { | ||||
|   text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | ||||
| } | ||||
| .navbar-static-top, | ||||
| .navbar-fixed-top, | ||||
| .navbar-fixed-bottom { | ||||
|   border-radius: 0; | ||||
| } | ||||
| @media (max-width: 767px) { | ||||
|   .navbar .navbar-nav .open .dropdown-menu > .active > a, | ||||
|   .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, | ||||
|   .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { | ||||
|     color: #fff; | ||||
|     background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||||
|     background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||||
|     background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); | ||||
|     background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); | ||||
|     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); | ||||
|     background-repeat: repeat-x; | ||||
|   } | ||||
| } | ||||
| .alert { | ||||
|   text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2); | ||||
|   -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); | ||||
|   box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); | ||||
| } | ||||
| .alert-success { | ||||
|   background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); | ||||
|   background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); | ||||
|   background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #b2dba1; | ||||
| } | ||||
| .alert-info { | ||||
|   background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); | ||||
|   background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); | ||||
|   background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #9acfea; | ||||
| } | ||||
| .alert-warning { | ||||
|   background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); | ||||
|   background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); | ||||
|   background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #f5e79e; | ||||
| } | ||||
| .alert-danger { | ||||
|   background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); | ||||
|   background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); | ||||
|   background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #dca7a7; | ||||
| } | ||||
| .progress { | ||||
|   background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); | ||||
|   background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); | ||||
|   background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .progress-bar { | ||||
|   background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); | ||||
|   background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); | ||||
|   background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .progress-bar-success { | ||||
|   background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); | ||||
|   background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); | ||||
|   background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .progress-bar-info { | ||||
|   background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); | ||||
|   background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); | ||||
|   background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .progress-bar-warning { | ||||
|   background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); | ||||
|   background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); | ||||
|   background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .progress-bar-danger { | ||||
|   background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); | ||||
|   background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); | ||||
|   background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .progress-bar-striped { | ||||
|   background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | ||||
|   background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | ||||
|   background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | ||||
| } | ||||
| .list-group { | ||||
|   border-radius: 4px; | ||||
|   -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); | ||||
|   box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); | ||||
| } | ||||
| .list-group-item.active, | ||||
| .list-group-item.active:hover, | ||||
| .list-group-item.active:focus { | ||||
|   text-shadow: 0 -1px 0 #286090; | ||||
|   background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); | ||||
|   background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); | ||||
|   background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #2b669a; | ||||
| } | ||||
| .list-group-item.active .badge, | ||||
| .list-group-item.active:hover .badge, | ||||
| .list-group-item.active:focus .badge { | ||||
|   text-shadow: none; | ||||
| } | ||||
| .panel { | ||||
|   -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); | ||||
|   box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); | ||||
| } | ||||
| .panel-default > .panel-heading { | ||||
|   background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||||
|   background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); | ||||
|   background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .panel-primary > .panel-heading { | ||||
|   background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||||
|   background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); | ||||
|   background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .panel-success > .panel-heading { | ||||
|   background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); | ||||
|   background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); | ||||
|   background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .panel-info > .panel-heading { | ||||
|   background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); | ||||
|   background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); | ||||
|   background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .panel-warning > .panel-heading { | ||||
|   background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); | ||||
|   background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); | ||||
|   background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .panel-danger > .panel-heading { | ||||
|   background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); | ||||
|   background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); | ||||
|   background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
| } | ||||
| .well { | ||||
|   background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); | ||||
|   background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); | ||||
|   background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); | ||||
|   background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); | ||||
|   background-repeat: repeat-x; | ||||
|   border-color: #dcdcdc; | ||||
|   -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1); | ||||
|   box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1); | ||||
| } | ||||
| /*# sourceMappingURL=bootstrap-theme.css.map */ | ||||
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/css/bootstrap-theme.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/css/bootstrap-theme.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/css/bootstrap-theme.min.css.map
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/css/bootstrap-theme.min.css.map
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										6990
									
								
								searx/static/themes/oscar/css/bootstrap.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6990
									
								
								searx/static/themes/oscar/css/bootstrap.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/css/bootstrap.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/css/bootstrap.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/css/bootstrap.min.css.map
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/css/bootstrap.min.css.map
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/fonts/glyphicons-halflings-regular.eot
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/fonts/glyphicons-halflings-regular.eot
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/fonts/glyphicons-halflings-regular.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/fonts/glyphicons-halflings-regular.svg
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 106 KiB | 
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/fonts/glyphicons-halflings-regular.ttf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/fonts/glyphicons-halflings-regular.ttf
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -11,6 +11,8 @@ module.exports = function(grunt) { | ||||
|         filter: 'isFile', | ||||
|         timestamp: true, | ||||
|         src: [ | ||||
|           './bootstrap/dist/js/bootstrap.min.js', | ||||
|           './corejs-typeahead/dist/typeahead.bundle.min.js', | ||||
|           './jquery/dist/jquery.min.js', | ||||
|           './leaflet/dist/leaflet.js', | ||||
|         ] | ||||
| @ -23,9 +25,23 @@ module.exports = function(grunt) { | ||||
|         filter: 'isFile', | ||||
|         timestamp: true, | ||||
|         src: [ | ||||
|           './bootstrap/dist/css/bootstrap-theme.css', | ||||
|           './bootstrap/dist/css/bootstrap-theme.min.css', | ||||
|           './bootstrap/dist/css/bootstrap-theme.min.css.map', | ||||
|           './leaflet/dist/leaflet.css', | ||||
|         ] | ||||
|       }, | ||||
|       fonts: { | ||||
|         expand: true, | ||||
|         cwd: './node_modules', | ||||
|         dest: './fonts/', | ||||
|         flatten: true, | ||||
|         filter: 'isFile', | ||||
|         timestamp: true, | ||||
|         src: [ | ||||
|           './bootstrap/dist/fonts/glyphicons-*.*', | ||||
|         ] | ||||
|       }, | ||||
|       leaflet_images: { | ||||
|         expand: true, | ||||
|         cwd: './node_modules', | ||||
| @ -74,9 +90,10 @@ module.exports = function(grunt) { | ||||
|     less: { | ||||
|       development: { | ||||
|         options: { | ||||
|           paths: ["src/less/pointhi", "src/less/logicodev", "src/less/logicodev-dark"] | ||||
|           paths: ["src/less/pointhi", "src/less/logicodev", "src/less/logicodev-dark", "src/less/bootstrap"] | ||||
|         }, | ||||
|         files: { | ||||
|           "css/bootstrap.css": "src/less/bootstrap/bootstrap.less", | ||||
|           "css/pointhi.css": "src/less/pointhi/oscar.less", | ||||
|           "css/logicodev.css": "src/less/logicodev-dark/oscar.less", | ||||
|           "css/logicodev-dark.css": "src/less/logicodev/oscar.less" | ||||
| @ -84,13 +101,14 @@ module.exports = function(grunt) { | ||||
|       }, | ||||
|       production: { | ||||
|         options: { | ||||
|           paths: ["src/less/pointhi", "src/less/logicodev", "src/less/logicodev-dark"], | ||||
|           paths: ["src/less/pointhi", "src/less/logicodev", "src/less/logicodev-dark", "less/bootstrap"], | ||||
|           plugins: [ | ||||
|             new (require('less-plugin-clean-css'))() | ||||
|           ], | ||||
|           sourceMap: true, | ||||
|         }, | ||||
|         files: { | ||||
|           "css/bootstrap.min.css": "src/less/bootstrap/bootstrap.less", | ||||
|           "css/leaflet.min.css": "css/leaflet.css", | ||||
|           "css/pointhi.min.css": "src/less/pointhi/oscar.less", | ||||
|           "css/logicodev.min.css": "src/less/logicodev/oscar.less", | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/js/bootstrap.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/js/bootstrap.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -45,31 +45,42 @@ window.searx = (function(d) { | ||||
|  * (C) 2014 by Thomas Pointhuber, <thomas.pointhuber@gmx.at> | ||||
|  */ | ||||
| 
 | ||||
| if(searx.autocompleter) { | ||||
|     searx.searchResults = new Bloodhound({ | ||||
|         datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'), | ||||
|         queryTokenizer: Bloodhound.tokenizers.whitespace, | ||||
|         remote: './autocompleter?q=%QUERY' | ||||
|     }); | ||||
|     searx.searchResults.initialize(); | ||||
| } | ||||
| 
 | ||||
| $(document).ready(function(){ | ||||
|     var original_search_value = ''; | ||||
|     if(searx.autocompleter) { | ||||
| 		$("#q").on('keydown', function(e) { | ||||
|         var searchResults = new Bloodhound({ | ||||
|             datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'), | ||||
|             queryTokenizer: Bloodhound.tokenizers.whitespace, | ||||
|             remote: { | ||||
|                 url: './autocompleter?q=%QUERY', | ||||
|                 wildcard: '%QUERY' | ||||
|             } | ||||
|         }); | ||||
|         searchResults.initialize(); | ||||
| 
 | ||||
|         $("#q").on('keydown', function(e) { | ||||
| 			if(e.which == 13) { | ||||
|                 original_search_value = $('#q').val(); | ||||
| 			} | ||||
| 		}); | ||||
|         $('#q').typeahead(null, { | ||||
|         $('#q').typeahead({ | ||||
|             name: 'search-results', | ||||
|             highlight: false, | ||||
|             hint: true, | ||||
|             displayKey: function(result) { | ||||
|                 return result; | ||||
|             }, | ||||
|             source: searx.searchResults.ttAdapter() | ||||
|             classNames: { | ||||
|                 input: 'tt-input', | ||||
|                 hint: 'tt-hint', | ||||
|                 menu: 'tt-dropdown-menu', | ||||
|                 dataset: 'tt-dataset-search-results', | ||||
|             }, | ||||
|         }, { | ||||
|             name: 'autocomplete', | ||||
|             source: searchResults, | ||||
|         }); | ||||
|         $('#q').bind('typeahead:selected', function(ev, suggestion) { | ||||
|         $('#q').bind('typeahead:select', function(ev, suggestion) { | ||||
|             if(original_search_value) { | ||||
|                 $('#q').val(original_search_value); | ||||
|             } | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/js/searx.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/js/searx.min.js
									
									
									
									
										vendored
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								searx/static/themes/oscar/js/typeahead.bundle.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								searx/static/themes/oscar/js/typeahead.bundle.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -15,6 +15,8 @@ | ||||
|         "test": "grunt" | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "bootstrap": "^3.4.1", | ||||
|         "corejs-typeahead": "^1.3.1", | ||||
|         "jquery": "^3.6.0", | ||||
|         "leaflet": "^1.7.1" | ||||
|     } | ||||
|  | ||||
| @ -15,31 +15,42 @@ | ||||
|  * (C) 2014 by Thomas Pointhuber, <thomas.pointhuber@gmx.at> | ||||
|  */ | ||||
| 
 | ||||
| if(searx.autocompleter) { | ||||
|     searx.searchResults = new Bloodhound({ | ||||
|         datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'), | ||||
|         queryTokenizer: Bloodhound.tokenizers.whitespace, | ||||
|         remote: './autocompleter?q=%QUERY' | ||||
|     }); | ||||
|     searx.searchResults.initialize(); | ||||
| } | ||||
| 
 | ||||
| $(document).ready(function(){ | ||||
|     var original_search_value = ''; | ||||
|     if(searx.autocompleter) { | ||||
| 		$("#q").on('keydown', function(e) { | ||||
|         var searchResults = new Bloodhound({ | ||||
|             datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'), | ||||
|             queryTokenizer: Bloodhound.tokenizers.whitespace, | ||||
|             remote: { | ||||
|                 url: './autocompleter?q=%QUERY', | ||||
|                 wildcard: '%QUERY' | ||||
|             } | ||||
|         }); | ||||
|         searchResults.initialize(); | ||||
| 
 | ||||
|         $("#q").on('keydown', function(e) { | ||||
| 			if(e.which == 13) { | ||||
|                 original_search_value = $('#q').val(); | ||||
| 			} | ||||
| 		}); | ||||
|         $('#q').typeahead(null, { | ||||
|         $('#q').typeahead({ | ||||
|             name: 'search-results', | ||||
|             highlight: false, | ||||
|             hint: true, | ||||
|             displayKey: function(result) { | ||||
|                 return result; | ||||
|             }, | ||||
|             source: searx.searchResults.ttAdapter() | ||||
|             classNames: { | ||||
|                 input: 'tt-input', | ||||
|                 hint: 'tt-hint', | ||||
|                 menu: 'tt-dropdown-menu', | ||||
|                 dataset: 'tt-dataset-search-results', | ||||
|             }, | ||||
|         }, { | ||||
|             name: 'autocomplete', | ||||
|             source: searchResults, | ||||
|         }); | ||||
|         $('#q').bind('typeahead:selected', function(ev, suggestion) { | ||||
|         $('#q').bind('typeahead:select', function(ev, suggestion) { | ||||
|             if(original_search_value) { | ||||
|                 $('#q').val(original_search_value); | ||||
|             } | ||||
|  | ||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
		Reference in New Issue
	
	Block a user