/*
 * SPDX-FileCopyrightText: Copyright (C) 2016 Opal Health Informatics Group at the Research Institute of the McGill University Health Centre <john.kildea@mcgill.ca>
 *
 * SPDX-License-Identifier: AGPL-3.0-or-later
 */

@charset "UTF-8";

/* ===============================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Corrects block display not defined in IE6/7/8/9 & FF3
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
    display: block; }

/*
 * Corrects inline-block display not defined in IE6/7/8/9 & FF3
 */
audio,
canvas,
video {
    display: inline-block;
    *display: inline;
    *zoom: 1; }

/*
 * Prevents modern browsers from displaying 'audio' without controls
 */
audio:not([controls]) {
    display: none; }

/*
 * Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4
 * Known issue: no IE6 support
 */
[hidden] {
    display: none; }

/* =============================================================================
   Base
   ========================================================================== */
/*
 * Corrects text resizing oddly in IE6/7 when body font-size is set using em units
 */
html {
    font-size: 100%;
    height: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%; }

/*
 * Addresses font-family inconsistency between 'textarea' and other form elements.
 */
/*
 * Addresses margins handled incorrectly in IE6/7
 */
body {
    margin: 0;
    position: relative;
    height: 100%; }

/* =============================================================================
   Links
   ========================================================================== */
/*
 * Addresses outline displayed oddly in Chrome
 */
a:focus {
    outline: thin dotted; }

/*
 * Improves readability when focused and also mouse hovered in all browsers
 */
a:hover,
a:active {
    outline: 0; }

/* =============================================================================
   Typography
   ========================================================================== */
/*
 * Addresses styling not present in IE7/8/9, S5, Chrome
 */
abbr[title] {
    border-bottom: 1px dotted; }

/*
 * Addresses style set to 'bolder' in FF3+, S4/5, Chrome
*/
b, strong {
    font-weight: 700; }

/*
 * Addresses styling not present in S5, Chrome
 */
i {
    font-style: italic; }

/*
 * Addresses styling not present in IE6/7/8/9
 */
mark {
    background: #ff0;
    color: #000; }

/*
 * Addresses margins set differently in IE6/7
 */
p,
pre {
    margin: 1em 0; }

/*
 * Corrects font family set oddly in IE6, S4/5, Chrome
 */
pre,
code,
kbd,
samp {
    font-family: monospace, serif;
    _font-family: 'courier new', monospace;
    font-size: 1em; }

/*
 * Improves readability of pre-formatted text in all browsers
 */
pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word; }

/*
 * 1. Addresses CSS quotes not supported in IE6/7
 * 2. Addresses quote property not supported in S4
 */
/* 1 */
q {
    quotes: none; }

/* 2 */
q:before,
q:after {
    content: '';
    content: none; }

small {
    font-size: 75%; }

/*
 * Prevents sub and sup affecting line-height in all browsers
 */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline; }

sup {
    top: -0.5em; }

sub {
    bottom: -0.25em; }

/* =============================================================================
   Lists
   ========================================================================== */
/*
 * Addresses margins set differently in IE6/7
 */
/*dl,
menu,
ol,
ul {
  margin: 1em 0; }*/

dd {
    margin: 0 0 0 40px; }

/*
 * Addresses paddings set differently in IE6/7
 */
/*menu,
ol,
ul {
  padding: 0 0 0 40px; }*/

/*
 * Corrects list images handled incorrectly in IE7
 */
nav ul,
nav ol {
    list-style: none;
    list-style-image: none; }

/* =============================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3
 * 2. Improves image quality when scaled in IE7
 */
img {
    border: 0;
    /* 1 */
    -ms-interpolation-mode: bicubic;
    /* 2 */ }

/*
 * Corrects overflow displayed oddly in IE9
 */
svg:not(:root) {
    overflow: hidden; }

/* =============================================================================
   Figures
   ========================================================================== */
/*
 * Addresses margin not present in IE6/7/8/9, S5, O11
 */
figure {
    margin: 0; }

/* =============================================================================
   Forms
   ========================================================================== */
/*
 * Corrects margin displayed oddly in IE6/7
 */
form {
    margin: 0; }

/*
 * Define consistent border, margin, and padding
 */
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em; }

/*
 * 1. Corrects color not being inherited in IE6/7/8/9
 * 2. Corrects text not wrapping in FF3
 * 3. Corrects alignment displayed oddly in IE6/7
 */
legend {
    border: 0;
    /* 1 */
    padding: 0;
    white-space: normal;
    /* 2 */
    *margin-left: -7px;
    /* 3 */ }

/*
 * 1. Corrects font size not being inherited in all browsers
 * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome
 * 3. Improves appearance and consistency in all browsers
 */
button,
input,
select,
textarea {
    font-size: 100%;
    /* 1 */
    margin: 0;
    /* 2 */
    vertical-align: baseline;
    /* 3 */
    *vertical-align: middle;
    /* 3 */ }

/*
 * Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet
 */
button,
input {
    line-height: normal;
    /* 1 */ }

/*
 * 1. Improves usability and consistency of cursor style between image-type 'input' and others
 * 2. Corrects inability to style clickable 'input' types in iOS
 * 3. Removes inner spacing in IE7 without affecting normal text inputs
 *    Known issue: inner spacing remains in IE6
 */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    cursor: pointer;
    /* 1 */
    -webkit-appearance: button;
    /* 2 */
    *overflow: visible;
    /* 3 */ }

/*
 * Re-set default cursor for disabled elements
 */
button[disabled],
input[disabled] {
    cursor: default; }

/*
 * 1. Addresses box sizing set to content-box in IE8/9
 * 2. Removes excess padding in IE8/9
 * 3. Removes excess padding in IE7
      Known issue: excess padding remains in IE6
 */
input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
    *height: 13px;
    /* 3 */
    *width: 13px;
    /* 3 */ }

/*
 * 1. Addresses appearance set to searchfield in S5, Chrome
 * 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof)
 */
input[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    /* 2 */
    box-sizing: content-box; }

/*
 * Removes inner padding and search cancel button in S5, Chrome on OS X
 */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none; }

/*
 * Removes inner padding and border in FF3+
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0; }

/*
 * 1. Removes default vertical scrollbar in IE6/7/8/9
 * 2. Improves readability and alignment in all browsers
 */
textarea {
    overflow: auto;
    /* 1 */
    vertical-align: top;
    /* 2 */
    resize: none; }

/* =============================================================================
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells
 */
table {
    border-collapse: collapse;
    border-spacing: 0; }

/* =============================================================================
   Helper classes that are used throughout the pages
   ========================================================================== */
/* For modern browsers */
.clearfix:before,
.clearfix:after {
    content: "";
    display: table; }

.clearfix:after {
    clear: both; }

/* For IE 6/7 (trigger hasLayout) */
.clearfix {
    *zoom: 1; }

/* Full browser */
body {
    /*position: relative;*/
    font-family: 'Nunito', Arial, Helvetica, sans-serif;
    background-color: #e6edfa;
    height: 100%;
    font-variant: normal;
    line-height: 18px;
    color: #6f5499;
    overflow-y: auto;

    /* Stops Mobile Safari from auto-adjusting font-sizes */
    -webkit-text-size-adjust: 100%;
    /* improves the text rendering in more recents browsers */
    text-rendering: optimizeLegibility; }

#page {
    /*max-width: 1500px;*/
    padding-top: 55px;
    margin: 0 auto;
    position: relative;
    height: 100%; }

.gradient-bg {
    background: #e6edfa;
    background: -moz-linear-gradient(top,  #e6edfa 0%, #e6edfa 29%, #f3e7e9 100%);
    background: -webkit-linear-gradient(top,  #e6edfa 0%,#e6edfa 29%,#f3e7e9 100%);
    background: linear-gradient(to bottom,  #e6edfa 0%,#e6edfa 29%,#f3e7e9 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e6edfa', endColorstr='#f3e7e9',GradientType=0 );

    padding: 0;
}
.blur {
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;

    filter:blur(4px);
    -o-filter:blur(4px);
    -ms-filter:blur(4px);
    -moz-filter:blur(4px);
    -webkit-filter:blur(4px);
}
.nav, .pagination, .pager, .carousel, .panel-title a { cursor: pointer; }
/* ===============================================
 * Generic Styles
 * =============================================== */
h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
    font-weight: 500;
    line-height: 1.1; }

h1, h2, h3 {
    margin-bottom: 10px; }

h1 {
    font-size: 36px;
}

h2 {
    font-size: 1.33333em;
}
h3 {
    font-size: 1em;
}

p {
    margin: 0 0 1.14286em 0; }

p:last-child {
    margin-bottom: 0; }

blockquote {
    padding-left: 22px;
    margin: 1.14286em 54px 1.14286em 54px;
    font-style: italic; }
blockquote ol, blockquote ul {
    margin-left: 0; }

blockquote::before {
    content: ''; }

blockquote::after {
    content: ''; }

b,
strong {
    font-weight: 700; }

i, em {
    font-style: italic; }

del {
    text-decoration: line-through; }

a {
    text-decoration: none;
    color: #111;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out; }

a:hover, a:focus {
    /*color: #6f5499;*/
    text-decoration: none; }

code {
    padding: 0.5em;
    font-size: 0.7em;
    background-color: #f5f5f5;
    color: #444444;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px; }


/*
 * HEADER
 */

header {
    border-bottom: 1px solid #111;
    padding: 23px 20px 5px 20px;
    margin-bottom: 20px;
    -webkit-transition: padding .2s ease-in-out;
    -moz-transition: padding .2s ease-in-out;
    -ms-transition: padding .2s ease-in-out;
    -o-transition: padding .2s ease-in-out;
    transition: padding .2s ease-in-out; }


/*
 * MAIN
 */

#top {
    padding: 10px; }

.list-space {
    min-height: 200px; }

ul.list-items, ul.list-items-4col {
    max-height: 200px;
    overflow-y: auto;
    list-style: none;
    border: 1px #ccc solid;
    margin-top: 10px;
    padding-left: 15px;
    border-radius: 5px; }

ul.list-items li {
    float: left;
    width: 50%; }

ul.list-items-4col li {
    float:left;
    width: 25%; }

ul.no-list {
    list-style: none;
    margin: 0; }

.editUserModal .modal-dialog {
    width: 98% !important;
}

.customModal .modal-content,
.logModal .modal-content,
.editUserModal .modal-content {
    background-color: #e6edfa;
}

/* distance between stacked modals*/
/* The first modal translateZ value*/
.container {
    margin: 5em auto;
}

.about-opal {
    margin: 0 auto;
}

#main {
    position: relative;
    padding: 0px 14px 15px;
}

.none-to-display-container {
    padding-top: 10%;
    padding-bottom: 1%;
    vertical-align: middle;
}

.none-to-display-container .content {
    text-align: center;
}

.none-to-display-container .content h1.icon {
    font-size: 165px;
}

.none-to-display-container .content p {
    font-size: 45px;
}

.login-container {
    padding-top: 19%;
    padding-bottom: 1%;
    vertical-align: middle;
}
.login-title {
    text-align: center;
    font-size: 18px;
    font-weight: 700;
}
.login-register-block-main {
    margin-bottom: 20px;
    margin-top: 20px;
}
.form-box {
    position: relative;
    background: #fff;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    padding: 27px 30px 25px;
    box-shadow: rgba(0, 0, 0, 0.6) 0px 3px 10px -3px;
}

/* Turn on custom 8px wide scrollbar */
::-webkit-scrollbar {
    width: 10px; /* 1px wider than Lion. */
    /* This is more usable for users trying to click it. */
    background-color: rgba(0,0,0,0);
    -webkit-border-radius: 100px;
}
/* hover effect for both scrollbar area, and scrollbar 'thumb' */
::-webkit-scrollbar:hover {
    background-color: rgba(0, 0, 0, 0.09);
}

/* The scrollbar 'thumb' ...that marque oval shape in a scrollbar */
::-webkit-scrollbar-thumb:vertical {
    /* This is the EXACT color of Mac OS scrollbars.
       Yes, I pulled out digital color meter */
    background: rgba(0,0,0,0.5);
    -webkit-border-radius: 100px;
    background-clip: padding-box;
    border: 2px solid rgba(0, 0, 0, 0);
    min-height: 10px; /*Prevent it from getting too small */
}
::-webkit-scrollbar-thumb:vertical:active {
    background: rgba(0,0,0,0.61); /* Some darker color when you click it */
    -webkit-border-radius: 100px;
}

/* Turn on custom 8px wide scrollbar */
#side-panel-scrollbar #side-panel-scroll::-webkit-scrollbar {
    width: 10px; /* 1px wider than Lion. */
    /* This is more usable for users trying to click it. */
    background-color: rgba(0,0,0,0);
    -webkit-border-radius: 100px;
}
/* hover effect for both scrollbar area, and scrollbar 'thumb' */
#side-panel-scrollbar #side-panel-scroll::-webkit-scrollbar:hover {
    background-color: rgba(0, 0, 0, 0.09);
}

/* The scrollbar 'thumb' ...that marque oval shape in a scrollbar */
#side-panel-scrollbar #side-panel-scroll::-webkit-scrollbar-thumb:vertical {
    /* This is the EXACT color of Mac OS scrollbars.
       Yes, I pulled out digital color meter */
    background: rgba(255,255,244,1);
    -webkit-border-radius: 100px;
    background-clip: padding-box;
    border: 2px solid rgba(0, 0, 0, 0);
    min-height: 10px; /*Prevent it from getting too small */
}
#side-panel-scrollbar #side-panel-scroll::-webkit-scrollbar-thumb:vertical:active {
    background: rgba(255,255,244,1); /* Some darker color when you click it */
    -webkit-border-radius: 100px;
}

#side-panel-scrollbar #side-panel-scroll {
    overflow-y: auto;
    max-height: 80vh;
}

#side-panel-scrollbar {
    display: none;
}

#gradient {
    position:absolute;
    z-index:2;
    right:0; bottom:0; left:0;
    height:13vh;
    background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(230,237,250,1) 75%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(75%,rgba(230,237,250,1)));
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(230,237,250,1) 75%);
    background: -o-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(230,237,250,1) 75%);
    background: -ms-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(230,237,250,1) 75%);
    background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(230,237,250,1) 75%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
}

.circle {
    width: 110px;
    height: 110px;
    background: #fff;
    -moz-border-radius: 70px;
    -webkit-border-radius: 70px;
    border-radius: 70px;
    position: absolute;
    margin-top: -80px;
    right: -45px;
    z-index: 100;
}

.panel-description {
    font-size: 16px;
}

.side-logo {
    text-align: center;
    cursor: pointer;
}

.side-logo h1 {
    margin-top: -15px;
    font-size: 2vw;
}

.home-side-menu {
    vertical-align: middle;
}

.home-side-menu .title {
    display: inline;
    font-size: 25px;
    font-weight: 700;
}

.main-title {
    /*height: 60px;*/
}

.main-title .title-content {
    font-size: 27px;
    margin-bottom: 10px;
}

.main-title .title-content h1 {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    font-size: 24px;
}

.main-title .title-content span {
    vertical-align: middle;
}

.main-title .title-function {
    text-align: center;
}

.main-title .title-breadcrumbs {
    text-align: right;
    font-size: 15px;
    padding-top: 15px;
    display: none;
}

.title-breadcrumbs .teflon {
    font-size: 10px;
}

.title-breadcrumbs a{
    color: #6f5499;
}

.render-html-iphone4 {
    max-width: 320px;
    height: 480px;
    word-wrap: break-word;
    border: 1px solid #000;
    border-radius: 5px;
    padding: 5px;
    color: #000;
    margin-left: auto;
    margin-right: auto;
}

.previewContainer {
    width: 100%;
    height: 80vh;
    float: right;
    background-color: #fff;
    word-wrap: break-word;
    line-height: 100%;
    border: 1px;
    border-radius: 10px;
    margin-bottom: auto;
    padding: 5px;
    text-align: left;
    overflow: auto;
}

.previewContent {
    margin: 10px;
}

.panel-buttons,
.panel-input {
    padding-top: 10px;
}
.panel-input .table {
    text-align: left;
}
.panel-title-custom {
    text-align: left;
    border-bottom: 1px solid #e1e8ed;
}
.panel-buttons-inverse {
    background-color: #0084B4;
    border-bottom-right-radius: 7px;
    border-bottom-left-radius: 7px;
    height: 100px;
}
.panel-buttons-inverse p {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.side-panel-info-sm {
    padding: 10px;
    background-color: #fffff4;
    border: 1px solid #e1e8ed;
    border-radius: 7px;
    height: 45px;
}
.side-panel-info-md {
    padding: 10px;
    background-color: #fffff4;
    border: 1px solid #e1e8ed;
    border-radius: 7px;
    height: 80px;
}

.side-panel-info {
    padding: 10px;
    background-color: #fffff4;
    border: 1px solid #e1e8ed;
    border-radius: 7px;
    height: 70px;
}

.panel-info.active,
.side-panel-info-sm.active,
.side-panel-info.active {
    background-color: #6f5499;
}

.edit-panel-info {
    padding: 10px;
    background-color: #fffff4;
    border: 1px solid #e1e8ed;
    border-radius: 7px;
    /*height: 70px;*/
}

.active-purple-full {
    color: #fff;
    background-color: #563d7c;
    border-color: #563d7c;
}

.panel-info {
    padding: 10px;
    background-color: #fff;
    border: 1px solid #e1e8ed;
    border-radius: 7px;
}
.panel-info .panel-title h2 {
    padding: 0;
    font-size: 26px;
    line-height: 20px;
    margin: 0;
    margin-top: 15px;
}

.panel-content {
    position: relative;
    text-align: left;
    margin-right: auto;
    margin-left: auto;
    vertical-align: middle;
    padding: 10px;
}

.mobile-side-panel-menu{
    margin-left: -25px;
}

.side-panel-menu .panel-content,
.mobile-side-panel-menu .panel-content {
    padding: 3px;
    height: 100%;
    display: flex;
    align-items: center;
}

.panel-container {
    position: relative;
    text-align: center;
    margin-right: -7px;
    margin-left: -7px;
    vertical-align: middle;
    color: #6f5499;
    margin-bottom: 10px;
    box-shadow: rgba(0, 0, 0, 0.6) 0px 3px 10px -3px;
}
.panel-container.active {
    color: #fffff4;
}

.panel-container.disabled {
    cursor: not-allowed !important;
    box-shadow: none;
    color: #999;
}

.panel-content #form_wrapper {
    position: relative;
    margin: 15px;
    height: 125px;
}

.ui-grid-cell {
    color: #444;
}

.ui-grid-cell a {
    color: #6f5499;
}

.ui-grid-cell a:hover {
    color: #433061;
}

.greenText {
    color: #5cb85c;
}

.redText {
    color: #a94442;
}

.grayText {
    color: #777;
}

.back-menu {
    margin-top: 10px;
}

/*.grid-disabled-row .ui-grid-cell-contents{
  background-color: #a5a5a5 !important;
}*/
.side-panel-menu .panel-container {
    margin-right: -10px;
    margin-left: -10px;
    margin-bottom: 5px;
    box-shadow: rgba(0, 0, 0, 0.6) 0px 6px 6px -6px;
}

.mobile-side-panel-menu .panel-container {
    margin-bottom: 0;
    box-shadow: rgba(0, 0, 0, 0.6) 0px 6px 6px -6px;
}

.side-panel-title {
    padding-left: 10px;
    font-size: 17px;
}

#side-panel-scrollbar .side-panel-title,
.side-panel-info-sm .side-panel-title {
    font-size: 1vw;
    padding-left: 10px;
}

.home-side-panel .side-panel-title,
.mobile-side-panel-menu .side-panel-title {
    font-size: 16px;
}

.option-panel-title {
    font-size: 17px;
}

.panel-title h1 {
    margin-top: 0px;
    padding-left: 10px;
    font-weight: 700;
    font-size: 27px;
}

.panel-buttons span.button-outline{
    font-size: 30px;
}

.btn-outline-inverse {
    color: #fff;
    background-color: transparent;
    border-color: #fff;
}
.btn-outline-inverse:hover,
.btn-outline-inverse:active,
.btn-outline-inverse:focus {
    color: #0084B4;
    background-color: #fff;
    border-color: #fff;
    text-shadow: none;
}

.btn.round-btn {
    border-radius: 25px;
}

li {
    text-align: inherit;
}

ol, ul {
    /*margin: 0;*/
    /*padding: 0;*/
    word-wrap: break-word;
}

.side-panel-menu {
    margin-bottom:10px;
}
.side-menu-title {
    margin-bottom: 20px;
}
.side-menu-title h2 {
    display: inline;
    font-weight: 700;
}

.mobile-summary {
    margin-top: 10px;
    margin-bottom: 10px;
}
.mobile-summary h2 {
    display: inline;
    font-weight: 700;
}
.mobile-summary .summary-title{
    display: none;
}

.table-summary {
    max-height: 700px;
    overflow: auto;
}
table.summary-box {
    width: 100%;
    table-layout: fixed;
}

.table-buttons {
    margin-top: 10px;
}

.item-button {
    background-color: #fffff4;
    border-color: transparent;
    box-shadow: rgba(71, 71, 71, 0.6) 0px 6px 15px -5px;
}

.item-button-success {
    background-color: #57a07f;
    color: #fffff4;
    box-shadow: rgba(71, 71, 71, 0.6) 0px 6px 15px -5px;
}
.item-button-success:focus,
.item-button-success:hover{
    color: #fffff4;
}

.item-panel-select .panel-container {
    box-shadow: rgba(93, 93, 93, 0.6) 0px 3px 8px -3px;
}

.panel-container.summary-box {
    margin-bottom: 5px;
}
.summary-box .title {
    font-size: 16px;
    padding-right: 10px;
}

.summary-box .description {
    text-align: left;
}

.summary-box .description p {
    word-wrap: break-word;
}

.summary-box .panel-content {
    padding-top: 0;
    padding-bottom: 0;
}
.horz-line {
    border-bottom: 1px solid #6f5499;
}
.horz-line h2 {
    font-size: 25px;
}

table.fixed-header > tbody,
table.fixed-header tr,
table.fixed-header td,
table.fixed-header th {
    display: block;
}

table.fixed-header tr:after {
    content: ' ';
    display: block;
    visibility: hidden;
    clear: both;
}

table.fixed-header > tbody {
    max-height: 300px;
    overflow-y: auto;
}

table.fixed-header td {
    float: left;
}

.color-data {
    margin-top: 10px;
    text-align: center;
}
.color-data div {
    display: inline-block;
    vertical-align: middle;
}

.color-palette {
    width: 50px;
    height: 27px;
    border-radius: 3px;
}

.color-palette-sm {
    width: 35px;
    height: 16px;
    border-radius: 3px;
}

td .color-palette {
    cursor: pointer;
}

.color-label {
    margin-left: 9px;
}

.color-label h4 {
    font-weight: 700;
    font-size: 20px;
}

.color-code {
    margin-left: 9px;
}

.color-code h4 {
    font-size: 20px;
}

table tr.color {
    width: 100%;
}

table tr.color td {
    vertical-align: middle;
}

td.color-assignee {
    width: 156px;
    padding-left:8px;
}

td.color-assignee h5 {
    font-size: 14px;
}

td.color-code {
    margin-left: 0;
    width: 90px;
}

td.color-code h5 {
    font-size: 14px;
}

.cp-description p {
    font-weight: 700;
    margin: 0 0 10px;
    text-align: center;
}

.cp-header {
    font-size: 31px;
}

.login-header {
    text-align: center;
    margin-bottom: 4%;
}
.login-header h1 {
    margin-top: -3%;
    font-size: 45px;
}

.login-header .logo {
    margin-left: auto;
    margin-right: auto;
    width: 40%;
}

.home-header .logo {
    width: 100px;
    display: inline-block;
}

.side-logo .logo {
    width: 50%;
    margin-right: auto;
    margin-left: auto;
}

.home-header h1 {
    vertical-align: -webkit-baseline-middle;
    display: inline-block;
}

img {
    width: 100%;
    height: auto;
}

.grid-msg-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.4);
}

.grid-msg-overlay .msg {
    opacity: 1;
    position: absolute;
    top: 20%;
    left: 20%;
    width: 60%;
    height: 50%;
    background-color: #eee;
    border-radius: 4px;
    border: 1px solid #555;
    text-align: center;
    font-size: 24px;
    display: table;
}

.grid-msg-overlay .msg span {
    display: table-cell;
    vertical-align: middle;
}

.list-logs {
    margin-bottom: 10px;
}

.list-logs .btn {
    padding: 8px 20px;
    font-weight: 700;
    text-transform: uppercase;
    box-shadow: rgba(71, 71, 71, 0.6) 0px 3px 12px -5px;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.list-logs .btn:focus,
.list-logs .btn:active:focus,
.list-logs .btn.active:focus {
    outline: 0 none;
}

.list-logs .btn-default {
    background: #fffff4;
    color: #563d7c;
    font-size: 16px;
}

.list-logs .btn-default:hover {
    background: #563d7c;
    color: #fffff4;
}

.list-logs .btn-default.disabled:focus,
.list-logs .btn-default.disabled:hover {
    background: #fffff4;
    color: #563d7c;
}

.list-logs .btn-default:active,
.list-logs .btn-default.active,
.list-logs .btn-default.active:focus,
.list-logs .btn-default.active:hover,
.list-logs .open > .dropdown-toggle.btn-default {
    background: #563d7c;
    color: #fffff4;
}


/*
 * FOOTER
 */
footer {
    clear: both; }

footer {
    padding: 33px 20px;
    -webkit-transition: padding .2s ease-in-out;
    -moz-transition: padding .2s ease-in-out;
    -ms-transition: padding .2s ease-in-out;
    -o-transition: padding .2s ease-in-out;
    transition: padding .2s ease-in-out; }

.bannerMessage {
    width: 100%;
    height: 50px;
    position: fixed;
    bottom: 0;
    display: none;
    left: 0;
    text-align: center;
    line-height: 50px;
    font-weight: bold;
}

.bannerMessageModal {
    width: 100%;
    height: 50px;
    position: relative;
    display: none;
    left: 0;
    text-align: center;
    line-height: 50px;
    font-weight: bold;
    margin-bottom: 10px;
}

.alertMessage {
    display: none;
}

.title-login {
    text-align: center;
}
.title-login h1 {
    font-size: 35px;
}

.home-menu {
    display: none;
}

.home-menu .panel-description {
    display: none;
}

.home-menu .panel-info {
    height: 60px;
}

.home-menu .icon-home {
    font-size: 50px;
}

.navbar-default {
    background-color: #6f5499;
    border-color: #3c2560;
    width: 100%;
}
.navbar-default .navbar-brand {
    color: #ecf0f1;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
    color: #fffff4;
}
.navbar-default .navbar-text {
    color: #ecf0f1;
    font-size: 18px;
}
.navbar-default .navbar-nav > li > a {
    color: #ecf0f1;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    color: #fffff4;
}
.navbar-default .navbar-nav > li > .dropdown-menu {
    background-color: #6f5499;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > a {
    color: #ecf0f1;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > a:hover,
.navbar-default .navbar-nav > li > .dropdown-menu > li > a:focus {
    color: #fffff4;
    background-color: #3c2560;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li.divider {
    background-color: #3c2560;
}
.navbar-default .navbar-nav .open .dropdown-menu > .active > a,
.navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fffff4;
    background-color: #3c2560;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
    color: #fffff4;
    background-color: #3c2560;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
    color: #fffff4;
    background-color: #3c2560;
}
.navbar-default .navbar-toggle {
    border-color: #fff;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: #3c2560;
}
.navbar-default .navbar-toggle .icon-bar {
    background-color: #ecf0f1;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
    border-color: #ecf0f1;
}
.navbar-default .navbar-link {
    color: #ecf0f1;
}
.navbar-default .navbar-link:hover {
    color: #fffff4;
}

.navbar-default .navbar-brand > img {
    height: 45px;
    width: 45px;
    margin-top: -12px;
}

@media (max-width: 767px) {
    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
        color: #ecf0f1;
    }
    .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
    .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #fffff4;
    }
    .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
    .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
    .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
        color: #fffff4;
        background-color: #3c2560;
    }
}

.side-navbar, .summary-fix {
    display: none;
}

.modal-header .modal-title {
    /*text-align: center;*/
    font-weight: 700;
}

.modal-header {
    text-align: center;
}

.modal-header .modal-buttons {
    margin-top: 10px;
}

.modal-header .modal-title-caption {
    /*text-align: center;*/
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.modal-buttons .submit {
    width: 120px;
}

.modal-buttons .cancel {
    width: 120px;
}

.modal-content-current-description {
    display: none;
}

.form-horizontal .control-label {
    text-align: left;
}

.form-horizontal .control-label.required::after {
    content: " *";
    color:#d9534f;
  }

.operations {

}

.operations .save-add {
    margin-bottom: 10px;
}

.operations .search {
    margin-bottom: 10px;
}

.home-logo {
    display: none;
}

.home-menu .panel-content {
    /* padding: 0;*/
}



.home-main .side-logo,
.home-main .back-questionnaire {
    display: none;
}

.patient-report-page .home-main .back-questionnaire {
    display: block !important;
}


.home-side-panel .side-panel-scroll {
    display: block;
}

.home-main .side-navbar {
    display: block;
}

.app-version {
    position: fixed;
    right: 0;
    bottom: 0;
    width: 100%;
    color: #000;
    font-size: 14px;
    border-top: 1px solid #e7e7e7;
    padding: 1px 10px 5px 20px;
    background: #e6edfa;
    opacity: 0.9;
}

.login-footer {
    border-top: 0px;
    padding: 15px 10px;
    background: none;
}

.app-version a {
    text-decoration: underline;
}

.app-version a:hover {
    color: #6f5499;
}

.url-link {
    color: #007BFF;
}

.url-link:hover {
    text-decoration: underline;
}

.no-calendar-header .picker-top-row,
.no-calendar-header .picker-days-week-row {
    display: none;
}

.btn-group {
    /* width: 100%;*/
}
.btn-frequency-select {
    width: 100%;
}

/* Third party licenses styling that is used in the about page */
.third-party {
    margin-bottom: 16px;
    overflow-wrap: break-word;
}

.third-party-pre {
    font-size: 1.1em;
    margin-top: 10px;
    font-style: italic;
}

/* Header font-size adjustments */
.third-party h1 {
    font-size: 1.6em;
}
.third-party h2 {
    font-size: 1.3em;
}
.third-party h3 {
    font-size: 1.2em;
}
.third-party h4 {
    font-size: 1.1em;
}

/* See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/summary */
/* Show a grey border box when the details are closed */
.third-party details {
    background-color: #F5F5F5;
    border: 1px solid #CCC;
    border-radius: 4px;
    margin-top: 14px;
    padding: 2px 6px;
}

/* Hide the border box when the details are open */
.third-party details[open] {
    background-color: transparent;
    border: none;
}

.third-party details[open] summary {
    margin-bottom: 4px;
}

/* Arrow in front of details summary (closed) */
.third-party details summary:before {
    color: #444;
    content: "▶";
    font-family: math;
    font-size: 0.7em;
    font-weight: bold;
    margin-right: 4px;
}

/* Arrow in front of details summary (open) */
.third-party details[open] summary:before {
    content: "▼";
}

.third-party a {
    color: #007BFF;
}

.third-party a:hover {
    text-decoration: underline;
}

/*
 * Custom Styles for ngGrid
 */
.ngTotalSelectContainer {
    display:none; }
.csv-data-link-span {
    font-weight: bold;
    float: left;
    margin: 15px; }

@media only screen and (min-width:480px) {

    #banner {
        float: left }
    nav {
        float: right }


}

@media only screen and (min-width:600px) {

    aside, #sidebar, .aside, #step-details-sidebar {
        font-size: 0.8em;
        line-height: 1.05em; }

    .title-login h1 {
        font-size: 45px;
    }

    .circle {
        width: 140px;
        height: 140px;
    }

    .home-menu {
        display: block;
    }

    .home-menu .panel-description {
        display: block;
    }

    .home-menu .panel-info {
        height: 180px;
    }

    .home-menu .icon-home {
        font-size: 50px;
    }

    .home-side-panel {
        display: none;
    }
}

@media only screen and (min-width:768px) {

    ul#standard-navigation {
        display: block }

    .mobile-summary .summary-title{
        display: block;
    }
    .mobile-side-panel-menu{
        display: flex;
        align-items: center;
    }

    .back-menu {
        margin-top: 0;
    }

    .operations {
        display: flex;
        align-items: center;
    }

    .modal-header .modal-title {
        font-size: 2.1vw;
    }

    .modal-header .modal-title-caption {
        font-size: 1.7vw;
    }


}

@media only screen and (min-width:980px) {

    #footer-navigation {
        float: right; }

    #copyright {
        float: left; }

}

@media only screen and (min-width: 992px) {
    .home-menu .panel-description {
        font-size: 14px;
    }

    .home-menu .panel-title h1 {
        font-size: 20px;
    }

    .home-menu .icon-home {
        font-size: 40px;
    }

    .modal-header {
        text-align: inherit;
        display: flex;
        align-items: center;
    }

    .modal-header .modal-buttons {
        text-align: right;
        margin-top: 0;
    }

}

@media only screen and (min-width:1200px) {

    .flex {
        display:flex;
        align-items: flex-end;
    }

    .title-login {
        text-align: right;
    }
    .title-login h1 {
        font-size: 55px;
    }

    .navbar {
        display: none;
    }

    .side-navbar, .summary-fix {
        display: block;
    }

    #page {
        padding-top: 0;
    }

    .patientModal .modal-dialog,
    .mainPatientModal .modal-dialog,
    .studyModal .modal-dialog,
    .customModal .modal-dialog {
        width: 70% !important; }

    .logModal .modal-dialog {
        width: 60% !important; }

    .editUserModal .modal-dialog {
        width: 50% !important;
    }

    .mobile-side-panel-menu,
    .mobile-summary {
        display: none;
    }

    .right-color-picker {
        display: none;
    }

    .home-logo {
        display: block;
    }

    #side-panel-scrollbar {
        display: block;
    }

    .home-menu .panel-description {
        font-size: initial;
    }

    .home-menu .panel-title h1 {
        font-size: 1.6vw;
    }

    .home-menu .icon-home {
        font-size: 3vw;
    }

    .modal-header .modal-title {
        font-size: 27px;
    }

    .modal-header .modal-title-caption {
        font-size: 18px;
    }

    .modal-buttons .submit,
    .modal-buttons .cancel {
        width: 160px;
    }

    .questionnaire-main .side-logo, .patient-main .side-logo {
        display: block;
    }
}

.previewContent h3 {
    font-size: 20px;
    font-weight: bold;
    margin-top:20px;
    margin-bottom:5px;
}

.previewContent h4 {
    font-weight:bold;
    margin-top:20px;
}

.iframe-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}

/* Then style the iframe to fit in the container div with full height and width */
.responsive-iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
