﻿html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

a, .btn-link {
    color: #0366d6;
}

.grabbable {
    cursor: move; /* fallback if grab cursor is unsupported */
    cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
}

.prevent-select {
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

.text-decoration-line-through {
    text-decoration: line-through !important;
}

.click-through {
    pointer-events: none;
}

.mdc-text-field-helper-text {
    color: red !important;
}

body {
    padding-top: 50px;
    padding-bottom: 20px;
    /* Disables pull-to-refresh but allows overscroll glow effects. */
    overscroll-behavior-y: contain;
    background-color: whitesmoke;
}

.bg-ujudge {
    background-color: #158ED8;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

app {
    position: relative;
    display: flex;
    flex-direction: column;
}

.sticky-offset {
    top: 48px;
}

.mat-toast-container > div {
    opacity: 1 !important;
}

.fa.pisca {
    font-size: 30px;
    color: red;
    opacity: 0;
    animation: anima 1s ease infinite;
}

.checkbox-2x {
    /* Double-sized Checkboxes */
    -ms-transform: scale(2); /* IE */
    -moz-transform: scale(2); /* FF */
    -webkit-transform: scale(2); /* Safari and Chrome */
    -o-transform: scale(2); /* Opera */
    padding: 10px;
}

@keyframes anima {
    to {
        opacity: 1;
    }
}

.border-rounded {
    -webkit-border-radius: 10em;
    border-radius: 10em;
}

.top-row {
    height: 3.5rem;
    display: flex;
    align-items: center;
}

/* Loading page */
.triangle-container {
    left: calc(-50vw + 50%);
    position: fixed;
    right: calc(-50vw + 50%);
    top: 0;
    bottom: 0;
    z-index: -1;
    background-color: #007bff;
}

.triangles {
    background-image: url("../images/triangles.svg");
    background-size: cover;
    height: 100%;
    bottom: 0;
    left: 0;
    mix-blend-mode: hard-light;
    position: fixed;
    right: 0;
    top: 0;
    background-position: center center;
}


.loading-container {
    position: relative;
    text-align: center;
    background-color: #fff;
    margin: 10% auto 0 auto;
    padding: 20px;
}

.table-no-border > thead > tr > th,
.table-no-border > tbody > tr > th,
.table-no-border > tfoot > tr > th,
.table-no-border > thead > tr > td,
.table-no-border > tbody > tr > td,
.table-no-border > tfoot > tr > td,
.table-no-border > tbody,
.table-no-border > thead,
.table-no-border > tfoot {
    border-top: none !important;
    border-bottom: none !important;
}

.main {
    flex: 1;
}

    .main .top-row {
        background-color: #f7f7f7;
        border-bottom: 1px solid #d6d5d5;
        justify-content: flex-end;
    }

        .main .top-row > a, .main .top-row .btn-link {
            white-space: nowrap;
            margin-left: 1.5rem;
        }

        .main .top-row a:first-child {
            overflow: hidden;
            text-overflow: ellipsis;
        }

.navbar-dark .navbar-nav .nav-link {
    color: white;
    font-size: 1.2rem;
}

.nav-item a {
    color: white;
    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: 1rem;
}



.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}

/*#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }*/
#blazor-error-ui {
    position: fixed; /* Sit on top of the page content */
    display: none; /* Hidden by default */
    width: 100%; /* Full width (cover the whole page) */
    height: 100%; /* Full height (cover the whole page) */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.75); /* Black background with opacity */
    z-index: 2; /* Specify a stack order in case you're using a different order for other elements */
    text-align: center;
    padding-top: 50px;
    padding-bottom: 20px;
}

    #blazor-error-ui p {
        font-size: 1.2em;
        width: 400px;
        padding: 25px;
        border-radius: 10px;
        color: white;
        background-color: #0000cd;
        border-color: white;
        border-width: 3px;
        border-style: solid;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
    }


.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;
    }

    .sidebar .nav-item {
        font-size: 0.9rem;
        padding-bottom: 0.5rem;
    }

        .sidebar .nav-item:first-of-type {
            padding-top: 1rem;
        }

        .sidebar .nav-item:last-of-type {
            padding-bottom: 1rem;
        }

        .sidebar .nav-item a {
            color: #d7d7d7;
            border-radius: 4px;
            height: 3rem;
            display: flex;
            align-items: center;
            line-height: 3rem;
        }

            .sidebar .nav-item a.active {
                background-color: rgba(255,255,255,0.25);
                color: white;
            }

            .sidebar .nav-item a:hover {
                background-color: rgba(255,255,255,0.1);
                color: white;
            }

.navbar {
    padding-top: 0rem;
    padding-right: 1rem;
    padding-bottom: 0rem;
    padding-left: 1rem;
}
/*.navbar-nav > li > a {padding-top:5px !important; padding-bottom:5px !important;}
.navbar {min-height:32px !important}*/

/*.navbar-toggler {
    background-color: rgba(255, 255, 255, 0.1);
}
.navbar {
    min-height: 80px;
}

.navbar-brand {
    padding: 0 15px;
    height: 80px;
    line-height: 80px;
}

.navbar-toggle {
    (80px - line-height of 27px) / 2 = 26.5px 
    margin-top: 23px;
    padding: 9px 10px !important;
}
         
@media (min-width: 768px) {
    .navbar-nav > li > a {
    (80px - line-height of 27px) / 2 = 26.5px 
        padding-top: 26.5px;
        padding-bottom: 26.5px;
        line-height: 27px;
    }
}*/

.form-group {
    margin-bottom: auto;
}

.col-form-label {
    color: #757575;
    font-size: 0.85rem;
    /*padding-top: 0;
        padding-bottom: 0;*/
    padding-top: .1rem;
    padding-bottom: .1rem;
}

.form-control-plaintext {
    padding-top: .1rem;
    padding-bottom: .1rem;
}

.form-control {
    margin-bottom: .25rem;
}

.form-display-div {
    margin-left: .5rem;
    color: black;
}


.exhibitdisplay {
    max-width: 20rem;
}

/*.blazored-modal-wrapper {
    width: 75%;
}*/
div.blazored-modal-header {
    padding: 0 0 .5rem 0;
}

.mdc-dialog__title::before {
    height: unset;
}

.btn.btn-tight {
    padding: 0.3rem .75rem;
}

.btn.btn-xtight {
    padding: 0.1rem .5rem;
}

.btn.btn-xxtight {
    padding: 0.1rem .3rem;
    font-size: .6rem;
    margin: .1rem;
}


@media (min-width: 768px) {
    .navbar-toggler {
        display: none;
    }
}


@media (max-width: 767.98px) {

    .navbar-dark .navbar-nav .nav-link {
        font-size: 1rem;
    }

    .main .top-row:not(.auth) {
        display: none;
    }

    .main .top-row.auth {
        justify-content: space-between;
    }

    .main .top-row a, .main .top-row .btn-link {
        margin-left: 0;
    }

    .exhibitdisplay {
        max-width: unset;
    }

    .blazored-modal-wrapper {
        width: 90%;
        font-size: .85em;
    }

        .blazored-modal-wrapper.form-control {
            font-size: .85em;
        }

    .mdc-dialog__content {
        font-size: .95em;
    }
}

@media (max-width: 575px) {
    .navbar {
        padding-top: 0.5rem;
        padding-right: 1rem;
        padding-bottom: 0.5rem;
        padding-left: 1rem;
    }
}

@media (min-width: 768px) {



    /*    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 !important;
        padding-right: 1.5rem !important;
    }

    .navbar-toggler {
        display: none;
    }

    .sidebar .collapse {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }
}

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

    /* Force table to not be like tables anymore */
    #stack-tables table,
    #stack-tables thead,
    #stack-tables tbody,
    #stack-tables th,
    #stack-tables td,
    #stack-tables tr {
        display: block;
    }

        /* Hide table headers (but not display: none;, for accessibility) */
        #stack-tables thead tr {
            position: absolute;
            top: -9999px;
            left: -9999px;
        }

    #stack-tables tr {
        border: 1px solid #ccc;
    }

    #stack-tables td {
        /* Behave  like a "row" */
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 40%;
        white-space: normal;
        text-align: left;
        font-size: .8rem;
    }

    #stack-tables.stack-tables-sm td {
        padding-left: 30%;
    }

    #stack-tables td.no-stack {
        /* Behave  like a "row" */
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 0%;
        white-space: normal;
        text-align: left;
        font-size: .8rem;
    }

    #stack-tables.hide-empty td:empty {
        display: none;
    }

    #stack-tables td:before {
        /* Now like a table header */
        position: absolute;
        /* Top/left values mimic padding */
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        text-align: left;
        font-weight: bold;
        /*
	Label the data
	*/
        content: attr(data-title);
    }
}

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

    /* Force table to not be like tables anymore */
    .stack-table table,
    .stack-table thead,
    .stack-table tbody,
    .stack-table th,
    .stack-table td,
    .stack-table tr {
        display: block;
    }

        /* Hide table headers (but not display: none;, for accessibility) */
        .stack-table thead tr {
            position: absolute;
            top: -9999px;
            left: -9999px;
        }

    .stack-table tr {
        border: 1px solid #ccc;
    }

    .stack-tables td {
        /* Behave  like a "row" */
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 40%;
        white-space: normal;
        text-align: left;
        font-size: .8rem;
    }

    .stack-tables.stack-tables-sm td {
        padding-left: 30%;
    }

    .stack-tables td.no-stack {
        /* Behave  like a "row" */
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 0%;
        white-space: normal;
        text-align: left;
        font-size: .8rem;
    }

    .stack-tables.hide-empty td:empty {
        display: none;
    }

    .stack-tables td:before {
        /* Now like a table header */
        position: absolute;
        /* Top/left values mimic padding */
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        text-align: left;
        font-weight: bold;
        /*
	Label the data
	*/
        content: attr(data-title);
    }
}

/*Datatable*/

/*Extra small devices (portrait phones, less than 576px)*/
@media only screen and (max-width: 575px) {
    .btn {
        padding: 0.4rem .75rem;
    }

        .btn.btn-sm {
            padding: 0.4rem .75rem;
        }

        .btn.btn-lg {
            padding: 0.5rem .95rem;
        }

        .btn.btn-tight {
            padding: 0.3rem .75rem;
        }

        .btn.btn-sm.btn-tight {
            padding: 0.3rem .75rem;
        }

    table td {
        font-size: .8rem;
    }

    table th {
        font-size: .8rem;
    }

    body {
        font-size: .8rem;
    }

    .form-control label {
        font-size: .8rem;
    }

    .nav-link {
        padding: 0.4rem .75rem;
    }

    .nav-tabs {
        margin-left: 0rem;
        margin-right: 0rem;
    }

    .tab-content {
        margin-left: 0rem;
        margin-right: 0rem;
        padding-left: 0rem;
        padding-right: 0rem;
    }

    .card-body {
        padding-left: .3rem;
        padding-right: .3rem;
        padding-top: .5rem;
        padding-bottom: .5rem;
    }

    .fc-day-header {
        font-size: .4rem;
    }

    .fc-day-number {
        font-size: .4rem;
    }

    .fc-event-title {
        font-size: .5rem;
    }

        .fc-event-title .small {
            font-size: .3rem;
            line-height: 1.15;
            display: block;
        }

        .fc-event-title .btn.btn-sm.btn-tight {
            font-size: .3rem !important;
            margin: 3px 0px;
            padding: .1rem .1rem !important;
        }

    /*.cal-sm-hide {
        display:none;
        height:0px;
    }*/
}

/*Small devices (landscape phones, less than 768px)*/
@media (max-width: 767px) {

    .loading-container {
        padding: 10px;
    }


    .btn {
        padding: 0.4rem .75rem;
    }

        .btn.btn-sm {
            padding: 0.4rem .75rem;
        }

        .btn.btn-lg {
            padding: 0.5rem .95rem;
        }

    table td {
        font-size: .8rem;
    }

    table th {
        font-size: .8rem;
    }

    body {
        font-size: .8rem;
    }

    .form-control label {
        font-size: .8rem;
    }

    .nav-link {
        padding: 0.4rem .75rem;
    }

    .nav-tabs {
        margin-left: 0rem;
        margin-right: 0rem;
    }

    .tab-content {
        margin-left: 0rem;
        margin-right: 0rem;
        padding-left: 0rem;
        padding-right: 0rem;
    }

    .card-body {
        padding-left: .3rem;
        padding-right: .3rem;
        padding-top: .5rem;
        padding-bottom: .5rem;
    }

    .fc-event-title .small {
        line-height: 1.15;
    }

    .fc-event-title .btn.btn-sm.btn-tight {
        font-size: .4rem;
        padding: .1rem .3rem;
    }
}
