﻿html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    line-height: 12.8px !important;
    height: 100%;
}

a, .btn-link {
    color: #0366d6;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

app {
    position: relative;
    display: flex;
    flex-direction: column;
}

.top-row {
    height: 3.5rem;
    display: flex;
    align-items: center;
}

.main {
    flex: 1;
}

    .main .top-row {
        background-color: #f7f7f7;
        border-bottom: 1px solid #d6d5d5;
        justify-content: flex-end;
    }

        .main .top-row > a {
            margin-left: 1.5rem;
        }

.sidebar {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

    .sidebar .top-row {
        background-color: rgba(0,0,0,0.4);
    }

    .sidebar .navbar-brand {
        font-size: 1.1rem;
    }

    .sidebar .oi {
        width: 2rem;
        font-size: 1.1rem;
        vertical-align: text-top;
        top: -2px;
    }

.nav-item {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type {
        padding-top: 1rem;
    }

    .nav-item:last-of-type {
        padding-bottom: 1rem;
    }

    .nav-item a {
        color: #d7d7d7;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
    }

        .nav-item a.active {
            background-color: rgba(255,255,255,0.25);
            color: white;
        }

        .nav-item a:hover {
            background-color: rgba(255,255,255,0.1);
            color: white;
        }

.content {
    padding-top: 1.1rem;
}

.navbar-toggler {
    background-color: rgba(255, 255, 255, 0.1);
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}

@media (max-width: 767.98px) {
    .main .top-row {
        display: none;
    }
}

html {
    font-size: 80%;
}

.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.my-select-clearbutton {
    display: inline-flex;
    position: relative;
    float: right;
    right: 2.5rem !important;
    top: -3.5rem !important;
    margin-bottom: -0.5rem;
}

.my-textfield-clearbutton {
    /* display: inline-flex; */
    position: relative;
    float: right;
    right: 0.5rem;
    top: -5rem;
    margin-bottom: -4rem;
}

body {
    line-height: 1rem;
}

app {
    flex-direction: row;
}

.sidebar {
    width: 250px;
    height: 100vh;
    position: sticky;
    top: 0;
}

.main .top-row {
    position: sticky;
    top: 0;
}

.main > div {
    /*padding-left: 2rem;
    padding-right: 1.5rem;*/
    padding-left: 2rem !important;
    padding-right: 1.5rem !important;
}

.navbar-toggler {
    display: none;
}

.sidebar .collapse {
    /* Never collapse the sidebar for wide screens */
    display: block;
}

.img-circle {
    border-radius: 50%;
}

/*  CSS STANDARDS */
label {
    margin-bottom: 0;
}

/* CSS MATERIAL */
.mat-accordion .mat-expansion-panel__summary .after {
    font-size: 1.5rem;
}

.mdc-top-app-bar__row {
    height: unset;
}

.mdc-switch__thumb {
    width: 1.5rem;
    height: 1.5rem;
    margin-bottom: 0.15rem;
    border: unset;
}

.mdc-switch__track {
    width: 2.5rem;
    height: 1rem;
    border-radius: 0.5rem;
}

.mdc-radio .mdc-radio__native-control {
    top: unset;
    right: unset;
    left: unset;
    width: 1.5rem;
    height: 1.5rem;
}

.mdc-radio__background {
    width: 1.55rem;
    height: 1.55rem;
}

.mdc-radio {
    padding: 1.2rem;
    width: 0.5rem;
    height: 1.5rem;
}

    .mdc-radio .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle {
        background-color: var(--mdc-theme-secondary, #018786);
        border-color: unset;
    }

.mdc-radio__inner-circle {
    border-width: unset;
    border-style: unset;
}

.mdc-sub-menu-icon {
    right: 1rem;
    top: 50%;
}

.mat-accordion .mat-expansion-panel__summary {
    margin-bottom: 1em;
    height: 3rem;
}

.mdc-list-item {
    height: 3rem;
}

.mdc-text-field + .mdc-text-field-helper-line {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
}

.mdc-text-field-helper-text {
    margin-top: -2.8rem;
    margin-left: -0.75em;
}

.mdc-drawer {
    width: 16rem;
}

    .mdc-drawer.mdc-drawer--open:not(.mdc-drawer--closing) + .mdc-drawer-app-content {
        margin-left: 16rem;
    }

    .mdc-drawer .mdc-list-item {
        font-size: 1rem;
        height: 3.5rem;
        margin: 0.5rem;
        padding: 0 0.5rem;
    }

.mdc-icon-button {
    font-size: 2rem;
    height: 4rem;
    width: 4rem;
    padding: 1rem;
}

.material-icons {
    font-size: 1.6rem;
}

.mdc-icon-button {
    display: flex;
    justify-content: center;
    align-items: center;
}

/*button > .material-icons {
    margin-top: -0.25em;
    margin-right: -0.25em;
}*/
.mat-autocomplete-list-clearbutton {
    top: 0;
    right: 0;
}

.mdc-top-app-bar {
    height: 4rem;
}

.mdc-top-app-bar__section {
    padding: 0;
}

.mdc-text-field {
    height: 3.5rem;
}

.mdc-text-field__input {
    font-size: 1rem;
}

.mdc-text-field--outlined {
    width: 100%;
    margin-bottom: 1.25rem;
}

    .mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above, .mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
        transform: translateY(-2.2em) scale(.75);
    }

.mdc-select--outlined .mdc-select__anchor.mdc-notched-outline--upgraded .mdc-floating-label--float-above, .mdc-select--outlined .mdc-select__anchor .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
    transform: translateY(-2.2em) scale(0.75);
}

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input {
    padding-top: 0.5em;
}

.mdc-text-field--fullwidth:not(.mdc-text-field--disabled) .mdc-line-ripple::before {
    border-bottom-color: rgba(0,0,0,0);
}

.mdc-text-field--disabled.mdc-text-field--filled {
    background-color: transparent !important;
}

input:disabled + .mdc-line-ripple {
    display: none;
}

.mdc-select .mdc-select__anchor {
    height: 3.5rem;
    padding-left: 0;
}

label.mdc-text-field.mdc-text-field--fullwidth:not(.mdc-text-field--textarea) > input.mdc-text-field__input {
    padding: 1.5em 1.5em 0 1.3em;
}

.mdc-select.mdc-select--outlined .mdc-floating-label {
    left: 0.5em;
    top: 1.8em;
}

.mdc-select .mdc-floating-label {
    top: 1.2rem;
}

.mdc-text-field:not(.mdc-text-field--disabled) {
    background-color: transparent;
    width: 100%;
}

.mdc-select:not(.mdc-select--disabled) .mdc-select__anchor {
    background-color: transparent;
}

.mdc-notched-outline__notch {
    max-width: calc(100% - 2rem * 2);
}

.mdc-select--outlined
.mdc-select__selected-text {
    height: 100%;
    align-items: center;
    padding-left: 1.5rem;
    padding-right: 4rem;
    padding-top: 1.3rem;
    padding-bottom: 1rem;
}

.mdc-select--outlined {
    width: 100%;
    margin-bottom: 1rem;
}

.mdc-select__native-control, .mdc-select__selected-text {
    height: 100%;
}

.mdc-select__anchor {
    width: 100%;
}

.mdc-select__dropdown-icon {
    margin-bottom: 0.25rem;
    right: 0.5rem;
    width: 2rem !important;
    height: 2rem !important;
    bottom: 0 !important;
}

.mdc-button {
    min-width: 5rem;
    height: 3rem;
}

.mdc-button--outlined {
    padding: 0.25rem 0.75rem;
    height: 3rem;
}

.mdc-button--raised,
.mdc-button--unelevated {
    padding: 0.25rem 0.75rem;
    border: solid 1px;
    height: 3rem;
}

.mdc-button
.mdc-button__icon {
    font-size: 2em;
    margin-right: 0.25em;
    width: 1em;
    height: unset;
}

.mdc-card__actions {
    min-height: 4rem;
    padding: 0.5rem;
}

.mdc-text-field--filled .mdc-floating-label--float-above {
    transform: translateY(-150%) scale(0.75);
}

.mdc-text-field:not(.mdc-text-field--outlined) .mdc-text-field__input {
    position: relative;
    top: -0.9em;
}

/* MIX CSS TABLE */

.tableFixHead {
    overflow-y: auto;
    height: calc(100vh - 19.5em);
    margin: 0.5em 0 1em;
    border: none;
}

    .tableFixHead thead th {
        position: sticky;
        top: 0;
    }

    .tableFixHead th {
        /*border: 1px;*/
        border: none;
        /*background: #ddd;*/
        background: #fff;
        font-weight: bold;
    }

table {
    border-collapse: collapse;
    width: 100%;
}

hr {
    width: 100%;
    margin-top: 0 !important;
    margin-bottom: 0.5em !important;
}

.title-section {
    margin-left: 3em;
    margin-right: 3em;
    margin-top: 1em;
    margin-bottom: 0.5em;
}

.content-section {
    padding-left: 3em;
    padding-right: 3em;
    margin-top: 1em;
    padding-top: .5em;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(65vh);
}

.actions-section {
    margin-left: 3em;
    margin-right: 3em;
    margin-top: 0.25em;
    margin-bottom: 0.25em;
}

.hr-section {
    width: calc(100% + 6em);
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: -3em;
    margin-right: -3em;
}

.hr-box {
    width: calc(100% + 2em);
    margin-top: 0em;
    margin-bottom: 1em;
    margin-left: -1em;
    margin-right: -1em;
}

.pass-alarm {
    font-size: 0.7rem;
    position: absolute;
    color: red;
    margin-left: 1.5em;
    margin-top: 3.5em;
}

:root {
    --mdc-layout-grid-gutter-desktop: 16px;
    --mud-palette-selected-text: rgba(173, 173, 177, 0.25);
}

textarea {
    resize: none;
}

/* BOOTSTRAP */
.fs-1 {
    font-size: 2.5rem !important;
}

.fs-2 {
    font-size: 2rem !important;
}

.fs-3 {
    font-size: 1.75rem !important;
}

.fs-4 {
    font-size: 1.5rem !important;
}

.fs-5 {
    font-size: 1.25rem !important;
}

.fs-6 {
    font-size: 1rem !important;
}

.cursor-pointer {
    cursor: pointer;
}

.cursor-grab {
    cursor: grab;
}

.cursor-help {
    cursor: help;
}

/*COMPLEMENT MUDBLAZOR*/

@media (min-width: 600px) {
    .mud-toolbar-gutters {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

.r-270 {
    transform: rotate(270deg);
}

.ro-left {
    transform-origin: left;
}

.left-2 {
    left: .5rem
}

.left-3 {
    left: .75rem
}

.text-gray {
    color: gray;
}

.pointer-events-none {
    pointer-events: none;
}

.mud-card-header {
    border-bottom: solid;
    border-bottom-width: 1px;
    border-bottom-color: var(--mud-palette-divider);
    padding: .75rem 1rem !important;
}

    .mud-card-header .mud-card-header-actions {
        margin-top: 0;
    }

.mud-card-header-additional {
    width: calc(100% + 1.5rem);
    margin-left: -.5rem;
    margin-right: -1.5rem;
    margin-top: 1rem;
    border-top: solid;
    border-top-width: 1px;
    border-top-color: var(--mud-palette-divider);
    border-bottom: hidden;
}

.mud-card-actions {
    border-top: solid;
    border-top-width: 1px;
    border-top-color: var(--mud-palette-divider);
    padding: .5rem 1rem;
}

.mud-table {
    box-shadow: 0 0 0 0 !important;
}

th.mud-table-cell {
    font-weight: bold !important;
    font-size: 1.1rem !important;
    letter-spacing: .04em !important;
    line-height: 1.75rem !important;
    padding: .25rem 1rem .25rem 2rem;
}

.mud-table-cell {
    font-size: 1rem !important;
    padding: 0 1rem 0 2rem;
}

.selected-row {
    background-color: var(--mud-palette-tertiary) !important;
}

    .selected-row > td {
        color: var(--mud-palette-tertiary-text) !important;
    }

        .selected-row > td .mud-input {
            color: var(--mud-palette-tertiary-text) !important;
        }

.mud-file-upload input {
    cursor: pointer !important;
}

.mud-tabs-tabbar {
    background-color: transparent;
}
/*
.mud-tabs-panels {
    height: calc(100vh - 15.25em);
    overflow-y: scroll;
    padding: 1rem;
    padding-top: 0;
    margin-top: 1rem;
}
*/
.bootstrap-card {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-top-width: 4px;
}

    .bootstrap-card.primary {
        border-top-color: var(--mud-palette-primary);
    }

    .bootstrap-card.secondary {
        border-top-color: var(--mud-palette-secondary);
    }

    .bootstrap-card.teriary {
        border-top-color: var(--mud-palette-tertiary);
    }

    .bootstrap-card.info {
        border-top-color: var(--mud-palette-info);
    }

    .bootstrap-card.success {
        border-top-color: var(--mud-palette-success);
    }

    .bootstrap-card.warning {
        border-top-color: var(--mud-palette-warning);
    }

    .bootstrap-card.error {
        border-top-color: var(--mud-palette-error);
    }

    .bootstrap-card.dark {
        border-top-color: var(--mud-palette-dark);
    }


.right-0 {
    right: 0;
}

.object-fit-contain {
    -o-object-fit: contain !important;
    object-fit: contain !important;
}

.object-fit-fill {
    -o-object-fit: fill !important;
    object-fit: fill !important;
}

.object-fit-scale {
    -o-object-fit: scale-down !important;
    object-fit: scale-down !important;
}

.object-fit-cover {
    -o-object-fit: cover !important;
    object-fit: cover !important;
}

.mud-input > input.mud-input-root-outlined.mud-input-root-margin-dense, div.mud-input-slot.mud-input-root-outlined.mud-input-root-margin-dense {
    height: 1.5rem;
    padding-top: 11.5px;
    padding-bottom: 11.5px;
}

.mud-input > input.mud-input-root {
    height: 1.5em;
}

button:focus {
    outline: 0 !important;
}

.mud-typography-h5 {
    --mud-typography-h5-weight: 500;
}

.mud-nav-link {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

    .mud-nav-link > .mud-nav-link-text {
        font-size: .95rem;
    }

.mud-nav-group > .mud-nav-link > .mud-nav-link-text {
    font-size: 1.1rem;
}

.fw-bold {
    font-weight: bold;
}

.fw-bolder {
    font-weight: bolder;
}

.fw-lighter {
    font-weight: lighter;
}

.z-2 {
    z-index: 2;
}

.z-3 {
    z-index: 3;
}

.z-4 {
    z-index: 4;
}

.z-5 {
    z-index: 5;
}

.mud-input-control.text-right input {
    text-align: right;
}

.mud-input-control.text-center input {
    text-align: center;
}

.mud-shrink ~ label.mud-input-label.mud-input-label-inputcontrol.mud-input-label-outlined {
    white-space: nowrap;
}

.mud-card-content {
    padding: 1rem;
}

.mud-table-container {
    overflow-y: scroll;
    padding-right: 0.5rem;
}

.mud-table {
    margin-right: -0.5rem;
}

.mud-shrink ~ label.mud-input-label.mud-input-label-inputcontrol.mud-input-label-outlined, .mud-input:focus-within ~ label.mud-input-label.mud-input-label-inputcontrol.mud-input-label-outlined {
    transform: translate(14px,-6px) scale(.85);
}

.mud-input-control-helper-container {
    overflow: hidden;
    margin-top: 0;
    margin-bottom: -0.75rem;
}

.no-error-message .mud-input-control-helper-container {
    margin-bottom: -1.25rem;
    visibility: collapse;
    height: 0;
}

/*.mud-input-control-helper-container {
    overflow: hidden;
    margin-top: 0;
    margin-bottom: -1.25rem;
    visibility: collapse;
    height: 0;
}*/

/* hide arrow in person selector's autocomplete */
.person-selector .mud-select .mud-select-input .mud-input-adornment-end {
    display: none;
}

/* redesign google scrollbar */
::-webkit-scrollbar {
    width: 10px !important;
}

::-webkit-scrollbar-track {
    background: transparent !important;
}

::-webkit-scrollbar-thumb {
    background-color: var(--mud-palette-chip-default) !important;
    border-radius: 5px !important;
    border: transparent !important;
}

    ::-webkit-scrollbar-thumb:hover {
        background-color: var(--mud-palette-chip-default-hover) !important;
    }
/* /END redesign google scrollbar */

.text-right {
    text-align: right;
}

textarea {
    resize: none;
}

.mud-input.mud-input-underline:before {
    border-bottom-style: none;
}

.mud-input.mud-input-underline.mud-disabled:before {
    border-bottom-style: none;
}

.label-toggle-group {
    position: absolute;
    margin-top: -0.6rem;
    margin-left: 1rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    z-index: 1;
    background: var(--mud-palette-surface);
    transform: scale(.85);
}

.mud-input.mud-input-outlined > .mud-input-outlined-border legend {
    font-size: .9rem;
}

.field-header .mud-input-label {
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    color: var(--mud-palette-text) !important;
}

.mud-navmenu-TOC {
    top: 0;
    overflow-y: auto;
    width: 350px;
    height: calc(100vh - 8.5rem);
}

.float-right {
    float: right;
}

.mud-dialog {
    border-top-color: var(--mud-palette-primary);
    border-top-width: thick;
}

.mud-dialog-title {
    border-bottom-width: thin;
    border-bottom-color: var(--mud-palette-divider);
    padding: .5rem 1rem !important;
    font-size: 2rem;
    margin-bottom: .75rem !important;
}

.mud-table-sticky-header * .mud-table-root .mud-table-head .mud-table-loading {
    top: 0;
}

.h-0 {
    height: 0;
}

.h-12rem {
    height: 12rem;
}

.h-27rem {
    height: 27rem;
}

.h-29rem {
    height: 29rem;
}

.h-31rem {
    height: 31rem;
}

.h-39rem {
    height: 39rem;
}

.h-40rem {
    height: 40rem;
}

.mud-elevation-0-important {
    box-shadow: var(--mud-elevation-0) !important;
}

.font-weight-bolder {
    font-weight: bolder;
}

.border-bottom-0 {
    border-bottom-width: 0;
}

.md-mission-details {
    outline: none;
    line-height: 1.4rem;
    font-size: 1.1rem;
    margin: 0 0 0.6em;
}