Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/bootstrap-sass.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas McDonald <tom@conceptcoding.co.uk>2012-09-06 19:29:38 +0400
committerThomas McDonald <tom@conceptcoding.co.uk>2012-09-06 19:29:38 +0400
commitbc406b198148d8d2a4b56b7cd6592df60b961556 (patch)
treeec0418718facf9b1366e4f97f3fcbed41bf85f6e
parentc75e43845ce88e9a5db3b2da5b105149f6c01397 (diff)
parent433891e27d0ca43db7b6078621149b6c8d51c46c (diff)
Merge branch '2.1-wip'
-rw-r--r--.gitignore3
-rw-r--r--CHANGELOG.md4
-rw-r--r--Gemfile3
-rw-r--r--README.md5
-rw-r--r--bootstrap-sass.gemspec2
-rw-r--r--vendor/assets/images/glyphicons-halflings.pngbin13826 -> 12799 bytes
-rw-r--r--vendor/assets/javascripts/bootstrap-affix.js104
-rw-r--r--vendor/assets/javascripts/bootstrap-alert.js2
-rw-r--r--vendor/assets/javascripts/bootstrap-button.js2
-rw-r--r--vendor/assets/javascripts/bootstrap-carousel.js17
-rw-r--r--vendor/assets/javascripts/bootstrap-collapse.js7
-rw-r--r--vendor/assets/javascripts/bootstrap-dropdown.js82
-rw-r--r--vendor/assets/javascripts/bootstrap-modal.js169
-rw-r--r--vendor/assets/javascripts/bootstrap-popover.js13
-rw-r--r--vendor/assets/javascripts/bootstrap-scrollspy.js18
-rw-r--r--vendor/assets/javascripts/bootstrap-tab.js4
-rw-r--r--vendor/assets/javascripts/bootstrap-tooltip.js30
-rw-r--r--vendor/assets/javascripts/bootstrap-transition.js5
-rw-r--r--vendor/assets/javascripts/bootstrap-typeahead.js87
-rw-r--r--vendor/assets/javascripts/bootstrap.js1
-rw-r--r--vendor/assets/stylesheets/_bootstrap-responsive.scss23
-rw-r--r--vendor/assets/stylesheets/_bootstrap.scss4
-rw-r--r--vendor/assets/stylesheets/bootstrap/_accordion.scss5
-rw-r--r--vendor/assets/stylesheets/bootstrap/_alerts.scss29
-rw-r--r--vendor/assets/stylesheets/bootstrap/_breadcrumbs.scss22
-rw-r--r--vendor/assets/stylesheets/bootstrap/_button-groups.scss122
-rw-r--r--vendor/assets/stylesheets/bootstrap/_buttons.scss148
-rw-r--r--vendor/assets/stylesheets/bootstrap/_carousel.scss29
-rw-r--r--vendor/assets/stylesheets/bootstrap/_close.scss8
-rw-r--r--vendor/assets/stylesheets/bootstrap/_code.scss14
-rw-r--r--vendor/assets/stylesheets/bootstrap/_component-animations.scss11
-rw-r--r--vendor/assets/stylesheets/bootstrap/_dropdowns.scss107
-rw-r--r--vendor/assets/stylesheets/bootstrap/_forms.scss333
-rw-r--r--vendor/assets/stylesheets/bootstrap/_grid.scss19
-rw-r--r--vendor/assets/stylesheets/bootstrap/_hero-unit.scss6
-rw-r--r--vendor/assets/stylesheets/bootstrap/_labels-badges.scss30
-rw-r--r--vendor/assets/stylesheets/bootstrap/_layouts.scss3
-rw-r--r--vendor/assets/stylesheets/bootstrap/_mixins.scss277
-rw-r--r--vendor/assets/stylesheets/bootstrap/_modals.scss19
-rw-r--r--vendor/assets/stylesheets/bootstrap/_navbar.scss404
-rw-r--r--vendor/assets/stylesheets/bootstrap/_navs.scss106
-rw-r--r--vendor/assets/stylesheets/bootstrap/_pager.scss12
-rw-r--r--vendor/assets/stylesheets/bootstrap/_pagination.scss33
-rw-r--r--vendor/assets/stylesheets/bootstrap/_popovers.scss134
-rw-r--r--vendor/assets/stylesheets/bootstrap/_progress-bars.scss42
-rw-r--r--vendor/assets/stylesheets/bootstrap/_reset.scss46
-rw-r--r--vendor/assets/stylesheets/bootstrap/_responsive-1200px-min.scss16
-rw-r--r--vendor/assets/stylesheets/bootstrap/_responsive-767px-max.scss175
-rw-r--r--vendor/assets/stylesheets/bootstrap/_responsive-768px-979px.scss13
-rw-r--r--vendor/assets/stylesheets/bootstrap/_responsive-navbar.scss35
-rw-r--r--vendor/assets/stylesheets/bootstrap/_responsive-utilities.scss32
-rw-r--r--vendor/assets/stylesheets/bootstrap/_scaffolding.scss30
-rw-r--r--vendor/assets/stylesheets/bootstrap/_sprites.scss28
-rw-r--r--vendor/assets/stylesheets/bootstrap/_tables.scss117
-rw-r--r--vendor/assets/stylesheets/bootstrap/_thumbnails.scss17
-rw-r--r--vendor/assets/stylesheets/bootstrap/_tooltip.scss59
-rw-r--r--vendor/assets/stylesheets/bootstrap/_type.scss160
-rw-r--r--vendor/assets/stylesheets/bootstrap/_utilities.scss11
-rw-r--r--vendor/assets/stylesheets/bootstrap/_variables.scss176
-rw-r--r--vendor/assets/stylesheets/bootstrap/_wells.scss14
60 files changed, 2282 insertions, 1145 deletions
diff --git a/.gitignore b/.gitignore
index d6cfb46f..94f3476b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,5 @@
*.gem
.sass-cache
bootstrap.css
-bootstrap-responsive.css \ No newline at end of file
+bootstrap-responsive.css
+Gemfile.lock \ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5a9cf6e3..7db2456b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
# Changelog
+## 2.1.0.0
+* Updated to Bootstrap 2.1
+* Changed some mixin names to be more consistent. Nested mixins in Less are separated by a `-` when they are flattened in Sass.
+
## 2.0.4.1
* Fix `.row-fluid > spanX` nesting
* Small Javascript fixes for those staying on the 2.0.4 release
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 00000000..896d547d
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,3 @@
+source "https://rubygems.org"
+
+gemspec \ No newline at end of file
diff --git a/README.md b/README.md
index cdbbe725..eeeb06cf 100644
--- a/README.md
+++ b/README.md
@@ -6,9 +6,6 @@
Enjoy.
-## Updating
-Updating your application to a new version of `bootstrap-sass`? See our [changelog](https://github.com/thomas-mcdonald/bootstrap-sass/blob/master/CHANGELOG.md), [Bootstrap's changelog](https://github.com/twitter/bootstrap/wiki/Changelog), and this [guide to updating to Bootstrap 2.0](http://twitter.github.com/bootstrap/upgrading.html)
-
## Usage
### Rails
@@ -16,7 +13,7 @@ Updating your application to a new version of `bootstrap-sass`? See our [changel
In your Gemfile:
gem 'sass-rails', '~> 3.1'
- gem 'bootstrap-sass', '~> 2.0.4.1'
+ gem 'bootstrap-sass', '~> 2.1.0.0'
#### CSS
diff --git a/bootstrap-sass.gemspec b/bootstrap-sass.gemspec
index a5582475..0ca57914 100644
--- a/bootstrap-sass.gemspec
+++ b/bootstrap-sass.gemspec
@@ -1,6 +1,6 @@
Gem::Specification.new do |s|
s.name = "bootstrap-sass"
- s.version = '2.0.4.1'
+ s.version = '2.1.0.0'
s.authors = ["Thomas McDonald"]
s.email = 'tom@conceptcoding.co.uk'
s.summary = "Twitter's Bootstrap, converted to Sass and ready to drop into Rails or Compass"
diff --git a/vendor/assets/images/glyphicons-halflings.png b/vendor/assets/images/glyphicons-halflings.png
index 79bc568c..a9969993 100644
--- a/vendor/assets/images/glyphicons-halflings.png
+++ b/vendor/assets/images/glyphicons-halflings.png
Binary files differ
diff --git a/vendor/assets/javascripts/bootstrap-affix.js b/vendor/assets/javascripts/bootstrap-affix.js
new file mode 100644
index 00000000..c6b8208a
--- /dev/null
+++ b/vendor/assets/javascripts/bootstrap-affix.js
@@ -0,0 +1,104 @@
+/* ==========================================================
+ * bootstrap-affix.js v2.1.0
+ * http://twitter.github.com/bootstrap/javascript.html#affix
+ * ==========================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ========================================================== */
+
+
+!function ($) {
+
+ "use strict"; // jshint ;_;
+
+
+ /* AFFIX CLASS DEFINITION
+ * ====================== */
+
+ var Affix = function (element, options) {
+ this.options = $.extend({}, $.fn.affix.defaults, options)
+ this.$window = $(window).on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
+ this.$element = $(element)
+ this.checkPosition()
+ }
+
+ Affix.prototype.checkPosition = function () {
+ if (!this.$element.is(':visible')) return
+
+ var scrollHeight = $(document).height()
+ , scrollTop = this.$window.scrollTop()
+ , position = this.$element.offset()
+ , offset = this.options.offset
+ , offsetBottom = offset.bottom
+ , offsetTop = offset.top
+ , reset = 'affix affix-top affix-bottom'
+ , affix
+
+ if (typeof offset != 'object') offsetBottom = offsetTop = offset
+ if (typeof offsetTop == 'function') offsetTop = offset.top()
+ if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()
+
+ affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ?
+ false : offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ?
+ 'bottom' : offsetTop != null && scrollTop <= offsetTop ?
+ 'top' : false
+
+ if (this.affixed === affix) return
+
+ this.affixed = affix
+ this.unpin = affix == 'bottom' ? position.top - scrollTop : null
+
+ this.$element.removeClass(reset).addClass('affix' + (affix ? '-' + affix : ''))
+ }
+
+
+ /* AFFIX PLUGIN DEFINITION
+ * ======================= */
+
+ $.fn.affix = function (option) {
+ return this.each(function () {
+ var $this = $(this)
+ , data = $this.data('affix')
+ , options = typeof option == 'object' && option
+ if (!data) $this.data('affix', (data = new Affix(this, options)))
+ if (typeof option == 'string') data[option]()
+ })
+ }
+
+ $.fn.affix.Constructor = Affix
+
+ $.fn.affix.defaults = {
+ offset: 0
+ }
+
+
+ /* AFFIX DATA-API
+ * ============== */
+
+ $(window).on('load', function () {
+ $('[data-spy="affix"]').each(function () {
+ var $spy = $(this)
+ , data = $spy.data()
+
+ data.offset = data.offset || {}
+
+ data.offsetBottom && (data.offset.bottom = data.offsetBottom)
+ data.offsetTop && (data.offset.top = data.offsetTop)
+
+ $spy.affix(data)
+ })
+ })
+
+
+}(window.jQuery); \ No newline at end of file
diff --git a/vendor/assets/javascripts/bootstrap-alert.js b/vendor/assets/javascripts/bootstrap-alert.js
index 57890a9a..4dd31adb 100644
--- a/vendor/assets/javascripts/bootstrap-alert.js
+++ b/vendor/assets/javascripts/bootstrap-alert.js
@@ -1,5 +1,5 @@
/* ==========================================================
- * bootstrap-alert.js v2.0.4
+ * bootstrap-alert.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#alerts
* ==========================================================
* Copyright 2012 Twitter, Inc.
diff --git a/vendor/assets/javascripts/bootstrap-button.js b/vendor/assets/javascripts/bootstrap-button.js
index 7f187be6..d0413d6e 100644
--- a/vendor/assets/javascripts/bootstrap-button.js
+++ b/vendor/assets/javascripts/bootstrap-button.js
@@ -1,5 +1,5 @@
/* ============================================================
- * bootstrap-button.js v2.0.4
+ * bootstrap-button.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#buttons
* ============================================================
* Copyright 2012 Twitter, Inc.
diff --git a/vendor/assets/javascripts/bootstrap-carousel.js b/vendor/assets/javascripts/bootstrap-carousel.js
index 551de589..0b87eb8a 100644
--- a/vendor/assets/javascripts/bootstrap-carousel.js
+++ b/vendor/assets/javascripts/bootstrap-carousel.js
@@ -1,5 +1,5 @@
/* ==========================================================
- * bootstrap-carousel.js v2.0.4
+ * bootstrap-carousel.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#carousel
* ==========================================================
* Copyright 2012 Twitter, Inc.
@@ -46,7 +46,7 @@
}
, to: function (pos) {
- var $active = this.$element.find('.active')
+ var $active = this.$element.find('.item.active')
, children = $active.parent().children()
, activePos = children.index($active)
, that = this
@@ -68,6 +68,10 @@
, pause: function (e) {
if (!e) this.paused = true
+ if (this.$element.find('.next, .prev').length && $.support.transition.end) {
+ this.$element.trigger($.support.transition.end)
+ this.cycle()
+ }
clearInterval(this.interval)
this.interval = null
return this
@@ -84,13 +88,15 @@
}
, slide: function (type, next) {
- var $active = this.$element.find('.active')
+ var $active = this.$element.find('.item.active')
, $next = next || $active[type]()
, isCycling = this.interval
, direction = type == 'next' ? 'left' : 'right'
, fallback = type == 'next' ? 'first' : 'last'
, that = this
- , e = $.Event('slide')
+ , e = $.Event('slide', {
+ relatedTarget: $next[0]
+ })
this.sliding = true
@@ -138,9 +144,10 @@
var $this = $(this)
, data = $this.data('carousel')
, options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
+ , action = typeof option == 'string' ? option : options.slide
if (!data) $this.data('carousel', (data = new Carousel(this, options)))
if (typeof option == 'number') data.to(option)
- else if (typeof option == 'string' || (option = options.slide)) data[option]()
+ else if (action) data[action]()
else if (options.interval) data.cycle()
})
}
diff --git a/vendor/assets/javascripts/bootstrap-collapse.js b/vendor/assets/javascripts/bootstrap-collapse.js
index fbc915b9..391d9128 100644
--- a/vendor/assets/javascripts/bootstrap-collapse.js
+++ b/vendor/assets/javascripts/bootstrap-collapse.js
@@ -1,5 +1,5 @@
/* =============================================================
- * bootstrap-collapse.js v2.0.4
+ * bootstrap-collapse.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#collapse
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -67,7 +67,7 @@
this.$element[dimension](0)
this.transition('addClass', $.Event('show'), 'shown')
- this.$element[dimension](this.$element[0][scroll])
+ $.support.transition && this.$element[dimension](this.$element[0][scroll])
}
, hide: function () {
@@ -144,12 +144,13 @@
* ==================== */
$(function () {
- $('body').on('click.collapse.data-api', '[data-toggle=collapse]', function ( e ) {
+ $('body').on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
var $this = $(this), href
, target = $this.attr('data-target')
|| e.preventDefault()
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
, option = $(target).data('collapse') ? 'toggle' : $this.data()
+ $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
$(target).collapse(option)
})
})
diff --git a/vendor/assets/javascripts/bootstrap-dropdown.js b/vendor/assets/javascripts/bootstrap-dropdown.js
index 454a9684..bac22d00 100644
--- a/vendor/assets/javascripts/bootstrap-dropdown.js
+++ b/vendor/assets/javascripts/bootstrap-dropdown.js
@@ -1,5 +1,5 @@
/* ============================================================
- * bootstrap-dropdown.js v2.0.4
+ * bootstrap-dropdown.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#dropdowns
* ============================================================
* Copyright 2012 Twitter, Inc.
@@ -26,7 +26,7 @@
/* DROPDOWN CLASS DEFINITION
* ========================= */
- var toggle = '[data-toggle="dropdown"]'
+ var toggle = '[data-toggle=dropdown]'
, Dropdown = function (element) {
var $el = $(element).on('click.dropdown.data-api', this.toggle)
$('html').on('click.dropdown.data-api', function () {
@@ -41,34 +41,82 @@
, toggle: function (e) {
var $this = $(this)
, $parent
- , selector
, isActive
if ($this.is('.disabled, :disabled')) return
- selector = $this.attr('data-target')
+ $parent = getParent($this)
- if (!selector) {
- selector = $this.attr('href')
- selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+ isActive = $parent.hasClass('open')
+
+ clearMenus()
+
+ if (!isActive) {
+ $parent.toggleClass('open')
+ $this.focus()
}
- $parent = $(selector)
- $parent.length || ($parent = $this.parent())
+ return false
+ }
+
+ , keydown: function (e) {
+ var $this
+ , $items
+ , $active
+ , $parent
+ , isActive
+ , index
+
+ if (!/(38|40|27)/.test(e.keyCode)) return
+
+ $this = $(this)
+
+ e.preventDefault()
+ e.stopPropagation()
+
+ if ($this.is('.disabled, :disabled')) return
+
+ $parent = getParent($this)
isActive = $parent.hasClass('open')
- clearMenus()
+ if (!isActive || (isActive && e.keyCode == 27)) return $this.click()
- if (!isActive) $parent.toggleClass('open')
+ $items = $('[role=menu] li:not(.divider) a', $parent)
- return false
+ if (!$items.length) return
+
+ index = $items.index($items.filter(':focus'))
+
+ if (e.keyCode == 38 && index > 0) index-- // up
+ if (e.keyCode == 40 && index < $items.length - 1) index++ // down
+ if (!~index) index = 0
+
+ $items
+ .eq(index)
+ .focus()
}
}
function clearMenus() {
- $(toggle).parent().removeClass('open')
+ getParent($(toggle))
+ .removeClass('open')
+ }
+
+ function getParent($this) {
+ var selector = $this.attr('data-target')
+ , $parent
+
+ if (!selector) {
+ selector = $this.attr('href')
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+ }
+
+ $parent = $(selector)
+ $parent.length || ($parent = $this.parent())
+
+ return $parent
}
@@ -91,10 +139,12 @@
* =================================== */
$(function () {
- $('html').on('click.dropdown.data-api', clearMenus)
+ $('html')
+ .on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
$('body')
- .on('click.dropdown', '.dropdown form', function (e) { e.stopPropagation() })
- .on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
+ .on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
+ .on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
+ .on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
})
}(window.jQuery); \ No newline at end of file
diff --git a/vendor/assets/javascripts/bootstrap-modal.js b/vendor/assets/javascripts/bootstrap-modal.js
index 38fd0c84..62fbc951 100644
--- a/vendor/assets/javascripts/bootstrap-modal.js
+++ b/vendor/assets/javascripts/bootstrap-modal.js
@@ -1,5 +1,5 @@
/* =========================================================
- * bootstrap-modal.js v2.0.4
+ * bootstrap-modal.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#modals
* =========================================================
* Copyright 2012 Twitter, Inc.
@@ -26,10 +26,11 @@
/* MODAL CLASS DEFINITION
* ====================== */
- var Modal = function (content, options) {
+ var Modal = function (element, options) {
this.options = options
- this.$element = $(content)
+ this.$element = $(element)
.delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
+ this.options.remote && this.$element.find('.modal-body').load(this.options.remote)
}
Modal.prototype = {
@@ -52,8 +53,9 @@
this.isShown = true
- escape.call(this)
- backdrop.call(this, function () {
+ this.escape()
+
+ this.backdrop(function () {
var transition = $.support.transition && that.$element.hasClass('fade')
if (!that.$element.parent().length) {
@@ -67,7 +69,12 @@
that.$element[0].offsetWidth // force reflow
}
- that.$element.addClass('in')
+ that.$element
+ .addClass('in')
+ .attr('aria-hidden', false)
+ .focus()
+
+ that.enforceFocus()
transition ?
that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
@@ -91,90 +98,98 @@
$('body').removeClass('modal-open')
- escape.call(this)
+ this.escape()
+
+ $(document).off('focusin.modal')
- this.$element.removeClass('in')
+ this.$element
+ .removeClass('in')
+ .attr('aria-hidden', true)
$.support.transition && this.$element.hasClass('fade') ?
- hideWithTransition.call(this) :
- hideModal.call(this)
+ this.hideWithTransition() :
+ this.hideModal()
}
- }
-
-
- /* MODAL PRIVATE METHODS
- * ===================== */
-
- function hideWithTransition() {
- var that = this
- , timeout = setTimeout(function () {
- that.$element.off($.support.transition.end)
- hideModal.call(that)
- }, 500)
+ , enforceFocus: function () {
+ var that = this
+ $(document).on('focusin.modal', function (e) {
+ if (that.$element[0] !== e.target && !that.$element.has(e.target).length) {
+ that.$element.focus()
+ }
+ })
+ }
- this.$element.one($.support.transition.end, function () {
- clearTimeout(timeout)
- hideModal.call(that)
- })
- }
+ , escape: function () {
+ var that = this
+ if (this.isShown && this.options.keyboard) {
+ this.$element.on('keyup.dismiss.modal', function ( e ) {
+ e.which == 27 && that.hide()
+ })
+ } else if (!this.isShown) {
+ this.$element.off('keyup.dismiss.modal')
+ }
+ }
- function hideModal(that) {
- this.$element
- .hide()
- .trigger('hidden')
+ , hideWithTransition: function () {
+ var that = this
+ , timeout = setTimeout(function () {
+ that.$element.off($.support.transition.end)
+ that.hideModal()
+ }, 500)
+
+ this.$element.one($.support.transition.end, function () {
+ clearTimeout(timeout)
+ that.hideModal()
+ })
+ }
- backdrop.call(this)
- }
+ , hideModal: function (that) {
+ this.$element
+ .hide()
+ .trigger('hidden')
- function backdrop(callback) {
- var that = this
- , animate = this.$element.hasClass('fade') ? 'fade' : ''
+ this.backdrop()
+ }
- if (this.isShown && this.options.backdrop) {
- var doAnimate = $.support.transition && animate
+ , removeBackdrop: function () {
+ this.$backdrop.remove()
+ this.$backdrop = null
+ }
- this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
- .appendTo(document.body)
+ , backdrop: function (callback) {
+ var that = this
+ , animate = this.$element.hasClass('fade') ? 'fade' : ''
- if (this.options.backdrop != 'static') {
- this.$backdrop.click($.proxy(this.hide, this))
- }
+ if (this.isShown && this.options.backdrop) {
+ var doAnimate = $.support.transition && animate
- if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
+ this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
+ .appendTo(document.body)
- this.$backdrop.addClass('in')
+ if (this.options.backdrop != 'static') {
+ this.$backdrop.click($.proxy(this.hide, this))
+ }
- doAnimate ?
- this.$backdrop.one($.support.transition.end, callback) :
- callback()
+ if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
- } else if (!this.isShown && this.$backdrop) {
- this.$backdrop.removeClass('in')
+ this.$backdrop.addClass('in')
- $.support.transition && this.$element.hasClass('fade')?
- this.$backdrop.one($.support.transition.end, $.proxy(removeBackdrop, this)) :
- removeBackdrop.call(this)
+ doAnimate ?
+ this.$backdrop.one($.support.transition.end, callback) :
+ callback()
- } else if (callback) {
- callback()
- }
- }
+ } else if (!this.isShown && this.$backdrop) {
+ this.$backdrop.removeClass('in')
- function removeBackdrop() {
- this.$backdrop.remove()
- this.$backdrop = null
- }
+ $.support.transition && this.$element.hasClass('fade')?
+ this.$backdrop.one($.support.transition.end, $.proxy(this.removeBackdrop, this)) :
+ this.removeBackdrop()
- function escape() {
- var that = this
- if (this.isShown && this.options.keyboard) {
- $(document).on('keyup.dismiss.modal', function ( e ) {
- e.which == 27 && that.hide()
- })
- } else if (!this.isShown) {
- $(document).off('keyup.dismiss.modal')
- }
+ } else if (callback) {
+ callback()
+ }
+ }
}
@@ -206,12 +221,18 @@
$(function () {
$('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) {
- var $this = $(this), href
- , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
- , option = $target.data('modal') ? 'toggle' : $.extend({}, $target.data(), $this.data())
+ var $this = $(this)
+ , href = $this.attr('href')
+ , $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
+ , option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
e.preventDefault()
- $target.modal(option)
+
+ $target
+ .modal(option)
+ .one('hide', function () {
+ $this.focus()
+ })
})
})
diff --git a/vendor/assets/javascripts/bootstrap-popover.js b/vendor/assets/javascripts/bootstrap-popover.js
index 39fbe358..4ce7a16d 100644
--- a/vendor/assets/javascripts/bootstrap-popover.js
+++ b/vendor/assets/javascripts/bootstrap-popover.js
@@ -1,5 +1,5 @@
/* ===========================================================
- * bootstrap-popover.js v2.0.4
+ * bootstrap-popover.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#popovers
* ===========================================================
* Copyright 2012 Twitter, Inc.
@@ -26,7 +26,7 @@
/* POPOVER PUBLIC CLASS DEFINITION
* =============================== */
- var Popover = function ( element, options ) {
+ var Popover = function (element, options) {
this.init('popover', element, options)
}
@@ -43,8 +43,8 @@
, title = this.getTitle()
, content = this.getContent()
- $tip.find('.popover-title')[this.isHTML(title) ? 'html' : 'text'](title)
- $tip.find('.popover-content > *')[this.isHTML(content) ? 'html' : 'text'](content)
+ $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
+ $tip.find('.popover-content > *')[this.options.html ? 'html' : 'text'](content)
$tip.removeClass('fade top bottom left right in')
}
@@ -71,6 +71,10 @@
return this.$tip
}
+ , destroy: function () {
+ this.hide().$element.off('.' + this.type).removeData(this.type)
+ }
+
})
@@ -91,6 +95,7 @@
$.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, {
placement: 'right'
+ , trigger: 'click'
, content: ''
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
})
diff --git a/vendor/assets/javascripts/bootstrap-scrollspy.js b/vendor/assets/javascripts/bootstrap-scrollspy.js
index dce37181..df70ebdd 100644
--- a/vendor/assets/javascripts/bootstrap-scrollspy.js
+++ b/vendor/assets/javascripts/bootstrap-scrollspy.js
@@ -1,5 +1,5 @@
/* =============================================================
- * bootstrap-scrollspy.js v2.0.4
+ * bootstrap-scrollspy.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#scrollspy
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -23,15 +23,15 @@
"use strict"; // jshint ;_;
- /* SCROLLSPY CLASS DEFINITION
- * ========================== */
+ /* SCROLLSPY CLASS DEFINITION
+ * ========================== */
- function ScrollSpy( element, options) {
+ function ScrollSpy(element, options) {
var process = $.proxy(this.process, this)
, $element = $(element).is('body') ? $(window) : $(element)
, href
this.options = $.extend({}, $.fn.scrollspy.defaults, options)
- this.$scrollElement = $element.on('scroll.scroll.data-api', process)
+ this.$scrollElement = $element.on('scroll.scroll-spy.data-api', process)
this.selector = (this.options.target
|| ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|| '') + ' .nav li > a'
@@ -58,7 +58,7 @@
, href = $el.data('target') || $el.attr('href')
, $href = /^#\w/.test(href) && $(href)
return ( $href
- && href.length
+ && $href.length
&& [[ $href.position().top, href ]] ) || null
})
.sort(function (a, b) { return a[0] - b[0] })
@@ -108,7 +108,7 @@
.parent('li')
.addClass('active')
- if (active.parent('.dropdown-menu')) {
+ if (active.parent('.dropdown-menu').length) {
active = active.closest('li.dropdown').addClass('active')
}
@@ -121,7 +121,7 @@
/* SCROLLSPY PLUGIN DEFINITION
* =========================== */
- $.fn.scrollspy = function ( option ) {
+ $.fn.scrollspy = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('scrollspy')
@@ -141,7 +141,7 @@
/* SCROLLSPY DATA-API
* ================== */
- $(function () {
+ $(window).on('load', function () {
$('[data-spy="scroll"]').each(function () {
var $spy = $(this)
$spy.scrollspy($spy.data())
diff --git a/vendor/assets/javascripts/bootstrap-tab.js b/vendor/assets/javascripts/bootstrap-tab.js
index d87f3509..df2a7f7a 100644
--- a/vendor/assets/javascripts/bootstrap-tab.js
+++ b/vendor/assets/javascripts/bootstrap-tab.js
@@ -1,5 +1,5 @@
/* ========================================================
- * bootstrap-tab.js v2.0.4
+ * bootstrap-tab.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#tabs
* ========================================================
* Copyright 2012 Twitter, Inc.
@@ -26,7 +26,7 @@
/* TAB CLASS DEFINITION
* ==================== */
- var Tab = function ( element ) {
+ var Tab = function (element) {
this.element = $(element)
}
diff --git a/vendor/assets/javascripts/bootstrap-tooltip.js b/vendor/assets/javascripts/bootstrap-tooltip.js
index b476f1c4..4d06dfcc 100644
--- a/vendor/assets/javascripts/bootstrap-tooltip.js
+++ b/vendor/assets/javascripts/bootstrap-tooltip.js
@@ -1,5 +1,5 @@
/* ===========================================================
- * bootstrap-tooltip.js v2.0.4
+ * bootstrap-tooltip.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#tooltips
* Inspired by the original jQuery.tipsy by Jason Frame
* ===========================================================
@@ -44,11 +44,13 @@
this.options = this.getOptions(options)
this.enabled = true
- if (this.options.trigger != 'manual') {
- eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus'
+ if (this.options.trigger == 'click') {
+ this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
+ } else if (this.options.trigger != 'manual') {
+ eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus'
eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur'
- this.$element.on(eventIn, this.options.selector, $.proxy(this.enter, this))
- this.$element.on(eventOut, this.options.selector, $.proxy(this.leave, this))
+ this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
+ this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
}
this.options.selector ?
@@ -148,20 +150,11 @@
}
}
- , isHTML: function(text) {
- // html string detection logic adapted from jQuery
- return typeof text != 'string'
- || ( text.charAt(0) === "<"
- && text.charAt( text.length - 1 ) === ">"
- && text.length >= 3
- ) || /^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(text)
- }
-
, setContent: function () {
var $tip = this.tip()
, title = this.getTitle()
- $tip.find('.tooltip-inner')[this.isHTML(title) ? 'html' : 'text'](title)
+ $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
$tip.removeClass('fade in top bottom left right')
}
@@ -185,6 +178,8 @@
$.support.transition && this.$tip.hasClass('fade') ?
removeWithAnimation() :
$tip.remove()
+
+ return this
}
, fixTitle: function () {
@@ -244,6 +239,10 @@
this[this.tip().hasClass('in') ? 'hide' : 'show']()
}
+ , destroy: function () {
+ this.hide().$element.off('.' + this.type).removeData(this.type)
+ }
+
}
@@ -270,6 +269,7 @@
, trigger: 'hover'
, title: ''
, delay: 0
+ , html: true
}
}(window.jQuery);
diff --git a/vendor/assets/javascripts/bootstrap-transition.js b/vendor/assets/javascripts/bootstrap-transition.js
index 2f15dd00..f0913d86 100644
--- a/vendor/assets/javascripts/bootstrap-transition.js
+++ b/vendor/assets/javascripts/bootstrap-transition.js
@@ -1,5 +1,5 @@
/* ===================================================
- * bootstrap-transition.js v2.0.4
+ * bootstrap-transition.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#transitions
* ===================================================
* Copyright 2012 Twitter, Inc.
@@ -36,8 +36,7 @@
, transEndEventNames = {
'WebkitTransition' : 'webkitTransitionEnd'
, 'MozTransition' : 'transitionend'
- , 'OTransition' : 'otransitionend'
- , 'msTransition' : 'MSTransitionEnd'
+ , 'OTransition' : 'oTransitionEnd otransitionend'
, 'transition' : 'transitionend'
}
, name
diff --git a/vendor/assets/javascripts/bootstrap-typeahead.js b/vendor/assets/javascripts/bootstrap-typeahead.js
index 6a2abb17..ae57221c 100644
--- a/vendor/assets/javascripts/bootstrap-typeahead.js
+++ b/vendor/assets/javascripts/bootstrap-typeahead.js
@@ -1,5 +1,5 @@
/* =============================================================
- * bootstrap-typeahead.js v2.0.4
+ * bootstrap-typeahead.js v2.1.0
* http://twitter.github.com/bootstrap/javascript.html#typeahead
* =============================================================
* Copyright 2012 Twitter, Inc.
@@ -77,17 +77,23 @@
}
, lookup: function (event) {
- var that = this
- , items
- , q
+ var items
this.query = this.$element.val()
- if (!this.query) {
+ if (!this.query || this.query.length < this.options.minLength) {
return this.shown ? this.hide() : this
}
- items = $.grep(this.source, function (item) {
+ items = $.isFunction(this.source) ? this.source(this.query, $.proxy(this.process, this)) : this.source
+
+ return items ? this.process(items) : this
+ }
+
+ , process: function (items) {
+ var that = this
+
+ items = $.grep(items, function (item) {
return that.matcher(item)
})
@@ -168,8 +174,8 @@
.on('keypress', $.proxy(this.keypress, this))
.on('keyup', $.proxy(this.keyup, this))
- if ($.browser.webkit || $.browser.msie || $.browser.mozilla) {
- this.$element.on('keydown', $.proxy(this.keypress, this))
+ if ($.browser.webkit || $.browser.msie) {
+ this.$element.on('keydown', $.proxy(this.keydown, this))
}
this.$menu
@@ -177,6 +183,40 @@
.on('mouseenter', 'li', $.proxy(this.mouseenter, this))
}
+ , move: function (e) {
+ if (!this.shown) return
+
+ switch(e.keyCode) {
+ case 9: // tab
+ case 13: // enter
+ case 27: // escape
+ e.preventDefault()
+ break
+
+ case 38: // up arrow
+ e.preventDefault()
+ this.prev()
+ break
+
+ case 40: // down arrow
+ e.preventDefault()
+ this.next()
+ break
+ }
+
+ e.stopPropagation()
+ }
+
+ , keydown: function (e) {
+ this.suppressKeyPressRepeat = !~$.inArray(e.keyCode, [40,38,9,13,27])
+ this.move(e)
+ }
+
+ , keypress: function (e) {
+ if (this.suppressKeyPressRepeat) return
+ this.move(e)
+ }
+
, keyup: function (e) {
switch(e.keyCode) {
case 40: // down arrow
@@ -202,32 +242,6 @@
e.preventDefault()
}
- , keypress: function (e) {
- if (!this.shown) return
-
- switch(e.keyCode) {
- case 9: // tab
- case 13: // enter
- case 27: // escape
- e.preventDefault()
- break
-
- case 38: // up arrow
- if (e.type != 'keydown') break
- e.preventDefault()
- this.prev()
- break
-
- case 40: // down arrow
- if (e.type != 'keydown') break
- e.preventDefault()
- this.next()
- break
- }
-
- e.stopPropagation()
- }
-
, blur: function (e) {
var that = this
setTimeout(function () { that.hide() }, 150)
@@ -265,12 +279,13 @@
, items: 8
, menu: '<ul class="typeahead dropdown-menu"></ul>'
, item: '<li><a href="#"></a></li>'
+ , minLength: 1
}
$.fn.typeahead.Constructor = Typeahead
- /* TYPEAHEAD DATA-API
+ /* TYPEAHEAD DATA-API
* ================== */
$(function () {
@@ -282,4 +297,4 @@
})
})
-}(window.jQuery); \ No newline at end of file
+}(window.jQuery);
diff --git a/vendor/assets/javascripts/bootstrap.js b/vendor/assets/javascripts/bootstrap.js
index cdeec2f0..f28d8bbc 100644
--- a/vendor/assets/javascripts/bootstrap.js
+++ b/vendor/assets/javascripts/bootstrap.js
@@ -1,4 +1,5 @@
//= require bootstrap-transition
+//= require bootstrap-affix
//= require bootstrap-alert
//= require bootstrap-button
//= require bootstrap-carousel
diff --git a/vendor/assets/stylesheets/_bootstrap-responsive.scss b/vendor/assets/stylesheets/_bootstrap-responsive.scss
index 93db1cec..4c1e6bf4 100644
--- a/vendor/assets/stylesheets/_bootstrap-responsive.scss
+++ b/vendor/assets/stylesheets/_bootstrap-responsive.scss
@@ -1,7 +1,12 @@
-// Responsive.css.scss
-// For phone and tablet devices
-// -------------------------------------------------------------
-
+//
+// Bootstrap Responsive v2.1.0
+//
+// Copyright 2012 Twitter, Inc
+// Licensed under the Apache License v2.0
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Designed and built with all the love in the world @twitter by @mdo and @fat.
+// Converted to Sass by @thomasmcdonald_, and distributed as bootstrap-sass
// REPEAT VARIABLES & MIXINS
// -------------------------
@@ -10,22 +15,24 @@
@import "bootstrap/variables"; // Modify this for custom colors, font-sizes, etc
@import "bootstrap/mixins";
+
// RESPONSIVE CLASSES
// ------------------
@import "bootstrap/responsive-utilities";
+
// MEDIA QUERIES
// ------------------
-// Phones to portrait tablets and narrow desktops
-@import "bootstrap/responsive-767px-max";
+// Large desktops
+@import "bootstrap/responsive-1200px-min";
// Tablets to regular desktops
@import "bootstrap/responsive-768px-979px";
-// Large desktops
-@import "bootstrap/responsive-1200px-min";
+// Phones to portrait tablets and narrow desktops
+@import "bootstrap/responsive-767px-max";
// RESPONSIVE NAVBAR
diff --git a/vendor/assets/stylesheets/_bootstrap.scss b/vendor/assets/stylesheets/_bootstrap.scss
index 17ec4400..1cef1651 100644
--- a/vendor/assets/stylesheets/_bootstrap.scss
+++ b/vendor/assets/stylesheets/_bootstrap.scss
@@ -1,5 +1,5 @@
//
-// Bootstrap v2.0.3
+// Bootstrap v2.1.0
//
// Copyright 2012 Twitter, Inc
// Licensed under the Apache License v2.0
@@ -36,7 +36,7 @@
// Components: Buttons & Alerts
@import "bootstrap/buttons";
@import "bootstrap/button-groups";
-@import "bootstrap/alerts"; // Note: alerts share common CSS with buttons and thus have styles in buttons.less
+@import "bootstrap/alerts"; // Note: alerts share common CSS with buttons and thus have styles in _buttons.scss
// Components: Nav
@import "bootstrap/navs";
diff --git a/vendor/assets/stylesheets/bootstrap/_accordion.scss b/vendor/assets/stylesheets/bootstrap/_accordion.scss
index 91e0b966..d0043304 100644
--- a/vendor/assets/stylesheets/bootstrap/_accordion.scss
+++ b/vendor/assets/stylesheets/bootstrap/_accordion.scss
@@ -1,5 +1,6 @@
-// ACCORDION
-// ---------
+//
+// Accordion
+// --------------------------------------------------
// Parent container
diff --git a/vendor/assets/stylesheets/bootstrap/_alerts.scss b/vendor/assets/stylesheets/bootstrap/_alerts.scss
index ac8caa36..91a142ab 100644
--- a/vendor/assets/stylesheets/bootstrap/_alerts.scss
+++ b/vendor/assets/stylesheets/bootstrap/_alerts.scss
@@ -1,7 +1,11 @@
-// ALERT STYLES
-// ------------
+//
+// Alerts
+// --------------------------------------------------
+
+
+// Base styles
+// -------------------------
-// Base alert styles
.alert {
padding: 8px 35px 8px 14px;
margin-bottom: $baseLineHeight;
@@ -11,8 +15,8 @@
@include border-radius(4px);
color: $warningText;
}
-.alert-heading {
- color: inherit;
+.alert h4 {
+ margin: 0;
}
// Adjust close link position
@@ -20,18 +24,20 @@
position: relative;
top: -2px;
right: -21px;
- line-height: 18px;
+ line-height: $baseLineHeight;
}
+
// Alternate styles
-// ----------------
+// -------------------------
.alert-success {
background-color: $successBackground;
border-color: $successBorder;
color: $successText;
}
-.alert-danger, .alert-error {
+.alert-danger,
+.alert-error {
background-color: $errorBackground;
border-color: $errorBorder;
color: $errorText;
@@ -42,13 +48,16 @@
color: $infoText;
}
+
// Block alerts
-// ------------------------
+// -------------------------
+
.alert-block {
padding-top: 14px;
padding-bottom: 14px;
}
-.alert-block > p, .alert-block > ul {
+.alert-block > p,
+.alert-block > ul {
margin-bottom: 0;
}
.alert-block p + p {
diff --git a/vendor/assets/stylesheets/bootstrap/_breadcrumbs.scss b/vendor/assets/stylesheets/bootstrap/_breadcrumbs.scss
index a9c21177..a68523bc 100644
--- a/vendor/assets/stylesheets/bootstrap/_breadcrumbs.scss
+++ b/vendor/assets/stylesheets/bootstrap/_breadcrumbs.scss
@@ -1,14 +1,14 @@
-// BREADCRUMBS
-// -----------
+//
+// Breadcrumbs
+// --------------------------------------------------
+
.breadcrumb {
- padding: 7px 14px;
+ padding: 8px 15px;
margin: 0 0 $baseLineHeight;
list-style: none;
- @include gradient-vertical($white, #f5f5f5);
- border: 1px solid #ddd;
- @include border-radius(3px);
- @include box-shadow(inset 0 1px 0 $white);
+ background-color: #f5f5f5;
+ @include border-radius(4px);
li {
display: inline-block;
@include ie7-inline-block();
@@ -16,9 +16,9 @@
}
.divider {
padding: 0 5px;
- color: $grayLight;
+ color: #ccc;
}
- .active a {
- color: $grayDark;
+ .active {
+ color: $grayLight;
}
-} \ No newline at end of file
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_button-groups.scss b/vendor/assets/stylesheets/bootstrap/_button-groups.scss
index cbbb7fe7..a65da2ef 100644
--- a/vendor/assets/stylesheets/bootstrap/_button-groups.scss
+++ b/vendor/assets/stylesheets/bootstrap/_button-groups.scss
@@ -1,11 +1,13 @@
-// BUTTON GROUPS
-// -------------
+//
+// Button groups
+// --------------------------------------------------
// Make the div behave like a button
.btn-group {
position: relative;
- @include clearfix(); // clears the floated buttons
+ font-size: 0; // remove as part 1 of font-size inline-block hack
+ white-space: nowrap; // prevent buttons from wrapping when in tight spaces (e.g., the table on the tests page)
@include ie7-restore-left-whitespace();
}
@@ -16,21 +18,44 @@
// Optional: Group multiple button groups together for a toolbar
.btn-toolbar {
+ font-size: 0; // Hack to remove whitespace that results from using inline-block
margin-top: $baseLineHeight / 2;
margin-bottom: $baseLineHeight / 2;
.btn-group {
display: inline-block;
@include ie7-inline-block();
}
+ .btn + .btn,
+ .btn-group + .btn,
+ .btn + .btn-group {
+ margin-left: 5px;
+ }
}
// Float them, remove border radius, then re-add to first and last elements
.btn-group > .btn {
position: relative;
- float: left;
- margin-left: -1px;
@include border-radius(0);
}
+.btn-group > .btn + .btn {
+ margin-left: -1px;
+}
+.btn-group > .btn,
+.btn-group > .dropdown-menu {
+ font-size: $baseFontSize; // redeclare as part 2 of font-size inline-block hack
+}
+
+// Reset fonts for other sizes
+.btn-group > .btn-mini {
+ font-size: 11px;
+}
+.btn-group > .btn-small {
+ font-size: 12px;
+}
+.btn-group > .btn-large {
+ font-size: 16px;
+}
+
// 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;
@@ -42,7 +67,8 @@
border-bottom-left-radius: 4px;
}
// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it
-.btn-group > .btn:last-child, .btn-group > .dropdown-toggle {
+.btn-group > .btn:last-child,
+.btn-group > .dropdown-toggle {
-webkit-border-top-right-radius: 4px;
-moz-border-radius-topright: 4px;
border-top-right-radius: 4px;
@@ -60,7 +86,8 @@
-moz-border-radius-bottomleft: 6px;
border-bottom-left-radius: 6px;
}
-.btn-group > .btn.large:last-child, .btn-group > .large.dropdown-toggle {
+.btn-group > .btn.large:last-child,
+.btn-group > .large.dropdown-toggle {
-webkit-border-top-right-radius: 6px;
-moz-border-radius-topright: 6px;
border-top-right-radius: 6px;
@@ -70,12 +97,16 @@
}
// On hover/focus/active, bring the proper btn to front
-.btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active {
+.btn-group > .btn:hover,
+.btn-group > .btn:focus,
+.btn-group > .btn:active,
+.btn-group > .btn.active {
z-index: 2;
}
// On active and open, don't show outline
-.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle {
+.btn-group .dropdown-toggle:active,
+.btn-group.open .dropdown-toggle {
outline: 0;
}
@@ -85,24 +116,28 @@
// ----------------------
// Give the line between buttons some depth
-.btn-group > .dropdown-toggle {
+.btn-group > .btn + .dropdown-toggle {
padding-left: 8px;
padding-right: 8px;
@include box-shadow(#{inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)});
- *padding-top: 4px;
- *padding-bottom: 4px;
+ *padding-top: 5px;
+ *padding-bottom: 5px;
}
-.btn-group > .btn-mini.dropdown-toggle {
+.btn-group > .btn-mini + .dropdown-toggle {
padding-left: 5px;
padding-right: 5px;
+ *padding-top: 2px;
+ *padding-bottom: 2px;
}
-.btn-group > .btn-small.dropdown-toggle {
- *padding-top: 4px;
+.btn-group > .btn-small + .dropdown-toggle {
+ *padding-top: 5px;
*padding-bottom: 4px;
}
-.btn-group > .btn-large.dropdown-toggle {
+.btn-group > .btn-large + .dropdown-toggle {
padding-left: 12px;
padding-right: 12px;
+ *padding-top: 7px;
+ *padding-bottom: 7px;
}
.btn-group.open {
@@ -141,21 +176,16 @@
// Reposition the caret
.btn .caret {
- margin-top: 7px;
+ margin-top: 8px;
margin-left: 0;
}
-.btn:hover .caret, .open.btn-group .caret {
- @include opacity(1);
-}
// Carets in other button sizes
-.btn-mini .caret {
- margin-top: 5px;
-}
-.btn-small .caret {
+.btn-mini .caret,
+.btn-small .caret,
+.btn-large .caret {
margin-top: 6px;
}
.btn-large .caret {
- margin-top: 6px;
border-left-width: 5px;
border-right-width: 5px;
border-top-width: 5px;
@@ -169,10 +199,46 @@
// Account for other colors
-.btn-primary, .btn-warning, .btn-danger, .btn-info, .btn-success, .btn-inverse {
+.btn-primary,
+.btn-warning,
+.btn-danger,
+.btn-info,
+.btn-success,
+.btn-inverse {
.caret {
border-top-color: $white;
border-bottom-color: $white;
- @include opacity(0.75);
}
-} \ No newline at end of file
+}
+
+
+
+// Vertical button groups
+// ----------------------
+
+.btn-group-vertical {
+ display: inline-block; // makes buttons only take up the width they need
+ @include ie7-inline-block();
+}
+.btn-group-vertical .btn {
+ display: block;
+ float: none;
+ width: 100%;
+ @include border-radius(0);
+}
+.btn-group-vertical .btn + .btn {
+ margin-left: 0;
+ margin-top: -1px;
+}
+.btn-group-vertical .btn:first-child {
+ @include border-radius(4px 4px 0 0);
+}
+.btn-group-vertical .btn:last-child {
+ @include border-radius(0 0 4px 4px);
+}
+.btn-group-vertical .btn-large:first-child {
+ @include border-radius(6px 6px 0 0);
+}
+.btn-group-vertical .btn-large:last-child {
+ @include border-radius(0 0 6px 6px);
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_buttons.scss b/vendor/assets/stylesheets/bootstrap/_buttons.scss
index 6cd3ba0d..eb7c1383 100644
--- a/vendor/assets/stylesheets/bootstrap/_buttons.scss
+++ b/vendor/assets/stylesheets/bootstrap/_buttons.scss
@@ -1,5 +1,6 @@
-// BUTTON STYLES
-// -------------
+//
+// Buttons
+// --------------------------------------------------
// Base styles
@@ -9,62 +10,64 @@
.btn {
display: inline-block;
@include ie7-inline-block();
- padding: 4px 10px 4px;
+ padding: 4px 14px;
margin-bottom: 0; // For input.btn
font-size: $baseFontSize;
line-height: $baseLineHeight;
- *line-height: 20px;
- color: $grayDark;
+ *line-height: $baseLineHeight;
text-align: center;
- text-shadow: 0 1px 1px rgba(255,255,255,.75);
vertical-align: middle;
cursor: pointer;
- @include buttonBackground($btnBackground, $btnBackgroundHighlight);
+ @include buttonBackground($btnBackground, $btnBackgroundHighlight, $grayDark, 0 1px 1px rgba(255,255,255,.75));
border: 1px solid $btnBorder;
*border: 0; // Remove the border to prevent IE7's black border on input:focus
border-bottom-color: darken($btnBorder, 10%);
@include border-radius(4px);
@include ie7-restore-left-whitespace(); // Give IE7 some love
@include box-shadow(#{inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)});
-}
-// Hover state
-.btn:hover {
- color: $grayDark;
- text-decoration: none;
- background-color: darken($white, 10%);
- *background-color: darken($white, 15%); // Buttons in IE7 don't get borders, so darken on hover
- background-position: 0 -15px;
+ // Hover state
+ &:hover {
+ color: $grayDark;
+ text-decoration: none;
+ background-color: darken($white, 10%);
+ *background-color: darken($white, 15%); /* Buttons in IE7 don't get borders, so darken on hover */
+ background-position: 0 -15px;
+
+ // transition is only when going to hover, otherwise the background
+ // behind the gradient (there for IE<=9 fallback) gets mismatched
+ @include transition(background-position .1s linear);
+ }
- // transition is only when going to hover, otherwise the background
- // behind the gradient (there for IE<=9 fallback) gets mismatched
- @include transition(background-position .1s linear);
-}
+ // Focus state for keyboard and accessibility
+ &:focus {
+ @include tab-focus();
+ }
-// Focus state for keyboard and accessibility
-.btn:focus {
- @include tab-focus();
-}
+ // Active state
+ &.active,
+ &:active {
+ background-color: darken($white, 10%);
+ background-color: darken($white, 15%) \9;
+ background-image: none;
+ outline: 0;
+ @include box-shadow(#{inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)});
+ }
-// Active state
-.btn.active, .btn:active {
- background-color: darken($white, 10%);
- background-color: darken($white, 15%) \9;
- background-image: none;
- outline: 0;
- @include box-shadow(#{inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)});
-}
+ // Disabled state
+ &.disabled,
+ &[disabled] {
+ cursor: default;
+ background-color: darken($white, 10%);
+ background-image: none;
+ @include opacity(0.65);
+ @include box-shadow(none);
+ }
-// Disabled state
-.btn.disabled, .btn[disabled] {
- cursor: default;
- background-color: darken($white, 10%);
- background-image: none;
- @include opacity(0.65);
- @include box-shadow(none);
}
+
// Button Sizes
// --------------------------------------------------
@@ -76,38 +79,49 @@
@include border-radius(5px);
}
.btn-large [class^="icon-"] {
- margin-top: 1px;
+ margin-top: 2px;
}
// Small
.btn-small {
- padding: 5px 9px;
+ padding: 3px 9px;
font-size: $baseFontSize - 2px;
line-height: $baseLineHeight - 2px;
}
.btn-small [class^="icon-"] {
- margin-top: -1px;
+ margin-top: 0;
}
// Mini
.btn-mini {
padding: 2px 6px;
- font-size: $baseFontSize - 2px;
+ font-size: $baseFontSize - 3px;
line-height: $baseLineHeight - 4px;
}
+// Block button
+.btn-block {
+ display: block;
+ width: 100%;
+ padding-left: 0;
+ padding-right: 0;
+ @include box-sizing(border-box);
+}
+.btn-block + .btn-block {
+ margin-top: 5px;
+}
+
// Alternate buttons
// --------------------------------------------------
-// Set text color
-// -------------------------
-.btn-primary, .btn-primary:hover, .btn-warning, .btn-warning:hover, .btn-danger, .btn-danger:hover, .btn-success, .btn-success:hover, .btn-info, .btn-info:hover, .btn-inverse, .btn-inverse:hover {
- color: $white;
- text-shadow: 0 -1px 0 rgba(0,0,0,.25);
-}
// Provide *some* extra contrast for those who can get it
-.btn-primary.active, .btn-warning.active, .btn-danger.active, .btn-success.active, .btn-info.active, .btn-inverse.active {
+.btn-primary.active,
+.btn-warning.active,
+.btn-danger.active,
+.btn-success.active,
+.btn-info.active,
+.btn-inverse.active {
color: rgba(255,255,255,.75);
}
@@ -115,8 +129,8 @@
// -------------------------
.btn {
// reset here as of 2.0.3 due to Recess property order
- border-color: #ccc;
- border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
+ border-color: #c5c5c5;
+ border-color: rgba(0,0,0,.15) rgba(0,0,0,.15) rgba(0,0,0,.25);
}
.btn-primary {
@include buttonBackground($btnPrimaryBackground, $btnPrimaryBackgroundHighlight);
@@ -137,6 +151,7 @@
.btn-info {
@include buttonBackground($btnInfoBackground, $btnInfoBackgroundHighlight);
}
+// Inverse appears as dark gray
.btn-inverse {
@include buttonBackground($btnInverseBackground, $btnInverseBackgroundHighlight);
}
@@ -145,7 +160,8 @@
// Cross-browser Jank
// --------------------------------------------------
-button.btn, input[type="submit"].btn {
+button.btn,
+input[type="submit"].btn {
// Firefox 3.6 only I believe
&::-moz-focus-inner {
@@ -154,8 +170,9 @@ button.btn, input[type="submit"].btn {
}
// IE7 has some default padding on button controls
- *padding-top: 2px;
- *padding-bottom: 2px;
+ *padding-top: 3px;
+ *padding-bottom: 3px;
+
&.btn-large {
*padding-top: 7px;
*padding-bottom: 7px;
@@ -169,3 +186,26 @@ button.btn, input[type="submit"].btn {
*padding-bottom: 1px;
}
}
+
+
+// Link buttons
+// --------------------------------------------------
+
+// Make a button look and behave like a link
+.btn-link,
+.btn-link:active {
+ background-color: transparent;
+ background-image: none;
+ @include box-shadow(none);
+}
+.btn-link {
+ border-color: transparent;
+ cursor: pointer;
+ color: $linkColor;
+ @include border-radius(0);
+}
+.btn-link:hover {
+ color: $linkColorHover;
+ text-decoration: underline;
+ background-color: transparent;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_carousel.scss b/vendor/assets/stylesheets/bootstrap/_carousel.scss
index 4c2d53c1..c9c1a9c2 100644
--- a/vendor/assets/stylesheets/bootstrap/_carousel.scss
+++ b/vendor/assets/stylesheets/bootstrap/_carousel.scss
@@ -1,5 +1,7 @@
-// CAROUSEL
-// --------
+//
+// Carousel
+// --------------------------------------------------
+
.carousel {
position: relative;
@@ -27,13 +29,16 @@
line-height: 1;
}
- .active, .next, .prev { display: block; }
+ .active,
+ .next,
+ .prev { display: block; }
.active {
left: 0;
}
- .next, .prev {
+ .next,
+ .prev {
position: absolute;
top: 0;
width: 100%;
@@ -45,7 +50,8 @@
.prev {
left: -100%;
}
- .next.left, .prev.right {
+ .next.left,
+ .prev.right {
left: 0;
}
@@ -99,6 +105,7 @@
}
}
+
// Caption for text below images
// -----------------------------
@@ -107,10 +114,18 @@
left: 0;
right: 0;
bottom: 0;
- padding: 10px 15px 5px;
+ padding: 15px;
background: $grayDark;
background: rgba(0,0,0,.75);
}
-.carousel-caption h4, .carousel-caption p {
+.carousel-caption h4,
+.carousel-caption p {
color: $white;
+ line-height: $baseLineHeight;
+}
+.carousel-caption h4 {
+ margin: 0 0 5px;
}
+.carousel-caption p {
+ margin-bottom: 0;
+} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_close.scss b/vendor/assets/stylesheets/bootstrap/_close.scss
index 25bfe001..076e5737 100644
--- a/vendor/assets/stylesheets/bootstrap/_close.scss
+++ b/vendor/assets/stylesheets/bootstrap/_close.scss
@@ -1,5 +1,7 @@
-// CLOSE ICONS
-// -----------
+//
+// Close icons
+// --------------------------------------------------
+
.close {
float: right;
@@ -23,7 +25,7 @@
button.close {
padding: 0;
cursor: pointer;
- background-color: transparent;
+ background: transparent;
border: 0;
-webkit-appearance: none;
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_code.scss b/vendor/assets/stylesheets/bootstrap/_code.scss
index e2d4b965..2e39a8e4 100644
--- a/vendor/assets/stylesheets/bootstrap/_code.scss
+++ b/vendor/assets/stylesheets/bootstrap/_code.scss
@@ -1,12 +1,14 @@
-// Code.css.scss
-// Code typography styles for the <code> and <pre> elements
-// --------------------------------------------------------
+//
+// Code (inline and blocK)
+// --------------------------------------------------
+
// Inline and block code styles
-code, pre {
+code,
+pre {
padding: 0 3px 2px;
@include font-family-monospace();
- font-size: $baseFontSize - 1;
+ font-size: $baseFontSize - 2;
color: $grayDark;
@include border-radius(3px);
}
@@ -24,7 +26,7 @@ pre {
display: block;
padding: ($baseLineHeight - 1) / 2;
margin: 0 0 $baseLineHeight / 2;
- font-size: $baseFontSize * .925; // 13px to 12px
+ font-size: $baseFontSize - 1; // 14px to 13px
line-height: $baseLineHeight;
word-break: break-all;
word-wrap: break-word;
diff --git a/vendor/assets/stylesheets/bootstrap/_component-animations.scss b/vendor/assets/stylesheets/bootstrap/_component-animations.scss
index ac5588e1..66192431 100644
--- a/vendor/assets/stylesheets/bootstrap/_component-animations.scss
+++ b/vendor/assets/stylesheets/bootstrap/_component-animations.scss
@@ -1,5 +1,7 @@
-// COMPONENT ANIMATIONS
-// --------------------
+//
+// Component animations
+// --------------------------------------------------
+
.fade {
opacity: 0;
@@ -10,9 +12,10 @@
}
.collapse {
- position:relative;
+ position: relative;
height: 0;
- overflow:hidden;
+ overflow: hidden;
+ overflow: visible \9;
@include transition(height .35s ease);
&.in {
height: auto;
diff --git a/vendor/assets/stylesheets/bootstrap/_dropdowns.scss b/vendor/assets/stylesheets/bootstrap/_dropdowns.scss
index a63d5a1c..600db03c 100644
--- a/vendor/assets/stylesheets/bootstrap/_dropdowns.scss
+++ b/vendor/assets/stylesheets/bootstrap/_dropdowns.scss
@@ -1,15 +1,19 @@
-// DROPDOWN MENUS
-// --------------
+//
+// Dropdown menus
+// --------------------------------------------------
+
// Use the .menu class on any <li> element within the topbar or ul.tabs and you'll get some superfancy dropdowns
-.dropup, .dropdown {
+.dropup,
+.dropdown {
position: relative;
}
.dropdown-toggle {
// The caret makes the toggle a bit too tall in IE7
*margin-bottom: -3px;
}
-.dropdown-toggle:active, .open .dropdown-toggle {
+.dropdown-toggle:active,
+.open .dropdown-toggle {
outline: 0;
}
@@ -24,7 +28,6 @@
border-right: 4px solid transparent;
border-left: 4px solid transparent;
content: "";
- @include opacity(0.3);
}
// Place the caret
@@ -32,9 +35,6 @@
margin-top: 8px;
margin-left: 2px;
}
-.dropdown:hover .caret, .open .caret {
- @include opacity(1);
-}
// The dropdown menu (ul)
// ----------------------
@@ -46,15 +46,15 @@
display: none; // none by default, but block on "open" of the menu
float: left;
min-width: 160px;
- padding: 4px 0;
- margin: 1px 0 0; // override default ul
+ padding: 5px 0;
+ margin: 2px 0 0; // override default ul
list-style: none;
background-color: $dropdownBackground;
- border: 1px solid #ccc;
- border: 1px solid rgba(0,0,0,.2);
+ border: 1px solid #ccc; // Fallback for IE7-8
+ border: 1px solid $dropdownBorder;
*border-right-width: 2px;
*border-bottom-width: 2px;
- @include border-radius(5px);
+ @include border-radius(6px);
@include box-shadow(0 5px 10px rgba(0,0,0,.2));
-webkit-background-clip: padding-box;
-moz-background-clip: padding;
@@ -74,7 +74,7 @@
// Links within the dropdown menu
a {
display: block;
- padding: 3px 15px;
+ padding: 3px 20px;
clear: both;
font-weight: normal;
line-height: $baseLineHeight;
@@ -85,10 +85,38 @@
// Hover state
// -----------
-.dropdown-menu li > a:hover, .dropdown-menu .active > a, .dropdown-menu .active > a:hover {
- color: $dropdownLinkColorHover;
+.dropdown-menu li > a:hover,
+.dropdown-menu li > a:focus,
+.dropdown-submenu:hover > a {
text-decoration: none;
+ color: $dropdownLinkColorHover;
background-color: $dropdownLinkBackgroundHover;
+ @include gradient-vertical($dropdownLinkBackgroundHover, darken($dropdownLinkBackgroundHover, 5%));
+}
+
+// Active state
+// ------------
+.dropdown-menu .active > a,
+.dropdown-menu .active > a:hover {
+ color: $dropdownLinkColorHover;
+ text-decoration: none;
+ outline: 0;
+ background-color: $dropdownLinkBackgroundActive;
+ @include gradient-vertical($dropdownLinkBackgroundActive, darken($dropdownLinkBackgroundActive, 5%));
+}
+
+// Disabled state
+// --------------
+// Gray out text and ensure the hover state remains gray
+.dropdown-menu .disabled > a,
+.dropdown-menu .disabled > a:hover {
+ color: $grayLight;
+}
+// Nuke hover effects
+.dropdown-menu .disabled > a:hover {
+ text-decoration: none;
+ background-color: transparent;
+ cursor: default;
}
// Open state for the dropdown
@@ -114,7 +142,8 @@
// ------------------------------------------------------
// 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 {
+.dropup,
+.navbar-fixed-bottom .dropdown {
// Reverse the caret
.caret {
border-top: 0;
@@ -129,6 +158,50 @@
}
}
+// Sub menus
+// ---------------------------
+.dropdown-submenu {
+ position: relative;
+}
+.dropdown-submenu > .dropdown-menu {
+ top: 0;
+ left: 100%;
+ margin-top: -6px;
+ margin-left: -1px;
+ -webkit-border-radius: 0 6px 6px 6px;
+ -moz-border-radius: 0 6px 6px 6px;
+ border-radius: 0 6px 6px 6px;
+}
+.dropdown-submenu:hover .dropdown-menu {
+ display: block;
+}
+
+.dropdown-submenu > a:after {
+ display: block;
+ content: " ";
+ float: right;
+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid;
+ border-width: 5px 0 5px 5px;
+ border-left-color: darken($dropdownBackground, 20%);
+ margin-top: 5px;
+ margin-right: -10px;
+}
+.dropdown-submenu:hover > a:after {
+ border-left-color: $dropdownLinkColorHover;
+}
+
+
+// Tweak nav headers
+// -----------------
+// Increase padding from 15px to 20px on sides
+.dropdown .dropdown-menu .nav-header {
+ padding-left: 20px;
+ padding-right: 20px;
+}
+
// Typeahead
// ---------
.typeahead {
diff --git a/vendor/assets/stylesheets/bootstrap/_forms.scss b/vendor/assets/stylesheets/bootstrap/_forms.scss
index dc155104..ad2b771b 100644
--- a/vendor/assets/stylesheets/bootstrap/_forms.scss
+++ b/vendor/assets/stylesheets/bootstrap/_forms.scss
@@ -1,6 +1,6 @@
-// Forms.less
-// Base styles for various input types, form layouts, and states
-// -------------------------------------------------------------
+//
+// Forms
+// --------------------------------------------------
// GENERAL STYLES
@@ -22,7 +22,7 @@ legend {
display: block;
width: 100%;
padding: 0;
- margin-bottom: $baseLineHeight * 1.5;
+ margin-bottom: $baseLineHeight;
font-size: $baseFontSize * 1.5;
line-height: $baseLineHeight * 2;
color: $grayDark;
@@ -37,10 +37,17 @@ legend {
}
// Set font for forms
-label, input, button, select, textarea {
- @include font-shorthand($baseFontSize, normal, $baseLineHeight); // Set size, weight, line-height here
+label,
+input,
+button,
+select,
+textarea {
+ @include font-shorthand($baseFontSize,normal,$baseLineHeight); // Set size, weight, line-height here
}
-input, button, select, textarea {
+input,
+button,
+select,
+textarea {
font-family: $baseFontFamily; // And only set font-family here for those that need it (note the missing label element)
}
@@ -54,21 +61,37 @@ label {
// -------------------------
// Shared size and type resets
-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"], .uneditable-input {
+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"],
+.uneditable-input {
display: inline-block;
height: $baseLineHeight;
- padding: 4px;
+ padding: 4px 6px;
margin-bottom: 9px;
font-size: $baseFontSize;
line-height: $baseLineHeight;
color: $gray;
+ @include border-radius($inputBorderRadius);
}
// Reset appearance properties for textual inputs and textarea
// Declare width for legacy (can't be on input[type=*] selectors or it's too specific)
-input, textarea {
+input,
+textarea {
width: 210px;
}
// Reset height since textareas have rows
@@ -76,12 +99,24 @@ textarea {
height: auto;
}
// Everything else
-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"], .uneditable-input {
+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"],
+.uneditable-input {
background-color: $inputBackground;
border: 1px solid $inputBorder;
- @include border-radius($inputBorderRadius);
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
@include transition(#{border linear .2s, box-shadow linear .2s});
@@ -95,76 +130,124 @@ input[type="url"], input[type="search"], input[type="tel"], input[type="color"],
}
// Position radios and checkboxes better
-input[type="radio"], input[type="checkbox"] {
- margin: 3px 0;
+input[type="radio"],
+input[type="checkbox"] {
+ margin: 4px 0 0;
*margin-top: 0; /* IE7 */
+ margin-top: 1px \9; /* IE8-9 */
line-height: normal;
cursor: pointer;
}
-// Reset width of input buttons, radios, checkboxes
-input[type="submit"], input[type="reset"], input[type="button"], input[type="radio"], input[type="checkbox"] {
+// Reset width of input images, buttons, radios, checkboxes
+input[type="file"],
+input[type="image"],
+input[type="submit"],
+input[type="reset"],
+input[type="button"],
+input[type="radio"],
+input[type="checkbox"] {
width: auto; // Override of generic input selector
}
-// Make uneditable textareas behave like a textarea
-.uneditable-textarea {
- width: auto;
- height: auto;
-}
-
// Set the height of select and file controls to match text inputs
-select, input[type="file"] {
- height: 28px; /* In IE7, the height of the select element cannot be changed by height, only font-size */
+select,
+input[type="file"] {
+ height: 30px; /* In IE7, the height of the select element cannot be changed by height, only font-size */
*margin-top: 4px; /* For IE7, add top margin to align select with labels */
- line-height: 28px;
+ line-height: 30px;
}
// Make select elements obey height by applying a border
select {
width: 220px; // default input width + 10px of padding that doesn't get applied
border: 1px solid #bbb;
+ background-color: $inputBackground; // Chrome on Linux and Mobile Safari need background-color
}
// Make multiple select elements height not fixed
-select[multiple], select[size] {
+select[multiple],
+select[size] {
height: auto;
}
// Focus for select, file, radio, and checkbox
-select:focus, input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus {
+select:focus,
+input[type="file"]:focus,
+input[type="radio"]:focus,
+input[type="checkbox"]:focus {
@include tab-focus();
}
+// Uneditable inputs
+// -------------------------
+
+// Make uneditable inputs look inactive
+.uneditable-input,
+.uneditable-textarea {
+ color: $grayLight;
+ background-color: darken($inputBackground, 1%);
+ border-color: $inputBorder;
+ @include box-shadow(inset 0 1px 2px rgba(0,0,0,.025));
+ cursor: not-allowed;
+}
+
+// For text that needs to appear as an input but should not be an input
+.uneditable-input {
+ overflow: hidden; // prevent text from wrapping, but still cut it off like an input does
+ white-space: nowrap;
+}
+
+// Make uneditable textareas behave like a textarea
+.uneditable-textarea {
+ width: auto;
+ height: auto;
+}
+
+
+// Placeholder
+// -------------------------
+
+// Placeholder text gets special styles; can't be bundled together though for some reason
+input,
+textarea {
+ @include placeholder();
+}
+
// CHECKBOXES & RADIOS
// -------------------
// Indent the labels to position radios/checkboxes as hanging
-.radio, .checkbox {
+.radio,
+.checkbox {
min-height: 18px; // clear the floating input if there is no label text
padding-left: 18px;
}
-.radio input[type="radio"], .checkbox input[type="checkbox"] {
+.radio input[type="radio"],
+.checkbox input[type="checkbox"] {
float: left;
margin-left: -18px;
}
// Move the options list down to align with labels
-.controls > .radio:first-child, .controls > .checkbox:first-child {
+.controls > .radio:first-child,
+.controls > .checkbox:first-child {
padding-top: 5px; // has to be padding because margin collaspes
}
// Radios and checkboxes on same line
// TODO v3: Convert .inline to .control-inline
-.radio.inline, .checkbox.inline {
+.radio.inline,
+.checkbox.inline {
display: inline-block;
padding-top: 5px;
margin-bottom: 0;
vertical-align: middle;
}
-.radio.inline + .radio.inline, .checkbox.inline + .checkbox.inline {
+.radio.inline + .radio.inline,
+.checkbox.inline + .checkbox.inline {
margin-left: 10px; // space out consecutive inline controls
}
@@ -182,15 +265,29 @@ select:focus, input[type="file"]:focus, input[type="radio"]:focus, input[type="c
.input-xxlarge { width: 530px; }
// Grid style input sizes
-input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input[class*="span"],
+input[class*="span"],
+select[class*="span"],
+textarea[class*="span"],
+.uneditable-input[class*="span"],
// Redeclare since the fluid row class is more specific
-.row-fluid input[class*="span"], .row-fluid select[class*="span"], .row-fluid textarea[class*="span"], .row-fluid .uneditable-input[class*="span"] {
+.row-fluid input[class*="span"],
+.row-fluid select[class*="span"],
+.row-fluid textarea[class*="span"],
+.row-fluid .uneditable-input[class*="span"] {
float: none;
margin-left: 0;
}
// Ensure input-prepend/append never wraps
-.input-append input[class*="span"], .input-append .uneditable-input[class*="span"], .input-prepend input[class*="span"],
-.input-prepend .uneditable-input[class*="span"], .row-fluid .input-prepend [class*="span"], .row-fluid .input-append [class*="span"] {
+.input-append input[class*="span"],
+.input-append .uneditable-input[class*="span"],
+.input-prepend input[class*="span"],
+.input-prepend .uneditable-input[class*="span"],
+.row-fluid input[class*="span"],
+.row-fluid select[class*="span"],
+.row-fluid textarea[class*="span"],
+.row-fluid .uneditable-input[class*="span"],
+.row-fluid .input-prepend [class*="span"],
+.row-fluid .input-append [class*="span"] {
display: inline-block;
}
@@ -199,7 +296,17 @@ input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditabl
// GRID SIZING FOR INPUTS
// ----------------------
-@include gridInput($gridColumnWidth, $gridGutterWidth);
+// Grid sizes
+@include grid-input($gridColumnWidth, $gridGutterWidth);
+
+// Control row for multiple inputs per line
+.controls-row {
+ @include clearfix(); // Clear the float from controls
+}
+.controls-row [class*="span"] {
+ float: left; // Float to collapse white-space for proper grid alignment
+}
+
@@ -207,13 +314,20 @@ input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditabl
// --------------
// Disabled and read-only inputs
-input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly] {
+input[disabled],
+select[disabled],
+textarea[disabled],
+input[readonly],
+select[readonly],
+textarea[readonly] {
cursor: not-allowed;
background-color: $inputDisabledBackground;
- border-color: #ddd;
}
// Explicitly reset the colors here
-input[type="radio"][disabled], input[type="checkbox"][disabled], input[type="radio"][readonly], input[type="checkbox"][readonly] {
+input[type="radio"][disabled],
+input[type="checkbox"][disabled],
+input[type="radio"][readonly],
+input[type="checkbox"][readonly] {
background-color: transparent;
}
@@ -238,7 +352,9 @@ input[type="radio"][disabled], input[type="checkbox"][disabled], input[type="rad
// HTML5 invalid states
// Shares styles with the .control-group.error above
-input:focus:required:invalid, textarea:focus:required:invalid, select:focus:required:invalid {
+input:focus:required:invalid,
+textarea:focus:required:invalid,
+select:focus:required:invalid {
color: #b94a48;
border-color: #ee5f5b;
&:focus {
@@ -261,27 +377,14 @@ input:focus:required:invalid, textarea:focus:required:invalid, select:focus:requ
@include clearfix(); // Adding clearfix to allow for .pull-right button containers
}
-// For text that needs to appear as an input but should not be an input
-.uneditable-input {
- overflow: hidden; // prevent text from wrapping, but still cut it off like an input does
- white-space: nowrap;
- cursor: not-allowed;
- background-color: $inputBackground;
- border-color: #eee;
- @include box-shadow(inset 0 1px 2px rgba(0,0,0,.025));
-}
-
-// Placeholder text gets special styles; can't be bundled together though for some reason
-// (sass-edit) - need special mixin
-@include rootPlaceholder();
-
// HELP TEXT
// ---------
-.help-block, .help-inline {
- color: $gray; // lighten the text some for contrast
+.help-block,
+.help-inline {
+ color: lighten($textColor, 15%); // lighten the text some for contrast
}
.help-block {
@@ -302,38 +405,44 @@ input:focus:required:invalid, textarea:focus:required:invalid, select:focus:requ
// ------------
// Allow us to put symbols and text within the input field for a cleaner look
-.input-prepend, .input-append {
+.input-append,
+.input-prepend {
margin-bottom: 5px;
- input, select, .uneditable-input {
+ font-size: 0;
+ white-space: nowrap; // Prevent span and input from separating
+
+ input,
+ select,
+ .uneditable-input {
position: relative; // placed here by default so that on :focus we can place the input above the .add-on for full border and box-shadow goodness
margin-bottom: 0; // prevent bottom margin from screwing up alignment in stacked forms
*margin-left: 0;
- vertical-align: middle;
+ font-size: $baseFontSize;
+ vertical-align: top;
@include border-radius(0 $inputBorderRadius $inputBorderRadius 0);
// Make input on top when focused so blue border and shadow always show
&:focus {
z-index: 2;
}
}
- .uneditable-input {
- border-left-color: #ccc;
- }
.add-on {
display: inline-block;
width: auto;
height: $baseLineHeight;
min-width: 16px;
padding: 4px 5px;
+ font-size: $baseFontSize;
font-weight: normal;
line-height: $baseLineHeight;
text-align: center;
text-shadow: 0 1px 0 $white;
- vertical-align: middle;
background-color: $grayLighter;
border: 1px solid #ccc;
}
- .add-on, .btn {
+ .add-on,
+ .btn {
margin-left: -1px;
+ vertical-align: top;
@include border-radius(0);
}
.active {
@@ -342,35 +451,40 @@ input:focus:required:invalid, textarea:focus:required:invalid, select:focus:requ
}
}
.input-prepend {
- .add-on, .btn {
+ .add-on,
+ .btn {
margin-right: -1px;
}
- .add-on:first-child, .btn:first-child {
+ .add-on:first-child,
+ .btn:first-child {
@include border-radius($inputBorderRadius 0 0 $inputBorderRadius);
}
}
.input-append {
- input, select, .uneditable-input {
- @include border-radius($inputBorderRadius 0 0 $inputBorderRadius);
- }
+ input,
+ select,
.uneditable-input {
- border-right-color: #ccc;
- border-left-color: #eee;
+ @include border-radius($inputBorderRadius 0 0 $inputBorderRadius);
}
- .add-on:last-child, .btn:last-child {
+ .add-on:last-child,
+ .btn:last-child {
@include border-radius(0 $inputBorderRadius $inputBorderRadius 0);
}
}
// Remove all border-radius for inputs with both prepend and append
.input-prepend.input-append {
- input, select, .uneditable-input {
+ input,
+ select,
+ .uneditable-input {
@include border-radius(0);
}
- .add-on:first-child, .btn:first-child {
+ .add-on:first-child,
+ .btn:first-child {
margin-right: -1px;
@include border-radius($inputBorderRadius 0 0 $inputBorderRadius);
}
- .add-on:last-child, .btn:last-child {
+ .add-on:last-child,
+ .btn:last-child {
margin-left: -1px;
@include border-radius(0 $inputBorderRadius $inputBorderRadius 0);
}
@@ -381,15 +495,34 @@ input:focus:required:invalid, textarea:focus:required:invalid, select:focus:requ
// SEARCH FORM
// -----------
-input.search-query { // input. fix the overwriting of the search-query and allow rounded corner for the search field
+input.search-query {
padding-right: 14px;
padding-right: 4px \9;
padding-left: 14px;
padding-left: 4px \9; /* IE7-8 doesn't have border-radius, so don't indent the padding */
- margin-bottom: 0; // remove the default margin on all inputs
- @include border-radius(14px);
+ margin-bottom: 0; // Remove the default margin on all inputs
+ @include border-radius(15px);
}
+/* Allow for input prepend/append in search forms */
+.form-search .input-append .search-query,
+.form-search .input-prepend .search-query {
+ @include border-radius(0); // Override due to specificity
+}
+.form-search .input-append .search-query {
+ @include border-radius(14px 0 0 14px)
+}
+.form-search .input-append .btn {
+ @include border-radius(0 14px 14px 0)
+}
+.form-search .input-prepend .search-query {
+ @include border-radius(0 14px 14px 0)
+}
+.form-search .input-prepend .btn {
+ @include border-radius(14px 0 0 14px)
+}
+
+
// HORIZONTAL & VERTICAL FORMS
@@ -398,33 +531,53 @@ input.search-query { // input. fix the overwriting of the search-query and allow
// Common properties
// -----------------
-.form-search, .form-inline, .form-horizontal {
- input, textarea, select, .help-inline, .uneditable-input, .input-prepend, .input-append {
+.form-search,
+.form-inline,
+.form-horizontal {
+ input,
+ textarea,
+ select,
+ .help-inline,
+ .uneditable-input,
+ .input-prepend,
+ .input-append {
display: inline-block;
@include ie7-inline-block();
margin-bottom: 0;
+ vertical-align: middle;
}
// Re-hide hidden elements due to specifity
.hide {
display: none;
}
}
-.form-search label, .form-inline label {
+.form-search label,
+.form-inline label,
+.form-search .btn-group,
+.form-inline .btn-group {
display: inline-block;
}
// Remove margin for input-prepend/-append
-.form-search .input-append, .form-inline .input-append, .form-search .input-prepend, .form-inline .input-prepend {
+.form-search .input-append,
+.form-inline .input-append,
+.form-search .input-prepend,
+.form-inline .input-prepend {
margin-bottom: 0;
}
// Inline checkbox/radio labels (remove padding on left)
-.form-search .radio, .form-search .checkbox, .form-inline .radio, .form-inline .checkbox {
+.form-search .radio,
+.form-search .checkbox,
+.form-inline .radio,
+.form-inline .checkbox {
padding-left: 0;
margin-bottom: 0;
vertical-align: middle;
}
// Remove float and margin, set to inline-block
-.form-search .radio input[type="radio"], .form-search .checkbox input[type="checkbox"],
-.form-inline .radio input[type="radio"], .form-inline .checkbox input[type="checkbox"] {
+.form-search .radio input[type="radio"],
+.form-search .checkbox input[type="checkbox"],
+.form-inline .radio input[type="radio"],
+.form-inline .checkbox input[type="checkbox"] {
float: left;
margin-right: 3px;
margin-left: 0;
diff --git a/vendor/assets/stylesheets/bootstrap/_grid.scss b/vendor/assets/stylesheets/bootstrap/_grid.scss
index 49cd48fc..e324f00f 100644
--- a/vendor/assets/stylesheets/bootstrap/_grid.scss
+++ b/vendor/assets/stylesheets/bootstrap/_grid.scss
@@ -1,5 +1,20 @@
+//
+// Grid system
+// --------------------------------------------------
+
// Fixed (940px)
-@include gridCore($gridColumnWidth, $gridGutterWidth);
+@include grid-core($gridColumnWidth, $gridGutterWidth);
// Fluid (940px)
-@include gridFluid($fluidGridColumnWidth, $fluidGridGutterWidth); \ No newline at end of file
+@include grid-fluid($fluidGridColumnWidth, $fluidGridGutterWidth);
+
+// Reset utility classes due to specificity
+[class*="span"].hide,
+.row-fluid [class*="span"].hide {
+ display: none;
+}
+
+[class*="span"].pull-right,
+.row-fluid [class*="span"].pull-right {
+ float: right;
+} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_hero-unit.scss b/vendor/assets/stylesheets/bootstrap/_hero-unit.scss
index d2690a30..26707d35 100644
--- a/vendor/assets/stylesheets/bootstrap/_hero-unit.scss
+++ b/vendor/assets/stylesheets/bootstrap/_hero-unit.scss
@@ -1,5 +1,7 @@
-// HERO UNIT
-// ---------
+//
+// Hero unit
+// --------------------------------------------------
+
.hero-unit {
padding: 60px;
diff --git a/vendor/assets/stylesheets/bootstrap/_labels-badges.scss b/vendor/assets/stylesheets/bootstrap/_labels-badges.scss
index 981222a0..e49a0ca6 100644
--- a/vendor/assets/stylesheets/bootstrap/_labels-badges.scss
+++ b/vendor/assets/stylesheets/bootstrap/_labels-badges.scss
@@ -1,8 +1,11 @@
-// LABELS & BADGES
-// ---------------
+//
+// Labels and badges
+// --------------------------------------------------
+
// Base classes
-.label, .badge {
+.label,
+.badge {
font-size: $baseFontSize * .846;
font-weight: bold;
line-height: 14px; // ensure proper line-height if floated
@@ -24,7 +27,8 @@
// Hover state, but only for links
a {
- &.label:hover, &.badge:hover {
+ &.label:hover,
+ &.badge:hover {
color: $white;
text-decoration: none;
cursor: pointer;
@@ -33,6 +37,7 @@ a {
// Colors
// Only give background-color difference to links (and to simplify, we don't qualifty with `a` but [href] attribute)
+
// Important (red)
.label-important, .badge-important { background-color: $errorText; }
.label-important[href], .badge-important[href] { background-color: darken($errorText, 10%); }
@@ -47,4 +52,19 @@ a {
.label-info[href], .badge-info[href] { background-color: darken($infoText, 10%); }
// Inverse (black)
.label-inverse, .badge-inverse { background-color: $grayDark; }
-.label-inverse[href], .badge-inverse[href] { background-color: darken($grayDark, 10%); } \ No newline at end of file
+.label-inverse[href], .badge-inverse[href] { background-color: darken($grayDark, 10%); }
+
+// Quick fix for labels/badges in buttons
+.btn {
+ .label,
+ .badge {
+ position: relative;
+ top: -1px;
+ }
+}
+.btn-mini {
+ .label,
+ .badge {
+ top: 0;
+ }
+} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_layouts.scss b/vendor/assets/stylesheets/bootstrap/_layouts.scss
index b00312dc..27f612cd 100644
--- a/vendor/assets/stylesheets/bootstrap/_layouts.scss
+++ b/vendor/assets/stylesheets/bootstrap/_layouts.scss
@@ -1,7 +1,6 @@
//
// Layouts
-// Fixed-width and fluid (with sidebar) layouts
-// --------------------------------------------
+// --------------------------------------------------
// Container (centered, fixed-width layouts)
diff --git a/vendor/assets/stylesheets/bootstrap/_mixins.scss b/vendor/assets/stylesheets/bootstrap/_mixins.scss
index 245ba0d5..7d9130fe 100644
--- a/vendor/assets/stylesheets/bootstrap/_mixins.scss
+++ b/vendor/assets/stylesheets/bootstrap/_mixins.scss
@@ -1,6 +1,6 @@
-// Mixins.less
-// Snippets of reusable CSS to develop faster and keep code readable
-// -----------------------------------------------------------------
+//
+// Mixins
+// --------------------------------------------------
// UTILITY MIXINS
@@ -15,6 +15,9 @@
&:after {
display: table;
content: "";
+ // Fixes Opera/contenteditable bug:
+ // http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952
+ line-height: 0;
}
&:after {
clear: both;
@@ -63,10 +66,6 @@
@mixin ie7-restore-right-whitespace() {
*margin-right: .3em;
-
- &:last-child {
- *margin-left: 0;
- }
}
// Sizing shortcuts
@@ -93,21 +92,9 @@
}
}
-// Sass doesn't support using & at base level, so we need a special root placeholder mixin.
-@mixin rootPlaceholder($color: $placeholderText) {
- :-moz-placeholder {
- color: $color;
- }
- :-ms-input-placeholder {
- color: $color;
- }
- ::-webkit-input-placeholder {
- color: $color;
- }
-}
-
// Text overflow
-// ------------------------
+// -------------------------
+// Requires inline-block or block for proper styling
@mixin text-overflow() {
overflow: hidden;
text-overflow: ellipsis;
@@ -156,35 +143,47 @@
}
-
// FORMS
// --------------------------------------------------
+// Block level inputs
@mixin input-block-level() {
display: block;
width: 100%;
- min-height: 28px; // Make inputs at least the height of their button counterpart
+ min-height: 30px; // Make inputs at least the height of their button counterpart
@include box-sizing(border-box); // Makes inputs behave like true block-level elements
}
+
// Mixin for form field states
@mixin formFieldState($textColor: #555, $borderColor: #ccc, $backgroundColor: #f5f5f5) {
// Set the text color
- > label, .help-block, .help-inline {
+ > label,
+ .help-block,
+ .help-inline {
color: $textColor;
}
// Style inputs accordingly
- .checkbox, .radio, input, select, textarea {
+ .checkbox,
+ .radio,
+ input,
+ select,
+ textarea {
color: $textColor;
border-color: $borderColor;
+ @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
&:focus {
border-color: darken($borderColor, 10%);
- @include box-shadow(0 0 6px lighten($borderColor, 20%));
+ // Write out in full since the lighten() function isn't easily escaped
+ -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($borderColor, 20%);
+ -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($borderColor, 20%);
+ box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($borderColor, 20%);
}
}
// Give a small background color for input-prepend/-append
- .input-prepend .add-on, .input-append .add-on {
+ .input-prepend .add-on,
+ .input-append .add-on {
color: $textColor;
background-color: $backgroundColor;
border-color: $textColor;
@@ -192,6 +191,7 @@
}
+
// CSS3 PROPERTIES
// --------------------------------------------------
@@ -202,6 +202,46 @@
border-radius: $radius;
}
+// Single Corner Border Radius
+@mixin border-top-left-radius($radius) {
+ -webkit-border-top-left-radius: $radius;
+ -moz-border-radius-topleft: $radius;
+ border-top-left-radius: $radius;
+}
+@mixin border-top-right-radius($radius) {
+ -webkit-border-top-right-radius: $radius;
+ -moz-border-radius-topright: $radius;
+ border-top-right-radius: $radius;
+}
+@mixin border-bottom-right-radius($radius) {
+ -webkit-border-bottom-right-radius: $radius;
+ -moz-border-radius-bottomright: $radius;
+ border-bottom-right-radius: $radius;
+}
+@mixin border-bottom-left-radius($radius) {
+ -webkit-border-bottom-left-radius: $radius;
+ -moz-border-radius-bottomleft: $radius;
+ border-bottom-left-radius: $radius;
+}
+
+// Single Side Border Radius
+@mixin border-top-radius($radius) {
+ @include border-top-right-radius($radius);
+ @include border-top-left-radius($radius);
+}
+@mixin border-right-radius($radius) {
+ @include border-top-right-radius($radius);
+ @include border-bottom-right-radius($radius);
+}
+@mixin border-bottom-radius($radius) {
+ @include border-bottom-right-radius($radius);
+ @include border-bottom-left-radius($radius);
+}
+@mixin border-left-radius($radius) {
+ @include border-top-left-radius($radius);
+ @include border-bottom-left-radius($radius);
+}
+
// Drop shadows
@mixin box-shadow($shadow) {
-webkit-box-shadow: $shadow;
@@ -213,7 +253,6 @@
@mixin transition($transition) {
-webkit-transition: $transition;
-moz-transition: $transition;
- -ms-transition: $transition;
-o-transition: $transition;
transition: $transition;
}
@@ -240,7 +279,6 @@
-o-transform: translate($x, $y);
transform: translate($x, $y);
}
-
@mixin skew($x, $y) {
-webkit-transform: skew($x, $y);
-moz-transform: skew($x, $y);
@@ -248,13 +286,11 @@
-o-transform: skew($x, $y);
transform: skew($x, $y);
}
-
@mixin translate3d($x, $y, $z) {
- -webkit-transform: translate($x, $y, $z);
- -moz-transform: translate($x, $y, $z);
- -ms-transform: translate($x, $y, $z);
- -o-transform: translate($x, $y, $z);
- transform: translate($x, $y, $z);
+ -webkit-transform: translate3d($x, $y, $z);
+ -moz-transform: translate3d($x, $y, $z);
+ -o-transform: translate3d($x, $y, $z);
+ transform: translate3d($x, $y, $z);
}
// Backface visibility
@@ -262,10 +298,9 @@
// Default value is `visible`, but can be changed to `hidden
// See git pull https://github.com/dannykeane/bootstrap.git backface-visibility for examples
@mixin backface-visibility($visibility){
- -webkit-backface-visibility: $visibility;
- -moz-backface-visibility: $visibility;
- -ms-backface-visibility: $visibility;
- backface-visibility: $visibility;
+ -webkit-backface-visibility: $visibility;
+ -moz-backface-visibility: $visibility;
+ backface-visibility: $visibility;
}
// Background clipping
@@ -289,7 +324,6 @@
@mixin box-sizing($boxmodel) {
-webkit-box-sizing: $boxmodel;
-moz-box-sizing: $boxmodel;
- -ms-box-sizing: $boxmodel;
box-sizing: $boxmodel;
}
@@ -319,7 +353,6 @@
column-gap: $columnGap;
}
-
// Optional hyphenation
@mixin hyphens($mode: auto) {
word-wrap: break-word;
@@ -331,7 +364,7 @@
}
// Opacity
-@mixin opacity($opacity: 1) {
+@mixin opacity($opacity) {
opacity: $opacity;
filter: alpha(opacity=#{$opacity * 100});
}
@@ -351,7 +384,9 @@
}
// Gradient Bar Colors for buttons and alerts
-@mixin gradientBar($primaryColor, $secondaryColor) {
+@mixin gradientBar($primaryColor, $secondaryColor, $textColor: #fff, $textShadow: 0 -1px 0 rgba(0,0,0,.25)) {
+ color: $textColor;
+ text-shadow: $textShadow;
@include gradient-vertical($primaryColor, $secondaryColor);
border-color: $secondaryColor $secondaryColor darken($secondaryColor, 15%);
border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);
@@ -361,22 +396,20 @@
@mixin gradient-horizontal($startColor: #555, $endColor: #333) {
background-color: $endColor;
background-image: -moz-linear-gradient(left, $startColor, $endColor); // FF 3.6+
- background-image: -ms-linear-gradient(left, $startColor, $endColor); // IE10
background-image: -webkit-gradient(linear, 0 0, 100% 0, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(left, $startColor, $endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(left, $startColor, $endColor); // Opera 11.10
- background-image: linear-gradient(left, $startColor, $endColor); // Le standard
+ background-image: linear-gradient(to right, $startColor, $endColor); // Standard, IE10
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}', GradientType=1); // IE9 and down
}
@mixin gradient-vertical($startColor: #555, $endColor: #333) {
background-color: mix($startColor, $endColor, 60%);
background-image: -moz-linear-gradient(top, $startColor, $endColor); // FF 3.6+
- background-image: -ms-linear-gradient(top, $startColor, $endColor); // IE10
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(top, $startColor, $endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(top, $startColor, $endColor); // Opera 11.10
- background-image: linear-gradient(top, $startColor, $endColor); // The standard
+ background-image: linear-gradient(to bottom, $startColor, $endColor); // Standard, IE10
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}', GradientType=0); // IE9 and down
}
@@ -384,17 +417,15 @@
background-color: $endColor;
background-repeat: repeat-x;
background-image: -moz-linear-gradient($deg, $startColor, $endColor); // FF 3.6+
- background-image: -ms-linear-gradient($deg, $startColor, $endColor); // IE10
background-image: -webkit-linear-gradient($deg, $startColor, $endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient($deg, $startColor, $endColor); // Opera 11.10
- background-image: linear-gradient($deg, $startColor, $endColor); // The standard
+ background-image: linear-gradient($deg, $startColor, $endColor); // Standard, IE10
}
@mixin gradient-vertical-three-colors($startColor: #00b3ee, $midColor: #7a43b6, $colorStop: 50%, $endColor: #c3325f) {
background-color: mix($midColor, $endColor, 80%);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), color-stop($colorStop, $midColor), to($endColor));
background-image: -webkit-linear-gradient($startColor, $midColor $colorStop, $endColor);
- background-image: -moz-linear-gradient(top, $startColor, $midColor $colorStop, $endColor);
- background-image: -ms-linear-gradient($startColor, $midColor $colorStop, $endColor);
+ background-image: -moz-linear-gradient(top, $startColor, $midColor $colorStop*100%, $endColor);
background-image: -o-linear-gradient($startColor, $midColor $colorStop, $endColor);
background-image: linear-gradient($startColor, $midColor $colorStop, $endColor);
background-repeat: no-repeat;
@@ -405,30 +436,30 @@
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from($innerColor), to($outerColor));
background-image: -webkit-radial-gradient(circle, $innerColor, $outerColor);
background-image: -moz-radial-gradient(circle, $innerColor, $outerColor);
- background-image: -ms-radial-gradient(circle, $innerColor, $outerColor);
background-image: -o-radial-gradient(circle, $innerColor, $outerColor);
background-repeat: no-repeat;
}
-@mixin gradient-striped($color, $angle: -45deg) {
+@mixin gradient-striped($color, $angle: 45deg) {
background-color: $color;
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
background-image: -webkit-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: -moz-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
- background-image: -ms-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient($angle, rgba(255,255,255,.15) 25%, rgba(255,255,255,0) 25%, rgba(255,255,255,0) 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, rgba(255,255,255,0) 75%, rgba(255,255,255,0));
+ background-image: linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
}
+
// Reset filters for IE
@mixin reset-filter() {
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
+
// COMPONENT MIXINS
// --------------------------------------------------
// Horizontal dividers
-// -------------------
+// -------------------------
// Dividers (basically an hr) within dropdowns and nav lists
@mixin nav-divider($top: #e5e5e5, $bottom: $white) {
// IE7 needs a set width since we gave a height. Restricting just
@@ -446,20 +477,22 @@
// Button backgrounds
// ------------------
-@mixin buttonBackground($startColor, $endColor) {
+@mixin buttonBackground($startColor, $endColor, $textColor: #fff, $textShadow: 0 -1px 0 rgba(0,0,0,.25)) {
// gradientBar will set the background to a pleasing blend of these, to support IE<=9
- @include gradientBar($startColor, $endColor);
- *background-color: $endColor; // Darken IE7 buttons by default so they stand out more given they won't have borders
+ @include gradientBar($startColor, $endColor, $textColor, $textShadow);
+ *background-color: $endColor; /* Darken IE7 buttons by default so they stand out more given they won't have borders */
@include reset-filter();
// in these cases the gradient won't cover the background, so we override
&:hover, &:active, &.active, &.disabled, &[disabled] {
+ color: $textColor;
background-color: $endColor;
*background-color: darken($endColor, 5%);
}
// IE 7 + 8 can't handle box-shadow to show active, so we darken a bit ourselves
- &:active, &.active {
+ &:active,
+ &.active {
background-color: darken($endColor, 10%) \9;
}
}
@@ -472,41 +505,7 @@
margin-top: ($navbarHeight - $elementHeight) / 2;
}
-// Popover arrows
-// -------------------------
-// For tipsies and popovers
-@mixin popoverArrowTop($arrowWidth: 5px, $color: $black) {
- bottom: 0;
- left: 50%;
- margin-left: -$arrowWidth;
- border-left: $arrowWidth solid transparent;
- border-right: $arrowWidth solid transparent;
- border-top: $arrowWidth solid $color;
-}
-@mixin popoverArrowLeft($arrowWidth: 5px, $color: $black) {
- top: 50%;
- right: 0;
- margin-top: -$arrowWidth;
- border-top: $arrowWidth solid transparent;
- border-bottom: $arrowWidth solid transparent;
- border-left: $arrowWidth solid $color;
-}
-@mixin popoverArrowBottom($arrowWidth: 5px, $color: $black) {
- top: 0;
- left: 50%;
- margin-left: -$arrowWidth;
- border-left: $arrowWidth solid transparent;
- border-right: $arrowWidth solid transparent;
- border-bottom: $arrowWidth solid $color;
-}
-@mixin popoverArrowRight($arrowWidth: 5px, $color: $black) {
- top: 50%;
- left: 0;
- margin-top: -$arrowWidth;
- border-top: $arrowWidth solid transparent;
- border-bottom: $arrowWidth solid transparent;
- border-right: $arrowWidth solid $color;
-}
+
// Grid System
// -----------
@@ -538,41 +537,44 @@
}
// The Grid
-@mixin gridCore($columnWidth, $gutterWidth) {
+@mixin grid-core($gridColumnWidth, $gridGutterWidth) {
.row {
- margin-left: $gutterWidth * -1;
+ margin-left: $gridGutterWidth * -1;
@include clearfix();
}
[class*="span"] {
float: left;
- margin-left: $gutterWidth;
+ margin-left: $gridGutterWidth;
}
// Set the container width, and override it for fixed navbars in media queries
- .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container { @include gridCoreSpan($gridColumns, $columnWidth, $gutterWidth); }
+ .container,
+ .navbar-static-top .container,
+ .navbar-fixed-top .container,
+ .navbar-fixed-bottom .container { @include grid-core-span($gridColumns, $gridColumnWidth, $gridGutterWidth); }
- @include gridCoreSpanX($gridColumns, $columnWidth, $gutterWidth);
- @include gridCoreOffsetX($gridColumns, $columnWidth, $gutterWidth);
+ @include grid-core-spanX($gridColumns, $gridColumnWidth, $gridGutterWidth);
+ @include grid-core-offsetX($gridColumns, $gridColumnWidth, $gridGutterWidth);
}
-@mixin gridCoreSpanX($cols, $columnWidth, $gutterWidth) {
+@mixin grid-core-spanX($cols, $columnWidth, $gutterWidth) {
@for $i from 1 through $cols {
- .span#{$i} { @include gridCoreSpan($i, $columnWidth, $gutterWidth) };
+ .span#{$i} { @include grid-core-span($i, $columnWidth, $gutterWidth) };
}
}
-@mixin gridCoreSpan($columns, $columnWidth, $gutterWidth) {
+@mixin grid-core-span($columns, $columnWidth, $gutterWidth) {
width: ($columnWidth * $columns) + ($gutterWidth * ($columns - 1));
}
-@mixin gridCoreOffsetX($cols, $columnWidth, $gutterWidth) {
+@mixin grid-core-offsetX($cols, $columnWidth, $gutterWidth) {
@for $i from 1 through $cols {
- .offset#{$i} { @include gridCoreOffset($i, $columnWidth, $gutterWidth); };
+ .offset#{$i} { @include grid-core-offset($i, $columnWidth, $gutterWidth) };
}
}
-@mixin gridCoreOffset($columns, $columnWidth, $gutterWidth) {
+@mixin grid-core-offset($columns, $columnWidth, $gutterWidth) {
margin-left: ($columnWidth * $columns) + ($gutterWidth * ($columns + 1));
}
-@mixin gridFluid($columnWidth, $gutterWidth) {
+@mixin grid-fluid ($columnWidth, $gutterWidth) {
.row-fluid {
width: 100%;
@include clearfix();
@@ -580,42 +582,53 @@
@include input-block-level();
float: left;
margin-left: $gutterWidth;
- *margin-left: $gutterWidth - (.5 / ($gridRowWidth/1px) * 100 * 1%);
+ *margin-left: $gutterWidth - (.5px / $gridRowWidth * 100 * 1%);
}
[class*="span"]:first-child {
margin-left: 0;
}
- }
- // generate .row-fluid > .spanX
- @for $i from 1 through $gridColumns {
- .row-fluid > .span#{$i} { @include gridFluidSpan($i, $columnWidth, $gutterWidth) };
+
+ // generate .spanX and .offsetX
+ @for $i from 1 through $gridColumns {
+ .span#{$i} { @include grid-fluid-span($i, $columnWidth, $gutterWidth); }
+ .offset#{$i} { @include grid-fluid-offset($i, $columnWidth, $gutterWidth); }
+ .offset#{$i}:first-child { @include grid-fluid-offsetFirstChild($i, $columnWidth, $gutterWidth); }
+ }
}
}
-@mixin gridFluidSpan($columns, $columnWidth, $gutterWidth) {
+
+@mixin grid-fluid-span($columns, $columnWidth, $gutterWidth){
width: ($columnWidth * $columns) + ($gutterWidth * ($columns - 1));
- *width: ($columnWidth * $columns) + ($gutterWidth * ($columns - 1)) - (.5 / ($gridRowWidth/1px) * 100 * 1%);
+ *width: ($columnWidth * $columns) + ($gutterWidth * ($columns - 1)) - (.5px / $gridRowWidth * 100 * 1%);
}
-@mixin gridInput($columnWidth, $gutterWidth) {
- input, textarea, .uneditable-input {
+@mixin grid-fluid-offset($columns, $columnWidth, $gutterWidth) {
+ margin-left: ($columnWidth * $columns) + ($gutterWidth * ($columns - 1)) + ($gutterWidth*2);
+ *margin-left: ($columnWidth * $columns) + ($gutterWidth * ($columns - 1)) - (.5px / $gridRowWidth * 100 * 1%) + ($gutterWidth * 2) - (.5px / $gridRowWidth * 100 * 1%);
+}
+
+@mixin grid-fluid-offsetFirstChild($columns, $columnWidth, $gutterWidth) {
+ margin-left: ($columnWidth * $columns) + ($gutterWidth * ($columns - 1)) + ($gutterWidth);
+ *margin-left: ($columnWidth * $columns) + ($gutterWidth * ($columns - 1)) - (.5px / $gridRowWidth * 100 * 1%) + $gutterWidth - (.5px / $gridRowWidth * 100 * 1%);
+}
+
+@mixin grid-input($columnWidth, $gutterWidth) {
+ input,
+ textarea,
+ .uneditable-input {
margin-left: 0; // override margin-left from core grid system
}
- // generate .spanX
- @include gridInputSpanX($gridColumns, $columnWidth, $gutterWidth);
-}
-@mixin gridInputSpanX($cols, $columnWidth, $gutterWidth) {
- @for $i from 1 through $cols {
- input.span#{$i}, textarea.span#{$i}, .uneditable-input.span#{$i} { @include gridInputSpan($i, $columnWidth, $gutterWidth); }
+ // Space grid-sized controls properly if multiple per line
+ .controls-row [class*="span"] + [class*="span"] {
+ margin-left: $gutterWidth;
}
-}
-@mixin gridInputSpan($columns, $columnWidth, $gutterWidth) {
- width: (($columnWidth) * $columns) + ($gutterWidth * ($columns - 1)) - 10;
-}
-@mixin makeFluidColumn($columns, $columnWidth, $gutterWidth) {
- // This isn't perfect, but it's better than nothing.
- float: left;
- margin-left: $gutterWidth;
- @include gridFluidSpan($columns, $columnWidth, $gutterWidth);
+ @for $i from 1 through $gridColumns {
+ input.span#{$i}, textarea.span#{$i}, .uneditable-input.span#{$i} { @include grid-core-span($i, $columnWidth, $gutterWidth); }
+ }
}
+
+@mixin grid-input-span($columns, $columnWidth, $offsetWidth) {
+ width: (($columnWidth) * $columns) + ($gutterWidth * ($columns - 1)) - 14;
+} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_modals.scss b/vendor/assets/stylesheets/bootstrap/_modals.scss
index 2ad15856..1bf488ea 100644
--- a/vendor/assets/stylesheets/bootstrap/_modals.scss
+++ b/vendor/assets/stylesheets/bootstrap/_modals.scss
@@ -1,5 +1,7 @@
-// MODALS
-// ------
+//
+// Modals
+// --------------------------------------------------
+
// Recalculate z-index where appropriate
.modal-open {
@@ -22,7 +24,8 @@
&.fade { opacity: 0; }
}
-.modal-backdrop, .modal-backdrop.fade.in {
+.modal-backdrop,
+.modal-backdrop.fade.in {
@include opacity(0.8);
}
@@ -43,8 +46,7 @@
@include box-shadow(0 3px 7px rgba(0,0,0,0.3));
@include background-clip(padding-box);
&.fade {
- $transition: opacity .3s linear, top .3s ease-out;
- @include transition($transition);
+ @include transition(#{opacity .3s linear, top .3s ease-out});
top: -25%;
}
&.fade.in { top: 50%; }
@@ -54,6 +56,11 @@
border-bottom: 1px solid #eee;
// Close icon
.close { margin-top: 2px; }
+ // Heading
+ h3 {
+ margin: 0;
+ line-height: 30px;
+ }
}
// Body (where all modal content resides)
@@ -87,4 +94,4 @@
.btn-group .btn + .btn {
margin-left: -1px;
}
-}
+} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_navbar.scss b/vendor/assets/stylesheets/bootstrap/_navbar.scss
index ae95e8d5..373c0d01 100644
--- a/vendor/assets/stylesheets/bootstrap/_navbar.scss
+++ b/vendor/assets/stylesheets/bootstrap/_navbar.scss
@@ -1,27 +1,32 @@
-// NAVBAR (FIXED AND STATIC)
-// -------------------------
+//
+// Navbars (Redux)
+// --------------------------------------------------
// COMMON STYLES
// -------------
+// Base class and wrapper
.navbar {
+ overflow: visible;
+ margin-bottom: $baseLineHeight;
+ color: $navbarText;
+
// Fix for IE7's bad z-indexing so dropdowns don't appear below content that follows the navbar
*position: relative;
*z-index: 2;
-
- overflow: visible;
- margin-bottom: $baseLineHeight;
}
-// Gradient is applied to it's own element because overflow visible is not honored by IE when filter is present
+// Inner for background effects
+// Gradient is applied to its own element because overflow visible is not honored by IE when filter is present
.navbar-inner {
min-height: $navbarHeight;
- padding-left: 20px;
+ padding-left: 20px;
padding-right: 20px;
@include gradient-vertical($navbarBackgroundHighlight, $navbarBackground);
+ border: 1px solid $navbarBorder;
@include border-radius(4px);
- @include box-shadow(#{0 1px 3px rgba(0,0,0,.25), inset 0 -1px 0 rgba(0,0,0,.1)});
+ @include box-shadow(0 1px 4px rgba(0,0,0,.065));
}
// Set width to auto for default container
@@ -36,64 +41,83 @@
}
-// Brand, links, text, and buttons
-.navbar {
- color: $navbarText;
- // Hover and active states
- .brand:hover {
+// Brand: website or project name
+// -------------------------
+.navbar .brand {
+ float: left;
+ display: block;
+ // Vertically center the text given $navbarHeight
+ padding: (($navbarHeight - $baseLineHeight) / 2) 20px (($navbarHeight - $baseLineHeight) / 2);
+ margin-left: -20px; // negative indent to left-align the text down the page
+ font-size: 20px;
+ font-weight: 200;
+ color: $navbarBrandColor;
+ text-shadow: 0 1px 0 $navbarBackgroundHighlight;
+ &:hover {
text-decoration: none;
}
- // Website or project name
- .brand {
- float: left;
- display: block;
- // Vertically center the text given $navbarHeight
- $elementHeight: 20px;
- padding: (($navbarHeight - $elementHeight) / 2 - 2) 20px (($navbarHeight - $elementHeight) / 2 + 2);
- margin-left: -20px; // negative indent to left-align the text down the page
- font-size: 20px;
- font-weight: 200;
- line-height: 1;
- color: $navbarBrandColor;
- }
- // Plain text in topbar
- .navbar-text {
- margin-bottom: 0;
- line-height: $navbarHeight;
- }
- // Janky solution for now to account for links outside the .nav
- .navbar-link {
- color: $navbarLinkColor;
- &:hover {
- color: $navbarLinkColorHover;
- }
- }
- // Buttons in navbar
- .btn, .btn-group {
- @include navbarVerticalAlign(30px); // Vertically center in navbar
- }
- .btn-group .btn {
- margin: 0; // then undo the margin here so we don't accidentally double it
+}
+
+// Plain text in topbar
+// -------------------------
+.navbar-text {
+ margin-bottom: 0;
+ line-height: $navbarHeight;
+}
+
+// Janky solution for now to account for links outside the .nav
+// -------------------------
+.navbar-link {
+ color: $navbarLinkColor;
+ &:hover {
+ color: $navbarLinkColorHover;
}
}
+// Dividers in navbar
+// -------------------------
+.navbar .divider-vertical {
+ height: $navbarHeight;
+ margin: 0 9px;
+ border-left: 1px solid $navbarBackground;
+ border-right: 1px solid $navbarBackgroundHighlight;
+}
+
+// Buttons in navbar
+// -------------------------
+.navbar .btn,
+.navbar .btn-group {
+ @include navbarVerticalAlign(28px); // Vertically center in navbar
+}
+.navbar .btn-group .btn {
+ margin: 0; // then undo the margin here so we don't accidentally double it
+}
+
// Navbar forms
.navbar-form {
margin-bottom: 0; // remove default bottom margin
@include clearfix();
- input, select, .radio, .checkbox {
+ input,
+ select,
+ .radio,
+ .checkbox {
@include navbarVerticalAlign(30px); // Vertically center in navbar
}
- input, select {
+ input,
+ select,
+ .btn {
display: inline-block;
margin-bottom: 0;
}
- input[type="image"], input[type="checkbox"], input[type="radio"] {
+ input[type="image"],
+ input[type="checkbox"],
+ input[type="radio"] {
margin-top: 3px;
}
- .input-append, .input-prepend {
+ .input-append,
+ .input-prepend {
margin-top: 6px;
- white-space: nowrap; // prevents two items from separating within a .navbar-form that has .pull-left
+ white-space: nowrap; // preven two items from separating within a .navbar-form that has .pull-left
input {
margin-top: 0; // remove the margin on top since it's on the parent
}
@@ -104,67 +128,84 @@
.navbar-search {
position: relative;
float: left;
- @include navbarVerticalAlign(28px); // Vertically center in navbar
+ @include navbarVerticalAlign(30px); // Vertically center in navbar
margin-bottom: 0;
.search-query {
- padding: 4px 9px;
+ margin-bottom: 0;
+ padding: 4px 14px;
@include font-sans-serif(13px, normal, 1);
- color: $white;
- background-color: $navbarSearchBackground;
- border: 1px solid $navbarSearchBorder;
- @include box-shadow(#{inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15)});
- @include transition(none);
-
- @include placeholder($navbarSearchPlaceholderColor);
- // Placeholder text gets special styles; can't be a grouped selector
-// &:-moz-placeholder {
-// color: $navbarSearchPlaceholderColor;
-// }
-// &::-webkit-input-placeholder {
-// color: $navbarSearchPlaceholderColor;
-// }
-
- // Focus states (we use .focused since IE7-8 and down doesn't support :focus)
- &:focus, &.focused {
- padding: 5px 10px;
- color: $grayDark;
- text-shadow: 0 1px 0 $white;
- background-color: $navbarSearchBackgroundFocus;
- border: 0;
- @include box-shadow(0 0 3px rgba(0,0,0,.15));
- outline: 0;
- }
+ @include border-radius(15px); // redeclare because of specificity of the type attribute
+ }
+}
+
+
+
+// Static navbar
+// -------------------------
+
+.navbar-static-top {
+ position: static;
+ width: 100%;
+ margin-bottom: 0; // remove 18px margin for default navbar
+ .navbar-inner {
+ @include border-radius(0);
}
}
-// FIXED NAVBAR
-// ------------
+// Fixed navbar
+// -------------------------
// Shared (top/bottom) styles
-.navbar-fixed-top, .navbar-fixed-bottom {
+.navbar-fixed-top,
+.navbar-fixed-bottom {
position: fixed;
right: 0;
left: 0;
z-index: $zindexFixedNavbar;
- margin-bottom: 0; // remove 18px margin for static navbar
+ margin-bottom: 0; // remove 18px margin for default navbar
}
-.navbar-fixed-top .navbar-inner, .navbar-fixed-bottom .navbar-inner {
- padding-left: 0;
+.navbar-fixed-top,
+.navbar-fixed-bottom,
+.navbar-static-top {
+ .navbar-inner {
+ border: 0;
+ }
+}
+.navbar-fixed-top .navbar-inner,
+.navbar-fixed-bottom .navbar-inner {
+ padding-left: 0;
padding-right: 0;
@include border-radius(0);
}
-.navbar-fixed-top .container, .navbar-fixed-bottom .container {
- @include gridCoreSpan($gridColumns, $gridColumnWidth, $gridGutterWidth);
+// Reset container width
+// Required here as we reset the width earlier on and the grid mixins don't override early enough
+.navbar-static-top .container,
+.navbar-fixed-top .container,
+.navbar-fixed-bottom .container {
+ @include grid-core-span($gridColumns, $gridColumnWidth, $gridGutterWidth);
}
// Fixed to top
-.navbar-fixed-top { top: 0; }
+.navbar-fixed-top {
+ top: 0;
+}
+.navbar-fixed-top,
+.navbar-static-top {
+ .navbar-inner {
+ @include box-shadow(#{inset 0 -1px 0 rgba(0,0,0,.1), 0 1px 10px rgba(0,0,0,.1)});
+ }
+}
// Fixed to bottom
-.navbar-fixed-bottom { bottom: 0; }
+.navbar-fixed-bottom {
+ bottom: 0;
+ .navbar-inner {
+ @include box-shadow(#{inset 0 1px 0 rgba(0,0,0,.1), 0 -1px 10px rgba(0,0,0,.1)});
+ }
+}
@@ -182,7 +223,6 @@
float: right; // redeclare due to specificity
}
.navbar .nav > li {
- display: block;
float: left;
}
@@ -190,29 +230,17 @@
.navbar .nav > li > a {
float: none;
// Vertically center the text given $navbarHeight
- $elementHeight: 20px;
- padding: (($navbarHeight - $elementHeight) / 2 - 1) 10px (($navbarHeight - $elementHeight) / 2 + 1);
- line-height: 19px;
+ padding: (($navbarHeight - $baseLineHeight) / 2) 15px (($navbarHeight - $baseLineHeight) / 2);
color: $navbarLinkColor;
text-decoration: none;
- text-shadow: 0 -1px 0 rgba(0,0,0,.25);
-}
-// Buttons
-.navbar .btn {
- display: inline-block;
- padding: 4px 10px 4px;
- // Vertically center the button given $navbarHeight
- $elementHeight: 28px;
- margin: (($navbarHeight - $elementHeight) / 2 - 1) 5px (($navbarHeight - $elementHeight) / 2);
- line-height: $baseLineHeight;
+ text-shadow: 0 1px 0 $navbarBackgroundHighlight;
}
-.navbar .btn-group {
- margin: 0;
- // Vertically center the button given $navbarHeight
- $elementHeight: 28px;
- padding: (($navbarHeight - $elementHeight) / 2 - 1) 5px (($navbarHeight - $elementHeight) / 2);
+.navbar .nav .dropdown-toggle .caret {
+ margin-top: 8px;
}
+
// Hover
+.navbar .nav > li > a:focus,
.navbar .nav > li > a:hover {
background-color: $navbarLinkBackgroundHover; // "transparent" is default to differentiate :hover from .active
color: $navbarLinkColorHover;
@@ -220,26 +248,15 @@
}
// Active nav items
-.navbar .nav .active > a, .navbar .nav .active > a:hover {
+.navbar .nav > .active > a,
+.navbar .nav > .active > a:hover,
+.navbar .nav > .active > a:focus {
color: $navbarLinkColorActive;
text-decoration: none;
background-color: $navbarLinkBackgroundActive;
-}
-
-// Dividers (basically a vertical hr)
-.navbar .divider-vertical {
- height: $navbarHeight;
- width: 1px;
- margin: 0 9px;
- overflow: hidden;
- background-color: $navbarBackground;
- border-right: 1px solid $navbarBackgroundHighlight;
-}
-
-// Secondary (floated right) nav in topbar
-.navbar .nav.pull-right {
- margin-left: 10px;
- margin-right: 0;
+ -webkit-box-shadow: inset 0 3px 8px rgba(0,0,0,.125);
+ -moz-box-shadow: inset 0 3px 8px rgba(0,0,0,.125);
+ box-shadow: inset 0 3px 8px rgba(0,0,0,.125);
}
// Navbar button for toggling navbar items in responsive layouts
@@ -250,7 +267,7 @@
padding: 7px 10px;
margin-left: 5px;
margin-right: 5px;
- @include buttonBackground($navbarBackgroundHighlight, $navbarBackground);
+ @include buttonBackground(darken($navbarBackgroundHighlight, 5%), darken($navbarBackground, 5%));
@include box-shadow(#{inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075)});
}
.navbar .btn-navbar .icon-bar {
@@ -266,11 +283,12 @@
}
+
// Dropdown menus
// --------------
// Menu position and menu carets
-.navbar .dropdown-menu {
+.navbar .nav > li > .dropdown-menu {
&:before {
content: '';
display: inline-block;
@@ -294,7 +312,7 @@
}
}
// Menu position and menu caret support for dropups via extra dropup class
-.navbar-fixed-bottom .dropdown-menu {
+.navbar-fixed-bottom .nav > li > .dropdown-menu {
&:before {
border-top: 7px solid #ccc;
border-top-color: $dropdownBorder;
@@ -309,28 +327,28 @@
top: auto;
}
}
-// Dropdown toggle caret
-.navbar .nav li.dropdown .dropdown-toggle .caret, .navbar .nav li.dropdown.open .caret {
- border-top-color: $white;
- border-bottom-color: $white;
-}
-.navbar .nav li.dropdown.active .caret {
- @include opacity(1);
-}
// Remove background color from open dropdown
-.navbar .nav li.dropdown.open > .dropdown-toggle, .navbar .nav li.dropdown.active > .dropdown-toggle, .navbar .nav li.dropdown.open.active > .dropdown-toggle {
- background-color: transparent;
+.navbar .nav li.dropdown.open > .dropdown-toggle,
+.navbar .nav li.dropdown.active > .dropdown-toggle,
+.navbar .nav li.dropdown.open.active > .dropdown-toggle {
+ background-color: $navbarLinkBackgroundActive;
+ color: $navbarLinkColorActive;
}
-
-// Dropdown link on hover
-.navbar .nav li.dropdown.active > .dropdown-toggle:hover {
- color: $white;
+.navbar .nav li.dropdown > .dropdown-toggle .caret {
+ border-top-color: $navbarLinkColor;
+ border-bottom-color: $navbarLinkColor;
+}
+.navbar .nav li.dropdown.open > .dropdown-toggle .caret,
+.navbar .nav li.dropdown.active > .dropdown-toggle .caret,
+.navbar .nav li.dropdown.open.active > .dropdown-toggle .caret {
+ border-top-color: $navbarLinkColorActive;
+ border-bottom-color: $navbarLinkColorActive;
}
// Right aligned menus need alt position
-// TODO: rejigger this at some point to simplify the selectors
-.navbar .pull-right .dropdown-menu, .navbar .dropdown-menu.pull-right {
+.navbar .pull-right > li > .dropdown-menu,
+.navbar .nav > li > .dropdown-menu.pull-right {
left: auto;
right: 0;
&:before {
@@ -341,4 +359,108 @@
left: auto;
right: 13px;
}
+ .dropdown-menu {
+ left: auto;
+ right: 100%;
+ margin-left: 0;
+ margin-right: -1px;
+ @include border-radius(6px 0 6px 6px);
+ }
+}
+
+
+// Inverted navbar
+// -------------------------
+
+.navbar-inverse {
+ color: $navbarInverseText;
+
+ .navbar-inner {
+ @include gradient-vertical($navbarInverseBackgroundHighlight, $navbarInverseBackground);
+ border-color: $navbarInverseBorder;
+ }
+
+ .brand,
+ .nav > li > a {
+ color: $navbarInverseLinkColor;
+ text-shadow: 0 -1px 0 rgba(0,0,0,.25);
+ &:hover {
+ color: $navbarInverseLinkColorHover;
+ }
+ }
+
+ .nav > li > a:focus,
+ .nav > li > a:hover {
+ background-color: $navbarInverseLinkBackgroundHover;
+ color: $navbarInverseLinkColorHover;
+ }
+
+ .nav .active > a,
+ .nav .active > a:hover,
+ .nav .active > a:focus {
+ color: $navbarInverseLinkColorActive;
+ background-color: $navbarInverseLinkBackgroundActive;
+ }
+
+ // Inline text links
+ .navbar-link {
+ color: $navbarInverseLinkColor;
+ &:hover {
+ color: $navbarInverseLinkColorHover;
+ }
+ }
+
+ // Dividers in navbar
+ .divider-vertical {
+ border-left-color: $navbarInverseBackground;
+ border-right-color: $navbarInverseBackgroundHighlight;
+ }
+
+ // Dropdowns
+ .nav li.dropdown.open > .dropdown-toggle,
+ .nav li.dropdown.active > .dropdown-toggle,
+ .nav li.dropdown.open.active > .dropdown-toggle {
+ background-color: $navbarInverseLinkBackgroundActive;
+ color: $navbarInverseLinkColorActive;
+ }
+ .nav li.dropdown > .dropdown-toggle .caret {
+ border-top-color: $navbarInverseLinkColor;
+ border-bottom-color: $navbarInverseLinkColor;
+ }
+ .nav li.dropdown.open > .dropdown-toggle .caret,
+ .nav li.dropdown.active > .dropdown-toggle .caret,
+ .nav li.dropdown.open.active > .dropdown-toggle .caret {
+ border-top-color: $navbarInverseLinkColorActive;
+ border-bottom-color: $navbarInverseLinkColorActive;
+ }
+
+ // Navbar search
+ .navbar-search {
+ .search-query {
+ color: $white;
+ background-color: $navbarInverseSearchBackground;
+ border-color: $navbarInverseSearchBorder;
+ @include box-shadow(#{inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15)});
+ @include transition(none);
+ @include placeholder($navbarInverseSearchPlaceholderColor);
+
+ // Focus states (we use .focused since IE7-8 and down doesn't support :focus)
+ &:focus,
+ &.focused {
+ padding: 5px 15px;
+ color: $grayDark;
+ text-shadow: 0 1px 0 $white;
+ background-color: $navbarInverseSearchBackgroundFocus;
+ border: 0;
+ @include box-shadow(0 0 3px rgba(0,0,0,.15));
+ outline: 0;
+ }
+ }
+ }
+
+ // Navbar collapse button
+ .btn-navbar {
+ @include buttonBackground(darken($navbarInverseBackgroundHighlight, 5%), darken($navbarInverseBackground, 5%));
+ }
+
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_navs.scss b/vendor/assets/stylesheets/bootstrap/_navs.scss
index a83a95cb..a5bfc881 100644
--- a/vendor/assets/stylesheets/bootstrap/_navs.scss
+++ b/vendor/assets/stylesheets/bootstrap/_navs.scss
@@ -1,6 +1,6 @@
-// NAVIGATIONS
-// -----------
-
+//
+// Navs
+// --------------------------------------------------
// BASE CLASS
@@ -27,7 +27,7 @@
}
// Nav headers (for dropdowns and lists)
-.nav .nav-header {
+.nav-header {
display: block;
padding: 3px 15px;
font-size: 11px;
@@ -43,6 +43,7 @@
}
+
// NAV LIST
// --------
@@ -51,7 +52,8 @@
padding-right: 15px;
margin-bottom: 0;
}
-.nav-list > li > a, .nav-list .nav-header {
+.nav-list > li > a,
+.nav-list .nav-header {
margin-left: -15px;
margin-right: -15px;
text-shadow: 0 1px 0 rgba(255,255,255,.5);
@@ -59,7 +61,8 @@
.nav-list > li > a {
padding: 3px 15px;
}
-.nav-list > .active > a, .nav-list > .active > a:hover {
+.nav-list > .active > a,
+.nav-list > .active > a:hover {
color: $white;
text-shadow: 0 -1px 0 rgba(0,0,0,.2);
background-color: $linkColor;
@@ -78,13 +81,16 @@
// -------------
// Common styles
-.nav-tabs, .nav-pills {
+.nav-tabs,
+.nav-pills {
@include clearfix();
}
-.nav-tabs > li, .nav-pills > li {
+.nav-tabs > li,
+.nav-pills > li {
float: left;
}
-.nav-tabs > li > a, .nav-pills > li > a {
+.nav-tabs > li > a,
+.nav-pills > li > a {
padding-right: 12px;
padding-left: 12px;
margin-right: 2px;
@@ -114,7 +120,8 @@
}
}
// Active state, and it's :hover to override normal :hover
-.nav-tabs > .active > a, .nav-tabs > .active > a:hover {
+.nav-tabs > .active > a,
+.nav-tabs > .active > a:hover {
color: $gray;
background-color: $white;
border: 1px solid #ddd;
@@ -136,7 +143,8 @@
}
// Active state
-.nav-pills .active > a, .nav-pills .active > a:hover {
+.nav-pills > .active > a,
+.nav-pills > .active > a:hover {
color: $white;
background-color: $linkColor;
}
@@ -163,10 +171,10 @@
@include border-radius(0);
}
.nav-tabs.nav-stacked > li:first-child > a {
- @include border-radius(4px 4px 0 0);
+ @include border-top-radius(4px);
}
.nav-tabs.nav-stacked > li:last-child > a {
- @include border-radius(0 0 4px 4px);
+ @include border-bottom-radius(4px);
}
.nav-tabs.nav-stacked > li > a:hover {
border-color: #ddd;
@@ -187,47 +195,58 @@
// ---------
.nav-tabs .dropdown-menu {
- @include border-radius(0 0 5px 5px); // remove the top rounded corners here since there is a hard edge above the menu
+ @include border-radius(0 0 6px 6px); // remove the top rounded corners here since there is a hard edge above the menu
}
.nav-pills .dropdown-menu {
- @include border-radius(4px); // make rounded corners match the pills
+ @include border-radius(6px); // make rounded corners match the pills
}
// Default dropdown links
// -------------------------
// Make carets use linkColor to start
-.nav-tabs .dropdown-toggle .caret, .nav-pills .dropdown-toggle .caret {
+.nav .dropdown-toggle .caret {
border-top-color: $linkColor;
border-bottom-color: $linkColor;
margin-top: 6px;
}
-.nav-tabs .dropdown-toggle:hover .caret, .nav-pills .dropdown-toggle:hover .caret {
+.nav .dropdown-toggle:hover .caret {
border-top-color: $linkColorHover;
border-bottom-color: $linkColorHover;
}
+/* move down carets for tabs */
+.nav-tabs .dropdown-toggle .caret {
+ margin-top: 8px;
+}
// Active dropdown links
// -------------------------
-.nav-tabs .active .dropdown-toggle .caret, .nav-pills .active .dropdown-toggle .caret {
- border-top-color: $grayDark;
- border-bottom-color: $grayDark;
+.nav .active .dropdown-toggle .caret {
+ border-top-color: #fff;
+ border-bottom-color: #fff;
+}
+.nav-tabs .active .dropdown-toggle .caret {
+ border-top-color: $gray;
+ border-bottom-color: $gray;
}
// Active:hover dropdown links
// -------------------------
.nav > .dropdown.active > a:hover {
- color: $black;
cursor: pointer;
}
// Open dropdowns
// -------------------------
-.nav-tabs .open .dropdown-toggle, .nav-pills .open .dropdown-toggle, .nav > li.dropdown.open.active > a:hover {
+.nav-tabs .open .dropdown-toggle,
+.nav-pills .open .dropdown-toggle,
+.nav > li.dropdown.open.active > a:hover {
color: $white;
background-color: $grayLight;
border-color: $grayLight;
}
-.nav li.dropdown.open .caret, .nav li.dropdown.open.active .caret, .nav li.dropdown.open a:hover .caret {
+.nav li.dropdown.open .caret,
+.nav li.dropdown.open.active .caret,
+.nav li.dropdown.open a:hover .caret {
border-top-color: $white;
border-bottom-color: $white;
@include opacity(1);
@@ -256,15 +275,19 @@
}
// Remove border on bottom, left, right
-.tabs-below > .nav-tabs, .tabs-right > .nav-tabs, .tabs-left > .nav-tabs {
+.tabs-below > .nav-tabs,
+.tabs-right > .nav-tabs,
+.tabs-left > .nav-tabs {
border-bottom: 0;
}
// Show/hide tabbable areas
-.tab-content > .tab-pane, .pill-content > .pill-pane {
+.tab-content > .tab-pane,
+.pill-content > .pill-pane {
display: none;
}
-.tab-content > .active, .pill-content > .active {
+.tab-content > .active,
+.pill-content > .active {
display: block;
}
@@ -286,7 +309,8 @@
border-top-color: #ddd;
}
}
-.tabs-below > .nav-tabs > .active > a, .tabs-below > .nav-tabs > .active > a:hover {
+.tabs-below > .nav-tabs > .active > a,
+.tabs-below > .nav-tabs > .active > a:hover {
border-color: transparent #ddd #ddd #ddd;
}
@@ -294,10 +318,12 @@
// ------------
// Common styles
-.tabs-left > .nav-tabs > li, .tabs-right > .nav-tabs > li {
+.tabs-left > .nav-tabs > li,
+.tabs-right > .nav-tabs > li {
float: none;
}
-.tabs-left > .nav-tabs > li > a, .tabs-right > .nav-tabs > li > a {
+.tabs-left > .nav-tabs > li > a,
+.tabs-right > .nav-tabs > li > a {
min-width: 74px;
margin-right: 0;
margin-bottom: 3px;
@@ -316,7 +342,8 @@
.tabs-left > .nav-tabs > li > a:hover {
border-color: $grayLighter #ddd $grayLighter $grayLighter;
}
-.tabs-left > .nav-tabs .active > a, .tabs-left > .nav-tabs .active > a:hover {
+.tabs-left > .nav-tabs .active > a,
+.tabs-left > .nav-tabs .active > a:hover {
border-color: #ddd transparent #ddd #ddd;
*border-right-color: $white;
}
@@ -334,7 +361,24 @@
.tabs-right > .nav-tabs > li > a:hover {
border-color: $grayLighter $grayLighter $grayLighter #ddd;
}
-.tabs-right > .nav-tabs .active > a, .tabs-right > .nav-tabs .active > a:hover {
+.tabs-right > .nav-tabs .active > a,
+.tabs-right > .nav-tabs .active > a:hover {
border-color: #ddd #ddd #ddd transparent;
*border-left-color: $white;
}
+
+
+
+// DISABLED STATES
+// ---------------
+
+// Gray out text
+.nav > .disabled > a {
+ color: $grayLight;
+}
+// Nuke hover effects
+.nav > .disabled > a:hover {
+ text-decoration: none;
+ background-color: transparent;
+ cursor: default;
+} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_pager.scss b/vendor/assets/stylesheets/bootstrap/_pager.scss
index 3258eb99..9776f392 100644
--- a/vendor/assets/stylesheets/bootstrap/_pager.scss
+++ b/vendor/assets/stylesheets/bootstrap/_pager.scss
@@ -1,9 +1,10 @@
-// PAGER
-// -----
+//
+// Pager pagination
+// --------------------------------------------------
+
.pager {
- margin-left: 0;
- margin-bottom: $baseLineHeight;
+ margin: $baseLineHeight 0;
list-style: none;
text-align: center;
@include clearfix();
@@ -28,7 +29,8 @@
.pager .previous a {
float: left;
}
-.pager .disabled a, .pager .disabled a:hover {
+.pager .disabled a,
+.pager .disabled a:hover {
color: $grayLight;
background-color: #fff;
cursor: default;
diff --git a/vendor/assets/stylesheets/bootstrap/_pagination.scss b/vendor/assets/stylesheets/bootstrap/_pagination.scss
index 8e739d44..681d677a 100644
--- a/vendor/assets/stylesheets/bootstrap/_pagination.scss
+++ b/vendor/assets/stylesheets/bootstrap/_pagination.scss
@@ -1,5 +1,7 @@
-// PAGINATION
-// ----------
+//
+// Pagination (multiple pages)
+// --------------------------------------------------
+
.pagination {
height: $baseLineHeight * 2;
@@ -14,33 +16,42 @@
@include box-shadow(0 1px 2px rgba(0,0,0,.05));
}
.pagination li {
- display: inline;
-}
-.pagination a {
+ display: inline;
+ }
+.pagination a,
+.pagination span {
float: left;
padding: 0 14px;
line-height: ($baseLineHeight * 2) - 2;
text-decoration: none;
- border: 1px solid #ddd;
+ background-color: $paginationBackground;
+ border: 1px solid $paginationBorder;
border-left-width: 0;
}
-.pagination a:hover, .pagination .active a {
+.pagination a:hover,
+.pagination .active a,
+.pagination .active span {
background-color: #f5f5f5;
}
-.pagination .active a {
+.pagination .active a,
+.pagination .active span {
color: $grayLight;
cursor: default;
}
-.pagination .disabled span, .pagination .disabled a, .pagination .disabled a:hover {
+.pagination .disabled span,
+.pagination .disabled a,
+.pagination .disabled a:hover {
color: $grayLight;
background-color: transparent;
cursor: default;
}
-.pagination li:first-child a {
+.pagination li:first-child a,
+.pagination li:first-child span {
border-left-width: 1px;
@include border-radius(3px 0 0 3px);
}
-.pagination li:last-child a {
+.pagination li:last-child a,
+.pagination li:last-child span {
@include border-radius(0 3px 3px 0);
}
diff --git a/vendor/assets/stylesheets/bootstrap/_popovers.scss b/vendor/assets/stylesheets/bootstrap/_popovers.scss
index a0b200ec..3e4d3bd9 100644
--- a/vendor/assets/stylesheets/bootstrap/_popovers.scss
+++ b/vendor/assets/stylesheets/bootstrap/_popovers.scss
@@ -1,5 +1,7 @@
-// POPOVERS
-// --------
+//
+// Popovers
+// --------------------------------------------------
+
.popover {
position: absolute;
@@ -7,43 +9,109 @@
left: 0;
z-index: $zindexPopover;
display: none;
- padding: 5px;
- &.top { margin-top: -5px; }
- &.right { margin-left: 5px; }
- &.bottom { margin-top: 5px; }
- &.left { margin-left: -5px; }
- &.top .arrow { @include popoverArrowTop(); }
- &.right .arrow { @include popoverArrowRight(); }
- &.bottom .arrow { @include popoverArrowBottom(); }
- &.left .arrow { @include popoverArrowLeft(); }
- .arrow {
- position: absolute;
- width: 0;
- height: 0;
- }
-}
-.popover-inner {
- padding: 3px;
- width: 280px;
- overflow: hidden;
- background: $black; // has to be full background declaration for IE fallback
- background: rgba(0,0,0,.8);
+ width: 236px;
+ padding: 1px;
+ background-color: $popoverBackground;
+ -webkit-background-clip: padding-box;
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0,0,0,.2);
@include border-radius(6px);
- @include box-shadow(0 3px 7px rgba(0,0,0,0.3));
+ @include box-shadow(0 5px 10px rgba(0,0,0,.2));
+
+ // Offset the popover to account for the popover arrow
+ &.top { margin-bottom: 10px; }
+ &.right { margin-left: 10px; }
+ &.bottom { margin-top: 10px; }
+ &.left { margin-right: 10px; }
+
}
+
.popover-title {
- padding: 9px 15px;
- line-height: 1;
- background-color: #f5f5f5;
- border-bottom:1px solid #eee;
- @include border-radius(3px 3px 0 0);
+ margin: 0; // reset heading margin
+ padding: 8px 14px;
+ font-size: 14px;
+ font-weight: normal;
+ line-height: 18px;
+ background-color: $popoverTitleBackground;
+ border-bottom: 1px solid darken($popoverTitleBackground, 5%);
+ @include border-radius(5px 5px 0 0);
}
+
.popover-content {
- padding: 14px;
- background-color: $white;
- @include border-radius(0 0 3px 3px);
- @include background-clip(padding-box);
+ padding: 9px 14px;
p, ul, ol {
margin-bottom: 0;
}
+}
+
+// Arrows
+.popover .arrow,
+.popover .arrow:after {
+ position: absolute;
+ display: inline-block;
+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid;
+}
+.popover .arrow:after {
+ content: "";
+ z-index: -1;
+}
+
+.popover {
+ &.top .arrow {
+ bottom: -$popoverArrowWidth;
+ left: 50%;
+ margin-left: -$popoverArrowWidth;
+ border-width: $popoverArrowWidth $popoverArrowWidth 0;
+ border-top-color: $popoverArrowColor;
+ &:after {
+ border-width: $popoverArrowOuterWidth $popoverArrowOuterWidth 0;
+ border-top-color: $popoverArrowOuterColor;
+ bottom: -1px;
+ left: -$popoverArrowOuterWidth;
+ }
+ }
+ &.right .arrow {
+ top: 50%;
+ left: -$popoverArrowWidth;
+ margin-top: -$popoverArrowWidth;
+ border-width: $popoverArrowWidth $popoverArrowWidth $popoverArrowWidth 0;
+ border-right-color: $popoverArrowColor;
+ &:after {
+ border-width: $popoverArrowOuterWidth $popoverArrowOuterWidth $popoverArrowOuterWidth 0;
+ border-right-color: $popoverArrowOuterColor;
+ bottom: -$popoverArrowOuterWidth;
+ left: -1px;
+ }
+ }
+ &.bottom .arrow {
+ top: -$popoverArrowWidth;
+ left: 50%;
+ margin-left: -$popoverArrowWidth;
+ border-width: 0 $popoverArrowWidth $popoverArrowWidth;
+ border-bottom-color: $popoverArrowColor;
+ &:after {
+ border-width: 0 $popoverArrowOuterWidth $popoverArrowOuterWidth;
+ border-bottom-color: $popoverArrowOuterColor;
+ top: -1px;
+ left: -$popoverArrowOuterWidth;
+ }
+ }
+ &.left .arrow {
+ top: 50%;
+ right: -$popoverArrowWidth;
+ margin-top: -$popoverArrowWidth;
+ border-width: $popoverArrowWidth 0 $popoverArrowWidth $popoverArrowWidth;
+ border-left-color: $popoverArrowColor;
+ &:after {
+ border-width: $popoverArrowOuterWidth 0 $popoverArrowOuterWidth $popoverArrowOuterWidth;
+ border-left-color: $popoverArrowOuterColor;
+ bottom: -$popoverArrowOuterWidth;
+ right: -1px;
+ }
+ }
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_progress-bars.scss b/vendor/assets/stylesheets/bootstrap/_progress-bars.scss
index e1fa27a4..118b72df 100644
--- a/vendor/assets/stylesheets/bootstrap/_progress-bars.scss
+++ b/vendor/assets/stylesheets/bootstrap/_progress-bars.scss
@@ -1,5 +1,6 @@
-// PROGRESS BARS
-// -------------
+//
+// Progress bars
+// --------------------------------------------------
// ANIMATIONS
@@ -8,7 +9,7 @@
// Webkit
@-webkit-keyframes progress-bar-stripes {
from { background-position: 40px 0; }
- to { background-position: 0 0 }
+ to { background-position: 0 0; }
}
// Firefox
@@ -19,14 +20,14 @@
// IE9
@-ms-keyframes progress-bar-stripes {
- from { background-position: 40px 0; }
- to { background-position: 0 0; }
+ from { background-position: 40px 0; }
+ to { background-position: 0 0; }
}
// Opera
@-o-keyframes progress-bar-stripes {
- from { background-position: 0 0; }
- to { background-position: 40px 0; }
+ from { background-position: 0 0; }
+ to { background-position: 40px 0; }
}
// Spec
@@ -43,8 +44,8 @@
// Outer container
.progress {
overflow: hidden;
- height: 18px;
- margin-bottom: 18px;
+ height: $baseLineHeight;
+ margin-bottom: $baseLineHeight;
@include gradient-vertical(#f5f5f5, #f9f9f9);
@include box-shadow(inset 0 1px 2px rgba(0,0,0,.1));
@include border-radius(4px);
@@ -53,8 +54,9 @@
// Bar of progress
.progress .bar {
width: 0%;
- height: 18px;
+ height: 100%;
color: $white;
+ float: left;
font-size: 12px;
text-align: center;
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
@@ -63,6 +65,9 @@
@include box-sizing(border-box);
@include transition(width .6s ease);
}
+.progress .bar + .bar {
+ @include box-shadow(#{inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15)});
+}
// Striped bars
.progress-striped .bar {
@@ -85,34 +90,33 @@
// ------
// Danger (red)
-.progress-danger .bar {
+.progress-danger .bar, .progress .bar-danger {
@include gradient-vertical(#ee5f5b, #c43c35);
}
-.progress-danger.progress-striped .bar {
+.progress-danger.progress-striped .bar, .progress-striped .bar-danger {
@include gradient-striped(#ee5f5b);
}
// Success (green)
-.progress-success .bar {
+.progress-success .bar, .progress .bar-success {
@include gradient-vertical(#62c462, #57a957);
}
-.progress-success.progress-striped .bar {
+.progress-success.progress-striped .bar, .progress-striped .bar-success {
@include gradient-striped(#62c462);
}
// Info (teal)
-.progress-info .bar {
+.progress-info .bar, .progress .bar-info {
@include gradient-vertical(#5bc0de, #339bb9);
}
-.progress-info.progress-striped .bar {
+.progress-info.progress-striped .bar, .progress-striped .bar-info {
@include gradient-striped(#5bc0de);
}
// Warning (orange)
-.progress-warning .bar {
+.progress-warning .bar, .progress .bar-warning {
@include gradient-vertical(lighten($orange, 15%), $orange);
}
-
-.progress-warning.progress-striped .bar {
+.progress-warning.progress-striped .bar, .progress-striped .bar-warning {
@include gradient-striped(lighten($orange, 15%));
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_reset.scss b/vendor/assets/stylesheets/bootstrap/_reset.scss
index e6872686..e5ccc68e 100644
--- a/vendor/assets/stylesheets/bootstrap/_reset.scss
+++ b/vendor/assets/stylesheets/bootstrap/_reset.scss
@@ -1,18 +1,31 @@
-// Reset.css.scss
-// Adapted from Normalize.css http://github.com/necolas/normalize.css
-// ------------------------------------------------------------------------
+//
+// Reset
+// Adapted from http://github.com/necolas/normalize.css
+// --------------------------------------------------
+
// Display in IE6-9 and FF3
// -------------------------
-article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+nav,
+section {
display: block;
}
// Display block in IE6-9 and FF3
// -------------------------
-audio, canvas, video {
+audio,
+canvas,
+video {
display: inline-block;
*display: inline;
*zoom: 1;
@@ -38,14 +51,16 @@ a:focus {
@include tab-focus();
}
// Hover & Active
-a:hover, a:active {
+a:hover,
+a:active {
outline: 0;
}
// Prevents sub and sup affecting line-height in all browsers
// -------------------------
-sub, sup {
+sub,
+sup {
position: relative;
font-size: 75%;
line-height: 0;
@@ -63,6 +78,7 @@ sub {
img {
max-width: 100%; // Make images inherently responsive
+ height: auto; // Make images inherently responsive
vertical-align: middle;
border: 0;
-ms-interpolation-mode: bicubic;
@@ -77,20 +93,28 @@ img {
// -------------------------
// Font size in all browsers, margin changes, misc consistency
-button, input, select, textarea {
+button,
+input,
+select,
+textarea {
margin: 0;
font-size: 100%;
vertical-align: middle;
}
-button, input {
+button,
+input {
*overflow: visible; // Inner spacing ie IE6/7
line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
}
-button::-moz-focus-inner, input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
+button::-moz-focus-inner,
+input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
padding: 0;
border: 0;
}
-button, input[type="button"], input[type="reset"], input[type="submit"] {
+button,
+input[type="button"],
+input[type="reset"],
+input[type="submit"] {
cursor: pointer; // Cursors on all buttons applied consistently
-webkit-appearance: button; // Style clickable inputs in iOS
}
diff --git a/vendor/assets/stylesheets/bootstrap/_responsive-1200px-min.scss b/vendor/assets/stylesheets/bootstrap/_responsive-1200px-min.scss
index 784caf40..bb7fc393 100644
--- a/vendor/assets/stylesheets/bootstrap/_responsive-1200px-min.scss
+++ b/vendor/assets/stylesheets/bootstrap/_responsive-1200px-min.scss
@@ -1,23 +1,25 @@
-// LARGE DESKTOP & UP
-// ------------------
+//
+// Responsive: Large desktop and up
+// --------------------------------------------------
+
@media (min-width: 1200px) {
// Fixed grid
- @include gridCore($gridColumnWidthLarge, $gridGutterWidthLarge);
+ @include grid-core($gridColumnWidth1200, $gridGutterWidth1200);
// Fluid grid
- @include gridFluid($fluidGridColumnWidthLarge, $fluidGridGutterWidthLarge);
+ @include grid-fluid($fluidGridColumnWidth1200, $fluidGridGutterWidth1200);
// Input grid
- @include gridInput($gridColumnWidthLarge, $gridGutterWidthLarge);
+ @include grid-input($gridColumnWidth1200, $gridGutterWidth1200);
// Thumbnails
.thumbnails {
- margin-left: -30px;
+ margin-left: -$gridGutterWidth1200;
}
.thumbnails > li {
- margin-left: 30px;
+ margin-left: $gridGutterWidth1200;
}
.row-fluid .thumbnails {
margin-left: 0;
diff --git a/vendor/assets/stylesheets/bootstrap/_responsive-767px-max.scss b/vendor/assets/stylesheets/bootstrap/_responsive-767px-max.scss
index 851cb30b..54649fe6 100644
--- a/vendor/assets/stylesheets/bootstrap/_responsive-767px-max.scss
+++ b/vendor/assets/stylesheets/bootstrap/_responsive-767px-max.scss
@@ -1,72 +1,8 @@
-// UP TO LANDSCAPE PHONE
-// ---------------------
-
-@media (max-width: 480px) {
-
- // Smooth out the collapsing/expanding nav
- .nav-collapse {
- -webkit-transform: translate3d(0, 0, 0); // activate the GPU
- }
-
- // Block level the page header small tag for readability
- .page-header h1 small {
- display: block;
- line-height: $baseLineHeight;
- }
-
- // Update checkboxes for iOS
- input[type="checkbox"], input[type="radio"] {
- border: 1px solid #ccc;
- }
-
- // Remove the horizontal form styles
- .form-horizontal .control-group > label {
- float: none;
- width: auto;
- padding-top: 0;
- text-align: left;
- }
- // Move over all input controls and content
- .form-horizontal .controls {
- margin-left: 0;
- }
- // Move the options list down to align with labels
- .form-horizontal .control-list {
- padding-top: 0; // has to be padding because margin collaspes
- }
- // Move over buttons in .form-actions to align with .controls
- .form-horizontal .form-actions {
- padding-left: 10px;
- padding-right: 10px;
- }
-
- // Modals
- .modal {
- position: absolute;
- top: 10px;
- left: 10px;
- right: 10px;
- width: auto;
- margin: 0;
- &.fade.in { top: auto; }
- }
- .modal-header .close {
- padding: 10px;
- margin: -10px;
- }
-
- // Carousel
- .carousel-caption {
- position: static;
- }
-
-}
-
-
-
-// LANDSCAPE PHONE TO SMALL DESKTOP & PORTRAIT TABLET
+//
+// Responsive: Landscape phone to desktop/tablet
// --------------------------------------------------
+
@media (max-width: 767px) {
// Padding to set content in a bit
@@ -75,7 +11,8 @@
padding-right: 20px;
}
// Negative indent the now static "fixed" navbar
- .navbar-fixed-top, .navbar-fixed-bottom {
+ .navbar-fixed-top,
+ .navbar-fixed-bottom {
margin-left: -20px;
margin-right: -20px;
}
@@ -110,27 +47,121 @@
width: 100%;
}
// Undo negative margin on rows and thumbnails
- .row, .thumbnails {
+ .row,
+ .thumbnails {
margin-left: 0;
}
+ .thumbnails > li {
+ float: none;
+ margin-left: 0; // Reset the default margin for all li elements when no .span* classes are present
+ }
// Make all grid-sized elements block level again
- [class*="span"], .row-fluid [class*="span"] {
+ [class*="span"],
+ .row-fluid [class*="span"] {
float: none;
display: block;
width: auto;
margin-left: 0;
}
+ .span12,
+ .row-fluid .span12 {
+ width: 100%;
+ @include box-sizing(border-box);
+ }
// FORM FIELDS
// -----------
// Make span* classes full width
- .input-large, .input-xlarge, .input-xxlarge, input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input {
+ .input-large,
+ .input-xlarge,
+ .input-xxlarge,
+ input[class*="span"],
+ select[class*="span"],
+ textarea[class*="span"],
+ .uneditable-input {
@include input-block-level();
}
// But don't let it screw up prepend/append inputs
- .input-prepend input, .input-append input, .input-prepend input[class*="span"], .input-append input[class*="span"] {
+ .input-prepend input,
+ .input-append input,
+ .input-prepend input[class*="span"],
+ .input-append input[class*="span"] {
display: inline-block; // redeclare so they don't wrap to new lines
width: auto;
}
+ // Modals
+ .modal {
+ position: fixed;
+ top: 20px;
+ left: 20px;
+ right: 20px;
+ width: auto;
+ margin: 0;
+ &.fade.in { top: auto; }
+ }
+
}
+
+
+
+// UP TO LANDSCAPE PHONE
+// ---------------------
+
+@media (max-width: 480px) {
+
+ // Smooth out the collapsing/expanding nav
+ .nav-collapse {
+ -webkit-transform: translate3d(0, 0, 0); // activate the GPU
+ }
+
+ // Block level the page header small tag for readability
+ .page-header h1 small {
+ display: block;
+ line-height: $baseLineHeight;
+ }
+
+ // Update checkboxes for iOS
+ input[type="checkbox"],
+ input[type="radio"] {
+ border: 1px solid #ccc;
+ }
+
+ // Remove the horizontal form styles
+ .form-horizontal .control-group > label {
+ float: none;
+ width: auto;
+ padding-top: 0;
+ text-align: left;
+ }
+ // Move over all input controls and content
+ .form-horizontal .controls {
+ margin-left: 0;
+ }
+ // Move the options list down to align with labels
+ .form-horizontal .control-list {
+ padding-top: 0; // has to be padding because margin collaspes
+ }
+ // Move over buttons in .form-actions to align with .controls
+ .form-horizontal .form-actions {
+ padding-left: 10px;
+ padding-right: 10px;
+ }
+
+ // Modals
+ .modal {
+ top: 10px;
+ left: 10px;
+ right: 10px;
+ }
+ .modal-header .close {
+ padding: 10px;
+ margin: -10px;
+ }
+
+ // Carousel
+ .carousel-caption {
+ position: static;
+ }
+
+} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_responsive-768px-979px.scss b/vendor/assets/stylesheets/bootstrap/_responsive-768px-979px.scss
index 5ee71aea..f10a838a 100644
--- a/vendor/assets/stylesheets/bootstrap/_responsive-768px-979px.scss
+++ b/vendor/assets/stylesheets/bootstrap/_responsive-768px-979px.scss
@@ -1,16 +1,19 @@
-// PORTRAIT TABLET TO DEFAULT DESKTOP
-// ----------------------------------
+//
+// Responsive: Tablet to desktop
+// --------------------------------------------------
+
@media (min-width: 768px) and (max-width: 979px) {
// Fixed grid
- @include gridCore($gridColumnWidthTablet, $gridGutterWidthTablet);
+ @include grid-core($gridColumnWidth768, $gridGutterWidth768);
// Fluid grid
- @include gridFluid($fluidGridColumnWidthTablet, $fluidGridGutterWidthTablet);
+ @include grid-fluid($fluidGridColumnWidth768, $fluidGridGutterWidth768);
// Input grid
- @include gridInput($gridColumnWidthTablet, $gridGutterWidthTablet);
+ @include grid-input($gridColumnWidth768, $gridGutterWidth768);
// No need to reset .thumbnails here since it's the same $gridGutterWidth
+
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_responsive-navbar.scss b/vendor/assets/stylesheets/bootstrap/_responsive-navbar.scss
index 7f286bf8..3f647fb7 100644
--- a/vendor/assets/stylesheets/bootstrap/_responsive-navbar.scss
+++ b/vendor/assets/stylesheets/bootstrap/_responsive-navbar.scss
@@ -1,3 +1,8 @@
+//
+// Responsive: Navbar
+// --------------------------------------------------
+
+
// TABLETS AND BELOW
// -----------------
@media (max-width: 979px) {
@@ -8,8 +13,9 @@
body {
padding-top: 0;
}
- // Unfix the navbar
- .navbar-fixed-top, .navbar-fixed-bottom {
+ // Unfix the navbars
+ .navbar-fixed-top,
+ .navbar-fixed-bottom {
position: static;
}
.navbar-fixed-top {
@@ -18,7 +24,8 @@
.navbar-fixed-bottom {
margin-top: $baseLineHeight;
}
- .navbar-fixed-top .navbar-inner, .navbar-fixed-bottom .navbar-inner {
+ .navbar-fixed-top .navbar-inner,
+ .navbar-fixed-bottom .navbar-inner {
padding: 5px;
}
.navbar .container {
@@ -57,8 +64,9 @@
text-shadow: none;
}
// Nav and dropdown links in navbar
- .nav-collapse .nav > li > a, .nav-collapse .dropdown-menu a {
- padding: 6px 15px;
+ .nav-collapse .nav > li > a,
+ .nav-collapse .dropdown-menu a {
+ padding: 9px 15px;
font-weight: bold;
color: $navbarLinkColor;
@include border-radius(3px);
@@ -72,9 +80,14 @@
.nav-collapse .dropdown-menu li + li a {
margin-bottom: 2px;
}
- .nav-collapse .nav > li > a:hover, .nav-collapse .dropdown-menu a:hover {
+ .nav-collapse .nav > li > a:hover,
+ .nav-collapse .dropdown-menu a:hover {
background-color: $navbarBackground;
}
+ .navbar-inverse .nav-collapse .nav > li > a:hover,
+ .navbar-inverse .nav-collapse .dropdown-menu a:hover {
+ background-color: $navbarInverseBackground;
+ }
// Buttons in the navbar
.nav-collapse.in .btn-group {
margin-top: 5px;
@@ -95,14 +108,16 @@
@include border-radius(0);
@include box-shadow(none);
}
- .nav-collapse .dropdown-menu:before, .nav-collapse .dropdown-menu:after {
+ .nav-collapse .dropdown-menu:before,
+ .nav-collapse .dropdown-menu:after {
display: none;
}
.nav-collapse .dropdown-menu .divider {
display: none;
}
// Forms in navbar
- .nav-collapse .navbar-form, .nav-collapse .navbar-search {
+ .nav-collapse .navbar-form,
+ .nav-collapse .navbar-search {
float: none;
padding: ($baseLineHeight / 2) 15px;
margin: ($baseLineHeight / 2) 0;
@@ -138,10 +153,12 @@
// DEFAULT DESKTOP
// ---------------
-// Required to make the collapsing navbar work on regular desktops
@media (min-width: 980px) {
+
+ // Required to make the collapsing navbar work on regular desktops
.nav-collapse.collapse {
height: auto !important;
overflow: visible !important;
}
+
}
diff --git a/vendor/assets/stylesheets/bootstrap/_responsive-utilities.scss b/vendor/assets/stylesheets/bootstrap/_responsive-utilities.scss
index 567aa5c7..3bf20fc1 100644
--- a/vendor/assets/stylesheets/bootstrap/_responsive-utilities.scss
+++ b/vendor/assets/stylesheets/bootstrap/_responsive-utilities.scss
@@ -1,5 +1,7 @@
-// RESPONSIVE CLASSES
-// ------------------
+//
+// Responsive: Utility classes
+// --------------------------------------------------
+
// Hide from screenreaders and browsers
// Credit: HTML5 Boilerplate
@@ -13,29 +15,29 @@
// For desktops
.visible-phone { display: none !important; }
.visible-tablet { display: none !important; }
-.visible-desktop { } // Don't set initially
.hidden-phone { }
.hidden-tablet { }
.hidden-desktop { display: none !important; }
-
-// Phones only
-@media (max-width: 767px) {
- // Show
- .visible-phone { display: inherit !important; } // Use inherit to restore previous behavior
- // Hide
- .hidden-phone { display: none !important; }
- // Hide everything else
- .hidden-desktop { display: inherit !important; }
- .visible-desktop { display: none !important; }
-}
+.visible-desktop { display: inherit !important; }
// Tablets & small desktops only
@media (min-width: 768px) and (max-width: 979px) {
+ // Hide everything else
+ .hidden-desktop { display: inherit !important; }
+ .visible-desktop { display: none !important ; }
// Show
.visible-tablet { display: inherit !important; }
// Hide
.hidden-tablet { display: none !important; }
+}
+
+// Phones only
+@media (max-width: 767px) {
// Hide everything else
.hidden-desktop { display: inherit !important; }
- .visible-desktop { display: none !important ; }
+ .visible-desktop { display: none !important; }
+ // Show
+ .visible-phone { display: inherit !important; } // Use inherit to restore previous behavior
+ // Hide
+ .hidden-phone { display: none !important; }
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_scaffolding.scss b/vendor/assets/stylesheets/bootstrap/_scaffolding.scss
index ec716131..7223df5a 100644
--- a/vendor/assets/stylesheets/bootstrap/_scaffolding.scss
+++ b/vendor/assets/stylesheets/bootstrap/_scaffolding.scss
@@ -1,10 +1,10 @@
+//
// Scaffolding
-// Basic and global styles for generating a grid system, structural layout, and page templates
-// -------------------------------------------------------------------------------------------
+// --------------------------------------------------
// Body reset
-// -----------------
+// -------------------------
body {
margin: 0;
@@ -17,7 +17,7 @@ body {
// Links
-// -----
+// -------------------------
a {
color: $linkColor;
@@ -26,4 +26,26 @@ a {
a:hover {
color: $linkColorHover;
text-decoration: underline;
+}
+
+
+// Images
+// -------------------------
+
+.img-rounded {
+ @include border-radius(6px);
+}
+
+.img-polaroid {
+ padding: 4px;
+ background-color: #fff;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0,0,0,.2);
+ -webkit-box-shadow: 0 1px 3px rgba(0,0,0,.1);
+ -moz-box-shadow: 0 1px 3px rgba(0,0,0,.1);
+ box-shadow: 0 1px 3px rgba(0,0,0,.1);
+}
+
+.img-circle {
+ @include border-radius(500px);
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_sprites.scss b/vendor/assets/stylesheets/bootstrap/_sprites.scss
index dbda614f..97a33162 100644
--- a/vendor/assets/stylesheets/bootstrap/_sprites.scss
+++ b/vendor/assets/stylesheets/bootstrap/_sprites.scss
@@ -1,20 +1,21 @@
-// SPRITES
-// Glyphs and icons for buttons, nav, and more
-// -------------------------------------------
+//
+// Sprites
+// --------------------------------------------------
// ICONS
// -----
-// All icons receive the styles of the <i> tag with a base class
-// of .i and are then given a unique class to add width, height,
+// All icons receive the styles of the <i> tag with a base class
+// of .i and are then given a unique class to add width, height,
// and background-position. Your resulting HTML will look like
// <i class="icon-inbox"></i>.
// For the white version of the icons, just add the .icon-white class:
// <i class="icon-inbox icon-white"></i>
-[class^="icon-"], [class*=" icon-"] {
+[class^="icon-"],
+[class*=" icon-"] {
display: inline-block;
width: 14px;
height: 14px;
@@ -24,8 +25,17 @@
background-image: $iconSpritePath;
background-position: 14px 14px;
background-repeat: no-repeat;
+ margin-top: 1px;
}
-.icon-white {
+
+/* White icons with optional class, or on hover/active states of certain elements */
+.icon-white,
+.nav > .active > a > [class^="icon-"],
+.nav > .active > a > [class*=" icon-"],
+.dropdown-menu > li > a:hover > [class^="icon-"],
+.dropdown-menu > li > a:hover > [class*=" icon-"],
+.dropdown-menu > .active > a > [class^="icon-"],
+.dropdown-menu > .active > a > [class*=" icon-"] {
background-image: $iconWhiteSpritePath;
}
@@ -143,7 +153,7 @@
.icon-warning-sign { background-position: -144px -120px; }
.icon-plane { background-position: -168px -120px; }
.icon-calendar { background-position: -192px -120px; }
-.icon-random { background-position: -216px -120px; }
+.icon-random { background-position: -216px -120px; width: 16px; }
.icon-comment { background-position: -240px -120px; }
.icon-magnet { background-position: -264px -120px; }
.icon-chevron-up { background-position: -288px -120px; }
@@ -151,7 +161,7 @@
.icon-retweet { background-position: -336px -120px; }
.icon-shopping-cart { background-position: -360px -120px; }
.icon-folder-close { background-position: -384px -120px; }
-.icon-folder-open { background-position: -408px -120px; }
+.icon-folder-open { background-position: -408px -120px; width: 16px; }
.icon-resize-vertical { background-position: -432px -119px; } // 1px, 1px off
.icon-resize-horizontal { background-position: -456px -118px; } // 1px, 2px off
diff --git a/vendor/assets/stylesheets/bootstrap/_tables.scss b/vendor/assets/stylesheets/bootstrap/_tables.scss
index 36c7687d..2bf88129 100644
--- a/vendor/assets/stylesheets/bootstrap/_tables.scss
+++ b/vendor/assets/stylesheets/bootstrap/_tables.scss
@@ -1,7 +1,6 @@
//
-// Tables.less
-// Tables for, you guessed it, tabular data
-// ----------------------------------------
+// Tables
+// --------------------------------------------------
// BASE TABLES
@@ -21,7 +20,8 @@ table {
width: 100%;
margin-bottom: $baseLineHeight;
// Cells
- th, td {
+ th,
+ td {
padding: 8px;
line-height: $baseLineHeight;
text-align: left;
@@ -36,9 +36,12 @@ table {
vertical-align: bottom;
}
// Remove top border from thead by default
- caption + thead tr:first-child th, caption + thead tr:first-child td,
- colgroup + thead tr:first-child th, colgroup + thead tr:first-child td,
- thead:first-child tr:first-child th, thead:first-child tr:first-child td {
+ caption + thead tr:first-child th,
+ caption + thead tr:first-child td,
+ colgroup + thead tr:first-child th,
+ colgroup + thead tr:first-child td,
+ thead:first-child tr:first-child th,
+ thead:first-child tr:first-child td {
border-top: 0;
}
// Account for multiple tbody instances
@@ -53,7 +56,8 @@ table {
// -------------------------------
.table-condensed {
- th, td {
+ th,
+ td {
padding: 4px 5px;
}
}
@@ -65,50 +69,86 @@ table {
.table-bordered {
border: 1px solid $tableBorder;
border-collapse: separate; // Done so we can round those corners!
- *border-collapse: collapsed; // IE7 can't round corners anyway
+ *border-collapse: collapse; // IE7 can't round corners anyway
border-left: 0;
@include border-radius(4px);
- th, td {
+ th,
+ td {
border-left: 1px solid $tableBorder;
}
// Prevent a double border
- caption + thead tr:first-child th, caption + tbody tr:first-child th, caption + tbody tr:first-child td,
- colgroup + thead tr:first-child th, colgroup + tbody tr:first-child th, colgroup + tbody tr:first-child td,
- thead:first-child tr:first-child th, tbody:first-child tr:first-child th, tbody:first-child tr:first-child td {
+ caption + thead tr:first-child th,
+ caption + tbody tr:first-child th,
+ caption + tbody tr:first-child td,
+ colgroup + thead tr:first-child th,
+ colgroup + tbody tr:first-child th,
+ colgroup + tbody tr:first-child td,
+ thead:first-child tr:first-child th,
+ tbody:first-child tr:first-child th,
+ tbody:first-child tr:first-child td {
border-top: 0;
}
// For first th or td in the first row in the first thead or tbody
- thead:first-child tr:first-child th:first-child, tbody:first-child tr:first-child td:first-child {
+ thead:first-child tr:first-child th:first-child,
+ tbody:first-child tr:first-child td:first-child {
-webkit-border-top-left-radius: 4px;
border-top-left-radius: 4px;
-moz-border-radius-topleft: 4px;
}
- thead:first-child tr:first-child th:last-child, tbody:first-child tr:first-child td:last-child {
+ thead:first-child tr:first-child th:last-child,
+ tbody:first-child tr:first-child td:last-child {
-webkit-border-top-right-radius: 4px;
border-top-right-radius: 4px;
-moz-border-radius-topright: 4px;
}
// For first th or td in the first row in the first thead or tbody
- thead:last-child tr:last-child th:first-child, tbody:last-child tr:last-child td:first-child {
+ thead:last-child tr:last-child th:first-child,
+ tbody:last-child tr:last-child td:first-child,
+ tfoot:last-child tr:last-child td:first-child {
+ @include border-radius(0 0 0 4px);
-webkit-border-bottom-left-radius: 4px;
border-bottom-left-radius: 4px;
-moz-border-radius-bottomleft: 4px;
}
- thead:last-child tr:last-child th:last-child, tbody:last-child tr:last-child td:last-child {
+ thead:last-child tr:last-child th:last-child,
+ tbody:last-child tr:last-child td:last-child,
+ tfoot:last-child tr:last-child td:last-child {
-webkit-border-bottom-right-radius: 4px;
border-bottom-right-radius: 4px;
- -moz-border-radius-bottomright: 4px;
+ -moz-border-radius-bottomright: 4px;
}
+
+ // Special fixes to round the left border on the first td/th
+ caption + thead tr:first-child th:first-child,
+ caption + tbody tr:first-child td:first-child,
+ colgroup + thead tr:first-child th:first-child,
+ colgroup + tbody tr:first-child td:first-child {
+ -webkit-border-top-left-radius: 4px;
+ border-top-left-radius: 4px;
+ -moz-border-radius-topleft: 4px;
+ }
+ caption + thead tr:first-child th:last-child,
+ caption + tbody tr:first-child td:last-child,
+ colgroup + thead tr:first-child th:last-child,
+ colgroup + tbody tr:first-child td:last-child {
+ -webkit-border-top-right-radius: 4px;
+ border-top-right-radius: 4px;
+ -moz-border-right-topleft: 4px;
+ }
+
}
+
+
// ZEBRA-STRIPING
// --------------
// Default zebra-stripe styles (alternating gray and transparent backgrounds)
.table-striped {
tbody {
- tr:nth-child(odd) td, tr:nth-child(odd) th {
+ tr:nth-child(odd) td,
+ tr:nth-child(odd) th {
background-color: $tableBackgroundAccent;
}
}
@@ -118,16 +158,47 @@ table {
// HOVER EFFECT
// ------------
// Placed here since it has to come after the potential zebra striping
-.table {
- tbody tr:hover td, tbody tr:hover th {
- background-color: $tableBackgroundHover;
+.table-hover {
+ tbody {
+ tr:hover td,
+ tr:hover th {
+ background-color: $tableBackgroundHover;
+ }
}
}
+
// TABLE CELL SIZING
// -----------------
+
+// Reset default grid behavior
+table [class*=span],
+.row-fluid table [class*=span] {
+ display: table-cell;
+ float: none; // undo default grid column styles
+ margin-left: 0; // undo default grid column styles
+}
+
+// Change the column widths to account for td/th padding
table {
@for $i from 1 through $gridColumns {
.span#{$i} { @include tableColumns($i); }
}
-} \ No newline at end of file
+}
+
+
+// TABLE BACKGROUNDS
+// -----------------
+// Exact selectors below required to override .table-striped
+
+.table {
+ tbody tr.success td {
+ background-color: $successBackground;
+ }
+ tbody tr.error td {
+ background-color: $errorBackground;
+ }
+ tbody tr.info td {
+ background-color: $infoBackground;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_thumbnails.scss b/vendor/assets/stylesheets/bootstrap/_thumbnails.scss
index 93f2ce63..22af505c 100644
--- a/vendor/assets/stylesheets/bootstrap/_thumbnails.scss
+++ b/vendor/assets/stylesheets/bootstrap/_thumbnails.scss
@@ -1,5 +1,8 @@
-// THUMBNAILS
-// ----------
+//
+// Thumbnails
+// --------------------------------------------------
+
+
// Note: `.thumbnails` and `.thumbnails > li` are overriden in responsive files
// Make wrapper ul behave like the grid
@@ -15,8 +18,6 @@
// Float li to make thumbnails appear in a row
.thumbnails > li {
- float: left;
- margin: 0 0 $baseLineHeight $gridGutterWidth;
float: left; // Explicity set the float since we don't require .span* classes
margin-bottom: $baseLineHeight;
margin-left: $gridGutterWidth;
@@ -26,17 +27,18 @@
.thumbnail {
display: block;
padding: 4px;
- line-height: 1;
+ line-height: $baseLineHeight;
border: 1px solid #ddd;
@include border-radius(4px);
- @include box-shadow(0 1px 1px rgba(0,0,0,.075));
+ @include box-shadow(0 1px 3px rgba(0,0,0,.055));
+ @include transition(all .2s ease-in-out);
}
-
// Add a hover state for linked versions only
a.thumbnail:hover {
border-color: $linkColor;
@include box-shadow(0 1px 4px rgba(0,105,214,.25));
}
+
// Images and captions
.thumbnail > img {
display: block;
@@ -46,4 +48,5 @@ a.thumbnail:hover {
}
.thumbnail .caption {
padding: 9px;
+ color: $gray;
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_tooltip.scss b/vendor/assets/stylesheets/bootstrap/_tooltip.scss
index 488dc63f..42f084a9 100644
--- a/vendor/assets/stylesheets/bootstrap/_tooltip.scss
+++ b/vendor/assets/stylesheets/bootstrap/_tooltip.scss
@@ -1,6 +1,9 @@
-// TOOLTIP
-// ------=
+//
+// Tooltips
+// --------------------------------------------------
+
+// Base class
.tooltip {
position: absolute;
z-index: $zindexTooltip;
@@ -10,26 +13,58 @@
font-size: 11px;
@include opacity(0);
&.in { @include opacity(0.8); }
- &.top { margin-top: -2px; }
- &.right { margin-left: 2px; }
- &.bottom { margin-top: 2px; }
- &.left { margin-left: -2px; }
- &.top .tooltip-arrow { @include popoverArrowTop(); }
- &.left .tooltip-arrow { @include popoverArrowLeft(); }
- &.bottom .tooltip-arrow { @include popoverArrowBottom(); }
- &.right .tooltip-arrow { @include popoverArrowRight(); }
+ &.top { margin-top: -3px; }
+ &.right { margin-left: 3px; }
+ &.bottom { margin-top: 3px; }
+ &.left { margin-left: -3px; }
}
+
+// Wrapper for the tooltip content
.tooltip-inner {
max-width: 200px;
padding: 3px 8px;
- color: $white;
+ color: $tooltipColor;
text-align: center;
text-decoration: none;
- background-color: $black;
+ background-color: $tooltipBackground;
@include border-radius(4px);
}
+
+// 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: -$tooltipArrowWidth;
+ border-width: $tooltipArrowWidth $tooltipArrowWidth 0;
+ border-top-color: $tooltipArrowColor;
+ }
+ &.right .tooltip-arrow {
+ top: 50%;
+ left: 0;
+ margin-top: -$tooltipArrowWidth;
+ border-width: $tooltipArrowWidth $tooltipArrowWidth $tooltipArrowWidth 0;
+ border-right-color: $tooltipArrowColor;
+ }
+ &.left .tooltip-arrow {
+ top: 50%;
+ right: 0;
+ margin-top: -$tooltipArrowWidth;
+ border-width: $tooltipArrowWidth 0 $tooltipArrowWidth $tooltipArrowWidth;
+ border-left-color: $tooltipArrowColor;
+ }
+ &.bottom .tooltip-arrow {
+ top: 0;
+ left: 50%;
+ margin-left: -$tooltipArrowWidth;
+ border-width: 0 $tooltipArrowWidth $tooltipArrowWidth;
+ border-bottom-color: $tooltipArrowColor;
+ }
+} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_type.scss b/vendor/assets/stylesheets/bootstrap/_type.scss
index 8bebb845..1eaf3ac9 100644
--- a/vendor/assets/stylesheets/bootstrap/_type.scss
+++ b/vendor/assets/stylesheets/bootstrap/_type.scss
@@ -1,17 +1,13 @@
-// Typography.less
-// Headings, body text, lists, code, and more for a versatile and durable typography system
-// ----------------------------------------------------------------------------------------
+//
+// Typography
+// --------------------------------------------------
-// BODY TEXT
-// ---------
+// Body text
+// -------------------------
p {
margin: 0 0 $baseLineHeight / 2;
- small {
- font-size: $baseFontSize - 2;
- color: $grayLight;
- }
}
.lead {
margin-bottom: $baseLineHeight;
@@ -20,92 +16,86 @@ p {
line-height: $baseLineHeight * 1.5;
}
-// HEADINGS
-// --------
+
+// Emphasis & misc
+// -------------------------
+
+small {
+ font-size: 85%; // Ex: 14px base font * 85% = about 12px
+}
+strong {
+ font-weight: bold;
+}
+em {
+ font-style: italic;
+}
+cite {
+ font-style: normal;
+}
+.muted {
+ color: $grayLight;
+}
+
+
+// Headings
+// -------------------------
h1, h2, h3, h4, h5, h6 {
- margin: 0;
+ margin: ($baseLineHeight / 2) 0;
font-family: $headingsFontFamily;
font-weight: $headingsFontWeight;
+ line-height: 1;
color: $headingsColor;
text-rendering: optimizelegibility; // Fix the character spacing for headings
small {
font-weight: normal;
+ line-height: 1;
color: $grayLight;
}
}
-h1 {
- font-size: 30px;
- line-height: $baseLineHeight * 2;
- small {
- font-size: 18px;
- }
-}
-h2 {
- font-size: 24px;
- line-height: $baseLineHeight * 2;
- small {
- font-size: 18px;
- }
-}
-h3 {
- font-size: 18px;
- line-height: $baseLineHeight * 1.5;
- small {
- font-size: 14px;
- }
-}
-h4, h5, h6 {
- line-height: $baseLineHeight;
-}
-h4 {
- font-size: 14px;
- small {
- font-size: 12px;
- }
-}
-h5 {
- font-size: 12px;
-}
-h6 {
- font-size: 11px;
- color: $grayLight;
- text-transform: uppercase;
-}
+h1 { font-size: 36px; line-height: 40px; }
+h2 { font-size: 30px; line-height: 40px; }
+h3 { font-size: 24px; line-height: 40px; }
+h4 { font-size: 18px; line-height: 20px; }
+h5 { font-size: 14px; line-height: 20px; }
+h6 { font-size: 12px; line-height: 20px; }
+
+h1 small { font-size: 24px; }
+h2 small { font-size: 18px; }
+h3 small { font-size: 14px; }
+h4 small { font-size: 14px; }
+
// Page header
+// -------------------------
+
.page-header {
- padding-bottom: $baseLineHeight - 1;
- margin: $baseLineHeight 0;
+ padding-bottom: ($baseLineHeight / 2) - 1;
+ margin: $baseLineHeight 0 ($baseLineHeight * 1.5);
border-bottom: 1px solid $grayLighter;
}
-.page-header h1 {
- line-height: 1;
-}
-// LISTS
-// -----
+// Lists
+// --------------------------------------------------
// Unordered and Ordered lists
ul, ol {
padding: 0;
margin: 0 0 $baseLineHeight / 2 25px;
}
-ul ul, ul ol, ol ol, ol ul {
+ul ul,
+ul ol,
+ol ol,
+ol ul {
margin-bottom: 0;
}
-ul {
- list-style: disc;
-}
-ol {
- list-style: decimal;
-}
li {
line-height: $baseLineHeight;
}
-ul.unstyled, ol.unstyled {
+ul.unstyled,
+ol.unstyled {
margin-left: 0;
list-style: none;
}
@@ -114,12 +104,12 @@ ul.unstyled, ol.unstyled {
dl {
margin-bottom: $baseLineHeight;
}
-dt, dd {
+dt,
+dd {
line-height: $baseLineHeight;
}
dt {
font-weight: bold;
- line-height: $baseLineHeight - 1; // fix jank Helvetica Neue font bug
}
dd {
margin-left: $baseLineHeight / 2;
@@ -149,23 +139,11 @@ hr {
border-bottom: 1px solid $white;
}
-// Emphasis
-strong {
- font-weight: bold;
-}
-em {
- font-style: italic;
-}
-.muted {
- color: $grayLight;
-}
-
// Abbreviations and acronyms
abbr[title] {
cursor: help;
border-bottom: 1px dotted $grayLight;
}
-
abbr.initialism {
font-size: 90%;
text-transform: uppercase;
@@ -196,14 +174,26 @@ blockquote {
padding-left: 0;
border-right: 5px solid $grayLighter;
border-left: 0;
- p, small {
+ p,
+ small {
text-align: right;
}
+ small {
+ &:before {
+ content: '';
+ }
+ &:after {
+ content: '\00A0 \2014';
+ }
+ }
}
}
// Quotes
-q:before, q:after, blockquote:before, blockquote:after {
+q:before,
+q:after,
+blockquote:before,
+blockquote:after {
content: "";
}
@@ -213,12 +203,4 @@ address {
margin-bottom: $baseLineHeight;
font-style: normal;
line-height: $baseLineHeight;
-}
-
-// Misc
-small {
- font-size: 100%;
-}
-cite {
- font-style: normal;
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_utilities.scss b/vendor/assets/stylesheets/bootstrap/_utilities.scss
index 2171f61a..5771b3f4 100644
--- a/vendor/assets/stylesheets/bootstrap/_utilities.scss
+++ b/vendor/assets/stylesheets/bootstrap/_utilities.scss
@@ -1,5 +1,7 @@
-// UTILITY CLASSES
-// ---------------
+//
+// Utility classes
+// --------------------------------------------------
+
// Quick floats
.pull-right {
@@ -20,4 +22,9 @@
// Visibility
.invisible {
visibility: hidden;
+}
+
+// For Affix plugin
+.affix {
+ position: fixed;
} \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_variables.scss b/vendor/assets/stylesheets/bootstrap/_variables.scss
index 37c3d89c..5af75e39 100644
--- a/vendor/assets/stylesheets/bootstrap/_variables.scss
+++ b/vendor/assets/stylesheets/bootstrap/_variables.scss
@@ -1,12 +1,12 @@
-// Variables.less
-// Variables to customize the look and feel of Bootstrap
-// -----------------------------------------------------
-
+//
+// Variables
+// --------------------------------------------------
-// GLOBAL VALUES
+// Global values
// --------------------------------------------------
+
// Grays
// -------------------------
$black: #000 !default;
@@ -19,7 +19,7 @@ $white: #fff !default;
// Accent colors
-// ----------------------------
+// -------------------------
$blue: #049cdb !default;
$blueDark: #0064cd !default;
$green: #46a546 !default;
@@ -29,30 +29,33 @@ $orange: #f89406 !default;
$pink: #c3325f !default;
$purple: #7a43b6 !default;
+
// Scaffolding
// -------------------------
$bodyBackground: $white !default;
$textColor: $grayDark !default;
+
// Links
// -------------------------
$linkColor: #08c !default;
$linkColorHover: darken($linkColor, 15%) !default;
+
// Typography
// -------------------------
$sansFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif !default;
$serifFontFamily: Georgia, "Times New Roman", Times, serif !default;
-$monoFontFamily: Menlo, Monaco, Consolas, "Courier New", monospace !default;
+$monoFontFamily: Monaco, Menlo, Consolas, "Courier New", monospace !default;
-$baseFontSize: 13px !default;
+$baseFontSize: 14px !default;
$baseFontFamily: $sansFontFamily !default;
-$baseLineHeight: 18px !default;
+$baseLineHeight: 20px !default;
$altFontFamily: $serifFontFamily !default;
-$headingsFontFamily: inherit !default; // empty to use BS default, @baseFontFamily
+$headingsFontFamily: inherit !default; // empty to use BS default, $baseFontFamily
$headingsFontWeight: bold !default; // instead of browser default, bold
-$headingsColor: inherit !default; // empty to use BS default, @textColor
+$headingsColor: inherit !default; // empty to use BS default, $textColor
// Tables
@@ -62,14 +65,15 @@ $tableBackgroundAccent: #f9f9f9 !default; // for striping
$tableBackgroundHover: #f5f5f5 !default; // for hover
$tableBorder: #ddd !default; // table and cell border
+
// Buttons
// -------------------------
$btnBackground: $white !default;
$btnBackgroundHighlight: darken($white, 10%) !default;
-$btnBorder: #ccc !default;
+$btnBorder: #bbb !default;
$btnPrimaryBackground: $linkColor !default;
-$btnPrimaryBackgroundHighlight: adjust-hue($btnPrimaryBackground, 15%) !default;
+$btnPrimaryBackgroundHighlight: adjust-hue($btnPrimaryBackground, 20%) !default;
$btnInfoBackground: #5bc0de !default;
$btnInfoBackgroundHighlight: #2f96b4 !default;
@@ -83,9 +87,10 @@ $btnWarningBackgroundHighlight: $orange !default;
$btnDangerBackground: #ee5f5b !default;
$btnDangerBackgroundHighlight: #bd362f !default;
-$btnInverseBackground: $gray !default;
+$btnInverseBackground: #444 !default;
$btnInverseBackgroundHighlight: $grayDarker !default;
+
// Forms
// -------------------------
$inputBackground: $white !default;
@@ -94,17 +99,21 @@ $inputBorderRadius: 3px !default;
$inputDisabledBackground: $grayLighter !default;
$formActionsBackground: #f5f5f5 !default;
-
// Dropdowns
// -------------------------
$dropdownBackground: $white !default;
$dropdownBorder: rgba(0,0,0,.2) !default;
+$dropdownDividerTop: #e5e5e5 !default;
+$dropdownDividerBottom: $white !default;
+
$dropdownLinkColor: $grayDark !default;
+
+$dropdownLinkColorActive: $dropdownLinkColor !default;
+$dropdownLinkBackgroundActive: $linkColor !default;
+
$dropdownLinkColorHover: $white !default;
-$dropdownLinkBackgroundHover: $linkColor !default;
+$dropdownLinkBackgroundHover: $dropdownLinkBackgroundActive !default;
-$dropdownDividerTop: #e5e5e5 !default;
-$dropdownDividerBottom: $white !default;
// COMPONENT VARIABLES
@@ -116,7 +125,7 @@ $dropdownDividerBottom: $white !default;
// Try to avoid customizing these :)
$zindexDropdown: 1000 !default;
$zindexPopover: 1010 !default;
-$zindexTooltip: 1020 !default;
+$zindexTooltip: 1030 !default;
$zindexFixedNavbar: 1030 !default;
$zindexModalBackdrop: 1040 !default;
$zindexModal: 1050 !default;
@@ -138,25 +147,55 @@ $placeholderText: $grayLight !default;
$hrBorder: $grayLighter !default;
+// Wells
+// -------------------------
+$wellBackground: #f5f5f5 !default;
+
+
// Navbar
// -------------------------
-$navbarHeight: 40px !default;
-$navbarBackground: $grayDarker !default;
-$navbarBackgroundHighlight: $grayDark !default;
+$navbarCollapseWidth: 979px !default;
-$navbarText: $grayLight !default;
-$navbarLinkColor: $grayLight !default;
-$navbarLinkColorHover: $white !default;
-$navbarLinkColorActive: $navbarLinkColorHover !default;
+$navbarHeight: 40px !default;
+$navbarBackgroundHighlight: #ffffff !default;
+$navbarBackground: darken($navbarBackgroundHighlight, 5%) !default;
+$navbarBorder: darken($navbarBackground, 12%) !default;
+
+$navbarText: $gray !default;
+$navbarLinkColor: $gray !default;
+$navbarLinkColorHover: $grayDark !default;
+$navbarLinkColorActive: $gray !default;
$navbarLinkBackgroundHover: transparent !default;
-$navbarLinkBackgroundActive: $navbarBackground !default;
+$navbarLinkBackgroundActive: darken($navbarBackground, 5%) !default;
-$navbarSearchBackground: lighten($navbarBackground, 25%) !default;
-$navbarSearchBackgroundFocus: $white !default;
-$navbarSearchBorder: darken($navbarSearchBackground, 30%) !default;
-$navbarSearchPlaceholderColor: #ccc !default;
$navbarBrandColor: $navbarLinkColor !default;
+// Inverted navbar
+$navbarInverseBackground: #111111 !default;
+$navbarInverseBackgroundHighlight: #222222 !default;
+$navbarInverseBorder: #252525 !default;
+
+$navbarInverseText: $grayLight !default;
+$navbarInverseLinkColor: $grayLight !default;
+$navbarInverseLinkColorHover: $white !default;
+$navbarInverseLinkColorActive: $navbarInverseLinkColorHover !default;
+$navbarInverseLinkBackgroundHover: transparent !default;
+$navbarInverseLinkBackgroundActive: $navbarInverseBackground !default;
+
+$navbarInverseSearchBackground: lighten($navbarInverseBackground, 25%) !default;
+$navbarInverseSearchBackgroundFocus: $white !default;
+$navbarInverseSearchBorder: $navbarInverseBackground !default;
+$navbarInverseSearchPlaceholderColor: #ccc !default;
+
+$navbarInverseBrandColor: $navbarInverseLinkColor !default;
+
+
+// Pagination
+// -------------------------
+$paginationBackground: #fff !default;
+$paginationBorder: #ddd !default;
+$paginationActiveBackground: #f5f5f5 !default;
+
// Hero unit
// -------------------------
@@ -184,54 +223,55 @@ $infoBackground: #d9edf7 !default;
$infoBorder: darken(adjust-hue($infoBackground, -10), 7%) !default;
-// FIXED GRID
-// --------------------------------------------------
-
-// Default, 940px
+// Tooltips and popovers
// -------------------------
-$gridColumns: 12 !default;
-$gridColumnWidth: 60px !default;
-$gridGutterWidth: 20px !default;
-$gridRowWidth: ($gridColumns * $gridColumnWidth) + ($gridGutterWidth * ($gridColumns - 1)) !default;
+$tooltipColor: #fff !default;
+$tooltipBackground: #000 !default;
+$tooltipArrowWidth: 5px !default;
+$tooltipArrowColor: $tooltipBackground !default;
-// Portrait tablet to default desktop
-// -------------------------
-$gridColumnWidthTablet: 42px !default;
-$gridGutterWidthTablet: 20px !default;
+$popoverBackground: #fff !default;
+$popoverArrowWidth: 10px !default;
+$popoverArrowColor: #fff !default;
+$popoverTitleBackground: darken($popoverBackground, 3%) !default;
-// Large desktop and up
-// -------------------------
-$gridColumnWidthLarge: 70px !default;
-$gridGutterWidthLarge: 30px !default;
+// Special enhancement for popovers
+$popoverArrowOuterWidth: $popoverArrowWidth + 1 !default;
+$popoverArrowOuterColor: rgba(0,0,0,.25) !default;
-// FLUID GRID
-// --------------------------------------------------
-// Default
-// -------------------------
-$fluidGridColumnWidth: 6.382978723% !default;
-$fluidGridGutterWidth: 2.127659574% !default;
+// GRID
+// --------------------------------------------------
-// Portrait tablet to default desktop
-// -------------------------
-$fluidGridColumnWidthTablet: 5.801104972% !default;
-$fluidGridGutterWidthTablet: 2.762430939% !default;
-// Large desktop and up
+// Default 940px grid
// -------------------------
-$fluidGridColumnWidthLarge: 5.982905983% !default;
-$fluidGridGutterWidthLarge: 2.564102564% !default;
+$gridColumns: 12 !default;
+$gridColumnWidth: 60px !default;
+$gridGutterWidth: 20px !default;
+$gridRowWidth: ($gridColumns * $gridColumnWidth) + ($gridGutterWidth * ($gridColumns - 1)) !default;
+// 1200px min
+$gridColumnWidth1200: 70px !default;
+$gridGutterWidth1200: 30px !default;
+$gridRowWidth1200: ($gridColumns * $gridColumnWidth1200) + ($gridGutterWidth1200 * ($gridColumns - 1)) !default;
+// 768px-979px
+$gridColumnWidth768: 42px !default;
+$gridGutterWidth768: 20px !default;
+$gridRowWidth768: ($gridColumns * $gridColumnWidth768) + ($gridGutterWidth768 * ($gridColumns - 1)) !default;
-// RESPONSIVE DESIGN
-// --------------------------------------------------
-// Media widths
+// Fluid grid
// -------------------------
-// Not supported Sass < 3.2 :(
-// $mediaPhone: 480px !default;
-// $mediaTablet: 768px !default;
-// $mediaDesktop: 980px !default;
-// $mediaLarge: 1200px !default; // and upper
+$fluidGridColumnWidth: percentage($gridColumnWidth/$gridRowWidth) !default;
+$fluidGridGutterWidth: percentage($gridGutterWidth/$gridRowWidth) !default;
+
+// 1200px min
+$fluidGridColumnWidth1200: percentage($gridColumnWidth1200/$gridRowWidth1200) !default;
+$fluidGridGutterWidth1200: percentage($gridGutterWidth1200/$gridRowWidth1200) !default;
+
+// 768px-979px
+$fluidGridColumnWidth768: percentage($gridColumnWidth768/$gridRowWidth768) !default;
+$fluidGridGutterWidth768: percentage($gridGutterWidth768/$gridRowWidth768) !default; \ No newline at end of file
diff --git a/vendor/assets/stylesheets/bootstrap/_wells.scss b/vendor/assets/stylesheets/bootstrap/_wells.scss
index 21889b83..14b81622 100644
--- a/vendor/assets/stylesheets/bootstrap/_wells.scss
+++ b/vendor/assets/stylesheets/bootstrap/_wells.scss
@@ -1,13 +1,15 @@
-// WELLS
-// -----
+//
+// Wells
+// --------------------------------------------------
+
+// Base class
.well {
min-height: 20px;
padding: 19px;
margin-bottom: 20px;
- background-color: #f5f5f5;
- border: 1px solid #eee;
- border: 1px solid rgba(0,0,0,.05);
+ background-color: $wellBackground;
+ border: 1px solid darken($wellBackground, 7%);
@include border-radius(4px);
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
blockquote {
@@ -18,7 +20,7 @@
// Sizes
.well-large {
- padding:24px;
+ padding: 24px;
@include border-radius(6px);
}
.well-small {