body { font-family: Courier; color: #000; }
.clear { clear: both; content: ""; display: block; height: 0; }
.nascosto { display: none !important; }
.center { text-align: center !important; }
button { border: 1px solid #ccc; padding: 10px 10px; font-size: 14px; text-align:center; font-family: Courier; color: #000; font-weight: bold; }
button:hover { cursor: pointer; border: 1px solid #ccc; padding: 10px 10px; font-size: 14px; text-align:center; background: #fe5c0b; color: #fff; }
button:disabled, button[disabled] { border: 1px solid #f3f3f3; background-color: #f3f3f3; color: #d2d2d2; }
button.selected { background-color: #f3f3f3; border: 2px solid #fe5c0b; }
button.selected:hover { cursor: pointer; border: 2px solid #ccc; padding: 10px 10px; font-size: 14px; text-align:center; background: #fe5c0b; color: #fff; }
.small { font-size: 10px !important; }
.noborder { border: none !important; }
.grey { color: #ccc !important; }
.strong { font-weight: bold; }
hr { margin: 0; border-top: 1px solid #eee; }
input { overflow: hidden; }
/**input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input[type=number] { -moz-appearance: textfield; }**/
button:disabled, button[disabled]{ border: 1px solid #999999; background-color: #cccccc; color: #666666; }
.piu { position: absolute; bottom: 10px; right: 10px; }
.num_giorno { position: absolute; top: 0; left: 0; font-size: 13px !important; font-weight: bold; background: #ddd; border-radius: 20px !important; padding: 2px 3px !important; width: 18px; line-height: 18px; text-align: center; vertical-align: middle; }

option:disabled { background: #ddd; color: #fff; }

h1 { font-size: 24px; margin: 15px 0 0 0; padding: 0; }
h5 { font-size: 14px; margin: 0; padding: 0; }
h4 { font-size: 14px; margin: 0; padding: 10 0; }
h6 { font-size: 14px; margin: 0; padding: 0; font-weight: normal; }

table { width: 100%; border: 1px solid #ddd; padding: 0; margin: 0; }
table th { border-bottom: 1px solid #ddd; padding: 5px 0; background: #eee; }
table td { border-top: 1px solid #ddd; padding: 3px 0; }
table td.nb { border: none !important; }

tr:hover { background: #ddd; }

th.voce0  { text-align: left; width: 8%; padding-left: 5px; }
th.voce1  { text-align: left; width: 37%; padding-left: 5px; }
th.voce1_1  { text-align: left; width: 29%; padding-left: 5px; }
th.voce2  { text-align: left; width: 15%; padding-left: 5px; }
th.voce3  { text-align: left; width: 39%; padding-left: 5px; }
th.voce4  { text-align: left; width: 3%; padding-left: 5px; }

th.voceS0 { text-align: left; width: 8%; padding-left: 5px; }
th.voceS1 { text-align: left; width: 36%; padding-left: 5px; }
th.voceS2 { text-align: left; width: 20%; padding-left: 5px; }
th.voceS3 { text-align: left; width: 20%; padding-left: 5px; }
th.voceS4 { text-align: left; width: 5%; padding-left: 5px; }
th.voceS5 { text-align: left; width: 5%; padding-left: 5px; }

th.voce3_1  { text-align: left; width: 20%; padding-left: 5px; }
th.voce4_1  { text-align: left; width: 19%; padding-left: 5px; }

th.tool  { text-align: center; width: 3%; }

td.voce1  { text-align: left; width: 37%; padding-left: 5px; }
td.voce2  { text-align: left; width: 15%; padding-left: 5px; }
td.voce3  { text-align: left; width: 39%; padding-left: 5px; }

td.voce3_1  { text-align: left; width: 20%; padding-left: 5px; }
td.voce4_1  { text-align: left; width: 19%; padding-left: 5px; }

td.voce4  { text-align: left; width: 3%; padding-left: 5px; }
td.tool  { text-align: center; width: 3%; }

td.voceS0 { text-align: left; width: 8%; padding-left: 5px; }
td.voceS1 { text-align: left; width: 36%; padding-left: 5px; }
td.voceS2 { text-align: left; width: 20%; padding-left: 5px; }
td.voceS3 { text-align: left; width: 20%; padding-left: 5px; }
td.voceS4 { text-align: left; width: 5%; padding-left: 5px; }
td.voceS5 { text-align: left; width: 5%; padding-left: 5px; }


td.first { border: none; }
td.bloccato { border-left: 5px solid #ff0000; }

td.voceIns1  { text-align: left; width: 20%; padding-left: 5px; }
td.voceIns2  { text-align: left; width: 80%; padding-left: 5px; }

td.voceOp1  { text-align: left; width: 20%; padding-left: 5px; }
td.voceOp2  { text-align: left; width: 20%; padding-left: 5px; }
td.voceOp3  { text-align: left; width: 60%; padding-left: 5px; font-size: 14px; }

input { font-family: Courier; padding: 2px 5px; border: 1px solid #ccc; color: #000; font-weight: bold; }
select { font-family: Courier; padding: 2px 5px; border: 1px solid #ccc; color: #000; font-weight: bold; }


/********************************************************************************/

header { width: auto; margin: 10px; border: 1px solid #ccc; padding: 15px; }
header img { height: 70px; float: left; }
header .int { float: right; }

/********************************************************************************/

footer { position: fixed; bottom: 0; left: 0; width: 100%; border: 1px solid #ccc; padding: 15px 15px; background: #fff; margin-right: 10px; }

/********************************************************************************/

.cruscotto { width: auto; margin: 10px; border: 1px solid #ccc; padding: 15px; }
.cruscotto .menu { width: 75%; float: left; }
.cruscotto .menu button { border: 1px solid #ccc; padding: 10px 7px; font-size: 14px; text-align:center; font-family: Courier; color: #000; font-weight: bold; float: left; margin-right: 3px; margin-bottom: 2px; }
.cruscotto .menu button:hover { border: 1px solid #ccc; padding: 10px 7px; font-size: 14px; text-align:center; font-family: Courier; color: #fff; font-weight: bold; }
.cruscotto .menu button.selected { background-color: #fe5c0b; padding: 10px 7px; color: #fff; margin-bottom: 0 !important; }
.cruscotto .menu button.selected:hover { cursor: pointer; padding: 10px 7px !important; font-size: 14px; text-align:center; background: #fe5c0b; color: #fff; }
.small { font-size: 10px !important; }
.cruscotto h4 { width: 25%; float: right; text-align: right; }

/********************************************************************************/

.login { width: 30%; margin: 0 auto; }
.login label { margin-right: 15px; margin-top: 10px; }
.login input { padding: 10px; margin-top: 10px; }
.login input[type=submit]:hover { cursor: pointer; }
.login .lost { text-align: right; margin-top: 20px; }
.login .lost a { color: #000; text-decoration: none; }
.login .btn { text-align: center; margin-top: 20px; }
.login .btn .login_btn { color: #000; text-decoration: none; }
.login .btn .login_btn:hover { color: #000; text-decoration: none; }

/********************************************************************************/

.main { width: auto; margin: 10px; border: 1px solid #ccc; padding: 10px; position: relative; text-align: center; }
.main h6.titolopagina { text-align: right; }
.main h6.titolopagina a { text-decoration: none; }
.main h6.titolopagina a:hover { text-decoration: underline; }
.main .pulsanti { text-align: center; }
.main a.ins { display: inline-block; border: 1px solid #ccc; margin: 15px 10px; padding: 10px 15px; font-size: 14px; text-align:center; font-family: Courier; color: #000; font-weight: bold; text-decoration: none; }
.main a.ins:hover { cursor: pointer; border: 1px solid #ccc; padding: 10px 15px; font-size: 14px; text-align:center; background: #fe5c0b; color: #fff; text-decoration: none; }
.main .nodati { width: 100%; padding-top: 20px; padding-bottom: 20px; display: block; }

.filtro { width: auto; margin: 10px; border: 1px solid #ccc; padding: 10px; position: relative; text-align: right; }
#off { display: none; }
.filtro a { color: #000; text-decoration: none; background: #ddd; padding: 3px 10px; }
.S, .N, .T { width: 100%; }

/********************************************************************************/

table.utenti { margin: 10px auto; }
table.clienti { margin: 10px auto; }
table.opzioni { margin: 10px auto; }
table.report { margin: 10px auto; }


/********************************************************************************/

#prezzoNoRange1 { display: table-cell; }
#prezzoNoRange2 { display: table-cell; }
#prezzoSiRange1 { display: none; }
#prezzoSiRange2 { display: none; }

.errore { text-align: center; color: #ff0000; }
.errore a { text-align: center; color: #ff0000; text-decoration: underline; }

.messaggio { text-align: center; color: #ff0000; padding-top: 20px; margin-bottom: 10px; }



/***** FASI ******/
.dataFase { width: 25%; text-align: center; margin-top: 15px; float: left; }
.dataFase input { width: 100%; border: none; font-family:  Courier; font-size: 16px; padding: 10px 0; text-align: center !important; float: left; }
.clienteFase { width: 25%; text-align: center; margin-top: 15px; float: left; }
.clienteFase select { width: 80%; border: 1px solid #ccc; font-family:  Courier; font-size: 16px !important; padding: 10px 0 !important; text-align: center; }
.brandFase { width: 25%; text-align: center; margin-top: 15px; float: left; }
.brandFase select { width: 80%; border: 1px solid #ccc; font-family:  Courier; font-size: 16px !important; padding: 10px 0 !important; text-align: center; }
.brandFase input { border: 1px solid #ccc; font-family:  Courier; font-size: 16px !important; padding: 10px 0 !important; text-align: center; }
.brandFase input[type='radio'] { margin-top: 13px !important; margin-bottom: 15px !important; }
.brandFase_2 { width: 25%; text-align: center; margin-top: 15px; float: left; }
.brandFase_2 select { width: 90%; border: 1px solid #ccc; font-family:  Courier; font-size: 16px !important; padding: 10px 0 !important; text-align: center; }
.brandFase_2 input { border: 1px solid #ccc; font-family:  Courier; font-size: 16px !important; padding: 10px 0 !important; text-align: center; }
.brandFase_2 input[type='radio'] { margin-top: 13px !important; margin-bottom: 15px !important; }

.fasi_modello { width: 98%; margin: 0 auto; padding: 10px; }
.fasi_modello .brandFase select { width: 80%; border: 1px solid #ccc; font-family:  Courier; font-size: 16px !important; padding: 10px 0 !important; text-align: center; }

/***** LISTINI ******/
.listino { width: 98%; border: 1px solid #ccc; margin: 30px auto; padding: 20px; }
.listino h3 { margin-bottom: 0 !important; }
.voceListino { width: 25%; text-align: center; margin-top: 10px; margin-right: 20px; float: left; border: 1px solid #ddd; padding: 10px; min-height: 40px; }
.voceListino .sx { width: 50%; float: left; font-size: 12px; }
.voceListino .dx { width: 50%; float: right; text-align: right }
.voceListino .dx input { text-align: right }

/***** LAVORAZIONI *****/
#lavorazioni { width: 98%; border: 1px solid #ccc; margin: 0 auto; padding: 10px 10px 30px 10px; }
#lavorazioni h3 { text-align: left; border-bottom: 1px solid #ccc; padding-bottom: 5px; font-size: 14px; }
#lavorazioni h3 span { color: #ff0000; }
#lavorazioni h4 { text-align: left; padding: 0 0 10px 0; font-size: 14px !important; }
#lavorazioni table.lavorazioni { margin-bottom: 10px; width: auto; padding: 0 5px; }
#lavorazioni table.lavorazioni:hover { cursor: pointer; background: url(immagini/trash.png) transparent no-repeat center center; z-index: 100; }
#lavorazioni table.lavorazioni td { border-top: none; text-align: center; font-size: 14px; padding: 2px 5px; }
#lavorazioni table.lavorazioni tr:hover { background: transparent; }
#lavorazioni table.noo { border-left: none; }
#lavorazioni table.non { border-top: none; }
#lavorazioni table.noe { border-right: none; }
#lavorazioni table.nos { border-bottom: none; }
#lavorazioni table.sie { border-right: 1px solid #ccc !important; }
#lavorazioni table.ddt { background: url(immagini/ddt.png) transparent no-repeat top right; background-size: 10px 10px; }


/***** REPORT *****/
.report th.v1  { text-align: left; width: 25%; padding: 3px 0 3px 5px; }
.report th.v2  { text-align: left; width: 60%; padding: 3px 0 3px 5px; }
.report th.tool  { text-align: center; width: 15%; padding: 5px 0 5px 5px; }

.report td.v1 { text-align: left; width: 25%; padding: 3px 0 3px 5px; }
.report td.v2 { text-align: left; width: 60%; padding: 3px 0 3px 5px; }
.report td.tool { text-align: center; width: 15%; padding: 5px 0 5px 5px; }
.report td.tool button { padding: 3px 10px; }

.report tr.rigareport:hover { cursor: pointer; }

#risultati { width: 98%; margin: 20px auto 50px auto; text-align: left; padding: 0; }
#risultati .nomecliente { display: block; padding: 5px 3px; margin-bottom: 10px; background: #dfddc0; }
#risultati .nomelinea { display: block; padding: 5px 3px; margin-bottom: 10px; background: #cadded; }
#risultati .nomemodello { display: inline-block; border: 1px solid #ccc; padding: 3px 10px; margin-bottom: 10px; }
#risultati .datolivello { width: 65px; display: inline-block; padding: 3px 10px; margin-right: 5px; margin-bottom: 0; font-size: 12px; font-weight: bold; }
#risultati .dato { display: inline-block; padding: 3px 5px; margin-right: 5px; margin-top: 5px; margin-bottom: 5px; font-size: 12px; border-right: 1px solid #ccc; }
#risultati .dato button { padding: 3px 5px; }
#risultati .quadro_modello { border: 1px solid #ccc; padding: 5px; margin-bottom: 5px; position: relative; }
#risultati .prezzo_modello { display: none; width: 270px; line-height: 70px; height: 70px; background: rgba(255,255,255,0.9); border: 1px solid #000; position: absolute; top: 50%; left: 50%; z-index: 100; }
#risultati .prezzo_modello input { padding: 3px 5px; margin-right: 10px; width: 110px; text-align: right; top: 25px; left: 20px;  position: absolute;}
#risultati .prezzo_modello button { padding: 3px 5px; width: 90px; top: 25px; left: 140px;  position: absolute; }
#risultati .prezzo_modello .close { width: 20px; height: 20px; top: -45px; right: -25px;  position: absolute; padding: 0; font-family: Arial;}
#risultati .prezzo_modello .close a { text-decoration: none; color: #000; }

#risultati table.lavorazioni { margin-bottom: 10px; width: auto; padding: 0 5px; }
#risultati table.lavorazioni td { border-top: none; text-align: center; font-size: 14px; padding: 2px 5px; }
#risultati table.lavorazioni tr:hover { background: transparent; }
#risultati table.noo { border-left: none; }
#risultati table.non { border-top: none; }
#risultati table.noe { border-right: none; }
#risultati table.nos { border-bottom: none; }
#risultati table.sie { border-right: 1px solid #ccc !important; }

#risultati .quadro_modello .risultato { position: absolute; top: 5px; right: 5px; width: 150px; line-height: 25px; color: #000; font-size: 14px; text-align: right; font-size: 11px; }
#risultati .quadro_modello .bottone_ok { position: absolute; padding: 3px 5px; bottom: 5px; right: 5px; width: auto; color: #000; font-size: 14px; text-align: center; font-size: 12px; }

.spinner { margin: 0 auto; width: 24px; height: 24px; display: grid; border-radius: 50%; -webkit-mask: radial-gradient(farthest-side,#0000 40%,#bfbfc1 41%); background: linear-gradient(0deg ,rgba(191,191,193,0.5) 50%,rgba(191,191,193,1) 0) center/1.9px 100%, linear-gradient(90deg,rgba(191,191,193,0.25) 50%,rgba(191,191,193,0.75) 0) center/100% 1.9px; background-repeat: no-repeat; animation: spinner-d3o0rx 1s infinite steps(12); }
.spinner::before, .spinner::after { content: ""; grid-area: 1/1; border-radius: 50%; background: inherit; opacity: 0.915; transform: rotate(30deg); }
.spinner::after { opacity: 0.83; transform: rotate(60deg); }
@keyframes spinner-d3o0rx { 100% { transform: rotate(1turn); }}

/***** FILTRO *****/
#filtro { width: 98%; border: 1px solid #ccc; margin: 10px auto 0 auto; padding: 5px 10px; line-height: 25px; }
#filtro .campo { width: auto; float: left; margin-right: 10px; }
#filtro .campo select { margin-top: 2px; }
#filtro button { padding: 3px 10px; margin-top: 2px; }

/***** CALENDARIO *****/
.calendario { width: 95% !important; margin: 20px auto 50px auto; border: 1px solid #ccc !important; table-layout:fixed; }
.calendario tr td { border: 1px solid #ddd !important; }
.calendario tr:hover { background: none !important; }
.calendario .gg_dis { background: #ddf4fa !important; cursor: default; height: 150px !important; }
.calendario .gg_dis:hover { background: #ddf4fa !important; cursor: default; }
.calendario .intestazione { height: 40px; background: #ececec; }
.calendario .intestazione:hover { height: 40px; background: #ececec !important; cursor: default !important; }
.calendario .intestazione .indietro { text-align: center; border-right: none !important; }
.calendario .intestazione .indietro a { font-weight: bold; text-decoration: none; color: #000 !important; }
.calendario .intestazione .mesescelto { border-right: none !important; border-left: none !important; font-weight: bold; text-align: center; }
.calendario .intestazione .mesescelto a { font-weight: bold; text-decoration: none; color: #000 !important; }
.calendario .intestazione .avanti { text-align: center; border-left: none !important; }
.calendario .intestazione .avanti a { font-weight: bold; text-decoration: none; color: #000 !important; }
.calendario .giorni { height: 40px; }
.calendario .giorni td { text-align: center !important; font-weight: bold; }
.calendario .giorni td:hover { background: #fff !important; cursor: default !important; }
.calendario .giorni:hover { background: #fff !important; cursor: pointer; }
.calendario .oggi { background: #cdf9cf !important; height: 150px !important; text-align: left; vertical-align: 0; }
.calendario .oggi:hover { background: #cdf9cf !important; }
.calendario .giorno { height: 150px !important; text-align: left; vertical-align: 0; }
.calendario .giorno div { margin: 3px 5px; padding: 2px 3px; border-radius: 5px; display: inline-block; font-size: 13px; }
.calendario .giorno div:hover { cursor: pointer; }
.calendario .oggi div { margin: 3px 5px; padding: 2px 3px; border-radius: 5px; display: inline-block; font-size: 13px; }
.calendario .oggi div:hover { cursor: pointer; }
.calendario .festivo { background: #f4f4f4; }
.calendario .festivo:hover { cursor: default; }

input.dataDa:focus { outline: none; }
input.dataA:focus { outline: none; }

.giornata { width: 95%; margin: 0 auto 5px auto; padding: 5px; border: 1px solid #ececec; text-align: left !important; font-weight: normal !important; position: relative; min-height: 50px; }
.giornata:hover { background: #ececec; }
.giornata h5 { font-weight: normal !important; border-bottom: 1px solid #ececec; display: inline; }
.giornata h5 a { cursor: pointer; }
.festivo { background: #f4f4f4; max-height: 10px !important; min-height: 20px !important; }
.giornata div { margin: 5px 8px 0 0; padding: 5px; border-radius: 5px; font-size: 13px; max-width: 50%; display: inline-block; } 
.giornata div:hover { cursor: pointer; }

a.butt_att { border: 1px solid #ccc; padding: 10px 10px; font-size: 14px; text-align:center; font-family: Courier; color: #000; font-weight: bold; float: right; text-decoration: none; }
a.p_c { display: inline-block; border: 1px solid #ccc; margin: 3px 5px 3px 0 !important; padding: 3px 5px; }
a.p_c:hover { cursor: pointer; background: #fe5c0b; color: #fff; }


input.input_neutro { width: 100%; border: none !important; font-family:  Courier; font-size: 16px !important; padding: 10px 0 !important; text-align: center; font-weight: normal; }


