8889841cneon-rtl.less000066600000001542150425122620007177 0ustar00// // Right-to-Left for Bootstrap 3.0.0 // Morteza Ansarinia // -------------------------------------------------- @import "other-less/lesshat.less"; @import "bs-less/variables.less"; @import "neon-less/variables.less"; // Original LESS files from the latest bootstrap @import "bs-rtl-less/variables.less"; @import "bs-rtl-less/mixins.less"; // Core RTL CSS @import "bs-rtl-less/type-rtl.less"; // Right-to-left the original bootstrap - to be removed @import "bs-rtl-less/merged-rtl.less"; // Button groups @import "bs-rtl-less/button-groups-rtl.less"; // Right-to-left the grid system @import "bs-rtl-less/grid-rtl.less"; // List groups and badges inside them @import "bs-rtl-less/list-group-rtl.less"; // Components w/ JavaScript @import "bs-rtl-less/carousel-rtl.less"; // Theme for visual enhancement @import "bs-rtl-less/neon.less"; other-less/timepicker.less000066600000011465150425122620011667 0ustar00/*! * Timepicker Component for Twitter Bootstrap * * Copyright 2013 Joris de Wit * * Contributors https://github.com/jdewit/bootstrap-timepicker/graphs/contributors * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ .bootstrap-timepicker { position: relative; &.pull-right { .bootstrap-timepicker-widget { &.dropdown-menu { left: auto; right: 0; &:before { left: auto; right: 12px; } &:after { left: auto; right: 13px; } } } } .add-on { cursor: pointer; i { display: inline-block; width: 16px; height: 16px; } } } .bootstrap-timepicker-widget { &.dropdown-menu { padding: 4px; &.open { display: inline-block; z-index: 10000; } &:before { border-bottom: 7px solid rgba(0, 0, 0, 0.2); border-left: 7px solid transparent; border-right: 7px solid transparent; content: ""; display: inline-block; position: absolute; } &:after { border-bottom: 6px solid #FFFFFF; border-left: 6px solid transparent; border-right: 6px solid transparent; content: ""; display: inline-block; position: absolute; } } &.timepicker-orient-left { &:before { left: 6px; } &:after { left: 7px; } } &.timepicker-orient-right { &:before { right: 6px; } &:after { right: 7px; } } &.timepicker-orient-top { &:before { top: -7px; } &:after { top: -6px; } } &.timepicker-orient-bottom { &:before { bottom: -7px; border-bottom: 0; border-top: 7px solid #CCC; } &:after { bottom: -6px; border-bottom: 0; border-top: 6px solid #ffffff; } } a.btn, input { border-radius: @border_radius; } table { width: 100%; margin: 0; td { text-align: center; height: 30px; margin: 0; padding: 2px; &:not(.separator) { min-width: 30px; } span { width: 100%; } a { border: 1px transparent solid; width: 100%; display: inline-block; margin: 0; padding: 0 0; outline: 0; color: @main_color; &:hover { text-decoration: none; background-color: @hover_bg; .rounded; border-color: @default; } i { margin-top: 2px; &:before { font-family: @font_entypo; font-size: @p_size; font-style: normal; } &.icon-chevron-up { &:before { content: '\e876'; } } &.icon-chevron-down { &:before { content: '\e873'; } } } } input { width: 25px; margin: 0; text-align: center; outline: none; border: 0; background: transparent; &:focus { background: @hover_bg; } } } } } .bootstrap-timepicker-widget .modal-content { padding: 4px; } .date-and-time { @datepicker_width: 70%; > input.datepicker { float: left; width: @datepicker_width; } > input.timepicker { float: right; width: 100% - @datepicker_width; } > input:first-child { .border-radius(@border_radius 0 0 @border_radius); border-right: 0; } > input:last-child { .border-radius(0 @border_radius @border_radius 0); } } @media (min-width: 767px) { .bootstrap-timepicker-widget.modal { width: 200px; margin-left: -100px; } } @media (max-width: 767px) { .bootstrap-timepicker { width: 100%; .dropdown-menu { width: 100%; } } } other-less/morris.core.less000066600000000744150425122620011773 0ustar00.morris-hover { position: absolute; z-index: 1000; &.morris-default-style { border-radius: 10px; padding: 6px; color: #666; background: rgba(255, 255, 255, 0.8); border: solid 2px rgba(230, 230, 230, 0.8); font-family: sans-serif; font-size: 12px; text-align: center; .morris-hover-row-label { font-weight: bold; margin: 0.25em 0; } .morris-hover-point { white-space: nowrap; margin: 0.1em 0; } } } other-less/colorpicker.less000066600000007735150425122620012054 0ustar00/*! * Bootstrap Colorpicker * http://mjolnic.github.io/bootstrap-colorpicker/ * * Originally written by (c) 2012 Stefan Petre * Licensed under the Apache License v2.0 * http://www.apache.org/licenses/LICENSE-2.0.txt * */ .bgImg(@img){ background-image: url("../images/colorpicker/@{img}"); } .borderRadius(@size){ -webkit-border-radius: @size; -moz-border-radius: @size; border-radius: @size; } .colorpicker-saturation { width: 100px; height: 100px; .bgImg('saturation.png'); cursor: crosshair; float: left; i { display: block; height: 5px; width: 5px; border: 1px solid #000; .borderRadius(@border_radius); position: absolute; top: 0; left: 0; margin: -4px 0 0 -4px; b { display: block; height: 5px; width: 5px; border: 1px solid #fff; .borderRadius(@border_radius); } } } .colorpicker-hue, .colorpicker-alpha { width: 15px; height: 100px; float: left; cursor: row-resize; margin-left: 4px; margin-bottom: 4px; } .colorpicker-hue i, .colorpicker-alpha i { display: block; height: 1px; background: #000; border-top: 1px solid #fff; position: absolute; top: 0; left: 0; width: 100%; margin-top: -1px; } .colorpicker-hue { .bgImg('hue.png'); } .colorpicker-alpha { .bgImg('alpha.png'); display: none; } div.colorpicker { *zoom: 1; top: 0; left: 0; padding: 4px; min-width: 130px; margin-top: 1px; .borderRadius(@border_radius - 1); z-index:2500; } .colorpicker:before, .colorpicker:after { display: table; content: ""; line-height: 0; } .colorpicker:after { clear: both; } .colorpicker:before { content: ''; display: inline-block; border-left: 7px solid transparent; border-right: 7px solid transparent; border-bottom: 7px solid @default; border-bottom-color: darken(@default, 2%); position: absolute; top: -7px; left: 6px; } .colorpicker:after { content: ''; display: inline-block; border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: 6px solid #ffffff; position: absolute; top: -6px; left: 7px; } .colorpicker div { position: relative; } .colorpicker.colorpicker-with-alpha { min-width: 140px; } .colorpicker.colorpicker-with-alpha .colorpicker-alpha { display: block; } .colorpicker-color { height: 10px; margin-top: 5px; clear: both; .bgImg('alpha.png'); background-position: 0 100%; } .colorpicker-color div { height: 10px; } .colorpicker-element .input-group-addon i{ display: block; cursor: pointer; width: 16px; height: 16px; } .colorpicker.colorpicker-inline { position: relative; display: inline-block; float: none; } .colorpicker.colorpicker-horizontal { width: 110px; min-width: 110px; height: auto; } .colorpicker.colorpicker-horizontal .colorpicker-saturation{ margin-bottom: 4px; } .colorpicker.colorpicker-horizontal .colorpicker-color { width: 100px; } .colorpicker.colorpicker-horizontal .colorpicker-hue, .colorpicker.colorpicker-horizontal .colorpicker-alpha { width: 100px; height: 15px; float: left; cursor: col-resize; margin-left: 0px; margin-bottom: 4px; } .colorpicker.colorpicker-horizontal .colorpicker-hue i, .colorpicker.colorpicker-horizontal .colorpicker-alpha i { display: block; height: 15px; background: #ffffff; position: absolute; top: 0; left: 0; width: 1px; border: none; margin-top: 0px; } .colorpicker.colorpicker-horizontal .colorpicker-hue { .bgImg('hue-horizontal.png'); } .colorpicker.colorpicker-horizontal .colorpicker-alpha { .bgImg('alpha-horizontal.png'); } .colorpicker.colorpicker-hidden{ display:none; } .colorpicker.colorpicker-visible{ display:block; } .colorpicker-inline.colorpicker-visible{ display:inline-block; }other-less/lesshat.less000066600000147435150425122620011205 0ustar00// * =========================================================== * // < LESSHat > // * =========================================================== * // // Made with Energy drinks in Prague, Czech Republic. // Handcrafted by Petr Brzek, lesshat.com // Works great with CSS Hat csshat.com // version: v3.0.2 (2014-06-26) // TABLE OF MIXINS: // align-content // align-items // align-self // animation // animation-delay // animation-direction // animation-duration // animation-fill-mode // animation-iteration-count // animation-name // animation-play-state // animation-timing-function // appearance // backface-visibility // background-clip // background-image // background-origin // background-size // blur // border-bottom-left-radius // border-bottom-right-radius // border-image // border-radius // border-top-left-radius // border-top-right-radius // box-shadow // box-sizing // brightness // calc // column-count // column-gap // column-rule // column-width // columns // contrast // display // drop-shadow // filter // flex // flex-basis // flex-direction // flex-grow // flex-shrink // flex-wrap // font-face // grayscale // hue-rotate // hyphens // invert // justify-content // keyframes // opacity // order // perspective // perspective-origin // placeholder // rotate // rotate3d // rotateX // rotateY // rotateZ // saturate // scale // scale3d // scaleX // scaleY // scaleZ // selection // sepia // size // skew // skewX // skewY // transform // transform-origin // transform-style // transition // transition-delay // transition-duration // transition-property // transition-timing-function // translate // translate3d // translateX // translateY // translateZ // user-select .align-content(...) { @process: ~`(function(r){return r=r||"stretch"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; @process_ms: ~`(function(t){return t=t||"stretch","flex-start"==t?t="start":"flex-end"==t?t="end":"space-between"==t?t="justify":"space-around"==t&&(t="distribute"),t})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-align-content: @process; -ms-flex-line-pack: @process_ms; align-content: @process; } .align-items(...) { @process_olderwebkit: ~`(function(t){return t=t||"stretch","flex-start"==t?t="start":"flex-end"==t&&(t="end"),t})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_moz: ~`(function(t){return t=t||"stretch","flex-start"==t?t="start":"flex-end"==t&&(t="end"),t})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(t){return t=t||"stretch"})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; @process_ms: ~`(function(t){return t=t||"stretch","flex-start"==t?t="start":"flex-end"==t&&(t="end"),t})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; -webkit-box-align: @process_olderwebkit; -moz-box-align: @process_moz; -webkit-align-items: @process; -ms-flex-align: @process_ms; align-items: @process; } .align-self(...) { @process: ~`(function(t){return t=t||"auto"})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; @process_ms: ~`(function(t){return t=t||"auto","flex-start"==t?t="start":"flex-end"==t&&(t="end"),t})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; -webkit-align-self: @process; -ms-flex-item-align: @process_ms; align-self: @process; } .animation(...) { @process: ~`(function(t){return t=t||"none",/^[^, ]*,/.test(t)&&(t=t.replace(/(?:,)(?![^(]*\))/g,"")),t})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; -webkit-animation: @process; -moz-animation: @process; -o-animation: @process; animation: @process; } .animation-delay(...) { @process: ~`(function(t){t=t||"0";var r=/(?:\d)(?:ms|s)/gi,e=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(t)||"0"===t||(t=t.replace(e,function(t){return t+=parseFloat(t,10)>10?"ms":"s"})),t})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; -webkit-animation-delay: @process; -moz-animation-delay: @process; -o-animation-delay: @process; animation-delay: @process; } .animation-direction(...) { @process: ~`(function(r){return r||"normal"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-animation-direction: @process; -moz-animation-direction: @process; -o-animation-direction: @process; animation-direction: @process; } .animation-duration(...) { @process: ~`(function(r){r=r||"0";var t=/ms|s/gi,e=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return t.test(r)||"0"===r||(r=r.replace(e,function(r){return r+=parseFloat(r,10)>10?"ms":"s"})),r})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-animation-duration: @process; -moz-animation-duration: @process; -o-animation-duration: @process; animation-duration: @process; } .animation-fill-mode(...) { @process: ~`(function(r){return r||"none"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-animation-fill-mode: @process; -moz-animation-fill-mode: @process; -o-animation-fill-mode: @process; animation-fill-mode: @process; } .animation-iteration-count(...) { @process: ~`(function(r){return r||"0"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-animation-iteration-count: @process; -moz-animation-iteration-count: @process; -o-animation-iteration-count: @process; animation-iteration-count: @process; } .animation-name(...) { @process: ~`(function(r){return r||"none"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-animation-name: @process; -moz-animation-name: @process; -o-animation-name: @process; animation-name: @process; } .animation-play-state(...) { @process: ~`(function(r){return r||"running"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-animation-play-state: @process; -moz-animation-play-state: @process; -o-animation-play-state: @process; animation-play-state: @process; } .animation-timing-function(...) { @process: ~`(function(r){return r||"ease"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-animation-timing-function: @process; -moz-animation-timing-function: @process; -o-animation-timing-function: @process; animation-timing-function: @process; } .appearance(...) { @process: ~`(function(r){return r||"none"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-appearance: @process; -moz-appearance: @process; appearance: @process; } .backface-visibility(...) { @process: ~`(function(r){return r||"visible"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-backface-visibility: @process; -moz-backface-visibility: @process; -ms-backface-visibility: @process; -o-backface-visibility: @process; backface-visibility: @process; } .background-clip(...) { @process: ~`(function(r){return r||"border-box"})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; -webkit-background-clip: @process; -moz-background-clip: @process; background-clip: @process; } .background-image(...) { @process_ms: ~`(function(t){function e(t){var e,r,n,a,s,i,u,o,g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",c=0,l=0,f="",d=[];if(!t)return t;do e=t.charCodeAt(c++),r=t.charCodeAt(c++),n=t.charCodeAt(c++),o=e<<16|r<<8|n,a=63&o>>18,s=63&o>>12,i=63&o>>6,u=63&o,d[l++]=g.charAt(a)+g.charAt(s)+g.charAt(i)+g.charAt(u);while(c',svg_start:'',linear_gradient_start:'",radial_gradient_end:"",rect_linear:'',rect_radial:'',svg_end:""};if(r.length){r.forEach(function(t){var e={};if(Object.keys(a).some(function(r){return t.indexOf(r)>=0?(e.svg_direction=a[r],!0):(e.svg_direction=!1,void 0)}),/linear/.test(t))e.svg_type="linear";else if(/radial/.test(t))e.svg_type="radial";else if(!/linear/.test(t)&&!/radial/.test(t))return e.url=t.trim(),e.svg_type="url",e.svg_direction=!0,n.push(e),!1;var r=t.match(/rgb|#[a-zA-Z0-9]|hsl/g).length;e.svg_stops=[],t=t.replace(/transparent/g,"rgba(0,0,0,0)"),t.match(/#[a-zA-Z0-9]/g)&&t.match(/(#[a-zA-Z0-9]+)\s*(\d+%)?/g).forEach(function(t){t=t.split(" "),e.svg_stops.push('')}),t.match(/rgba?\(\d+,\s*\d+,\s*\d+(?:,\s*(0|1|\.\d+|0\.\d+))?\)/g)&&t.replace(/rgba?\((\d+,\s*\d+,\s*\d+)(?:,\s*(0|1|\.\d+|0\.\d+))?\)\s*(\d+%)?/g,function(t,r,n,a){e.svg_stops.push('')}),t.match(/hsla?\((\d+,\s*\d+%,\s*\d+%),\s*(0|1|\.\d+|0\.\d+)\)/g)&&t.replace(/hsla?\((\d+,\s*\d+%,\s*\d+%),\s*(0|1|\.\d+|0\.\d+)\)\s*(\d+%)?/g,function(t,r,n,a){e.svg_stops.push('')});var s=Math.floor(100/(r-1));e.svg_stops.forEach(function(t,r){/offset="false"/.test(t)&&(e.svg_stops[r]=t.replace(/offset="false"/,'offset="'+s*r+'%"'))}),e.svg_stops.sort(function(t,e){return t=t.match(/offset="(\d+)%"/),e=e.match(/offset="(\d+)%"/),2==t.length&&2==e.length?t[1]-e[1]:void 0}),n.push(e)});var i=[],u=n.every(function(t){for(var e in t)if(0==t[e]||0==t[e].length)return!1;return!0});if(!u)return 8121991;n.forEach(function(t,e){("linear"==t.svg_type||"radial"==t.svg_type)&&(i[e]=s.xml+s.svg_start),"linear"==t.svg_type?(i[e]+=s.linear_gradient_start+" "+t.svg_direction+">",t.svg_stops.forEach(function(t){i[e]+=t}),i[e]+=s.linear_gradient_end,i[e]+=s.rect_linear,i[e]+=s.svg_end):"radial"==t.svg_type?(i[e]+=s.radial_gradient_start+" "+t.svg_direction+">",t.svg_stops.forEach(function(t){i[e]+=t}),i[e]+=s.radial_gradient_end,i[e]+=s.rect_radial,i[e]+=s.svg_end):"url"==t.svg_type&&(i[e]=t.url)}),i.forEach(function(t,r){/<\?xml version="1.0" \?>/g.test(t)&&(i[r]=s.uri_data+e(t)+")")}),t=i.join(",")}return t})((function(){var r="@{arguments}";return r=r.replace(/^\[|\]$/g,"")})())`; @process_webkit: ~`(function(t){if(t=t||8121991,8121991==t)return t;var e={"to bottom":"top","to left":"right","to top":"bottom","to right":"left","ellipse at center":"center, ellipse cover","circle closest-side":"center center, circle contain","circle farthest-corner":"center center, circle cover","circle farthest-side":"center center, circle cover","ellipse closest-side":"center center, ellipse contain","ellipse farthest-corner":"center center, ellipse cover","ellipse farthest-side":"center center, ellipse cover"},r=/(radial-gradient\()([a-z- ]+)at\s+(\w+%?)\s*(\w*%?)/g,n=Object.keys(e);return n.some(function(n){return t.indexOf(n)>=0?(t=t.replace(new RegExp(n+"(?![ a-z0-9])","g"),e[n]),!0):(r.test(t)&&(t=t.replace(r,function(t,e,r,n,a){return e.trim()+n.trim()+" "+a.trim()+","+r.replace(/closest-side/g,"contain").replace(/farthest-corner/g,"cover").trim()})),void 0)}),t=t.replace(/(\d+)\s*deg/g,function(t,e){return 90-e+"deg"}).replace(/(linear|radial)-gradient/g,"-webkit-$1-gradient")})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; @process_moz: ~`(function(e){if(e=e||8121991,8121991==e)return e;var t={"to bottom":"top","to left":"right","to top":"bottom","to right":"left","ellipse at center":"center, ellipse cover","circle closest-side":"center center, circle contain","circle farthest-corner":"center center, circle cover","circle farthest-side":"center center, circle cover","ellipse closest-side":"center center, ellipse contain","ellipse farthest-corner":"center center, ellipse cover","ellipse farthest-side":"center center, ellipse cover"},r=/(radial-gradient\()([a-z- ]+)at\s+(\w+%?)\s*(\w*%?)/g,n=Object.keys(t);return n.some(function(n){return e.indexOf(n)>=0?(e=e.replace(new RegExp(n+"(?![ a-z0-9])","g"),t[n]),!0):(r.test(e)&&(e=e.replace(r,function(e,t,r,n,a){return t.trim()+n.trim()+" "+a.trim()+","+r.replace(/closest-side/g,"contain").replace(/farthest-corner/g,"cover").trim()})),void 0)}),e=e.replace(/(\d+)\s*deg/g,function(e,t){return 90-t+"deg"}).replace(/(linear|radial)-gradient/g,"-moz-$1-gradient")})((function(){var t="@{arguments}";return t=t.replace(/^\[|\]$/g,"")})())`; @process_opera: ~`(function(e){if(e=e||8121991,8121991==e)return e;var t={"to bottom":"top","to left":"right","to top":"bottom","to right":"left","ellipse at center":"center, ellipse cover","circle closest-side":"center center, circle contain","circle farthest-corner":"center center, circle cover","circle farthest-side":"center center, circle cover","ellipse closest-side":"center center, ellipse contain","ellipse farthest-corner":"center center, ellipse cover","ellipse farthest-side":"center center, ellipse cover"},r=/(radial-gradient\()([a-z- ]+)at\s+(\w+%?)\s*(\w*%?)/g,n=Object.keys(t);return n.some(function(n){return e.indexOf(n)>=0?(e=e.replace(new RegExp(n+"(?![ a-z0-9])","g"),t[n]),!0):(r.test(e)&&(e=e.replace(r,function(e,t,r,n,a){return t.trim()+n.trim()+" "+a.trim()+","+r.replace(/closest-side/g,"contain").replace(/farthest-corner/g,"cover").trim()})),void 0)}),e=e.replace(/(\d+)\s*deg/g,function(e,t){return 90-t+"deg"}).replace(/(linear|radial)-gradient/g,"-o-$1-gradient")})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(e){if(e=e||8121991,8121991==e)return e;var t={top:"to bottom",right:"to left",bottom:"to top",left:"to right"},r=Object.keys(t);return r.some(function(r){return e.indexOf(r)>=0&&!new RegExp("to\\s+"+r+"|at\\s+"+r,"g").test(e)?(e=e.replace(new RegExp(r),t[r]),!0):void 0}),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; background-image: @process_ms; background-image: @process_webkit; background-image: @process_moz; background-image: @process_opera; background-image: @process; } .background-origin(...) { @process: ~`(function(e){return e||"padding-box"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-background-origin: @process; -moz-background-origin: @process; background-origin: @process; } .background-size(...) { @process: ~`(function(e){e=e||"auto auto";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-background-size: @process; -moz-background-size: @process; background-size: @process; } .blur(...) { @process: ~`(function(e){e=e||"0";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: blur(@process); -moz-filter: blur(@process); -ms-filter: blur(@process); filter: blur(@process); } .border-bottom-left-radius(...) { @process: ~`(function(e){e=e||"0";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-border-bottom-left-radius: @process; -webkit-background-clip: padding-box; -moz-border-radius-bottomleft: @process; -moz-background-clip: padding; border-bottom-left-radius: @process; background-clip: padding-box; } .border-bottom-right-radius(...) { @process: ~`(function(e){e=e||"0";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-border-bottom-right-radius: @process; -webkit-background-clip: padding-box; -moz-border-radius-bottomright: @process; -moz-background-clip: padding; border-bottom-right-radius: @process; background-clip: padding-box; } .border-image(...) { @process: ~`(function(e){return e=e||8121991,/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-border-image: @process; -moz-border-image: @process; -o-border-image: @process; border-image: @process; } .border-radius(...) { @process: ~`(function(e){e=e||"0";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-border-radius: @process; -webkit-background-clip: padding-box; -moz-border-radius: @process; -moz-background-clip: padding; border-radius: @process; background-clip: padding-box; } .border-top-left-radius(...) { @process: ~`(function(e){e=e||"0";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-border-top-left-radius: @process; -webkit-background-clip: padding-box; -moz-border-radius-topleft: @process; -moz-background-clip: padding; border-top-left-radius: @process; background-clip: padding-box; } .border-top-right-radius(...) { @process: ~`(function(e){e=e||"0";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-border-top-right-radius: @process; -webkit-background-clip: padding-box; -moz-border-radius-topright: @process; -moz-background-clip: padding; border-top-right-radius: @process; background-clip: padding-box; } .box-shadow(...) { @process: ~`(function(e){e=e||"0";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-box-shadow: @process; -moz-box-shadow: @process; box-shadow: @process; } .box-sizing(...) { @process: ~`(function(e){return e=e||"content-box"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-box-sizing: @process; -moz-box-sizing: @process; box-sizing: @process; } .brightness(...) { @process: ~`(function(e){return e=e||"1"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: brightness(@process); -moz-filter: brightness(@process); -ms-filter: brightness(@process); filter: brightness(@process); } .calc(...) { @process: ~`(function(e){function t(t,r){var a=");\n",c=n.split(","),i=c[0]+":"+t+"("+(c[1].trim()||0)+a;"start"==r?e="0;\n"+i:e+=i}e=e||8121991;var r="@{state}",n=e;if(8121991==e)return e;switch(r){case"1":t("-webkit-calc","start"),t("-moz-calc"),t("calc");break;case"2":t("-webkit-calc","start"),t("-moz-calc");break;case"3":t("-webkit-calc","start"),t("calc");break;case"4":t("-webkit-calc","start");break;case"5":t("-moz-calc","start"),t("calc");break;case"6":t("-moz-calc","start");break;case"7":t("calc","start")}return e=e.replace(/;$/g,"")})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @state: 1; -lh-property: @process; } .column-count(...) { @process: ~`(function(e){return e=e||"auto"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-column-count: @process; -moz-column-count: @process; column-count: @process; } .column-gap(...) { @process: ~`(function(e){e=e||"normal";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-column-gap: @process; -moz-column-gap: @process; column-gap: @process; } .column-rule(...) { @process: ~`(function(e){e=e||"medium none black";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-column-rule: @process; -moz-column-rule: @process; column-rule: @process; } .column-width(...) { @process: ~`(function(e){e=e||"auto";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-column-width: @process; -moz-column-width: @process; column-width: @process; } .columns(...) { @process: ~`(function(e){e=e||"auto auto";var t=/^\d+$/;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,""),e=e.split(" ")),t.test(e[0])&&(e[0]=e[0]+"px"),e.join(" ")})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-columns: @process; -moz-columns: @process; columns: @process; } .contrast(...) { @process: ~`(function(e){e=e||"100%";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"%"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: ~"contrast(@{process})"; -moz-filter: ~"contrast(@{process})"; -ms-filter: ~"contrast(@{process})"; filter: ~"contrast(@{process})"; } .display(...) { @process_oldwebkit: ~`(function(e){return e="flex"==e||"inline-flex"==e?"-webkit-box":8121991})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_moz: ~`(function(e){return e="flex"==e||"inline-flex"==e?"-moz-box":8121991})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_webkit: ~`(function(e){return e="flex"==e||"inline-flex"==e?"-webkit-"+e:8121991})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_ms: ~`(function(e){return e="flex"==e?"-ms-flexbox":"inline-flex"==e?"-ms-inline-flexbox":8121991})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(e){return"flex"!=e&&"inline-flex"!=e&&(e=8121991),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; display: @process_oldwebkit; display: @process_moz; display: @process_webkit; display: @process_ms; display: @process; } .drop-shadow(...) { @process: ~`(function(e){if(e=e||8121991,8121991==e)return e;var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: drop-shadow(@process); -moz-filter: drop-shadow(@process); -ms-filter: drop-shadow(@process); filter: drop-shadow(@process); } .filter(...) { @process: ~`(function(e){return e=e||"none",/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: @process; -moz-filter: @process; -ms-filter: @process; filter: @process; } .flex(...) { @process_olderwebkit: ~`(function(e){return/^\d+/.test(e)?e=e.match(/^\d+/)[0]:""==e&&(e="0"),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_moz: ~`(function(e){return/^\d+/.test(e)?e=e.match(/^\d+/)[0]:""==e&&(e="0"),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(e){return e=e||"0 1 auto",/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-box-flex: @process_olderwebkit; -moz-box-flex: @process_moz; -webkit-flex: @process; -ms-flex: @process; flex: @process; } .flex-basis(...) { @process: ~`(function(e){e=e||"auto";var t=/\d/gi,r=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return t.test(e)&&(e=e.replace(r,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-flex-basis: @process; flex-basis: @process; } .flex-direction(...) { @process_oldestwebkit: ~`(function(e){return e="row"==e||"column"==e?"normal":"row-reverse"==e||"column-reverse"==e?"reverse":8121991})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_oldermoz: ~`(function(e){return e="row"==e||"column"==e?"normal":"row-reverse"==e||"column-reverse"==e?"reverse":8121991})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_olderwebkit: ~`(function(e){return e="row"==e||"row-reverse"==e?"horizontal":"column"==e||"column-reverse"==e?"vertical":8121991})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_moz: ~`(function(e){return e="row"==e||"row-reverse"==e?"horizontal":"column"==e||"column-reverse"==e?"vertical":8121991})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(e){return e=e||"row"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-box-direction: @process_oldestwebkit; -moz-box-direction: @process_oldermoz; -webkit-box-orient: @process_olderwebkit; -moz-box-orient: @process_moz; -webkit-flex-direction: @process; -ms-flex-direction: @process; flex-direction: @process; } .flex-grow(...) { @process: ~`(function(e){return e=e||"0"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-flex-grow: @process; flex-grow: @process; } .flex-shrink(...) { @process: ~`(function(e){return e=e||"1"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-flex-shrink: @process; flex-shrink: @process; } .flex-wrap(...) { @process: ~`(function(e){return e=e||"nowrap"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-flex-wrap: @process; -ms-flex-wrap: @process; flex-wrap: @process; } .font-face(@fontname, @fontfile, @fontweight:normal, @fontstyle:normal) { font-family: "@{fontname}"; src: url("@{fontfile}.eot"); src: url("@{fontfile}.eot?#iefix") format("embedded-opentype"), url("@{fontfile}.woff") format("woff"), url("@{fontfile}.ttf") format("truetype"), url("@{fontfile}.svg#@{fontname}") format("svg"); font-weight: @fontweight; font-style: @fontstyle; } .grayscale(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"%"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: grayscale(@process); -moz-filter: grayscale(@process); -ms-filter: grayscale(@process); filter: grayscale(@process); } .hue-rotate(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"deg"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: hue-rotate(@process); -moz-filter: hue-rotate(@process); -ms-filter: hue-rotate(@process); filter: hue-rotate(@process); } .hyphens(...) { @process: ~`(function(e){return e=e||"manual"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-hyphens: @process; -moz-hyphens: @process; -ms-hyphens: @process; hyphens: @process; } .invert(...) { @process: ~`(function(e){e=e||"100%";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"%"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: invert(@process); -moz-filter: invert(@process); -ms-filter: invert(@process); filter: invert(@process); } .justify-content(...) { @process_oldestWebkit: ~`(function(e){return e=e||"start","flex-start"==e?e="start":"flex-end"==e?e="end":("space-between"==e||"space-around"==e)&&(e="justify"),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_moz: ~`(function(e){return e=e||"start","flex-start"==e?e="start":"flex-end"==e?e="end":("space-between"==e||"space-around"==e)&&(e="justify"),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_ms: ~`(function(e){return e=e||"start","flex-start"==e?e="start":"flex-end"==e?e="end":"space-between"==e?e="justify":"space-around"==e&&(e="distribute"),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(e){return e=e||"flex-start"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-box-pack: @process_oldestWebkit; -moz-box-pack: @process_moz; -ms-flex-pack: @process_ms; -webkit-justify-content: @process; justify-content: @process; } .keyframes(...) { @process: ~`(function(e){function r(r,t,c){var i="}\n",u=n.split(/(^[a-zA-Z0-9-]+),/g),s=t+" "+u[1]+"{",o=["-webkit-","-moz-","-ms-",""];c?a.forEach(function(r){-1!==e.indexOf(r)&&(u[2]=u[2].replace(new RegExp(r,"g"),function(e){return c+e}))}):u[2]=u[2].replace(/{([^}]+)}/g,function(e,r){var t=r.split(";");t.forEach(function(e,r){a.forEach(function(n){-1!==e.indexOf(n)&&(t[r]="",o.forEach(function(a){t[r]+=e.trim().replace(new RegExp(n,"g"),function(e){return a+e})+";"}))})});var n=t.join(";").replace(/;;/g,";");return e.replace(r,n)}),s+=u[2]+i,"start"==r?e="0; } \n"+s:"startend"==r?e="0; } \n"+s.replace(i,""):e+="end"==r?s.replace(i,""):s}e=e||8121991;var t="@{state}",n=e;if(8121991==e)return e;var a=["animation","transform","filter"];switch(t){case"1":r("start","@-webkit-keyframes","-webkit-"),r(null,"@-moz-keyframes","-moz-"),r(null,"@-o-keyframes","-o-"),r("end","@keyframes");break;case"2":r("start","@-webkit-keyframes","-webkit-"),r(null,"@-moz-keyframes","-moz-"),r("end","@keyframes");break;case"3":r("start","@-webkit-keyframes","-webkit-"),r(null,"@-moz-keyframes","-moz-"),r("end","@-o-keyframes","-o-");break;case"4":r("start","@-webkit-keyframes","-webkit-"),r(null,"@-o-keyframes","-o-"),r("end","@keyframes");break;case"5":r("start","@-webkit-keyframes","-webkit-"),r("end","@-moz-keyframes","-moz-");break;case"6":r("start","@-webkit-keyframes","-webkit-"),r("end","@-o-keyframes","-o-");break;case"7":r("start","@-webkit-keyframes","-webkit-"),r("end","@keyframes");break;case"8":r("startend","@-webkit-keyframes","-webkit-");break;case"9":r("start","@-moz-keyframes","-moz-"),r(null,"@-o-keyframes","-o-"),r("end","@keyframes");break;case"10":r("start","@-moz-keyframes","-moz-"),r("end","@-o-keyframes","-o-");break;case"11":r("start","@-moz-keyframes","-moz-"),r("end","@keyframes");break;case"12":r("startend","@-moz-keyframes","-moz-");break;case"13":r("start","@-o-keyframes","-o-"),r("end","@keyframes");break;case"14":r("startend","@-o-keyframes","-o-");break;case"15":r("startend","@keyframes")}return e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")+'}'})())`; @state: 1; lesshat-selector { -lh-property: @process; } } .opacity(...) { @process_ms: ~`(function(e){return e=e||"filter: alpha(opacity=100)","alpha(opacity="+Math.floor(100*e)+")"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(e){return e=e||"1"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; zoom: 1; filter: @process_ms; -webkit-opacity: @process; -moz-opacity: @process; opacity: @process; } .order(...) { @process: ~`(function(e){return e=e||"0"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-box-ordinal-group: @process; -moz-box-ordinal-group: @process; -ms-flex-order: @process; -webkit-order: @process; order: @process; } .perspective(...) { @process: ~`(function(e){e=e||"none";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"px"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-perspective: @process; -moz-perspective: @process; perspective: @process; } .perspective-origin(...) { @process: ~`(function(e){e=e||"50% 50%";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"%"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-perspective-origin: @process; -moz-perspective-origin: @process; perspective-origin: @process; } .placeholder(@color:#aaa, @element: 08121991) { .inception (@arguments) when not (@element = 08121991) { @{element}::-webkit-input-placeholder { color: @color; } @{element}:-moz-placeholder { color: @color; } @{element}::-moz-placeholder { color: @color; } @{element}:-ms-input-placeholder { color: @color; } } .inception (@arguments) when (@element = 08121991) { &::-webkit-input-placeholder { color: @color; } &:-moz-placeholder { color: @color; } &::-moz-placeholder { color: @color; } &:-ms-input-placeholder { color: @color; } } .inception(@arguments); } .rotate(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"deg"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: rotate(@process); -moz-transform: rotate(@process); -ms-transform: rotate(@process); -o-transform: rotate(@process); transform: rotate(@process); } .rotate3d(...) { @process: ~`(function(e){return e=e||"0, 0, 0, 0",e=e.replace(/,\s*\d+$/,function(e){return e+"deg"})})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: rotate3d(@process); -moz-transform: rotate3d(@process); -ms-transform: rotate3d(@process); -o-transform: rotate3d(@process); transform: rotate3d(@process); } .rotateX(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"deg"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: rotateX(@process); -moz-transform: rotateX(@process); -ms-transform: rotateX(@process); -o-transform: rotateX(@process); transform: rotateX(@process); } .rotateY(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"deg"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: rotateY(@process); -moz-transform: rotateY(@process); -ms-transform: rotateY(@process); -o-transform: rotateY(@process); transform: rotateY(@process); } .rotateZ(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"deg"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: rotateZ(@process); -moz-transform: rotateZ(@process); -ms-transform: rotateZ(@process); -o-transform: rotateZ(@process); transform: rotateZ(@process); } .saturate(...) { @process: ~`(function(e){e=e||"100%";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"%"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: ~"saturate(@{process})"; -moz-filter: ~"saturate(@{process})"; -ms-filter: ~"saturate(@{process})"; filter: ~"saturate(@{process})"; } .scale(...) { @process: ~`(function(e){return e=e||"1"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: scale(@process); -moz-transform: scale(@process); -ms-transform: scale(@process); -o-transform: scale(@process); transform: scale(@process); } .scale3d(...) { @process: ~`(function(e){return e=e||"1, 1, 1"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: scale3d(@process); -moz-transform: scale3d(@process); -ms-transform: scale3d(@process); -o-transform: scale3d(@process); transform: scale3d(@process); } .scaleX(...) { @process: ~`(function(e){return e=e||"1"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: scaleX(@process); -moz-transform: scaleX(@process); -ms-transform: scaleX(@process); -o-transform: scaleX(@process); transform: scaleX(@process); } .scaleY(...) { @process: ~`(function(e){return e=e||"1"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: scaleY(@process); -moz-transform: scaleY(@process); -ms-transform: scaleY(@process); -o-transform: scaleY(@process); transform: scaleY(@process); } .scaleZ(...) { @process: ~`(function(e){return e=e||"1"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: scaleZ(@process); -moz-transform: scaleZ(@process); -ms-transform: scaleZ(@process); -o-transform: scaleZ(@process); transform: scaleZ(@process); } .selection(...) { @process: ~`(function(e){function r(r,t){var a="}\n",c=n.split(","),u=(c[1]||"")+t+"{"+c[0]+a;"start"==r?e="0; } \n"+u:"startend"==r?e="0; } \n"+u.replace(a,""):e+="end"==r?u.replace(a,""):u}e=e||8121991;var t="@{state}",n=e;if(8121991==e)return e;switch(t){case"1":r("start","::selection"),r("end","::-moz-selection");break;case"2":r("startend","::selection");break;case"3":r("startend","::-moz-selection")}return e=e.replace(/;$/g,"")})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @state: 1; lesshat-selector { -lh-property: @process; } } .sepia(...) { @process: ~`(function(e){e=e||"100%";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"%"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-filter: sepia(@process); -moz-filter: sepia(@process); -ms-filter: sepia(@process); filter: sepia(@process); } .size(@square) { @unit: 'px'; .process(@square) when (ispixel(@square)), (isem(@square)), (ispercentage(@square)), (iskeyword(@square)) { width: @square; height: @square; } .process(@square) when not (ispixel(@square)) and not (isem(@square)) and not (ispercentage(@square)) and not (isstring(@square)) and not (iskeyword(@square)) { width: ~`@{square} + @{unit}`; height: ~`@{square} + @{unit}`; } .process(@square); } .size(@width, @height) { @unit: 'px'; .process(@width, @height) when (ispixel(@width)), (isem(@width)), (ispercentage(@width)), (iskeyword(@width)) { .kittens(@height) when (ispixel(@height)), (isem(@height)), (ispercentage(@height)), (iskeyword(@height)) { width: @width; height: @height; } .kittens(@height) when not (ispixel(@height)) and not (isem(@height)) and not (ispercentage(@height)) and not (iskeyword(@height)) { width: @width; height: ~`@{height} + @{unit}`; } .kittens(@height); } .process(@width, @height) when (ispixel(@height)), (isem(@height)), (ispercentage(@height)), (iskeyword(@height)) { .kittens(@width) when (ispixel(@width)), (isem(@width)), (ispercentage(@width)), (iskeyword(@width)) {} .kittens(@width) when not (ispixel(@width)) and not (isem(@width)) and not (ispercentage(@width)) and not (iskeyword(@width)) { width: ~`@{width} + @{unit}`; height: @height; } .kittens(@width); } .process(@width, @height) when not (ispixel(@width)) and not (isem(@width)) and not (ispercentage(@width)) and not (iskeyword(@width)) and not (ispixel(@height)) and not (isem(@height)) and not (ispercentage(@height)) and not (iskeyword(@height)) { width: ~`@{width} + @{unit}`; height: ~`@{height} + @{unit}`; } .process(@width, @height); } .skew(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"deg"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: skew(@process); -moz-transform: skew(@process); -ms-transform: skew(@process); -o-transform: skew(@process); transform: skew(@process); } .skewX(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"deg"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: skewX(@process); -moz-transform: skewX(@process); -ms-transform: skewX(@process); -o-transform: skewX(@process); transform: skewX(@process); } .skewY(...) { @process: ~`(function(e){e=e||"0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"deg"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: skewY(@process); -moz-transform: skewY(@process); -ms-transform: skewY(@process); -o-transform: skewY(@process); transform: skewY(@process); } .transform(...) { @process: ~`(function(e){e=e||"none";var r={translate:"px",rotate:"deg",rotate3d:"deg",skew:"deg"};/^\w*\(?[a-z0-9.]*\)?/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,""));for(var t in r)e.indexOf(t)>=0&&(e=e.replace(new RegExp(t+"[\\w]?\\([a-z0-9, %]*\\)"),function(e){var n=/(\d+\.?\d*)(?!\w|%)/g;return"rotate3d"==t&&(n=/,\s*\d+$/),e.replace(n,function(e){return e+r[t]})}));return e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform: @process; -moz-transform: @process; -ms-transform: @process; -o-transform: @process; transform: @process; } .transform-origin(...) { @process: ~`(function(e){e=e||"50% 50% 0";var r=/\d/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),r.test(e)&&(e=e.replace(t,function(e){return 0==e&&e||e+"%"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform-origin: @process; -moz-transform-origin: @process; -ms-transform-origin: @process; -o-transform-origin: @process; transform-origin: @process; } .transform-style(...) { @process: ~`(function(e){return e=e||"flat"})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transform-style: @process; -moz-transform-style: @process; -ms-transform-style: @process; -o-transform-style: @process; transform-style: @process; } .transition(...) { @process_webkit: ~`(function(e){e=e||"all 0 ease 0";var r=["background-size","border-radius","border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","box-shadow","column","transform","filter"],t="-webkit-",n=/(?:\d)(?:ms|s)/gi,a=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),r.forEach(function(r){-1!==e.indexOf(r)&&(e=e.replace(new RegExp(r,"g"),function(e){return t+e}))}),n.test(e)||"0"===e||(e=e.replace(a,function(e){return e+=parseFloat(e,10)>10?"ms":"s"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_moz: ~`(function(e){e=e||"all 0 ease 0";var r=["background-size","box-shadow","column","transform","filter"],t="-moz-",n=/(?:\d)(?:ms|s)/gi,a=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),r.forEach(function(r){-1!==e.indexOf(r)&&(e=e.replace(new RegExp(r,"g"),function(e){return t+e}))}),n.test(e)||"0"===e||(e=e.replace(a,function(e){return e+=parseFloat(e,10)>10?"ms":"s"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_opera: ~`(function(e){e=e||"all 0 ease 0";var r=["transform"],t="-o-",n=/(?:\d)(?:ms|s)/gi,a=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%)/gi;return/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,"")),r.forEach(function(r){-1!==e.indexOf(r)&&(e=e.replace(new RegExp(r,"g"),function(e){return t+e}))}),n.test(e)||"0"===e||(e=e.replace(a,function(e){return e+=parseFloat(e,10)>10?"ms":"s"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(e){e=e||"all 0 ease 0";var r=["-webkit-","-moz-","-o-",""],t=["column","transform","filter"],n=/(?:\d)(?:ms|s)/gi,a=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%)/gi;/^[^, ]*,/.test(e)&&(e=e.replace(/(?:,)(?![^(]*\))/g,""));var c=e.split(/(?:,)(?![^(]*\))/g);return c.forEach(function(e,n){t.forEach(function(t){-1!==e.indexOf(t)&&(c[n]="",r.forEach(function(a,u){c[n]+=e.trim().replace(new RegExp(t,"g"),function(e){return a+e}),u10?"ms":"s"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transition: @process_webkit; -moz-transition: @process_moz; -o-transition: @process_opera; transition: @process; } .transition-delay(...) { @process: ~`(function(e){e=e||"0";var r=/(?:\d)(?:ms|s)/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)||"0"===e||(e=e.replace(t,function(e){return e+=parseFloat(e,10)>10?"ms":"s"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transition-delay: @process; -moz-transition-delay: @process; -o-transition-delay: @process; transition-delay: @process; } .transition-duration(...) { @process: ~`(function(e){e=e||"0";var r=/ms|s/gi,t=/(?:\s|^)(\.?\d+\.?\d*)(?![^(]*\)|\w|%|\.)/gi;return r.test(e)||"0"===e||(e=e.replace(t,function(e){return e+=parseFloat(e,10)>10?"ms":"s"})),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; -webkit-transition-duration: @process; -moz-transition-duration: @process; -o-transition-duration: @process; transition-duration: @process; } .transition-property(...) { @process_webkit: ~`(function(e){e=e||"all";var r=["background-size","border-radius","border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","box-shadow","column","transform","filter"],t="-webkit-";return r.forEach(function(r){-1!==e.indexOf(r)&&(e=e.replace(new RegExp(r,"g"),function(e){return t+e}))}),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_moz: ~`(function(e){e=e||"all";var r=["background-size","box-shadow","column","transform","filter"],t="-moz-";return r.forEach(function(r){-1!==e.indexOf(r)&&(e=e.replace(new RegExp(r,"g"),function(e){return t+e}))}),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process_opera: ~`(function(e){e=e||"all";var r=["transform"],t="-o-";return r.forEach(function(r){-1!==e.indexOf(r)&&(e=e.replace(new RegExp(r,"g"),function(e){return t+e}))}),e})((function(){var e="@{arguments}";return e=e.replace(/^\[|\]$/g,"")})())`; @process: ~`(function(e){e=e||"all";var r=["-webkit-","-moz-","-o-",""],t=["column","transform","filter"],n=e.split(/(?:,)(?![^(]*\))/g);return n.forEach(function(e,a){t.forEach(function(t){-1!==e.indexOf(t)&&(n[a]="",r.forEach(function(c,u){n[a]+=e.trim().replace(new RegExp(t,"g"),function(e){return c+e}),udiv { display: none; } &.days div.datepicker-days { display: block; } &.months div.datepicker-months { display: block; } &.years div.datepicker-years { display: block; } table{ margin: 0; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } td, th{ text-align: center; width: 20px; height: 20px; .border-radius(4px); border: none; } // Inline display inside a table presents some problems with // border and background colors. .table-striped & table tr { td, th { background-color:transparent; } } table tr td { &.day:hover { background: @gray-lighter; cursor: pointer; color: @main_color; .transall; } &.old, &.new { color: @gray-light; } &.disabled, &.disabled:hover { background: none; color: @gray-light; color: @text_disabled; cursor: default; } &.today, &.today:hover, &.today.disabled, &.today.disabled:hover { @todayBackground: lighten(@main_color, 30%); .buttonBackground(@todayBackground, spin(@todayBackground, 20)); color: #000; } &.today:hover:hover { // Thank bootstrap 2.0 for this selector... // TODO: Bump min BS to 2.1, use @textColor in buttonBackground above color: #000; } &.today.active:hover { color: #fff; } &.range, &.range:hover, &.range.disabled, &.range.disabled:hover { background:@gray-lighter; .border-radius(0); } &.range.today, &.range.today:hover, &.range.today.disabled, &.range.today.disabled:hover { @todayBackground: mix(@orange, @gray-lighter, 50%); .buttonBackground(@todayBackground, spin(@todayBackground, 20)); .border-radius(0); } &.selected, &.selected:hover, &.selected.disabled, &.selected.disabled:hover { .buttonBackground(lighten(@gray-light, 10), darken(@gray-light, 10)); color: #fff; text-shadow: 0 -1px 0 rgba(0,0,0,.25); } &.active, &.active:hover, &.active.disabled, &.active.disabled:hover { //.buttonBackground(@btn-primary-bg, spin(@btn-primary-bg, 20)); background: @btn-primary-bg; color: @btn-primary-color; text-shadow: 0 -1px 0 rgba(0,0,0,.25); } span { display: block; width: 23%; height: 54px; line-height: 54px; float: left; margin: 1%; cursor: pointer; .border-radius(4px); &:hover { background: @gray-lighter; } &.disabled, &.disabled:hover { background:none; color: @gray-light; cursor: default; } &.active, &.active:hover, &.active.disabled, &.active.disabled:hover { //.buttonBackground(@btn-primary-bg, spin(@btn-primary-bg, 20)); background: @btn-primary-bg; color: #fff; //text-shadow: 0 -1px 0 rgba(0,0,0,.25); } &.old, &.new { color: @gray-light; } } } th.datepicker-switch { width: 145px; } thead tr:first-child th, tfoot tr th { cursor: pointer; &:hover{ background: @gray-lighter; } } /*.dow { border-top: 1px solid #ddd !important; }*/ // Basic styling for calendar-week cells .cw { font-size: 10px; width: 12px; padding: 0 2px 0 5px; vertical-align: middle; } thead tr:first-child th.cw { cursor: default; background-color: transparent; } } .input-append, .input-prepend { &.date { .add-on i { display: block; cursor: pointer; width: 16px; height: 16px; } } } .input-daterange { input { text-align:center; } input:first-child { .border-radius(3px 0 0 3px); } input:last-child { .border-radius(0 3px 3px 0); } .add-on { display: inline-block; width: auto; min-width: 16px; height: @line-height-base; padding: 4px 5px; font-weight: normal; line-height: @line-height-base; text-align: center; text-shadow: 0 1px 0 @white; vertical-align: middle; background-color: @gray-lighter; border: 1px solid #ccc; margin-left:-5px; margin-right:-5px; } } .datepicker-inline { border: 1px solid @default; &.no-border { border-color: transparent; } table { width: 195px; } } .input-group-addon { .color-preview { .size(16px); background: #FFF; display: inline-block; border: 1px solid @default; } }other-less/bs-switch-deps/variables.less000066600000001356150425122620014335 0ustar00@grayDarker: #222; @grayDark: #333; @white: #fff; @orange: #f89406; @bodyBackground: @white; @textColor: @grayDark; @linkColor: #08c; @linkColorHover: darken(@linkColor, 15%); @btnBackground: @white; @btnBackgroundHighlight: darken(@white, 10%); @btnBorder: @default; @btnPrimaryBackground: @linkColor; @btnPrimaryBackgroundHighlight: spin(@btnPrimaryBackground, 20%); @btnInfoBackground: #5bc0de; @btnInfoBackgroundHighlight: #2f96b4; @btnSuccessBackground: #62c462; @btnSuccessBackgroundHighlight: #51a351; @btnWarningBackground: lighten(@orange, 15%); @btnWarningBackgroundHighlight: @orange; @btnDangerBackground: #ee5f5b; @btnDangerBackgroundHighlight: #bd362f; @btnInverseBackground: #444; @btnInverseBackgroundHighlight: @grayDarker; other-less/bs-switch-deps/mixins.less000066600000007123150425122620013672 0ustar00.border-radius(@radius) { -webkit-border-radius: @radius; -moz-border-radius: @radius; border-radius: @radius; } .border-top-left-radius(@radius) { -webkit-border-top-left-radius: @radius; -moz-border-radius-topleft: @radius; border-top-left-radius: @radius; } .border-bottom-left-radius(@radius) { -webkit-border-bottom-left-radius: @radius; -moz-border-radius-bottomleft: @radius; border-bottom-left-radius: @radius; } .border-left-radius(@radius) { .border-top-left-radius(@radius); .border-bottom-left-radius(@radius); } // Transitions .transition(@transition) { -webkit-transition: @transition; -moz-transition: @transition; -o-transition: @transition; transition: @transition; } // Box sizing .box-sizing(@boxmodel) { -webkit-box-sizing: @boxmodel; -moz-box-sizing: @boxmodel; box-sizing: @boxmodel; } // User select // For selecting text on the page .user-select(@select) { -webkit-user-select: @select; -moz-user-select: @select; -ms-user-select: @select; -o-user-select: @select; user-select: @select; } // Opacity /*.opacity(@opacity) { opacity: @opacity / 100; filter: ~"alpha(opacity=@{opacity})"; }*/ // Gradient Bar Colors for buttons and alerts .gradientBar(@primaryColor, @secondaryColor, @textColor: #fff, @textShadow: 0 -1px 0 rgba(0,0,0,.25)) { color: @textColor; //text-shadow: @textShadow; #gradient > .vertical(@primaryColor, @secondaryColor); background-color: @primaryColor; border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%); border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) fadein(rgba(0, 0, 0, .1), 15%); } // Gradients #gradient { .vertical(@startColor: #555, @endColor: #333) { background-color: mix(@startColor, @endColor, 60%); background-image: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+ background-image: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+ background-image: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10 background-image: linear-gradient(to bottom, @startColor, @endColor); // Standard, IE10 background-repeat: repeat-x; filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@startColor), argb(@endColor))); // IE9 and down } } .reset-filter() { filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)")); } .buttonBackground(@startColor, @endColor, @textColor: #fff, @textShadow: 0 -1px 0 rgba(0,0,0,.25)) { // gradientBar will set the background to a pleasing blend of these, to support IE<=9 //.gradientBar(@startColor, @endColor, @textColor, @textShadow); *background-color: @endColor; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ .reset-filter(); // in these cases the gradient won't cover the background, so we override &.switch-left { background-color: @endColor; color: @textColor; } &.switch-right { background-color: @hover_bg; color: @text_color_light; &:hover { background-color: @hover_bg;//lighten(@hover_bg, 5%);//fade(@endColor, 40%); color: @text_color_light; } } &:hover, &:focus, &:active, &.active, &.disabled, &[disabled] { color: @textColor; //background-color: @endColor; *background-color: darken(@endColor, 5%); } // IE 7 + 8 can't handle box-shadow to show active, so we darken a bit ourselves &:active, &.active { background-color: darken(@endColor, 10%) e("\9"); } } other-less/perfect-scrollbar.less000066600000003364150425122620013143 0ustar00@scroll-width: 5px; // Scrollbar mixins .scrollbar-rail-default { display: none; position: absolute; /* please don't change 'position' */ .border-radius(0px); .opacity(0); .transition(background-color .2s linear, opacity .2s linear); } .scrollbar-rail-hover { background-color: #eee; .opacity(0.9); } .scrollbar-default { position: absolute; /* please don't change 'position' */ background-color: #aaa; .border-radius(0px); .transition(background-color .2s linear); } .scrollbar-hover { background-color: #999; } .in-scrolling { &.in-scrolling { .scrollbar-rail-hover; } } .ps-container { &.ps-active-x > .ps-scrollbar-x-rail, &.ps-active-y > .ps-scrollbar-y-rail { display: block; } >.ps-scrollbar-x-rail { .scrollbar-rail-default; bottom: 3px; /* there must be 'bottom' for ps-scrollbar-x-rail */ height: 8px; z-index: 1000; >.ps-scrollbar-x { .scrollbar-default; bottom: 0; /* there must be 'bottom' for ps-scrollbar-x */ height: 8px; } .in-scrolling; } >.ps-scrollbar-y-rail { .scrollbar-rail-default; right: 2px; /* there must be 'right' for ps-scrollbar-y-rail */ width: @scroll-width; z-index: 1000; >.ps-scrollbar-y { .scrollbar-default; right: 0; /* there must be 'right' for ps-scrollbar-y */ width: @scroll-width; } .in-scrolling; } &:hover { >.ps-scrollbar-x-rail, >.ps-scrollbar-y-rail { .opacity(0.6); .in-scrolling; } >.ps-scrollbar-x-rail:hover { .scrollbar-rail-hover; >.ps-scrollbar-x { .scrollbar-hover; } } >.ps-scrollbar-y-rail:hover { .scrollbar-rail-hover; >.ps-scrollbar-y { .scrollbar-hover; } } } } other-less/toastr.less000066600000014633150425122620011047 0ustar00// Mix-ins .borderRadius(@radius) { -moz-border-radius: @radius; -webkit-border-radius: @radius; border-radius: @radius; } .boxShadow(@boxShadow) { -moz-box-shadow: @boxShadow; -webkit-box-shadow: @boxShadow; box-shadow: @boxShadow; } .opacity(@opacity) { @opacityPercent: @opacity * 100; opacity: @opacity; -ms-filter: ~"progid:DXImageTransform.Microsoft.Alpha(Opacity=@{opacityPercent})"; filter: ~"alpha(opacity=@{opacityPercent})"; } .wordWrap(@wordWrap: break-word) { -ms-word-wrap: @wordWrap; word-wrap: @wordWrap; } // Variables @black: #000000; @grey: #999999; @light-grey: #CCCCCC; @white: #FFFFFF; @near-black: #030303; @green: #51A351; @red: #BD362F; @blue: #2F96B4; @orange: #F89406; // Styles .toast-title { font-weight: bold; } .toast-message { .wordWrap(); a, label { color: @white; } a:hover { color: @light-grey; text-decoration: none; } } .toast-close-button { position: relative; right: -0.3em; top: -0.3em; float: right; font-size: 20px; font-weight: bold; color: @white; -webkit-text-shadow: 0 1px 0 rgba(255,255,255,1); text-shadow: 0 1px 0 rgba(255,255,255,1); .opacity(0.8); &:hover, &:focus { color: @black; text-decoration: none; cursor: pointer; .opacity(0.4); } } /*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.toast-close-button { padding: 0; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; } //#endregion .toast-top-full-width { top: 0;//@base_margin; right: 0; width: 100%; margin-top: 10px; margin-bottom: 10px; } .toast-bottom-full-width { bottom: 0; right: 0; width: 100%; } .toast-top-left { top: 12px; left: 12px; } .toast-top-right { top: 12px; right: 12px; } .toast-bottom-right { right: 12px; bottom: 12px; } .toast-bottom-left { bottom: 12px; left: 12px; } #toast-container { position: fixed; z-index: 999999; * { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } > div { margin: 0 0 6px; padding: 15px 15px 15px 50px; width: 300px; .borderRadius(@border_radius); background-position: 15px center; background-repeat: no-repeat; //.boxShadow(0 0 12px @grey); color: @white; .opacity(0.8); } > :hover { //.boxShadow(0 0 12px @black); .opacity(1); cursor: pointer; } > .toast-info { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=") !important; } > .toast-error { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=") !important; } > .toast-success { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important; } > .toast-warning { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=") !important; } /*overrides*/ &.toast-top-full-width > div, &.toast-bottom-full-width > div { width: 96%; margin: auto; } .toast-success, .toast-error, .toast-info, .toast-warning { &.black { background-color: fade(#000, 70%); color: #fff; } } } .toast { background-color: @near-black; } .toast-success { //background-color: @green; background-color: @brand-success; } .toast-error { //background-color: @red; background-color: @brand-danger; } .toast-info { //background-color: @blue; background-color: @brand-info; } .toast-warning { background-color: @orange; } /*Responsive Design*/ @media all and (max-width: 240px) { #toast-container { > div { padding: 8px 8px 8px 50px; width: 11em; } & .toast-close-button { right: -0.2em; top: -0.2em; } } } @media all and (min-width: 241px) and (max-width: 480px) { #toast-container { > div { padding: 8px 8px 8px 50px; width: 18em; } & .toast-close-button { right: -0.2em; top: -0.2em; } } } @media all and (min-width: 481px) and (max-width: 768px) { #toast-container { > div { padding: 15px 15px 15px 50px; width: 25em; } } }other-less/bootstrap-switch.less000066600000007520150425122620013044 0ustar00/* ============================================================ * bootstrapSwitch v1.8 by Larentis Mattia @SpiritualGuru * http://www.larentis.eu/ * * Enhanced for radiobuttons by Stein, Peter @BdMdesigN * http://www.bdmdesign.org/ * * Project site: * http://www.larentis.eu/switch/ * ============================================================ * Licensed under the Apache License, Version 2.0 * http://www.apache.org/licenses/LICENSE-2.0 * ============================================================ */ @import "bs-switch-deps/variables"; @import "bs-switch-deps/mixins"; @s_radius: 50px; .has-switch { display: inline-block; cursor: pointer; .border-radius(@s_radius); border: 1px solid; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1); position: relative; text-align: left; overflow: hidden; line-height: 8px; .user-select(none); vertical-align: middle; min-width: 100px; &.switch-mini, &.switch-xs { min-width: 72px; } &.switch-mini i.switch-mini-icons, &.switch-xs i.switch-mini-icons { height: 1.20em; line-height: 9px; vertical-align: text-top; text-align: center; transform: scale(0.6); margin-top: -1px; margin-bottom: -1px; } &.switch-small, &.switch-sm { min-width: 80px; } &.switch-large, &.switch-lg { min-width: 120px; } &.deactivate { .opacity(50); cursor: default !important; label, span { cursor: default !important; } } > div { display: inline-block; width: 150%; position: relative; top: 0; &.switch-animate { .transition(left 0.5s); } &.switch-off { left: -50%; } &.switch-on { left: 0%; } } input[type=radio], input[type=checkbox] { //debug display: block; position: absolute; margin-left: -60%; //z-index: 123; } span, label { .box-sizing(border-box); cursor: pointer; position: relative; display: inline-block; height: 100%; padding-bottom: 4px; padding-top: 4px; font-size: 14px; line-height: 20px; &.switch-mini, &.switch-xs { padding-bottom: 4px; padding-top: 4px; font-size: 10px; line-height: 9px; } &.switch-small, &.switch-sm { padding-bottom: 3px; padding-top: 3px; font-size: 12px; line-height: 18px; } &.switch-large, &.switch-lg { padding-bottom: 9px; padding-top: 9px; font-size: 16px; line-height: normal; } } label { text-align: center; margin-top: -1px; margin-bottom: -1px; z-index: 100; width: 34%; border-left: 1px solid @btnBorder; border-right: 1px solid @btnBorder; .buttonBackground(@btnBackground, @btnBackgroundHighlight, @grayDark); i { color: #000; //text-shadow: 0 1px 0 #fff; line-height: 18px; pointer-events: none; } } span { text-align: center; z-index: 1; width: 33%; &.switch-left { .border-left-radius(@s_radius - 1); } &.switch-right { .buttonBackground(@btnBackgroundHighlight, @btnBackground, @grayDark, 0 1px 1px rgba(255,255,255,.75)); } &.switch-primary, &.switch-left { .buttonBackground(@btnPrimaryBackgroundHighlight, @btnPrimaryBackground); } &.switch-info { .buttonBackground(@btnInfoBackgroundHighlight, @btnInfoBackground); } &.switch-success { .buttonBackground(@btnSuccessBackgroundHighlight, @btnSuccessBackground); } &.switch-warning { .buttonBackground(@btnWarningBackgroundHighlight, @btnWarningBackground); } &.switch-danger { .buttonBackground(@btnDangerBackgroundHighlight, @btnDangerBackground); } &.switch-default { .buttonBackground(@btnBackgroundHighlight, @btnBackground, @grayDark, 0 1px 1px rgba(255,255,255,.75)); } } } other-less/bootstrap-tagsinput.less000066600000002312150425122620013553 0ustar00.bootstrap-tagsinput { background-color: #fff; border: 1px solid #ccc; //box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); display: block; padding: @padding-base-vertical @padding-base-horizontal - 4; padding-bottom: @padding-base-vertical + 2; margin-bottom: 10px; color: #555; vertical-align: middle; max-width: 100%; line-height: 22px; border: 1px solid @default; .rounded; &:hover { border-color: #cbd0d9; } input { border: none; box-shadow: none; outline: none; background-color: transparent; padding: 0; margin: 0; width: auto !important; max-width: inherit; &:focus { border: none; box-shadow: none; } } .tag { display: inline-block; margin-right: 2px; color: white; font-size: 10px; [data-role="remove"] { margin-left:8px; cursor:pointer; &:after{ content: "x"; padding:0px 2px; } &:hover { //box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); &:active { //box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); } } } } }other-less/fileinput.less000066600000005327150425122620011532 0ustar00// Fileinput.less // CSS for file upload button and fileinput widget // ------------------------------------------------ .btn-file { overflow: hidden; position: relative; vertical-align: middle; > input { position: absolute; top: 0; right: 0; margin: 0; opacity: 0; filter: alpha(opacity=0); transform: translate(-300px, 0) scale(4); font-size: 23px; direction: ltr; cursor: pointer; } } .fileinput { margin-bottom: 9px; display: inline-block; .uneditable-input { display: inline-block; margin-bottom: 0px; vertical-align: middle; cursor: text; } i + .fileinput-filename, .btn + .fileinput-filename { padding-left: 5px; } &.fileinput-exists { .close { opacity: 1; color: @text_disabled; position: relative; top: 3px; margin-left: 5px; } } .thumbnail { overflow: hidden; display: inline-block; margin-bottom: 5px; vertical-align: middle; text-align: center; &[data-trigger="fileinput"] { cursor: pointer; } .clearfix; > img { max-height: 100%; display: block; } } .btn { vertical-align: middle; } } .fileinput-exists .fileinput-new, .fileinput-new .fileinput-exists { display: none; } .fileinput-inline .fileinput-controls { display: inline; } .fileinput .uneditable-input { white-space: normal; } // Not 100% correct, but helps in typical use case .fileinput-new .input-group .btn-file { border-radius: 0 @border-radius-base @border-radius-base 0; } .fileinput-new .input-group .btn-file.btn-xs, .fileinput-new .input-group .btn-file.btn-sm { border-radius: 0 @border-radius-small @border-radius-small 0; } .fileinput-new .input-group .btn-file.btn-lg { border-radius: 0 @border-radius-large @border-radius-large 0; } .form-group.has-warning .fileinput { .uneditable-input { color: @state-warning-text; border-color: @state-warning-border; } .fileinput-preview { color: @state-warning-text; } .thumbnail { border-color: @state-warning-border; } } .form-group.has-error .fileinput { .uneditable-input { color: @state-danger-text; border-color: @state-danger-border; } .fileinput-preview { color: @state-danger-text; } .thumbnail { border-color: @state-danger-border; } } .form-group.has-success .fileinput { .uneditable-input { color: @state-success-text; border-color: @state-success-border; } .fileinput-preview { color: @state-success-text; } .thumbnail { border-color: @state-success-border; } } // Input group fixes .input-group-addon:not(:first-child) { border-left: 0; } .fileinput .uneditable-input, .fileinput-new .input-group .btn-file { display: table-cell !important; }bs-less/labels.less000066600000002067150425122620010256 0ustar00// // 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); } bs-less/theme.less000066600000020005150425122620010106 0ustar00/*! * Bootstrap v3.3.5 (http://getbootstrap.com) * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */ // // 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)); } &.disabled, &[disabled], fieldset[disabled] & { .box-shadow(none); } .badge { text-shadow: none; } } // 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; see https://github.com/twbs/bootstrap/issues/10620 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], fieldset[disabled] & { &, &:hover, &:focus, &.focus, &:active, &.active { 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 > .open > a, .navbar-nav > .active > a { #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-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; see https://github.com/twbs/bootstrap/issues/10257 border-radius: @navbar-border-radius; .navbar-nav > .open > a, .navbar-nav > .active > a { #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-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; } // Fix active state of dropdown items in collapsed mode @media (max-width: @grid-float-breakpoint-max) { .navbar .navbar-nav .open .dropdown-menu > .active > a { &, &:hover, &:focus { color: #fff; #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%)); } } } // // 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%); .badge { text-shadow: none; } } // // 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); } bs-less/forms.less000066600000036734150425122620010152 0ustar00// // 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; } 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; // Note: This has no effect on s in CSS. .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(); // Unstyle the caret on `` background color @input-bg: #fff; //** `` background color @input-bg-disabled: @gray-lighter; //** Text color for ``s @input-color: @gray; //** `` border color @input-border: #ebebeb; //#ccc; // TODO: Rename `@input-border-radius` to `@input-border-radius-base` in v4 //** Default `.form-control` border radius // This has no effect on ``s in CSS. @input-border-radius: @border-radius-base; //** Large `.form-control` border radius @input-border-radius-large: @border-radius-large; //** Small `.form-control` border radius @input-border-radius-small: @border-radius-small; //** Border color for inputs on focus @input-border-focus: #cbd0d9; //#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); //** `.form-group` margin @form-group-margin-bottom: 15px; @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; //** Disabled cursor for form controls and buttons. @cursor-disabled: not-allowed; //== 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: @link-color; @navbar-default-bg: #fff; @navbar-default-border: @table-border-color; //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: #aaabae; //lighten(@gray-light, 15%); @navbar-inverse-bg: @link-color; //#222; @navbar-inverse-border: #454a54; //darken(@navbar-inverse-bg, 10%); // Inverted navbar links @navbar-inverse-link-color: lighten(@gray-light, 15%); @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; //== 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: @link-color; @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: @border-radius-base; @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: 40px; @jumbotron-color: @link-color; @jumbotron-bg: @gray-lighter; @jumbotron-heading-color: inherit; @jumbotron-font-size: ceil((@font-size-base * 1.5)); @jumbotron-heading-font-size: ceil((@font-size-base * 4.5)); //== Form states and alerts // //## Define colors for form feedback states and, by default, alerts. @state-success-text: #045702; //#3c763d; @state-success-bg: #bdedbc; //#dff0d8; @state-success-border: darken(spin(@state-success-bg, -10), 5%); @state-info-text: #2c7ea1; //#31708f; @state-info-bg: #c5e8f7; //#d9edf7; @state-info-border: darken(spin(@state-info-bg, -10), 7%); @state-warning-text: #574802; //#8a6d3b; @state-warning-bg: #ffefa4; //#fcf8e3; @state-warning-border: darken(spin(@state-warning-bg, -10), 5%); @state-danger-text: #ac1818; //#a94442; @state-danger-bg: #ffc9c9; //#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: @popover-bg; //** 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: @link-color; //** 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: #fad839; //@brand-warning; //** Danger label background color @label-danger-bg: #cc2424; //@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; //** Variable for setting rounded corners on progress bar. @progress-border-radius: @border-radius-base; //** 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: @link-color; //** 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: @link-color; @panel-default-border: @brand-primary; @panel-default-heading-bg: @brand-primary; @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: #ededf0; //** 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: normal; @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; //** Point at which .dl-horizontal becomes horizontal @dl-horizontal-breakpoint: @grid-float-breakpoint; //** Horizontal line color. @hr-border: @gray-lighter;bs-less/glyphicons.less000066600000046537150425122620011205 0ustar00// // 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: // // Star // 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}.woff2') format('woff2'), 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: "\002a"; } } .glyphicon-plus { &:before { content: "\002b"; } } .glyphicon-euro, .glyphicon-eur { &: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"; } } .glyphicon-cd { &:before { content: "\e201"; } } .glyphicon-save-file { &:before { content: "\e202"; } } .glyphicon-open-file { &:before { content: "\e203"; } } .glyphicon-level-up { &:before { content: "\e204"; } } .glyphicon-copy { &:before { content: "\e205"; } } .glyphicon-paste { &:before { content: "\e206"; } } // The following 2 Glyphicons are omitted for the time being because // they currently use Unicode codepoints that are outside the // Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle // non-BMP codepoints in CSS string escapes, and thus can't display these two icons. // Notably, the bug affects some older versions of the Android Browser. // More info: https://github.com/twbs/bootstrap/issues/10106 // .glyphicon-door { &:before { content: "\1f6aa"; } } // .glyphicon-key { &:before { content: "\1f511"; } } .glyphicon-alert { &:before { content: "\e209"; } } .glyphicon-equalizer { &:before { content: "\e210"; } } .glyphicon-king { &:before { content: "\e211"; } } .glyphicon-queen { &:before { content: "\e212"; } } .glyphicon-pawn { &:before { content: "\e213"; } } .glyphicon-bishop { &:before { content: "\e214"; } } .glyphicon-knight { &:before { content: "\e215"; } } .glyphicon-baby-formula { &:before { content: "\e216"; } } .glyphicon-tent { &:before { content: "\26fa"; } } .glyphicon-blackboard { &:before { content: "\e218"; } } .glyphicon-bed { &:before { content: "\e219"; } } .glyphicon-apple { &:before { content: "\f8ff"; } } .glyphicon-erase { &:before { content: "\e221"; } } .glyphicon-hourglass { &:before { content: "\231b"; } } .glyphicon-lamp { &:before { content: "\e223"; } } .glyphicon-duplicate { &:before { content: "\e224"; } } .glyphicon-piggy-bank { &:before { content: "\e225"; } } .glyphicon-scissors { &:before { content: "\e226"; } } .glyphicon-bitcoin { &:before { content: "\e227"; } } .glyphicon-btc { &:before { content: "\e227"; } } .glyphicon-xbt { &:before { content: "\e227"; } } .glyphicon-yen { &:before { content: "\00a5"; } } .glyphicon-jpy { &:before { content: "\00a5"; } } .glyphicon-ruble { &:before { content: "\20bd"; } } .glyphicon-rub { &:before { content: "\20bd"; } } .glyphicon-scale { &:before { content: "\e230"; } } .glyphicon-ice-lolly { &:before { content: "\e231"; } } .glyphicon-ice-lolly-tasted { &:before { content: "\e232"; } } .glyphicon-education { &:before { content: "\e233"; } } .glyphicon-option-horizontal { &:before { content: "\e234"; } } .glyphicon-option-vertical { &:before { content: "\e235"; } } .glyphicon-menu-hamburger { &:before { content: "\e236"; } } .glyphicon-modal-window { &:before { content: "\e237"; } } .glyphicon-oil { &:before { content: "\e238"; } } .glyphicon-grain { &:before { content: "\e239"; } } .glyphicon-sunglasses { &:before { content: "\e240"; } } .glyphicon-text-size { &:before { content: "\e241"; } } .glyphicon-text-color { &:before { content: "\e242"; } } .glyphicon-text-background { &:before { content: "\e243"; } } .glyphicon-object-align-top { &:before { content: "\e244"; } } .glyphicon-object-align-bottom { &:before { content: "\e245"; } } .glyphicon-object-align-horizontal{ &:before { content: "\e246"; } } .glyphicon-object-align-left { &:before { content: "\e247"; } } .glyphicon-object-align-vertical { &:before { content: "\e248"; } } .glyphicon-object-align-right { &:before { content: "\e249"; } } .glyphicon-triangle-right { &:before { content: "\e250"; } } .glyphicon-triangle-left { &:before { content: "\e251"; } } .glyphicon-triangle-bottom { &:before { content: "\e252"; } } .glyphicon-triangle-top { &:before { content: "\e253"; } } .glyphicon-console { &:before { content: "\e254"; } } .glyphicon-superscript { &:before { content: "\e255"; } } .glyphicon-subscript { &:before { content: "\e256"; } } .glyphicon-menu-left { &:before { content: "\e257"; } } .glyphicon-menu-right { &:before { content: "\e258"; } } .glyphicon-menu-down { &:before { content: "\e259"; } } .glyphicon-menu-up { &:before { content: "\e260"; } } bs-less/popovers.less000066600000006640150425122620010672 0ustar00// // Popovers // -------------------------------------------------- .popover { position: absolute; top: 0; left: 0; z-index: @zindex-popover; display: none; max-width: @popover-max-width; padding: 1px; // Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element. // So reset our font and text properties to avoid inheriting weird values. .reset-text(); font-size: @font-size-base; 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)); // 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; 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; } } } bs-less/print.less000066600000003623150425122620010147 0ustar00/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ // ========================================================================== // Print styles. // Inlined to avoid the additional HTTP request: h5bp.com/r // ========================================================================== @media print { *, *:before, *:after { background: transparent !important; color: #000 !important; // Black prints faster: h5bp.com/s box-shadow: none !important; text-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 that are fragment identifiers, // or use the `javascript:` pseudo protocol a[href^="#"]:after, a[href^="javascript:"]: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; } // Bootstrap specific changes start // Bootstrap components .navbar { display: none; } .btn, .dropup > .btn { > .caret { border-top-color: #000 !important; } } .label { border: 1px solid #000; } .table { border-collapse: collapse !important; td, th { background-color: #fff !important; } } .table-bordered { th, td { border: 1px solid #ddd !important; } } // Bootstrap specific changes end } bs-less/modals.less000066600000006707150425122620010300 0ustar00// // 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 { .translate(0, -25%); .transition-transform(~"0.3s ease-out"); } &.in .modal-dialog { .translate(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; &:extend(.clearfix all); } // 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; } } bs-less/normalize.less000066600000016607150425122620011021 0ustar00/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ // // 1. Set default font family to sans-serif. // 2. Prevent iOS and IE text size adjust after device 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, menu, 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/10/11, Safari, and Firefox < 22. // [hidden], template { display: none; } // Links // ========================================================================== // // Remove the gray background color from active links in IE 10. // a { background-color: transparent; } // // Improve readability of focused elements when they are also in an // active/hover state. // 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 { 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. // input[type="search"] { -webkit-appearance: textfield; // 1 box-sizing: content-box; //2 } // // 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; } bs-less/close.less000066600000001374150425122620010121 0ustar00// // 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="#"`. // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile button& { padding: 0; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; } } bs-less/button-groups.less000066600000013053150425122620011641 0ustar00// // 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; } } } // 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, .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:not(:last-child) { > .btn:last-child, > .dropdown-toggle { .border-right-radius(0); } } .btn-group > .btn-group:last-child:not(:first-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: @btn-border-radius-base; .border-bottom-radius(0); } &:last-child:not(:first-child) { border-bottom-left-radius: @btn-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 `clip`. We cannot use // `display: none;` or `visibility: hidden;` as that also hides the popover. // Simply visually hiding the inputs via `opacity` would leave them clickable in // certain cases which is prevented by using `clip` and `pointer-events`. // This way, we ensure a DOM element is visible to position the popover from. // // See https://github.com/twbs/bootstrap/pull/12794 and // https://github.com/twbs/bootstrap/pull/14559 for more information. [data-toggle="buttons"] { > .btn, > .btn-group > .btn { input[type="radio"], input[type="checkbox"] { position: absolute; clip: rect(0,0,0,0); pointer-events: none; } } } bs-less/component-animations.less000066600000001232150425122620013147 0ustar00// // 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-property(~"height, visibility"); .transition-duration(.35s); .transition-timing-function(ease); } bs-less/panels.less000066600000014207150425122620010275 0ustar00// // 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, > small, > .small, > small > a, > .small > 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, > .panel-collapse > .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)); } } } > .panel-heading + .panel-collapse > .list-group { .list-group-item:first-child { .border-top-radius(0); } } } // 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; caption { padding-left: @panel-body-padding; padding-right: @panel-body-padding; } } // 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 { border-top-left-radius: (@panel-border-radius - 1); border-top-right-radius: (@panel-border-radius - 1); 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 { border-bottom-left-radius: (@panel-border-radius - 1); border-bottom-right-radius: (@panel-border-radius - 1); 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, > .table + .panel-body, > .table-responsive + .panel-body { 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, + .panel-collapse > .list-group { 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); } bs-less/tooltip.less000066600000005651150425122620010510 0ustar00// // Tooltips // -------------------------------------------------- // Base class .tooltip { position: absolute; z-index: @zindex-tooltip; display: block; // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element. // So reset our font and text properties to avoid inheriting weird values. .reset-text(); font-size: @font-size-small; .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; background-color: @tooltip-bg; border-radius: @border-radius-base; } // Arrows .tooltip-arrow { position: absolute; width: 0; height: 0; border-color: transparent; border-style: solid; } // Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1 .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; right: @tooltip-arrow-width; margin-bottom: -@tooltip-arrow-width; border-width: @tooltip-arrow-width @tooltip-arrow-width 0; border-top-color: @tooltip-arrow-color; } &.top-right .tooltip-arrow { bottom: 0; left: @tooltip-arrow-width; margin-bottom: -@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; right: @tooltip-arrow-width; margin-top: -@tooltip-arrow-width; border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; border-bottom-color: @tooltip-arrow-color; } &.bottom-right .tooltip-arrow { top: 0; left: @tooltip-arrow-width; margin-top: -@tooltip-arrow-width; border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; border-bottom-color: @tooltip-arrow-color; } } bs-less/media.less000066600000001604150425122620010067 0ustar00.media { // Proper spacing between instances of .media margin-top: 15px; &:first-child { margin-top: 0; } } .media, .media-body { zoom: 1; overflow: hidden; } .media-body { width: 10000px; } .media-object { display: block; // Fix collapse in webkit from max-width: 100% and display: table-cell. &.img-thumbnail { max-width: none; } } .media-right, .media > .pull-right { padding-left: 10px; } .media-left, .media > .pull-left { padding-right: 10px; } .media-left, .media-right, .media-body { display: table-cell; vertical-align: top; } .media-middle { vertical-align: middle; } .media-bottom { vertical-align: bottom; } // Reset margins on headings for tighter default spacing .media-heading { margin-top: 0; margin-bottom: 5px; } // Media list variation // // Undo default ul/ol styles .media-list { padding-left: 0; list-style: none; } bs-less/alerts.less000066600000002756150425122620010313 0ustar00// // 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); } bs-less/type.less000066600000013502150425122620007771 0ustar00// // 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)); } 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: @dl-horizontal-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-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 } } } // Addresses address { margin-bottom: @line-height-computed; font-style: normal; line-height: @line-height-base; } bs-less/navbar.less000066600000034444150425122620010271 0ustar00// // 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-device-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; // 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; } > img { display: block; } @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 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; &:last-child { margin-bottom: 0; } } } // 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); } } // 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 { margin-bottom: 0; .border-top-radius(@navbar-border-radius); .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; } } // 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. // // Declared after the navbar components to ensure more specificity on the margins. @media (min-width: @grid-float-breakpoint) { .navbar-left { .pull-left(); } .navbar-right { .pull-right(); margin-right: -@navbar-padding-horizontal; ~ .navbar-right { 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; } } } } bs-less/wells.less000066600000001017150425122620010134 0ustar00// // 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; } bs-less/mixins.less000066600000002160150425122620010315 0ustar00// 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/reset-text.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"; bs-less/grid.less000066600000002553150425122620007741 0ustar00// // 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); } bs-less/breadcrumbs.less000066600000001122150425122620011274 0ustar00// // 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; } } bs-less/responsive-embed.less000066600000001042150425122620012253 0ustar00// 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, video { 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%; } bs-less/carousel.less000066600000012437150425122620010633 0ustar00// // 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; } // WebKit CSS3 transforms for supported devices @media all and (transform-3d), (-webkit-transform-3d) { .transition-transform(~'0.6s ease-in-out'); .backface-visibility(~'hidden'); .perspective(1000px); &.next, &.active.right { .translate3d(100%, 0, 0); left: 0; } &.prev, &.active.left { .translate3d(-100%, 0, 0); left: 0; } &.next.left, &.prev.right, &.active { .translate3d(0, 0, 0); left: 0; } } } > .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%; margin-top: -10px; 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; line-height: 1; 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. // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Internet_Explorer // // 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; } } bs-less/pagination.less000066600000004013150425122620011136 0ustar00// // 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 { z-index: 2; color: @pagination-hover-color; background-color: @pagination-hover-bg; border-color: @pagination-hover-border; } } > .active > a, > .active > span { &, &:hover, &:focus { z-index: 3; 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: @cursor-disabled; } } } // Sizing // -------------------------------------------------- // Large .pagination-lg { .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); } // Small .pagination-sm { .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); } bs-less/progress-bars.less000066600000003605150425122620011604 0ustar00// // 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: @progress-border-radius; .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); } // 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); } bs-less/jumbotron.less000066600000002200150425122620011020 0ustar00// // Jumbotron // -------------------------------------------------- .jumbotron { padding-top: @jumbotron-padding; padding-bottom: @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 &, .container-fluid & { border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container padding-left: (@grid-gutter-width / 2); padding-right: (@grid-gutter-width / 2); } .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 &, .container-fluid & { padding-left: (@jumbotron-padding * 2); padding-right: (@jumbotron-padding * 2); } h1, .h1 { font-size: @jumbotron-heading-font-size; } } } bs-less/list-group.less000066600000006064150425122620011122 0ustar00// // List groups // -------------------------------------------------- // Base class // // Easily usable on