
/* 
    z-index: {
        nav: 1030,
        modal: 1055,
        loader: 1056,
        toast: 1057,
        btn-floating: 2
    }
*/
:root {
    --background-color: #edf2f4;
    --text-color: #17191a;
    --a-color: #4795cd;
}

body {
    background-color: var(--background-color);
    color: var(--text-color)
}

ul,
li {
    list-style: none
}

li>.navbar-brand {
    position: relative;
    top: -.5rem
}

a {
    text-decoration: none;
    text-decoration-line: none;
    color: var(--a-color);
    font-weight: bold
}

a:hover {
    color: #767171
}

.main {
    margin-top: 5rem;
    margin-bottom: 3rem
}

.material-icons {
    cursor: pointer
}

.grid {
    display: grid;
    gap: 1rem;
    justify-items: center
}

.grid__2 {
    grid-template-columns: repeat(2, 1fr);
}

.grid__3 {
    grid-template-columns: repeat(3, 1fr);
}

.grid__4 {
    grid-template-columns: repeat(4, 1fr);
}

.content-align-end>* {
    position: absolute;
    right: 1rem
}

.margin-top-2 {
    margin-top: 2rem
}

.pointer {
    cursor: pointer
}

.loader, .loader-text {
    position: fixed;
    top: 50%;
    left: 48.8%;
    z-index: 1056;
}

.loader-text {
    top: 55%;
    left: 0;
    right: 0;
    width:100%
}

.loader-text>div {
    text-align: center;
    color: var(--background-color);
    max-width: 15rem;
    text-wrap: wrap;
    margin: auto;
}

.active {
    display: block
}

.no-active {
    display: none
}

.span__error {
    color: #ff0000;
    font-size: 1rem;
    font-weight: bold;
    margin: .5rem
}

.toast {
    z-index: 1057;
}

.toast-container {
    position: fixed;
    top: 1rem;
    right: 1rem
}

.toast-boby {
    overflow-y: auto;
    max-height: 20rem;
}

.btn-floating, .btn-floating-top-left {
    border-radius: 50%;
    z-index: 2
}

.btn-floating-top-left {
    position: fixed;
    top: 5rem;
    left: 1rem;
}

.span__new {
    position: absolute;
    font-size: .75rem;
    top: 0.25rem;
    left: 0.5rem;
    color: #15c515;
    font-weight: bold;
}

.col-8>a {
    position: absolute;
    right: 1rem;
    top: 0.313rem;
}

.div_loader {
    background: #272525;
    opacity: .95;
    position: absolute;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 1056
}

.no-scroll {
    overflow: hidden
}

.flex,
.flex-justify-content-end {
    display: flex;
    gap: 1rem
}

.flex-justify-content-end {
    margin-top: 1rem;
    justify-content: flex-end;
}

#show_password {
    position: absolute;
    right: 1.5rem;
}

._tooltip {
    position: relative;
    display: inline-block;
    cursor: pointer
}

._tooltip ._tooltiptext {
    visibility: hidden;
    width: 15rem;
    background-color: #000000;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
    position: absolute;
    top: -2rem;
    right: 0;
    z-index: 1057;
    padding: .25rem .5rem;
}

._tooltip:hover ._tooltiptext {
    visibility: visible;
}
._tooltip, ._tooltiptext {
    text-wrap: wrap;
}

.dataTables_wrapper {
    overflow: auto;
}

.grid__4 .tables_task_status {
    grid-column: 2/4;
}

table {
    width: 100% !important;
    overflow-x: overlay;
}

th, td {
    white-space: nowrap;
    padding: 1rem;
}

.card-header .card-btn,
.card-header .card-action {
    position: absolute;
    top: 0.25rem;
    right: 1rem;
}

.button_close_loader {
    font-size: 1.5rem;
    border: 0;
    background: none;
    font-weight: bold;
    position: fixed;
    top: .25rem;
    right: 1rem;
}

.button_close_loader:hover {
    color: #ff0000;
}

.dropdown .dropdown-menu {
    max-height: 10rem;
    overflow-y: scroll;
}

.is-relative-for-icon-password {
	position: relative;
}

.is-relative-for-icon-password input {
	padding-right: 2.5rem;
}

i.show-password {
	position: absolute;
	display: block;
	bottom: .5rem;
	right: 1rem;

	user-select: none;
	cursor: pointer;
}

table {
    width: 100%;
}

table div.form-check {
    position: relative;
    top:0
}

table div.form-check input.form-check-input {
    cursor: pointer;
}

div.form-check {
    position: relative;
    top: 1rem;
    left: 0.825rem;
}

.datatable-actions-icons {
    width: 100%;
}

.datatable-actions-icons i {
    font-size: 1.5rem;
    cursor: pointer;
    margin: 0 .5rem;
}

div.container-fluid {
    height: 3.5rem;
}

.navbar-toggler {
    position: absolute;
    right: 1rem;
    top: .75rem;
}

.breadcrums {
    padding-right: 5rem;
}

.image-preview {
    width: 100%;
    display: grid;
    justify-content: center;
    align-items: center;
    margin-top: 1rem;
}

.image-preview img {
    max-width: 200px;
    max-height: 200px;
    cursor: not-allowed;
}

button.card-body-with-form,
a.card-body-with-form {
    position: absolute;
    bottom: 1rem;
    right: 1rem;
}

div.card-body.card-body-with-form {
    padding-bottom: 4.5rem;
}

.tag {
    margin: 1rem;
    background-color: #0d6efd;
    padding: 0.25rem 0.7rem;
    border-radius: 0.5rem;
    color: #fff;
    cursor: pointer;
    text-align: center
}

.tag:hover {
    opacity: 0.5;
}

.margin-lr-1 {
    margin-right: 1.5rem;
    margin-left: 1.5rem;
}

.alert {
    position: absolute;
    top: 1rem;
    z-index: 1031;
    right: 1rem;
}

.alert .btn-close {
    position: absolute;
    top: 0.15rem;
    font-size: 0.7rem;
    right: 0.25rem
}

.absolute-tr, .absolute-tr-left{
    position: absolute !important;
    top: -0.125rem !important;
}

.absolute-tr-left {
    left: 7.5rem !important;
}

@keyframes shake {
	0% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
  100% { transform: translateY(0); }
}

.shake-image {
	animation: shake 0.5s ease-in-out infinite;
}

.modal img.shake-image {
    width: 14.063rem !important;
}
footer span {
    position: absolute;
    right: 1rem;
    font-size: 0.75rem;
    font-weight: bold
}

footer img {
    position: absolute;
    right: 3.5rem;
}

.card div.card-header.title-absolute {
    height: 5rem;
}

.card-header h5.title-absolute {
    position: absolute;
    top: 3rem
}

@media only screen and (max-width: 58.25rem) {
    .card-header >h5, .card-header > .card-title {
        max-width: 50%
    }

    .grid__4 {
        grid-template-columns: repeat(1, 1fr);
    }

    .grid__4 .tables_task_status {
        grid-column: 1;
    }
    .loader {
        left: 46.5%;
    }
    header button.navbar-toggler {
        background-color: var(--bs-black);
    }
}

@media print {
    .dataTables_wrapper, 
    .dataTables_wrapper *,
    .no-print,
    .no-print *,
    a.btn,
    button.btn,
    .btn {
        display: none;
    }
    .print {
        display: block;
    }
    .card-readings {
        height: auto !important;
    }
}