horizon/openstack_dashboard/static/dashboard/scss/horizon.scss

2212 lines
38 KiB
SCSS

// bootstrap overrides:
$icon-font-path: "../../bootstrap/fonts/bootstrap/";
$font-size-base: 13px;
$modal-md: 732px;
@import "/bootstrap/scss/bootstrap";
@import "/horizon/lib/bootstrap_datepicker/datepicker.css";
@import "_variables";
@import "_accordion_nav";
@import "_inline_edit";
// Components
@import "components/resource_browser";
/* new clearfix */
.clearfix:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
* html .clearfix {
zoom: 1;
} // IE6
*:first-child+html .clearfix {
zoom: 1;
} // IE7
@font-face {
font-family: 'anivers';
src: url('../fonts/Anivers_Regular-webfont.eot');
src: url('../fonts/Anivers_Regular-webfont.eot?iefix')
format('eot'),
url('../fonts/Anivers_Regular-webfont.woff')
format('woff'),
url('../fonts/Anivers_Regular-webfont.ttf')
format('truetype'),
url('../fonts/Anivers_Regular-webfont.svg#webfont3JLVF59W')
format('svg');
font-weight: normal;
font-style: normal;
}
body {
background-color: $body-bg;
color: $text-color;
min-width: 900px;
}
small {
font-size: 11px;
}
a {
color: $link-color;
text-decoration: none;
}
a:hover,
a:focus {
color: $link-hover-color;
text-decoration: underline;
}
ul {
list-style: none;
margin: 0;
}
// Disc-styled list. This list should be used to build bullet-items lists.
.list-bullet {
list-style: disc;
}
/* Used to build compact node groups and tags tables */
.small-padding {
padding-left: 0;
padding-right: 5px;
padding-bottom: 5px;
}
dt {
font-weight: bold;
}
.topbar {
background: $gray-lighter;
// How to convert to SCSS?
//#gradient > {
// +vertical($body-bg, $gray-lighter);
//}
border-bottom: 1px solid $gray-light;
padding: 10px 0px 15px 0px;
}
.topbar .switcher_bar {
display: inline-block;
height: auto;
width: 160px;
max-width: 160px;
background-position: 140px center;
margin-bottom: 0;
margin-right: 10px;
padding: 0;
background-image: url(../img/drop_arrow.png);
background-color: $gray-lighter;
background-repeat: no-repeat;
border: 1px solid $gray-light;
border-bottom-color: darken($gray-light, 10%);
border-radius: 4px;
// How to convert to SCSS?
// @include box-shadow(inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
ul#tenant_list a {
max-width: 160px;
overflow: hidden;
text-overflow: ellipsis;
}
}
.topbar .switcher_bar a {
margin-left: 0;
display: block;
}
.topbar .switcher_bar ul {
width: 130px;
}
.topbar .switcher_bar div {
padding: 2px 10px 1px;
line-height: 20px;
color: $gray;
text-decoration: none;
overflow: hidden;
padding-right: 32px;
text-overflow: ellipsis;
}
.topbar .context-box {
display: inline;
@import "_context_selection";
}
.hide_image {
background-image: none !important;
}
#profile_editor_switcher {
width:auto;
max-width: 200px;
vertical-align: top;
white-space: nowrap;
background-image: url(../img/profile_drop.png);
background-repeat: no-repeat;
background-position: right center;
}
#user_info {
margin: auto 10px;
padding-bottom: 15px;
padding-right: 25px;
}
#user_info > a {
color: $text-color;
margin-left: 15px;
line-height: 20px;
font-size: 13px !important;
}
.page-header {
margin: 0 0 5px 0;
padding: 10px 0 5px 0;
border-bottom: 0;
font-family: anivers;
height: auto;
width: 100%;
h1 {
margin: 0;
}
}
h2 {
color: $headings-color;
font-size: 30px;
font-weight: normal;
}
/* Login Splash Page */
#splash .login {
background: url(../img/logo-splash.png) no-repeat center 35px;
position: absolute;
top: 80px;
left: 50%;
margin: 0 0 0 -195px;
padding-top: 170px;
width: 390px;
border: 1px solid $border-color;
max-height: none;
border-radius: 6px;
box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
background-clip: padding-box;
form {
.error {
width: 100%;
}
input {
width: 100%;
}
select {
width: 360px;
}
}
}
#splash p.help-block {
display: none;
}
#create_container_form .modal-footer{
margin-top: 190px;
}
.container-fluid {
padding-left: 0;
}
.sidebar {
background-color: $sidebar-background-color;
border-width: 0 6px 5px 0;
border-color: $border-color;
border-style: solid;
border-radius: 0 0 5px 0;
float: left;
min-width: 236px;
}
.sidebar h4 {
margin-left: 14px;
color: $headings-color;
}
.sidebar .nav-tabs {
margin-top: -34px;
}
.sidebar .nav-tabs li.active a {
background-color: $body-bg;
}
h1.brand {
width: 100%;
margin: 0;
}
h1.brand a {
background: url(../img/logo.png) top left no-repeat;
display: block;
float: left;
width: 216px;
height: 35px;
text-indent: -9999px;
margin-left: 16px;
}
/* Tenant Dropdown */
a.current_item {
width: 163px;
float: left;
}
a.current_item:hover {
text-decoration: none;
}
a.current_item:hover h3,
a.current_item:hover h4 {
color: $link-hover-color;
border-radius: 4px;
}
.sidebar .switcher_bar {
width: 190px;
height: 38px;
padding: 5px 0;
margin-left: 14px;
margin-bottom: 15px;
}
.sidebar .switcher_bar a.dropdown-toggle {
display: block;
padding: 5px 0;
background-image: url(../img/drop_arrow.png);
border: 1px solid #c0d9e4;
background-color: #e9f5fa;
background-repeat: no-repeat;
background-position: 167px 23px;
}
.sidebar .switcher_bar a.dropdown-toggle:hover {
text-decoration: none;
background-color: #cde8f4;
}
.sidebar .switcher_bar:focus {
outline: none;
}
.sidebar .switcher_bar {
h3 {
color: #4790ae;
font-size: 16px;
margin: -6px 0 0 14px;
padding: 0;
overflow: hidden;
text-overflow:ellipsis;
white-space: nowrap;
}
h3:hover {
white-space: normal;
overflow: visible;
text-overflow: none;
padding-right: 1em;
word-wrap: break-word;
}
}
.sidebar .switcher_bar h4 {
color: #6fabc4;
font-size: 10px;
text-transform: uppercase;
font-weight: normal;
padding: 0;
}
.sidebar .switcher_bar ul {
border: 1px solid #c0d9e4;
margin-left: -1px;
width: 190px;
}
.sidebar .switcher_bar li a:hover{
background: #92d6f1;
}
#usage {
margin-bottom: 25px;
height: 125px;
}
.usage_block {
background: #e8f8ff;
color: #84b6c5;
border: 1px solid #afe3fb;
border-radius: 5px;
float: left;
width: 29%;
margin-right: 5%;
min-height: 125px;
}
.usage_block.last {
margin-right: 0;
}
.usage_block h3 {
background: #cef0ff;
color: #4fa5bf;
font-weight: normal;
padding: 0 0 0 10px;
border-bottom: 1px solid #c6e7f5;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
}
.usage_block ul {
margin: 10px;
}
.usage_block .quantity {
font-size: 25px;
}
.usage_block li {
font-size: 11px;
margin: 0 0 15px 0;
}
.usage_block .unit{
font-size: 11px;
text-transform: uppercase;
padding: 0 0 0 1px;
}
.table-bordered {
border: none;
}
.table_header {
min-height: 35px;
padding: 5px 0;
}
.table_caption th {
background-color: transparent;
border: none;
}
.table-bordered th.table_header { border: none; }
.table-bordered tr.table_caption + tr th {
border-top: 1px solid $table-border-color;
}
.table-bordered tr.table_caption + tr th:first-child,
.table-bordered tr.table_caption + tr th.hide + th {
border-top-left-radius: 4px;
border-left: 1px solid $table-border-color;
}
.table-bordered tr.table_caption + tr th:last-child {
border-top-right-radius: 4px;
border-right: 1px solid $table-border-color;
}
.table-bordered tbody tr td:first-child,
.table-bordered tfoot tr td:first-child {
border-left: 1px solid $table-border-color;
}
.table-bordered tbody tr td:last-child,
.table-bordered tfoot tr td:last-child {
border-right: 1px solid $table-border-color;
}
.table-bordered tfoot tr td:first-child {
border-bottom: 1px solid $table-border-color;
border-bottom-left-radius: 4px;
}
.table-bordered tfoot tr td:last-child {
border-bottom: 1px solid $table-border-color;
border-bottom-right-radius: 4px;
}
.table_title h3,
.table_header h3 {
font-family: anivers;
font-weight: normal;
font-size: 24px;
margin: 0 0 5px 0;
float: left;
}
.table th.header {
cursor: pointer;
}
.table th.header:hover {
background-color: #e8e8e8;
text-decoration: underline;
}
.table tbody td.anchor a {
display: block;
}
.table tr.table_caption th.header:hover {
background-color: transparent;
cursor: default;
}
.table th.headerSortUp:hover,
.table th.headerSortDown:hover {
background-color: #dfdfdf;
}
.table th.headerSortUp,
.table th.headerSortDown {
background-color: #dfdfdf;
background-repeat: no-repeat;
background-position: 98% center;
}
.table th.headerSortDown {
background-image: url(../img/drop_arrow.png);
}
.table th.headerSortUp {
background-image: url(../img/up_arrow.png);
}
.table tr.summation td:first-child,
.table tr.summation td:last-child {
border-radius: 0;
border-bottom: 0 none;
}
.table li {
list-style-position: inside;
}
th {
background: #f1f1f1;
}
td.anchor {
padding: 0;
}
.main_nav {
list-style: none;
width: 222px;
margin: 10px 0 20px 0;
}
.main_nav a {
color: #999;
width: 185px;
padding: 10px;
display: block;
margin-left: 20px;
}
.main_nav a.active {
background: #fff;
border: 2px solid #d8d8d8;
border-right: 0;
border-bottom-color: #ccc;
}
table form {
margin-bottom: 0;
width: 1px;
}
.messages {
position: fixed;
z-index: 9999;
top: 20px;
right: 20px;
width: 300px;
.alert {
@include box-shadow(0 3px 7px rgba(0, 0, 0, 0.3));
}
.alert.alert-danger {
border-width: 1px;
border-style: solid;
border-color: darken($brand-danger, 5%);
}
.alert.alert-success {
border-width: 1px;
border-style: solid;
border-color: darken($brand-success, 5%);
}
}
.alert .alert-actions {
margin-top: -23px;
margin-right: -23px;
}
.modal > form,
.login > form,
.alert-actions > form {
margin-bottom: 0;
}
.alert p {
overflow: hidden;
word-wrap: break-word;
}
.alert p:last-child {
margin-bottom: 0;
}
#actions.single {
width: 90px;
}
.table-striped tr td {
transition: background 0.2s;
-webkit-transition: background 0.2s;
-moz-transition: background 0.2s;
-o-transition: background 0.2s;
}
.inspect {
float: left;
display: block;
margin-top: 5px;
margin-right: 25px;
}
.table {
margin-bottom: 25px;
> thead,
> tbody,
> tfoot {
> tr {
> th,
> td {
vertical-align: middle;
}
}
}
}
.table tr td {
vertical-align: middle;
}
.table tr.empty td {
text-align: center;
}
.table tfoot tr td {
border-top: 1px solid $table-border-color;
background-color: #f1f1f1;
font-size: 11px;
line-height: 14px;
}
.table_actions {
float: right;
min-width: 400px;
@extend .form-inline;
}
.table_actions .table_search,
.table_actions .table_filter {
display: inline-block;
}
.table_search {
input[type="text"] {
padding-right: 26px;
}
select {
width: auto;
}
}
.table_actions .table_actions_menu {
display: inline-block;
position: relative;
margin-left: 5px;
.dropdown-menu {
left: auto;
right: 0;
a, button {
margin-left: 0px;
padding-left: 22px;
.glyphicon {
margin-left: -14px;
}
}
}
}
td.no-transition {
-webkit-transition: none !important;
-moz-transition: none !important;
-o-transition: none !important;
-ms-transition: none !important;
transition: none !important;
}
td.success {
background-color: #dff0d8 !important;
}
td.loading {
background-color: #e6e6e6 !important;
}
.table_header .table_actions {
min-width: 0;
}
.table_header .table_actions a,
.table_header .table_actions > button,
.table_header .table_actions .table_search button {
display: inline-block;
float: none;
}
.table_header .table_actions .table_search select {
margin-bottom: 0;
line-height: 22px;
}
.table_header .table_filter {
vertical-align: bottom;
margin-right: 20px;
}
.table_header .table_filter i {
vertical-align: middle;
}
.table_actions form {
float: right;
margin-left: 10px;
}
.hidden {
display: none;
}
/*
* Bootstrap styles table backgrounds using nth-child(2n+1), which is
* oblivious to hidden elements. The styles below allow us to override
* the bootstrap style when necessary by setting the odd/even classes.
*/
.table-striped.datatable tbody {
td {
background-clip: padding-box;
}
tr.odd td {
background-color: $table-bg-odd;
}
tr.even td {
background-color: inherit;
}
tr.odd:hover td,
tr.even:hover td,
tr:hover th {
background-color: $table-bg-hover;
}
}
.table-striped tbody tr.status_unknown:nth-child(odd) td {
background-color: #ffffb5;
}
.table-striped tbody tr.status_unknown:nth-child(even) td {
background-color: #ffffc6;
}
.nowrap-col {
white-space: nowrap;
}
.overview {
font-size: 24px;
}
#monitoring {
background: $body-bg;
font-size: 14px;
height: 20px;
margin: -18px 0 25px;
padding: 10px;
border: 1px solid $border-color;
font-family: "anivers";
}
#monitoring h3 {
font-size: 14px;
font-weight: normal;
float: left;
line-height: 18px;
}
#external_links, #external_links li {
float: left;
}
#external_links li { margin: 0 0 0 15px; }
/* Formset data tables. */
.datatable {
th.narrow {
width: 1em;
}
input {
padding: 2px 5px;
margin: 0;
}
th span.required:after {
content: "*";
font-weight: bold;
line-height: 0;
padding-left: 4px;
color: $brand-primary;
}
.normal_column ul {
padding-left: 0;
}
}
/* Forms */
.datepicker input{
@extend .form-control;
}
form label {
text-align: left;
color: $gray;
font-weight: bold;
display: inline-block;
}
.modal.fullscreen .modal-dialog {
width: 90%;
margin: auto;
left: 5%;
}
.modal.loading .modal-dialog {
width: 170px;
.modal-body {
height: 170px;
}
}
.modal.loading p {
text-align: center;
position: absolute;
bottom: 0;
width: 150px;
}
.modal-body {
overflow-y: visible;
max-height: none;
}
.modal-body table {
margin-bottom: 30px;
}
.modal-body ~ hr {
margin-bottom: 0;
}
.static_page {
float: left;
> form {
margin-bottom: 0;
}
}
.left {
float: left;
width: 342px;
margin-right: 15px;
}
.left form {
margin: 0;
}
.right {
float: left;
width: 342px;
}
.clear {
clear: both;
width: 0;
height: 0;
padding: 0;
margin: 0;
}
// Fixes issue with bootstrap positioning of modal container
.modal {
top: 0 !important;
}
.modal-footer input {
width: auto;
}
.modal-body .modal-footer {
width: 670px;
margin-left: -25px;
margin-right: -15px;
}
.modal-footer a.close {
margin-top: 0;
margin-right: 5px;
font-size: $font-size-base;
line-height: $line-height-base;
color: #666;
font-weight: normal;
filter: alpha(opacity=100);
-khtml-opacity: 1;
-moz-opacity: 1;
opacity: 1;
}
.modal-footer a.close:hover {
color: #333;
text-decoration: underline;
}
.modal-body .help-block {
text-align: left;
float: left;
width: 100%;
margin-bottom: 10px;
}
#create_keypair_modal .clearfix {
margin-bottom: 115px;
}
#actions {
width: 90px;
}
#actions .btn {
margin-bottom: 5px;
}
#actions a.btn {
width: 70px;
}
#actions input.btn {
text-align: left;
}
#images #actions {
width: 100px;
}
/*New List Patches*/
.details-modal .modal-body {
padding-bottom: 20px;
}
.form-inline {
display: inline;
input, button, a.btn {
margin-left: 5px;
}
}
td.select {
width: 10px;
}
/* Actions dropdown */
.actions_column {
white-space: nowrap;
padding: 10px;
position: relative;
width: 200px;
background-clip: padding-box;
}
form.actions_column {
width: auto;
font-family: $font-family-base;
}
.actions_column .btn-group {
display: inline-block;
}
.actions_column .row_actions a,
.actions_column .row_actions input,
.actions_column .row_actions button,
div.table_actions_menu .dropdown-menu a,
div.table_actions_menu .dropdown-menu input,
div.table_actions_menu .dropdown-menu button {
background: none;
float: none;
display: block;
padding: 5px 10px;
color: $text-color;
text-align: left;
border-radius: 0;
border: 0 none;
@include box-shadow(none);
}
.actions_column .row_actions .hide {
display: none;
}
.actions_column .btn-action-required {
font-weight: bold;
}
.tab-content {
overflow: visible;
}
/* Makes size consistent across browsers when mixing "btn-group" and "small" */
.btn.hide, .btn-group .hide {
display: none;
}
.btn-group .dropdown-toggle:focus {
outline: none;
}
.dropdown-menu button {
line-height: 18px; /* Matches rule for ".dropdown-menu a" in bootstrap */
width: 100%;
}
.btn-group .dropdown-menu .btn {
border-radius: 0;
}
.dropdown-menu .btn.btn-danger,
.dropdown-menu .btn.btn-danger:hover,
.dropdown-menu .btn.btn-success,
.dropdown-menu .btn.btn-success:hover,
.dropdown-menu .btn.btn-info,
.dropdown-menu .btn.btn-info:hover {
text-shadow: none; /* remove default bootstrap shadowing from button text. */
}
.dropdown-menu li:hover {
background: none;
}
.actions_column .dropdown-menu a:hover,
.actions_column .dropdown-menu button:hover,
div.table_actions_menu .dropdown-menu a:hover,
div.table_actions_menu .dropdown-menu button:hover {
background-color: $gray-lighter;
}
.dropdown-menu .btn.btn-danger {
color: $brand-danger;
}
.dropdown-menu .btn.btn-danger:hover {
background-color: $gray-lighter;
}
/* Overrides for single-action rows (no dropdown) */
tr .actions_column ul.row_actions.single,
tr:hover .actions_column ul.row_actions.single,
.actions_column ul.row_actions.single,
.actions_column ul.row_actions.single:hover {
border: none;
}
.actions_column ul.row_actions.single li.action {
display: block;
}
.actions_column ul.row_actions.single li.action:hover {
background-color: transparent;
}
.actions_column ul.row_actions.single a,
.actions_column ul.row_actions.single input,
.actions_column ul.row_actions.single button {
color: $brand-info;
}
.actions_column ul.row_actions.single a:hover,
.actions_column ul.row_actions.single input:hover,
.actions_column ul.row_actions.single button:hover {
color: $text-color;
}
th.multi_select_column, td.multi_select_column {
width: 41px;
}
th.multi_select_column, td.multi_select_column {
text-align: center;
}
.table-fixed {
table-layout: fixed;
}
.table input[type="checkbox"] {
display: inline;
}
div.input input[type="checkbox"] {
float: left;
width: 25px;
}
.table_title a {
font-size: 11px;
float: right;
margin-left: 10px;
margin-top: 10px;
}
tr.terminated {
color: #999999;
}
#instance_tabs {
float: left;
width: 100%;
border-bottom: 1px solid #e1e1e1;
}
#instance_tabs li a {
background: #f2f2f2;
display: block;
font-size: 14px;
float: left;
padding: 5px 10px;
margin-right: 10px;
border: 1px solid #e1e1e1;
border-bottom: none;
}
#instance_tabs li.active a {
background: #fff;
padding-bottom: 8px;
margin-bottom: -5px;
}
#main_content .nav-tabs {
border-top: 1px solid $nav-tabs-border-color;
border-bottom: none;
> li {
margin-bottom: 0;
margin-top: -1px;
> a {
margin-right: 0;
border-radius: 0;
padding-top: 4px;
padding-bottom: 4px;
&:hover {
border-color: $nav-tabs-border-color $nav-tabs-link-hover-border-color $nav-tabs-link-hover-border-color;
}
}
&.active > a {
&,
&:hover,
&:focus {
font-weight: bold;
background-color: #555;
border-color: #555;
color: #fff;
}
}
}
}
#main_content .tab-content {
padding: 10px;
}
#main_content .workflow .modal-body {
padding-left: 0;
padding-right: 0;
}
#main_content .workflow .modal-body .tab-content {
border-left: 0 none;
border-right: 0 none;
border-bottom: 0 none;
}
#content_body {
padding-left: 255px;
padding-right: 25px;
}
.tab_wrapper {
padding-top: 50px;
}
/* Fix tooltip z-index to show above modals. Bootstrap bug 582*/
.tooltip {
z-index: 12000;
}
.volume_boot_disclosure {
font-weight: bold;
color: #555;
cursor: pointer;
background-image: url(../img/right_droparrow.png);
background-repeat: no-repeat;
background-position: 130px center;
}
.volume_boot_disclosure.on {
width: 334px;
margin-bottom: 10px;
border-bottom: solid 1px $border-color;
background-image: url(../img/drop_arrow.png);
}
.nav-tabs a {
cursor: pointer;
}
.nav-tabs li.error a {
color: $brand-danger;
}
.nav-tabs li.error a:after {
content: "*";
}
.nav-tabs li.required a:after,
form .form-group.required > label:after,
form .form-field.required > label:after {
content: "*";
font-weight: bold;
line-height: 0;
padding-left: 4px;
color: $brand-primary;
}
/* Region selector in header */
#region_selector {
position: absolute;
z-index: 9999;
right: 0;
top: 24px;
}
#region_selector a {
margin-left: 0;
}
#region_selector ul{
float: left;
margin-left: 5px;
padding-right: 21px;
width: 125px;
}
#region_selector ul:hover a {
display: block;
}
#region_selector li a {
padding: 3px 3px 3px 5px;
display: none;
background: #e1e1e1;
margin-top: -10px;
}
#region_selector li:first-child p{
background: #ededed url(../img/drop_arrow.png) no-repeat 106px 9px !important;
display: block;
border: 1px solid #e1e1e1;
padding: 5px;
}
iframe {
border: none;
}
.item_detail ul li label {
color: $text-color;
font-weight: bold;
display: block;
margin-top: 5px;
}
.progress_bar {
height: 100%;
width: 100%;
border: 1px solid $gray-light;
background-color: $gray-light;
}
.progress_bar_fill,
.progress_bar_selected {
height: 100%;
float: left;
}
.progress_bar_fill {
background-color: $gray;
}
.progress_bar_selected {
background-color: $brand-primary;
width: 0;
}
.progress_bar_over {
background-color: $brand-danger;
}
.d3_quota_bar {
width: 20%;
margin-bottom: 8px;
margin-top: 10px;
float: left;
text-align: center;
}
.quota-dynamic {
overflow: hidden;
margin-bottom: 8px;
}
.quota_title {
color: $gray-light;
padding-bottom: 0;
margin-bottom: 8px;
}
.quota_title strong {
color: $text-color;
}
.quota_title strong span {
font-weight: normal;
}
.quota_title p {
float: right;
margin-bottom: 0;
}
.quota_bar {
margin: -8px 0 8px;
}
div .flavor_table {
border: 1px solid $table-border-color;
width: 100%;
margin-bottom: 14px;
}
.flavor_table .flavor_name {
white-space: nowrap;
font-weight: bold;
text-align: left;
padding: 7px 12px 7px 7px;
width: 160px;
}
#main_content .row {
margin: 10px 0 20px;
}
#main_content .row:last-child {
margin-bottom: 0;
}
.version_label {
position: relative;
text-align: right;
}
.header_rule {
margin: 0 0 10px;
}
.item_detail .detail_section {
margin-bottom: 25px;
float: left;
margin-right: 50px;
}
.has-error .help-block, .dynamic-error {
padding: 10px;
}
.dynamic-error {
background: $body-bg;
border: 1px solid $border-color;
color: $brand-danger;
margin-bottom: 0.5em;
}
label.log-length {
line-height: 28px;
margin-right: 10px;
}
.progress-success.bar {
background-color: #5eb95e;
background-image: -moz-linear-gradient(top, #62c462, #57a957);
background-image: -ms-linear-gradient(top, #62c462, #57a957);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957));
background-image: -webkit-linear-gradient(top, #62c462, #57a957);
background-image: -o-linear-gradient(top, #62c462, #57a957);
background-image: linear-gradient(top, #62c462, #57a957);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0);
}
.progress_bar_fill.progress-warning.bar {
background-color: #898989;
background-image: -moz-linear-gradient(top, #999999, #333333);
background-image: -ms-linear-gradient(top, #999999, #333333);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#999999), to(#333333));
background-image: -webkit-linear-gradient(top, #999999, #333333);
background-image: -o-linear-gradient(top, #999999, #333333);
background-image: linear-gradient(top, #999999, #333333);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#999999', endColorstr='#333333', GradientType=0);
}
.progress_bar_over.bar {
background-color: #dd514c;
background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35);
background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35));
background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35);
background-image: -o-linear-gradient(top, #ee5f5b, #c43c35);
background-image: linear-gradient(top, #ee5f5b, #c43c35);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0);
}
.split_five div.form-group input[type="text"],
.split_five div.form-group select {
width: 120px;
}
.warning {
background-color: $body-bg;
border-bottom: 1px solid $brand-danger;
padding: 5px 10px;
.warning-text {
text-align: center;
h3, a {
display: inline-block;
}
h3 {
vertical-align: bottom;
}
}
}
#admin_warning_detail {
ul {
list-style: circle;
padding-left: 20px;
margin-bottom: 10px;
}
}
.no_split {
margin-top: -60px;
}
/* Capabilities widget UI */
.capabilities {
min-height: 200px;
.panel .list-group {
height: 400px;
overflow: auto;
}
/* Header */
.panel-heading .form-control {
width: 150px;
margin-left: 20px;
}
/* Item lists */
.dark-stripe {
background-color: $table-bg-odd;
}
.light-stripe {
background-color: white;
}
.list-group-item.level-0>* {
padding-left: 0px;
}
.list-group-item.level-1>* {
padding-left: 15px;
}
.list-group-item.level-2>* {
padding-left: 30px;
}
.list-group-item .leaf {
padding-left: 10px;
}
.list-group-item span.input-group-addon {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
width: 50%;
max-width: 140px;
text-align: right;
}
.list-group-item .label-info {
display: inline-block;
position: absolute;
z-index: 10;
top: 1px;
left: 25px;
max-width: 80%;
overflow: hidden;
text-overflow: ellipsis;
}
.list-group-item .label-danger {
display: inline-block;
position: absolute;
z-index: 10;
bottom: 1px;
left: 25px;
}
}
/* Membership widget UI */
.membership {
min-height: 200px;
/* Buttons */
.btn-group {
margin-left:0px;
padding: 3px 10px;
margin-bottom: 0px;
border: 1px solid $gray-light;
border-bottom: none;
}
.btn-group .active {
float: right;
}
a.btn-primary:hover {
background-color: $link-hover-color;
}
/* Header */
.help_text {
margin-left: 5px;
margin-bottom: 15px;
width: 650px;
}
.members_title {
color: $gray;
font-weight: bold;
float: left;
line-height: 30px;
width: 160px;
}
input[type="text"]:disabled + span.glyphicon-search {
color: $gray-light;
}
.fake_table_header {
background-color: $body-bg;
padding: 10px;
border: 1px solid $table-border-color;
border-bottom: none;
overflow: hidden;
}
/* 'Fake table' body */
.fake_table {
> ul {
padding: 0;
&.no_results {
border: 1px solid $table-border-color;
padding: 10px;
}
}
ul.btn-group:hover {
background-color: $border-color;
}
}
/* Member lists */
.member {
text-align: left;
line-height: 32px;
}
.members ul.btn-group,
.available_members ul.btn-group {
display: block;
&.nav-pills > li > a {
padding: 6px 11px;
}
}
.dark_stripe {
background-color: $table-bg-odd;
}
.light_stripe {
background-color: white;
}
.last_stripe {
border-bottom: 1px solid $table-border-color;
}
.has-feedback {
display: inline-block;
float: right;
margin-bottom: 0;
}
/* List filtering */
.filter {
width: 130px;
}
.form-control-feedback {
top:0;
}
/* Role dropdown menus */
.role_dropdown li {
cursor: pointer;
background: none;
float: none;
display: block;
padding: 5px 10px;
color: #000;
text-align: left;
border-radius: 0;
border: 0 none;
@include box-shadow(none);
z-index: 99999;
i {
@extend .glyphicon;
&:before { content: "\e013"; }
opacity: 0;
display: inline-block;
width: 14px;
font-size: 12px;
line-height: 14px;
vertical-align: text-top;
}
&:hover {
background-color: #cdcdcd;
}
&.selected i {
opacity: 1;
}
}
.dropdown-menu.role_dropdown {
right: 0;
left: auto;
}
.nav .role_options {
float: right;
padding-right: 5px;
}
}
/* Inline member creation */
.add_member_btn {
display: inline;
}
#add_member {
clear: both;
}
.add_member {
float: right;
margin-top: 10px;
margin-right: 15px;
}
/* Fixes overflow on dropdowns in modal */
.dropdown_fix {
overflow: visible;
}
/* Replaces CPU hungry spin.js with animated gif */
.loading_gif {
margin-right: 0.5em;
float: left;
}
/* Styling for inline object creation buttons */
.btn-inline {
margin-bottom: 9px;
}
.modal-body fieldset .form-field select[data-add-item-url] {
width: 275px;
margin-right: 2px;
}
/* Styling for draged network object */
#networkListSortContainer {
display: none;
}
.networklist {
padding: 6px;
background: #eee;
border: 1px solid $border-color;
min-height: 2em;
width: auto !important;
@include box-sizing(border-box);
li {
width: 226px;
list-style-type: none;
margin: 6px auto;
padding: 3px;
background: $body-bg;
border: 1px solid #aaa;
line-height: 18px;
border-radius: 3px;
cursor: move;
padding-left: 23px;
background: $body-bg url(../img/drag.png) no-repeat 11px 50%;
em {
font-size: 0.5em;
line-height: 1em;
color:#999;
font-style: normal;
margin-left: 0.8em;
}
i {
margin-right: 5px;
vertical-align: middle;
}
a.btn {
@include box-sizing(border-box);
font-size: 11px;
line-height: 12px;
padding: 2px 5px 3px;
margin-right: 1px;
width: 18px;
text-align: center;
right:5px;
vertical-align: middle;
float: right;
&:before {
content: "+";
}
}
}
li.ui-sortable-helper {
background-color: #def;
}
li.ui-state-highlight {
border: 1px dotted $gray-light;
background: #efefef;
height: 0.5em;
}
li:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
}
#selected_network {
margin-bottom: 1.5em;
counter-reset:v1 0;
background: #edf9ff;
border:1px solid #c0d9e4;
li {
position: relative;
a.btn:before {
content: "-";
}
}
li:before {
content:"NIC:"counter(v1);
counter-increment:v1;
display: inline-block;
margin-right: 5px;
background: $gray;
color: $body-bg;
font-size: 90%;
padding: 0px 4px;
vertical-align: middle;
border-radius: 2px;
position: absolute;
left: -2em;
}
&.dragging {
li:before {
content:"NIC:";
background-color:rgba(102,102,102,0.5);
padding-right: 10px;
}
li.ui-state-highlight:before {
content:"";
background:transparent;
}
}
}
/**** Network Topology CSS ****/
#topologyCanvasContainer {
@include box-sizing(border-box);
width: 100%;
height: auto;
padding: 25px;
padding-left: 50px;
background: #efefef;
min-height: 400px;
div.nodata {
font-size: 150%;
text-align: center;
padding-top: 150px;
display: none;
}
&.noinfo {
div.nodata {
display: block;
}
#topology_canvas {
display: none;
}
}
}
.topologyNavi {
overflow: hidden;
i {
margin-right: 3px;
}
margin: 10px 0 20px;
.toggleView {
float: left;
}
.launchButtons {
float: right;
text-align: right;
a.btn {
margin-left: 10px;
}
}
}
.topologyBalloon {
display: none;
background: $body-bg;
position: absolute;
left:100px;
top:20px;
z-index: 600;
border-radius: 5px;
color:#333;
min-width: 200px;
&.on {
display: block;
}
line-height: 1.2;
.vnc_window {
margin-left: 10px;
}
.closeTopologyBalloon {
font-size: 16px;
line-height: 1;
display: block;
position: absolute;
font-weight: bold;
right: 6px;
top: 0px;
cursor: pointer;
padding: 3px;
color:#aaa;
&:hover {
color:#777;
text-decoration: none;
}
}
.contentBody {
padding: 8px 8px 0;
}
span.active, span.down {
&:before {
content: "";
width: 9px;
height: 9px;
display: inline-block;
background: $brand-success;
margin-right: 3px;
border-radius: 10px;
vertical-align: middle;
}
}
span.down {
&:before {
background: $brand-danger;
}
}
.footer {
background: #efefef;
border-top: 1px solid $border-color;
padding: 8px;
border-radius: 0px 0px 7px 7px;
.footerInner {
display: table;
width: 100%;
}
.cell {
display: table-cell;
padding-right: 10px;
}
.link {
font-size: 12px;
}
.delete {
padding-right: 0;
text-align: right;
}
}
table.detailInfoTable {
margin-bottom: 5px;
caption {
text-align: left;
font-size: 12px;
font-weight: bold;
margin-bottom: 0px;
}
th,td {
text-align: left;
vertical-align: middle;
padding-bottom: 3px;
background: transparent;
}
th {
color: $gray-light;
padding-right: 8px;
width: 80px;
span {
vertical-align: middle;
width:80px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
display: inline-block;
}
&.device {
text-align: right;
}
}
td {
padding-right: 5px;
white-space: nowrap;
}
td.delete {
padding-right: 0;
text-align: right;
}
.btn {
line-height: 1.4;
}
}
font-size: 11px;
@include box-shadow(0px 1px 6px #777);
&:before {
border-top: 7px solid transparent;
border-bottom: 7px solid transparent;
border-right: 9px solid $border-color;
display: block;
position: absolute;
top: 30px;
left: -9px;
width: 0;
height: 0;
content: "";
}
&:after {
border-top: 6px solid transparent;
border-bottom: 6px solid transparent;
border-right: 8px solid $body-bg;
display: block;
position: absolute;
top: 31px;
left: -8px;
width: 0;
height: 0;
content: "";
}
&.leftPosition {
&:before {
border-right: none;
border-left: 9px solid $border-color;
right: -9px;
top: 30px;
left:auto;
}
&:after {
border-right: none;
border-left: 8px solid $body-bg;
right: -8px;
top: 31px;
left:auto;
}
}
}
#topologyMessages {
width:1px;
height:1px;
visibility: hidden;
position: absolute;
top: -100px;
}
.quota-heading {
font-family: anivers;
font-weight: normal;
font-size: 24px;
margin-bottom: 10px;
}
/**** Resource Topology CSS ****/
.link {
stroke: #999;
stroke-width: 1.5px;
}
.node {
cursor:pointer;
}
.node text {
font: 12px sans-serif;
}
#resource_container {
position:relative;
}
#stack_box {
position: absolute;
width: 300px;
top: 10px;
left: 10px;
}
#stack_box h3 {
font-size: 11pt;
line-height: 20px;
}
#stack_box p {
margin: 0;
font-size: 9pt;
line-height: 14px;
}
#stack_box a {
margin: 0;
font-size: 9pt;
line-height: 14px;
}
#stack_box img {
float:left;
}
#stack_box #stack_info {
float:left;
white-space:normal;
width:200px;
}
#info_box {
position: absolute;
width: 300px;
top: 100px;
left: 10px;
}
#info_box h3 {
font-size: 9pt;
line-height: 20px;
}
#info_box p {
margin: 0;
font-size: 9pt;
line-height: 14px;
}
#info_box a {
margin: 0;
font-size: 9pt;
line-height: 14px;
}
#info_box .error {
color: darken($brand-danger, 20%);
}
/* Styling for draged firewall rule object */
#ruleListSortContainer {
display: none;
}
.rulelist {
padding: 6px;
background: #eee;
border: 1px solid $border-color;
min-height: 2em;
width: auto !important;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
li {
width: 226px;
list-style-type: none;
margin: 6px auto;
padding: 3px;
background: $body-bg;
border: 1px solid $border-color;
line-height: 18px;
border-radius: 3px;
cursor: move;
padding-left: 23px;
background: $body-bg url(../img/drag.png) no-repeat 11px 50%;
em {
font-size: 0.5em;
line-height: 1em;
color:#999;
font-style: normal;
margin-left: 0.8em;
}
i {
margin-right: 5px;
vertical-align: middle;
}
a.btn {
@include box-sizing(border-box);
font-size: 11px;
line-height: 12px;
padding: 2px 5px 3px;
margin-right: 1px;
width: 18px;
text-align: center;
//position: absolute;
right:5px;
vertical-align: middle;
float: right;
&:before {
content: "+";
}
}
}
li.ui-sortable-helper {
background-color: #def;
}
li.ui-state-highlight {
border: 1px dotted $border-color;
background: #efefef;
height: 0.5em;
}
li:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
}
#selected_rule {
margin-bottom: 1.5em;
counter-reset:v1 0;
background: #edf9ff;
border:1px solid $border-color;
li {
position: relative;
a.btn {
&:before {
content: "-";
}
}
}
li:before {
content:"rule:"counter(v1);
counter-increment:v1;
display: inline-block;
margin-right: 5px;
background: $gray;
color:$body-bg;
font-size: 90%;
padding: 0px 4px;
vertical-align: middle;
border-radius: 2px;
position: absolute;
left: -2em;
}
&.dragging {
li:before {
content:"rule:";
background-color:rgba(102,102,102,0.5);
padding-right: 10px;
}
li.ui-state-highlight:before {
content:"";
background:transparent;
}
}
}
/**** Sort Indicator ****/
.tablesorter thead tr th
{
&.tablesorter-header {
cursor: pointer;
background-repeat: no-repeat;
background-position: 99% center;
background-position: right 5px center;
}
&.tablesorter-headerAsc {
background-image: url(../img/up_arrow.png);
}
&.tablesorter-headerDesc {
background-image: url(../img/drop_arrow.png);
}
}
/* Read only text fields */
.form-control[readonly], .view-credentials input {
cursor: text;
}
/**** Popover ****/
a.link-popover { cursor: default; }
a:hover.link-popover { text-decoration: none; }
.has-feedback .form-control-feedback {
top: 0;
}