/* ------------------------------- */
/* Base elements css */
/* Created by: Gilian v.d. Weijden */
/* Created on: 2017-1-4 */
/* Description: Formats and equalizes elements for each major browser using Autotelex styling. */
/* Dependencies: None */
/* ------------------------------- */
/* Elements */
html, body, form {
    height: 100%;
}
html {
    -webkit-text-size-adjust: 100%; /* Safari-mobile landscape fix */
}
body {
    background-color: #ecf0f1;
    min-width: 320px;
    min-height: 640px;
    font-family: Verdana;
    overflow-x: hidden;
    overflow-y: scroll;
}
body, figure, ul, li {
    margin: 0;
}
form {
    display: inline;
}
h1, h2 {
    margin: 0 0 10px;
}
h3, h4 {
    margin: 0 0 4px;
}
hr {
    border: 1px inset white;
    opacity: 0.5;
}
iframe, img {
    border: 0;
}
img {
    display: inline-block;
}
a,
a:visited {
    display: inline-block;
    cursor: pointer;
    line-height: 40px;
    text-decoration: none;
}
a.disabled,
    a.disabled:hover {
        cursor: default;
        color: gray;
    }
input::-ms-clear {
    display: none;
}
button,
input[type=button],
input[type=color],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=reset],
input[type=search],
input[type=submit],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
input[type=week] {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    border: none;
    font-family: inherit;
    border-radius: 0;
    vertical-align: middle;
}
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=tel],
input[type=text] {
    border: 1px solid #ccc;
}
button,
input[type=button],
input[type=submit] {
    overflow: hidden;
    text-overflow: ellipsis;
    height: 40px;
    color: white;
    cursor: pointer;
    text-align: center;
    font-weight: bold;
}
input[type=submit] {
    background-color: #2c3e50;
}
input[type=button] {
    background-color: #bdc3c7;
}
button {
    white-space: nowrap;
    background-color: #3498db;
}
button:disabled {
        background-color: #bdc3c7;
        color: #ddd;
        cursor: default;
    }
button.active:disabled {
        background-color: #4c5e70;
    }
input[type=button],
input[type=submit],
a.button {
    padding: 0 10px;
}
input[type=button].active,
    input[type=button]:active {
        background-color: #2c3e50;
    }
input[type=button]:disabled,
    input[type=submit]:disabled {
        background-color: #bdc3c7;
        color: #ddd;
        cursor: default;
    }
input[type=button].active:disabled,
    input[type=submit].active:disabled {
        background-color: #4c5e70;
    }
a.button:hover {
        color: white;
    }
select,
input[type=email],
input[type=number],
input[type=password],
input[type=text] {
    height: 40px;
    box-sizing: border-box;
    padding-left: 10px;
}
p,
table,
ul {
    margin: 0 0 10px 0;
}
table {
    border-collapse: collapse;
    width: 100%;
}
table tr {
        vertical-align: middle;
    }
table td {
        box-sizing: border-box;
        padding: 4px 8px;
    }
table ul {
        margin: 0;
    }
table ul li {
            padding: 3px 0;
        }
table thead,
    table tfoot {
        font-weight: bold;
    }
table thead tr {
            background-color: #eee;
        }
table tbody tr {
        border-bottom: 1px solid #eee;
    }
table tbody tr:last-child {
            border: none;
        }
/* ------------------------------- */
/* Masterpage css */
/* Created by: Gilian v.d. Weijden */
/* Created on: 2018-4-16 */
/* Description: Provides common masterpage controls such as a topbar, logo, and content-container using Autotelex styling. */
/* Dependencies: base-elements.css */
/* ------------------------------- */
/* Topbar */
.topbar {
    position: fixed;
    box-sizing: border-box;
    width: 100%;
    height: 50px;
    padding: 0 5%;
    background-color: white;
    z-index: 10;
}
.topbar .title {
        float: left;
        font-family: sans-serif;
        font-size: 20px;
        font-weight: bold;
        line-height: 50px;
        color: #888;
    }
/* Topbar - ATX logo */
.topbar .atx_logo {
        float: left;
        line-height: 88px;
        height: 100%;
        margin-right: 10px;
        margin-left: 10px;
    }
/* Topbar - User */
.topbar .user {
        display: inline-block;
        float: right;
        cursor: pointer;
        color: white;
        line-height: 50px;
        height: 50px;
        padding: 0 20px;
    }
.topbar .user span {
            float: right;
            line-height: 50px;
        }
/* Topbar - Side-menu button */
.topbar .side-menu-button {
        float: left;
        padding: 0 10px;
        line-height: 50px;
        font-size: 30px;
        color: #3498db;
        cursor: pointer;
    }
/* Topbar - Hover effects */
.topbar .user:hover {
        transition: 200ms;
        transition-timing-function: ease-in-out;
        background-color: #e74c3c;
    }
/* Topbar - Language selector */
.lang-selector {
    float: right;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.lang-main-item {
}
.lang-selector img {
    width: 32px;
    height: auto;
}
.lang-submenu {
    z-index: 100;
    position: absolute;
    background-color: lightgray;
    color: black;
    font-weight: bold;
    display: none;
    right: 0px;
    top: 50px;
    width: 160px;
}
@media screen and (min-width: 1600px) {
    .lang-submenu {
        right: auto;
    }
}
.lang-selector:hover {
    transition: 200ms;
    transition-timing-function: ease-in-out;
    background-color: lightgray;
}
.lang-selector:hover .lang-submenu {
        display: block;
    }
.lang-submenu img {
    vertical-align: middle;
}
.lang-submenu-item {
    line-height: 50px;
    height: 50px;
    padding: 0 15px;
    width: 130px;
}
.lang-submenu-item:hover {
        transition: 200ms;
        transition-timing-function: ease-in-out;
        background-color: #888;
    }
/* Content */
.content {
    z-index: 1;
    position: absolute;
    left: 0;
    width: 100%;
    min-width: 320px;
    box-sizing: border-box;
}
.content .contentPlaceHolder {
        width: 100%;
        overflow: auto;
    }
/* Topbar vertical push */
.content {
    top: 60px;
}
/* ------------------------------- */
/* Base print css */
/* Created by: Gilian v.d. Weijden */
/* Created on: 2017-1-4 */
/* Description: Stylizes and provides attributes to exclude/specialize elements for printing using Autotelex styling. */
/* Dependencies: base-elements.css */
/* Special attributes:
    - print-only (displays the element only in compact-mode)
    - no-print (hides the element in compact-mode) */
/* ------------------------------- */
/* Attributes */
.print-only,
.print-only * {
    display: none;
}
/* Print button */
.print-button {
    float: right;
    line-height: 50px;
    font-size: 40px;
    padding: 0 10px;
    cursor: pointer;
}
.print-button:hover {
        transition: 200ms;
        transition-timing-function: ease-in-out;
        background-color: #e74c3c;
    }
/* Print mark-up */
@media print {
    body {
        font-size: .5em; /* Half the defined font-size is considered plenty for printing */
    }

    table tr td,
    table tr th {
        page-break-inside: avoid;
    }

    /* Exclusion attribute */
    .no-print,
    .no-print * {
        display: none;
    }

    /* Page-block printing styles */
    .pageblock {
        border-bottom: 1px solid silver;
        margin-bottom: 20px;
    }

    .pageblock-section:first-child {
        padding: 10px 5px 10px 0;
    }

    .pageblock-section:nth-child(2) {
        padding: 10px 0 10px 5px;
    }

    /* Specialization attributes */
    .print-only,
    .print-only * {
        display: inherit; /* Support for IE */
        display: initial;
    }
}
/* ------------------------------- */
/* Base custom controls css */
/* Created by: Gilian v.d. Weijden */
/* Created on: 2017-1-4 */
/* Description: Defines custom-built controls using Autotelex styling. */
/* Dependencies: base-elements.css, jquery-ui.css  */
/* Custom controls:
    - Messagebox (stylizes a div element as a fixed messagebox control)
    - Overlay (transforms an element into a full-page overlay. Can be negated with the no-overlay attribute modifier)
    - Page block (stylizes and provides the ability to seperate a page into responsive, horizontally splitted blocks)
    - Page block section (provides the ability to split a page block in two responsive sections)
*/
/* ------------------------------- */
/* Messagebox */
.messagebox {
    position: fixed;
    top: 50%;
    left: 50%;
    background-color: white;
    border: 1px solid #e8e8e8;
    box-sizing: border-box;
    text-align: center;
    color: #555;
}
.messagebox img {
        position: absolute;
        top: 8px;
        left: 4px;
        width: 150px;
        line-height: normal;
    }
.messagebox .messagebox-topbar {
        position: relative;
        height: 32px;
        width: 100%;
    }
.messagebox .copyright {
        position: absolute;
        bottom: 4px;
        left: 4px;
        line-height: normal;
        font-size: .75em;
    }
/* Messagebox for loader */
.messagebox.loader {
        margin-left: -150px;
        margin-top: -50px;
        width: 300px;
        height: 100px;
        line-height: 50px;
    }
/* Overlay */
.overlay {
    position: fixed;
    left: 0;
    top: 50px;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0.5;
}
/* Page-block control */
.pageblock {
    display: flex;
    background-color: white;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 10px;
}
.pageblock .pageblock-section {
        display: inline-block;
        width: 50%;
        box-sizing: border-box;
    }
.pageblock-section-single {
    width: 100%;
    float: none;
    padding: 0;
    margin-top: 0;
}
/* ------------------------------- */
/* Base attributes css */
/* Created by: Gilian v.d. Weijden */
/* Created on: 2017-1-4 */
/* Description: Allows usage of quick-attributes on existing elements using Autotelex styling. */
/* Dependencies: base-elements.css */
/* ------------------------------- */
/* Exclusive base element attributes */
input.small-input {
    height: 30px;
    padding: 2px;
}
table.disabled tr td {
    pointer-events: none;
}
table.disabled tr td input[type=button] {
        color: #ddd;
    }
table.disabled tr td input,
    table.disabled .collapsible-header {
        color: #888;
    }
table.no-border,
table.no-border tr,
table.no-border td {
    border: none;
}
table.no-push-hz,
table.no-push-hz tr,
table.no-push-hz td {
    padding-left: 0;
    padding-right: 0;
}
table.no-push-vt,
table.no-push-vt tr,
table.no-push-vt td {
    padding-top: 0;
    padding-bottom: 0;
}
table td.push-down-small {
    padding-bottom: 4px;
}
table td.push-down-medium {
    padding-bottom: 10px;
}
table td.push-down-large {
    padding-bottom: 20px;
}
table td.push-up-small {
    padding-top: 4px;
}
table td.push-up-medium {
    padding-top: 10px;
}
table td.push-up-large {
    padding-top: 20px;
}
table td.push-left-small {
    padding-left: 4px;
}
table td.push-left-medium {
    padding-left: 10px;
}
table td.push-left-large {
    padding-left: 20px;
}
table td.push-right-small {
    padding-right: 4px;
}
table td.push-right-medium {
    padding-right: 10px;
}
table td.push-right-large {
    padding-right: 20px;
}
/* General attributes */
.align-bottom,
table.align-bottom td {
    vertical-align: bottom;
}
.align-center {
    text-align: center;
}
.align-left {
    text-align: left;
}
.align-right {
    text-align: right;
}
.align-top,
table.align-top td {
    vertical-align: top;
}
.ellipsis {
    text-overflow: ellipsis;
}
.ellipsis-loader {
    display: inline-block;
    width: 20px;
    text-align: left;
}
.error,
input[type=text].ng-invalid {
    border: 1px solid red !important; /* Enforce border-style to prevent browsers from overriding this. */
    box-shadow: none; /* Fix which prevents browsers from adding unwanted shadows. */
}
.float-left {
    float: left;
}
.float-right {
    float: right;
}
.font-size-double {
    font-size: 2em;
}
.font-size-triple {
    font-size: 3em;
}
.font-size-quadruple {
    font-size: 4em;
}
.half-width {
    width: 50%;
    max-width: 50%;
}
.hidden {
    display: none;
}
.inline {
    display: inline;
}
.inline-block {
    display: inline-block;
}
.lowercase {
    text-transform: lowercase;
}
.max-height,
button.max-height,
input.max-height {
    height: 100%;
}
.max-width {
    width: 100%;
}
.monospaced {
    font-family: Consolas;
}
.no-bold {
    font-weight: normal;
}
.no-border {
    border: none;
}
.no-overlay {
    z-index: 1;
}
.no-push {
    margin: 0;
    padding: 0;
}
.no-push-hz {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
}
.no-push-vt {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
}
.no-select {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    cursor: default;
}
.no-wrap {
    white-space: nowrap;
}
.overflow-auto {
    overflow: auto;
}
.overflow-hidden {
    overflow: hidden;
}
.padding-small,
table td.padding-small {
    padding: 4px;
}
.padding-small-hz,
table td.padding-small-hz {
    padding-left: 4px;
    padding-right: 4px;
}
.padding-small-vt,
table td.padding-small-vt {
    padding-top: 4px;
    padding-bottom: 4px;
}
.padding-medium,
table td.padding-medium {
    padding: 10px;
}
.padding-medium-hz,
table td.padding-medium-hz {
    padding-left: 10px;
    padding-right: 10px;
}
.padding-medium-vt,
table td.padding-medium-vt {
    padding-top: 10px;
    padding-bottom: 10px;
}
.padding-large,
table td.padding-large {
    padding: 20px;
}
.padding-large-hz,
table td.padding-large-hz {
    padding-left: 20px;
    padding-right: 20px;
}
.padding-large-vt,
table td.padding-large-vt {
    padding-top: 20px;
    padding-bottom: 20px;
}
.position-absolute {
    position: absolute;
}
.position-fixed {
    position: fixed;
}
.position-relative {
    position: relative;
}
.push-down-small {
    margin-bottom: 4px;
}
.push-down-medium {
    margin-bottom: 10px;
}
.push-down-large {
    margin-bottom: 20px;
}
.push-up-small {
    margin-top: 4px;
}
.push-up-medium {
    margin-top: 10px;
}
.push-up-large {
    margin-top: 20px;
}
.push-left-small {
    margin-left: 4px;
}
.push-left-medium {
    margin-left: 10px;
}
.push-left-large {
    margin-left: 20px;
}
.push-right-small {
    margin-right: 4px;
}
.push-right-medium {
    margin-right: 10px;
}
.push-right-large {
    margin-right: 20px;
}
.quarter-width {
    width: 25%;
}
.small-text {
    font-size: 0.8em;
}
.square-control {
    width: 16px;
    height: 16px;
    padding: 2px;
    box-sizing: border-box;
    text-align: center;
    line-height: 14px;
    font-size: 12px;
    background-color: #2c3e50;
    color: white;
}
.table-layout-fixed {
    table-layout: fixed;
}
.third-width {
    width: 33.33%;
}
.tiny-text {
    font-size: 0.6em;
}
.word-break {
    word-break: break-word;
}
/* Color attributes */
.atx-blue {
    color: #3498db;
}
.atx-blue-bg {
    background-color: #3498db;
}
.atx-dark-blue {
    color: #2c3e50;
}
.atx-dark-blue-bg {
    background-color: #2c3e50;
}
.atx-gray {
    color: #bdc3c7;
}
.atx-gray-bg {
    background-color: #bdc3c7;
}
.atx-green {
    color: #5fbe54;
}
.atx-green-bg {
    background-color: #5fbe54;
}
.atx-orange {
    color: #ff7005;
}
.atx-orange-bg {
    background-color: #ff7005;
}
.atx-red {
    color: #bf392b;
}
.atx-red-bg {
    background-color: #bf392b;
}
.atx-red-hl {
    color: #e74c3c;
}
.atx-red-hl-bg {
    background-color: #e74c3c;
}
.black {
    color: black;
}
.black-bg {
    background-color: black;
}
.blue {
    color: dodgerblue;
}
.blue-bg {
    background-color: blue;
}
.orange {
    color: darkorange;
}
.orange-bg {
    background-color: orange;
}
.green {
    color: green;
}
.green-bg {
    background-color: green;
}
.red {
    color: red;
}
.red-bg {
    background-color: red;
}
.white {
    color: white;
}
.white-bg {
    background-color: white;
}
/* Cursor attributes */
.cursor-default {
    cursor: default;
}
.cursor-pointer {
    cursor: pointer;
}
/* Text font-style attributes */
.bold {
    font-weight: bold;
}
.italic {
    font-style: italic;
}
.underline {
    text-decoration: underline;
}
/* Text transform attributes */
.capitalize {
    text-transform: capitalize;
}
.lowercase {
    text-transform: lowercase;
}
.uppercase {
    text-transform: uppercase;
}
/* Animation attributes */
.ellipsis-loader:after {
    overflow: hidden;
    display: inline-block;
    vertical-align: bottom;
    animation: ellipsis steps(4,end) 900ms infinite;
    content: "\2026";
    width: 0;
}
@keyframes ellipsis {
    to {
        width: 1.25em;
    }
}
/* ------------------------------- */
/* Base responsiveness wide css */
/* Created by: Gilian v.d. Weijden */
/* Created on: 2017-1-4 */
/* Description: Stylizes and provides attributes to exclude/specialize elements for wide devices. */
/* Influences: base-elements.css, base-attributes.css, base-custom-controls.css, base-masterpage.css */
/* ------------------------------- */
/* >= 2560px */
@media screen and (min-width: 2560px) {
    /* Elements */
    body {
        font-size: 0.9em;
    }

    /* Masterpage */
    .topbar,
    .content {
        padding: 0 33.33%;
    }

    /* Messagebox */
    .messagebox img {
        top: 12px;
        left: 6px;
        width: 170px;
    }

    .messagebox .copyright {
        bottom: 6px;
        left: 6px;
    }

    /* Messagebox for loader */
    .messagebox.loader {
        margin-left: -225px;
        margin-top: -75px;
        width: 450px;
        height: 150px;
        line-height: 75px;
    }
}
/* <= 2560 */
@media screen and (max-width: 2560px) {
    /* Elements */
    body {
        font-size: 0.8em;
    }

    /* Masterpage */
    .topbar,
    .content {
        padding: 0 25%;
    }
}
/* >= 2048px */
@media screen and (min-width: 2048px) {
    /* Tile-group */
    .tilegroup .tilegroup-button.icon span {
        margin-top: 15px;
        font-size: 60px;
    }

    /* Tile-group control */
    .tilegroup .tilegroup-button {
        margin: 0 20px 20px 0;
    }
}
/* <= 2048px */
@media screen and (max-width: 2048px) {
    /* Elements */
    body {
        font-size: 0.75em;
    }
}
/* >= 1600px */
@media screen and (min-width: 1600px) {
    /* Page-block */
    .pageblock {
        padding: 20px;
    }

        .pageblock .pageblock-section:first-child {
            padding-right: 10px;
        }

        .pageblock .pageblock-section:not(:first-child) {
            padding-left: 10px;
        }

    /* Specialization attribute */
    .no-wide {
        display: none;
    }
}
/*  < 1600px */
@media screen and (max-width: 1599px) {
    /* Exclusion attribute */
    .wide-only {
        display: none;
    }
}
@media screen and (min-width: 768px) and (max-width: 1599px) {
    /* Masterpage */
    .topbar {
        padding: 0;
    }

    .content {
        padding: 0 10px;
    }

    /* Page-block */
    .pageblock {
        padding: 20px;
    }

        .pageblock .pageblock-section:first-child {
            padding-right: 10px;
        }

        .pageblock .pageblock-section:not(:first-child) {
            padding-left: 10px;
        }
}
/* 1920-2048 */
@media screen and (min-width: 1920px) and (max-width: 2047px) {
    /* Masterpage */
    .topbar,
    .content {
        padding: 0 20%;
    }
}
/* 1600-1920px */
@media screen and (min-width: 1600px) and (max-width: 1919px) {
    /* Masterpage */
    .topbar,
    .content {
        padding: 0 15%;
    }
}
/* ------------------------------- */
/* Base responsiveness compact css */
/* Created by: Gilian v.d. Weijden */
/* Created on: 2017-1-4 */
/* Description: Stylizes and provides attributes to exclude/specialize elements for compact devices. */
/* Influences: base-elements.css, base-attributes.css, base-custom-controls.css, base-masterpage.css */
/* Special attributes:
/*  - compact-only      (displays the element only in widths of <= 768px) */
/*  - no-compact        (hides the element in widths of > 768px) */
/*  - tiny-only        (displays the element in widths <= 480px) */
/*  - no-tiny  (hides the element in widths > 480px) */
/* ------------------------------- */
/* <= 1200px */
@media screen and (max-width: 1200px) {
    /* Elements */
    table thead td {
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    table td {
        padding: 4px;
    }

    ul {
        padding-left: 20px;
    }

    /* Page-block */
    .pageblock {
        padding: 20px;
    }

    .pageblock-section:first-child {
        padding-right: 10px;
    }

    .pageblock-section:not(:first-child) {
        padding-left: 10px;
    }

    /* SVG-container */
    .svg-container svg {
        min-height: 0;
        min-height: initial;
        margin: 0 auto;
    }

    /* Topbar */
    .topbar {
        padding: 0;
    }

        .topbar .topbar-menu.no-compact {
            display: none;
        }

    /* Content */
    .content {
        padding: 0 10px;
    }
}
/* >= 768px */
@media screen and (min-width: 768px) {
    /* Specialization attribute */
    .compact-only {
        display: none;
    }
}
/* < 768px */
@media screen and (max-width: 767px) {
    /* Use larger font-size for input controls */
    .input-label,
    input[type=number],
    input[type=text] {
        font-size: 16px;
    }

    table thead td {
        font-feature-settings: auto;
        font-kerning: auto;
    }

    /* Page-block */
    .pageblock {
        display: block;
        padding: 10px;
    }

        .pageblock .pageblock-section {
            display: block;
            margin-left: 0;
            width: 100%;
        }

            .pageblock .pageblock-section:first-child {
                margin-bottom: 20px;
                padding: 0;
            }

            .pageblock .pageblock-section:nth-child(2) {
                padding: 0;
            }

            .pageblock .pageblock-section.no-push:first-child {
                padding: 0;
                margin: 0;
            }

    /* Content-block */
    .content {
        top: 50px;
        padding: 0;
    }

    /* Messagebox */
    .messagebox img {
        top: 4px;
        left: 2px;
        width: 100px;
    }

    .messagebox .fadebar {
        height: 20px;
    }

    .messagebox .copyright {
        bottom: 2px;
        left: 2px;
    }

    /* Messagebox for loader */
    .messagebox.loader {
        margin-left: -100px;
        margin-top: -40px;
        width: 200px;
        height: 80px;
        line-height: 50px;
    }

    /* Exclusion attribute */
    .no-compact,
    .pageblock .no-compact {
        display: none;
    }
}
/* > 480px */
@media screen and (min-width: 481px) {
    /* Specialization attribute */
    .tiny-only {
        display: none;
    }
}
/* <= 480px */
@media screen and (max-width: 480px) {
    /* Exclusion attribute */
    .no-tiny {
        display: none;
    }

    /* List button control */
    .listbutton .multi-row .image {
        width: 60px;
        height: 90px;
    }
}
