Make light and dark themes more similar

This commit is contained in:
Rashid Khan 2013-12-23 16:36:32 -07:00
parent 84062c9d57
commit a2c0df1e42
20 changed files with 1330 additions and 619 deletions

View File

@ -104,6 +104,12 @@ function (angular, config, _) {
}
};
$scope.pulldownTabStyle = function(i) {
var classes = ['bgPrimary','bgSuccess','bgWarning','bgDanger','bgInverse','bgInfo'];
i = i%classes.length;
return classes[i];
};
$scope.setEditorTabs = function(panelMeta) {
$scope.editorTabs = ['General','Panel'];
if(!_.isUndefined(panelMeta.editorTabs)) {

View File

@ -31,9 +31,6 @@ function (angular) {
'onStop:\'panelMoveStop\''+
'}" ng-model="row.panels"><i class="icon-move"></i></span>'+
'</span>' +
'<span class="extra row-button" ng-show="panel.draggable == false">' +
'<span class="row-text">{{panel.type}}</span>'+
'</span>' +
'<span class="row-button extra" ng-show="panel.editable != false">' +
'<span config-modal class="pointer">'+
@ -51,7 +48,7 @@ function (angular) {
'</span>'+
'</span>' +
'<span class="row-button row-text panel-title" ng-show="panel.title">' +
'<span class="panel-text panel-title" ng-show="panel.title">' +
'{{panel.title}}' +
'</span>'+

View File

@ -8,23 +8,13 @@
vertical-align: top;
width: 220px;
padding: 5px 5px 0px 5px;
border: #555 1px solid;
margin: 5px 5px 5px 0px;
color: #fff;
background-color: #444;
}
.filter-panel-filter ul {
margin-bottom: 3px;
}
.filter-must {
border-top: #7EB26D 3px solid;
}
.filter-mustNot {
border-top: #E24D42 3px solid;
}
.filter-either {
border-top: #EF843C 3px solid;
}
.filter-deselected {
opacity: 0.5;
}
@ -47,7 +37,7 @@
<span ng-show="filterSrv.ids.length == 0">
<h5>No filters available</h5>
</span>
<div ng-repeat="id in filterSrv.ids" class="small filter-panel-filter filter-{{filterSrv.list[id].mandate}}" ng-class="{'filter-deselected': !filterSrv.list[id].active}">
<div ng-repeat="id in filterSrv.ids" class="small filter-panel-filter">
<div>
<strong>{{filterSrv.list[id].type}}</strong>
<span ng-show="!filterSrv.list[id].editing && isEditable(filterSrv.list[id])" class="filter-mandate" ng-click="filterSrv.list[id].editing = true">
@ -57,6 +47,8 @@
{{filterSrv.list[id].mandate}}
</span>
<i ng-class="getFilterClass(filterSrv.list[id])" class="icon-circle"></i>
<span ng-show="filterSrv.list[id].editing">
<select class="input-small" ng-model="filterSrv.list[id].mandate" ng-options="f for f in ['must','mustNot','either']"></select>
</span>
@ -85,6 +77,6 @@
</div>
</form>
</div>
<i class="link icon-plus-sign" ng-click="add()" bs-tooltip="'Add a query filter'" data-placement="right"></i>
<i class="pointer icon-plus-sign" ng-click="add()" bs-tooltip="'Add a query filter'" data-placement="right"></i>
</div>
</div>

View File

@ -67,6 +67,24 @@ function (angular, app, _) {
return !_.contains(['type','id','alias','mandate','active','editing'],key);
};
$scope.getFilterClass = function(filter) {
if(filter.active !== true) {
return 'muted';
} else {
switch (filter.mandate)
{
case 'must':
return 'text-success';
case 'mustNot':
return 'text-error';
case 'either':
return 'text-warning';
default:
return 'text-info';
}
}
};
$scope.isEditable = function(filter) {
var uneditable = ['time'];
if(_.contains(uneditable,filter.type)) {

View File

@ -185,6 +185,8 @@ function (angular, app, _, kbn, moment) {
});
};
$scope.toggle_micropanel = function(field,groups) {
var docs = _.map($scope.data,function(_d){return _d.kibana._source;});
var topFieldValues = kbn.top_field_values(docs,field,10,groups);

View File

@ -231,6 +231,14 @@ function (angular, app, _, $, kbn) {
restrict: 'A',
link: function(scope, elem) {
scope.$on('$destroy', function() {
console.log('destroy');
if($tooltip) {
console.log('destroyed tooltip');
$tooltip.remove();
}
});
// Receive render events
scope.$on('render',function(){
render_panel();

View File

@ -1,14 +1,16 @@
<div class="row-fluid">
<div class="span4">
<label class="small">Relative time options <small>comma seperated</small></label>
<input type="text" array-join class="input-large" ng-model="panel.time_options">
</div>
<div class="span4">
<label class="small">Auto-refresh options <small>comma seperated</small></label>
<input type="text" array-join class="input-large" ng-model="panel.refresh_intervals">
</div>
<div class="span2">
<label class="small">Time Field</label>
<input type="text" class="input-small" ng-model="panel.timefield">
<div class="editor-row">
<div class="section">
<div class="editor-option">
<label class="small">Relative time options <small>comma seperated</small></label>
<input type="text" array-join class="input-large" ng-model="panel.time_options">
</div>
<div class="editor-option">
<label class="small">Auto-refresh options <small>comma seperated</small></label>
<input type="text" array-join class="input-large" ng-model="panel.refresh_intervals">
</div>
<div class="editor-option">
<label class="small">Time Field</label>
<input type="text" class="input-small" ng-model="panel.timefield">
</div>
</div>
</div>

View File

@ -68,7 +68,7 @@
<li ng-show="dashboard.current.loader.save_elasticsearch">
<form class="input-prepend nomargin">
<button style="margin-top:-1px" class="btn" ng-click="elasticsearch_save('dashboard')"><i class="icon-save"></i></button>
<button class="btn" ng-click="elasticsearch_save('dashboard')"><i class="icon-save"></i></button>
<input class='input-medium' ng-model="dashboard.current.title" type="text" ng-model="elasticsearch.title"/>
</form>
</li>

View File

@ -1,15 +1,16 @@
<!-- is there a better way to repeat without actually affecting the page? -->
<nil ng-repeat="pulldown in dashboard.current.pulldowns" ng-controller="PulldownCtrl" ng-show="pulldown.enable">
<div class="top-row-close pointer pull-left" ng-class="pulldownTabStyle($index)" ng-click="toggle_pulldown(pulldown);dismiss();" bs-tooltip="'Toggle '+pulldown.type" data-placement="bottom">
<span class="small">{{pulldown.type}}</span>
<i class="small" ng-class="{'icon-caret-left':pulldown.collapse,'icon-caret-right':!pulldown.collapse}"></i>
<i class="small icon-star" ng-show="row.notice && pulldown.collapse"></i>
</div>
<div class="clearfix bgNav" ng-hide="pulldown.collapse"></div>
<div class="top-row-open" ng-hide="pulldown.collapse">
<kibana-simple-panel type="pulldown.type" ng-cloak></kibana-simple-panel>
</div>
<div class="top-row-close pointer" ng-click="toggle_pulldown(pulldown);dismiss();" bs-tooltip="'Toggle '+pulldown.type" data-placement="bottom">
<span class="small row-text">{{pulldown.type}}</span>
<i class="small" ng-class="{'icon-caret-left':pulldown.collapse,'icon-caret-up':!pulldown.collapse}"></i>
<i class="small icon-star text-warning" ng-show="row.notice && pulldown.collapse"></i>
</div>
</nil>
<div class="clearfix bgNav nav-shadow" ></div>
<div class="container-fluid main">
<div class="row-fluid">
<div class="row-fluid container" style="margin-top:10px; width:98%">
@ -18,33 +19,29 @@
<div class="row-control">
<div class="row-fluid" style="padding:0px;margin:0px;position:relative;">
<div class="row-close span12" ng-show="row.collapse" data-placement="bottom" >
<span class="row-button" bs-modal="'app/partials/roweditor.html'" class="pointer">
<div class="row-close shadow span12" ng-show="row.collapse" data-placement="bottom" >
<span class="row-button bgInverse" bs-modal="'app/partials/roweditor.html'" class="pointer">
<i bs-tooltip="'Configure row'" data-placement="right" ng-show="row.editable" class="icon-cog pointer"></i>
</span>
<span class="row-button" ng-click="toggle_row(row)" ng-show="row.collapsable">
<i bs-tooltip="'Expand row'" data-placement="right" ng-show="row.editable" class="icon-caret-right pointer" ></i>
<span class="row-button bgPrimary" ng-click="toggle_row(row)" ng-show="row.collapsable">
<i bs-tooltip="'Expand row'" data-placement="right" ng-show="row.editable" class="icon-caret-left pointer" ></i>
</span>
<span class="row-button row-text" ng-click="toggle_row(row)" ng-class="{'pointer':row.collapsable}">{{row.title || 'Row '+$index}}</span>
</div>
<div style="text-align:center" class="row-open" ng-show="!row.collapse">
<span ng-show="row.collapsable">
<i bs-tooltip="'Hide row'" data-placement="right" class="icon-caret-up" ng-click="toggle_row(row)"></i>
<div ng-show="row.collapsable" class='row-tab bgPrimary' ng-click="toggle_row(row)">
<i bs-tooltip="'Hide row'" data-placement="right" class="icon-caret-right" ></i>
<br>
</span>
<span bs-modal="'app/partials/roweditor.html'" ng-show="row.editable">
</div>
<div bs-modal="'app/partials/roweditor.html'" class='row-tab bgInverse' ng-show="row.editable">
<i bs-tooltip="'Configure row'" data-placement="right" class="icon-cog pointer"></i>
<br>
</span>
<span ng-show="rowSpan(row) == 12 && row.editable">
<i bs-tooltip="'Row full. Create a new row to add more panels'" data-placement="right" class="icon-columns"></i>
</div>
<div ng-show="rowSpan(row) > 12" class='row-tab bgWarning'>
<i bs-tooltip="'Total span > 12. This row may format poorly'" data-placement="right" class="icon-warning-sign"></i>
<br>
</span>
<span ng-show="rowSpan(row) > 12">
<i bs-tooltip="'Total span > 12. This row may format poorly'" data-placement="right" class="icon-warning-sign text-warning"></i>
<br>
</span>
</div>
</div>
</div>

View File

@ -79,7 +79,7 @@
<div class="row-fluid">
<div class="span8">
<h4>Rows</h4>
<table class="table table-condensed table-bordered">
<table class="table table-striped">
<thead>
<th width="1%"></th>
<th width="1%"></th>

View File

@ -243,7 +243,9 @@ function (angular, _, config, kbn) {
var idCount = dashboard.current.services.query.ids.length;
if(idCount > 0) {
// Make a sorted copy of the ids array
var ids = _.clone(dashboard.current.services.query.ids).sort();
var ids = _.sortBy(_.clone(dashboard.current.services.query.ids),function(num){
return num;
});
return kbn.smallestMissing(ids);
} else {
// No ids currently in list

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -23,6 +23,7 @@
<body ng-cloak>
<!--<link rel="stylesheet" ng-href="css/bootstrap.{{dashboard.current.style||'dark'}}.min.css">-->
<link rel="stylesheet" ng-href="css/bootstrap.{{dashboard.current.style||'dark'}}.min.css">
<link rel="stylesheet" href="css/bootstrap-responsive.min.css">
<link rel="stylesheet" href="css/font-awesome.min.css">

View File

@ -1,35 +1,47 @@
// Slate 2.3.2
// Cyborg 2.3.2
// Bootswatch
// -----------------------------------------------------
// KIBANA
.panelCont {
outline: 1px solid darken(@bodyBackground, 10%);
border-top: 1px solid lighten(@bodyBackground, 10%);
padding: 0px 10px 10px 10px;
background: darken(@bodyBackground, 3%);
margin: 0px;
}
// TYPOGRAPHY
// -----------------------------------------------------
h1, h2, h3, h4, h5, h6 {
text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
@import url('//fonts.googleapis.com/css?family=Droid+Sans:400,700');
label, input, button, select, textarea,
.navbar .search-query:-moz-placeholder,
.navbar .search-query::-webkit-input-placeholder {
font-family: 'Droid Sans', sans-serif;
color: @gray;
}
code, pre {
background-color: #F7F7F7;
border: 1px solid darken(@grayDarker, 5%);
text-shadow: none;
background-color: @grayLighter;
}
blockquote {
border-left: 5px solid @grayDark;
&.pull-right {
border-right: 5px solid @grayDark;
}
}
// SCAFFOLDING
// -----------------------------------------------------
legend, .page-header {
border-bottom: 1px solid @hrBorder;
html {
min-height: 100%;
}
body {
min-height: 100%;
//#gradient > .vertical (@bodyBackground, #252A30);
//background: @bodyBackground;
background: @bodyBackground url('../img/cubes.png') repeat right top;
}
.page-header {
border-bottom: 1px solid @grayDark
}
hr {
@ -42,73 +54,60 @@ hr {
.navbar {
.navbar-inner {
#gradient > .vertical-three-colors(@grayDark, darken(@bodyBackground,3%), 70%, darken(@bodyBackground,3%));
.border-radius(0);
.box-shadow(none);
border-bottom: 0px solid @grayDark;
}
.brand {
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
border-right: none;
padding: 15px 20px 15px;
color: @grayLighter;
font-weight: normal;
text-shadow: none;
}
.nav > li > a {
padding: 15px 15px 14px;
border-bottom: 1px solid transparent;
}
.nav > li > a:hover,
.nav > .active > a,
.nav > .active > a:hover {
border-bottom: 1px solid @blue;
}
.nav > .active > a,
.nav > .active > a:hover,
.nav > .active > a:focus {
.box-shadow(none);
}
.navbar-text {
padding: 0 15px;
font-weight: bold;
}
.nav > li > a {
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
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, 2%), lighten(@grayDark, 2%), 0deg);
border-right: 1px solid darken(@gray, 15%);
}
.navbar-search .search-query {
border: 1px solid darken(@gray, 15%);
}
.btn,
.btn-group {
margin: 4px 0;
margin-bottom: 1px;
padding: 15px 15px 14px;
line-height: inherit;
}
.divider-vertical {
background-color: transparent;
border-right: none;
margin: 0;
border-left: 1px solid @grayDark;
border-right-width: 0;
}
.dropdown-menu::after {
border-bottom: 6px solid @grayDark;
.search-query,
.search-query:focus,
.search-query.focused {
.border-radius(1px);
background-color: @grayDark;
line-height: normal;
color: @grayLight;
text-shadow: none;
.placeholder(@gray);
}
&-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, 10%), darken(@grayDarker, 5%), 280deg);
}
}
}
@ -116,155 +115,202 @@ hr {
.navbar .nav-collapse {
.nav li > a,
.nav li > a:hover,
.nav .active > a,
.nav .active > a:hover {
.box-shadow(none);
.nav li > a {
border: none;
color: @grayLighter;
border: 1px solid transparent;
background-color: transparent;
background-image: none;
font-weight: normal;
text-shadow: none;
&:hover {
border: none;
background-color: @blue;
}
}
.nav li > a:hover,
.nav .active > a:hover {
background-color: @grayDarker;
.nav .active > a {
border: none;
background-color: @blue;
}
.dropdown-menu a:hover {
background-color: @blue;
}
.navbar-form,
.navbar-search {
border-color: transparent;
.box-shadow(none);
border-top: none;
border-bottom: none;
}
.nav-header {
color: @grayLight;
color: rgba(128, 128, 128, 0.6);
}
}
.navbar-inverse .nav-collapse {
.nav li > a:hover,
.nav .active > a:hover {
background-color: @grayDarker !important;
.nav li > a:hover {
background-color: #111;
}
}
}
.nav-tabs {
.active > a, .active a:hover {
border-bottom: 1px solid darken(@grayDark, 5%);;
.nav .active > a {
background-color: #111;
}
.nav li.dropdown.open > .dropdown-toggle,
.nav li.dropdown.active > .dropdown-toggle,
.nav li.dropdown.open.active > .dropdown-toggle {
background-color: #111;
}
}
}
div.subnav {
margin: 0 1px;
//#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%);
}
background-color: @grayDarker;
background-image: none;
border: none;
border-bottom: 1px solid @grayDark;
.nav > li > a,
.nav > li:first-child > a,
.nav > li:first-child > a:hover {
border-left: 1px solid transparent;
padding: 11px 12px;
border: none;
background-color: @grayDarker;
color: @grayLight;
}
.nav > li.active:last-child > a,
.nav > li:last-child > a:hover {
border-right: 1px solid darken(@gray, 15%);
.nav > li > a:hover,
.nav > li.active > a,
.nav > li.active > a:hover,
.nav > li:first-child > a:hover {
padding: 11px 12px;
background: transparent;
border: none;
border-bottom: 1px solid @blue;
color: @white;
}
.open .dropdown-toggle {
border-right: 1px solid darken(@gray, 15%);
border-left: 1px solid @gray;
.nav li.nav-header {
text-shadow: none;
}
&.subnav-fixed {
&-fixed {
top: @navbarHeight;
margin: 0;
.box-shadow(none);
.nav > li.active:first-child > a,
.nav > li:first-child > a:hover {
border-left: 1px solid darken(@gray, 15%);
}
}
}
// NAV
// -----------------------------------------------------
.nav {
.nav-tabs {
.nav-header {
text-shadow: -1px -1px 0 rgba(0,0,0,0.3);
}
border-bottom: 1px solid @grayDark;
& > 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);
.border-radius(0);
}
li > a:hover,
li.active > a,
li.active > a:hover {
background-color: transparent;
border-color: transparent;
background-color: @blue;
color: @white;
}
& > li.disabled > a,
& > li.disabled > a:hover {
color: @gray;
li.disabled > a {
color: @textColor;
}
.open .dropdown-toggle {
background-color: #060606;
border-color: transparent;
}
}
.nav-pills {
li > a:hover {
background-color: @blue;
color: @white;
}
li.disabled > a {
color: @textColor;
}
.open .dropdown-toggle {
background-color: #060606;
}
.dropdown-menu li > a:hover {
border: none;
}
}
.nav-list {
li > a {
text-shadow: none;
}
li > a:hover {
background-color: transparent;
color: @grayLighter;
background-color: @blue;
color: @white;
}
.nav-header {
text-shadow: none;
}
.divider {
background-color: transparent;
border-bottom: 1px solid @grayDark;
}
}
.nav-stacked {
li > a {
border: 1px solid @grayDark !important;
}
li > a:hover,
li.active > a {
background-color: @blue;
color: @white;
}
}
.tabbable {
.nav-tabs,
.nav-tabs li.active > a {
border-color: @grayDark;
}
}
.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;
}
background-color: transparent;
background-image: none;
border-width: 0;
.box-shadow(none);
font-size: 14px;
li {
color: @grayLight;
font-weight: bold;
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
text-shadow: none;
}
li > a {
color: @blue;
text-shadow: none;
}
}
@ -274,43 +320,17 @@ div.subnav {
.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 > li > a:hover,
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 > .active > span {
// color: @white;
}
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);
background-color: rgba(0, 0, 0, 0.2);
}
}
@ -318,67 +338,108 @@ div.subnav {
li > a,
li > span {
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);
background-color: @bodyBackground;
border: none;
&:hover {
#gradient > .directional(@grayDarker, @grayDark, 280deg);
border: 1px solid transparent;
background-color: @blue;
}
}
.disabled a,
.disabled a:hover {
background-color: transparent;
#gradient > .vertical-three-colors(@gray, @grayDark, 70%, @grayDark);
background-color: @bodyBackground;
}
}
// BUTTONS
// -----------------------------------------------------
.btn {
.buttonBackground(@gray, darken(@gray, 10%));
.border-radius(3px);
border: 1px solid @grayDarker;
padding: 5px 12px;
background-image: none;
.box-shadow(none);
border: none;
.border-radius(0);
text-shadow: none;
&.disabled {
box-shadow: inset 0 2px 4px rgba(0,0,0,.15),~" "0 1px 2px rgba(0,0,0,.05);
}
}
.btn, .btn:hover {
color: @white;
font-weight: bold;
text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.3);
.btn-large {
padding: 22px 30px;
}
.btn-primary {
.buttonBackground(@btnPrimaryBackground, spin(@btnPrimaryBackground, 20));
color: @grayDark;
text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.3);
.btn-small {
padding: 2px 10px;
}
.btn-warning {
.buttonBackground(lighten(@orange, 15%), @orange);
.btn-mini {
padding: 2px 6px;
}
.btn-danger {
.buttonBackground(@red, #bd362f);
.btn-group {
& > .btn:first-child,
& > .btn:last-child,
& > .dropdown-toggle {
.border-radius(0);
}
& > .btn + .dropdown-toggle {
.box-shadow(none);
}
}
.btn-success {
.buttonBackground(@green, #51a351);
// FORMS
// -----------------------------------------------------
input, textarea, select {
border-width: 2px;
.border-radius(1px);
}
.btn-info {
.buttonBackground(@blue, #2f96b4);
select, textarea,
input[type="text"], input[type="password"], input[type="datetime"],
input[type="datetime-local"], input[type="date"], input[type="month"],
input[type="time"], input[type="week"], input[type="number"],
input[type="email"], input[type="url"], input[type="search"],
input[type="tel"], input[type="color"], .uneditable-input {
color: @grayLight;
}
.btn-inverse {
.buttonBackground(@gray, @grayDarker);
input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly], .uneditable-input {
border-color: #444;
}
.caret {
border-top-color: @white;
input:focus,
textarea:focus,
input.focused,
textarea.focused {
border-color: rgba(82,168,236,1);
outline: 0;
outline: thin dotted \9; /* IE6-9 */
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus,
select:focus {
.box-shadow(none); // override for file inputs
.tab-focus();
}
legend, label {
color: @textColor;
border-bottom: 0px solid #222;
}
.form-actions {
border-top: 1px solid #222;
}
// TABLES
@ -386,170 +447,131 @@ div.subnav {
.table {
.border-radius(1px);
tbody tr.success td {
background-color: @successText;
background-color: @green;
color: @white;
}
tbody tr.error td {
background-color: @errorText;
background-color: @red;
color: @white;
}
tbody tr.info td {
background-color: @infoText;
background-color: @blue;
color: @white;
}
}
// FORMS
// -----------------------------------------------------
label, input, button, select, textarea, legend {
color: @textColor;
}
legend, label {
text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
}
.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;
}
.input-append .btn,
.input-prepend .btn {
margin-top: -1px;
padding: 5px 14px;
}
.uneditable-input,
input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly] {
color: @gray;
background: @grayDarker;
}
.form-actions {
border-top: none;
}
// DROPDOWNS
// -----------------------------------------------------
.dropdown-menu {
.box-shadow(0 5px 5px rgba(0, 0, 0, 0.2));
}
.dropdown.open .dropdown-toggle {
background-color: @grayDark;
color: @grayLighter;
}
.dropdown-submenu > a::after {
border-left-color: @white;
.box-shadow(0 2px 4px rgba(0, 0, 0, 0.8));
}
// 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));
.alert,
.alert .alert-heading,
.alert-success,
.alert-success .alert-heading,
.alert-danger,
.alert-error,
.alert-danger .alert-heading,
.alert-error .alert-heading,
.alert-info,
.alert-info .alert-heading {
color: @grayLighter;
text-shadow: none;
border: none;
}
.alert {
background-color: @orange;
border-color: @orange;
.alert-heading {
color: rgba(255, 255, 255, 0.9);
text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.4);
}
.label {
color: @grayLighter;
}
.alert-success {
background-color: @successText;
border-color: @successText;
}
.label, .alert { background-color: darken(@gray, 20%); }
.alert-error {
background-color: @errorText;
border-color: @errorText;
}
.label:hover { background-color: darken(@gray, 30%); }
.alert-info {
background-color: @infoText;
border-color: @infoText;
}
.label-important,
.alert-danger,
.alert-error { background-color: @red; }
.label-important:hover { background-color: darken(@red, 10%); }
.label-warning { background-color: darken(@orange, 10%); }
.label-warning:hover { background-color: darken(@orange, 20%); }
.label-success, .alert-success { background-color: darken(@green, 3%); }
.label-success:hover { background-color: darken(@green, 13%); }
.label-info, .alert-info { background-color: darken(@blueDark, 10%); }
.label-info:hover { background-color: darken(@blueDark, 20%); }
// MISC
// -----------------------------------------------------
.well, .hero-unit {
.box-shadow(inset 1px 1px 1px rgba(0, 0, 0, 0.5));
.border-radius(1px);
}
.thumbnail,
a.thumbnail:hover {
border: 1px solid darken(@grayDarker, 5%);
.well, .hero-unit {
border-top: solid 1px lighten(@grayDark, 5%);
.box-shadow(0 2px 4px rgba(0,0,0,.8));
}
.thumbnail {
border-color: @grayDark;
}
.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;
}
background-color: #060606;
background-image: none;
.border-radius(0);
}
.modal {
.border-radius(1px);
border-top: solid 1px lighten(@grayDark, 5%);
background-color: @grayDark;
}
background-color: darken(@grayDark, 5%);
.modal-header {
border-bottom: 1px solid @grayDark;
}
&-header {
border-bottom: none;
}
.modal-footer {
background-color: @grayDark;
border-top: 1px solid @grayDark;
.border-radius(0 0 6px 6px);
.box-shadow(none);
}
&-body {
border-bottom: 1px solid #1C1E22;
}
&-footer {
border-top: none;
background-color: @grayDarker;
.box-shadow(none);
}
.footer {
border-top: 1px solid @grayDark;
}
// MEDIA QUERIES
// -----------------------------------------------------
@media (max-width: 979px) {
.navbar .brand {
border-right: none;
@media (max-width: 768px) {
div.subnav .nav > li + li > a,
div.subnav .nav > li:first-child > a {
border-top: 1px solid @grayDark;
border-left: 1px solid @grayDark;
}
.subnav .nav > li + li > a:hover,
.subnav .nav > li:first-child > a:hover {
border-bottom: 0;
background-color: @blue;
}
}
@media (max-width: 768px) {
div.subnav .nav > li + li > a {
border-top: 1px solid transparent;
}
}

View File

@ -1,9 +1,612 @@
// Cosmo 2.3.2
// Bootswatch
// -----------------------------------------------------
// KIBANA
.panelCont {
outline: 1px solid darken(@bodyBackground, 10%);
border-top: 1px solid lighten(@bodyBackground, 10%);
padding: 0px 10px 10px 10px;
background: darken(@bodyBackground, 5%);
margin: 0px;
// TYPOGRAPHY
// -----------------------------------------------------
//@import url('//fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,400,700');
body {
font-weight: 300;
background: @bodyBackground url('../img/light.png') repeat right top;
}
h1 {
font-size: 50px;
}
h2, h3 {
font-size: 26px;
}
h4 {
font-size: 14px;
}
h5, h6 {
font-size: 11px;
}
blockquote {
padding: 10px 15px;
background-color: @grayLighter;
border-left-color: @gray;
&.pull-right {
padding: 10px 15px;
border-right-color: @gray;
}
small {
color: @gray;
}
}
.muted {
color: @gray;
}
.text-warning { color: @orange; }
a.text-warning:hover { color: darken(@orange, 10%); }
.text-error { color: @red; }
a.text-error:hover { color: darken(@red, 10%); }
.text-info { color: @purple; }
a.text-info:hover { color: darken(@purple, 10%); }
.text-success { color: @green; }
a.text-success:hover { color: darken(@green, 10%); }
// SCAFFOLDING
// -----------------------------------------------------
// NAVBAR
// -----------------------------------------------------
.navbar {
.navbar-inner {
background-image: none;
.box-shadow(none);
.border-radius(0);
}
.brand {
&:hover {
color: @navbarLinkColorHover;
}
}
.nav > .active > a,
.nav > .active > a:hover,
.nav > .active > a:focus {
.box-shadow(none);
background-color: @navbarLinkBackgroundHover;
}
.nav li.dropdown.open > .dropdown-toggle,
.nav li.dropdown.active > .dropdown-toggle,
.nav li.dropdown.open.active > .dropdown-toggle {
color: @white;
&:hover {
color: @grayLighter;
}
}
.navbar-search .search-query {
line-height: normal;
}
&-inverse {
.brand,
.nav > li > a {
text-shadow: none;
}
.brand:hover,
.nav > .active > a,
.nav > .active > a:hover,
.nav > .active > a:focus {
background-color: @navbarInverseLinkBackgroundHover;
.box-shadow(none);
color: @white;
}
.navbar-search .search-query {
color: @grayDarker;
}
}
}
div.subnav {
margin: 0 1px;
background: @grayLight none;
.box-shadow(none);
border: none;
.border-radius(0);
.nav {
background-color: transparent;
}
.nav > li > a {
border-color: transparent;
}
.nav > .active > a,
.nav > .active > a:hover {
border-color: transparent;
background-color: @black;
color: @white;
.box-shadow(none);
}
&-fixed {
top: @navbarHeight + 1;
margin: 0;
}
}
// NAV
// -----------------------------------------------------
.nav {
.open .dropdown-toggle,
& > li.dropdown.open.active > a:hover {
color: @blue;
}
}
.nav-tabs {
& > li > a {
.border-radius(0);
}
li > a:hover,
li.active > a,
li.active > a:hover {
border-color: transparent;
background-color: @blue;
color: @white;
}
li.disabled > a {
color: @textColor;
}
.open .dropdown-toggle {
background-color: #060606;
border-color: transparent;
}
}
.tabs-below,
.tabs-left,
.tabs-right {
& > .nav-tabs > li > a{
.border-radius(0);
border: 0px;
}
}
.nav-pills {
& > li > a {
//background-color: @grayLight;
.border-radius(0);
color: @black;
&:hover {
background-color: @black;
color: @white;
}
}
& > .disabled > a,
& > .disabled > a:hover {
background-color: @grayLighter;
color: @grayDark;
}
}
.nav-list {
& > li > a {
color: @grayDarker;
&:hover {
background-color: @blue;
color: @white;
text-shadow: none;
}
}
.nav-header {
color: @grayDarker;
}
.divider {
background-color: @gray;
border-bottom: none;
}
}
.pagination {
ul {
.box-shadow(none);
& > li > a,
& > li > span {
margin-right: 6px;
color: @grayDarker;
&:hover {
background-color: @grayDarker;
color: @white;
}
}
& > li:last-child > a,
& > li:last-child > span {
margin-right: 0;
}
& > .active > a,
& > .active > span {
color: @white;
}
& > .disabled > span,
& > .disabled > a,
& > .disabled > a:hover {
background-color: @grayLighter;
color: @grayDark;
}
}
}
.pager {
li > a,
li > span {
background-color: @grayLight;
border: none;
.border-radius(0);
color: @grayDarker;
&:hover {
background-color: @grayDarker;
color: @white;
}
}
.disabled > a,
.disabled > a:hover,
.disabled > span {
background-color: @grayLighter;
color: @grayDark;
}
}
.breadcrumb {
background-color: @grayLight;
li {
text-shadow: none;
}
.divider,
.active {
color: @grayDarker;
text-shadow: none;
}
}
// BUTTONS
// -----------------------------------------------------
.btn {
padding: 5px 12px;
background-image: none;
.box-shadow(none);
border: none;
.border-radius(0);
text-shadow: none;
&.disabled {
box-shadow: inset 0 2px 4px rgba(0,0,0,.15),~" "0 1px 2px rgba(0,0,0,.05);
}
}
.btn-large {
padding: 22px 30px;
}
.btn-small {
padding: 2px 10px;
}
.btn-mini {
padding: 2px 6px;
}
.btn-group {
& > .btn:first-child,
& > .btn:last-child,
& > .dropdown-toggle {
.border-radius(0);
}
& > .btn + .dropdown-toggle {
.box-shadow(none);
}
}
// TABLES
// -----------------------------------------------------
.table {
tbody tr.success td {
color: @white;
}
tbody tr.error td {
color: @white;
}
tbody tr.info td {
color: @white;
}
&-bordered {
.border-radius(0);
thead:first-child tr:first-child th:first-child,
tbody:first-child tr:first-child td:first-child {
.border-radius(0);
}
thead:last-child tr:last-child th:first-child,
tbody:last-child tr:last-child td:first-child,
tfoot:last-child tr:last-child td:first-child {
.border-radius(0);
}
}
}
// FORMS
// -----------------------------------------------------
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"] {
color: @grayDarker;
}
.control-group {
&.warning {
.control-label,
.help-block,
.help-inline {
color: @orange;
}
input,
select,
textarea {
border-color: @orange;
color: @grayDarker;
}
}
&.error {
.control-label,
.help-block,
.help-inline {
color: @red;
}
input,
select,
textarea {
border-color: @red;
color: @grayDarker;
}
}
&.success {
.control-label,
.help-block,
.help-inline {
color: @green;
}
input,
select,
textarea {
border-color: @green;
color: @grayDarker;
}
}
}
legend {
border-bottom: none;
color: @grayDarker;
}
.form-actions {
border-top: none;
background-color: @grayLighter;
}
// DROPDOWNS
// -----------------------------------------------------
.dropdown-menu {
.border-radius(0);
}
// ALERTS, LABELS, BADGES
// -----------------------------------------------------
.alert {
.border-radius(0);
text-shadow: none;
&-heading, h1, h2, h3, h4, h5, h6 {
color: @white;
}
}
.label {
min-width: 80px;
min-height: 80px;
.border-radius(0);
font-weight: 300;
text-shadow: none;
&-success {
background-color: @green;
}
&-important {
background-color: @red;
}
&-info {
background-color: @purple;
}
&-inverse {
background-color: @black;
}
}
.badge {
.border-radius(0);
font-weight: 300;
text-shadow: none;
&-success {
background-color: @green;
}
&-important {
background-color: @red;
}
&-info {
background-color: @purple;
}
&-inverse {
background-color: @black;
}
}
// MISC
// -----------------------------------------------------
.hero-unit {
border: none;
.border-radius(0);
.box-shadow(none);
}
.well {
border: none;
.border-radius(0);
.box-shadow(none);
}
[class^="icon-"], [class*=" icon-"] {
margin: 0 2px;
vertical-align: -2px;
}
a.thumbnail {
background-color: @grayLight;
&:hover {
background-color: @gray;
border-color: transparent;
}
}
.progress {
height: 6px;
.border-radius(0);
.box-shadow(none);
background-color: @grayLighter;
background-image: none;
.bar {
//background-color: @blue;
background-image: none;
}
&-info {
background-color: @purple;
}
&-success {
background-color: @green;
}
&-warning {
background-color: @orange;
}
&-danger {
background-color: @red;
}
}
.modal {
.border-radius(0);
&-header {
border-bottom: none;
}
&-footer {
border-top: none;
background-color: transparent;
}
}
.popover {
.border-radius(0);
&-title {
border-bottom: none;
color: @white;
}
}
// MEDIA QUERIES
// -----------------------------------------------------

View File

@ -53,7 +53,7 @@
.modal-body {
position: relative;
overflow-y: auto;
max-height: 700px;
//max-height: 700px;
padding: 15px;
}
// Remove bottom margin if need be

View File

@ -1,6 +1,58 @@
// Backgrounds
// ---------------------
.bgNav {
background: @navbarBackground;
}
.bgPrimary {
background: @btnPrimaryBackground;
color: rgba(255,255,255,.90);
}
.bgInfo {
background: @btnInfoBackground;
color: rgba(255,255,255,.90);
}
.bgSuccess {
background: @btnSuccessBackground;
color: rgba(255,255,255,.90);
}
.bgWarning {
background: @btnWarningBackground;
color: rgba(255,255,255,.90);
}
.bgDanger {
background: @btnDangerBackground;
color: rgba(255,255,255,.90);
}
.bgInverse {
background: @btnInverseBackground;
color: rgba(255,255,255,.90);
}
// KIBANA
.panelCont {
padding: 0px 10px 10px 10px;
background: @kibanaPanelBackground;
box-shadow: 0px 0px 8px rgba(30, 30, 30, 0.75);
margin: 0px;
.border-radius(1);
}
div.editor-row {
vertical-align: top;
}
div.editor-row div.section {
margin-right: 20px;
vertical-align: top;
@ -81,55 +133,66 @@ form input.ng-invalid {
margin-bottom: 10px;
}
.row-tab {
padding: 0px;
cursor: pointer;
width: 30px;
height: 30px;
line-height: 30px;
vertical-align: middle;
}
.row-button {
border-left: 1px solid lighten(@bodyBackground, 10%);
border-right: 1px solid darken(@bodyBackground, 10%);
padding: 2px 7px 0px 7px;
width: 30px;
text-align: center;
float: left;
cursor: pointer;
}
.row-text {
text-transform: uppercase;
font-weight: bold;
font-size: 0.9em;
margin: 0px 10px;
}
.row-close {
outline: 1px solid darken(@bodyBackground, 10%);
border-top: 1px solid lighten(@bodyBackground, 10%);
padding: 0px;
margin: 0px;
min-height: 24px !important;
line-height: 24px;
background: darken(@bodyBackground, 3%);
min-height: 30px !important;
line-height: 30px;
background: @kibanaPanelBackground;
}
.top-row-open {
background: @navbarBackground;
padding: 5px 25px 5px 25px;
}
.shadow {
box-shadow: 0px 0px 8px rgba(50, 50, 50, 0.75);
}
.top-row-close {
padding: 5px 10px;
text-transform: uppercase;
margin: 0px;
text-align: left;
min-height: 16px !important;
line-height: 16px;
}
.nav-shadow {
box-shadow: 0 4px 2px -2px rgba(50, 50, 50, 0.75);
border-bottom: 1px solid lighten(@navbarBackground,20%);
}
.row-open {
text-align: right;
left:-18px;
left:-32px;
position: absolute;
font-size: 13pt;
font-weight: 200;
}
.top-row-open {
background: darken(@bodyBackground, 3%);
padding: 5px 25px 5px 25px;
}
.top-row-close {
outline: 1px solid darken(@bodyBackground, 10%);
border-top: 1px solid lighten(@bodyBackground, 10%);
padding: 0px;
margin: 1px 0px 0px 0px;
text-align: center;
min-height: 16px !important;
line-height: 16px;
background: darken(@bodyBackground, 3%);
}
.row-open i {
font-size: 10pt;
box-shadow: 0px 0px 8px rgba(50, 50, 50, 0.75);
}
.odd {
@ -165,11 +228,13 @@ form input.ng-invalid {
.panel-title {
border: 0px;
margin-left: -11px;
text-transform: uppercase;
font-weight: bold;
}
.panel div.panel-extra div.panel-extra-container {
margin-right: -11px;
margin-right: 0px;
margin-top: 7px;
}
.panel div.panel-extra {
@ -179,7 +244,7 @@ form input.ng-invalid {
.panel div.panel-extra .extra {
float:right !important;
border-bottom: 1px solid lighten(@bodyBackground, 5%);
//border-bottom: 1px solid lighten(@bodyBackground, 5%);
}
.dragInProgress {
@ -196,11 +261,6 @@ form input.ng-invalid {
color: @linkColorHover;
}
.pointer:hover {
color: @linkColorHover;
}
.pointer {
cursor: pointer;
}
@ -279,7 +339,6 @@ div.flot-text {
margin-left:0px;
padding:3px 0px 3px 0px;
width:100%;
color: @textColor;
padding-left:20px;
}

View File

@ -1,8 +1,3 @@
// Slate 2.3.2
// Variables
// --------------------------------------------------
// Global values
// --------------------------------------------------
@ -10,35 +5,40 @@
// Grays
// -------------------------
@black: #000;
@grayDarker: #272B30;
@grayDark: #3A3F44;
@gray: #52575C;
@grayLight: #7A8288;
@grayLighter: #BBBFC2;
@gray: #bbb;
@grayDark: #333;
@grayDarker: #090909;
@grayLight: #ADAFAE;
@grayLighter: #eee;
@white: #fff;
// Accent colors
// -------------------------
@blue: #5bc0de;
@blueDark: #108CBB;
@green: #62c462;
@red: #ee5f5b;
@yellow: #F6D30D;
@orange: #f89406;
@pink: #c3325f;
@purple: #7a43b6;
@blue: #33B5E5;
@blueDark: #0099CC;
@green: #669900;
@red: #CC0000;
@yellow: #ECBB13;
@orange: #FF8800;
@pink: #FF4444;
@purple: #9933CC;
// Kibana Variables
// -------------------------
@kibanaPanelBackground: @grayDarker;
// Scaffolding
// -------------------------
@bodyBackground: @grayDarker;
@textColor: #C8C8C8;
@bodyBackground: lighten(@grayDark,20%);
@textColor: @gray;
// Links
// -------------------------
@linkColor: @white;
@linkColor: darken(@white,5%);
@linkColorHover: @white;
@ -46,17 +46,17 @@
// -------------------------
@sansFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif;
@serifFontFamily: Georgia, "Times New Roman", Times, serif;
@monoFontFamily: Monaco, Menlo, Consolas, "Courier New", monospace;
@monoFontFamily: Menlo, Monaco, Consolas, "Courier New", monospace;
@baseFontSize: 14px;
@baseFontFamily: @sansFontFamily;
@baseLineHeight: 21px;
@baseLineHeight: 20px;
@altFontFamily: @serifFontFamily;
@headingsFontFamily: inherit; // empty to use BS default, @baseFontFamily
@headingsFontWeight: bold; // instead of browser default, bold
@headingsColor: inherit; // empty to use BS default, @textColor
@headingsFontWeight: normal; // instead of browser default, bold
@headingsColor: @white; // empty to use BS default, @textColor
@inputText: @black;
// Component sizing
// -------------------------
@ -70,66 +70,68 @@
@paddingSmall: 2px 10px; // 26px
@paddingMini: 0px 6px; // 22px
@baseBorderRadius: 4px;
@borderRadiusLarge: 6px;
@borderRadiusSmall: 3px;
@baseBorderRadius: 3px;
@borderRadiusLarge: 4px;
@borderRadiusSmall: 2px;
// Tables
// -------------------------
@tableBackground: transparent; // overall background-color
@tableBackgroundAccent: darken(@grayDark, 5%); // for striping
@tableBackgroundAccent: rgba(100, 100, 100, 0.3); // for striping
@tableBackgroundHover: @grayDark; // for hover
@tableBorder: lighten(@grayDark, 2%); // table and cell border
@tableBorder: @grayDark; // table and cell border
// Buttons
// -------------------------
@btnBackground: @gray;
@btnBackgroundHighlight: darken(@gray, 10%);
@btnBorder: darken(@gray, 20%);
@btnBackgroundHighlight: darken(@gray, 2%);
@btnBorder: rgba(0, 0, 0, 0);
@btnPrimaryBackground: @grayLight;
@btnPrimaryBackgroundHighlight: spin(@btnPrimaryBackground, 15%);
@btnPrimaryBackground: @blueDark;
@btnPrimaryBackgroundHighlight: darken(@blueDark, 10%);
@btnInfoBackground: @blue;
@btnInfoBackgroundHighlight: #2f96b4;
@btnInfoBackground: darken(@gray, 40%);
@btnInfoBackgroundHighlight: darken(@gray, 50%);
@btnSuccessBackground: @green;
@btnSuccessBackgroundHighlight: #51a351;
@btnSuccessBackground: lighten(@green, 10%);
@btnSuccessBackgroundHighlight: @green;
@btnWarningBackground: lighten(@orange, 15%);
@btnWarningBackgroundHighlight: @orange;
@btnDangerBackground: @red;
@btnDangerBackgroundHighlight: #bd362f;
@btnDangerBackground: lighten(@red, 10%);
@btnDangerBackgroundHighlight: @red;
@btnInverseBackground: lighten(@purple, 5%);
@btnInverseBackgroundHighlight: @purple;
@btnInverseBackground: @gray;
@btnInverseBackgroundHighlight: @grayDarker;
// Forms
// -------------------------
@inputText: @white;
@inputBackground: @gray;
@inputBorder: @grayLight;
@inputBackground: lighten(@grayDark,10%);
@inputBorder: lighten(@grayDark,20%);
@inputBorderRadius: @baseBorderRadius;
@inputDisabledBackground: @grayLighter;
@formActionsBackground: darken(@grayDarker, 3%);
@inputDisabledBackground: #555;
@formActionsBackground: transparent;
@inputHeight: @baseLineHeight + 10px; // base line-height + 8px vertical padding + 2px top/bottom border
// Dropdowns
// -------------------------
@dropdownBackground: @grayDark;
@dropdownBackground: @heroUnitBackground;
@dropdownBorder: rgba(0,0,0,.2);
@dropdownDividerTop: transparent;
@dropdownDividerBottom: darken(@grayDarker, 5%);
@dropdownDividerBottom: #222;
@dropdownLinkColor: @grayLight;
@dropdownLinkColor: @textColor;
@dropdownLinkColorHover: @white;
@dropdownLinkColorActive: @white;
@dropdownLinkBackgroundActive: @grayDarker;
@dropdownLinkBackgroundHover: @grayDarker;
@dropdownLinkBackgroundActive: @linkColor;
@dropdownLinkBackgroundHover: @blue;
@ -143,7 +145,7 @@
// Try to avoid customizing these :)
@zindexDropdown: 1000;
@zindexPopover: 1010;
@zindexTooltip: 1030;
@zindexTooltip: 1020;
@zindexFixedNavbar: 1030;
@zindexModalBackdrop: 1040;
@zindexModal: 1050;
@ -162,7 +164,7 @@
// Hr border color
// -------------------------
@hrBorder: darken(@grayDarker, 5%);
@hrBorder: @grayDark;
// Horizontal forms & lists
@ -172,92 +174,92 @@
// Wells
// -------------------------
@wellBackground: darken(@grayDarker, 3%);
@wellBackground: #131517;
// Navbar
// -------------------------
@navbarCollapseWidth: 979px;
@navbarCollapseDesktopWidth: @navbarCollapseWidth + 1;
@navbarHeight: 40px;
@navbarHeight: 50px;
@navbarBackgroundHighlight: @grayDarker;
@navbarBackground: @grayDarker;
@navbarBackgroundHighlight: @grayDark;
@navbarBorder: darken(@navbarBackground, 12%);
@navbarText: @textColor;
@navbarLinkColor: @textColor;
@navbarText: @grayLight;
@navbarLinkColor: @grayLight;
@navbarLinkColorHover: @white;
@navbarLinkColorActive: @navbarLinkColorHover;
@navbarLinkBackgroundHover: @grayDark;
@navbarLinkBackgroundHover: transparent;
@navbarLinkBackgroundActive: @navbarBackground;
@navbarBrandColor: @grayLighter;
@navbarBrandColor: @navbarLinkColor;
// Inverted navbar
@navbarInverseBackground: darken(@grayDarker, 10%);
@navbarInverseBackgroundHighlight: @grayDarker;
@navbarInverseBorder: #252525;
@navbarInverseBackground: #252A30;
@navbarInverseBackgroundHighlight: #252A30;
@navbarInverseBorder: transparent;
@navbarInverseText: @grayLight;
@navbarInverseLinkColor: @grayLight;
@navbarInverseLinkColorHover: @white;
@navbarInverseLinkColorActive: @navbarInverseLinkColorHover;
@navbarInverseLinkBackgroundHover: transparent;
@navbarInverseLinkBackgroundActive: @navbarInverseBackground;
@navbarInverseLinkBackgroundHover: #242A31;
@navbarInverseLinkBackgroundActive: @navbarInverseLinkBackgroundHover;
@navbarInverseSearchBackground: lighten(@navbarInverseBackground, 25%);
@navbarInverseSearchBackgroundFocus: @white;
@navbarInverseSearchBorder: @navbarInverseBackground;
@navbarInverseSearchPlaceholderColor: #ccc;
@navbarInverseSearchPlaceholderColor: @white;
@navbarInverseBrandColor: @navbarInverseLinkColor;
// Pagination
// -------------------------
@paginationBackground: #fff;
@paginationBorder: #ddd;
@paginationActiveBackground: #f5f5f5;
@paginationBackground: @bodyBackground;
@paginationBorder: transparent;
@paginationActiveBackground: @blue;
// Hero unit
// -------------------------
@heroUnitBackground: darken(@grayDarker, 3%);
@heroUnitBackground: @grayDark;
@heroUnitHeadingColor: inherit;
@heroUnitLeadColor: inherit;
// Form states and alerts
// -------------------------
@warningText: #c09853;
@warningBackground: #fcf8e3;
@warningBorder: darken(spin(@warningBackground, -10), 3%);
@warningText: darken(#c09853, 10%);
@warningBackground: @grayLighter;
@warningBorder: transparent;
@errorText: #b94a48;
@errorBackground: #f2dede;
@errorBackground: @grayLighter;
@errorBorder: darken(spin(@errorBackground, -10), 3%);
@successText: #468847;
@successBackground: #dff0d8;
@successBackground: @grayLighter;
@successBorder: darken(spin(@successBackground, -10), 5%);
@infoText: #3a87ad;
@infoBackground: #d9edf7;
@infoText: @blueDark;
@infoBackground: @grayLighter;
@infoBorder: darken(spin(@infoBackground, -10), 7%);
// Tooltips and popovers
// -------------------------
@tooltipColor: #fff;
@tooltipBackground: @dropdownBackground;
@tooltipBackground: @heroUnitBackground;
@tooltipArrowWidth: 5px;
@tooltipArrowColor: @tooltipBackground;
@popoverBackground: @dropdownBackground;
@popoverBackground: @heroUnitBackground;
@popoverArrowWidth: 10px;
@popoverArrowColor: @dropdownBackground;
@popoverTitleBackground: lighten(@popoverBackground, 3%);
@popoverArrowColor: @popoverBackground;
@popoverTitleBackground: @popoverBackground;
// Special enhancement for popovers
@popoverArrowOuterWidth: @popoverArrowWidth + 1;
@ -273,32 +275,29 @@
// -------------------------
@gridColumns: 12;
@gridColumnWidth: 60px;
@gridGutterWidth: 10px;
@gridGutterWidth: 20px;
@gridRowWidth: (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
// 1200px min
@gridColumnWidth1200: 70px;
@gridGutterWidth1200: 10px;
@gridGutterWidth1200: 30px;
@gridRowWidth1200: (@gridColumns * @gridColumnWidth1200) + (@gridGutterWidth1200 * (@gridColumns - 1));
// 768px-979px
@gridColumnWidth768: 42px;
@gridGutterWidth768: 10px;
@gridGutterWidth768: 20px;
@gridRowWidth768: (@gridColumns * @gridColumnWidth768) + (@gridGutterWidth768 * (@gridColumns - 1));
// Fluid grid
// -------------------------
@fluidGridColumnWidth: percentage(@gridColumnWidth/@gridRowWidth);
@gridGutterWidth: 10px;
//@fluidGridGutterWidth: percentage(@gridGutterWidth/@gridRowWidth);
@fluidGridGutterWidth: percentage(@gridGutterWidth/@gridRowWidth);
// 1200px min
@fluidGridColumnWidth1200: percentage(@gridColumnWidth1200/@gridRowWidth1200);
@gridGutterWidth: 10px;
//@fluidGridGutterWidth1200: percentage(@gridGutterWidth1200/@gridRowWidth1200);
@fluidGridColumnWidth1200: percentage(@gridColumnWidth1200/@gridRowWidth1200);
@fluidGridGutterWidth1200: percentage(@gridGutterWidth1200/@gridRowWidth1200);
// 768px-979px
@fluidGridColumnWidth768: percentage(@gridColumnWidth768/@gridRowWidth768);
@gridGutterWidth: 10px;
//@fluidGridGutterWidth768: percentage(@gridGutterWidth768/@gridRowWidth768);
@fluidGridColumnWidth768: percentage(@gridColumnWidth768/@gridRowWidth768);
@fluidGridGutterWidth768: percentage(@gridGutterWidth768/@gridRowWidth768);

View File

@ -1,4 +1,4 @@
//
// Cosmo 2.3.2
// Variables
// --------------------------------------------------
@ -10,43 +10,46 @@
// Grays
// -------------------------
@black: #000;
@grayDarker: #222;
@grayDark: #333;
@gray: #555;
@grayLight: #999;
@grayDarker: #080808;
@grayDark: #999;
@gray: #bbb;
@grayLight: #dfdfdf;
@grayLighter: #eee;
@white: #fff;
// Accent colors
// -------------------------
@blue: #049cdb;
@blueDark: #0064cd;
@green: #46a546;
@red: #9d261d;
@yellow: #ffc40d;
@orange: #f89406;
@pink: #c3325f;
@purple: #7a43b6;
@blue: #007FFF;
@blueDark: #1F26B6;
@green: #3FB618;
@red: #FF0039;
@yellow: #FFA500;
@orange: #FF7518;
@pink: #E671B8;
@purple: #9954BB;
// Kibana Variables
// -------------------------
@kibanaPanelBackground: @white;
// Scaffolding
// -------------------------
@bodyBackground: #ffffff;
@textColor: @grayDark;
@bodyBackground: @white;
@textColor: #555;
// Links
// -------------------------
@linkColor: #08c;
@linkColorHover: lighten(@linkColor, 15%);
@linkColor: @blue;
@linkColorHover: darken(@linkColor, 10%);
// Typography
// -------------------------
@sansFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif;
@serifFontFamily: Georgia, "Times New Roman", Times, serif;
@monoFontFamily: Monaco, Menlo, Consolas, "Courier New", monospace;
@monoFontFamily: Menlo, Monaco, Consolas, "Courier New", monospace;
@baseFontSize: 14px;
@baseFontFamily: @sansFontFamily;
@ -54,8 +57,8 @@
@altFontFamily: @serifFontFamily;
@headingsFontFamily: inherit; // empty to use BS default, @baseFontFamily
@headingsFontWeight: bold; // instead of browser default, bold
@headingsColor: inherit; // empty to use BS default, @textColor
@headingsFontWeight: 300; // instead of browser default, bold
@headingsColor: @grayDarker; // empty to use BS default, @textColor
// Component sizing
@ -66,57 +69,56 @@
@fontSizeSmall: @baseFontSize * 0.85; // ~12px
@fontSizeMini: @baseFontSize * 0.75; // ~11px
@paddingLarge: 11px 19px; // 44px
@paddingLarge: 22px 30px; // 66px
@paddingSmall: 2px 10px; // 26px
@paddingMini: 0 6px; // 22px
@paddingMini: 2px 6px; // 24px
@baseBorderRadius: 4px;
@borderRadiusLarge: 6px;
@borderRadiusSmall: 3px;
@baseBorderRadius: 3px;
@borderRadiusLarge: 4px;
@borderRadiusSmall: 2px;
// Tables
// -------------------------
@tableBackground: transparent; // overall background-color
@tableBackgroundAccent: #f9f9f9; // for striping
@tableBackgroundHover: #f5f5f5; // for hover
@tableBackgroundHover: #E8F8FD; // for hover
@tableBorder: #ddd; // table and cell border
// Buttons
// -------------------------
@btnBackground: @white;
@btnBackgroundHighlight: darken(@white, 10%);
@btnBorder: #ccc;
@btnBackground: @grayLighter;
@btnBackgroundHighlight: darken(@grayLighter, 15%);
@btnBorder: #bbb;
@btnPrimaryBackground: @linkColor;
@btnPrimaryBackgroundHighlight: spin(@btnPrimaryBackground, 20%);
@btnPrimaryBackground: lighten(@blue, 5%);
@btnPrimaryBackgroundHighlight: darken(@blue, 5%);
@btnInfoBackground: #5bc0de;
@btnInfoBackgroundHighlight: #2f96b4;
@btnInfoBackground: lighten(@purple, 5%);
@btnInfoBackgroundHighlight: darken(@purple, 5%);
@btnSuccessBackground: #62c462;
@btnSuccessBackgroundHighlight: #51a351;
@btnSuccessBackground: lighten(@green, 5%);
@btnSuccessBackgroundHighlight: darken(@green, 5%);
@btnWarningBackground: lighten(@orange, 15%);
@btnWarningBackgroundHighlight: @orange;
@btnWarningBackground: lighten(@orange, 5%);
@btnWarningBackgroundHighlight: darken(@orange, 5%);
@btnDangerBackground: #ee5f5b;
@btnDangerBackgroundHighlight: #bd362f;
@btnDangerBackground: lighten(@red, 5%);
@btnDangerBackgroundHighlight: darken(@red, 5%);
@btnInverseBackground: #444;
@btnInverseBackgroundHighlight: @grayDarker;
@btnInverseBackground: lighten(@black, 5%);
@btnInverseBackgroundHighlight: darken(@black, 5%);
// Forms
// -------------------------
@inputBackground: @white;
@inputBorder: #ccc;
@inputBorder: @gray;
@inputBorderRadius: @baseBorderRadius;
@inputDisabledBackground: @grayLighter;
@formActionsBackground: #f5f5f5;
@inputHeight: @baseLineHeight + 10px; // base line-height + 8px vertical padding + 2px top/bottom border
@inputText: @grayDarker;
@inputText: #020202;
// Dropdowns
// -------------------------
@ -129,7 +131,7 @@
@dropdownLinkColorHover: @white;
@dropdownLinkColorActive: @white;
@dropdownLinkBackgroundActive: @linkColor;
@dropdownLinkBackgroundActive: @blue;
@dropdownLinkBackgroundHover: @dropdownLinkBackgroundActive;
@ -158,7 +160,7 @@
// Input placeholder text color
// -------------------------
@placeholderText: @grayLight;
@placeholderText: @gray;
// Hr border color
@ -173,52 +175,53 @@
// Wells
// -------------------------
@wellBackground: #f5f5f5;
@wellBackground: @grayLighter;
// Navbar
// -------------------------
@navbarCollapseWidth: 979px;
@navbarCollapseDesktopWidth: @navbarCollapseWidth + 1;
@navbarHeight: 40px;
@navbarHeight: 50px;
@navbarBackgroundHighlight: @grayDarker;
@navbarBackground: @grayDarker;
@navbarBackgroundHighlight: @grayDark;
@navbarBorder: darken(@navbarBackground, 12%);
@navbarBorder: transparent;
@navbarText: @white;
@navbarLinkColor: @white;
@navbarLinkColorHover: @white;
@navbarLinkColorActive: @navbarLinkColorHover;
@navbarLinkBackgroundHover: @grayDark;
@navbarLinkBackgroundActive: @navbarBackground;
@navbarLinkColorHover: @gray;
@navbarLinkColorActive: @white;
@navbarLinkBackgroundHover: rgba(0, 0, 0, 0.05);
@navbarLinkBackgroundActive: transparent;
@navbarBrandColor: @grayLighter;
@navbarBrandColor: @navbarLinkColor;
// Inverted navbar
@navbarInverseBackground: #111111;
@navbarInverseBackgroundHighlight: #222222;
@navbarInverseBorder: #252525;
@navbarInverseBackground: @blue;
@navbarInverseBackgroundHighlight: @navbarInverseBackground;
@navbarInverseBorder: transparent;
@navbarInverseText: @grayLight;
@navbarInverseLinkColor: @grayLight;
@navbarInverseText: @white;
@navbarInverseLinkColor: @white;
@navbarInverseLinkColorHover: @white;
@navbarInverseLinkColorActive: @navbarInverseLinkColorHover;
@navbarInverseLinkBackgroundHover: transparent;
@navbarInverseLinkBackgroundHover: rgba(0, 0, 0, 0.05);
@navbarInverseLinkBackgroundActive: @navbarInverseBackground;
@navbarInverseSearchBackground: lighten(@navbarInverseBackground, 25%);
@navbarInverseSearchBackgroundFocus: @white;
@navbarInverseSearchBorder: @navbarInverseBackground;
@navbarInverseSearchPlaceholderColor: #ccc;
@navbarInverseSearchPlaceholderColor: @grayDark;
@navbarInverseBrandColor: @navbarInverseLinkColor;
// Pagination
// -------------------------
@paginationBackground: #fff;
@paginationBorder: #ddd;
@paginationActiveBackground: #f5f5f5;
@paginationBackground: @grayLight;
@paginationBorder: transparent;
@paginationActiveBackground: @blue;
// Hero unit
@ -230,21 +233,21 @@
// Form states and alerts
// -------------------------
@warningText: #c09853;
@warningBackground: #fcf8e3;
@warningBorder: darken(spin(@warningBackground, -10), 3%);
@warningText: @white;
@warningBackground: @orange;
@warningBorder: transparent;
@errorText: #b94a48;
@errorBackground: #f2dede;
@errorBorder: darken(spin(@errorBackground, -10), 3%);
@errorText: @white;
@errorBackground: @red;
@errorBorder: transparent;
@successText: #468847;
@successBackground: #dff0d8;
@successBorder: darken(spin(@successBackground, -10), 5%);
@successText: @white;
@successBackground: @green;
@successBorder: transparent;
@infoText: #3a87ad;
@infoBackground: #d9edf7;
@infoBorder: darken(spin(@infoBackground, -10), 7%);
@infoText: @white;
@infoBackground: @purple;
@infoBorder: transparent;
// Tooltips and popovers
@ -254,10 +257,10 @@
@tooltipArrowWidth: 5px;
@tooltipArrowColor: @tooltipBackground;
@popoverBackground: #fff;
@popoverArrowWidth: 10px;
@popoverArrowColor: #fff;
@popoverTitleBackground: darken(@popoverBackground, 3%);
@popoverBackground: @bodyBackground;
@popoverArrowWidth: 15px;
@popoverArrowColor: @bodyBackground;
@popoverTitleBackground: @bodyBackground;
// Special enhancement for popovers
@popoverArrowOuterWidth: @popoverArrowWidth + 1;