/*-------------TYPOGRAPHY-------------*/

body > * {
    transition: all .4s ease-in-out;
    -webkit-font-smoothing: antialiased;
}

body {
    font-family: 'Open Sans', sans-serif;
    color: var(--theme-on-background);
    background-color: var(--theme-background);

}



/*add var for 2A 3A sizes on fonts*/
/*, h1, h2, h3, h4, h5, h6*/
p, label {
    letter-spacing: calc(0.12 * 1em);
    line-height: calc(1.5 * 1em);
    word-spacing: calc(0.16 * 1em);
}

a {
    color: var(--theme-primary);
}

a:hover {
    color: var(--theme-primary-action);
}

h1, h2, h3, h4, h5, h6 {
    color: var(--theme-on-background);
    font-weight: var(--masp-headings-font-weight);
    line-height: var(--masp-line-height-base);
    margin: 0 0 30px 0;
    font-family: var(--masp-heading-font);
}

h1 {
    font-size: var(--masp-font-size-h1);
}

h2 {
    font-size: var(--masp-font-size-h2);
}

h3 {
    font-size: var(--masp-font-size-h3);
}

h4 {
    font-size: var(--masp-font-size-h4);
}

h5 {
    font-size: var(--masp-font-size-h5);
    font-weight: normal;
}

h6 {
    font-size: var(--masp-font-size-h6);
    text-transform: uppercase;
}

p {
    font-size: 0.875rem;
    font-weight: normal;
}

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

ul.textlist li,
ol.textlist li {
    font-size: 0.875rem;
    font-weight: normal;
    letter-spacing: calc(0.12 * 1em);
    line-height: calc(1.5 * 1em);
    word-spacing: calc(0.16 * 1em);
}

.dataset-heading {
    text-decoration: none;
    font-size: 1rem;
    line-height: 1.3;
    margin-top: 0;
    margin-bottom: 8px;
    font-weight: 600;
}
/* HEADINGS */
.heading-block {
    --masp-heading-block-font-size-h1: 2.5rem;
    --masp-heading-block-font-size-h2: 2.12rem;
    --masp-heading-block-font-size-h3: 1.875rem;
    --masp-heading-block-font-size-h4: 1.375rem;
    --masp-heading-block-font-weight: 600;
    --masp-heading-block-font-spacing: 0;
    --masp-heading-block-font-color: var(--theme-on-background);
    --masp-heading-block-font-transform: none;
    --masp-heading-block-center-container: 700px;
    --masp-title-block-border-size: 40px;
    --masp-heading-block-border: 2px solid var(--theme-primary);
    --masp-heading-block-span-color: var(--theme-on-background);
    margin-bottom: 30px;
}

.heading-block h2 {
    font-size: var(--masp-heading-block-font-size-h2);
}

.heading-block h1, .heading-block h2, .heading-block h3, .heading-block h4 {
    margin-bottom: 0;
    font-weight: var(--masp-heading-block-font-weight);
    text-transform: var(--masp-heading-block-font-transform);
    letter-spacing: var(--masp-heading-block-font-spacing);
    color: var(--masp-heading-block-font-color);
}

.heading-block h2 + span, .heading-block h3 + span, .heading-block h4 + span {
    font-size: calc(var(--masp-heading-block-font-size-h2) / 1.75);
}

.center .heading-block > span, .heading-block.center > span, .heading-block.text-center > span, .text-center .heading-block > span {
    max-width: var(--masp-heading-block-center-container);
    margin-left: auto;
    margin-right: auto;
}

.heading-block > span:not(.before-heading) {
    display: block;
    margin-top: .5rem;
    font-weight: 300;
    color: var(--masp-heading-block-span-color);
}

.center .heading-block::after, .heading-block.center::after, .heading-block.text-center::after, .text-center .heading-block::after {
    margin: 30px auto 0;
}

.heading-block::after {
    content: "";
    display: block;
    margin-top: 30px;
    width: var(--masp-title-block-border-size);
    border-top: var(--masp-heading-block-border);
}
*/

/*is smaller than a paragraph and you can use it for explanation / details*/
.caption {
    font-size: 0.8125rem;
    line-height: 1.22rem;
    font-weight: normal;
}

/*is bigger than paragraph and you can use it if you want to make a statement like small titles*/
.large-body {
    letter-spacing: calc(0.12 * 1em) !important;
    line-height: calc(1.5 * 1em);
    word-spacing: calc(0.16 * 1em);
    font-size: 1.067rem;
    font-weight: normal;
}

/*label is the text over a field*/
label {
    font-size: 0.8125rem;
    font-weight: bold;
    text-transform: uppercase;
    cursor: pointer;
}

label.form-control {
    text-transform: none;
}

/*label is a secondary text near label or explanation of a field*/
.label-note {
    text-transform: capitalize;
    font-weight: 500;
    color: #707070;
}

/* -------- GENERAL Rules -----------*/
.d-flex-col {
    display: flex;
    flex-direction: column;
}

.w-min-content {
    width: min-content;
}

@media (min-width: 992px) {
    .w-lg-min-content {
        width: min-content !important;
    }
}

@media (min-width: 1200px) {
    .w-xl-auto {
        width: auto !important;
    }
}



/*trial-status-labels are used to show the status of trials in the system*/
/*Four statuses are available: PENDING, RUNNING, FAILURE, SUCCESS */

label.trial-status-label {
    font-size: 1rem;
}

.trial-status-label.pending,
.trial-status-icon.pending {
    color: var(--theme-pending);
}

.trial-status-label.running,
.trial-status-icon.running {
    color: var(--theme-running);
}

.trial-status-label.failure,
.trial-status-icon.failure {
    color: var(--theme-failure);
}

.trial-status-label.success,
.trial-status-icon.success {
    color: var(--theme-success);
}

.trial-status-label.cancelled,
.trial-status-icon.cancelled {
    color: var(--theme-cancelled);
}

.trial-status-icon{
    font-size: 1.25rem;
}

/*----PILLS----*/
.pill {
    font-weight: 600;
    font-size: 0.9rem;
    color: white;
    border-radius: 0.25rem;
    text-align: center;
    padding: 0.3rem 0.6rem;
    background-color: #444;
    width: fit-content;
    margin-right: 0.5rem;
}

.pill[type="Public"] {
    background-color: #6E67B5;
}

.pill[type="Confidential"] {
    background-color: #E61818;
}

.pill[type="CSV"] {
    background-color: #0F6BCE;
}

.pill[type="JSON"] {
    background-color: #E61818;
}

.pill[type="GeoJSON"] {
    background-color: #696969;
}

.pill[type="KML"] {
    background-color: #227300;
}

.pill[type="XML"] {
    background-color: #B9317E;
}

.pill[type="RDF"] {
    background-color: #A06543;
}

.pill[type="SIRI"] {
    background-color: #0C7274;
}

.pill[type="GTFS"] {
    background-color: #81478D;
}

.pill[type="GraphQL"] {
    background-color: #6c59da;
}

.pill[type="External Source"] {
    background-color: #005aa7;
}



/*------ MENU TYPOGRAPHY -------*/

.menu-link {
    font-size: 1.0625rem;
    font-weight: normal;
    text-transform: capitalize;
    color: var(--theme-on-background);
}

.submenu {
    font-size: 0.94rem;
    font-weight: normal;
    text-transform: capitalize;
}

.clear {
    clear: both;
    display: block;
    font-size: 0;
    height: 0;
    line-height: 0;
    width: 100%;
    overflow: hidden;
}

/*LOGO POSITIONING*/



/* this class transferred in top-navigation css - just for logo size*/
/*.navbar-brand #logo {
   display: flex;
    width: 200px;
}*/

/*-------- SCROLLING STYLING ------------*/
::-webkit-scrollbar {
    width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
    box-shadow: inset 0 0 1px var(--theme-on-surface);
    border-radius: 1px;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--theme-lines);
    border-radius: 1px;
}

/*!* Handle on hover *!*/
/*::-webkit-scrollbar-thumb:hover {*/
/*    background: var(--theme-primary-action);*/
/*}*/

/*-----------STYLING SHORTCODES-----------------*/

.shadow {
    box-shadow: 0px 3px 6px #00000016 !important;
}

.spacer {
    margin-top: 1.25rem;
}

.divider {
    --masp-divider-margin: 1.5rem;
    --masp-divider-gap: 0.5rem;
    --masp-divider-color: var(--theme-lines);
    --masp-divider-size: 18px;
    --masp-divider-width: 100%;
    --masp-divider-border: 1px solid var(--theme-lines);
    --masp-divider-bg-color: var(--theme-lines);
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
    margin: var(--masp-divider-margin) auto;
    width: var(--masp-divider-width);
}

.divider a, .divider i, .divider-text {
    position: relative;
    flex: 0 0 auto;
    width: var(--masp-divider-size);
    max-width: 100%;
    line-height: 1;
    font-size: calc(var(--masp-divider-size) * 0.75);
    text-align: center;
    color: var(--masp-divider-color);
}


.divider::after {
    margin-left: var(--masp-divider-gap);
}

.divider.divider-right::before {
    display: block;
}

.divider.divider-right::after {
    display: none
}

.divider::before {
    display: none;
    margin-right: var(--masp-divider-gap);
}


.divider.divider-center::before {
    display: block;
}

.divider.divider-sm {
    --masp-divider-width: 55%;
}

.divider::after, .divider::before {
    content: "";
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
    border-bottom: var(--masp-divider-border);
}

/*-----------FUNCTIONAL STYLING SHORTCODES-----------------*/
/* change theme color dark to light or light to dark (java script needed) */
.theme-toggle {
    position: fixed;
    bottom: 80px;
    right: 30px;
    z-index: 120;
    padding: 10px;
    border-radius: 3px;
    color: var(--theme-on-primary);
    background-color: var(--theme-primary);
    width: 40px;
    height: 40px;
    text-decoration: none;
    font-family: 'Font Awesome 6 Free';
}

.theme-toggle::before {
    content: var(--theme-toggle);
}

a.theme-toggle:hover {
    cursor: pointer;
    color: var(--theme-on-primary);
    background-color: var(--theme-primary-action);
}


/* use class "sticky" to stick an element on the top of the page*/
.sticky {
    position: sticky;
    top: 0;
}

.sticky-column {
    position: sticky;
    top: 80px;
}

#wrapper {
    position: relative;
    float: none;
    width: 100%;
    margin: 0 auto;
    background-color: var(--theme-background);
    box-shadow: 0 0 10px rgb(0 0 0 / 10%);
}

.stretched #wrapper {
    width: 100%;
    margin: 0;
    box-shadow: none;
}

/* .content-wrap {
    position: relative;
    padding: 0px 0;
    overflow: hidden;
} */

.show-grid [class^=col-] {
    padding-top: 10px;
    padding-bottom: 10px;
    border: 1px solid var(--theme-foreground);
    background-color: var(--theme-lines);
}


/*-----------Main content styles--------------*/
/*-----------Page title--------------*/
#page-title {
    position: relative;
    padding: 2.5rem 5rem 2.5rem 5rem;
    background-color: var(--theme-secondary);
    border-bottom: 1px solid var(--theme-surface);
    margin-bottom: 5rem;
}


/*-------------Buttons general styles--------------------*/
.btn {
    letter-spacing: calc(0.12 * 1rem);
    padding: 0.5rem 1.375rem 0.5rem 1.375rem;
    font-size: 1rem;
    border: 1px solid var(--theme-primary);
    border-radius: 0.1875rem;
    display: inline-block;
    position: relative;
    cursor: pointer;
    outline: 0;
    white-space: nowrap;
    text-align: center;
    background-color: var(--theme-primary);
    color: var(--theme-on-primary);
    font-weight: 600;
    /* transition: all .4s ease-in-out; */
    min-width: 95px;
    box-shadow: 0 0.1875rem 0.375rem #00000029;
}

.btn-mini {
    padding: 0.25rem 0.875rem 0.25rem 0.875rem;
    font-size: 0.75rem;
    min-width: 67px;
}

.btn-small {
    padding: 0.5rem 1.125rem 0.5rem 1.125rem;
    font-size: 0.875rem;
    min-width: 80px;
}

.btn-large {
    padding: 0.5rem 1.625rem 0.5rem 1.625rem;
    font-size: 1.125rem;
    min-width: 150px;
}

.btn-xlarge {
    padding: 0.625rem 2.25rem 0.625rem 2.25rem;
    font-size: 1.25rem;
    min-width: 135px;
}

.btn-desc {
    padding: 1.5rem 2.25rem 1.5rem 2.25rem;
    font-size: 1.25rem;
    line-height: 1;
    text-align: left;
    min-width: 250px;
}

.btn-desc div {
    display: inline-block;
}

.btn-desc span {
    display: block;
    margin-top: 0.75rem;
    font-size: 0.85rem;
    font-weight: 400;
    text-transform: none;
}

.btn.no-shadow {
    box-shadow: none;
}

/*-------------Buttons types--------------------*/

.btn-solid.primary{
    color: var(--theme-on-primary);
    background-color: var(--theme-btn-primary);
}

.btn-solid.secondary {
    color: var(--theme-on-secondary);
    background-color: var(--theme-btn-secondary);
}

.btn-outline {
    background-color: var(--theme-btn-outline);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.btn-link {
    color: var(--theme-primary);
    background-color: transparent;
    text-decoration: underline;
    border: none;
    padding: 0.357rem 0rem;
    box-shadow: none;
    min-width: fit-content;
    min-height: fit-content;
}

/*-------------Buttons icons--------------------*/

.btn i, .btn-link i {
    position: relative;
    margin-right: 5px;
    width: 16px;
    text-align: center;
}

.btn svg, .btn-link svg {
    position: relative;
    margin-right: 5px;
    width: 16px;
    text-align: center;
}

.btn:hover svg {
    fill: var(--theme-primary);
}

/*-------------Buttons action types--------------------*/

.btn-solid.primary:hover, .btn-solid.primary:active {
    color: var(--theme-on-primary);
    background-color: var(--theme-btn-primary-hover);
}

.btn-solid.primary:focus {
    color: var(--theme-on-primary);
    background-color: var(--theme-btn-primary);
    border-color: var(--theme-btn-primary-focus);
    outline: 0;
    box-shadow: 0 0 0 0.25rem var(--theme-primary-focus);
}

.btn-solid.secondary:hover, .btn-solid.secondary:active {
    color: var(--theme-on-primary);
    background-color: var(--theme-btn-secondary-hover);
}

.btn-solid.secondary:focus {
    color: var(--theme-on-secondary);
    background-color: var(--theme-btn-secondary);
    border-color: var(--theme-btn-secondary);
    outline: 0;
    box-shadow: 0 0 0 0.25rem var(--theme-primary-focus);
}

.btn-outline:hover, .btn-outline:active {
    color: var(--theme-on-primary);
    background-color: var(--theme-btn-outline-hover);
}

.btn-outline:focus {
    color: var(--theme-primary);
    background-color: var(--theme-btn-outline);
    border-color: var(--theme-primary);
    outline: 0;
    box-shadow: 0 0 0 0.25rem var(--theme-primary-focus);
}

.btn-link:hover {
    color: var(--theme-primary-action);
}

.btn:disabled {
    pointer-events: none;
    opacity: 0.5;
}

/*--------------- FORMS - FIELDS! -------------------*/
.form-group {
    margin-bottom: 1.5rem;
}

.form-control {
    color: var(--theme-on-surface);
    background-color: var(--theme-surface);
    border: 1px solid var(--theme-lines);
    transition: none;
}

.form-select {
    color: var(--theme-on-surface);
    background-color: var(--theme-surface);
    border: 1px solid var(--theme-lines);
}

.dropdown-menu {
    color: var(--theme-on-surface);
    background-color: var(--theme-background);
    border: 1px solid var(--theme-lines);
}

.dropdown-item {
    color: var(--theme-on-surface);
    color: var(--theme-on-surface);
}

.dropdown-item.active, .dropdown-item:active {
    color: var(--theme-on-primary);
    background-color: var(--theme-primary-action);
}

.form-control::placeholder {
    color: var(--theme-on-background);
    opacity: 0.5;
}

.form-control:disabled {
    opacity: 0.5;
    background-color: var(--theme-foreground);
}

.form-control[readonly] {
    opacity: 1;
    background-color: var(--theme-surface-readonly); 
}


.form-control[readonly]:focus {
    box-shadow: 0 0 0 0.25rem var(--theme-primary-focus);
}


/*----------------FORMS - UPLOAD FILES------------------*/

.fragment.selected-file {
    max-width: max-content;
    min-width: 350px;
    font-size: .875rem;
    margin-bottom: 10px;
}

/*-------Remove the default bootstrap label "CHOOSE FILE" from uploading field------*/

input[type=file]::-webkit-file-upload-button {
    display: none;
}

input[type=file]::file-selector-button {
    display: none;
}

/*----------RADIO BUTTONS & CHECKBOXES------------*/
.checkbox-style, .radio-style {
    opacity: 0;
    position: absolute;
}

.checkbox-style, .radio-style, .checkbox-style-1-label, .radio-style-1-label {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
    cursor: pointer;
    font-weight: 400;
    text-transform: none;
}

.checkbox-style:disabled,
.radio-style:disabled,
.checkbox-style:disabled + .checkbox-style-1-label,
.radio-style:disabled + .radio-style-1-label {
    cursor: default;
}

.checkbox-style:checked + .checkbox-style-1-label:before, .radio-style:checked + .radio-style-1-label:before {
    content: "\f00c";
    font-family: 'Font Awesome 6 Free';
    background: var(--theme-primary);
    color: var(--theme-surface);
}
.checkbox-style-1-label, .checkbox-style-2-label {
    padding: 0.25rem 0.25rem 0 0.25rem;
}

.radio-style-1-label:before, .radio-style-2-label:before {
    border-radius: 50%;
}

.checkbox-style:disabled + .checkbox-style-1-label:before,
.radio-style:disabled + .radio-style-1-label:before,
.checkbox-style:disabled + .checkbox-style-2-label:before,
.radio-style:disabled + .radio-style-2-label:before {
    opacity: 0.5;
}

.checkbox-style.readonly:disabled + .checkbox-style-1-label:before,
.radio-style.readonly:disabled + .radio-style-1-label:before,
.checkbox-style.readonly:disabled + .checkbox-style-2-label:before,
.radio-style.readonly:disabled + .radio-style-2-label:before {
    opacity: 0.85;
    background: var(--theme-surface-readonly);
    color: #444;
}

.checkbox-style:focus + .checkbox-style-1-label, .radio-style:focus + .radio-style-1-label, .checkbox-style:focus + .checkbox-style-2-label, .radio-style:focus + .radio-style-2-label {
    box-shadow: 0 0 0 0.25rem var(--theme-primary-focus);
    background-color: var(--theme-surface);
    color: var(--theme-on-surface);
}

.checkbox-style-1-label:before, .radio-style-1-label:before, .checkbox-style-2-label:before, .radio-style-2-label:before {
    content: '';
    background: var(--theme-surface);
    border: 1px solid var(--theme-lines);
    display: inline-block;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    margin-right: 10px;
    line-height: 1.5;
    text-align: center;
    padding: 1px 0 0 2px;
    margin-bottom: 4px;
}

.checkbox-style-1-label.small:before, .radio-style-1-label.small:before, .checkbox-style-2-label.small:before, .radio-style-2-label.small:before {
    content: '';
    background: var(--theme-surface);
    border: 1px solid var(--theme-lines);
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    line-height: 1.2;
    text-align: center;
    margin-bottom: 4px;
}

/*------DEFAULT SWITCH  ------*/

.switch label {
    align-self: center;
    cursor: pointer;
}

.switch-toggle {
    position: absolute;
    visibility: visible;
    opacity: 0;
}

.switch-toggle + label {
    display: block;
    position: relative;
    cursor: pointer;
    outline: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

input.switch-toggle-default + label {
    padding: 2px;
    width: 60px;
    height: 30px;
    background-color: var(--theme-surface);
    border-radius: 15px;
}

input.switch-toggle-default:checked + label::before {
    background-color: var(--theme-primary);
    color: var(--theme-on-primary);
}

input.switch-toggle-default:checked + label:after {
    margin-left: 30px;
}

input.switch-toggle-default + label::before {
    right: 1px;
    background-color: var(--theme-surface-readonly);
    -webkit-border-radius: 18px;
    border-radius: 15px;
    -webkit-transition: background .4s;
    -moz-transition: background .4s;
    -o-transition: background .4s;
    transition: background .4s;
}

input.switch-toggle-default + label::after, input.switch-toggle-default + label::before {
    display: block;
    position: absolute;
    top: 1px;
    left: 1px;
    bottom: 1px;
    content: "";
}

input.switch-toggle-default + label::after {
    width: 28px;
    background-color: #fff;
    -webkit-border-radius: 100%;
    border-radius: 100%;
    -webkit-box-shadow: 0 2px 5px rgb(0 0 0 / 30%);
    -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, .3);
    box-shadow: 0 2px 5px rgb(0 0 0 / 30%);
    -webkit-transition: margin .4s;
    -moz-transition: margin .4s;
    -o-transition: margin .4s;
    transition: margin .4s;
}

input.switch-toggle:disabled + label::before,
input.switch-toggle:disabled + label::after  {
    opacity: 0.5;
    cursor: default;
} 

/*------ DEFAULT TEXT SWITCH  ------*/

.toggle-txt {
    position: absolute;
    font-size: 13px;
    font-weight: 600;
}

input.switch-toggle-default.toggle-txt + label {
    height: 36px;
    border-radius: 18px;
}

input.switch-toggle-default.toggle-txt + label::before {
    border-radius: 18px;
}

input.switch-toggle-default.toggle-txt + label::after {
    width: 32.4px;
}

.toggle-txt.activated {
    display: none;
    color: var(--theme-on-primary);
    left: 13px;
    top: 8px;
}

.toggle-txt.deactivated {
    color: var(--theme-on-surface);
    right: 9px;
    top: 8px;
}

input.switch-toggle-default.word-switch + label {
    width: 115px;
}

input.switch-toggle-default.word-switch:checked + label::after {
    margin-left: 79px;
    transition: margin .4s;
}

input.switch-toggle-default.word-switch:checked + label .activated {
    display: block;
}

input.switch-toggle-default.word-switch:checked + label .deactivated {
    display: none;
}



/*----------ERROR LOG MODAL------------*/
.log-modal{
    padding-left: 3rem;
    padding-right: 3rem;
}

.log-modal tr:not(:last-child){
    border-bottom: 1px solid #00000029;
}

.log-modal td,
.log-modal th {
    padding-bottom: 0.5rem;
    padding-top: 0.5rem;
}

.log-modal td:first-child,
.log-modal th:first-child {
    padding-right: 3rem;
}

/*------------ PAGINATIONS -----------------------*/
.pagination {
    --pagination-padding-x: 0.75rem;
    --pagination-padding-y: 0.375rem;
    --pagination-font-size: 1rem;
    --pagination-color: var(--theme-primary);
    --pagination-bg: var(--theme-background);
    --pagination-border-width: 1px;
    --pagination-border-color: var(--theme-lines);
    --pagination-border-radius: 3px;

    --pagination-hover-bg:var(--theme-primary);
    --pagination-hover-color:var(--theme-on-primary);
    --pagination-hover-border-color: var(--theme-lines);

    --pagination-focus-color: var(--theme-on-primary);
    --pagination-focus-bg: var(--theme-primary-focus);
    --pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);

    --pagination-active-color: var(--theme-on-primary);
    --pagination-active-bg: var(--theme-btn-primary);
    --pagination-active-border-color: var(--theme-primary);
    --pagination-active-hover-color: var(--theme-on-primary);
    --pagination-active-hover-bg: var(--theme-btn-primary-hover);
    --pagination-active--hover-border-color: var(--theme-btn-primary-hover);

    --pagination-disabled-color: var(--mdc-theme-on-surface);
    --pagination-disabled-bg: var(--theme-surface);
    display: flex;
    padding-left: 0;
    list-style: none
}

.pagination-lg {
    --pagination-padding-x: 1.5rem;
    --pagination-padding-y: 0.75rem;
    --pagination-font-size: 1.25rem;
}

.page-link{
    position:relative;
    display: block;
    padding: var(--pagination-padding-y) var(--pagination-padding-x);
    font-size:var(--pagination-font-size);
    font-weight: 600;
    color:var(--pagination-color);
    background-color: var(--theme-background);
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.page-link:hover,
.page-link:active {
    z-index: 2;
    color: var(--pagination-hover-color);
    background-color: var(--pagination-hover-bg);
    border-color: var(--pagination-hover-border-color)
}

.page-link:focus {
    z-index: 3;
    color: var(--pagination-focus-color);
    background-color: var(--pagination-focus-bg);
    outline: 0;
    /*box-shadow: var(--pagination-focus-box-shadow)*/
}

.page-item {
    cursor: pointer;
}

.page-item.active {
    cursor: pointer;
}

.page-item.disabled {
    cursor: default;
    opacity: 0.5;
}

.page-item > .page-link:active,
.page-item .page-link:active {
    z-index: 3;
    color: var(--pagination-active-color);
    background-color: var(--pagination-active-bg);
    border-color: var(--pagination-active-border-color)
}

.page-item.active>.page-link,.page-item.active .page-link {
    z-index: 3;
    color: var(--pagination-active-color);
    background-color: var(--pagination-active-bg);
    border-color: var(--pagination-active-border-color)
}

.page-item.active > .page-link:hover,
.page-item.active .page-link:hover,
.page-item.active > .page-link:active,
.page-item.active .page-link:active {
    z-index: 3;
    color: var(--pagination-active-hover-color);
    background-color: var(--pagination-active-hover-bg);
    border-color: var(--pagination-active--hover-border-color);
}

.page-item.disabled>.page-link,.page-item.page-link.disabled {
    color: var(--pagination-disabled-color);
    pointer-events: none;
    background-color: var(--pagination-disabled-bg);
}

.page-item:not(:first-child) .page-link {
    margin-left: calc(var(--pagination-border-width) * -1)
}

.page-item:first-child .page-link {
    border-top-left-radius: var(--pagination-border-radius);
    border-bottom-left-radius: var(--pagination-border-radius)
}

.page-item:last-child .page-link {
    border-top-right-radius: var(--pagination-border-radius);
    border-bottom-right-radius: var(--pagination-border-radius)
}

.pagination-lg {
    --bs-pagination-padding-x: 1.5rem;
    --bs-pagination-padding-y: 0.75rem;
    --bs-pagination-font-size: 1.25rem;
}


/*-----------------------------Table------------------------------------*/
.table-style-1 {
    vertical-align: middle;
    font-size: 14px;
}

.table-style-1 thead .sorting {
    cursor: pointer;
    position: relative;
    padding-left: 25px;
}

.table-style-1 thead .sorting:before,
.table-style-1 thead .sorting:after {
    left: 5px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 13px;
    position: absolute;
    display: block;
    opacity: 0.3;
}

.table-style-1 thead .sorting:before {
    content: "\f106";
    bottom: 0.9rem;
}

.table-style-1 thead .sorting:after {
    content: "\f107";
    bottom: 0.2rem
}

.table-style-1 > :not(:last-child) > :last-child > * {
    border-bottom-color: inherit;
}

.table-style-1 tbody tr:hover {
    background-color: var(--theme-primary-hover);
    cursor: pointer;
}

.table-style-1 .trial-status-td {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 6rem;
}

tr[onclick] {
    cursor: pointer;
}

.table-style-1 tbody tr td:nth-child(2) {
    max-width: 21.875rem;
    word-wrap: break-word;
}

.table-style-1 tbody tr td:nth-child(3) {
    max-width: 15.625rem;
}

.fixed-height-table {
    min-height: 27.125rem;
}


/*-------------CARDS--------------------*/
/*-----------USED IN LOGIN/REGISTRATION/FORGOT PASSWORD SCREENS--------------*/
.card {
    background-color: var(--theme-foreground);
    border-radius: 5px;
}

.card-body {
    color: var(--theme-on-background);
}

.card-title {
    padding-top: 20px;
    min-height: 72px;
    color: var(--theme-on-primary);
}

.card-text {
    font-size: 16px;
}

.card-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1rem;
    background-color: var(--theme-background);
    opacity: 70;
    border-radius: inherit;
}

.login-shadow {
    box-shadow: 0px 3px 6px #00000046 !important;
}


.large-icon {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 3rem;
}

.email-sent-icon {
    color: var(--theme-primary);
}

.email-sent-icon::before {
    content: "\f1d8";
}

.password-changed-icon {
    color: var(--theme-success); 
    font-style: normal;
}

.password-changed-icon::before {
    content: "\f058";
}

input[type="password"]::-ms-reveal,
input[type="password"]::-ms-clear {
    display: none !important;
}

/*-------------login card and text positioning -----------------*/
/*to change the logo size on login card search for the general calss of the logo*/
.vertical-middle {
    z-index: 3;
    position: relative;
    display: flex;
    width: 100%;
    min-height: 100%;
    justify-content: center;
    flex-flow: column;
}

.login .card {
    max-width: 410px;
}

.login .card-body {
    padding: 3rem;
}

.login .card form button {
    width: 100%
}

/*-------Password field icon hide-show------------*/

.field-icon {
    float: right;
    top: -25px;
    left: -5px;
    position: relative;
    z-index: 2;
}

/*----------- TABS NAVIGATION -----------------------------*/

/*----------- Border bottom ----------*/
.nav-tabs {
    background-color: var(--theme-background);
}

.tabs-bar {
    background-color: var(--theme-background);
    padding: 10px 0 10px 8px;
}

.nav-tabs .nav-link {
    color: var(--theme-on-background);
}


.wrapper-nav {
    position: relative;
    margin: 0 auto;
    overflow: hidden;
    padding: 5px;
    height: 50px;
}

.list {
    position: absolute;
    left: 0;
    top: 0;
    min-width: 4000px;
    margin-top: 0px;
}

.nav-tabs .nav-link:first-child, .tabs-tb .nav-link:first-child, .tabs-bb .nav-link:first-child {
    margin-left: 0px;
}

.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
    color: var(--theme-primary-action);
    background-color: transparent;
    transition: 0s;
    font-weight: 600;
}

.tabs-bb .nav-link {
    color: var(--theme-on-background);
    border: 1px solid transparent;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border: transparent;
}


.tabs-bb .nav-link.active {
    border-bottom: 2px solid var(--theme-primary-action);
}

.tabs-tb .nav-link {
    color: var(--theme-on-background);
    border: 1px solid transparent;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom: 2px solid;
    border: transparent;
}


.tabs-tb .nav-link.active {
    border-top: 2px solid var(--theme-primary-action);
    border-bottom: 0;
}

.tab-container {
    --tab-bar-position-top: 6rem; /* Equals to the padding provided by py-5 in base. 3rem top + 3rem bottom padding.*/
}

.tab-container .tab-bar {
    position: sticky;
    top: var(--tab-bar-position-top);
    z-index: 99;
    margin-bottom: 1rem;
    background-color: var(--theme-background);
    align-content: end;
}

.tab-container .content-cover {
    width:100%;
    height:var(--tab-bar-position-top);
    background-color: var(--theme-background);
    content: "";
    position: fixed;
    top: 0;
    z-index: 99;
}

.alert-icon {
    font-size: 6rem;
    color: var(--theme-pending);
}


/* ---- ACCORDION -----*/
.accordion.no-borders * {
    border: none;
}

.accordion.custom-accordion .accordion-body {
    padding-right: 0;
}

.accordion.custom-accordion .accordion-button {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 1rem 1.25rem;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    background-color: #fff;
    border: 0;
    border-radius: 0;
    overflow-anchor: none;
}

.accordion.custom-accordion .accordion-button:not(.collapsed) {
    color: inherit;
    background-color: inherit;
    font-weight: 600;
    box-shadow: none;
}

.accordion.custom-accordion .accordion-button::after,
.accordion.custom-accordion .accordion-button:not(.collapsed)::after {
    background-image: none;
}

.accordion.custom-accordion .accordion-button::before {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 1rem;
    content: "";
    background-image: url("../images/chevron.svg");
    background-repeat: no-repeat;
    background-size: 1.25rem;
    transition: transform 0.2s ease-in-out;
}

.accordion.custom-accordion .accordion-button:not(.collapsed)::before {
    transform: rotate(-180deg);
}

.accordion-link-icon {
    content:"";
    background-image: url("../images/play.svg");
    display: block;
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 1rem;
    background-repeat: no-repeat;
    background-size: 1.25rem;
    transition: any 0.2s ease-in-out;
}

.accordion-link {
    padding-left: 1.25rem;
    text-decoration: none;
    color: #444;
    margin-bottom: 1rem;
}

.accordion-link:last-of-type {
    margin-bottom: 0;
}

.link-iot{
    color: #0173BF;
    letter-spacing: 0.01px;
    font-size: 14.5px;
    font-weight: 400;
    text-decoration: none;
}

.link-iot:hover{
    color: #0067AC;
}


.footerCopyrights{
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
}

.footerCopyrights span{
    letter-spacing: 0.01px;
    color: #FFFFFF !important;
    font-size: 14px;
    background-color: #00000055;
    padding: 5px 10px;
    border-radius: 5px;
}