/* changes to basic application layout */
main {
    margin: 0;
}

footer {
    display: none;
}

/* image preview */
div#interior-preview {
    right: 400px;
    bottom: 0;
    width: calc(100% - 400px);
    height: auto;
}

div#interior-navigation {
    top: 71px;
    right: 0;
    bottom: 0;
    width: 400px;
    position: fixed;
    overflow-y: scroll;
}

div#display {
    position: relative;
}

div#display div.image {
    display: table-row;
    position: absolute;
    top: 0;
    left: 0;
    content: '&nbsp;';
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    min-width: 100%;
    min-height: calc(100vh - 71px);
}

div.image.light {
    min-height: 100vh !important;
}

/* navigation */
#area-toggle-container {
    padding: 1em;
}

#area-toggle-container .btn {
    width: 180px;
    /* FIXME: use flex box */
}

#area-toggle {
    width: 100%;
}

#interior-navigation {
    background: #282b31;
}

.section-toggler {
    font-size: 16pt;
    font-weight: bold;
    cursor: pointer;
}

.section-toggler.unavailable {
    color: grey;
}

.design-line-toggler {
    font-size: 14pt;
    cursor: pointer;
}

.design-line-toggler.unavailable {
    color: grey;
}

.section-toggler.collapsed {
    font-weight: normal;
}

.section-toggler i, .design-line-toggler i {
    float: right;
}

.section-toggler.collapsed i, .design-line-toggler.collapsed i {
    transform: rotate(-180deg);
}

ul {
    margin: 0;
    padding: 0;
}

li {
    list-style: none;
    padding: 0.25em 0;
}

.setting, .design-line {
    cursor: pointer;
}

li.setting {
    padding-left: 2em;
}

li.selected {
    font-weight: bold;
    color: #fff;
}

li.blocked {
    opacity: 0.6;
}

.card-header {
    color: #fff;
    background: transparent;
    border-bottom: none;
    border-top: 1px solid #474a50;
}

.card {
    border: none;
    background: #282b31;
    color: #72737a
}

.hidden {
    display: none;
}

.card .card .card-header {
    border: none;
    padding: .25rem;
    margin: 0;
    padding-left: 0;
    color: #72737a;
}

.card-body {
  padding-top: 0;
}

.card .card .card-body {
    padding: 0;
}

.card .card .card-body li {
    padding-top: 0;
}

.custom-setting-form {
    padding-left: 2rem;
}

/* loading animation */
div#loading {
    position: fixed;
    text-align: center;
    width: 100%;
    height: 100%;
    background: #282b31;
}

div#loading p, div#loading div.loader {
    position: absolute;
    left: calc(50% - 90px);
    width: 180px;
}

div#loading .loader {
    height: 180px;
    top: calc(30% - 90px);
    border: 16px solid #f3f3f3; /* TODO: Pilatus color */
    border-top: 16px solid #3498db;
    border-radius: 50%;
    animation: spin 2s linear infinite;
}

div#loading p {
    padding-top: 2em;
    top: calc(30% + 90px);
    color: #fff;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

#back {
  position: absolute;
  bottom: 30px;
  left: 30px;
  z-index: 2000;
}
