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