diff options
| author | Jonathan Barronville | 2014-06-07 19:13:28 -0400 | 
|---|---|---|
| committer | Jonathan Barronville | 2014-06-07 19:13:28 -0400 | 
| commit | b56e5c671ce89f1c8ddc67a4ac8d2f59de04ea85 (patch) | |
| tree | 80ce4d67ff46505dc1ec77b72daf7bed59abf8b4 /bower_components/bootstrap/less | |
| parent | 67ad58c27c4a2704532246d044e1ecbae2a11022 (diff) | |
| download | sellevate-b56e5c671ce89f1c8ddc67a4ac8d2f59de04ea85.tar.bz2 | |
Yo.
Diffstat (limited to 'bower_components/bootstrap/less')
40 files changed, 7434 insertions, 0 deletions
| diff --git a/bower_components/bootstrap/less/alerts.less b/bower_components/bootstrap/less/alerts.less new file mode 100644 index 0000000..3eab066 --- /dev/null +++ b/bower_components/bootstrap/less/alerts.less @@ -0,0 +1,67 @@ +// +// 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; +  } +} + +// Dismissable alerts +// +// Expand the right padding and account for the close button's positioning. + +.alert-dismissable { + 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); +} diff --git a/bower_components/bootstrap/less/badges.less b/bower_components/bootstrap/less/badges.less new file mode 100644 index 0000000..56828ca --- /dev/null +++ b/bower_components/bootstrap/less/badges.less @@ -0,0 +1,55 @@ +// +// Badges +// -------------------------------------------------- + + +// Base classes +.badge { +  display: inline-block; +  min-width: 10px; +  padding: 3px 7px; +  font-size: @font-size-small; +  font-weight: @badge-font-weight; +  color: @badge-color; +  line-height: @badge-line-height; +  vertical-align: baseline; +  white-space: nowrap; +  text-align: center; +  background-color: @badge-bg; +  border-radius: @badge-border-radius; + +  // Empty badges collapse automatically (not available in IE8) +  &:empty { +    display: none; +  } + +  // Quick fix for badges in buttons +  .btn & { +    position: relative; +    top: -1px; +  } +  .btn-xs & { +    top: 0; +    padding: 1px 5px; +  } +} + +// Hover state, but only for links +a.badge { +  &:hover, +  &:focus { +    color: @badge-link-hover-color; +    text-decoration: none; +    cursor: pointer; +  } +} + +// Account for counters in navs +a.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { +  color: @badge-active-color; +  background-color: @badge-active-bg; +} +.nav-pills > li > a > .badge { +  margin-left: 3px; +} diff --git a/bower_components/bootstrap/less/bootstrap.less b/bower_components/bootstrap/less/bootstrap.less new file mode 100644 index 0000000..b368b87 --- /dev/null +++ b/bower_components/bootstrap/less/bootstrap.less @@ -0,0 +1,49 @@ +// Core variables and mixins +@import "variables.less"; +@import "mixins.less"; + +// Reset +@import "normalize.less"; +@import "print.less"; + +// Core CSS +@import "scaffolding.less"; +@import "type.less"; +@import "code.less"; +@import "grid.less"; +@import "tables.less"; +@import "forms.less"; +@import "buttons.less"; + +// Components +@import "component-animations.less"; +@import "glyphicons.less"; +@import "dropdowns.less"; +@import "button-groups.less"; +@import "input-groups.less"; +@import "navs.less"; +@import "navbar.less"; +@import "breadcrumbs.less"; +@import "pagination.less"; +@import "pager.less"; +@import "labels.less"; +@import "badges.less"; +@import "jumbotron.less"; +@import "thumbnails.less"; +@import "alerts.less"; +@import "progress-bars.less"; +@import "media.less"; +@import "list-group.less"; +@import "panels.less"; +@import "wells.less"; +@import "close.less"; + +// Components w/ JavaScript +@import "modals.less"; +@import "tooltip.less"; +@import "popovers.less"; +@import "carousel.less"; + +// Utility classes +@import "utilities.less"; +@import "responsive-utilities.less"; diff --git a/bower_components/bootstrap/less/breadcrumbs.less b/bower_components/bootstrap/less/breadcrumbs.less new file mode 100644 index 0000000..cb01d50 --- /dev/null +++ b/bower_components/bootstrap/less/breadcrumbs.less @@ -0,0 +1,26 @@ +// +// 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; +  } +} diff --git a/bower_components/bootstrap/less/button-groups.less b/bower_components/bootstrap/less/button-groups.less new file mode 100644 index 0000000..27eb796 --- /dev/null +++ b/bower_components/bootstrap/less/button-groups.less @@ -0,0 +1,226 @@ +// +// Button groups +// -------------------------------------------------- + +// Make the div behave like a button +.btn-group, +.btn-group-vertical { +  position: relative; +  display: inline-block; +  vertical-align: middle; // match .btn alignment given font-size hack above +  > .btn { +    position: relative; +    float: left; +    // Bring the "active" button to the front +    &:hover, +    &:focus, +    &:active, +    &.active { +      z-index: 2; +    } +    &:focus { +      // Remove focus outline when dropdown JS adds it after closing the menu +      outline: none; +    } +  } +} + +// Prevent double borders when buttons are next to each other +.btn-group { +  .btn + .btn, +  .btn + .btn-group, +  .btn-group + .btn, +  .btn-group + .btn-group { +    margin-left: -1px; +  } +} + +// Optional: Group multiple button groups together for a toolbar +.btn-toolbar { +  margin-left: -5px; // Offset the first child's margin +  &:extend(.clearfix all); + +  .btn-group, +  .input-group { +    float: left; +  } +  > .btn, +  > .btn-group, +  > .input-group { +    margin-left: 5px; +  } +} + +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { +  border-radius: 0; +} + +// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match +.btn-group > .btn:first-child { +  margin-left: 0; +  &:not(:last-child):not(.dropdown-toggle) { +    .border-right-radius(0); +  } +} +// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { +  .border-left-radius(0); +} + +// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group) +.btn-group > .btn-group { +  float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { +  border-radius: 0; +} +.btn-group > .btn-group:first-child { +  > .btn:last-child, +  > .dropdown-toggle { +    .border-right-radius(0); +  } +} +.btn-group > .btn-group:last-child > .btn:first-child { +  .border-left-radius(0); +} + +// On active and open, don't show outline +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { +  outline: 0; +} + + +// Sizing +// +// Remix the default button sizing classes into new ones for easier manipulation. + +.btn-group-xs > .btn { &:extend(.btn-xs); } +.btn-group-sm > .btn { &:extend(.btn-sm); } +.btn-group-lg > .btn { &:extend(.btn-lg); } + + +// Split button dropdowns +// ---------------------- + +// Give the line between buttons some depth +.btn-group > .btn + .dropdown-toggle { +  padding-left: 8px; +  padding-right: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { +  padding-left: 12px; +  padding-right: 12px; +} + +// The clickable button for toggling the menu +// Remove the gradient and set the same inset shadow as the :active state +.btn-group.open .dropdown-toggle { +  .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); + +  // Show no shadow for `.btn-link` since it has no other button styles. +  &.btn-link { +    .box-shadow(none); +  } +} + + +// Reposition the caret +.btn .caret { +  margin-left: 0; +} +// Carets in other button sizes +.btn-lg .caret { +  border-width: @caret-width-large @caret-width-large 0; +  border-bottom-width: 0; +} +// Upside down carets for .dropup +.dropup .btn-lg .caret { +  border-width: 0 @caret-width-large @caret-width-large; +} + + +// Vertical button groups +// ---------------------- + +.btn-group-vertical { +  > .btn, +  > .btn-group, +  > .btn-group > .btn { +    display: block; +    float: none; +    width: 100%; +    max-width: 100%; +  } + +  // Clear floats so dropdown menus can be properly placed +  > .btn-group { +    &:extend(.clearfix all); +    > .btn { +      float: none; +    } +  } + +  > .btn + .btn, +  > .btn + .btn-group, +  > .btn-group + .btn, +  > .btn-group + .btn-group { +    margin-top: -1px; +    margin-left: 0; +  } +} + +.btn-group-vertical > .btn { +  &:not(:first-child):not(:last-child) { +    border-radius: 0; +  } +  &:first-child:not(:last-child) { +    border-top-right-radius: @border-radius-base; +    .border-bottom-radius(0); +  } +  &:last-child:not(:first-child) { +    border-bottom-left-radius: @border-radius-base; +    .border-top-radius(0); +  } +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { +  border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) { +  > .btn:last-child, +  > .dropdown-toggle { +    .border-bottom-radius(0); +  } +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { +  .border-top-radius(0); +} + + + +// Justified button groups +// ---------------------- + +.btn-group-justified { +  display: table; +  width: 100%; +  table-layout: fixed; +  border-collapse: separate; +  > .btn, +  > .btn-group { +    float: none; +    display: table-cell; +    width: 1%; +  } +  > .btn-group .btn { +    width: 100%; +  } +} + + +// Checkbox and radio options +[data-toggle="buttons"] > .btn > input[type="radio"], +[data-toggle="buttons"] > .btn > input[type="checkbox"] { +  display: none; +} diff --git a/bower_components/bootstrap/less/buttons.less b/bower_components/bootstrap/less/buttons.less new file mode 100644 index 0000000..d4fc156 --- /dev/null +++ b/bower_components/bootstrap/less/buttons.less @@ -0,0 +1,159 @@ +// +// Buttons +// -------------------------------------------------- + + +// Base styles +// -------------------------------------------------- + +.btn { +  display: inline-block; +  margin-bottom: 0; // For input.btn +  font-weight: @btn-font-weight; +  text-align: center; +  vertical-align: middle; +  cursor: pointer; +  background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 +  border: 1px solid transparent; +  white-space: nowrap; +  .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base); +  .user-select(none); + +  &, +  &:active, +  &.active { +    &:focus { +      .tab-focus(); +    } +  } + +  &:hover, +  &:focus { +    color: @btn-default-color; +    text-decoration: none; +  } + +  &:active, +  &.active { +    outline: 0; +    background-image: none; +    .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); +  } + +  &.disabled, +  &[disabled], +  fieldset[disabled] & { +    cursor: not-allowed; +    pointer-events: none; // Future-proof disabling of clicks +    .opacity(.65); +    .box-shadow(none); +  } +} + + +// Alternate buttons +// -------------------------------------------------- + +.btn-default { +  .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border); +} +.btn-primary { +  .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border); +} +// Success appears as green +.btn-success { +  .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border); +} +// Info appears as blue-green +.btn-info { +  .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border); +} +// Warning appears as orange +.btn-warning { +  .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border); +} +// Danger and error appear as red +.btn-danger { +  .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border); +} + + +// Link buttons +// ------------------------- + +// Make a button look and behave like a link +.btn-link { +  color: @link-color; +  font-weight: normal; +  cursor: pointer; +  border-radius: 0; + +  &, +  &:active, +  &[disabled], +  fieldset[disabled] & { +    background-color: transparent; +    .box-shadow(none); +  } +  &, +  &:hover, +  &:focus, +  &:active { +    border-color: transparent; +  } +  &:hover, +  &:focus { +    color: @link-hover-color; +    text-decoration: underline; +    background-color: transparent; +  } +  &[disabled], +  fieldset[disabled] & { +    &:hover, +    &:focus { +      color: @btn-link-disabled-color; +      text-decoration: none; +    } +  } +} + + +// Button Sizes +// -------------------------------------------------- + +.btn-lg { +  // line-height: ensure even-numbered height of button next to large input +  .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); +} +.btn-sm { +  // line-height: ensure proper height of button next to small input +  .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); +} +.btn-xs { +  .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small); +} + + +// Block button +// -------------------------------------------------- + +.btn-block { +  display: block; +  width: 100%; +  padding-left: 0; +  padding-right: 0; +} + +// Vertically space out multiple block buttons +.btn-block + .btn-block { +  margin-top: 5px; +} + +// Specificity overrides +input[type="submit"], +input[type="reset"], +input[type="button"] { +  &.btn-block { +    width: 100%; +  } +} diff --git a/bower_components/bootstrap/less/carousel.less b/bower_components/bootstrap/less/carousel.less new file mode 100644 index 0000000..e3fb8a2 --- /dev/null +++ b/bower_components/bootstrap/less/carousel.less @@ -0,0 +1,232 @@ +// +// Carousel +// -------------------------------------------------- + + +// Wrapper for the slide container and indicators +.carousel { +  position: relative; +} + +.carousel-inner { +  position: relative; +  overflow: hidden; +  width: 100%; + +  > .item { +    display: none; +    position: relative; +    .transition(.6s ease-in-out left); + +    // Account for jankitude on images +    > img, +    > a > img { +      &:extend(.img-responsive); +      line-height: 1; +    } +  } + +  > .active, +  > .next, +  > .prev { display: block; } + +  > .active { +    left: 0; +  } + +  > .next, +  > .prev { +    position: absolute; +    top: 0; +    width: 100%; +  } + +  > .next { +    left: 100%; +  } +  > .prev { +    left: -100%; +  } +  > .next.left, +  > .prev.right { +    left: 0; +  } + +  > .active.left { +    left: -100%; +  } +  > .active.right { +    left: 100%; +  } + +} + +// Left/right controls for nav +// --------------------------- + +.carousel-control { +  position: absolute; +  top: 0; +  left: 0; +  bottom: 0; +  width: @carousel-control-width; +  .opacity(@carousel-control-opacity); +  font-size: @carousel-control-font-size; +  color: @carousel-control-color; +  text-align: center; +  text-shadow: @carousel-text-shadow; +  // We can't have this transition here because WebKit cancels the carousel +  // animation if you trip this while in the middle of another animation. + +  // Set gradients for backgrounds +  &.left { +    #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001)); +  } +  &.right { +    left: auto; +    right: 0; +    #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5)); +  } + +  // Hover/focus state +  &:hover, +  &:focus { +    outline: none; +    color: @carousel-control-color; +    text-decoration: none; +    .opacity(.9); +  } + +  // Toggles +  .icon-prev, +  .icon-next, +  .glyphicon-chevron-left, +  .glyphicon-chevron-right { +    position: absolute; +    top: 50%; +    z-index: 5; +    display: inline-block; +  } +  .icon-prev, +  .glyphicon-chevron-left { +    left: 50%; +  } +  .icon-next, +  .glyphicon-chevron-right { +    right: 50%; +  } +  .icon-prev, +  .icon-next { +    width:  20px; +    height: 20px; +    margin-top: -10px; +    margin-left: -10px; +    font-family: serif; +  } + +  .icon-prev { +    &:before { +      content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039) +    } +  } +  .icon-next { +    &:before { +      content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A) +    } +  } +} + +// Optional indicator pips +// +// Add an unordered list with the following class and add a list item for each +// slide your carousel holds. + +.carousel-indicators { +  position: absolute; +  bottom: 10px; +  left: 50%; +  z-index: 15; +  width: 60%; +  margin-left: -30%; +  padding-left: 0; +  list-style: none; +  text-align: center; + +  li { +    display: inline-block; +    width:  10px; +    height: 10px; +    margin: 1px; +    text-indent: -999px; +    border: 1px solid @carousel-indicator-border-color; +    border-radius: 10px; +    cursor: pointer; + +    // IE8-9 hack for event handling +    // +    // Internet Explorer 8-9 does not support clicks on elements without a set +    // `background-color`. We cannot use `filter` since that's not viewed as a +    // background color by the browser. Thus, a hack is needed. +    // +    // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we +    // set alpha transparency for the best results possible. +    background-color: #000 \9; // IE8 +    background-color: rgba(0,0,0,0); // IE9 +  } +  .active { +    margin: 0; +    width:  12px; +    height: 12px; +    background-color: @carousel-indicator-active-bg; +  } +} + +// Optional captions +// ----------------------------- +// Hidden by default for smaller viewports +.carousel-caption { +  position: absolute; +  left: 15%; +  right: 15%; +  bottom: 20px; +  z-index: 10; +  padding-top: 20px; +  padding-bottom: 20px; +  color: @carousel-caption-color; +  text-align: center; +  text-shadow: @carousel-text-shadow; +  & .btn { +    text-shadow: none; // No shadow for button elements in carousel-caption +  } +} + + +// Scale up controls for tablets and up +@media screen and (min-width: @screen-sm-min) { + +  // Scale up the controls a smidge +  .carousel-control { +    .glyphicon-chevron-left, +    .glyphicon-chevron-right, +    .icon-prev, +    .icon-next { +      width: 30px; +      height: 30px; +      margin-top: -15px; +      margin-left: -15px; +      font-size: 30px; +    } +  } + +  // Show and left align the captions +  .carousel-caption { +    left: 20%; +    right: 20%; +    padding-bottom: 30px; +  } + +  // Move up the indicators +  .carousel-indicators { +    bottom: 20px; +  } +} diff --git a/bower_components/bootstrap/less/close.less b/bower_components/bootstrap/less/close.less new file mode 100644 index 0000000..9b4e74f --- /dev/null +++ b/bower_components/bootstrap/less/close.less @@ -0,0 +1,33 @@ +// +// Close icons +// -------------------------------------------------- + + +.close { +  float: right; +  font-size: (@font-size-base * 1.5); +  font-weight: @close-font-weight; +  line-height: 1; +  color: @close-color; +  text-shadow: @close-text-shadow; +  .opacity(.2); + +  &:hover, +  &:focus { +    color: @close-color; +    text-decoration: none; +    cursor: pointer; +    .opacity(.5); +  } + +  // Additional properties for button version +  // iOS requires the button element instead of an anchor tag. +  // If you want the anchor version, it requires `href="#"`. +  button& { +    padding: 0; +    cursor: pointer; +    background: transparent; +    border: 0; +    -webkit-appearance: none; +  } +} diff --git a/bower_components/bootstrap/less/code.less b/bower_components/bootstrap/less/code.less new file mode 100644 index 0000000..3eed26c --- /dev/null +++ b/bower_components/bootstrap/less/code.less @@ -0,0 +1,63 @@ +// +// Code (inline and block) +// -------------------------------------------------- + + +// Inline and block code styles +code, +kbd, +pre, +samp { +  font-family: @font-family-monospace; +} + +// Inline code +code { +  padding: 2px 4px; +  font-size: 90%; +  color: @code-color; +  background-color: @code-bg; +  white-space: nowrap; +  border-radius: @border-radius-base; +} + +// User input typically entered via keyboard +kbd { +  padding: 2px 4px; +  font-size: 90%; +  color: @kbd-color; +  background-color: @kbd-bg; +  border-radius: @border-radius-small; +  box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); +} + +// Blocks of code +pre { +  display: block; +  padding: ((@line-height-computed - 1) / 2); +  margin: 0 0 (@line-height-computed / 2); +  font-size: (@font-size-base - 1); // 14px to 13px +  line-height: @line-height-base; +  word-break: break-all; +  word-wrap: break-word; +  color: @pre-color; +  background-color: @pre-bg; +  border: 1px solid @pre-border-color; +  border-radius: @border-radius-base; + +  // Account for some code outputs that place code tags in pre tags +  code { +    padding: 0; +    font-size: inherit; +    color: inherit; +    white-space: pre-wrap; +    background-color: transparent; +    border-radius: 0; +  } +} + +// Enable scrollable blocks of code +.pre-scrollable { +  max-height: @pre-scrollable-max-height; +  overflow-y: scroll; +} diff --git a/bower_components/bootstrap/less/component-animations.less b/bower_components/bootstrap/less/component-animations.less new file mode 100644 index 0000000..1efe45e --- /dev/null +++ b/bower_components/bootstrap/less/component-animations.less @@ -0,0 +1,29 @@ +// +// 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/twitter/bootstrap/pull/3552. + +.fade { +  opacity: 0; +  .transition(opacity .15s linear); +  &.in { +    opacity: 1; +  } +} + +.collapse { +  display: none; +  &.in { +    display: block; +  } +} +.collapsing { +  position: relative; +  height: 0; +  overflow: hidden; +  .transition(height .35s ease); +} diff --git a/bower_components/bootstrap/less/dropdowns.less b/bower_components/bootstrap/less/dropdowns.less new file mode 100644 index 0000000..f165165 --- /dev/null +++ b/bower_components/bootstrap/less/dropdowns.less @@ -0,0 +1,213 @@ +// +// Dropdown menus +// -------------------------------------------------- + + +// Dropdown arrow/caret +.caret { +  display: inline-block; +  width: 0; +  height: 0; +  margin-left: 2px; +  vertical-align: middle; +  border-top:   @caret-width-base solid; +  border-right: @caret-width-base solid transparent; +  border-left:  @caret-width-base solid transparent; +} + +// The dropdown wrapper (div) +.dropdown { +  position: relative; +} + +// Prevent the focus on the dropdown toggle when closing dropdowns +.dropdown-toggle:focus { +  outline: 0; +} + +// The dropdown menu (ul) +.dropdown-menu { +  position: absolute; +  top: 100%; +  left: 0; +  z-index: @zindex-dropdown; +  display: none; // none by default, but block on "open" of the menu +  float: left; +  min-width: 160px; +  padding: 5px 0; +  margin: 2px 0 0; // override default ul +  list-style: none; +  font-size: @font-size-base; +  background-color: @dropdown-bg; +  border: 1px solid @dropdown-fallback-border; // IE8 fallback +  border: 1px solid @dropdown-border; +  border-radius: @border-radius-base; +  .box-shadow(0 6px 12px rgba(0,0,0,.175)); +  background-clip: padding-box; + +  // Aligns the dropdown menu to right +  // +  // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]` +  &.pull-right { +    right: 0; +    left: auto; +  } + +  // Dividers (basically an hr) within the dropdown +  .divider { +    .nav-divider(@dropdown-divider-bg); +  } + +  // Links within the dropdown menu +  > li > a { +    display: block; +    padding: 3px 20px; +    clear: both; +    font-weight: normal; +    line-height: @line-height-base; +    color: @dropdown-link-color; +    white-space: nowrap; // prevent links from randomly breaking onto new lines +  } +} + +// Hover/Focus state +.dropdown-menu > li > a { +  &:hover, +  &:focus { +    text-decoration: none; +    color: @dropdown-link-hover-color; +    background-color: @dropdown-link-hover-bg; +  } +} + +// Active state +.dropdown-menu > .active > a { +  &, +  &:hover, +  &:focus { +    color: @dropdown-link-active-color; +    text-decoration: none; +    outline: 0; +    background-color: @dropdown-link-active-bg; +  } +} + +// Disabled state +// +// Gray out text and ensure the hover/focus state remains gray + +.dropdown-menu > .disabled > a { +  &, +  &:hover, +  &:focus { +    color: @dropdown-link-disabled-color; +  } +} +// Nuke hover/focus effects +.dropdown-menu > .disabled > a { +  &:hover, +  &:focus { +    text-decoration: none; +    background-color: transparent; +    background-image: none; // Remove CSS gradient +    .reset-filter(); +    cursor: not-allowed; +  } +} + +// Open state for the dropdown +.open { +  // Show the menu +  > .dropdown-menu { +    display: block; +  } + +  // Remove the outline when :focus is triggered +  > a { +    outline: 0; +  } +} + +// Menu positioning +// +// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown +// menu with the parent. +.dropdown-menu-right { +  left: auto; // Reset the default from `.dropdown-menu` +  right: 0; +} +// With v3, we enabled auto-flipping if you have a dropdown within a right +// aligned nav component. To enable the undoing of that, we provide an override +// to restore the default dropdown menu alignment. +// +// This is only for left-aligning a dropdown menu within a `.navbar-right` or +// `.pull-right` nav component. +.dropdown-menu-left { +  left: 0; +  right: auto; +} + +// Dropdown section headers +.dropdown-header { +  display: block; +  padding: 3px 20px; +  font-size: @font-size-small; +  line-height: @line-height-base; +  color: @dropdown-header-color; +} + +// Backdrop to catch body clicks on mobile, etc. +.dropdown-backdrop { +  position: fixed; +  left: 0; +  right: 0; +  bottom: 0; +  top: 0; +  z-index: (@zindex-dropdown - 10); +} + +// Right aligned dropdowns +.pull-right > .dropdown-menu { +  right: 0; +  left: auto; +} + +// Allow for dropdowns to go bottom up (aka, dropup-menu) +// +// Just add .dropup after the standard .dropdown class and you're set, bro. +// TODO: abstract this so that the navbar fixed styles are not placed here? + +.dropup, +.navbar-fixed-bottom .dropdown { +  // Reverse the caret +  .caret { +    border-top: 0; +    border-bottom: @caret-width-base solid; +    content: ""; +  } +  // Different positioning for bottom up menu +  .dropdown-menu { +    top: auto; +    bottom: 100%; +    margin-bottom: 1px; +  } +} + + +// Component alignment +// +// Reiterate per navbar.less and the modified component alignment there. + +@media (min-width: @grid-float-breakpoint) { +  .navbar-right { +    .dropdown-menu { +      .dropdown-menu-right(); +    } +    // Necessary for overrides of the default right aligned menu. +    // Will remove come v4 in all likelihood. +    .dropdown-menu-left { +      .dropdown-menu-left(); +    } +  } +} + diff --git a/bower_components/bootstrap/less/forms.less b/bower_components/bootstrap/less/forms.less new file mode 100644 index 0000000..f607b85 --- /dev/null +++ b/bower_components/bootstrap/less/forms.less @@ -0,0 +1,438 @@ +// +// 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: -webkit-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; +  margin-bottom: 5px; +  font-weight: bold; +} + + +// Normalize form controls +// +// While most of our form styles require extra classes, some basic normalization +// is required to ensure optimum display with or without those classes to better +// address browser inconsistencies. + +// Override content-box in Normalize (* isn't specific enough) +input[type="search"] { +  .box-sizing(border-box); +} + +// Position radios and checkboxes better +input[type="radio"], +input[type="checkbox"] { +  margin: 4px 0 0; +  margin-top: 1px \9; /* IE8-9 */ +  line-height: normal; +} + +// Set the height of file controls to match text inputs +input[type="file"] { +  display: block; +} + +// Make range inputs behave like textual form controls +input[type="range"] { +  display: block; +  width: 100%; +} + +// Make multiple select elements height not fixed +select[multiple], +select[size] { +  height: auto; +} + +// Focus for file, radio, and checkbox +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { +  .tab-focus(); +} + +// Adjust output element +output { +  display: block; +  padding-top: (@padding-base-vertical + 1); +  font-size: @font-size-base; +  line-height: @line-height-base; +  color: @input-color; +} + + +// Common form controls +// +// Shared size and type resets for form controls. Apply `.form-control` to any +// of the following form controls: +// +// select +// textarea +// input[type="text"] +// input[type="password"] +// input[type="datetime"] +// input[type="datetime-local"] +// input[type="date"] +// input[type="month"] +// input[type="time"] +// input[type="week"] +// input[type="number"] +// input[type="email"] +// input[type="url"] +// input[type="search"] +// input[type="tel"] +// input[type="color"] + +.form-control { +  display: block; +  width: 100%; +  height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border) +  padding: @padding-base-vertical @padding-base-horizontal; +  font-size: @font-size-base; +  line-height: @line-height-base; +  color: @input-color; +  background-color: @input-bg; +  background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 +  border: 1px solid @input-border; +  border-radius: @input-border-radius; +  .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); +  .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s"); + +  // Customize the `:focus` state to imitate native WebKit styles. +  .form-control-focus(); + +  // Placeholder +  .placeholder(); + +  // Disabled and read-only inputs +  // +  // HTML5 says that controls under a fieldset > legend:first-child won't be +  // disabled if the fieldset is disabled. Due to implementation difficulty, we +  // don't honor that edge case; we style them as disabled anyway. +  &[disabled], +  &[readonly], +  fieldset[disabled] & { +    cursor: not-allowed; +    background-color: @input-bg-disabled; +    opacity: 1; // iOS fix for unreadable disabled content +  } + +  // Reset height for `textarea`s +  textarea& { +    height: auto; +  } +} + + +// Search inputs in iOS +// +// This overrides the extra rounded corners on search inputs in iOS so that our +// `.form-control` class can properly style them. Note that this cannot simply +// be added to `.form-control` as it's not specific enough. For details, see +// https://github.com/twbs/bootstrap/issues/11586. + +input[type="search"] { +  -webkit-appearance: none; +} + + +// Special styles for iOS date input +// +// In Mobile Safari, date inputs require a pixel line-height that matches the +// given height of the input. + +input[type="date"] { +  line-height: @input-height-base; +} + + +// Form groups +// +// Designed to help with the organization and spacing of vertical forms. For +// horizontal forms, use the predefined grid classes. + +.form-group { +  margin-bottom: 15px; +} + + +// Checkboxes and radios +// +// Indent the labels to position radios/checkboxes as hanging controls. + +.radio, +.checkbox { +  display: block; +  min-height: @line-height-computed; // clear the floating input if there is no label text +  margin-top: 10px; +  margin-bottom: 10px; +  padding-left: 20px; +  label { +    display: inline; +    font-weight: normal; +    cursor: pointer; +  } +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { +  float: left; +  margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { +  margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing +} + +// Radios and checkboxes on same line +.radio-inline, +.checkbox-inline { +  display: inline-block; +  padding-left: 20px; +  margin-bottom: 0; +  vertical-align: middle; +  font-weight: normal; +  cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { +  margin-top: 0; +  margin-left: 10px; // space out consecutive inline controls +} + +// Apply same disabled cursor tweak as for inputs +// +// Note: Neither radios nor checkboxes can be readonly. +input[type="radio"], +input[type="checkbox"], +.radio, +.radio-inline, +.checkbox, +.checkbox-inline { +  &[disabled], +  fieldset[disabled] & { +    cursor: not-allowed; +  } +} + + +// Form control sizing +// +// Build on `.form-control` with modifier classes to decrease or increase the +// height and font-size of form controls. + +.input-sm { +  .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); +} + +.input-lg { +  .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); +} + + +// Form control feedback states +// +// Apply contextual and semantic states to individual form controls. + +.has-feedback { +  // Enable absolute positioning +  position: relative; + +  // Ensure icons don't overlap text +  .form-control { +    padding-right: (@input-height-base * 1.25); +  } + +  // Feedback icon (requires .glyphicon classes) +  .form-control-feedback { +    position: absolute; +    top: (@line-height-computed + 5); // Height of the `label` and its margin +    right: 0; +    display: block; +    width: @input-height-base; +    height: @input-height-base; +    line-height: @input-height-base; +    text-align: center; +  } +} + +// Feedback states +.has-success { +  .form-control-validation(@state-success-text; @state-success-text; @state-success-bg); +} +.has-warning { +  .form-control-validation(@state-warning-text; @state-warning-text; @state-warning-bg); +} +.has-error { +  .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg); +} + + +// Static form control text +// +// Apply class to a `p` element to make any string of text align with labels in +// a horizontal form layout. + +.form-control-static { +  margin-bottom: 0; // Remove default margin from `p` +} + + +// Help text +// +// Apply to any element you wish to create light text for placement immediately +// below a form control. Use for general help, formatting, or instructional text. + +.help-block { +  display: block; // account for any element using help-block +  margin-top: 5px; +  margin-bottom: 10px; +  color: lighten(@text-color, 25%); // lighten the text some for contrast +} + + + +// Inline forms +// +// Make forms appear inline(-block) by adding the `.form-inline` class. Inline +// forms begin stacked on extra small (mobile) devices and then go inline when +// viewports reach <768px. +// +// Requires wrapping inputs and labels with `.form-group` for proper display of +// default HTML form controls and our custom form controls (e.g., input groups). +// +// Heads up! This is mixin-ed into `.navbar-form` in navbars.less. + +.form-inline { + +  // Kick in the inline +  @media (min-width: @screen-sm-min) { +    // Inline-block all the things for "inline" +    .form-group { +      display: inline-block; +      margin-bottom: 0; +      vertical-align: middle; +    } + +    // In navbar-form, allow folks to *not* use `.form-group` +    .form-control { +      display: inline-block; +      width: auto; // Prevent labels from stacking above inputs in `.form-group` +      vertical-align: middle; +    } +    // Input groups need that 100% width though +    .input-group > .form-control { +      width: 100%; +    } + +    .control-label { +      margin-bottom: 0; +      vertical-align: middle; +    } + +    // Remove default margin on radios/checkboxes that were used for stacking, and +    // then undo the floating of radios and checkboxes to match (which also avoids +    // a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969). +    .radio, +    .checkbox { +      display: inline-block; +      margin-top: 0; +      margin-bottom: 0; +      padding-left: 0; +      vertical-align: middle; +    } +    .radio input[type="radio"], +    .checkbox input[type="checkbox"] { +      float: none; +      margin-left: 0; +    } + +    // Validation states +    // +    // Reposition the icon because it's now within a grid column and columns have +    // `position: relative;` on them. Also accounts for the grid gutter padding. +    .has-feedback .form-control-feedback { +      top: 0; +    } +  } +} + + +// Horizontal forms +// +// Horizontal forms are built on grid classes and allow you to create forms with +// labels on the left and inputs on the right. + +.form-horizontal { + +  // Consistent vertical alignment of labels, radios, and checkboxes +  .control-label, +  .radio, +  .checkbox, +  .radio-inline, +  .checkbox-inline { +    margin-top: 0; +    margin-bottom: 0; +    padding-top: (@padding-base-vertical + 1); // Default padding plus a border +  } +  // Account for padding we're adding to ensure the alignment and of help text +  // and other content below items +  .radio, +  .checkbox { +    min-height: (@line-height-computed + (@padding-base-vertical + 1)); +  } + +  // Make form groups behave like rows +  .form-group { +    .make-row(); +  } + +  .form-control-static { +    padding-top: (@padding-base-vertical + 1); +  } + +  // Only right align form labels here when the columns stop stacking +  @media (min-width: @screen-sm-min) { +    .control-label { +      text-align: right; +    } +  } + +  // Validation states +  // +  // Reposition the icon because it's now within a grid column and columns have +  // `position: relative;` on them. Also accounts for the grid gutter padding. +  .has-feedback .form-control-feedback { +    top: 0; +    right: (@grid-gutter-width / 2); +  } +} diff --git a/bower_components/bootstrap/less/glyphicons.less b/bower_components/bootstrap/less/glyphicons.less new file mode 100644 index 0000000..789c5e7 --- /dev/null +++ b/bower_components/bootstrap/less/glyphicons.less @@ -0,0 +1,233 @@ +// +// Glyphicons for Bootstrap +// +// Since icons are fonts, they can be placed anywhere text is placed and are +// thus automatically sized to match the surrounding child. To use, create an +// inline element with the appropriate classes, like so: +// +// <a href="#"><span class="glyphicon glyphicon-star"></span> Star</a> + +// Import the fonts +@font-face { +  font-family: 'Glyphicons Halflings'; +  src: ~"url('@{icon-font-path}@{icon-font-name}.eot')"; +  src: ~"url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype')", +       ~"url('@{icon-font-path}@{icon-font-name}.woff') format('woff')", +       ~"url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype')", +       ~"url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg')"; +} + +// Catchall baseclass +.glyphicon { +  position: relative; +  top: 1px; +  display: inline-block; +  font-family: 'Glyphicons Halflings'; +  font-style: normal; +  font-weight: normal; +  line-height: 1; +  -webkit-font-smoothing: antialiased; +  -moz-osx-font-smoothing: grayscale; +} + +// Individual icons +.glyphicon-asterisk               { &:before { content: "\2a"; } } +.glyphicon-plus                   { &:before { content: "\2b"; } } +.glyphicon-euro                   { &:before { content: "\20ac"; } } +.glyphicon-minus                  { &:before { content: "\2212"; } } +.glyphicon-cloud                  { &:before { content: "\2601"; } } +.glyphicon-envelope               { &:before { content: "\2709"; } } +.glyphicon-pencil                 { &:before { content: "\270f"; } } +.glyphicon-glass                  { &:before { content: "\e001"; } } +.glyphicon-music                  { &:before { content: "\e002"; } } +.glyphicon-search                 { &:before { content: "\e003"; } } +.glyphicon-heart                  { &:before { content: "\e005"; } } +.glyphicon-star                   { &:before { content: "\e006"; } } +.glyphicon-star-empty             { &:before { content: "\e007"; } } +.glyphicon-user                   { &:before { content: "\e008"; } } +.glyphicon-film                   { &:before { content: "\e009"; } } +.glyphicon-th-large               { &:before { content: "\e010"; } } +.glyphicon-th                     { &:before { content: "\e011"; } } +.glyphicon-th-list                { &:before { content: "\e012"; } } +.glyphicon-ok                     { &:before { content: "\e013"; } } +.glyphicon-remove                 { &:before { content: "\e014"; } } +.glyphicon-zoom-in                { &:before { content: "\e015"; } } +.glyphicon-zoom-out               { &:before { content: "\e016"; } } +.glyphicon-off                    { &:before { content: "\e017"; } } +.glyphicon-signal                 { &:before { content: "\e018"; } } +.glyphicon-cog                    { &:before { content: "\e019"; } } +.glyphicon-trash                  { &:before { content: "\e020"; } } +.glyphicon-home                   { &:before { content: "\e021"; } } +.glyphicon-file                   { &:before { content: "\e022"; } } +.glyphicon-time                   { &:before { content: "\e023"; } } +.glyphicon-road                   { &:before { content: "\e024"; } } +.glyphicon-download-alt           { &:before { content: "\e025"; } } +.glyphicon-download               { &:before { content: "\e026"; } } +.glyphicon-upload                 { &:before { content: "\e027"; } } +.glyphicon-inbox                  { &:before { content: "\e028"; } } +.glyphicon-play-circle            { &:before { content: "\e029"; } } +.glyphicon-repeat                 { &:before { content: "\e030"; } } +.glyphicon-refresh                { &:before { content: "\e031"; } } +.glyphicon-list-alt               { &:before { content: "\e032"; } } +.glyphicon-lock                   { &:before { content: "\e033"; } } +.glyphicon-flag                   { &:before { content: "\e034"; } } +.glyphicon-headphones             { &:before { content: "\e035"; } } +.glyphicon-volume-off             { &:before { content: "\e036"; } } +.glyphicon-volume-down            { &:before { content: "\e037"; } } +.glyphicon-volume-up              { &:before { content: "\e038"; } } +.glyphicon-qrcode                 { &:before { content: "\e039"; } } +.glyphicon-barcode                { &:before { content: "\e040"; } } +.glyphicon-tag                    { &:before { content: "\e041"; } } +.glyphicon-tags                   { &:before { content: "\e042"; } } +.glyphicon-book                   { &:before { content: "\e043"; } } +.glyphicon-bookmark               { &:before { content: "\e044"; } } +.glyphicon-print                  { &:before { content: "\e045"; } } +.glyphicon-camera                 { &:before { content: "\e046"; } } +.glyphicon-font                   { &:before { content: "\e047"; } } +.glyphicon-bold                   { &:before { content: "\e048"; } } +.glyphicon-italic                 { &:before { content: "\e049"; } } +.glyphicon-text-height            { &:before { content: "\e050"; } } +.glyphicon-text-width             { &:before { content: "\e051"; } } +.glyphicon-align-left             { &:before { content: "\e052"; } } +.glyphicon-align-center           { &:before { content: "\e053"; } } +.glyphicon-align-right            { &:before { content: "\e054"; } } +.glyphicon-align-justify          { &:before { content: "\e055"; } } +.glyphicon-list                   { &:before { content: "\e056"; } } +.glyphicon-indent-left            { &:before { content: "\e057"; } } +.glyphicon-indent-right           { &:before { content: "\e058"; } } +.glyphicon-facetime-video         { &:before { content: "\e059"; } } +.glyphicon-picture                { &:before { content: "\e060"; } } +.glyphicon-map-marker             { &:before { content: "\e062"; } } +.glyphicon-adjust                 { &:before { content: "\e063"; } } +.glyphicon-tint                   { &:before { content: "\e064"; } } +.glyphicon-edit                   { &:before { content: "\e065"; } } +.glyphicon-share                  { &:before { content: "\e066"; } } +.glyphicon-check                  { &:before { content: "\e067"; } } +.glyphicon-move                   { &:before { content: "\e068"; } } +.glyphicon-step-backward          { &:before { content: "\e069"; } } +.glyphicon-fast-backward          { &:before { content: "\e070"; } } +.glyphicon-backward               { &:before { content: "\e071"; } } +.glyphicon-play                   { &:before { content: "\e072"; } } +.glyphicon-pause                  { &:before { content: "\e073"; } } +.glyphicon-stop                   { &:before { content: "\e074"; } } +.glyphicon-forward                { &:before { content: "\e075"; } } +.glyphicon-fast-forward           { &:before { content: "\e076"; } } +.glyphicon-step-forward           { &:before { content: "\e077"; } } +.glyphicon-eject                  { &:before { content: "\e078"; } } +.glyphicon-chevron-left           { &:before { content: "\e079"; } } +.glyphicon-chevron-right          { &:before { content: "\e080"; } } +.glyphicon-plus-sign              { &:before { content: "\e081"; } } +.glyphicon-minus-sign             { &:before { content: "\e082"; } } +.glyphicon-remove-sign            { &:before { content: "\e083"; } } +.glyphicon-ok-sign                { &:before { content: "\e084"; } } +.glyphicon-question-sign          { &:before { content: "\e085"; } } +.glyphicon-info-sign              { &:before { content: "\e086"; } } +.glyphicon-screenshot             { &:before { content: "\e087"; } } +.glyphicon-remove-circle          { &:before { content: "\e088"; } } +.glyphicon-ok-circle              { &:before { content: "\e089"; } } +.glyphicon-ban-circle             { &:before { content: "\e090"; } } +.glyphicon-arrow-left             { &:before { content: "\e091"; } } +.glyphicon-arrow-right            { &:before { content: "\e092"; } } +.glyphicon-arrow-up               { &:before { content: "\e093"; } } +.glyphicon-arrow-down             { &:before { content: "\e094"; } } +.glyphicon-share-alt              { &:before { content: "\e095"; } } +.glyphicon-resize-full            { &:before { content: "\e096"; } } +.glyphicon-resize-small           { &:before { content: "\e097"; } } +.glyphicon-exclamation-sign       { &:before { content: "\e101"; } } +.glyphicon-gift                   { &:before { content: "\e102"; } } +.glyphicon-leaf                   { &:before { content: "\e103"; } } +.glyphicon-fire                   { &:before { content: "\e104"; } } +.glyphicon-eye-open               { &:before { content: "\e105"; } } +.glyphicon-eye-close              { &:before { content: "\e106"; } } +.glyphicon-warning-sign           { &:before { content: "\e107"; } } +.glyphicon-plane                  { &:before { content: "\e108"; } } +.glyphicon-calendar               { &:before { content: "\e109"; } } +.glyphicon-random                 { &:before { content: "\e110"; } } +.glyphicon-comment                { &:before { content: "\e111"; } } +.glyphicon-magnet                 { &:before { content: "\e112"; } } +.glyphicon-chevron-up             { &:before { content: "\e113"; } } +.glyphicon-chevron-down           { &:before { content: "\e114"; } } +.glyphicon-retweet                { &:before { content: "\e115"; } } +.glyphicon-shopping-cart          { &:before { content: "\e116"; } } +.glyphicon-folder-close           { &:before { content: "\e117"; } } +.glyphicon-folder-open            { &:before { content: "\e118"; } } +.glyphicon-resize-vertical        { &:before { content: "\e119"; } } +.glyphicon-resize-horizontal      { &:before { content: "\e120"; } } +.glyphicon-hdd                    { &:before { content: "\e121"; } } +.glyphicon-bullhorn               { &:before { content: "\e122"; } } +.glyphicon-bell                   { &:before { content: "\e123"; } } +.glyphicon-certificate            { &:before { content: "\e124"; } } +.glyphicon-thumbs-up              { &:before { content: "\e125"; } } +.glyphicon-thumbs-down            { &:before { content: "\e126"; } } +.glyphicon-hand-right             { &:before { content: "\e127"; } } +.glyphicon-hand-left              { &:before { content: "\e128"; } } +.glyphicon-hand-up                { &:before { content: "\e129"; } } +.glyphicon-hand-down              { &:before { content: "\e130"; } } +.glyphicon-circle-arrow-right     { &:before { content: "\e131"; } } +.glyphicon-circle-arrow-left      { &:before { content: "\e132"; } } +.glyphicon-circle-arrow-up        { &:before { content: "\e133"; } } +.glyphicon-circle-arrow-down      { &:before { content: "\e134"; } } +.glyphicon-globe                  { &:before { content: "\e135"; } } +.glyphicon-wrench                 { &:before { content: "\e136"; } } +.glyphicon-tasks                  { &:before { content: "\e137"; } } +.glyphicon-filter                 { &:before { content: "\e138"; } } +.glyphicon-briefcase              { &:before { content: "\e139"; } } +.glyphicon-fullscreen             { &:before { content: "\e140"; } } +.glyphicon-dashboard              { &:before { content: "\e141"; } } +.glyphicon-paperclip              { &:before { content: "\e142"; } } +.glyphicon-heart-empty            { &:before { content: "\e143"; } } +.glyphicon-link                   { &:before { content: "\e144"; } } +.glyphicon-phone                  { &:before { content: "\e145"; } } +.glyphicon-pushpin                { &:before { content: "\e146"; } } +.glyphicon-usd                    { &:before { content: "\e148"; } } +.glyphicon-gbp                    { &:before { content: "\e149"; } } +.glyphicon-sort                   { &:before { content: "\e150"; } } +.glyphicon-sort-by-alphabet       { &:before { content: "\e151"; } } +.glyphicon-sort-by-alphabet-alt   { &:before { content: "\e152"; } } +.glyphicon-sort-by-order          { &:before { content: "\e153"; } } +.glyphicon-sort-by-order-alt      { &:before { content: "\e154"; } } +.glyphicon-sort-by-attributes     { &:before { content: "\e155"; } } +.glyphicon-sort-by-attributes-alt { &:before { content: "\e156"; } } +.glyphicon-unchecked              { &:before { content: "\e157"; } } +.glyphicon-expand                 { &:before { content: "\e158"; } } +.glyphicon-collapse-down          { &:before { content: "\e159"; } } +.glyphicon-collapse-up            { &:before { content: "\e160"; } } +.glyphicon-log-in                 { &:before { content: "\e161"; } } +.glyphicon-flash                  { &:before { content: "\e162"; } } +.glyphicon-log-out                { &:before { content: "\e163"; } } +.glyphicon-new-window             { &:before { content: "\e164"; } } +.glyphicon-record                 { &:before { content: "\e165"; } } +.glyphicon-save                   { &:before { content: "\e166"; } } +.glyphicon-open                   { &:before { content: "\e167"; } } +.glyphicon-saved                  { &:before { content: "\e168"; } } +.glyphicon-import                 { &:before { content: "\e169"; } } +.glyphicon-export                 { &:before { content: "\e170"; } } +.glyphicon-send                   { &:before { content: "\e171"; } } +.glyphicon-floppy-disk            { &:before { content: "\e172"; } } +.glyphicon-floppy-saved           { &:before { content: "\e173"; } } +.glyphicon-floppy-remove          { &:before { content: "\e174"; } } +.glyphicon-floppy-save            { &:before { content: "\e175"; } } +.glyphicon-floppy-open            { &:before { content: "\e176"; } } +.glyphicon-credit-card            { &:before { content: "\e177"; } } +.glyphicon-transfer               { &:before { content: "\e178"; } } +.glyphicon-cutlery                { &:before { content: "\e179"; } } +.glyphicon-header                 { &:before { content: "\e180"; } } +.glyphicon-compressed             { &:before { content: "\e181"; } } +.glyphicon-earphone               { &:before { content: "\e182"; } } +.glyphicon-phone-alt              { &:before { content: "\e183"; } } +.glyphicon-tower                  { &:before { content: "\e184"; } } +.glyphicon-stats                  { &:before { content: "\e185"; } } +.glyphicon-sd-video               { &:before { content: "\e186"; } } +.glyphicon-hd-video               { &:before { content: "\e187"; } } +.glyphicon-subtitles              { &:before { content: "\e188"; } } +.glyphicon-sound-stereo           { &:before { content: "\e189"; } } +.glyphicon-sound-dolby            { &:before { content: "\e190"; } } +.glyphicon-sound-5-1              { &:before { content: "\e191"; } } +.glyphicon-sound-6-1              { &:before { content: "\e192"; } } +.glyphicon-sound-7-1              { &:before { content: "\e193"; } } +.glyphicon-copyright-mark         { &:before { content: "\e194"; } } +.glyphicon-registration-mark      { &:before { content: "\e195"; } } +.glyphicon-cloud-download         { &:before { content: "\e197"; } } +.glyphicon-cloud-upload           { &:before { content: "\e198"; } } +.glyphicon-tree-conifer           { &:before { content: "\e199"; } } +.glyphicon-tree-deciduous         { &:before { content: "\e200"; } } diff --git a/bower_components/bootstrap/less/grid.less b/bower_components/bootstrap/less/grid.less new file mode 100644 index 0000000..e100655 --- /dev/null +++ b/bower_components/bootstrap/less/grid.less @@ -0,0 +1,84 @@ +// +// 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); +} diff --git a/bower_components/bootstrap/less/input-groups.less b/bower_components/bootstrap/less/input-groups.less new file mode 100644 index 0000000..a111474 --- /dev/null +++ b/bower_components/bootstrap/less/input-groups.less @@ -0,0 +1,162 @@ +// +// Input groups +// -------------------------------------------------- + +// Base styles +// ------------------------- +.input-group { +  position: relative; // For dropdowns +  display: table; +  border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table + +  // Undo padding and float of grid classes +  &[class*="col-"] { +    float: none; +    padding-left: 0; +    padding-right: 0; +  } + +  .form-control { +    // Ensure that the input is always above the *appended* addon button for +    // proper border colors. +    position: relative; +    z-index: 2; + +    // IE9 fubars the placeholder attribute in text inputs and the arrows on +    // select elements in input groups. To fix it, we float the input. Details: +    // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855 +    float: left; + +    width: 100%; +    margin-bottom: 0; +  } +} + +// Sizing options +// +// Remix the default form control sizing classes into new ones for easier +// manipulation. + +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { .input-lg(); } +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { .input-sm(); } + + +// Display as table-cell +// ------------------------- +.input-group-addon, +.input-group-btn, +.input-group .form-control { +  display: table-cell; + +  &:not(:first-child):not(:last-child) { +    border-radius: 0; +  } +} +// Addon and addon wrapper for buttons +.input-group-addon, +.input-group-btn { +  width: 1%; +  white-space: nowrap; +  vertical-align: middle; // Match the inputs +} + +// Text input groups +// ------------------------- +.input-group-addon { +  padding: @padding-base-vertical @padding-base-horizontal; +  font-size: @font-size-base; +  font-weight: normal; +  line-height: 1; +  color: @input-color; +  text-align: center; +  background-color: @input-group-addon-bg; +  border: 1px solid @input-group-addon-border-color; +  border-radius: @border-radius-base; + +  // Sizing +  &.input-sm { +    padding: @padding-small-vertical @padding-small-horizontal; +    font-size: @font-size-small; +    border-radius: @border-radius-small; +  } +  &.input-lg { +    padding: @padding-large-vertical @padding-large-horizontal; +    font-size: @font-size-large; +    border-radius: @border-radius-large; +  } + +  // Nuke default margins from checkboxes and radios to vertically center within. +  input[type="radio"], +  input[type="checkbox"] { +    margin-top: 0; +  } +} + +// Reset rounded corners +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { +  .border-right-radius(0); +} +.input-group-addon:first-child { +  border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { +  .border-left-radius(0); +} +.input-group-addon:last-child { +  border-left: 0; +} + +// Button input groups +// ------------------------- +.input-group-btn { +  position: relative; +  // Jankily prevent input button groups from wrapping with `white-space` and +  // `font-size` in combination with `inline-block` on buttons. +  font-size: 0; +  white-space: nowrap; + +  // Negative margin for spacing, position for bringing hovered/focused/actived +  // element above the siblings. +  > .btn { +    position: relative; +    + .btn { +      margin-left: -1px; +    } +    // Bring the "active" button to the front +    &:hover, +    &:focus, +    &:active { +      z-index: 2; +    } +  } + +  // Negative margin to only have a 1px border between the two +  &:first-child { +    > .btn, +    > .btn-group { +      margin-right: -1px; +    } +  } +  &:last-child { +    > .btn, +    > .btn-group { +      margin-left: -1px; +    } +  } +} diff --git a/bower_components/bootstrap/less/jumbotron.less b/bower_components/bootstrap/less/jumbotron.less new file mode 100644 index 0000000..a15e169 --- /dev/null +++ b/bower_components/bootstrap/less/jumbotron.less @@ -0,0 +1,44 @@ +// +// Jumbotron +// -------------------------------------------------- + + +.jumbotron { +  padding: @jumbotron-padding; +  margin-bottom: @jumbotron-padding; +  color: @jumbotron-color; +  background-color: @jumbotron-bg; + +  h1, +  .h1 { +    color: @jumbotron-heading-color; +  } +  p { +    margin-bottom: (@jumbotron-padding / 2); +    font-size: @jumbotron-font-size; +    font-weight: 200; +  } + +  .container & { +    border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container +  } + +  .container { +    max-width: 100%; +  } + +  @media screen and (min-width: @screen-sm-min) { +    padding-top:    (@jumbotron-padding * 1.6); +    padding-bottom: (@jumbotron-padding * 1.6); + +    .container & { +      padding-left:  (@jumbotron-padding * 2); +      padding-right: (@jumbotron-padding * 2); +    } + +    h1, +    .h1 { +      font-size: (@font-size-base * 4.5); +    } +  } +} diff --git a/bower_components/bootstrap/less/labels.less b/bower_components/bootstrap/less/labels.less new file mode 100644 index 0000000..5db1ed1 --- /dev/null +++ b/bower_components/bootstrap/less/labels.less @@ -0,0 +1,64 @@ +// +// 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 +  &[href] { +    &: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); +} diff --git a/bower_components/bootstrap/less/list-group.less b/bower_components/bootstrap/less/list-group.less new file mode 100644 index 0000000..3343f8e --- /dev/null +++ b/bower_components/bootstrap/less/list-group.less @@ -0,0 +1,110 @@ +// +// List groups +// -------------------------------------------------- + + +// Base class +// +// Easily usable on <ul>, <ol>, or <div>. + +.list-group { +  // No need to set list-style: none; since .list-group-item is block level +  margin-bottom: 20px; +  padding-left: 0; // reset padding because ul and ol +} + + +// Individual list items +// +// Use on `li`s or `div`s within the `.list-group` parent. + +.list-group-item { +  position: relative; +  display: block; +  padding: 10px 15px; +  // Place the border on the list items and negative margin up for better styling +  margin-bottom: -1px; +  background-color: @list-group-bg; +  border: 1px solid @list-group-border; + +  // Round the first and last items +  &:first-child { +    .border-top-radius(@list-group-border-radius); +  } +  &:last-child { +    margin-bottom: 0; +    .border-bottom-radius(@list-group-border-radius); +  } + +  // Align badges within list items +  > .badge { +    float: right; +  } +  > .badge + .badge { +    margin-right: 5px; +  } +} + + +// Linked list items +// +// Use anchor elements instead of `li`s or `div`s to create linked list items. +// Includes an extra `.active` modifier class for showing selected items. + +a.list-group-item { +  color: @list-group-link-color; + +  .list-group-item-heading { +    color: @list-group-link-heading-color; +  } + +  // Hover state +  &:hover, +  &:focus { +    text-decoration: none; +    background-color: @list-group-hover-bg; +  } + +  // Active class on item itself, not parent +  &.active, +  &.active:hover, +  &.active:focus { +    z-index: 2; // Place active items above their siblings for proper border styling +    color: @list-group-active-color; +    background-color: @list-group-active-bg; +    border-color: @list-group-active-border; + +    // Force color to inherit for custom content +    .list-group-item-heading { +      color: inherit; +    } +    .list-group-item-text { +      color: @list-group-active-text-color; +    } +  } +} + + +// Contextual variants +// +// Add modifier classes to change text and background color on individual items. +// Organizationally, this must come after the `:hover` states. + +.list-group-item-variant(success; @state-success-bg; @state-success-text); +.list-group-item-variant(info; @state-info-bg; @state-info-text); +.list-group-item-variant(warning; @state-warning-bg; @state-warning-text); +.list-group-item-variant(danger; @state-danger-bg; @state-danger-text); + + +// Custom content options +// +// Extra classes for creating well-formatted content within `.list-group-item`s. + +.list-group-item-heading { +  margin-top: 0; +  margin-bottom: 5px; +} +.list-group-item-text { +  margin-bottom: 0; +  line-height: 1.3; +} diff --git a/bower_components/bootstrap/less/media.less b/bower_components/bootstrap/less/media.less new file mode 100644 index 0000000..5ad22cd --- /dev/null +++ b/bower_components/bootstrap/less/media.less @@ -0,0 +1,56 @@ +// Media objects +// Source: http://stubbornella.org/content/?p=497 +// -------------------------------------------------- + + +// Common styles +// ------------------------- + +// Clear the floats +.media, +.media-body { +  overflow: hidden; +  zoom: 1; +} + +// Proper spacing between instances of .media +.media, +.media .media { +  margin-top: 15px; +} +.media:first-child { +  margin-top: 0; +} + +// For images and videos, set to block +.media-object { +  display: block; +} + +// Reset margins on headings for tighter default spacing +.media-heading { +  margin: 0 0 5px; +} + + +// Media image alignment +// ------------------------- + +.media { +  > .pull-left { +    margin-right: 10px; +  } +  > .pull-right { +    margin-left: 10px; +  } +} + + +// Media list variation +// ------------------------- + +// Undo default ul/ol styles +.media-list { +  padding-left: 0; +  list-style: none; +} diff --git a/bower_components/bootstrap/less/mixins.less b/bower_components/bootstrap/less/mixins.less new file mode 100644 index 0000000..71723db --- /dev/null +++ b/bower_components/bootstrap/less/mixins.less @@ -0,0 +1,929 @@ +// +// Mixins +// -------------------------------------------------- + + +// Utilities +// ------------------------- + +// Clearfix +// Source: http://nicolasgallagher.com/micro-clearfix-hack/ +// +// For modern browsers +// 1. The space content is one way to avoid an Opera bug when the +//    contenteditable attribute is included anywhere else in the document. +//    Otherwise it causes space to appear at the top and bottom of elements +//    that are clearfixed. +// 2. The use of `table` rather than `block` is only necessary if using +//    `:before` to contain the top-margins of child elements. +.clearfix() { +  &:before, +  &:after { +    content: " "; // 1 +    display: table; // 2 +  } +  &:after { +    clear: both; +  } +} + +// WebKit-style focus +.tab-focus() { +  // Default +  outline: thin dotted; +  // WebKit +  outline: 5px auto -webkit-focus-ring-color; +  outline-offset: -2px; +} + +// Center-align a block level element +.center-block() { +  display: block; +  margin-left: auto; +  margin-right: auto; +} + +// Sizing shortcuts +.size(@width; @height) { +  width: @width; +  height: @height; +} +.square(@size) { +  .size(@size; @size); +} + +// Placeholder text +.placeholder(@color: @input-color-placeholder) { +  &::-moz-placeholder           { color: @color;   // Firefox +                                  opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526 +  &:-ms-input-placeholder       { color: @color; } // Internet Explorer 10+ +  &::-webkit-input-placeholder  { color: @color; } // Safari and Chrome +} + +// Text overflow +// Requires inline-block or block for proper styling +.text-overflow() { +  overflow: hidden; +  text-overflow: ellipsis; +  white-space: nowrap; +} + +// CSS image replacement +// +// Heads up! v3 launched with with only `.hide-text()`, but per our pattern for +// mixins being reused as classes with the same name, this doesn't hold up. As +// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. Note +// that we cannot chain the mixins together in Less, so they are repeated. +// +// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757 + +// Deprecated as of v3.0.1 (will be removed in v4) +.hide-text() { +  font: ~"0/0" a; +  color: transparent; +  text-shadow: none; +  background-color: transparent; +  border: 0; +} +// New mixin to use as of v3.0.1 +.text-hide() { +  .hide-text(); +} + + + +// CSS3 PROPERTIES +// -------------------------------------------------- + +// Single side border-radius +.border-top-radius(@radius) { +  border-top-right-radius: @radius; +   border-top-left-radius: @radius; +} +.border-right-radius(@radius) { +  border-bottom-right-radius: @radius; +     border-top-right-radius: @radius; +} +.border-bottom-radius(@radius) { +  border-bottom-right-radius: @radius; +   border-bottom-left-radius: @radius; +} +.border-left-radius(@radius) { +  border-bottom-left-radius: @radius; +     border-top-left-radius: @radius; +} + +// Drop shadows +// +// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's +//   supported browsers that have box shadow capabilities now support the +//   standard `box-shadow` property. +.box-shadow(@shadow) { +  -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1 +          box-shadow: @shadow; +} + +// Transitions +.transition(@transition) { +  -webkit-transition: @transition; +          transition: @transition; +} +.transition-property(@transition-property) { +  -webkit-transition-property: @transition-property; +          transition-property: @transition-property; +} +.transition-delay(@transition-delay) { +  -webkit-transition-delay: @transition-delay; +          transition-delay: @transition-delay; +} +.transition-duration(@transition-duration) { +  -webkit-transition-duration: @transition-duration; +          transition-duration: @transition-duration; +} +.transition-transform(@transition) { +  -webkit-transition: -webkit-transform @transition; +     -moz-transition: -moz-transform @transition; +       -o-transition: -o-transform @transition; +          transition: transform @transition; +} + +// Transformations +.rotate(@degrees) { +  -webkit-transform: rotate(@degrees); +      -ms-transform: rotate(@degrees); // IE9 only +          transform: rotate(@degrees); +} +.scale(@ratio; @ratio-y...) { +  -webkit-transform: scale(@ratio, @ratio-y); +      -ms-transform: scale(@ratio, @ratio-y); // IE9 only +          transform: scale(@ratio, @ratio-y); +} +.translate(@x; @y) { +  -webkit-transform: translate(@x, @y); +      -ms-transform: translate(@x, @y); // IE9 only +          transform: translate(@x, @y); +} +.skew(@x; @y) { +  -webkit-transform: skew(@x, @y); +      -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+ +          transform: skew(@x, @y); +} +.translate3d(@x; @y; @z) { +  -webkit-transform: translate3d(@x, @y, @z); +          transform: translate3d(@x, @y, @z); +} + +.rotateX(@degrees) { +  -webkit-transform: rotateX(@degrees); +      -ms-transform: rotateX(@degrees); // IE9 only +          transform: rotateX(@degrees); +} +.rotateY(@degrees) { +  -webkit-transform: rotateY(@degrees); +      -ms-transform: rotateY(@degrees); // IE9 only +          transform: rotateY(@degrees); +} +.perspective(@perspective) { +  -webkit-perspective: @perspective; +     -moz-perspective: @perspective; +          perspective: @perspective; +} +.perspective-origin(@perspective) { +  -webkit-perspective-origin: @perspective; +     -moz-perspective-origin: @perspective; +          perspective-origin: @perspective; +} +.transform-origin(@origin) { +  -webkit-transform-origin: @origin; +     -moz-transform-origin: @origin; +      -ms-transform-origin: @origin; // IE9 only +          transform-origin: @origin; +} + +// Animations +.animation(@animation) { +  -webkit-animation: @animation; +          animation: @animation; +} +.animation-name(@name) { +  -webkit-animation-name: @name; +          animation-name: @name; +} +.animation-duration(@duration) { +  -webkit-animation-duration: @duration; +          animation-duration: @duration; +} +.animation-timing-function(@timing-function) { +  -webkit-animation-timing-function: @timing-function; +          animation-timing-function: @timing-function; +} +.animation-delay(@delay) { +  -webkit-animation-delay: @delay; +          animation-delay: @delay; +} +.animation-iteration-count(@iteration-count) { +  -webkit-animation-iteration-count: @iteration-count; +          animation-iteration-count: @iteration-count; +} +.animation-direction(@direction) { +  -webkit-animation-direction: @direction; +          animation-direction: @direction; +} + +// Backface visibility +// Prevent browsers from flickering when using CSS 3D transforms. +// Default value is `visible`, but can be changed to `hidden` +.backface-visibility(@visibility){ +  -webkit-backface-visibility: @visibility; +     -moz-backface-visibility: @visibility; +          backface-visibility: @visibility; +} + +// 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; // IE10+ +          user-select: @select; +} + +// Resize anything +.resizable(@direction) { +  resize: @direction; // Options: horizontal, vertical, both +  overflow: auto; // Safari fix +} + +// CSS3 Content Columns +.content-columns(@column-count; @column-gap: @grid-gutter-width) { +  -webkit-column-count: @column-count; +     -moz-column-count: @column-count; +          column-count: @column-count; +  -webkit-column-gap: @column-gap; +     -moz-column-gap: @column-gap; +          column-gap: @column-gap; +} + +// Optional hyphenation +.hyphens(@mode: auto) { +  word-wrap: break-word; +  -webkit-hyphens: @mode; +     -moz-hyphens: @mode; +      -ms-hyphens: @mode; // IE10+ +       -o-hyphens: @mode; +          hyphens: @mode; +} + +// Opacity +.opacity(@opacity) { +  opacity: @opacity; +  // IE8 filter +  @opacity-ie: (@opacity * 100); +  filter: ~"alpha(opacity=@{opacity-ie})"; +} + + + +// GRADIENTS +// -------------------------------------------------- + +#gradient { + +  // Horizontal gradient, from left to right +  // +  // Creates two color stops, start and end, by specifying a color and position for each color stop. +  // Color stops are not available in IE9 and below. +  .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) { +    background-image: -webkit-linear-gradient(left, color-stop(@start-color @start-percent), color-stop(@end-color @end-percent)); // Safari 5.1-6, Chrome 10+ +    background-image:  linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ +    background-repeat: repeat-x; +    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down +  } + +  // Vertical gradient, from top to bottom +  // +  // Creates two color stops, start and end, by specifying a color and position for each color stop. +  // Color stops are not available in IE9 and below. +  .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) { +    background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent);  // Safari 5.1-6, Chrome 10+ +    background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ +    background-repeat: repeat-x; +    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down +  } + +  .directional(@start-color: #555; @end-color: #333; @deg: 45deg) { +    background-repeat: repeat-x; +    background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+ +    background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ +  } +  .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) { +    background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color); +    background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color); +    background-repeat: no-repeat; +    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback +  } +  .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) { +    background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color); +    background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color); +    background-repeat: no-repeat; +    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback +  } +  .radial(@inner-color: #555; @outer-color: #333) { +    background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color); +    background-image: radial-gradient(circle, @inner-color, @outer-color); +    background-repeat: no-repeat; +  } +  .striped(@color: rgba(255,255,255,.15); @angle: 45deg) { +    background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); +    background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); +  } +} + +// Reset filters for IE +// +// When you need to remove a gradient background, do not forget to use this to reset +// the IE filter for IE9 and below. +.reset-filter() { +  filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)")); +} + + + +// Retina images +// +// Short retina mixin for setting background-image and -size + +.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) { +  background-image: url("@{file-1x}"); + +  @media +  only screen and (-webkit-min-device-pixel-ratio: 2), +  only screen and (   min--moz-device-pixel-ratio: 2), +  only screen and (     -o-min-device-pixel-ratio: 2/1), +  only screen and (        min-device-pixel-ratio: 2), +  only screen and (                min-resolution: 192dpi), +  only screen and (                min-resolution: 2dppx) { +    background-image: url("@{file-2x}"); +    background-size: @width-1x @height-1x; +  } +} + + +// Responsive image +// +// Keep images from scaling beyond the width of their parents. + +.img-responsive(@display: block) { +  display: @display; +  max-width: 100%; // Part 1: Set a maximum relative to the parent +  height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching +} + + +// COMPONENT MIXINS +// -------------------------------------------------- + +// Horizontal dividers +// ------------------------- +// Dividers (basically an hr) within dropdowns and nav lists +.nav-divider(@color: #e5e5e5) { +  height: 1px; +  margin: ((@line-height-computed / 2) - 1) 0; +  overflow: hidden; +  background-color: @color; +} + +// Panels +// ------------------------- +.panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) { +  border-color: @border; + +  & > .panel-heading { +    color: @heading-text-color; +    background-color: @heading-bg-color; +    border-color: @heading-border; + +    + .panel-collapse .panel-body { +      border-top-color: @border; +    } +  } +  & > .panel-footer { +    + .panel-collapse .panel-body { +      border-bottom-color: @border; +    } +  } +} + +// Alerts +// ------------------------- +.alert-variant(@background; @border; @text-color) { +  background-color: @background; +  border-color: @border; +  color: @text-color; + +  hr { +    border-top-color: darken(@border, 5%); +  } +  .alert-link { +    color: darken(@text-color, 10%); +  } +} + +// Tables +// ------------------------- +.table-row-variant(@state; @background) { +  // Exact selectors below required to override `.table-striped` and prevent +  // inheritance to nested tables. +  .table > thead > tr, +  .table > tbody > tr, +  .table > tfoot > tr { +    > td.@{state}, +    > th.@{state}, +    &.@{state} > td, +    &.@{state} > th { +      background-color: @background; +    } +  } + +  // Hover states for `.table-hover` +  // Note: this is not available for cells or rows within `thead` or `tfoot`. +  .table-hover > tbody > tr { +    > td.@{state}:hover, +    > th.@{state}:hover, +    &.@{state}:hover > td, +    &.@{state}:hover > th { +      background-color: darken(@background, 5%); +    } +  } +} + +// List Groups +// ------------------------- +.list-group-item-variant(@state; @background; @color) { +  .list-group-item-@{state} { +    color: @color; +    background-color: @background; + +    a& { +      color: @color; + +      .list-group-item-heading { color: inherit; } + +      &:hover, +      &:focus { +        color: @color; +        background-color: darken(@background, 5%); +      } +      &.active, +      &.active:hover, +      &.active:focus { +        color: #fff; +        background-color: @color; +        border-color: @color; +      } +    } +  } +} + +// Button variants +// ------------------------- +// Easily pump out default styles, as well as :hover, :focus, :active, +// and disabled options for all buttons +.button-variant(@color; @background; @border) { +  color: @color; +  background-color: @background; +  border-color: @border; + +  &:hover, +  &:focus, +  &:active, +  &.active, +  .open .dropdown-toggle& { +    color: @color; +    background-color: darken(@background, 8%); +        border-color: darken(@border, 12%); +  } +  &:active, +  &.active, +  .open .dropdown-toggle& { +    background-image: none; +  } +  &.disabled, +  &[disabled], +  fieldset[disabled] & { +    &, +    &:hover, +    &:focus, +    &:active, +    &.active { +      background-color: @background; +          border-color: @border; +    } +  } + +  .badge { +    color: @background; +    background-color: @color; +  } +} + +// Button sizes +// ------------------------- +.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { +  padding: @padding-vertical @padding-horizontal; +  font-size: @font-size; +  line-height: @line-height; +  border-radius: @border-radius; +} + +// Pagination +// ------------------------- +.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @border-radius) { +  > li { +    > a, +    > span { +      padding: @padding-vertical @padding-horizontal; +      font-size: @font-size; +    } +    &:first-child { +      > a, +      > span { +        .border-left-radius(@border-radius); +      } +    } +    &:last-child { +      > a, +      > span { +        .border-right-radius(@border-radius); +      } +    } +  } +} + +// Labels +// ------------------------- +.label-variant(@color) { +  background-color: @color; +  &[href] { +    &:hover, +    &:focus { +      background-color: darken(@color, 10%); +    } +  } +} + +// Contextual backgrounds +// ------------------------- +.bg-variant(@color) { +  background-color: @color; +  a&:hover { +    background-color: darken(@color, 10%); +  } +} + +// Typography +// ------------------------- +.text-emphasis-variant(@color) { +  color: @color; +  a&:hover { +    color: darken(@color, 10%); +  } +} + +// Navbar vertical align +// ------------------------- +// Vertically center elements in the navbar. +// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin. +.navbar-vertical-align(@element-height) { +  margin-top: ((@navbar-height - @element-height) / 2); +  margin-bottom: ((@navbar-height - @element-height) / 2); +} + +// Progress bars +// ------------------------- +.progress-bar-variant(@color) { +  background-color: @color; +  .progress-striped & { +    #gradient > .striped(); +  } +} + +// Responsive utilities +// ------------------------- +// More easily include all the states for responsive-utilities.less. +.responsive-visibility() { +  display: block !important; +  table&  { display: table; } +  tr&     { display: table-row !important; } +  th&, +  td&     { display: table-cell !important; } +} + +.responsive-invisibility() { +  display: none !important; +} + + +// Grid System +// ----------- + +// Centered container element +.container-fixed() { +  margin-right: auto; +  margin-left: auto; +  padding-left:  (@grid-gutter-width / 2); +  padding-right: (@grid-gutter-width / 2); +  &:extend(.clearfix all); +} + +// Creates a wrapper for a series of columns +.make-row(@gutter: @grid-gutter-width) { +  margin-left:  (@gutter / -2); +  margin-right: (@gutter / -2); +  &:extend(.clearfix all); +} + +// Generate the extra small columns +.make-xs-column(@columns; @gutter: @grid-gutter-width) { +  position: relative; +  float: left; +  width: percentage((@columns / @grid-columns)); +  min-height: 1px; +  padding-left:  (@gutter / 2); +  padding-right: (@gutter / 2); +} +.make-xs-column-offset(@columns) { +  @media (min-width: @screen-xs-min) { +    margin-left: percentage((@columns / @grid-columns)); +  } +} +.make-xs-column-push(@columns) { +  @media (min-width: @screen-xs-min) { +    left: percentage((@columns / @grid-columns)); +  } +} +.make-xs-column-pull(@columns) { +  @media (min-width: @screen-xs-min) { +    right: percentage((@columns / @grid-columns)); +  } +} + + +// Generate the small columns +.make-sm-column(@columns; @gutter: @grid-gutter-width) { +  position: relative; +  min-height: 1px; +  padding-left:  (@gutter / 2); +  padding-right: (@gutter / 2); + +  @media (min-width: @screen-sm-min) { +    float: left; +    width: percentage((@columns / @grid-columns)); +  } +} +.make-sm-column-offset(@columns) { +  @media (min-width: @screen-sm-min) { +    margin-left: percentage((@columns / @grid-columns)); +  } +} +.make-sm-column-push(@columns) { +  @media (min-width: @screen-sm-min) { +    left: percentage((@columns / @grid-columns)); +  } +} +.make-sm-column-pull(@columns) { +  @media (min-width: @screen-sm-min) { +    right: percentage((@columns / @grid-columns)); +  } +} + + +// Generate the medium columns +.make-md-column(@columns; @gutter: @grid-gutter-width) { +  position: relative; +  min-height: 1px; +  padding-left:  (@gutter / 2); +  padding-right: (@gutter / 2); + +  @media (min-width: @screen-md-min) { +    float: left; +    width: percentage((@columns / @grid-columns)); +  } +} +.make-md-column-offset(@columns) { +  @media (min-width: @screen-md-min) { +    margin-left: percentage((@columns / @grid-columns)); +  } +} +.make-md-column-push(@columns) { +  @media (min-width: @screen-md-min) { +    left: percentage((@columns / @grid-columns)); +  } +} +.make-md-column-pull(@columns) { +  @media (min-width: @screen-md-min) { +    right: percentage((@columns / @grid-columns)); +  } +} + + +// Generate the large columns +.make-lg-column(@columns; @gutter: @grid-gutter-width) { +  position: relative; +  min-height: 1px; +  padding-left:  (@gutter / 2); +  padding-right: (@gutter / 2); + +  @media (min-width: @screen-lg-min) { +    float: left; +    width: percentage((@columns / @grid-columns)); +  } +} +.make-lg-column-offset(@columns) { +  @media (min-width: @screen-lg-min) { +    margin-left: percentage((@columns / @grid-columns)); +  } +} +.make-lg-column-push(@columns) { +  @media (min-width: @screen-lg-min) { +    left: percentage((@columns / @grid-columns)); +  } +} +.make-lg-column-pull(@columns) { +  @media (min-width: @screen-lg-min) { +    right: percentage((@columns / @grid-columns)); +  } +} + + +// Framework grid generation +// +// Used only by Bootstrap to generate the correct number of grid classes given +// any value of `@grid-columns`. + +.make-grid-columns() { +  // Common styles for all sizes of grid columns, widths 1-12 +  .col(@index) when (@index = 1) { // initial +    @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}"; +    .col((@index + 1), @item); +  } +  .col(@index, @list) when (@index =< @grid-columns) { // general; "=<" isn't a typo +    @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}"; +    .col((@index + 1), ~"@{list}, @{item}"); +  } +  .col(@index, @list) when (@index > @grid-columns) { // terminal +    @{list} { +      position: relative; +      // Prevent columns from collapsing when empty +      min-height: 1px; +      // Inner gutter via padding +      padding-left:  (@grid-gutter-width / 2); +      padding-right: (@grid-gutter-width / 2); +    } +  } +  .col(1); // kickstart it +} + +.float-grid-columns(@class) { +  .col(@index) when (@index = 1) { // initial +    @item: ~".col-@{class}-@{index}"; +    .col((@index + 1), @item); +  } +  .col(@index, @list) when (@index =< @grid-columns) { // general +    @item: ~".col-@{class}-@{index}"; +    .col((@index + 1), ~"@{list}, @{item}"); +  } +  .col(@index, @list) when (@index > @grid-columns) { // terminal +    @{list} { +      float: left; +    } +  } +  .col(1); // kickstart it +} + +.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) { +  .col-@{class}-@{index} { +    width: percentage((@index / @grid-columns)); +  } +} +.calc-grid-column(@index, @class, @type) when (@type = push) { +  .col-@{class}-push-@{index} { +    left: percentage((@index / @grid-columns)); +  } +} +.calc-grid-column(@index, @class, @type) when (@type = pull) { +  .col-@{class}-pull-@{index} { +    right: percentage((@index / @grid-columns)); +  } +} +.calc-grid-column(@index, @class, @type) when (@type = offset) { +  .col-@{class}-offset-@{index} { +    margin-left: percentage((@index / @grid-columns)); +  } +} + +// Basic looping in LESS +.loop-grid-columns(@index, @class, @type) when (@index >= 0) { +  .calc-grid-column(@index, @class, @type); +  // next iteration +  .loop-grid-columns((@index - 1), @class, @type); +} + +// Create grid for specific class +.make-grid(@class) { +  .float-grid-columns(@class); +  .loop-grid-columns(@grid-columns, @class, width); +  .loop-grid-columns(@grid-columns, @class, pull); +  .loop-grid-columns(@grid-columns, @class, push); +  .loop-grid-columns(@grid-columns, @class, offset); +} + +// Form validation states +// +// Used in forms.less to generate the form validation CSS for warnings, errors, +// and successes. + +.form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) { +  // Color the label and help text +  .help-block, +  .control-label, +  .radio, +  .checkbox, +  .radio-inline, +  .checkbox-inline  { +    color: @text-color; +  } +  // Set the border and box shadow on specific inputs to match +  .form-control { +    border-color: @border-color; +    .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work +    &:focus { +      border-color: darken(@border-color, 10%); +      @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%); +      .box-shadow(@shadow); +    } +  } +  // Set validation states also for addons +  .input-group-addon { +    color: @text-color; +    border-color: @border-color; +    background-color: @background-color; +  } +  // Optional feedback icon +  .form-control-feedback { +    color: @text-color; +  } +} + +// Form control focus state +// +// Generate a customized focus state and for any input with the specified color, +// which defaults to the `@input-focus-border` variable. +// +// We highly encourage you to not customize the default value, but instead use +// this to tweak colors on an as-needed basis. This aesthetic change is based on +// WebKit's default styles, but applicable to a wider range of browsers. Its +// usability and accessibility should be taken into account with any change. +// +// Example usage: change the default blue border and shadow to white for better +// contrast against a dark gray background. + +.form-control-focus(@color: @input-border-focus) { +  @color-rgba: rgba(red(@color), green(@color), blue(@color), .6); +  &:focus { +    border-color: @color; +    outline: 0; +    .box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}"); +  } +} + +// Form control sizing +// +// Relative text size, padding, and border-radii changes for form controls. For +// horizontal sizing, wrap controls in the predefined grid classes. `<select>` +// element gets special love because it's special, and that's a fact! + +.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { +  height: @input-height; +  padding: @padding-vertical @padding-horizontal; +  font-size: @font-size; +  line-height: @line-height; +  border-radius: @border-radius; + +  select& { +    height: @input-height; +    line-height: @input-height; +  } + +  textarea&, +  select[multiple]& { +    height: auto; +  } +} diff --git a/bower_components/bootstrap/less/modals.less b/bower_components/bootstrap/less/modals.less new file mode 100644 index 0000000..21cdee0 --- /dev/null +++ b/bower_components/bootstrap/less/modals.less @@ -0,0 +1,139 @@ +// +// 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: auto; +  overflow-y: scroll; +  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)} +} + +// 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: none; +} + +// Modal background +.modal-backdrop { +  position: fixed; +  top: 0; +  right: 0; +  bottom: 0; +  left: 0; +  z-index: @zindex-modal-background; +  background-color: @modal-backdrop-bg; +  // Fade for backdrop +  &.fade { .opacity(0); } +  &.in { .opacity(@modal-backdrop-opacity); } +} + +// Modal header +// Top section of the modal w/ title and dismiss +.modal-header { +  padding: @modal-title-padding; +  border-bottom: 1px solid @modal-header-border-color; +  min-height: (@modal-title-padding + @modal-title-line-height); +} +// Close icon +.modal-header .close { +  margin-top: -2px; +} + +// Title text within header +.modal-title { +  margin: 0; +  line-height: @modal-title-line-height; +} + +// Modal body +// Where all modal content resides (sibling of .modal-header and .modal-footer) +.modal-body { +  position: relative; +  padding: @modal-inner-padding; +} + +// Footer (for actions) +.modal-footer { +  margin-top: 15px; +  padding: (@modal-inner-padding - 1) @modal-inner-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; +  } +} + +// 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; } +} diff --git a/bower_components/bootstrap/less/navbar.less b/bower_components/bootstrap/less/navbar.less new file mode 100644 index 0000000..8c4c210 --- /dev/null +++ b/bower_components/bootstrap/less/navbar.less @@ -0,0 +1,616 @@ +// +// 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 { +  max-height: @navbar-collapse-max-height; +  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; +    } +  } +} + + +// 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; +  } + +  @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: none; +  } + +  // Bars +  .icon-bar { +    display: block; +    width: 22px; +    height: 2px; +    border-radius: 1px; +  } +  .icon-bar + .icon-bar { +    margin-top: 4px; +  } + +  @media (min-width: @grid-float-breakpoint) { +    display: none; +  } +} + + +// Navbar nav links +// +// Builds on top of the `.nav` components with its own modifier class to make +// the nav the full height of the horizontal nav (above 768px). + +.navbar-nav { +  margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal; + +  > li > a { +    padding-top:    10px; +    padding-bottom: 10px; +    line-height: @line-height-computed; +  } + +  @media (max-width: @grid-float-breakpoint-max) { +    // Dropdowns get custom display when collapsed +    .open .dropdown-menu { +      position: static; +      float: none; +      width: auto; +      margin-top: 0; +      background-color: transparent; +      border: 0; +      box-shadow: none; +      > li > a, +      .dropdown-header { +        padding: 5px 15px 5px 25px; +      } +      > li > a { +        line-height: @line-height-computed; +        &:hover, +        &:focus { +          background-image: none; +        } +      } +    } +  } + +  // Uncollapse the nav +  @media (min-width: @grid-float-breakpoint) { +    float: left; +    margin: 0; + +    > li { +      float: left; +      > a { +        padding-top:    @navbar-padding-vertical; +        padding-bottom: @navbar-padding-vertical; +      } +    } + +    &.navbar-right:last-child { +      margin-right: -@navbar-padding-horizontal; +    } +  } +} + + +// Component alignment +// +// Repurpose the pull utilities as their own navbar utilities to avoid specificity +// issues with parents and chaining. Only do this when the navbar is uncollapsed +// though so that navbar contents properly stack and align in mobile. + +@media (min-width: @grid-float-breakpoint) { +  .navbar-left  { .pull-left(); } +  .navbar-right { .pull-right(); } +} + + +// Navbar form +// +// Extension of the `.form-inline` with some extra flavor for optimum display in +// our navbars. + +.navbar-form { +  margin-left: -@navbar-padding-horizontal; +  margin-right: -@navbar-padding-horizontal; +  padding: 10px @navbar-padding-horizontal; +  border-top: 1px solid transparent; +  border-bottom: 1px solid transparent; +  @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); +  .box-shadow(@shadow); + +  // Mixin behavior for optimum display +  .form-inline(); + +  .form-group { +    @media (max-width: @grid-float-breakpoint-max) { +      margin-bottom: 5px; +    } +  } + +  // Vertically center in expanded, horizontal navbar +  .navbar-vertical-align(@input-height-base); + +  // Undo 100% width for pull classes +  @media (min-width: @grid-float-breakpoint) { +    width: auto; +    border: 0; +    margin-left: 0; +    margin-right: 0; +    padding-top: 0; +    padding-bottom: 0; +    .box-shadow(none); + +    // Outdent the form if last child to line up with content down the page +    &.navbar-right:last-child { +      margin-right: -@navbar-padding-horizontal; +    } +  } +} + + +// Dropdown menus + +// Menu position and menu carets +.navbar-nav > li > .dropdown-menu { +  margin-top: 0; +  .border-top-radius(0); +} +// Menu position and menu caret support for dropups via extra dropup class +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { +  .border-bottom-radius(0); +} + + +// Buttons in navbars +// +// Vertically center a button within a navbar (when *not* in a form). + +.navbar-btn { +  .navbar-vertical-align(@input-height-base); + +  &.btn-sm { +    .navbar-vertical-align(@input-height-small); +  } +  &.btn-xs { +    .navbar-vertical-align(22); +  } +} + + +// Text in navbars +// +// Add a class to make any element properly align itself vertically within the navbars. + +.navbar-text { +  .navbar-vertical-align(@line-height-computed); + +  @media (min-width: @grid-float-breakpoint) { +    float: left; +    margin-left: @navbar-padding-horizontal; +    margin-right: @navbar-padding-horizontal; + +    // Outdent the form if last child to line up with content down the page +    &.navbar-right:last-child { +      margin-right: 0; +    } +  } +} + +// Alternate navbars +// -------------------------------------------------- + +// Default navbar +.navbar-default { +  background-color: @navbar-default-bg; +  border-color: @navbar-default-border; + +  .navbar-brand { +    color: @navbar-default-brand-color; +    &:hover, +    &:focus { +      color: @navbar-default-brand-hover-color; +      background-color: @navbar-default-brand-hover-bg; +    } +  } + +  .navbar-text { +    color: @navbar-default-color; +  } + +  .navbar-nav { +    > li > a { +      color: @navbar-default-link-color; + +      &:hover, +      &:focus { +        color: @navbar-default-link-hover-color; +        background-color: @navbar-default-link-hover-bg; +      } +    } +    > .active > a { +      &, +      &:hover, +      &:focus { +        color: @navbar-default-link-active-color; +        background-color: @navbar-default-link-active-bg; +      } +    } +    > .disabled > a { +      &, +      &:hover, +      &:focus { +        color: @navbar-default-link-disabled-color; +        background-color: @navbar-default-link-disabled-bg; +      } +    } +  } + +  .navbar-toggle { +    border-color: @navbar-default-toggle-border-color; +    &:hover, +    &:focus { +      background-color: @navbar-default-toggle-hover-bg; +    } +    .icon-bar { +      background-color: @navbar-default-toggle-icon-bar-bg; +    } +  } + +  .navbar-collapse, +  .navbar-form { +    border-color: @navbar-default-border; +  } + +  // Dropdown menu items +  .navbar-nav { +    // Remove background color from open dropdown +    > .open > a { +      &, +      &:hover, +      &:focus { +        background-color: @navbar-default-link-active-bg; +        color: @navbar-default-link-active-color; +      } +    } + +    @media (max-width: @grid-float-breakpoint-max) { +      // Dropdowns get custom display when collapsed +      .open .dropdown-menu { +        > li > a { +          color: @navbar-default-link-color; +          &:hover, +          &:focus { +            color: @navbar-default-link-hover-color; +            background-color: @navbar-default-link-hover-bg; +          } +        } +        > .active > a { +          &, +          &:hover, +          &:focus { +            color: @navbar-default-link-active-color; +            background-color: @navbar-default-link-active-bg; +          } +        } +        > .disabled > a { +          &, +          &:hover, +          &:focus { +            color: @navbar-default-link-disabled-color; +            background-color: @navbar-default-link-disabled-bg; +          } +        } +      } +    } +  } + + +  // Links in navbars +  // +  // Add a class to ensure links outside the navbar nav are colored correctly. + +  .navbar-link { +    color: @navbar-default-link-color; +    &:hover { +      color: @navbar-default-link-hover-color; +    } +  } + +} + +// 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; +    } +  } + +} diff --git a/bower_components/bootstrap/less/navs.less b/bower_components/bootstrap/less/navs.less new file mode 100644 index 0000000..9e729b3 --- /dev/null +++ b/bower_components/bootstrap/less/navs.less @@ -0,0 +1,242 @@ +// +// Navs +// -------------------------------------------------- + + +// Base class +// -------------------------------------------------- + +.nav { +  margin-bottom: 0; +  padding-left: 0; // Override default ul/ol +  list-style: none; +  &:extend(.clearfix all); + +  > li { +    position: relative; +    display: block; + +    > a { +      position: relative; +      display: block; +      padding: @nav-link-padding; +      &:hover, +      &:focus { +        text-decoration: none; +        background-color: @nav-link-hover-bg; +      } +    } + +    // Disabled state sets text to gray and nukes hover/tab effects +    &.disabled > a { +      color: @nav-disabled-link-color; + +      &:hover, +      &:focus { +        color: @nav-disabled-link-hover-color; +        text-decoration: none; +        background-color: transparent; +        cursor: not-allowed; +      } +    } +  } + +  // Open dropdowns +  .open > a { +    &, +    &:hover, +    &:focus { +      background-color: @nav-link-hover-bg; +      border-color: @link-color; +    } +  } + +  // Nav dividers (deprecated with v3.0.1) +  // +  // This should have been removed in v3 with the dropping of `.nav-list`, but +  // we missed it. We don't currently support this anywhere, but in the interest +  // of maintaining backward compatibility in case you use it, it's deprecated. +  .nav-divider { +    .nav-divider(); +  } + +  // Prevent IE8 from misplacing imgs +  // +  // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989 +  > li > a > img { +    max-width: none; +  } +} + + +// Tabs +// ------------------------- + +// Give the tabs something to sit on +.nav-tabs { +  border-bottom: 1px solid @nav-tabs-border-color; +  > li { +    float: left; +    // Make the list-items overlay the bottom border +    margin-bottom: -1px; + +    // Actual tabs (as links) +    > a { +      margin-right: 2px; +      line-height: @line-height-base; +      border: 1px solid transparent; +      border-radius: @border-radius-base @border-radius-base 0 0; +      &:hover { +        border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color; +      } +    } + +    // Active state, and its :hover to override normal :hover +    &.active > a { +      &, +      &:hover, +      &:focus { +        color: @nav-tabs-active-link-hover-color; +        background-color: @nav-tabs-active-link-hover-bg; +        border: 1px solid @nav-tabs-active-link-hover-border-color; +        border-bottom-color: transparent; +        cursor: default; +      } +    } +  } +  // pulling this in mainly for less shorthand +  &.nav-justified { +    .nav-justified(); +    .nav-tabs-justified(); +  } +} + + +// Pills +// ------------------------- +.nav-pills { +  > li { +    float: left; + +    // Links rendered as pills +    > a { +      border-radius: @nav-pills-border-radius; +    } +    + li { +      margin-left: 2px; +    } + +    // Active state +    &.active > a { +      &, +      &:hover, +      &:focus { +        color: @nav-pills-active-link-hover-color; +        background-color: @nav-pills-active-link-hover-bg; +      } +    } +  } +} + + +// Stacked pills +.nav-stacked { +  > li { +    float: none; +    + li { +      margin-top: 2px; +      margin-left: 0; // no need for this gap between nav items +    } +  } +} + + +// Nav variations +// -------------------------------------------------- + +// Justified nav links +// ------------------------- + +.nav-justified { +  width: 100%; + +  > li { +    float: none; +     > a { +      text-align: center; +      margin-bottom: 5px; +    } +  } + +  > .dropdown .dropdown-menu { +    top: auto; +    left: auto; +  } + +  @media (min-width: @screen-sm-min) { +    > li { +      display: table-cell; +      width: 1%; +      > a { +        margin-bottom: 0; +      } +    } +  } +} + +// Move borders to anchors instead of bottom of list +// +// Mixin for adding on top the shared `.nav-justified` styles for our tabs +.nav-tabs-justified { +  border-bottom: 0; + +  > li > a { +    // Override margin from .nav-tabs +    margin-right: 0; +    border-radius: @border-radius-base; +  } + +  > .active > a, +  > .active > a:hover, +  > .active > a:focus { +    border: 1px solid @nav-tabs-justified-link-border-color; +  } + +  @media (min-width: @screen-sm-min) { +    > li > a { +      border-bottom: 1px solid @nav-tabs-justified-link-border-color; +      border-radius: @border-radius-base @border-radius-base 0 0; +    } +    > .active > a, +    > .active > a:hover, +    > .active > a:focus { +      border-bottom-color: @nav-tabs-justified-active-link-border-color; +    } +  } +} + + +// Tabbable tabs +// ------------------------- + +// Hide tabbable panes to start, show them when `.active` +.tab-content { +  > .tab-pane { +    display: none; +  } +  > .active { +    display: block; +  } +} + + +// Dropdowns +// ------------------------- + +// Specific dropdowns +.nav-tabs .dropdown-menu { +  // make dropdown border overlap tab border +  margin-top: -1px; +  // Remove the top rounded corners here since there is a hard edge above the menu +  .border-top-radius(0); +} diff --git a/bower_components/bootstrap/less/normalize.less b/bower_components/bootstrap/less/normalize.less new file mode 100644 index 0000000..024e257 --- /dev/null +++ b/bower_components/bootstrap/less/normalize.less @@ -0,0 +1,423 @@ +/*! normalize.css v3.0.0 | MIT License | git.io/normalize */ + +// +// 1. Set default font family to sans-serif. +// 2. Prevent iOS text size adjust after orientation change, without disabling +//    user zoom. +// + +html { +  font-family: sans-serif; // 1 +  -ms-text-size-adjust: 100%; // 2 +  -webkit-text-size-adjust: 100%; // 2 +} + +// +// Remove default margin. +// + +body { +  margin: 0; +} + +// HTML5 display definitions +// ========================================================================== + +// +// Correct `block` display not defined in IE 8/9. +// + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +nav, +section, +summary { +  display: block; +} + +// +// 1. Correct `inline-block` display not defined in IE 8/9. +// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. +// + +audio, +canvas, +progress, +video { +  display: inline-block; // 1 +  vertical-align: baseline; // 2 +} + +// +// Prevent modern browsers from displaying `audio` without controls. +// Remove excess height in iOS 5 devices. +// + +audio:not([controls]) { +  display: none; +  height: 0; +} + +// +// Address `[hidden]` styling not present in IE 8/9. +// Hide the `template` element in IE, Safari, and Firefox < 22. +// + +[hidden], +template { +  display: none; +} + +// Links +// ========================================================================== + +// +// Remove the gray background color from active links in IE 10. +// + +a { +  background: transparent; +} + +// +// Improve readability when focused and also mouse hovered in all browsers. +// + +a:active, +a:hover { +  outline: 0; +} + +// Text-level semantics +// ========================================================================== + +// +// Address styling not present in IE 8/9, Safari 5, and Chrome. +// + +abbr[title] { +  border-bottom: 1px dotted; +} + +// +// Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome. +// + +b, +strong { +  font-weight: bold; +} + +// +// Address styling not present in Safari 5 and Chrome. +// + +dfn { +  font-style: italic; +} + +// +// Address variable `h1` font-size and margin within `section` and `article` +// contexts in Firefox 4+, Safari 5, 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. +// + +img { +  border: 0; +} + +// +// Correct overflow displayed oddly in IE 9. +// + +svg:not(:root) { +  overflow: hidden; +} + +// Grouping content +// ========================================================================== + +// +// Address margin not present in IE 8/9 and Safari 5. +// + +figure { +  margin: 1em 40px; +} + +// +// Address differences between Firefox and other browsers. +// + +hr { +  -moz-box-sizing: content-box; +  box-sizing: content-box; +  height: 0; +} + +// +// Contain overflow in all browsers. +// + +pre { +  overflow: auto; +} + +// +// Address odd `em`-unit font size rendering in all browsers. +// + +code, +kbd, +pre, +samp { +  font-family: monospace, monospace; +  font-size: 1em; +} + +// Forms +// ========================================================================== + +// +// Known limitation: by default, Chrome and Safari on OS X allow very limited +// styling of `select`, unless a `border` property is set. +// + +// +// 1. Correct color not being inherited. +//    Known issue: affects color of disabled elements. +// 2. Correct font properties not being inherited. +// 3. Address margins set differently in Firefox 4+, Safari 5, 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. +// + +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+, 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 5 and Chrome. +// 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome +//    (include `-moz` to future-proof). +// + +input[type="search"] { +  -webkit-appearance: textfield; // 1 +  -moz-box-sizing: content-box; +  -webkit-box-sizing: content-box; // 2 +  box-sizing: content-box; +} + +// +// Remove inner padding and search cancel button in Safari and Chrome on OS X. +// Safari (but not Chrome) clips the cancel button when the search input has +// padding (and `textfield` appearance). +// + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { +  -webkit-appearance: none; +} + +// +// Define consistent border, margin, and padding. +// + +fieldset { +  border: 1px solid #c0c0c0; +  margin: 0 2px; +  padding: 0.35em 0.625em 0.75em; +} + +// +// 1. Correct `color` not being inherited in IE 8/9. +// 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. +// + +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; +}
\ No newline at end of file diff --git a/bower_components/bootstrap/less/pager.less b/bower_components/bootstrap/less/pager.less new file mode 100644 index 0000000..59103f4 --- /dev/null +++ b/bower_components/bootstrap/less/pager.less @@ -0,0 +1,55 @@ +// +// Pager pagination +// -------------------------------------------------- + + +.pager { +  padding-left: 0; +  margin: @line-height-computed 0; +  list-style: none; +  text-align: center; +  &:extend(.clearfix all); +  li { +    display: inline; +    > a, +    > span { +      display: inline-block; +      padding: 5px 14px; +      background-color: @pager-bg; +      border: 1px solid @pager-border; +      border-radius: @pager-border-radius; +    } + +    > a:hover, +    > a:focus { +      text-decoration: none; +      background-color: @pager-hover-bg; +    } +  } + +  .next { +    > a, +    > span { +      float: right; +    } +  } + +  .previous { +    > a, +    > span { +      float: left; +    } +  } + +  .disabled { +    > a, +    > a:hover, +    > a:focus, +    > span { +      color: @pager-disabled-color; +      background-color: @pager-bg; +      cursor: not-allowed; +    } +  } + +} diff --git a/bower_components/bootstrap/less/pagination.less b/bower_components/bootstrap/less/pagination.less new file mode 100644 index 0000000..b2856ae --- /dev/null +++ b/bower_components/bootstrap/less/pagination.less @@ -0,0 +1,88 @@ +// +// Pagination (multiple pages) +// -------------------------------------------------- +.pagination { +  display: inline-block; +  padding-left: 0; +  margin: @line-height-computed 0; +  border-radius: @border-radius-base; + +  > li { +    display: inline; // Remove list-style and block-level defaults +    > a, +    > span { +      position: relative; +      float: left; // Collapse white-space +      padding: @padding-base-vertical @padding-base-horizontal; +      line-height: @line-height-base; +      text-decoration: none; +      color: @pagination-color; +      background-color: @pagination-bg; +      border: 1px solid @pagination-border; +      margin-left: -1px; +    } +    &:first-child { +      > a, +      > span { +        margin-left: 0; +        .border-left-radius(@border-radius-base); +      } +    } +    &:last-child { +      > a, +      > span { +        .border-right-radius(@border-radius-base); +      } +    } +  } + +  > li > a, +  > li > span { +    &:hover, +    &:focus { +      color: @pagination-hover-color; +      background-color: @pagination-hover-bg; +      border-color: @pagination-hover-border; +    } +  } + +  > .active > a, +  > .active > span { +    &, +    &:hover, +    &:focus { +      z-index: 2; +      color: @pagination-active-color; +      background-color: @pagination-active-bg; +      border-color: @pagination-active-border; +      cursor: default; +    } +  } + +  > .disabled { +    > span, +    > span:hover, +    > span:focus, +    > a, +    > a:hover, +    > a:focus { +      color: @pagination-disabled-color; +      background-color: @pagination-disabled-bg; +      border-color: @pagination-disabled-border; +      cursor: not-allowed; +    } +  } +} + +// Sizing +// -------------------------------------------------- + +// Large +.pagination-lg { +  .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @border-radius-large); +} + +// Small +.pagination-sm { +  .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @border-radius-small); +} diff --git a/bower_components/bootstrap/less/panels.less b/bower_components/bootstrap/less/panels.less new file mode 100644 index 0000000..20dd149 --- /dev/null +++ b/bower_components/bootstrap/less/panels.less @@ -0,0 +1,241 @@ +// +// 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: 10px 15px; +  border-bottom: 1px solid transparent; +  .border-top-radius((@panel-border-radius - 1)); + +  > .dropdown .dropdown-toggle { +    color: inherit; +  } +} + +// Within heading, strip any `h*` tag of its default margins for spacing. +.panel-title { +  margin-top: 0; +  margin-bottom: 0; +  font-size: ceil((@font-size-base * 1.125)); +  color: inherit; + +  > a { +    color: inherit; +  } +} + +// Optional footer (stays gray in every modifier class) +.panel-footer { +  padding: 10px 15px; +  background-color: @panel-footer-bg; +  border-top: 1px solid @panel-inner-border; +  .border-bottom-radius((@panel-border-radius - 1)); +} + + +// List groups in panels +// +// By default, space out list group content from panel headings to account for +// any kind of custom content between the two. + +.panel { +  > .list-group { +    margin-bottom: 0; + +    .list-group-item { +      border-width: 1px 0; +      border-radius: 0; +    } + +    // Add border top radius for first one +    &:first-child { +      .list-group-item:first-child { +        border-top: 0; +        .border-top-radius((@panel-border-radius - 1)); +      } +    } +    // Add border bottom radius for last one +    &:last-child { +      .list-group-item:last-child { +        border-bottom: 0; +        .border-bottom-radius((@panel-border-radius - 1)); +      } +    } +  } +} +// Collapse space between when there's no additional content. +.panel-heading + .list-group { +  .list-group-item:first-child { +    border-top-width: 0; +  } +} + + +// 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 { +    margin-bottom: 0; +  } +  // Add border top radius for first one +  > .table:first-child, +  > .table-responsive:first-child > .table:first-child { +    .border-top-radius((@panel-border-radius - 1)); + +    > thead:first-child, +    > tbody:first-child { +      > tr:first-child { +        td:first-child, +        th:first-child { +          border-top-left-radius: (@panel-border-radius - 1); +        } +        td:last-child, +        th:last-child { +          border-top-right-radius: (@panel-border-radius - 1); +        } +      } +    } +  } +  // Add border bottom radius for last one +  > .table:last-child, +  > .table-responsive:last-child > .table:last-child { +    .border-bottom-radius((@panel-border-radius - 1)); + +    > tbody:last-child, +    > tfoot:last-child { +      > tr:last-child { +        td:first-child, +        th:first-child { +          border-bottom-left-radius: (@panel-border-radius - 1); +        } +        td:last-child, +        th:last-child { +          border-bottom-right-radius: (@panel-border-radius - 1); +        } +      } +    } +  } +  > .panel-body + .table, +  > .panel-body + .table-responsive { +    border-top: 1px solid @table-border-color; +  } +  > .table > tbody:first-child > tr:first-child th, +  > .table > tbody:first-child > tr:first-child td { +    border-top: 0; +  } +  > .table-bordered, +  > .table-responsive > .table-bordered { +    border: 0; +    > thead, +    > tbody, +    > tfoot { +      > tr { +        > th:first-child, +        > td:first-child { +          border-left: 0; +        } +        > th:last-child, +        > td:last-child { +          border-right: 0; +        } +      } +    } +    > thead, +    > tbody { +      > tr:first-child { +        > td, +        > th { +          border-bottom: 0; +        } +      } +    } +    > tbody, +    > tfoot { +      > tr:last-child { +        > td, +        > th { +          border-bottom: 0; +        } +      } +    } +  } +  > .table-responsive { +    border: 0; +    margin-bottom: 0; +  } +} + + +// Collapsable panels (aka, accordion) +// +// Wrap a series of panels in `.panel-group` to turn them into an accordion with +// the help of our collapse JavaScript plugin. + +.panel-group { +  margin-bottom: @line-height-computed; + +  // Tighten up margin so it's only between panels +  .panel { +    margin-bottom: 0; +    border-radius: @panel-border-radius; +    overflow: hidden; // crop contents when collapsed +    + .panel { +      margin-top: 5px; +    } +  } + +  .panel-heading { +    border-bottom: 0; +    + .panel-collapse .panel-body { +      border-top: 1px solid @panel-inner-border; +    } +  } +  .panel-footer { +    border-top: 0; +    + .panel-collapse .panel-body { +      border-bottom: 1px solid @panel-inner-border; +    } +  } +} + + +// Contextual variations +.panel-default { +  .panel-variant(@panel-default-border; @panel-default-text; @panel-default-heading-bg; @panel-default-border); +} +.panel-primary { +  .panel-variant(@panel-primary-border; @panel-primary-text; @panel-primary-heading-bg; @panel-primary-border); +} +.panel-success { +  .panel-variant(@panel-success-border; @panel-success-text; @panel-success-heading-bg; @panel-success-border); +} +.panel-info { +  .panel-variant(@panel-info-border; @panel-info-text; @panel-info-heading-bg; @panel-info-border); +} +.panel-warning { +  .panel-variant(@panel-warning-border; @panel-warning-text; @panel-warning-heading-bg; @panel-warning-border); +} +.panel-danger { +  .panel-variant(@panel-danger-border; @panel-danger-text; @panel-danger-heading-bg; @panel-danger-border); +} diff --git a/bower_components/bootstrap/less/popovers.less b/bower_components/bootstrap/less/popovers.less new file mode 100644 index 0000000..696d74c --- /dev/null +++ b/bower_components/bootstrap/less/popovers.less @@ -0,0 +1,133 @@ +// +// Popovers +// -------------------------------------------------- + + +.popover { +  position: absolute; +  top: 0; +  left: 0; +  z-index: @zindex-popover; +  display: none; +  max-width: @popover-max-width; +  padding: 1px; +  text-align: left; // Reset given new insertion method +  background-color: @popover-bg; +  background-clip: padding-box; +  border: 1px solid @popover-fallback-border-color; +  border: 1px solid @popover-border-color; +  border-radius: @border-radius-large; +  .box-shadow(0 5px 10px rgba(0,0,0,.2)); + +  // Overrides for proper insertion +  white-space: normal; + +  // Offset the popover to account for the popover arrow +  &.top     { margin-top: -@popover-arrow-width; } +  &.right   { margin-left: @popover-arrow-width; } +  &.bottom  { margin-top: @popover-arrow-width; } +  &.left    { margin-left: -@popover-arrow-width; } +} + +.popover-title { +  margin: 0; // reset heading margin +  padding: 8px 14px; +  font-size: @font-size-base; +  font-weight: normal; +  line-height: 18px; +  background-color: @popover-title-bg; +  border-bottom: 1px solid darken(@popover-title-bg, 5%); +  border-radius: 5px 5px 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; +    } +  } + +} diff --git a/bower_components/bootstrap/less/print.less b/bower_components/bootstrap/less/print.less new file mode 100644 index 0000000..3655d03 --- /dev/null +++ b/bower_components/bootstrap/less/print.less @@ -0,0 +1,101 @@ +// +// Basic print styles +// -------------------------------------------------- +// Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css + +@media print { + +  * { +    text-shadow: none !important; +    color: #000 !important; // Black prints faster: h5bp.com/s +    background: transparent !important; +    box-shadow: none !important; +  } + +  a, +  a:visited { +    text-decoration: underline; +  } + +  a[href]:after { +    content: " (" attr(href) ")"; +  } + +  abbr[title]:after { +    content: " (" attr(title) ")"; +  } + +  // Don't show links for images, or javascript/internal links +  a[href^="javascript:"]:after, +  a[href^="#"]:after { +    content: ""; +  } + +  pre, +  blockquote { +    border: 1px solid #999; +    page-break-inside: avoid; +  } + +  thead { +    display: table-header-group; // h5bp.com/t +  } + +  tr, +  img { +    page-break-inside: avoid; +  } + +  img { +    max-width: 100% !important; +  } + +  p, +  h2, +  h3 { +    orphans: 3; +    widows: 3; +  } + +  h2, +  h3 { +    page-break-after: avoid; +  } + +  // Chrome (OSX) fix for https://github.com/twbs/bootstrap/issues/11245 +  // Once fixed, we can just straight up remove this. +  select { +    background: #fff !important; +  } + +  // Bootstrap components +  .navbar { +    display: none; +  } +  .table { +    td, +    th { +      background-color: #fff !important; +    } +  } +  .btn, +  .dropup > .btn { +    > .caret { +      border-top-color: #000 !important; +    } +  } +  .label { +    border: 1px solid #000; +  } + +  .table { +    border-collapse: collapse !important; +  } +  .table-bordered { +    th, +    td { +      border: 1px solid #ddd !important; +    } +  } + +} diff --git a/bower_components/bootstrap/less/progress-bars.less b/bower_components/bootstrap/less/progress-bars.less new file mode 100644 index 0000000..76c87be --- /dev/null +++ b/bower_components/bootstrap/less/progress-bars.less @@ -0,0 +1,80 @@ +// +// Progress bars +// -------------------------------------------------- + + +// Bar animations +// ------------------------- + +// WebKit +@-webkit-keyframes progress-bar-stripes { +  from  { background-position: 40px 0; } +  to    { background-position: 0 0; } +} + +// Spec and IE10+ +@keyframes progress-bar-stripes { +  from  { background-position: 40px 0; } +  to    { background-position: 0 0; } +} + + + +// Bar itself +// ------------------------- + +// Outer container +.progress { +  overflow: hidden; +  height: @line-height-computed; +  margin-bottom: @line-height-computed; +  background-color: @progress-bg; +  border-radius: @border-radius-base; +  .box-shadow(inset 0 1px 2px rgba(0,0,0,.1)); +} + +// Bar of progress +.progress-bar { +  float: left; +  width: 0%; +  height: 100%; +  font-size: @font-size-small; +  line-height: @line-height-computed; +  color: @progress-bar-color; +  text-align: center; +  background-color: @progress-bar-bg; +  .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15)); +  .transition(width .6s ease); +} + +// Striped bars +.progress-striped .progress-bar { +  #gradient > .striped(); +  background-size: 40px 40px; +} + +// Call animation for the active one +.progress.active .progress-bar { +  .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); +} diff --git a/bower_components/bootstrap/less/responsive-utilities.less b/bower_components/bootstrap/less/responsive-utilities.less new file mode 100644 index 0000000..027a264 --- /dev/null +++ b/bower_components/bootstrap/less/responsive-utilities.less @@ -0,0 +1,92 @@ +// +// Responsive: Utility classes +// -------------------------------------------------- + + +// IE10 in Windows (Phone) 8 +// +// Support for responsive views via media queries is kind of borked in IE10, for +// Surface/desktop in split view and for Windows Phone 8. This particular fix +// must be accompanied by a snippet of JavaScript to sniff the user agent and +// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at +// our Getting Started page for more information on this bug. +// +// For more information, see the following: +// +// Issue: https://github.com/twbs/bootstrap/issues/10497 +// Docs: http://getbootstrap.com/getting-started/#browsers +// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ + +@-ms-viewport { +  width: device-width; +} + + +// Visibility utilities +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { +  .responsive-invisibility(); +} + +.visible-xs { +  @media (max-width: @screen-xs-max) { +    .responsive-visibility(); +  } +} +.visible-sm { +  @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { +    .responsive-visibility(); +  } +} +.visible-md { +  @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { +    .responsive-visibility(); +  } +} +.visible-lg { +  @media (min-width: @screen-lg-min) { +    .responsive-visibility(); +  } +} + +.hidden-xs { +  @media (max-width: @screen-xs-max) { +    .responsive-invisibility(); +  } +} +.hidden-sm { +  @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { +    .responsive-invisibility(); +  } +} +.hidden-md { +  @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { +    .responsive-invisibility(); +  } +} +.hidden-lg { +  @media (min-width: @screen-lg-min) { +    .responsive-invisibility(); +  } +} + + +// Print utilities +// +// Media queries are placed on the inside to be mixin-friendly. + +.visible-print { +  .responsive-invisibility(); + +  @media print { +    .responsive-visibility(); +  } +} + +.hidden-print { +  @media print { +    .responsive-invisibility(); +  } +} diff --git a/bower_components/bootstrap/less/scaffolding.less b/bower_components/bootstrap/less/scaffolding.less new file mode 100644 index 0000000..fe29f2d --- /dev/null +++ b/bower_components/bootstrap/less/scaffolding.less @@ -0,0 +1,134 @@ +// +// Scaffolding +// -------------------------------------------------- + + +// Reset the box-sizing +// +// Heads up! This reset may cause conflicts with some third-party widgets. +// For recommendations on resolving such conflicts, see +// http://getbootstrap.com/getting-started/#third-box-sizing +* { +  .box-sizing(border-box); +} +*:before, +*:after { +  .box-sizing(border-box); +} + + +// Body reset + +html { +  font-size: 62.5%; +  -webkit-tap-highlight-color: rgba(0,0,0,0); +} + +body { +  font-family: @font-family-base; +  font-size: @font-size-base; +  line-height: @line-height-base; +  color: @text-color; +  background-color: @body-bg; +} + +// Reset fonts for relevant elements +input, +button, +select, +textarea { +  font-family: inherit; +  font-size: inherit; +  line-height: inherit; +} + + +// Links + +a { +  color: @link-color; +  text-decoration: none; + +  &:hover, +  &:focus { +    color: @link-hover-color; +    text-decoration: underline; +  } + +  &:focus { +    .tab-focus(); +  } +} + + +// Figures +// +// We reset this here because previously Normalize had no `figure` margins. This +// ensures we don't break anyone's use of the element. + +figure { +  margin: 0; +} + + +// Images + +img { +  vertical-align: middle; +} + +// Responsive images (ensure images don't scale beyond their parents) +.img-responsive { +  .img-responsive(); +} + +// Rounded corners +.img-rounded { +  border-radius: @border-radius-large; +} + +// Image thumbnails +// +// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`. +.img-thumbnail { +  padding: @thumbnail-padding; +  line-height: @line-height-base; +  background-color: @thumbnail-bg; +  border: 1px solid @thumbnail-border; +  border-radius: @thumbnail-border-radius; +  .transition(all .2s ease-in-out); + +  // Keep them at most 100% wide +  .img-responsive(inline-block); +} + +// Perfect circle +.img-circle { +  border-radius: 50%; // set radius in percents +} + + +// Horizontal rules + +hr { +  margin-top:    @line-height-computed; +  margin-bottom: @line-height-computed; +  border: 0; +  border-top: 1px solid @hr-border; +} + + +// Only display content to screen readers +// +// See: http://a11yproject.com/posts/how-to-hide-content/ + +.sr-only { +  position: absolute; +  width: 1px; +  height: 1px; +  margin: -1px; +  padding: 0; +  overflow: hidden; +  clip: rect(0,0,0,0); +  border: 0; +} diff --git a/bower_components/bootstrap/less/tables.less b/bower_components/bootstrap/less/tables.less new file mode 100644 index 0000000..c41989c --- /dev/null +++ b/bower_components/bootstrap/less/tables.less @@ -0,0 +1,233 @@ +// +// Tables +// -------------------------------------------------- + + +table { +  max-width: 100%; +  background-color: @table-bg; +} +th { +  text-align: left; +} + + +// Baseline styles + +.table { +  width: 100%; +  margin-bottom: @line-height-computed; +  // Cells +  > thead, +  > tbody, +  > tfoot { +    > tr { +      > th, +      > td { +        padding: @table-cell-padding; +        line-height: @line-height-base; +        vertical-align: top; +        border-top: 1px solid @table-border-color; +      } +    } +  } +  // Bottom align for column headings +  > thead > tr > th { +    vertical-align: bottom; +    border-bottom: 2px solid @table-border-color; +  } +  // Remove top border from thead by default +  > caption + thead, +  > colgroup + thead, +  > thead:first-child { +    > tr:first-child { +      > th, +      > td { +        border-top: 0; +      } +    } +  } +  // Account for multiple tbody instances +  > tbody + tbody { +    border-top: 2px solid @table-border-color; +  } + +  // Nesting +  .table { +    background-color: @body-bg; +  } +} + + +// Condensed table w/ half padding + +.table-condensed { +  > thead, +  > tbody, +  > tfoot { +    > tr { +      > th, +      > td { +        padding: @table-condensed-cell-padding; +      } +    } +  } +} + + +// Bordered version +// +// Add borders all around the table and between all the columns. + +.table-bordered { +  border: 1px solid @table-border-color; +  > thead, +  > tbody, +  > tfoot { +    > tr { +      > th, +      > td { +        border: 1px solid @table-border-color; +      } +    } +  } +  > thead > tr { +    > th, +    > td { +      border-bottom-width: 2px; +    } +  } +} + + +// Zebra-striping +// +// Default zebra-stripe styles (alternating gray and transparent backgrounds) + +.table-striped { +  > tbody > tr:nth-child(odd) { +    > td, +    > th { +      background-color: @table-bg-accent; +    } +  } +} + + +// Hover effect +// +// Placed here since it has to come after the potential zebra striping + +.table-hover { +  > tbody > tr:hover { +    > td, +    > th { +      background-color: @table-bg-hover; +    } +  } +} + + +// Table cell sizing +// +// Reset default table behavior + +table col[class*="col-"] { +  position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623) +  float: none; +  display: table-column; +} +table { +  td, +  th { +    &[class*="col-"] { +      position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623) +      float: none; +      display: table-cell; +    } +  } +} + + +// Table backgrounds +// +// Exact selectors below required to override `.table-striped` and prevent +// inheritance to nested tables. + +// Generate the contextual variants +.table-row-variant(active; @table-bg-active); +.table-row-variant(success; @state-success-bg); +.table-row-variant(info; @state-info-bg); +.table-row-variant(warning; @state-warning-bg); +.table-row-variant(danger; @state-danger-bg); + + +// Responsive tables +// +// Wrap your tables in `.table-responsive` and we'll make them mobile friendly +// by enabling horizontal scrolling. Only applies <768px. Everything above that +// will display normally. + +@media (max-width: @screen-xs-max) { +  .table-responsive { +    width: 100%; +    margin-bottom: (@line-height-computed * 0.75); +    overflow-y: hidden; +    overflow-x: scroll; +    -ms-overflow-style: -ms-autohiding-scrollbar; +    border: 1px solid @table-border-color; +    -webkit-overflow-scrolling: touch; + +    // Tighten up spacing +    > .table { +      margin-bottom: 0; + +      // Ensure the content doesn't wrap +      > thead, +      > tbody, +      > tfoot { +        > tr { +          > th, +          > td { +            white-space: nowrap; +          } +        } +      } +    } + +    // Special overrides for the bordered tables +    > .table-bordered { +      border: 0; + +      // Nuke the appropriate borders so that the parent can handle them +      > thead, +      > tbody, +      > tfoot { +        > tr { +          > th:first-child, +          > td:first-child { +            border-left: 0; +          } +          > th:last-child, +          > td:last-child { +            border-right: 0; +          } +        } +      } + +      // Only nuke the last row's bottom-border in `tbody` and `tfoot` since +      // chances are there will be only one `tr` in a `thead` and that would +      // remove the border altogether. +      > tbody, +      > tfoot { +        > tr:last-child { +          > th, +          > td { +            border-bottom: 0; +          } +        } +      } + +    } +  } +} diff --git a/bower_components/bootstrap/less/theme.less b/bower_components/bootstrap/less/theme.less new file mode 100644 index 0000000..6f957fb --- /dev/null +++ b/bower_components/bootstrap/less/theme.less @@ -0,0 +1,247 @@ + +// +// Load core variables and mixins +// -------------------------------------------------- + +@import "variables.less"; +@import "mixins.less"; + + + +// +// Buttons +// -------------------------------------------------- + +// Common styles +.btn-default, +.btn-primary, +.btn-success, +.btn-info, +.btn-warning, +.btn-danger { +  text-shadow: 0 -1px 0 rgba(0,0,0,.2); +  @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075); +  .box-shadow(@shadow); + +  // Reset the shadow +  &:active, +  &.active { +    .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); +  } +} + +// Mixin for generating new styles +.btn-styles(@btn-color: #555) { +  #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%)); +  .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners +  background-repeat: repeat-x; +  border-color: darken(@btn-color, 14%); + +  &:hover, +  &:focus  { +    background-color: darken(@btn-color, 12%); +    background-position: 0 -15px; +  } + +  &:active, +  &.active { +    background-color: darken(@btn-color, 12%); +    border-color: darken(@btn-color, 14%); +  } +} + +// Common styles +.btn { +  // Remove the gradient for the pressed/active state +  &:active, +  &.active { +    background-image: none; +  } +} + +// Apply the mixin to the buttons +.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; } +.btn-primary { .btn-styles(@btn-primary-bg); } +.btn-success { .btn-styles(@btn-success-bg); } +.btn-info    { .btn-styles(@btn-info-bg); } +.btn-warning { .btn-styles(@btn-warning-bg); } +.btn-danger  { .btn-styles(@btn-danger-bg); } + + + +// +// Images +// -------------------------------------------------- + +.thumbnail, +.img-thumbnail { +  .box-shadow(0 1px 2px rgba(0,0,0,.075)); +} + + + +// +// Dropdowns +// -------------------------------------------------- + +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { +  #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%)); +  background-color: darken(@dropdown-link-hover-bg, 5%); +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { +  #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%)); +  background-color: darken(@dropdown-link-active-bg, 5%); +} + + + +// +// Navbar +// -------------------------------------------------- + +// Default navbar +.navbar-default { +  #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg); +  .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered +  border-radius: @navbar-border-radius; +  @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075); +  .box-shadow(@shadow); + +  .navbar-nav > .active > a { +    #gradient > .vertical(@start-color: darken(@navbar-default-bg, 5%); @end-color: darken(@navbar-default-bg, 2%)); +    .box-shadow(inset 0 3px 9px rgba(0,0,0,.075)); +  } +} +.navbar-brand, +.navbar-nav > li > a { +  text-shadow: 0 1px 0 rgba(255,255,255,.25); +} + +// Inverted navbar +.navbar-inverse { +  #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg); +  .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered + +  .navbar-nav > .active > a { +    #gradient > .vertical(@start-color: @navbar-inverse-bg; @end-color: lighten(@navbar-inverse-bg, 2.5%)); +    .box-shadow(inset 0 3px 9px rgba(0,0,0,.25)); +  } + +  .navbar-brand, +  .navbar-nav > li > a { +    text-shadow: 0 -1px 0 rgba(0,0,0,.25); +  } +} + +// Undo rounded corners in static and fixed navbars +.navbar-static-top, +.navbar-fixed-top, +.navbar-fixed-bottom { +  border-radius: 0; +} + + + +// +// Alerts +// -------------------------------------------------- + +// Common styles +.alert { +  text-shadow: 0 1px 0 rgba(255,255,255,.2); +  @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05); +  .box-shadow(@shadow); +} + +// Mixin for generating new styles +.alert-styles(@color) { +  #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%)); +  border-color: darken(@color, 15%); +} + +// Apply the mixin to the alerts +.alert-success    { .alert-styles(@alert-success-bg); } +.alert-info       { .alert-styles(@alert-info-bg); } +.alert-warning    { .alert-styles(@alert-warning-bg); } +.alert-danger     { .alert-styles(@alert-danger-bg); } + + + +// +// Progress bars +// -------------------------------------------------- + +// Give the progress background some depth +.progress { +  #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg) +} + +// Mixin for generating new styles +.progress-bar-styles(@color) { +  #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%)); +} + +// Apply the mixin to the progress bars +.progress-bar            { .progress-bar-styles(@progress-bar-bg); } +.progress-bar-success    { .progress-bar-styles(@progress-bar-success-bg); } +.progress-bar-info       { .progress-bar-styles(@progress-bar-info-bg); } +.progress-bar-warning    { .progress-bar-styles(@progress-bar-warning-bg); } +.progress-bar-danger     { .progress-bar-styles(@progress-bar-danger-bg); } + + + +// +// List groups +// -------------------------------------------------- + +.list-group { +  border-radius: @border-radius-base; +  .box-shadow(0 1px 2px rgba(0,0,0,.075)); +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { +  text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%); +  #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%)); +  border-color: darken(@list-group-active-border, 7.5%); +} + + + +// +// Panels +// -------------------------------------------------- + +// Common styles +.panel { +  .box-shadow(0 1px 2px rgba(0,0,0,.05)); +} + +// Mixin for generating new styles +.panel-heading-styles(@color) { +  #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%)); +} + +// Apply the mixin to the panel headings only +.panel-default > .panel-heading   { .panel-heading-styles(@panel-default-heading-bg); } +.panel-primary > .panel-heading   { .panel-heading-styles(@panel-primary-heading-bg); } +.panel-success > .panel-heading   { .panel-heading-styles(@panel-success-heading-bg); } +.panel-info > .panel-heading      { .panel-heading-styles(@panel-info-heading-bg); } +.panel-warning > .panel-heading   { .panel-heading-styles(@panel-warning-heading-bg); } +.panel-danger > .panel-heading    { .panel-heading-styles(@panel-danger-heading-bg); } + + + +// +// Wells +// -------------------------------------------------- + +.well { +  #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg); +  border-color: darken(@well-bg, 10%); +  @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1); +  .box-shadow(@shadow); +} diff --git a/bower_components/bootstrap/less/thumbnails.less b/bower_components/bootstrap/less/thumbnails.less new file mode 100644 index 0000000..c428920 --- /dev/null +++ b/bower_components/bootstrap/less/thumbnails.less @@ -0,0 +1,36 @@ +// +// Thumbnails +// -------------------------------------------------- + + +// Mixin and adjust the regular image class +.thumbnail { +  display: block; +  padding: @thumbnail-padding; +  margin-bottom: @line-height-computed; +  line-height: @line-height-base; +  background-color: @thumbnail-bg; +  border: 1px solid @thumbnail-border; +  border-radius: @thumbnail-border-radius; +  .transition(all .2s ease-in-out); + +  > img, +  a > img { +    &:extend(.img-responsive); +    margin-left: auto; +    margin-right: auto; +  } + +  // Add a hover state for linked versions only +  a&:hover, +  a&:focus, +  a&.active { +    border-color: @link-color; +  } + +  // Image captions +  .caption { +    padding: @thumbnail-caption-padding; +    color: @thumbnail-caption-color; +  } +} diff --git a/bower_components/bootstrap/less/tooltip.less b/bower_components/bootstrap/less/tooltip.less new file mode 100644 index 0000000..bd62699 --- /dev/null +++ b/bower_components/bootstrap/less/tooltip.less @@ -0,0 +1,95 @@ +// +// Tooltips +// -------------------------------------------------- + + +// Base class +.tooltip { +  position: absolute; +  z-index: @zindex-tooltip; +  display: block; +  visibility: visible; +  font-size: @font-size-small; +  line-height: 1.4; +  .opacity(0); + +  &.in     { .opacity(@tooltip-opacity); } +  &.top    { margin-top:  -3px; padding: @tooltip-arrow-width 0; } +  &.right  { margin-left:  3px; padding: 0 @tooltip-arrow-width; } +  &.bottom { margin-top:   3px; padding: @tooltip-arrow-width 0; } +  &.left   { margin-left: -3px; padding: 0 @tooltip-arrow-width; } +} + +// Wrapper for the tooltip content +.tooltip-inner { +  max-width: @tooltip-max-width; +  padding: 3px 8px; +  color: @tooltip-color; +  text-align: center; +  text-decoration: none; +  background-color: @tooltip-bg; +  border-radius: @border-radius-base; +} + +// Arrows +.tooltip-arrow { +  position: absolute; +  width: 0; +  height: 0; +  border-color: transparent; +  border-style: solid; +} +.tooltip { +  &.top .tooltip-arrow { +    bottom: 0; +    left: 50%; +    margin-left: -@tooltip-arrow-width; +    border-width: @tooltip-arrow-width @tooltip-arrow-width 0; +    border-top-color: @tooltip-arrow-color; +  } +  &.top-left .tooltip-arrow { +    bottom: 0; +    left: @tooltip-arrow-width; +    border-width: @tooltip-arrow-width @tooltip-arrow-width 0; +    border-top-color: @tooltip-arrow-color; +  } +  &.top-right .tooltip-arrow { +    bottom: 0; +    right: @tooltip-arrow-width; +    border-width: @tooltip-arrow-width @tooltip-arrow-width 0; +    border-top-color: @tooltip-arrow-color; +  } +  &.right .tooltip-arrow { +    top: 50%; +    left: 0; +    margin-top: -@tooltip-arrow-width; +    border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0; +    border-right-color: @tooltip-arrow-color; +  } +  &.left .tooltip-arrow { +    top: 50%; +    right: 0; +    margin-top: -@tooltip-arrow-width; +    border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width; +    border-left-color: @tooltip-arrow-color; +  } +  &.bottom .tooltip-arrow { +    top: 0; +    left: 50%; +    margin-left: -@tooltip-arrow-width; +    border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; +    border-bottom-color: @tooltip-arrow-color; +  } +  &.bottom-left .tooltip-arrow { +    top: 0; +    left: @tooltip-arrow-width; +    border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; +    border-bottom-color: @tooltip-arrow-color; +  } +  &.bottom-right .tooltip-arrow { +    top: 0; +    right: @tooltip-arrow-width; +    border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; +    border-bottom-color: @tooltip-arrow-color; +  } +} diff --git a/bower_components/bootstrap/less/type.less b/bower_components/bootstrap/less/type.less new file mode 100644 index 0000000..5e2a219 --- /dev/null +++ b/bower_components/bootstrap/less/type.less @@ -0,0 +1,293 @@ +// +// 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: 200; +  line-height: 1.4; + +  @media (min-width: @screen-sm-min) { +    font-size: (@font-size-base * 1.5); +  } +} + + +// Emphasis & misc +// ------------------------- + +// Ex: 14px base font * 85% = about 12px +small, +.small  { font-size: 85%; } + +// Undo browser default styling +cite    { font-style: normal; } + +// Alignment +.text-left           { text-align: left; } +.text-right          { text-align: right; } +.text-center         { text-align: center; } +.text-justify        { text-align: justify; } + +// 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). + +@media (min-width: @grid-float-breakpoint) { +  .dl-horizontal { +    dt { +      float: left; +      width: (@component-offset-horizontal - 20); +      clear: left; +      text-align: right; +      .text-overflow(); +    } +    dd { +      margin-left: @component-offset-horizontal; +      &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present +    } +  } +} + +// MISC +// ---- + +// Abbreviations and acronyms +abbr[title], +// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257 +abbr[data-original-title] { +  cursor: help; +  border-bottom: 1px dotted @abbr-border-color; +} +.initialism { +  font-size: 90%; +  text-transform: uppercase; +} + +// Blockquotes +blockquote { +  padding: (@line-height-computed / 2) @line-height-computed; +  margin: 0 0 @line-height-computed; +  font-size: @blockquote-font-size; +  border-left: 5px solid @blockquote-border-color; + +  p, +  ul, +  ol { +    &:last-child { +      margin-bottom: 0; +    } +  } + +  // Note: Deprecated small and .small as of v3.1.0 +  // Context: https://github.com/twbs/bootstrap/issues/11660 +  footer, +  small, +  .small { +    display: block; +    font-size: 80%; // back to default font-size +    line-height: @line-height-base; +    color: @blockquote-small-color; + +    &:before { +      content: '\2014 \00A0'; // em dash, nbsp +    } +  } +} + +// Opposite alignment of blockquote +// +// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0. +.blockquote-reverse, +blockquote.pull-right { +  padding-right: 15px; +  padding-left: 0; +  border-right: 5px solid @blockquote-border-color; +  border-left: 0; +  text-align: right; + +  // Account for citation +  footer, +  small, +  .small { +    &:before { content: ''; } +    &:after { +      content: '\00A0 \2014'; // nbsp, em dash +    } +  } +} + +// Quotes +blockquote:before, +blockquote:after { +  content: ""; +} + +// Addresses +address { +  margin-bottom: @line-height-computed; +  font-style: normal; +  line-height: @line-height-base; +} diff --git a/bower_components/bootstrap/less/utilities.less b/bower_components/bootstrap/less/utilities.less new file mode 100644 index 0000000..a260312 --- /dev/null +++ b/bower_components/bootstrap/less/utilities.less @@ -0,0 +1,56 @@ +// +// Utility classes +// -------------------------------------------------- + + +// Floats +// ------------------------- + +.clearfix { +  .clearfix(); +} +.center-block { +  .center-block(); +} +.pull-right { +  float: right !important; +} +.pull-left { +  float: left !important; +} + + +// Toggling content +// ------------------------- + +// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 +.hide { +  display: none !important; +} +.show { +  display: block !important; +} +.invisible { +  visibility: hidden; +} +.text-hide { +  .text-hide(); +} + + +// Hide from screenreaders and browsers +// +// Credit: HTML5 Boilerplate + +.hidden { +  display: none !important; +  visibility: hidden !important; +} + + +// For Affix plugin +// ------------------------- + +.affix { +  position: fixed; +} diff --git a/bower_components/bootstrap/less/variables.less b/bower_components/bootstrap/less/variables.less new file mode 100644 index 0000000..3846adc --- /dev/null +++ b/bower_components/bootstrap/less/variables.less @@ -0,0 +1,829 @@ +// +// Variables +// -------------------------------------------------- + + +//== Colors +// +//## Gray and brand colors for use across Bootstrap. + +@gray-darker:            lighten(#000, 13.5%); // #222 +@gray-dark:              lighten(#000, 20%);   // #333 +@gray:                   lighten(#000, 33.5%); // #555 +@gray-light:             lighten(#000, 60%);   // #999 +@gray-lighter:           lighten(#000, 93.5%); // #eee + +@brand-primary:         #428bca; +@brand-success:         #5cb85c; +@brand-info:            #5bc0de; +@brand-warning:         #f0ad4e; +@brand-danger:          #d9534f; + + +//== Scaffolding +// +// ## Settings for some of the most global styles. + +//** Background color for `<body>`. +@body-bg:               #fff; +//** Global text color on `<body>`. +@text-color:            @gray-dark; + +//** Global textual link color. +@link-color:            @brand-primary; +//** Link hover color set via `darken()` function. +@link-hover-color:      darken(@link-color, 15%); + + +//== Typography +// +//## Font, line-height, and color for body text, headings, and more. + +@font-family-sans-serif:  "Helvetica Neue", Helvetica, Arial, sans-serif; +@font-family-serif:       Georgia, "Times New Roman", Times, serif; +//** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`. +@font-family-monospace:   Menlo, Monaco, Consolas, "Courier New", monospace; +@font-family-base:        @font-family-sans-serif; + +@font-size-base:          14px; +@font-size-large:         ceil((@font-size-base * 1.25)); // ~18px +@font-size-small:         ceil((@font-size-base * 0.85)); // ~12px + +@font-size-h1:            floor((@font-size-base * 2.6)); // ~36px +@font-size-h2:            floor((@font-size-base * 2.15)); // ~30px +@font-size-h3:            ceil((@font-size-base * 1.7)); // ~24px +@font-size-h4:            ceil((@font-size-base * 1.25)); // ~18px +@font-size-h5:            @font-size-base; +@font-size-h6:            ceil((@font-size-base * 0.85)); // ~12px + +//** Unit-less `line-height` for use in components like buttons. +@line-height-base:        1.428571429; // 20/14 +//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc. +@line-height-computed:    floor((@font-size-base * @line-height-base)); // ~20px + +//** By default, this inherits from the `<body>`. +@headings-font-family:    inherit; +@headings-font-weight:    500; +@headings-line-height:    1.1; +@headings-color:          inherit; + + +//-- Iconography +// +//## Specify custom locations of the include Glyphicons icon font. Useful for those including Bootstrap via Bower. + +@icon-font-path:          "../fonts/"; +@icon-font-name:          "glyphicons-halflings-regular"; +@icon-font-svg-id:        "glyphicons_halflingsregular"; + +//== Components +// +//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start). + +@padding-base-vertical:     6px; +@padding-base-horizontal:   12px; + +@padding-large-vertical:    10px; +@padding-large-horizontal:  16px; + +@padding-small-vertical:    5px; +@padding-small-horizontal:  10px; + +@padding-xs-vertical:       1px; +@padding-xs-horizontal:     5px; + +@line-height-large:         1.33; +@line-height-small:         1.5; + +@border-radius-base:        4px; +@border-radius-large:       6px; +@border-radius-small:       3px; + +//** Global color for active items (e.g., navs or dropdowns). +@component-active-color:    #fff; +//** Global background color for active items (e.g., navs or dropdowns). +@component-active-bg:       @brand-primary; + +//** Width of the `border` for generating carets that indicator dropdowns. +@caret-width-base:          4px; +//** Carets increase slightly in size for larger components. +@caret-width-large:         5px; + + +//== Tables +// +//## Customizes the `.table` component with basic values, each used across all table variations. + +//** Padding for `<th>`s and `<td>`s. +@table-cell-padding:            8px; +//** Padding for cells in `.table-condensed`. +@table-condensed-cell-padding:  5px; + +//** Default background color used for all tables. +@table-bg:                      transparent; +//** Background color used for `.table-striped`. +@table-bg-accent:               #f9f9f9; +//** Background color used for `.table-hover`. +@table-bg-hover:                #f5f5f5; +@table-bg-active:               @table-bg-hover; + +//** Border color for table and cell borders. +@table-border-color:            #ddd; + + +//== Buttons +// +//## For each of Bootstrap's buttons, define text, background and border color. + +@btn-font-weight:                normal; + +@btn-default-color:              #333; +@btn-default-bg:                 #fff; +@btn-default-border:             #ccc; + +@btn-primary-color:              #fff; +@btn-primary-bg:                 @brand-primary; +@btn-primary-border:             darken(@btn-primary-bg, 5%); + +@btn-success-color:              #fff; +@btn-success-bg:                 @brand-success; +@btn-success-border:             darken(@btn-success-bg, 5%); + +@btn-info-color:                 #fff; +@btn-info-bg:                    @brand-info; +@btn-info-border:                darken(@btn-info-bg, 5%); + +@btn-warning-color:              #fff; +@btn-warning-bg:                 @brand-warning; +@btn-warning-border:             darken(@btn-warning-bg, 5%); + +@btn-danger-color:               #fff; +@btn-danger-bg:                  @brand-danger; +@btn-danger-border:              darken(@btn-danger-bg, 5%); + +@btn-link-disabled-color:        @gray-light; + + +//== Forms +// +//## + +//** `<input>` background color +@input-bg:                       #fff; +//** `<input disabled>` background color +@input-bg-disabled:              @gray-lighter; + +//** Text color for `<input>`s +@input-color:                    @gray; +//** `<input>` border color +@input-border:                   #ccc; +//** `<input>` border radius +@input-border-radius:            @border-radius-base; +//** Border color for inputs on focus +@input-border-focus:             #66afe9; + +//** Placeholder text color +@input-color-placeholder:        @gray-light; + +//** Default `.form-control` height +@input-height-base:              (@line-height-computed + (@padding-base-vertical * 2) + 2); +//** Large `.form-control` height +@input-height-large:             (ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2); +//** Small `.form-control` height +@input-height-small:             (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2); + +@legend-color:                   @gray-dark; +@legend-border-color:            #e5e5e5; + +//** Background color for textual input addons +@input-group-addon-bg:           @gray-lighter; +//** Border color for textual input addons +@input-group-addon-border-color: @input-border; + + +//== Dropdowns +// +//## Dropdown menu container and contents. + +//** Background for the dropdown menu. +@dropdown-bg:                    #fff; +//** Dropdown menu `border-color`. +@dropdown-border:                rgba(0,0,0,.15); +//** Dropdown menu `border-color` **for IE8**. +@dropdown-fallback-border:       #ccc; +//** Divider color for between dropdown items. +@dropdown-divider-bg:            #e5e5e5; + +//** Dropdown link text color. +@dropdown-link-color:            @gray-dark; +//** Hover color for dropdown links. +@dropdown-link-hover-color:      darken(@gray-dark, 5%); +//** Hover background for dropdown links. +@dropdown-link-hover-bg:         #f5f5f5; + +//** Active dropdown menu item text color. +@dropdown-link-active-color:     @component-active-color; +//** Active dropdown menu item background color. +@dropdown-link-active-bg:        @component-active-bg; + +//** Disabled dropdown menu item background color. +@dropdown-link-disabled-color:   @gray-light; + +//** Text color for headers within dropdown menus. +@dropdown-header-color:          @gray-light; + +// Note: 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:           1010; +@zindex-tooltip:           1030; +@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 +// Note: Deprecated @screen-xs and @screen-phone as of v3.0.1 +@screen-xs:                  480px; +@screen-xs-min:              @screen-xs; +@screen-phone:               @screen-xs-min; + +// Small screen / tablet +// Note: Deprecated @screen-sm and @screen-tablet as of v3.0.1 +@screen-sm:                  768px; +@screen-sm-min:              @screen-sm; +@screen-tablet:              @screen-sm-min; + +// Medium screen / desktop +// Note: Deprecated @screen-md and @screen-desktop as of v3.0.1 +@screen-md:                  992px; +@screen-md-min:              @screen-md; +@screen-desktop:             @screen-md-min; + +// Large screen / wide desktop +// Note: Deprecated @screen-lg and @screen-lg-desktop as of v3.0.1 +@screen-lg:                  1200px; +@screen-lg-min:              @screen-lg; +@screen-lg-desktop:          @screen-lg-min; + +// So media queries don't overlap when required, provide a maximum +@screen-xs-max:              (@screen-sm-min - 1); +@screen-sm-max:              (@screen-md-min - 1); +@screen-md-max:              (@screen-lg-min - 1); + + +//== Grid system +// +//## Define your custom responsive grid. + +//** Number of columns in the grid. +@grid-columns:              12; +//** Padding between columns. Gets divided in half for the left and right. +@grid-gutter-width:         30px; +// Navbar collapse +//** Point at which the navbar becomes uncollapsed. +@grid-float-breakpoint:     @screen-sm-min; +//** Point at which the navbar begins collapsing. +@grid-float-breakpoint-max: (@grid-float-breakpoint - 1); + + +//== Container sizes +// +//## Define the maximum width of `.container` for different screen sizes. + +// Small screen / tablet +@container-tablet:             ((720px + @grid-gutter-width)); +//** For `@screen-sm-min` and up. +@container-sm:                 @container-tablet; + +// Medium screen / desktop +@container-desktop:            ((940px + @grid-gutter-width)); +//** For `@screen-md-min` and up. +@container-md:                 @container-desktop; + +// Large screen / wide desktop +@container-large-desktop:      ((1140px + @grid-gutter-width)); +//** For `@screen-lg-min` and up. +@container-lg:                 @container-large-desktop; + + +//== Navbar +// +//## + +// Basics of a navbar +@navbar-height:                    50px; +@navbar-margin-bottom:             @line-height-computed; +@navbar-border-radius:             @border-radius-base; +@navbar-padding-horizontal:        floor((@grid-gutter-width / 2)); +@navbar-padding-vertical:          ((@navbar-height - @line-height-computed) / 2); +@navbar-collapse-max-height:       340px; + +@navbar-default-color:             #777; +@navbar-default-bg:                #f8f8f8; +@navbar-default-border:            darken(@navbar-default-bg, 6.5%); + +// Navbar links +@navbar-default-link-color:                #777; +@navbar-default-link-hover-color:          #333; +@navbar-default-link-hover-bg:             transparent; +@navbar-default-link-active-color:         #555; +@navbar-default-link-active-bg:            darken(@navbar-default-bg, 6.5%); +@navbar-default-link-disabled-color:       #ccc; +@navbar-default-link-disabled-bg:          transparent; + +// Navbar brand label +@navbar-default-brand-color:               @navbar-default-link-color; +@navbar-default-brand-hover-color:         darken(@navbar-default-brand-color, 10%); +@navbar-default-brand-hover-bg:            transparent; + +// Navbar toggle +@navbar-default-toggle-hover-bg:           #ddd; +@navbar-default-toggle-icon-bar-bg:        #888; +@navbar-default-toggle-border-color:       #ddd; + + +// Inverted navbar +// Reset inverted navbar basics +@navbar-inverse-color:                      @gray-light; +@navbar-inverse-bg:                         #222; +@navbar-inverse-border:                     darken(@navbar-inverse-bg, 10%); + +// Inverted navbar links +@navbar-inverse-link-color:                 @gray-light; +@navbar-inverse-link-hover-color:           #fff; +@navbar-inverse-link-hover-bg:              transparent; +@navbar-inverse-link-active-color:          @navbar-inverse-link-hover-color; +@navbar-inverse-link-active-bg:             darken(@navbar-inverse-bg, 10%); +@navbar-inverse-link-disabled-color:        #444; +@navbar-inverse-link-disabled-bg:           transparent; + +// Inverted navbar brand label +@navbar-inverse-brand-color:                @navbar-inverse-link-color; +@navbar-inverse-brand-hover-color:          #fff; +@navbar-inverse-brand-hover-bg:             transparent; + +// Inverted navbar toggle +@navbar-inverse-toggle-hover-bg:            #333; +@navbar-inverse-toggle-icon-bar-bg:         #fff; +@navbar-inverse-toggle-border-color:        #333; + + +//== Navs +// +//## + +//=== Shared nav styles +@nav-link-padding:                          10px 15px; +@nav-link-hover-bg:                         @gray-lighter; + +@nav-disabled-link-color:                   @gray-light; +@nav-disabled-link-hover-color:             @gray-light; + +@nav-open-link-hover-color:                 #fff; + +//== Tabs +@nav-tabs-border-color:                     #ddd; + +@nav-tabs-link-hover-border-color:          @gray-lighter; + +@nav-tabs-active-link-hover-bg:             @body-bg; +@nav-tabs-active-link-hover-color:          @gray; +@nav-tabs-active-link-hover-border-color:   #ddd; + +@nav-tabs-justified-link-border-color:            #ddd; +@nav-tabs-justified-active-link-border-color:     @body-bg; + +//== Pills +@nav-pills-border-radius:                   @border-radius-base; +@nav-pills-active-link-hover-bg:            @component-active-bg; +@nav-pills-active-link-hover-color:         @component-active-color; + + +//== Pagination +// +//## + +@pagination-color:                     @link-color; +@pagination-bg:                        #fff; +@pagination-border:                    #ddd; + +@pagination-hover-color:               @link-hover-color; +@pagination-hover-bg:                  @gray-lighter; +@pagination-hover-border:              #ddd; + +@pagination-active-color:              #fff; +@pagination-active-bg:                 @brand-primary; +@pagination-active-border:             @brand-primary; + +@pagination-disabled-color:            @gray-light; +@pagination-disabled-bg:               #fff; +@pagination-disabled-border:           #ddd; + + +//== Pager +// +//## + +@pager-bg:                             @pagination-bg; +@pager-border:                         @pagination-border; +@pager-border-radius:                  15px; + +@pager-hover-bg:                       @pagination-hover-bg; + +@pager-active-bg:                      @pagination-active-bg; +@pager-active-color:                   @pagination-active-color; + +@pager-disabled-color:                 @pagination-disabled-color; + + +//== Jumbotron +// +//## + +@jumbotron-padding:              30px; +@jumbotron-color:                inherit; +@jumbotron-bg:                   @gray-lighter; +@jumbotron-heading-color:        inherit; +@jumbotron-font-size:            ceil((@font-size-base * 1.5)); + + +//== Form states and alerts +// +//## Define colors for form feedback states and, by default, alerts. + +@state-success-text:             #3c763d; +@state-success-bg:               #dff0d8; +@state-success-border:           darken(spin(@state-success-bg, -10), 5%); + +@state-info-text:                #31708f; +@state-info-bg:                  #d9edf7; +@state-info-border:              darken(spin(@state-info-bg, -10), 7%); + +@state-warning-text:             #8a6d3b; +@state-warning-bg:               #fcf8e3; +@state-warning-border:           darken(spin(@state-warning-bg, -10), 5%); + +@state-danger-text:              #a94442; +@state-danger-bg:                #f2dede; +@state-danger-border:            darken(spin(@state-danger-bg, -10), 5%); + + +//== Tooltips +// +//## + +//** Tooltip max width +@tooltip-max-width:           200px; +//** Tooltip text color +@tooltip-color:               #fff; +//** Tooltip background color +@tooltip-bg:                  #000; +@tooltip-opacity:             .9; + +//** Tooltip arrow width +@tooltip-arrow-width:         5px; +//** Tooltip arrow color +@tooltip-arrow-color:         @tooltip-bg; + + +//== Popovers +// +//## + +//** Popover body background color +@popover-bg:                          #fff; +//** Popover maximum width +@popover-max-width:                   276px; +//** Popover border color +@popover-border-color:                rgba(0,0,0,.2); +//** Popover fallback border color +@popover-fallback-border-color:       #ccc; + +//** Popover title background color +@popover-title-bg:                    darken(@popover-bg, 3%); + +//** Popover arrow width +@popover-arrow-width:                 10px; +//** Popover arrow color +@popover-arrow-color:                 #fff; + +//** Popover outer arrow width +@popover-arrow-outer-width:           (@popover-arrow-width + 1); +//** Popover outer arrow color +@popover-arrow-outer-color:           fadein(@popover-border-color, 5%); +//** Popover outer arrow fallback color +@popover-arrow-outer-fallback-color:  darken(@popover-fallback-border-color, 20%); + + +//== Labels +// +//## + +//** Default label background color +@label-default-bg:            @gray-light; +//** Primary label background color +@label-primary-bg:            @brand-primary; +//** Success label background color +@label-success-bg:            @brand-success; +//** Info label background color +@label-info-bg:               @brand-info; +//** Warning label background color +@label-warning-bg:            @brand-warning; +//** Danger label background color +@label-danger-bg:             @brand-danger; + +//** Default label text color +@label-color:                 #fff; +//** Default text color of a linked label +@label-link-hover-color:      #fff; + + +//== Modals +// +//## + +//** Padding applied to the modal body +@modal-inner-padding:         20px; + +//** Padding applied to the modal title +@modal-title-padding:         15px; +//** Modal title line-height +@modal-title-line-height:     @line-height-base; + +//** Background color of modal content area +@modal-content-bg:                             #fff; +//** Modal content border color +@modal-content-border-color:                   rgba(0,0,0,.2); +//** Modal content border color **for IE8** +@modal-content-fallback-border-color:          #999; + +//** Modal backdrop background color +@modal-backdrop-bg:           #000; +//** Modal backdrop opacity +@modal-backdrop-opacity:      .5; +//** Modal header border color +@modal-header-border-color:   #e5e5e5; +//** Modal footer border color +@modal-footer-border-color:   @modal-header-border-color; + +@modal-lg:                    900px; +@modal-md:                    600px; +@modal-sm:                    300px; + + +//== Alerts +// +//## Define alert colors, border radius, and padding. + +@alert-padding:               15px; +@alert-border-radius:         @border-radius-base; +@alert-link-font-weight:      bold; + +@alert-success-bg:            @state-success-bg; +@alert-success-text:          @state-success-text; +@alert-success-border:        @state-success-border; + +@alert-info-bg:               @state-info-bg; +@alert-info-text:             @state-info-text; +@alert-info-border:           @state-info-border; + +@alert-warning-bg:            @state-warning-bg; +@alert-warning-text:          @state-warning-text; +@alert-warning-border:        @state-warning-border; + +@alert-danger-bg:             @state-danger-bg; +@alert-danger-text:           @state-danger-text; +@alert-danger-border:         @state-danger-border; + + +//== Progress bars +// +//## + +//** Background color of the whole progress component +@progress-bg:                 #f5f5f5; +//** Progress bar text color +@progress-bar-color:          #fff; + +//** Default progress bar color +@progress-bar-bg:             @brand-primary; +//** Success progress bar color +@progress-bar-success-bg:     @brand-success; +//** Warning progress bar color +@progress-bar-warning-bg:     @brand-warning; +//** Danger progress bar color +@progress-bar-danger-bg:      @brand-danger; +//** Info progress bar color +@progress-bar-info-bg:        @brand-info; + + +//== List group +// +//## + +//** Background color on `.list-group-item` +@list-group-bg:                 #fff; +//** `.list-group-item` border color +@list-group-border:             #ddd; +//** List group border radius +@list-group-border-radius:      @border-radius-base; + +//** Background color of single list elements on hover +@list-group-hover-bg:           #f5f5f5; +//** Text color of active list elements +@list-group-active-color:       @component-active-color; +//** Background color of active list elements +@list-group-active-bg:          @component-active-bg; +//** Border color of active list elements +@list-group-active-border:      @list-group-active-bg; +@list-group-active-text-color:  lighten(@list-group-active-bg, 40%); + +@list-group-link-color:         #555; +@list-group-link-heading-color: #333; + + +//== Panels +// +//## + +@panel-bg:                    #fff; +@panel-body-padding:          15px; +@panel-border-radius:         @border-radius-base; + +//** Border color for elements within panels +@panel-inner-border:          #ddd; +@panel-footer-bg:             #f5f5f5; + +@panel-default-text:          @gray-dark; +@panel-default-border:        #ddd; +@panel-default-heading-bg:    #f5f5f5; + +@panel-primary-text:          #fff; +@panel-primary-border:        @brand-primary; +@panel-primary-heading-bg:    @brand-primary; + +@panel-success-text:          @state-success-text; +@panel-success-border:        @state-success-border; +@panel-success-heading-bg:    @state-success-bg; + +@panel-info-text:             @state-info-text; +@panel-info-border:           @state-info-border; +@panel-info-heading-bg:       @state-info-bg; + +@panel-warning-text:          @state-warning-text; +@panel-warning-border:        @state-warning-border; +@panel-warning-heading-bg:    @state-warning-bg; + +@panel-danger-text:           @state-danger-text; +@panel-danger-border:         @state-danger-border; +@panel-danger-heading-bg:     @state-danger-bg; + + +//== Thumbnails +// +//## + +//** Padding around the thumbnail image +@thumbnail-padding:           4px; +//** Thumbnail background color +@thumbnail-bg:                @body-bg; +//** Thumbnail border color +@thumbnail-border:            #ddd; +//** Thumbnail border radius +@thumbnail-border-radius:     @border-radius-base; + +//** Custom text color for thumbnail captions +@thumbnail-caption-color:     @text-color; +//** Padding around the thumbnail caption +@thumbnail-caption-padding:   9px; + + +//== Wells +// +//## + +@well-bg:                     #f5f5f5; +@well-border:                 darken(@well-bg, 7%); + + +//== Badges +// +//## + +@badge-color:                 #fff; +//** Linked badge text color on hover +@badge-link-hover-color:      #fff; +@badge-bg:                    @gray-light; + +//** Badge text color in active nav link +@badge-active-color:          @link-color; +//** Badge background color in active nav link +@badge-active-bg:             #fff; + +@badge-font-weight:           bold; +@badge-line-height:           1; +@badge-border-radius:         10px; + + +//== Breadcrumbs +// +//## + +@breadcrumb-padding-vertical:   8px; +@breadcrumb-padding-horizontal: 15px; +//** Breadcrumb background color +@breadcrumb-bg:                 #f5f5f5; +//** Breadcrumb text color +@breadcrumb-color:              #ccc; +//** Text color of current page in the breadcrumb +@breadcrumb-active-color:       @gray-light; +//** Textual separator for between breadcrumb elements +@breadcrumb-separator:          "/"; + + +//== Carousel +// +//## + +@carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6); + +@carousel-control-color:                      #fff; +@carousel-control-width:                      15%; +@carousel-control-opacity:                    .5; +@carousel-control-font-size:                  20px; + +@carousel-indicator-active-bg:                #fff; +@carousel-indicator-border-color:             #fff; + +@carousel-caption-color:                      #fff; + + +//== Close +// +//## + +@close-font-weight:           bold; +@close-color:                 #000; +@close-text-shadow:           0 1px 0 #fff; + + +//== Code +// +//## + +@code-color:                  #c7254e; +@code-bg:                     #f9f2f4; + +@kbd-color:                   #fff; +@kbd-bg:                      #333; + +@pre-bg:                      #f5f5f5; +@pre-color:                   @gray-dark; +@pre-border-color:            #ccc; +@pre-scrollable-max-height:   340px; + + +//== Type +// +//## + +//** 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; + + +//== Miscellaneous +// +//## + +//** Horizontal line color. +@hr-border:                   @gray-lighter; + +//** Horizontal offset for forms and lists. +@component-offset-horizontal: 180px; diff --git a/bower_components/bootstrap/less/wells.less b/bower_components/bootstrap/less/wells.less new file mode 100644 index 0000000..15d072b --- /dev/null +++ b/bower_components/bootstrap/less/wells.less @@ -0,0 +1,29 @@ +// +// 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; +} | 
