/*!
 *
 */

.rating {
    color: #a9a9a9;
    margin: 0;
    padding: 0;
}
ul.rating {
    display: inline-block;
}
.rating li {
    list-style-type: none;
    display: inline-block;
    padding: 1px;
    text-align: center;
    font-weight: bold;
    cursor: pointer;
}
.rating .filled {
    color: orange;
}

.checked {
    color: orange;
}

body {
    padding-top: 55px;
    background-color: #ECEFF1; /* BLUE GREY - 50 */
}

@media (min-width: 768px) {
    body {
        padding-top: 80px;
    }
}

footer {
    margin-top: 30px;
}

a {
    cursor: pointer;
    color: #48b9c9;
}
a:hover,
a:focus {
    color: #082d62;
    text-decoration: none;
}

a.active,
a.active:hover,
a.active:focus {
    color: #082d62;
    text-decoration: none;
}

a.disabled {
    cursor: pointer;
    pointer-events: none;
}

hr {
    margin-top: 0;
    margin-bottom: 10px;
    border-top-color: rgb(220, 220, 220);
}
hr.fiware-line {
    height: 1px;
    background-color: rgb(240, 230, 040);
    border-top: 1px solid rgb(070, 185, 200);
    border-bottom: 1px solid rgb(025, 060, 105);
}

p {
    margin-bottom: 5px;
}

.text-dark-primary {
    color: rgba(0, 0, 0, 0.87);
}
.text-dark-secondary {
    color: rgba(0, 0, 0, 0.54);
}
.text-dark-disabled {
    color: rgba(0, 0, 0, 0.38);
}

.text-muted {
    color: rgb(0, 0, 0, 0.54);
}

.text-ellipsis {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.text-nowrap {
    white-space: nowrap;
}

.text-preline {
    white-space: pre-line;
}

blockquote {
    padding: 10px 15px;
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 20px;
    border-left: 4px solid rgb(230, 230, 230);
}
blockquote p {
    color: rgb(100, 100, 100);
}

.fa-fw {
    width: 1.4em;
}
.fa-fw-right {
    width: 1.4em;
    text-align: right;
}

.no-user-select {
    -webkit-user-select: none;  /* Chrome all / Safari all */
       -moz-user-select: none;     /* Firefox all */
        -ms-user-select: none;      /* IE 10+ */
            user-select: none;          /* Likely future */
}

.h2, .h3, .h4, .h5 {
    margin-top: 0;
    margin-bottom: 10px;
}

/* ===================================================================================
 * LIST - DESCRIPTION
 * =================================================================================== */

dl {
    margin-bottom: 10px;
}

dd {
    color: #5E5E5E;
}

.limit-table dd {
    overflow: hidden;
    max-height: 62px;
}
.dl-list {
    position: relative;
    display: flex;
}

.dl-list dl {
    flex-grow: 1;
}

/* Small devices (tablets, 768px and up) */
@media (max-width: 768px) {

    .dl-list {
        flex-direction: column;
    }

    .dl-list dl:not(:last-child) {
        margin-bottom: 0;
    }
}

.list-inline {
    margin: 0 0 15px;
}

.list-inline > li {
    padding: 0;
    vertical-align: top;
}

.list-inline > li + li {
    padding-left: 15px;
}

.list-inline > li > dl {
    margin-bottom: 0;
}

.inline-block {
    display: inline-block !important;
}

.inline-block > .item-text + .item-icon {
    margin-left: .6em;
}

.item-icon[ng-click] {
    cursor: pointer;
}

.label.inline-block {
    padding: .3em .6em .3em;
    margin-bottom: 5px;
}

/* ===================================================================================
 *   COMPONENT - FLEX-CONTAINER
 * =================================================================================== */

.container-flex {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
}

.spinner,
.container-spinner {
    margin-bottom: 15px;
    color: rgb(030, 060, 110);
    text-align: center;
}

/* ===================================================================================
 *   COMPONENT - TABLE
 * =================================================================================== */

.table {
    margin-bottom: 15px;
}
.table > thead > tr,
.table > tbody > tr {
    background-color: rgb(255, 255, 255);
}

.table-hover > tbody > tr:hover {
    background-color: rgb(240, 240, 240);
}

.table-selectable > tbody > tr {
    cursor: pointer;
}

.table-responsive {
    margin-bottom: 15px;
}
.table-responsive .table {
    margin-bottom: 0;
}


.table > tbody > tr.active > th,
.table > tbody > tr.active > td {
    background-color: rgb(230, 230, 230);
}

.table > tbody > tr.disabled {
    cursor: default;
    pointer-events: none;
    opacity: .6;
    background-color: rgb(240, 240, 240);
}

.alert-link-danger {
    color: #a94442;
}
a.alert-link-danger:hover,
a.alert-link-danger:focus {
    color: #843534;
}

.table > tbody > tr > th,
.table > tbody > tr > td {
    vertical-align: middle;
}

/* ===================================================================================
 *   COMPONENT - FORM-CONTROL
 * =================================================================================== */

.form-inline {
    margin-bottom: 15px;
}

label {
    display: block;
}
label > span + small {
    margin-left: 5px;
}

textarea {
    resize: none;
}

.form-control {
    padding: 6px 12px;
    height: initial;
    border-color: rgb(200, 200, 200);
    border-radius: 0;
    box-shadow: none;
}

input[type="date"].form-control {
    line-height: 20px;
    padding: 5px 12px;
}

select.form-control {
    padding-top: 7px;
    padding-bottom: 7px;
}

@media (min-width: 768px) {
    .form-inline > .form-group > label {
        margin-right: 10px;
    }

    .form-inline > .form-group + .form-group {
        margin-left: 5px;
    }
}

.form-group > .btn + .btn {
    margin-left: 5px;
}

.form-group > .input-group + .input-group {
    margin-top: 5px;
}

.input-group .form-control:focus,
.input-group .form-control:active {
    z-index: 3;
}

/* ===================================================================================
 *   COMPONENT - BUTTON
 * =================================================================================== */

.input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
    z-index: 3;
}

.btn {
    padding: 6px 12px;
    border-radius: 2px;
}
.btn:active,
.btn.active {
    -webkit-box-shadow: none;
            box-shadow: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus {
    outline: none;
}
.btn[disabled],
.btn.disabled {
    cursor: pointer;
    pointer-events: none;
    opacity: 0.65;
}

.btn .item-icon {
    display: inline-block;
    width: 1.4em;
    text-align: center;
}
.btn .item-icon + .item-text {
    margin-left: 5px;
}

.btn .item-text + .item-icon {
    text-align: right;
}

.btn.z-depth-0 {
    box-shadow: none !important;
}

.btn-xs,
.btn-group-xs > .btn {
    padding: 2px 6px;
}

.btn-xs .item-icon + .item-text,
.btn-group-xs > .btn .item-icon + .item-text {
    margin-left: 2px;
}

/* ===================================================================================
 *   COMPONENT - BUTTON DEFAULT
 * =================================================================================== */

.btn-default {
    color: rgba(0,0,0,0.87);
    background-color: #FFFFFF;
    border-color: #BDBDBD;
}
.btn-default:not(.z-depth-0) {
    border-color: #FFFFFF;
}
.btn-default:hover,
.btn-default:focus {
    color: rgba(0,0,0,0.87);
    background-color: #BDBDBD;
    border-color: #BDBDBD;
}
.btn-default:active,
.btn-default:active:hover,
.btn-default:active:focus,
.btn-default.active,
.btn-default.active:hover,
.btn-default.active:focus {
    color: rgba(255,255,255,0.87);
    background-color: #082d62;
    border-color: #082d62;
}
.btn-default.disabled,
.btn-default[disabled] {
    color: rgba(0,0,0,0.87);
    background-color: #EEEEEE;
    border-color: #EEEEEE;
}

/* ===================================================================================
 *   COMPONENT - BUTTON PRIMARY
 * =================================================================================== */

.btn-primary {
    color: rgba(255,255,255,0.87);
    background-color: #003d8c;
    border-color: #003d8c;
}
.btn-primary:hover,
.btn-primary:focus {
    color: rgba(255,255,255,0.87);
    background-color: #082d62;
    border-color: #082d62;
}
.btn-primary:active,
.btn-primary:active:hover,
.btn-primary:active:focus,
.btn-primary.active,
.btn-primary.active:hover,
.btn-primary.active:focus {
    color: rgba(255,255,255,0.87);
    background-color: #082d62;
    border-color: #082d62;
}
.btn-primary.disabled,
.btn-primary[disabled] {
    color: rgba(255,255,255,0.87);
    background-color: #003d8c;
    border-color: #003d8c;
}

/* ===================================================================================
 *   COMPONENT - BUTTON SUCCESS
 * =================================================================================== */

.btn-success {
    color: rgb(255,255,255);
    background-color: #4CAF50;
    border-color: #4CAF50;
}
.btn-success:hover,
.btn-success:focus {
    color: rgba(255,255,255,0.87);
    background-color: #388E3C;
    border-color: #388E3C;
}
.btn-success:active,
.btn-success:active:hover,
.btn-success:active:focus,
.btn-success.active,
.btn-success.active:hover,
.btn-success.active:focus {
    color: rgba(255,255,255,0.87);
    background-color: #388E3C;
    border-color: #388E3C;
}
.btn-success.disabled,
.btn-success[disabled] {
    color: rgb(255,255,255);
    background-color: #4CAF50;
    border-color: #4CAF50;
 }

/* ===================================================================================
 *   COMPONENT - BUTTON WARNING
 * =================================================================================== */

.btn-warning {
    color: #FFF;
    background-color: #FF9800;
}

.btn-warning:hover,
.btn-warning:focus {
    color: #FFF;
    background-color: #FB8C00;
}
.btn-warning:active,
.btn-warning:active:hover,
.btn-warning:active:focus,
.btn-warning.active,
.btn-warning.active:hover,
.btn-warning.active:focus {
    color: #FFF;
    background-color: #F57C00;
}
.btn-warning.disabled,
.btn-warning[disabled] {
    color: #FFF;
    background-color: #FF9800;
}

.btn-circle {
    border-radius: 50%;
}

.pull-right > .btn + .btn-group {
    margin-left: 5px;
}

.btn-icon {
    border-radius: 50%;
    padding: 0;
    border-width: 0;
    text-align: center;
}
.btn-icon.btn-sm {
    width: 30px;
    height: 30px;
    line-height: 30px;
}

.btn-icon + .btn-icon {
    margin-left: 5px;
}

/* ===================================================================================
 *   COMPONENT - BUTTON TOOLBAR
 * =================================================================================== */

.btn-toolbar {
    margin: 0 0 10px;
}
.btn-toolbar > .btn-group {
    margin-left: 0;
}
.btn-toolbar > .btn-group + .btn-group,
.btn-toolbar > .row > .btn-group{
    margin-left: 5px;
}

.btn-group-responsive .btn:not(.active) > .item-text {
    display: none;
}

.btn-group .btn + .btn {
    margin-left: 0;
}

.toolbar-container {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 20px;
}

.toolbar-container > .z-depth-1:first-child {
    margin-right: auto;
}

@media (max-width: 565px) {
    .toolbar-container {
        flex-wrap: wrap;
    }

    .toolbar-container::after {
        content: '';
        width: 100%;
    }

    .search-bar:nth-of-type(2), .catalog-bar:nth-of-type(3) {
        order: 3;
        flex-grow: 1;
        margin-top: 5px;
        margin-left: 0 !important;
    }

    .search-bar:nth-of-type(3), .catalog-bar:nth-of-type(4) {
        order: 4;
        margin-top: 5px;
    }
}

/* ===================================================================================
 *   COMPONENT - DROPDOWN-MENU
 * =================================================================================== */

.dropdown-menu {
    min-width: 240px;
    padding: 0;
    background-color: #FFFFFF;
    border-width: 0;
    border-radius: 0;
}

.dropdown-menu.org-menu {
    display: block;
    top: -48px;
    right: 240px !important;
}

/* ===================================================================================
 *   COMPONENT - DROPDOWN-MENU ITEM
 * =================================================================================== */

.dropdown-menu-item {
    display: block;
    padding: 8px 15px;
    line-height: 20px;
    color: #4C4C4C;
}
.dropdown-menu-item:first-child {
    margin-top: 10px;
}
.dropdown-menu-item:last-child {
    margin-bottom: 10px;
}

a.dropdown-menu-item:focus {
    color: #4C4C4C;
    background-color: rgba(0, 0, 0, 0.075);
    outline: none;
}
a.dropdown-menu-item:hover {
    color: #000;
    background-color: rgba(0, 0, 0, 0.075);
}

.dropdown-menu-item > .item-icon {
    width: 1.4em;
    text-align: center;
}
.dropdown-menu-item > .item-icon + .item-text {
    margin-left: 5px;
}

/* ===================================================================================
 *   COMPONENT - DROPDOWN-MENU HEADER
 * =================================================================================== */

.dropdown-header {
    padding: 10px 15px;
    margin: 0 0 10px;
    font-size: 14px;
    font-weight: bold;
    line-height: 20px;
    color: rgba(0,0,0,0.54);
    text-align: center;
    text-transform: uppercase;
    border-bottom: 1px solid rgb(230, 230, 230);
}

.dropdown-toggle > .fa-stack + span {
    margin-left: 5px;
    vertical-align: middle;
}

.dropdown-menu .divider {
    margin: 0 0;
}

/* ===================================================================================
 *   COMPONENT - DROPDOWN-MENU AVATAR
 * =================================================================================== */

.dropdown-avatar {
    padding: 10px 15px;
    color: rgba(255,255,255,0.87);
    text-align: center;
    background-color: #546E7A; /*BLUE GREY - 600 */
}

.dropdown-avatar > .fa-stack > .fa-stack-1x {
    color: #546E7A; /*BLUE GREY - 600 */
}

.dropdown-avatar > .title {
    margin-bottom: 0;
}

.dropdown-avatar + .dropdown-menu-item {
    margin-top: 10px;
}

/* ===================================================================================
 *   COMPONENT - DROPDOWN-MENU - ALERT
 * =================================================================================== */

.dropdown-menu > .alert {
    margin-bottom: 10px;
    border-width: 0;
    white-space: nowrap;
}

.dropdown-menu > .btn-group {
    margin-top: 10px;
    padding: 0 10px 10px;
}

/* ===================================================================================
 *   COMPONENT - NAV-TABS
 * =================================================================================== */

.nav > li.disabled > a {
    cursor: pointer;
    pointer-events: none;
}

.nav-tabs {
    margin-bottom: 15px;
    border-bottom-color: rgb(220, 220, 220);
}

.nav-tabs > li > a:hover,
.nav-tabs > li > a:focus {
    background-color: rgb(252, 252, 252);
    border-color: rgb(252, 252, 252) rgb(252, 252, 252) rgb(220, 220, 220);
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    color: rgb(250, 120, 040);
    background-color: rgb(255, 255, 255);
    border-color: rgb(220, 220, 220);
    border-bottom-color: transparent;
}

/* ===================================================================================
 *   COMPONENT - NAV-PILLS
 * =================================================================================== */

.nav-pills {
    margin-bottom: 20px;
}

.panel > .nav-pills {
    margin-bottom: 0;
}

.nav-pills > li > a {
    padding: 10px 15px;
    margin: 0;
    color: rgba(0,0,0,0.87);
    background-color: #FFFFFF;
    border: 0 solid rgb(220, 220, 220);
    border-radius: 0;
}
.nav-pills > li > a:hover,
.nav-pills > li > a:focus {
    color: #48b9c9;
    background-color: #FFFFFF;
    border-color: #48b9c9;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
    color: #082d62;
    background-color: #FFFFFF;
    border-color: #082d62;
}

.nav-pills > li > a {
    border-bottom-width: 2px;
}

/* ===================================================================================
 *   COMPONENT - NAV-PILLS RESPONSIVE
 * =================================================================================== */

.nav-pills.nav-responsive > li {
    display: table-cell;
    float: none;
    width: 1%;
    text-align: center;
}

.nav-pills.nav-responsive > li + li {
    margin-left: 0;
}

.nav-pills.nav-responsive > li > a {
    border-right-width: 0;
    border-bottom-width: 2px;
}

.nav-pills.nav-responsive > li > a > .item-text {
    display: block;
}

.panel > .nav-pills.nav-responsive > li > a {
    margin-right: 0;
    margin-bottom: -1px;
}

@media (min-width: 992px) {
    .nav-pills.nav-responsive > li {
        display: block;
        width: 100%;
        text-align: left;
    }

    .nav-pills.nav-responsive > li > a {
        border-right-width: 3px;
        border-bottom-width: 0;
    }

    .nav-pills.nav-responsive > li > a > .item-text {
        display: inline;
    }

    .panel > .nav-pills.nav-responsive > li > a {
        margin-right: -1px;
        margin-bottom: 0;
    }
}

.nav-pills.nav-stacked > li > a {
    border-right-width: 3px;
    border-bottom-width: 0;
}
.nav-pills.nav-stacked > li + li {
    margin-top: 0;
}

.nav-pills.nav-router > li > a {
    padding: 0;
    border-width: 0;
}
.nav-pills.nav-router > li > a > .item-icon-container,
.nav-pills.nav-router > li > a > .item-text {
    display: table-cell;
    padding: 10px 12px;
}
.nav-pills.nav-router > li > a.h4 > .item-icon-container,
.nav-pills.nav-router > li > a.h4 > .item-text {
    padding-top: 12px;
    padding-bottom: 12px;
}

.nav-pills.nav-router > li > a > .item-icon-container {
    text-align: center;
}
.nav-pills.nav-router > li > a > .item-text {
    width: 100%;
}

.nav-pills.nav-router > li > a.bg-view1 > .item-icon-container,
.nav-pills.nav-router > li > a.bg-view1:hover,
.nav-pills.nav-router > li > a.bg-view1:focus,
.nav-pills.nav-router > li.active > a.bg-view1,
.nav-pills.nav-router > li.active > a.bg-view1:hover,
.nav-pills.nav-router > li.active > a.bg-view1:focus {
    color: rgb(255, 255, 255);
    background-color: rgb(025, 060, 110);
}

.nav-pills.nav-router > li > a.bg-view2 > .item-icon-container,
.nav-pills.nav-router > li > a.bg-view2:hover,
.nav-pills.nav-router > li > a.bg-view2:focus,
.nav-pills.nav-router > li.active > a.bg-view2,
.nav-pills.nav-router > li.active > a.bg-view2:hover,
.nav-pills.nav-router > li.active > a.bg-view2:focus {
    color: rgb(255, 255, 255);
    background-color: rgb(070, 185, 200);
}

.nav-pills.nav-router > li > a.bg-view3 > .item-icon-container,
.nav-pills.nav-router > li > a.bg-view3:hover,
.nav-pills.nav-router > li > a.bg-view3:focus,
.nav-pills.nav-router > li.active > a.bg-view3,
.nav-pills.nav-router > li.active > a.bg-view3:hover,
.nav-pills.nav-router > li.active > a.bg-view3:focus {
    color: rgb(255, 255, 255);
    background-color: rgb(255, 125, 45);
}

.nav-pills.nav-router > li > a.bg-view4 > .item-icon-container,
.nav-pills.nav-router > li > a.bg-view4:hover,
.nav-pills.nav-router > li > a.bg-view4:focus,
.nav-pills.nav-router > li.active > a.bg-view4,
.nav-pills.nav-router > li.active > a.bg-view4:hover,
.nav-pills.nav-router > li.active > a.bg-view4:focus {
    color: rgb(025, 060, 110);
    background-color: rgb(255, 230, 22);
}

/* ===================================================================================
 *   COMPONENT - NAV-STEPS
 * =================================================================================== */

.nav-steps {
    margin-bottom: 15px;
}
.nav-steps > li {
    display: table-cell;
    width: 1%;
    text-align: center;
}
.nav-steps > li > a {
    color: rgb(070, 070, 070);
}
.nav-steps > li > a:hover,
.nav-steps > li > a:focus {
    color: rgb(070, 180, 200);
    background-color: rgb(250, 250, 250);
}
.nav-steps > li.active > a,
.nav-steps > li.active > a:hover,
.nav-steps > li.active > a:focus {
    color: rgb(255, 255, 255);
    background-color: rgb(030, 060, 110);
}

.nav-steps > li > a > .item-icon + .item-text {
    margin-left: 5px;
}

@media (min-width: 992px) {
    .nav-steps > li {
        display: block;
        width: 100%;
        text-align: left;
    }
}

.nav-justified > li {
    display: table-cell;
    width: 1%;
}

.nav-pills > li > a > .item-icon {
    width: 1.4em;
    text-align: center;
}
.nav-pills > li > a > .item-icon + .item-text {
    margin-left: 5px;
}


.z-depth-1 {
    box-shadow: 0 1.5px 4px rgba(0, 0, 0, 0.24), 0 1.5px 6px rgba(0, 0, 0, 0.12) !important;
}

.z-depth-2 {
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.23), 0 3px 12px rgba(0, 0, 0, 0.16) !important;
}

.z-depth-3 {
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.23), 0 10px 40px rgba(0, 0, 0, 0.19) !important;
}

.z-depth-4 {
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.22), 0 14px 56px rgba(0, 0, 0, 0.25) !important;
}

.z-depth-5 {
    box-shadow: 0 15px 24px rgba(0, 0, 0, 0.22), 0 19px 76px rgba(0, 0, 0, 0.3) !important;
}

.z-depth-1-bottom {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.16);
}

/* ===================================================================================
 *   COMPONENT - NAVBAR
 * =================================================================================== */

.navbar-right {
    float: right;
    margin-right: -10px;
}
.navbar-right .dropdown-menu {
    right: 0;
    left: auto;
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .navbar-right {
        margin-right: 0;
    }
}

/* ===================================================================================
 *   COMPONENT - NAVBAR HEADER
 * =================================================================================== */

.container > .navbar-header {
    position: relative;
    margin: 0;
    margin-left: -10px;
    float: left;
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .container > .navbar-header {
        margin-left: 0;
    }
}

/* ===================================================================================
 *   COMPONENT - NAVBAR HEADER - BRAND
 * =================================================================================== */

.navbar-brand {
    height: 50px;
    padding: 10px 0;
}
.navbar-brand > img {
    height: 50px;
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .navbar > .container .navbar-brand {
        margin-left: 0;
    }
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .navbar > .container .navbar-brand {
        height: 64px;
    }
    .navbar-brand img {
        height: 44px;
    }
}

/* ===================================================================================
 *   COMPONENT - NAVBAR HEADER - TOGGLE
 * =================================================================================== */

.navbar-toggle {
    padding: 13px 8px;
    margin: 5px 0;
    border-width: 0;
    border-radius: 0;
}

/* ===================================================================================
 *   COMPONENT - NAVBAR TEXT
 * =================================================================================== */

.navbar-text {
    float: left;
    margin-left: 8px;
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .navbar-text {
        font-size: 24px;
        line-height: 1.1;
        margin-top: 19px;
        margin-bottom: 19px;
    }
}

/* ===================================================================================
 *   COMPONENT - NAVBAR NAV
 * =================================================================================== */

.navbar-nav {
    margin: 0;
    margin-right: -10px;
}

.navbar-nav > li {
    float: left;
}
.navbar-nav > li > a {
    margin: 5px 0;
    padding: 10px 8px;
}

.navbar-nav > li > a.has-stack {
    padding: 6px 8px;
}

.navbar-nav > li > a > .item-icon {
    position: relative;
    vertical-align: baseline;
}
.navbar-nav > li > a > .item-icon + .item-text {
    padding-left: 5px;
}

.navbar-nav > li > .dropdown-menu {
    margin-top: 2px;
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .navbar-nav > li > a {
        padding: 17px 12px;
    }
    .navbar-nav > li > a.has-stack {
        padding: 13px 12px;
    }
}

/* ===================================================================================
 *   COMPONENT - NAVBAR BTN
 * =================================================================================== */

.navbar-btn {
    margin-top: 8px;
    margin-bottom: 8px;
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .navbar-btn {
        margin-top: 17px;
        margin-bottom: 17px;
    }
}

/* ===================================================================================
 *   COMPONENT - NAVBAR DEFAULT
 * =================================================================================== */

.navbar-default {
    background-color: #EEEEEE; /* GREY - 200 */
}

.navbar-default .navbar-text {
    color: rgba(0,0,0,0.54);
}

.navbar-default .navbar-nav > li > a {
    color: rgba(0,0,0,0.87);
}

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus,
.navbar-default .navbar-nav > li.active > a,
.navbar-default .navbar-nav > li.active > a:hover,
.navbar-default .navbar-nav > li.active > a:focus,
.navbar-default .navbar-nav > li.open > a,
.navbar-default .navbar-nav > li.open > a:hover,
.navbar-default .navbar-nav > li.open > a:focus {
    color: rgba(0,0,0,0.87);
    background-color: #E0E0E0; /* GREY - 300 */
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: #E0E0E0; /* GREY - 300 */
}

.navbar-default .navbar-toggle .icon-bar {
    background-color: rgba(0,0,0,0.87);
}

/* ===================================================================================
 *   COMPONENT - NAVBAR FIXED-TOP
 * =================================================================================== */

.navbar-fixed-top {
    border-bottom-width: 0;
}

/* ===================================================================================
 *   COMPONENT - NOTIFICATION
 * =================================================================================== */

.container {
    position: relative;
}

.alert-group {
    position: fixed;
    z-index: 100;
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .alert-group {
        left: 50%;
        -webkit-transform: translateX(-50%);
           -moz-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
             -o-transform: translateX(-50%);
                transform: translateX(-50%);
    }
}

.alert-group .alert {
    display: inline-block;
}

.alert-success {
    color: rgba(0,0,0,0.87);
    background-color: #C8E6C9;
    border-color: #66BB6A;
}

.alert-danger {
    background-color: #FFCDD2;
    border-color: #E57373;
}

.panel-info > .panel-heading {
    color: rgba(255,255,255,0.87);
    background-color: #29B6F6;
    border-color: #29B6F6;
}

.panel-success > .panel-heading {
    color: rgba(255,255,255,0.87);
    background-color: #66BB6A;
    border-color: #66BB6A;
}

.panel-warning > .panel-heading {
    color: rgba(255,255,255,0.87);
    background-color: #FFA726;
    border-color: #FFA726;
}

/* ===================================================================================
 *   COMPONENT - BREADCRUMB
 * =================================================================================== */

.breadcrumb {
    background-color: #F5F5F5;
}
.breadcrumb,
.breadcrumb-triangle {
    display: inline-block;
    padding: 0;
    background-color: #F5F5F5;
    border-radius: 2px;
}

.breadcrumb > li > a {
    display: inline-block;
    padding: 10px 15px;
}
.breadcrumb > li > a:first-child {
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}
.breadcrumb > li > a:last-child {
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

.breadcrumb > li + li:before {
    display: inline-block;
    padding: 0;
    content: "\f101";
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    color: rgba(0,0,0,0.54);
}

.breadcrumb > li > a > .item-icon + .item-text {
    margin-left: 5px;
}

.breadcrumb-triangle:after {
    display: table;
    content: "";
    clear: both;
}

.breadcrumb-triangle > a {
    position: relative;
    display: block;
    float: left;
    padding: 7px 15px 7px 25px;
    background-color: rgb(255, 255, 255);
    border-radius: 0;
}
.breadcrumb-triangle > a:first-child {
    padding-left: 15px;
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}
.breadcrumb-triangle > a:last-child {
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

.breadcrumb-triangle > a:after {
    position: absolute;
    content: "";
    z-index: 1;
    top: 0px;
    right: -17px;
    background-color: rgba(0, 0, 0, 0);
    border: 17px solid rgb(255, 255, 255);
    border-left-color: rgba(0, 0, 0, 0);
    border-bottom-color: rgba(0, 0, 0, 0);
    transform: scale(0.7) rotate(45deg);
}
.breadcrumb-triangle > a:last-child:after {
    content: none;
}

.breadcrumb-triangle > a > .item-icon {
    width: 1.4em;
    text-align: center;
}
.breadcrumb-triangle > a > .item-icon + .item-text {
    margin-left: 5px;
}

.breadcrumb-triangle > a.active {
    color: rgb(255, 255, 255);
    background-color: rgb(030, 060, 110);
}

/* ===================================================================================
 *   COMPONENT - PAGER
 * =================================================================================== */

.pager {
    margin: 0 0 15px;
}
.pager > li > a {
    padding: 5px 15px;
    color: rgb(030, 060, 110);
    background-color: rgb(255, 255, 255);
    border-color: rgb(200, 200, 200);
    border-radius: 0;
}
.pager > li > a:hover,
.pager > li > a:focus {
    color: rgb(070, 180, 200);
    background-color: rgb(252, 252, 252);
    border-color: rgb(070, 180, 200);
}
.pager > li.disabled > a,
.pager > li.disabled > a:hover,
.pager > li.disabled > a:focus {
    cursor: pointer;
    pointer-events: none;
    color: rgb(210, 210, 210);
    background-color: rgb(252, 252, 252);
    border-color: rgb(210, 210, 210);
}

/* ===================================================================================
 *   COMPONENT - LABEL
 * =================================================================================== */

.label-primary {
    background-color: rgb(010, 060, 140);
}

.label-single {
    background-color: rgb(020, 150, 190);
}

.label-bundle {
    background-color: rgb(040, 150, 120);
}

.label-relationship {
    background-color: #FF5722;
}

.label + .label {
    margin-left: 5px;
}

.label > .item-icon + .item-text {
    margin-left: 5px;
}

.item-category,
.item-parentcategory {
    display: inline-block;
    padding: .3em .6em .3em;
}

.item-category {
    background-color: #003d8c;
}
a.item-category:hover,
a.item-category:focus {
    background-color: #082d62;
}

.item-parentcategory {
    color: #48b9c9;
    background-color: rgb(240, 240, 240);
}
a.item-parentcategory:hover,
a.item-parentcategory:focus {
    color: #082d62;
    background-color: rgb(240, 240, 240);
}

/* ===================================================================================
 *   COMPONENT - LIFECYCLE-STATUS
 * =================================================================================== */

.status-item > .item-icon {
    position: relative;
    display: inline-block;
    padding: 5px;
    border-radius: 50%;
}
.status-item > .item-icon + .item-text {
    margin-left: 5px;
}

.status-group {
    margin-bottom: 15px;
}
.status-group > .status-item {
    position: relative;
    display: table-cell;
    width: 1%;
    text-align: center;
    cursor: default;
    pointer-events: none;
}
.status-group > .status-item:before {
    position: absolute;
    display: block;
    content: " ";
    top: 10px;
    width: 100%;
    height: 1px;
}

.status-group > .status-item > .item-icon {
    vertical-align: middle;
    padding: 3px;
}
.status-group > .status-item > .item-icon + .item-text {
    display: block;
}

.status-group > .status-item:before,
.status-group > .status-item > .item-icon {
    background-color: rgb(200, 200, 200);
}

.status-group > .status-item.active > .item-icon {
    padding: 5px;
}

.status-group > .status-item.enabled + .status-item {
    cursor: pointer;
    pointer-events: initial;
}
.status-group > .status-item.enabled + .status-item:hover > .item-icon {
    padding: 5px;
}

.status-group > .status-item.enabled + .status-item:before,
.status-group > .status-item.enabled + .status-item > .item-icon {
    opacity: 0.8;
}
.status-group > .status-item.enabled + .status-item:hover:before,
.status-group > .status-item.enabled + .status-item:hover > .item-icon {
    opacity: 1;
}

.status-group > .status-active.active:before,
.status-group > .status-active.active > .item-icon,
.status-active > .item-icon {
    background-color: rgb(090, 190, 220);
}

.status-group > .status-created.active:before,
.status-group > .status-launched.active:before,

.status-group > .status-created.active > .item-icon,
.status-group > .status-launched.active > .item-icon,

.status-group > .status-item.enabled + .status-created:before,
.status-group > .status-item.enabled + .status-launched:before,

.status-group > .status-item.enabled + .status-created > .item-icon,
.status-group > .status-item.enabled + .status-launched > .item-icon,

.status-created > .item-icon,
.status-launched > .item-icon {
    background-color: rgb(090, 180, 090);
}

.status-group > .status-retired.active:before,
.status-group > .status-retired.active > .item-icon,
.status-group > .status-item.enabled + .status-retired:before,
.status-group > .status-item.enabled + .status-retired > .item-icon,
.status-retired > .item-icon {
    background-color: rgb(240, 170, 080);
}

.status-group > .status-obsolete.active:before,
.status-group > .status-obsolete.active > .item-icon,
.status-group > .status-item.enabled + .status-obsolete:before,
.status-group > .status-item.enabled + .status-obsolete > .item-icon,
.status-obsolete > .item-icon {
    background-color: rgb(120, 120, 120);
}

/* ===================================================================================
 *   COMPONENT - ALERT
 * =================================================================================== */

.alert {
    position: relative;
    margin-bottom: 10px;
    border-radius: 2px;
}
.alert > .close {
    margin-left: 5px;
    margin-right: -5px;
    font-size: 14px;
    line-height: 20px;
}

/* ===================================================================================
 *   COMPONENT - LIST-GROUP
 * =================================================================================== */

.list-group {
    margin-bottom: 15px;
}
.list-group.list-group-bordered {
    background-color: rgb(245, 245, 245);
    border: 1px solid rgb(220, 220, 220);
}

.list-group-column {
    display: flex;
    flex-flow: column wrap;
}

.list-group-header {
    padding: 10px 15px;
    margin: 0 0;
    color: rgb(120, 120, 120);
}

.list-group-item,
.list-group-item:first-child,
.list-group-item:last-child {
    border-radius: 0;
}

.list-group-item .item-icon {
    width: 1.4em;
}

.list-group-item + hr {
    margin-top: 15px;
}

.list-group-spinner {
    padding: 10px 15px;
    color: rgb(030, 060, 110);
    text-align: center;
}

/* ===================================================================================
 *   COMPONENT - LIST-GROUP - LINKED ITEMS
 * =================================================================================== */

a.list-group-item {
    margin-bottom: 0;
    color: rgb(050, 050, 050);
    background-color: rgb(245, 245, 245);
    border-width: 0;
    border-right: 3px solid transparent;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

a.list-group-item:hover,
a.list-group-item:focus {
    color: rgb(070, 180, 200);
    background-color: rgb(255, 255, 255);
    border-color: rgb(070, 180, 200);
}

a.list-group-item.active,
a.list-group-item.active:hover,
a.list-group-item.active:focus {
    color: rgb(030, 060, 110);
    background-color: rgb(255, 255, 255);
    border-color: rgb(030, 060, 110);
}

a.list-group-item.has-badge {
    padding-right: 30px;
}

a.list-group-item > .badge-status:empty {
    display: inline-block;
}
a.list-group-item > .badge-status {
    position: absolute;
    top: 15px;
    right: 10px;
    padding: 5px 5px;
    border-radius: 50%;
}

.list-group-column > a.list-group-item {
    width: 25%;
}

/* ===================================================================================
 *   COMPONENT - LIST-GROUP - OPTIONS
 * =================================================================================== */

.item-toggle {
    padding: 0 0;
    margin-bottom: 15px;
}
.item-toggle .toggle {
    position: relative;
    display: block;
    cursor: pointer;
    padding: 10px 0;
    padding-right: 35px;
    margin-bottom: 0;
    font-weight: bold;
    background-color: rgb(255, 255, 255);
}
.item-toggle .toggle .track {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0%, -50%);
}

.item-toggle > .toggle + .list-group {
    margin-bottom: 0;
}
.item-toggle > .toggle + .list-group > .list-group-item {
    border-right: none;
    border-left: none;
}
.item-toggle > .toggle + .list-group > .list-group-item:last-child {
    border-bottom: none;
}

.toggle .track input {
    display: none;
}

.toggle .track input + .fa:before {
    content: "\f204";
    color: rgb(120, 120, 120);
}
.toggle .track input:checked + .fa:before {
    content: "\f205";
    color: rgb(060, 120, 060);
}

.item-checkbox {
    padding: 0 0;
    -webkit-user-select: none;  /* Chrome all / Safari all */
       -moz-user-select: none;     /* Firefox all */
        -ms-user-select: none;      /* IE 10+ */
            user-select: none;          /* Likely future */
}
.item-checkbox .checkbox {
    position: relative;
    display: block;
    cursor: pointer;
    padding: 0 10px;
    padding-left: 40px;
    margin-top: 0;
    margin-bottom: 0;
    font-weight: normal;
    background-color: rgb(255, 255, 255);
}
.item-checkbox .checkbox .track {
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translate(0%, -50%);
}

.checkbox .track input {
    display: none;
}
.checkbox .track input + .fa:before {
    content: "\f096";
    color: rgb(120, 120, 120);
}
.checkbox .track input:checked + .fa:before {
    content: "\f046";
    color: rgb(060, 120, 060);
}

.item-radio {
    padding: 0 0;
    -webkit-user-select: none;  /* Chrome all / Safari all */
       -moz-user-select: none;     /* Firefox all */
        -ms-user-select: none;      /* IE 10+ */
            user-select: none;          /* Likely future */
}
.item-radio .radio {
    position: relative;
    display: block;
    cursor: pointer;
    padding: 0 10px;
    padding-left: 40px;
    margin-top: 0;
    margin-bottom: 0;
    font-weight: normal;
}
.item-radio .radio .track {
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translate(0%, -50%);
}

.radio .track input {
    display: none;
}
.radio .track input + .fa:before {
    content: "\f1db";
    color: rgb(120, 120, 120);
}
.radio .track input:checked + .fa:before {
    content: "\f192";
    color: rgb(060, 120, 060);
}

.item-radio.readonly {
    cursor: pointer;
    pointer-events: none;
}

/* ===================================================================================
 *   COMPONENT - THUMBNAIL
 * =================================================================================== */

.thumbnail {
    position: relative;
    padding: 2px;
    margin-bottom: 10px;
    border-color: rgb(210, 210, 210);
    border-radius: 0;
}
.thumbnail > img {
    position: relative;
    top: 50%;
    max-height: 100%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
}

.thumbnail-45px {
    width: 45px;
    height: 45px;
    margin-bottom: 0;
}
.thumbnail-circle {
    border-radius: 50%;
}

a.thumbnail:hover:after,
a.thumbnail:focus:after {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
}

a.thumbnail:hover,
a.thumbnail:focus {
    border-color: rgba(0, 0, 0, 0.6);
}

.thumbnail-lg {
    height: 180px;
}

/* ===================================================================================
 *   COMPONENT - PANEL
 * =================================================================================== */

.panel {
    margin-bottom: 10px;
    border-width: 0;
    border-radius: 2px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.16);
}

.panel-heading {
    position: relative;
    border-radius: 0;
}

.panel-heading.panel-product {
    background-color: rgb(255, 255, 255);
}

.panel-heading:last-child {
    border-bottom-width: 0;
}
.panel-heading > .h3,
.panel-heading > .h4 {
    margin-bottom: 0;
}
.panel-heading > .list-inline {
    margin-bottom: 0;
}

.panel-body {
    padding-bottom: 0;
    border-radius: 0;
}

.panel-subtitle {
    display: block;
    font-size: 90%;
    line-height: 20px;
}

.panel-options {
    margin-top: 5px;
}
.panel-options.static-right {
    position: absolute;
    top: 15px;
    right: 15px;
    margin-top: 0;
}

.panel > .btn-group {
    padding: 0 10px 10px;
}

.panel-default {
    background-color: #FFFFFF;
}

.panel-default > .panel-heading > .panel-subtitle {
    color: rgb(120, 120, 120);
}
.panel-default.active {
    border-color: rgb(250, 120, 040);
}

.panel-default > .panel-heading > a.panel-title {
    color: rgb(030, 060, 110);
}
.panel-default > .panel-heading > a.panel-title:hover,
.panel-default > .panel-heading > a.panel-title:focus {
    color: rgb(070, 180, 200);
}

.panel-default.second-level > .panel-heading {
    background-color: rgb(245, 245, 245);
}

.panel-default.second-level > .panel-heading:hover {
    cursor: pointer;
    color: rgb(070, 180, 200);
}

.panel-heading-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.panel-heading-wrapper .panel-title {
    flex-grow: 1;
}

.panel-heading-wrapper .panel-actions {
    flex-shrink: 0;
}

.panel-actions .btn {
    padding: 0;
    width: 28px;
    height: 28px;
    line-height: 28px;
    border-width: 0;
    border-radius: 50%;
    margin-left: 5px;
}
.panel-actions .btn:not(:hover):not(:focus):not(.disabled):not([disabled]) {
    background-color: transparent;
    color: inherit;
}

/* ===================================================================================
 *   COMPONENT - MODAL
 * =================================================================================== */

.modal-content {
    background-color: #FFFFFF;
    border-radius: 0;
}

.modal-content > .modal-header {
    padding: 20px;
    color: rgba(0,0,0,0.54);
    background-color: #FFFFFF;
    border-radius: 0;
    border-bottom-width: 0;
}
.modal-content > .modal-header > .h4 {
    margin-bottom: 0;
}

.modal-content > .modal-body {
    padding: 0 20px;
}

.modal-content > .modal-footer {
    padding: 15px 20px;
    border-top-width: 0;
}

.terms-container {
    max-height: 600px;
    overflow-y: scroll;
    overflow-x: hidden;
}

.terms-container pre {
    max-width: 99%;
}

/* ===================================================================================
 *   COMPONENT - ITEM PRODUCT
 * =================================================================================== */

.item-product {
    position: relative;
    width: 250px;
    margin: 0 5px 15px;
}

.item-product > .panel-heading:hover {
    cursor: pointer;
}

.item-shadow {
    transition: opacity 1s;
    opacity: 0;
}

.item-shadow-hover {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.2;
    background-color: rgb(0, 0, 0);
}

/* ===================================================================================
 *   COMPONENT - ITEM OFFERING
 * =================================================================================== */

.item-product,
.item-offering {
    position: relative;
    width: 100%;
}

@media (min-width: 350px) {
    .item-product,
    .item-offering {
        width: 250px;
    }
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .item-product,
    .item-offering {
        margin-right: 5px;
        margin-left: 5px;
    }
}

.thumbnail > .label {
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: 0;
    padding: 0.5em .8em .5em;
}

.thumbnail > .label-to-left {
    left: 0;
    right: initial;
}

.item-offering-name {
    margin-bottom: 5px;
}
.item-description {
    height: 40px;
    overflow: hidden;
}

.item-product-logo {
    height: 180px;
    min-width: 200px;
}

.panel > .thumbnail {
    position: relative;
    margin-bottom: 0;
    border-width: 0 0 1px;
}

.header-product > .thumbnail {
    height: 180px;
}

/* ===================================================================================
 *   COMPONENT - OFFERING
 * =================================================================================== */

.category-list {
    max-height: 90px;
}

.fa-shopping-cart .badge {
    position: absolute;
    font-size: 11px;
    bottom: 85%;
    left: 55%;
    padding: 2px 4px;
    transform: translate(-50%, 0);
}

.badge.badge-success {
    background-color: rgb(90, 185, 90);
}

.badge.badge-error {
    background-color: #d43f3a;
}

.item-offering-ordered {
    position: relative;
}
.item-offering-ordered .fa-close {
    transform: translate(0%, -50%);
    top: 50%;
    position: absolute;
    right: 10px;
}
.item-offering-ordered .fa-close:hover {
    cursor: pointer;
    color: rgb(217, 83, 79);
}

.item-offering-ordered .media-body .h4 {
    margin-bottom: 0;
}

.panel[offering-priceplan] {
    position: relative;
    width: 100%;
}

@media (min-width: 300px) {
    .panel[offering-priceplan] {
        width: 300px;
    }
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .panel[offering-priceplan] {
        margin-right: 5px;
        margin-left: 5px;
    }
}

.panel.selectable[offering-priceplan] {
    cursor: pointer;
}

.panel[offering-priceplan] .priceplan-selected {
    position: absolute;
    right: 2px;
    top: 2px;
}

/* ===================================================================================
 *   INTERNATIONAL PHONE NUMBER
 * =================================================================================== */

.iti-flag {background-image: url("../../intl-tel-input-8.4.7/img/flags.png");}

.intl-tel-input {
    display: block;
}

/* ===================================================================================
 *   USAGE MASHUP
 * =================================================================================== */

.usage-chart {
    width: 100%;
    height: 500px;
}

/* ===================================================================================
 * TMFORUM - PRODUCT
 * =================================================================================== */

.product {
    position: relative;
    display: flex;
}

.product-heading {
    flex-shrink: 0;
}

.product-body {
    flex-grow: 1;
    padding-left: 15px;
}

/* Small devices (tablets, 768px and up) */
@media (max-width: 768px) {

    .product {
        flex-direction: column;
    }

    .product-heading {
        flex-grow: 1;
        flex-shrink: 1;
    }

    .product-body {
        padding-left: 0;
    }
}

.order-title-group {
    margin-bottom: 5px;
    margin-top: 10px;
}

.order-title {
    width: 70px !important;
}

@media (min-width: 768px) {
    .order-title-info {
        margin-left: 85px !important;
    }
}

.home-catalog-pager ul {
    margin-bottom: 5px;
    margin-top: 5px;
}