/**
 *  Key colors
 **/
:root{
    --oanl-color-text: #1e1e1e;
    --oanl-color-link: #0066cc;
    --oanl-color-primary: #1C9BCE; 
    --oanl-color-primary-hover: #35B0E1;
    --oanl-color-primary-alt: #7c2b83;
    --oanl-color-primary-text: #ffffff; 
    --oanl-color-danger: #c82333;
    --oanl-color-danger-hover: #d9534f;
    --oanl-color-text-success: #3c763d;
    --oanl-color-text-danger: #c44846;
    --oanl-color-text-muted: #a0a0a0;
    
    --oanl-input-border-color: #bbb;
    --oanl-input-border-radius: 0.3rem;
    --oanl-input-border-width: 1px;
    --oanl-input-padding: 0.4em 0.3em 0.5em;
    --oanl-input-padding-block: 0.4em;
    --oanl-input-padding-inline: 0.3em;

    --oanl-btn-border-width: 1px;

    --oanl-border-radius: 0.2em;
    --oanl-border-radius-lg: 0.4em;
    --oanl-font-size: 14px;
}
/* Key font info */
body, input, textarea, select {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    color: var(--oanl-color-text);
    line-height: 19px;
}

a,a:visited {
    text-decoration: none;
    color: var(--oanl-color-link);
}

a img {
    border: none;
    vertical-align: middle;
}

h2 {
    font-size: 1.25em;
    font-weight: bold;
}
h3 {
    font-size: 1.17em;
    font-weight: bold;
}

h4 {
    font-size: 1em;
    font-weight: bold;
    margin: 0.75em 0;
}

ul h4 {
    margin-bottom: 0;
}

section:not([hidden])~section{
    margin-top: 2em;
}

section {
    h1,h2,h3,h4,h5,h6{
        &:first-child {
            margin-block-start: 0;
        }
    }
}


mark{
    background-color: #cce5ff;
    border-bottom: 1px solid var(--oanl-color-primary, #1C9BCE);
}

input{
    accent-color: var(--oanl-color-primary);
}

input:focus, select:focus, textarea:focus{
    outline-color: rgba(0,0,0,0.3);
}
button:focus{
    outline-color: rgba(0,0,0,0.2);
}

/**
 *  #menu_open is not used anymore
 **/
#menu_open {
    display:none;
}
.oa-padding{
    padding: 1em;
}

.rc {
  border: var(--oanl-input-border-color,#bbb) 1px solid;
  border-radius: var(--oanl-border-radius);
  padding: 0.5rem;
  margin-bottom: 1rem;
  position: relative;
}

.rc>h2:first-child, .rc>h3:first-child {
    margin-top: 0;
}
/*
 * Primary buttons
 */
.btn {
    --btn-pad-inline: 1em;
    --btn-pad-block: 0.7em;
    --btn-pad-icon-inline: 2.7em;
    --btn-icon-inset: 0.7em;
    display: inline-block;
    box-sizing: border-box;
    padding: var(--btn-pad-block) var(--btn-pad-inline);
    margin-bottom: 0;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
    background-image: none;
    border: var(--oanl-btn-border-width, 1px) solid transparent;
    border-radius: var(--oanl-input-border-radius, 0.2em);

    min-width: 12em;
    position: relative;
    
    background-color: #dddddd;
}

.btn:hover{
    background-color: #c8c8c8;
}

.btn:focus{
  outline-color: rgba(0,0,0,0.2);
}
.btn[hidden] {
    display: none;
}

.btn-primary, .btn-primary:visited{
    color: var(--oanl-color-primary-text, white);
    background-color: var(--oanl-color-primary);
    border-color: var(--oanl-color-primary);
}

.btn-primary-alt, .btn-primary-alt:visited{
    background-color: var(--oanl-color-primary-alt);
    border-color: var(--oanl-color-primary-alt);
}

.btn-warning, .btn-warning:visited{
    color: #fff;
    background-color: #f0ad4e;
    border-color: #eea236;
}
.btn-danger, .btn-danger:visited{
    color: #fff;
    background-color: var(--oanl-color-danger);
    border-color    : var(--oanl-color-danger);
}

.btn-secondary[type=reset],
.btn-primary[type=submit],
.btn-icon{
    padding-right : var(--btn-pad-icon-inline);
}
.btn-icon.btn-icon-left{
    padding-right: var(--btn-pad-inline);
    padding-left: var(--btn-pad-icon-inline);
}
/**
 Use images for the icons in the buttons
 */
.btn-icon>img.icon,
.btn-icon>svg.icon{
    position: absolute;
    display: block;
    right: 0.4em;
    z-index: 1;
    max-height: 2em;
    max-width: 2em;
    top: 50%;
    transform: translateY(-50%);
}
.btn-icon-left>img.icon,
.btn-icon-left>svg.icon{
    left: 0.4em;
    right: auto;
}

.btn-secondary[type=reset]:after,
.btn-primary[type=submit]:after,
.btn-icon:after{
    position: absolute;
    right: var(--btn-icon-inset);
    top: 50%;
    transform: translateY(-50%);
    font-family: FontAwesome;
    z-index: 1;
    font-size: 125%;
    line-height: 1.5rem;
    font-weight: 900;
}

.btn-small{
    --btn-pad-inline: 0.5em;
    --btn-pad-block: 0.25em;
    --btn-icon-inset: 0.4em;
    min-width:0;
    appearance: button;
}
.btn-small.btn-icon{
    --btn-pad-icon-inline: 1.5em;
}
.btn-small[type=reset]:after,
.btn-small[type=submit]:after,
.btn-small.btn-icon:after{
    font-size:0.9em;
}
.btn[disabled],
.btn.disabled{
    cursor: not-allowed;
    opacity: .5;    
}

.btn-icon.btn-icon-left:after{
    left : var(--btn-icon-inset);
    right: auto;
}

.btn-secondary[type=reset]:after, .btn-icon.btn-icon-refresh:after{
    content: '\f021';
}

.btn-primary[type=submit]:after, .btn-icon.btn-icon-next:after{
    content: '\f054';
    
}
.btn-icon.btn-icon-back:after{
    content: '\f060';
}
.btn-icon.btn-icon-previous:after{
    content: '\f053';
}

.btn-icon.btn-icon-add:after{
    content: '\f055';
}
.btn-icon.btn-icon-edit:after{
    content: '\f303';
}
.btn-icon.btn-icon-delete:after{
    content: '\f2ed';
    font-weight: 400;
    color: var(--oanl-color-text-danger);
}
.btn-primary.btn-icon.btn-icon-delete:after{
    color: white;
}
.btn-icon.btn-icon-clear:after{
    content: '\f00d';
}
.btn-icon.btn-icon-clear:hover:after{
    color: var(--oanl-color-text-danger);
}

.btn-icon.btn-icon-undo:after{
    content: '\f0e2';
}
.btn-icon.btn-icon-disable:after{
    content: '\f011';
    color: var(--oanl-color-text-danger);
}
.btn-primary.btn-icon-disable:after{
    color: inherit;
}
.btn-icon.btn-icon-filter:after{
    content: '\f0b0';
}
.btn-icon.btn-icon-search:after{
    content: '\f002';
}
.btn-icon.btn-icon-download:after{
    content: '\f019';
}
.btn-icon.btn-icon-upload:after{
    content: '\f093';
}
.btn-icon.btn-icon-save:after{
    content: '\f0c7';
}
.btn-icon.btn-icon-load:after{
    content: '\f07c';
    font-weight: 400;
}
.btn-icon.btn-icon-print:after{
    content: '\f02f';
}
.btn-icon.btn-icon-convert:after{
    content: '\f56e';
}
.btn-icon.btn-icon-barcode:after{
    content: '\f02a';
}
.btn-icon.btn-icon-mail:after{
    content: '\f0e0';
}
.btn-icon.btn-icon-share:after{
    content: '\f1e0';
}
.btn-icon.btn-icon-clock:after{
    content: '\f017';
    font-weight: normal;
}
.btn-icon.btn-icon-image:after{
    content: '\f03e';
    font-weight: 400;
}
.btn-icon.btn-icon-user:after{
    content: '\f007';
}
.btn-icon.btn-icon-user-add:after{
    content: '\f234';
}
.btn-icon.btn-icon-shop:after{
    content: '\f217';
}
.btn-icon.btn-icon-stock:after{
    content: '\f02d';
}
.btn-icon.btn-icon-signin:after{
    content: '\f2f6';
}
.btn-icon.btn-icon-signout:after{
    content: '\f08b';
}
.btn-icon.btn-icon-lock:after{
    content: '\f023';
}
.btn-icon.btn-icon-unlock:after{
    content: '\f3c1';
}
.btn-icon.btn-icon-external:after{
    content: '\f35d';
}
.btn-icon.btn-icon-list:after{
    content: '\f03a';
}
.btn-icon.btn-icon-web:after{
    content: '\f0ac';
}
.btn-icon.btn-icon-money:after{
    content: '\f3d1';
    font-weight: 400;
}
.btn-icon.btn-icon-creditcard:after{
    content: '\f09d';
    font-weight: 400;
}
.btn-icon.btn-icon-kassa:after{
    content: '\f788';
}
.btn-icon.btn-icon-monitor:after{
    content: '\f108';
}
.btn-icon.btn-icon-random:after{
    content: '\f074';
}
.btn-icon.btn-icon-config:after{
    content: '\f085';
}
.btn-icon.btn-icon-manage:after{
    content: '\f0ad';
}
.btn-icon.btn-icon-flag:after{
    content: '\f11d';
}
.btn-icon.btn-icon-flag-end:after{
    content: '\f11e';
}
.btn-icon.btn-icon-check:after{
    content: '\f00c';
}
.btn-icon.btn-icon-code:after{
    content: '\f121';
}

.btn-icon.btn-icon-google:after{
    font-family: 'Font Awesome 6 Brands';
    font-weight: 400;
    content: '\f1a0';
    color: #DD5044;
}
.btn-icon.btn-icon-facebook:after{
    font-family: 'Font Awesome 6 Brands';
    font-weight: 400;
    content: '\f09a';
    color: #3b5998;
}
.btn-icon.btn-icon-power:after{
    content: '\f011';
}
.btn-icon.btn-icon-copy:after{
    content: '\f24d';
    font-weight: 400;
}
.btn-icon.btn-icon-comment:after{
    content: '\f4ad';
    font-weight: 400;
}
.btn-icon.btn-icon-attachment:after{
    content: '\f0c6';
}
.btn-icon.btn-icon-dossier:after{
    content: '\f328';
}
.btn-icon.btn-icon-dossier-invite:after{
    content: '\f1e0';
}
.btn-icon.btn-icon-cog:after{
    content: '\f013';
}
.btn-icon.btn-icon-map-marked-alt:after{
    content: '\f5a0';
}
.btn-icon.btn-icon-clear:after{
    content: '\f00d';
}
.btn-icon.btn-icon-more:after,
.btn-icon.btn-icon-ellipsis:after{
    content: '\f141';
}
.btn-icon.btn-icon-text-danger:after{
    color: var(--oanl-color-text-danger);
}
.btn-icon.btn-icon-text-success:after{
    color: var(--oanl-color-text-success);
}
.btn.btn-icon.btn-icon-text-danger[disabled]:after,
.btn-icon.btn-icon-text-success[disabled]:after{
    color: inherit;
}
.btn-primary.btn-processing:after,
.btn-primary.btn-loading:after{
    content: '' !important;
}
.btn-primary.btn-processing:before,
.btn-primary.btn-loading:before{
    font-family: FontAwesome;
    font-weight: 900;
    content: '\f110';
    position: absolute;
    text-align: center;
    z-index: 2;
    -webkit-animation: fa-spin 1s infinite steps(8);
    animation: fa-spin 1s infinite steps(8);
    right: var(--btn-icon-inset);
    font-size: 125%;
    line-height: 1.5rem;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active{
  color: var(--oanl-color-primary-text);
  background-color: var(--oanl-color-primary-hover);
  border-color: var(--oanl-color-primary-hover);
}

.btn-primary-alt:hover,
.btn-primary-alt:focus,
.btn-primary-alt:active{
    color: var(--oanl-color-primary-text);
    background-color: var(--oanl-color-primary-alt);
    border-color: var(--oanl-color-primary-alt);
    background-color: rgb(from var(--oanl-color-primary-alt) r g b / 0.9);
    border-color: rgb(from var(--oanl-color-primary-alt) r g b / 0.9);
}

.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active{
    background-color: #ec971f;
    border-color: #d58512;
    outline-color: rgba(0,0,0,0.2);
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active{
    background-color: var(--oanl-color-danger-hover);
    border-color: var(--oanl-color-danger-hover);
}

.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus{
    background-color: var(--oanl-color-primary);
    border-color: #dde;
}
.btn-danger.disabled:hover,
.btn-danger.disabled:focus,
.btn-danger.disabled:active,
.btn-danger[disabled]:hover,
.btn-danger[disabled]:focus,
.btn-danger[disabled]:active{
    background-color: var(--oanl-color-danger);
    border-color: var(--oanl-color-danger);
}

.btn-secondary, 
a.btn-secondary, 
a.btn-secondary:visited{
  color: var(--oanl-color-primary);
  background-color: transparent;
  border-color: currentColor;
}
.btn-secondary.btn-danger,
.btn-secondary.btn-danger:visited{
    color: var(--oanl-color-text-danger);
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active{
  color: var(--oanl-color-primary);
  background-color: #e6e6e6;
}
.btn-secondary.btn-danger:hover,
.btn-secondary.btn-danger:focus,
.btn-secondary.btn-danger:active{
  color: var(--oanl-color-danger);
  background-color: #e6e6e6;
}
.btn-secondary.disabled:hover,
.btn-secondary[disabled]:hover,
.btn-secondary.disabled:focus,
.btn-secondary[disabled]:focus,
.btn-secondary.disabled.focus,
.btn-secondary[disabled].focus{
    color: var(--oanl-color-primary);
    background-color: transparent;
}
.btn-secondary.btn-danger.disabled:hover,
.btn-secondary.btn-danger.disabled:focus,
.btn-secondary.btn-danger.disabled:active,
.btn-secondary.btn-danger[disabled]:hover,
.btn-secondary.btn-danger[disabled]:focus,
.btn-secondary.btn-danger[disabled]:active{
  color: var(--oanl-color-danger);
  background-color: #e6e6e6;
}

.btn-light{
    border-color: transparent !important;
}
a.btn-light,
a.btn-light:hover,
a.btn-light:focus,
a.btn-light:active,
a.btn-light:visited{
    color: var(--oanl-color-link);
}
.btn-inline, .btn-inline:visited{
    --btn-pad-inline: 0.5em;
    --btn-pad-icon-inline: 1.7em;
    --btn-pad-block: 0;
    color: inherit;
    border-color: currentColor;
    background-color: transparent;
    min-width: 0;
    line-height: inherit;
}
.btn-inline.btn-icon:after{
    font-size: 100%;
}
.btn-inline+.btn-inline{
    margin-left:0.5em;
}
.btn+.btn{
    margin-left:0.5em;
}
.btn+.btn.btn-full-width{
    margin-left:0;
}
.btn.btn-full-width+.btn.btn-full-width{
    margin-top: -1px;
}
/*
   Button should have the same height as the input fields
 */
.form-row .btn-inline,
.form-row .btn-small,
.form-input-container .btn-inline,
.form-input-container .btn-small {
    padding-block: var(--oanl-input-padding-block);
    vertical-align: baseline;
}

.btn-full-width{
    width : 100%;
    box-sizing: border-box;
}
.btn-fw-wide{
    width:20em;
}
.btn-fw-medium{
    width:13em;
}

/*
 Stacked buttons, removes rounded borders from the middle buttons
 (Promoted from the widget module)
 */
.oanl-btn-group-vertical{
    .btn{
        display: block;
        margin-inline: 0;
    }
    .btn:not(:last-child){
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
    .btn:not(:first-child){
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        margin-top: calc(-1 * var(--oanl-btn-border-width,1px));
    }

    .btn-primary+.btn-primary{
        border-top-color: currentColor;
    }

}
/**
 Horizontal variation with collapsing internal borders, but with the internal rounded borders
 */
.oanl-btn-group-horizontal{
    display: flex;
    .btn{
        flex-grow:1;
        width:100%;
        margin-inline: 0;
    }
    .btn:not(:last-child){
/*        border-top-right-radius: 0;
        border-bottom-right-radius: 0;*/
    }
    .btn:not(:first-child){
/*        border-top-left-radius: 0;
        border-bottom-left-radius: 0;*/
        margin-inline-start: calc(-1 * var(--oanl-btn-border-width,1px));
    }
}

.clear {
  clear: both;
}

/* Messages */
#glob_message {
  border: 1px solid #68698C;
  border-radius: 3px;
  background: #ffffff;
	position: absolute;
	width: 400px;
	margin-left: -202px;
	margin-top: -50px;
	overflow: hidden;
	z-index: 1005; /* resource planner app form has z-index 1002 */
}

#glob_form {
	position: absolute;
	min-width: 600px;
	margin-left: -202px;
	margin-top: -100px;
	z-index: 900;
	border:2px solid;
	background:#FFFFFF;
}

.glob_message-error {
	background: #ccccff;
	border: #365980 1px solid;
    border-radius:3px;
}

.glob_message-warning {
	background: #ccccff;
	border: #365980 1px solid;
    border-radius:3px;
}

.glob_message-notice {
	background: #ccddf2;
	border: #365980 2px solid;
	color: #294666;
}

.glob_message-successful {
	background: #ccccff;
	border: #365980 2px solid;
	color: #294666;
}

#glob_message_text {
	margin: 20px;
	padding: 0;
	overflow: hidden;
	line-height: 20px;
}

#glob_message_text img {
	margin: 10px 10px 20px 0;
    display: block;
    float: left;
}

#glob_message_btns {
	text-align: center;
	margin-bottom: 10px;
}

#glob_message_text ul {
  float: left;
}

#glob_message_btns span.btn_input {
	margin: 20px;
}

.glob_message_action_btn{
    margin-left:20px;
}

#glob_message .close_popup_btn {
  position:absolute;
  top:0;
  right:3px;
  width:30px;
  height:17px;
  padding-bottom: 1px;
  display:block;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  text-align: center;
  border-color: #0093c9;
  border-width: 0 1px 1px 1px;
  border-style: solid;
  background: linear-gradient(top, #34abde 0%,#34abde 75%,#0093c9 100%); /* W3C */
}
/* Based on jquery ui close icon */
#glob_message .close_popup_btn span.ui-icon-closethick{
    background-image: url("jquery-ui/redmond/images/ui-icons_d8e7f3_256x240.png");
    background-position: -96px -128px;
    width: 16px;
    height: 16px;
    display: inline-block;
}
#glob_message .close_popup_btn:hover span.ui-icon-closethick {
    background-image: url(jquery-ui/redmond/images/ui-icons_217bc0_256x240.png);
}

img.ajax-loading {
	position: fixed;
	top : 50%;
	left: 50%;
	display: none;
	z-index: 2000;
}

/* Pagination */
.page_nav .pageSizeList {
  float:right;
  padding:0;
  margin:0 10px 0 0;
  clear:both;
}
.page_nav .pageSizeList select {min-width:4em;}

ul.yiiPager .page a {
	font-weight: normal;
}
ul.yiiPager .selected a {
	color: white;
	background-color: var(--oanl-color-link);
}
ul.yiiPager .page a {
	font-weight: normal;
}
ul.yiiPager .selected a {
	color: white;
	background-color: var(--oanl-color-link);
}

/* Schedule editor */
#scheduleEditor,
.scheduleEditor {
  min-width: 580px;
  overflow: auto;
}

#scheduleEditor table,
.scheduleEditor table {
	padding: 0 !important;
	width: auto !important;
    border-right-width: 0;
}

#scheduleEditor tbody td,
.scheduleEditor tbody td {
	border-right: #B7DDF2 1px solid;
	padding: 5px 0 10px 5px;
	width: 120px;
	min-width: 116px;
}
.input-time {
    width   : 3em;
    padding : 0.3em 1px;
}

input.oa-clockpicker {
    width: 3.5em;
}

#scheduleEditor .input-time,
.scheduleEditor .input-time {
  margin-bottom: 5px;
  font-size: 12px; /* A little bit smaller because otherwise we cannot fit 7 days in the schedule*/
}

#scheduleEditor .action,
.scheduleEditor .action {
  cursor: pointer;
  position: relative;
  top: 0;
  left: 2px;
}

#scheduleEditor .error,
.scheduleEditor .error {
  background: transparent;
  padding: 0;
}
/* Make sure that the popup with the (resource) schedule is above block-content */
.schedule-popup{
    z-index:30;
    position: relative;
    background-color: white;
    border: 1px solid #B7DDF2;
    border-radius: 3px;
    padding: 0 10px 10px;
}
.schedule-popup h3{
    font-size: 14px;
    margin: 8px 0;
}

.schedule-popup .spacer{
    height: 40px;
}
.schedule-popup .btn_input+.btn_input{
    margin-left: 10px;
}

/* Data grid */
/* begin data grid style */
table.dataGrid {
	background: white;
	width: 100%;
	border: 1px #b7ddf2 solid;
	padding: 0;
	margin: 10px 0;
    border-spacing: 0;
    box-sizing: border-box;
}

table.dataGrid tr {
	padding: 0;
	margin: 0;
}
table.dataGrid tr.odd,
table.dataGrid tbody tr:nth-child(odd) {
	background: #E6F2FF;
}

table.dataGrid tr.odd:hover,
table.dataGrid tbody tr:nth-child(odd):hover,
table.dataGrid tbody tr:hover {
    background-color: #FFF6BF;
}

table.dataGrid tr.notice{
    background-color: #C2FAAC !important;
}

table.dataGrid th,table.dataGrid td {
	padding: 0.6rem 0.5rem;
	margin: 0;
	vertical-align: top;
}

table.dataGrid th {
	background: #d3dfee;
	text-align: left;
  border-right: 1px solid white;
}

table.dataGrid th:hover {
	background: #bbd7fb;
}

table.dataGrid th:last-child {
	border-right: none;
}

table.dataGrid thead th>a {
  display: inline-block;
}
table.dataGrid thead th>a:last-child{
  width: 100%;
} 
table.dataGrid thead th>a ~ a{
  width: auto !important;
}

table.dataGrid th a.desc, table.dataGrid th a.asc{
    position: relative;
    background-image: none;
}

table.dataGrid th a.desc:after,
table.dataGrid th a.asc:after{
    position:absolute;
    right: 0;
    top: 5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8.7px 5px 0 5px;
    border-color: var(--oanl-color-primary-alt) transparent transparent transparent;
    content: ' ';
}
table.dataGrid th a.asc:after{
    border-width: 0 5px 8.7px 5px;
    border-color: transparent transparent var(--oanl-color-primary-alt) transparent;
}

table.dataGrid tfoot:first-of-type{
    border-top: 1px #b7ddf2 solid;
}

/* for hilighter*/
table.dataGrid {
  table-layout: fixed;
  overflow: hidden;
}

table.dataGrid td, table.dataGrid th{
  overflow: hidden;
}

table.dataGrid tr.odd td.hilighted{
	color: #e6f2ff;
}

table.dataGrid td.hilighted{
  color: #ffffff;
}

table.dataGrid td.error{
    background: #ffb0b0;
}
table.dataGrid td.warning{
    background: #FFD324;
}
table.dataGrid td.subscription-discontinued{
    text-decoration: line-through;
}

tr.deleted {
    text-decoration: line-through;
}

#hilighter{
  position:absolute;
  background:#ffffff;
  z-index:900;
  border:1px solid #ddd;
  cursor:default;
  padding: 0.3em;
  margin-left: -0.3em;
  margin-top: -0.3em;
  
  box-shadow: 0.05em 0.05em 0.4em 0 rgba(0,0,0,0.25);
}
/* ### for hilighter*/

table.dataGrid th img,
table.dataGrid td img {
    vertical-align: middle;
}
table.dataGrid td a img {
    padding: 2px 3px;
}
/* begin data grid Users List style (used only for /subscription/consappsplan)*/
table.dataGridUsrL {
	background: white;
	border-collapse: collapse;
	width: 100%;
}
table.dataGridUsrL th,
table.dataGridUsrL td {
	font-size: 0.9em;
	border: 1px #4F81BD solid;
	padding: 5px;
}
table.dataGridUsrL th {
	background: #d3dfee;
	text-align: center;
}
table.dataGridUsrL tr.odd {
	background: #E6F2FF;
}
/**
 *  Cell types (described by their content)
 **/
tbody th {
    text-align: left;
}

td.tbl-cell-center,
td.tbl-cell-photo,
th.tbl-cell-center,
th.tbl-cell-photo {
    text-align: center;
}

th.tbl-cell-code,
th.tbl-cell-text,
td.tbl-cell-text{
    text-align: left;
}
td.tbl-cell-code{
    text-align: left;
    font-family: monospace;
}

th.tbl-cell-right,
th.tbl-cell-currency,
th.tbl-cell-number,
th.tbl-cell-percentage,
th.tbl-cell-date,
td.tbl-cell-right,
td.tbl-cell-currency,
td.tbl-cell-number,
td.tbl-cell-percentage,
td.tbl-cell-date{
    text-align: right;
}

td.tbl-cell-actions{
    white-space: nowrap;
}

td.tbl-cell-photo img{
    display: inline-block;
    border-radius: var(--oanl-border-radius);
}
td,th {
    /*
      Class can be used for table cells where you expect long words (like urls).
      This class should not be used for small columns as the column will not stretch with the word length.
     */
    &.tbl-cell-wrap-anywhere {
        overflow-wrap: anywhere;
    }
}

tr.tbl-row-hidden{
    display:none;
}

/**
 *
 **/
ul.oa-data-list{
    list-style-type: none;
    padding-left:0;
    color: #303030;
}
ul.oa-data-list > li{
    margin: 0.5rem 0;
    background-color: #f7f7f7;
    border-radius: var(--oanl-border-radius);
    padding: 0.5rem;
    overflow: hidden;
}
ul.oa-data-list > li:first-child{
    margin-top : 0;
}
ul.oa-data-list > li:last-child{
    margin-bottom : 0;
}
ul.oa-data-list > li > p:last-child{
    margin-bottom: 0;
}
ul.oa-data-list > li>h4{
    margin-top: 0;
}

ul.oa-data-list .oa-list-actor{
    color:var(--oanl-color-text-muted);
}
/**
 * A list of events (see f.e. the details of an appointment)
 **/
ul.oa-event-list{
    list-style-position: outside;
    padding-left: 0;
}
ul.oa-event-list>li+li{
    margin-top:1em;
}
ul.oa-event-list>li::marker{
    font-size: 114%;
}

.oa-list-box-left {
    float:left;
    padding : 5px;
    border-radius: 3px;
    font-size:200%;
    margin-right:20px;
    min-width: 1.7em;
    border: 1px solid #303030;
    text-align: center;
}
.oa-list-box-right {
    float:right;
    padding : 5px;
    min-width: 1.7em;
    border: 1px solid #eee;
    text-align: right;
}

.oa-list-box-inverted{
    color: white;
    background-color: #303030;
}

/* Settings form */
#settingForm .simple-checkbox {
	padding: 0;
	margin: 0 0 0 10px;
}

#settingForm .simple-checkbox {
	margin-left: 0;
}

#settingForm .settings-block,
.content-block {
	border: #c8c8c8 1px solid;
	padding: 0 8px 8px 8px;
	border-radius: 3px;
	margin-bottom:10px;
}
#settingForm .settings-block>h3{
    margin-top:5px;
}

#formsection_allownewusers
{
	margin-left: 20px;
}

/* Left floating radio buttons/check boxes (useful when combined with multiline labels) */
.form-radio-left{
    float      : left;
    margin-top : 0;
    margin-right: 2px;
}
.form-checkbox-left{
    float      : left;
    margin-top : 0;
    margin-right: 2px;
}
/* Facility assign form */
#facilitiesList td {
  width: 250px;
}
/* Appslistcustomer form */
#applist-filters{
    overflow: hidden;
}
#applist-filters .rc, .filters .rc {
  float: left;
  margin-right: 20px;
  height: 150px;
  position: relative;
}

#applist-filters select {
  width:210px;
}

#applist-filters .filter_row, .filters .filter_row {
  margin-bottom:10px;
}

#applist-filters ul {
  margin: 10px 0;
  padding: 0;
  list-style-type: none;
}

#applist-filters li {
  margin-bottom: 4px;
}

table.form td.submit>div,
.form-div div.submit-row{
	position: absolute;
	bottom: 15px;
	right: 15px;
	width: 220px;
    text-align: right;
    z-index:1;
}

img.expand{
	margin: 0 0 0 4px;
	cursor: pointer;
}
#start-wizard-btn {
    background-color: var(--oanl-color-primary);
    border-radius: var(--oanl-border-radius);
    border: none;
    padding: 0;
    cursor: pointer;
    width: 257px;
    height: 55px;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
}

#start-wizard-btn:hover {
    background-color: var(--oanl-color-primary-hover);
}

/* AppsTypes / AppsTypesCombinations */

.color-preview {
  display: inline-block;
  width: 1.1em;
  height: 1.1em;
  border: transparent 1px solid;
  border-radius: 50%;
}

.sortable-linklist,
.form-combi-editor-list{
  border: #b7ddf2 1px solid;
  border-bottom: none;
  padding: 0;
  min-width: 750px;
}
.sortable-linklist {
  margin: 0 0 0 10px;
}
.sortable-linklist li,
.form-combi-editor-list li{
  height: 29px;
  line-height: 29px;
  position: relative;
  padding-left: 5px;
  list-style: none;
  border-bottom: 1px solid #b7ddf2;
}
.form-combi-editor-list li:nth-child(even) {
  background: var(--oanl-color-header-secondary);
}
.form-combi-row-header, .form-combi-row-footer{
    font-weight: bold;
    background-color: #D3DFEE;
}
.form-combi-editor-list>li>div>span{
    display: inline-block;
    border-right: 1px solid #b7ddf2;
    padding: 0 4px;
    white-space: nowrap;
    overflow:hidden;
}
.form-combi-editor-list>li>div>span:last-child{
    border-right:none;
}
.form-combi-editor-list li.form-combi-row-add{
    height: auto;
}
.form-combi-item-position{
    width   : 20px;
}
.form-combi-item-primary{
    width   : 120px;
}
.form-combi-item-name{
    width   : 250px;
}
.form-combi-item-name select{
    width   : 250px;
}

.form-combi-item-duration{
    width   : 100px;
}
.form-combi-item-buffer{
    width   : 120px;
}
a.form-combi-icon{
    display: inline-block;
    width: 16px;
    margin: 0 2px;
    cursor: pointer;
}

.sortable-linklist li.row-a {
  background: var(--oanl-color-header-secondary);
}

.sortable-linklist li .actions,
.sortable-linklist li .section {
  position: absolute;
  right: -1px;
  top: 0;
  text-align: center;
  height: 23px;
  padding: 5px 2px 2px 2px;
  width: 48px;
  border-left: #b7ddf2 1px solid;
}

.sortable-linklist li .section {
  right: 50px;
  width: 68px;
}

.sortable-linklist li .actions img {
  cursor: pointer;
}

.sortable-linklist li .actions img.handle {
  cursor: n-resize;
}

.sortable-linklist-header {
  margin-left: 190px;
  background: #d3dfee;
  position: relative;
  height: 29px;
  line-height: 29px;
  padding-left: 5px;
  font-weight: bold;
}

.sortable-linklist-header .actions,
.sortable-linklist-header .section {
  position: absolute;
  top:  0;
  right: 0;
  height: 29px;
  line-height: 29px;
  text-align: center;
  width: 52px;
}

.sortable-linklist-header .section {
  right: 50px;
  width: 68px;
}

.block-content {
    opacity: 0.6;
    background-color: white;
    position: absolute;
    z-index: 2;
}

.page-size-selector{
    text-align: right;
    margin-bottom: 5px;
}
/*
 *  Bar of action/info boxes at the top of the page
 */
 .actionbar{
     overflow: hidden;
     list-style-type: none;
     padding-left: 0;
 }
 .actionbar>li{
     height      : 6.5em;
     padding     : 0.5em;
     width       : 22em;
     float       : right;
     margin-left : 10px;
 }
 .actionbar>li.active{
     background  : #e4fedb;
 }
 .actionbar>li>img:first-child{
     float       : left;
     margin      : 11px 10px 11px 0;
 }
 .actionbar>li>img:first-child+div{
     overflow:hidden;
 }
 .actionbar>li h3 {
     margin-top     : 0;
     margin-bottom  : 4px;
 }
 .actionbar>li .navbar{
     margin-top: 5px;
 }

 /* Styling for the popup in the appointment list */
 .popup-applist .popup-columncontainer{
     overflow: hidden;
 }
 .popup-applist .popup-column {
     float:left;
     width:49%;
 }
 .popup-applist .popup-column+.popup-column{
     margin-left: 1.5%;
 }
 .popup-applist th{
     vertical-align: baseline;
     text-align: left;
     padding-left:0;
     padding-right:3px;
 }
 .popup-applist img.leftfloat {
     padding      : 5px;
     border       : 1px solid #C1C2C2;
     float        : left;
     margin-right : 5px;
 }
 .ui-widget-content.popup-applist a{
     color: var(--oanl-color-link);
 }

 .popup-applist h3{
     margin-bottom: 5px;
 }
 .popup-applist h3:first-child{
     margin-top: 0;
 }
 .popup-applist .buttonbox {
     float:right;
     width:auto;
     overflow:hidden;
 }
 .popup-applist .buttonbox>input[type=button],
.popup-applist .buttonbox>button {
     width: 150px;
 }
 .popup-applist .popup-top{
     padding-bottom: 5px;
     margin-bottom: 5px;
     border-bottom: 1px solid #cccccc;
 }
 .popup-applist p {
     margin:0;
     line-height: 1.5;
 }

 .popup-applist p.warning {
    padding: 0 0 0 20px;
    background: url(images/icons/error.png) 0 0 no-repeat;
 }

 .dialog-confirm .ui-dialog-titlebar{
     display:none;
 }
 .dialog-confirm .ui-dialog-content div.dialog-confirm-content{
     padding: 10px 0;
     font-size: 120%;
 }

/* Styles for the sorting of app types */
ul.apptype-order-sortable-group{
    list-style-type: none;
    padding: 0;
    width: 40rem;
}
ul.apptype-order-sortable-group>li{
    padding: 0;
    margin: 5px 0;
}
ul.apptype-order-sortable-group>li>h4{
    background-color: #efefef;
    border: 1px dotted grey;
    padding: 0.4em;
    border-radius: 3px;
    margin-top: 0;
}
ul.apptype-order-sortable-apptype{
    list-style-type: none;
    padding: 0;
    padding-left: 0.5rem;
}
ul.apptype-order-sortable-apptype>li{
    height: 1.5rem;
    margin:1px;
    padding: 0.4em;
    border: 1px dotted grey;
    border-radius: 3px;
    background-color: rgba(255,255,255,0.7);
    white-space: nowrap;
}
ul.apptype-order-sortable-apptype>li span.color-preview{
    margin-right: 4px;
}
ul.apptype-order-sortable-apptype>li>span{
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    margin-right: 4px;
}
ul.apptype-order-sortable-apptype>li span.apptype-name{
    width : 24rem;
}
ul.apptype-order-sortable-apptype>li span.apptype-duration{
    width : 6rem;
}
ul.apptype-order-sortable-apptype>li span.apptype-price{
    width : 6rem;
    text-align: right;
}

ul.apptype-order-sortable-apptype.ui-sortable>li,
ul.apptype-order-sortable-group.ui-sortable>li>h4 {
    cursor: move;
}
ul.apptype-order-sortable-apptype.ui-sortable.ui-sortable-disabled>li,
ul.apptype-order-sortable-group.ui-sortable.ui-sortable-disabled>li>h4 {
    cursor: default;
}

/* Styles for sorting of products */
ul.products-order-sortable-group{
    list-style-type: none;
    padding: 0;
    width: 40rem;
}
ul.products-order-sortable-group>li{
    padding: 0;
    margin: 5px 0;
}
ul.products-order-sortable-group>li>h4{
    background-color: #efefef;
    border: 1px dotted grey;
    padding: 0.4em;
    border-radius: 3px;
    margin-top: 0;
}
ul.products-order-sortable-product{
    list-style-type: none;
    padding: 0;
    padding-left: 0.5rem;
}
ul.products-order-sortable-product>li{
    height: 1.5rem;
    margin:1px;
    padding: 0.4em;
    border: 1px dotted grey;
    border-radius: 3px;
    background-color: rgba(255,255,255,0.7);
    white-space: nowrap;
}
ul.products-order-sortable-product>li span.color-preview{
    margin-right: 4px;
}
ul.products-order-sortable-product>li>span{
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    margin-right: 4px;
}
ul.products-order-sortable-product>li span.product-name{
    width : 24rem;
}
ul.products-order-sortable-product>li span.product-price{
    width : 6rem;
    text-align: right;
}
ul.products-order-sortable-product.ui-sortable>li,
ul.products-order-sortable-group.ui-sortable>li>h4 {
    cursor: move;
}
ul.products-order-sortable-product.ui-sortable.ui-sortable-disabled>li,
ul.products-order-sortable-group.ui-sortable.ui-sortable-disabled>li>h4 {
    cursor: default;
}


.ui-dialog .color-preview,
.qtip .color-preview {
    margin-right: 2px;
    width: 0.9em;
    height: 0.9em;
}


a.nocolor {
    color : inherit;
    cursor: pointer;
}
a.nocolor:hover {
    text-decoration: underline;
}

.weekday-list{
    border: 1px solid #B7DDF2;
    width: 47em;
}
.weekday-list .input-time{
    margin-left: 0.2em;
}
h4.weekday-header {
    background: #D3DFEE;
    padding:0.5em;
    margin: 1px;
}
h4.weekday-header span.weekday-actions{
    float:right;
    text-align:right;
    white-space: nowrap;
    width : 200px;
    position: relative;
    top: -0.35em;
}
h4.weekday-header span.weekday-actions img{
    margin-left:3px;
    margin-right:3px;
    vertical-align: top;
}

.icon-hidden {
    display: none;
}
/**
 *  Gray out icons so that things are not 'too much'
 */
.specifictimes-icon{
    filter: grayscale(100%);
    cursor:pointer;
}
.specifictimes-icon:hover{
    filter: none;
}
h4.weekday-header:hover .specifictimes-icon{
    filter: none;
}
tr.specifictimes-rule-row:hover .specifictimes-icon{
    filter: none;
}

table.specifictimes-daytable{
    width : 100%;
    margin-bottom: 0.5em;
}
tr.specifictimes-rule-row>td{
    min-width: 60px;
}
tr.specifictimes-rule-row>td:last-child{
    text-align: right;
    padding-right: 7px;
}

.specifictimes-details-tooltip-header {
    font-weight: bold;
    padding-bottom: 2px;
    margin-bottom: 2px;
    border-bottom: 1px solid #ccc;
}

.specifictimes-details-tooltip-footer {
    padding-top: 2px;
    margin-top: 2px;
    border-top: 1px solid #ccc;
}

.specifictimes-details-tooltip td{
    padding : 4px;
}

/**
 *  Apparently Edge does not do clicks on inline elements that have a filter applied
 **/
.specifictimes-icon{
    display:inline-block;
}

#booking-flow {
    
}
.booking-flow-step{
    overflow: hidden;
    margin: 5px 0;
}
.booking-flow-step >h3 {
    float:left;
    width: 150px;
    padding: 5px 10px;
    height: 62px;
    background-color: #C9D9EE;
    border-bottom-left-radius: 4px;
    border-top-left-radius: 4px;
    margin :0;
}
.booking-flow-step >h3.disabled {
    color: #666666;
    background-color: #E0E6EE;
}
.booking-flow-step .booking-flow-step-explanation{
    margin-left: 174px;
    border: 1px solid #c8c8c8;
    border-bottom-right-radius: 4px;
    border-top-right-radius: 4px;
    height: 61px;
    padding: 5px;
    overflow: hidden;
}
.booking-flow-step .booking-flow-step-explanation> ul{
    margin: 0;
}

.booking-flow-arrow {
    height: 32px;
    overflow:hidden;
}
.booking-flow-arrow>img {
    display: block;
    margin-left: 64px;
}
.booking-flow-form{
    display: none;
}

.oa-tooltip-content{
    display: none;
    min-width: 250px;
    max-width: 400px;
}

.applist-consumer-name:hover{
    text-decoration: underline;
}
.applist-consumer-details{
    display: none;
    min-width: 250px;
    max-width: 400px;
}
.applist-consumer-details td{
    vertical-align: top;
}
.applist-qtip-details{
    display: none;
    min-width: 250px;
    max-width: 400px;
}
.qtip-details{
    display: none;
    min-width: 15em;
    max-width: 30em;
}
.ui-tooltip-wide .qtip-details{
    max-width: 35em;
}

table.propertyTable th, table.propertyTable td:first-child{
      text-align:left;
      padding-right: 10px;
      vertical-align: top;
  }
  table.propertyTable th.groupHeader{
      padding-top : 12px;
  }
  table.propertyTable tr:first-child th.groupHeader{
      padding-top : 0;
  }

  table.propertyTable td.number{
      text-align:right;
  }

/**
 *  Styling of the checkout page
 */
.checkout-paymethod-option{
    background-color: var(--oanl-color-header-secondary);
    overflow: auto;
    margin: 5px 0;
}
.checkout-paymethod-option.checkout-paymethod-selected{
    background-color: #FFF6BF;
}

.checkout-paymethod-option td{
    border-bottom: 10px solid white;
    vertical-align: top;
    border-radius: 3px;
}

label.checkout-paymethod-checkbox{
    display:block;
    min-height: 40px;
    width: 40px;
    text-align: center;
    padding: 10px 0 0;
    vertical-align: top;
}
.checkout-paymethod-logo{
    min-height: 40px;
    width: 50px;
    padding: 3px;
    text-align: center;
    vertical-align: top;
}
.checkout-paymethod{
    padding: 4px;
    overflow: hidden;
}
.checkout-paymethod>h4{
    margin-top: 0;
}

.checkout-price-totalinclusive{
    font-weight:bold;
}
.list-hover-content{
    display: none;
    min-width: 250px;
    max-width: 400px;
    padding:2px;
}

.oa-columns{
    overflow: hidden;
}

.oa-columns-maxheight{
    max-height: 6.4em;
    overflow-y: auto;
}

.oa-columns-column{
    width: 170px;
    overflow: hidden;
    float: left;
    margin-right: 5px;
    box-sizing: border-box;
}

.oa-columns-column-has-5{
    width       : 19.6%;
    margin-right: 0.5%;
}
.oa-columns-column-has-4{
    width       : 24.6%;
    margin-right: 0.5%;
}
.oa-columns-column-has-3:last-child,
.oa-columns-column-has-4:last-child,
.oa-columns-column-has-5:last-child{
    margin-right: 0;
}
.oa-columns-column-has-3{
    width: 33.1%;
    margin-right: 0.3%;
}

.oa-columns-column-has-2{
    width: 49%;
    margin-right: 1%;
}
.oa-columns-column-has-1{
    width: 100%;
    margin-right: 0;
}

.oa-columns-row{
    overflow: hidden;
    margin: 0.2em 0;
}

.oa-columns-column input[type=checkbox],
.oa-columns-column input[type=radio]{
    float: left;
    margin-top: 0;
}
.form-row .oa-columns-row input[type=checkbox]{
    margin-top: 0;
}

.oa-columns-column label{
    display: block;
    margin-left : 1.5em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: top;
    margin-bottom: 1px;
}
.oa-form-table .oa-columns-column input[type=checkbox]{
    height: 1.55em;
}

.oa-linkbar{
    margin: 8px 0;
}

a.oa-link-icon, a.oa-link-icon:active, a.oa-link-icon:visited{
    color:inherit;
}
a.oa-link-icon:hover{
    color: inherit;
}
a.oa-link-icon{
    position        : relative;
    display         : inline-flex;
    align-items     : center;
    justify-content : center;
    width           : 2em;
    height          : 2em;
    opacity         : 0.9;
}

a.oa-link-icon:hover,
a.oa-link-icon:focus,
a.oa-link-icon:active{
    opacity : 1;
}
a.oa-link-icon.text-default{
    color: var(--oanl-color-text);
}
a.oa-link-icon.text-danger{
    color: var(--oanl-color-text-danger) !important;
}
a.oa-link-icon.text-success{
    color: var(--oanl-color-text-success);
}
a.oa-link-icon.text-warning{
    color: #8a6d3b;
}

a.oa-link-icon:before{
    content: '';
    display: block;
    opacity: 0;
    position: absolute;
    transition-duration: .15s;
    transition-timing-function: cubic-bezier(0.4,0.0,0.2,1);
    bottom: -0.25em;
    left: -0.25em;
    right: -0.25em;
    top: -0.25em;
    background: none;
    background-color: currentColor;
    border-radius: 50%;
    box-sizing: border-box;
    transform: scale(0);
    transition-property: transform,opacity;    
}
a.oa-link-icon:hover:before{
    opacity: 0.1;
    transform: scale(1);
}
a.oa-link-icon:active:before{
    opacity: 0.15;
}
a.oa-link-icon>i {
    z-index: 1;
}
a.oa-link-icon+a.oa-link-icon{
    margin-left: 0.2em;
}
.oa-link-icon.oa-link-icon-disabled,
.oa-link-icon.oa-link-icon-disabled:hover,
.oa-link-icon.oa-link-icon-disabled:focus,
.oa-link-icon.oa-link-icon-disabled:active{
    opacity: 0.4;
    cursor: not-allowed;
}
a.oa-link-icon.oa-link-icon-disabled:hover:before{
    opacity: 0;
    transform: scale(0);
}

.oa-link-icon-container{
    white-space: nowrap;
    width: fit-content;
    overflow:visible;
    color: var(--oanl-color-text);
}

.oa-label-checked{
    font-weight: bold;
}

.clockpick, .ui-datepicker-trigger{
    vertical-align: text-bottom;
    margin-left: 2px;
    margin-right: 2px;
    cursor: pointer;
}

.oa-table-comment{
    color:#777;
}

/**
 *  Message display
 **/
.oa-message-headers th{
    font-weight: normal;
    color:#aaa;
    text-align: right;
    min-width : 3.5em;
    padding: 0.1em;
}
.oa-message-headers th:after{
    content: ':';
}
.oa-message-headers td{
    font-weight: bold;
    padding: 0.1em;
}
.oa-message-body{
    border: 1px solid #ccc;
    padding: 1em; 
    height:30em; 
    overflow-y:auto;
}

.oa-border-box{
    box-sizing: border-box;
}

.oa-badge{
    text-align: center;
    display:inline-block;
    padding: 0.2em;
    border-radius: 0.2em;
}
.oa-badge-domain{
    background-color: black;
    min-width: 2.5em;
    color: white;
}
#layout-list {
    margin: 0;
    margin-top: -1rem;
    padding: 0;
}
#layout-list li {
    list-style: none;
    margin-top: 2rem;
}
#layout-list h3 {
    margin: 0;
    text-align: center;
    height: 3rem;
}
.layout-select {
  text-align: center;
}

.layout-select img {
    cursor:pointer;
    border: #c8c8c8 1px solid;
    border-radius: var(--oanl-border-radius);
    width: 10em;
    padding:0.5em;
}
.layout-select:not(.layout-disabled):hover img,
.layout-select img.active-item{
    width: 11em;
    padding:0.166em 0;
}


.layout-disabled img {
    opacity: 0.4;
    cursor: default;
}

.layout-select.layout-select-active img {
    outline: 0.2em solid var(--oanl-color-primary, #1C9BCE);
    border-color: transparent;
}

.layout-disabled img.active-item {
  border: #cecece 3px solid;
}

.layout-select-orientation,
.layout-select-wizard,
.layout-select-filters,
.layout-select-pricing {
    position: absolute;
    top: 0;
    left: 0;
    width:150px;
    padding: 5px;
    height:140px;
    overflow:hidden;
    z-index: 10;
    background: #fff;
}
.layout-select-new {
    height: 140px;
    display: none;
}
.layout-select-new.active-item {
    display: block;
}
.layout-select-orientation.active-item,
.layout-select-wizard.active-item,
.layout-select-pricing.active-item,
.layout-select-filters.active-item {
    height: 270px;
    box-shadow: 3px 3px 5px 0 rgba(0,0,0,0.75);
}

.layout-select-orientation.active-item .layout-select img.active-item,
.layout-select-wizard.active-item .layout-select img.active-item,
.layout-select-pricing.active-item .layout-select img.active-item,
.layout-select-filters.active-item .layout-select img.active-item {
    border: 3px solid var(--oanl-color-primary, #1C9BCE);
}

.layout-select-filters.active-item {
   height: 400px;
}
.layout-select-orientation.active-item .layout-select-new,
.layout-select-wizard.active-item .layout-select-new,
.layout-select-pricing.active-item .layout-select-new,
.layout-select-filters.active-item .layout-select-new {
    display: block;
}

table.dataGrid tbody tr.alert-success:nth-child(2n+1){
    background-color: #d5e6cf;
}

table.dataGrid tbody tr.alert-success:nth-child(2n+1):hover{
    background-color: #fff6bf;
}

.drag-handle {
    position:absolute;
    right:2px;
    top:2px;
    max-width:1em;
    cursor:move;
}

.oanl-menubox-right{
    float: right;
    width: 15em;
    padding: 4px;
    overflow: hidden;
    margin-bottom: 1rem;
    position: relative;
    z-index: 1;
    background-color: white;
}
/**
 *   Note: the following is based on bootstrap css:
 *   .text-*
 *   .bg-*
 *   .alert-*
 *   .m?-*
 **/
.mt-0{
    margin-top : 0 !important;
}
.mt-3{
    margin-top : 1rem !important;
}
.mb-0{
    margin-bottom : 0 !important;
}
.mb-3{
    margin-bottom : 1rem !important;
}
.mb-4{
    margin-bottom : 1.5rem !important;
}
.mb-5{
    margin-bottom : 3rem !important;
}

.text-default{
    color: var(--oanl-color-text);
    text-decoration: none;
}

.text-muted, .text-weak{
  color: var(--oanl-color-text-muted);
}
.text-muted em, .text-weak em{
    text-decoration: underline;
}

.text-emphasis{
    font-style: italic;
}

.text-strike{
    text-decoration: line-through;
}
.text-success{
    color: #55a656;
}
.text-warning {
  color: #ae864e;
}
a.text-warning:hover {
  color: #c79f50;
}
.text-danger,
.text-error{
  color: var(--oanl-color-text-danger);
}
a.text-danger:hover,
a.text-error:hover{
  color: #db4e4c;
}
.text-info{
    color: #0066CC;
}
a.text-info{
    color: #0066CC;
}
a.text-info:hover,
a.text-info:active,
a.text-info:focus{
    color: #0066CC;
}
.text-uppercase{
    text-transform: uppercase;
}

.text-large{
    font-size: 1.25em;
}
.text-xlarge{
    font-size: 2em;
}

li.li-success::marker{
    color: var(--oanl-color-text-success);
}
li.li-danger::marker,
li.li-error::marker{
    color: var(--oanl-color-text-danger);
}
li.li-warning::marker{
    color: #8a6d3b;
}
li.li-info::marker{
    color: #0066CC;
}
li.li-muted::marker{
    color: var(--oanl-color-text-muted);
}


.bg-success{
  background-color: #dff0d8;
}
a.bg-success:hover {
  background-color: #c1e2b3;
}
.bg-info {
  background-color: #d9edf7;
}
a.bg-info:hover {
  background-color: #afd9ee;
}
.bg-warning{
  background-color: #fcf8e3;
}
a.bg-warning:hover {
  background-color: #f7ecb5;
}
.bg-danger{
  background-color: #f2dede;
}
a.bg-danger:hover {
  background-color: #e4b9b9;
}

.border-danger, .border-error{
    border: 1px solid var(--oanl-color-text-danger);
}

/**
 *   Alert boxes (errors, notices, info, warning, etc.)
 **/
.alert {
    padding: 1em;
    margin-bottom: 1em;
    border: 1px solid transparent;
    border-radius: var(--oanl-border-radius);
    overflow: hidden;
}
span.alert {
    display:inline-block;
    padding: 0.3em 0.7em;
}

.alert> :first-child{
    margin-top: 0;
}
.alert> :last-child{
    margin-bottom: 0;
}

.alert>ul{
    padding-left: 0;
    list-style-position: inside;
    list-style-type: '- ';
}

.alert-muted {
    border-color: var(--oanl-color-text-muted);
}
.alert-success {
    color: var(--oanl-color-text-success);
    background-color: #dff0d8;
    border-color: #d6e9c6;
}
.alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1;
}
.alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc;
}

.alert-hint {
  border-color: #c8c8c8;
}


.alert-danger, .alert-error {
    color: var(--oanl-color-text-danger);
    background-color: #f2dede;
    border-color: #ebccd1;
}

.alert.alert-icon{
    padding-left: 3.5em;
    position: relative;
}
.alert.alert-icon:before{
    font-family: FontAwesome;
    font-size: 150%;
    top: calc(50% - 1rem);
    left: 0.75rem;
    position: absolute;
    font-weight: 900;
    width: 1.25em;
    text-align: center;    
}
.alert.alert-icon.alert-success:before{
    content: '\f00c';
}
.alert.alert-icon.alert-info:before{
    content: '\f05a';
}
.alert.alert-icon.alert-hint:before{
    content: '\f05a';
    font-size: 200%;
    top: calc(50% - 1.25rem);
    left: 0.5rem;
    color: #888;
}
.alert.alert-icon.alert-muted:before{
    content: '\f05a';
    color: #bbb;
}
.alert.alert-icon.alert-warning:before{
    content: '\f071';
}
.alert.alert-icon.alert-danger:before,
.alert.alert-icon.alert-error:before{
    content: '\f071';
}
.alert.alert-icon.alert-icon-loading:before{
    content: '\f110';
    -webkit-animation: fa-spin 1s infinite steps(8);
    animation: fa-spin 1s infinite steps(8);
}

/**
 *   .oanl-box is used to group content into boxes
 *
 *   It is a bit similar to .rc, but with a bit more structure
 **/
.oanl-box{
    --oanl-box-header-background: var(--oanl-color-header-secondary);
    --oanl-box-border: #d3dfee;
    --oanl-box-padding: 0.5rem;
    max-width : 60rem;
    border : 1px solid var(--oanl-box-border);
    border-radius: var(--oanl-border-radius-lg);
    &.oanl-box-muted{
        --oanl-box-header-background: #eee;
        --oanl-box-border: #eee;
}
    &.oanl-box-selected{
        --oanl-box-border: var(--oanl-color-primary);
    }
}
.oanl-box-fullwidth{
    max-width: none;
}

.oanl-box-header{
    background-color: var(--oanl-box-header-background);
    padding:var(--oanl-box-padding) 0;
    align-items: center;
    border-top-left-radius: var(--oanl-border-radius-lg);
    border-top-right-radius: var(--oanl-border-radius-lg);
}
.oanl-box-header h3{
    margin : 0;
}

.oanl-box-footer{
    border-top : 1px solid #d3dfee;
    margin-top : var(--oanl-box-padding);
    border-bottom-left-radius: var(--oanl-border-radius-lg);
    border-bottom-right-radius: var(--oanl-border-radius-lg);
}

.oanl-box-padding{
    padding: var(--oanl-box-padding);
}
.oanl-box-padding>h3:first-child{
    margin-top: 0;
}
.label {
    display: inline-block;
    padding: .3em .6em;
    font-size: .9em;
    line-height: 1;
    color: #fff !important;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: var(--oanl-border-radius);
}

/**
 *  Hack for the labels in semantic ui
 **/
.ui.label{
    color: rgba(0,0,0,.7) !important;
}

a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.label:empty {
  display: none;
}
.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
  background-color: #449d44;
}
.label-info {
  background-color: #1c9bce;
}
.label-info[href]:hover,
.label-info[href]:focus {
  background-color: #35b0e1;
}

.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
  background-color: #ec971f;
}

.label-danger,
.label-error {
  background-color: var(--oanl-color-danger-hover);
}
.label-danger[href]:hover,
.label-danger[href]:focus,
.label-error[href]:hover,
.label-error[href]:focus {
  background-color: #c9302c;
}

.label-muted{
    background-color: #aaa;
}

.label-invert{
    background-color: transparent;
    border: 1px solid currentColor;
    font-weight: bold;
    color: inherit !important;
}
.label-invert.label-success{
    color: #5cb85c;
}
.label-invert.label-warning{
    color: #f0ad4e;
}
.label-invert.label-danger{
    color: var(--oanl-color-danger-hover);
}
.label-invert.label-info{
    color: #1c9bce;
}

.oanl-hide {
    display: none;
}

.float-right{
    float:right;
}
.float-left{
    float:left;
}

.oanl-flex-container{
    --oanl-gap: 0;
    gap: var(--oanl-gap);
    display: flex;
}
.oanl-flex-wrap{
    flex-wrap: wrap;
}
.oanl-flex-gap{
    --oanl-gap: 1em;
}
.oanl-flex-gap-xl{
    --oanl-gap: 3em;
}
.oanl-flex-fillout{
    justify-content: space-between;
}

.oanl-flex-item{
    flex-grow: 1;
}
.oanl-flex-item-nogrow{
    flex-grow: 0;
    flex-shrink: 0;
}
.oanl-flex-item-right{
    order: 99;
}

.oanl-flex-item-equal{
    flex-grow: 1;
    width: 100%;
}

.oanl-flex-center{
    margin: auto;
}
.oanl-flex-center-horizontal{
    margin: 0 auto;
}
.oanl-flex-item.rc,
.oanl-flex-item-nogrow.rc{
    margin-bottom: 0;
}
.oanl-flex-vertical{
    flex-direction: column;
    align-items: stretch;
}

.oanl-relative{
    position: relative !important;
}
.oanl-absolute{
    position: absolute !important;
    inset: 0;
}
.oanl-fixed{
    position: fixed !important;
}
.oanl-raised{
    z-index: 50;
}
.oanl-center-block{
    display:block;
    margin-right: auto;
    margin-left: auto;
}

.oanl-bottom-center{
    bottom: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

.oanl-toast-container{
    width: max-content;
    max-width: 30rem;
}
.oanl-toast-container .alert{
    border-color: currentColor;
}

.rounded{
    border-radius: 0.1rem;
}
.rounded-lg{
    border-radius: 0.3rem;
}

/* Adapt to even lower resolutions */
@media all and (max-width: 499px) {
    .thumbnail{
        display:none;
    }
}

#theme-advanced-container {
    position: relative;
}
#theme-advanced-container .theme-advanced-container-overlay,
#theme-advanced-container .theme-advanced-container-overlay-2 {
    display: none;
    position: absolute;
    inset: 0;
    z-index:99;
    text-align: center;
}
#theme-advanced-container.disabled .theme-advanced-container-overlay,
#theme-advanced-container.disabled .theme-advanced-container-overlay-2 {
    display: block;
}

#theme-advanced-container .theme-advanced-container-overlay {
    background: #fff;
    opacity: 0.85;
}
ul.oanl-list-noindent{
    padding-left: 0;
    list-style-position: inside;
    list-style-type: '-';
    margin-block-start: 0;
}

.oanl-separator{
    height: 0;
    margin: 2em 1em;
    overflow: visible;
    border-top: 1px solid #bbb;
    display: flex;
}
.oanl-separator-text{
    position: relative;
    top: -0.7em;
    padding: 0 2em;
    margin: auto;
    background-color: white;
}
.oanl-progress{
    display: flex;
    height: 1.5rem;
    overflow: hidden;
    font-size: .75rem;
    background-color: #e9ecef;
    border-radius: .25rem;    
}

.oanl-progress.oanl-progress-light{
    background-color: #ddd;
    opacity: 0.7;
}
.oanl-progress-bar{
    background-color: currentColor;
}
.oanl-progress-label{
    position: absolute;
    inset: 0;
    text-align: center;
    line-height: 2em;
    text-shadow: 0 0 0.2em white;
}
ul.oa-list-no-padding{
    padding-left : 1em;
}

.advanced-hidden {
    display: none;
}

img.bordered{
    border: 1px solid var(--oanl-color-text-muted);
    border-radius: var(--oanl-border-radius);
}

img.oa-flag{
    border-radius: 0.15em;
    margin: 0 0.1em;
}

.oa-print-show{
    display:none !important;
}

@media print {
    .oa-print-hide{
        display: none !important;
    }
    .oa-print-show{
        display: block !important;
    }
    
    .oa-print-show input{
        border-width: 0 0 1px 0;
    }
    
    .dashboard-shadow, .dashboard-shadow-2{
        box-shadow: none !important;
    }        
}

.resource-sorter {
    background-color:#ccc;
    border-radius:5px;
    padding:5px;
}

.oanl-service-table>li:not(:first-child){
    margin-top: 1rem;
}


/**
 * Css-only tooltips
 * Usage: <div class="oanl-tooltip" data-oanl-tooltip="Content of tooltip">text</div>
 *
 * Limitations:
 *  - do not use on elements that already define a :before and/or an :after (like FontAwesome icons)
 *  - the tooltip is cut off by elements that have overflow: hidden
 **/
.oanl-tooltip{
    position: relative;
}
.oanl-tooltip:after{
    position: absolute;
    content: attr(data-oanl-tooltip);
    text-align: left;
    font-weight: normal;
    bottom: calc(100% + 0.5em);
    background-color: #555;
    padding: 0.5em;
    border-radius: var(--oanl-border-radius);
    color: #fff;
    width: max-content;
    min-width:4em;
    max-width:20em;
    right: 50%;
    transform: translateX(50%);
}
.oanl-tooltip:before{
    content: '';
    position: absolute;
    bottom: calc(100% - 0.6em);
    border-width: 0.6em;
    border-style: solid;
    border-color: #555 transparent transparent transparent;
    right: 50%;
    transform: translateX(50%);
}
.oanl-tooltip:before,
.oanl-tooltip:after{
    display: none;
    transition: all 0.25s;
    transition-behavior: allow-discrete;
    opacity: 0;
}

.oanl-tooltip:hover:before,
.oanl-tooltip:hover:after{
    display: block;
    opacity: 1;
    @starting-style {
        opacity: 0;
    }
}

.nowrap{
    white-space: nowrap;
}