less initial added
authorstetrabby <info@trabucchi.de>
Fri, 20 Dec 2013 22:30:44 +0100
changeset 533416f82943ea
parent 52 9a01c86e15f1
child 54 0ded9d7748b7
less initial added
static/less/alerts.less
static/less/badges.less
static/less/bootstrap.less
static/less/breadcrumbs.less
static/less/button-groups.less
static/less/buttons.less
static/less/carousel.less
static/less/close.less
static/less/code.less
static/less/component-animations.less
static/less/dropdowns.less
static/less/forms.less
static/less/glyphicons.less
static/less/grid.less
static/less/input-groups.less
static/less/jumbotron.less
static/less/labels.less
static/less/list-group.less
static/less/media.less
static/less/mixins.less
static/less/modals.less
static/less/navbar.less
static/less/navs.less
static/less/normalize.less
static/less/pager.less
static/less/pagination.less
static/less/panels.less
static/less/popovers.less
static/less/print.less
static/less/progress-bars.less
static/less/responsive-utilities.less
static/less/scaffolding.less
static/less/tables.less
static/less/theme.less
static/less/thumbnails.less
static/less/tooltip.less
static/less/type.less
static/less/utilities.less
static/less/variables.less
static/less/wells.less
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/static/less/alerts.less	Fri Dec 20 22:30:44 2013 +0100
     1.3 @@ -0,0 +1,67 @@
     1.4 +//
     1.5 +// Alerts
     1.6 +// --------------------------------------------------
     1.7 +
     1.8 +
     1.9 +// Base styles
    1.10 +// -------------------------
    1.11 +
    1.12 +.alert {
    1.13 +  padding: @alert-padding;
    1.14 +  margin-bottom: @line-height-computed;
    1.15 +  border: 1px solid transparent;
    1.16 +  border-radius: @alert-border-radius;
    1.17 +
    1.18 +  // Headings for larger alerts
    1.19 +  h4 {
    1.20 +    margin-top: 0;
    1.21 +    // Specified for the h4 to prevent conflicts of changing @headings-color
    1.22 +    color: inherit;
    1.23 +  }
    1.24 +  // Provide class for links that match alerts
    1.25 +  .alert-link {
    1.26 +    font-weight: @alert-link-font-weight;
    1.27 +  }
    1.28 +
    1.29 +  // Improve alignment and spacing of inner content
    1.30 +  > p,
    1.31 +  > ul {
    1.32 +    margin-bottom: 0;
    1.33 +  }
    1.34 +  > p + p {
    1.35 +    margin-top: 5px;
    1.36 +  }
    1.37 +}
    1.38 +
    1.39 +// Dismissable alerts
    1.40 +//
    1.41 +// Expand the right padding and account for the close button's positioning.
    1.42 +
    1.43 +.alert-dismissable {
    1.44 + padding-right: (@alert-padding + 20);
    1.45 +
    1.46 +  // Adjust close link position
    1.47 +  .close {
    1.48 +    position: relative;
    1.49 +    top: -2px;
    1.50 +    right: -21px;
    1.51 +    color: inherit;
    1.52 +  }
    1.53 +}
    1.54 +
    1.55 +// Alternate styles
    1.56 +//
    1.57 +// Generate contextual modifier classes for colorizing the alert.
    1.58 +
    1.59 +.alert-success {
    1.60 +  .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);
    1.61 +}
    1.62 +.alert-info {
    1.63 +  .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);
    1.64 +}
    1.65 +.alert-warning {
    1.66 +  .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);
    1.67 +}
    1.68 +.alert-danger {
    1.69 +  .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);
    1.70 +}
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/static/less/badges.less	Fri Dec 20 22:30:44 2013 +0100
     2.3 @@ -0,0 +1,51 @@
     2.4 +//
     2.5 +// Badges
     2.6 +// --------------------------------------------------
     2.7 +
     2.8 +
     2.9 +// Base classes
    2.10 +.badge {
    2.11 +  display: inline-block;
    2.12 +  min-width: 10px;
    2.13 +  padding: 3px 7px;
    2.14 +  font-size: @font-size-small;
    2.15 +  font-weight: @badge-font-weight;
    2.16 +  color: @badge-color;
    2.17 +  line-height: @badge-line-height;
    2.18 +  vertical-align: baseline;
    2.19 +  white-space: nowrap;
    2.20 +  text-align: center;
    2.21 +  background-color: @badge-bg;
    2.22 +  border-radius: @badge-border-radius;
    2.23 +
    2.24 +  // Empty badges collapse automatically (not available in IE8)
    2.25 +  &:empty {
    2.26 +    display: none;
    2.27 +  }
    2.28 +
    2.29 +  // Quick fix for badges in buttons
    2.30 +  .btn & {
    2.31 +    position: relative;
    2.32 +    top: -1px;
    2.33 +  }
    2.34 +}
    2.35 +
    2.36 +// Hover state, but only for links
    2.37 +a.badge {
    2.38 +  &:hover,
    2.39 +  &:focus {
    2.40 +    color: @badge-link-hover-color;
    2.41 +    text-decoration: none;
    2.42 +    cursor: pointer;
    2.43 +  }
    2.44 +}
    2.45 +
    2.46 +// Account for counters in navs
    2.47 +a.list-group-item.active > .badge,
    2.48 +.nav-pills > .active > a > .badge {
    2.49 +  color: @badge-active-color;
    2.50 +  background-color: @badge-active-bg;
    2.51 +}
    2.52 +.nav-pills > li > a > .badge {
    2.53 +  margin-left: 3px;
    2.54 +}
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/static/less/bootstrap.less	Fri Dec 20 22:30:44 2013 +0100
     3.3 @@ -0,0 +1,49 @@
     3.4 +// Core variables and mixins
     3.5 +@import "variables.less";
     3.6 +@import "mixins.less";
     3.7 +
     3.8 +// Reset
     3.9 +@import "normalize.less";
    3.10 +@import "print.less";
    3.11 +
    3.12 +// Core CSS
    3.13 +@import "scaffolding.less";
    3.14 +@import "type.less";
    3.15 +@import "code.less";
    3.16 +@import "grid.less";
    3.17 +@import "tables.less";
    3.18 +@import "forms.less";
    3.19 +@import "buttons.less";
    3.20 +
    3.21 +// Components
    3.22 +@import "component-animations.less";
    3.23 +@import "glyphicons.less";
    3.24 +@import "dropdowns.less";
    3.25 +@import "button-groups.less";
    3.26 +@import "input-groups.less";
    3.27 +@import "navs.less";
    3.28 +@import "navbar.less";
    3.29 +@import "breadcrumbs.less";
    3.30 +@import "pagination.less";
    3.31 +@import "pager.less";
    3.32 +@import "labels.less";
    3.33 +@import "badges.less";
    3.34 +@import "jumbotron.less";
    3.35 +@import "thumbnails.less";
    3.36 +@import "alerts.less";
    3.37 +@import "progress-bars.less";
    3.38 +@import "media.less";
    3.39 +@import "list-group.less";
    3.40 +@import "panels.less";
    3.41 +@import "wells.less";
    3.42 +@import "close.less";
    3.43 +
    3.44 +// Components w/ JavaScript
    3.45 +@import "modals.less";
    3.46 +@import "tooltip.less";
    3.47 +@import "popovers.less";
    3.48 +@import "carousel.less";
    3.49 +
    3.50 +// Utility classes
    3.51 +@import "utilities.less";
    3.52 +@import "responsive-utilities.less";
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/static/less/breadcrumbs.less	Fri Dec 20 22:30:44 2013 +0100
     4.3 @@ -0,0 +1,23 @@
     4.4 +//
     4.5 +// Breadcrumbs
     4.6 +// --------------------------------------------------
     4.7 +
     4.8 +
     4.9 +.breadcrumb {
    4.10 +  padding: 8px 15px;
    4.11 +  margin-bottom: @line-height-computed;
    4.12 +  list-style: none;
    4.13 +  background-color: @breadcrumb-bg;
    4.14 +  border-radius: @border-radius-base;
    4.15 +  > li {
    4.16 +    display: inline-block;
    4.17 +    + li:before {
    4.18 +      content: "@{breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space
    4.19 +      padding: 0 5px;
    4.20 +      color: @breadcrumb-color;
    4.21 +    }
    4.22 +  }
    4.23 +  > .active {
    4.24 +    color: @breadcrumb-active-color;
    4.25 +  }
    4.26 +}
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/static/less/button-groups.less	Fri Dec 20 22:30:44 2013 +0100
     5.3 @@ -0,0 +1,227 @@
     5.4 +//
     5.5 +// Button groups
     5.6 +// --------------------------------------------------
     5.7 +
     5.8 +// Make the div behave like a button
     5.9 +.btn-group,
    5.10 +.btn-group-vertical {
    5.11 +  position: relative;
    5.12 +  display: inline-block;
    5.13 +  vertical-align: middle; // match .btn alignment given font-size hack above
    5.14 +  > .btn {
    5.15 +    position: relative;
    5.16 +    float: left;
    5.17 +    // Bring the "active" button to the front
    5.18 +    &:hover,
    5.19 +    &:focus,
    5.20 +    &:active,
    5.21 +    &.active {
    5.22 +      z-index: 2;
    5.23 +    }
    5.24 +    &:focus {
    5.25 +      // Remove focus outline when dropdown JS adds it after closing the menu
    5.26 +      outline: none;
    5.27 +    }
    5.28 +  }
    5.29 +}
    5.30 +
    5.31 +// Prevent double borders when buttons are next to each other
    5.32 +.btn-group {
    5.33 +  .btn + .btn,
    5.34 +  .btn + .btn-group,
    5.35 +  .btn-group + .btn,
    5.36 +  .btn-group + .btn-group {
    5.37 +    margin-left: -1px;
    5.38 +  }
    5.39 +}
    5.40 +
    5.41 +// Optional: Group multiple button groups together for a toolbar
    5.42 +.btn-toolbar {
    5.43 +  .clearfix();
    5.44 +
    5.45 +  .btn-group {
    5.46 +    float: left;
    5.47 +  }
    5.48 +  // Space out series of button groups
    5.49 +  > .btn,
    5.50 +  > .btn-group {
    5.51 +    + .btn,
    5.52 +    + .btn-group {
    5.53 +      margin-left: 5px;
    5.54 +    }
    5.55 +  }
    5.56 +}
    5.57 +
    5.58 +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
    5.59 +  border-radius: 0;
    5.60 +}
    5.61 +
    5.62 +// 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
    5.63 +.btn-group > .btn:first-child {
    5.64 +  margin-left: 0;
    5.65 +  &:not(:last-child):not(.dropdown-toggle) {
    5.66 +    .border-right-radius(0);
    5.67 +  }
    5.68 +}
    5.69 +// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it
    5.70 +.btn-group > .btn:last-child:not(:first-child),
    5.71 +.btn-group > .dropdown-toggle:not(:first-child) {
    5.72 +  .border-left-radius(0);
    5.73 +}
    5.74 +
    5.75 +// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)
    5.76 +.btn-group > .btn-group {
    5.77 +  float: left;
    5.78 +}
    5.79 +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
    5.80 +  border-radius: 0;
    5.81 +}
    5.82 +.btn-group > .btn-group:first-child {
    5.83 +  > .btn:last-child,
    5.84 +  > .dropdown-toggle {
    5.85 +    .border-right-radius(0);
    5.86 +  }
    5.87 +}
    5.88 +.btn-group > .btn-group:last-child > .btn:first-child {
    5.89 +  .border-left-radius(0);
    5.90 +}
    5.91 +
    5.92 +// On active and open, don't show outline
    5.93 +.btn-group .dropdown-toggle:active,
    5.94 +.btn-group.open .dropdown-toggle {
    5.95 +  outline: 0;
    5.96 +}
    5.97 +
    5.98 +
    5.99 +// Sizing
   5.100 +//
   5.101 +// Remix the default button sizing classes into new ones for easier manipulation.
   5.102 +
   5.103 +.btn-group-xs > .btn { .btn-xs(); }
   5.104 +.btn-group-sm > .btn { .btn-sm(); }
   5.105 +.btn-group-lg > .btn { .btn-lg(); }
   5.106 +
   5.107 +
   5.108 +// Split button dropdowns
   5.109 +// ----------------------
   5.110 +
   5.111 +// Give the line between buttons some depth
   5.112 +.btn-group > .btn + .dropdown-toggle {
   5.113 +  padding-left: 8px;
   5.114 +  padding-right: 8px;
   5.115 +}
   5.116 +.btn-group > .btn-lg + .dropdown-toggle {
   5.117 +  padding-left: 12px;
   5.118 +  padding-right: 12px;
   5.119 +}
   5.120 +
   5.121 +// The clickable button for toggling the menu
   5.122 +// Remove the gradient and set the same inset shadow as the :active state
   5.123 +.btn-group.open .dropdown-toggle {
   5.124 +  .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
   5.125 +
   5.126 +  // Show no shadow for `.btn-link` since it has no other button styles.
   5.127 +  &.btn-link {
   5.128 +    .box-shadow(none);
   5.129 +  }
   5.130 +}
   5.131 +
   5.132 +
   5.133 +// Reposition the caret
   5.134 +.btn .caret {
   5.135 +  margin-left: 0;
   5.136 +}
   5.137 +// Carets in other button sizes
   5.138 +.btn-lg .caret {
   5.139 +  border-width: @caret-width-large @caret-width-large 0;
   5.140 +  border-bottom-width: 0;
   5.141 +}
   5.142 +// Upside down carets for .dropup
   5.143 +.dropup .btn-lg .caret {
   5.144 +  border-width: 0 @caret-width-large @caret-width-large;
   5.145 +}
   5.146 +
   5.147 +
   5.148 +// Vertical button groups
   5.149 +// ----------------------
   5.150 +
   5.151 +.btn-group-vertical {
   5.152 +  > .btn,
   5.153 +  > .btn-group,
   5.154 +  > .btn-group > .btn {
   5.155 +    display: block;
   5.156 +    float: none;
   5.157 +    width: 100%;
   5.158 +    max-width: 100%;
   5.159 +  }
   5.160 +
   5.161 +  // Clear floats so dropdown menus can be properly placed
   5.162 +  > .btn-group {
   5.163 +    .clearfix();
   5.164 +    > .btn {
   5.165 +      float: none;
   5.166 +    }
   5.167 +  }
   5.168 +
   5.169 +  > .btn + .btn,
   5.170 +  > .btn + .btn-group,
   5.171 +  > .btn-group + .btn,
   5.172 +  > .btn-group + .btn-group {
   5.173 +    margin-top: -1px;
   5.174 +    margin-left: 0;
   5.175 +  }
   5.176 +}
   5.177 +
   5.178 +.btn-group-vertical > .btn {
   5.179 +  &:not(:first-child):not(:last-child) {
   5.180 +    border-radius: 0;
   5.181 +  }
   5.182 +  &:first-child:not(:last-child) {
   5.183 +    border-top-right-radius: @border-radius-base;
   5.184 +    .border-bottom-radius(0);
   5.185 +  }
   5.186 +  &:last-child:not(:first-child) {
   5.187 +    border-bottom-left-radius: @border-radius-base;
   5.188 +    .border-top-radius(0);
   5.189 +  }
   5.190 +}
   5.191 +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
   5.192 +  border-radius: 0;
   5.193 +}
   5.194 +.btn-group-vertical > .btn-group:first-child {
   5.195 +  > .btn:last-child,
   5.196 +  > .dropdown-toggle {
   5.197 +    .border-bottom-radius(0);
   5.198 +  }
   5.199 +}
   5.200 +.btn-group-vertical > .btn-group:last-child > .btn:first-child {
   5.201 +  .border-top-radius(0);
   5.202 +}
   5.203 +
   5.204 +
   5.205 +
   5.206 +// Justified button groups
   5.207 +// ----------------------
   5.208 +
   5.209 +.btn-group-justified {
   5.210 +  display: table;
   5.211 +  width: 100%;
   5.212 +  table-layout: fixed;
   5.213 +  border-collapse: separate;
   5.214 +  > .btn,
   5.215 +  > .btn-group {
   5.216 +    float: none;
   5.217 +    display: table-cell;
   5.218 +    width: 1%;
   5.219 +  }
   5.220 +  > .btn-group .btn {
   5.221 +    width: 100%;
   5.222 +  }
   5.223 +}
   5.224 +
   5.225 +
   5.226 +// Checkbox and radio options
   5.227 +[data-toggle="buttons"] > .btn > input[type="radio"],
   5.228 +[data-toggle="buttons"] > .btn > input[type="checkbox"] {
   5.229 +  display: none;
   5.230 +}
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/static/less/buttons.less	Fri Dec 20 22:30:44 2013 +0100
     6.3 @@ -0,0 +1,155 @@
     6.4 +//
     6.5 +// Buttons
     6.6 +// --------------------------------------------------
     6.7 +
     6.8 +
     6.9 +// Base styles
    6.10 +// --------------------------------------------------
    6.11 +
    6.12 +.btn {
    6.13 +  display: inline-block;
    6.14 +  margin-bottom: 0; // For input.btn
    6.15 +  font-weight: @btn-font-weight;
    6.16 +  text-align: center;
    6.17 +  vertical-align: middle;
    6.18 +  cursor: pointer;
    6.19 +  background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
    6.20 +  border: 1px solid transparent;
    6.21 +  white-space: nowrap;
    6.22 +  .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base);
    6.23 +  .user-select(none);
    6.24 +
    6.25 +  &:focus {
    6.26 +    .tab-focus();
    6.27 +  }
    6.28 +
    6.29 +  &:hover,
    6.30 +  &:focus {
    6.31 +    color: @btn-default-color;
    6.32 +    text-decoration: none;
    6.33 +  }
    6.34 +
    6.35 +  &:active,
    6.36 +  &.active {
    6.37 +    outline: 0;
    6.38 +    background-image: none;
    6.39 +    .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
    6.40 +  }
    6.41 +
    6.42 +  &.disabled,
    6.43 +  &[disabled],
    6.44 +  fieldset[disabled] & {
    6.45 +    cursor: not-allowed;
    6.46 +    pointer-events: none; // Future-proof disabling of clicks
    6.47 +    .opacity(.65);
    6.48 +    .box-shadow(none);
    6.49 +  }
    6.50 +}
    6.51 +
    6.52 +
    6.53 +// Alternate buttons
    6.54 +// --------------------------------------------------
    6.55 +
    6.56 +.btn-default {
    6.57 +  .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);
    6.58 +}
    6.59 +.btn-primary {
    6.60 +  .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);
    6.61 +}
    6.62 +// Warning appears as orange
    6.63 +.btn-warning {
    6.64 +  .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);
    6.65 +}
    6.66 +// Danger and error appear as red
    6.67 +.btn-danger {
    6.68 +  .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);
    6.69 +}
    6.70 +// Success appears as green
    6.71 +.btn-success {
    6.72 +  .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);
    6.73 +}
    6.74 +// Info appears as blue-green
    6.75 +.btn-info {
    6.76 +  .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);
    6.77 +}
    6.78 +
    6.79 +
    6.80 +// Link buttons
    6.81 +// -------------------------
    6.82 +
    6.83 +// Make a button look and behave like a link
    6.84 +.btn-link {
    6.85 +  color: @link-color;
    6.86 +  font-weight: normal;
    6.87 +  cursor: pointer;
    6.88 +  border-radius: 0;
    6.89 +
    6.90 +  &,
    6.91 +  &:active,
    6.92 +  &[disabled],
    6.93 +  fieldset[disabled] & {
    6.94 +    background-color: transparent;
    6.95 +    .box-shadow(none);
    6.96 +  }
    6.97 +  &,
    6.98 +  &:hover,
    6.99 +  &:focus,
   6.100 +  &:active {
   6.101 +    border-color: transparent;
   6.102 +  }
   6.103 +  &:hover,
   6.104 +  &:focus {
   6.105 +    color: @link-hover-color;
   6.106 +    text-decoration: underline;
   6.107 +    background-color: transparent;
   6.108 +  }
   6.109 +  &[disabled],
   6.110 +  fieldset[disabled] & {
   6.111 +    &:hover,
   6.112 +    &:focus {
   6.113 +      color: @btn-link-disabled-color;
   6.114 +      text-decoration: none;
   6.115 +    }
   6.116 +  }
   6.117 +}
   6.118 +
   6.119 +
   6.120 +// Button Sizes
   6.121 +// --------------------------------------------------
   6.122 +
   6.123 +.btn-lg {
   6.124 +  // line-height: ensure even-numbered height of button next to large input
   6.125 +  .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
   6.126 +}
   6.127 +.btn-sm {
   6.128 +  // line-height: ensure proper height of button next to small input
   6.129 +  .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
   6.130 +}
   6.131 +.btn-xs {
   6.132 +  .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small);
   6.133 +}
   6.134 +
   6.135 +
   6.136 +// Block button
   6.137 +// --------------------------------------------------
   6.138 +
   6.139 +.btn-block {
   6.140 +  display: block;
   6.141 +  width: 100%;
   6.142 +  padding-left: 0;
   6.143 +  padding-right: 0;
   6.144 +}
   6.145 +
   6.146 +// Vertically space out multiple block buttons
   6.147 +.btn-block + .btn-block {
   6.148 +  margin-top: 5px;
   6.149 +}
   6.150 +
   6.151 +// Specificity overrides
   6.152 +input[type="submit"],
   6.153 +input[type="reset"],
   6.154 +input[type="button"] {
   6.155 +  &.btn-block {
   6.156 +    width: 100%;
   6.157 +  }
   6.158 +}
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/static/less/carousel.less	Fri Dec 20 22:30:44 2013 +0100
     7.3 @@ -0,0 +1,232 @@
     7.4 +//
     7.5 +// Carousel
     7.6 +// --------------------------------------------------
     7.7 +
     7.8 +
     7.9 +// Wrapper for the slide container and indicators
    7.10 +.carousel {
    7.11 +  position: relative;
    7.12 +}
    7.13 +
    7.14 +.carousel-inner {
    7.15 +  position: relative;
    7.16 +  overflow: hidden;
    7.17 +  width: 100%;
    7.18 +
    7.19 +  > .item {
    7.20 +    display: none;
    7.21 +    position: relative;
    7.22 +    .transition(.6s ease-in-out left);
    7.23 +
    7.24 +    // Account for jankitude on images
    7.25 +    > img,
    7.26 +    > a > img {
    7.27 +      .img-responsive();
    7.28 +      line-height: 1;
    7.29 +    }
    7.30 +  }
    7.31 +
    7.32 +  > .active,
    7.33 +  > .next,
    7.34 +  > .prev { display: block; }
    7.35 +
    7.36 +  > .active {
    7.37 +    left: 0;
    7.38 +  }
    7.39 +
    7.40 +  > .next,
    7.41 +  > .prev {
    7.42 +    position: absolute;
    7.43 +    top: 0;
    7.44 +    width: 100%;
    7.45 +  }
    7.46 +
    7.47 +  > .next {
    7.48 +    left: 100%;
    7.49 +  }
    7.50 +  > .prev {
    7.51 +    left: -100%;
    7.52 +  }
    7.53 +  > .next.left,
    7.54 +  > .prev.right {
    7.55 +    left: 0;
    7.56 +  }
    7.57 +
    7.58 +  > .active.left {
    7.59 +    left: -100%;
    7.60 +  }
    7.61 +  > .active.right {
    7.62 +    left: 100%;
    7.63 +  }
    7.64 +
    7.65 +}
    7.66 +
    7.67 +// Left/right controls for nav
    7.68 +// ---------------------------
    7.69 +
    7.70 +.carousel-control {
    7.71 +  position: absolute;
    7.72 +  top: 0;
    7.73 +  left: 0;
    7.74 +  bottom: 0;
    7.75 +  width: @carousel-control-width;
    7.76 +  .opacity(@carousel-control-opacity);
    7.77 +  font-size: @carousel-control-font-size;
    7.78 +  color: @carousel-control-color;
    7.79 +  text-align: center;
    7.80 +  text-shadow: @carousel-text-shadow;
    7.81 +  // We can't have this transition here because WebKit cancels the carousel
    7.82 +  // animation if you trip this while in the middle of another animation.
    7.83 +
    7.84 +  // Set gradients for backgrounds
    7.85 +  &.left {
    7.86 +    #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001));
    7.87 +  }
    7.88 +  &.right {
    7.89 +    left: auto;
    7.90 +    right: 0;
    7.91 +    #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5));
    7.92 +  }
    7.93 +
    7.94 +  // Hover/focus state
    7.95 +  &:hover,
    7.96 +  &:focus {
    7.97 +    outline: none;
    7.98 +    color: @carousel-control-color;
    7.99 +    text-decoration: none;
   7.100 +    .opacity(.9);
   7.101 +  }
   7.102 +
   7.103 +  // Toggles
   7.104 +  .icon-prev,
   7.105 +  .icon-next,
   7.106 +  .glyphicon-chevron-left,
   7.107 +  .glyphicon-chevron-right {
   7.108 +    position: absolute;
   7.109 +    top: 50%;
   7.110 +    z-index: 5;
   7.111 +    display: inline-block;
   7.112 +  }
   7.113 +  .icon-prev,
   7.114 +  .glyphicon-chevron-left {
   7.115 +    left: 50%;
   7.116 +  }
   7.117 +  .icon-next,
   7.118 +  .glyphicon-chevron-right {
   7.119 +    right: 50%;
   7.120 +  }
   7.121 +  .icon-prev,
   7.122 +  .icon-next {
   7.123 +    width:  20px;
   7.124 +    height: 20px;
   7.125 +    margin-top: -10px;
   7.126 +    margin-left: -10px;
   7.127 +    font-family: serif;
   7.128 +  }
   7.129 +
   7.130 +  .icon-prev {
   7.131 +    &:before {
   7.132 +      content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039)
   7.133 +    }
   7.134 +  }
   7.135 +  .icon-next {
   7.136 +    &:before {
   7.137 +      content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A)
   7.138 +    }
   7.139 +  }
   7.140 +}
   7.141 +
   7.142 +// Optional indicator pips
   7.143 +//
   7.144 +// Add an unordered list with the following class and add a list item for each
   7.145 +// slide your carousel holds.
   7.146 +
   7.147 +.carousel-indicators {
   7.148 +  position: absolute;
   7.149 +  bottom: 10px;
   7.150 +  left: 50%;
   7.151 +  z-index: 15;
   7.152 +  width: 60%;
   7.153 +  margin-left: -30%;
   7.154 +  padding-left: 0;
   7.155 +  list-style: none;
   7.156 +  text-align: center;
   7.157 +
   7.158 +  li {
   7.159 +    display: inline-block;
   7.160 +    width:  10px;
   7.161 +    height: 10px;
   7.162 +    margin: 1px;
   7.163 +    text-indent: -999px;
   7.164 +    border: 1px solid @carousel-indicator-border-color;
   7.165 +    border-radius: 10px;
   7.166 +    cursor: pointer;
   7.167 +
   7.168 +    // IE8-9 hack for event handling
   7.169 +    //
   7.170 +    // Internet Explorer 8-9 does not support clicks on elements without a set
   7.171 +    // `background-color`. We cannot use `filter` since that's not viewed as a
   7.172 +    // background color by the browser. Thus, a hack is needed.
   7.173 +    //
   7.174 +    // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we
   7.175 +    // set alpha transparency for the best results possible.
   7.176 +    background-color: #000 \9; // IE8
   7.177 +    background-color: rgba(0,0,0,0); // IE9
   7.178 +  }
   7.179 +  .active {
   7.180 +    margin: 0;
   7.181 +    width:  12px;
   7.182 +    height: 12px;
   7.183 +    background-color: @carousel-indicator-active-bg;
   7.184 +  }
   7.185 +}
   7.186 +
   7.187 +// Optional captions
   7.188 +// -----------------------------
   7.189 +// Hidden by default for smaller viewports
   7.190 +.carousel-caption {
   7.191 +  position: absolute;
   7.192 +  left: 15%;
   7.193 +  right: 15%;
   7.194 +  bottom: 20px;
   7.195 +  z-index: 10;
   7.196 +  padding-top: 20px;
   7.197 +  padding-bottom: 20px;
   7.198 +  color: @carousel-caption-color;
   7.199 +  text-align: center;
   7.200 +  text-shadow: @carousel-text-shadow;
   7.201 +  & .btn {
   7.202 +    text-shadow: none; // No shadow for button elements in carousel-caption
   7.203 +  }
   7.204 +}
   7.205 +
   7.206 +
   7.207 +// Scale up controls for tablets and up
   7.208 +@media screen and (min-width: @screen-sm-min) {
   7.209 +
   7.210 +  // Scale up the controls a smidge
   7.211 +  .carousel-control {
   7.212 +    .glyphicons-chevron-left,
   7.213 +    .glyphicons-chevron-right,
   7.214 +    .icon-prev,
   7.215 +    .icon-next {
   7.216 +      width: 30px;
   7.217 +      height: 30px;
   7.218 +      margin-top: -15px;
   7.219 +      margin-left: -15px;
   7.220 +      font-size: 30px;
   7.221 +    }
   7.222 +  }
   7.223 +
   7.224 +  // Show and left align the captions
   7.225 +  .carousel-caption {
   7.226 +    left: 20%;
   7.227 +    right: 20%;
   7.228 +    padding-bottom: 30px;
   7.229 +  }
   7.230 +
   7.231 +  // Move up the indicators
   7.232 +  .carousel-indicators {
   7.233 +    bottom: 20px;
   7.234 +  }
   7.235 +}
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/static/less/close.less	Fri Dec 20 22:30:44 2013 +0100
     8.3 @@ -0,0 +1,33 @@
     8.4 +//
     8.5 +// Close icons
     8.6 +// --------------------------------------------------
     8.7 +
     8.8 +
     8.9 +.close {
    8.10 +  float: right;
    8.11 +  font-size: (@font-size-base * 1.5);
    8.12 +  font-weight: @close-font-weight;
    8.13 +  line-height: 1;
    8.14 +  color: @close-color;
    8.15 +  text-shadow: @close-text-shadow;
    8.16 +  .opacity(.2);
    8.17 +
    8.18 +  &:hover,
    8.19 +  &:focus {
    8.20 +    color: @close-color;
    8.21 +    text-decoration: none;
    8.22 +    cursor: pointer;
    8.23 +    .opacity(.5);
    8.24 +  }
    8.25 +
    8.26 +  // Additional properties for button version
    8.27 +  // iOS requires the button element instead of an anchor tag.
    8.28 +  // If you want the anchor version, it requires `href="#"`.
    8.29 +  button& {
    8.30 +    padding: 0;
    8.31 +    cursor: pointer;
    8.32 +    background: transparent;
    8.33 +    border: 0;
    8.34 +    -webkit-appearance: none;
    8.35 +  }
    8.36 +}
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/static/less/code.less	Fri Dec 20 22:30:44 2013 +0100
     9.3 @@ -0,0 +1,53 @@
     9.4 +//
     9.5 +// Code (inline and block)
     9.6 +// --------------------------------------------------
     9.7 +
     9.8 +
     9.9 +// Inline and block code styles
    9.10 +code,
    9.11 +kbd,
    9.12 +pre,
    9.13 +samp {
    9.14 +  font-family: @font-family-monospace;
    9.15 +}
    9.16 +
    9.17 +// Inline code
    9.18 +code {
    9.19 +  padding: 2px 4px;
    9.20 +  font-size: 90%;
    9.21 +  color: @code-color;
    9.22 +  background-color: @code-bg;
    9.23 +  white-space: nowrap;
    9.24 +  border-radius: @border-radius-base;
    9.25 +}
    9.26 +
    9.27 +// Blocks of code
    9.28 +pre {
    9.29 +  display: block;
    9.30 +  padding: ((@line-height-computed - 1) / 2);
    9.31 +  margin: 0 0 (@line-height-computed / 2);
    9.32 +  font-size: (@font-size-base - 1); // 14px to 13px
    9.33 +  line-height: @line-height-base;
    9.34 +  word-break: break-all;
    9.35 +  word-wrap: break-word;
    9.36 +  color: @pre-color;
    9.37 +  background-color: @pre-bg;
    9.38 +  border: 1px solid @pre-border-color;
    9.39 +  border-radius: @border-radius-base;
    9.40 +
    9.41 +  // Account for some code outputs that place code tags in pre tags
    9.42 +  code {
    9.43 +    padding: 0;
    9.44 +    font-size: inherit;
    9.45 +    color: inherit;
    9.46 +    white-space: pre-wrap;
    9.47 +    background-color: transparent;
    9.48 +    border-radius: 0;
    9.49 +  }
    9.50 +}
    9.51 +
    9.52 +// Enable scrollable blocks of code
    9.53 +.pre-scrollable {
    9.54 +  max-height: @pre-scrollable-max-height;
    9.55 +  overflow-y: scroll;
    9.56 +}
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/static/less/component-animations.less	Fri Dec 20 22:30:44 2013 +0100
    10.3 @@ -0,0 +1,29 @@
    10.4 +//
    10.5 +// Component animations
    10.6 +// --------------------------------------------------
    10.7 +
    10.8 +// Heads up!
    10.9 +//
   10.10 +// We don't use the `.opacity()` mixin here since it causes a bug with text
   10.11 +// fields in IE7-8. Source: https://github.com/twitter/bootstrap/pull/3552.
   10.12 +
   10.13 +.fade {
   10.14 +  opacity: 0;
   10.15 +  .transition(opacity .15s linear);
   10.16 +  &.in {
   10.17 +    opacity: 1;
   10.18 +  }
   10.19 +}
   10.20 +
   10.21 +.collapse {
   10.22 +  display: none;
   10.23 +  &.in {
   10.24 +    display: block;
   10.25 +  }
   10.26 +}
   10.27 +.collapsing {
   10.28 +  position: relative;
   10.29 +  height: 0;
   10.30 +  overflow: hidden;
   10.31 +  .transition(height .35s ease);
   10.32 +}
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/static/less/dropdowns.less	Fri Dec 20 22:30:44 2013 +0100
    11.3 @@ -0,0 +1,187 @@
    11.4 +//
    11.5 +// Dropdown menus
    11.6 +// --------------------------------------------------
    11.7 +
    11.8 +
    11.9 +// Dropdown arrow/caret
   11.10 +.caret {
   11.11 +  display: inline-block;
   11.12 +  width: 0;
   11.13 +  height: 0;
   11.14 +  margin-left: 2px;
   11.15 +  vertical-align: middle;
   11.16 +  border-top:   @caret-width-base solid;
   11.17 +  border-right: @caret-width-base solid transparent;
   11.18 +  border-left:  @caret-width-base solid transparent;
   11.19 +}
   11.20 +
   11.21 +// The dropdown wrapper (div)
   11.22 +.dropdown {
   11.23 +  position: relative;
   11.24 +}
   11.25 +
   11.26 +// Prevent the focus on the dropdown toggle when closing dropdowns
   11.27 +.dropdown-toggle:focus {
   11.28 +  outline: 0;
   11.29 +}
   11.30 +
   11.31 +// The dropdown menu (ul)
   11.32 +.dropdown-menu {
   11.33 +  position: absolute;
   11.34 +  top: 100%;
   11.35 +  left: 0;
   11.36 +  z-index: @zindex-dropdown;
   11.37 +  display: none; // none by default, but block on "open" of the menu
   11.38 +  float: left;
   11.39 +  min-width: 160px;
   11.40 +  padding: 5px 0;
   11.41 +  margin: 2px 0 0; // override default ul
   11.42 +  list-style: none;
   11.43 +  font-size: @font-size-base;
   11.44 +  background-color: @dropdown-bg;
   11.45 +  border: 1px solid @dropdown-fallback-border; // IE8 fallback
   11.46 +  border: 1px solid @dropdown-border;
   11.47 +  border-radius: @border-radius-base;
   11.48 +  .box-shadow(0 6px 12px rgba(0,0,0,.175));
   11.49 +  background-clip: padding-box;
   11.50 +
   11.51 +  // Aligns the dropdown menu to right
   11.52 +  &.pull-right {
   11.53 +    right: 0;
   11.54 +    left: auto;
   11.55 +  }
   11.56 +
   11.57 +  // Dividers (basically an hr) within the dropdown
   11.58 +  .divider {
   11.59 +    .nav-divider(@dropdown-divider-bg);
   11.60 +  }
   11.61 +
   11.62 +  // Links within the dropdown menu
   11.63 +  > li > a {
   11.64 +    display: block;
   11.65 +    padding: 3px 20px;
   11.66 +    clear: both;
   11.67 +    font-weight: normal;
   11.68 +    line-height: @line-height-base;
   11.69 +    color: @dropdown-link-color;
   11.70 +    white-space: nowrap; // prevent links from randomly breaking onto new lines
   11.71 +  }
   11.72 +}
   11.73 +
   11.74 +// Hover/Focus state
   11.75 +.dropdown-menu > li > a {
   11.76 +  &:hover,
   11.77 +  &:focus {
   11.78 +    text-decoration: none;
   11.79 +    color: @dropdown-link-hover-color;
   11.80 +    background-color: @dropdown-link-hover-bg;
   11.81 +  }
   11.82 +}
   11.83 +
   11.84 +// Active state
   11.85 +.dropdown-menu > .active > a {
   11.86 +  &,
   11.87 +  &:hover,
   11.88 +  &:focus {
   11.89 +    color: @dropdown-link-active-color;
   11.90 +    text-decoration: none;
   11.91 +    outline: 0;
   11.92 +    background-color: @dropdown-link-active-bg;
   11.93 +  }
   11.94 +}
   11.95 +
   11.96 +// Disabled state
   11.97 +//
   11.98 +// Gray out text and ensure the hover/focus state remains gray
   11.99 +
  11.100 +.dropdown-menu > .disabled > a {
  11.101 +  &,
  11.102 +  &:hover,
  11.103 +  &:focus {
  11.104 +    color: @dropdown-link-disabled-color;
  11.105 +  }
  11.106 +}
  11.107 +// Nuke hover/focus effects
  11.108 +.dropdown-menu > .disabled > a {
  11.109 +  &:hover,
  11.110 +  &:focus {
  11.111 +    text-decoration: none;
  11.112 +    background-color: transparent;
  11.113 +    background-image: none; // Remove CSS gradient
  11.114 +    .reset-filter();
  11.115 +    cursor: not-allowed;
  11.116 +  }
  11.117 +}
  11.118 +
  11.119 +// Open state for the dropdown
  11.120 +.open {
  11.121 +  // Show the menu
  11.122 +  > .dropdown-menu {
  11.123 +    display: block;
  11.124 +  }
  11.125 +
  11.126 +  // Remove the outline when :focus is triggered
  11.127 +  > a {
  11.128 +    outline: 0;
  11.129 +  }
  11.130 +}
  11.131 +
  11.132 +// Dropdown section headers
  11.133 +.dropdown-header {
  11.134 +  display: block;
  11.135 +  padding: 3px 20px;
  11.136 +  font-size: @font-size-small;
  11.137 +  line-height: @line-height-base;
  11.138 +  color: @dropdown-header-color;
  11.139 +}
  11.140 +
  11.141 +// Backdrop to catch body clicks on mobile, etc.
  11.142 +.dropdown-backdrop {
  11.143 +  position: fixed;
  11.144 +  left: 0;
  11.145 +  right: 0;
  11.146 +  bottom: 0;
  11.147 +  top: 0;
  11.148 +  z-index: @zindex-dropdown - 10;
  11.149 +}
  11.150 +
  11.151 +// Right aligned dropdowns
  11.152 +.pull-right > .dropdown-menu {
  11.153 +  right: 0;
  11.154 +  left: auto;
  11.155 +}
  11.156 +
  11.157 +// Allow for dropdowns to go bottom up (aka, dropup-menu)
  11.158 +//
  11.159 +// Just add .dropup after the standard .dropdown class and you're set, bro.
  11.160 +// TODO: abstract this so that the navbar fixed styles are not placed here?
  11.161 +
  11.162 +.dropup,
  11.163 +.navbar-fixed-bottom .dropdown {
  11.164 +  // Reverse the caret
  11.165 +  .caret {
  11.166 +    border-top: 0;
  11.167 +    border-bottom: @caret-width-base solid;
  11.168 +    content: "";
  11.169 +  }
  11.170 +  // Different positioning for bottom up menu
  11.171 +  .dropdown-menu {
  11.172 +    top: auto;
  11.173 +    bottom: 100%;
  11.174 +    margin-bottom: 1px;
  11.175 +  }
  11.176 +}
  11.177 +
  11.178 +
  11.179 +// Component alignment
  11.180 +//
  11.181 +// Reiterate per navbar.less and the modified component alignment there.
  11.182 +
  11.183 +@media (min-width: @grid-float-breakpoint) {
  11.184 +  .navbar-right {
  11.185 +    .dropdown-menu {
  11.186 +      .pull-right > .dropdown-menu();
  11.187 +    }
  11.188 +  }
  11.189 +}
  11.190 +
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/static/less/forms.less	Fri Dec 20 22:30:44 2013 +0100
    12.3 @@ -0,0 +1,375 @@
    12.4 +//
    12.5 +// Forms
    12.6 +// --------------------------------------------------
    12.7 +
    12.8 +
    12.9 +// Normalize non-controls
   12.10 +//
   12.11 +// Restyle and baseline non-control form elements.
   12.12 +
   12.13 +fieldset {
   12.14 +  padding: 0;
   12.15 +  margin: 0;
   12.16 +  border: 0;
   12.17 +}
   12.18 +
   12.19 +legend {
   12.20 +  display: block;
   12.21 +  width: 100%;
   12.22 +  padding: 0;
   12.23 +  margin-bottom: @line-height-computed;
   12.24 +  font-size: (@font-size-base * 1.5);
   12.25 +  line-height: inherit;
   12.26 +  color: @legend-color;
   12.27 +  border: 0;
   12.28 +  border-bottom: 1px solid @legend-border-color;
   12.29 +}
   12.30 +
   12.31 +label {
   12.32 +  display: inline-block;
   12.33 +  margin-bottom: 5px;
   12.34 +  font-weight: bold;
   12.35 +}
   12.36 +
   12.37 +
   12.38 +// Normalize form controls
   12.39 +
   12.40 +// Override content-box in Normalize (* isn't specific enough)
   12.41 +input[type="search"] {
   12.42 +  .box-sizing(border-box);
   12.43 +}
   12.44 +
   12.45 +// Position radios and checkboxes better
   12.46 +input[type="radio"],
   12.47 +input[type="checkbox"] {
   12.48 +  margin: 4px 0 0;
   12.49 +  margin-top: 1px \9; /* IE8-9 */
   12.50 +  line-height: normal;
   12.51 +}
   12.52 +
   12.53 +// Set the height of select and file controls to match text inputs
   12.54 +input[type="file"] {
   12.55 +  display: block;
   12.56 +}
   12.57 +
   12.58 +// Make multiple select elements height not fixed
   12.59 +select[multiple],
   12.60 +select[size] {
   12.61 +  height: auto;
   12.62 +}
   12.63 +
   12.64 +// Fix optgroup Firefox bug per https://github.com/twbs/bootstrap/issues/7611
   12.65 +select optgroup {
   12.66 +  font-size: inherit;
   12.67 +  font-style: inherit;
   12.68 +  font-family: inherit;
   12.69 +}
   12.70 +
   12.71 +// Focus for select, file, radio, and checkbox
   12.72 +input[type="file"]:focus,
   12.73 +input[type="radio"]:focus,
   12.74 +input[type="checkbox"]:focus {
   12.75 +  .tab-focus();
   12.76 +}
   12.77 +
   12.78 +// Fix for Chrome number input
   12.79 +// Setting certain font-sizes causes the `I` bar to appear on hover of the bottom increment button.
   12.80 +// See https://github.com/twbs/bootstrap/issues/8350 for more.
   12.81 +input[type="number"] {
   12.82 +  &::-webkit-outer-spin-button,
   12.83 +  &::-webkit-inner-spin-button {
   12.84 +    height: auto;
   12.85 +  }
   12.86 +}
   12.87 +
   12.88 +// Adjust output element
   12.89 +output {
   12.90 +  display: block;
   12.91 +  padding-top: (@padding-base-vertical + 1);
   12.92 +  font-size: @font-size-base;
   12.93 +  line-height: @line-height-base;
   12.94 +  color: @input-color;
   12.95 +  vertical-align: middle;
   12.96 +}
   12.97 +
   12.98 +
   12.99 +// Common form controls
  12.100 +//
  12.101 +// Shared size and type resets for form controls. Apply `.form-control` to any
  12.102 +// of the following form controls:
  12.103 +//
  12.104 +// select
  12.105 +// textarea
  12.106 +// input[type="text"]
  12.107 +// input[type="password"]
  12.108 +// input[type="datetime"]
  12.109 +// input[type="datetime-local"]
  12.110 +// input[type="date"]
  12.111 +// input[type="month"]
  12.112 +// input[type="time"]
  12.113 +// input[type="week"]
  12.114 +// input[type="number"]
  12.115 +// input[type="email"]
  12.116 +// input[type="url"]
  12.117 +// input[type="search"]
  12.118 +// input[type="tel"]
  12.119 +// input[type="color"]
  12.120 +
  12.121 +.form-control {
  12.122 +  display: block;
  12.123 +  width: 100%;
  12.124 +  height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)
  12.125 +  padding: @padding-base-vertical @padding-base-horizontal;
  12.126 +  font-size: @font-size-base;
  12.127 +  line-height: @line-height-base;
  12.128 +  color: @input-color;
  12.129 +  vertical-align: middle;
  12.130 +  background-color: @input-bg;
  12.131 +  background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
  12.132 +  border: 1px solid @input-border;
  12.133 +  border-radius: @input-border-radius;
  12.134 +  .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
  12.135 +  .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s");
  12.136 +
  12.137 +  // Customize the `:focus` state to imitate native WebKit styles.
  12.138 +  .form-control-focus();
  12.139 +
  12.140 +  // Placeholder
  12.141 +  //
  12.142 +  // Placeholder text gets special styles because when browsers invalidate entire
  12.143 +  // lines if it doesn't understand a selector/
  12.144 +  .placeholder();
  12.145 +
  12.146 +  // Disabled and read-only inputs
  12.147 +  // Note: HTML5 says that controls under a fieldset > legend:first-child won't
  12.148 +  // be disabled if the fieldset is disabled. Due to implementation difficulty,
  12.149 +  // we don't honor that edge case; we style them as disabled anyway.
  12.150 +  &[disabled],
  12.151 +  &[readonly],
  12.152 +  fieldset[disabled] & {
  12.153 +    cursor: not-allowed;
  12.154 +    background-color: @input-bg-disabled;
  12.155 +  }
  12.156 +
  12.157 +  // Reset height for `textarea`s
  12.158 +  textarea& {
  12.159 +    height: auto;
  12.160 +  }
  12.161 +}
  12.162 +
  12.163 +
  12.164 +// Form groups
  12.165 +//
  12.166 +// Designed to help with the organization and spacing of vertical forms. For
  12.167 +// horizontal forms, use the predefined grid classes.
  12.168 +
  12.169 +.form-group {
  12.170 +  margin-bottom: 15px;
  12.171 +}
  12.172 +
  12.173 +
  12.174 +// Checkboxes and radios
  12.175 +//
  12.176 +// Indent the labels to position radios/checkboxes as hanging controls.
  12.177 +
  12.178 +.radio,
  12.179 +.checkbox {
  12.180 +  display: block;
  12.181 +  min-height: @line-height-computed; // clear the floating input if there is no label text
  12.182 +  margin-top: 10px;
  12.183 +  margin-bottom: 10px;
  12.184 +  padding-left: 20px;
  12.185 +  vertical-align: middle;
  12.186 +  label {
  12.187 +    display: inline;
  12.188 +    margin-bottom: 0;
  12.189 +    font-weight: normal;
  12.190 +    cursor: pointer;
  12.191 +  }
  12.192 +}
  12.193 +.radio input[type="radio"],
  12.194 +.radio-inline input[type="radio"],
  12.195 +.checkbox input[type="checkbox"],
  12.196 +.checkbox-inline input[type="checkbox"] {
  12.197 +  float: left;
  12.198 +  margin-left: -20px;
  12.199 +}
  12.200 +.radio + .radio,
  12.201 +.checkbox + .checkbox {
  12.202 +  margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing
  12.203 +}
  12.204 +
  12.205 +// Radios and checkboxes on same line
  12.206 +.radio-inline,
  12.207 +.checkbox-inline {
  12.208 +  display: inline-block;
  12.209 +  padding-left: 20px;
  12.210 +  margin-bottom: 0;
  12.211 +  vertical-align: middle;
  12.212 +  font-weight: normal;
  12.213 +  cursor: pointer;
  12.214 +}
  12.215 +.radio-inline + .radio-inline,
  12.216 +.checkbox-inline + .checkbox-inline {
  12.217 +  margin-top: 0;
  12.218 +  margin-left: 10px; // space out consecutive inline controls
  12.219 +}
  12.220 +
  12.221 +// Apply same disabled cursor tweak as for inputs
  12.222 +//
  12.223 +// Note: Neither radios nor checkboxes can be readonly.
  12.224 +input[type="radio"],
  12.225 +input[type="checkbox"],
  12.226 +.radio,
  12.227 +.radio-inline,
  12.228 +.checkbox,
  12.229 +.checkbox-inline {
  12.230 +  &[disabled],
  12.231 +  fieldset[disabled] & {
  12.232 +    cursor: not-allowed;
  12.233 +  }
  12.234 +}
  12.235 +
  12.236 +// Form control sizing
  12.237 +.input-sm {
  12.238 +  .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
  12.239 +}
  12.240 +
  12.241 +.input-lg {
  12.242 +  .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
  12.243 +}
  12.244 +
  12.245 +
  12.246 +// Form control feedback states
  12.247 +//
  12.248 +// Apply contextual and semantic states to individual form controls.
  12.249 +
  12.250 +// Warning
  12.251 +.has-warning {
  12.252 +  .form-control-validation(@state-warning-text; @state-warning-text; @state-warning-bg);
  12.253 +}
  12.254 +// Error
  12.255 +.has-error {
  12.256 +  .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg);
  12.257 +}
  12.258 +// Success
  12.259 +.has-success {
  12.260 +  .form-control-validation(@state-success-text; @state-success-text; @state-success-bg);
  12.261 +}
  12.262 +
  12.263 +
  12.264 +// Static form control text
  12.265 +//
  12.266 +// Apply class to a `p` element to make any string of text align with labels in
  12.267 +// a horizontal form layout.
  12.268 +
  12.269 +.form-control-static {
  12.270 +  margin-bottom: 0; // Remove default margin from `p`
  12.271 +}
  12.272 +
  12.273 +
  12.274 +// Help text
  12.275 +//
  12.276 +// Apply to any element you wish to create light text for placement immediately
  12.277 +// below a form control. Use for general help, formatting, or instructional text.
  12.278 +
  12.279 +.help-block {
  12.280 +  display: block; // account for any element using help-block
  12.281 +  margin-top: 5px;
  12.282 +  margin-bottom: 10px;
  12.283 +  color: lighten(@text-color, 25%); // lighten the text some for contrast
  12.284 +}
  12.285 +
  12.286 +
  12.287 +
  12.288 +// Inline forms
  12.289 +//
  12.290 +// Make forms appear inline(-block) by adding the `.form-inline` class. Inline
  12.291 +// forms begin stacked on extra small (mobile) devices and then go inline when
  12.292 +// viewports reach <768px.
  12.293 +//
  12.294 +// Requires wrapping inputs and labels with `.form-group` for proper display of
  12.295 +// default HTML form controls and our custom form controls (e.g., input groups).
  12.296 +//
  12.297 +// Heads up! This is mixin-ed into `.navbar-form` in navbars.less.
  12.298 +
  12.299 +.form-inline {
  12.300 +
  12.301 +  // Kick in the inline
  12.302 +  @media (min-width: @screen-sm) {
  12.303 +    // Inline-block all the things for "inline"
  12.304 +    .form-group  {
  12.305 +      display: inline-block;
  12.306 +      margin-bottom: 0;
  12.307 +      vertical-align: middle;
  12.308 +    }
  12.309 +
  12.310 +    // In navbar-form, allow folks to *not* use `.form-group`
  12.311 +    .form-control {
  12.312 +      display: inline-block;
  12.313 +    }
  12.314 +
  12.315 +    // Override `width: 100%;` when not within a `.form-group`
  12.316 +    select.form-control {
  12.317 +      width: auto;
  12.318 +    }
  12.319 +
  12.320 +    // Remove default margin on radios/checkboxes that were used for stacking, and
  12.321 +    // then undo the floating of radios and checkboxes to match (which also avoids
  12.322 +    // a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969).
  12.323 +    .radio,
  12.324 +    .checkbox {
  12.325 +      display: inline-block;
  12.326 +      margin-top: 0;
  12.327 +      margin-bottom: 0;
  12.328 +      padding-left: 0;
  12.329 +    }
  12.330 +    .radio input[type="radio"],
  12.331 +    .checkbox input[type="checkbox"] {
  12.332 +      float: none;
  12.333 +      margin-left: 0;
  12.334 +    }
  12.335 +  }
  12.336 +}
  12.337 +
  12.338 +
  12.339 +// Horizontal forms
  12.340 +//
  12.341 +// Horizontal forms are built on grid classes and allow you to create forms with
  12.342 +// labels on the left and inputs on the right.
  12.343 +
  12.344 +.form-horizontal {
  12.345 +
  12.346 +  // Consistent vertical alignment of labels, radios, and checkboxes
  12.347 +  .control-label,
  12.348 +  .radio,
  12.349 +  .checkbox,
  12.350 +  .radio-inline,
  12.351 +  .checkbox-inline {
  12.352 +    margin-top: 0;
  12.353 +    margin-bottom: 0;
  12.354 +    padding-top: (@padding-base-vertical + 1); // Default padding plus a border
  12.355 +  }
  12.356 +  // Account for padding we're adding to ensure the alignment and of help text
  12.357 +  // and other content below items
  12.358 +  .radio,
  12.359 +  .checkbox {
  12.360 +    min-height: @line-height-computed + (@padding-base-vertical + 1);
  12.361 +  }
  12.362 +
  12.363 +  // Make form groups behave like rows
  12.364 +  .form-group {
  12.365 +    .make-row();
  12.366 +  }
  12.367 +
  12.368 +  .form-control-static {
  12.369 +    padding-top: (@padding-base-vertical + 1);
  12.370 +  }
  12.371 +
  12.372 +  // Only right align form labels here when the columns stop stacking
  12.373 +  @media (min-width: @screen-sm-min) {
  12.374 +    .control-label {
  12.375 +      text-align: right;
  12.376 +    }
  12.377 +  }
  12.378 +}
    13.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.2 +++ b/static/less/glyphicons.less	Fri Dec 20 22:30:44 2013 +0100
    13.3 @@ -0,0 +1,237 @@
    13.4 +//
    13.5 +// Glyphicons for Bootstrap
    13.6 +//
    13.7 +// Since icons are fonts, they can be placed anywhere text is placed and are
    13.8 +// thus automatically sized to match the surrounding child. To use, create an
    13.9 +// inline element with the appropriate classes, like so:
   13.10 +//
   13.11 +// <a href="#"><span class="glyphicon glyphicon-star"></span> Star</a>
   13.12 +
   13.13 +// Import the fonts
   13.14 +@font-face {
   13.15 +  font-family: 'Glyphicons Halflings';
   13.16 +  src: ~"url('@{icon-font-path}@{icon-font-name}.eot')";
   13.17 +  src: ~"url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype')",
   13.18 +       ~"url('@{icon-font-path}@{icon-font-name}.woff') format('woff')",
   13.19 +       ~"url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype')",
   13.20 +       ~"url('@{icon-font-path}@{icon-font-name}.svg#glyphicons-halflingsregular') format('svg')";
   13.21 +}
   13.22 +
   13.23 +// Catchall baseclass
   13.24 +.glyphicon {
   13.25 +  position: relative;
   13.26 +  top: 1px;
   13.27 +  display: inline-block;
   13.28 +  font-family: 'Glyphicons Halflings';
   13.29 +  font-style: normal;
   13.30 +  font-weight: normal;
   13.31 +  line-height: 1;
   13.32 +  -webkit-font-smoothing: antialiased;
   13.33 +  -moz-osx-font-smoothing: grayscale;
   13.34 +
   13.35 +  &:empty {
   13.36 +    width: 1em;
   13.37 +  }
   13.38 +}
   13.39 +
   13.40 +// Individual icons
   13.41 +.glyphicon-asterisk               { &:before { content: "\2a"; } }
   13.42 +.glyphicon-plus                   { &:before { content: "\2b"; } }
   13.43 +.glyphicon-euro                   { &:before { content: "\20ac"; } }
   13.44 +.glyphicon-minus                  { &:before { content: "\2212"; } }
   13.45 +.glyphicon-cloud                  { &:before { content: "\2601"; } }
   13.46 +.glyphicon-envelope               { &:before { content: "\2709"; } }
   13.47 +.glyphicon-pencil                 { &:before { content: "\270f"; } }
   13.48 +.glyphicon-glass                  { &:before { content: "\e001"; } }
   13.49 +.glyphicon-music                  { &:before { content: "\e002"; } }
   13.50 +.glyphicon-search                 { &:before { content: "\e003"; } }
   13.51 +.glyphicon-heart                  { &:before { content: "\e005"; } }
   13.52 +.glyphicon-star                   { &:before { content: "\e006"; } }
   13.53 +.glyphicon-star-empty             { &:before { content: "\e007"; } }
   13.54 +.glyphicon-user                   { &:before { content: "\e008"; } }
   13.55 +.glyphicon-film                   { &:before { content: "\e009"; } }
   13.56 +.glyphicon-th-large               { &:before { content: "\e010"; } }
   13.57 +.glyphicon-th                     { &:before { content: "\e011"; } }
   13.58 +.glyphicon-th-list                { &:before { content: "\e012"; } }
   13.59 +.glyphicon-ok                     { &:before { content: "\e013"; } }
   13.60 +.glyphicon-remove                 { &:before { content: "\e014"; } }
   13.61 +.glyphicon-zoom-in                { &:before { content: "\e015"; } }
   13.62 +.glyphicon-zoom-out               { &:before { content: "\e016"; } }
   13.63 +.glyphicon-off                    { &:before { content: "\e017"; } }
   13.64 +.glyphicon-signal                 { &:before { content: "\e018"; } }
   13.65 +.glyphicon-cog                    { &:before { content: "\e019"; } }
   13.66 +.glyphicon-trash                  { &:before { content: "\e020"; } }
   13.67 +.glyphicon-home                   { &:before { content: "\e021"; } }
   13.68 +.glyphicon-file                   { &:before { content: "\e022"; } }
   13.69 +.glyphicon-time                   { &:before { content: "\e023"; } }
   13.70 +.glyphicon-road                   { &:before { content: "\e024"; } }
   13.71 +.glyphicon-download-alt           { &:before { content: "\e025"; } }
   13.72 +.glyphicon-download               { &:before { content: "\e026"; } }
   13.73 +.glyphicon-upload                 { &:before { content: "\e027"; } }
   13.74 +.glyphicon-inbox                  { &:before { content: "\e028"; } }
   13.75 +.glyphicon-play-circle            { &:before { content: "\e029"; } }
   13.76 +.glyphicon-repeat                 { &:before { content: "\e030"; } }
   13.77 +.glyphicon-refresh                { &:before { content: "\e031"; } }
   13.78 +.glyphicon-list-alt               { &:before { content: "\e032"; } }
   13.79 +.glyphicon-lock                   { &:before { content: "\e033"; } }
   13.80 +.glyphicon-flag                   { &:before { content: "\e034"; } }
   13.81 +.glyphicon-headphones             { &:before { content: "\e035"; } }
   13.82 +.glyphicon-volume-off             { &:before { content: "\e036"; } }
   13.83 +.glyphicon-volume-down            { &:before { content: "\e037"; } }
   13.84 +.glyphicon-volume-up              { &:before { content: "\e038"; } }
   13.85 +.glyphicon-qrcode                 { &:before { content: "\e039"; } }
   13.86 +.glyphicon-barcode                { &:before { content: "\e040"; } }
   13.87 +.glyphicon-tag                    { &:before { content: "\e041"; } }
   13.88 +.glyphicon-tags                   { &:before { content: "\e042"; } }
   13.89 +.glyphicon-book                   { &:before { content: "\e043"; } }
   13.90 +.glyphicon-bookmark               { &:before { content: "\e044"; } }
   13.91 +.glyphicon-print                  { &:before { content: "\e045"; } }
   13.92 +.glyphicon-camera                 { &:before { content: "\e046"; } }
   13.93 +.glyphicon-font                   { &:before { content: "\e047"; } }
   13.94 +.glyphicon-bold                   { &:before { content: "\e048"; } }
   13.95 +.glyphicon-italic                 { &:before { content: "\e049"; } }
   13.96 +.glyphicon-text-height            { &:before { content: "\e050"; } }
   13.97 +.glyphicon-text-width             { &:before { content: "\e051"; } }
   13.98 +.glyphicon-align-left             { &:before { content: "\e052"; } }
   13.99 +.glyphicon-align-center           { &:before { content: "\e053"; } }
  13.100 +.glyphicon-align-right            { &:before { content: "\e054"; } }
  13.101 +.glyphicon-align-justify          { &:before { content: "\e055"; } }
  13.102 +.glyphicon-list                   { &:before { content: "\e056"; } }
  13.103 +.glyphicon-indent-left            { &:before { content: "\e057"; } }
  13.104 +.glyphicon-indent-right           { &:before { content: "\e058"; } }
  13.105 +.glyphicon-facetime-video         { &:before { content: "\e059"; } }
  13.106 +.glyphicon-picture                { &:before { content: "\e060"; } }
  13.107 +.glyphicon-map-marker             { &:before { content: "\e062"; } }
  13.108 +.glyphicon-adjust                 { &:before { content: "\e063"; } }
  13.109 +.glyphicon-tint                   { &:before { content: "\e064"; } }
  13.110 +.glyphicon-edit                   { &:before { content: "\e065"; } }
  13.111 +.glyphicon-share                  { &:before { content: "\e066"; } }
  13.112 +.glyphicon-check                  { &:before { content: "\e067"; } }
  13.113 +.glyphicon-move                   { &:before { content: "\e068"; } }
  13.114 +.glyphicon-step-backward          { &:before { content: "\e069"; } }
  13.115 +.glyphicon-fast-backward          { &:before { content: "\e070"; } }
  13.116 +.glyphicon-backward               { &:before { content: "\e071"; } }
  13.117 +.glyphicon-play                   { &:before { content: "\e072"; } }
  13.118 +.glyphicon-pause                  { &:before { content: "\e073"; } }
  13.119 +.glyphicon-stop                   { &:before { content: "\e074"; } }
  13.120 +.glyphicon-forward                { &:before { content: "\e075"; } }
  13.121 +.glyphicon-fast-forward           { &:before { content: "\e076"; } }
  13.122 +.glyphicon-step-forward           { &:before { content: "\e077"; } }
  13.123 +.glyphicon-eject                  { &:before { content: "\e078"; } }
  13.124 +.glyphicon-chevron-left           { &:before { content: "\e079"; } }
  13.125 +.glyphicon-chevron-right          { &:before { content: "\e080"; } }
  13.126 +.glyphicon-plus-sign              { &:before { content: "\e081"; } }
  13.127 +.glyphicon-minus-sign             { &:before { content: "\e082"; } }
  13.128 +.glyphicon-remove-sign            { &:before { content: "\e083"; } }
  13.129 +.glyphicon-ok-sign                { &:before { content: "\e084"; } }
  13.130 +.glyphicon-question-sign          { &:before { content: "\e085"; } }
  13.131 +.glyphicon-info-sign              { &:before { content: "\e086"; } }
  13.132 +.glyphicon-screenshot             { &:before { content: "\e087"; } }
  13.133 +.glyphicon-remove-circle          { &:before { content: "\e088"; } }
  13.134 +.glyphicon-ok-circle              { &:before { content: "\e089"; } }
  13.135 +.glyphicon-ban-circle             { &:before { content: "\e090"; } }
  13.136 +.glyphicon-arrow-left             { &:before { content: "\e091"; } }
  13.137 +.glyphicon-arrow-right            { &:before { content: "\e092"; } }
  13.138 +.glyphicon-arrow-up               { &:before { content: "\e093"; } }
  13.139 +.glyphicon-arrow-down             { &:before { content: "\e094"; } }
  13.140 +.glyphicon-share-alt              { &:before { content: "\e095"; } }
  13.141 +.glyphicon-resize-full            { &:before { content: "\e096"; } }
  13.142 +.glyphicon-resize-small           { &:before { content: "\e097"; } }
  13.143 +.glyphicon-exclamation-sign       { &:before { content: "\e101"; } }
  13.144 +.glyphicon-gift                   { &:before { content: "\e102"; } }
  13.145 +.glyphicon-leaf                   { &:before { content: "\e103"; } }
  13.146 +.glyphicon-fire                   { &:before { content: "\e104"; } }
  13.147 +.glyphicon-eye-open               { &:before { content: "\e105"; } }
  13.148 +.glyphicon-eye-close              { &:before { content: "\e106"; } }
  13.149 +.glyphicon-warning-sign           { &:before { content: "\e107"; } }
  13.150 +.glyphicon-plane                  { &:before { content: "\e108"; } }
  13.151 +.glyphicon-calendar               { &:before { content: "\e109"; } }
  13.152 +.glyphicon-random                 { &:before { content: "\e110"; } }
  13.153 +.glyphicon-comment                { &:before { content: "\e111"; } }
  13.154 +.glyphicon-magnet                 { &:before { content: "\e112"; } }
  13.155 +.glyphicon-chevron-up             { &:before { content: "\e113"; } }
  13.156 +.glyphicon-chevron-down           { &:before { content: "\e114"; } }
  13.157 +.glyphicon-retweet                { &:before { content: "\e115"; } }
  13.158 +.glyphicon-shopping-cart          { &:before { content: "\e116"; } }
  13.159 +.glyphicon-folder-close           { &:before { content: "\e117"; } }
  13.160 +.glyphicon-folder-open            { &:before { content: "\e118"; } }
  13.161 +.glyphicon-resize-vertical        { &:before { content: "\e119"; } }
  13.162 +.glyphicon-resize-horizontal      { &:before { content: "\e120"; } }
  13.163 +.glyphicon-hdd                    { &:before { content: "\e121"; } }
  13.164 +.glyphicon-bullhorn               { &:before { content: "\e122"; } }
  13.165 +.glyphicon-bell                   { &:before { content: "\e123"; } }
  13.166 +.glyphicon-certificate            { &:before { content: "\e124"; } }
  13.167 +.glyphicon-thumbs-up              { &:before { content: "\e125"; } }
  13.168 +.glyphicon-thumbs-down            { &:before { content: "\e126"; } }
  13.169 +.glyphicon-hand-right             { &:before { content: "\e127"; } }
  13.170 +.glyphicon-hand-left              { &:before { content: "\e128"; } }
  13.171 +.glyphicon-hand-up                { &:before { content: "\e129"; } }
  13.172 +.glyphicon-hand-down              { &:before { content: "\e130"; } }
  13.173 +.glyphicon-circle-arrow-right     { &:before { content: "\e131"; } }
  13.174 +.glyphicon-circle-arrow-left      { &:before { content: "\e132"; } }
  13.175 +.glyphicon-circle-arrow-up        { &:before { content: "\e133"; } }
  13.176 +.glyphicon-circle-arrow-down      { &:before { content: "\e134"; } }
  13.177 +.glyphicon-globe                  { &:before { content: "\e135"; } }
  13.178 +.glyphicon-wrench                 { &:before { content: "\e136"; } }
  13.179 +.glyphicon-tasks                  { &:before { content: "\e137"; } }
  13.180 +.glyphicon-filter                 { &:before { content: "\e138"; } }
  13.181 +.glyphicon-briefcase              { &:before { content: "\e139"; } }
  13.182 +.glyphicon-fullscreen             { &:before { content: "\e140"; } }
  13.183 +.glyphicon-dashboard              { &:before { content: "\e141"; } }
  13.184 +.glyphicon-paperclip              { &:before { content: "\e142"; } }
  13.185 +.glyphicon-heart-empty            { &:before { content: "\e143"; } }
  13.186 +.glyphicon-link                   { &:before { content: "\e144"; } }
  13.187 +.glyphicon-phone                  { &:before { content: "\e145"; } }
  13.188 +.glyphicon-pushpin                { &:before { content: "\e146"; } }
  13.189 +.glyphicon-usd                    { &:before { content: "\e148"; } }
  13.190 +.glyphicon-gbp                    { &:before { content: "\e149"; } }
  13.191 +.glyphicon-sort                   { &:before { content: "\e150"; } }
  13.192 +.glyphicon-sort-by-alphabet       { &:before { content: "\e151"; } }
  13.193 +.glyphicon-sort-by-alphabet-alt   { &:before { content: "\e152"; } }
  13.194 +.glyphicon-sort-by-order          { &:before { content: "\e153"; } }
  13.195 +.glyphicon-sort-by-order-alt      { &:before { content: "\e154"; } }
  13.196 +.glyphicon-sort-by-attributes     { &:before { content: "\e155"; } }
  13.197 +.glyphicon-sort-by-attributes-alt { &:before { content: "\e156"; } }
  13.198 +.glyphicon-unchecked              { &:before { content: "\e157"; } }
  13.199 +.glyphicon-expand                 { &:before { content: "\e158"; } }
  13.200 +.glyphicon-collapse-down          { &:before { content: "\e159"; } }
  13.201 +.glyphicon-collapse-up            { &:before { content: "\e160"; } }
  13.202 +.glyphicon-log-in                 { &:before { content: "\e161"; } }
  13.203 +.glyphicon-flash                  { &:before { content: "\e162"; } }
  13.204 +.glyphicon-log-out                { &:before { content: "\e163"; } }
  13.205 +.glyphicon-new-window             { &:before { content: "\e164"; } }
  13.206 +.glyphicon-record                 { &:before { content: "\e165"; } }
  13.207 +.glyphicon-save                   { &:before { content: "\e166"; } }
  13.208 +.glyphicon-open                   { &:before { content: "\e167"; } }
  13.209 +.glyphicon-saved                  { &:before { content: "\e168"; } }
  13.210 +.glyphicon-import                 { &:before { content: "\e169"; } }
  13.211 +.glyphicon-export                 { &:before { content: "\e170"; } }
  13.212 +.glyphicon-send                   { &:before { content: "\e171"; } }
  13.213 +.glyphicon-floppy-disk            { &:before { content: "\e172"; } }
  13.214 +.glyphicon-floppy-saved           { &:before { content: "\e173"; } }
  13.215 +.glyphicon-floppy-remove          { &:before { content: "\e174"; } }
  13.216 +.glyphicon-floppy-save            { &:before { content: "\e175"; } }
  13.217 +.glyphicon-floppy-open            { &:before { content: "\e176"; } }
  13.218 +.glyphicon-credit-card            { &:before { content: "\e177"; } }
  13.219 +.glyphicon-transfer               { &:before { content: "\e178"; } }
  13.220 +.glyphicon-cutlery                { &:before { content: "\e179"; } }
  13.221 +.glyphicon-header                 { &:before { content: "\e180"; } }
  13.222 +.glyphicon-compressed             { &:before { content: "\e181"; } }
  13.223 +.glyphicon-earphone               { &:before { content: "\e182"; } }
  13.224 +.glyphicon-phone-alt              { &:before { content: "\e183"; } }
  13.225 +.glyphicon-tower                  { &:before { content: "\e184"; } }
  13.226 +.glyphicon-stats                  { &:before { content: "\e185"; } }
  13.227 +.glyphicon-sd-video               { &:before { content: "\e186"; } }
  13.228 +.glyphicon-hd-video               { &:before { content: "\e187"; } }
  13.229 +.glyphicon-subtitles              { &:before { content: "\e188"; } }
  13.230 +.glyphicon-sound-stereo           { &:before { content: "\e189"; } }
  13.231 +.glyphicon-sound-dolby            { &:before { content: "\e190"; } }
  13.232 +.glyphicon-sound-5-1              { &:before { content: "\e191"; } }
  13.233 +.glyphicon-sound-6-1              { &:before { content: "\e192"; } }
  13.234 +.glyphicon-sound-7-1              { &:before { content: "\e193"; } }
  13.235 +.glyphicon-copyright-mark         { &:before { content: "\e194"; } }
  13.236 +.glyphicon-registration-mark      { &:before { content: "\e195"; } }
  13.237 +.glyphicon-cloud-download         { &:before { content: "\e197"; } }
  13.238 +.glyphicon-cloud-upload           { &:before { content: "\e198"; } }
  13.239 +.glyphicon-tree-conifer           { &:before { content: "\e199"; } }
  13.240 +.glyphicon-tree-deciduous         { &:before { content: "\e200"; } }
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/static/less/grid.less	Fri Dec 20 22:30:44 2013 +0100
    14.3 @@ -0,0 +1,79 @@
    14.4 +//
    14.5 +// Grid system
    14.6 +// --------------------------------------------------
    14.7 +
    14.8 +// Set the container width, and override it for fixed navbars in media queries
    14.9 +.container {
   14.10 +  .container-fixed();
   14.11 +
   14.12 +  @media (min-width: @screen-sm) {
   14.13 +    width: @container-sm;
   14.14 +  }
   14.15 +  @media (min-width: @screen-md) {
   14.16 +    width: @container-md;
   14.17 +  }
   14.18 +  @media (min-width: @screen-lg-min) {
   14.19 +    width: @container-lg;
   14.20 +  }
   14.21 +}
   14.22 +
   14.23 +// mobile first defaults
   14.24 +.row {
   14.25 +  .make-row();
   14.26 +}
   14.27 +
   14.28 +// Common styles for small and large grid columns
   14.29 +.make-grid-columns();
   14.30 +
   14.31 +
   14.32 +// Extra small grid
   14.33 +//
   14.34 +// Columns, offsets, pushes, and pulls for extra small devices like
   14.35 +// smartphones.
   14.36 +
   14.37 +.make-grid-columns-float(xs);
   14.38 +.make-grid(@grid-columns, xs, width);
   14.39 +.make-grid(@grid-columns, xs, pull);
   14.40 +.make-grid(@grid-columns, xs, push);
   14.41 +.make-grid(@grid-columns, xs, offset);
   14.42 +
   14.43 +
   14.44 +// Small grid
   14.45 +//
   14.46 +// Columns, offsets, pushes, and pulls for the small device range, from phones
   14.47 +// to tablets.
   14.48 +
   14.49 +@media (min-width: @screen-sm-min) {
   14.50 +  .make-grid-columns-float(sm);
   14.51 +  .make-grid(@grid-columns, sm, width);
   14.52 +  .make-grid(@grid-columns, sm, pull);
   14.53 +  .make-grid(@grid-columns, sm, push);
   14.54 +  .make-grid(@grid-columns, sm, offset);
   14.55 +}
   14.56 +
   14.57 +
   14.58 +// Medium grid
   14.59 +//
   14.60 +// Columns, offsets, pushes, and pulls for the desktop device range.
   14.61 +
   14.62 +@media (min-width: @screen-md-min) {
   14.63 +  .make-grid-columns-float(md);
   14.64 +  .make-grid(@grid-columns, md, width);
   14.65 +  .make-grid(@grid-columns, md, pull);
   14.66 +  .make-grid(@grid-columns, md, push);
   14.67 +  .make-grid(@grid-columns, md, offset);
   14.68 +}
   14.69 +
   14.70 +
   14.71 +// Large grid
   14.72 +//
   14.73 +// Columns, offsets, pushes, and pulls for the large desktop device range.
   14.74 +
   14.75 +@media (min-width: @screen-lg-min) {
   14.76 +  .make-grid-columns-float(lg);
   14.77 +  .make-grid(@grid-columns, lg, width);
   14.78 +  .make-grid(@grid-columns, lg, pull);
   14.79 +  .make-grid(@grid-columns, lg, push);
   14.80 +  .make-grid(@grid-columns, lg, offset);
   14.81 +}
   14.82 +
    15.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.2 +++ b/static/less/input-groups.less	Fri Dec 20 22:30:44 2013 +0100
    15.3 @@ -0,0 +1,136 @@
    15.4 +//
    15.5 +// Input groups
    15.6 +// --------------------------------------------------
    15.7 +
    15.8 +// Base styles
    15.9 +// -------------------------
   15.10 +.input-group {
   15.11 +  position: relative; // For dropdowns
   15.12 +  display: table;
   15.13 +  border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table
   15.14 +
   15.15 +  // Undo padding and float of grid classes
   15.16 +  &[class*="col-"] {
   15.17 +    float: none;
   15.18 +    padding-left: 0;
   15.19 +    padding-right: 0;
   15.20 +  }
   15.21 +
   15.22 +  .form-control {
   15.23 +    width: 100%;
   15.24 +    margin-bottom: 0;
   15.25 +  }
   15.26 +}
   15.27 +
   15.28 +// Sizing options
   15.29 +//
   15.30 +// Remix the default form control sizing classes into new ones for easier
   15.31 +// manipulation.
   15.32 +
   15.33 +.input-group-lg > .form-control,
   15.34 +.input-group-lg > .input-group-addon,
   15.35 +.input-group-lg > .input-group-btn > .btn { .input-lg(); }
   15.36 +.input-group-sm > .form-control,
   15.37 +.input-group-sm > .input-group-addon,
   15.38 +.input-group-sm > .input-group-btn > .btn { .input-sm(); }
   15.39 +
   15.40 +
   15.41 +// Display as table-cell
   15.42 +// -------------------------
   15.43 +.input-group-addon,
   15.44 +.input-group-btn,
   15.45 +.input-group .form-control {
   15.46 +  display: table-cell;
   15.47 +
   15.48 +  &:not(:first-child):not(:last-child) {
   15.49 +    border-radius: 0;
   15.50 +  }
   15.51 +}
   15.52 +// Addon and addon wrapper for buttons
   15.53 +.input-group-addon,
   15.54 +.input-group-btn {
   15.55 +  width: 1%;
   15.56 +  white-space: nowrap;
   15.57 +  vertical-align: middle; // Match the inputs
   15.58 +}
   15.59 +
   15.60 +// Text input groups
   15.61 +// -------------------------
   15.62 +.input-group-addon {
   15.63 +  padding: @padding-base-vertical @padding-base-horizontal;
   15.64 +  font-size: @font-size-base;
   15.65 +  font-weight: normal;
   15.66 +  line-height: 1;
   15.67 +  color: @input-color;
   15.68 +  text-align: center;
   15.69 +  background-color: @input-group-addon-bg;
   15.70 +  border: 1px solid @input-group-addon-border-color;
   15.71 +  border-radius: @border-radius-base;
   15.72 +
   15.73 +  // Sizing
   15.74 +  &.input-sm {
   15.75 +    padding: @padding-small-vertical @padding-small-horizontal;
   15.76 +    font-size: @font-size-small;
   15.77 +    border-radius: @border-radius-small;
   15.78 +  }
   15.79 +  &.input-lg {
   15.80 +    padding: @padding-large-vertical @padding-large-horizontal;
   15.81 +    font-size: @font-size-large;
   15.82 +    border-radius: @border-radius-large;
   15.83 +  }
   15.84 +
   15.85 +  // Nuke default margins from checkboxes and radios to vertically center within.
   15.86 +  input[type="radio"],
   15.87 +  input[type="checkbox"] {
   15.88 +    margin-top: 0;
   15.89 +  }
   15.90 +}
   15.91 +
   15.92 +// Reset rounded corners
   15.93 +.input-group .form-control:first-child,
   15.94 +.input-group-addon:first-child,
   15.95 +.input-group-btn:first-child > .btn,
   15.96 +.input-group-btn:first-child > .dropdown-toggle,
   15.97 +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) {
   15.98 +  .border-right-radius(0);
   15.99 +}
  15.100 +.input-group-addon:first-child {
  15.101 +  border-right: 0;
  15.102 +}
  15.103 +.input-group .form-control:last-child,
  15.104 +.input-group-addon:last-child,
  15.105 +.input-group-btn:last-child > .btn,
  15.106 +.input-group-btn:last-child > .dropdown-toggle,
  15.107 +.input-group-btn:first-child > .btn:not(:first-child) {
  15.108 +  .border-left-radius(0);
  15.109 +}
  15.110 +.input-group-addon:last-child {
  15.111 +  border-left: 0;
  15.112 +}
  15.113 +
  15.114 +// Button input groups
  15.115 +// -------------------------
  15.116 +.input-group-btn {
  15.117 +  position: relative;
  15.118 +  white-space: nowrap;
  15.119 +
  15.120 +  // Negative margin to only have a 1px border between the two
  15.121 +  &:first-child > .btn {
  15.122 +    margin-right: -1px;
  15.123 +  }
  15.124 +  &:last-child > .btn {
  15.125 +    margin-left: -1px;
  15.126 +  }
  15.127 +}
  15.128 +.input-group-btn > .btn {
  15.129 +  position: relative;
  15.130 +  // Jankily prevent input button groups from wrapping
  15.131 +  + .btn {
  15.132 +    margin-left: -4px;
  15.133 +  }
  15.134 +  // Bring the "active" button to the front
  15.135 +  &:hover,
  15.136 +  &:active {
  15.137 +    z-index: 2;
  15.138 +  }
  15.139 +}
    16.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.2 +++ b/static/less/jumbotron.less	Fri Dec 20 22:30:44 2013 +0100
    16.3 @@ -0,0 +1,46 @@
    16.4 +//
    16.5 +// Jumbotron
    16.6 +// --------------------------------------------------
    16.7 +
    16.8 +
    16.9 +.jumbotron {
   16.10 +  padding: @jumbotron-padding;
   16.11 +  margin-bottom: @jumbotron-padding;
   16.12 +  font-size: @jumbotron-font-size;
   16.13 +  font-weight: 200;
   16.14 +  line-height: (@line-height-base * 1.5);
   16.15 +  color: @jumbotron-color;
   16.16 +  background-color: @jumbotron-bg;
   16.17 +
   16.18 +  h1,
   16.19 +  .h1 {
   16.20 +    line-height: 1;
   16.21 +    color: @jumbotron-heading-color;
   16.22 +  }
   16.23 +  p {
   16.24 +    line-height: 1.4;
   16.25 +  }
   16.26 +
   16.27 +  .container & {
   16.28 +    border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container
   16.29 +  }
   16.30 +
   16.31 +  .container {
   16.32 +    max-width: 100%;
   16.33 +  }
   16.34 +
   16.35 +  @media screen and (min-width: @screen-sm-min) {
   16.36 +    padding-top:    (@jumbotron-padding * 1.6);
   16.37 +    padding-bottom: (@jumbotron-padding * 1.6);
   16.38 +
   16.39 +    .container & {
   16.40 +      padding-left:  (@jumbotron-padding * 2);
   16.41 +      padding-right: (@jumbotron-padding * 2);
   16.42 +    }
   16.43 +
   16.44 +    h1,
   16.45 +    .h1 {
   16.46 +      font-size: (@font-size-base * 4.5);
   16.47 +    }
   16.48 +  }
   16.49 +}
    17.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    17.2 +++ b/static/less/labels.less	Fri Dec 20 22:30:44 2013 +0100
    17.3 @@ -0,0 +1,64 @@
    17.4 +//
    17.5 +// Labels
    17.6 +// --------------------------------------------------
    17.7 +
    17.8 +.label {
    17.9 +  display: inline;
   17.10 +  padding: .2em .6em .3em;
   17.11 +  font-size: 75%;
   17.12 +  font-weight: bold;
   17.13 +  line-height: 1;
   17.14 +  color: @label-color;
   17.15 +  text-align: center;
   17.16 +  white-space: nowrap;
   17.17 +  vertical-align: baseline;
   17.18 +  border-radius: .25em;
   17.19 +
   17.20 +  // Add hover effects, but only for links
   17.21 +  &[href] {
   17.22 +    &:hover,
   17.23 +    &:focus {
   17.24 +      color: @label-link-hover-color;
   17.25 +      text-decoration: none;
   17.26 +      cursor: pointer;
   17.27 +    }
   17.28 +  }
   17.29 +
   17.30 +  // Empty labels collapse automatically (not available in IE8)
   17.31 +  &:empty {
   17.32 +    display: none;
   17.33 +  }
   17.34 +
   17.35 +  // Quick fix for labels in buttons
   17.36 +  .btn & {
   17.37 +    position: relative;
   17.38 +    top: -1px;
   17.39 +  }
   17.40 +}
   17.41 +
   17.42 +// Colors
   17.43 +// Contextual variations (linked labels get darker on :hover)
   17.44 +
   17.45 +.label-default {
   17.46 +  .label-variant(@label-default-bg);
   17.47 +}
   17.48 +
   17.49 +.label-primary {
   17.50 +  .label-variant(@label-primary-bg);
   17.51 +}
   17.52 +
   17.53 +.label-success {
   17.54 +  .label-variant(@label-success-bg);
   17.55 +}
   17.56 +
   17.57 +.label-info {
   17.58 +  .label-variant(@label-info-bg);
   17.59 +}
   17.60 +
   17.61 +.label-warning {
   17.62 +  .label-variant(@label-warning-bg);
   17.63 +}
   17.64 +
   17.65 +.label-danger {
   17.66 +  .label-variant(@label-danger-bg);
   17.67 +}
    18.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    18.2 +++ b/static/less/list-group.less	Fri Dec 20 22:30:44 2013 +0100
    18.3 @@ -0,0 +1,88 @@
    18.4 +//
    18.5 +// List groups
    18.6 +// --------------------------------------------------
    18.7 +
    18.8 +// Base class
    18.9 +//
   18.10 +// Easily usable on <ul>, <ol>, or <div>.
   18.11 +.list-group {
   18.12 +  // No need to set list-style: none; since .list-group-item is block level
   18.13 +  margin-bottom: 20px;
   18.14 +  padding-left: 0; // reset padding because ul and ol
   18.15 +}
   18.16 +
   18.17 +// Individual list items
   18.18 +// -------------------------
   18.19 +
   18.20 +.list-group-item {
   18.21 +  position: relative;
   18.22 +  display: block;
   18.23 +  padding: 10px 15px;
   18.24 +  // Place the border on the list items and negative margin up for better styling
   18.25 +  margin-bottom: -1px;
   18.26 +  background-color: @list-group-bg;
   18.27 +  border: 1px solid @list-group-border;
   18.28 +
   18.29 +  // Round the first and last items
   18.30 +  &:first-child {
   18.31 +    .border-top-radius(@list-group-border-radius);
   18.32 +  }
   18.33 +  &:last-child {
   18.34 +    margin-bottom: 0;
   18.35 +    .border-bottom-radius(@list-group-border-radius);
   18.36 +  }
   18.37 +
   18.38 +  // Align badges within list items
   18.39 +  > .badge {
   18.40 +    float: right;
   18.41 +  }
   18.42 +  > .badge + .badge {
   18.43 +    margin-right: 5px;
   18.44 +  }
   18.45 +}
   18.46 +
   18.47 +// Linked list items
   18.48 +a.list-group-item {
   18.49 +  color: @list-group-link-color;
   18.50 +
   18.51 +  .list-group-item-heading {
   18.52 +    color: @list-group-link-heading-color;
   18.53 +  }
   18.54 +
   18.55 +  // Hover state
   18.56 +  &:hover,
   18.57 +  &:focus {
   18.58 +    text-decoration: none;
   18.59 +    background-color: @list-group-hover-bg;
   18.60 +  }
   18.61 +
   18.62 +  // Active class on item itself, not parent
   18.63 +  &.active,
   18.64 +  &.active:hover,
   18.65 +  &.active:focus {
   18.66 +    z-index: 2; // Place active items above their siblings for proper border styling
   18.67 +    color: @list-group-active-color;
   18.68 +    background-color: @list-group-active-bg;
   18.69 +    border-color: @list-group-active-border;
   18.70 +
   18.71 +    // Force color to inherit for custom content
   18.72 +    .list-group-item-heading {
   18.73 +      color: inherit;
   18.74 +    }
   18.75 +    .list-group-item-text {
   18.76 +      color: lighten(@list-group-active-bg, 40%);
   18.77 +    }
   18.78 +  }
   18.79 +}
   18.80 +
   18.81 +// Custom content options
   18.82 +// -------------------------
   18.83 +
   18.84 +.list-group-item-heading {
   18.85 +  margin-top: 0;
   18.86 +  margin-bottom: 5px;
   18.87 +}
   18.88 +.list-group-item-text {
   18.89 +  margin-bottom: 0;
   18.90 +  line-height: 1.3;
   18.91 +}
    19.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    19.2 +++ b/static/less/media.less	Fri Dec 20 22:30:44 2013 +0100
    19.3 @@ -0,0 +1,56 @@
    19.4 +// Media objects
    19.5 +// Source: http://stubbornella.org/content/?p=497
    19.6 +// --------------------------------------------------
    19.7 +
    19.8 +
    19.9 +// Common styles
   19.10 +// -------------------------
   19.11 +
   19.12 +// Clear the floats
   19.13 +.media,
   19.14 +.media-body {
   19.15 +  overflow: hidden;
   19.16 +  zoom: 1;
   19.17 +}
   19.18 +
   19.19 +// Proper spacing between instances of .media
   19.20 +.media,
   19.21 +.media .media {
   19.22 +  margin-top: 15px;
   19.23 +}
   19.24 +.media:first-child {
   19.25 +  margin-top: 0;
   19.26 +}
   19.27 +
   19.28 +// For images and videos, set to block
   19.29 +.media-object {
   19.30 +  display: block;
   19.31 +}
   19.32 +
   19.33 +// Reset margins on headings for tighter default spacing
   19.34 +.media-heading {
   19.35 +  margin: 0 0 5px;
   19.36 +}
   19.37 +
   19.38 +
   19.39 +// Media image alignment
   19.40 +// -------------------------
   19.41 +
   19.42 +.media {
   19.43 +  > .pull-left {
   19.44 +    margin-right: 10px;
   19.45 +  }
   19.46 +  > .pull-right {
   19.47 +    margin-left: 10px;
   19.48 +  }
   19.49 +}
   19.50 +
   19.51 +
   19.52 +// Media list variation
   19.53 +// -------------------------
   19.54 +
   19.55 +// Undo default ul/ol styles
   19.56 +.media-list {
   19.57 +  padding-left: 0;
   19.58 +  list-style: none;
   19.59 +}
    20.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.2 +++ b/static/less/mixins.less	Fri Dec 20 22:30:44 2013 +0100
    20.3 @@ -0,0 +1,845 @@
    20.4 +//
    20.5 +// Mixins
    20.6 +// --------------------------------------------------
    20.7 +
    20.8 +
    20.9 +// Utilities
   20.10 +// -------------------------
   20.11 +
   20.12 +// Clearfix
   20.13 +// Source: http://nicolasgallagher.com/micro-clearfix-hack/
   20.14 +//
   20.15 +// For modern browsers
   20.16 +// 1. The space content is one way to avoid an Opera bug when the
   20.17 +//    contenteditable attribute is included anywhere else in the document.
   20.18 +//    Otherwise it causes space to appear at the top and bottom of elements
   20.19 +//    that are clearfixed.
   20.20 +// 2. The use of `table` rather than `block` is only necessary if using
   20.21 +//    `:before` to contain the top-margins of child elements.
   20.22 +.clearfix() {
   20.23 +  &:before,
   20.24 +  &:after {
   20.25 +    content: " "; // 1
   20.26 +    display: table; // 2
   20.27 +  }
   20.28 +  &:after {
   20.29 +    clear: both;
   20.30 +  }
   20.31 +}
   20.32 +
   20.33 +// WebKit-style focus
   20.34 +.tab-focus() {
   20.35 +  // Default
   20.36 +  outline: thin dotted;
   20.37 +  // WebKit
   20.38 +  outline: 5px auto -webkit-focus-ring-color;
   20.39 +  outline-offset: -2px;
   20.40 +}
   20.41 +
   20.42 +// Center-align a block level element
   20.43 +.center-block() {
   20.44 +  display: block;
   20.45 +  margin-left: auto;
   20.46 +  margin-right: auto;
   20.47 +}
   20.48 +
   20.49 +// Sizing shortcuts
   20.50 +.size(@width; @height) {
   20.51 +  width: @width;
   20.52 +  height: @height;
   20.53 +}
   20.54 +.square(@size) {
   20.55 +  .size(@size; @size);
   20.56 +}
   20.57 +
   20.58 +// Placeholder text
   20.59 +.placeholder(@color: @input-color-placeholder) {
   20.60 +  &:-moz-placeholder            { color: @color; } // Firefox 4-18
   20.61 +  &::-moz-placeholder           { color: @color;   // Firefox 19+
   20.62 +                                  opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526
   20.63 +  &:-ms-input-placeholder       { color: @color; } // Internet Explorer 10+
   20.64 +  &::-webkit-input-placeholder  { color: @color; } // Safari and Chrome
   20.65 +}
   20.66 +
   20.67 +// Text overflow
   20.68 +// Requires inline-block or block for proper styling
   20.69 +.text-overflow() {
   20.70 +  overflow: hidden;
   20.71 +  text-overflow: ellipsis;
   20.72 +  white-space: nowrap;
   20.73 +}
   20.74 +
   20.75 +// CSS image replacement
   20.76 +//
   20.77 +// Heads up! v3 launched with with only `.hide-text()`, but per our pattern for
   20.78 +// mixins being reused as classes with the same name, this doesn't hold up. As
   20.79 +// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. Note
   20.80 +// that we cannot chain the mixins together in Less, so they are repeated.
   20.81 +//
   20.82 +// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
   20.83 +
   20.84 +// Deprecated as of v3.0.1 (will be removed in v4)
   20.85 +.hide-text() {
   20.86 +  font: ~"0/0" a;
   20.87 +  color: transparent;
   20.88 +  text-shadow: none;
   20.89 +  background-color: transparent;
   20.90 +  border: 0;
   20.91 +}
   20.92 +// New mixin to use as of v3.0.1
   20.93 +.text-hide() {
   20.94 +  .hide-text();
   20.95 +}
   20.96 +
   20.97 +
   20.98 +
   20.99 +// CSS3 PROPERTIES
  20.100 +// --------------------------------------------------
  20.101 +
  20.102 +// Single side border-radius
  20.103 +.border-top-radius(@radius) {
  20.104 +  border-top-right-radius: @radius;
  20.105 +   border-top-left-radius: @radius;
  20.106 +}
  20.107 +.border-right-radius(@radius) {
  20.108 +  border-bottom-right-radius: @radius;
  20.109 +     border-top-right-radius: @radius;
  20.110 +}
  20.111 +.border-bottom-radius(@radius) {
  20.112 +  border-bottom-right-radius: @radius;
  20.113 +   border-bottom-left-radius: @radius;
  20.114 +}
  20.115 +.border-left-radius(@radius) {
  20.116 +  border-bottom-left-radius: @radius;
  20.117 +     border-top-left-radius: @radius;
  20.118 +}
  20.119 +
  20.120 +// Drop shadows
  20.121 +.box-shadow(@shadow) {
  20.122 +  -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1
  20.123 +          box-shadow: @shadow;
  20.124 +}
  20.125 +
  20.126 +// Transitions
  20.127 +.transition(@transition) {
  20.128 +  -webkit-transition: @transition;
  20.129 +          transition: @transition;
  20.130 +}
  20.131 +.transition-property(@transition-property) {
  20.132 +  -webkit-transition-property: @transition-property;
  20.133 +          transition-property: @transition-property;
  20.134 +}
  20.135 +.transition-delay(@transition-delay) {
  20.136 +  -webkit-transition-delay: @transition-delay;
  20.137 +          transition-delay: @transition-delay;
  20.138 +}
  20.139 +.transition-duration(@transition-duration) {
  20.140 +  -webkit-transition-duration: @transition-duration;
  20.141 +          transition-duration: @transition-duration;
  20.142 +}
  20.143 +.transition-transform(@transition) {
  20.144 +  -webkit-transition: -webkit-transform @transition;
  20.145 +     -moz-transition: -moz-transform @transition;
  20.146 +       -o-transition: -o-transform @transition;
  20.147 +          transition: transform @transition;
  20.148 +}
  20.149 +
  20.150 +// Transformations
  20.151 +.rotate(@degrees) {
  20.152 +  -webkit-transform: rotate(@degrees);
  20.153 +      -ms-transform: rotate(@degrees); // IE9+
  20.154 +          transform: rotate(@degrees);
  20.155 +}
  20.156 +.scale(@ratio) {
  20.157 +  -webkit-transform: scale(@ratio);
  20.158 +      -ms-transform: scale(@ratio); // IE9+
  20.159 +          transform: scale(@ratio);
  20.160 +}
  20.161 +.translate(@x; @y) {
  20.162 +  -webkit-transform: translate(@x, @y);
  20.163 +      -ms-transform: translate(@x, @y); // IE9+
  20.164 +          transform: translate(@x, @y);
  20.165 +}
  20.166 +.skew(@x; @y) {
  20.167 +  -webkit-transform: skew(@x, @y);
  20.168 +      -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+
  20.169 +          transform: skew(@x, @y);
  20.170 +}
  20.171 +.translate3d(@x; @y; @z) {
  20.172 +  -webkit-transform: translate3d(@x, @y, @z);
  20.173 +          transform: translate3d(@x, @y, @z);
  20.174 +}
  20.175 +
  20.176 +.rotateX(@degrees) {
  20.177 +  -webkit-transform: rotateX(@degrees);
  20.178 +      -ms-transform: rotateX(@degrees); // IE9+
  20.179 +          transform: rotateX(@degrees);
  20.180 +}
  20.181 +.rotateY(@degrees) {
  20.182 +  -webkit-transform: rotateY(@degrees);
  20.183 +      -ms-transform: rotateY(@degrees); // IE9+
  20.184 +          transform: rotateY(@degrees);
  20.185 +}
  20.186 +.perspective(@perspective) {
  20.187 +  -webkit-perspective: @perspective;
  20.188 +     -moz-perspective: @perspective;
  20.189 +          perspective: @perspective;
  20.190 +}
  20.191 +.perspective-origin(@perspective) {
  20.192 +  -webkit-perspective-origin: @perspective;
  20.193 +     -moz-perspective-origin: @perspective;
  20.194 +          perspective-origin: @perspective;
  20.195 +}
  20.196 +.transform-origin(@origin) {
  20.197 +  -webkit-transform-origin: @origin;
  20.198 +     -moz-transform-origin: @origin;
  20.199 +          transform-origin: @origin;
  20.200 +}
  20.201 +
  20.202 +// Animations
  20.203 +.animation(@animation) {
  20.204 +  -webkit-animation: @animation;
  20.205 +          animation: @animation;
  20.206 +}
  20.207 +
  20.208 +// Backface visibility
  20.209 +// Prevent browsers from flickering when using CSS 3D transforms.
  20.210 +// Default value is `visible`, but can be changed to `hidden`
  20.211 +.backface-visibility(@visibility){
  20.212 +  -webkit-backface-visibility: @visibility;
  20.213 +     -moz-backface-visibility: @visibility;
  20.214 +          backface-visibility: @visibility;
  20.215 +}
  20.216 +
  20.217 +// Box sizing
  20.218 +.box-sizing(@boxmodel) {
  20.219 +  -webkit-box-sizing: @boxmodel;
  20.220 +     -moz-box-sizing: @boxmodel;
  20.221 +          box-sizing: @boxmodel;
  20.222 +}
  20.223 +
  20.224 +// User select
  20.225 +// For selecting text on the page
  20.226 +.user-select(@select) {
  20.227 +  -webkit-user-select: @select;
  20.228 +     -moz-user-select: @select;
  20.229 +      -ms-user-select: @select; // IE10+
  20.230 +       -o-user-select: @select;
  20.231 +          user-select: @select;
  20.232 +}
  20.233 +
  20.234 +// Resize anything
  20.235 +.resizable(@direction) {
  20.236 +  resize: @direction; // Options: horizontal, vertical, both
  20.237 +  overflow: auto; // Safari fix
  20.238 +}
  20.239 +
  20.240 +// CSS3 Content Columns
  20.241 +.content-columns(@column-count; @column-gap: @grid-gutter-width) {
  20.242 +  -webkit-column-count: @column-count;
  20.243 +     -moz-column-count: @column-count;
  20.244 +          column-count: @column-count;
  20.245 +  -webkit-column-gap: @column-gap;
  20.246 +     -moz-column-gap: @column-gap;
  20.247 +          column-gap: @column-gap;
  20.248 +}
  20.249 +
  20.250 +// Optional hyphenation
  20.251 +.hyphens(@mode: auto) {
  20.252 +  word-wrap: break-word;
  20.253 +  -webkit-hyphens: @mode;
  20.254 +     -moz-hyphens: @mode;
  20.255 +      -ms-hyphens: @mode; // IE10+
  20.256 +       -o-hyphens: @mode;
  20.257 +          hyphens: @mode;
  20.258 +}
  20.259 +
  20.260 +// Opacity
  20.261 +.opacity(@opacity) {
  20.262 +  opacity: @opacity;
  20.263 +  // IE8 filter
  20.264 +  @opacity-ie: (@opacity * 100);
  20.265 +  filter: ~"alpha(opacity=@{opacity-ie})";
  20.266 +}
  20.267 +
  20.268 +
  20.269 +
  20.270 +// GRADIENTS
  20.271 +// --------------------------------------------------
  20.272 +
  20.273 +#gradient {
  20.274 +
  20.275 +  // Horizontal gradient, from left to right
  20.276 +  //
  20.277 +  // Creates two color stops, start and end, by specifying a color and position for each color stop.
  20.278 +  // Color stops are not available in IE9 and below.
  20.279 +  .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {
  20.280 +    background-image: -webkit-linear-gradient(left, color-stop(@start-color @start-percent), color-stop(@end-color @end-percent)); // Safari 5.1-6, Chrome 10+
  20.281 +    background-image:  linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
  20.282 +    background-repeat: repeat-x;
  20.283 +    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down
  20.284 +  }
  20.285 +
  20.286 +  // Vertical gradient, from top to bottom
  20.287 +  //
  20.288 +  // Creates two color stops, start and end, by specifying a color and position for each color stop.
  20.289 +  // Color stops are not available in IE9 and below.
  20.290 +  .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {
  20.291 +    background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent);  // Safari 5.1-6, Chrome 10+
  20.292 +    background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
  20.293 +    background-repeat: repeat-x;
  20.294 +    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down
  20.295 +  }
  20.296 +
  20.297 +  .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {
  20.298 +    background-repeat: repeat-x;
  20.299 +    background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+
  20.300 +    background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
  20.301 +  }
  20.302 +  .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {
  20.303 +    background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);
  20.304 +    background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);
  20.305 +    background-repeat: no-repeat;
  20.306 +    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback
  20.307 +  }
  20.308 +  .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {
  20.309 +    background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);
  20.310 +    background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);
  20.311 +    background-repeat: no-repeat;
  20.312 +    filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback
  20.313 +  }
  20.314 +  .radial(@inner-color: #555; @outer-color: #333) {
  20.315 +    background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);
  20.316 +    background-image: radial-gradient(circle, @inner-color, @outer-color);
  20.317 +    background-repeat: no-repeat;
  20.318 +  }
  20.319 +  .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {
  20.320 +    background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);
  20.321 +    background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);
  20.322 +  }
  20.323 +}
  20.324 +
  20.325 +// Reset filters for IE
  20.326 +//
  20.327 +// When you need to remove a gradient background, do not forget to use this to reset
  20.328 +// the IE filter for IE9 and below.
  20.329 +.reset-filter() {
  20.330 +  filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
  20.331 +}
  20.332 +
  20.333 +
  20.334 +
  20.335 +// Retina images
  20.336 +//
  20.337 +// Short retina mixin for setting background-image and -size
  20.338 +
  20.339 +.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {
  20.340 +  background-image: url("@{file-1x}");
  20.341 +
  20.342 +  @media
  20.343 +  only screen and (-webkit-min-device-pixel-ratio: 2),
  20.344 +  only screen and (   min--moz-device-pixel-ratio: 2),
  20.345 +  only screen and (     -o-min-device-pixel-ratio: 2/1),
  20.346 +  only screen and (        min-device-pixel-ratio: 2),
  20.347 +  only screen and (                min-resolution: 192dpi),
  20.348 +  only screen and (                min-resolution: 2dppx) {
  20.349 +    background-image: url("@{file-2x}");
  20.350 +    background-size: @width-1x @height-1x;
  20.351 +  }
  20.352 +}
  20.353 +
  20.354 +
  20.355 +// Responsive image
  20.356 +//
  20.357 +// Keep images from scaling beyond the width of their parents.
  20.358 +
  20.359 +.img-responsive(@display: block;) {
  20.360 +  display: @display;
  20.361 +  max-width: 100%; // Part 1: Set a maximum relative to the parent
  20.362 +  height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
  20.363 +}
  20.364 +
  20.365 +
  20.366 +// COMPONENT MIXINS
  20.367 +// --------------------------------------------------
  20.368 +
  20.369 +// Horizontal dividers
  20.370 +// -------------------------
  20.371 +// Dividers (basically an hr) within dropdowns and nav lists
  20.372 +.nav-divider(@color: #e5e5e5) {
  20.373 +  height: 1px;
  20.374 +  margin: ((@line-height-computed / 2) - 1) 0;
  20.375 +  overflow: hidden;
  20.376 +  background-color: @color;
  20.377 +}
  20.378 +
  20.379 +// Panels
  20.380 +// -------------------------
  20.381 +.panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) {
  20.382 +  border-color: @border;
  20.383 +
  20.384 +  & > .panel-heading {
  20.385 +    color: @heading-text-color;
  20.386 +    background-color: @heading-bg-color;
  20.387 +    border-color: @heading-border;
  20.388 +
  20.389 +    + .panel-collapse .panel-body {
  20.390 +      border-top-color: @border;
  20.391 +    }
  20.392 +  }
  20.393 +  & > .panel-footer {
  20.394 +    + .panel-collapse .panel-body {
  20.395 +      border-bottom-color: @border;
  20.396 +    }
  20.397 +  }
  20.398 +}
  20.399 +
  20.400 +// Alerts
  20.401 +// -------------------------
  20.402 +.alert-variant(@background; @border; @text-color) {
  20.403 +  background-color: @background;
  20.404 +  border-color: @border;
  20.405 +  color: @text-color;
  20.406 +
  20.407 +  hr {
  20.408 +    border-top-color: darken(@border, 5%);
  20.409 +  }
  20.410 +  .alert-link {
  20.411 +    color: darken(@text-color, 10%);
  20.412 +  }
  20.413 +}
  20.414 +
  20.415 +// Tables
  20.416 +// -------------------------
  20.417 +.table-row-variant(@state; @background) {
  20.418 +  // Exact selectors below required to override `.table-striped` and prevent
  20.419 +  // inheritance to nested tables.
  20.420 +  .table {
  20.421 +    > thead,
  20.422 +    > tbody,
  20.423 +    > tfoot {
  20.424 +      > tr > .@{state},
  20.425 +      > .@{state} > td,
  20.426 +      > .@{state} > th {
  20.427 +        background-color: @background;
  20.428 +      }
  20.429 +    }
  20.430 +  }
  20.431 +
  20.432 +  // Hover states for `.table-hover`
  20.433 +  // Note: this is not available for cells or rows within `thead` or `tfoot`.
  20.434 +  .table-hover > tbody {
  20.435 +    > tr > .@{state}:hover,
  20.436 +    > .@{state}:hover > td,
  20.437 +    > .@{state}:hover > th {
  20.438 +      background-color: darken(@background, 5%);
  20.439 +    }
  20.440 +  }
  20.441 +}
  20.442 +
  20.443 +// Button variants
  20.444 +// -------------------------
  20.445 +// Easily pump out default styles, as well as :hover, :focus, :active,
  20.446 +// and disabled options for all buttons
  20.447 +.button-variant(@color; @background; @border) {
  20.448 +  color: @color;
  20.449 +  background-color: @background;
  20.450 +  border-color: @border;
  20.451 +
  20.452 +  &:hover,
  20.453 +  &:focus,
  20.454 +  &:active,
  20.455 +  &.active,
  20.456 +  .open .dropdown-toggle& {
  20.457 +    color: @color;
  20.458 +    background-color: darken(@background, 8%);
  20.459 +        border-color: darken(@border, 12%);
  20.460 +  }
  20.461 +  &:active,
  20.462 +  &.active,
  20.463 +  .open .dropdown-toggle& {
  20.464 +    background-image: none;
  20.465 +  }
  20.466 +  &.disabled,
  20.467 +  &[disabled],
  20.468 +  fieldset[disabled] & {
  20.469 +    &,
  20.470 +    &:hover,
  20.471 +    &:focus,
  20.472 +    &:active,
  20.473 +    &.active {
  20.474 +      background-color: @background;
  20.475 +          border-color: @border;
  20.476 +    }
  20.477 +  }
  20.478 +
  20.479 +  .badge {
  20.480 +    color: @background;
  20.481 +    background-color: #fff;
  20.482 +  }
  20.483 +}
  20.484 +
  20.485 +// Button sizes
  20.486 +// -------------------------
  20.487 +.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {
  20.488 +  padding: @padding-vertical @padding-horizontal;
  20.489 +  font-size: @font-size;
  20.490 +  line-height: @line-height;
  20.491 +  border-radius: @border-radius;
  20.492 +}
  20.493 +
  20.494 +// Pagination
  20.495 +// -------------------------
  20.496 +.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @border-radius) {
  20.497 +  > li {
  20.498 +    > a,
  20.499 +    > span {
  20.500 +      padding: @padding-vertical @padding-horizontal;
  20.501 +      font-size: @font-size;
  20.502 +    }
  20.503 +    &:first-child {
  20.504 +      > a,
  20.505 +      > span {
  20.506 +        .border-left-radius(@border-radius);
  20.507 +      }
  20.508 +    }
  20.509 +    &:last-child {
  20.510 +      > a,
  20.511 +      > span {
  20.512 +        .border-right-radius(@border-radius);
  20.513 +      }
  20.514 +    }
  20.515 +  }
  20.516 +}
  20.517 +
  20.518 +// Labels
  20.519 +// -------------------------
  20.520 +.label-variant(@color) {
  20.521 +  background-color: @color;
  20.522 +  &[href] {
  20.523 +    &:hover,
  20.524 +    &:focus {
  20.525 +      background-color: darken(@color, 10%);
  20.526 +    }
  20.527 +  }
  20.528 +}
  20.529 +
  20.530 +// Navbar vertical align
  20.531 +// -------------------------
  20.532 +// Vertically center elements in the navbar.
  20.533 +// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.
  20.534 +.navbar-vertical-align(@element-height) {
  20.535 +  margin-top: ((@navbar-height - @element-height) / 2);
  20.536 +  margin-bottom: ((@navbar-height - @element-height) / 2);
  20.537 +}
  20.538 +
  20.539 +// Progress bars
  20.540 +// -------------------------
  20.541 +.progress-bar-variant(@color) {
  20.542 +  background-color: @color;
  20.543 +  .progress-striped & {
  20.544 +    #gradient > .striped();
  20.545 +  }
  20.546 +}
  20.547 +
  20.548 +// Responsive utilities
  20.549 +// -------------------------
  20.550 +// More easily include all the states for responsive-utilities.less.
  20.551 +.responsive-visibility() {
  20.552 +  display: block !important;
  20.553 +  table&  { display: table; }
  20.554 +  tr&     { display: table-row !important; }
  20.555 +  th&,
  20.556 +  td&     { display: table-cell !important; }
  20.557 +}
  20.558 +
  20.559 +.responsive-invisibility() {
  20.560 +    &,
  20.561 +  tr&,
  20.562 +  th&,
  20.563 +  td& { display: none !important; }
  20.564 +}
  20.565 +
  20.566 +
  20.567 +// Grid System
  20.568 +// -----------
  20.569 +
  20.570 +// Centered container element
  20.571 +.container-fixed() {
  20.572 +  margin-right: auto;
  20.573 +  margin-left: auto;
  20.574 +  padding-left:  (@grid-gutter-width / 2);
  20.575 +  padding-right: (@grid-gutter-width / 2);
  20.576 +  .clearfix();
  20.577 +}
  20.578 +
  20.579 +// Creates a wrapper for a series of columns
  20.580 +.make-row(@gutter: @grid-gutter-width) {
  20.581 +  margin-left:  (@gutter / -2);
  20.582 +  margin-right: (@gutter / -2);
  20.583 +  .clearfix();
  20.584 +}
  20.585 +
  20.586 +// Generate the extra small columns
  20.587 +.make-xs-column(@columns; @gutter: @grid-gutter-width) {
  20.588 +  position: relative;
  20.589 +  float: left;
  20.590 +  width: percentage((@columns / @grid-columns));
  20.591 +  // Prevent columns from collapsing when empty
  20.592 +  min-height: 1px;
  20.593 +  // Inner gutter via padding
  20.594 +  padding-left:  (@gutter / 2);
  20.595 +  padding-right: (@gutter / 2);
  20.596 +}
  20.597 +
  20.598 +// Generate the small columns
  20.599 +.make-sm-column(@columns; @gutter: @grid-gutter-width) {
  20.600 +  position: relative;
  20.601 +  // Prevent columns from collapsing when empty
  20.602 +  min-height: 1px;
  20.603 +  // Inner gutter via padding
  20.604 +  padding-left:  (@gutter / 2);
  20.605 +  padding-right: (@gutter / 2);
  20.606 +
  20.607 +  // Calculate width based on number of columns available
  20.608 +  @media (min-width: @screen-sm-min) {
  20.609 +    float: left;
  20.610 +    width: percentage((@columns / @grid-columns));
  20.611 +  }
  20.612 +}
  20.613 +
  20.614 +// Generate the small column offsets
  20.615 +.make-sm-column-offset(@columns) {
  20.616 +  @media (min-width: @screen-sm-min) {
  20.617 +    margin-left: percentage((@columns / @grid-columns));
  20.618 +  }
  20.619 +}
  20.620 +.make-sm-column-push(@columns) {
  20.621 +  @media (min-width: @screen-sm-min) {
  20.622 +    left: percentage((@columns / @grid-columns));
  20.623 +  }
  20.624 +}
  20.625 +.make-sm-column-pull(@columns) {
  20.626 +  @media (min-width: @screen-sm-min) {
  20.627 +    right: percentage((@columns / @grid-columns));
  20.628 +  }
  20.629 +}
  20.630 +
  20.631 +// Generate the medium columns
  20.632 +.make-md-column(@columns; @gutter: @grid-gutter-width) {
  20.633 +  position: relative;
  20.634 +  // Prevent columns from collapsing when empty
  20.635 +  min-height: 1px;
  20.636 +  // Inner gutter via padding
  20.637 +  padding-left:  (@gutter / 2);
  20.638 +  padding-right: (@gutter / 2);
  20.639 +
  20.640 +  // Calculate width based on number of columns available
  20.641 +  @media (min-width: @screen-md-min) {
  20.642 +    float: left;
  20.643 +    width: percentage((@columns / @grid-columns));
  20.644 +  }
  20.645 +}
  20.646 +
  20.647 +// Generate the medium column offsets
  20.648 +.make-md-column-offset(@columns) {
  20.649 +  @media (min-width: @screen-md-min) {
  20.650 +    margin-left: percentage((@columns / @grid-columns));
  20.651 +  }
  20.652 +}
  20.653 +.make-md-column-push(@columns) {
  20.654 +  @media (min-width: @screen-md) {
  20.655 +    left: percentage((@columns / @grid-columns));
  20.656 +  }
  20.657 +}
  20.658 +.make-md-column-pull(@columns) {
  20.659 +  @media (min-width: @screen-md-min) {
  20.660 +    right: percentage((@columns / @grid-columns));
  20.661 +  }
  20.662 +}
  20.663 +
  20.664 +// Generate the large columns
  20.665 +.make-lg-column(@columns; @gutter: @grid-gutter-width) {
  20.666 +  position: relative;
  20.667 +  // Prevent columns from collapsing when empty
  20.668 +  min-height: 1px;
  20.669 +  // Inner gutter via padding
  20.670 +  padding-left:  (@gutter / 2);
  20.671 +  padding-right: (@gutter / 2);
  20.672 +
  20.673 +  // Calculate width based on number of columns available
  20.674 +  @media (min-width: @screen-lg-min) {
  20.675 +    float: left;
  20.676 +    width: percentage((@columns / @grid-columns));
  20.677 +  }
  20.678 +}
  20.679 +
  20.680 +// Generate the large column offsets
  20.681 +.make-lg-column-offset(@columns) {
  20.682 +  @media (min-width: @screen-lg-min) {
  20.683 +    margin-left: percentage((@columns / @grid-columns));
  20.684 +  }
  20.685 +}
  20.686 +.make-lg-column-push(@columns) {
  20.687 +  @media (min-width: @screen-lg-min) {
  20.688 +    left: percentage((@columns / @grid-columns));
  20.689 +  }
  20.690 +}
  20.691 +.make-lg-column-pull(@columns) {
  20.692 +  @media (min-width: @screen-lg-min) {
  20.693 +    right: percentage((@columns / @grid-columns));
  20.694 +  }
  20.695 +}
  20.696 +
  20.697 +
  20.698 +// Framework grid generation
  20.699 +//
  20.700 +// Used only by Bootstrap to generate the correct number of grid classes given
  20.701 +// any value of `@grid-columns`.
  20.702 +
  20.703 +.make-grid-columns() {
  20.704 +  // Common styles for all sizes of grid columns, widths 1-12
  20.705 +  .col(@index) when (@index = 1) { // initial
  20.706 +    @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}";
  20.707 +    .col(@index + 1, @item);
  20.708 +  }
  20.709 +  .col(@index, @list) when (@index =< @grid-columns) { // general; "=<" isn't a typo
  20.710 +    @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}";
  20.711 +    .col(@index + 1, ~"@{list}, @{item}");
  20.712 +  }
  20.713 +  .col(@index, @list) when (@index > @grid-columns) { // terminal
  20.714 +    @{list} {
  20.715 +      position: relative;
  20.716 +      // Prevent columns from collapsing when empty
  20.717 +      min-height: 1px;
  20.718 +      // Inner gutter via padding
  20.719 +      padding-left:  (@grid-gutter-width / 2);
  20.720 +      padding-right: (@grid-gutter-width / 2);
  20.721 +    }
  20.722 +  }
  20.723 +  .col(1); // kickstart it
  20.724 +}
  20.725 +
  20.726 +.make-grid-columns-float(@class) {
  20.727 +  .col(@index) when (@index = 1) { // initial
  20.728 +    @item: ~".col-@{class}-@{index}";
  20.729 +    .col(@index + 1, @item);
  20.730 +  }
  20.731 +  .col(@index, @list) when (@index =< @grid-columns) { // general
  20.732 +    @item: ~".col-@{class}-@{index}";
  20.733 +    .col(@index + 1, ~"@{list}, @{item}");
  20.734 +  }
  20.735 +  .col(@index, @list) when (@index > @grid-columns) { // terminal
  20.736 +    @{list} {
  20.737 +      float: left;
  20.738 +    }
  20.739 +  }
  20.740 +  .col(1); // kickstart it
  20.741 +}
  20.742 +
  20.743 +.calc-grid(@index, @class, @type) when (@type = width) and (@index > 0) {
  20.744 +  .col-@{class}-@{index} {
  20.745 +    width: percentage((@index / @grid-columns));
  20.746 +  }
  20.747 +}
  20.748 +.calc-grid(@index, @class, @type) when (@type = push) {
  20.749 +  .col-@{class}-push-@{index} {
  20.750 +    left: percentage((@index / @grid-columns));
  20.751 +  }
  20.752 +}
  20.753 +.calc-grid(@index, @class, @type) when (@type = pull) {
  20.754 +  .col-@{class}-pull-@{index} {
  20.755 +    right: percentage((@index / @grid-columns));
  20.756 +  }
  20.757 +}
  20.758 +.calc-grid(@index, @class, @type) when (@type = offset) {
  20.759 +  .col-@{class}-offset-@{index} {
  20.760 +    margin-left: percentage((@index / @grid-columns));
  20.761 +  }
  20.762 +}
  20.763 +
  20.764 +// Basic looping in LESS
  20.765 +.make-grid(@index, @class, @type) when (@index >= 0) {
  20.766 +  .calc-grid(@index, @class, @type);
  20.767 +  // next iteration
  20.768 +  .make-grid(@index - 1, @class, @type);
  20.769 +}
  20.770 +
  20.771 +
  20.772 +// Form validation states
  20.773 +//
  20.774 +// Used in forms.less to generate the form validation CSS for warnings, errors,
  20.775 +// and successes.
  20.776 +
  20.777 +.form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) {
  20.778 +  // Color the label and help text
  20.779 +  .help-block,
  20.780 +  .control-label,
  20.781 +  .radio,
  20.782 +  .checkbox,
  20.783 +  .radio-inline,
  20.784 +  .checkbox-inline  {
  20.785 +    color: @text-color;
  20.786 +  }
  20.787 +  // Set the border and box shadow on specific inputs to match
  20.788 +  .form-control {
  20.789 +    border-color: @border-color;
  20.790 +    .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
  20.791 +    &:focus {
  20.792 +      border-color: darken(@border-color, 10%);
  20.793 +      @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%);
  20.794 +      .box-shadow(@shadow);
  20.795 +    }
  20.796 +  }
  20.797 +  // Set validation states also for addons
  20.798 +  .input-group-addon {
  20.799 +    color: @text-color;
  20.800 +    border-color: @border-color;
  20.801 +    background-color: @background-color;
  20.802 +  }
  20.803 +}
  20.804 +
  20.805 +// Form control focus state
  20.806 +//
  20.807 +// Generate a customized focus state and for any input with the specified color,
  20.808 +// which defaults to the `@input-focus-border` variable.
  20.809 +//
  20.810 +// We highly encourage you to not customize the default value, but instead use
  20.811 +// this to tweak colors on an as-needed basis. This aesthetic change is based on
  20.812 +// WebKit's default styles, but applicable to a wider range of browsers. Its
  20.813 +// usability and accessibility should be taken into account with any change.
  20.814 +//
  20.815 +// Example usage: change the default blue border and shadow to white for better
  20.816 +// contrast against a dark gray background.
  20.817 +
  20.818 +.form-control-focus(@color: @input-border-focus) {
  20.819 +  @color-rgba: rgba(red(@color), green(@color), blue(@color), .6);
  20.820 +  &:focus {
  20.821 +    border-color: @color;
  20.822 +    outline: 0;
  20.823 +    .box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}");
  20.824 +  }
  20.825 +}
  20.826 +
  20.827 +// Form control sizing
  20.828 +//
  20.829 +// Relative text size, padding, and border-radii changes for form controls. For
  20.830 +// horizontal sizing, wrap controls in the predefined grid classes. `<select>`
  20.831 +// element gets special love because it's special, and that's a fact!
  20.832 +
  20.833 +.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {
  20.834 +  height: @input-height;
  20.835 +  padding: @padding-vertical @padding-horizontal;
  20.836 +  font-size: @font-size;
  20.837 +  line-height: @line-height;
  20.838 +  border-radius: @border-radius;
  20.839 +
  20.840 +  select& {
  20.841 +    height: @input-height;
  20.842 +    line-height: @input-height;
  20.843 +  }
  20.844 +
  20.845 +  textarea& {
  20.846 +    height: auto;
  20.847 +  }
  20.848 +}
    21.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.2 +++ b/static/less/modals.less	Fri Dec 20 22:30:44 2013 +0100
    21.3 @@ -0,0 +1,129 @@
    21.4 +//
    21.5 +// Modals
    21.6 +// --------------------------------------------------
    21.7 +
    21.8 +// .modal-open      - body class for killing the scroll
    21.9 +// .modal           - container to scroll within
   21.10 +// .modal-dialog    - positioning shell for the actual modal
   21.11 +// .modal-content   - actual modal w/ bg and corners and shit
   21.12 +
   21.13 +// Kill the scroll on the body
   21.14 +.modal-open {
   21.15 +  overflow: hidden;
   21.16 +}
   21.17 +
   21.18 +// Container that the modal scrolls within
   21.19 +.modal {
   21.20 +  display: none;
   21.21 +  overflow: auto;
   21.22 +  overflow-y: scroll;
   21.23 +  position: fixed;
   21.24 +  top: 0;
   21.25 +  right: 0;
   21.26 +  bottom: 0;
   21.27 +  left: 0;
   21.28 +  z-index: @zindex-modal-background;
   21.29 +
   21.30 +  // When fading in the modal, animate it to slide down
   21.31 +  &.fade .modal-dialog {
   21.32 +    .translate(0, -25%);
   21.33 +    .transition-transform(~"0.3s ease-out");
   21.34 +  }
   21.35 +  &.in .modal-dialog { .translate(0, 0)}
   21.36 +}
   21.37 +
   21.38 +// Shell div to position the modal with bottom padding
   21.39 +.modal-dialog {
   21.40 +  position: relative;
   21.41 +  width: auto;
   21.42 +  margin: 10px;
   21.43 +  z-index: (@zindex-modal-background + 10);
   21.44 +}
   21.45 +
   21.46 +// Actual modal
   21.47 +.modal-content {
   21.48 +  position: relative;
   21.49 +  background-color: @modal-content-bg;
   21.50 +  border: 1px solid @modal-content-fallback-border-color; //old browsers fallback (ie8 etc)
   21.51 +  border: 1px solid @modal-content-border-color;
   21.52 +  border-radius: @border-radius-large;
   21.53 +  .box-shadow(0 3px 9px rgba(0,0,0,.5));
   21.54 +  background-clip: padding-box;
   21.55 +  // Remove focus outline from opened modal
   21.56 +  outline: none;
   21.57 +}
   21.58 +
   21.59 +// Modal background
   21.60 +.modal-backdrop {
   21.61 +  position: fixed;
   21.62 +  top: 0;
   21.63 +  right: 0;
   21.64 +  bottom: 0;
   21.65 +  left: 0;
   21.66 +  z-index: (@zindex-modal-background - 10);
   21.67 +  background-color: @modal-backdrop-bg;
   21.68 +  // Fade for backdrop
   21.69 +  &.fade { .opacity(0); }
   21.70 +  &.in { .opacity(.5); }
   21.71 +}
   21.72 +
   21.73 +// Modal header
   21.74 +// Top section of the modal w/ title and dismiss
   21.75 +.modal-header {
   21.76 +  padding: @modal-title-padding;
   21.77 +  border-bottom: 1px solid @modal-header-border-color;
   21.78 +  min-height: (@modal-title-padding + @modal-title-line-height);
   21.79 +}
   21.80 +// Close icon
   21.81 +.modal-header .close {
   21.82 +  margin-top: -2px;
   21.83 +}
   21.84 +
   21.85 +// Title text within header
   21.86 +.modal-title {
   21.87 +  margin: 0;
   21.88 +  line-height: @modal-title-line-height;
   21.89 +}
   21.90 +
   21.91 +// Modal body
   21.92 +// Where all modal content resides (sibling of .modal-header and .modal-footer)
   21.93 +.modal-body {
   21.94 +  position: relative;
   21.95 +  padding: @modal-inner-padding;
   21.96 +}
   21.97 +
   21.98 +// Footer (for actions)
   21.99 +.modal-footer {
  21.100 +  margin-top: 15px;
  21.101 +  padding: (@modal-inner-padding - 1) @modal-inner-padding @modal-inner-padding;
  21.102 +  text-align: right; // right align buttons
  21.103 +  border-top: 1px solid @modal-footer-border-color;
  21.104 +  .clearfix(); // clear it in case folks use .pull-* classes on buttons
  21.105 +
  21.106 +  // Properly space out buttons
  21.107 +  .btn + .btn {
  21.108 +    margin-left: 5px;
  21.109 +    margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs
  21.110 +  }
  21.111 +  // but override that for button groups
  21.112 +  .btn-group .btn + .btn {
  21.113 +    margin-left: -1px;
  21.114 +  }
  21.115 +  // and override it for block buttons as well
  21.116 +  .btn-block + .btn-block {
  21.117 +    margin-left: 0;
  21.118 +  }
  21.119 +}
  21.120 +
  21.121 +// Scale up the modal
  21.122 +@media screen and (min-width: @screen-sm-min) {
  21.123 +
  21.124 +  .modal-dialog {
  21.125 +    width: 600px;
  21.126 +    margin: 30px auto;
  21.127 +  }
  21.128 +  .modal-content {
  21.129 +    .box-shadow(0 5px 15px rgba(0,0,0,.5));
  21.130 +  }
  21.131 +
  21.132 +}
    22.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.2 +++ b/static/less/navbar.less	Fri Dec 20 22:30:44 2013 +0100
    22.3 @@ -0,0 +1,612 @@
    22.4 +//
    22.5 +// Navbars
    22.6 +// --------------------------------------------------
    22.7 +
    22.8 +
    22.9 +// Wrapper and base class
   22.10 +//
   22.11 +// Provide a static navbar from which we expand to create full-width, fixed, and
   22.12 +// other navbar variations.
   22.13 +
   22.14 +.navbar {
   22.15 +  position: relative;
   22.16 +  min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)
   22.17 +  margin-bottom: @navbar-margin-bottom;
   22.18 +  border: 1px solid transparent;
   22.19 +
   22.20 +  // Prevent floats from breaking the navbar
   22.21 +  .clearfix();
   22.22 +
   22.23 +  @media (min-width: @grid-float-breakpoint) {
   22.24 +    border-radius: @navbar-border-radius;
   22.25 +  }
   22.26 +}
   22.27 +
   22.28 +
   22.29 +// Navbar heading
   22.30 +//
   22.31 +// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy
   22.32 +// styling of responsive aspects.
   22.33 +
   22.34 +.navbar-header {
   22.35 +  .clearfix();
   22.36 +
   22.37 +  @media (min-width: @grid-float-breakpoint) {
   22.38 +    float: left;
   22.39 +  }
   22.40 +}
   22.41 +
   22.42 +
   22.43 +// Navbar collapse (body)
   22.44 +//
   22.45 +// Group your navbar content into this for easy collapsing and expanding across
   22.46 +// various device sizes. By default, this content is collapsed when <768px, but
   22.47 +// will expand past that for a horizontal display.
   22.48 +//
   22.49 +// To start (on mobile devices) the navbar links, forms, and buttons are stacked
   22.50 +// vertically and include a `max-height` to overflow in case you have too much
   22.51 +// content for the user's viewport.
   22.52 +
   22.53 +.navbar-collapse {
   22.54 +  max-height: 340px;
   22.55 +  overflow-x: visible;
   22.56 +  padding-right: @navbar-padding-horizontal;
   22.57 +  padding-left:  @navbar-padding-horizontal;
   22.58 +  border-top: 1px solid transparent;
   22.59 +  box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
   22.60 +  .clearfix();
   22.61 +  -webkit-overflow-scrolling: touch;
   22.62 +
   22.63 +  &.in {
   22.64 +    overflow-y: auto;
   22.65 +  }
   22.66 +
   22.67 +  @media (min-width: @grid-float-breakpoint) {
   22.68 +    width: auto;
   22.69 +    border-top: 0;
   22.70 +    box-shadow: none;
   22.71 +
   22.72 +    &.collapse {
   22.73 +      display: block !important;
   22.74 +      height: auto !important;
   22.75 +      padding-bottom: 0; // Override default setting
   22.76 +      overflow: visible !important;
   22.77 +    }
   22.78 +
   22.79 +    &.in {
   22.80 +      overflow-y: visible;
   22.81 +    }
   22.82 +
   22.83 +    // Undo the collapse side padding for navbars with containers to ensure
   22.84 +    // alignment of right-aligned contents.
   22.85 +    .navbar-fixed-top &,
   22.86 +    .navbar-static-top &,
   22.87 +    .navbar-fixed-bottom & {
   22.88 +      padding-left: 0;
   22.89 +      padding-right: 0;
   22.90 +    }
   22.91 +  }
   22.92 +}
   22.93 +
   22.94 +
   22.95 +// Both navbar header and collapse
   22.96 +//
   22.97 +// When a container is present, change the behavior of the header and collapse.
   22.98 +
   22.99 +.container > .navbar-header,
  22.100 +.container > .navbar-collapse {
  22.101 +  margin-right: -@navbar-padding-horizontal;
  22.102 +  margin-left:  -@navbar-padding-horizontal;
  22.103 +
  22.104 +  @media (min-width: @grid-float-breakpoint) {
  22.105 +    margin-right: 0;
  22.106 +    margin-left:  0;
  22.107 +  }
  22.108 +}
  22.109 +
  22.110 +
  22.111 +//
  22.112 +// Navbar alignment options
  22.113 +//
  22.114 +// Display the navbar across the entirety of the page or fixed it to the top or
  22.115 +// bottom of the page.
  22.116 +
  22.117 +// Static top (unfixed, but 100% wide) navbar
  22.118 +.navbar-static-top {
  22.119 +  z-index: @zindex-navbar;
  22.120 +  border-width: 0 0 1px;
  22.121 +
  22.122 +  @media (min-width: @grid-float-breakpoint) {
  22.123 +    border-radius: 0;
  22.124 +  }
  22.125 +}
  22.126 +
  22.127 +// Fix the top/bottom navbars when screen real estate supports it
  22.128 +.navbar-fixed-top,
  22.129 +.navbar-fixed-bottom {
  22.130 +  position: fixed;
  22.131 +  right: 0;
  22.132 +  left: 0;
  22.133 +  z-index: @zindex-navbar-fixed;
  22.134 +
  22.135 +  // Undo the rounded corners
  22.136 +  @media (min-width: @grid-float-breakpoint) {
  22.137 +    border-radius: 0;
  22.138 +  }
  22.139 +}
  22.140 +.navbar-fixed-top {
  22.141 +  top: 0;
  22.142 +  border-width: 0 0 1px;
  22.143 +}
  22.144 +.navbar-fixed-bottom {
  22.145 +  bottom: 0;
  22.146 +  margin-bottom: 0; // override .navbar defaults
  22.147 +  border-width: 1px 0 0;
  22.148 +}
  22.149 +
  22.150 +
  22.151 +// Brand/project name
  22.152 +
  22.153 +.navbar-brand {
  22.154 +  float: left;
  22.155 +  padding: @navbar-padding-vertical @navbar-padding-horizontal;
  22.156 +  font-size: @font-size-large;
  22.157 +  line-height: @line-height-computed;
  22.158 +
  22.159 +  &:hover,
  22.160 +  &:focus {
  22.161 +    text-decoration: none;
  22.162 +  }
  22.163 +
  22.164 +  @media (min-width: @grid-float-breakpoint) {
  22.165 +    .navbar > .container & {
  22.166 +      margin-left: -@navbar-padding-horizontal;
  22.167 +    }
  22.168 +  }
  22.169 +}
  22.170 +
  22.171 +
  22.172 +// Navbar toggle
  22.173 +//
  22.174 +// Custom button for toggling the `.navbar-collapse`, powered by the collapse
  22.175 +// JavaScript plugin.
  22.176 +
  22.177 +.navbar-toggle {
  22.178 +  position: relative;
  22.179 +  float: right;
  22.180 +  margin-right: @navbar-padding-horizontal;
  22.181 +  padding: 9px 10px;
  22.182 +  .navbar-vertical-align(34px);
  22.183 +  background-color: transparent;
  22.184 +  background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
  22.185 +  border: 1px solid transparent;
  22.186 +  border-radius: @border-radius-base;
  22.187 +
  22.188 +  // Bars
  22.189 +  .icon-bar {
  22.190 +    display: block;
  22.191 +    width: 22px;
  22.192 +    height: 2px;
  22.193 +    border-radius: 1px;
  22.194 +  }
  22.195 +  .icon-bar + .icon-bar {
  22.196 +    margin-top: 4px;
  22.197 +  }
  22.198 +
  22.199 +  @media (min-width: @grid-float-breakpoint) {
  22.200 +    display: none;
  22.201 +  }
  22.202 +}
  22.203 +
  22.204 +
  22.205 +// Navbar nav links
  22.206 +//
  22.207 +// Builds on top of the `.nav` components with it's own modifier class to make
  22.208 +// the nav the full height of the horizontal nav (above 768px).
  22.209 +
  22.210 +.navbar-nav {
  22.211 +  margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal;
  22.212 +
  22.213 +  > li > a {
  22.214 +    padding-top:    10px;
  22.215 +    padding-bottom: 10px;
  22.216 +    line-height: @line-height-computed;
  22.217 +  }
  22.218 +
  22.219 +  @media (max-width: @grid-float-breakpoint-max) {
  22.220 +    // Dropdowns get custom display when collapsed
  22.221 +    .open .dropdown-menu {
  22.222 +      position: static;
  22.223 +      float: none;
  22.224 +      width: auto;
  22.225 +      margin-top: 0;
  22.226 +      background-color: transparent;
  22.227 +      border: 0;
  22.228 +      box-shadow: none;
  22.229 +      > li > a,
  22.230 +      .dropdown-header {
  22.231 +        padding: 5px 15px 5px 25px;
  22.232 +      }
  22.233 +      > li > a {
  22.234 +        line-height: @line-height-computed;
  22.235 +        &:hover,
  22.236 +        &:focus {
  22.237 +          background-image: none;
  22.238 +        }
  22.239 +      }
  22.240 +    }
  22.241 +  }
  22.242 +
  22.243 +  // Uncollapse the nav
  22.244 +  @media (min-width: @grid-float-breakpoint) {
  22.245 +    float: left;
  22.246 +    margin: 0;
  22.247 +
  22.248 +    > li {
  22.249 +      float: left;
  22.250 +      > a {
  22.251 +        padding-top:    @navbar-padding-vertical;
  22.252 +        padding-bottom: @navbar-padding-vertical;
  22.253 +      }
  22.254 +    }
  22.255 +
  22.256 +    &.navbar-right:last-child {
  22.257 +      margin-right: -@navbar-padding-horizontal;
  22.258 +    }
  22.259 +  }
  22.260 +}
  22.261 +
  22.262 +
  22.263 +// Component alignment
  22.264 +//
  22.265 +// Repurpose the pull utilities as their own navbar utilities to avoid specificity
  22.266 +// issues with parents and chaining. Only do this when the navbar is uncollapsed
  22.267 +// though so that navbar contents properly stack and align in mobile.
  22.268 +
  22.269 +@media (min-width: @grid-float-breakpoint) {
  22.270 +  .navbar-left  { .pull-left(); }
  22.271 +  .navbar-right { .pull-right(); }
  22.272 +}
  22.273 +
  22.274 +
  22.275 +// Navbar form
  22.276 +//
  22.277 +// Extension of the `.form-inline` with some extra flavor for optimum display in
  22.278 +// our navbars.
  22.279 +
  22.280 +.navbar-form {
  22.281 +  margin-left: -@navbar-padding-horizontal;
  22.282 +  margin-right: -@navbar-padding-horizontal;
  22.283 +  padding: 10px @navbar-padding-horizontal;
  22.284 +  border-top: 1px solid transparent;
  22.285 +  border-bottom: 1px solid transparent;
  22.286 +  @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);
  22.287 +  .box-shadow(@shadow);
  22.288 +
  22.289 +  // Mixin behavior for optimum display
  22.290 +  .form-inline();
  22.291 +
  22.292 +  .form-group {
  22.293 +    @media (max-width: @grid-float-breakpoint-max) {
  22.294 +      margin-bottom: 5px;
  22.295 +    }
  22.296 +  }
  22.297 +
  22.298 +  // Vertically center in expanded, horizontal navbar
  22.299 +  .navbar-vertical-align(@input-height-base);
  22.300 +
  22.301 +  // Undo 100% width for pull classes
  22.302 +  @media (min-width: @grid-float-breakpoint) {
  22.303 +    width: auto;
  22.304 +    border: 0;
  22.305 +    margin-left: 0;
  22.306 +    margin-right: 0;
  22.307 +    padding-top: 0;
  22.308 +    padding-bottom: 0;
  22.309 +    .box-shadow(none);
  22.310 +
  22.311 +    // Outdent the form if last child to line up with content down the page
  22.312 +    &.navbar-right:last-child {
  22.313 +      margin-right: -@navbar-padding-horizontal;
  22.314 +    }
  22.315 +  }
  22.316 +}
  22.317 +
  22.318 +
  22.319 +// Dropdown menus
  22.320 +
  22.321 +// Menu position and menu carets
  22.322 +.navbar-nav > li > .dropdown-menu {
  22.323 +  margin-top: 0;
  22.324 +  .border-top-radius(0);
  22.325 +}
  22.326 +// Menu position and menu caret support for dropups via extra dropup class
  22.327 +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  22.328 +  .border-bottom-radius(0);
  22.329 +}
  22.330 +
  22.331 +// Right aligned menus need alt position
  22.332 +.navbar-nav.pull-right > li > .dropdown-menu,
  22.333 +.navbar-nav > li > .dropdown-menu.pull-right {
  22.334 +  left: auto;
  22.335 +  right: 0;
  22.336 +}
  22.337 +
  22.338 +
  22.339 +// Buttons in navbars
  22.340 +//
  22.341 +// Vertically center a button within a navbar (when *not* in a form).
  22.342 +
  22.343 +.navbar-btn {
  22.344 +  .navbar-vertical-align(@input-height-base);
  22.345 +
  22.346 +  &.btn-sm {
  22.347 +    .navbar-vertical-align(@input-height-small);
  22.348 +  }
  22.349 +  &.btn-xs {
  22.350 +    .navbar-vertical-align(22);
  22.351 +  }
  22.352 +}
  22.353 +
  22.354 +
  22.355 +// Text in navbars
  22.356 +//
  22.357 +// Add a class to make any element properly align itself vertically within the navbars.
  22.358 +
  22.359 +.navbar-text {
  22.360 +  .navbar-vertical-align(@line-height-computed);
  22.361 +
  22.362 +  @media (min-width: @grid-float-breakpoint) {
  22.363 +    float: left;
  22.364 +    margin-left: @navbar-padding-horizontal;
  22.365 +    margin-right: @navbar-padding-horizontal;
  22.366 +
  22.367 +    // Outdent the form if last child to line up with content down the page
  22.368 +    &.navbar-right:last-child {
  22.369 +      margin-right: 0;
  22.370 +    }
  22.371 +  }
  22.372 +}
  22.373 +
  22.374 +// Alternate navbars
  22.375 +// --------------------------------------------------
  22.376 +
  22.377 +// Default navbar
  22.378 +.navbar-default {
  22.379 +  background-color: @navbar-default-bg;
  22.380 +  border-color: @navbar-default-border;
  22.381 +
  22.382 +  .navbar-brand {
  22.383 +    color: @navbar-default-brand-color;
  22.384 +    &:hover,
  22.385 +    &:focus {
  22.386 +      color: @navbar-default-brand-hover-color;
  22.387 +      background-color: @navbar-default-brand-hover-bg;
  22.388 +    }
  22.389 +  }
  22.390 +
  22.391 +  .navbar-text {
  22.392 +    color: @navbar-default-color;
  22.393 +  }
  22.394 +
  22.395 +  .navbar-nav {
  22.396 +    > li > a {
  22.397 +      color: @navbar-default-link-color;
  22.398 +
  22.399 +      &:hover,
  22.400 +      &:focus {
  22.401 +        color: @navbar-default-link-hover-color;
  22.402 +        background-color: @navbar-default-link-hover-bg;
  22.403 +      }
  22.404 +    }
  22.405 +    > .active > a {
  22.406 +      &,
  22.407 +      &:hover,
  22.408 +      &:focus {
  22.409 +        color: @navbar-default-link-active-color;
  22.410 +        background-color: @navbar-default-link-active-bg;
  22.411 +      }
  22.412 +    }
  22.413 +    > .disabled > a {
  22.414 +      &,
  22.415 +      &:hover,
  22.416 +      &:focus {
  22.417 +        color: @navbar-default-link-disabled-color;
  22.418 +        background-color: @navbar-default-link-disabled-bg;
  22.419 +      }
  22.420 +    }
  22.421 +  }
  22.422 +
  22.423 +  .navbar-toggle {
  22.424 +    border-color: @navbar-default-toggle-border-color;
  22.425 +    &:hover,
  22.426 +    &:focus {
  22.427 +      background-color: @navbar-default-toggle-hover-bg;
  22.428 +    }
  22.429 +    .icon-bar {
  22.430 +      background-color: @navbar-default-toggle-icon-bar-bg;
  22.431 +    }
  22.432 +  }
  22.433 +
  22.434 +  .navbar-collapse,
  22.435 +  .navbar-form {
  22.436 +    border-color: @navbar-default-border;
  22.437 +  }
  22.438 +
  22.439 +  // Dropdown menu items
  22.440 +  .navbar-nav {
  22.441 +    // Remove background color from open dropdown
  22.442 +    > .open > a {
  22.443 +      &,
  22.444 +      &:hover,
  22.445 +      &:focus {
  22.446 +        background-color: @navbar-default-link-active-bg;
  22.447 +        color: @navbar-default-link-active-color;
  22.448 +      }
  22.449 +    }
  22.450 +
  22.451 +    @media (max-width: @grid-float-breakpoint-max) {
  22.452 +      // Dropdowns get custom display when collapsed
  22.453 +      .open .dropdown-menu {
  22.454 +        > li > a {
  22.455 +          color: @navbar-default-link-color;
  22.456 +          &:hover,
  22.457 +          &:focus {
  22.458 +            color: @navbar-default-link-hover-color;
  22.459 +            background-color: @navbar-default-link-hover-bg;
  22.460 +          }
  22.461 +        }
  22.462 +        > .active > a {
  22.463 +          &,
  22.464 +          &:hover,
  22.465 +          &:focus {
  22.466 +            color: @navbar-default-link-active-color;
  22.467 +            background-color: @navbar-default-link-active-bg;
  22.468 +          }
  22.469 +        }
  22.470 +        > .disabled > a {
  22.471 +          &,
  22.472 +          &:hover,
  22.473 +          &:focus {
  22.474 +            color: @navbar-default-link-disabled-color;
  22.475 +            background-color: @navbar-default-link-disabled-bg;
  22.476 +          }
  22.477 +        }
  22.478 +      }
  22.479 +    }
  22.480 +  }
  22.481 +
  22.482 +
  22.483 +  // Links in navbars
  22.484 +  //
  22.485 +  // Add a class to ensure links outside the navbar nav are colored correctly.
  22.486 +
  22.487 +  .navbar-link {
  22.488 +    color: @navbar-default-link-color;
  22.489 +    &:hover {
  22.490 +      color: @navbar-default-link-hover-color;
  22.491 +    }
  22.492 +  }
  22.493 +
  22.494 +}
  22.495 +
  22.496 +// Inverse navbar
  22.497 +
  22.498 +.navbar-inverse {
  22.499 +  background-color: @navbar-inverse-bg;
  22.500 +  border-color: @navbar-inverse-border;
  22.501 +
  22.502 +  .navbar-brand {
  22.503 +    color: @navbar-inverse-brand-color;
  22.504 +    &:hover,
  22.505 +    &:focus {
  22.506 +      color: @navbar-inverse-brand-hover-color;
  22.507 +      background-color: @navbar-inverse-brand-hover-bg;
  22.508 +    }
  22.509 +  }
  22.510 +
  22.511 +  .navbar-text {
  22.512 +    color: @navbar-inverse-color;
  22.513 +  }
  22.514 +
  22.515 +  .navbar-nav {
  22.516 +    > li > a {
  22.517 +      color: @navbar-inverse-link-color;
  22.518 +
  22.519 +      &:hover,
  22.520 +      &:focus {
  22.521 +        color: @navbar-inverse-link-hover-color;
  22.522 +        background-color: @navbar-inverse-link-hover-bg;
  22.523 +      }
  22.524 +    }
  22.525 +    > .active > a {
  22.526 +      &,
  22.527 +      &:hover,
  22.528 +      &:focus {
  22.529 +        color: @navbar-inverse-link-active-color;
  22.530 +        background-color: @navbar-inverse-link-active-bg;
  22.531 +      }
  22.532 +    }
  22.533 +    > .disabled > a {
  22.534 +      &,
  22.535 +      &:hover,
  22.536 +      &:focus {
  22.537 +        color: @navbar-inverse-link-disabled-color;
  22.538 +        background-color: @navbar-inverse-link-disabled-bg;
  22.539 +      }
  22.540 +    }
  22.541 +  }
  22.542 +
  22.543 +  // Darken the responsive nav toggle
  22.544 +  .navbar-toggle {
  22.545 +    border-color: @navbar-inverse-toggle-border-color;
  22.546 +    &:hover,
  22.547 +    &:focus {
  22.548 +      background-color: @navbar-inverse-toggle-hover-bg;
  22.549 +    }
  22.550 +    .icon-bar {
  22.551 +      background-color: @navbar-inverse-toggle-icon-bar-bg;
  22.552 +    }
  22.553 +  }
  22.554 +
  22.555 +  .navbar-collapse,
  22.556 +  .navbar-form {
  22.557 +    border-color: darken(@navbar-inverse-bg, 7%);
  22.558 +  }
  22.559 +
  22.560 +  // Dropdowns
  22.561 +  .navbar-nav {
  22.562 +    > .open > a {
  22.563 +      &,
  22.564 +      &:hover,
  22.565 +      &:focus {
  22.566 +        background-color: @navbar-inverse-link-active-bg;
  22.567 +        color: @navbar-inverse-link-active-color;
  22.568 +      }
  22.569 +    }
  22.570 +
  22.571 +    @media (max-width: @grid-float-breakpoint-max) {
  22.572 +      // Dropdowns get custom display
  22.573 +      .open .dropdown-menu {
  22.574 +        > .dropdown-header {
  22.575 +          border-color: @navbar-inverse-border;
  22.576 +        }
  22.577 +        .divider {
  22.578 +          background-color: @navbar-inverse-border;
  22.579 +        }
  22.580 +        > li > a {
  22.581 +          color: @navbar-inverse-link-color;
  22.582 +          &:hover,
  22.583 +          &:focus {
  22.584 +            color: @navbar-inverse-link-hover-color;
  22.585 +            background-color: @navbar-inverse-link-hover-bg;
  22.586 +          }
  22.587 +        }
  22.588 +        > .active > a {
  22.589 +          &,
  22.590 +          &:hover,
  22.591 +          &:focus {
  22.592 +            color: @navbar-inverse-link-active-color;
  22.593 +            background-color: @navbar-inverse-link-active-bg;
  22.594 +          }
  22.595 +        }
  22.596 +        > .disabled > a {
  22.597 +          &,
  22.598 +          &:hover,
  22.599 +          &:focus {
  22.600 +            color: @navbar-inverse-link-disabled-color;
  22.601 +            background-color: @navbar-inverse-link-disabled-bg;
  22.602 +          }
  22.603 +        }
  22.604 +      }
  22.605 +    }
  22.606 +  }
  22.607 +
  22.608 +  .navbar-link {
  22.609 +    color: @navbar-inverse-link-color;
  22.610 +    &:hover {
  22.611 +      color: @navbar-inverse-link-hover-color;
  22.612 +    }
  22.613 +  }
  22.614 +
  22.615 +}
    23.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.2 +++ b/static/less/navs.less	Fri Dec 20 22:30:44 2013 +0100
    23.3 @@ -0,0 +1,242 @@
    23.4 +//
    23.5 +// Navs
    23.6 +// --------------------------------------------------
    23.7 +
    23.8 +
    23.9 +// Base class
   23.10 +// --------------------------------------------------
   23.11 +
   23.12 +.nav {
   23.13 +  margin-bottom: 0;
   23.14 +  padding-left: 0; // Override default ul/ol
   23.15 +  list-style: none;
   23.16 +  .clearfix();
   23.17 +
   23.18 +  > li {
   23.19 +    position: relative;
   23.20 +    display: block;
   23.21 +
   23.22 +    > a {
   23.23 +      position: relative;
   23.24 +      display: block;
   23.25 +      padding: @nav-link-padding;
   23.26 +      &:hover,
   23.27 +      &:focus {
   23.28 +        text-decoration: none;
   23.29 +        background-color: @nav-link-hover-bg;
   23.30 +      }
   23.31 +    }
   23.32 +
   23.33 +    // Disabled state sets text to gray and nukes hover/tab effects
   23.34 +    &.disabled > a {
   23.35 +      color: @nav-disabled-link-color;
   23.36 +
   23.37 +      &:hover,
   23.38 +      &:focus {
   23.39 +        color: @nav-disabled-link-hover-color;
   23.40 +        text-decoration: none;
   23.41 +        background-color: transparent;
   23.42 +        cursor: not-allowed;
   23.43 +      }
   23.44 +    }
   23.45 +  }
   23.46 +
   23.47 +  // Open dropdowns
   23.48 +  .open > a {
   23.49 +    &,
   23.50 +    &:hover,
   23.51 +    &:focus {
   23.52 +      background-color: @nav-link-hover-bg;
   23.53 +      border-color: @link-color;
   23.54 +    }
   23.55 +  }
   23.56 +
   23.57 +  // Nav dividers (deprecated with v3.0.1)
   23.58 +  //
   23.59 +  // This should have been removed in v3 with the dropping of `.nav-list`, but
   23.60 +  // we missed it. We don't currently support this anywhere, but in the interest
   23.61 +  // of maintaining backward compatibility in case you use it, it's deprecated.
   23.62 +  .nav-divider {
   23.63 +    .nav-divider();
   23.64 +  }
   23.65 +
   23.66 +  // Prevent IE8 from misplacing imgs
   23.67 +  //
   23.68 +  // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989
   23.69 +  > li > a > img {
   23.70 +    max-width: none;
   23.71 +  }
   23.72 +}
   23.73 +
   23.74 +
   23.75 +// Tabs
   23.76 +// -------------------------
   23.77 +
   23.78 +// Give the tabs something to sit on
   23.79 +.nav-tabs {
   23.80 +  border-bottom: 1px solid @nav-tabs-border-color;
   23.81 +  > li {
   23.82 +    float: left;
   23.83 +    // Make the list-items overlay the bottom border
   23.84 +    margin-bottom: -1px;
   23.85 +
   23.86 +    // Actual tabs (as links)
   23.87 +    > a {
   23.88 +      margin-right: 2px;
   23.89 +      line-height: @line-height-base;
   23.90 +      border: 1px solid transparent;
   23.91 +      border-radius: @border-radius-base @border-radius-base 0 0;
   23.92 +      &:hover {
   23.93 +        border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color;
   23.94 +      }
   23.95 +    }
   23.96 +
   23.97 +    // Active state, and it's :hover to override normal :hover
   23.98 +    &.active > a {
   23.99 +      &,
  23.100 +      &:hover,
  23.101 +      &:focus {
  23.102 +        color: @nav-tabs-active-link-hover-color;
  23.103 +        background-color: @nav-tabs-active-link-hover-bg;
  23.104 +        border: 1px solid @nav-tabs-active-link-hover-border-color;
  23.105 +        border-bottom-color: transparent;
  23.106 +        cursor: default;
  23.107 +      }
  23.108 +    }
  23.109 +  }
  23.110 +  // pulling this in mainly for less shorthand
  23.111 +  &.nav-justified {
  23.112 +    .nav-justified();
  23.113 +    .nav-tabs-justified();
  23.114 +  }
  23.115 +}
  23.116 +
  23.117 +
  23.118 +// Pills
  23.119 +// -------------------------
  23.120 +.nav-pills {
  23.121 +  > li {
  23.122 +    float: left;
  23.123 +
  23.124 +    // Links rendered as pills
  23.125 +    > a {
  23.126 +      border-radius: @nav-pills-border-radius;
  23.127 +    }
  23.128 +    + li {
  23.129 +      margin-left: 2px;
  23.130 +    }
  23.131 +
  23.132 +    // Active state
  23.133 +    &.active > a {
  23.134 +      &,
  23.135 +      &:hover,
  23.136 +      &:focus {
  23.137 +        color: @nav-pills-active-link-hover-color;
  23.138 +        background-color: @nav-pills-active-link-hover-bg;
  23.139 +      }
  23.140 +    }
  23.141 +  }
  23.142 +}
  23.143 +
  23.144 +
  23.145 +// Stacked pills
  23.146 +.nav-stacked {
  23.147 +  > li {
  23.148 +    float: none;
  23.149 +    + li {
  23.150 +      margin-top: 2px;
  23.151 +      margin-left: 0; // no need for this gap between nav items
  23.152 +    }
  23.153 +  }
  23.154 +}
  23.155 +
  23.156 +
  23.157 +// Nav variations
  23.158 +// --------------------------------------------------
  23.159 +
  23.160 +// Justified nav links
  23.161 +// -------------------------
  23.162 +
  23.163 +.nav-justified {
  23.164 +  width: 100%;
  23.165 +
  23.166 +  > li {
  23.167 +    float: none;
  23.168 +     > a {
  23.169 +      text-align: center;
  23.170 +      margin-bottom: 5px;
  23.171 +    }
  23.172 +  }
  23.173 +
  23.174 +  > .dropdown .dropdown-menu {
  23.175 +    top: auto;
  23.176 +    left: auto;
  23.177 +  }
  23.178 +
  23.179 +  @media (min-width: @screen-sm-min) {
  23.180 +    > li {
  23.181 +      display: table-cell;
  23.182 +      width: 1%;
  23.183 +      > a {
  23.184 +        margin-bottom: 0;
  23.185 +      }
  23.186 +    }
  23.187 +  }
  23.188 +}
  23.189 +
  23.190 +// Move borders to anchors instead of bottom of list
  23.191 +//
  23.192 +// Mixin for adding on top the shared `.nav-justified` styles for our tabs
  23.193 +.nav-tabs-justified {
  23.194 +  border-bottom: 0;
  23.195 +
  23.196 +  > li > a {
  23.197 +    // Override margin from .nav-tabs
  23.198 +    margin-right: 0;
  23.199 +    border-radius: @border-radius-base;
  23.200 +  }
  23.201 +
  23.202 +  > .active > a,
  23.203 +  > .active > a:hover,
  23.204 +  > .active > a:focus {
  23.205 +    border: 1px solid @nav-tabs-justified-link-border-color;
  23.206 +  }
  23.207 +
  23.208 +  @media (min-width: @screen-sm-min) {
  23.209 +    > li > a {
  23.210 +      border-bottom: 1px solid @nav-tabs-justified-link-border-color;
  23.211 +      border-radius: @border-radius-base @border-radius-base 0 0;
  23.212 +    }
  23.213 +    > .active > a,
  23.214 +    > .active > a:hover,
  23.215 +    > .active > a:focus {
  23.216 +      border-bottom-color: @nav-tabs-justified-active-link-border-color;
  23.217 +    }
  23.218 +  }
  23.219 +}
  23.220 +
  23.221 +
  23.222 +// Tabbable tabs
  23.223 +// -------------------------
  23.224 +
  23.225 +// Hide tabbable panes to start, show them when `.active`
  23.226 +.tab-content {
  23.227 +  > .tab-pane {
  23.228 +    display: none;
  23.229 +  }
  23.230 +  > .active {
  23.231 +    display: block;
  23.232 +  }
  23.233 +}
  23.234 +
  23.235 +
  23.236 +// Dropdowns
  23.237 +// -------------------------
  23.238 +
  23.239 +// Specific dropdowns
  23.240 +.nav-tabs .dropdown-menu {
  23.241 +  // make dropdown border overlap tab border
  23.242 +  margin-top: -1px;
  23.243 +  // Remove the top rounded corners here since there is a hard edge above the menu
  23.244 +  .border-top-radius(0);
  23.245 +}
    24.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    24.2 +++ b/static/less/normalize.less	Fri Dec 20 22:30:44 2013 +0100
    24.3 @@ -0,0 +1,406 @@
    24.4 +/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
    24.5 +
    24.6 +// ==========================================================================
    24.7 +// HTML5 display definitions
    24.8 +// ==========================================================================
    24.9 +
   24.10 +//
   24.11 +// Correct `block` display not defined in IE 8/9.
   24.12 +//
   24.13 +
   24.14 +article,
   24.15 +aside,
   24.16 +details,
   24.17 +figcaption,
   24.18 +figure,
   24.19 +footer,
   24.20 +header,
   24.21 +hgroup,
   24.22 +main,
   24.23 +nav,
   24.24 +section,
   24.25 +summary {
   24.26 +  display: block;
   24.27 +}
   24.28 +
   24.29 +//
   24.30 +// Correct `inline-block` display not defined in IE 8/9.
   24.31 +//
   24.32 +
   24.33 +audio,
   24.34 +canvas,
   24.35 +video {
   24.36 +  display: inline-block;
   24.37 +}
   24.38 +
   24.39 +//
   24.40 +// Prevent modern browsers from displaying `audio` without controls.
   24.41 +// Remove excess height in iOS 5 devices.
   24.42 +//
   24.43 +
   24.44 +audio:not([controls]) {
   24.45 +  display: none;
   24.46 +  height: 0;
   24.47 +}
   24.48 +
   24.49 +//
   24.50 +// Address `[hidden]` styling not present in IE 8/9.
   24.51 +// Hide the `template` element in IE, Safari, and Firefox < 22.
   24.52 +//
   24.53 +
   24.54 +[hidden],
   24.55 +template {
   24.56 +  display: none;
   24.57 +}
   24.58 +
   24.59 +// ==========================================================================
   24.60 +// Base
   24.61 +// ==========================================================================
   24.62 +
   24.63 +//
   24.64 +// 1. Set default font family to sans-serif.
   24.65 +// 2. Prevent iOS text size adjust after orientation change, without disabling
   24.66 +//    user zoom.
   24.67 +//
   24.68 +
   24.69 +html {
   24.70 +  font-family: sans-serif; // 1
   24.71 +  -ms-text-size-adjust: 100%; // 2
   24.72 +  -webkit-text-size-adjust: 100%; // 2
   24.73 +}
   24.74 +
   24.75 +//
   24.76 +// Remove default margin.
   24.77 +//
   24.78 +
   24.79 +body {
   24.80 +  margin: 0;
   24.81 +}
   24.82 +
   24.83 +// ==========================================================================
   24.84 +// Links
   24.85 +// ==========================================================================
   24.86 +
   24.87 +//
   24.88 +// Remove the gray background color from active links in IE 10.
   24.89 +//
   24.90 +
   24.91 +a {
   24.92 +  background: transparent;
   24.93 +}
   24.94 +
   24.95 +//
   24.96 +// Address `outline` inconsistency between Chrome and other browsers.
   24.97 +//
   24.98 +
   24.99 +a:focus {
  24.100 +  outline: thin dotted;
  24.101 +}
  24.102 +
  24.103 +//
  24.104 +// Improve readability when focused and also mouse hovered in all browsers.
  24.105 +//
  24.106 +
  24.107 +a:active,
  24.108 +a:hover {
  24.109 +  outline: 0;
  24.110 +}
  24.111 +
  24.112 +// ==========================================================================
  24.113 +// Typography
  24.114 +// ==========================================================================
  24.115 +
  24.116 +//
  24.117 +// Address variable `h1` font-size and margin within `section` and `article`
  24.118 +// contexts in Firefox 4+, Safari 5, and Chrome.
  24.119 +//
  24.120 +
  24.121 +h1 {
  24.122 +  font-size: 2em;
  24.123 +  margin: 0.67em 0;
  24.124 +}
  24.125 +
  24.126 +//
  24.127 +// Address styling not present in IE 8/9, Safari 5, and Chrome.
  24.128 +//
  24.129 +
  24.130 +abbr[title] {
  24.131 +  border-bottom: 1px dotted;
  24.132 +}
  24.133 +
  24.134 +//
  24.135 +// Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
  24.136 +//
  24.137 +
  24.138 +b,
  24.139 +strong {
  24.140 +  font-weight: bold;
  24.141 +}
  24.142 +
  24.143 +//
  24.144 +// Address styling not present in Safari 5 and Chrome.
  24.145 +//
  24.146 +
  24.147 +dfn {
  24.148 +  font-style: italic;
  24.149 +}
  24.150 +
  24.151 +//
  24.152 +// Address differences between Firefox and other browsers.
  24.153 +//
  24.154 +
  24.155 +hr {
  24.156 +  -moz-box-sizing: content-box;
  24.157 +  box-sizing: content-box;
  24.158 +  height: 0;
  24.159 +}
  24.160 +
  24.161 +//
  24.162 +// Address styling not present in IE 8/9.
  24.163 +//
  24.164 +
  24.165 +mark {
  24.166 +  background: #ff0;
  24.167 +  color: #000;
  24.168 +}
  24.169 +
  24.170 +//
  24.171 +// Correct font family set oddly in Safari 5 and Chrome.
  24.172 +//
  24.173 +
  24.174 +code,
  24.175 +kbd,
  24.176 +pre,
  24.177 +samp {
  24.178 +  font-family: monospace, serif;
  24.179 +  font-size: 1em;
  24.180 +}
  24.181 +
  24.182 +//
  24.183 +// Improve readability of pre-formatted text in all browsers.
  24.184 +//
  24.185 +
  24.186 +pre {
  24.187 +  white-space: pre-wrap;
  24.188 +}
  24.189 +
  24.190 +//
  24.191 +// Set consistent quote types.
  24.192 +//
  24.193 +
  24.194 +q {
  24.195 +  quotes: "\201C" "\201D" "\2018" "\2019";
  24.196 +}
  24.197 +
  24.198 +//
  24.199 +// Address inconsistent and variable font size in all browsers.
  24.200 +//
  24.201 +
  24.202 +small {
  24.203 +  font-size: 80%;
  24.204 +}
  24.205 +
  24.206 +//
  24.207 +// Prevent `sub` and `sup` affecting `line-height` in all browsers.
  24.208 +//
  24.209 +
  24.210 +sub,
  24.211 +sup {
  24.212 +  font-size: 75%;
  24.213 +  line-height: 0;
  24.214 +  position: relative;
  24.215 +  vertical-align: baseline;
  24.216 +}
  24.217 +
  24.218 +sup {
  24.219 +  top: -0.5em;
  24.220 +}
  24.221 +
  24.222 +sub {
  24.223 +  bottom: -0.25em;
  24.224 +}
  24.225 +
  24.226 +// ==========================================================================
  24.227 +// Embedded content
  24.228 +// ==========================================================================
  24.229 +
  24.230 +//
  24.231 +// Remove border when inside `a` element in IE 8/9.
  24.232 +//
  24.233 +
  24.234 +img {
  24.235 +  border: 0;
  24.236 +}
  24.237 +
  24.238 +//
  24.239 +// Correct overflow displayed oddly in IE 9.
  24.240 +//
  24.241 +
  24.242 +svg:not(:root) {
  24.243 +  overflow: hidden;
  24.244 +}
  24.245 +
  24.246 +// ==========================================================================
  24.247 +// Figures
  24.248 +// ==========================================================================
  24.249 +
  24.250 +//
  24.251 +// Address margin not present in IE 8/9 and Safari 5.
  24.252 +//
  24.253 +
  24.254 +figure {
  24.255 +  margin: 0;
  24.256 +}
  24.257 +
  24.258 +// ==========================================================================
  24.259 +// Forms
  24.260 +// ==========================================================================
  24.261 +
  24.262 +//
  24.263 +// Define consistent border, margin, and padding.
  24.264 +//
  24.265 +
  24.266 +fieldset {
  24.267 +  border: 1px solid #c0c0c0;
  24.268 +  margin: 0 2px;
  24.269 +  padding: 0.35em 0.625em 0.75em;
  24.270 +}
  24.271 +
  24.272 +//
  24.273 +// 1. Correct `color` not being inherited in IE 8/9.
  24.274 +// 2. Remove padding so people aren't caught out if they zero out fieldsets.
  24.275 +//
  24.276 +
  24.277 +legend {
  24.278 +  border: 0; // 1
  24.279 +  padding: 0; // 2
  24.280 +}
  24.281 +
  24.282 +//
  24.283 +// 1. Correct font family not being inherited in all browsers.
  24.284 +// 2. Correct font size not being inherited in all browsers.
  24.285 +// 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
  24.286 +//
  24.287 +
  24.288 +button,
  24.289 +input,
  24.290 +select,
  24.291 +textarea {
  24.292 +  font-family: inherit; // 1
  24.293 +  font-size: 100%; // 2
  24.294 +  margin: 0; // 3
  24.295 +}
  24.296 +
  24.297 +//
  24.298 +// Address Firefox 4+ setting `line-height` on `input` using `!important` in
  24.299 +// the UA stylesheet.
  24.300 +//
  24.301 +
  24.302 +button,
  24.303 +input {
  24.304 +  line-height: normal;
  24.305 +}
  24.306 +
  24.307 +//
  24.308 +// Address inconsistent `text-transform` inheritance for `button` and `select`.
  24.309 +// All other form control elements do not inherit `text-transform` values.
  24.310 +// Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
  24.311 +// Correct `select` style inheritance in Firefox 4+ and Opera.
  24.312 +//
  24.313 +
  24.314 +button,
  24.315 +select {
  24.316 +  text-transform: none;
  24.317 +}
  24.318 +
  24.319 +//
  24.320 +// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
  24.321 +//    and `video` controls.
  24.322 +// 2. Correct inability to style clickable `input` types in iOS.
  24.323 +// 3. Improve usability and consistency of cursor style between image-type
  24.324 +//    `input` and others.
  24.325 +//
  24.326 +
  24.327 +button,
  24.328 +html input[type="button"], // 1
  24.329 +input[type="reset"],
  24.330 +input[type="submit"] {
  24.331 +  -webkit-appearance: button; // 2
  24.332 +  cursor: pointer; // 3
  24.333 +}
  24.334 +
  24.335 +//
  24.336 +// Re-set default cursor for disabled elements.
  24.337 +//
  24.338 +
  24.339 +button[disabled],
  24.340 +html input[disabled] {
  24.341 +  cursor: default;
  24.342 +}
  24.343 +
  24.344 +//
  24.345 +// 1. Address box sizing set to `content-box` in IE 8/9/10.
  24.346 +// 2. Remove excess padding in IE 8/9/10.
  24.347 +//
  24.348 +
  24.349 +input[type="checkbox"],
  24.350 +input[type="radio"] {
  24.351 +  box-sizing: border-box; // 1
  24.352 +  padding: 0; // 2
  24.353 +}
  24.354 +
  24.355 +//
  24.356 +// 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
  24.357 +// 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
  24.358 +//    (include `-moz` to future-proof).
  24.359 +//
  24.360 +
  24.361 +input[type="search"] {
  24.362 +  -webkit-appearance: textfield; // 1
  24.363 +  -moz-box-sizing: content-box;
  24.364 +  -webkit-box-sizing: content-box; // 2
  24.365 +  box-sizing: content-box;
  24.366 +}
  24.367 +
  24.368 +//
  24.369 +// Remove inner padding and search cancel button in Safari 5 and Chrome
  24.370 +// on OS X.
  24.371 +//
  24.372 +
  24.373 +input[type="search"]::-webkit-search-cancel-button,
  24.374 +input[type="search"]::-webkit-search-decoration {
  24.375 +  -webkit-appearance: none;
  24.376 +}
  24.377 +
  24.378 +//
  24.379 +// Remove inner padding and border in Firefox 4+.
  24.380 +//
  24.381 +
  24.382 +button::-moz-focus-inner,
  24.383 +input::-moz-focus-inner {
  24.384 +  border: 0;
  24.385 +  padding: 0;
  24.386 +}
  24.387 +
  24.388 +//
  24.389 +// 1. Remove default vertical scrollbar in IE 8/9.
  24.390 +// 2. Improve readability and alignment in all browsers.
  24.391 +//
  24.392 +
  24.393 +textarea {
  24.394 +  overflow: auto; // 1
  24.395 +  vertical-align: top; // 2
  24.396 +}
  24.397 +
  24.398 +// ==========================================================================
  24.399 +// Tables
  24.400 +// ==========================================================================
  24.401 +
  24.402 +//
  24.403 +// Remove most spacing between table cells.
  24.404 +//
  24.405 +
  24.406 +table {
  24.407 +  border-collapse: collapse;
  24.408 +  border-spacing: 0;
  24.409 +}
    25.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    25.2 +++ b/static/less/pager.less	Fri Dec 20 22:30:44 2013 +0100
    25.3 @@ -0,0 +1,55 @@
    25.4 +//
    25.5 +// Pager pagination
    25.6 +// --------------------------------------------------
    25.7 +
    25.8 +
    25.9 +.pager {
   25.10 +  padding-left: 0;
   25.11 +  margin: @line-height-computed 0;
   25.12 +  list-style: none;
   25.13 +  text-align: center;
   25.14 +  .clearfix();
   25.15 +  li {
   25.16 +    display: inline;
   25.17 +    > a,
   25.18 +    > span {
   25.19 +      display: inline-block;
   25.20 +      padding: 5px 14px;
   25.21 +      background-color: @pagination-bg;
   25.22 +      border: 1px solid @pagination-border;
   25.23 +      border-radius: @pager-border-radius;
   25.24 +    }
   25.25 +
   25.26 +    > a:hover,
   25.27 +    > a:focus {
   25.28 +      text-decoration: none;
   25.29 +      background-color: @pagination-hover-bg;
   25.30 +    }
   25.31 +  }
   25.32 +
   25.33 +  .next {
   25.34 +    > a,
   25.35 +    > span {
   25.36 +      float: right;
   25.37 +    }
   25.38 +  }
   25.39 +
   25.40 +  .previous {
   25.41 +    > a,
   25.42 +    > span {
   25.43 +      float: left;
   25.44 +    }
   25.45 +  }
   25.46 +
   25.47 +  .disabled {
   25.48 +    > a,
   25.49 +    > a:hover,
   25.50 +    > a:focus,
   25.51 +    > span {
   25.52 +      color: @pager-disabled-color;
   25.53 +      background-color: @pagination-bg;
   25.54 +      cursor: not-allowed;
   25.55 +    }
   25.56 +  }
   25.57 +
   25.58 +}
    26.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    26.2 +++ b/static/less/pagination.less	Fri Dec 20 22:30:44 2013 +0100
    26.3 @@ -0,0 +1,85 @@
    26.4 +//
    26.5 +// Pagination (multiple pages)
    26.6 +// --------------------------------------------------
    26.7 +.pagination {
    26.8 +  display: inline-block;
    26.9 +  padding-left: 0;
   26.10 +  margin: @line-height-computed 0;
   26.11 +  border-radius: @border-radius-base;
   26.12 +
   26.13 +  > li {
   26.14 +    display: inline; // Remove list-style and block-level defaults
   26.15 +    > a,
   26.16 +    > span {
   26.17 +      position: relative;
   26.18 +      float: left; // Collapse white-space
   26.19 +      padding: @padding-base-vertical @padding-base-horizontal;
   26.20 +      line-height: @line-height-base;
   26.21 +      text-decoration: none;
   26.22 +      background-color: @pagination-bg;
   26.23 +      border: 1px solid @pagination-border;
   26.24 +      margin-left: -1px;
   26.25 +    }
   26.26 +    &:first-child {
   26.27 +      > a,
   26.28 +      > span {
   26.29 +        margin-left: 0;
   26.30 +        .border-left-radius(@border-radius-base);
   26.31 +      }
   26.32 +    }
   26.33 +    &:last-child {
   26.34 +      > a,
   26.35 +      > span {
   26.36 +        .border-right-radius(@border-radius-base);
   26.37 +      }
   26.38 +    }
   26.39 +  }
   26.40 +
   26.41 +  > li > a,
   26.42 +  > li > span {
   26.43 +    &:hover,
   26.44 +    &:focus {
   26.45 +      background-color: @pagination-hover-bg;
   26.46 +    }
   26.47 +  }
   26.48 +
   26.49 +  > .active > a,
   26.50 +  > .active > span {
   26.51 +    &,
   26.52 +    &:hover,
   26.53 +    &:focus {
   26.54 +      z-index: 2;
   26.55 +      color: @pagination-active-color;
   26.56 +      background-color: @pagination-active-bg;
   26.57 +      border-color: @pagination-active-bg;
   26.58 +      cursor: default;
   26.59 +    }
   26.60 +  }
   26.61 +
   26.62 +  > .disabled {
   26.63 +    > span,
   26.64 +    > span:hover,
   26.65 +    > span:focus,
   26.66 +    > a,
   26.67 +    > a:hover,
   26.68 +    > a:focus {
   26.69 +      color: @pagination-disabled-color;
   26.70 +      background-color: @pagination-bg;
   26.71 +      border-color: @pagination-border;
   26.72 +      cursor: not-allowed;
   26.73 +    }
   26.74 +  }
   26.75 +}
   26.76 +
   26.77 +// Sizing
   26.78 +// --------------------------------------------------
   26.79 +
   26.80 +// Large
   26.81 +.pagination-lg {
   26.82 +  .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @border-radius-large);
   26.83 +}
   26.84 +
   26.85 +// Small
   26.86 +.pagination-sm {
   26.87 +  .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @border-radius-small);
   26.88 +}
    27.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    27.2 +++ b/static/less/panels.less	Fri Dec 20 22:30:44 2013 +0100
    27.3 @@ -0,0 +1,182 @@
    27.4 +//
    27.5 +// Panels
    27.6 +// --------------------------------------------------
    27.7 +
    27.8 +
    27.9 +// Base class
   27.10 +.panel {
   27.11 +  margin-bottom: @line-height-computed;
   27.12 +  background-color: @panel-bg;
   27.13 +  border: 1px solid transparent;
   27.14 +  border-radius: @panel-border-radius;
   27.15 +  .box-shadow(0 1px 1px rgba(0,0,0,.05));
   27.16 +}
   27.17 +
   27.18 +// Panel contents
   27.19 +.panel-body {
   27.20 +  padding: 15px;
   27.21 +  .clearfix();
   27.22 +}
   27.23 +
   27.24 +
   27.25 +// List groups in panels
   27.26 +//
   27.27 +// By default, space out list group content from panel headings to account for
   27.28 +// any kind of custom content between the two.
   27.29 +
   27.30 +.panel {
   27.31 +  > .list-group {
   27.32 +    margin-bottom: 0;
   27.33 +
   27.34 +    .list-group-item {
   27.35 +      border-width: 1px 0;
   27.36 +
   27.37 +      // Remove border radius for top one
   27.38 +      &:first-child {
   27.39 +        .border-top-radius(0);
   27.40 +      }
   27.41 +      // But keep it for the last one
   27.42 +      &:last-child {
   27.43 +        border-bottom: 0;
   27.44 +      }
   27.45 +    }
   27.46 +  }
   27.47 +}
   27.48 +// Collapse space between when there's no additional content.
   27.49 +.panel-heading + .list-group {
   27.50 +  .list-group-item:first-child {
   27.51 +    border-top-width: 0;
   27.52 +  }
   27.53 +}
   27.54 +
   27.55 +
   27.56 +// Tables in panels
   27.57 +//
   27.58 +// Place a non-bordered `.table` within a panel (not within a `.panel-body`) and
   27.59 +// watch it go full width.
   27.60 +
   27.61 +.panel {
   27.62 +  > .table,
   27.63 +  > .table-responsive > .table {
   27.64 +    margin-bottom: 0;
   27.65 +  }
   27.66 +  > .panel-body + .table,
   27.67 +  > .panel-body + .table-responsive {
   27.68 +    border-top: 1px solid @table-border-color;
   27.69 +  }
   27.70 +  > .table > tbody:first-child th,
   27.71 +  > .table > tbody:first-child td {
   27.72 +    border-top: 0;
   27.73 +  }
   27.74 +  > .table-bordered,
   27.75 +  > .table-responsive > .table-bordered {
   27.76 +    border: 0;
   27.77 +    > thead,
   27.78 +    > tbody,
   27.79 +    > tfoot {
   27.80 +      > tr {
   27.81 +        > th:first-child,
   27.82 +        > td:first-child {
   27.83 +          border-left: 0;
   27.84 +        }
   27.85 +        > th:last-child,
   27.86 +        > td:last-child {
   27.87 +          border-right: 0;
   27.88 +        }
   27.89 +
   27.90 +        &:last-child > th,
   27.91 +        &:last-child > td {
   27.92 +          border-bottom: 0;
   27.93 +        }
   27.94 +      }
   27.95 +    }
   27.96 +  }
   27.97 +  > .table-responsive {
   27.98 +    border: 0;
   27.99 +    margin-bottom: 0;
  27.100 +  }
  27.101 +}
  27.102 +
  27.103 +
  27.104 +// Optional heading
  27.105 +.panel-heading {
  27.106 +  padding: 10px 15px;
  27.107 +  border-bottom: 1px solid transparent;
  27.108 +  .border-top-radius(@panel-border-radius - 1);
  27.109 +
  27.110 +  > .dropdown .dropdown-toggle {
  27.111 +    color: inherit;
  27.112 +  }
  27.113 +}
  27.114 +
  27.115 +// Within heading, strip any `h*` tag of it's default margins for spacing.
  27.116 +.panel-title {
  27.117 +  margin-top: 0;
  27.118 +  margin-bottom: 0;
  27.119 +  font-size: ceil((@font-size-base * 1.125));
  27.120 +  color: inherit;
  27.121 +
  27.122 +  > a {
  27.123 +    color: inherit;
  27.124 +  }
  27.125 +}
  27.126 +
  27.127 +// Optional footer (stays gray in every modifier class)
  27.128 +.panel-footer {
  27.129 +  padding: 10px 15px;
  27.130 +  background-color: @panel-footer-bg;
  27.131 +  border-top: 1px solid @panel-inner-border;
  27.132 +  .border-bottom-radius(@panel-border-radius - 1);
  27.133 +}
  27.134 +
  27.135 +
  27.136 +// Collapsable panels (aka, accordion)
  27.137 +//
  27.138 +// Wrap a series of panels in `.panel-group` to turn them into an accordion with
  27.139 +// the help of our collapse JavaScript plugin.
  27.140 +
  27.141 +.panel-group {
  27.142 +  // Tighten up margin so it's only between panels
  27.143 +  .panel {
  27.144 +    margin-bottom: 0;
  27.145 +    border-radius: @panel-border-radius;
  27.146 +    overflow: hidden; // crop contents when collapsed
  27.147 +    + .panel {
  27.148 +      margin-top: 5px;
  27.149 +    }
  27.150 +  }
  27.151 +
  27.152 +  .panel-heading {
  27.153 +    border-bottom: 0;
  27.154 +    + .panel-collapse .panel-body {
  27.155 +      border-top: 1px solid @panel-inner-border;
  27.156 +    }
  27.157 +  }
  27.158 +  .panel-footer {
  27.159 +    border-top: 0;
  27.160 +    + .panel-collapse .panel-body {
  27.161 +      border-bottom: 1px solid @panel-inner-border;
  27.162 +    }
  27.163 +  }
  27.164 +}
  27.165 +
  27.166 +
  27.167 +// Contextual variations
  27.168 +.panel-default {
  27.169 +  .panel-variant(@panel-default-border; @panel-default-text; @panel-default-heading-bg; @panel-default-border);
  27.170 +}
  27.171 +.panel-primary {
  27.172 +  .panel-variant(@panel-primary-border; @panel-primary-text; @panel-primary-heading-bg; @panel-primary-border);
  27.173 +}
  27.174 +.panel-success {
  27.175 +  .panel-variant(@panel-success-border; @panel-success-text; @panel-success-heading-bg; @panel-success-border);
  27.176 +}
  27.177 +.panel-warning {
  27.178 +  .panel-variant(@panel-warning-border; @panel-warning-text; @panel-warning-heading-bg; @panel-warning-border);
  27.179 +}
  27.180 +.panel-danger {
  27.181 +  .panel-variant(@panel-danger-border; @panel-danger-text; @panel-danger-heading-bg; @panel-danger-border);
  27.182 +}
  27.183 +.panel-info {
  27.184 +  .panel-variant(@panel-info-border; @panel-info-text; @panel-info-heading-bg; @panel-info-border);
  27.185 +}
    28.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    28.2 +++ b/static/less/popovers.less	Fri Dec 20 22:30:44 2013 +0100
    28.3 @@ -0,0 +1,133 @@
    28.4 +//
    28.5 +// Popovers
    28.6 +// --------------------------------------------------
    28.7 +
    28.8 +
    28.9 +.popover {
   28.10 +  position: absolute;
   28.11 +  top: 0;
   28.12 +  left: 0;
   28.13 +  z-index: @zindex-popover;
   28.14 +  display: none;
   28.15 +  max-width: @popover-max-width;
   28.16 +  padding: 1px;
   28.17 +  text-align: left; // Reset given new insertion method
   28.18 +  background-color: @popover-bg;
   28.19 +  background-clip: padding-box;
   28.20 +  border: 1px solid @popover-fallback-border-color;
   28.21 +  border: 1px solid @popover-border-color;
   28.22 +  border-radius: @border-radius-large;
   28.23 +  .box-shadow(0 5px 10px rgba(0,0,0,.2));
   28.24 +
   28.25 +  // Overrides for proper insertion
   28.26 +  white-space: normal;
   28.27 +
   28.28 +  // Offset the popover to account for the popover arrow
   28.29 +  &.top     { margin-top: -10px; }
   28.30 +  &.right   { margin-left: 10px; }
   28.31 +  &.bottom  { margin-top: 10px; }
   28.32 +  &.left    { margin-left: -10px; }
   28.33 +}
   28.34 +
   28.35 +.popover-title {
   28.36 +  margin: 0; // reset heading margin
   28.37 +  padding: 8px 14px;
   28.38 +  font-size: @font-size-base;
   28.39 +  font-weight: normal;
   28.40 +  line-height: 18px;
   28.41 +  background-color: @popover-title-bg;
   28.42 +  border-bottom: 1px solid darken(@popover-title-bg, 5%);
   28.43 +  border-radius: 5px 5px 0 0;
   28.44 +}
   28.45 +
   28.46 +.popover-content {
   28.47 +  padding: 9px 14px;
   28.48 +}
   28.49 +
   28.50 +// Arrows
   28.51 +//
   28.52 +// .arrow is outer, .arrow:after is inner
   28.53 +
   28.54 +.popover .arrow {
   28.55 +  &,
   28.56 +  &:after {
   28.57 +    position: absolute;
   28.58 +    display: block;
   28.59 +    width: 0;
   28.60 +    height: 0;
   28.61 +    border-color: transparent;
   28.62 +    border-style: solid;
   28.63 +  }
   28.64 +}
   28.65 +.popover .arrow {
   28.66 +  border-width: @popover-arrow-outer-width;
   28.67 +}
   28.68 +.popover .arrow:after {
   28.69 +  border-width: @popover-arrow-width;
   28.70 +  content: "";
   28.71 +}
   28.72 +
   28.73 +.popover {
   28.74 +  &.top .arrow {
   28.75 +    left: 50%;
   28.76 +    margin-left: -@popover-arrow-outer-width;
   28.77 +    border-bottom-width: 0;
   28.78 +    border-top-color: @popover-arrow-outer-fallback-color; // IE8 fallback
   28.79 +    border-top-color: @popover-arrow-outer-color;
   28.80 +    bottom: -@popover-arrow-outer-width;
   28.81 +    &:after {
   28.82 +      content: " ";
   28.83 +      bottom: 1px;
   28.84 +      margin-left: -@popover-arrow-width;
   28.85 +      border-bottom-width: 0;
   28.86 +      border-top-color: @popover-arrow-color;
   28.87 +    }
   28.88 +  }
   28.89 +  &.right .arrow {
   28.90 +    top: 50%;
   28.91 +    left: -@popover-arrow-outer-width;
   28.92 +    margin-top: -@popover-arrow-outer-width;
   28.93 +    border-left-width: 0;
   28.94 +    border-right-color: @popover-arrow-outer-fallback-color; // IE8 fallback
   28.95 +    border-right-color: @popover-arrow-outer-color;
   28.96 +    &:after {
   28.97 +      content: " ";
   28.98 +      left: 1px;
   28.99 +      bottom: -@popover-arrow-width;
  28.100 +      border-left-width: 0;
  28.101 +      border-right-color: @popover-arrow-color;
  28.102 +    }
  28.103 +  }
  28.104 +  &.bottom .arrow {
  28.105 +    left: 50%;
  28.106 +    margin-left: -@popover-arrow-outer-width;
  28.107 +    border-top-width: 0;
  28.108 +    border-bottom-color: @popover-arrow-outer-fallback-color; // IE8 fallback
  28.109 +    border-bottom-color: @popover-arrow-outer-color;
  28.110 +    top: -@popover-arrow-outer-width;
  28.111 +    &:after {
  28.112 +      content: " ";
  28.113 +      top: 1px;
  28.114 +      margin-left: -@popover-arrow-width;
  28.115 +      border-top-width: 0;
  28.116 +      border-bottom-color: @popover-arrow-color;
  28.117 +    }
  28.118 +  }
  28.119 +
  28.120 +  &.left .arrow {
  28.121 +    top: 50%;
  28.122 +    right: -@popover-arrow-outer-width;
  28.123 +    margin-top: -@popover-arrow-outer-width;
  28.124 +    border-right-width: 0;
  28.125 +    border-left-color: @popover-arrow-outer-fallback-color; // IE8 fallback
  28.126 +    border-left-color: @popover-arrow-outer-color;
  28.127 +    &:after {
  28.128 +      content: " ";
  28.129 +      right: 1px;
  28.130 +      border-right-width: 0;
  28.131 +      border-left-color: @popover-arrow-color;
  28.132 +      bottom: -@popover-arrow-width;
  28.133 +    }
  28.134 +  }
  28.135 +
  28.136 +}
    29.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    29.2 +++ b/static/less/print.less	Fri Dec 20 22:30:44 2013 +0100
    29.3 @@ -0,0 +1,105 @@
    29.4 +//
    29.5 +// Basic print styles
    29.6 +// --------------------------------------------------
    29.7 +// Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css
    29.8 +
    29.9 +@media print {
   29.10 +
   29.11 +  * {
   29.12 +    text-shadow: none !important;
   29.13 +    color: #000 !important; // Black prints faster: h5bp.com/s
   29.14 +    background: transparent !important;
   29.15 +    box-shadow: none !important;
   29.16 +  }
   29.17 +
   29.18 +  a,
   29.19 +  a:visited {
   29.20 +    text-decoration: underline;
   29.21 +  }
   29.22 +
   29.23 +  a[href]:after {
   29.24 +    content: " (" attr(href) ")";
   29.25 +  }
   29.26 +
   29.27 +  abbr[title]:after {
   29.28 +    content: " (" attr(title) ")";
   29.29 +  }
   29.30 +
   29.31 +  // Don't show links for images, or javascript/internal links
   29.32 +  a[href^="javascript:"]:after,
   29.33 +  a[href^="#"]:after {
   29.34 +    content: "";
   29.35 +  }
   29.36 +
   29.37 +  pre,
   29.38 +  blockquote {
   29.39 +    border: 1px solid #999;
   29.40 +    page-break-inside: avoid;
   29.41 +  }
   29.42 +
   29.43 +  thead {
   29.44 +    display: table-header-group; // h5bp.com/t
   29.45 +  }
   29.46 +
   29.47 +  tr,
   29.48 +  img {
   29.49 +    page-break-inside: avoid;
   29.50 +  }
   29.51 +
   29.52 +  img {
   29.53 +    max-width: 100% !important;
   29.54 +  }
   29.55 +
   29.56 +  @page {
   29.57 +    margin: 2cm .5cm;
   29.58 +  }
   29.59 +
   29.60 +  p,
   29.61 +  h2,
   29.62 +  h3 {
   29.63 +    orphans: 3;
   29.64 +    widows: 3;
   29.65 +  }
   29.66 +
   29.67 +  h2,
   29.68 +  h3 {
   29.69 +    page-break-after: avoid;
   29.70 +  }
   29.71 +
   29.72 +  // Chrome (OSX) fix for https://github.com/twbs/bootstrap/issues/11245
   29.73 +  // Once fixed, we can just straight up remove this.
   29.74 +  select {
   29.75 +    background: #fff !important;
   29.76 +  }
   29.77 +
   29.78 +  // Bootstrap components
   29.79 +  .navbar {
   29.80 +    display: none;
   29.81 +  }
   29.82 +  .table {
   29.83 +    td,
   29.84 +    th {
   29.85 +      background-color: #fff !important;
   29.86 +    }
   29.87 +  }
   29.88 +  .btn,
   29.89 +  .dropup > .btn {
   29.90 +    > .caret {
   29.91 +      border-top-color: #000 !important;
   29.92 +    }
   29.93 +  }
   29.94 +  .label {
   29.95 +    border: 1px solid #000;
   29.96 +  }
   29.97 +
   29.98 +  .table {
   29.99 +    border-collapse: collapse !important;
  29.100 +  }
  29.101 +  .table-bordered {
  29.102 +    th,
  29.103 +    td {
  29.104 +      border: 1px solid #ddd !important;
  29.105 +    }
  29.106 +  }
  29.107 +
  29.108 +}
    30.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    30.2 +++ b/static/less/progress-bars.less	Fri Dec 20 22:30:44 2013 +0100
    30.3 @@ -0,0 +1,80 @@
    30.4 +//
    30.5 +// Progress bars
    30.6 +// --------------------------------------------------
    30.7 +
    30.8 +
    30.9 +// Bar animations
   30.10 +// -------------------------
   30.11 +
   30.12 +// WebKit
   30.13 +@-webkit-keyframes progress-bar-stripes {
   30.14 +  from  { background-position: 40px 0; }
   30.15 +  to    { background-position: 0 0; }
   30.16 +}
   30.17 +
   30.18 +// Spec and IE10+
   30.19 +@keyframes progress-bar-stripes {
   30.20 +  from  { background-position: 40px 0; }
   30.21 +  to    { background-position: 0 0; }
   30.22 +}
   30.23 +
   30.24 +
   30.25 +
   30.26 +// Bar itself
   30.27 +// -------------------------
   30.28 +
   30.29 +// Outer container
   30.30 +.progress {
   30.31 +  overflow: hidden;
   30.32 +  height: @line-height-computed;
   30.33 +  margin-bottom: @line-height-computed;
   30.34 +  background-color: @progress-bg;
   30.35 +  border-radius: @border-radius-base;
   30.36 +  .box-shadow(inset 0 1px 2px rgba(0,0,0,.1));
   30.37 +}
   30.38 +
   30.39 +// Bar of progress
   30.40 +.progress-bar {
   30.41 +  float: left;
   30.42 +  width: 0%;
   30.43 +  height: 100%;
   30.44 +  font-size: @font-size-small;
   30.45 +  line-height: @line-height-computed;
   30.46 +  color: @progress-bar-color;
   30.47 +  text-align: center;
   30.48 +  background-color: @progress-bar-bg;
   30.49 +  .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));
   30.50 +  .transition(width .6s ease);
   30.51 +}
   30.52 +
   30.53 +// Striped bars
   30.54 +.progress-striped .progress-bar {
   30.55 +  #gradient > .striped();
   30.56 +  background-size: 40px 40px;
   30.57 +}
   30.58 +
   30.59 +// Call animation for the active one
   30.60 +.progress.active .progress-bar {
   30.61 +  .animation(progress-bar-stripes 2s linear infinite);
   30.62 +}
   30.63 +
   30.64 +
   30.65 +
   30.66 +// Variations
   30.67 +// -------------------------
   30.68 +
   30.69 +.progress-bar-success {
   30.70 +  .progress-bar-variant(@progress-bar-success-bg);
   30.71 +}
   30.72 +
   30.73 +.progress-bar-info {
   30.74 +  .progress-bar-variant(@progress-bar-info-bg);
   30.75 +}
   30.76 +
   30.77 +.progress-bar-warning {
   30.78 +  .progress-bar-variant(@progress-bar-warning-bg);
   30.79 +}
   30.80 +
   30.81 +.progress-bar-danger {
   30.82 +  .progress-bar-variant(@progress-bar-danger-bg);
   30.83 +}
    31.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    31.2 +++ b/static/less/responsive-utilities.less	Fri Dec 20 22:30:44 2013 +0100
    31.3 @@ -0,0 +1,209 @@
    31.4 +//
    31.5 +// Responsive: Utility classes
    31.6 +// --------------------------------------------------
    31.7 +
    31.8 +
    31.9 +// IE10 in Windows (Phone) 8
   31.10 +//
   31.11 +// Support for responsive views via media queries is kind of borked in IE10, for
   31.12 +// Surface/desktop in split view and for Windows Phone 8. This particular fix
   31.13 +// must be accompanied by a snippet of JavaScript to sniff the user agent and
   31.14 +// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at
   31.15 +// our Getting Started page for more information on this bug.
   31.16 +//
   31.17 +// For more information, see the following:
   31.18 +//
   31.19 +// Issue: https://github.com/twbs/bootstrap/issues/10497
   31.20 +// Docs: http://getbootstrap.com/getting-started/#browsers
   31.21 +// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/
   31.22 +
   31.23 +@-ms-viewport {
   31.24 +  width: device-width;
   31.25 +}
   31.26 +
   31.27 +
   31.28 +// Visibility utilities
   31.29 +
   31.30 +.visible-xs {
   31.31 +  .responsive-invisibility();
   31.32 +  @media (max-width: @screen-xs-max) {
   31.33 +    .responsive-visibility();
   31.34 +  }
   31.35 +  &.visible-sm {
   31.36 +    @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
   31.37 +      .responsive-visibility();
   31.38 +    }
   31.39 +  }
   31.40 +  &.visible-md {
   31.41 +    @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
   31.42 +      .responsive-visibility();
   31.43 +    }
   31.44 +  }
   31.45 +  &.visible-lg {
   31.46 +    @media (min-width: @screen-lg-min) {
   31.47 +      .responsive-visibility();
   31.48 +    }
   31.49 +  }
   31.50 +}
   31.51 +.visible-sm {
   31.52 +  .responsive-invisibility();
   31.53 +  &.visible-xs {
   31.54 +    @media (max-width: @screen-xs-max) {
   31.55 +      .responsive-visibility();
   31.56 +    }
   31.57 +  }
   31.58 +  @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
   31.59 +    .responsive-visibility();
   31.60 +  }
   31.61 +  &.visible-md {
   31.62 +    @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
   31.63 +      .responsive-visibility();
   31.64 +    }
   31.65 +  }
   31.66 +  &.visible-lg {
   31.67 +    @media (min-width: @screen-lg-min) {
   31.68 +      .responsive-visibility();
   31.69 +    }
   31.70 +  }
   31.71 +}
   31.72 +.visible-md {
   31.73 +  .responsive-invisibility();
   31.74 +  &.visible-xs {
   31.75 +    @media (max-width: @screen-xs-max) {
   31.76 +      .responsive-visibility();
   31.77 +    }
   31.78 +  }
   31.79 +  &.visible-sm {
   31.80 +    @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
   31.81 +      .responsive-visibility();
   31.82 +    }
   31.83 +  }
   31.84 +  @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
   31.85 +    .responsive-visibility();
   31.86 +  }
   31.87 +  &.visible-lg {
   31.88 +    @media (min-width: @screen-lg-min) {
   31.89 +      .responsive-visibility();
   31.90 +    }
   31.91 +  }
   31.92 +}
   31.93 +.visible-lg {
   31.94 +  .responsive-invisibility();
   31.95 +  &.visible-xs {
   31.96 +    @media (max-width: @screen-xs-max) {
   31.97 +      .responsive-visibility();
   31.98 +    }
   31.99 +  }
  31.100 +  &.visible-sm {
  31.101 +    @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
  31.102 +      .responsive-visibility();
  31.103 +    }
  31.104 +  }
  31.105 +  &.visible-md {
  31.106 +    @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
  31.107 +      .responsive-visibility();
  31.108 +    }
  31.109 +  }
  31.110 +  @media (min-width: @screen-lg-min) {
  31.111 +    .responsive-visibility();
  31.112 +  }
  31.113 +}
  31.114 +
  31.115 +.hidden-xs {
  31.116 +  .responsive-visibility();
  31.117 +  @media (max-width: @screen-xs-max) {
  31.118 +    .responsive-invisibility();
  31.119 +  }
  31.120 +  &.hidden-sm {
  31.121 +    @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
  31.122 +      .responsive-invisibility();
  31.123 +    }
  31.124 +  }
  31.125 +  &.hidden-md {
  31.126 +    @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
  31.127 +      .responsive-invisibility();
  31.128 +    }
  31.129 +  }
  31.130 +  &.hidden-lg {
  31.131 +    @media (min-width: @screen-lg-min) {
  31.132 +      .responsive-invisibility();
  31.133 +    }
  31.134 +  }
  31.135 +}
  31.136 +.hidden-sm {
  31.137 +  .responsive-visibility();
  31.138 +  &.hidden-xs {
  31.139 +    @media (max-width: @screen-xs-max) {
  31.140 +      .responsive-invisibility();
  31.141 +    }
  31.142 +  }
  31.143 +  @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
  31.144 +    .responsive-invisibility();
  31.145 +  }
  31.146 +  &.hidden-md {
  31.147 +    @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
  31.148 +      .responsive-invisibility();
  31.149 +    }
  31.150 +  }
  31.151 +  &.hidden-lg {
  31.152 +    @media (min-width: @screen-lg-min) {
  31.153 +      .responsive-invisibility();
  31.154 +    }
  31.155 +  }
  31.156 +}
  31.157 +.hidden-md {
  31.158 +  .responsive-visibility();
  31.159 +  &.hidden-xs {
  31.160 +    @media (max-width: @screen-xs-max) {
  31.161 +      .responsive-invisibility();
  31.162 +    }
  31.163 +  }
  31.164 +  &.hidden-sm {
  31.165 +    @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
  31.166 +      .responsive-invisibility();
  31.167 +    }
  31.168 +  }
  31.169 +  @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
  31.170 +    .responsive-invisibility();
  31.171 +  }
  31.172 +  &.hidden-lg {
  31.173 +    @media (min-width: @screen-lg-min) {
  31.174 +      .responsive-invisibility();
  31.175 +    }
  31.176 +  }
  31.177 +}
  31.178 +.hidden-lg {
  31.179 +  .responsive-visibility();
  31.180 +  &.hidden-xs {
  31.181 +    @media (max-width: @screen-xs-max) {
  31.182 +      .responsive-invisibility();
  31.183 +    }
  31.184 +  }
  31.185 +  &.hidden-sm {
  31.186 +    @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
  31.187 +      .responsive-invisibility();
  31.188 +    }
  31.189 +  }
  31.190 +  &.hidden-md {
  31.191 +    @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
  31.192 +      .responsive-invisibility();
  31.193 +    }
  31.194 +  }
  31.195 +  @media (min-width: @screen-lg-min) {
  31.196 +    .responsive-invisibility();
  31.197 +  }
  31.198 +}
  31.199 +
  31.200 +// Print utilities
  31.201 +.visible-print {
  31.202 +  .responsive-invisibility();
  31.203 +}
  31.204 +
  31.205 +@media print {
  31.206 +  .visible-print {
  31.207 +    .responsive-visibility();
  31.208 +  }
  31.209 +  .hidden-print {
  31.210 +    .responsive-invisibility();
  31.211 +  }
  31.212 +}
    32.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    32.2 +++ b/static/less/scaffolding.less	Fri Dec 20 22:30:44 2013 +0100
    32.3 @@ -0,0 +1,119 @@
    32.4 +//
    32.5 +// Scaffolding
    32.6 +// --------------------------------------------------
    32.7 +
    32.8 +
    32.9 +// Reset the box-sizing
   32.10 +
   32.11 +*,
   32.12 +*:before,
   32.13 +*:after {
   32.14 +  .box-sizing(border-box);
   32.15 +}
   32.16 +
   32.17 +
   32.18 +// Body reset
   32.19 +
   32.20 +html {
   32.21 +  font-size: 62.5%;
   32.22 +  -webkit-tap-highlight-color: rgba(0,0,0,0);
   32.23 +}
   32.24 +
   32.25 +body {
   32.26 +  font-family: @font-family-base;
   32.27 +  font-size: @font-size-base;
   32.28 +  line-height: @line-height-base;
   32.29 +  color: @text-color;
   32.30 +  background-color: @body-bg;
   32.31 +}
   32.32 +
   32.33 +// Reset fonts for relevant elements
   32.34 +input,
   32.35 +button,
   32.36 +select,
   32.37 +textarea {
   32.38 +  font-family: inherit;
   32.39 +  font-size: inherit;
   32.40 +  line-height: inherit;
   32.41 +}
   32.42 +
   32.43 +
   32.44 +// Links
   32.45 +
   32.46 +a {
   32.47 +  color: @link-color;
   32.48 +  text-decoration: none;
   32.49 +
   32.50 +  &:hover,
   32.51 +  &:focus {
   32.52 +    color: @link-hover-color;
   32.53 +    text-decoration: underline;
   32.54 +  }
   32.55 +
   32.56 +  &:focus {
   32.57 +    .tab-focus();
   32.58 +  }
   32.59 +}
   32.60 +
   32.61 +
   32.62 +// Images
   32.63 +
   32.64 +img {
   32.65 +  vertical-align: middle;
   32.66 +}
   32.67 +
   32.68 +// Responsive images (ensure images don't scale beyond their parents)
   32.69 +.img-responsive {
   32.70 +  .img-responsive();
   32.71 +}
   32.72 +
   32.73 +// Rounded corners
   32.74 +.img-rounded {
   32.75 +  border-radius: @border-radius-large;
   32.76 +}
   32.77 +
   32.78 +// Image thumbnails
   32.79 +//
   32.80 +// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.
   32.81 +.img-thumbnail {
   32.82 +  padding: @thumbnail-padding;
   32.83 +  line-height: @line-height-base;
   32.84 +  background-color: @thumbnail-bg;
   32.85 +  border: 1px solid @thumbnail-border;
   32.86 +  border-radius: @thumbnail-border-radius;
   32.87 +  .transition(all .2s ease-in-out);
   32.88 +
   32.89 +  // Keep them at most 100% wide
   32.90 +  .img-responsive(inline-block);
   32.91 +}
   32.92 +
   32.93 +// Perfect circle
   32.94 +.img-circle {
   32.95 +  border-radius: 50%; // set radius in percents
   32.96 +}
   32.97 +
   32.98 +
   32.99 +// Horizontal rules
  32.100 +
  32.101 +hr {
  32.102 +  margin-top:    @line-height-computed;
  32.103 +  margin-bottom: @line-height-computed;
  32.104 +  border: 0;
  32.105 +  border-top: 1px solid @hr-border;
  32.106 +}
  32.107 +
  32.108 +
  32.109 +// Only display content to screen readers
  32.110 +//
  32.111 +// See: http://a11yproject.com/posts/how-to-hide-content/
  32.112 +
  32.113 +.sr-only {
  32.114 +  position: absolute;
  32.115 +  width: 1px;
  32.116 +  height: 1px;
  32.117 +  margin: -1px;
  32.118 +  padding: 0;
  32.119 +  overflow: hidden;
  32.120 +  clip: rect(0,0,0,0);
  32.121 +  border: 0;
  32.122 +}
    33.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    33.2 +++ b/static/less/tables.less	Fri Dec 20 22:30:44 2013 +0100
    33.3 @@ -0,0 +1,231 @@
    33.4 +//
    33.5 +// Tables
    33.6 +// --------------------------------------------------
    33.7 +
    33.8 +
    33.9 +table {
   33.10 +  max-width: 100%;
   33.11 +  background-color: @table-bg;
   33.12 +}
   33.13 +th {
   33.14 +  text-align: left;
   33.15 +}
   33.16 +
   33.17 +
   33.18 +// Baseline styles
   33.19 +
   33.20 +.table {
   33.21 +  width: 100%;
   33.22 +  margin-bottom: @line-height-computed;
   33.23 +  // Cells
   33.24 +  > thead,
   33.25 +  > tbody,
   33.26 +  > tfoot {
   33.27 +    > tr {
   33.28 +      > th,
   33.29 +      > td {
   33.30 +        padding: @table-cell-padding;
   33.31 +        line-height: @line-height-base;
   33.32 +        vertical-align: top;
   33.33 +        border-top: 1px solid @table-border-color;
   33.34 +      }
   33.35 +    }
   33.36 +  }
   33.37 +  // Bottom align for column headings
   33.38 +  > thead > tr > th {
   33.39 +    vertical-align: bottom;
   33.40 +    border-bottom: 2px solid @table-border-color;
   33.41 +  }
   33.42 +  // Remove top border from thead by default
   33.43 +  > caption + thead,
   33.44 +  > colgroup + thead,
   33.45 +  > thead:first-child {
   33.46 +    > tr:first-child {
   33.47 +      > th,
   33.48 +      > td {
   33.49 +        border-top: 0;
   33.50 +      }
   33.51 +    }
   33.52 +  }
   33.53 +  // Account for multiple tbody instances
   33.54 +  > tbody + tbody {
   33.55 +    border-top: 2px solid @table-border-color;
   33.56 +  }
   33.57 +
   33.58 +  // Nesting
   33.59 +  .table {
   33.60 +    background-color: @body-bg;
   33.61 +  }
   33.62 +}
   33.63 +
   33.64 +
   33.65 +// Condensed table w/ half padding
   33.66 +
   33.67 +.table-condensed {
   33.68 +  > thead,
   33.69 +  > tbody,
   33.70 +  > tfoot {
   33.71 +    > tr {
   33.72 +      > th,
   33.73 +      > td {
   33.74 +        padding: @table-condensed-cell-padding;
   33.75 +      }
   33.76 +    }
   33.77 +  }
   33.78 +}
   33.79 +
   33.80 +
   33.81 +// Bordered version
   33.82 +//
   33.83 +// Add borders all around the table and between all the columns.
   33.84 +
   33.85 +.table-bordered {
   33.86 +  border: 1px solid @table-border-color;
   33.87 +  > thead,
   33.88 +  > tbody,
   33.89 +  > tfoot {
   33.90 +    > tr {
   33.91 +      > th,
   33.92 +      > td {
   33.93 +        border: 1px solid @table-border-color;
   33.94 +      }
   33.95 +    }
   33.96 +  }
   33.97 +  > thead > tr {
   33.98 +    > th,
   33.99 +    > td {
  33.100 +      border-bottom-width: 2px;
  33.101 +    }
  33.102 +  }
  33.103 +}
  33.104 +
  33.105 +
  33.106 +// Zebra-striping
  33.107 +//
  33.108 +// Default zebra-stripe styles (alternating gray and transparent backgrounds)
  33.109 +
  33.110 +.table-striped {
  33.111 +  > tbody > tr:nth-child(odd) {
  33.112 +    > td,
  33.113 +    > th {
  33.114 +      background-color: @table-bg-accent;
  33.115 +    }
  33.116 +  }
  33.117 +}
  33.118 +
  33.119 +
  33.120 +// Hover effect
  33.121 +//
  33.122 +// Placed here since it has to come after the potential zebra striping
  33.123 +
  33.124 +.table-hover {
  33.125 +  > tbody > tr:hover {
  33.126 +    > td,
  33.127 +    > th {
  33.128 +      background-color: @table-bg-hover;
  33.129 +    }
  33.130 +  }
  33.131 +}
  33.132 +
  33.133 +
  33.134 +// Table cell sizing
  33.135 +//
  33.136 +// Reset default table behavior
  33.137 +
  33.138 +table col[class*="col-"] {
  33.139 +  position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623)
  33.140 +  float: none;
  33.141 +  display: table-column;
  33.142 +}
  33.143 +table {
  33.144 +  td,
  33.145 +  th {
  33.146 +    &[class*="col-"] {
  33.147 +      float: none;
  33.148 +      display: table-cell;
  33.149 +    }
  33.150 +  }
  33.151 +}
  33.152 +
  33.153 +
  33.154 +// Table backgrounds
  33.155 +//
  33.156 +// Exact selectors below required to override `.table-striped` and prevent
  33.157 +// inheritance to nested tables.
  33.158 +
  33.159 +// Generate the contextual variants
  33.160 +.table-row-variant(active; @table-bg-active);
  33.161 +.table-row-variant(success; @state-success-bg);
  33.162 +.table-row-variant(danger; @state-danger-bg);
  33.163 +.table-row-variant(warning; @state-warning-bg);
  33.164 +
  33.165 +
  33.166 +// Responsive tables
  33.167 +//
  33.168 +// Wrap your tables in `.table-responsive` and we'll make them mobile friendly
  33.169 +// by enabling horizontal scrolling. Only applies <768px. Everything above that
  33.170 +// will display normally.
  33.171 +
  33.172 +@media (max-width: @screen-xs-max) {
  33.173 +  .table-responsive {
  33.174 +    width: 100%;
  33.175 +    margin-bottom: (@line-height-computed * 0.75);
  33.176 +    overflow-y: hidden;
  33.177 +    overflow-x: scroll;
  33.178 +    -ms-overflow-style: -ms-autohiding-scrollbar;
  33.179 +    border: 1px solid @table-border-color;
  33.180 +    -webkit-overflow-scrolling: touch;
  33.181 +
  33.182 +    // Tighten up spacing
  33.183 +    > .table {
  33.184 +      margin-bottom: 0;
  33.185 +
  33.186 +      // Ensure the content doesn't wrap
  33.187 +      > thead,
  33.188 +      > tbody,
  33.189 +      > tfoot {
  33.190 +        > tr {
  33.191 +          > th,
  33.192 +          > td {
  33.193 +            white-space: nowrap;
  33.194 +          }
  33.195 +        }
  33.196 +      }
  33.197 +    }
  33.198 +
  33.199 +    // Special overrides for the bordered tables
  33.200 +    > .table-bordered {
  33.201 +      border: 0;
  33.202 +
  33.203 +      // Nuke the appropriate borders so that the parent can handle them
  33.204 +      > thead,
  33.205 +      > tbody,
  33.206 +      > tfoot {
  33.207 +        > tr {
  33.208 +          > th:first-child,
  33.209 +          > td:first-child {
  33.210 +            border-left: 0;
  33.211 +          }
  33.212 +          > th:last-child,
  33.213 +          > td:last-child {
  33.214 +            border-right: 0;
  33.215 +          }
  33.216 +        }
  33.217 +      }
  33.218 +
  33.219 +      // Only nuke the last row's bottom-border in `tbody` and `tfoot` since
  33.220 +      // chances are there will be only one `tr` in a `thead` and that would
  33.221 +      // remove the border altogether.
  33.222 +      > tbody,
  33.223 +      > tfoot {
  33.224 +        > tr:last-child {
  33.225 +          > th,
  33.226 +          > td {
  33.227 +            border-bottom: 0;
  33.228 +          }
  33.229 +        }
  33.230 +      }
  33.231 +
  33.232 +    }
  33.233 +  }
  33.234 +}
    34.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    34.2 +++ b/static/less/theme.less	Fri Dec 20 22:30:44 2013 +0100
    34.3 @@ -0,0 +1,247 @@
    34.4 +
    34.5 +//
    34.6 +// Load core variables and mixins
    34.7 +// --------------------------------------------------
    34.8 +
    34.9 +@import "variables.less";
   34.10 +@import "mixins.less";
   34.11 +
   34.12 +
   34.13 +
   34.14 +//
   34.15 +// Buttons
   34.16 +// --------------------------------------------------
   34.17 +
   34.18 +// Common styles
   34.19 +.btn-default,
   34.20 +.btn-primary,
   34.21 +.btn-success,
   34.22 +.btn-info,
   34.23 +.btn-warning,
   34.24 +.btn-danger {
   34.25 +  text-shadow: 0 -1px 0 rgba(0,0,0,.2);
   34.26 +  @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);
   34.27 +  .box-shadow(@shadow);
   34.28 +
   34.29 +  // Reset the shadow
   34.30 +  &:active,
   34.31 +  &.active {
   34.32 +    .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
   34.33 +  }
   34.34 +}
   34.35 +
   34.36 +// Mixin for generating new styles
   34.37 +.btn-styles(@btn-color: #555) {
   34.38 +  #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));
   34.39 +  .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners
   34.40 +  background-repeat: repeat-x;
   34.41 +  border-color: darken(@btn-color, 14%);
   34.42 +
   34.43 +  &:hover,
   34.44 +  &:focus  {
   34.45 +    background-color: darken(@btn-color, 12%);
   34.46 +    background-position: 0 -15px;
   34.47 +  }
   34.48 +
   34.49 +  &:active,
   34.50 +  &.active {
   34.51 +    background-color: darken(@btn-color, 12%);
   34.52 +    border-color: darken(@btn-color, 14%);
   34.53 +  }
   34.54 +}
   34.55 +
   34.56 +// Common styles
   34.57 +.btn {
   34.58 +  // Remove the gradient for the pressed/active state
   34.59 +  &:active,
   34.60 +  &.active {
   34.61 +    background-image: none;
   34.62 +  }
   34.63 +}
   34.64 +
   34.65 +// Apply the mixin to the buttons
   34.66 +.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }
   34.67 +.btn-primary { .btn-styles(@btn-primary-bg); }
   34.68 +.btn-success { .btn-styles(@btn-success-bg); }
   34.69 +.btn-warning { .btn-styles(@btn-warning-bg); }
   34.70 +.btn-danger  { .btn-styles(@btn-danger-bg); }
   34.71 +.btn-info    { .btn-styles(@btn-info-bg); }
   34.72 +
   34.73 +
   34.74 +
   34.75 +//
   34.76 +// Images
   34.77 +// --------------------------------------------------
   34.78 +
   34.79 +.thumbnail,
   34.80 +.img-thumbnail {
   34.81 +  .box-shadow(0 1px 2px rgba(0,0,0,.075));
   34.82 +}
   34.83 +
   34.84 +
   34.85 +
   34.86 +//
   34.87 +// Dropdowns
   34.88 +// --------------------------------------------------
   34.89 +
   34.90 +.dropdown-menu > li > a:hover,
   34.91 +.dropdown-menu > li > a:focus {
   34.92 +  #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));
   34.93 +  background-color: darken(@dropdown-link-hover-bg, 5%);
   34.94 +}
   34.95 +.dropdown-menu > .active > a,
   34.96 +.dropdown-menu > .active > a:hover,
   34.97 +.dropdown-menu > .active > a:focus {
   34.98 +  #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));
   34.99 +  background-color: darken(@dropdown-link-active-bg, 5%);
  34.100 +}
  34.101 +
  34.102 +
  34.103 +
  34.104 +//
  34.105 +// Navbar
  34.106 +// --------------------------------------------------
  34.107 +
  34.108 +// Default navbar
  34.109 +.navbar-default {
  34.110 +  #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);
  34.111 +  .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered
  34.112 +  border-radius: @navbar-border-radius;
  34.113 +  @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);
  34.114 +  .box-shadow(@shadow);
  34.115 +
  34.116 +  .navbar-nav > .active > a {
  34.117 +    #gradient > .vertical(@start-color: darken(@navbar-default-bg, 5%); @end-color: darken(@navbar-default-bg, 2%));
  34.118 +    .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));
  34.119 +  }
  34.120 +}
  34.121 +.navbar-brand,
  34.122 +.navbar-nav > li > a {
  34.123 +  text-shadow: 0 1px 0 rgba(255,255,255,.25);
  34.124 +}
  34.125 +
  34.126 +// Inverted navbar
  34.127 +.navbar-inverse {
  34.128 +  #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);
  34.129 +  .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered
  34.130 +
  34.131 +  .navbar-nav > .active > a {
  34.132 +    #gradient > .vertical(@start-color: @navbar-inverse-bg; @end-color: lighten(@navbar-inverse-bg, 2.5%));
  34.133 +    .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));
  34.134 +  }
  34.135 +
  34.136 +  .navbar-brand,
  34.137 +  .navbar-nav > li > a {
  34.138 +    text-shadow: 0 -1px 0 rgba(0,0,0,.25);
  34.139 +  }
  34.140 +}
  34.141 +
  34.142 +// Undo rounded corners in static and fixed navbars
  34.143 +.navbar-static-top,
  34.144 +.navbar-fixed-top,
  34.145 +.navbar-fixed-bottom {
  34.146 +  border-radius: 0;
  34.147 +}
  34.148 +
  34.149 +
  34.150 +
  34.151 +//
  34.152 +// Alerts
  34.153 +// --------------------------------------------------
  34.154 +
  34.155 +// Common styles
  34.156 +.alert {
  34.157 +  text-shadow: 0 1px 0 rgba(255,255,255,.2);
  34.158 +  @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);
  34.159 +  .box-shadow(@shadow);
  34.160 +}
  34.161 +
  34.162 +// Mixin for generating new styles
  34.163 +.alert-styles(@color) {
  34.164 +  #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));
  34.165 +  border-color: darken(@color, 15%);
  34.166 +}
  34.167 +
  34.168 +// Apply the mixin to the alerts
  34.169 +.alert-success    { .alert-styles(@alert-success-bg); }
  34.170 +.alert-info       { .alert-styles(@alert-info-bg); }
  34.171 +.alert-warning    { .alert-styles(@alert-warning-bg); }
  34.172 +.alert-danger     { .alert-styles(@alert-danger-bg); }
  34.173 +
  34.174 +
  34.175 +
  34.176 +//
  34.177 +// Progress bars
  34.178 +// --------------------------------------------------
  34.179 +
  34.180 +// Give the progress background some depth
  34.181 +.progress {
  34.182 +  #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)
  34.183 +}
  34.184 +
  34.185 +// Mixin for generating new styles
  34.186 +.progress-bar-styles(@color) {
  34.187 +  #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));
  34.188 +}
  34.189 +
  34.190 +// Apply the mixin to the progress bars
  34.191 +.progress-bar            { .progress-bar-styles(@progress-bar-bg); }
  34.192 +.progress-bar-success    { .progress-bar-styles(@progress-bar-success-bg); }
  34.193 +.progress-bar-info       { .progress-bar-styles(@progress-bar-info-bg); }
  34.194 +.progress-bar-warning    { .progress-bar-styles(@progress-bar-warning-bg); }
  34.195 +.progress-bar-danger     { .progress-bar-styles(@progress-bar-danger-bg); }
  34.196 +
  34.197 +
  34.198 +
  34.199 +//
  34.200 +// List groups
  34.201 +// --------------------------------------------------
  34.202 +
  34.203 +.list-group {
  34.204 +  border-radius: @border-radius-base;
  34.205 +  .box-shadow(0 1px 2px rgba(0,0,0,.075));
  34.206 +}
  34.207 +.list-group-item.active,
  34.208 +.list-group-item.active:hover,
  34.209 +.list-group-item.active:focus {
  34.210 +  text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);
  34.211 +  #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));
  34.212 +  border-color: darken(@list-group-active-border, 7.5%);
  34.213 +}
  34.214 +
  34.215 +
  34.216 +
  34.217 +//
  34.218 +// Panels
  34.219 +// --------------------------------------------------
  34.220 +
  34.221 +// Common styles
  34.222 +.panel {
  34.223 +  .box-shadow(0 1px 2px rgba(0,0,0,.05));
  34.224 +}
  34.225 +
  34.226 +// Mixin for generating new styles
  34.227 +.panel-heading-styles(@color) {
  34.228 +  #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));
  34.229 +}
  34.230 +
  34.231 +// Apply the mixin to the panel headings only
  34.232 +.panel-default > .panel-heading   { .panel-heading-styles(@panel-default-heading-bg); }
  34.233 +.panel-primary > .panel-heading   { .panel-heading-styles(@panel-primary-heading-bg); }
  34.234 +.panel-success > .panel-heading   { .panel-heading-styles(@panel-success-heading-bg); }
  34.235 +.panel-info > .panel-heading      { .panel-heading-styles(@panel-info-heading-bg); }
  34.236 +.panel-warning > .panel-heading   { .panel-heading-styles(@panel-warning-heading-bg); }
  34.237 +.panel-danger > .panel-heading    { .panel-heading-styles(@panel-danger-heading-bg); }
  34.238 +
  34.239 +
  34.240 +
  34.241 +//
  34.242 +// Wells
  34.243 +// --------------------------------------------------
  34.244 +
  34.245 +.well {
  34.246 +  #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);
  34.247 +  border-color: darken(@well-bg, 10%);
  34.248 +  @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);
  34.249 +  .box-shadow(@shadow);
  34.250 +}
    35.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    35.2 +++ b/static/less/thumbnails.less	Fri Dec 20 22:30:44 2013 +0100
    35.3 @@ -0,0 +1,36 @@
    35.4 +//
    35.5 +// Thumbnails
    35.6 +// --------------------------------------------------
    35.7 +
    35.8 +
    35.9 +// Mixin and adjust the regular image class
   35.10 +.thumbnail {
   35.11 +  display: block;
   35.12 +  padding: @thumbnail-padding;
   35.13 +  margin-bottom: @line-height-computed;
   35.14 +  line-height: @line-height-base;
   35.15 +  background-color: @thumbnail-bg;
   35.16 +  border: 1px solid @thumbnail-border;
   35.17 +  border-radius: @thumbnail-border-radius;
   35.18 +  .transition(all .2s ease-in-out);
   35.19 +
   35.20 +  > img,
   35.21 +  a > img {
   35.22 +    .img-responsive();
   35.23 +    margin-left: auto;
   35.24 +    margin-right: auto;
   35.25 +  }
   35.26 +
   35.27 +  // Add a hover state for linked versions only
   35.28 +  a&:hover,
   35.29 +  a&:focus,
   35.30 +  a&.active {
   35.31 +    border-color: @link-color;
   35.32 +  }
   35.33 +
   35.34 +  // Image captions
   35.35 +  .caption {
   35.36 +    padding: @thumbnail-caption-padding;
   35.37 +    color: @thumbnail-caption-color;
   35.38 +  }
   35.39 +}
    36.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    36.2 +++ b/static/less/tooltip.less	Fri Dec 20 22:30:44 2013 +0100
    36.3 @@ -0,0 +1,95 @@
    36.4 +//
    36.5 +// Tooltips
    36.6 +// --------------------------------------------------
    36.7 +
    36.8 +
    36.9 +// Base class
   36.10 +.tooltip {
   36.11 +  position: absolute;
   36.12 +  z-index: @zindex-tooltip;
   36.13 +  display: block;
   36.14 +  visibility: visible;
   36.15 +  font-size: @font-size-small;
   36.16 +  line-height: 1.4;
   36.17 +  .opacity(0);
   36.18 +
   36.19 +  &.in     { .opacity(.9); }
   36.20 +  &.top    { margin-top:  -3px; padding: @tooltip-arrow-width 0; }
   36.21 +  &.right  { margin-left:  3px; padding: 0 @tooltip-arrow-width; }
   36.22 +  &.bottom { margin-top:   3px; padding: @tooltip-arrow-width 0; }
   36.23 +  &.left   { margin-left: -3px; padding: 0 @tooltip-arrow-width; }
   36.24 +}
   36.25 +
   36.26 +// Wrapper for the tooltip content
   36.27 +.tooltip-inner {
   36.28 +  max-width: @tooltip-max-width;
   36.29 +  padding: 3px 8px;
   36.30 +  color: @tooltip-color;
   36.31 +  text-align: center;
   36.32 +  text-decoration: none;
   36.33 +  background-color: @tooltip-bg;
   36.34 +  border-radius: @border-radius-base;
   36.35 +}
   36.36 +
   36.37 +// Arrows
   36.38 +.tooltip-arrow {
   36.39 +  position: absolute;
   36.40 +  width: 0;
   36.41 +  height: 0;
   36.42 +  border-color: transparent;
   36.43 +  border-style: solid;
   36.44 +}
   36.45 +.tooltip {
   36.46 +  &.top .tooltip-arrow {
   36.47 +    bottom: 0;
   36.48 +    left: 50%;
   36.49 +    margin-left: -@tooltip-arrow-width;
   36.50 +    border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
   36.51 +    border-top-color: @tooltip-arrow-color;
   36.52 +  }
   36.53 +  &.top-left .tooltip-arrow {
   36.54 +    bottom: 0;
   36.55 +    left: @tooltip-arrow-width;
   36.56 +    border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
   36.57 +    border-top-color: @tooltip-arrow-color;
   36.58 +  }
   36.59 +  &.top-right .tooltip-arrow {
   36.60 +    bottom: 0;
   36.61 +    right: @tooltip-arrow-width;
   36.62 +    border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
   36.63 +    border-top-color: @tooltip-arrow-color;
   36.64 +  }
   36.65 +  &.right .tooltip-arrow {
   36.66 +    top: 50%;
   36.67 +    left: 0;
   36.68 +    margin-top: -@tooltip-arrow-width;
   36.69 +    border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0;
   36.70 +    border-right-color: @tooltip-arrow-color;
   36.71 +  }
   36.72 +  &.left .tooltip-arrow {
   36.73 +    top: 50%;
   36.74 +    right: 0;
   36.75 +    margin-top: -@tooltip-arrow-width;
   36.76 +    border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width;
   36.77 +    border-left-color: @tooltip-arrow-color;
   36.78 +  }
   36.79 +  &.bottom .tooltip-arrow {
   36.80 +    top: 0;
   36.81 +    left: 50%;
   36.82 +    margin-left: -@tooltip-arrow-width;
   36.83 +    border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
   36.84 +    border-bottom-color: @tooltip-arrow-color;
   36.85 +  }
   36.86 +  &.bottom-left .tooltip-arrow {
   36.87 +    top: 0;
   36.88 +    left: @tooltip-arrow-width;
   36.89 +    border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
   36.90 +    border-bottom-color: @tooltip-arrow-color;
   36.91 +  }
   36.92 +  &.bottom-right .tooltip-arrow {
   36.93 +    top: 0;
   36.94 +    right: @tooltip-arrow-width;
   36.95 +    border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
   36.96 +    border-bottom-color: @tooltip-arrow-color;
   36.97 +  }
   36.98 +}
    37.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    37.2 +++ b/static/less/type.less	Fri Dec 20 22:30:44 2013 +0100
    37.3 @@ -0,0 +1,281 @@
    37.4 +//
    37.5 +// Typography
    37.6 +// --------------------------------------------------
    37.7 +
    37.8 +
    37.9 +// Headings
   37.10 +// -------------------------
   37.11 +
   37.12 +h1, h2, h3, h4, h5, h6,
   37.13 +.h1, .h2, .h3, .h4, .h5, .h6 {
   37.14 +  font-family: @headings-font-family;
   37.15 +  font-weight: @headings-font-weight;
   37.16 +  line-height: @headings-line-height;
   37.17 +  color: @headings-color;
   37.18 +
   37.19 +  small,
   37.20 +  .small {
   37.21 +    font-weight: normal;
   37.22 +    line-height: 1;
   37.23 +    color: @headings-small-color;
   37.24 +  }
   37.25 +}
   37.26 +
   37.27 +h1,
   37.28 +h2,
   37.29 +h3 {
   37.30 +  margin-top: @line-height-computed;
   37.31 +  margin-bottom: (@line-height-computed / 2);
   37.32 +
   37.33 +  small,
   37.34 +  .small {
   37.35 +    font-size: 65%;
   37.36 +  }
   37.37 +}
   37.38 +h4,
   37.39 +h5,
   37.40 +h6 {
   37.41 +  margin-top: (@line-height-computed / 2);
   37.42 +  margin-bottom: (@line-height-computed / 2);
   37.43 +
   37.44 +  small,
   37.45 +  .small {
   37.46 +    font-size: 75%;
   37.47 +  }
   37.48 +}
   37.49 +
   37.50 +h1, .h1 { font-size: @font-size-h1; }
   37.51 +h2, .h2 { font-size: @font-size-h2; }
   37.52 +h3, .h3 { font-size: @font-size-h3; }
   37.53 +h4, .h4 { font-size: @font-size-h4; }
   37.54 +h5, .h5 { font-size: @font-size-h5; }
   37.55 +h6, .h6 { font-size: @font-size-h6; }
   37.56 +
   37.57 +
   37.58 +// Body text
   37.59 +// -------------------------
   37.60 +
   37.61 +p {
   37.62 +  margin: 0 0 (@line-height-computed / 2);
   37.63 +}
   37.64 +
   37.65 +.lead {
   37.66 +  margin-bottom: @line-height-computed;
   37.67 +  font-size: floor(@font-size-base * 1.15);
   37.68 +  font-weight: 200;
   37.69 +  line-height: 1.4;
   37.70 +
   37.71 +  @media (min-width: @screen-sm-min) {
   37.72 +    font-size: (@font-size-base * 1.5);
   37.73 +  }
   37.74 +}
   37.75 +
   37.76 +
   37.77 +// Emphasis & misc
   37.78 +// -------------------------
   37.79 +
   37.80 +// Ex: 14px base font * 85% = about 12px
   37.81 +small,
   37.82 +.small  { font-size: 85%; }
   37.83 +
   37.84 +// Undo browser default styling
   37.85 +cite    { font-style: normal; }
   37.86 +
   37.87 +// Contextual emphasis
   37.88 +.text-muted {
   37.89 +  color: @text-muted;
   37.90 +}
   37.91 +.text-primary {
   37.92 +  color: @brand-primary;
   37.93 +  &:hover {
   37.94 +    color: darken(@brand-primary, 10%);
   37.95 +  }
   37.96 +}
   37.97 +.text-warning {
   37.98 +  color: @state-warning-text;
   37.99 +  &:hover {
  37.100 +    color: darken(@state-warning-text, 10%);
  37.101 +  }
  37.102 +}
  37.103 +.text-danger {
  37.104 +  color: @state-danger-text;
  37.105 +  &:hover {
  37.106 +    color: darken(@state-danger-text, 10%);
  37.107 +  }
  37.108 +}
  37.109 +.text-success {
  37.110 +  color: @state-success-text;
  37.111 +  &:hover {
  37.112 +    color: darken(@state-success-text, 10%);
  37.113 +  }
  37.114 +}
  37.115 +.text-info {
  37.116 +  color: @state-info-text;
  37.117 +  &:hover {
  37.118 +    color: darken(@state-info-text, 10%);
  37.119 +  }
  37.120 +}
  37.121 +
  37.122 +// Alignment
  37.123 +.text-left           { text-align: left; }
  37.124 +.text-right          { text-align: right; }
  37.125 +.text-center         { text-align: center; }
  37.126 +
  37.127 +
  37.128 +// Page header
  37.129 +// -------------------------
  37.130 +
  37.131 +.page-header {
  37.132 +  padding-bottom: ((@line-height-computed / 2) - 1);
  37.133 +  margin: (@line-height-computed * 2) 0 @line-height-computed;
  37.134 +  border-bottom: 1px solid @page-header-border-color;
  37.135 +}
  37.136 +
  37.137 +
  37.138 +// Lists
  37.139 +// --------------------------------------------------
  37.140 +
  37.141 +// Unordered and Ordered lists
  37.142 +ul,
  37.143 +ol {
  37.144 +  margin-top: 0;
  37.145 +  margin-bottom: (@line-height-computed / 2);
  37.146 +  ul,
  37.147 +  ol {
  37.148 +    margin-bottom: 0;
  37.149 +  }
  37.150 +}
  37.151 +
  37.152 +// List options
  37.153 +
  37.154 +// Unstyled keeps list items block level, just removes default browser padding and list-style
  37.155 +.list-unstyled {
  37.156 +  padding-left: 0;
  37.157 +  list-style: none;
  37.158 +}
  37.159 +
  37.160 +// Inline turns list items into inline-block
  37.161 +.list-inline {
  37.162 +  .list-unstyled();
  37.163 +
  37.164 +  > li {
  37.165 +    display: inline-block;
  37.166 +    padding-left: 5px;
  37.167 +    padding-right: 5px;
  37.168 +
  37.169 +    &:first-child {
  37.170 +      padding-left: 0;
  37.171 +    }
  37.172 +  }
  37.173 +}
  37.174 +
  37.175 +// Description Lists
  37.176 +dl {
  37.177 +  margin-top: 0; // Remove browser default
  37.178 +  margin-bottom: @line-height-computed;
  37.179 +}
  37.180 +dt,
  37.181 +dd {
  37.182 +  line-height: @line-height-base;
  37.183 +}
  37.184 +dt {
  37.185 +  font-weight: bold;
  37.186 +}
  37.187 +dd {
  37.188 +  margin-left: 0; // Undo browser default
  37.189 +}
  37.190 +
  37.191 +// Horizontal description lists
  37.192 +//
  37.193 +// Defaults to being stacked without any of the below styles applied, until the
  37.194 +// grid breakpoint is reached (default of ~768px).
  37.195 +
  37.196 +@media (min-width: @grid-float-breakpoint) {
  37.197 +  .dl-horizontal {
  37.198 +    dt {
  37.199 +      float: left;
  37.200 +      width: (@component-offset-horizontal - 20);
  37.201 +      clear: left;
  37.202 +      text-align: right;
  37.203 +      .text-overflow();
  37.204 +    }
  37.205 +    dd {
  37.206 +      margin-left: @component-offset-horizontal;
  37.207 +      .clearfix(); // Clear the floated `dt` if an empty `dd` is present
  37.208 +    }
  37.209 +  }
  37.210 +}
  37.211 +
  37.212 +// MISC
  37.213 +// ----
  37.214 +
  37.215 +// Abbreviations and acronyms
  37.216 +abbr[title],
  37.217 +// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257
  37.218 +abbr[data-original-title] {
  37.219 +  cursor: help;
  37.220 +  border-bottom: 1px dotted @abbr-border-color;
  37.221 +}
  37.222 +.initialism {
  37.223 +  font-size: 90%;
  37.224 +  text-transform: uppercase;
  37.225 +}
  37.226 +
  37.227 +// Blockquotes
  37.228 +blockquote {
  37.229 +  padding: (@line-height-computed / 2) @line-height-computed;
  37.230 +  margin: 0 0 @line-height-computed;
  37.231 +  border-left: 5px solid @blockquote-border-color;
  37.232 +  p {
  37.233 +    font-size: (@font-size-base * 1.25);
  37.234 +    font-weight: 300;
  37.235 +    line-height: 1.25;
  37.236 +  }
  37.237 +  p:last-child {
  37.238 +    margin-bottom: 0;
  37.239 +  }
  37.240 +  small,
  37.241 +  .small {
  37.242 +    display: block;
  37.243 +    line-height: @line-height-base;
  37.244 +    color: @blockquote-small-color;
  37.245 +    &:before {
  37.246 +      content: '\2014 \00A0'; // EM DASH, NBSP
  37.247 +    }
  37.248 +  }
  37.249 +
  37.250 +  // Float right with text-align: right
  37.251 +  &.pull-right {
  37.252 +    padding-right: 15px;
  37.253 +    padding-left: 0;
  37.254 +    border-right: 5px solid @blockquote-border-color;
  37.255 +    border-left: 0;
  37.256 +    p,
  37.257 +    small,
  37.258 +    .small {
  37.259 +      text-align: right;
  37.260 +    }
  37.261 +    small,
  37.262 +    .small {
  37.263 +      &:before {
  37.264 +        content: '';
  37.265 +      }
  37.266 +      &:after {
  37.267 +        content: '\00A0 \2014'; // NBSP, EM DASH
  37.268 +      }
  37.269 +    }
  37.270 +  }
  37.271 +}
  37.272 +
  37.273 +// Quotes
  37.274 +blockquote:before,
  37.275 +blockquote:after {
  37.276 +  content: "";
  37.277 +}
  37.278 +
  37.279 +// Addresses
  37.280 +address {
  37.281 +  margin-bottom: @line-height-computed;
  37.282 +  font-style: normal;
  37.283 +  line-height: @line-height-base;
  37.284 +}
    38.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    38.2 +++ b/static/less/utilities.less	Fri Dec 20 22:30:44 2013 +0100
    38.3 @@ -0,0 +1,56 @@
    38.4 +//
    38.5 +// Utility classes
    38.6 +// --------------------------------------------------
    38.7 +
    38.8 +
    38.9 +// Floats
   38.10 +// -------------------------
   38.11 +
   38.12 +.clearfix {
   38.13 +  .clearfix();
   38.14 +}
   38.15 +.center-block {
   38.16 +  .center-block();
   38.17 +}
   38.18 +.pull-right {
   38.19 +  float: right !important;
   38.20 +}
   38.21 +.pull-left {
   38.22 +  float: left !important;
   38.23 +}
   38.24 +
   38.25 +
   38.26 +// Toggling content
   38.27 +// -------------------------
   38.28 +
   38.29 +// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1
   38.30 +.hide {
   38.31 +  display: none !important;
   38.32 +}
   38.33 +.show {
   38.34 +  display: block !important;
   38.35 +}
   38.36 +.invisible {
   38.37 +  visibility: hidden;
   38.38 +}
   38.39 +.text-hide {
   38.40 +  .text-hide();
   38.41 +}
   38.42 +
   38.43 +
   38.44 +// Hide from screenreaders and browsers
   38.45 +//
   38.46 +// Credit: HTML5 Boilerplate
   38.47 +
   38.48 +.hidden {
   38.49 +  display: none !important;
   38.50 +  visibility: hidden !important;
   38.51 +}
   38.52 +
   38.53 +
   38.54 +// For Affix plugin
   38.55 +// -------------------------
   38.56 +
   38.57 +.affix {
   38.58 +  position: fixed;
   38.59 +}
    39.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    39.2 +++ b/static/less/variables.less	Fri Dec 20 22:30:44 2013 +0100
    39.3 @@ -0,0 +1,642 @@
    39.4 +//
    39.5 +// Variables
    39.6 +// --------------------------------------------------
    39.7 +
    39.8 +
    39.9 +// Global values
   39.10 +// --------------------------------------------------
   39.11 +
   39.12 +// Grays
   39.13 +// -------------------------
   39.14 +
   39.15 +@gray-darker:            lighten(#000, 13.5%); // #222
   39.16 +@gray-dark:              lighten(#000, 20%);   // #333
   39.17 +@gray:                   lighten(#000, 33.5%); // #555
   39.18 +@gray-light:             lighten(#000, 60%);   // #999
   39.19 +@gray-lighter:           lighten(#000, 93.5%); // #eee
   39.20 +
   39.21 +// Brand colors
   39.22 +// -------------------------
   39.23 +
   39.24 +@brand-primary:         #428bca;
   39.25 +@brand-success:         #5cb85c;
   39.26 +@brand-warning:         #f0ad4e;
   39.27 +@brand-danger:          #d9534f;
   39.28 +@brand-info:            #5bc0de;
   39.29 +
   39.30 +// Scaffolding
   39.31 +// -------------------------
   39.32 +
   39.33 +@body-bg:               #fff;
   39.34 +@text-color:            @gray-dark;
   39.35 +
   39.36 +// Links
   39.37 +// -------------------------
   39.38 +
   39.39 +@link-color:            @brand-primary;
   39.40 +@link-hover-color:      darken(@link-color, 15%);
   39.41 +
   39.42 +// Typography
   39.43 +// -------------------------
   39.44 +
   39.45 +@font-family-sans-serif:  "Helvetica Neue", Helvetica, Arial, sans-serif;
   39.46 +@font-family-serif:       Georgia, "Times New Roman", Times, serif;
   39.47 +@font-family-monospace:   Menlo, Monaco, Consolas, "Courier New", monospace;
   39.48 +@font-family-base:        @font-family-sans-serif;
   39.49 +
   39.50 +@font-size-base:          14px;
   39.51 +@font-size-large:         ceil(@font-size-base * 1.25); // ~18px
   39.52 +@font-size-small:         ceil(@font-size-base * 0.85); // ~12px
   39.53 +
   39.54 +@font-size-h1:            floor(@font-size-base * 2.6); // ~36px
   39.55 +@font-size-h2:            floor(@font-size-base * 2.15); // ~30px
   39.56 +@font-size-h3:            ceil(@font-size-base * 1.7); // ~24px
   39.57 +@font-size-h4:            ceil(@font-size-base * 1.25); // ~18px
   39.58 +@font-size-h5:            @font-size-base;
   39.59 +@font-size-h6:            ceil(@font-size-base * 0.85); // ~12px
   39.60 +
   39.61 +@line-height-base:        1.428571429; // 20/14
   39.62 +@line-height-computed:    floor(@font-size-base * @line-height-base); // ~20px
   39.63 +
   39.64 +@headings-font-family:    @font-family-base;
   39.65 +@headings-font-weight:    500;
   39.66 +@headings-line-height:    1.1;
   39.67 +@headings-color:          inherit;
   39.68 +
   39.69 +
   39.70 +// Iconography
   39.71 +// -------------------------
   39.72 +
   39.73 +@icon-font-path:          "../fonts/";
   39.74 +@icon-font-name:          "glyphicons-halflings-regular";
   39.75 +
   39.76 +
   39.77 +// Components
   39.78 +// -------------------------
   39.79 +// Based on 14px font-size and 1.428 line-height (~20px to start)
   39.80 +
   39.81 +@padding-base-vertical:          6px;
   39.82 +@padding-base-horizontal:        12px;
   39.83 +
   39.84 +@padding-large-vertical:         10px;
   39.85 +@padding-large-horizontal:       16px;
   39.86 +
   39.87 +@padding-small-vertical:         5px;
   39.88 +@padding-small-horizontal:       10px;
   39.89 +
   39.90 +@padding-xs-vertical:            1px;
   39.91 +@padding-xs-horizontal:          5px;
   39.92 +
   39.93 +@line-height-large:              1.33;
   39.94 +@line-height-small:              1.5;
   39.95 +
   39.96 +@border-radius-base:             4px;
   39.97 +@border-radius-large:            6px;
   39.98 +@border-radius-small:            3px;
   39.99 +
  39.100 +@component-active-color:         #fff;
  39.101 +@component-active-bg:            @brand-primary;
  39.102 +
  39.103 +@caret-width-base:               4px;
  39.104 +@caret-width-large:              5px;
  39.105 +
  39.106 +// Tables
  39.107 +// -------------------------
  39.108 +
  39.109 +@table-cell-padding:                 8px;
  39.110 +@table-condensed-cell-padding:       5px;
  39.111 +
  39.112 +@table-bg:                           transparent; // overall background-color
  39.113 +@table-bg-accent:                    #f9f9f9; // for striping
  39.114 +@table-bg-hover:                     #f5f5f5;
  39.115 +@table-bg-active:                    @table-bg-hover;
  39.116 +
  39.117 +@table-border-color:                 #ddd; // table and cell border
  39.118 +
  39.119 +
  39.120 +// Buttons
  39.121 +// -------------------------
  39.122 +
  39.123 +@btn-font-weight:                normal;
  39.124 +
  39.125 +@btn-default-color:              #333;
  39.126 +@btn-default-bg:                 #fff;
  39.127 +@btn-default-border:             #ccc;
  39.128 +
  39.129 +@btn-primary-color:              #fff;
  39.130 +@btn-primary-bg:                 @brand-primary;
  39.131 +@btn-primary-border:             darken(@btn-primary-bg, 5%);
  39.132 +
  39.133 +@btn-success-color:              #fff;
  39.134 +@btn-success-bg:                 @brand-success;
  39.135 +@btn-success-border:             darken(@btn-success-bg, 5%);
  39.136 +
  39.137 +@btn-warning-color:              #fff;
  39.138 +@btn-warning-bg:                 @brand-warning;
  39.139 +@btn-warning-border:             darken(@btn-warning-bg, 5%);
  39.140 +
  39.141 +@btn-danger-color:               #fff;
  39.142 +@btn-danger-bg:                  @brand-danger;
  39.143 +@btn-danger-border:              darken(@btn-danger-bg, 5%);
  39.144 +
  39.145 +@btn-info-color:                 #fff;
  39.146 +@btn-info-bg:                    @brand-info;
  39.147 +@btn-info-border:                darken(@btn-info-bg, 5%);
  39.148 +
  39.149 +@btn-link-disabled-color:        @gray-light;
  39.150 +
  39.151 +
  39.152 +// Forms
  39.153 +// -------------------------
  39.154 +
  39.155 +@input-bg:                       #fff;
  39.156 +@input-bg-disabled:              @gray-lighter;
  39.157 +
  39.158 +@input-color:                    @gray;
  39.159 +@input-border:                   #ccc;
  39.160 +@input-border-radius:            @border-radius-base;
  39.161 +@input-border-focus:             #66afe9;
  39.162 +
  39.163 +@input-color-placeholder:        @gray-light;
  39.164 +
  39.165 +@input-height-base:              (@line-height-computed + (@padding-base-vertical * 2) + 2);
  39.166 +@input-height-large:             (ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2);
  39.167 +@input-height-small:             (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2);
  39.168 +
  39.169 +@legend-color:                   @gray-dark;
  39.170 +@legend-border-color:            #e5e5e5;
  39.171 +
  39.172 +@input-group-addon-bg:           @gray-lighter;
  39.173 +@input-group-addon-border-color: @input-border;
  39.174 +
  39.175 +
  39.176 +// Dropdowns
  39.177 +// -------------------------
  39.178 +
  39.179 +@dropdown-bg:                    #fff;
  39.180 +@dropdown-border:                rgba(0,0,0,.15);
  39.181 +@dropdown-fallback-border:       #ccc;
  39.182 +@dropdown-divider-bg:            #e5e5e5;
  39.183 +
  39.184 +@dropdown-link-color:            @gray-dark;
  39.185 +@dropdown-link-hover-color:      darken(@gray-dark, 5%);
  39.186 +@dropdown-link-hover-bg:         #f5f5f5;
  39.187 +
  39.188 +@dropdown-link-active-color:     @component-active-color;
  39.189 +@dropdown-link-active-bg:        @component-active-bg;
  39.190 +
  39.191 +@dropdown-link-disabled-color:   @gray-light;
  39.192 +
  39.193 +@dropdown-header-color:          @gray-light;
  39.194 +
  39.195 +
  39.196 +// COMPONENT VARIABLES
  39.197 +// --------------------------------------------------
  39.198 +
  39.199 +
  39.200 +// Z-index master list
  39.201 +// -------------------------
  39.202 +// Used for a bird's eye view of components dependent on the z-axis
  39.203 +// Try to avoid customizing these :)
  39.204 +
  39.205 +@zindex-navbar:            1000;
  39.206 +@zindex-dropdown:          1000;
  39.207 +@zindex-popover:           1010;
  39.208 +@zindex-tooltip:           1030;
  39.209 +@zindex-navbar-fixed:      1030;
  39.210 +@zindex-modal-background:  1040;
  39.211 +@zindex-modal:             1050;
  39.212 +
  39.213 +// Media queries breakpoints
  39.214 +// --------------------------------------------------
  39.215 +
  39.216 +// Extra small screen / phone
  39.217 +// Note: Deprecated @screen-xs and @screen-phone as of v3.0.1
  39.218 +@screen-xs:                  480px;
  39.219 +@screen-xs-min:              @screen-xs;
  39.220 +@screen-phone:               @screen-xs-min;
  39.221 +
  39.222 +// Small screen / tablet
  39.223 +// Note: Deprecated @screen-sm and @screen-tablet as of v3.0.1
  39.224 +@screen-sm:                  768px;
  39.225 +@screen-sm-min:              @screen-sm;
  39.226 +@screen-tablet:              @screen-sm-min;
  39.227 +
  39.228 +// Medium screen / desktop
  39.229 +// Note: Deprecated @screen-md and @screen-desktop as of v3.0.1
  39.230 +@screen-md:                  992px;
  39.231 +@screen-md-min:              @screen-md;
  39.232 +@screen-desktop:             @screen-md-min;
  39.233 +
  39.234 +// Large screen / wide desktop
  39.235 +// Note: Deprecated @screen-lg and @screen-lg-desktop as of v3.0.1
  39.236 +@screen-lg:                  1200px;
  39.237 +@screen-lg-min:              @screen-lg;
  39.238 +@screen-lg-desktop:          @screen-lg-min;
  39.239 +
  39.240 +// So media queries don't overlap when required, provide a maximum
  39.241 +@screen-xs-max:              (@screen-sm-min - 1);
  39.242 +@screen-sm-max:              (@screen-md-min - 1);
  39.243 +@screen-md-max:              (@screen-lg-min - 1);
  39.244 +
  39.245 +
  39.246 +// Grid system
  39.247 +// --------------------------------------------------
  39.248 +
  39.249 +// Number of columns in the grid system
  39.250 +@grid-columns:              12;
  39.251 +// Padding, to be divided by two and applied to the left and right of all columns
  39.252 +@grid-gutter-width:         30px;
  39.253 +
  39.254 +// Navbar collapse
  39.255 +
  39.256 +// Point at which the navbar becomes uncollapsed
  39.257 +@grid-float-breakpoint:     @screen-sm-min;
  39.258 +// Point at which the navbar begins collapsing
  39.259 +@grid-float-breakpoint-max: (@grid-float-breakpoint - 1);
  39.260 +
  39.261 +
  39.262 +// Navbar
  39.263 +// -------------------------
  39.264 +
  39.265 +// Basics of a navbar
  39.266 +@navbar-height:                    50px;
  39.267 +@navbar-margin-bottom:             @line-height-computed;
  39.268 +@navbar-border-radius:             @border-radius-base;
  39.269 +@navbar-padding-horizontal:        floor(@grid-gutter-width / 2);
  39.270 +@navbar-padding-vertical:          ((@navbar-height - @line-height-computed) / 2);
  39.271 +
  39.272 +@navbar-default-color:             #777;
  39.273 +@navbar-default-bg:                #f8f8f8;
  39.274 +@navbar-default-border:            darken(@navbar-default-bg, 6.5%);
  39.275 +
  39.276 +// Navbar links
  39.277 +@navbar-default-link-color:                #777;
  39.278 +@navbar-default-link-hover-color:          #333;
  39.279 +@navbar-default-link-hover-bg:             transparent;
  39.280 +@navbar-default-link-active-color:         #555;
  39.281 +@navbar-default-link-active-bg:            darken(@navbar-default-bg, 6.5%);
  39.282 +@navbar-default-link-disabled-color:       #ccc;
  39.283 +@navbar-default-link-disabled-bg:          transparent;
  39.284 +
  39.285 +// Navbar brand label
  39.286 +@navbar-default-brand-color:               @navbar-default-link-color;
  39.287 +@navbar-default-brand-hover-color:         darken(@navbar-default-brand-color, 10%);
  39.288 +@navbar-default-brand-hover-bg:            transparent;
  39.289 +
  39.290 +// Navbar toggle
  39.291 +@navbar-default-toggle-hover-bg:           #ddd;
  39.292 +@navbar-default-toggle-icon-bar-bg:        #ccc;
  39.293 +@navbar-default-toggle-border-color:       #ddd;
  39.294 +
  39.295 +
  39.296 +// Inverted navbar
  39.297 +//
  39.298 +// Reset inverted navbar basics
  39.299 +@navbar-inverse-color:                      @gray-light;
  39.300 +@navbar-inverse-bg:                         #222;
  39.301 +@navbar-inverse-border:                     darken(@navbar-inverse-bg, 10%);
  39.302 +
  39.303 +// Inverted navbar links
  39.304 +@navbar-inverse-link-color:                 @gray-light;
  39.305 +@navbar-inverse-link-hover-color:           #fff;
  39.306 +@navbar-inverse-link-hover-bg:              transparent;
  39.307 +@navbar-inverse-link-active-color:          @navbar-inverse-link-hover-color;
  39.308 +@navbar-inverse-link-active-bg:             darken(@navbar-inverse-bg, 10%);
  39.309 +@navbar-inverse-link-disabled-color:        #444;
  39.310 +@navbar-inverse-link-disabled-bg:           transparent;
  39.311 +
  39.312 +// Inverted navbar brand label
  39.313 +@navbar-inverse-brand-color:                @navbar-inverse-link-color;
  39.314 +@navbar-inverse-brand-hover-color:          #fff;
  39.315 +@navbar-inverse-brand-hover-bg:             transparent;
  39.316 +
  39.317 +// Inverted navbar toggle
  39.318 +@navbar-inverse-toggle-hover-bg:            #333;
  39.319 +@navbar-inverse-toggle-icon-bar-bg:         #fff;
  39.320 +@navbar-inverse-toggle-border-color:        #333;
  39.321 +
  39.322 +
  39.323 +// Navs
  39.324 +// -------------------------
  39.325 +
  39.326 +@nav-link-padding:                          10px 15px;
  39.327 +@nav-link-hover-bg:                         @gray-lighter;
  39.328 +
  39.329 +@nav-disabled-link-color:                   @gray-light;
  39.330 +@nav-disabled-link-hover-color:             @gray-light;
  39.331 +
  39.332 +@nav-open-link-hover-color:                 #fff;
  39.333 +
  39.334 +// Tabs
  39.335 +@nav-tabs-border-color:                     #ddd;
  39.336 +
  39.337 +@nav-tabs-link-hover-border-color:          @gray-lighter;
  39.338 +
  39.339 +@nav-tabs-active-link-hover-bg:             @body-bg;
  39.340 +@nav-tabs-active-link-hover-color:          @gray;
  39.341 +@nav-tabs-active-link-hover-border-color:   #ddd;
  39.342 +
  39.343 +@nav-tabs-justified-link-border-color:            #ddd;
  39.344 +@nav-tabs-justified-active-link-border-color:     @body-bg;
  39.345 +
  39.346 +// Pills
  39.347 +@nav-pills-border-radius:                   @border-radius-base;
  39.348 +@nav-pills-active-link-hover-bg:            @component-active-bg;
  39.349 +@nav-pills-active-link-hover-color:         @component-active-color;
  39.350 +
  39.351 +
  39.352 +// Pagination
  39.353 +// -------------------------
  39.354 +
  39.355 +@pagination-bg:                        #fff;
  39.356 +@pagination-border:                    #ddd;
  39.357 +
  39.358 +@pagination-hover-bg:                  @gray-lighter;
  39.359 +
  39.360 +@pagination-active-bg:                 @brand-primary;
  39.361 +@pagination-active-color:              #fff;
  39.362 +
  39.363 +@pagination-disabled-color:            @gray-light;
  39.364 +
  39.365 +
  39.366 +// Pager
  39.367 +// -------------------------
  39.368 +
  39.369 +@pager-border-radius:                  15px;
  39.370 +@pager-disabled-color:                 @gray-light;
  39.371 +
  39.372 +
  39.373 +// Jumbotron
  39.374 +// -------------------------
  39.375 +
  39.376 +@jumbotron-padding:              30px;
  39.377 +@jumbotron-color:                inherit;
  39.378 +@jumbotron-bg:                   @gray-lighter;
  39.379 +@jumbotron-heading-color:        inherit;
  39.380 +@jumbotron-font-size:            ceil(@font-size-base * 1.5);
  39.381 +
  39.382 +
  39.383 +// Form states and alerts
  39.384 +// -------------------------
  39.385 +
  39.386 +@state-success-text:             #3c763d;
  39.387 +@state-success-bg:               #dff0d8;
  39.388 +@state-success-border:           darken(spin(@state-success-bg, -10), 5%);
  39.389 +
  39.390 +@state-info-text:                #31708f;
  39.391 +@state-info-bg:                  #d9edf7;
  39.392 +@state-info-border:              darken(spin(@state-info-bg, -10), 7%);
  39.393 +
  39.394 +@state-warning-text:             #8a6d3b;
  39.395 +@state-warning-bg:               #fcf8e3;
  39.396 +@state-warning-border:           darken(spin(@state-warning-bg, -10), 5%);
  39.397 +
  39.398 +@state-danger-text:              #a94442;
  39.399 +@state-danger-bg:                #f2dede;
  39.400 +@state-danger-border:            darken(spin(@state-danger-bg, -10), 5%);
  39.401 +
  39.402 +
  39.403 +// Tooltips
  39.404 +// -------------------------
  39.405 +@tooltip-max-width:           200px;
  39.406 +@tooltip-color:               #fff;
  39.407 +@tooltip-bg:                  #000;
  39.408 +
  39.409 +@tooltip-arrow-width:         5px;
  39.410 +@tooltip-arrow-color:         @tooltip-bg;
  39.411 +
  39.412 +
  39.413 +// Popovers
  39.414 +// -------------------------
  39.415 +@popover-bg:                          #fff;
  39.416 +@popover-max-width:                   276px;
  39.417 +@popover-border-color:                rgba(0,0,0,.2);
  39.418 +@popover-fallback-border-color:       #ccc;
  39.419 +
  39.420 +@popover-title-bg:                    darken(@popover-bg, 3%);
  39.421 +
  39.422 +@popover-arrow-width:                 10px;
  39.423 +@popover-arrow-color:                 #fff;
  39.424 +
  39.425 +@popover-arrow-outer-width:           (@popover-arrow-width + 1);
  39.426 +@popover-arrow-outer-color:           rgba(0,0,0,.25);
  39.427 +@popover-arrow-outer-fallback-color:  #999;
  39.428 +
  39.429 +
  39.430 +// Labels
  39.431 +// -------------------------
  39.432 +
  39.433 +@label-default-bg:            @gray-light;
  39.434 +@label-primary-bg:            @brand-primary;
  39.435 +@label-success-bg:            @brand-success;
  39.436 +@label-info-bg:               @brand-info;
  39.437 +@label-warning-bg:            @brand-warning;
  39.438 +@label-danger-bg:             @brand-danger;
  39.439 +
  39.440 +@label-color:                 #fff;
  39.441 +@label-link-hover-color:      #fff;
  39.442 +
  39.443 +
  39.444 +// Modals
  39.445 +// -------------------------
  39.446 +@modal-inner-padding:         20px;
  39.447 +
  39.448 +@modal-title-padding:         15px;
  39.449 +@modal-title-line-height:     @line-height-base;
  39.450 +
  39.451 +@modal-content-bg:                             #fff;
  39.452 +@modal-content-border-color:                   rgba(0,0,0,.2);
  39.453 +@modal-content-fallback-border-color:          #999;
  39.454 +
  39.455 +@modal-backdrop-bg:           #000;
  39.456 +@modal-header-border-color:   #e5e5e5;
  39.457 +@modal-footer-border-color:   @modal-header-border-color;
  39.458 +
  39.459 +
  39.460 +// Alerts
  39.461 +// -------------------------
  39.462 +@alert-padding:               15px;
  39.463 +@alert-border-radius:         @border-radius-base;
  39.464 +@alert-link-font-weight:      bold;
  39.465 +
  39.466 +@alert-success-bg:            @state-success-bg;
  39.467 +@alert-success-text:          @state-success-text;
  39.468 +@alert-success-border:        @state-success-border;
  39.469 +
  39.470 +@alert-info-bg:               @state-info-bg;
  39.471 +@alert-info-text:             @state-info-text;
  39.472 +@alert-info-border:           @state-info-border;
  39.473 +
  39.474 +@alert-warning-bg:            @state-warning-bg;
  39.475 +@alert-warning-text:          @state-warning-text;
  39.476 +@alert-warning-border:        @state-warning-border;
  39.477 +
  39.478 +@alert-danger-bg:             @state-danger-bg;
  39.479 +@alert-danger-text:           @state-danger-text;
  39.480 +@alert-danger-border:         @state-danger-border;
  39.481 +
  39.482 +
  39.483 +// Progress bars
  39.484 +// -------------------------
  39.485 +@progress-bg:                 #f5f5f5;
  39.486 +@progress-bar-color:          #fff;
  39.487 +
  39.488 +@progress-bar-bg:             @brand-primary;
  39.489 +@progress-bar-success-bg:     @brand-success;
  39.490 +@progress-bar-warning-bg:     @brand-warning;
  39.491 +@progress-bar-danger-bg:      @brand-danger;
  39.492 +@progress-bar-info-bg:        @brand-info;
  39.493 +
  39.494 +
  39.495 +// List group
  39.496 +// -------------------------
  39.497 +@list-group-bg:               #fff;
  39.498 +@list-group-border:           #ddd;
  39.499 +@list-group-border-radius:    @border-radius-base;
  39.500 +
  39.501 +@list-group-hover-bg:         #f5f5f5;
  39.502 +@list-group-active-color:     @component-active-color;
  39.503 +@list-group-active-bg:        @component-active-bg;
  39.504 +@list-group-active-border:    @list-group-active-bg;
  39.505 +
  39.506 +@list-group-link-color:          #555;
  39.507 +@list-group-link-heading-color:  #333;
  39.508 +
  39.509 +
  39.510 +// Panels
  39.511 +// -------------------------
  39.512 +@panel-bg:                    #fff;
  39.513 +@panel-inner-border:          #ddd;
  39.514 +@panel-border-radius:         @border-radius-base;
  39.515 +@panel-footer-bg:             #f5f5f5;
  39.516 +
  39.517 +@panel-default-text:          @gray-dark;
  39.518 +@panel-default-border:        #ddd;
  39.519 +@panel-default-heading-bg:    #f5f5f5;
  39.520 +
  39.521 +@panel-primary-text:          #fff;
  39.522 +@panel-primary-border:        @brand-primary;
  39.523 +@panel-primary-heading-bg:    @brand-primary;
  39.524 +
  39.525 +@panel-success-text:          @state-success-text;
  39.526 +@panel-success-border:        @state-success-border;
  39.527 +@panel-success-heading-bg:    @state-success-bg;
  39.528 +
  39.529 +@panel-warning-text:          @state-warning-text;
  39.530 +@panel-warning-border:        @state-warning-border;
  39.531 +@panel-warning-heading-bg:    @state-warning-bg;
  39.532 +
  39.533 +@panel-danger-text:           @state-danger-text;
  39.534 +@panel-danger-border:         @state-danger-border;
  39.535 +@panel-danger-heading-bg:     @state-danger-bg;
  39.536 +
  39.537 +@panel-info-text:             @state-info-text;
  39.538 +@panel-info-border:           @state-info-border;
  39.539 +@panel-info-heading-bg:       @state-info-bg;
  39.540 +
  39.541 +
  39.542 +// Thumbnails
  39.543 +// -------------------------
  39.544 +@thumbnail-padding:           4px;
  39.545 +@thumbnail-bg:                @body-bg;
  39.546 +@thumbnail-border:            #ddd;
  39.547 +@thumbnail-border-radius:     @border-radius-base;
  39.548 +
  39.549 +@thumbnail-caption-color:     @text-color;
  39.550 +@thumbnail-caption-padding:   9px;
  39.551 +
  39.552 +
  39.553 +// Wells
  39.554 +// -------------------------
  39.555 +@well-bg:                     #f5f5f5;
  39.556 +
  39.557 +
  39.558 +// Badges
  39.559 +// -------------------------
  39.560 +@badge-color:                 #fff;
  39.561 +@badge-link-hover-color:      #fff;
  39.562 +@badge-bg:                    @gray-light;
  39.563 +
  39.564 +@badge-active-color:          @link-color;
  39.565 +@badge-active-bg:             #fff;
  39.566 +
  39.567 +@badge-font-weight:           bold;
  39.568 +@badge-line-height:           1;
  39.569 +@badge-border-radius:         10px;
  39.570 +
  39.571 +
  39.572 +// Breadcrumbs
  39.573 +// -------------------------
  39.574 +@breadcrumb-bg:               #f5f5f5;
  39.575 +@breadcrumb-color:            #ccc;
  39.576 +@breadcrumb-active-color:     @gray-light;
  39.577 +@breadcrumb-separator:        "/";
  39.578 +
  39.579 +
  39.580 +// Carousel
  39.581 +// ------------------------
  39.582 +
  39.583 +@carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6);
  39.584 +
  39.585 +@carousel-control-color:                      #fff;
  39.586 +@carousel-control-width:                      15%;
  39.587 +@carousel-control-opacity:                    .5;
  39.588 +@carousel-control-font-size:                  20px;
  39.589 +
  39.590 +@carousel-indicator-active-bg:                #fff;
  39.591 +@carousel-indicator-border-color:             #fff;
  39.592 +
  39.593 +@carousel-caption-color:                      #fff;
  39.594 +
  39.595 +
  39.596 +// Close
  39.597 +// ------------------------
  39.598 +@close-font-weight:           bold;
  39.599 +@close-color:                 #000;
  39.600 +@close-text-shadow:           0 1px 0 #fff;
  39.601 +
  39.602 +
  39.603 +// Code
  39.604 +// ------------------------
  39.605 +@code-color:                  #c7254e;
  39.606 +@code-bg:                     #f9f2f4;
  39.607 +
  39.608 +@pre-bg:                      #f5f5f5;
  39.609 +@pre-color:                   @gray-dark;
  39.610 +@pre-border-color:            #ccc;
  39.611 +@pre-scrollable-max-height:   340px;
  39.612 +
  39.613 +// Type
  39.614 +// ------------------------
  39.615 +@text-muted:                  @gray-light;
  39.616 +@abbr-border-color:           @gray-light;
  39.617 +@headings-small-color:        @gray-light;
  39.618 +@blockquote-small-color:      @gray-light;
  39.619 +@blockquote-border-color:     @gray-lighter;
  39.620 +@page-header-border-color:    @gray-lighter;
  39.621 +
  39.622 +// Miscellaneous
  39.623 +// -------------------------
  39.624 +
  39.625 +// Hr border color
  39.626 +@hr-border:                   @gray-lighter;
  39.627 +
  39.628 +// Horizontal forms & lists
  39.629 +@component-offset-horizontal: 180px;
  39.630 +
  39.631 +
  39.632 +// Container sizes
  39.633 +// --------------------------------------------------
  39.634 +
  39.635 +// Small screen / tablet
  39.636 +@container-tablet:             ((720px + @grid-gutter-width));
  39.637 +@container-sm:                 @container-tablet;
  39.638 +
  39.639 +// Medium screen / desktop
  39.640 +@container-desktop:            ((940px + @grid-gutter-width));
  39.641 +@container-md:                 @container-desktop;
  39.642 +
  39.643 +// Large screen / wide desktop
  39.644 +@container-large-desktop:      ((1140px + @grid-gutter-width));
  39.645 +@container-lg:                 @container-large-desktop;
    40.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    40.2 +++ b/static/less/wells.less	Fri Dec 20 22:30:44 2013 +0100
    40.3 @@ -0,0 +1,29 @@
    40.4 +//
    40.5 +// Wells
    40.6 +// --------------------------------------------------
    40.7 +
    40.8 +
    40.9 +// Base class
   40.10 +.well {
   40.11 +  min-height: 20px;
   40.12 +  padding: 19px;
   40.13 +  margin-bottom: 20px;
   40.14 +  background-color: @well-bg;
   40.15 +  border: 1px solid darken(@well-bg, 7%);
   40.16 +  border-radius: @border-radius-base;
   40.17 +  .box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
   40.18 +  blockquote {
   40.19 +    border-color: #ddd;
   40.20 +    border-color: rgba(0,0,0,.15);
   40.21 +  }
   40.22 +}
   40.23 +
   40.24 +// Sizes
   40.25 +.well-lg {
   40.26 +  padding: 24px;
   40.27 +  border-radius: @border-radius-large;
   40.28 +}
   40.29 +.well-sm {
   40.30 +  padding: 9px;
   40.31 +  border-radius: @border-radius-small;
   40.32 +}
Impressum Datenschutzerklärung