.nascosto {
    display:none !important;
}

body {
    margin: 0 !important;
    padding: 0 !important;
    font-family: 'PT Sans', sans-serif;
    background: #333;
    color: #ddd;
    font-size: 15px;
}

a {
    color: #fff9af;
}
a:hover {
    color: #89FF00;/*#8BC34A;*/
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0.5em 0;
    font-weight: 700;
    line-height: 1.1;
}
h1 {
    text-align: center;
}

ul {
    list-style-type: none;
    padding-inline-start: 0;
}

input, select, textarea {
    font-size: 16px;
    border: 1px solid #000 !important;
    background: #ffffffcc !important;
    padding: 0 5px !important;
    line-height: 1.2em !important;
    color: #333 !important;
}

input, select {
    height: 25px !important;
}
textarea {
    height: 250px !important;
}


@media screen and (max-width: 767px) {
    input, select {
        height: 35px !important;
        margin-bottom: 5px;
    }
}

DIV.table {
    display:table;
    color: #fff; /*#ddd;*/
}
FORM.tr, DIV.tr {
    display:table-row;
}
SPAN.td, SPAN.th {
  display: table-cell;
  padding: 0 5px;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
}
SPAN.th {
    font-weight:700;
}
.pointer {
    cursor: pointer;
}
input[type="submit"], input[type="button"] {
    height: 40px !important;
    margin-top: 10px !important;
    background-color: #98c59a !important;
    color: #000 !important;
    text-transform: uppercase;
    font-weight: 700;
}
.lobibox-notify-msg a:hover {
    color: unset !important;
}
.header {
    border-bottom: 1px solid #999;
    padding: 20px;
    background-color: #555;
    background-position: right 10px center !important;
}

.header DIV {
    background: #333;
    display: inline-block;
    padding: 2px 10px;
}
@media screen and (max-width: 767px) {
    .header DIV {
        margin-top: 30px;
    }
    .header {
    padding: 40px 20px 0;
    background-position: right top !important;
    }
}

.content {
    padding: 0px;
}
SPAN.nome_secondario {
    font-size: 11px;
    background: #fff9af;
    color: #333;
    padding: 0 5px 2px;
    border-radius: 3px;
    font-weight: normal;
    vertical-align: top;
    display: inline-block;
}
.elenco_pratiche .stato span {
    padding: 0 10px;
    display: inline-block;
    border-radius: 5px;
}
.elenco_pratiche .stato span.stato_1 { /*IN CORSO*/
    background: #aa0000;
}
.elenco_pratiche .stato span.stato_2 { /*ULTIMATO*/
    background: #008800;
}
.elenco_pratiche .stato span.stato_3 { /*SOSPESO*/
    background: #a57b00;
}
.elenco_pratiche .stato span.stato_5 { /*DA RISCUOTERE*/
    background: #1290c3;
}
#risultato-salvataggio .msg {
    padding:2px 20px;
    font-weight:normal;
    text-align:center;
    display:block;
}
#risultato-salvataggio .msg.error {
    background-color:#990000;
}
#risultato-salvataggio .msg.ok {
    background-color:#fff9af;
    color:#000;
}
.menu_top:not(#carico_scarico-menu) ul li:not(:last-child):after {
    content: "|";
    margin: 0 15px;
}
.menu_top ul li {
    margin: 0;
    display: inline-block;
}

.filtro_top {
    margin: 20px 10px 40px;
    border-radius: 5px;
    background: #ffffff33;
    padding: 10px 20px 20px;
}

.filtro_top input[type="text"], .filtro_top select {
    width: 240px;
}
.filtro_top input[type="submit"] {
    padding: 3px 25px !important;
    height: 50px !important;
    float: right;
    position: relative;
    right: 0px;
    clear: both;
    margin-top: 20px !important;
    top: -50px;
}
ul.main_menu li a:hover {
    background-color: #ddd;
}
ul.main_menu li {
    margin: 25px;
}
ul.main_menu li a {
    background-color: #eee;
    padding: 5px 15px;
    color: #000;
    text-decoration: none;
    font-weight: 700;
    font-size: 22px;
    display: block;
}

.info-guida {
    padding: 10px 20px 10px 40px;
    margin: 10px 10px 20px;
    background-color: #3abaff78;
    border-radius: 5px;
}
.info-guida:before {
    content: '\f05a';
    font-family: "FontAwesome";
    margin-right: 20px;
    position:absolute;
    left:40px;
}

div.scadenze {
    padding: 5px;
}
DIV.scadenze a {
    font-weight: 700;
    text-transform: uppercase;
}
div.scadenze ul li {
    border: 1px solid #ddd;
    padding: 10px 20px;
    border-radius: 5px;
    margin-bottom: 10px;
    background-color: #2E79B4;
}
div.scadenze.prossime ul li, .etichetta-scadenza.prossime {
    background-color: #ffa50090;
}
div.scadenze.scadute ul li, .etichetta-scadenza.scadute {
    background-color: #ca2121c7;
}


span.operazione_1 {
  background: green;
  padding: 0 10px;
  font-weight: bold;
}
span.operazione_1::before {
  content: "+";
}
span.operazione_0 {
  background: #dd0000;
  padding: 0 10px;
  font-weight: bold;
}
span.operazione_0::before {
  content: "-";
}

div.table.tab_elenco,
table.tab_elenco {
    border: 0 !important;
    width: 100%;
    min-width:700px;
    border-collapse: collapse;
}

div.table.tab_elenco div.tr span.th,
table.tab_elenco tr th {
    text-align: left;  
    border-bottom: 1px solid #ffffff30;
}

div.table.tab_elenco div.tr span.td,
table.tab_elenco tr td {
    padding:8px 5px;
    vertical-align:top;
}

.btn_elimina {
  background: red;
  color: black;
  padding: 9px 9px 8px;
  border: 1px solid;
  margin: 0 0 0 10px;
  display:inline-grid;
}
.btn_edit {
  background-color: #fff9af;
  color: black;
  padding: 9px 9px 8px;
  border: 1px solid;
  margin: 0 0 0 10px;
  display:inline-grid;
}

/*div.table.tab_elenco div.tr span.td.action,*/
table.tab_elenco tr td.action,
/*table.tab_elenco tr:nth-child(2n+0) td:first-child,*/
table.tab_elenco tr td:last-child {
    width: 10% !important;
}
table.tab_elenco tr td:not(.action){
    width:max-content;
    min-width:100px;
}
table.tab_elenco.colonne7 tr td:not(.action){
    width:calc(80%/7);
}
table.tab_elenco.colonne6 tr td:not(.action){
    width:calc(80%/6);
}
table.tab_elenco.colonne5 tr td:not(.action){
    width:calc(80%/5);
}
table.tab_elenco.colonne4 tr td:not(.action){
    width:calc(80%/4);
}
table.tab_elenco.colonne3 tr td:not(.action){
    width:calc(80%/3);
}
table.tab_elenco.colonne2 tr td:not(.action){
    width:calc(80%/2);
}
table.tab_elenco.colonne1 tr td:not(.action){
    width:80%;
}


div.table.tab_elenco:not(.elenco_spostamenti) div.tr:nth-child(4n+0) span.td,
table.tab_elenco tr:nth-child(4n+0) td,
table.tab_elenco.elenco_utenti tr:nth-child(odd) td,
table.tab_elenco.elenco_cantieri tr:nth-child(odd) td {
    background: #ffffff30;
}
table.tab_elenco.elenco_utenti tr:nth-child(4n+0) td,
table.tab_elenco.elenco_cantieri tr:nth-child(4n+0) td {
    background: unset;
}
div.table.tab_elenco div.tr:hover {
  background: #9d891563 !important;
}

div.table.tab_elenco.elenco_carico_scarico div.tr:nth-child(4n+3), form.tr:nth-child(4n+4) {
    background: rgb(0 0 0 / 50%);
}

div.table.tab_elenco div.tr:nth-child(2n+0):hover span.td,
table.tab_elenco tr:nth-child(2n+0):hover td,
table.tab_elenco.elenco_prestazioni tr:hover td {
    background: #ffee8f63 !important;
}
table.tab_elenco.elenco_pratiche tr td {
    /*width: 50%;*/
}

table.tab_elenco.elenco_pratiche tr td.stato,
table.tab_elenco.elenco_pratiche tr td.categoria,
table.tab_elenco.elenco_pratiche tr td.cliente {
    width:12%;
}
table.tab_elenco.elenco_pratiche tr td.numero,
table.tab_elenco.elenco_pratiche tr td.anno {
    width:5%;
}

table.tab_elenco.elenco_prestazioni tr td:not(.action) {
}

table.tab_elenco.elenco_prestazioni tr:nth-child(odd) td {
    background: #ffffff30;
}
table.tab_elenco.elenco_prestazioni tr:nth-child(even) td {
    background: none;
}
table.tab_elenco.elenco_prestazioni tr.Completato {
    background: #0e670e;
}
table.tab_elenco.elenco_prestazioni tr td.ore {
    max-width: 60px !important;
    min-width: 60px !important;
}
table.tab_elenco.elenco_prestazioni tr td.addetto {
    min-width: 140px;
}

.etichetta-scadenza {
    padding: 0 5px;
    border-radius: 5px;
    text-align: center;
}

.avviso-modifica {
    background: #940000;
    padding: 5px;
    margin-bottom: 20px;
}

.risultato-salvataggio {
    background-color: #fff9af;
    color: #333;
    padding:20px;
    text-align:center;
    margin:5px 0 20px;
}

.modifica-contenuto input:not([type='radio']), .modifica-contenuto select, .modifica-contenuto textarea {
    width: 100%;
    margin: 0 0 10px;
}
.modifica-contenuto input[type='radio'] {
    margin: -1px 5px 0 20px;
    vertical-align: middle;
}
.modifica-contenuto .row {
    border-bottom: 1px dotted #ddd;
    padding:10px 5px 5px;
}

div#prestazioni-edit {
    background: #555;
    padding: 30px;
    border: 1px solid #ddd;
    position: absolute;
    z-index: 99;
    top: 10px;
    right: 25px;
    width: calc(100% - 45px);
}

input#p_scadenza_da_definire {
    width: auto;
    float: left;
}
.div_checkbox label {
    margin: 2px;
}
.div_checkbox {
    display: block;
    text-align: center;
    border: 1px solid;
    padding: 0 10px;
    margin: 5px 5px 0;
    border-radius: 5px;
}

.comune_note p {
    background: #00000050;
    padding: 10px;
    border-radius: 10px;
}

.close-button {
    float: right;
    z-index: 9999;
    font-size: 30px;
    position: absolute;
    right: 20px;
    top: 10px;
    font-weight: bold;
    border: 1px solid;
    background-color: rgb(0 0 0 / 20%);
    padding:0 15px;
}
.close-button a::after {
  content: ' CHIUDI';
  font-size: 20px;
  bottom: 4px;
  position: relative;
}
.lobibox-notify .lobibox-close {
    font-size: 40px;
    line-height: 30px;
    width: 34px;
    height: 34px;
    background-color: #ffffff50;
}
.table-responsive {
    background-image: linear-gradient(to right, #333333, #333333), linear-gradient(to right, #333333, #333333), linear-gradient(to right, rgba(0, 0, 20, .50), rgba(255, 255, 255, 0)), linear-gradient(to left, rgba(0, 0, 20, .50), rgba(255, 255, 255, 0));
    background-position: left center, right center, left center, right center;
    background-repeat: no-repeat;
    background-color: #333333;
    background-size: 20px 100%, 20px 100%, 10px 100%, 10px 100%;
    background-attachment: local, local, scroll, scroll;
}

.fc-list-table th a {
    color: #900 !important;
}
.fc .fc-list-event:hover td {
    background-color: #f5f5f53d !important;
}
td.fc-list-event-time {
    display: none;
}

.colorPickSelector {
  border-radius: 5px;
  width: 20px;
  height: 20px;
  cursor: pointer;
  border: 1px solid #fff;
}
.colore-addetto {
  display:inline-block;
  width: 16px;
  height: 16px;
  margin-right:10px;
  border: 1px solid #fff;
  border-radius: 5px;
}
.legenda-addetti {
    padding-top: 180px;
}

div#calendario-prestazioni {
    z-index: 9999;
    position: relative;
    width: 90%;
    margin: 5%;
    border: 1px solid #fff;
    border-radius: 10px;
    top: 10px;
    background: #111;
}
.campo_disabilitato {
    pointer-events: none;
    color: white !important;
    background: #00000030 !important;
    font-weight: normal;
    border-color: rgb(0 0 0 / 10%) !important;
}
SPAN.udm {
    display:inline-block;
}
div.tr.sublevel, form.tr.sublevel {
    background-color: rgb(255 255 255 / 30%);
}
.table.elenco_spostamenti div.tr:not(.sublevel):not(.editing):not(.tab_heading), .table.elenco_spostamenti form.tr:not(.sublevel):not(.editing) {
    border-top: 5px solid rgb(255 255 255 / 70%);
}
span.restituiti {
    font-size:12px;
    line-height:12px;
}
span.restituiti strong {
    background-color: #fc0;
    color: #000;
    padding: 0 2px;
}
@media print {
    div.header,
    div.content .menu_top,
    .tab_elenco.elenco_cantieri tr .action,
    .tab_elenco.elenco_cantieri tr .visibile {
        display:none !important;
    }
    
    .tab_elenco.elenco_cantieri tr td {
        border-bottom: 1px solid #999;
    }
    .tab_elenco.elenco_cantieri {
        color: #000;
        font-size:25px;
    }
}


div.table.tab_elenco.elenco_ore .tr:nth-child(even):hover span.td {
    background: #ffee8f63 !important;
}
div.table.tab_elenco.elenco_ore .tr span.td:not(.action) {
}
div.table.tab_elenco.elenco_ore .tr span.td {
    background: none !important;
}
div.table.tab_elenco.elenco_ore .tr:nth-child(4n+2) span.td,
div.table.tab_elenco.elenco_ore .tr:nth-child(4n+3) span.td {
    background: #ffffff30 !important;
}
