-// Bootswatch.less
-// Swatch: Slate
-// Version: 2.1.1
+// Slate 3.0.0
+// Bootswatch
// -----------------------------------------------------
-// TYPOGRAPHY
-// -----------------------------------------------------
-
-h1, h2, h3, h4, h5, h6 {
- text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
-}
-
-code, pre {
- background-color: #F7F7F7;
- border: 1px solid darken(@grayDarker, 5%);
- text-shadow: none;
+.btn-shadow(@color) {
+ #gradient > .vertical-three-colors(lighten(@color, 6%), @color, 60%, darken(@color, 4%));
}
-// SCAFFOLDING
-// -----------------------------------------------------
-
-hr, legend, .page-header {
- border-top: none;
- border-bottom: 1px solid darken(@grayDarker, 5%);
- background-color: transparent;
+.btn-shadow-inverse(@color) {
+ #gradient > .vertical-three-colors(darken(@color, 24%), darken(@color, 18%), 40%, darken(@color, 14%));
}
-// NAVBAR
-// -----------------------------------------------------
+// Navbar =====================================================================
.navbar {
- .navbar-inner {
- #gradient > .vertical-three-colors(@gray, @grayDark, 70%, @grayDark);
- }
-
- .brand {
- font-weight: bold;
- text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
- border-right: 1px solid darken(@gray, 15%);
- }
+ .btn-shadow(@navbar-bg);
+ border: 1px solid rgba(0, 0, 0, 0.6);
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
- .navbar-text {
- padding: 0 15px;
- font-weight: bold;
+ &-inverse {
+ .btn-shadow(@navbar-inverse-bg);
}
- .nav > li > a {
- text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
+ &-nav > li > a {
border-right: 1px solid rgba(0, 0, 0, 0.2);
border-left: 1px solid rgba(255, 255, 255, 0.1);
&:hover {
- #gradient > .directional(@grayDarker, @grayDark, 280deg);
- border-left: 1px solid transparent;
- border-right: 1px solid transparent;
- }
- }
-
- .nav > li.active > a,
- .nav > li.active > a:hover {
- color: @grayLighter;
- background-color: @grayDark;
- #gradient > .directional(lighten(@grayDarker, 4%), lighten(@grayDark, 4%), 280deg);
- border-right: 1px solid darken(@gray, 15%);
- }
-
- .navbar-search .search-query {
- border: 1px solid darken(@gray, 15%);
- }
-
- .divider-vertical {
- background-color: transparent;
- border-right: none;
- }
-
- .dropdown-menu::after {
- border-bottom: 6px solid @grayDark;
- }
-
- &-inverse {
-
- .navbar-inner {
- #gradient > .vertical-three-colors(darken(@grayDarker, 3%), darken(@grayDarker, 8%), 70%, darken(@grayDarker, 8%));
- }
-
- .nav li > a {
- background-image: none;
- background-color: transparent;
- }
-
- .nav li > a:hover,
- .nav li.active > a,
- .nav li.active > a:hover {
- #gradient > .directional(darken(@grayDarker, 3%), @grayDarker, 280deg);
+ .btn-shadow-inverse(@navbar-bg);
+ border-left-color: transparent;
}
}
-}
-@media (max-width: @navbarCollapseWidth) {
-
- .navbar .nav-collapse {
-
- .nav li > a,
- .nav li > a:hover,
- .nav .active > a,
- .nav .active > a:hover {
- .box-shadow(none);
- color: @grayLighter;
- border: 1px solid transparent;
- background-color: transparent;
- background-image: none;
- }
-
- .nav li > a:hover,
- .nav .active > a:hover {
- background-color: @grayDarker;
- }
-
- .navbar-form,
- .navbar-search {
- border-color: transparent;
- .box-shadow(none);
- }
-
- .nav-header {
- color: @grayLight;
- }
+ &-nav > li.active > a {
+ border-left-color: transparent;
}
- .navbar-inverse .nav-collapse {
-
- .nav li > a:hover,
- .nav .active > a:hover {
- background-color: @grayDarker !important;
- }
+ &-form {
+ margin-left: 5px;
+ margin-right: 5px;
}
}
-div.subnav {
+// Buttons ====================================================================
- #gradient > .vertical-three-colors(@gray, @grayDark, 70%, @grayDark);
- border: 1px solid transparent;
- .box-shadow('0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1)');
-
- .nav > li > a {
- color: @grayLighter;
- text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
- border-right: 1px solid darken(@gray, 15%);
- border-left: 1px solid @gray;
-
- &:hover {
- color: @grayLighter;
- background-color: @grayDark;
- #gradient > .directional(@grayDarker, @grayDark, 280deg);
- border-left: 1px solid transparent;
- border-right: 1px solid transparent;
- }
- }
-
- .nav > li.active > a,
- .nav > li.active > a:hover {
- color: @grayLighter;
- background-color: @grayDark;
- #gradient > .directional(lighten(@grayDarker, 4%), lighten(@grayDark, 4%), 280deg);
- border-right: 1px solid darken(@gray, 15%);
- }
-
- .nav > li:first-child > a,
- .nav > li:first-child > a:hover {
- border-left: 1px solid transparent;
- }
-
- &.subnav-fixed .nav > li.active:first-child > a,
- &.subnav-fixed .nav > li:first-child > a:hover {
- border-left: 1px solid darken(@gray, 15%);
- }
-
- .nav > li.active:last-child > a,
- .nav > li:last-child > a:hover {
- border-right: 1px solid darken(@gray, 15%);
- }
-
- .open .dropdown-toggle {
- border-right: 1px solid darken(@gray, 15%);
- border-left: 1px solid @gray;
- }
-
- &.subnav-fixed {
- .box-shadow(none);
- }
-}
-
-// NAV
-// -----------------------------------------------------
-
-.nav .nav-header {
- text-shadow: none;
-}
-
-.nav > li > a {
- #gradient > .vertical-three-colors(@gray, @grayDark, 70%, @grayDark);
- .box-shadow('0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1)');
- border: none;
- color: @grayLight;
- font-weight: bold;
+.btn,
+.btn:hover {
+ border-color: rgba(0, 0, 0, 0.6);
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
}
-.nav > li.active > a,
-.nav > li.active > a:hover {
- background-color: transparent;
- border: none;
- color: @white;
+.btn-default {
+ .btn-shadow(@btn-default-bg);
}
-.nav > li > a:hover {
- background-color: transparent;
- color: @grayLighter;
+.btn-primary {
+ .btn-shadow(@btn-primary-bg);
}
-.nav-list {
- background-color: @grayDark;
- .box-shadow(1px 1px 1px rgba(0, 0, 0, 0.4));
-
- li > a {
- background-image: none;
- text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
- }
-
- .nav-header {
- color: @gray;
- text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
- }
-
- .divider {
- border-bottom: 1px solid darken(@grayDarker, 5%);
- background-color: transparent;
- }
+.btn-success {
+ .btn-shadow(@btn-success-bg);
}
-.nav-tabs {
- border-bottom: none;
+.btn-info {
+ .btn-shadow(@btn-info-bg);
}
-.tabs-below .nav-tabs {
- border-top: none;
+.btn-warning {
+ .btn-shadow(@btn-warning-bg);
}
-.tabs-left .nav-tabs {
- border-right: none;
+.btn-danger {
+ .btn-shadow(@btn-danger-bg);
}
-.tabs-right .nav-tabs {
- border-left: none;
+.btn-default:hover {
+ .btn-shadow-inverse(@btn-default-bg);
}
-.nav-tabs.nav-stacked > li > a,
-.nav-tabs.nav-stacked > li > a:hover {
- border: none;
+.btn-primary:hover {
+ .btn-shadow-inverse(@btn-primary-bg);
}
-.breadcrumb {
- border: 1px solid transparent;
- #gradient > .vertical-three-colors(@gray, @grayDark, 70%, @grayDark);
- .box-shadow('0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1)');
-
- a {
- color: @grayLighter;
- font-weight: bold;
- }
-
- li {
- color: @grayLight;
- font-weight: bold;
- text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
- }
+.btn-success:hover {
+ .btn-shadow-inverse(@btn-success-bg);
}
-.pagination {
-
- ul {
- .box-shadow(none);
- }
-
- ul > li > a,
- ul > li > span {
- border-left: 1px solid @gray;
- border-right: 1px solid darken(@gray, 15%);
- border-top: none;
- border-bottom: none;
- #gradient > .vertical-three-colors(@gray, @grayDark, 70%, @grayDark);
- .box-shadow('0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1)');
- color: @grayLighter;
- font-weight: bold;
- text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
-
- &:hover {
- #gradient > .directional(@grayDarker, @grayDark, 280deg);
- border-left: 1px solid transparent;
- }
- }
-
- ul > .active > a,
- ul > .active > a:hover,
- ul > .active > span,
- ul > .active > span:hover {
- color: @grayLighter;
- background-color: @grayDark;
- #gradient > .directional(lighten(@grayDarker, 4%), lighten(@grayDark, 4%), 280deg);
- border-left: 1px solid transparent;
- }
-
- ul > .disabled > a,
- ul > .disabled > a:hover,
- ul > .disabled > span,
- ul > .disabled > span:hover {
- border-left: 1px solid @gray;
- border-right: 1px solid darken(@gray, 15%);
- border-top: none;
- border-bottom: none;
- #gradient > .vertical-three-colors(@grayLight, @gray, 70%, @gray);
- }
+.btn-info:hover {
+ .btn-shadow-inverse(@btn-info-bg);
}
-.pager {
-
- a {
- border: 1px solid transparent;
- .box-shadow('0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1)');
- #gradient > .vertical-three-colors(@gray, @grayDark, 70%, @grayDark);
- }
-
- a:hover {
- #gradient > .directional(@grayDarker, @grayDark, 280deg);
- border: 1px solid transparent;
- }
+.btn-warning:hover {
+ .btn-shadow-inverse(@btn-warning-bg);
+}
- .disabled a,
- .disabled a:hover {
- background-color: transparent;
- }
+.btn-danger:hover {
+ .btn-shadow-inverse(@btn-danger-bg);
}
-// BUTTONS
-// -----------------------------------------------------
+// Typography =================================================================
-.btn {
- .buttonBackground(@gray, darken(@gray, 10%));
- .border-radius(3px);
- border: 1px solid @grayDarker;
+h1, h2, h3, h4, h5, h6 {
+ text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
}
-.btn, .btn:hover {
- color: @white;
- font-weight: bold;
- text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
+.text-primary {
+ color: @brand-primary;
}
-.btn-primary {
- .buttonBackground(@btnPrimaryBackground, spin(@btnPrimaryBackground, 20));
+.text-success {
+ color: @brand-success;
}
-.btn-warning {
- .buttonBackground(lighten(@orange, 15%), @orange);
+.text-danger {
+ color: @brand-danger;
}
-.btn-danger {
- .buttonBackground(#ee5f5b, #bd362f);
+.text-warning {
+ color: @brand-warning;
}
-.btn-success {
- .buttonBackground(#62c462, #51a351);
+.text-info {
+ color: @brand-info;
}
-.btn-info {
- .buttonBackground(#5bc0de, #2f96b4);
-}
+// Tables =====================================================================
-.btn-inverse {
- .buttonBackground(#454545, #262626);
-}
+.table {
-.caret {
- border-top-color: @white;
-}
+ tr.success,
+ tr.warning,
+ tr.danger {
+ color: #fff;
+ }
-// TABLES
-// -----------------------------------------------------
+ &-bordered tbody {
-// FORMS
-// -----------------------------------------------------
+ tr.success,
+ tr.warning,
+ tr.danger {
-label, input, button, select, textarea, legend {
- color: @textColor;
+ td,
+ &:hover td {
+ border-color: @table-border-color;
+ }
+ }
+ }
}
-legend, label {
- text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
-}
+// Forms ======================================================================
-.input-prepend .add-on,
-.input-append .add-on {
- vertical-align: top;
- background-color: @gray;
- border-top: 1px solid @grayLight;
- border-left: 1px solid @grayLight;
- border-bottom: 1px solid @grayDark;
- border-right: 1px solid @grayDark;
- text-shadow: none;
-}
+.has-warning {
+ .help-block,
+ .control-label {
+ color: @brand-warning;
+ }
-.input-append .btn,
-.input-prepend .btn {
- margin-top: -1px;
- padding: 5px 14px;
+ .form-control,
+ .form-control:focus {
+ border-color: @brand-warning;
+ }
}
-.uneditable-input,
-input[disabled],
-select[disabled],
-textarea[disabled],
-input[readonly],
-select[readonly],
-textarea[readonly] {
- color: @grayLighter;
-}
+.has-error {
+ .help-block,
+ .control-label {
+ color: @brand-danger;
+ }
-.form-actions {
- border-top: none;
+ .form-control,
+ .form-control:focus {
+ border-color: @brand-danger;
+ }
}
-// DROPDOWNS
-// -----------------------------------------------------
-
-.dropdown-menu {
- .box-shadow(0 5px 5px rgba(0, 0, 0, 0.2));
+.has-success {
+ .help-block,
+ .control-label {
+ color: @brand-success;
+ }
- li.active a,
- li.active a:hover {
- background-color: @grayDark;
+ .form-control,
+ .form-control:focus {
+ border-color: @brand-success;
}
}
-.dropdown.open .dropdown-toggle {
- background-color: @grayDark;
- color: @grayLighter;
+legend {
+ color: #fff;
}
-.dropdown-menu .divider {
- border-top: none;
- border-bottom: 1px solid darken(@grayDarker, 5%);
- background-color: transparent;
+.input-group-addon {
+ border-color: rgba(0, 0, 0, 0.6);
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
+ .btn-shadow(@btn-default-bg);
}
-.dropdown-submenu > a::after {
- border-left-color: @white;
-}
+// Navs =======================================================================
-// ALERTS, LABELS, BADGES
-// -----------------------------------------------------
+.nav-pills {
+ & > li > a {
+ .btn-shadow(@btn-default-bg);
+ border: 1px solid rgba(0, 0, 0, 0.6);
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
-.label, .alert {
- color: rgba(255, 255, 255, 0.9);
- text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
- .box-shadow(1px 1px 1px rgba(0, 0, 0, 0.3));
-}
+ &:hover {
+ .btn-shadow-inverse(@btn-default-bg);
+ border: 1px solid rgba(0, 0, 0, 0.6);
+ }
+ }
-.alert-heading {
- color: rgba(255, 255, 255, 0.9);
- text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.4);
-}
+ & > li.active > a,
+ & > li.active > a:hover {
+ bacground-color: none;
+ .btn-shadow-inverse(@btn-default-bg);
+ border: 1px solid rgba(0, 0, 0, 0.6);
+ }
-.alert {
- background-color: @orange;
- border-color: @orange;
+ & > li.disabled > a,
+ & > li.disabled > a:hover {
+ .btn-shadow(@btn-default-bg);
+ }
}
-.alert-success {
- background-color: @successText;
- border-color: @successText;
-}
+.pagination {
-.alert-error {
- background-color: @errorText;
- border-color: @errorText;
-}
+ & > li > a {
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
+ .btn-shadow(@btn-default-bg);
-.alert-info {
- background-color: @infoText;
- border-color: @infoText;
-}
+ &:hover {
+ .btn-shadow-inverse(@btn-default-bg);
+ }
+ }
-// MISC
-// -----------------------------------------------------
+ & > li.active > a {
+ .btn-shadow-inverse(@btn-default-bg);
+ }
-.well, .hero-unit {
- .box-shadow(inset 1px 1px 1px rgba(0, 0, 0, 0.5));
+ & > li.disabled > a,
+ & > li.disabled > a:hover {
+ background-color: transparent;
+ .btn-shadow(@btn-default-bg);
+ }
}
-.thumbnail,
-a.thumbnail:hover {
- border: 1px solid darken(@grayDarker, 5%);
-}
+.pager {
-.progress {
- background-color: darken(@grayDarker, 3%);
- #gradient > .vertical(darken(@grayDarker, 3%), darken(@grayDarker, 3%));
- .box-shadow(inset 1px 1px 1px rgba(0, 0, 0, 0.5));
-}
+ & > li > a {
+ .btn-shadow(@btn-default-bg);
+ border: 1px solid rgba(0, 0, 0, 0.6);
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
-.footer {
- border-top: 1px solid darken(@grayDarker, 5%);
+ &:hover {
+ .btn-shadow-inverse(@btn-default-bg);
+ border: 1px solid rgba(0, 0, 0, 0.6);
+ }
+ }
- p {
- color: @textColor;
+ & > li.disabled > a,
+ & > li.disabled > a:hover {
+ background-color: transparent;
+ .btn-shadow(@btn-default-bg);
}
}
-.modal {
-
- background-color: darken(@grayDark, 5%);
+.breadcrumb {
+ border: 1px solid rgba(0, 0, 0, 0.6);
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
+ .btn-shadow(@btn-default-bg);
+}
- &-header {
- border-bottom: none;
- }
+// Indicators =================================================================
- &-body {
- border-bottom: 1px solid #1C1E22;
- }
+.alert {
- &-footer {
- border-top: none;
- background-color: @grayDarker;
- .box-shadow(none);
+ .alert-link,
+ a {
+ color: #fff;
+ text-decoration: underline;
}
}
-// MEDIA QUERIES
-// -----------------------------------------------------
+// Progress bars ==============================================================
-@media (max-width: 979px) {
- .navbar .brand {
- border-right: none;
- }
+// Containers =================================================================
+
+.jumbotron {
+ border: 1px solid rgba(0, 0, 0, 0.6);
}
-@media (max-width: 768px) {
- div.subnav .nav > li + li > a {
- border-top: 1px solid transparent;
- }
+.list-group-item {
+ background-color: lighten(@body-bg, 5%);
}
\ No newline at end of file