[+] FO : New Responsive, Bootstrap template

This commit is contained in:
Damien Metzger
2013-10-23 16:56:02 +02:00
parent 16dfea95e3
commit 69d5cb4ccd
639 changed files with 64771 additions and 7 deletions
@@ -0,0 +1,48 @@
@import 'compass';
@import 'bootstrap_lib/_variables';
@import url(http://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800,800italic);
$base-border-color: #d6d4d4;
// Boxes
// -------------------------
$base-box-bg: #fbfbfb;
$base-box-padding: 14px 18px 13px;
$base-box-indent: 0 0 30px 0;
$font:normal 13px/18px Arial, Helvetica, sans-serif;
$font-custom:'Open Sans', sans-serif;
$font1:FontAwesome;
//sub heading (h2,h3) define
@mixin sub-heading {
color: #555454;
text-transform: uppercase;
font-family:$font-custom;
font-weight: 600;
font-size: 18px;
line-height:20px;
padding:14px 20px 17px;
margin: 0 0 20px;
position: relative;
border:1px solid #d6d4d4;
border-bottom:none;
background:#fbfbfb;
}
//main border define
$main_border:1px solid $base-border-color;
// Indents
//--------------------------
$base-page-indent: $grid-gutter-width;
// Product Elements
//--------------------------
$product-name-color: #3a3939;
$product-name-hover-color: #f13340;
// Product Listing
//--------------------------
$base-listing-border-color: $base-border-color;
$base-listing-grid-padding: 14px 18px 13px;
@@ -0,0 +1,32 @@
@import '_theme_variables';
/*******************************************************
Addresses Styles
********************************************************/
#addresses {
#center_column {
.page-heading {
margin-bottom:22px;
}
p {
margin-bottom:13px;
&.p-indent {
margin-bottom:27px;
}
}
}
}
.address li.address_update {
margin-top:14px;
margin-bottom:6px;
a {
margin-right:10px;
}
}
@@ -0,0 +1,45 @@
@import '_theme_variables';
/**********************************************************
Authentication Styles
**********************************************************/
#account-creation_form .id_state, #account-creation_form .dni, #account-creation_form .postcode {
display: none;
}
#create-account_form {
min-height:297px;
p {
margin-bottom:8px;
}
.form-group {
margin-bottom:20px;
}
}
#login_form {
min-height:297px;
.form-group {
margin-bottom:3px;
&.lost_password {
margin:14px 0 15px 0;
a {
text-decoration:underline;
&:hover {
text-decoration:none;
}
}
}
}
}
#login_form, #create-account_form {
.form-control {
max-width:271px;
}
}
@@ -0,0 +1,67 @@
//
// Alerts
// --------------------------------------------------
// Base styles
// -------------------------
.alert {
padding: $alert-padding;
margin-bottom: $line-height-computed;
border: 1px solid transparent;
border-radius: $alert-border-radius;
// Headings for larger alerts
h4 {
margin-top: 0;
// Specified for the h4 to prevent conflicts of changing $headingsColor
color: inherit;
}
// Provide class for links that match alerts
.alert-link {
font-weight: $alert-link-font-weight;
}
// Improve alignment and spacing of inner content
> p,
> ul {
margin-bottom: 0;
}
> p + p {
margin-top: 5px;
}
}
// Dismissable alerts
//
// Expand the right padding and account for the close button's positioning.
.alert-dismissable {
padding-right: ($alert-padding + 20);
// Adjust close link position
.close {
position: relative;
top: -2px;
right: -21px;
color: inherit;
}
}
// Alternate styles
//
// Generate contextual modifier classes for colorizing the alert.
.alert-success {
@include alert-variant($alert-success-bg, $alert-success-border, $alert-success-text);
}
.alert-info {
@include alert-variant($alert-info-bg, $alert-info-border, $alert-info-text);
}
.alert-warning {
@include alert-variant($alert-warning-bg, $alert-warning-border, $alert-warning-text);
}
.alert-danger {
@include alert-variant($alert-danger-bg, $alert-danger-border, $alert-danger-text);
}
@@ -0,0 +1,51 @@
//
// Badges
// --------------------------------------------------
// Base classes
.badge {
display: inline-block;
min-width: 10px;
padding: 3px 7px;
font-size: $font-size-small;
font-weight: $badge-font-weight;
color: $badge-color;
line-height: $badge-line-height;
vertical-align: baseline;
white-space: nowrap;
text-align: center;
background-color: $badge-bg;
border-radius: $badge-border-radius;
// Empty badges collapse automatically (not available in IE8)
&:empty {
display: none;
}
}
// Hover state, but only for links
a.badge {
&:hover,
&:focus {
color: $badge-link-hover-color;
text-decoration: none;
cursor: pointer;
}
}
// Quick fix for labels/badges in buttons
.btn .badge {
position: relative;
top: -1px;
}
// Account for counters in navs
a.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
color: $badge-active-color;
background-color: $badge-active-bg;
}
.nav-pills > li > a > .badge {
margin-left: 3px;
}
@@ -0,0 +1,23 @@
//
// Breadcrumbs
// --------------------------------------------------
.breadcrumb {
padding: 8px 15px;
margin-bottom: $line-height-computed;
list-style: none;
background-color: $breadcrumb-bg;
border-radius: $border-radius-base;
> li {
display: inline-block;
&+li:before {
content: "/\00a0"; // Unicode space added since inline-block means non-collapsing white-space
padding: 0 5px;
color: $breadcrumb-color;
}
}
> .active {
color: $breadcrumb-active-color;
}
}
@@ -0,0 +1,248 @@
//
// Button groups
// --------------------------------------------------
// Button carets
//
// Match the button text color to the arrow/caret for indicating dropdown-ness.
.caret {
.btn-default & {
border-top-color: $btn-default-color;
}
.btn-primary &,
.btn-success &,
.btn-warning &,
.btn-danger &,
.btn-info & {
border-top-color: #fff;
}
}
.dropup {
& .btn-default .caret {
border-bottom-color: $btn-default-color;
}
.btn-primary,
.btn-success,
.btn-warning,
.btn-danger,
.btn-info {
.caret {
border-bottom-color: #fff;
}
}
}
// Make the div behave like a button
.btn-group,
.btn-group-vertical {
position: relative;
display: inline-block;
vertical-align: middle; // match .btn alignment given font-size hack above
> .btn {
position: relative;
float: left;
// Bring the "active" button to the front
&:hover,
&:focus,
&:active,
&.active {
z-index: 2;
}
&:focus {
// Remove focus outline when dropdown JS adds it after closing the menu
outline: none;
}
}
}
// Prevent double borders when buttons are next to each other
.btn-group {
.btn + .btn,
.btn + .btn-group,
.btn-group + .btn,
.btn-group + .btn-group {
margin-left: -1px;
}
}
// Optional: Group multiple button groups together for a toolbar
.btn-toolbar {
@include clearfix();
.btn-group {
float: left;
}
// Space out series of button groups
> .btn,
> .btn-group {
+ .btn,
+ .btn-group {
margin-left: 5px;
}
}
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
border-radius: 0;
}
// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match
.btn-group > .btn:first-child {
margin-left: 0;
&:not(:last-child):not(.dropdown-toggle) {
@include border-right-radius(0);
}
}
// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
@include border-left-radius(0);
}
// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)
.btn-group > .btn-group {
float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
border-radius: 0;
}
.btn-group > .btn-group:first-child {
> .btn:last-child,
> .dropdown-toggle {
@include border-right-radius(0);
}
}
.btn-group > .btn-group:last-child > .btn:first-child {
@include border-left-radius(0);
}
// On active and open, don't show outline
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
outline: 0;
}
// Sizing
//
// Remix the default button sizing classes into new ones for easier manipulation.
.btn-group-xs > .btn { @extend .btn-xs; }
.btn-group-sm > .btn { @extend .btn-sm; }
.btn-group-lg > .btn { @extend .btn-lg; }
// Split button dropdowns
// ----------------------
// Give the line between buttons some depth
.btn-group > .btn + .dropdown-toggle {
padding-left: 8px;
padding-right: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
padding-left: 12px;
padding-right: 12px;
}
// The clickable button for toggling the menu
// Remove the gradient and set the same inset shadow as the :active state
.btn-group.open .dropdown-toggle {
@include box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
}
// Reposition the caret
.btn .caret {
margin-left: 0;
}
// Carets in other button sizes
.btn-lg .caret {
border-width: $caret-width-large $caret-width-large 0;
border-bottom-width: 0;
}
// Upside down carets for .dropup
.dropup .btn-lg .caret {
border-width: 0 $caret-width-large $caret-width-large;
}
// Vertical button groups
// ----------------------
.btn-group-vertical {
> .btn,
> .btn-group {
display: block;
float: none;
width: 100%;
max-width: 100%;
}
// Clear floats so dropdown menus can be properly placed
> .btn-group {
@include clearfix();
> .btn {
float: none;
}
}
> .btn + .btn,
> .btn + .btn-group,
> .btn-group + .btn,
> .btn-group + .btn-group {
margin-top: -1px;
margin-left: 0;
}
}
.btn-group-vertical > .btn {
&:not(:first-child):not(:last-child) {
border-radius: 0;
}
&:first-child:not(:last-child) {
border-top-right-radius: $border-radius-base;
@include border-bottom-radius(0);
}
&:last-child:not(:first-child) {
border-bottom-left-radius: $border-radius-base;
@include border-top-radius(0);
}
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child {
> .btn:last-child,
> .dropdown-toggle {
@include border-bottom-radius(0);
}
}
.btn-group-vertical > .btn-group:last-child > .btn:first-child {
@include border-top-radius(0);
}
// Justified button groups
// ----------------------
.btn-group-justified {
display: table;
width: 100%;
table-layout: fixed;
border-collapse: separate;
.btn {
float: none;
display: table-cell;
width: 1%;
}
}
// Checkbox and radio options
[data-toggle="buttons"] > .btn > input[type="radio"],
[data-toggle="buttons"] > .btn > input[type="checkbox"] {
display: none;
}
@@ -0,0 +1,160 @@
//
// Buttons
// --------------------------------------------------
// Base styles
// --------------------------------------------------
// Core styles
.btn {
display: inline-block;
padding: $padding-base-vertical $padding-base-horizontal;
margin-bottom: 0; // For input.btn
font-size: $font-size-base;
font-weight: $btn-font-weight;
line-height: $line-height-base;
text-align: center;
vertical-align: middle;
cursor: pointer;
border: 1px solid transparent;
border-radius: $border-radius-base;
white-space: nowrap;
@include user-select(none);
&:focus {
@include tab-focus();
}
&:hover,
&:focus {
color: $btn-default-color;
text-decoration: none;
}
&:active,
&.active {
outline: 0;
background-image: none;
@include box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
}
&.disabled,
&[disabled],
fieldset[disabled] & {
cursor: not-allowed;
pointer-events: none; // Future-proof disabling of clicks
@include opacity(.65);
@include box-shadow(none);
}
}
// Alternate buttons
// --------------------------------------------------
.btn-default {
@include button-variant($btn-default-color, $btn-default-bg, $btn-default-border);
}
.btn-primary {
@include button-variant($btn-primary-color, $btn-primary-bg, $btn-primary-border);
}
// Warning appears as orange
.btn-warning {
@include button-variant($btn-warning-color, $btn-warning-bg, $btn-warning-border);
}
// Danger and error appear as red
.btn-danger {
@include button-variant($btn-danger-color, $btn-danger-bg, $btn-danger-border);
}
// Success appears as green
.btn-success {
@include button-variant($btn-success-color, $btn-success-bg, $btn-success-border);
}
// Info appears as blue-green
.btn-info {
@include button-variant($btn-info-color, $btn-info-bg, $btn-info-border);
}
// Link buttons
// -------------------------
// Make a button look and behave like a link
.btn-link {
color: $link-color;
font-weight: normal;
cursor: pointer;
border-radius: 0;
&,
&:active,
&[disabled],
fieldset[disabled] & {
background-color: transparent;
@include box-shadow(none);
}
&,
&:hover,
&:focus,
&:active {
border-color: transparent;
}
&:hover,
&:focus {
color: $link-hover-color;
text-decoration: underline;
background-color: transparent;
}
&[disabled],
fieldset[disabled] & {
&:hover,
&:focus {
color: $btn-link-disabled-color;
text-decoration: none;
}
}
}
// Button Sizes
// --------------------------------------------------
.btn-lg {
// line-height: ensure even-numbered height of button next to large input
@include button-size($padding-large-vertical, $padding-large-horizontal, $font-size-large, $line-height-large, $border-radius-large);
}
.btn-sm,
.btn-xs {
// line-height: ensure proper height of button next to small input
@include button-size($padding-small-vertical, $padding-small-horizontal, $font-size-small, $line-height-small, $border-radius-small);
}
.btn-xs {
padding: 1px 5px;
}
// Block button
// --------------------------------------------------
.btn-block {
display: block;
width: 100%;
padding-left: 0;
padding-right: 0;
}
// Vertically space out multiple block buttons
.btn-block + .btn-block {
margin-top: 5px;
}
// Specificity overrides
input[type="submit"],
input[type="reset"],
input[type="button"] {
&.btn-block {
width: 100%;
}
}
@@ -0,0 +1,209 @@
//
// Carousel
// --------------------------------------------------
// Wrapper for the slide container and indicators
.carousel {
position: relative;
}
.carousel-inner {
position: relative;
overflow: hidden;
width: 100%;
> .item {
display: none;
position: relative;
@include transition(.6s ease-in-out left);
// Account for jankitude on images
> img,
> a > img {
@include img-responsive();
line-height: 1;
}
}
> .active,
> .next,
> .prev { display: block; }
> .active {
left: 0;
}
> .next,
> .prev {
position: absolute;
top: 0;
width: 100%;
}
> .next {
left: 100%;
}
> .prev {
left: -100%;
}
> .next.left,
> .prev.right {
left: 0;
}
> .active.left {
left: -100%;
}
> .active.right {
left: 100%;
}
}
// Left/right controls for nav
// ---------------------------
.carousel-control {
position: absolute;
top: 0;
left: 0;
bottom: 0;
width: $carousel-control-width;
@include opacity($carousel-control-opacity);
font-size: $carousel-control-font-size;
color: $carousel-control-color;
text-align: center;
text-shadow: $carousel-text-shadow;
// We can't have this transition here because webkit cancels the carousel
// animation if you trip this while in the middle of another animation.
// Set gradients for backgrounds
&.left {
@include gradient-horizontal($start-color: rgba(0,0,0,.5), $end-color: rgba(0,0,0,.0001));
}
&.right {
left: auto;
right: 0;
@include gradient-horizontal($start-color: rgba(0,0,0,.0001), $end-color: rgba(0,0,0,.5));
}
// Hover/focus state
&:hover,
&:focus {
color: $carousel-control-color;
text-decoration: none;
@include opacity(.9);
}
// Toggles
.icon-prev,
.icon-next,
.glyphicon-chevron-left,
.glyphicon-chevron-right {
position: absolute;
top: 50%;
left: 50%;
z-index: 5;
display: inline-block;
}
.icon-prev,
.icon-next {
width: 20px;
height: 20px;
margin-top: -10px;
margin-left: -10px;
font-family: serif;
}
.icon-prev {
&:before {
content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039)
}
}
.icon-next {
&:before {
content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A)
}
}
}
// Optional indicator pips
//
// Add an unordered list with the following class and add a list item for each
// slide your carousel holds.
.carousel-indicators {
position: absolute;
bottom: 10px;
left: 50%;
z-index: 15;
width: 60%;
margin-left: -30%;
padding-left: 0;
list-style: none;
text-align: center;
li {
display: inline-block;
width: 10px;
height: 10px;
margin: 1px;
text-indent: -999px;
border: 1px solid $carousel-indicator-border-color;
border-radius: 10px;
cursor: pointer;
}
.active {
margin: 0;
width: 12px;
height: 12px;
background-color: $carousel-indicator-active-bg;
}
}
// Optional captions
// -----------------------------
// Hidden by default for smaller viewports
.carousel-caption {
position: absolute;
left: 15%;
right: 15%;
bottom: 20px;
z-index: 10;
padding-top: 20px;
padding-bottom: 20px;
color: $carousel-caption-color;
text-align: center;
text-shadow: $carousel-text-shadow;
& .btn {
text-shadow: none; // No shadow for button elements in carousel-caption
}
}
// Scale up controls for tablets and up
@media screen and (min-width: $screen-tablet) {
// Scale up the controls a smidge
.carousel-control .icon-prev,
.carousel-control .icon-next {
width: 30px;
height: 30px;
margin-top: -15px;
margin-left: -15px;
font-size: 30px;
}
// Show and left align the captions
.carousel-caption {
left: 20%;
right: 20%;
padding-bottom: 30px;
}
// Move up the indicators
.carousel-indicators {
bottom: 20px;
}
}
@@ -0,0 +1,33 @@
//
// Close icons
// --------------------------------------------------
.close {
float: right;
font-size: ($font-size-base * 1.5);
font-weight: $close-font-weight;
line-height: 1;
color: $close-color;
text-shadow: $close-text-shadow;
@include opacity(.2);
&:hover,
&:focus {
color: $close-color;
text-decoration: none;
cursor: pointer;
@include opacity(.5);
}
}
// Additional properties for button version
// iOS requires the button element instead of an anchor tag.
// If you want the anchor version, it requires `href="#"`.
button.close {
padding: 0;
cursor: pointer;
background: transparent;
border: 0;
-webkit-appearance: none;
}
@@ -0,0 +1,56 @@
//
// Code (inline and blocK)
// --------------------------------------------------
// Inline and block code styles
code,
pre {
font-family: $font-family-monospace;
}
// Inline code
code {
padding: 2px 4px;
font-size: 90%;
color: $code-color;
background-color: $code-bg;
white-space: nowrap;
border-radius: $border-radius-base;
}
// Blocks of code
pre {
display: block;
padding: (($line-height-computed - 1) / 2);
margin: 0 0 ($line-height-computed / 2);
font-size: ($font-size-base - 1); // 14px to 13px
line-height: $line-height-base;
word-break: break-all;
word-wrap: break-word;
color: $pre-color;
background-color: $pre-bg;
border: 1px solid $pre-border-color;
border-radius: $border-radius-base;
// Make prettyprint styles more spaced out for readability
&.prettyprint {
margin-bottom: $line-height-computed;
}
// Account for some code outputs that place code tags in pre tags
code {
padding: 0;
font-size: inherit;
color: inherit;
white-space: pre-wrap;
background-color: transparent;
border: 0;
}
}
// Enable scrollable blocks of code
.pre-scrollable {
max-height: $pre-scrollable-max-height;
overflow-y: scroll;
}
@@ -0,0 +1,29 @@
//
// Component animations
// --------------------------------------------------
// Heads up!
//
// We don't use the `.opacity()` mixin here since it causes a bug with text
// fields in IE7-8. Source: https://github.com/twitter/bootstrap/pull/3552.
.fade {
opacity: 0;
@include transition(opacity .15s linear);
&.in {
opacity: 1;
}
}
.collapse {
display: none;
&.in {
display: block;
}
}
.collapsing {
position: relative;
height: 0;
overflow: hidden;
@include transition(height .35s ease);
}
@@ -0,0 +1,194 @@
//
// Dropdown menus
// --------------------------------------------------
// Dropdown arrow/caret
.caret {
display: inline-block;
width: 0;
height: 0;
margin-left: 2px;
vertical-align: middle;
border-top: $caret-width-base solid $dropdown-caret-color;
border-right: $caret-width-base solid transparent;
border-left: $caret-width-base solid transparent;
// Firefox fix for https://github.com/twbs/bootstrap/issues/9538. Once fixed,
// we can just straight up remove this.
border-bottom: 0 dotted;
content: "";
}
// The dropdown wrapper (div)
.dropdown {
position: relative;
}
// Prevent the focus on the dropdown toggle when closing dropdowns
.dropdown-toggle:focus {
outline: 0;
}
// The dropdown menu (ul)
.dropdown-menu {
position: absolute;
top: 100%;
left: 0;
z-index: $zindex-dropdown;
display: none; // none by default, but block on "open" of the menu
float: left;
min-width: 160px;
padding: 5px 0;
margin: 2px 0 0; // override default ul
list-style: none;
font-size: $font-size-base;
background-color: $dropdown-bg;
border: 1px solid $dropdown-fallback-border; // IE8 fallback
border: 1px solid $dropdown-border;
border-radius: $border-radius-base;
@include box-shadow(0 6px 12px rgba(0,0,0,.175));
background-clip: padding-box;
// Aligns the dropdown menu to right
&.pull-right {
right: 0;
left: auto;
}
// Dividers (basically an hr) within the dropdown
.divider {
@include nav-divider($dropdown-divider-bg);
}
// Links within the dropdown menu
> li > a {
display: block;
padding: 3px 20px;
clear: both;
font-weight: normal;
line-height: $line-height-base;
color: $dropdown-link-color;
white-space: nowrap; // prevent links from randomly breaking onto new lines
}
}
// Hover/Focus state
.dropdown-menu > li > a {
&:hover,
&:focus {
text-decoration: none;
color: $dropdown-link-hover-color;
background-color: $dropdown-link-hover-bg;
}
}
// Active state
.dropdown-menu > .active > a {
&,
&:hover,
&:focus {
color: $dropdown-link-active-color;
text-decoration: none;
outline: 0;
background-color: $dropdown-link-active-bg;
}
}
// Disabled state
//
// Gray out text and ensure the hover/focus state remains gray
.dropdown-menu > .disabled > a {
&,
&:hover,
&:focus {
color: $dropdown-link-disabled-color;
}
}
// Nuke hover/focus effects
.dropdown-menu > .disabled > a {
&:hover,
&:focus {
text-decoration: none;
background-color: transparent;
background-image: none; // Remove CSS gradient
@include reset-filter();
cursor: not-allowed;
}
}
// Open state for the dropdown
.open {
// Show the menu
> .dropdown-menu {
display: block;
}
// Remove the outline when :focus is triggered
> a {
outline: 0;
}
}
// Dropdown section headers
.dropdown-header {
display: block;
padding: 3px 20px;
font-size: $font-size-small;
line-height: $line-height-base;
color: $dropdown-header-color;
}
// Backdrop to catch body clicks on mobile, etc.
.dropdown-backdrop {
position: fixed;
left: 0;
right: 0;
bottom: 0;
top: 0;
z-index: $zindex-dropdown - 10;
}
// Right aligned dropdowns
.pull-right > .dropdown-menu {
right: 0;
left: auto;
}
// Allow for dropdowns to go bottom up (aka, dropup-menu)
//
// Just add .dropup after the standard .dropdown class and you're set, bro.
// TODO: abstract this so that the navbar fixed styles are not placed here?
.dropup,
.navbar-fixed-bottom .dropdown {
// Reverse the caret
.caret {
// Firefox fix for https://github.com/twbs/bootstrap/issues/9538. Once this
// gets fixed, restore `border-top: 0;`.
border-top: 0 dotted;
border-bottom: 4px solid $dropdown-caret-color;
content: "";
}
// Different positioning for bottom up menu
.dropdown-menu {
top: auto;
bottom: 100%;
margin-bottom: 1px;
}
}
// Component alignment
//
// Reiterate per navbar.less and the modified component alignment there.
@media (min-width: $grid-float-breakpoint) {
.navbar-right {
.dropdown-menu {
right: 0;
left: auto;
}
}
}
@@ -0,0 +1,350 @@
//
// Forms
// --------------------------------------------------
// Normalize non-controls
//
// Restyle and baseline non-control form elements.
fieldset {
padding: 0;
margin: 0;
border: 0;
}
legend {
display: block;
width: 100%;
padding: 0;
margin-bottom: $line-height-computed;
font-size: ($font-size-base * 1.5);
line-height: inherit;
color: $legend-color;
border: 0;
border-bottom: 1px solid $legend-border-color;
}
label {
display: inline-block;
margin-bottom: 5px;
font-weight: bold;
}
// Normalize form controls
// Override content-box in Normalize (* isn't specific enough)
input[type="search"] {
@include box-sizing(border-box);
}
// Position radios and checkboxes better
input[type="radio"],
input[type="checkbox"] {
margin: 4px 0 0;
margin-top: 1px \9; /* IE8-9 */
line-height: normal;
}
// Set the height of select and file controls to match text inputs
input[type="file"] {
display: block;
}
// Make multiple select elements height not fixed
select[multiple],
select[size] {
height: auto;
}
// Fix optgroup Firefox bug per https://github.com/twbs/bootstrap/issues/7611
select optgroup {
font-size: inherit;
font-style: inherit;
font-family: inherit;
}
// Focus for select, file, radio, and checkbox
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
@include tab-focus();
}
// Fix for Chrome number input
// Setting certain font-sizes causes the `I` bar to appear on hover of the bottom increment button.
// See https://github.com/twbs/bootstrap/issues/8350 for more.
input[type="number"] {
&::-webkit-outer-spin-button,
&::-webkit-inner-spin-button {
height: auto;
}
}
// Placeholder
//
// Placeholder text gets special styles because when browsers invalidate entire
// lines if it doesn't understand a selector/
.form-control {
@include placeholder();
}
// Common form controls
//
// Shared size and type resets for form controls. Apply `.form-control` to any
// of the following form controls:
//
// select
// textarea
// input[type="text"]
// input[type="password"]
// input[type="datetime"]
// input[type="datetime-local"]
// input[type="date"]
// input[type="month"]
// input[type="time"]
// input[type="week"]
// input[type="number"]
// input[type="email"]
// input[type="url"]
// input[type="search"]
// input[type="tel"]
// input[type="color"]
.form-control {
display: block;
width: 100%;
height: $input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)
padding: $padding-base-vertical $padding-base-horizontal;
font-size: $font-size-base;
line-height: $line-height-base;
color: $input-color;
vertical-align: middle;
background-color: $input-bg;
border: 1px solid $input-border;
border-radius: $input-border-radius;
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
@include transition(border-color ease-in-out .15s, box-shadow ease-in-out .15s);
// Customize the `:focus` state to imitate native WebKit styles.
@include form-control-focus();
// Disabled and read-only inputs
// Note: HTML5 says that controls under a fieldset > legend:first-child won't
// be disabled if the fieldset is disabled. Due to implementation difficulty,
// we don't honor that edge case; we style them as disabled anyway.
&[disabled],
&[readonly],
fieldset[disabled] & {
cursor: not-allowed;
background-color: $input-bg-disabled;
}
}
// Reset height for `textarea`s
textarea.form-control {
height: auto;
}
// Form groups
//
// Designed to help with the organization and spacing of vertical forms. For
// horizontal forms, use the predefined grid classes.
.form-group {
margin-bottom: 15px;
}
// Checkboxes and radios
//
// Indent the labels to position radios/checkboxes as hanging controls.
.radio,
.checkbox {
display: block;
min-height: $line-height-computed; // clear the floating input if there is no label text
margin-top: 10px;
margin-bottom: 10px;
padding-left: 20px;
vertical-align: middle;
label {
display: inline;
margin-bottom: 0;
font-weight: normal;
cursor: pointer;
}
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
float: left;
margin-left: -20px;
}
.radio + .radio,
.checkbox + .checkbox {
margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing
}
// Radios and checkboxes on same line
.radio-inline,
.checkbox-inline {
display: inline-block;
padding-left: 20px;
margin-bottom: 0;
vertical-align: middle;
font-weight: normal;
cursor: pointer;
}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
margin-top: 0;
margin-left: 10px; // space out consecutive inline controls
}
// Apply same disabled cursor tweak as for inputs
//
// Note: Neither radios nor checkboxes can be readonly.
input[type="radio"],
input[type="checkbox"],
.radio,
.radio-inline,
.checkbox,
.checkbox-inline {
&[disabled],
fieldset[disabled] & {
cursor: not-allowed;
}
}
// Form control sizing
@include input-size('.input-sm', $input-height-small, $padding-small-vertical, $padding-small-horizontal, $font-size-small, $line-height-small, $border-radius-small);
@include input-size('.input-lg', $input-height-large, $padding-large-vertical, $padding-large-horizontal, $font-size-large, $line-height-large, $border-radius-large);
// Form control feedback states
//
// Apply contextual and semantic states to individual form controls.
// Warning
.has-warning {
@include form-control-validation($state-warning-text, $state-warning-text, $state-warning-bg);
}
// Error
.has-error {
@include form-control-validation($state-danger-text, $state-danger-text, $state-danger-bg);
}
// Success
.has-success {
@include form-control-validation($state-success-text, $state-success-text, $state-success-bg);
}
// Static form control text
//
// Apply class to a `p` element to make any string of text align with labels in
// a horizontal form layout.
.form-control-static {
margin-bottom: 0; // Remove default margin from `p`
padding-top: ($padding-base-vertical + 1);
}
// Help text
//
// Apply to any element you wish to create light text for placement immediately
// below a form control. Use for general help, formatting, or instructional text.
.help-block {
display: block; // account for any element using help-block
margin-top: 5px;
margin-bottom: 10px;
color: lighten($text-color, 25%); // lighten the text some for contrast
}
// Inline forms
//
// Make forms appear inline(-block) by adding the `.form-inline` class. Inline
// forms begin stacked on extra small (mobile) devices and then go inline when
// viewports reach <768px.
//
// Requires wrapping inputs and labels with `.form-group` for proper display of
// default HTML form controls and our custom form controls (e.g., input groups).
//
// Heads up! This is mixin-ed into `.navbar-form` in navbars.less.
.form-inline {
// Kick in the inline
@media (min-width: $screen-tablet) {
// Inline-block all the things for "inline"
.form-group {
display: inline-block;
margin-bottom: 0;
vertical-align: middle;
}
// In navbar-form, allow folks to *not* use `.form-group`
.form-control {
display: inline-block;
}
// Remove default margin on radios/checkboxes that were used for stacking, and
// then undo the floating of radios and checkboxes to match (which also avoids
// a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969).
.radio,
.checkbox {
display: inline-block;
margin-top: 0;
margin-bottom: 0;
padding-left: 0;
}
.radio input[type="radio"],
.checkbox input[type="checkbox"] {
float: none;
margin-left: 0;
}
}
}
// Horizontal forms
//
// Horizontal forms are built on grid classes and allow you to create forms with
// labels on the left and inputs on the right.
.form-horizontal {
// Consistent vertical alignment of labels, radios, and checkboxes
.control-label,
.radio,
.checkbox,
.radio-inline,
.checkbox-inline {
margin-top: 0;
margin-bottom: 0;
padding-top: ($padding-base-vertical + 1); // Default padding plus a border
}
// Make form groups behave like rows
.form-group {
@include make-row();
}
// Only right align form labels here when the columns stop stacking
@media (min-width: $screen-tablet) {
.control-label {
text-align: right;
}
}
}
@@ -0,0 +1,232 @@
//
// Glyphicons for Bootstrap
//
// Since icons are fonts, they can be placed anywhere text is placed and are
// thus automatically sized to match the surrounding child. To use, create an
// inline element with the appropriate classes, like so:
//
// <a href="#"><span class="glyphicon glyphicon-star"></span> Star</a>
// Import the fonts
@font-face {
font-family: 'Glyphicons Halflings';
src: url('#{$icon-font-path}#{$icon-font-name}.eot');
src: url('#{$icon-font-path}#{$icon-font-name}.eot?#iefix') format('embedded-opentype'),
url('#{$icon-font-path}#{$icon-font-name}.woff') format('woff'),
url('#{$icon-font-path}#{$icon-font-name}.ttf') format('truetype'),
url('#{$icon-font-path}#{$icon-font-name}.svg#glyphicons-halflingsregular') format('svg');
}
// Catchall baseclass
.glyphicon {
position: relative;
top: 1px;
display: inline-block;
font-family: 'Glyphicons Halflings';
font-style: normal;
font-weight: normal;
line-height: 1;
-webkit-font-smoothing: antialiased;
}
// Individual icons
.glyphicon-asterisk { &:before { content: "\2a"; } }
.glyphicon-plus { &:before { content: "\2b"; } }
.glyphicon-euro { &:before { content: "\20ac"; } }
.glyphicon-minus { &:before { content: "\2212"; } }
.glyphicon-cloud { &:before { content: "\2601"; } }
.glyphicon-envelope { &:before { content: "\2709"; } }
.glyphicon-pencil { &:before { content: "\270f"; } }
.glyphicon-glass { &:before { content: "\e001"; } }
.glyphicon-music { &:before { content: "\e002"; } }
.glyphicon-search { &:before { content: "\e003"; } }
.glyphicon-heart { &:before { content: "\e005"; } }
.glyphicon-star { &:before { content: "\e006"; } }
.glyphicon-star-empty { &:before { content: "\e007"; } }
.glyphicon-user { &:before { content: "\e008"; } }
.glyphicon-film { &:before { content: "\e009"; } }
.glyphicon-th-large { &:before { content: "\e010"; } }
.glyphicon-th { &:before { content: "\e011"; } }
.glyphicon-th-list { &:before { content: "\e012"; } }
.glyphicon-ok { &:before { content: "\e013"; } }
.glyphicon-remove { &:before { content: "\e014"; } }
.glyphicon-zoom-in { &:before { content: "\e015"; } }
.glyphicon-zoom-out { &:before { content: "\e016"; } }
.glyphicon-off { &:before { content: "\e017"; } }
.glyphicon-signal { &:before { content: "\e018"; } }
.glyphicon-cog { &:before { content: "\e019"; } }
.glyphicon-trash { &:before { content: "\e020"; } }
.glyphicon-home { &:before { content: "\e021"; } }
.glyphicon-file { &:before { content: "\e022"; } }
.glyphicon-time { &:before { content: "\e023"; } }
.glyphicon-road { &:before { content: "\e024"; } }
.glyphicon-download-alt { &:before { content: "\e025"; } }
.glyphicon-download { &:before { content: "\e026"; } }
.glyphicon-upload { &:before { content: "\e027"; } }
.glyphicon-inbox { &:before { content: "\e028"; } }
.glyphicon-play-circle { &:before { content: "\e029"; } }
.glyphicon-repeat { &:before { content: "\e030"; } }
.glyphicon-refresh { &:before { content: "\e031"; } }
.glyphicon-list-alt { &:before { content: "\e032"; } }
.glyphicon-flag { &:before { content: "\e034"; } }
.glyphicon-headphones { &:before { content: "\e035"; } }
.glyphicon-volume-off { &:before { content: "\e036"; } }
.glyphicon-volume-down { &:before { content: "\e037"; } }
.glyphicon-volume-up { &:before { content: "\e038"; } }
.glyphicon-qrcode { &:before { content: "\e039"; } }
.glyphicon-barcode { &:before { content: "\e040"; } }
.glyphicon-tag { &:before { content: "\e041"; } }
.glyphicon-tags { &:before { content: "\e042"; } }
.glyphicon-book { &:before { content: "\e043"; } }
.glyphicon-print { &:before { content: "\e045"; } }
.glyphicon-font { &:before { content: "\e047"; } }
.glyphicon-bold { &:before { content: "\e048"; } }
.glyphicon-italic { &:before { content: "\e049"; } }
.glyphicon-text-height { &:before { content: "\e050"; } }
.glyphicon-text-width { &:before { content: "\e051"; } }
.glyphicon-align-left { &:before { content: "\e052"; } }
.glyphicon-align-center { &:before { content: "\e053"; } }
.glyphicon-align-right { &:before { content: "\e054"; } }
.glyphicon-align-justify { &:before { content: "\e055"; } }
.glyphicon-list { &:before { content: "\e056"; } }
.glyphicon-indent-left { &:before { content: "\e057"; } }
.glyphicon-indent-right { &:before { content: "\e058"; } }
.glyphicon-facetime-video { &:before { content: "\e059"; } }
.glyphicon-picture { &:before { content: "\e060"; } }
.glyphicon-map-marker { &:before { content: "\e062"; } }
.glyphicon-adjust { &:before { content: "\e063"; } }
.glyphicon-tint { &:before { content: "\e064"; } }
.glyphicon-edit { &:before { content: "\e065"; } }
.glyphicon-share { &:before { content: "\e066"; } }
.glyphicon-check { &:before { content: "\e067"; } }
.glyphicon-move { &:before { content: "\e068"; } }
.glyphicon-step-backward { &:before { content: "\e069"; } }
.glyphicon-fast-backward { &:before { content: "\e070"; } }
.glyphicon-backward { &:before { content: "\e071"; } }
.glyphicon-play { &:before { content: "\e072"; } }
.glyphicon-pause { &:before { content: "\e073"; } }
.glyphicon-stop { &:before { content: "\e074"; } }
.glyphicon-forward { &:before { content: "\e075"; } }
.glyphicon-fast-forward { &:before { content: "\e076"; } }
.glyphicon-step-forward { &:before { content: "\e077"; } }
.glyphicon-eject { &:before { content: "\e078"; } }
.glyphicon-chevron-left { &:before { content: "\e079"; } }
.glyphicon-chevron-right { &:before { content: "\e080"; } }
.glyphicon-plus-sign { &:before { content: "\e081"; } }
.glyphicon-minus-sign { &:before { content: "\e082"; } }
.glyphicon-remove-sign { &:before { content: "\e083"; } }
.glyphicon-ok-sign { &:before { content: "\e084"; } }
.glyphicon-question-sign { &:before { content: "\e085"; } }
.glyphicon-info-sign { &:before { content: "\e086"; } }
.glyphicon-screenshot { &:before { content: "\e087"; } }
.glyphicon-remove-circle { &:before { content: "\e088"; } }
.glyphicon-ok-circle { &:before { content: "\e089"; } }
.glyphicon-ban-circle { &:before { content: "\e090"; } }
.glyphicon-arrow-left { &:before { content: "\e091"; } }
.glyphicon-arrow-right { &:before { content: "\e092"; } }
.glyphicon-arrow-up { &:before { content: "\e093"; } }
.glyphicon-arrow-down { &:before { content: "\e094"; } }
.glyphicon-share-alt { &:before { content: "\e095"; } }
.glyphicon-resize-full { &:before { content: "\e096"; } }
.glyphicon-resize-small { &:before { content: "\e097"; } }
.glyphicon-exclamation-sign { &:before { content: "\e101"; } }
.glyphicon-gift { &:before { content: "\e102"; } }
.glyphicon-leaf { &:before { content: "\e103"; } }
.glyphicon-eye-open { &:before { content: "\e105"; } }
.glyphicon-eye-close { &:before { content: "\e106"; } }
.glyphicon-warning-sign { &:before { content: "\e107"; } }
.glyphicon-plane { &:before { content: "\e108"; } }
.glyphicon-random { &:before { content: "\e110"; } }
.glyphicon-comment { &:before { content: "\e111"; } }
.glyphicon-magnet { &:before { content: "\e112"; } }
.glyphicon-chevron-up { &:before { content: "\e113"; } }
.glyphicon-chevron-down { &:before { content: "\e114"; } }
.glyphicon-retweet { &:before { content: "\e115"; } }
.glyphicon-shopping-cart { &:before { content: "\e116"; } }
.glyphicon-folder-close { &:before { content: "\e117"; } }
.glyphicon-folder-open { &:before { content: "\e118"; } }
.glyphicon-resize-vertical { &:before { content: "\e119"; } }
.glyphicon-resize-horizontal { &:before { content: "\e120"; } }
.glyphicon-hdd { &:before { content: "\e121"; } }
.glyphicon-bullhorn { &:before { content: "\e122"; } }
.glyphicon-certificate { &:before { content: "\e124"; } }
.glyphicon-thumbs-up { &:before { content: "\e125"; } }
.glyphicon-thumbs-down { &:before { content: "\e126"; } }
.glyphicon-hand-right { &:before { content: "\e127"; } }
.glyphicon-hand-left { &:before { content: "\e128"; } }
.glyphicon-hand-up { &:before { content: "\e129"; } }
.glyphicon-hand-down { &:before { content: "\e130"; } }
.glyphicon-circle-arrow-right { &:before { content: "\e131"; } }
.glyphicon-circle-arrow-left { &:before { content: "\e132"; } }
.glyphicon-circle-arrow-up { &:before { content: "\e133"; } }
.glyphicon-circle-arrow-down { &:before { content: "\e134"; } }
.glyphicon-globe { &:before { content: "\e135"; } }
.glyphicon-tasks { &:before { content: "\e137"; } }
.glyphicon-filter { &:before { content: "\e138"; } }
.glyphicon-fullscreen { &:before { content: "\e140"; } }
.glyphicon-dashboard { &:before { content: "\e141"; } }
.glyphicon-heart-empty { &:before { content: "\e143"; } }
.glyphicon-link { &:before { content: "\e144"; } }
.glyphicon-phone { &:before { content: "\e145"; } }
.glyphicon-usd { &:before { content: "\e148"; } }
.glyphicon-gbp { &:before { content: "\e149"; } }
.glyphicon-sort { &:before { content: "\e150"; } }
.glyphicon-sort-by-alphabet { &:before { content: "\e151"; } }
.glyphicon-sort-by-alphabet-alt { &:before { content: "\e152"; } }
.glyphicon-sort-by-order { &:before { content: "\e153"; } }
.glyphicon-sort-by-order-alt { &:before { content: "\e154"; } }
.glyphicon-sort-by-attributes { &:before { content: "\e155"; } }
.glyphicon-sort-by-attributes-alt { &:before { content: "\e156"; } }
.glyphicon-unchecked { &:before { content: "\e157"; } }
.glyphicon-expand { &:before { content: "\e158"; } }
.glyphicon-collapse-down { &:before { content: "\e159"; } }
.glyphicon-collapse-up { &:before { content: "\e160"; } }
.glyphicon-log-in { &:before { content: "\e161"; } }
.glyphicon-flash { &:before { content: "\e162"; } }
.glyphicon-log-out { &:before { content: "\e163"; } }
.glyphicon-new-window { &:before { content: "\e164"; } }
.glyphicon-record { &:before { content: "\e165"; } }
.glyphicon-save { &:before { content: "\e166"; } }
.glyphicon-open { &:before { content: "\e167"; } }
.glyphicon-saved { &:before { content: "\e168"; } }
.glyphicon-import { &:before { content: "\e169"; } }
.glyphicon-export { &:before { content: "\e170"; } }
.glyphicon-send { &:before { content: "\e171"; } }
.glyphicon-floppy-disk { &:before { content: "\e172"; } }
.glyphicon-floppy-saved { &:before { content: "\e173"; } }
.glyphicon-floppy-remove { &:before { content: "\e174"; } }
.glyphicon-floppy-save { &:before { content: "\e175"; } }
.glyphicon-floppy-open { &:before { content: "\e176"; } }
.glyphicon-credit-card { &:before { content: "\e177"; } }
.glyphicon-transfer { &:before { content: "\e178"; } }
.glyphicon-cutlery { &:before { content: "\e179"; } }
.glyphicon-header { &:before { content: "\e180"; } }
.glyphicon-compressed { &:before { content: "\e181"; } }
.glyphicon-earphone { &:before { content: "\e182"; } }
.glyphicon-phone-alt { &:before { content: "\e183"; } }
.glyphicon-tower { &:before { content: "\e184"; } }
.glyphicon-stats { &:before { content: "\e185"; } }
.glyphicon-sd-video { &:before { content: "\e186"; } }
.glyphicon-hd-video { &:before { content: "\e187"; } }
.glyphicon-subtitles { &:before { content: "\e188"; } }
.glyphicon-sound-stereo { &:before { content: "\e189"; } }
.glyphicon-sound-dolby { &:before { content: "\e190"; } }
.glyphicon-sound-5-1 { &:before { content: "\e191"; } }
.glyphicon-sound-6-1 { &:before { content: "\e192"; } }
.glyphicon-sound-7-1 { &:before { content: "\e193"; } }
.glyphicon-copyright-mark { &:before { content: "\e194"; } }
.glyphicon-registration-mark { &:before { content: "\e195"; } }
.glyphicon-cloud-download { &:before { content: "\e197"; } }
.glyphicon-cloud-upload { &:before { content: "\e198"; } }
.glyphicon-tree-conifer { &:before { content: "\e199"; } }
.glyphicon-tree-deciduous { &:before { content: "\e200"; } }
.glyphicon-briefcase { &:before { content: "\1f4bc"; } }
.glyphicon-calendar { &:before { content: "\1f4c5"; } }
.glyphicon-pushpin { &:before { content: "\1f4cc"; } }
.glyphicon-paperclip { &:before { content: "\1f4ce"; } }
.glyphicon-camera { &:before { content: "\1f4f7"; } }
.glyphicon-lock { &:before { content: "\1f512"; } }
.glyphicon-bell { &:before { content: "\1f514"; } }
.glyphicon-bookmark { &:before { content: "\1f516"; } }
.glyphicon-fire { &:before { content: "\1f525"; } }
.glyphicon-wrench { &:before { content: "\1f527"; } }
@@ -0,0 +1,346 @@
//
// Grid system
// --------------------------------------------------
// Set the container width, and override it for fixed navbars in media queries
.container {
@include container-fixed();
}
// mobile first defaults
.row {
@include make-row();
}
// Common styles for small and large grid columns
.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12 {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($grid-gutter-width / 2);
padding-right: ($grid-gutter-width / 2);
}
// Extra small grid
//
// Grid classes for extra small devices like smartphones. No offset, push, or
// pull classes are present here due to the size of the target.
//
// Note that `.col-xs-12` doesn't get floated on purpose—there's no need since
// it's full-width.
.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11 {
float: left;
}
.col-xs-1 { width: percentage((1 / $grid-columns)); }
.col-xs-2 { width: percentage((2 / $grid-columns)); }
.col-xs-3 { width: percentage((3 / $grid-columns)); }
.col-xs-4 { width: percentage((4 / $grid-columns)); }
.col-xs-5 { width: percentage((5 / $grid-columns)); }
.col-xs-6 { width: percentage((6 / $grid-columns)); }
.col-xs-7 { width: percentage((7 / $grid-columns)); }
.col-xs-8 { width: percentage((8 / $grid-columns)); }
.col-xs-9 { width: percentage((9 / $grid-columns)); }
.col-xs-10 { width: percentage((10/ $grid-columns)); }
.col-xs-11 { width: percentage((11/ $grid-columns)); }
.col-xs-12 { width: 100%; }
// Small grid
//
// Columns, offsets, pushes, and pulls for the small device range, from phones
// to tablets.
//
// Note that `.col-sm-12` doesn't get floated on purpose—there's no need since
// it's full-width.
@media (min-width: $screen-tablet) {
.container {
max-width: $container-tablet;
}
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11 {
float: left;
}
.col-sm-1 { width: percentage((1 / $grid-columns)); }
.col-sm-2 { width: percentage((2 / $grid-columns)); }
.col-sm-3 { width: percentage((3 / $grid-columns)); }
.col-sm-4 { width: percentage((4 / $grid-columns)); }
.col-sm-5 { width: percentage((5 / $grid-columns)); }
.col-sm-6 { width: percentage((6 / $grid-columns)); }
.col-sm-7 { width: percentage((7 / $grid-columns)); }
.col-sm-8 { width: percentage((8 / $grid-columns)); }
.col-sm-9 { width: percentage((9 / $grid-columns)); }
.col-sm-10 { width: percentage((10/ $grid-columns)); }
.col-sm-11 { width: percentage((11/ $grid-columns)); }
.col-sm-12 { width: 100%; }
// Push and pull columns for source order changes
.col-sm-push-1 { left: percentage((1 / $grid-columns)); }
.col-sm-push-2 { left: percentage((2 / $grid-columns)); }
.col-sm-push-3 { left: percentage((3 / $grid-columns)); }
.col-sm-push-4 { left: percentage((4 / $grid-columns)); }
.col-sm-push-5 { left: percentage((5 / $grid-columns)); }
.col-sm-push-6 { left: percentage((6 / $grid-columns)); }
.col-sm-push-7 { left: percentage((7 / $grid-columns)); }
.col-sm-push-8 { left: percentage((8 / $grid-columns)); }
.col-sm-push-9 { left: percentage((9 / $grid-columns)); }
.col-sm-push-10 { left: percentage((10/ $grid-columns)); }
.col-sm-push-11 { left: percentage((11/ $grid-columns)); }
.col-sm-pull-1 { right: percentage((1 / $grid-columns)); }
.col-sm-pull-2 { right: percentage((2 / $grid-columns)); }
.col-sm-pull-3 { right: percentage((3 / $grid-columns)); }
.col-sm-pull-4 { right: percentage((4 / $grid-columns)); }
.col-sm-pull-5 { right: percentage((5 / $grid-columns)); }
.col-sm-pull-6 { right: percentage((6 / $grid-columns)); }
.col-sm-pull-7 { right: percentage((7 / $grid-columns)); }
.col-sm-pull-8 { right: percentage((8 / $grid-columns)); }
.col-sm-pull-9 { right: percentage((9 / $grid-columns)); }
.col-sm-pull-10 { right: percentage((10/ $grid-columns)); }
.col-sm-pull-11 { right: percentage((11/ $grid-columns)); }
// Offsets
.col-sm-offset-1 { margin-left: percentage((1 / $grid-columns)); }
.col-sm-offset-2 { margin-left: percentage((2 / $grid-columns)); }
.col-sm-offset-3 { margin-left: percentage((3 / $grid-columns)); }
.col-sm-offset-4 { margin-left: percentage((4 / $grid-columns)); }
.col-sm-offset-5 { margin-left: percentage((5 / $grid-columns)); }
.col-sm-offset-6 { margin-left: percentage((6 / $grid-columns)); }
.col-sm-offset-7 { margin-left: percentage((7 / $grid-columns)); }
.col-sm-offset-8 { margin-left: percentage((8 / $grid-columns)); }
.col-sm-offset-9 { margin-left: percentage((9 / $grid-columns)); }
.col-sm-offset-10 { margin-left: percentage((10/ $grid-columns)); }
.col-sm-offset-11 { margin-left: percentage((11/ $grid-columns)); }
}
// Medium grid
//
// Columns, offsets, pushes, and pulls for the desktop device range.
//
// Note that `.col-md-12` doesn't get floated on purpose—there's no need since
// it's full-width.
@media (min-width: $screen-desktop) {
.container {
max-width: $container-desktop;
}
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11 {
float: left;
}
.col-md-1 { width: percentage((1 / $grid-columns)); }
.col-md-2 { width: percentage((2 / $grid-columns)); }
.col-md-3 { width: percentage((3 / $grid-columns)); }
.col-md-4 { width: percentage((4 / $grid-columns)); }
.col-md-5 { width: percentage((5 / $grid-columns)); }
.col-md-6 { width: percentage((6 / $grid-columns)); }
.col-md-7 { width: percentage((7 / $grid-columns)); }
.col-md-8 { width: percentage((8 / $grid-columns)); }
.col-md-9 { width: percentage((9 / $grid-columns)); }
.col-md-10 { width: percentage((10/ $grid-columns)); }
.col-md-11 { width: percentage((11/ $grid-columns)); }
.col-md-12 { width: 100%; }
// Push and pull columns for source order changes
.col-md-push-0 { left: auto; }
.col-md-push-1 { left: percentage((1 / $grid-columns)); }
.col-md-push-2 { left: percentage((2 / $grid-columns)); }
.col-md-push-3 { left: percentage((3 / $grid-columns)); }
.col-md-push-4 { left: percentage((4 / $grid-columns)); }
.col-md-push-5 { left: percentage((5 / $grid-columns)); }
.col-md-push-6 { left: percentage((6 / $grid-columns)); }
.col-md-push-7 { left: percentage((7 / $grid-columns)); }
.col-md-push-8 { left: percentage((8 / $grid-columns)); }
.col-md-push-9 { left: percentage((9 / $grid-columns)); }
.col-md-push-10 { left: percentage((10/ $grid-columns)); }
.col-md-push-11 { left: percentage((11/ $grid-columns)); }
.col-md-pull-0 { right: auto; }
.col-md-pull-1 { right: percentage((1 / $grid-columns)); }
.col-md-pull-2 { right: percentage((2 / $grid-columns)); }
.col-md-pull-3 { right: percentage((3 / $grid-columns)); }
.col-md-pull-4 { right: percentage((4 / $grid-columns)); }
.col-md-pull-5 { right: percentage((5 / $grid-columns)); }
.col-md-pull-6 { right: percentage((6 / $grid-columns)); }
.col-md-pull-7 { right: percentage((7 / $grid-columns)); }
.col-md-pull-8 { right: percentage((8 / $grid-columns)); }
.col-md-pull-9 { right: percentage((9 / $grid-columns)); }
.col-md-pull-10 { right: percentage((10/ $grid-columns)); }
.col-md-pull-11 { right: percentage((11/ $grid-columns)); }
// Offsets
.col-md-offset-0 { margin-left: 0; }
.col-md-offset-1 { margin-left: percentage((1 / $grid-columns)); }
.col-md-offset-2 { margin-left: percentage((2 / $grid-columns)); }
.col-md-offset-3 { margin-left: percentage((3 / $grid-columns)); }
.col-md-offset-4 { margin-left: percentage((4 / $grid-columns)); }
.col-md-offset-5 { margin-left: percentage((5 / $grid-columns)); }
.col-md-offset-6 { margin-left: percentage((6 / $grid-columns)); }
.col-md-offset-7 { margin-left: percentage((7 / $grid-columns)); }
.col-md-offset-8 { margin-left: percentage((8 / $grid-columns)); }
.col-md-offset-9 { margin-left: percentage((9 / $grid-columns)); }
.col-md-offset-10 { margin-left: percentage((10/ $grid-columns)); }
.col-md-offset-11 { margin-left: percentage((11/ $grid-columns)); }
}
// Large grid
//
// Columns, offsets, pushes, and pulls for the large desktop device range.
//
// Note that `.col-lg-12` doesn't get floated on purpose—there's no need since
// it's full-width.
@media (min-width: $screen-lg-desktop) {
.container {
max-width: $container-lg-desktop;
}
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11 {
float: left;
}
.col-lg-1 { width: percentage((1 / $grid-columns)); }
.col-lg-2 { width: percentage((2 / $grid-columns)); }
.col-lg-3 { width: percentage((3 / $grid-columns)); }
.col-lg-4 { width: percentage((4 / $grid-columns)); }
.col-lg-5 { width: percentage((5 / $grid-columns)); }
.col-lg-6 { width: percentage((6 / $grid-columns)); }
.col-lg-7 { width: percentage((7 / $grid-columns)); }
.col-lg-8 { width: percentage((8 / $grid-columns)); }
.col-lg-9 { width: percentage((9 / $grid-columns)); }
.col-lg-10 { width: percentage((10/ $grid-columns)); }
.col-lg-11 { width: percentage((11/ $grid-columns)); }
.col-lg-12 { width: 100%; }
// Push and pull columns for source order changes
.col-lg-push-0 { left: auto; }
.col-lg-push-1 { left: percentage((1 / $grid-columns)); }
.col-lg-push-2 { left: percentage((2 / $grid-columns)); }
.col-lg-push-3 { left: percentage((3 / $grid-columns)); }
.col-lg-push-4 { left: percentage((4 / $grid-columns)); }
.col-lg-push-5 { left: percentage((5 / $grid-columns)); }
.col-lg-push-6 { left: percentage((6 / $grid-columns)); }
.col-lg-push-7 { left: percentage((7 / $grid-columns)); }
.col-lg-push-8 { left: percentage((8 / $grid-columns)); }
.col-lg-push-9 { left: percentage((9 / $grid-columns)); }
.col-lg-push-10 { left: percentage((10/ $grid-columns)); }
.col-lg-push-11 { left: percentage((11/ $grid-columns)); }
.col-lg-pull-0 { right: auto; }
.col-lg-pull-1 { right: percentage((1 / $grid-columns)); }
.col-lg-pull-2 { right: percentage((2 / $grid-columns)); }
.col-lg-pull-3 { right: percentage((3 / $grid-columns)); }
.col-lg-pull-4 { right: percentage((4 / $grid-columns)); }
.col-lg-pull-5 { right: percentage((5 / $grid-columns)); }
.col-lg-pull-6 { right: percentage((6 / $grid-columns)); }
.col-lg-pull-7 { right: percentage((7 / $grid-columns)); }
.col-lg-pull-8 { right: percentage((8 / $grid-columns)); }
.col-lg-pull-9 { right: percentage((9 / $grid-columns)); }
.col-lg-pull-10 { right: percentage((10/ $grid-columns)); }
.col-lg-pull-11 { right: percentage((11/ $grid-columns)); }
// Offsets
.col-lg-offset-0 { margin-left: 0; }
.col-lg-offset-1 { margin-left: percentage((1 / $grid-columns)); }
.col-lg-offset-2 { margin-left: percentage((2 / $grid-columns)); }
.col-lg-offset-3 { margin-left: percentage((3 / $grid-columns)); }
.col-lg-offset-4 { margin-left: percentage((4 / $grid-columns)); }
.col-lg-offset-5 { margin-left: percentage((5 / $grid-columns)); }
.col-lg-offset-6 { margin-left: percentage((6 / $grid-columns)); }
.col-lg-offset-7 { margin-left: percentage((7 / $grid-columns)); }
.col-lg-offset-8 { margin-left: percentage((8 / $grid-columns)); }
.col-lg-offset-9 { margin-left: percentage((9 / $grid-columns)); }
.col-lg-offset-10 { margin-left: percentage((10/ $grid-columns)); }
.col-lg-offset-11 { margin-left: percentage((11/ $grid-columns)); }
}
@@ -0,0 +1,127 @@
//
// Input groups
// --------------------------------------------------
// Base styles
// -------------------------
.input-group {
position: relative; // For dropdowns
display: table;
border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table
// Undo padding and float of grid classes
&.col {
float: none;
padding-left: 0;
padding-right: 0;
}
.form-control {
width: 100%;
margin-bottom: 0;
}
}
// Sizing options
//
// Remix the default form control sizing classes into new ones for easier
// manipulation.
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn { @extend .input-lg; }
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn { @extend .input-sm; }
// Display as table-cell
// -------------------------
.input-group-addon,
.input-group-btn,
.input-group .form-control {
display: table-cell;
&:not(:first-child):not(:last-child) {
border-radius: 0;
}
}
// Addon and addon wrapper for buttons
.input-group-addon,
.input-group-btn {
width: 1%;
white-space: nowrap;
vertical-align: middle; // Match the inputs
}
// Text input groups
// -------------------------
.input-group-addon {
padding: $padding-base-vertical $padding-base-horizontal;
font-size: $font-size-base;
font-weight: normal;
line-height: 1;
text-align: center;
background-color: $input-group-addon-bg;
border: 1px solid $input-group-addon-border-color;
border-radius: $border-radius-base;
// Sizing
&.input-sm {
padding: $padding-small-vertical $padding-small-horizontal;
font-size: $font-size-small;
border-radius: $border-radius-small;
}
&.input-lg {
padding: $padding-large-vertical $padding-large-horizontal;
font-size: $font-size-large;
border-radius: $border-radius-large;
}
// Nuke default margins from checkboxes and radios to vertically center within.
input[type="radio"],
input[type="checkbox"] {
margin-top: 0;
}
}
// Reset rounded corners
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) {
@include border-right-radius(0);
}
.input-group-addon:first-child {
border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child) {
@include border-left-radius(0);
}
.input-group-addon:last-child {
border-left: 0;
}
// Button input groups
// -------------------------
.input-group-btn {
position: relative;
white-space: nowrap;
}
.input-group-btn > .btn {
position: relative;
// Jankily prevent input button groups from wrapping
+ .btn {
margin-left: -4px;
}
// Bring the "active" button to the front
&:hover,
&:active {
z-index: 2;
}
}
@@ -0,0 +1,40 @@
//
// Jumbotron
// --------------------------------------------------
.jumbotron {
padding: $jumbotron-padding;
margin-bottom: $jumbotron-padding;
font-size: ($font-size-base * 1.5);
font-weight: 200;
line-height: ($line-height-base * 1.5);
color: $jumbotron-color;
background-color: $jumbotron-bg;
h1 {
line-height: 1;
color: $jumbotron-heading-color;
}
p {
line-height: 1.4;
}
.container & {
border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container
}
@media screen and (min-width: $screen-tablet) {
padding-top: ($jumbotron-padding * 1.6);
padding-bottom: ($jumbotron-padding * 1.6);
.container & {
padding-left: ($jumbotron-padding * 2);
padding-right: ($jumbotron-padding * 2);
}
h1 {
font-size: ($font-size-base * 4.5);
}
}
}
@@ -0,0 +1,58 @@
//
// Labels
// --------------------------------------------------
.label {
display: inline;
padding: .2em .6em .3em;
font-size: 75%;
font-weight: bold;
line-height: 1;
color: $label-color;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: .25em;
// Add hover effects, but only for links
&[href] {
&:hover,
&:focus {
color: $label-link-hover-color;
text-decoration: none;
cursor: pointer;
}
}
// Empty labels collapse automatically (not available in IE8)
&:empty {
display: none;
}
}
// Colors
// Contextual variations (linked labels get darker on :hover)
.label-default {
@include label-variant($label-default-bg);
}
.label-primary {
@include label-variant($label-primary-bg);
}
.label-success {
@include label-variant($label-success-bg);
}
.label-info {
@include label-variant($label-info-bg);
}
.label-warning {
@include label-variant($label-warning-bg);
}
.label-danger {
@include label-variant($label-danger-bg);
}
@@ -0,0 +1,88 @@
//
// List groups
// --------------------------------------------------
// Base class
//
// Easily usable on <ul>, <ol>, or <div>.
.list-group {
// No need to set list-style: none; since .list-group-item is block level
margin-bottom: 20px;
padding-left: 0; // reset padding because ul and ol
}
// Individual list items
// -------------------------
.list-group-item {
position: relative;
display: block;
padding: 10px 15px;
// Place the border on the list items and negative margin up for better styling
margin-bottom: -1px;
background-color: $list-group-bg;
border: 1px solid $list-group-border;
// Round the first and last items
&:first-child {
@include border-top-radius($list-group-border-radius);
}
&:last-child {
margin-bottom: 0;
@include border-bottom-radius($list-group-border-radius);
}
// Align badges within list items
> .badge {
float: right;
}
> .badge + .badge {
margin-right: 5px;
}
// Active class on item itself, not parent
&.active,
&.active:hover,
&.active:focus {
z-index: 2; // Place active items above their siblings for proper border styling
color: $list-group-active-color;
background-color: $list-group-active-bg;
border-color: $list-group-active-border;
// Force color to inherit for custom content
.list-group-item-heading {
color: inherit;
}
.list-group-item-text {
color: lighten($list-group-active-bg, 40%);
}
}
}
// Linked list items
a.list-group-item {
color: $list-group-link-color;
.list-group-item-heading {
color: $list-group-link-heading-color;
}
// Hover state
&:hover,
&:focus {
text-decoration: none;
background-color: $list-group-hover-bg;
}
}
// Custom content options
// -------------------------
.list-group-item-heading {
margin-top: 0;
margin-bottom: 5px;
}
.list-group-item-text {
margin-bottom: 0;
line-height: 1.3;
}
@@ -0,0 +1,56 @@
// Media objects
// Source: http://stubbornella.org/content/?p=497
// --------------------------------------------------
// Common styles
// -------------------------
// Clear the floats
.media,
.media-body {
overflow: hidden;
zoom: 1;
}
// Proper spacing between instances of .media
.media,
.media .media {
margin-top: 15px;
}
.media:first-child {
margin-top: 0;
}
// For images and videos, set to block
.media-object {
display: block;
}
// Reset margins on headings for tighter default spacing
.media-heading {
margin: 0 0 5px;
}
// Media image alignment
// -------------------------
.media {
> .pull-left {
margin-right: 10px;
}
> .pull-right {
margin-left: 10px;
}
}
// Media list variation
// -------------------------
// Undo default ul/ol styles
.media-list {
padding-left: 0;
list-style: none;
}
@@ -0,0 +1,728 @@
//
// Mixins
// --------------------------------------------------
// Utilities
// -------------------------
// Clearfix
// Source: http://nicolasgallagher.com/micro-clearfix-hack/
//
// For modern browsers
// 1. The space content is one way to avoid an Opera bug when the
// contenteditable attribute is included anywhere else in the document.
// Otherwise it causes space to appear at the top and bottom of elements
// that are clearfixed.
// 2. The use of `table` rather than `block` is only necessary if using
// `:before` to contain the top-margins of child elements.
@mixin clearfix() {
&:before,
&:after {
content: " "; /* 1 */
display: table; /* 2 */
}
&:after {
clear: both;
}
}
// Webkit-style focus
@mixin tab-focus() {
// Default
outline: thin dotted #333;
// Webkit
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
// Center-align a block level element
@mixin center-block() {
display: block;
margin-left: auto;
margin-right: auto;
}
// Sizing shortcuts
@mixin size($width, $height) {
width: $width;
height: $height;
}
@mixin square($size) {
@include size($size, $size);
}
// Placeholder text
@mixin placeholder($color: $input-color-placeholder) {
&:-moz-placeholder { color: $color; } // Firefox 4-18
&::-moz-placeholder { color: $color; } // Firefox 19+
&:-ms-input-placeholder { color: $color; } // Internet Explorer 10+
&::-webkit-input-placeholder { color: $color; } // Safari and Chrome
}
// Text overflow
// Requires inline-block or block for proper styling
@mixin text-overflow() {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
// CSS image replacement
// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
@mixin hide-text() {
font: 0/0 a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0;
}
// CSS3 PROPERTIES
// --------------------------------------------------
// Single side border-radius
@mixin border-top-radius($radius) {
border-top-right-radius: $radius;
border-top-left-radius: $radius;
}
@mixin border-right-radius($radius) {
border-bottom-right-radius: $radius;
border-top-right-radius: $radius;
}
@mixin border-bottom-radius($radius) {
border-bottom-right-radius: $radius;
border-bottom-left-radius: $radius;
}
@mixin border-left-radius($radius) {
border-bottom-left-radius: $radius;
border-top-left-radius: $radius;
}
// Drop shadows
@mixin box-shadow($shadow...) {
-webkit-box-shadow: $shadow; // iOS <4.3 & Android <4.1
box-shadow: $shadow;
}
// Transitions
@mixin transition($transition...) {
-webkit-transition: $transition;
transition: $transition;
}
@mixin transition-delay($transition-delay) {
-webkit-transition-delay: $transition-delay;
transition-delay: $transition-delay;
}
@mixin transition-duration($transition-duration) {
-webkit-transition-duration: $transition-duration;
transition-duration: $transition-duration;
}
@mixin transition-transform($transition...) {
-webkit-transition: -webkit-transform $transition;
-moz-transition: -moz-transform $transition;
-o-transition: -o-transform $transition;
transition: transform $transition;
}
// Transformations
@mixin rotate($degrees) {
-webkit-transform: rotate($degrees);
-ms-transform: rotate($degrees); // IE9+
transform: rotate($degrees);
}
@mixin scale($ratio) {
-webkit-transform: scale($ratio);
-ms-transform: scale($ratio); // IE9+
transform: scale($ratio);
}
@mixin translate($x, $y) {
-webkit-transform: translate($x, $y);
-ms-transform: translate($x, $y); // IE9+
transform: translate($x, $y);
}
@mixin skew($x, $y) {
-webkit-transform: skew($x, $y);
-ms-transform: skewX($x) skewY($y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+
transform: skew($x, $y);
}
@mixin translate3d($x, $y, $z) {
-webkit-transform: translate3d($x, $y, $z);
transform: translate3d($x, $y, $z);
}
// Backface visibility
// Prevent browsers from flickering when using CSS 3D transforms.
// Default value is `visible`, but can be changed to `hidden`
// See git pull https://github.com/dannykeane/bootstrap.git backface-visibility for examples
@mixin backface-visibility($visibility){
-webkit-backface-visibility: $visibility;
-moz-backface-visibility: $visibility;
backface-visibility: $visibility;
}
// Box sizing
@mixin box-sizing($boxmodel) {
-webkit-box-sizing: $boxmodel;
-moz-box-sizing: $boxmodel;
box-sizing: $boxmodel;
}
// User select
// For selecting text on the page
@mixin user-select($select) {
-webkit-user-select: $select;
-moz-user-select: $select;
-ms-user-select: $select; // IE10+
-o-user-select: $select;
user-select: $select;
}
// Resize anything
@mixin resizable($direction) {
resize: $direction; // Options: horizontal, vertical, both
overflow: auto; // Safari fix
}
// CSS3 Content Columns
@mixin content-columns($column-count, $column-gap: $grid-gutter-width) {
-webkit-column-count: $column-count;
-moz-column-count: $column-count;
column-count: $column-count;
-webkit-column-gap: $column-gap;
-moz-column-gap: $column-gap;
column-gap: $column-gap;
}
// Optional hyphenation
@mixin hyphens($mode: auto) {
word-wrap: break-word;
-webkit-hyphens: $mode;
-moz-hyphens: $mode;
-ms-hyphens: $mode; // IE10+
-o-hyphens: $mode;
hyphens: $mode;
}
// Opacity
@mixin opacity($opacity) {
opacity: $opacity;
// IE8 filter
$opacity-ie: ($opacity * 100);
filter: alpha(opacity=$opacity-ie);
}
// GRADIENTS
// --------------------------------------------------
// Horizontal gradient, from left to right
//
// Creates two color stops, start and end, by specifying a color and position for each color stop.
// Color stops are not available in IE9 and below.
@mixin gradient-horizontal($start-color: #555, $end-color: #333, $start-percent: 0%, $end-percent: 100%) {
background-image: -webkit-gradient(linear, $start-percent top, $end-percent top, from($start-color), to($end-color)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(left, color-stop($start-color $start-percent), color-stop($end-color $end-percent)); // Safari 5.1+, Chrome 10+
background-image: -moz-linear-gradient(left, $start-color $start-percent, $end-color $end-percent); // FF 3.6+
background-image: linear-gradient(to right, $start-color $start-percent, $end-color $end-percent); // Standard, IE10
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=1); // IE9 and down
}
// Vertical gradient, from top to bottom
//
// Creates two color stops, start and end, by specifying a color and position for each color stop.
// Color stops are not available in IE9 and below.
@mixin gradient-vertical($start-color: #555, $end-color: #333, $start-percent: 0%, $end-percent: 100%) {
background-image: -webkit-gradient(linear, left $start-percent, left $end-percent, from($start-color), to($end-color)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(top, $start-color, $start-percent, $end-color, $end-percent); // Safari 5.1+, Chrome 10+
background-image: -moz-linear-gradient(top, $start-color $start-percent, $end-color $end-percent); // FF 3.6+
background-image: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent); // Standard, IE10
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=0); // IE9 and down
}
@mixin gradient-directional($start-color: #555, $end-color: #333, $deg: 45deg) {
background-repeat: repeat-x;
background-image: -webkit-linear-gradient($deg, $start-color, $end-color); // Safari 5.1+, Chrome 10+
background-image: -moz-linear-gradient($deg, $start-color, $end-color); // FF 3.6+
background-image: linear-gradient($deg, $start-color, $end-color); // Standard, IE10
}
@mixin gradient-horizontal-three-colors($start-color: #00b3ee, $mid-color: #7a43b6, $color-stop: 50%, $end-color: #c3325f) {
background-image: -webkit-gradient(left, linear, 0 0, 0 100%, from($start-color), color-stop($color-stop, $mid-color), to($end-color));
background-image: -webkit-linear-gradient(left, $start-color, $mid-color $color-stop, $end-color);
background-image: -moz-linear-gradient(left, $start-color, $mid-color $color-stop, $end-color);
background-image: linear-gradient(to right, $start-color, $mid-color $color-stop, $end-color);
background-repeat: no-repeat;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=1); // IE9 and down, gets no color-stop at all for proper fallback
}
@mixin gradient-vertical-three-colors($start-color: #00b3ee, $mid-color: #7a43b6, $color-stop: 50%, $end-color: #c3325f) {
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($start-color), color-stop($color-stop, $mid-color), to($end-color));
background-image: -webkit-linear-gradient($start-color, $mid-color $color-stop, $end-color);
background-image: -moz-linear-gradient(top, $start-color, $mid-color $color-stop, $end-color);
background-image: linear-gradient($start-color, $mid-color $color-stop, $end-color);
background-repeat: no-repeat;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=0); // IE9 and down, gets no color-stop at all for proper fallback
}
@mixin gradient-radial($inner-color: #555, $outer-color: #333) {
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from($inner-color), to($outer-color));
background-image: -webkit-radial-gradient(circle, $inner-color, $outer-color);
background-image: -moz-radial-gradient(circle, $inner-color, $outer-color);
background-image: radial-gradient(circle, $inner-color, $outer-color);
background-repeat: no-repeat;
}
@mixin gradient-striped($color: #555, $angle: 45deg) {
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
background-image: -webkit-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: -moz-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
}
// Reset filters for IE
//
// When you need to remove a gradient background, do not forget to use this to reset
// the IE filter for IE9 and below.
@mixin reset-filter() {
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
// Retina images
//
// Short retina mixin for setting background-image and -size
@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
background-image: url("#{$file-1x}");
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1),
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi),
only screen and ( min-resolution: 2dppx) {
background-image: url("#{$file-2x}");
background-size: $width-1x $height-1x;
}
}
// Responsive image
//
// Keep images from scaling beyond the width of their parents.
@mixin img-responsive($display: block) {
display: $display;
max-width: 100%; // Part 1: Set a maximum relative to the parent
height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
}
// COMPONENT MIXINS
// --------------------------------------------------
// Horizontal dividers
// -------------------------
// Dividers (basically an hr) within dropdowns and nav lists
@mixin nav-divider($color: #e5e5e5) {
height: 1px;
margin: (($line-height-computed / 2) - 1) 0;
overflow: hidden;
background-color: $color;
}
// Panels
// -------------------------
@mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) {
border-color: $border;
& > .panel-heading {
color: $heading-text-color;
background-color: $heading-bg-color;
border-color: $heading-border;
+ .panel-collapse .panel-body {
border-top-color: $border;
}
}
& > .panel-footer {
+ .panel-collapse .panel-body {
border-bottom-color: $border;
}
}
}
// Alerts
// -------------------------
@mixin alert-variant($background, $border, $text-color) {
background-color: $background;
border-color: $border;
color: $text-color;
hr {
border-top-color: darken($border, 5%);
}
.alert-link {
color: darken($text-color, 10%);
}
}
// Tables
// -------------------------
@mixin table-row-variant($state, $background, $border) {
// Exact selectors below required to override `.table-striped` and prevent
// inheritance to nested tables.
.table > thead > tr,
.table > tbody > tr,
.table > tfoot > tr {
> td.#{$state},
> th.#{$state},
&.#{$state} > td,
&.#{$state} > th {
background-color: $background;
border-color: $border;
}
}
// Hover states for `.table-hover`
// Note: this is not available for cells or rows within `thead` or `tfoot`.
.table-hover > tbody > tr {
> td.#{$state}:hover,
> th.#{$state}:hover,
&.#{$state}:hover > td {
background-color: darken($background, 5%);
border-color: darken($border, 5%);
}
}
}
// Button variants
// -------------------------
// Easily pump out default styles, as well as :hover, :focus, :active,
// and disabled options for all buttons
@mixin button-variant($color, $background, $border) {
color: $color;
background-color: $background;
border-color: $border;
&:hover,
&:focus,
&:active,
&.active {
color: $color;
background-color: darken($background, 8%);
border-color: darken($border, 12%);
}
.open & { &.dropdown-toggle {
color: $color;
background-color: darken($background, 8%);
border-color: darken($border, 12%);
} }
&:active,
&.active {
background-image: none;
}
.open & { &.dropdown-toggle {
background-image: none;
} }
&.disabled,
&[disabled],
fieldset[disabled] & {
&,
&:hover,
&:focus,
&:active,
&.active {
background-color: $background;
border-color: $border
}
}
}
// Button sizes
// -------------------------
@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
line-height: $line-height;
border-radius: $border-radius;
}
// Pagination
// -------------------------
@mixin pagination-size($padding-vertical, $padding-horizontal, $font-size, $border-radius) {
> li {
> a,
> span {
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
}
&:first-child {
> a,
> span {
@include border-left-radius($border-radius);
}
}
&:last-child {
> a,
> span {
@include border-right-radius($border-radius);
}
}
}
}
// Labels
// -------------------------
@mixin label-variant($color) {
background-color: $color;
&[href] {
&:hover,
&:focus {
background-color: darken($color, 10%);
}
}
}
// Navbar vertical align
// -------------------------
// Vertically center elements in the navbar.
// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.
@mixin navbar-vertical-align($element-height) {
margin-top: (($navbar-height - $element-height) / 2);
margin-bottom: (($navbar-height - $element-height) / 2);
}
// Progress bars
// -------------------------
@mixin progress-bar-variant($color) {
background-color: $color;
.progress-striped & {
@include gradient-striped($color);
}
}
// Responsive utilities
// -------------------------
// More easily include all the states for responsive-utilities.less.
// $parent hack because sass doesn't support tr& (without space)
@mixin responsive-visibility($parent) {
#{$parent} { display: block !important; }
tr#{$parent} { display: table-row !important; }
th#{$parent},
td#{$parent} { display: table-cell !important; }
}
@mixin responsive-invisibility($parent) {
#{$parent} { display: none !important; }
tr#{$parent} { display: none !important; }
th#{$parent},
td#{$parent} { display: none !important; }
}
// Grid System
// -----------
// Centered container element
@mixin container-fixed() {
margin-right: auto;
margin-left: auto;
padding-left: ($grid-gutter-width / 2);
padding-right: ($grid-gutter-width / 2);
@include clearfix();
}
// Creates a wrapper for a series of columns
@mixin make-row($gutter: $grid-gutter-width) {
margin-left: ($gutter / -2);
margin-right: ($gutter / -2);
@include clearfix();
}
// Generate the extra small columns
@mixin make-xs-column($columns, $gutter: $grid-gutter-width) {
position: relative;
float: left;
width: percentage(($columns / $grid-columns));
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
}
// Generate the small columns
@mixin make-sm-column($columns, $gutter: $grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
// Calculate width based on number of columns available
@media (min-width: $screen-sm) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
// Generate the small column offsets
@mixin make-sm-column-offset($columns) {
@media (min-width: $screen-sm) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-sm-column-push($columns) {
@media (min-width: $screen-sm) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-sm-column-pull($columns) {
@media (min-width: $screen-sm) {
right: percentage(($columns / $grid-columns));
}
}
// Generate the medium columns
@mixin make-md-column($columns, $gutter: $grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
// Calculate width based on number of columns available
@media (min-width: $screen-md) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
// Generate the large column offsets
@mixin make-md-column-offset($columns) {
@media (min-width: $screen-md) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-md-column-push($columns) {
@media (min-width: $screen-md) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-md-column-pull($columns) {
@media (min-width: $screen-md) {
right: percentage(($columns / $grid-columns));
}
}
// Generate the large columns
@mixin make-lg-column($columns, $gutter: $grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
// Calculate width based on number of columns available
@media (min-width: $screen-lg) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
// Generate the large column offsets
@mixin make-lg-column-offset($columns) {
@media (min-width: $screen-lg) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-lg-column-push($columns) {
@media (min-width: $screen-lg) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-lg-column-pull($columns) {
@media (min-width: $screen-lg) {
right: percentage(($columns / $grid-columns));
}
}
// Form validation states
//
// Used in forms.less to generate the form validation CSS for warnings, errors,
// and successes.
@mixin form-control-validation($text-color: #555, $border-color: #ccc, $background-color: #f5f5f5) {
// Color the label and help text
.help-block,
.control-label {
color: $text-color;
}
// Set the border and box shadow on specific inputs to match
.form-control {
border-color: $border-color;
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
&:focus {
border-color: darken($border-color, 10%);
$shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($border-color, 20%);
@include box-shadow($shadow);
}
}
// Set validation states also for addons
.input-group-addon {
color: $text-color;
border-color: $border-color;
background-color: $background-color;
}
}
// Form control focus state
//
// Generate a customized focus state and for any input with the specified color,
// which defaults to the `$input-focus-border` variable.
//
// We highly encourage you to not customize the default value, but instead use
// this to tweak colors on an as-needed basis. This aesthetic change is based on
// WebKit's default styles, but applicable to a wider range of browsers. Its
// usability and accessibility should be taken into account with any change.
//
// Example usage: change the default blue border and shadow to white for better
// contrast against a dark gray background.
@mixin form-control-focus($color: $input-border-focus) {
$color-rgba: rgba(red($color), green($color), blue($color), .6);
&:focus {
border-color: $color;
outline: 0;
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px $color-rgba);
}
}
// Form control sizing
//
// Relative text size, padding, and border-radii changes for form controls. For
// horizontal sizing, wrap controls in the predefined grid classes. `<select>`
// element gets special love because it's special, and that's a fact!
@mixin input-size($parent, $input-height, $padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
#{$parent} { height: $input-height;
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
line-height: $line-height;
border-radius: $border-radius; }
select#{$parent} {
height: $input-height;
line-height: $input-height;
}
textarea#{$parent} {
height: auto;
}
}
@@ -0,0 +1,145 @@
//
// Modals
// --------------------------------------------------
// .modal-open - body class for killing the scroll
// .modal - container to scroll within
// .modal-dialog - positioning shell for the actual modal
// .modal-content - actual modal w/ bg and corners and shit
// Kill the scroll on the body
.modal-open {
overflow: hidden;
// Account for hiding of scrollbar
.navbar-fixed-top,
.navbar-fixed-bottom {
margin-right: 15px
}
}
body.modal-open {
margin-right: 15px
}
// Container that the modal scrolls within
.modal {
display: none;
overflow: auto;
overflow-y: scroll;
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: $zindex-modal-background;
// When fading in the modal, animate it to slide down
&.fade .modal-dialog {
@include translate(0, -25%);
@include transition-transform(0.3s ease-out);
}
&.in .modal-dialog { @include translate(0, 0)}
}
// Shell div to position the modal with bottom padding
.modal-dialog {
margin-left: auto;
margin-right: auto;
width: auto;
padding: 10px;
z-index: ($zindex-modal-background + 10);
}
// Actual modal
.modal-content {
position: relative;
background-color: $modal-content-bg;
border: 1px solid $modal-content-fallback-border-color; //old browsers fallback (ie8 etc)
border: 1px solid $modal-content-border-color;
border-radius: $border-radius-large;
@include box-shadow(0 3px 9px rgba(0,0,0,.5));
background-clip: padding-box;
// Remove focus outline from opened modal
outline: none;
}
// Modal background
.modal-backdrop {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: ($zindex-modal-background - 10);
background-color: $modal-backdrop-bg;
// Fade for backdrop
&.fade { @include opacity(0); }
&.in { @include opacity(.5); }
}
// Modal header
// Top section of the modal w/ title and dismiss
.modal-header {
padding: $modal-title-padding;
border-bottom: 1px solid $modal-header-border-color;
min-height: ($modal-title-padding + $modal-title-line-height);
}
// Close icon
.modal-header .close {
margin-top: -2px;
}
// Title text within header
.modal-title {
margin: 0;
line-height: $modal-title-line-height;
}
// Modal body
// Where all modal content resides (sibling of .modal-header and .modal-footer)
.modal-body {
position: relative;
padding: $modal-inner-padding;
}
// Footer (for actions)
.modal-footer {
margin-top: 15px;
padding: ($modal-inner-padding - 1) $modal-inner-padding $modal-inner-padding;
text-align: right; // right align buttons
border-top: 1px solid $modal-footer-border-color;
@include clearfix(); // clear it in case folks use .pull-* classes on buttons
// Properly space out buttons
.btn + .btn {
margin-left: 5px;
margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs
}
// but override that for button groups
.btn-group .btn + .btn {
margin-left: -1px;
}
// and override it for block buttons as well
.btn-block + .btn-block {
margin-left: 0;
}
}
// Scale up the modal
@media screen and (min-width: $screen-tablet) {
.modal-dialog {
left: 50%;
right: auto;
width: 600px;
padding-top: 30px;
padding-bottom: 30px;
}
.modal-content {
@include box-shadow(0 5px 15px rgba(0,0,0,.5));
}
}
@@ -0,0 +1,625 @@
//
// Navbars
// --------------------------------------------------
// Wrapper and base class
//
// Provide a static navbar from which we expand to create full-width, fixed, and
// other navbar variations.
.navbar {
position: relative;
z-index: $zindex-navbar;
min-height: $navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)
margin-bottom: $navbar-margin-bottom;
border: 1px solid transparent;
// Prevent floats from breaking the navbar
@include clearfix();
@media (min-width: $grid-float-breakpoint) {
border-radius: $navbar-border-radius;
}
}
// Navbar heading
//
// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy
// styling of responsive aspects.
.navbar-header {
@include clearfix();
@media (min-width: $grid-float-breakpoint) {
float: left;
}
}
// Navbar collapse (body)
//
// Group your navbar content into this for easy collapsing and expanding across
// various device sizes. By default, this content is collapsed when <768px, but
// will expand past that for a horizontal display.
//
// To start (on mobile devices) the navbar links, forms, and buttons are stacked
// vertically and include a `max-height` to overflow in case you have too much
// content for the user's viewport.
.navbar-collapse {
max-height: 340px;
overflow-x: visible;
padding-right: $navbar-padding-horizontal;
padding-left: $navbar-padding-horizontal;
border-top: 1px solid transparent;
box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
@include clearfix();
-webkit-overflow-scrolling: touch;
&.in {
overflow-y: auto;
}
@media (min-width: $grid-float-breakpoint) {
width: auto;
border-top: 0;
box-shadow: none;
&.collapse {
display: block !important;
height: auto !important;
padding-bottom: 0; // Override default setting
overflow: visible !important;
}
&.in {
overflow-y: visible;
}
// Account for first and last children spacing
.navbar-nav.navbar-left:first-child {
margin-left: -$navbar-padding-horizontal;
}
.navbar-nav.navbar-right:last-child {
margin-right: -$navbar-padding-horizontal;
}
.navbar-text:last-child {
margin-right: 0;
}
}
}
// Both navbar header and collapse
//
// When a container is present, change the behavior of the header and collapse.
.container > .navbar-header,
.container > .navbar-collapse {
margin-right: -$navbar-padding-horizontal;
margin-left: -$navbar-padding-horizontal;
@media (min-width: $grid-float-breakpoint) {
margin-right: 0;
margin-left: 0;
}
}
//
// Navbar alignment options
//
// Display the navbar across the entirity of the page or fixed it to the top or
// bottom of the page.
// Static top (unfixed, but 100% wide) navbar
.navbar-static-top {
border-width: 0 0 1px;
@media (min-width: $grid-float-breakpoint) {
border-radius: 0;
}
}
// Fix the top/bottom navbars when screen real estate supports it
.navbar-fixed-top,
.navbar-fixed-bottom {
position: fixed;
right: 0;
left: 0;
border-width: 0 0 1px;
// Undo the rounded corners
@media (min-width: $grid-float-breakpoint) {
border-radius: 0;
}
}
.navbar-fixed-top {
z-index: $zindex-navbar-fixed;
top: 0;
}
.navbar-fixed-bottom {
bottom: 0;
margin-bottom: 0; // override .navbar defaults
}
// Brand/project name
.navbar-brand {
float: left;
padding: $navbar-padding-vertical $navbar-padding-horizontal;
font-size: $font-size-large;
line-height: $line-height-computed;
&:hover,
&:focus {
text-decoration: none;
}
@media (min-width: $grid-float-breakpoint) {
.navbar > .container & {
margin-left: -$navbar-padding-horizontal;
}
}
}
// Navbar toggle
//
// Custom button for toggling the `.navbar-collapse`, powered by the collapse
// JavaScript plugin.
.navbar-toggle {
position: relative;
float: right;
margin-right: $navbar-padding-horizontal;
padding: 9px 10px;
@include navbar-vertical-align(34px);
background-color: transparent;
border: 1px solid transparent;
border-radius: $border-radius-base;
// Bars
.icon-bar {
display: block;
width: 22px;
height: 2px;
border-radius: 1px;
}
.icon-bar + .icon-bar {
margin-top: 4px;
}
@media (min-width: $grid-float-breakpoint) {
display: none;
}
}
// Navbar nav links
//
// Builds on top of the `.nav` components with it's own modifier class to make
// the nav the full height of the horizontal nav (above 768px).
.navbar-nav {
margin: ($navbar-padding-vertical / 2) (-$navbar-padding-horizontal);
> li > a {
padding-top: 10px;
padding-bottom: 10px;
line-height: $line-height-computed;
}
@media (max-width: $screen-xs-max) {
// Dropdowns get custom display when collapsed
.open .dropdown-menu {
position: static;
float: none;
width: auto;
margin-top: 0;
background-color: transparent;
border: 0;
box-shadow: none;
> li > a,
.dropdown-header {
padding: 5px 15px 5px 25px;
}
> li > a {
line-height: $line-height-computed;
&:hover,
&:focus {
background-image: none;
}
}
}
}
// Uncollapse the nav
@media (min-width: $grid-float-breakpoint) {
float: left;
margin: 0;
> li {
float: left;
> a {
padding-top: (($navbar-height - $line-height-computed) / 2);
padding-bottom: (($navbar-height - $line-height-computed) / 2);
}
}
}
}
// Component alignment
//
// Repurpose the pull utilities as their own navbar utilities to avoid specifity
// issues with parents and chaining. Only do this when the navbar is uncollapsed
// though so that navbar contents properly stack and align in mobile.
@media (min-width: $grid-float-breakpoint) {
.navbar-left {
float: left !important;
}
.navbar-right {
float: right !important;
}
}
// Navbar form
//
// Extension of the `.form-inline` with some extra flavor for optimum display in
// our navbars.
.navbar-form {
margin-left: -$navbar-padding-horizontal;
margin-right: -$navbar-padding-horizontal;
padding: 10px $navbar-padding-horizontal;
border-top: 1px solid transparent;
border-bottom: 1px solid transparent;
$shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);
@include box-shadow($shadow);
// Mixin behavior for optimum display
@extend .form-inline;
.form-group {
@media (max-width: $screen-xs-max) {
margin-bottom: 5px;
}
}
// Vertically center in expanded, horizontal navbar
@include navbar-vertical-align($input-height-base);
// Undo 100% width for pull classes
@media (min-width: $grid-float-breakpoint) {
width: auto;
border: 0;
margin-left: 0;
margin-right: 0;
padding-top: 0;
padding-bottom: 0;
@include box-shadow(none);
}
}
// Dropdown menus
// Menu position and menu carets
.navbar-nav > li > .dropdown-menu {
margin-top: 0;
@include border-top-radius(0);
}
// Menu position and menu caret support for dropups via extra dropup class
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
@include border-bottom-radius(0);
}
// Right aligned menus need alt position
.navbar-nav.pull-right > li > .dropdown-menu,
.navbar-nav > li > .dropdown-menu.pull-right {
left: auto;
right: 0;
}
// Buttons in navbars
//
// Vertically center a button within a navbar (when *not* in a form).
.navbar-btn {
@include navbar-vertical-align($input-height-base);
}
// Text in navbars
//
// Add a class to make any element properly align itself vertically within the navbars.
.navbar-text {
float: left;
@include navbar-vertical-align($line-height-computed);
@media (min-width: $grid-float-breakpoint) {
margin-left: $navbar-padding-horizontal;
margin-right: $navbar-padding-horizontal;
}
}
// Alternate navbars
// --------------------------------------------------
// Default navbar
.navbar-default {
background-color: $navbar-default-bg;
border-color: $navbar-default-border;
.navbar-brand {
color: $navbar-default-brand-color;
&:hover,
&:focus {
color: $navbar-default-brand-hover-color;
background-color: $navbar-default-brand-hover-bg;
}
}
.navbar-text {
color: $navbar-default-color;
}
.navbar-nav {
> li > a {
color: $navbar-default-link-color;
&:hover,
&:focus {
color: $navbar-default-link-hover-color;
background-color: $navbar-default-link-hover-bg;
}
}
> .active > a {
&,
&:hover,
&:focus {
color: $navbar-default-link-active-color;
background-color: $navbar-default-link-active-bg;
}
}
> .disabled > a {
&,
&:hover,
&:focus {
color: $navbar-default-link-disabled-color;
background-color: $navbar-default-link-disabled-bg;
}
}
}
.navbar-toggle {
border-color: $navbar-default-toggle-border-color;
&:hover,
&:focus {
background-color: $navbar-default-toggle-hover-bg;
}
.icon-bar {
background-color: $navbar-default-toggle-icon-bar-bg;
}
}
.navbar-collapse,
.navbar-form {
border-color: darken($navbar-default-bg, 7%);
}
// Dropdown menu items and carets
.navbar-nav {
// Caret should match text color on hover
> .dropdown > a:hover .caret,
> .dropdown > a:focus .caret {
border-top-color: $navbar-default-link-hover-color;
border-bottom-color: $navbar-default-link-hover-color;
}
// Remove background color from open dropdown
> .open > a {
&,
&:hover,
&:focus {
background-color: $navbar-default-link-active-bg;
color: $navbar-default-link-active-color;
.caret {
border-top-color: $navbar-default-link-active-color;
border-bottom-color: $navbar-default-link-active-color;
}
}
}
> .dropdown > a .caret {
border-top-color: $navbar-default-link-color;
border-bottom-color: $navbar-default-link-color;
}
@media (max-width: $screen-xs-max) {
// Dropdowns get custom display when collapsed
.open .dropdown-menu {
> li > a {
color: $navbar-default-link-color;
&:hover,
&:focus {
color: $navbar-default-link-hover-color;
background-color: $navbar-default-link-hover-bg;
}
}
> .active > a {
&,
&:hover,
&:focus {
color: $navbar-default-link-active-color;
background-color: $navbar-default-link-active-bg;
}
}
> .disabled > a {
&,
&:hover,
&:focus {
color: $navbar-default-link-disabled-color;
background-color: $navbar-default-link-disabled-bg;
}
}
}
}
}
// Links in navbars
//
// Add a class to ensure links outside the navbar nav are colored correctly.
.navbar-link {
color: $navbar-default-link-color;
&:hover {
color: $navbar-default-link-hover-color;
}
}
}
// Inverse navbar
.navbar-inverse {
background-color: $navbar-inverse-bg;
border-color: $navbar-inverse-border;
.navbar-brand {
color: $navbar-inverse-brand-color;
&:hover,
&:focus {
color: $navbar-inverse-brand-hover-color;
background-color: $navbar-inverse-brand-hover-bg;
}
}
.navbar-text {
color: $navbar-inverse-color;
}
.navbar-nav {
> li > a {
color: $navbar-inverse-link-color;
&:hover,
&:focus {
color: $navbar-inverse-link-hover-color;
background-color: $navbar-inverse-link-hover-bg;
}
}
> .active > a {
&,
&:hover,
&:focus {
color: $navbar-inverse-link-active-color;
background-color: $navbar-inverse-link-active-bg;
}
}
> .disabled > a {
&,
&:hover,
&:focus {
color: $navbar-inverse-link-disabled-color;
background-color: $navbar-inverse-link-disabled-bg;
}
}
}
// Darken the responsive nav toggle
.navbar-toggle {
border-color: $navbar-inverse-toggle-border-color;
&:hover,
&:focus {
background-color: $navbar-inverse-toggle-hover-bg;
}
.icon-bar {
background-color: $navbar-inverse-toggle-icon-bar-bg;
}
}
.navbar-collapse,
.navbar-form {
border-color: darken($navbar-inverse-bg, 7%);
}
// Dropdowns
.navbar-nav {
> .open > a {
&,
&:hover,
&:focus {
background-color: $navbar-inverse-link-active-bg;
color: $navbar-inverse-link-active-color;
}
}
> .dropdown > a:hover .caret {
border-top-color: $navbar-inverse-link-hover-color;
border-bottom-color: $navbar-inverse-link-hover-color;
}
> .dropdown > a .caret {
border-top-color: $navbar-inverse-link-color;
border-bottom-color: $navbar-inverse-link-color;
}
> .open > a {
&,
&:hover,
&:focus {
.caret {
border-top-color: $navbar-inverse-link-active-color;
border-bottom-color: $navbar-inverse-link-active-color;
}
}
}
@media (max-width: $screen-xs-max) {
// Dropdowns get custom display
.open .dropdown-menu {
> .dropdown-header {
border-color: $navbar-inverse-border;
}
> li > a {
color: $navbar-inverse-link-color;
&:hover,
&:focus {
color: $navbar-inverse-link-hover-color;
background-color: $navbar-inverse-link-hover-bg;
}
}
> .active > a {
&,
&:hover,
&:focus {
color: $navbar-inverse-link-active-color;
background-color: $navbar-inverse-link-active-bg;
}
}
> .disabled > a {
&,
&:hover,
&:focus {
color: $navbar-inverse-link-disabled-color;
background-color: $navbar-inverse-link-disabled-bg;
}
}
}
}
}
.navbar-link {
color: $navbar-inverse-link-color;
&:hover {
color: $navbar-inverse-link-hover-color;
}
}
}
@@ -0,0 +1,229 @@
//
// Navs
// --------------------------------------------------
// Base class
// --------------------------------------------------
.nav {
margin-bottom: 0;
padding-left: 0; // Override default ul/ol
list-style: none;
@include clearfix();
> li {
position: relative;
display: block;
> a {
position: relative;
display: block;
padding: $nav-link-padding;
&:hover,
&:focus {
text-decoration: none;
background-color: $nav-link-hover-bg;
}
}
// Disabled state sets text to gray and nukes hover/tab effects
&.disabled > a {
color: $nav-disabled-link-color;
&:hover,
&:focus {
color: $nav-disabled-link-hover-color;
text-decoration: none;
background-color: transparent;
cursor: not-allowed;
}
}
}
// Open dropdowns
.open > a {
&,
&:hover,
&:focus {
background-color: $nav-link-hover-bg;
border-color: $link-color;
}
}
// Dividers (basically an hr) within the dropdown
.nav-divider {
@include nav-divider();
}
// Prevent IE8 from misplacing imgs
// See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989
> li > a > img {
max-width: none;
}
}
// Tabs
// -------------------------
// Give the tabs something to sit on
.nav-tabs {
border-bottom: 1px solid $nav-tabs-border-color;
> li {
float: left;
// Make the list-items overlay the bottom border
margin-bottom: -1px;
// Actual tabs (as links)
> a {
margin-right: 2px;
line-height: $line-height-base;
border: 1px solid transparent;
border-radius: $border-radius-base $border-radius-base 0 0;
&:hover {
border-color: $nav-tabs-link-hover-border-color $nav-tabs-link-hover-border-color $nav-tabs-border-color;
}
}
// Active state, and it's :hover to override normal :hover
&.active > a {
&,
&:hover,
&:focus {
color: $nav-tabs-active-link-hover-color;
background-color: $nav-tabs-active-link-hover-bg;
border: 1px solid $nav-tabs-active-link-hover-border-color;
border-bottom-color: transparent;
cursor: default;
}
}
}
// pulling this in mainly for less shorthand
&.nav-justified {
@extend .nav-justified;
@extend .nav-tabs-justified;
}
}
// Pills
// -------------------------
.nav-pills {
> li {
float: left;
// Links rendered as pills
> a {
border-radius: 5px;
}
+ li {
margin-left: 2px;
}
// Active state
&.active > a {
&,
&:hover,
&:focus {
color: $nav-pills-active-link-hover-color;
background-color: $nav-pills-active-link-hover-bg;
}
}
}
}
// Stacked pills
.nav-stacked {
> li {
float: none;
+ li {
margin-top: 2px;
margin-left: 0; // no need for this gap between nav items
}
}
}
// Nav variations
// --------------------------------------------------
// Justified nav links
// -------------------------
.nav-justified {
width: 100%;
> li {
float: none;
> a {
text-align: center;
}
}
@media (min-width: $screen-sm) {
> li {
display: table-cell;
width: 1%;
}
}
}
// Move borders to anchors instead of bottom of list
.nav-tabs-justified {
border-bottom: 0;
> li > a {
border-bottom: 1px solid $nav-tabs-justified-link-border-color;
// Override margin from .nav-tabs
margin-right: 0;
}
> .active > a {
border-bottom-color: $nav-tabs-justified-active-link-border-color;
}
}
// Tabbable tabs
// -------------------------
// Clear any floats
.tabbable {
@include clearfix();
}
// Show/hide tabbable areas
.tab-content > .tab-pane,
.pill-content > .pill-pane {
display: none;
}
.tab-content,
.pill-content {
> .active {
display: block;
}
}
// Dropdowns
// -------------------------
// Make dropdown carets use link color in navs
.nav .caret {
border-top-color: $link-color;
border-bottom-color: $link-color;
}
.nav a:hover .caret {
border-top-color: $link-hover-color;
border-bottom-color: $link-hover-color;
}
// Specific dropdowns
.nav-tabs .dropdown-menu {
// make dropdown border overlap tab border
margin-top: -1px;
// Remove the top rounded corners here since there is a hard edge above the menu
@include border-top-radius(0);
}
@@ -0,0 +1,396 @@
/*! normalize.css v2.1.0 | MIT License | git.io/normalize */
// ==========================================================================
// HTML5 display definitions
// ==========================================================================
//
// Correct `block` display not defined in IE 8/9.
//
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
display: block;
}
//
// Correct `inline-block` display not defined in IE 8/9.
//
audio,
canvas,
video {
display: inline-block;
}
//
// Prevent modern browsers from displaying `audio` without controls.
// Remove excess height in iOS 5 devices.
//
audio:not([controls]) {
display: none;
height: 0;
}
//
// Address styling not present in IE 8/9.
//
[hidden] {
display: none;
}
// ==========================================================================
// Base
// ==========================================================================
//
// 1. Set default font family to sans-serif.
// 2. Prevent iOS text size adjust after orientation change, without disabling
// user zoom.
//
html {
font-family: sans-serif; // 1
-webkit-text-size-adjust: 100%; // 2
-ms-text-size-adjust: 100%; // 2
}
//
// Remove default margin.
//
body {
margin: 0;
}
// ==========================================================================
// Links
// ==========================================================================
//
// Address `outline` inconsistency between Chrome and other browsers.
//
a:focus {
outline: thin dotted;
}
//
// Improve readability when focused and also mouse hovered in all browsers.
//
a:active,
a:hover {
outline: 0;
}
// ==========================================================================
// Typography
// ==========================================================================
//
// Address variable `h1` font-size and margin within `section` and `article`
// contexts in Firefox 4+, Safari 5, and Chrome.
//
h1 {
font-size: 2em;
margin: 0.67em 0;
}
//
// Address styling not present in IE 8/9, Safari 5, and Chrome.
//
abbr[title] {
border-bottom: 1px dotted;
}
//
// Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
//
b,
strong {
font-weight: bold;
}
//
// Address styling not present in Safari 5 and Chrome.
//
dfn {
font-style: italic;
}
//
// Address differences between Firefox and other browsers.
//
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}
//
// Address styling not present in IE 8/9.
//
mark {
background: #ff0;
color: #000;
}
//
// Correct font family set oddly in Safari 5 and Chrome.
//
code,
kbd,
pre,
samp {
font-family: monospace, serif;
font-size: 1em;
}
//
// Improve readability of pre-formatted text in all browsers.
//
pre {
white-space: pre-wrap;
}
//
// Set consistent quote types.
//
q {
quotes: "\201C" "\201D" "\2018" "\2019";
}
//
// Address inconsistent and variable font size in all browsers.
//
small {
font-size: 80%;
}
//
// Prevent `sub` and `sup` affecting `line-height` in all browsers.
//
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
// ==========================================================================
// Embedded content
// ==========================================================================
//
// Remove border when inside `a` element in IE 8/9.
//
img {
border: 0;
}
//
// Correct overflow displayed oddly in IE 9.
//
svg:not(:root) {
overflow: hidden;
}
// ==========================================================================
// Figures
// ==========================================================================
//
// Address margin not present in IE 8/9 and Safari 5.
//
figure {
margin: 0;
}
// ==========================================================================
// Forms
// ==========================================================================
//
// Define consistent border, margin, and padding.
//
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
//
// 1. Correct `color` not being inherited in IE 8/9.
// 2. Remove padding so people aren't caught out if they zero out fieldsets.
//
legend {
border: 0; // 1
padding: 0; // 2
}
//
// 1. Correct font family not being inherited in all browsers.
// 2. Correct font size not being inherited in all browsers.
// 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
//
button,
input,
select,
textarea {
font-family: inherit; // 1
font-size: 100%; // 2
margin: 0; // 3
}
//
// Address Firefox 4+ setting `line-height` on `input` using `!important` in
// the UA stylesheet.
//
button,
input {
line-height: normal;
}
//
// Address inconsistent `text-transform` inheritance for `button` and `select`.
// All other form control elements do not inherit `text-transform` values.
// Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
// Correct `select` style inheritance in Firefox 4+ and Opera.
//
button,
select {
text-transform: none;
}
//
// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
// and `video` controls.
// 2. Correct inability to style clickable `input` types in iOS.
// 3. Improve usability and consistency of cursor style between image-type
// `input` and others.
//
button,
html input[type="button"], // 1
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button; // 2
cursor: pointer; // 3
}
//
// Re-set default cursor for disabled elements.
//
button[disabled],
html input[disabled] {
cursor: default;
}
//
// 1. Address box sizing set to `content-box` in IE 8/9.
// 2. Remove excess padding in IE 8/9.
//
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; // 1
padding: 0; // 2
}
//
// 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
// 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
// (include `-moz` to future-proof).
//
input[type="search"] {
-webkit-appearance: textfield; // 1
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; // 2
box-sizing: content-box;
}
//
// Remove inner padding and search cancel button in Safari 5 and Chrome
// on OS X.
//
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
//
// Remove inner padding and border in Firefox 4+.
//
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
//
// 1. Remove default vertical scrollbar in IE 8/9.
// 2. Improve readability and alignment in all browsers.
//
textarea {
overflow: auto; // 1
vertical-align: top; // 2
}
// ==========================================================================
// Tables
// ==========================================================================
//
// Remove most spacing between table cells.
//
table {
border-collapse: collapse;
border-spacing: 0;
}
@@ -0,0 +1,55 @@
//
// Pager pagination
// --------------------------------------------------
.pager {
padding-left: 0;
margin: $line-height-computed 0;
list-style: none;
text-align: center;
@include clearfix();
li {
display: inline;
> a,
> span {
display: inline-block;
padding: 5px 14px;
background-color: $pagination-bg;
border: 1px solid $pagination-border;
border-radius: $pager-border-radius;
}
> a:hover,
> a:focus {
text-decoration: none;
background-color: $pagination-hover-bg;
}
}
.next {
> a,
> span {
float: right;
}
}
.previous {
> a,
> span {
float: left;
}
}
.disabled {
> a,
> a:hover,
> a:focus,
> span {
color: $pager-disabled-color;
background-color: $pagination-bg;
cursor: not-allowed;
}
}
}
@@ -0,0 +1,83 @@
//
// Pagination (multiple pages)
// --------------------------------------------------
.pagination {
display: inline-block;
padding-left: 0;
margin: $line-height-computed 0;
border-radius: $border-radius-base;
> li {
display: inline; // Remove list-style and block-level defaults
> a,
> span {
position: relative;
float: left; // Collapse white-space
padding: $padding-base-vertical $padding-base-horizontal;
line-height: $line-height-base;
text-decoration: none;
background-color: $pagination-bg;
border: 1px solid $pagination-border;
margin-left: -1px;
}
&:first-child {
> a,
> span {
margin-left: 0;
@include border-left-radius($border-radius-base);
}
}
&:last-child {
> a,
> span {
@include border-right-radius($border-radius-base);
}
}
}
> li > a,
> li > span {
&:hover,
&:focus {
background-color: $pagination-hover-bg;
}
}
> .active > a,
> .active > span {
&,
&:hover,
&:focus {
z-index: 2;
color: $pagination-active-color;
background-color: $pagination-active-bg;
border-color: $pagination-active-bg;
cursor: default;
}
}
> .disabled {
> span,
> a,
> a:hover,
> a:focus {
color: $pagination-disabled-color;
background-color: $pagination-bg;
border-color: $pagination-border;
cursor: not-allowed;
}
}
}
// Sizing
// --------------------------------------------------
// Large
.pagination-lg {
@include pagination-size($padding-large-vertical, $padding-large-horizontal, $font-size-large, $border-radius-large);
}
// Small
.pagination-sm {
@include pagination-size($padding-small-vertical, $padding-small-horizontal, $font-size-small, $border-radius-small);
}
@@ -0,0 +1,148 @@
//
// Panels
// --------------------------------------------------
// Base class
.panel {
margin-bottom: $line-height-computed;
background-color: $panel-bg;
border: 1px solid transparent;
border-radius: $panel-border-radius;
@include box-shadow(0 1px 1px rgba(0,0,0,.05));
}
// Panel contents
.panel-body {
padding: 15px;
@include clearfix();
}
// List groups in panels
//
// By default, space out list group content from panel headings to account for
// any kind of custom content between the two.
.panel {
> .list-group {
margin-bottom: 0;
.list-group-item {
border-width: 1px 0;
// Remove border radius for top one
&:first-child {
@include border-top-radius(0);
}
// But keep it for the last one
&:last-child {
border-bottom: 0;
}
}
}
}
// Collapse space between when there's no additional content.
.panel-heading + .list-group {
.list-group-item:first-child {
border-top-width: 0;
}
}
// Tables in panels
//
// Place a non-bordered `.table` within a panel (not within a `.panel-body`) and
// watch it go full width.
.panel {
> .table {
margin-bottom: 0;
}
> .panel-body + .table {
border-top: 1px solid $table-border-color;
}
}
// Optional heading
.panel-heading {
padding: 10px 15px;
border-bottom: 1px solid transparent;
@include border-top-radius($panel-border-radius - 1);
}
// Within heading, strip any `h*` tag of it's default margins for spacing.
.panel-title {
margin-top: 0;
margin-bottom: 0;
font-size: ceil(($font-size-base * 1.125));
> a {
color: inherit;
}
}
// Optional footer (stays gray in every modifier class)
.panel-footer {
padding: 10px 15px;
background-color: $panel-footer-bg;
border-top: 1px solid $panel-inner-border;
@include border-bottom-radius($panel-border-radius - 1);
}
// Collapsable panels (aka, accordion)
//
// Wrap a series of panels in `.panel-group` to turn them into an accordion with
// the help of our collapse JavaScript plugin.
.panel-group {
// Tighten up margin so it's only between panels
.panel {
margin-bottom: 0;
border-radius: $panel-border-radius;
overflow: hidden; // crop contents when collapsed
+ .panel {
margin-top: 5px;
}
}
.panel-heading {
border-bottom: 0;
+ .panel-collapse .panel-body {
border-top: 1px solid $panel-inner-border;
}
}
.panel-footer {
border-top: 0;
+ .panel-collapse .panel-body {
border-bottom: 1px solid $panel-inner-border;
}
}
// New subcomponent for wrapping collapsable content for proper animations
.panel-collapse {
}
}
// Contextual variations
.panel-default {
@include panel-variant($panel-default-border, $panel-default-text, $panel-default-heading-bg, $panel-default-border);
}
.panel-primary {
@include panel-variant($panel-primary-border, $panel-primary-text, $panel-primary-heading-bg, $panel-primary-border);
}
.panel-success {
@include panel-variant($panel-success-border, $panel-success-text, $panel-success-heading-bg, $panel-success-border);
}
.panel-warning {
@include panel-variant($panel-warning-border, $panel-warning-text, $panel-warning-heading-bg, $panel-warning-border);
}
.panel-danger {
@include panel-variant($panel-danger-border, $panel-danger-text, $panel-danger-heading-bg, $panel-danger-border);
}
.panel-info {
@include panel-variant($panel-info-border, $panel-info-text, $panel-info-heading-bg, $panel-info-border);
}
@@ -0,0 +1,133 @@
//
// Popovers
// --------------------------------------------------
.popover {
position: absolute;
top: 0;
left: 0;
z-index: $zindex-popover;
display: none;
max-width: $popover-max-width;
padding: 1px;
text-align: left; // Reset given new insertion method
background-color: $popover-bg;
background-clip: padding-box;
border: 1px solid $popover-fallback-border-color;
border: 1px solid $popover-border-color;
border-radius: $border-radius-large;
@include box-shadow(0 5px 10px rgba(0,0,0,.2));
// Overrides for proper insertion
white-space: normal;
// Offset the popover to account for the popover arrow
&.top { margin-top: -10px; }
&.right { margin-left: 10px; }
&.bottom { margin-top: 10px; }
&.left { margin-left: -10px; }
}
.popover-title {
margin: 0; // reset heading margin
padding: 8px 14px;
font-size: $font-size-base;
font-weight: normal;
line-height: 18px;
background-color: $popover-title-bg;
border-bottom: 1px solid darken($popover-title-bg, 5%);
border-radius: 5px 5px 0 0;
}
.popover-content {
padding: 9px 14px;
}
// Arrows
//
// .arrow is outer, .arrow:after is inner
.popover .arrow {
&,
&:after {
position: absolute;
display: block;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
}
.popover .arrow {
border-width: $popover-arrow-outer-width;
}
.popover .arrow:after {
border-width: $popover-arrow-width;
content: "";
}
.popover {
&.top .arrow {
left: 50%;
margin-left: -$popover-arrow-outer-width;
border-bottom-width: 0;
border-top-color: $popover-arrow-outer-fallback-color; // IE8 fallback
border-top-color: $popover-arrow-outer-color;
bottom: -$popover-arrow-outer-width;
&:after {
content: " ";
bottom: 1px;
margin-left: -$popover-arrow-width;
border-bottom-width: 0;
border-top-color: $popover-arrow-color;
}
}
&.right .arrow {
top: 50%;
left: -$popover-arrow-outer-width;
margin-top: -$popover-arrow-outer-width;
border-left-width: 0;
border-right-color: $popover-arrow-outer-fallback-color; // IE8 fallback
border-right-color: $popover-arrow-outer-color;
&:after {
content: " ";
left: 1px;
bottom: -$popover-arrow-width;
border-left-width: 0;
border-right-color: $popover-arrow-color;
}
}
&.bottom .arrow {
left: 50%;
margin-left: -$popover-arrow-outer-width;
border-top-width: 0;
border-bottom-color: $popover-arrow-outer-fallback-color; // IE8 fallback
border-bottom-color: $popover-arrow-outer-color;
top: -$popover-arrow-outer-width;
&:after {
content: " ";
top: 1px;
margin-left: -$popover-arrow-width;
border-top-width: 0;
border-bottom-color: $popover-arrow-color;
}
}
&.left .arrow {
top: 50%;
right: -$popover-arrow-outer-width;
margin-top: -$popover-arrow-outer-width;
border-right-width: 0;
border-left-color: $popover-arrow-outer-fallback-color; // IE8 fallback
border-left-color: $popover-arrow-outer-color;
&:after {
content: " ";
right: 1px;
border-right-width: 0;
border-left-color: $popover-arrow-color;
bottom: -$popover-arrow-width;
}
}
}
@@ -0,0 +1,100 @@
//
// Basic print styles
// --------------------------------------------------
// Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css
@media print {
* {
text-shadow: none !important;
color: #000 !important; // Black prints faster: h5bp.com/s
background: transparent !important;
box-shadow: none !important;
}
a,
a:visited {
text-decoration: underline;
}
a[href]:after {
content: " (" attr(href) ")";
}
abbr[title]:after {
content: " (" attr(title) ")";
}
// Don't show links for images, or javascript/internal links
.ir a:after,
a[href^="javascript:"]:after,
a[href^="#"]:after {
content: "";
}
pre,
blockquote {
border: 1px solid #999;
page-break-inside: avoid;
}
thead {
display: table-header-group; // h5bp.com/t
}
tr,
img {
page-break-inside: avoid;
}
img {
max-width: 100% !important;
}
@page {
margin: 2cm .5cm;
}
p,
h2,
h3 {
orphans: 3;
widows: 3;
}
h2,
h3 {
page-break-after: avoid;
}
// Bootstrap components
.navbar {
display: none;
}
.table {
td,
th {
background-color: #fff !important;
}
}
.btn,
.dropup > .btn {
> .caret {
border-top-color: #000 !important;
}
}
.label {
border: 1px solid #000;
}
.table {
border-collapse: collapse !important;
}
.table-bordered {
th,
td {
border: 1px solid #ddd !important;
}
}
}
@@ -0,0 +1,95 @@
//
// Progress bars
// --------------------------------------------------
// Bar animations
// -------------------------
// Webkit
@-webkit-keyframes progress-bar-stripes {
from { background-position: 40px 0; }
to { background-position: 0 0; }
}
// Firefox
@-moz-keyframes progress-bar-stripes {
from { background-position: 40px 0; }
to { background-position: 0 0; }
}
// Opera
@-o-keyframes progress-bar-stripes {
from { background-position: 0 0; }
to { background-position: 40px 0; }
}
// Spec and IE10+
@keyframes progress-bar-stripes {
from { background-position: 40px 0; }
to { background-position: 0 0; }
}
// Bar itself
// -------------------------
// Outer container
.progress {
overflow: hidden;
height: $line-height-computed;
margin-bottom: $line-height-computed;
background-color: $progress-bg;
border-radius: $border-radius-base;
@include box-shadow(inset 0 1px 2px rgba(0,0,0,.1));
}
// Bar of progress
.progress-bar {
float: left;
width: 0%;
height: 100%;
font-size: $font-size-small;
color: $progress-bar-color;
text-align: center;
background-color: $progress-bar-bg;
@include box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));
@include transition(width .6s ease);
}
// Striped bars
.progress-striped .progress-bar {
@include gradient-striped($progress-bar-bg);
background-size: 40px 40px;
}
// Call animation for the active one
.progress.active .progress-bar {
-webkit-animation: progress-bar-stripes 2s linear infinite;
-moz-animation: progress-bar-stripes 2s linear infinite;
-ms-animation: progress-bar-stripes 2s linear infinite;
-o-animation: progress-bar-stripes 2s linear infinite;
animation: progress-bar-stripes 2s linear infinite;
}
// Variations
// -------------------------
.progress-bar-success {
@include progress-bar-variant($progress-bar-success-bg);
}
.progress-bar-info {
@include progress-bar-variant($progress-bar-info-bg);
}
.progress-bar-warning {
@include progress-bar-variant($progress-bar-warning-bg);
}
.progress-bar-danger {
@include progress-bar-variant($progress-bar-danger-bg);
}
@@ -0,0 +1,209 @@
//
// Responsive: Utility classes
// --------------------------------------------------
// IE10 Metro responsive
// Required for Windows 8 Metro split-screen snapping with IE10
//
// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/
@-ms-viewport{
width: device-width;
}
// IE10 on Windows Phone 8
// IE10 on WP8 doesn't report CSS pixels, but actual device pixels. In
// other words, say on a Lumia, you'll get 768px as the device width,
// meaning users will see the tablet styles and not phone styles.
//
// Alternatively you can override this with JS (see source below), but
// we won't be doing that here given our limited scope.
//
// Source: http://timkadlec.com/2013/01/windows-phone-8-and-device-width/
@media screen and (max-width: 400px) {
@-ms-viewport{
width: 320px;
}
}
// Hide from screenreaders and browsers
// Credit: HTML5 Boilerplate
.hidden {
display: none !important;
visibility: hidden !important;
}
// Visibility utilities
@include responsive-invisibility('.visible-xs');
@media (max-width: $screen-xs-max) {
@include responsive-visibility('.visible-xs');
}
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
@include responsive-visibility('.visible-xs.visible-sm');
}
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
@include responsive-visibility('.visible-xs.visible-md');
}
@media (min-width: $screen-lg) {
@include responsive-visibility('.visible-xs.visible-lg');
}
@include responsive-invisibility('.visible-sm');
@media (max-width: $screen-xs-max) {
@include responsive-visibility('.visible-sm.visible-xs');
}
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
@include responsive-visibility('.visible-sm');
}
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
@include responsive-visibility('.visible-sm.visible-md');
}
@media (min-width: $screen-lg) {
@include responsive-visibility('.visible-sm.visible-lg');
}
@include responsive-invisibility('.visible-md');
@media (max-width: $screen-xs-max) {
@include responsive-visibility('.visible-md.visible-xs');
}
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
@include responsive-visibility('.visible-md.visible-sm');
}
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
@include responsive-visibility('.visible-md');
}
@media (min-width: $screen-lg) {
@include responsive-visibility('.visible-md.visible-lg');
}
@include responsive-invisibility('.visible-lg');
@media (max-width: $screen-xs-max) {
@include responsive-visibility('.visible-lg.visible-xs');
}
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
@include responsive-visibility('.visible-lg.visible-sm');
}
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
@include responsive-visibility('.visible-lg.visible-md');
}
@media (min-width: $screen-lg) {
@include responsive-visibility('.visible-lg');
}
@include responsive-visibility('.hidden-xs');
@media (max-width: $screen-xs-max) {
@include responsive-invisibility('.hidden-xs');
}
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
@include responsive-invisibility('.hidden-xs.hidden-sm');
}
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
@include responsive-invisibility('.hidden-xs.hidden-md');
}
@media (min-width: $screen-lg) {
@include responsive-invisibility('.hidden-xs.hidden-lg');
}
@include responsive-visibility('.hidden-sm');
@media (max-width: $screen-xs-max) {
@include responsive-invisibility('.hidden-sm.hidden-xs');
}
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
@include responsive-invisibility('.hidden-sm');
}
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
@include responsive-invisibility('.hidden-sm.hidden-md');
}
@media (min-width: $screen-lg) {
@include responsive-invisibility('.hidden-sm.hidden-lg');
}
@include responsive-visibility('.hidden-md');
@media (max-width: $screen-xs-max) {
@include responsive-invisibility('.hidden-md.hidden-xs');
}
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
@include responsive-invisibility('.hidden-md.hidden-sm');
}
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
@include responsive-invisibility('.hidden-md');
}
@media (min-width: $screen-lg) {
@include responsive-invisibility('.hidden-md.hidden-lg');
}
@include responsive-visibility('.hidden-lg');
@media (max-width: $screen-xs-max) {
@include responsive-invisibility('.hidden-lg.hidden-xs');
}
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
@include responsive-invisibility('.hidden-lg.hidden-sm');
}
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
@include responsive-invisibility('.hidden-lg.hidden-md');
}
@media (min-width: $screen-lg) {
@include responsive-invisibility('.hidden-lg');
}
// Print utilities
@include responsive-invisibility('.visible-print');
@media print {
@include responsive-visibility('.visible-print');
@include responsive-invisibility('.hidden-print');
}
@@ -0,0 +1,130 @@
//
// Scaffolding
// --------------------------------------------------
// Reset the box-sizing
*,
*:before,
*:after {
@include box-sizing(border-box);
}
// Body reset
html {
font-size: 62.5%;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
body {
font-family: $font-family-base;
font-size: $font-size-base;
line-height: $line-height-base;
color: $text-color;
background-color: $body-bg;
}
// Reset fonts for relevant elements
input,
button,
select,
textarea {
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
// Reset unusual Firefox-on-Android default style.
//
// See https://github.com/necolas/normalize.css/issues/214
button,
input,
select[multiple],
textarea {
background-image: none;
}
// Links
a {
color: $link-color;
text-decoration: none;
&:hover,
&:focus {
color: $link-hover-color;
text-decoration: underline;
}
&:focus {
@include tab-focus();
}
}
// Images
img {
vertical-align: middle;
}
// Responsive images (ensure images don't scale beyond their parents)
.img-responsive {
@include img-responsive();
}
// Rounded corners
.img-rounded {
border-radius: $border-radius-large;
}
// Image thumbnails
//
// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.
.img-thumbnail {
padding: $thumbnail-padding;
line-height: $line-height-base;
background-color: $thumbnail-bg;
border: 1px solid $thumbnail-border;
border-radius: $thumbnail-border-radius;
@include transition(all .2s ease-in-out);
// Keep them at most 100% wide
@include img-responsive(inline-block);
}
// Perfect circle
.img-circle {
border-radius: 50%; // set radius in percents
}
// Horizontal rules
hr {
margin-top: $line-height-computed;
margin-bottom: $line-height-computed;
border: 0;
border-top: 1px solid $hr-border;
}
// Only display content to screen readers
//
// See: http://a11yproject.com/posts/how-to-hide-content/
.sr-only {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
overflow: hidden;
clip: rect(0 0 0 0);
border: 0;
}
@@ -0,0 +1,236 @@
//
// Tables
// --------------------------------------------------
table {
max-width: 100%;
background-color: $table-bg;
}
th {
text-align: left;
}
// Baseline styles
.table {
width: 100%;
margin-bottom: $line-height-computed;
// Cells
thead,
tbody,
tfoot {
> tr {
> th,
> td {
padding: $table-cell-padding;
line-height: $line-height-base;
vertical-align: top;
border-top: 1px solid $table-border-color;
}
}
}
// Bottom align for column headings
thead > tr > th {
vertical-align: bottom;
border-bottom: 2px solid $table-border-color;
}
// Remove top border from thead by default
caption + thead,
colgroup + thead,
thead:first-child {
tr:first-child {
th, td {
border-top: 0;
}
}
}
// Account for multiple tbody instances
tbody + tbody {
border-top: 2px solid $table-border-color;
}
// Nesting
.table {
background-color: $body-bg;
}
}
// Condensed table w/ half padding
.table-condensed {
thead,
tbody,
tfoot {
> tr {
> th,
> td {
padding: $table-condensed-cell-padding;
}
}
}
}
// Bordered version
//
// Add borders all around the table and between all the columns.
.table-bordered {
border: 1px solid $table-border-color;
> thead,
> tbody,
> tfoot {
> tr {
> th,
> td {
border: 1px solid $table-border-color;
}
}
}
> thead {
> tr {
> th,
> td {
border-bottom-width: 2px;
}
}
}
}
// Zebra-striping
//
// Default zebra-stripe styles (alternating gray and transparent backgrounds)
.table-striped {
> tbody {
> tr:nth-child(odd) {
> td,
> th {
background-color: $table-bg-accent;
}
}
}
}
// Hover effect
//
// Placed here since it has to come after the potential zebra striping
.table-hover {
> tbody {
> tr:hover {
> td,
> th {
background-color: $table-bg-hover;
}
}
}
}
// Table cell sizing
//
// Reset default table behavior
table col[class*="col-"] {
float: none;
display: table-column;
}
table {
td,
th {
&[class*="col-"] {
float: none;
display: table-cell;
}
}
}
// Table backgrounds
//
// Exact selectors below required to override `.table-striped` and prevent
// inheritance to nested tables.
.table > thead > tr,
.table > tbody > tr,
.table > tfoot > tr {
> td.active,
> th.active,
&.active > td,
&.active > th {
background-color: $table-bg-active;
}
}
// Generate the contextual variants
@include table-row-variant('success', $state-success-bg, $state-success-border);
@include table-row-variant('danger', $state-danger-bg, $state-danger-border);
@include table-row-variant('warning', $state-warning-bg, $state-warning-border);
// Responsive tables
//
// Wrap your tables in `.table-scrollable` and we'll make them mobile friendly
// by enabling horizontal scrolling. Only applies <768px. Everything above that
// will display normally.
@media (max-width: $screen-sm) {
.table-responsive {
width: 100%;
margin-bottom: 15px;
overflow-y: hidden;
overflow-x: scroll;
border: 1px solid $table-border-color;
// Tighten up spacing and give a background color
> .table {
margin-bottom: 0;
background-color: #fff;
// Ensure the content doesn't wrap
> thead,
> tbody,
> tfoot {
> tr {
> th,
> td {
white-space: nowrap;
}
}
}
}
// Special overrides for the bordered tables
> .table-bordered {
border: 0;
// Nuke the appropriate borders so that the parent can handle them
> thead,
> tbody,
> tfoot {
> tr {
> th:first-child,
> td:first-child {
border-left: 0;
}
> th:last-child,
> td:last-child {
border-right: 0;
}
}
> tr:last-child {
> th,
> td {
border-bottom: 0;
}
}
}
}
}
}
@@ -0,0 +1,232 @@
//
// Load core variables and mixins
// --------------------------------------------------
@import "variables";
@import "mixins";
//
// Buttons
// --------------------------------------------------
// Common styles
.btn-default,
.btn-primary,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger {
text-shadow: 0 -1px 0 rgba(0,0,0,.2);
$shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);
@include box-shadow($shadow);
// Reset the shadow
&:active,
&.active {
@include box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
}
}
// Mixin for generating new styles
@mixin btn-styles($btn-color: #555) {
@include gradient-vertical($start-color: $btn-color, $end-color: darken($btn-color, 10%));
border-color: darken($btn-color, 12%);
&:active,
&.active {
background-color: darken($btn-color, 10%);
border-color: darken($btn-color, 12%);
}
}
// Common styles
.btn {
// Remove the gradient for the pressed/active state
&:active,
&.active {
background-image: none;
}
}
// Apply the mixin to the buttons
.btn-default { @include btn-styles($btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }
.btn-primary { @include btn-styles($btn-primary-bg); }
.btn-success { @include btn-styles($btn-success-bg); }
.btn-warning { @include btn-styles($btn-warning-bg); }
.btn-danger { @include btn-styles($btn-danger-bg); }
.btn-info { @include btn-styles($btn-info-bg); }
//
// Images
// --------------------------------------------------
.thumbnail,
.img-thumbnail {
@include box-shadow(0 1px 2px rgba(0,0,0,.075));
}
//
// Dropdowns
// --------------------------------------------------
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus,
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
@include gradient-vertical($start-color: $dropdown-link-hover-bg, $end-color: darken($dropdown-link-hover-bg, 5%));
background-color: darken($dropdown-link-hover-bg, 5%);
}
//
// Navbar
// --------------------------------------------------
// Basic navbar
.navbar {
@include gradient-vertical($start-color: lighten($navbar-default-bg, 10%), $end-color: $navbar-default-bg);
border-radius: $navbar-border-radius;
$shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);
@include box-shadow($shadow);
.navbar-nav > .active > a {
background-color: $navbar-default-bg;
}
}
.navbar-brand,
.navbar-nav > li > a {
text-shadow: 0 1px 0 rgba(255,255,255,.25);
}
// Inverted navbar
.navbar-inverse {
@include gradient-vertical($start-color: lighten($navbar-inverse-bg, 10%), $end-color: $navbar-inverse-bg);
.navbar-nav > .active > a {
background-color: $navbar-inverse-bg;
}
.navbar-brand,
.navbar-nav > li > a {
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
}
}
// Undo rounded corners in static and fixed navbars
.navbar-static-top,
.navbar-fixed-top,
.navbar-fixed-bottom {
border-radius: 0;
}
//
// Alerts
// --------------------------------------------------
// Common styles
.alert {
text-shadow: 0 1px 0 rgba(255,255,255,.2);
$shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);
@include box-shadow($shadow);
}
// Mixin for generating new styles
@mixin alert-styles($color) {
@include gradient-vertical($start-color: $color, $end-color: darken($color, 7.5%));
border-color: darken($color, 15%);
}
// Apply the mixin to the alerts
.alert-success { @include alert-styles($alert-success-bg); }
.alert-info { @include alert-styles($alert-info-bg); }
.alert-warning { @include alert-styles($alert-warning-bg); }
.alert-danger { @include alert-styles($alert-danger-bg); }
//
// Progress bars
// --------------------------------------------------
// Give the progress background some depth
.progress {
@include gradient-vertical($start-color: darken($progress-bg, 4%), $end-color: $progress-bg)
}
// Mixin for generating new styles
@mixin progress-bar-styles($color) {
@include gradient-vertical($start-color: $color, $end-color: darken($color, 10%));
}
// Apply the mixin to the progress bars
.progress-bar { @include progress-bar-styles($progress-bar-bg); }
.progress-bar-success { @include progress-bar-styles($progress-bar-success-bg); }
.progress-bar-info { @include progress-bar-styles($progress-bar-info-bg); }
.progress-bar-warning { @include progress-bar-styles($progress-bar-warning-bg); }
.progress-bar-danger { @include progress-bar-styles($progress-bar-danger-bg); }
//
// List groups
// --------------------------------------------------
.list-group {
border-radius: $border-radius-base;
@include box-shadow(0 1px 2px rgba(0,0,0,.075));
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
text-shadow: 0 -1px 0 darken($list-group-active-bg, 10%);
@include gradient-vertical($start-color: $list-group-active-bg, $end-color: darken($list-group-active-bg, 7.5%));
border-color: darken($list-group-active-border, 7.5%);
}
//
// Panels
// --------------------------------------------------
// Common styles
.panel {
@include box-shadow(0 1px 2px rgba(0,0,0,.05));
}
// Mixin for generating new styles
@mixin panel-heading-styles($color) {
@include gradient-vertical($start-color: $color, $end-color: darken($color, 5%));
}
// Apply the mixin to the panel headings only
.panel-default > .panel-heading { @include panel-heading-styles($panel-default-heading-bg); }
.panel-primary > .panel-heading { @include panel-heading-styles($panel-primary-heading-bg); }
.panel-success > .panel-heading { @include panel-heading-styles($panel-success-heading-bg); }
.panel-info > .panel-heading { @include panel-heading-styles($panel-info-heading-bg); }
.panel-warning > .panel-heading { @include panel-heading-styles($panel-warning-heading-bg); }
.panel-danger > .panel-heading { @include panel-heading-styles($panel-danger-heading-bg); }
//
// Wells
// --------------------------------------------------
.well {
@include gradient-vertical($start-color: darken($well-bg, 5%), $end-color: $well-bg);
border-color: darken($well-bg, 10%);
$shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);
@include box-shadow($shadow);
}
@@ -0,0 +1,31 @@
//
// Thumbnails
// --------------------------------------------------
// Mixin and adjust the regular image class
.thumbnail {
@extend .img-thumbnail;
display: block; // Override the inline-block from `.img-thumbnail`
> img {
@include img-responsive();
}
}
// Add a hover state for linked versions only
a.thumbnail:hover,
a.thumbnail:focus {
border-color: $link-color;
}
// Images and captions
.thumbnail > img {
margin-left: auto;
margin-right: auto;
}
.thumbnail .caption {
padding: $thumbnail-caption-padding;
color: $thumbnail-caption-color;
}
@@ -0,0 +1,95 @@
//
// Tooltips
// --------------------------------------------------
// Base class
.tooltip {
position: absolute;
z-index: $zindex-tooltip;
display: block;
visibility: visible;
font-size: $font-size-small;
line-height: 1.4;
@include opacity(0);
&.in { @include opacity(.9); }
&.top { margin-top: -3px; padding: 5px 0; }
&.right { margin-left: 3px; padding: 0 5px; }
&.bottom { margin-top: 3px; padding: 5px 0; }
&.left { margin-left: -3px; padding: 0 5px; }
}
// Wrapper for the tooltip content
.tooltip-inner {
max-width: $tooltip-max-width;
padding: 3px 8px;
color: $tooltip-color;
text-align: center;
text-decoration: none;
background-color: $tooltip-bg;
border-radius: $border-radius-base;
}
// Arrows
.tooltip-arrow {
position: absolute;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
.tooltip {
&.top .tooltip-arrow {
bottom: 0;
left: 50%;
margin-left: -$tooltip-arrow-width;
border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
border-top-color: $tooltip-arrow-color;
}
&.top-left .tooltip-arrow {
bottom: 0;
left: 5px;
border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
border-top-color: $tooltip-arrow-color;
}
&.top-right .tooltip-arrow {
bottom: 0;
right: 5px;
border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
border-top-color: $tooltip-arrow-color;
}
&.right .tooltip-arrow {
top: 50%;
left: 0;
margin-top: -$tooltip-arrow-width;
border-width: $tooltip-arrow-width $tooltip-arrow-width $tooltip-arrow-width 0;
border-right-color: $tooltip-arrow-color;
}
&.left .tooltip-arrow {
top: 50%;
right: 0;
margin-top: -$tooltip-arrow-width;
border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width;
border-left-color: $tooltip-arrow-color;
}
&.bottom .tooltip-arrow {
top: 0;
left: 50%;
margin-left: -$tooltip-arrow-width;
border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
border-bottom-color: $tooltip-arrow-color;
}
&.bottom-left .tooltip-arrow {
top: 0;
left: 5px;
border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
border-bottom-color: $tooltip-arrow-color;
}
&.bottom-right .tooltip-arrow {
top: 0;
right: 5px;
border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
border-bottom-color: $tooltip-arrow-color;
}
}
@@ -0,0 +1,238 @@
//
// Typography
// --------------------------------------------------
// Body text
// -------------------------
p {
margin: 0 0 ($line-height-computed / 2);
}
.lead {
margin-bottom: $line-height-computed;
font-size: ($font-size-base * 1.15);
font-weight: 200;
line-height: 1.4;
@media (min-width: 768px) {
font-size: ($font-size-base * 1.5);
}
}
// Emphasis & misc
// -------------------------
// Ex: 14px base font * 85% = about 12px
small { font-size: 85%; }
// Undo browser default styling
cite { font-style: normal; }
// Contextual emphasis
.text-muted { color: $text-muted; }
.text-primary { color: $brand-primary; }
.text-warning { color: $state-warning-text; }
.text-danger { color: $state-danger-text; }
.text-success { color: $state-success-text; }
.text-info { color: $state-info-text; }
// Alignment
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
// Headings
// -------------------------
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
font-family: $headings-font-family;
font-weight: $headings-font-weight;
line-height: $headings-line-height;
small {
font-weight: normal;
line-height: 1;
color: $headings-small-color;
}
}
h1,
h2,
h3 {
margin-top: $line-height-computed;
margin-bottom: ($line-height-computed / 2);
}
h4,
h5,
h6 {
margin-top: ($line-height-computed / 2);
margin-bottom: ($line-height-computed / 2);
}
h1, .h1 { font-size: floor($font-size-base * 2.60); } // ~36px
h2, .h2 { font-size: floor($font-size-base * 2.15); } // ~30px
h3, .h3 { font-size: ceil($font-size-base * 1.70); } // ~24px
h4, .h4 { font-size: ceil($font-size-base * 1.25); } // ~18px
h5, .h5 { font-size: $font-size-base; }
h6, .h6 { font-size: ceil($font-size-base * 0.85); } // ~12px
h1 small, .h1 small { font-size: ceil($font-size-base * 1.70); } // ~24px
h2 small, .h2 small { font-size: ceil($font-size-base * 1.25); } // ~18px
h3 small, .h3 small,
h4 small, .h4 small { font-size: $font-size-base; }
// Page header
// -------------------------
.page-header {
padding-bottom: (($line-height-computed / 2) - 1);
margin: ($line-height-computed * 2) 0 $line-height-computed;
border-bottom: 1px solid $page-header-border-color;
}
// Lists
// --------------------------------------------------
// Unordered and Ordered lists
ul,
ol {
margin-top: 0;
margin-bottom: ($line-height-computed / 2);
ul,
ol{
margin-bottom: 0;
}
}
// List options
// Unstyled keeps list items block level, just removes default browser padding and list-style
.list-unstyled {
padding-left: 0;
list-style: none;
}
// Inline turns list items into inline-block
.list-inline {
@extend .list-unstyled;
> li {
display: inline-block;
padding-left: 5px;
padding-right: 5px;
}
}
// Description Lists
dl {
margin-bottom: $line-height-computed;
}
dt,
dd {
line-height: $line-height-base;
}
dt {
font-weight: bold;
}
dd {
margin-left: 0; // Undo browser default
}
// Horizontal description lists
//
// Defaults to being stacked without any of the below styles applied, until the
// grid breakpoint is reached (default of ~768px).
@media (min-width: $grid-float-breakpoint) {
.dl-horizontal {
dt {
float: left;
width: ($component-offset-horizontal - 20);
clear: left;
text-align: right;
@include text-overflow();
}
dd {
margin-left: $component-offset-horizontal;
@include clearfix(); // Clear the floated `dt` if an empty `dd` is present
}
}
}
// MISC
// ----
// Abbreviations and acronyms
abbr[title],
// Added data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257
abbr[data-original-title] {
cursor: help;
border-bottom: 1px dotted $abbr-border-color;
}
abbr.initialism {
font-size: 90%;
text-transform: uppercase;
}
// Blockquotes
blockquote {
padding: ($line-height-computed / 2) $line-height-computed;
margin: 0 0 $line-height-computed;
border-left: 5px solid $blockquote-border-color;
p {
font-size: ($font-size-base * 1.25);
font-weight: 300;
line-height: 1.25;
}
p:last-child {
margin-bottom: 0;
}
small {
display: block;
line-height: $line-height-base;
color: $blockquote-small-color;
&:before {
content: '\2014 \00A0';// EM DASH, NBSP
}
}
// Float right with text-align: right
&.pull-right {
padding-right: 15px;
padding-left: 0;
border-right: 5px solid $blockquote-border-color;
border-left: 0;
p,
small {
text-align: right;
}
small {
&:before {
content: '';
}
&:after {
content: '\00A0 \2014';// NBSP, EM DASH
}
}
}
}
// Quotes
q:before,
q:after,
blockquote:before,
blockquote:after {
content: "";
}
// Addresses
address {
display: block;
margin-bottom: $line-height-computed;
font-style: normal;
line-height: $line-height-base;
}
@@ -0,0 +1,42 @@
//
// Utility classes
// --------------------------------------------------
// Floats
// -------------------------
.clearfix {
@include clearfix();
}
.pull-right {
float: right !important;
}
.pull-left {
float: left !important;
}
// Toggling content
// -------------------------
.hide {
display: none !important;
}
.show {
display: block !important;
}
.invisible {
visibility: hidden;
}
.text-hide {
@include hide-text();
}
// For Affix plugin
// -------------------------
.affix {
position: fixed;
}
@@ -0,0 +1,620 @@
//
// Variables
// --------------------------------------------------
// Global values
// --------------------------------------------------
// Grays
// -------------------------
$gray-darker: lighten(#000, 13.5%) !default; // #222
$gray-dark: lighten(#000, 20%) !default; // #333
$gray: lighten(#000, 33.5%) !default; // #555
$gray-light: lighten(#000, 60%) !default; // #999
$gray-lighter: lighten(#000, 93.5%) !default; // #eee
// Brand colors
// -------------------------
$brand-primary: #428bca !default;
$brand-success: #5cb85c !default;
$brand-warning: #f0ad4e !default;
$brand-danger: #d9534f !default;
$brand-info: #5bc0de !default;
// Scaffolding
// -------------------------
$body-bg: #fff !default;
$text-color: #777777 !default;
// Links
// -------------------------
$link-color: #777 !default;
$link-hover-color: darken($link-color, 15%) !default;
// Typography
// -------------------------
$font-family-sans-serif: Arial, Helvetica, sans-serif !default;
$font-family-serif: Georgia, "Times New Roman", Times, serif !default;
$font-family-monospace: Monaco, Menlo, Consolas, "Courier New", monospace !default;
$font-family-base: $font-family-sans-serif !default;
$font-size-base: 13px !default;
$font-size-large: ceil($font-size-base * 1.25) !default; // ~18px
$font-size-small: ceil($font-size-base * 0.85) !default; // ~12px
$line-height-base: 1.428571429; // 20/14
$line-height-computed: floor($font-size-base * $line-height-base) !default; // ~20px
$headings-font-family: $font-family-base !default;
$headings-font-weight: 500 !default;
$headings-line-height: 1.1 !default;
// Iconography
// -------------------------
$icon-font-path: "../fonts/" !default;
$icon-font-name: "glyphicons-halflings-regular" !default;
// Components
// -------------------------
// Based on 14px font-size and 1.428 line-height (~20px to start)
$padding-base-vertical: 6px !default;
$padding-base-horizontal: 12px !default;
$padding-large-vertical: 10px !default;
$padding-large-horizontal: 16px !default;
$padding-small-vertical: 5px !default;
$padding-small-horizontal: 10px !default;
$line-height-large: 1.33 !default;
$line-height-small: 1.5 !default;
$border-radius-base: 0px !default;
$border-radius-large: 6px !default;
$border-radius-small: 3px !default;
$component-active-bg: $brand-primary !default;
$caret-width-base: 4px !default;
$caret-width-large: 5px !default;
// Tables
// -------------------------
$table-cell-padding: 9px 8px 11px 18px !default;
$table-condensed-cell-padding: 5px !default;
$table-bg: transparent !default; // overall background-color
$table-bg-accent: #f9f9f9 !default; // for striping
$table-bg-hover: #f5f5f5 !default;
$table-bg-active: $table-bg-hover !default;
$table-border-color: #d6d4d4 !default; // table and cell border
// Buttons
// -------------------------
$btn-font-weight: normal !default;
$btn-default-color: #333 !default;
$btn-default-bg: #fff !default;
$btn-default-border: #ccc !default;
$btn-primary-color: #fff !default;
$btn-primary-bg: $brand-primary !default;
$btn-primary-border: darken($btn-primary-bg, 5%) !default;
$btn-success-color: #fff !default;
$btn-success-bg: $brand-success !default;
$btn-success-border: darken($btn-success-bg, 5%) !default;
$btn-warning-color: #fff !default;
$btn-warning-bg: $brand-warning !default;
$btn-warning-border: darken($btn-warning-bg, 5%) !default;
$btn-danger-color: #fff !default;
$btn-danger-bg: $brand-danger !default;
$btn-danger-border: darken($btn-danger-bg, 5%) !default;
$btn-info-color: #fff !default;
$btn-info-bg: $brand-info !default;
$btn-info-border: darken($btn-info-bg, 5%) !default;
$btn-link-disabled-color: $gray-light !default;
// Forms
// -------------------------
$input-bg: #fff !default;
$input-bg-disabled: $gray-lighter !default;
$input-color: #9c9b9b !default;
$input-border: #d6d4d4 !default;
$input-border-radius: $border-radius-base !default;
$input-border-focus: #66afe9 !default;
$input-color-placeholder: $gray-light !default;
$input-height-base: ($line-height-computed + ($padding-base-vertical * 2) + 2) !default;
$input-height-large: (floor($font-size-large * $line-height-large) + ($padding-large-vertical * 2) + 2) !default;
$input-height-small: (floor($font-size-small * $line-height-small) + ($padding-small-vertical * 2) + 2) !default;
$legend-color: $gray-dark !default;
$legend-border-color: #e5e5e5 !default;
$input-group-addon-bg: $gray-lighter !default;
$input-group-addon-border-color: $input-border !default;
// Dropdowns
// -------------------------
$dropdown-bg: #fff !default;
$dropdown-border: rgba(0,0,0,.15) !default;
$dropdown-fallback-border: #ccc !default;
$dropdown-divider-bg: #e5e5e5 !default;
$dropdown-link-active-color: #fff !default;
$dropdown-link-active-bg: $component-active-bg !default;
$dropdown-link-color: $gray-dark !default;
$dropdown-link-hover-color: #fff !default;
$dropdown-link-hover-bg: $dropdown-link-active-bg !default;
$dropdown-link-disabled-color: $gray-light !default;
$dropdown-header-color: $gray-light !default;
$dropdown-caret-color: #000 !default;
// COMPONENT VARIABLES
// --------------------------------------------------
// Z-index master list
// -------------------------
// Used for a bird's eye view of components dependent on the z-axis
// Try to avoid customizing these :)
$zindex-navbar: 1000 !default;
$zindex-dropdown: 1000 !default;
$zindex-popover: 1010 !default;
$zindex-tooltip: 1030 !default;
$zindex-navbar-fixed: 1030 !default;
$zindex-modal-background: 1040 !default;
$zindex-modal: 1050 !default;
// Media queries breakpoints
// --------------------------------------------------
// Extra small screen / phone
$screen-xs: 480px !default;
$screen-phone: $screen-xs !default;
// Small screen / tablet
$screen-sm: 768px !default;
$screen-tablet: $screen-sm !default;
// Medium screen / desktop
$screen-md: 992px !default;
$screen-desktop: $screen-md !default;
// Large screen / wide desktop
$screen-lg: 1200px !default;
$screen-lg-desktop: $screen-lg !default;
// So media queries don't overlap when required, provide a maximum
$screen-xs-max: ($screen-sm - 1) !default;
$screen-sm-max: ($screen-md - 1) !default;
$screen-md-max: ($screen-lg - 1) !default;
// Grid system
// --------------------------------------------------
// Number of columns in the grid system
$grid-columns: 12 !default;
// Padding, to be divided by two and applied to the left and right of all columns
$grid-gutter-width: 30px !default;
// Point at which the navbar stops collapsing
$grid-float-breakpoint: $screen-tablet !default;
// Navbar
// -------------------------
// Basics of a navbar
$navbar-height: 50px !default;
$navbar-margin-bottom: $line-height-computed !default;
$navbar-default-color: #777 !default;
$navbar-default-bg: #f8f8f8 !default;
$navbar-default-border: darken($navbar-default-bg, 6.5%) !default;
$navbar-border-radius: $border-radius-base !default;
$navbar-padding-horizontal: floor($grid-gutter-width / 2) !default;
$navbar-padding-vertical: (($navbar-height - $line-height-computed) / 2) !default;
// Navbar links
$navbar-default-link-color: #777 !default;
$navbar-default-link-hover-color: #333 !default;
$navbar-default-link-hover-bg: transparent !default;
$navbar-default-link-active-color: #555 !default;
$navbar-default-link-active-bg: darken($navbar-default-bg, 6.5%) !default;
$navbar-default-link-disabled-color: #ccc !default;
$navbar-default-link-disabled-bg: transparent !default;
// Navbar brand label
$navbar-default-brand-color: $navbar-default-link-color !default;
$navbar-default-brand-hover-color: darken($navbar-default-link-color, 10%) !default;
$navbar-default-brand-hover-bg: transparent !default;
// Navbar toggle
$navbar-default-toggle-hover-bg: #ddd !default;
$navbar-default-toggle-icon-bar-bg: #ccc !default;
$navbar-default-toggle-border-color: #ddd !default;
// Inverted navbar
//
// Reset inverted navbar basics
$navbar-inverse-color: $gray-light !default;
$navbar-inverse-bg: #222 !default;
$navbar-inverse-border: darken($navbar-inverse-bg, 10%) !default;
// Inverted navbar links
$navbar-inverse-link-color: $gray-light !default;
$navbar-inverse-link-hover-color: #fff !default;
$navbar-inverse-link-hover-bg: transparent !default;
$navbar-inverse-link-active-color: $navbar-inverse-link-hover-color !default;
$navbar-inverse-link-active-bg: darken($navbar-inverse-bg, 10%) !default;
$navbar-inverse-link-disabled-color: #444 !default;
$navbar-inverse-link-disabled-bg: transparent !default;
// Inverted navbar brand label
$navbar-inverse-brand-color: $navbar-inverse-link-color !default;
$navbar-inverse-brand-hover-color: #fff !default;
$navbar-inverse-brand-hover-bg: transparent !default;
// Inverted navbar search
// Normal navbar needs no special styles or vars
$navbar-inverse-search-bg: lighten($navbar-inverse-bg, 25%) !default;
$navbar-inverse-search-bg-focus: #fff !default;
$navbar-inverse-search-border: $navbar-inverse-bg !default;
$navbar-inverse-search-placeholder-color: #ccc !default;
// Inverted navbar toggle
$navbar-inverse-toggle-hover-bg: #333 !default;
$navbar-inverse-toggle-icon-bar-bg: #fff !default;
$navbar-inverse-toggle-border-color: #333 !default;
// Navs
// -------------------------
$nav-link-padding: 10px 15px !default;
$nav-link-hover-bg: $gray-lighter !default;
$nav-disabled-link-color: $gray-light !default;
$nav-disabled-link-hover-color: $gray-light !default;
$nav-open-link-hover-color: #fff !default;
$nav-open-caret-border-color: #fff !default;
// Tabs
$nav-tabs-border-color: #ddd !default;
$nav-tabs-link-hover-border-color: $gray-lighter !default;
$nav-tabs-active-link-hover-bg: $body-bg !default;
$nav-tabs-active-link-hover-color: $gray !default;
$nav-tabs-active-link-hover-border-color: #ddd !default;
$nav-tabs-justified-link-border-color: #ddd !default;
$nav-tabs-justified-active-link-border-color: $body-bg !default;
// Pills
$nav-pills-active-link-hover-bg: $component-active-bg !default;
$nav-pills-active-link-hover-color: #fff !default;
// Pagination
// -------------------------
$pagination-bg: #fff !default;
$pagination-border: #ddd !default;
$pagination-hover-bg: $gray-lighter !default;
$pagination-active-bg: $brand-primary !default;
$pagination-active-color: #fff !default;
$pagination-disabled-color: $gray-light !default;
// Pager
// -------------------------
$pager-border-radius: 15px !default;
$pager-disabled-color: $gray-light !default;
// Jumbotron
// -------------------------
$jumbotron-padding: 30px !default;
$jumbotron-color: inherit !default;
$jumbotron-bg: $gray-lighter !default;
$jumbotron-heading-color: inherit !default;
// Form states and alerts
// -------------------------
$state-warning-text: #fff !default;
$state-warning-bg: #fe9126 !default;
$state-warning-border: #e4752b !default;
$state-danger-text: #fff !default;
$state-danger-bg: #f3515c !default;
$state-danger-border: #d4323d !default;
$state-success-text: #fff !default;
$state-success-bg: #55c65e !default;
$state-success-border: #48b151 !default;
$state-info-text: #fff !default;
$state-info-bg: #5192f3 !default;
$state-info-border: #4b80c3 !default;
// Tooltips
// -------------------------
$tooltip-max-width: 200px !default;
$tooltip-color: #fff !default;
$tooltip-bg: #000 !default;
$tooltip-arrow-width: 5px !default;
$tooltip-arrow-color: $tooltip-bg !default;
// Popovers
// -------------------------
$popover-bg: #fff !default;
$popover-max-width: 276px !default;
$popover-border-color: rgba(0,0,0,.2) !default;
$popover-fallback-border-color: #ccc !default;
$popover-title-bg: darken($popover-bg, 3%) !default;
$popover-arrow-width: 10px !default;
$popover-arrow-color: #fff !default;
$popover-arrow-outer-width: ($popover-arrow-width + 1) !default;
$popover-arrow-outer-color: rgba(0,0,0,.25) !default;
$popover-arrow-outer-fallback-color: #999 !default;
// Labels
// -------------------------
$label-default-bg: $gray-light !default;
$label-primary-bg: $brand-primary !default;
$label-success-bg: $brand-success !default;
$label-info-bg: $brand-info !default;
$label-warning-bg: $brand-warning !default;
$label-danger-bg: $brand-danger !default;
$label-color: #fff !default;
$label-link-hover-color: #fff !default;
// Modals
// -------------------------
$modal-inner-padding: 20px !default;
$modal-title-padding: 15px !default;
$modal-title-line-height: $line-height-base !default;
$modal-content-bg: #fff !default;
$modal-content-border-color: rgba(0,0,0,.2) !default;
$modal-content-fallback-border-color: #999 !default;
$modal-backdrop-bg: #000 !default;
$modal-header-border-color: #e5e5e5 !default;
$modal-footer-border-color: $modal-header-border-color !default;
// Alerts
// -------------------------
$alert-padding: 15px !default;
$alert-border-radius: $border-radius-base !default;
$alert-link-font-weight: bold !default;
$alert-success-bg: $state-success-bg !default;
$alert-success-text: $state-success-text !default;
$alert-success-border: $state-success-border !default;
$alert-info-bg: $state-info-bg !default;
$alert-info-text: $state-info-text !default;
$alert-info-border: $state-info-border !default;
$alert-warning-bg: $state-warning-bg !default;
$alert-warning-text: $state-warning-text !default;
$alert-warning-border: $state-warning-border !default;
$alert-danger-bg: $state-danger-bg !default;
$alert-danger-text: $state-danger-text !default;
$alert-danger-border: $state-danger-border !default;
// Progress bars
// -------------------------
$progress-bg: #f5f5f5 !default;
$progress-bar-color: #fff !default;
$progress-bar-bg: $brand-primary !default;
$progress-bar-success-bg: $brand-success !default;
$progress-bar-warning-bg: $brand-warning !default;
$progress-bar-danger-bg: $brand-danger !default;
$progress-bar-info-bg: $brand-info !default;
// List group
// -------------------------
$list-group-bg: #fff !default;
$list-group-border: #ddd !default;
$list-group-border-radius: $border-radius-base !default;
$list-group-hover-bg: #f5f5f5 !default;
$list-group-active-color: #fff !default;
$list-group-active-bg: $component-active-bg !default;
$list-group-active-border: $list-group-active-bg !default;
$list-group-link-color: #555 !default;
$list-group-link-heading-color: #333 !default;
// Panels
// -------------------------
$panel-bg: #fff !default;
$panel-inner-border: #ddd !default;
$panel-border-radius: $border-radius-base !default;
$panel-footer-bg: #f5f5f5 !default;
$panel-default-text: $gray-dark !default;
$panel-default-border: #ddd !default;
$panel-default-heading-bg: #f5f5f5 !default;
$panel-primary-text: #fff !default;
$panel-primary-border: $brand-primary !default;
$panel-primary-heading-bg: $brand-primary !default;
$panel-success-text: $state-success-text !default;
$panel-success-border: $state-success-border !default;
$panel-success-heading-bg: $state-success-bg !default;
$panel-warning-text: $state-warning-text !default;
$panel-warning-border: $state-warning-border !default;
$panel-warning-heading-bg: $state-warning-bg !default;
$panel-danger-text: $state-danger-text !default;
$panel-danger-border: $state-danger-border !default;
$panel-danger-heading-bg: $state-danger-bg !default;
$panel-info-text: $state-info-text !default;
$panel-info-border: $state-info-border !default;
$panel-info-heading-bg: $state-info-bg !default;
// Thumbnails
// -------------------------
$thumbnail-padding: 4px !default;
$thumbnail-bg: $body-bg !default;
$thumbnail-border: #ddd !default;
$thumbnail-border-radius: $border-radius-base !default;
$thumbnail-caption-color: $text-color !default;
$thumbnail-caption-padding: 9px !default;
// Wells
// -------------------------
$well-bg: #f5f5f5 !default;
// Badges
// -------------------------
$badge-color: #fff !default;
$badge-link-hover-color: #fff !default;
$badge-bg: $gray-light !default;
$badge-active-color: $link-color !default;
$badge-active-bg: #fff !default;
$badge-font-weight: bold !default;
$badge-line-height: 1 !default;
$badge-border-radius: 10px !default;
// Breadcrumbs
// -------------------------
$breadcrumb-bg: #f6f6f6 !default;
$breadcrumb-color: #333 !default;
$breadcrumb-active-color: $breadcrumb-color !default;
// Carousel
// ------------------------
$carousel-text-shadow: 0 1px 2px rgba(0,0,0,.6) !default;
$carousel-control-color: #fff !default;
$carousel-control-width: 15% !default;
$carousel-control-opacity: .5 !default;
$carousel-control-font-size: 20px !default;
$carousel-indicator-active-bg: #fff !default;
$carousel-indicator-border-color: #fff !default;
$carousel-caption-color: #fff !default;
// Close
// ------------------------
$close-color: #000 !default;
$close-font-weight: bold !default;
$close-text-shadow: 0 1px 0 #fff !default;
// Code
// ------------------------
$code-color: #c7254e !default;
$code-bg: #f9f2f4 !default;
$pre-bg: #f5f5f5 !default;
$pre-color: $gray-dark !default;
$pre-border-color: #ccc !default;
$pre-scrollable-max-height: 340px !default;
// Type
// ------------------------
$text-muted: $gray-light !default;
$abbr-border-color: $gray-light !default;
$headings-small-color: $gray-light !default;
$blockquote-small-color: $gray-light !default;
$blockquote-border-color: $gray-lighter !default;
$page-header-border-color: $gray-lighter !default;
// Miscellaneous
// -------------------------
// Hr border color
$hr-border: $gray-lighter !default;
// Horizontal forms & lists
$component-offset-horizontal: 180px !default;
// Container sizes
// --------------------------------------------------
// Small screen / tablet
$container-tablet: ((720px + $grid-gutter-width)) !default;
// Medium screen / desktop
$container-desktop: ((940px + $grid-gutter-width)) !default;
// Large screen / wide desktop
$container-lg-desktop: ((1140px + $grid-gutter-width)) !default;
@@ -0,0 +1,29 @@
//
// Wells
// --------------------------------------------------
// Base class
.well {
min-height: 20px;
padding: 19px;
margin-bottom: 20px;
background-color: $well-bg;
border: 1px solid darken($well-bg, 7%);
border-radius: $border-radius-base;
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
blockquote {
border-color: #ddd;
border-color: rgba(0,0,0,.15);
}
}
// Sizes
.well-lg {
padding: 24px;
border-radius: $border-radius-large;
}
.well-sm {
padding: 9px;
border-radius: $border-radius-small;
}
@@ -0,0 +1,59 @@
/*!
* Bootstrap v3.0.0
*
* Copyright 2013 Twitter, Inc
* Licensed under the Apache License v2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
* Designed and built with all the love in the world by @mdo and @fat.
*/
// Core variables and mixins
@import "variables";
@import "mixins";
// Reset
@import "normalize";
@import "print";
// Core CSS
@import "scaffolding";
@import "type";
@import "code";
@import "grid";
@import "tables";
@import "forms";
@import "buttons";
// Components
@import "component-animations";
@import "glyphicons";
@import "dropdowns";
@import "button-groups";
@import "input-groups";
@import "navs";
@import "navbar";
@import "breadcrumbs";
@import "pagination";
@import "pager";
@import "labels";
@import "badges";
@import "jumbotron";
@import "thumbnails";
@import "alerts";
@import "progress-bars";
@import "media";
@import "list-group";
@import "panels";
@import "wells";
@import "close";
// Components w/ JavaScript
@import "modals";
@import "tooltip";
@import "popovers";
@import "carousel";
// Utility classes
@import "utilities";
@import "responsive-utilities";
+109
View File
@@ -0,0 +1,109 @@
@import '_theme_variables';
/* ************************************************************************************************
Categories Page Styles
************************************************************************************************ */
.content_scene_cat {
border-top:5px solid #333333;
color:#d7d7d7;
line-height:19px;
margin-bottom:26px;
.content_scene_cat_bg {
padding:18px 0 10px 42px;
background-color:#403d3b;
}
h1.category-name {
font:600 42px/51px 'Open Sans', sans-serif;
color:#fff;
margin-bottom:12px;
}
p {margin-bottom:0;}
a {
color:#fff;
&:hover {text-decoration:underline;}
}
.content_scene {
color:#777777;
.cat_desc {
padding-top:20px;
a {
color:$link-color;
&:hover {
color:$link-hover-color;
}
}
}
}
}
/* ************************************************************************************************
Sub Categories Styles
************************************************************************************************ */
#subcategories {
border-top:1px solid $base-border-color;
padding:15px 0 13px 0;
p.subcategory-heading {
font-weight:bold;
color:#333;
margin:0 0 15px 0;
}
ul {
margin-left:-20px;
li {
float:left;
width:128px;
margin-left:20px;
text-align:center;
.subcategory-image {
padding-bottom:8px;
a {
display:block;
padding:9px;
border:1px solid $base-border-color;
img {
max-width:100%;
vertical-align:top;
}
}
}
.subcategory-name {
font:600 18px/22px 'Open Sans', sans-serif;
color:#555454;
text-transform:uppercase;
&:hover {
color:$link-hover-color;
}
}
.cat_desc { display:none;}
&:hover {
.subcategory-image {
a {
border:5px solid #333333;
padding:5px;
}
}
}
}
}
}
+105
View File
@@ -0,0 +1,105 @@
@import '_theme_variables';
/**************************************************************
CMS Pages Styles
***************************************************************/
#cms {
#center_column {
.cms-block {padding-bottom:20px;}
h1 {
margin-bottom:25px;
}
h3 {
font-size:16px;
border-bottom:none;
margin:0 0 0 0;
padding-bottom:17px;
}
p {
line-height:18px;
}
.list-1 {
li {
padding:4px 0 6px 0;
font-weight:bold;
color:#46a74e;
border-top:1px solid $base-border-color;
&:first-child { border:none;}
em {
font-size:20px;
line-height:20px;
padding-right:15px;
vertical-align:-2px;
}
}
}
img {
margin:4px 0 17px;
max-width:100%;
height:auto;
}
.testimonials {
border:1px solid;
border-color:#dfdede #d2d0d0 #b0afaf #d2d0d0;
margin:4px 0 13px 0;
position:relative;
.inner {
border:1px solid #fff;
padding:19px 18px 11px 18px;
background: rgb(251,251,251);
background: -moz-linear-gradient(top, rgba(251,251,251,1) 0%, rgba(254,254,254,1) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(251,251,251,1)), color-stop(100%,rgba(254,254,254,1)));
background: -webkit-linear-gradient(top, rgba(251,251,251,1) 0%,rgba(254,254,254,1) 100%);
background: -o-linear-gradient(top, rgba(251,251,251,1) 0%,rgba(254,254,254,1) 100%);
background: -ms-linear-gradient(top, rgba(251,251,251,1) 0%,rgba(254,254,254,1) 100%);
background: linear-gradient(to bottom, rgba(251,251,251,1) 0%,rgba(254,254,254,1) 100%);
span {
text-indent:-5000px;
display:inline-block;
width:20px;
height:15px;
&.before {
background:url(../img/bl-before-bg.png) no-repeat;
margin-right:8px;
}
&.after {
background:url(../img/bl-after-bg.png) no-repeat;
margin-left:8px;
}
}
}
&:after {
content:".";
display:block;
text-indent:-5000px;
position:absolute;
bottom:-16px;
left:21px;
width:15px;
height:16px;
background:url(../img/testimon-after.gif) no-repeat;
}
& + p {
padding-left:45px;
margin-bottom:18px;
}
}
p.bottom-indent { margin-bottom:18px;}
}
}
@@ -0,0 +1,104 @@
@import '_theme_variables';
/********************************************************************
Compare Page Styles
********************************************************************/
table#product_comparison {
tbody {
tr {
td.product-block {
vertical-align:top;
padding:14px 19px 19px;
text-align:center;
}
td.td_empty, td.feature-name, &.comparison_header {
background:#fbfbfb;
color:#333;
}
td.comparison_infos {
text-align:center;
div.center {
margin:0 auto;
width:80px;
}
}
td.td_empty {
vertical-align:bottom;
span {
font:600 18px/22px 'Open Sans', sans-serif;
text-transform:uppercase;
color:#555454;
}
}
}
}
.remove {
text-align:right;
padding-bottom:15px;
a {
font-size:23px;
line-height:23px;
color:#c0c0c0;
&:hover {
color:$link-hover-color;
}
}
}
.product-image-block {
display:inline-block;
position:relative;
.product_image {
padding:9px;
border:1px solid $base-border-color;
display:inline-block;
margin:0 0 8px 0;
img {width:100%;}
}
}
h5 {
padding-bottom:8px;
min-height:54px;
}
.prices-container {
padding-bottom:5px;
}
.comparison_availability_statut {
display:none;
font-weight:bold;
color:#060;
}
.product_discount {
padding-top:5px;
.reduced-price {
color:#f00;
font-weight:bold;
}
}
.product_desc {
padding-bottom:12px;
}
.button-container {
a {
margin-bottom:10px;
}
}
.comparison_unit_price {
font-size:17px;
font-family:'Open Sans', sans-serif;
color:#333;
font-style:italic;
}
}
.footer_link { margin-bottom:20px;}
@@ -0,0 +1,120 @@
@import '_theme_variables';
/**************************************************************************
Contact Page Styles
**************************************************************************/
.contact-title {
margin-top:-5px;
line-height:23px;
margin-bottom:27px;
i {
font-size:23px;
color:#c0c0c0;
padding-right:8px;
}
}
.contact-form-box {
padding:23px 0 0 0;
margin-bottom:30px;
background:url(../img/contact-form.png) repeat-x #fff;
@include box-shadow(rgba(black, 0.17) 0px 5px 13px);
fieldset {
padding:0 19px 21px 19px;
background:url(../img/form-contact-shadow.png) center bottom no-repeat;
background-size:contain;
}
label {
margin-bottom:6px;
}
.page-subheading {
padding-left:0px;
border:none;
margin-bottom:0;
}
.col-md-3 {
padding-left:0;
}
.col-md-9 {
padding-right:0;
}
#desc_contact0 {display:none;}
.form-group {
margin-bottom:7px;
}
textarea {
height:257px;
}
.submit { margin-top:13px;}
select.form-control {
max-width:270px;
width:100%;
}
}
/**************************************************************************
Contact Page Bottom Banners Styles
**************************************************************************/
.contact-banners {
.list-1 {
padding:6px 0 3px 0;
li {
padding:0px 0 3px 0;
font:600 18px/22px 'Open Sans', sans-serif;
color:#555454;
i {
font-size:25px;
line-height:25px;
color:#cdcdcd;
padding-right:10px;
vertical-align:-3px;
}
}
}
.list-2 {
padding:2px 0 2px 0;
li {
font-weight:bold;
color:#46a74e;
padding:0 0 5px 0;
i {
font-size:20px;
line-height:20px;
padding-right:10px;
vertical-align:-2px;
}
}
}
.box.box-last {
padding-bottom:49px;
p {
i {
font-size:29px;
line-height:29px;
color:#c0c0c0;
vertical-align:-6px;
padding-right:13px;
}
}
}
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,75 @@
@import '_theme_variables';
/************************************************************
History Page Styles
************************************************************/
#order-detail-content table {
.return_quantity_buttons {
margin-top:3px;
a {
display:none;
float:left;
&+a { margin-left:3px; }
}
}
.order_qte_input {
display:none;
width:57px;
height:27px;
line-height:27px;
padding:0;
text-align:center;
}
label {font-weight:400;}
}
.table {
td.history_detail {
a + a {
margin-left:14px;
}
}
tfoot {
strong {
color:#333;
}
}
}
.info-order {
i {
font-size:20px;
&.icon-gift {color:#f13340;}
&.icon-repeat {color:#55c65e;}
}
}
#sendOrderMessage {
margin-bottom:30px;
select.form-control {
width:263px;
}
}
@@ -0,0 +1,640 @@
@mixin opacity($opacity) {
opacity: $opacity;
filter: unquote("alpha(opacity=#{round($opacity * 100)})");
-moz-opacity: $opacity;
}
@mixin hideYetClickable() {
@include opacity(0);
border: none;
background: none;
}
@mixin inline-block() {
display: -moz-inline-box;
display: inline-block;
*display: inline;
zoom: 1;
}
@mixin ellipsis() {
text-overflow: ellipsis;
display: block;
overflow: hidden;
white-space: nowrap;
}
@mixin border-radius($radius) {
-webkit-border-radius: $radius;
-moz-border-radius: $radius;
border-radius: $radius;
}
@mixin box-shadow($def) {
-webkit-box-shadow: $def;
-moz-box-shadow: $def;
box-shadow: $def;
}
@mixin retina() {
@media only screen {
@media (min-resolution: 124dpi), (-webkit-min-device-pixel-ratio: 1.3), (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 4/3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
@include use-backgrounds(url($sprite-retina), $sprite-size, url($input-background-retina), url($input-background-focus-retina), $input-background-size);
}
}
}
@mixin use-backgrounds($sprite, $sprite-size, $input, $input-focus, $input-size) {
div#{$class-wrapper} {
&#{$class-select},
&#{$class-select} span,
&#{$class-checkbox} span,
&#{$class-radio} span,
&#{$class-upload},
&#{$class-upload} span#{$class-action},
&#{$class-button},
&#{$class-button} span {
background-image: $sprite;
@if $sprite-size > 0 {
background-size: $sprite-size;
}
}
}
#{$class-wrapper-element}#{$class-wrapper} input#{$class-input},
#{$class-wrapper-element}#{$class-wrapper} select#{$class-multiselect},
#{$class-wrapper-element}#{$class-wrapper} textarea#{$class-textarea} {
background-image: $input;
@if $sprite-size > 0 {
background-size: $input-size;
}
@include whenActive {
background-image: $input-focus;
}
}
}
@mixin whenActive {
&#{$class-active} {
@content
}
}
@mixin whenHover {
&#{$class-hover}, &#{$class-focus} {
@content
}
}
@mixin whenDisabled {
&#{$class-disabled}, &#{$class-disabled}#{$class-active} {
@content
}
}
@mixin whenChecked {
&#{$class-checked} {
@content
}
}
$sprite: "../../../img/jquery/uniform/sprite.png" !default;
$sprite-retina: "../../img/jquery/uniform/sprite-retina.png" !default;
$sprite-size: 493px !default;
$button-height: 30px !default;
$button-margin-left: 13px !default;
$button-padding: 0 !default;
$button-span-height: $button-height !default;
$checkbox-height: 15px !default;
$checkbox-width: 15px !default;
$input-padding: 3px !default;
$input-background: "../../../img/jquery/uniform/bg-input.png" !default;
$input-background-retina: "../../../img/jquery/uniform/bg-input-retina.png" !default;
$input-background-focus: "../../../img/jquery/uniform/bg-input-focus.png" !default;
$input-background-focus-retina: "../../../img/jquery/uniform/bg-input-focus-retina.png" !default;
$input-background-size: 1px !default;
$radio-height: 13px !default;
$radio-width: 13px !default;
$select-fixed-width: 190px !default;
$select-height: 27px !default;
$select-margin-left: 10px !default;
$select-margin-right: 30px !default;
$select-select-height: 27px !default;
$select-select-top: 0px !default;
$upload-action-width:94px !default;
$upload-filename-margin-top: 0px !default;
$upload-filename-margin-bottom: 0px !default;
$upload-filename-margin-left: 0px !default;
$upload-filename-width: 172px !default;
$upload-filename-padding: 0 10px !default;
$upload-height: 27px !default;
$upload-width: 100% !default;
$checkbox-voffset: (-10 * $select-height);
$radio-voffset: ($checkbox-voffset - $checkbox-height);
$upload-voffset: ($radio-voffset - $radio-height);
$button-voffset: ($upload-voffset - (8 * $upload-height));
$class-action: ".action" !default;
$class-active: ".active" !default;
$class-button: ".button" !default;
$class-checkbox: ".checker" !default;
$class-checked: ".checked" !default;
$class-disabled: ".disabled" !default;
$class-input: ".uniform-input" !default;
$class-filename: ".filename" !default;
$class-focus: ".focus" !default;
$class-hover: ".hover" !default;
$class-multiselect: ".uniform-multiselect" !default;
$class-radio: ".radio" !default;
$class-select: ".selector" !default;
$class-select1: ".selector1" !default;
$class-select2: ".selector2" !default;
$class-select3: ".selector3" !default;
$class-upload: ".uploader" !default;
$class-textarea: ".uniform" !default;
$class-wrapper: "" !default;
$class-wrapper-element: "";
@if $class-wrapper != "" {
$class-wrapper-element: "span"
}
/* General settings */
div#{$class-wrapper} {
&#{$class-select},
&#{$class-select} span,
&#{$class-checkbox} span,
&#{$class-radio} span,
&#{$class-upload},
&#{$class-upload} span#{$class-action},
&#{$class-button},
&#{$class-button} span {
background-image: url($sprite);
background-repeat: no-repeat;
-webkit-font-smoothing: antialiased;
}
&#{$class-select},
&#{$class-checkbox},
&#{$class-button},
&#{$class-radio},
&#{$class-upload} {
vertical-align: middle;
/* Keeping this as :focus to remove browser styles */
&:focus {
outline: 0;
}
}
&#{$class-select},
&#{$class-radio},
&#{$class-checkbox},
&#{$class-upload},
&#{$class-button} {
&, & * {
margin: 0;
padding: 0;
}
}
}
.highContrastDetect {
background: url($input-background) repeat-x 0 0;
width: 0px;
height: 0px;
}
/* Input & Textarea */
#{$class-wrapper-element}#{$class-wrapper} input#{$class-input},
#{$class-wrapper-element}#{$class-wrapper} select#{$class-multiselect},
#{$class-wrapper-element}#{$class-wrapper} textarea#{$class-textarea} {
padding: $input-padding;
background: white;
outline: 0;
@include whenActive {
}
}
/* Remove default webkit and possible mozilla .search styles.
* Keeping this as :active to remove browser styles */
div#{$class-wrapper}#{$class-checkbox} input,
input[type="search"],
input[type="search"]:active {
-moz-appearance: none;
-webkit-appearance: none;
}
/* Select */
div#{$class-wrapper}#{$class-select} {
background-position: 0 (-2 * $select-height);
line-height: $select-height;
height: $select-height;
padding: 0 0 0 $select-margin-left;
position: relative;
overflow: hidden;
span {
@include ellipsis();
background-position: right 0;
height: $select-height;
line-height: $select-height;
padding-right: $select-margin-right;
cursor: pointer;
width: 100%;
display: block;
}
&.fixedWidth{
width: $select-fixed-width;
span {
width: ($select-fixed-width - $select-margin-left - $select-margin-right);
}
}
select {
@include hideYetClickable();
position: absolute;
height: $select-select-height;
top: $select-select-top;
left: 0px;
width: 100%;
}
@include whenActive {
span {
background-position: right (-1 * $select-height);
}
}
@include whenHover {
span {
background-position: right (-1 * $select-height);
}
@include whenActive {
span {
background-position: right (-1 * $select-height);
}
}
}
@include whenDisabled {
span {
background-position: right 0;
}
}
}
/* Select1 */
div#{$class-select1} {
> div {
background-position: 0 (-5 * $select-height);
span {
background-position: right (-3 * $select-height);
}
@include whenActive {
span {
background-position: right (-4 * $select-height);
}
}
@include whenHover {
span {
background-position: right (-4 * $select-height);
}
@include whenActive {
span {
background-position: right (-4 * $select-height);
}
}
}
@include whenDisabled {
background-position: 0 (-5 * $select-height);
span {
background-position: right (-3 * $select-height);
}
}
}
}
/* Select2 */
div#{$class-select2} {
> div {
background-position: 0 (-8 * $select-height);
span {
background-position: right (-6 * $select-height);
}
@include whenActive {
span {
background-position: right (-7 * $select-height);
}
}
@include whenHover {
span {
background-position: right (-7 * $select-height);
}
@include whenActive {
span {
background-position: right (-7 * $select-height);
}
}
}
@include whenDisabled {
background-position: 0 (-8 * $select-height);
span {
background-position: right (-6 * $select-height);
}
}
}
}
/* Select3 */
div#{$class-select3} {
> div {
background-position: 0 (-13 * $select-height);
span {
background-position: right (-11 * $select-height);
}
@include whenActive {
span {
background-position: right (-12 * $select-height);
}
}
@include whenHover {
span {
background-position: right (-12* $select-height);
}
@include whenActive {
span {
background-position: right (-12 * $select-height);
}
}
}
@include whenDisabled {
background-position: 0 (-13 * $select-height);
span {
background-position: right (-11 * $select-height);
}
}
}
}
/* Checkbox */
div#{$class-wrapper}#{$class-checkbox} {
position: relative;
&, span, input {
width: $checkbox-width;
height: $checkbox-height;
}
span {
@include inline-block();
text-align: center;
background-position: 0 ($checkbox-voffset+$radio-height);
@include whenChecked {
background-position: (-1 * $checkbox-width) ($checkbox-voffset + $radio-height);
}
}
input {
@include hideYetClickable();
@include inline-block();
}
@include whenActive {
span {
background-position: (-1 * $checkbox-width) ($checkbox-voffset + $radio-height);
@include whenChecked {
background-position: (-1 * $checkbox-width) ($checkbox-voffset + $radio-height);
}
}
}
@include whenHover {
span {
background-position: (-2 * $checkbox-width) ($checkbox-voffset + $radio-height);
@include whenChecked {
background-position: (-1 * $checkbox-width) ($checkbox-voffset + $radio-height);
}
}
@include whenActive {
span {
background-position: (-1 * $checkbox-width) ($checkbox-voffset + $radio-height);
@include whenChecked {
background-position: (-1 * $checkbox-width) ($checkbox-voffset + $radio-height);
}
}
}
}
@include whenDisabled {
background-position: 0 ($checkbox-voffset + $radio-height);
span {
@include whenChecked {
background-position: 0 ($checkbox-voffset + $radio-height);
}
}
}
}
/* Radio */
div#{$class-wrapper}#{$class-radio} {
position: relative;
display:inline;
&, span, input {
width: $radio-width;
height: $radio-height;
}
span {
@include inline-block();
text-align: center;
background-position: 0 ($radio-voffset + 42px);
@include whenChecked {
background-position: (-1 * $radio-width) ($radio-voffset + 42px);
}
}
input {
@include hideYetClickable();
@include inline-block();
text-align: center;
}
@include whenActive {
span {
background-position: (-1 * $radio-width) ($radio-voffset + 42px);
@include whenChecked {
background-position: (-1 * $radio-width) ($radio-voffset + 42px);
}
}
}
@include whenHover {
span {
background-position: (-1 * $radio-width)-36px ($radio-voffset + 42px);
@include whenChecked {
background-position: (-1 * $radio-width) ($radio-voffset + 42px);
}
}
@include whenActive {
span {
background-position: (-1 * $radio-width) ($radio-voffset + 42px);
@include whenChecked {
background-position: (-1 * $radio-width) ($radio-voffset + 42px);
}
}
}
}
@include whenDisabled {
span {
background-position: 0 ($radio-voffset + 42px);
@include whenChecked {
background-position: 0 ($radio-voffset + 42px);
}
}
}
}
/* Uploader */
div#{$class-wrapper}#{$class-upload} {
background:none;
height: $upload-height;
width: $upload-width;
cursor: pointer;
position: relative;
overflow: hidden;
span#{$class-action} {
background-position: 0 -378px;
height: $upload-height;
line-height: $upload-height;
width: $upload-action-width;
text-align: center;
float: left;
display: inline;
overflow: hidden;
cursor: pointer;
}
span#{$class-filename} {
@include ellipsis();
float: left;
cursor: default;
height: ($upload-height - $upload-filename-margin-top - $upload-filename-margin-bottom);
margin: $upload-filename-margin-top 0 $upload-filename-margin-bottom $upload-filename-margin-left;
line-height: ($upload-height - $upload-filename-margin-top - $upload-filename-margin-bottom);
width: $upload-filename-width;
padding: $upload-filename-padding;
}
input {
@include hideYetClickable();
position: absolute;
top: 0;
right: 0;
float: right;
cursor: default;
width: 100%;
height: 100%;
}
}
/* Buttons */
div#{$class-wrapper}#{$class-button} {
background-position: 0 ($button-voffset + (-4 * $button-height));
height: $button-height;
cursor: pointer;
position: relative;
/* Keep buttons barely visible so they can get focus */
a, button, input {
@include opacity(0.01);
display: block;
top: 0;
left: 0;
right: 0;
bottom: 0;
position: absolute;
}
span {
@include inline-block();
line-height: $button-span-height;
text-align: center;
background-position: right $button-voffset;
height: $button-span-height;
margin-left: $button-margin-left;
padding: $button-padding;
}
@include whenActive {
background-position: 0 ($button-voffset + (-5 * $button-height));
span {
background-position: right ($button-voffset + (-1 * $button-height));
cursor: default;
}
}
@include whenHover {
background-position: 0 ($button-voffset + (-6 * $button-height));
span {
background-position: right ($button-voffset + (-2 * $button-height));
}
}
@include whenDisabled {
background-position: 0 ($button-voffset + (-7 * $button-height));
span {
background-position: right ($button-voffset + (-3 * $button-height));
cursor: default;
}
}
}
@@ -0,0 +1,233 @@
/*
* Core Owl Carousel CSS File
* v1.24
*/
/* clearfix */
.owl-carousel .owl-wrapper:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
/* display none until init */
.owl-carousel{
display: none;
position: relative;
width: 100%;
-ms-touch-action: pan-y;
overflow:hidden
}
.owl-carousel .owl-wrapper{
display: none;
position: relative;
-webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-wrapper-outer{
overflow: hidden;
position: relative;
margin:0 -10px
}
.owl-carousel .owl-wrapper-outer.autoHeight{
-webkit-transition: height 500ms ease-in-out;
-moz-transition: height 500ms ease-in-out;
-ms-transition: height 500ms ease-in-out;
-o-transition: height 500ms ease-in-out;
transition: height 500ms ease-in-out;
}
.owl-carousel .owl-item{
float: left;
width:200px !important
}
.owl-controls .owl-page,
.owl-controls .owl-buttons div{
cursor: pointer;
}
.owl-controls {
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
/* mouse grab icon */
.grabbing {
cursor:url(grabbing.png) 8 8, move;
}
/* fix */
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item{
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
-webkit-transform: translate3d(0,0,0);
-moz-transform: translate3d(0,0,0);
-ms-transform: translate3d(0,0,0);
}
/* CSS3 Transitions */
.owl-origin {
-webkit-perspective: 1200px;
-webkit-perspective-origin-x : 50%;
-webkit-perspective-origin-y : 50%;
-moz-perspective : 1200px;
-moz-perspective-origin-x : 50%;
-moz-perspective-origin-y : 50%;
perspective : 1200px;
}
/* fade */
.owl-fade-out {
z-index: 10;
-webkit-animation: fadeOut .7s both ease;
-moz-animation: fadeOut .7s both ease;
animation: fadeOut .7s both ease;
}
.owl-fade-in {
-webkit-animation: fadeIn .7s both ease;
-moz-animation: fadeIn .7s both ease;
animation: fadeIn .7s both ease;
}
/* backSlide */
.owl-backSlide-out {
-webkit-animation: backSlideOut 1s both ease;
-moz-animation: backSlideOut 1s both ease;
animation: backSlideOut 1s both ease;
}
.owl-backSlide-in {
-webkit-animation: backSlideIn 1s both ease;
-moz-animation: backSlideIn 1s both ease;
animation: backSlideIn 1s both ease;
}
/* goDown */
.owl-goDown-out {
-webkit-animation: scaleToFade .7s ease both;
-moz-animation: scaleToFade .7s ease both;
animation: scaleToFade .7s ease both;
}
.owl-goDown-in {
-webkit-animation: goDown .6s ease both;
-moz-animation: goDown .6s ease both;
animation: goDown .6s ease both;
}
/* scaleUp */
.owl-fadeUp-in {
-webkit-animation: scaleUpFrom .5s ease both;
-moz-animation: scaleUpFrom .5s ease both;
animation: scaleUpFrom .5s ease both;
}
.owl-fadeUp-out {
-webkit-animation: scaleUpTo .5s ease both;
-moz-animation: scaleUpTo .5s ease both;
animation: scaleUpTo .5s ease both;
}
/* Keyframes */
/*empty*/
@-webkit-keyframes empty {
0% {opacity: 1}
}
@-moz-keyframes empty {
0% {opacity: 1}
}
@keyframes empty {
0% {opacity: 1}
}
@-webkit-keyframes fadeIn {
0% { opacity:0; }
100% { opacity:1; }
}
@-moz-keyframes fadeIn {
0% { opacity:0; }
100% { opacity:1; }
}
@keyframes fadeIn {
0% { opacity:0; }
100% { opacity:1; }
}
@-webkit-keyframes fadeOut {
0% { opacity:1; }
100% { opacity:0; }
}
@-moz-keyframes fadeOut {
0% { opacity:1; }
100% { opacity:0; }
}
@keyframes fadeOut {
0% { opacity:1; }
100% { opacity:0; }
}
@-webkit-keyframes backSlideOut {
25% { opacity: .5; -webkit-transform: translateZ(-500px); }
75% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
100% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
}
@-moz-keyframes backSlideOut {
25% { opacity: .5; -moz-transform: translateZ(-500px); }
75% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
100% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
}
@keyframes backSlideOut {
25% { opacity: .5; transform: translateZ(-500px); }
75% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
100% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
}
@-webkit-keyframes backSlideIn {
0%, 25% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(200%); }
75% { opacity: .5; -webkit-transform: translateZ(-500px); }
100% { opacity: 1; -webkit-transform: translateZ(0) translateX(0); }
}
@-moz-keyframes backSlideIn {
0%, 25% { opacity: .5; -moz-transform: translateZ(-500px) translateX(200%); }
75% { opacity: .5; -moz-transform: translateZ(-500px); }
100% { opacity: 1; -moz-transform: translateZ(0) translateX(0); }
}
@keyframes backSlideIn {
0%, 25% { opacity: .5; transform: translateZ(-500px) translateX(200%); }
75% { opacity: .5; transform: translateZ(-500px); }
100% { opacity: 1; transform: translateZ(0) translateX(0); }
}
@-webkit-keyframes scaleToFade {
to { opacity: 0; -webkit-transform: scale(.8); }
}
@-moz-keyframes scaleToFade {
to { opacity: 0; -moz-transform: scale(.8); }
}
@keyframes scaleToFade {
to { opacity: 0; transform: scale(.8); }
}
@-webkit-keyframes goDown {
from { -webkit-transform: translateY(-100%); }
}
@-moz-keyframes goDown {
from { -moz-transform: translateY(-100%); }
}
@keyframes goDown {
from { transform: translateY(-100%); }
}
@-webkit-keyframes scaleUpFrom {
from { opacity: 0; -webkit-transform: scale(1.5); }
}
@-moz-keyframes scaleUpFrom {
from { opacity: 0; -moz-transform: scale(1.5); }
}
@keyframes scaleUpFrom {
from { opacity: 0; transform: scale(1.5); }
}
@-webkit-keyframes scaleUpTo {
to { opacity: 0; -webkit-transform: scale(1.5); }
}
@-moz-keyframes scaleUpTo {
to { opacity: 0; -moz-transform: scale(1.5); }
}
@keyframes scaleUpTo {
to { opacity: 0; transform: scale(1.5); }
}
@@ -0,0 +1,95 @@
@import '_theme_variables';
@import 'compass';
/*
* Owl Carousel Owl Demo Theme
* v1.24
*/
.owl-theme{
.owl-controls{
margin-top: 10px;
text-align: center;
}
/* Styling Next and Prev buttons */
.owl-controls{
.owl-buttons div{
margin-top:38px;
height:20px;
width:20px;
line-height:0;
position:absolute;
top:40%;
margin-top:-10px;
font-size:0;
overflow:hidden;
&:before{
padding-left:2px;
color:#c0c0c0;
font-family:$font1;
font-size:20px;
line-height:22px;
}
&:hover:before{color:#333}
}
.owl-next {
right:10px;
&:before{
content:""
}
}
.owl-prev{
left:10px;
&:before{
content:"";
}
}
/* Styling Pagination*/
.owl-pagination{display:none}
.owl-page{
display: inline-block;
zoom: 1;
*display: inline;/*IE7 life-saver */
}
.owl-page span{
display: block;
width: 12px;
height: 12px;
margin: 5px 7px;
@include opacity(0.5);
@include border-radius(20px);
background: #869791;
}
.owl-page.active span,
&.clickable .owl-page:hover span{
@include opacity(1);
}
/* If PaginationNumbers is true */
.owl-page span.owl-numbers{
height: auto;
width: auto;
color: #FFF;
padding: 2px 10px;
font-size: 12px;
@include border-radius(30px);
}
}
/* preloading images */
.owl-item.loading{
min-height: 150px;
background: url(AjaxLoader.gif) no-repeat center center
}
}
@@ -0,0 +1,146 @@
/*
Uniform Theme: Uniform Default
Version: 1.8
By: Josh Pyles
License: MIT License
---
For use with the Uniform plugin:
http://uniformjs.com/
*/
@import '_uniform._base';
/* INPUT & TEXTAREA */
/* ************************************************************************************************
uniform
************************************************************************************************ */
#{$class-wrapper-element}#{$class-wrapper} input#{$class-input},
#{$class-wrapper-element}#{$class-wrapper} select#{$class-multiselect},
#{$class-wrapper-element}#{$class-wrapper} textarea#{$class-textarea} {
font-size: 13px;
font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
font-weight: normal;
line-height:18px;
color: #777;
border: solid 1px #d6d4d4;
@include whenHover {
@include box-shadow(0px 0px 4px rgba(0,0,0,0.2));
border-color: #cbcaca;
}
}
/* PRESENTATION */
/* Buttons */
div#{$class-wrapper}#{$class-button} {
span {
font-weight: bold;
font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
font-size: 12px;
letter-spacing: 1px;
text-transform: uppercase;
}
@include whenHover {
span {
color: #555;
}
}
@include whenDisabled {
span {
color: #bbb;
}
}
}
/* Select */
#compare_shipping .form-group label{display:block}
div#{$class-wrapper}#{$class-select} {
font-size: 12px;
span {
color: #666;
text-shadow: 0 1px 0 #fff;
}
select {
font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
font-size: 12px;
}
@include whenDisabled {
span {
color: #bbb;
}
}
}
.checker span input{margin:0 !important}
.radio input[type="radio"], .radio-inline input[type="radio"], .checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"]{margin:0 !important}
.radio-inline, .checkbox-inline{cursor:default}
/* Checker */
div#{$class-wrapper}#{$class-checkbox} {
cursor:pointer;
margin-right: 5px;
span{position:relative;top:-2px;}
}
#layered_form div#{$class-checkbox}{
display:inline
}
/* Radio */
div#{$class-wrapper}#{$class-radio} {
margin-right: 3px;
span{position:relative;top:-2px;}
}
/* Uploader */
div#{$class-wrapper}#{$class-upload} {
span#{$class-action} {
text-shadow: rgba(0,0,0,0.1) 0px 1px 0px;
font-size: 13px;
font-weight: bold;
color:#fff;
}
span#{$class-filename} {
color: #777;
border: solid 1px #d6d4d4;
font-size: 13px;
background:#fbfbfb;
margin-right:2px;
}
@include whenDisabled {
span#{$class-action} {
color: #aaa;
}
span#{$class-filename} {
border-color: #ddd;
color: #aaa;
}
}
}
#{$class-wrapper-element}#{$class-wrapper} input#{$class-input} {
&, &:focus {
background-color: #fff;
}
}
@@ -0,0 +1,36 @@
@import '_theme_variables';
/*********************************************************************
Maintenance Page Styles
**********************************************************************/
#maintenance {
margin:126px 0 0 0;
padding:91px 48px 365px 297px;
background:url(../img/bg_maintenance.png) no-repeat;
.logo {
margin-bottom:31px;
}
h1 {
font:600 28px/34px 'Open Sans', sans-serif;
color:#333;
text-transform:uppercase;
border-bottom:1px solid $base-border-color;
padding:0 0 14px 0;
margin:0 0 19px 0;
}
#message {
font:600 16px/31px 'Open Sans', sans-serif;
padding-left:18px;
color:#555454;
text-transform:uppercase;
}
}
@media only screen and (min-width: 1200px) {
.container {
padding-left:0;
padding-right:0;
}
}
@@ -0,0 +1,362 @@
/* Special style for block cart*/
@import '../../_theme_variables';
/*******************************************************************
Cart Block Styles
********************************************************************/
#cart_block {
#cart_block_list {
.deleteCustomizableProduct, .remove_link {
position:absolute;
right:10px;
top:19px;
}
.remove_link a, .ajax_cart_block_remove_link {
color:$link-color;
&:before {
display:inline-block;
content:"";
font-family:"FontAwesome";
font-size:18px;
line-height:18px;
}
&:hover {color:$link-hover-color;}
}
}
.cart-images {
float:left;
margin-right:20px;
}
.cart-info {
overflow:hidden;
position:relative;
padding-right:20px;
.product-name {
padding-bottom:15px;
margin-top:-4px;
a {
font-size:13px;
line-height:18px;
display:inline-block;
}
}
.quantity-formated {
display:inline-block;
color:#9c9b9b;
text-transform:uppercase;
}
}
dt {
font-weight:normal;
overflow:hidden;
padding:20px 10px 16px 20px;
position:relative;
}
dd {
padding:10px 20px;
position:relative;
li {
.deleteCustomizableProduct {
top:12px !important;
right:15px !important;
}
}
}
#cart_block_no_products {
margin:0;
padding:10px 20px;
}
#cart-prices {
border-top:1px solid $base-border-color;
font-weight:bold;
padding:10px 20px 22px 20px;
.cart-prices-line {
overflow:hidden;
border-bottom:1px solid #515151;
padding:7px 0;
&.last-line {
border:none;
}
}
}
#cart-buttons {
overflow:hidden;
padding:20px 20px 10px 20px;
margin:0;
background:#f6f6f6;
a {
float:left;
margin-bottom:10px;
margin-right:10px;
&#button_order_cart {
margin-right:0;
}
}
}
}
/*******************************************************************
Cart Block(Header) Styles
********************************************************************/
#header {
#cart_block {
z-index: 10;
display:none;
position: absolute;
right: 0;
top: 132px;
height: auto;
width: 270px;
background:#484848;
color:#fff;
a {
color:#fff;
&:hover {color:#9c9b9b;}
}
#cart_block_list {
.remove_link a, .ajax_cart_block_remove_link {
color:#fff;
outline:none;
text-decoration:none;
&:hover {color:#9c9b9b;}
}
}
.price {
color:#fff;
}
dt {
background:url(../../../img/cart-shadow.png) repeat-x;
&.first_item {background:none;}
}
dd {background:url(../../../img/cart-shadow.png) repeat-x;}
.product-atributes {
padding-bottom:10px;
font-size:11px;
a {
color:#9c9b9b;
&:hover {color:#fff;}
}
}
#cart-prices {
border:none;
background:url(../../../img/cart-shadow.png) repeat-x #3d3d3d;
}
#cart-buttons {
background:url(../../../img/cart-shadow.png) repeat-x #333333;
}
}
}
#cart_block #cart_block_summary, #cart_block .title_block span, #header #cart_block h4, #header #cart_block .title_block, #header #cart_block h4 {display:none}
#cart_block #cart_block_shipping_cost,
#cart_block #cart_block_total {
float:right
}
#cart_block table#vouchers {
clear: both;
width:80%;
margin:0 auto;
margin-bottom:10px;
tr td{
padding: 2px;
&.quantity{
margin-right:5px;
min-width:18px
}
&.delete{
padding-left: 0;
padding-right: 0;
text-align: right;
width: 15px;
}
}
}
/*****************************************************************************
Layer Cart Css
*****************************************************************************/
.layer_cart_overlay {
background-color:#000;
display:none;
height:100%;
left:0;
position:fixed;
top:0;
width:100%;
z-index:98;
opacity:.20;
-moz-opacity:.20;
filter:alpha(opacity=20);
}
* html .layer_cart_overlay {
filter:alpha(opacity=20);
position:absolute;
left:0;
margin-left:-160px;
}
#layer_cart {
background-color:#fff;
position:absolute;
display:none;
z-index:99;
width:84%;
margin-right:8%;
margin-left:8%;
@include border-radius(4px);
.layer_cart_product {
padding:30px 30px 30px 30px;
h2 {
font:400 23px/29px Arial, Helvetica, sans-serif;
color:#46a74e;
margin-bottom:22px;
padding-right:100px;
i {
font-size:30px;
line-height:30px;
float:left;
padding-right:8px;
}
}
.product-image-container {
max-width:178px;
border:1px solid $base-border-color;
padding:5px;
float:left;
margin-right:30px;
}
.layer_cart_product_info {
padding:38px 0 0 0;
#layer_cart_product_title {
display:block;
padding-bottom:8px;
}
> div {
padding-bottom:7px;
strong {padding-right:3px}
}
}
}
.layer_cart_cart {
background:#fafafa;
border-left:1px solid $base-border-color;
padding:21px 30px 90px 30px;
@include border-radius(0px 4px 4px 0px);
min-height:318px;
position:relative;
h2 {
font:400 23px/29px Arial, Helvetica, sans-serif;
color:#333;
border-bottom:1px solid $base-border-color;
padding-bottom:13px;
margin-bottom:17px;
}
.layer_cart_row {
padding:0 0 7px 0;
}
.button-container {
position:absolute;
bottom:0;
left:0;
width:100%;
padding:0px 30px 20px 30px;
.btn {margin-bottom:10px;}
span.exclusive-medium {
margin-right:5px;
i {
padding-right:5px;
color:#777777;
}
}
}
.cross {
position:absolute;
right:7px;
top:8px;
width:25px;
height:25px;
cursor:pointer;
color:#333;
&:before {
content:"";
display:block;
font-family:"FontAwesome";
font-size:25px;
line-height:25px;
}
&:hover {
color:$link-hover-color;
}
}
}
.continue {
cursor: pointer;
}
p {
padding: 0px;
}
}
#blockcart_list {
width: 232px;
overflow: hidden;
}
#blockcart_list ul {
display: block;
height: 90px;
}
#blockcart_list li {
list-style-type: none;
float: left;
width: 58px;
}
@@ -0,0 +1,24 @@
/* block CONTACT ******************************************************************************* */
#contact_block {
.label {display: none}
.block_content {
color:#888888;
padding:0 20px 20px;
}
p {margin-bottom:4px;}
p.tel {
font:400 17px/21px Arial, Helvetica, sans-serif;
color:#fff;
margin-bottom:6px;
i {
font-size:25px;
vertical-align:-2px;
padding-right:10px;
}
}
}
@@ -0,0 +1,242 @@
@import '../../_theme_variables';
#enabled_filters {
background:#484848;
padding:16px 20px;
margin-bottom:16px;
span.layered_subtitle {
color:#fff;
display:block;
padding-bottom:11px;
}
li {
padding:1px 0;
color:#9c9b9b;
cursor:pointer;
position:relative;
&:hover, &:hover a {
color:#fff;
}
a {
position:absolute;
top:1px;
right:0;
display:block;
cursor: pointer;
text-indent:0px;
color:#888888;
&:before {
content:"";
display:block;
font-family:"FontAwesome";
width:12px;
height:12px;
}
}
}
}
#layered_block_left {
.layered_subtitle_heading {
border-bottom:1px solid $base-border-color;
padding:0 12px 6px 0;
margin-bottom:8px;
font-weight:bold;
position:relative;
color:#333333;
.layered_close {
position:absolute;
right:0;
top:4px;
height:14px;
width:12px;
a {
display:block;
height:14px;
width:12px;
text-indent:-5000px;
position:relativee;
color:#d3d2d2;
font-size:12px;
line-height:14px;
&:after {
content:"";
display:block;
text-indent:0;
height:14px;
width:12px;
position:absolute;
top:0px;
left:0;
font-family:'FontAwesome';
vertical-align:1px;
}
&:hover {
color:$link-hover-color;
}
}
&.closed {
a {
&:after {
content:"";
}
}
}
}
}
}
#layered_block_left {
label {font-weight:normal;}
.layered_filter_ul {
padding:0 20px 5px;
li {
padding-bottom:7px;
.checker span, .radio span {top:0;}
label {
margin-bottom:0;
a {
font-weight:normal;
&:hover {color:#333;}
}
}
}
}
}
#layered_block_left ul li label {cursor: pointer; display:inline;}
/* Style moved form the template to the css */
/******************************************************************************
Color List Style
*******************************************************************************/
#layered_block_left {
ul.color-group {
padding-top:2px;
overflow:hidden;
li {
width:50%;
float:left;
line-height:15px;
vertical-align:middle;
padding-bottom:9px;
.color-option {
border: 1px solid $base-border-color;
height: 15px;
margin-left: 0;
margin-right:4px;
padding: 0;
width: 15px;
@include box-shadow(rgba(white, 1) 0 0 1px 0px inset,rgba(white, 1) 0 0 0px 1px inset,rgba(white, 1) 0 0 0px 1px inset,rgba(white, 1) 0 0 1px 0px inset);
&.on {
border-color:#000;
}
&.disable {
opacity: 0.5;
filter:alpha(opacity=50);
-moz-opacity:0.5;
}
}
}
}
}
#layered_block_left .nomargin a {
display: inline;
}
/**************************************************************************************
Layered Form Selects Styles
***************************************************************************************/
#layered_form {
.select {
max-width: 230px;
}
}
/**************************************************************************************
Range Slider Styles
***************************************************************************************/
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
background:#fbfbfb;
border-color:#d6d4d4;
@include border-radius(0px);
width:15px;
height:15px;
&.ui-state-hover {
background:#555454;
border-color:#333;
}
}
.ui-slider .ui-slider-range {
background:#959595;
border:none;
}
.ui-corner-all {
@include border-radius(0px);
background:#efefef;
border:none;
height:11px;
}
.ui-slider-horizontal .ui-slider-handle { top:-0.14em}
.layered_price_range {
margin-left: 7px;
}
/**************************************************************************************
Range Input Styles
***************************************************************************************/
.layered_price_range_unit {
margin-right: 7px;
}
.layered_slider_container {
margin: 6px 0 6px 7px;
}
.layered_input_range_min, .layered_input_range_max {
width:60px;
display:inline;
}
.layered_list_selected {
font-weight: bold;
}
.layered_list {
display: block;
cursor: pointer;
}
.layered_list:hover {
font-weight: bold;
}
.layered_ajax_loader p {
margin: 20px 0;
text-align: center;
}
.hide-action {
text-align: center;
text-align: right;
display: block;
cursor: pointer;
}
.hide-action:hover {
font-weight: bold;
}
@@ -0,0 +1,105 @@
@import '../../_theme_variables';
#layered_block_left {
ul.layered_filter_ul {
border-top:1px solid $base-border-color;
}
}
#layered_block_left div.block_content {
padding: 6px;
}
#layered_block_left ul {
padding-left: 0;
max-height: 120px;
overflow-y: auto;
overflow-x: hidden;
padding-left: 1px;
padding-right: 1px;
}
#layered_form > div > div {
border-bottom: 1px dotted #CCCCCC;
padding-bottom: 5px;
margin-bottom: 5px;
}
#layered_block_left .hide-action {
display: block;
text-align: right;
padding-right: 5px;
}
#layered_block_left .hide-action:hover {
text-decoration: underline;
}
#layered_block_left ul li {
margin-left: 15px;
padding-left: 2px;
list-style-type: none;
}
#layered_block_left #enabled_filters , #layered_url_filter_block {
font-size: 10px;
padding-bottom: 5px;
}
/* Style moved form the template to the css */
#layered_block_left ul li .disabled {
color: #666;
}
.product_list .warning {
margin-top: 13px;
}
#layered_form .select {
width: 165px;
}
#layered_block_left .color-option.disable {
opacity: 0.5;
filter:alpha(opacity=50);
-moz-opacity:0.5;
}
#layered_form .color-option.on {
border: 1px solid red;
}
#layered_form input[type=radio] {
margin-left: 2px;
vertical-align: middle;
}
.layered_price_range {
margin-left: 7px;
}
.layered_price_range_unit {
margin-right: 7px;
}
.layered_slider_container {
margin: 6px 0 6px 6px; width: 93%;
}
.layered_slider {
margin-top:5px;
}
.layered_input_range_min {
width:30px;
}
.layered_input_range_max {
width:40px;
}
.layered_list_selected {
font-weight: bold;
}
.layered_ajax_loader p {
margin: 20px 0;
text-align: center;
}
.hide-action {
text-align: center;
text-align: right;
display: block;
cursor: pointer;
}
.hide-action:hover {
font-weight: bold;
}
@@ -0,0 +1,97 @@
@import '../../_theme_variables';
/* Block newsletter */
#columns #newsletter_block_left {
.form-group {
margin-bottom:0;
.form-control {
max-width:222px;
display:inline-block;
margin-right:6px;
}
}
.success_inline, .warning_inline {
text-align:left;
padding:1px 0 0 0;
margin-bottom:-19px;
}
.success_inline {
color: #418B19;
}
.warning_inline {
color: #f13340;
}
}
/* Block newsletter footer */
#footer {
#newsletter_block_left {
overflow:hidden;
width:50%;
float:left;
padding:13px 15px 7px 15px;
margin-bottom:0;
h4 {
background:none;
float:left;
padding:7px 16px 5px 0;
text-transform:none;
font-size:21px;
line-height:25px;
border:none;
}
.block_content {overflow:hidden;}
.form-group {
margin-bottom:0;
.form-control {
height:45px;
max-width:267px;
background:#3c3c3c;
border-color:#515151;
color:#fff;
padding:5px 43px 5px 12px;
display:inline-block;
&:focus {
@include box-shadow(black 0px 0px 0px);
}
}
.button-small {
margin-left:-41px;
border:none;
background:none;
text-align:center;
color:#908f8f;
&:before {
content:"";
font-family:'FontAwesome';
font-size:28px;
line-height:28px;
}
&:hover {
color:#fff !important;
}
span{display:none;}
}
}
.warning_inline {
display:inline-block;
color:#f13340;
font-size:13px;
line-height:26px;
}
}
}
@@ -0,0 +1,74 @@
@import '../../_theme_variables';
/* block top search */
#search_block_top {
position:absolute;
right: 420px;
top: 50px;
.btn.button-search {
background:#333;
float: left;
border:none;
color:#fff;
width:57px;
text-align:center;
padding:10px 0 11px 0;
span {display:none;}
&:before {
content:"";
display:block;
font-family:"FontAwesome";
font-size:17px;
}
&:hover {color:#6f6f6f}
}
#search_query_top {
padding:0 13px;
height:45px;
width:271px;
background:#fbfbfb;
float: left;
margin-right:1px;
}
}
.ac_results {
background:#fff;
border:1px solid $base-border-color;
width:271px;
margin-top:-1px;
li {
padding:0 10px;
font-weight:normal;
color:#686666;
font-size:13px;
line-height:22px;
&.ac_odd {
background:#fff;
}
&:hover, &.ac_over {
background:#fbfbfb;
}
}
}
form#searchbox {
label{
color:#333;
margin-bottom:1px
}
input#search_query_block{
border: 1px solid $base-border-color;
height: 18px;
margin-top:10px;
}
input#search_button{padding: 1px 4px;}
}
@@ -0,0 +1,23 @@
@import '../../_theme_variables';
.tags_block {
.block_content {
overflow:hidden;
a {
display:inline-block;
font-size:13px;
line-height:16px;
font-weight:bold;
padding:4px 9px 5px 9px;
border:1px solid $base-border-color;
float:left;
margin:0 3px 3px 0;
&:hover {
color:#333;
background:#f6f6f6;
}
}
}
}
@@ -0,0 +1,101 @@
@import '../../../_theme_variables';
/*** ESSENTIAL STYLES ***/
.sf-contener {
clear:both;
}
.sf-right {
}
.sf-menu, .sf-menu * {
margin: 0;
padding: 0;
list-style: none;
}
.sf-menu {
margin: 50px 0 0;
padding: 0;
width: 100%;
border-bottom: 3px solid #e9e9e9;
background: #f6f6f6;
}
.sf-menu ul {
position: absolute;
top: -999em;
width: 10em; /* left offset of submenus need to match (see below) */
background: #fff;
}
.sf-menu ul li {
width: 100%;
}
.sf-menu li:hover {
visibility: inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
position: relative;
}
.sf-menu > li {
float: left;
border-right: 1px solid #d6d4d4;
margin-bottom: -3px;
> a {
font: 600 18px/22px 'Open Sans', sans-serif;
text-transform: uppercase;
color: #484848;
display: block;
padding: 17px 20px;
border-bottom: 3px solid #e9e9e9;
}
&.sfHover > a, > a:hover, &.sfHoverForce a {
background: #333;
border-bottom-color: #666666;
color: #fff;
}
}
.sf-menu li li a {
display: block;
position: relative;
color: #777777;
font-size: 13px;
line-height: 16px;
font-weight: bold;
padding-bottom: 10px;
&:before {
content: "";
display: inline-block;
font-family: "FontAwesome";
padding-right: 10px;
}
&:hover {
color: #333;
}
}
.sf-menu li ul {
display: none;
left: 0;
top: 59px; /* match top ul list item height */
z-index: 99;
width: 220px;
padding: 25px 30px;
@include box-shadow(rgba(black, 0.20) 0px 5px 13px);
}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
top: -999em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
left: 200px; /* match ul width */
top: 0;
}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
top: -999em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
left: 200px; /* match ul width */
top: 0;
}
@@ -0,0 +1,51 @@
/* block top user information */
#header_right {
#header_user {
clear:both;
float: right;
margin-top:50px;
#shopping_cart {
a {
padding:7px 10px 14px 16px;
background:#333333;
min-width: 270px;/* 200 */
display:block;
font-weight:bold;
color:#777777;
text-shadow:1px 1px rgba(0,0,0,0.2);
b {
color:#fff;
font:600 18px/22px 'Open Sans', sans-serif;
padding-right:5px;
}
&:before {
content:"";
font-family:"FontAwesome";
display:inline-block;
font-size:23px;
line-height:23px;
color:#fff;
padding-right:15px;
}
&:after {
content:"";
font-family:"FontAwesome";
display:inline-block;
float:right;
font-size:18px;
color:#686666;
padding:6px 0 0 0;
}
}
.ajax_cart_total { display:none !important; }
}
}
}
@@ -0,0 +1,9 @@
/* Block Viewed Products */
#viewed-products_block_left {
li.last_item {
padding-bottom:0;
margin-bottom:0;
border-bottom:none;
}
}
@@ -0,0 +1,169 @@
@import '../../_theme_variables';
/* module blockwishlist */
/* lnk on detail product page */
#primary_block #wishlist_button {
font-weight:bold;
&:before{
content:"";
font-family:FontAwesome;
color:#fff;
font-size:15px;
line-height:31px;
border-radius:50px;
-moz-border-radius:50px;
-webkit-border-radius:50px;
background:#929292;width:30px;
font-weight:normal;
text-align:center;
display:inline-block;
height:30px;
margin-right:6px
}
}
/* bt add */
.add_wishlist_button a {padding:5px 7px 5px 18px}
.add_wishlist_button a span {
z-index:10;
display:block;
position:absolute;
top:-1px;
left:-12px;
height:26px;
width:26px;
background:url(img/icon/pict_add_wishlist.png) no-repeat 0 0 transparent
}
/* block */
#wishlist_block {
#wishlist_block_list {
margin-bottom:20px;
dl {
font-weight:normal;
&.products.no-products {
font-weight:bold;
padding-bottom:15px;
border-bottom:1px solid $base-border-color;
dt {
padding-top:0px;
border-top:none;
}
}
&.products {
border-bottom:1px solid $base-border-color;
dt {
padding-top:20px;
border-top:1px solid $base-border-color;
}
dd {
padding-bottom:20px;
}
dt.first_item {
padding-top:0px;
border-top:none;
}
}
dt {
position:relative;
padding-right:0px;
}
dd{margin-left:24px;}
}
}
.lnk {
.form-group {
margin-bottom:20px;
select {
max-width:192px;
}
}
}
.ajax_cart_block_remove_link {
font-size:14px;
line-height:14px;
color:#d3d2d2;
width:14px;
height:14px;
float:right;
&:hover {
color:$link-hover-color;
}
}
.cart_block_product_name {
width:85%;
display:inline-block;
font-weight:bold
}
.quantity-formated {
float:left;
margin-right:5px;
width:15px
}
}
#wishlist_block_list .price {
float:right
}
/* page in my account ************************************************************************* */
#mywishlist td.wishlist_delete a {
font-size:15px;
}
/* wishlistLinkTop */
#module-blockwishlist-mywishlist #block-order-detail #hideSendWishlist {
display:inline-block;
}
#module-blockwishlist-mywishlist .wishlistLinkTop {}
#module-blockwishlist-mywishlist .wishlistLinkTop ul.display_list {
border-bottom:1px dotted #ccc;
margin-bottom:20px;
}
#module-blockwishlist-mywishlist .wishlistLinkTop li {float:left}
#module-blockwishlist-mywishlist .wishlistLinkTop .display_list li a {
display:inline-block;
padding:7px 11px 5px 22px;
color: #333;
background:url(img/arrow_right_2.png) no-repeat 10px 10px transparent
}
#module-blockwishlist-mywishlist .wishlistLinkTop #hideSendWishlist {
float:right;
}
#module-blockwishlist-mywishlist .wishlistLinkTop #showBoughtProducts,
#module-blockwishlist-mywishlist .wishlistLinkTop #hideBoughtProductsInfos {display:none}
/* wlp_bought ****************************************** */
/* wlp_bought_list */
ul.wlp_bought_list li .inner-content {
position:relative;
}
ul.wlp_bought_list li .lnkdel {
position:absolute;
top:5px;
right:5px;
display:block;
height:12px;
width:12px;
text-indent:-5000px;
background: url(img/icon/delete.gif) no-repeat 0 0
}
@@ -0,0 +1,87 @@
#compare_shipping {
.form-group {
line-height:normal;
margin-bottom:10px;
label {margin-bottom:6px;}
.form-control {
width:263px;
}
&.last {
margin-bottom:20px;
input {margin-bottom:3px;}
}
}
.table {
background:#fff;
thead {
tr {
th {
background:#fff;
padding:4px 10px 3px 10px;
}
}
}
tbody {
td {
margin:0;
&.carrier_action {
width:54px;
padding-left:0;
padding-right:0;
text-align:center;
input {
margin:0;
}
}
}
}
}
}
#availableCarriers {
.table {
margin-bottom:20px;
}
}
#compare_shipping ul#carriercompare_errors_list {
color: red;
}
#compare_shipping_form { padding-bottom:20px;}
#compare_shipping ul#carriercompare_errors_list li {
margin-left: 30px;
text-decoration: none;
list-style: none;
}
#SE_AjaxDisplay
{
text-align: center;
display: none;
}
#SE_AjaxDisplay img
{
width: 15px;
}
.SE_SubmitRefreshCard {
button {
float:left;
&#carriercompare_submit {
margin-right:10px;
}
}
}
#carriercompare_errors {display:none;}
@@ -0,0 +1,56 @@
#favoriteproducts_block_account .favoriteproduct {
position:relative;
margin-bottom: 14px;
padding: 12px 8px;
border: 1px solid #eee;
border-radius: 3px 3px 3px 3px;
}
.favoriteproduct a.product_img_link {
border: 1px solid #CCCCCC;
display: block;
float: left;
margin-right: 14px;
overflow: hidden;
position: relative;
}
.favoriteproduct p.product_desc {
line-height: 16px;
overflow: hidden;
padding: 0;
}
.favoriteproduct .remove {
position:absolute;
top:10px;
right:10px
}
.favoriteproduct .remove .icon {cursor:pointer}
/* lnk fiche produit */
#usefull_link_block li#favoriteproducts_block_extra_add {
padding-left:20px;
background:url(img/add_favorite.gif) no-repeat 0 0;
cursor: pointer;
}
#usefull_link_block li#favoriteproducts_block_extra_remove {
padding-left:20px;
background:url(img/del_favorite.gif) no-repeat 0 0;
cursor: pointer;
}
ul#usefull_link_block li#favoriteproducts_block_extra_added {
padding-left:20px;
background:url(img/add_favorite.gif) no-repeat 0 0;
cursor: pointer;
display: none;
}
ul#usefull_link_block li#favoriteproducts_block_extra_removed {
padding-left:20px;
background:url(img/add_favorite.gif) no-repeat 0 0;
cursor: pointer;
display: none;
}
@@ -0,0 +1,210 @@
/**
* BxSlider v4.0 - Fully loaded, responsive content slider
* http://bxslider.com
*
* Written by: Steven Wanderski, 2012
* http://stevenwanderski.com
* (while drinking Belgian ales and listening to jazz)
*
* CEO and founder of bxCreative, LTD
* http://bxcreative.com
*/
/******************************************************************************
Home Page Slider
*******************************************************************************/
#homepage-slider {
padding-left:0;
padding-right:0;
padding-top:30px;
margin-bottom:30px;
max-width:779px;
}
/*****************************************************************************
BXSlider Styles
********************************************************************************/
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
position: relative;
padding: 0;
*zoom: 1;
a {display:block;}
img {
display: block;
max-width: 100%;
height:auto;
}
}
/** THEME
===================================*/
.bx-wrapper {
.bx-viewport {
width:100%;
}
}
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
position: absolute;
bottom: -30px;
width: 100%;
}
/* LOADER */
.bx-wrapper .bx-loading {
min-height: 50px;
background: url(images/bx_loader.gif) center center no-repeat #fff;
height: 100%;
width: 100%;
position: absolute;
top: 0;
left: 0;
z-index: 2000;
}
/* PAGER */
.bx-wrapper .bx-pager {
text-align: center;
font-size: .85em;
font-family: Arial;
font-weight: bold;
color: #666;
padding-top: 20px;
}
.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
display: inline-block;
*zoom: 1;
*display: inline;
}
.bx-wrapper .bx-pager.bx-default-pager a {
background: #666;
text-indent: -9999px;
display: block;
width: 10px;
height: 10px;
margin: 0 5px;
outline: 0;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
background: #000;
}
/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
left: 10px;
background: url(images/controls.png) no-repeat 0 -32px;
}
.bx-wrapper .bx-next {
right: 10px;
background: url(images/controls.png) no-repeat -43px -32px;
}
.bx-wrapper .bx-prev:hover {
background-position: 0 0;
}
.bx-wrapper .bx-next:hover {
background-position: -43px 0;
}
.bx-wrapper .bx-controls-direction a {
position: absolute;
top: 50%;
margin-top: -16px;
outline: 0;
width: 32px;
height: 32px;
text-indent: -9999px;
z-index: 9999;
}
.bx-wrapper .bx-controls-direction a.disabled {
display: none;
}
/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
text-align: center;
}
.bx-wrapper .bx-controls-auto .bx-start {
display: block;
text-indent: -9999px;
width: 10px;
height: 11px;
outline: 0;
background: url(images/controls.png) -86px -11px no-repeat;
margin: 0 3px;
}
.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
background-position: -86px 0;
}
.bx-wrapper .bx-controls-auto .bx-stop {
display: block;
text-indent: -9999px;
width: 9px;
height: 11px;
outline: 0;
background: url(images/controls.png) -86px -44px no-repeat;
margin: 0 3px;
}
.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
background-position: -86px -33px;
}
/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
text-align: left;
width: 80%;
}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
right: 0;
width: 35px;
}
/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
position: absolute;
bottom: 0;
left: 0;
background: #666\9;
background: rgba(80, 80, 80, 0.75);
width: 100%;
}
.bx-wrapper .bx-caption span {
color: #fff;
font-family: Arial;
display: block;
font-size: .85em;
padding: 10px;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 781 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 413 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 670 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 752 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 715 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 661 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

@@ -0,0 +1,264 @@
@import '_theme_variables';
#product_comments_block_extra {
padding:8px 10px 10px;
font-weight: bold;
line-height:18px;
border:1px solid #d6d4d4;
background:#fbfbfb;
margin:39px 0 22px
}
.comments_advices {
padding-top:2px;
li{display:inline-block;
line-height:30px;
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
display:block;
line-height:20px
}
}
a {
text-decoration: none;
color:#777;
position:relative;
margin-right:8px;
line-height:30px;
padding:0;
display:inline-block;
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-md-max) {
float:none;
line-height:20px;
}
&:before{
background:#929292;
border-radius:50px;
-moz-border-radius:50px;
-webkit-border-radius:50px;
color: white;
display: inline-block;
font-family: FontAwesome;
font-size: 15px;
font-weight: normal;
height: 30px;
line-height: 30px;
margin-right: 6px;
text-align: center;
width: 30px;
/*max 1199px*/
@media (max-width: $screen-md-max) {
display:none
}
}
}
a.reviews:before{content:""}
a.open-comment-form:before{content:""}
a:hover {color:#333}
a.reviews{
border-right:1px solid #d6d4d4;
padding-right:30px;
margin-right:9px;
/* min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
margin-right:0;
padding:0;
border:none
}
}
}
#product_comments_block_extra{
.comments_note {margin-bottom:5px}
#product_comments_block_extra .comments_note span,
.star_content {float:left;color:#333}
.star_content {margin-top:1px}
div.star {background: url(img/star.gif) no-repeat 0 0}
div.star_on {background: url(img/star.gif) no-repeat 0 -13px}
.comments_advices {clear:both;}
}
/* pop-in add grade/advice ********************************************************************* */
#fancybox-wrap { width:585px }
#fancybox-content {
width:585px;
border-width:0
}
.new_comment_form_content .intro_form {
padding-bottom: 10px;
font-weight: bold;
font-size: 12px
}
#new_comment_form {
width:465px;
overflow:hidden;
color: #333;
text-align: left;
/*max 767px*/
@media (max-width: $screen-xs-max) {
width:275px;
}
h2{margin-bottom:10px}
.title {
padding:10px;
font-size: 13px;
color: #fff;
text-transform: uppercase;
background: #333
}
ul.grade_content {list-style-type:none}
.grade_content li {width:50%}
.product {padding:15px}
.product img {
border: $main_border;
}
.product .product_desc {
line-height:18px;
color:#666
}
.product .product_desc .product_name {
padding:10px 0 5px;
font-size:13px;
color:#000
}
.grade_content {margin:0 0 20px 0}
.grade_content span,
.grade_content span {
display:inline-block;
padding:0 10px;
width:150px;/* 160 */
font-weight:bold
}
.grade_content .cancel {margin-right:5px}
.new_comment_form_content {
padding:15px;
background:#f8f8f8
}
label {
display: block;
margin:12px 0 4px 0;
font-weight: bold;
font-size: 12px;
}
input,
textarea {
padding: 0 5px;
height: 28px;
width: 100%;
border: 1px solid #ccc;
background: #fff;
}
textarea {
height: 80px;
}
.submit {
margin-top:20px;
padding:0;
font-size:13px;
text-align:right
}
#criterions_list {
border-bottom: 1px solid #CCC;
padding-bottom: 15px;
list-style-type: none;
}
#criterions_list li {
margin-bottom: 10px;
}
#criterions_list label {
display: inline;
float: left;
margin: 0 10px 0 0;
}
#criterions_list .star_content {
float: left;
}
#new_comment_form_footer {
margin-top: 20px;
font-size: 12px;
}
}
/* TAB COMMENTS ******************************************************************************** */
#product_comments_block_tab {margin:0 0 20px 0;
div.comment {
margin:0 0 14px;
padding-top:14px;
border-top: 1px solid #d6d4d4;
}
div.comment:first-child{padding:0;border:none}
div.comment div.comment_author {
padding:0 20px;
line-height:18px
}
div.comment div.comment_author span {font-weight:bold;}
div.comment div.comment_author span,
div.comment .star_content {
float:left;
}
div.comment .star_content {margin: 0 0 0 5px}
div.star,
div.star_on {
background: url(img/star.gif) no-repeat 0 0 transparent
}
div.star_on {background-position: 0 -13px}
.comment_author_infos {clear:both;
padding-top:9px;
strong{display:block;color:#333}
em {color:#adadad}
}
div.comment div.comment_details {
overflow:hidden;
border-left:$main_border;
/*max 767px */
@media (max-width: $screen-sm-max) {
border-left: none
}
}
div.comment_details ul {
list-style-type:none;
margin:0
}
div.comment_details li {
padding:2px 0 2px 12px;
background:url(img/bg_li.png) no-repeat 1px 45% #fff
}
div.comment_details .title_block{text-transform:capitalize}
a {
text-decoration: none;
font-weight: bold;
}
span.report_btn {cursor: pointer}
span.report_btn:hover {text-decoration:underline}
}
.fl { float: left; }
.fr { float: right; }
@@ -0,0 +1,47 @@
@import '_theme_variables';
h2.productscategory_h2 {
margin:40px 0 20px 0;
padding:10px 0;
border-bottom:1px solid #ccc;
font-size:18px;
color:#333
}
#productscategory {overflow:auto;
margin-left:-10px; }
#productscategory_list {
overflow: hidden;
ul {
list-style-type:none;
overflow:hidden;
}
li a.lnk_img {display:block}
}
#productscategory_noscroll {
height: 220px;
width: 100%;
margin-bottom: 30px;
}
#productscategory_scroll_left, #productscategory_scroll_right {
background: url('img/thumbs_left.gif') no-repeat center;
text-indent: -3000px;
display: block;
width: 9px;
height: 18px;
float: left;
margin-top: 30px;
}
#productscategory_scroll_right { background-image: url('img/thumbs_right.gif'); }
@media screen and (-webkit-min-device-pixel-ratio:0) {
#productscategory_list li {
margin: 0 7px;
}
}
@@ -0,0 +1,92 @@
#stripe-payment-form {
line-height:20px;
padding-bottom:7px;
.form-group {
margin-bottom:5px;
input.stripe-card-number { width: 263px; }
}
.block-left {
float:left;
width:188px;
.form-control {
width:72px;
float:left;
margin-right:10px;
}
a {margin-top:5px;}
}
img.cc-icon {
float: left;
margin-right:10px;
}
.stripe-card-cvc-info {
display:inline-block;
position: relative;
font-style:italic;
text-decoration:underline;
&:hover {text-decoration:none;}
}
.stripe-card-expiry-year.form-control, .stripe-card-expiry-month.form-control {float:left;}
.stripe-card-expiry-year.form-control {width:68px;}
.stripe-card-expiry-month.form-control {
width:115px;
margin-right:10px;
}
.stripe-line {margin-bottom:11px;}
.ckeckbox {
margin-bottom:11px;
label {font-weight:normal;}}
}
a.stripe-card-cvc-info div.cvc-info {
background-color: #BDE5F8;
border: #00529B solid 1px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
color: #00529B!important;
display: none;
font-style: normal;
padding: 8px;
position: absolute;
right: -320px; top: -10px;
text-decoration: none;
width: 300px;
}
a.stripe-card-cvc-info:hover div.cvc-info { display: block; }
div.cvc-info:hover { cursor: default; }
img.disable { opacity: 0.3; }
img.enable { opacity: 1; }
#stripe-payment-form-cc .stripe-submit-button-cc { margin-left: 5px; }
#stripe-payment-form-cc a { display: inline; font-size: 11px; text-decoration: underline; }
div.stripe-payment-errors {
margin: 0 0 10px 0;
padding: 10px;
border: 1px solid #900;
font-size: 13px;
background: #FCC;
display: none;
}
div.stripe-card-deleted {
margin: 0 0 10px 0;
padding: 10px;
border: 1px solid #ade27d;
font-size: 13px;
background: #d3ffab;
display: none;
text-transform: none;
}
#stripe-translations, #stripe-ajax-loader { display: none; }
#stripe_save_token { vertical-align: top; }
a#stripe_error { display: none; }
#stripe-payment-form input, #stripe-payment-form select { margin-left: 0; }
#stripe-replace-card, #stripe-delete-card { border: none; padding: 0; cursor: pointer; }
@@ -0,0 +1,71 @@
@import '_theme_variables';
#my-account {
.addresses-lists {
margin-bottom:30px;
}
ul.myaccount-link-list {
li {
overflow:hidden;
padding-bottom:10px;
a {
display:block;
overflow:hidden;
font:600 16px/20px 'Open Sans', sans-serif;
color:#555454;
text-shadow:0px 1px rgba(255,255,255,1);
text-transform:uppercase;
text-decoration:none;
position:relative;
background: rgb(247,247,247);
background: -moz-linear-gradient(top, rgba(247,247,247,1) 0%, rgba(237,237,237,1) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(247,247,247,1)), color-stop(100%,rgba(237,237,237,1)));
background: -webkit-linear-gradient(top, rgba(247,247,247,1) 0%,rgba(237,237,237,1) 100%);
background: -o-linear-gradient(top, rgba(247,247,247,1) 0%,rgba(237,237,237,1) 100%);
background: -ms-linear-gradient(top, rgba(247,247,247,1) 0%,rgba(237,237,237,1) 100%);
background: linear-gradient(to bottom, rgba(247,247,247,1) 0%,rgba(237,237,237,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#ededed',GradientType=0 );
border:1px solid;
border-color:#cacaca #b7b7b7 #9a9a9a #b7b7b7;
@include border-radius(4px);
i {
font-size:25px;
color:#fd7e01;
position:absolute;
left:0;
top:0;
width:52px;
height:100%;
padding:10px 0 0 0;
text-align:center;
border:1px solid #fff;
@include border-top-left-radius(4px);
@include border-bottom-left-radius(4px);
}
span {
display:block;
padding:13px 15px 15px 17px;
overflow:hidden;
border:1px solid;
border-color:#fff #fff #fff #c8c8c8;
@include border-top-right-radius(5px);
@include border-bottom-right-radius(5px);
margin-left:52px;
}
&:hover {
filter:none;
background:#e7e7e7;
border-color:#9e9e9e #c2c2c2 #c8c8c8 #c2c2c2;
}
}
}
}
}
@@ -0,0 +1,79 @@
@import '_theme_variables';
/********************************************************
One-Page Checkout Styles
********************************************************/
#order-opc {
line-height:20px;
.box {padding-bottom:20px;}
.cart_navigation {
margin-bottom:53px;
}
.page-heading.step-num {
position:relative;
padding-left:45px;
span {
font-weight:bold;
font-size:42px;
line-height:51px;
font-style:italic;
color:#333;
position:absolute;
left:10px;
top:-14px;
}
}
.form-group {
margin-bottom:2px;
.form-control {width:271px;}
}
.lost_password {
display:inline-block;
text-decoration:underline;
margin:5px 0 14px;
&:hover {
text-decoration:none;
}
}
.title_block {
font-weight:bold;
color:#333;
padding:3px 0 6px;
}
.opc-button { padding:11px 0 0 0;}
ul.bullet {
line-height:22px;
margin-bottom:5px;
}
.date-select {padding-bottom:10px;}
.opc-add-save {
border-top:1px solid $base-border-color;
margin-top:20px;
padding-top:20px;
}
#message {margin-bottom:35px;}
#opc_payment_methods { margin-bottom:30px;}
#opc_account { margin-bottom:30px;}
.address_delivery.select { margin-bottom:15px;}
#address_invoice_form.form-group { margin-bottom:30px;}
}
#new_account_form .id_state, #new_account_form .dni, #new_account_form .postcode {
display: none;
}
+937
View File
@@ -0,0 +1,937 @@
@import '_theme_variables';
/* product desc */
/* primary_block ***************************************************************************** */
#primary_block {
margin-bottom:40px
}
.top-hr{height:5px;background:#c4c4c4;margin:2px 0 31px}
.product-image{
border:$main_border;
background:white;
padding:5px;
display:block;
margin-bottom:14px;
img{max-width:100%;
width:100%;
height:auto}
}
.product-heading-h5{
color:#333;
font-weight:bold;
margin:3px 0 8px;
}
.box-security .product-heading-h5{
margin:3px 0 -8px;
/*max 1199px*/
@media (max-width: $screen-md-max) {
margin-bottom:8px;}
}
.name-product{margin-bottom:5px;
a{font-size:15px;line-height:18px;color:#3a3939;
&:hover{
color:#999
}
}
}
.product-box{
width:178px;
margin:0 10px;
float:left
}
h3.page-product-heading{
@include sub-heading
}
.page-product-box{padding-bottom:10px}
img{max-width:100%;
height:auto}
/* pb-right-column ***************************************************************************** */
#pb-right-column {
#image-block {
position:relative;
padding:5px;
border:1px solid #dbdbdb;
background:#fff;
/*max 767px*/
@media (max-width: $screen-xs-max) {
width:280px;
margin:0 auto;
}
img {
background:#fbfbfb;
width:100%
}
#view_full_size {
display:block;
cursor:pointer;
.span_link {
position:absolute;
bottom:20px;
left:50%;
margin-left:-68px;
display:block;
padding:10px 0;
text-align:center;
line-height:22px;
color:#777676;
width:136px;
text-align:center;
font-weight:bold;
background:rgba(255,255,255,0.5);
@include box-shadow(0 2px 8px rgba(0,0,0,0.16));
&:after{
font-family:$font1;
color:#c0c0c0;
font-size:20px;
line-height:22px;
content:"";
font-weight:normal;
margin:0 0 0 4px
}
&:hover:after{color:#333}
}
}
}
}
/* miniatures */
#pb-right-column #views_block {
margin-top:10px
}
//max 767px
@media (max-width: $screen-xs-max) {
#views_block{width:280px;margin:0 auto}
}
#thumbs_list {
overflow:hidden;
float:left;
width:392px;
/*min 992px max 1199px*/
@media (min-width: $screen-md) and (max-width: $screen-md-max) {
width:290px;
}
/* min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
width:164px;
}
/*max 767px*/
@media (max-width: $screen-xs-max) {
width:194px;
}
ul#thumbs_list_frame {
list-style-type:none;
padding-left:0;
overflow:hidden;
height:100px
}
li {
float:left;
height:90px;
width:90px;
cursor:pointer;
border:1px solid #dbdbdb;
margin-right:9px;
line-height:0;
@include box-sizing(border-box);
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
width:76px;
height:76px ;
}
}
li:first-child{margin-left:0;margin-right:9px}
li.last{margin-right:0}
li a{display:block;
border:3px solid #fff;
@include transition(all 0.3s ease);
@include box-sizing(border-box);
background:#fbfbfb;
&:hover,
&.shown
{border-color:#dbdbdb}
}
li img {
border:2px solid #fff;
width:82px;
height:82px;
@include box-sizing(border-box);
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
width:68px;
height:68px ;
}
}
}
span.view_scroll_spacer {
float:left;
width:39px;
padding-left:12px;
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
padding-left:6px;
width:28px;
}
}
#view_scroll_left,
#view_scroll_right {
margin-top:38px;
height:20px;
width:20px;
line-height:0;
font-size:0;
overflow:hidden;
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
margin-top:28px;
}
&:before{
padding-left:2px;
color:#c0c0c0;
font-family:$font1;
font-size:20px;
line-height:22px;
}
&:hover:before{color:#333}
}
#view_scroll_right {
float:left;
&:before{
content:""
}
}
#view_scroll_left {
&:before{
content:"";
padding-right:2px;
}
}
.resetimg {
padding:10px 0 0;
}
/* link list */
#usefull_link_block {
list-style-type:none;
li {
float:left;
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
float:none !important
}
a{color:#777676;
font-weight:bold;
position:relative;
padding-left:30px;
line-height:22px;
display:inline-block;
&:before{
font-family:FontAwesome;
color:#333;
font-size:19px;
line-height:24px;
position:absolute;top:-2px;
left:0; font-weight:normal;
}
&:hover{color:#000}
}
}
li.print {
border-left:$main_border;
padding-left:20px;
margin-left:20px;
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
margin:8px 0 0 ;
padding:0;
border:none
}
a:before{
content:""
}
}
li.sendtofriend {
a:before{
content:""
}
}
}
/* pb-left-column ****************************************************************************** */
#pb-left-column {
margin-bottom:30px;
}
#product p#loyalty {
padding:17px 0 15px 35px;
border-top:$main_border;
border-bottom:$main_border;
margin: 10px 0 -5px;
position:relative;
b{color:#333}
&:before{
content:"";
font-family:FontAwesome;
color:#cfcccc;
font-size:26px;
line-height:28px;
position:absolute;
top:16px;
left:0;
}
}
#pb-left-column h1 {
padding-bottom:16px;
font-size:20px;
color:#3a3939;
}
#pb-left-column #product_reference {
margin-bottom:6px;
span{font-weight:bold;color:#333}
}
#pb-left-column #short_description_block {
color:#666;
}
#pb-left-column #short_description_block .buttons_bottom_block {
display:none;
}
#short_description_content p{line-height:18px;}
#page .rte {padding:0 20px 20px}
#page .rte p{margin-bottom:0}
/* form */
#pb-left-column #buy_block {
margin-top:10px;
}
/* buy_block */
#pb-left-column{
p { margin-bottom:10px;}
}
#pb-left-column #buy_block label {
display:inline-block;
width:125px;
font-weight:700;
font-size:12px;
text-align:right;
}
.ie7 #pb-left-column #buy_block label {
margin-right:5px;
float:left}
#short_description_block #short_description_content {
padding: 0 0 15px}
/* color_picker */
#pb-left-column #color_picker p {
padding-bottom:5px;
font-weight:700;
}
#attributes fieldset {
padding-bottom:3px;
}
#attributes fieldset label {
vertical-align:top;
display:block
}
#attributes .attribute_list {
display:inline-block;
}
.ie7 #attributes .attribute_list {
display:inline;
zoom:1;
float:right
}
#attributes .attribute_list ul{
list-style:none;
clear:both
}
#attributes .attribute_list ul li{
float:left;margin-right:10px
}
#attributes .attribute_list input.attribute_radio{
float: left;
margin-left: 3px;}
#attributes .attribute_list{
div.radio,
div.radio span,
div.radio input{
float:none;
display:inline-block
}
}
.ie7 #attributes .attribute_list span{margin-top:1px}
#attributes .attribute_list #color_to_pick_list {
list-style-type:none;
}
#attributes .attribute_list #color_to_pick_list li {
float:left;
margin:0 3px 3px 0;
padding:1px;
border:1px solid #d6d4d4;
clear:none
}
#attributes .attribute_list #color_to_pick_list li.selected {
border:1px solid #4d4d4d;
}
#attributes .attribute_list #color_to_pick_list a.color_pick {
display:block;
height:22px;
width:22px;
}
.product_attributes,
.box-cart-bottom {
@include box-shadow(inset 0 6px 6px rgba(0,0,0,0.05));
padding:19px 19px 17px;
}
.box-cart-bottom{
padding:18px 19px 12px;
}
.box-info-product #add_to_cart{
padding:0;
border-top:1px solid #0079b6;
border-right:1px solid #006fa8;
border-left:1px solid #006fa8;
border-bottom:1px solid #012740;
@include border-radius(5px);
position:relative;
display:inline-block;
&:before{
font-family:$font1;
position:absolute;top:0;left:0;
bottom:0;
color:#fff;font-size:25px;
line-height:47px;
text-shadow:0 1px #015883;
content:"";
z-index:10;
width:51px;
text-align:center;
border-top:1px solid #06b2e6;
border-right:1px solid #06b2e6;
border-left:1px solid #06b2e6;
border-bottom:1px solid #06b2e6;
@include background-image(linear-gradient(#009ad0, #007ab7));
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#009ad0', endColorstr='#007ab7',GradientType=0 );
@include border-radius(5px 0 0 5px);
/*max 991px*/
@media (max-width: $screen-sm-max) {
display:none
}
}
&:after{background:url(../img/border-1.gif) repeat-y 0 0;position:absolute;top:0;bottom:0;left:51px;content:"";width:1px;z-index:10;
/* max 991px*/
@media (max-width: $screen-sm-max) {
display:none
}
}
}
.box-info-product .exclusive{
@include background-image(linear-gradient(#009ad0, #007ab7));
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#009ad0', endColorstr='#007ab7',GradientType=0 );
@include border-radius(5px);
font-weight:bold;
font-size:20px;
line-height:22px;
border-top:1px solid #06b2e6;
border-right:1px solid #06b2e6;
border-left:1px solid #06b2e6;
border-bottom:1px solid #06b2e6;
text-shadow:0 1px #015883;
padding:12px 36px 14px 82px;
text-align:right;
color:#fff;
display:block !important;
/* max 1199px*/
@media (max-width: $screen-md-max) {
padding: 12px 22px 14px 70px;
font-size: 14px;
}
/*max 991px*/
@media (max-width: $screen-sm-max) {
padding:8px 12px 10px;
text-align: left;
}
&:hover{
@include background-image(linear-gradient(#007ab7, #009ad0));
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007ab7', endColorstr='#009ad0',GradientType=0 );
background-position:0 0
}
}
/* table_data_sheet */
.table-data-sheet{
border-bottom:$main_border;
width:100%;
margin:0 0 20px;
background:#fff;
tr{border-top:$main_border;}
tr.even{background:#fdfdfd}
tr td:first-child{border-right:$main_border;width:30%;font-weight:bold;color:#333}
tr td{padding:10px 20px 11px}
}
/* table produst-discounts */
table.table-produst-discounts{
border:none;
border-bottom:$main_border;
border-right:$main_border;
width:50%;
margin:0 0 20px;
background:#fff;
tr th{background:#fbfbfb;color:#333;font-weight:bold;border:none;font-weight:bold}
tr td,
tr th{border-left:$main_border;width:33%;padding:10px 20px 11px;border-top:$main_border;border-right:none;text-shadow:none;text-transform:none;font-weight:13px;line-height:18px;border-bottom:none}
}
/* accessories */
.accessories-block {
.block_description{display:none}
.exclusive span{font-size:13px;line-height:18px;padding:2px 8px 3px;text-decoration:none;
&:focus,
&:active{text-decoration:none}
}
}
/* attributes */
.box-info-product{
background:#f6f6f6;
border:1px solid #d2d0d0;
border-top:1px solid #b0afaf;
border-bottom:1px solid #b0afaf;
p{margin-bottom:7px}
}
/* quantity_wanted */
#quantity_wanted_p{
input {
width:78px;
height:27px;
padding:0 6px;
border:$main_border;
/*min 768px max 991px*/
@media (min-width: $screen-sm) and (max-width: $screen-sm-max) {
width:100%;
margin-bottom:4px
}
}
button{margin-top:-2px}
label{display:block;margin-bottom:7px}
}
/* availability_statut */
#availability_statut span#availability_label,
#availability_date_label {
display:inline-block;
width:125px;
font-weight:700;
font-size:12px;
text-align:right;
}
#quantityAvailable{color:#333333;font-size:13px;line-height:18px;font-weight:bold}
#quantityAvailableTxt,
#availability_value,
#last_quantities
{color:#fff;font-weight:bold;line-height:18px;display:inline-block;padding:3px 8px 4px;background:#46a74e;border:1px solid #36943e;margin-left:5px;
}
#last_quantities{background:#ff7430;border:1px solid #ea5e1a;padding:4px 8px 3px;}
#availability_statut,
#pQuantityAvailable
{display:inline-block}
#pQuantityAvailable span{font-weight:bold;color:#333}
#availability_statut #availability_value.warning_inline {
background-color:#fe9126;
border-color:#e4752b;
text-shadow:1px 1px #e68322;
margin:0
}
/* box-security */
.box-security{
border-top:1px solid #dfdede;
padding:19px 19px 6px ;
@include background-image(linear-gradient(#fff, #fbfbfb));
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff', endColorstr='#fbfbfb',GradientType=0 );
}
/* prices */
.content_prices {
padding:13px 19px;}
#buy_block p.price {
padding:0;
}
.discount {
display:none;
}
#buy_block p#old_price {
padding-bottom:15px;
font-size:14px;
text-decoration:line-through;
}
#old_price{
display:inline-block;
font-family:$font-custom;
font-size:17px;
line-height:23px;
text-decoration: line-through;
}
.our_price_display {
font-weight:600;
font-size:29px;
line-height:32px;
font-family:$font-custom;
color:#333;
/*max 991px*/
@media (max-width: $screen-sm-max) {
font-size:26px;
line-height:28px;
}
}
#reduction_percent,
#reduction_amount {
display:inline-block;
margin-right:10px;
padding:1px 2px;
font-weight:600;
font-family:$font-custom;
font-size:21px;
line-height:23px;
color:#fff;
background:#f13340;
border:1px solid #d02a2c;
}
#reduction_percent span,#reduction_amount span {
display:block;
}
/* online_only */
#pb-left-column p.online_only {
font-weight:bold;
font-size:13px;
color:#f13340;
text-align:left;
}
/* add_to_cart */
.content_prices #add_to_cart {
position:relative;
float:right;
padding:0;
}
.content_prices #add_to_cart .exclusive,.content_prices #add_to_cart .exclusive_disabled {
height: 26px;
padding: 5px 7px 5px 15px;
}
@media screen and (-webkit-min-device-pixel-ratio:0) { /*hack Chrome and Safari */
.content_prices #add_to_cart .exclusive,.content_prices #add_to_cart .exclusive_disabled {
padding:6px 7px 4px 15px;
}
}
.ie9 .content_prices #add_to_cart .exclusive, .ie9 .content_prices #add_to_cart .exclusive_disabled,
.ie8 .content_prices #add_to_cart .exclusive, .ie8 .content_prices #add_to_cart .exclusive_disabled,
.ie7 .content_prices #add_to_cart .exclusive, .ie7 .content_prices #add_to_cart .exclusive_disabled {
padding:8px 7px 4px 15px;
line-height:12px;
}
:first-child+html .content_prices #add_to_cart .exclusive {
padding:4px 3px 4px 11px;
}
.content_prices #add_to_cart span {
z-index:10;
display:block;
position:absolute;
top:0;
left:-12px;
height:26px;
width:26px;
background:url(../img/icon/pict_add_cart.png) no-repeat 0 0 transparent;
}
/* */
.buttons_bottom_block {
clear:both;
padding-top:13px;
}
.buttons_bottom_block #wishlist_button {
font-weight:700;
}
/* SEND TO FRIEND (pop-in) ##################################################################### */
#send_friend_form {
width:555px;
overflow:hidden;
/*max 767px*/
@media (max-width: $screen-xs-max) {
width:280px;
}
}
#send_friend_form .product {
}
#send_friend_form .product img {
margin:0 0 10px 0;
border:1px solid #ccc;
}
#send_friend_form .product .product_desc {
}
#send_friend_form .product .product_desc p {
padding:0 ;
color:#333;
}
#send_friend_form .product .product_desc p.product_name {
font-size:12px;
color:#000;
}
#send_friend_form .send_friend_form_content {
}
#send_friend_form .form_container {
padding:10px 15px;
border:1px solid #ccc;
background:#eee;
}
#send_friend_form .form_container p.intro_form {
padding-bottom:6px;
font-weight:700;
font-size:13px;
color:#333;
}
#send_friend_form .form_container p.txt_required {
padding-bottom:0;
color:/* SEND TO FRIEND (pop-in) ##################################################################### */
#666;
}
#send_friend_form .form_container .text {
padding-bottom:10px;
}
#send_friend_form .form_container .text label {
display:block;
padding:0;
width:100%;
font-size:12px;
}
#send_friend_form .form_container .text input {
padding:0 5px;
height:22px;
width:100%;
border:1px solid #ccc;
font-size:12px;
color:#666;
}
#send_friend_form .submit {
margin-top:20px;
padding-bottom:0;
text-align:right;
}
/* PACK ##################################################################### */
#blockpack {
margin-top:20px;
padding-top:20px;
border-top:1px dotted #999;
}
/* PERSONNALISATION ##################################################################### */
.customization_block {
}
.customization_block p.infoCustomizable {
margin:10px 0 20px;
padding:0 0 0 20px;
background:url(../img/icon/infos.gif) no-repeat 0 0 transparent;
}
ul#uploadable_files,ul#text_fields {
list-style-type:none;
}
.customizableProductsFile,.customizableProductsText {
margin-bottom:20px;
padding-bottom:10px;
border-bottom:1px dotted #ccc;
}
.customizationUploadLine {
padding-bottom:10px;
}
.customizationUploadBrowse img + a {
position: relative;
top: -51px;
}
.customizationUploadLine label {
display:block;
vertical-align:top;
}
.customizationUploadLine textarea {
width:50%;
border:$main_border;
}
#customizedDatas {
float:right;
}
.accessories_block div ul li a {
display:inline-block;
}
.accessories_block div ul li .s_title_block a, .accessories_block div ul li .s_title_block span {
font-weight:bold;
}
@@ -0,0 +1,310 @@
@import '_theme_variables';
/*******************************************************
Product list Styles
********************************************************/
ul.product_list {
.availability {
span {
display:inline-block;
color:#fff;
font-weight:bold;
padding:3px 8px 4px 8px;
margin-bottom:20px;
&.available-now {
background:#46a74e;
border:1px solid #36943e;
}
&.out-of-stock{
background:#ff7430;
border:1px solid #ea5e1a;
}
}
}
.color-list-container {
margin-bottom:12px;
ul {
li {
display:inline-block;
border:1px solid $base-border-color;
a {
display:block;
width:23px;
height:23px;
margin:1px;
}
}
}
}
}
/*******************************************************
Product list(Grid) Styles
********************************************************/
ul.product_list.grid {
> li {
margin-bottom:20px;
text-align:center;
.product-container {
background:#fff;
padding:0;
position:relative;
.product-image-container {
border:1px solid $base-listing-border-color;
padding:9px;
margin-bottom:13px;
position:relative;
.content_price {
position:absolute;
left:0;
bottom:-1px;
width:100%;
background:url(../img/price-container-bg.png);
padding:9px 0;
display:none;
span {
color:#fff;
}
}
}
h5 {
padding:0 15px 7px 15px;
min-height:53px;
}
.product-desc {
display:none;
}
.content_price {padding-bottom:9px; line-height:21px;}
.old-price, .price, .price-percent-reduction {display:inline-block;}
.product-flags {display:none;}
.old-price { margin-right:5px;}
.button-container {
display:none;
margin-bottom:14px;
.ajax_add_to_cart_button, span.button { margin-right:6px;}
}
.functional-buttons {
display:none;
background:url(../img/functional-bt-shadow.png) repeat-x;
padding:11px 0 5px;
div {
width:50%;
float:left;
padding:3px 0 4px 0;
a, label {
font-weight:bold;
color:#777676;
cursor:pointer;
&:hover { color:#000;}
}
&.wishlist { border-right:1px solid $base-border-color;}
&.compare {
&:before {
content:"";
display:inline-block;
font-family:'FontAwesome';
}
&.compare.checked {
&:before {
content:"";
}
}
}
}
}
&:hover {
@include box-shadow(rgba(black, 0.17) 0 0 13px);
margin-bottom:-48px;
position:relative;
z-index:2;
.content_price { display:none;}
.product-image-container {
.content_price {
display:block;
}
}
.button-container, .functional-buttons {display:block;}
}
}
&.first-in-line {clear:left;}
}
}
/*******************************************************
Product list(List) Styles
********************************************************/
ul.product_list.list {
> li {
.product-container {
border-top:1px solid $base-border-color;
padding:30px 0 30px;
}
.product-image-container {
position:relative;
border:1px solid $base-listing-border-color;
padding:9px;
.content_price {
display:none !important;
}
}
.product-flags {
color:#333333;
margin:-5px 0 10px 0;
.discount {
color:#f13340;
}
}
h5 { padding-bottom:8px;}
.product-desc { margin-bottom:15px;}
.right-block {
.right-block-content {
border-left:1px solid $base-border-color;
padding-left:30px;
padding-bottom:16px;
.content_price {
padding-bottom:24px;
span{
display:inline-block;
margin-top:-4px;
&.price-percent-reduction {
margin-left:8px;
}
}
}
.button-container {
overflow:hidden;
padding-bottom:20px;
.btn {
float:left;
clear:both;
margin-bottom:10px;
}
}
.functional-buttons {
a, label {
font-weight:bold;
color:#777676;
cursor:pointer;
i {
width:30px;
height:30px;
font-size:15px;
text-align:center;
display:inline-block;
background:#929292;
color:#fff;
padding:7px 0 0 0;
@include border-radius(100px);
margin-right:3px;
}
&:hover {
color:#333333;
i {
background:#333333;
}
}
}
.compare {
padding-top:10px;
label {
&:before {
content:"";
display:inline-block;
font-family:'FontAwesome';
width:30px;
height:30px;
font-size:15px;
text-align:center;
background:#929292;
@include border-radius(100px);
margin-right:3px;
padding:4px 0 0 0;
color:#fff;
}
&:hover {
color:#333333;
&:before {
background:#333333;
}
}
}
}
}
}
}
&:first-child {
.product-container{}
}
}
}
/*******************************************************
Product list(Index page) Styles
********************************************************/
#index {
ul.product_list {
> li {
border-bottom:1px solid $base-border-color;
padding-bottom:35px;
margin-bottom:50px;
.availability {display:none;}
&.last-line {
border:none;
padding-bottom:0;
margin-bottom:0;
}
}
}
}
+2
View File
@@ -0,0 +1,2 @@
* { direction: rtl !important; }
#page { text-align: right !important; }
+148
View File
@@ -0,0 +1,148 @@
/*TMP*/
#scenes .cluetip span{
background:transparent url(../img/icon/cible.gif) no-repeat scroll center center;
color:black;
display:block;
font-size:1.1em;
font-weight:bold;
height:23px;
padding-top:5px;
text-align:center;
width:23px;
}
/*TMP*/
.thumbs_banner{
margin:10px auto;
padding:2px 0;
height: 60px !important;
width:100%;
border-top:1px solid #ccc;
border-bottom:1px solid #ccc;
}
.thumbs_banner .space-keeper{
width:21px;
float:left;
display:block;
height:100%;
}
.thumbs_banner .space-keeper a.prev{
display:none;
width:21px;
text-align:center;
font-size:1.5em;
text-decoration:none;
background:url(../img/icon/serial_scroll_left.gif) no-repeat 0 0 #eee;
}
#scenes_list{
overflow:hidden;
float:left;
width:478px;
}
#scenes_list ul{
list-style-type:none;
}
#scenes_list li{
float:left;
}
#scenes_list a{
display:block;
}
.thumbs_banner a.next {
float:left;
display:block;
width:21px;
text-align:center;
font-size:1.5em;
text-decoration:none;
background:url(../img/icon/serial_scroll_right.gif) no-repeat 0 0 #ddd;
}
/* Cluetip design ****************************************************************************** */
#scenes .screen_scene {
margin:0 auto;
}
#scenes a.cluetip{
display:block;
position:absolute;
text-decoration:none;
}
.cluetip-product_scene {
padding:10px;
border:7px solid #999;
-moz-border-radius:3px;
-webkit-border-radius:3px;
border-radius:3px;
text-align:left;
background:#fff;
opacity:0.95;
}
.cluetip-product_scene #cluetip-close{
text-align:right;
float:right;
}
.cluetip-product_scene img {
float:left;
margin-right:10px;
border:1px solid #ccc
}
.cluetip-product_scene .title_block {
display:inline-block;
margin-bottom:5px;
padding:0 !important;
font-size:12px;
}
.cluetip-product_scene .clear {margin:0; padding:0}
.cluetip-product_scene .clear a {
/*float:left;*/
margin-top:2px;
}
.cluetip-product_scene p.description{
float:left;
padding:0;
width:140px;
color:#666
}
.cluetip-product_scene div.prices{
float:right;
position:relative;
width:65px;
text-align:right;
}
.cluetip-product_scene .new {
position:absolute;
top:0;
right:0;
display: inline-block;
padding: 1px 5px;
font-weight: bold;
font-size: 10px;
color: #fff;
text-transform: uppercase;
background: none repeat scroll 0 0 #9B0000
}
.cluetip-product_scene .price{
padding-top:18px;
font-weight:bold;
font-size:13px;
color:#990000
}
.cluetip-product_scene .on_sale, .cluetip-product_scene .discount {
display:block;
font-weight:bold;
color:#DA0F00;
text-transform:uppercase;
}
/* END Cluetip design */
@@ -0,0 +1,78 @@
@import '_theme_variables';
/******************************************************************
Sitemap Page Styles
*******************************************************************/
#sitemap {
.sitemap_block {
.page-subheading {
margin-bottom:16px;
}
li {
line-height:16px;
padding-bottom:11px;
a {
&:before {
content:"";
display:inline-block;
font-family:'FontAwesome';
padding-right:10px;
}
&:hover {
font-weight:bold;
}
}
}
}
}
#listpage_content div.tree_top {
padding-left:27px;
padding-top:5px;
a {
&:before {
content:"";
display:inline-block;
font-family:"FontAwesome";
font-size:20px;
color:#333;
}
&:hover {
&:before {
color:$link-hover-color;
}
}
}
}
ul.tree {
padding-left:24px;
li {
margin:0 0 0 21px;
padding:5px 0 0 33px;
border-left: 1px solid $base-border-color;
background: url(../img/sitemap-horizontal.png) no-repeat left 15px transparent;
a:hover {
font-weight:bold;
}
}
> li {
margin:0 0 0 11px;
}
li.last {
border: medium none;
background: url(../img/sitemap-last.png) no-repeat 0px -4px transparent;
}
}
+104
View File
@@ -0,0 +1,104 @@
@import '_theme_variables';
/***********************************************************
Stores Page Styles
************************************************************/
#stores {
#map {
width:100%;
height:447px;
margin-bottom:26px;
}
input#addressInput {
display:inline-block;
width:269px;
}
.address-input {
float:left;
margin-right:19px;
label { margin-right:5px;}
}
.radius-input {
float:left;
line-height:23px;
margin-right:20px;
label, .selector {
float:left;
}
label {
margin-right:10px;
}
#radiusSelect {
width:78px;
}
}
.store-content {
padding-bottom:30px;
}
.store-content-select {
.selector {
visibility: hidden;
display:none;
}
&.active {
padding-top:30px;
margin-bottom:30px;
border-top:1px solid $base-border-color;
.selector {
visibility: visible;
display:block;
}
}
}
.store-title {margin-bottom:16px;}
label {
font-weight:normal;
color:#777777;
}
#stores_loader {
display: none;
margin-left: 5px
}
#locationSelect {
width:356px;
visibility: hidden;
}
#stores-table {
display:none;
tbody {
td {
padding:20px;
&.num {
background:#fbfbfb;
width:46px;
}
&.name {
span {
padding-left:15px;
}
}
}
}
}
}