@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap');

:root {
    --dark-color-a: #007bc7;
    --dark-color-b: #03a9f4;
    --light-color: #e6e9ff;
    --success-color: #5cb85c;
    --error-color: #d9534f;
    --green-color-a: #00d1b2;
    --green-color-b: #00ebc8;
    --white-color: #ffffff;
    --black-color: #000000;
    --grey-color-a: #676767;
    --grey-color-b: #a6a6a6;
    --red-color-a: #f14668;
    --red-color-b: #f68da2;
    --error-color-a: #8b0000;
    --message-success-bg: #dfd;
    --message-info-bg: #97DAF7;
    --message-error-bg: #ba2121;
}

html {
    overflow-y: auto;
}

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

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    position: relative;
}

ul {
    list-style: none;
}

a {
    text-decoration: none;
}

.btn {
    cursor: pointer;
    padding: 5px 15px;
    border: 0;
    font-size: 17px;
}

.btn.switch-bbox-btn {
    background: var(--dark-color-a);
    color: var(--white-color);
}

.btn.switch-bbox-btn:hover {
    background: var(--dark-color-b);
}

.btn.leave-channel-btn {
    margin-left: 25px;
    background: transparent;
    color: var(--white-color);
    border: 2px solid var(--white-color);
}

.btn.leave-channel-btn i {
    margin-right: 5px;
}

.btn.leave-channel-btn:hover {
    color: #3298dc !important;
    background: var(--white-color);
}

.session-link-wrapper {
    margin-top: 5px;
}

.session-link-wrapper .copy-link-btn,
.download-test-results-btn {
    font-size: 21px;
    cursor: pointer;
    margin: 0 10px;
}

.download-test-results-btn {
    margin-top: 15px;
    border: 2px solid;
    font-size: 15px;
}

.download-test-results-btn:hover {
    background-color: var(--black-color);
    color: var(--white-color);
}

.manager-link {
    color: #3273dc !important;
}

.manager-link:hover {
    color: #383f4c !important;
}

/*LOGIN PAGE STYLES*/
.login-page {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 35px 15px 0 15px;
    width: 100%;
    height: 100%;
}

.login-page .login-container {
    width: 100%;
    max-width: 600px;
    margin-bottom: 20px;
    color: var(--white-color);
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 40px 50px;
    margin-top: 2.5rem;
    background: var(--dark-color-b);
    border-radius: 5px;
}

.login-page .login-container .control-group .asteriskField {
    display: none;
}

.login-page .login-header {
    width: 100%;
    max-width: 600px;
    text-align: center;
    padding: 20px;
    background: var(--dark-color-a);
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.login-page .login-header > h1 {
    font-weight: bold;
    font-size: 2em;
    color: var(--white-color);
}

.login-page .login-container .control-group {
    width: 100%;
    max-width: 500px;
    margin: 8px 0;
}

.login-page .login-container .control-group .control-label {
    margin-bottom: 5px;
}

.login-page .login-container input {
    font-size: 16px;
    padding: 5px;
    height: 40px;
    width: 100%;
}

.login-page .login-container .btn-action-wrapper {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.login-page .login-container .btn-action-wrapper .btn {
    margin-top: 20px;
    min-height: 40px;
    width: 60%;
}

.login-page .login-container .no-account-info {
    margin-top: 1.5em;
    color: var(--white-color);
    text-align: center;
}

.login-page .login-container .no-account-info a {
    color: var(--black-color);
    text-decoration: underline;
}

.btn.join-channel-btn {
    background: var(--green-color-a);
    color: var(--dark-color-a);
}

.btn.join-channel-btn:hover {
    background: var(--green-color-b);
}

.btn.join-channel-btn:disabled:hover {
    background: var(--green-color-a);
}

/*NAVBAR STYLES */
.app-bar-panel {
    padding-top: 0;
    padding-bottom: 0;
    height: 100%;
}

.hero.is-info,
.hero.is-info .app-bar-panel .container {
    height: 64px;
    box-shadow: 0 2px 4px -1px rgb(0 0 0 / 20%), 0 4px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%);
}


.app-bar-panel .app-bar-panel-wrapper {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0 48px;
}

.app-bar-panel .app-bar-panel-wrapper .title {
    margin: 0 25px;
}

.app-bar-panel .app-bar-panel-wrapper .app-bar-end-wrapper {
    margin-left: auto;
    display: flex;
    align-items: center;
}

.ia-values-wrapper {
    margin: 0 25px 0 0;
    display: flex;
    flex-direction: column;
    align-content: flex-end;
}

.ia-values-wrapper .ia-value {
    width: 35px;
    margin-left: 7px;
    display: flex;
    justify-content: flex-start;
    text-align: right;
}

.ia-values-wrapper div {
    text-align: left;
    display: flex;
}

.ia-values-wrapper div span {
    width: 58px;
}


/*MESSAGES STYLES*/
.messages-list {
    width: 25%;
    overflow: hidden;
    position: absolute;
    right: 0;
    z-index: 9999;
}

.messages-list .messages-item {
    width: 100%;
    font-weight: 400;
    font-size: 14px;
    padding: 10px 10px 10px 15px;
    margin: 5px 0 0 0;
    display: flex;
    align-items: center;
    position: relative;
}

.messages-list .messages-item.success {
    background: var(--message-success-bg);
}

.messages-list .messages-item.info {
    background: var(--message-info-bg);
    color: var(--black-color);
}

.messages-list .messages-item.error {
    background: var(--message-error-bg);
    color: var(--white-color);
}

.messages-list .messages-item.closed {
    transform: translate(150%, 0);
    transition: all 0.5s;
}

.messages-list .messages-item.hidden {
    display: none;
}

.messages-list .messages-item .close-message-btn {
    position: absolute;
    right: 5px;
    background: transparent;
    border: none;
}

.messages-list .messages-item.error .close-message-btn i {
    color: var(--white-color);
}


.messages-list .messages-item i {
    font-size: 1.2em;
    margin: 0 12px;
}

.messages-list .messages-item i.success-icon {
    color: var(--success-color);
}

.messages-list .messages-item i.info-icon {
    color: var(--dark-color-a);
}

.messages-list .messages-item i.error-icon {
    color: var(--white-color);
}


.app-container {
    width: 100vw;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.main-container {
    width: 100%;
    height: calc(100vh - 87px);
    overflow-y: auto;
    position: relative;
    display: flex;
    flex-direction: column;
}

.main-container .container.py-5 {
    /*height: calc(100% - 70px);*/
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.main-container .container.py-5 .session-researcher-container {
    width: 100%;
    padding-bottom: 4rem;
}

.main-container .chart-wrapper {
    height: 550px;
    margin-left: 10px;
    padding-bottom: 25px;
}

.canvas-chart-container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.canvas-chart-container .chart-wrapper {
    width: 50%;
    height: 550px;
    margin-left: 10px;
}

.camera-container {
    margin-bottom: 4rem;
    width: 100%;
}

.camera-container .column-mediapipe {
    display: flex;
    justify-content: center;
    margin-right: 10px;
}

.camera-container .column-mediapipe .panel-mediapipe {
    min-width: 640px;
    max-width: 700px;
    min-height: 480px;
}

.camera-container .column-mediapipe .panel-mediapipe .panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.camera-container .column-mediapipe .panel-mediapipe .panel-block {
    display: flex;
    justify-content: center;
}

@media (max-width: 835px) {
    .footer {
        height: 160px !important;
    }
}

@media (max-width: 490px) {
    .footer {
        height: 230px !important;
    }
}

.footer {
    width: 100%;
    height: 87px;
    padding: 0 25px;
    background-color: #222;
}

.footer .img-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.footer .img-wrapper .socials-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.footer .img-wrapper a {
    margin: 2px 25px;
}

.footer .copyright-wrapper {
    color: #fff;
    text-align: center;
}

.footer .copyright-wrapper a {
    color: #fff;
    margin: 0 0 0 5px;
}

.footer .copyright-wrapper, .ncbr-info-wrapper {
    color: #fff;
    text-align: center;
}

.footer a.fa,
.footer a.fa-brands {
    font-size: 25px;
    margin: 15px;
    color: #fff;
}

.footer .fa:hover,
.footer .fa-brands:hover {
    color: var(--grey-color-b);
}

/*SIGNET(GAUGE) STYLES*/
.demo-signet__movie-video_wrapper {
    width: 65%;
}

.demo-signet__download-btn-wrapper {
    margin-top: 25px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* General setting */
.gauges {
    width: 35%;
    padding: 20px 0px;
}

/* Centering the gauges in tooltip span */
.centerGaugeTooltip {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Size of gauges */
.gaugeInterest {
    width: 70% !important;
    height: 70% !important;
    position: relative;
}

.gaugeAttitude {
    width: 45% !important;
    height: 45% !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Label */
.ldBar-label {
    color: black;
    font-size: 2em;
}

.ldBar-label {
    display: none;
}

/* Centering gauges inside circle */
.centerGaugeinCircle {
    position: absolute !important;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-shadow: 0 0 3px #fff;
}

/* Different shape of gauge */
.gauges .ldbar path {
    mask: url(#mask);
}

/* SVG mask not display */
.gaugeMask {
    position: absolute !important;
    top: -10000px;
}

/*MODAL STYLES*/
.modal {
    display: block;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.4);
}

.modal.hidden {
    display: none;
}

.modal-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    max-width: 50%;
}

.modal.privacy-politics-modal .modal-content .modal-header .modal-header-title {
    font-weight: 700;
}

.modal.privacy-politics-modal .modal-content .modal-text {
    padding: 25px;
}

.custom-tooltip {
    position: relative;
    display: inline-block;
}

.custom-tooltip .tooltiptext {
    visibility: hidden;
    width: 150px;
    background-color: var(--dark-color-a);
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px 0;


    /* Position the tooltip */
    position: absolute;
    z-index: 1;
}

.custom-tooltip:hover .tooltiptext {
    visibility: visible;
}

@media (max-width: 1439px) {
    .canvas-chart-container .chart-wrapper {
        width: 100%;
        height: 450px;
        padding: 0 30px;
    }

    .main-container .chart-wrapper {
        width: 100%;
        height: 450px;
        padding: 30px;
    }
}

