/* general */
:root {
    --primary: #177bbb;
    --success: #71ba51;
    --warning: #efb239;
    --danger: #e33244;
    --default: #7a878e;
    --defaultBg: rgba(0,0,0,0.1);
    --new-bg: #F3F9FE;
}

/*unauthorized layout */
.unauthorized .alert {
    margin: 0;
}

.panel {
    border: 1px solid #dbe3ec;
}

.panel-primary .panel-heading, .panel-primary .panel-footer, .panel-primary.panel-colorful {
    background-color: #F3F9FE;
    color: #4d627b;
}



/* global elements */
.breadcrumb {
    padding: 0;
}
#container.boxed-layout .boxed, #container.boxed-layout #footer {
    max-width: none;
    width: 90%;
}
#container.boxed-layout .boxed {
    border-top-right-radius: 15px;
    border-top-left-radius: 15px;
}
#content-container-boxed {
    box-shadow: 0 5px 40px 1px #fff;
}
.panel {
    border-radius: 12px;
    box-shadow: none;
}
.panel .panel-footer, .panel>:last-child {
    border-radius: inherit;
}
.panel .panel-heading, .panel>:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}
.panel-not-rounded {
    border-radius: unset;
}
.page-header {
    text-transform: none;
}
.header-logo {
    float:left;
    /*margin: 5px 10px 0 20px;*/
    display: block;
    margin: 5px 0 0 25px;
    max-height: 60px;
}
.header-logo-host {
    float:left;
    display: block;
    margin: 15px;
}
.brand-text {
    margin-top: 5px;
}
.boxed {
    background: none;
}
#navbar-dropdown {
    border-top-right-radius: 15px;
}
.navbar-header:before {
    border-top-left-radius: 15px;
    /*background-color: #51B6EB; Logo Color */
    background-color: #F3F9FE;
}
.navbar-top-links>.open>a, .navbar-top-links>.open>a:focus {
    background-color: transparent !important;
}
#mainnav-menu .active .quicklinks a {
    color:#fff;
}
#mainnav-menu i {
    display: inline;
}
.quicklinks {
    float:right;
    margin: -32px 25px 15px 30px;
}
.quicklinks i {
    font-size: 11px;
    opacity: 1;
}
.alert {
    margin-bottom: 3px;
}
/* hide on mainnav-sm */
#container.mainnav-sm .quicklinks {
    display: none;
}

.table.table-rounded td:first-of-type {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
table.dataTable.no-footer {
    border-bottom: none !important;
}
#container .table-striped>tbody>tr:nth-child(2n+1) {
    background-color: rgba(0,0,0,.025);
}

#container .table td {
    border: none;
    padding: 5px;
}
.table-responsive {
    border-radius: 12px;
}
.editable-values {
    border: 1px dashed #177bbb !important;
    padding: 4px !important;
}
.editable-values:focus {
    background-color: #F3F9FE;
}

/*
input[required], select[required] {
    background-color: rgba(255, 27, 0, 0.04);
}
*/

.popover {
    min-width: 300px;
    max-width: 100%;
    padding: 10px;
    z-index: 10003 !important;
    overflow: visible !important;
}
.tooltip-inner {
    text-align: left;
}
.flotTip {
    font-size: 13px !important;
    overflow: visible !important;
    z-index: 10003 !important;
    border: 1px solid lightgray !important;
}
.round {
    border-radius: 3px;
}
.round-double {
    border-radius: 6px;
}

/* bootbox modal z-index fix */
.modal {
    z-index: 10002;
}
.modal-backdrop {
    z-index: 10001;
}

input:-webkit-autofill:hover,
input:-webkit-autofill:active,
input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px white inset !important;
    border: 1px solid var(--primary) !important;
}
.input-group-addon {
    border: none;
}
/*select {*/
    /*-moz-appearance: none;*/
    /*-webkit-appearance: none;*/
    /*appearance: none;*/
/*}*/
/*.select select {*/
    /*padding: 0 2.5em 0 0;*/
    /*border: none;*/
/*}*/
.text-m {
    font-size: 1.5em;
}
.float-left {
    float: left;
}
.float-right {
    float: right;
}

/* misc elements */
.searchbox {
    padding-top: 10px;
}
#container #new-notifications-alert {
    top: 45%;
    font-size: .8em;
    /*background-color: var(--primary);*/
}

/* text */
.text-default,a.text-default:hover,a.text-default:focus {
    color:#bdcccf
    /*color: #eee;*/
}
.text-black,a.text-black:hover,a.text-black:focus {
    color: #676a6c;
}
.text-hover-default:hover {color: #bdcccf !important;}
.text-hover-primary:hover {color: #177bbb !important;}
.text-hover-dark:hover {color: #34495e !important;}
.text-hover-success:hover {color: #71ba51 !important;}
.text-hover-warning:hover {color: #efb239 !important;}
.text-hover-danger:hover {color: #e33244 !important;}
.textborder-hover-info:hover {color: #03a9f4 !important;}
.text-hover-mint:hover {color: #1cc9a7 !important;}
.text-hover-pink:hover {color: #ed4e84 !important;}

.link-dashed {border-bottom: dashed 1px #0088cc}

/* tabs */
.tab-base {
    margin-bottom: 0;
}
.tab-base .nav-tabs>.active>a {
    z-index: 1;
    border-bottom: none;
    margin-left: 4px;
}
.tab-base .nav-tabs li a {
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
}
.tab-base .nav-tabs li {
    border-bottom: none;
}
.tab-base .nav-tabs.tabs-right {
    margin-right:5px;
}
.tab-base .nav-tabs.tabs-right>li {
    float: none;
    display: inline-block;
}
.nav-tabs.bord-btm {
    border-bottom: 1px solid #dbe3ec;
}
.nav-tabs>li {
    float: left;
    margin-bottom: -2px;
}
.tab-base .nav-tabs .tab-color {
    height:90%;
    width:3px;
    float: left;
    margin-top: 4px;
    margin-left: 2px;
}
.tab-stacked-right .tab-content {
    border-radius: inherit;
    background-color: transparent;
}
.tab-stacked-right.tab-base .nav-tabs>li:not(.active) a:hover {
    border-color: #ddd;
}
.tab-base .nav-tabs>li:not(.active)>a:hover {
    border-color: #fff;
}
.tab-base .tab-content{
    background-color:#fff;
    /*box-shadow:0 1px 1px rgba(0,0,0,.2);*/
    box-shadow: none;
    border-radius: 5px;
    /*border-bottom-left-radius:2px;*/
    /*border-bottom-right-radius:2px;*/
    padding:15px
}

/* buttons */
.btn {
    border-radius: 3px !important;
}
.btn-actions {
    min-width: 120px;
    margin: 3px;
}
.btn-group a {
    margin-right: 2px;
}
.btn-purple {
    background-color: var(--primary);
    border-color: var(--primary) !important;
}
#login-button {
    font-size: 14px;
}

/* badges */
.badge {
    padding: 3px 6px;
}


/* forms */
.form-group .form-control {
    margin-bottom: 7px;
}
.form-control, .form-group .form-control .selectize-input {
    /*background-image: linear-gradient(var(--primary),var(--primary)),linear-gradient(rgba(165,181,203,.5),rgba(165,181,203,.5));*/
    /*background-size: 0 2px,100% 1px;*/
    /*background-repeat: no-repeat;*/
    /*background-position: center bottom,center calc(100% - 1px);*/
    background-color: transparent;
    /*transition: background 0s ease-out;*/
    float: none;
    box-shadow: none;
    padding: 2px 10px;
    border-radius: 3px;
    border: 1px solid rgba(0,0,0,.07);
    /*border: 1px solid #e5e6e7;*/
    /*padding: 6px 12px;*/
}
.form-control {
    height: 36px;
    /*padding: 7px 3px;*/
    margin-bottom: 7px;
}

.form-control, output {
    font-size: 14px;
    line-height: 1.42857;
}
.form-group.is-focused .form-control, .form-group.is-focused .form-control.white {
    outline: 0;
    background-size: 100% 2px,100% 1px;
    transition-duration: .3s;
    box-shadow: none;
}
/*.form-group.is-focused .form-control {*/
    /*background-image: linear-gradient(var(--primary),var(--primary)),linear-gradient(rgba(165,181,203,.5),rgba(165,181,203,.5));*/
    /*border-bottom: 1px solid transparent;*/
/*}*/
.form-group.label-floating label.control-label, .form-group.label-placeholder label.control-label, .form-group.label-static label.control-label {
    position: absolute;
    pointer-events: none;
    -webkit-transition: .3s ease all;
    -o-transition: .3s ease all;
    transition: .3s ease all;
}
.form-group.label-floating label.control-label {
    will-change: left,top,contents;
}
.form-group.label-floating label.control-label, .form-group.label-placeholder label.control-label {
    top: -7px;
    line-height: 1.42857143;
}
.form-group.label-floating label.control-label, .form-group.label-placeholder label.control-label {
    font-size: 13px;
    left: 0;
}
.form-group label.control-label {
    line-height: 2;
    font-size: 85%;
    /*font-weight: 600;*/
    margin: 3px 0 0;
}

/* scaffold / crud */
fieldset .checkbox, .radio {
    margin: 5px;
}
fieldset .checkbox input[type=checkbox],
fieldset .checkbox-inline input[type=checkbox],
fieldset .radio input[type=radio],
fieldset .radio-inline input[type=radio] {
    position: relative;
    margin: 0 5px 0 0;
}
fieldset .checkbox label, fieldset .radio label {
    padding-left: 0;
}

/* border, background and highlight */
.border-default {border: 1px solid #bdcccf !important;}
.border-primary {border: 1px solid #177bbb !important;}
.border-dark {border: 1px solid #34495e !important;}
.border-success {border: 1px solid #71ba51 !important;}
.border-warning {border: 1px solid #efb239 !important;}
.border-danger {border: 1px solid #e33244 !important;}
.border-info {border: 1px solid #03a9f4 !important;}
.border-mint {border: 1px solid #1cc9a7 !important;}
.border-pink {border: 1px solid #ed4e84 !important;}

.border-hover-default:hover {border: 1px solid #bdcccf !important;}
.border-hover-primary:hover {border: 1px solid #177bbb !important;}
.border-hover-dark:hover {border: 1px solid #34495e !important;}
.border-hover-success:hover {border: 1px solid #71ba51 !important;}
.border-hover-warning:hover {border: 1px solid #efb239 !important;}
.border-hover-danger:hover {border: 1px solid #e33244 !important;}
.border-hover-info:hover {border: 1px solid #03a9f4 !important;}
.border-hover-mint:hover {border: 1px solid #1cc9a7 !important;}
.border-hover-pink:hover {border: 1px solid #ed4e84 !important;}

.border-v {
    border-top: none !important;
    border-bottom: none !important;
}
.border-h {
    border-left: none !important;
    border-right: none !important;
}
.no-border {
    border: none !important;
}

.bg-highlight {
    background-color: #fcf8e3 !important;
}
.bg-hover-highlight:hover {
    background-color: #fcf8e3 !important;
}
.bg-hover:hover {
    background-color: #eff3f3;
}
.bg-hover-gray:hover {
    background-color: #F2F2F2;
}

.bg-danger-light {
    background-color: #f2dede !important;
}
.bg-warning-light {
    background-color: #fcf8e3 !important;
}
.bg-success-light {
    background: rgba(165, 202, 114, .15) !important;
}
.bg-dark-light {
    background: rgba(224,224,224, .30) !important;
}
.bg-default {
    background-color: #F5F6F8;
}
.row-border-separator:not(:last-child) {
    border-bottom: 1px solid rgba(0,0,0,.09);
}
.row-no-gutters [class*=col-] {
    padding-right: 0;
    padding-left:  0;
}
.orlando-row {
    display: flex;
}
.orlando-row [class*=col-] {
    padding: 3px 2px;
}
.orlando-row [class*=col-] .orlando-cell {
    background-color: #F5F6F8;
    padding: 12px 6px;

    height: 100%;
}

.v-middle {
    vertical-align: middle !important;
}
.mar-ver-no {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.mar-hor-no {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.mar-top-no {
    margin-top: 0 !important;
}
.mar-rgt-no {
    margin-right: 0 !important;
}
.mar-btm-no {
    margin-bottom: 0 !important;
}
.mar-lft-no {
    margin-left: 0 !important;
}

.mar-ver-half {
    margin-top: 7px;
    margin-bottom: 7px;
}
.mar-hor-half {
    margin-left: 7px;
    margin-right: 7px;
}
.mar-top-half {
    margin-top: 7px;
}
.mar-rgt-half {
    margin-right: 7px;
}
.mar-btm-half {
    margin-bottom: 7px;
}
.mar-lft-half {
    margin-left: 7px;
}

.mar-ver-double {
    margin-top: 30px;
    margin-bottom: 30px;
}
.mar-hor-double {
    margin-left: 30px;
    margin-right: 30px;
}
.mar-top-double {
    margin-top: 30px;
}
.mar-rgt-double {
    margin-right: 30px;
}
.mar-btm-double {
    margin-bottom: 30px;
}
.mar-lft-double {
    margin-left: 30px;
}

.mar-ver-triple {
    margin-top: 45px;
    margin-bottom: 45px;
}
.mar-hor-triple {
    margin-left: 45px;
    margin-right: 45px;
}
.mar-top-triple {
    margin-top: 45px;
}
.mar-rgt-triple {
    margin-right: 45px;
}
.mar-btm-triple {
    margin-bottom: 45px;
}
.mar-lft-triple {
    margin-left: 45px;
}

.pad-ver-no {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.pad-hor-no {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.pad-top-no {
    padding-top: 0 !important;
}
.pad-rgt-no {
    padding-right: 0 !important;
}
.pad-btm-no {
    padding-bottom: 0 !important;
}
.pad-lft-no {
    padding-left: 0 !important;
}

.pad-ver-half {
    padding-top: 7px;
    padding-bottom: 7px;
}
.pad-hor-half {
    padding-left: 7px;
    padding-right: 7px;
}
.pad-top-half {
    padding-top: 7px;
}
.pad-rgt-half {
    padding-right: 7px;
}
.pad-btm-half {
    padding-bottom: 7px;
}
.pad-lft-half {
    padding-left: 7px;
}
.pad-top-double {
    padding-top: 30px;
}
.pad-rgt-double {
    padding-right: 30px;
}
.pad-btm-double {
    padding-bottom: 30px;
}
.pad-lft-double {
    padding-left: 30px;
}
.pad-all-double {
    padding: 30px;
}
.pad-all-half {
    padding: 15px;
}
.pad-all-quarter {
    padding: 7px;
}
.pad-all-five {
    padding: 5px;
}

/* Widgets */
.chat-dialog-wrapper {
    display: block;
    position: absolute;
    bottom: 0;
    right: 255px;
}
.chat-dialog {
    width: 350px;
    float: left;
    margin-right: 5px;
    margin-bottom: 0;
    border: 1px solid rgba(0,0,0,0.1);
}
.speech-right>.speech {
    background-color: #f5f7f8;
    color: #8f9ea6;
}
.speech-right>.speech:before {
    border-left: 7px solid #f5f7f8
}
.speech-right>.speech .media-heading {
    color: #8f9ea6;
}
.datepicker table tr td.disabled, .datepicker table tr td.disabled:hover {
    background-color: #eee;
}

/* icons & images */
.icon-wrap-xxs {
    padding: 2px;
}
/* @todo to be verified */
.icon-xs {
    font-size:1.2em; line-height: 0.6em;
}
.img-xxs {
    width: 24px;
    height: 24px;
}

.img-grayout {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: 0.4;
}


/* search filters */
#search-filter-bar {
    padding-top: 15px;
}
/* TODO temporary fix. find out why selectize sets a width attr */
#search-filter-bar .selectize-input input {
    width: 200px !important;
}
#search-filter-bar label {
    margin-bottom: 4px;
}
#search-filter-bar .form-group {
    margin-right: 10px;
    margin-bottom: 0;
}
#search-filter-bar .select:before {
    content: none;
}
#search-filter-bar .selectize-control {
    background: white;
}
#search-filter-bar .selectize-dropdown-content {
    background-color:#fff;
    border: 1px solid #ccc;
}
/*#search-filter-bar {*/

/*}*/

/* fullcalendar calendar */
.fc-ltr .fc-timeline-event {
    opacity: 0.9;
}


/* wysiwyg editor / tinymce */
.tox-tinymce {
    border: 1px solid rgba(0,0,0,.07) !important;
}

/* tags inputs / tagator plugin */

.tagator_tag {
    font-size: .9em !important;
}
.tagator_tag {
    background-color: #03a9f4 !important;
}
.tagator_element {
    width: 100% !important;
    padding: 3px !important;
    border: none !important;
}



/* #### page specific directives #### */

/* page: front */
.panel .timeline-label {
    border-radius: 13px;
}

/* page: assistants */
.assistant div.submit {
    float:right;
}
.assistant .wz-nav-off>li a {
    cursor: default !important;
}
.assistant .wz-steps .active .wz-icon-done, .wz-steps .active~li .wz-icon-done {
    display: inherit;
}

.assistant .wz-steps li:not(.active) .wz-icon {
    display: inherit;
}
.assistant .assistant-head-title {
    padding-left: 30px;
}
.form-group.select {
    width: 100%;
}
.assistant .alert {
    margin-top: 2px;
    margin-bottom: 0;
}
.wz-heading {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}
.wz-steps li .wz-desc {
    opacity: 100;
    transition: opacity 1s;
}
.assistant-head-steps {
    background-color: #F3F9FE;
    border-top: 1px solid rgba(0,0,0,.1);
    border-bottom: 1px solid rgba(0,0,0,.1);
}

/* page: course index row */
.course-status-col {
    width: 20px !important;
    overflow: hidden;
    vertical-align: bottom !important;
}
.course-status-col div {
    transform: rotate(-90deg);
    line-height: 1;
    width: 20px !important;
}

/* page: customer view */
#customer__notes {
    font-size: 13px;
    border-radius: 3px;
    border: 1px solid rgba(0,0,0,.07);
    box-shadow: none;
    transition-duration: .5s;
    padding: 6px 12px;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    background: none;
}

/* page: course view */
.status_icon_wrapper {
    display: inline-block;
    margin: 0 auto;
}
.course-status-icon {
    cursor: pointer;
}
.course-status-default {
    color: var(--defaultBg);
}
.course-status-success {
    color: var(--success);
}
.course-status-warning {
    color: var(--warning);
}
.course-status-danger {
    color: var(--danger);
}

/*.course-status-icon {*/
/*    padding: 7px;*/
/*    border-radius: 50%;*/
/*}*/

/*.course-status-icon {*/
/*    text-align: center;*/
/*    height: 20px;*/
/*    margin: 0 5px 20px 0;*/
/*    overflow: visible;*/
/*    border-radius: 17px;*/
/*}*/

.course-slot-units {
    float:left;
    text-align: center;
    width: 20px;
    height: 20px;
    /*margin: 1px;*/
    margin: 0 5px 20px 0;
    overflow: visible;
    border-radius: 17px;
}
.course-slot-participation {
    text-align: center;
    width: 20px;
    height: 20px;
    margin: 0 auto;
    overflow: visible;
    border-radius: 17px;
    cursor: pointer;
}
.course-slot-participation-mini {
    text-align: center;
    width: 6px;
    height: 6px;
    margin: 0 auto;
    margin-right: 2px;
    overflow: visible;
    border-radius: 17px;
    cursor: pointer;
    opacity: 0.5;
    float: left;
}

/* page invoice editor */
#container .invoice-summary tbody>tr>td {
    vertical-align: top;
}

/* page: task board */
.tasklist li {
    margin-bottom: 5px;
}


/* page: email template */
.note-editor.note-frame {
    border: none !important;
}


/* progress bar markers */
.bar-step {
    position:absolute;
    margin-top:-20px;
    z-index:1;
    font-size:12px;
}
.label-txt {
    position: absolute;
    top: 50px;
    left: -40px;
    overflow: visible;
    width: 100px;
}
.label-line {
    float: left;
    background: #000;
    height:50px;
    width:1px;
    margin-left: -6.5px;
}
.label-percent {
    float: right;
    margin-left: 5px;
}

/* font awesome fa icons */
.fa-euro:before, .fa-eur:before {
    content: "\f153";
    font-weight: lighter;
}

/* jstree */
.jstree-default a {
    white-space:normal !important; height: auto;
}
.jstree-anchor {
    height: auto !important;
}
.jstree-default li > ins {
    vertical-align:top;
}
.jstree-leaf {
    height: auto;
}
.jstree-leaf a{
    height: auto !important;
}
.jstree-contextmenu {
    font-size: 12px;
}


/* Development only */
pre.sf-dump, pre.sf-dump .sf-dump-default {
    font-size: 14px;
}
