*, *::before, *::after {
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    min-height: 100vh;
    min-width: 100vw;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

body{
    background-image: url('https://sviluppo.cofardis.it/images/sfondo_home.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    color: black;
    font-size: 1rem;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}

#cofardisModalDialog {
    height: fit-content;
    max-height: 93vh;
    flex-direction: column;
}

.centerFullVert, .centerFullHoriz, .centerVert, .centerHoriz, .modalHeader{
    display: flex;
    align-items: center;
    justify-content: center;
}

.centerFullVert, .centerVert{
    flex-direction: column;
    height: 1vh;
}

.centerFullVert{
    width: 100%;
    flex-grow: 1;
}

.centerVert{
    max-width: 100%;
    height: fit-content;
    width: fit-content;
}

.centerFullHoriz, .centerHoriz{
    flex-direction: row;
    width: 100%;
}

.centerFullHoriz{
    height: 100%;
}

.centerHoriz{
    height: fit-content;
}

.overflowVert{
    overflow-y: auto;
    overflow-x: hidden;
    justify-content: flex-start !important;
}

.overflowHoriz{
    overflow-x: auto;
    overflow-y: hidden;
}

.overflowAll{
    overflow-x: auto;
    overflow-y: auto;
}

input[type=file]::file-selector-button {
    background-image: linear-gradient(to right, #124712, #0ec527, #233142, black);
	color: white;
    width: fit-content;
    margin: 5px;
    margin-right: 20px;
    padding: 0.6vh 1vh;
    height: fit-content;
    text-align: center;
    border: none;
    background-size: 300% 100%;
    border-radius: 1.2vh;
    transition: all .4s ease-in-out;
    cursor: pointer;
}

input[type=file]::file-selector-button:hover,.roundBtn:hover {
    background-position: 50% 0;
    -o-transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    color: #fff;
}
  
input[type=file]::file-selector-button:hover,.roundBtn:focus {
    outline: none;
}

@font-face {
    font-family: 'BarcodeS';
    src: url('barcodeS.ttf') format('truetype');
}

@font-face {
    font-family: 'BarcodeXS';
    src: url('barcodeXS.ttf') format('truetype');
}

hr{
    width: 95%;
}

th, td {
    text-align: center;
    border: 1px solid black;
}

.cofBKG, .dropdown-item:hover{
    background-color:#d9f0e0;
}

.flexLeft, .flexCenter, .flexRight{
    width: 33.333333%;
    height: 100%;
    flex-direction: row;
    display: flex;
}

.flexLeft{
    justify-content: flex-start;
}

.flexCenter{
    justify-content: center;
}

.flexRight{
    justify-content: flex-end;
}

.wrapContent{
    flex-flow: wrap;
    overflow-y: auto;
}

.fullText, .fullText2px, .fullTextCompact{
    text-align: center;
    width: fit-content;
    max-width: 100%;
    word-break: normal;
}

.fullText2px{
    margin: 2px;
}

.fullText{
    margin: 5px;
}

.fullTextCompact{
    margin: 0;
    font-size: small;
}

.roundBtn{
    background-image: linear-gradient(to right, #124712, #0ec527, #233142, black);
	color: white;
    width: fit-content;
    margin: 5px;
    padding: 0.5vh 1.2vh;
    height: fit-content;
    text-align: center;
    border: none;
    background-size: 300% 100%;
    border-radius: 1.2vh;
    transition: all .4s ease-in-out;
    display: flex !important;
    align-items: center !important;
}

.red_btn{
    background-image: linear-gradient(to right, #9c3333, #f70606, #233142, black) !important;
}

.roundInput {
	border: 2px solid gray;
	border-radius: 20px;
    font-size: 1rem;
    padding-left: 10px;
    margin: 5px;
}

.roundInput:focus {
  	outline: none;
  	box-shadow: 0px 0px 8px black;
}

.dropdown:hover .dropdown-menu, .dropdown:hover .dropdown-menu-bottom{
	display: block;
}

.nav-link {
    padding: 0px 5px !important;
    margin: 0px;
}

.dropdown-menu {
    top: 1.9rem;
    position: fixed !important;
    left: 0px;
    z-index: 2500;
    width: fit-content !important;
}

.dropdown-menu-bottom {
    top: auto !important;
	bottom: 1.9rem;
}

.dropdownRight{
    right: 50px;
    left: unset !important;
    width: fit-content;
}

.navbar-nav{
    max-height: 2.25rem;
    overflow-x: auto;
    overflow-y: hidden;
    min-width: 33cqw;
}

.navbar-nav::-webkit-scrollbar{
    height: 6px;
}

.navbar-nav::-webkit-scrollbar-track {
    background: transparent;
}

.navbar-nav::-webkit-scrollbar-thumb {
    background-color: #999;
    border-radius: 3px;
}

.navbar-brand{
    padding: 0 10px;
    min-width: 135px;
    margin-right: 0px;
}

.navbar{
    padding: 0px;
    min-height: fit-content;
    max-height: fit-content;
    width: 100%;
    flex-wrap: nowrap;
}

.tab-pane{
    height: fit-content;
}

.tab-pane.show.active{
    display: flex !important;
}

.myBadge, .myBadgeGray{
    margin: 5px;
    background-color: #004182;
    color: white;
    border-radius: 5vh;
    text-align: center;
    font-size: x-large;
    width: max-content;
    padding-left: 1vh;
    padding-right: 1vh;
}

.myBadgeGray {
    background-color: gray;
}

.grayBkg{
    background-color: gray;
    max-height: 5vh;
}

.whiteBkg{
    background-color: whitesmoke;
    max-height: 5vh;
}

.gray2Bkg{
    background-color: silver;
}

.white2Bkg{
    background-color: antiquewhite;
}

.lgreenBkg{
    background-color: lightgreen;
}

.greenBkg{
    background-color: olivedrab;
}

.orangeBkg{
    background-color: orange;
}

.redBkg{
    background-color: coral;
}

.aquaBkg{
    background-color: mediumaquamarine;
}

.cyanBkg{
    background-color: cyan;
}

.purpleBkg{
    background-color: purple;
}

.evidenzia{
    background-color: salmon;
}

.evidenziaImportant{
    background-color: salmon !important;
}

.evidenzia2{
    background-color: chocolate;
}

.tooltip-inner {
    max-width: 1000px !important;
}

.modal-xl{
    --bs-modal-width: 1250px;
}

.rateHidden, .dipInatt, .hiddenDiv {
    display: none;
}

.borderedBlock {
    border: 2px solid blue;
    height: 100%;
    padding: 0.5vh;
}

.bloccoGesPres {
    min-width: fit-content;
    height: 8vh;
    align-items: end;
    border: 1px solid black;
}

.queryBody{
    padding: 5px;
    border: 2px solid orange;
    height: 62vh;
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.tCell{
    width: fit-content;
    border: 1px solid orange;
    text-align: center;
    padding: 1px;
}

.redBorder{
    border: 2px solid red !important;
}

.orangeBorder{
    border: 2px solid orange !important;
}

.blackBorder{
    border: 2px solid black !important;
}

.bilprodrow{
    cursor: pointer;
    user-select: none;
    border: 1px solid black !important;
}

.thinBorder{
    border: 1px solid black;
}

.tthelp{
    visibility: hidden;
    width: fit-content;
    max-width: 30vw;
    word-break: break-word;
    background-color: black;
    color: white;
    text-align: center;
    border-radius: 6px;
    padding: 5px;
    position: absolute;
    white-space: normal;
    z-index: 9999;
}

.oneLineTabs{
    width: 99%;
    overflow: hidden;
    white-space: nowrap;
    flex-wrap: nowrap;
    overflow-x: auto;
}

.myProgress{
    width: 100%;
    display: block;
    height: 2rem;
}

.myProgressCenteredText{
    color: darkred;
    width: 100%;
    min-width: 100%;
    text-align: center;
    top: -100%;
    position: relative;
    font-size: 2.3vh;
}

.h4dot5{
    height: 4.5vh;
}

.boldText{
    font-weight: bold;
}

.greenColor{
    color: green;
}

.redColor{
    color: firebrick;
}

.cyanColor{
    color: cyan;
}

.orangeColor{
    color: orange;
}

.vertSwitches{
    border: 1px solid black;
    margin-top: 3px;
    padding-right: 0.25em;
}

.rotatingLoader {
    width: 50px;
    aspect-ratio: 1;
    display:grid;
    -webkit-mask: conic-gradient(from 15deg,#0000,#000);
    mask: conic-gradient(from 15deg,#0000,#000);
    animation: rotateLoader 1s infinite steps(12);
}
.rotatingLoader, .rotatingLoader:before, .rotatingLoader:after{
    background: radial-gradient(closest-side at 50% 12.5%, #f03355 96%,#0000) 50% 0/20% 80% repeat-y, radial-gradient(closest-side at 12.5% 50%, #f03355 96%,#0000) 0 50%/80% 20% repeat-x;
}
.rotatingLoader:before, .rotatingLoader:after {
    content: "";
    grid-area: 1/1;
    transform: rotate(30deg);
}
.rotatingLoader:after {
    transform: rotate(60deg);
}

@keyframes rotateLoader {
    100% {transform:rotate(1turn)}
}

/*
@media (max-width: 768px) {
    html, body {
        min-width: 100vw;
        min-height: 100vh;
        width: 100vw;
        height: 100vh;
        font-size: 0.95rem;
    }
    body {
        background-size: cover;
        padding: 0;
    }
    .centerFullVert, .centerFullHoriz, .centerVert, .centerHoriz, .modalHeader {
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: center !important;
        width: 100vw !important;
        max-width: 100vw !important;
    }
    #cofardisModalDialog {
        max-width: 98vw;
        max-height: 95vh;
        width: 98vw;
        height: auto;
    }
    .centerFullVert {
        width: 100vw !important;
        min-width: 100vw !important;
        flex-grow: 1;
    }
    .centerVert, .centerHoriz {
        width: 100vw !important;
        max-width: 100vw !important;
    }
    img {
        max-width: 90vw !important;
        height: auto !important;
    }
    .roundInput, input, select, button {
        font-size: 1.1em !important;
        width: 95vw !important;
        max-width: 95vw !important;
    }
    .fullText, .fullText2px, .fullTextCompact {
        max-width: 95vw !important;
        word-break: break-word !important;
    }
    .navbar, .navbar-nav {
        max-width: 100vw !important;
        width: 100vw !important;
        overflow-x: auto !important;
    }
}
*/