html {
    font-size: 14px;
}
body {
    /*padding-top: 95px;*/
}
header {
    padding-bottom: 15px;
}
main {
    padding: 0 0;
}
aside {
    font-size: 0.8rem;
}
button > i {
    vertical-align: middle;
    line-height: inherit !important;
}

#flamco_logo {
    height: 50px;
    width: auto;
    margin-left: 3%;
    /*margin-top: 20px;*/
}
#nav_main {
    margin-top: 25px;
}

.title {
    color: #dedede;
    font-weight: 900;
    font-size: 0.8rem;
    padding-left: 15px;
    text-transform: uppercase;
    margin-bottom: 0;
}

.nav > li > a:hover,
.nav > li > a:focus,
.nav > li > a:active {
    text-decoration: none;
    background-color: unset;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
    background-color: unset;
    border-color: #f1000a;
    color: #f1000a !important;
}

.dropdown-menu > li.selected {
    clear: both;
    color: #333333;
    cursor: default;
    display: block;
    font-weight: normal;
    padding: 3px 20px;
    text-decoration: underline;
    white-space: nowrap;
}

.menu-steps > * {
    background-color: #f9f9f9;
    color: #666666;
    font-weight: bold;
    padding: 10px 10%;
}
.menu-steps > h2 {
    background-color: #666666;
    color: #cccccc;
    margin-bottom: 0px;
    margin-top: 0px;
}
.menu-steps > nav {
    padding: 0px;
    padding-bottom: 25px;
}
.menu-steps > nav a {
    color: inherit;
}
.menu-steps > nav a:hover,
.menu-steps > nav a:focus,
.menu-steps > nav li.active a,
.menu-steps > nav li.active .list-step {
    color: #e3010a;
}
.menu-steps > nav ol {
    list-style-type: none;
}
.menu-steps > nav > ol {
    padding-left: 0px;
}
.menu-steps > nav ol > li {
    padding: 10px 0;
}
.menu-steps > nav ol > li.active {
    background-color: #ffffff;
    border-bottom: 3px solid #e3010a;
}
.menu-steps > nav ol.sub-steps {
    padding-left: 25px;
    padding-top: 10px;
}
.menu-steps span.list-step {
    padding: 14px;
    color: #d6d7d7;
    width: 35px;
}
.menu-steps i.step-status {
    position: absolute;
    right: 0px;
    padding-right: 32px;
    vertical-align: middle;
    line-height: inherit;
}
.menu-steps i.fa-check.step-status {
    color: #e3010a;
}

.form-control {
    height: 34px;
}

.image-sectionheader {
    width: 100%;
    height: auto;
    padding-bottom: 15px;
}

.expand-button {
    width: 100%;
    text-align: right;
    margin-bottom: 15px;
    color: #e3010a;
    background-color: #f9f9f9;
    border: none;
}

.expand-button.collapsed i.fa-chevron-down:before {
    content: '078';
}

.expand-button i.fa-chevron-down:before {
    content: '077';
}

span.choice-status.fa {
    font-size: 20px;
}

h4.panel-title a.collapsed span.choice-status.fa:before {
    content: '067';
}

h4.panel-title a span.choice-status.fa:before {
    content: '068';
}



.input-group {
    width: 100%;
}
.input-unit {
    width: 50px;
}

.info-button, .refresh-button {
    text-align: center;
    color: #e7e9e9;
    cursor: pointer;
}
.info-button > i, .refresh-button > i {
    padding: 9px 0;
    position: relative;
}
.edit-button, .save-button {
    text-align: center;
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
}

.button-bar {
    width: 100%;
    padding: 15px 0;
    border-top: 1px solid #e3010a;
    margin-bottom: 45px;
}
.button-bar > button {
    width: 120px;
    color: #666666;
    background-color: #e7e9e9;
    font-weight: bold;
}

.btn:hover,
.btn:focus,
.btn.focus {
    color: #e3010a;
    text-decoration: none;
}

.dl-center dt {
    text-align: center;
}
.dd-fw {
    display: inline-block;
    width: 50%;
    text-align: right;
}
div.components {
    line-height: 25px;
}

div.components.view > div > span,
div.components.edit > div > input,
div.components.edit > div > select {
    display: inline;
    height: 100%;
    width: 100%;
    line-height: 1.2rem;
    margin: 0px;
    padding: 2px 0px;
}

div.components.edit > div > span,
div.components.view > div > input,
div.components.view > div > select,
div.components.view > div > button.save-button,
div.components.edit > div > button.edit-button {
    display: none;
}

div.components.edit > div.has-error > input,
div.components.edit > div.has-error > select {
    border: 1px solid #a94442;

}

div.components.view > div.has-error {
    border: 1px solid #a94442;
    height: 25px;
}

div[name='main-button-bar'] button.results {
    display: none;
}



table.components {
    table-layout: fixed;
    width: 100%;
}
tr.view > td > span,
tr.edit > td > input,
tr.edit > td > select {
    display: inline;
    height: 100%;
    width: 100%;
    line-height: 1.2rem;
    margin: 0px;
    padding: 2px 2px;
}

tr.edit > td > span,
tr.view > td > input,
tr.view > td > select,
tr.view > td > button.save-button,
tr.edit > td > button.edit-button {
    display: none;
}

tr.edit > td.has-error > input,
tr.edit > td.has-error > select,
tr.view > td.has-error > span:first-child  {
    border: 1px solid #a94442;
}


th.component-edit,
th.component-delete {
     width: 6%;
}
th.component-nr {
     width: 6%;
}
th.component-description {
    /*max-width: 0px;*/
    overflow: hidden;
    white-space: nowrap;
    width: auto;
}
th.component-capacity {
    width: 12%;
}
th.component-diameter {
    width: 12%;
}
th.component-length {
    width: 12%;
}
th.component-volume {
    width: 12%;
}
th.component-flow_temperature {
    width: 11%;
}
th.component-return_temperature {
    width: 11%;
}
th.component-expansion_volume {
    width: 12%;
}


.result-choices {border: 1px solid #cccccc; text-align: center; transition: all 0.3s ease 0s; }
.result-choices p {
  height: 100%;
  background-color: #e7e9e9;
  margin-bottom: 0;
  padding: 11px 3px;
  color: #666666;
  font-weight: bold;
  font-size: 0.7rem;
  transition: all 0.3s ease 0s;
}

.tool-thumbnail {margin: 6px 0 0 6px; padding: 0; border: 1px solid #cccccc; text-align: center; width: 178px; display: inline-block; transition: all 0.3s ease 0s;}
.tool-thumbnail:hover {border: 1px solid #666666;}
.row .tool-thumbnail:first-child {margin-left: 0;}
.tool-thumbnail p {background-color: #e7e9e9; margin-bottom: 0; padding: 7px 3px; color: #666666; font-weight: bold; text-transform: uppercase; font-size: 12px;
                    transition: all 0.3s ease 0s; min-height: 50px;}
.tool-thumbnail:hover p {background-color: #666666; color: white; }
.tool-thumbnail:hover a {text-decoration: none;}
span.hr-large {display: block; border-top: 11px solid #f1000a; height: 0px; width: 100%; margin-top: 0px; margin-bottom: 0px; font-size: 0;}

span.cat-sup { vertical-align: super; font-size: smaller; }
span.cat-sub { vertical-align: sub; font-size: smaller; }

.result-choices.active p,
.result-choices:hover:not([disabled]) p { background-color: #e3010a; color: white; text-decoration: none; }
.result-choices.active,
.result-choices:hover:not([disabled]) { border: 1px solid #e3010a; cursor: pointer; }
.result-choices { margin-bottom: 5px; }

.result-choices p {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}

.result-choices img { max-width: 100%; height: auto; }

@media (max-width: 768px) {
    .result-choices img { max-height: 100px; }
}

.result-choices label { width: 100%; margin-bottom:0px; cursor: pointer; }

table#components_selection_table td {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}


button.btn i.fa-times {
    -webkit-animation: spin 1.5s linear infinite;
    animation: spin 1.5s linear infinite;
}

button.btn-hide {
    display: none;
}

@-webkit-keyframes spin{
    0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}
    100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}
}
@keyframes spin{
    0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}
    100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}
}

h4 {
    color: #e3010a;
    font-weight: bold;
    font-size: 0.9rem;
    margin-bottom: 9px;
}
.with-border {
    border-bottom: 1px solid #eceeef;
    margin-bottom: 0;
    padding-bottom: 8px;
}

.button-add-component {
    margin-bottom: 10px;
}

td#opr_mode-pump,
td#opt_press,
td#opr_mode-artnr {
    padding-left: 5px;
}

#expert_mode {
    border-bottom: 1px solid #dd042b;
    margin-bottom: 15px;
}
.operation_mode_img { width: 100%; }

#final_configuration-pressure_chart {
  background: rgba(255, 255, 255, .90);
  padding-top: 20px;
}
#final_configuration-pressure_chart svg { width: 100%; }

#final_configuration-pressure_chart .ct-area {
  fill-opacity: 1;
}

#final_configuration-pressure_chart .ct-grid {
  shape-rendering: crispEdges;
  stroke: rgba(0, 0, 0, 0.1);
}

#final_configuration-pressure_chart .ct-series.ct-series-a .ct-area {
  fill: rgba(0,255,0,0.1);
}


#final_configuration-pressure_chart .ct-series.ct-series-a .ct-line,
#final_configuration-pressure_chart .ct-series.ct-series-b .ct-line {
  stroke: none;
}
#final_configuration-pressure_chart .ct-series.ct-series-b .ct-area,
#final_configuration-pressure_chart .ct-series.ct-series-c .ct-area,
#final_configuration-pressure_chart .ct-series.ct-series-d .ct-area,
#final_configuration-pressure_chart .ct-series.ct-series-e .ct-area {
  fill: none;
}

#final_configuration-pressure_chart .ct-series.ct-series-d .ct-point {
  stroke-linecap: square;
  stroke: rgb(227, 1, 10);
  stroke-width: 8px;
  animation: blinker 1.7s cubic-bezier(.5, 0, 1, 1) infinite alternate;
}

#final_configuration-pressure_chart .ct-series.ct-series-c .ct-line {
  stroke: #666666;
  stroke-dasharray: 5px;
  stroke-width: 1px;
}

/* ####################################################################### */
@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
    #nav_main {
        margin-top: 0px;
    }
    #nav_main > ul.navbar-right {
        border-top: 36px solid #666666;
        border-left: 36px solid transparent;
        color: #ffffff;
        margin-right: 2px;
    }
    #nav_main > ul.navbar-right > li {
        height: 49px;
        top: -49px;
    }
    #nav_main > ul.navbar-right > li > a {
        color: white;
        font-size: 0.8rem;
        line-height: 1.0rem;
        padding-bottom: 8px;
    }

    .title {
        margin-right: -250px;
        padding-top: 20px;
    }
}

/* ####################################################################### */
[v-cloak] {
    display: none;
}
.disabled,
[disabled] {
    opacity: .6;
    pointer-events: none !important;
    cursor: default;
}
input[type='number'] {
    -moz-appearance: textfield;
}
input[type='number']::-webkit-outer-spin-button,
input[type='number']::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

