﻿/* #region INFO */
/*
    Autore:     Roberto Roncato @ Softimax
    Info:       è la nuova versione di base dei backend
    Requisiti:  - cartella {root}/graphics/Themes/softimax.18.x/ (che contiene vari fonts e gli sfondi)
                - includere "/graphics/normalize.8.0.min.css"
                - includere "/graphics/fonts/font-awesome.4.7/font-awesome.min.css"
                - includere "/graphics/fonts/encode-sans/encode-sans.min.css"

ROADMAP
- Pagina.Dettaglio: pulsanti Aggiorna/Elimina/Annulla sempre visibili
- Pagina.Elenco: spostare pulsanti a SX
- DDL: gestire tutte con Select2
- Calendar: fonts/size personalizzato

VERSIONI
---v29.9--- 26/09/2025
- Introdotta grafica per gestire il menu di selezione delle lingue
- Migliorie varie sul menu laterale sui vari browser, allargato da 220px a 220px, con possibilità di override su temi derivati
- Risolto bug sul pulsante che collassa il menu in modalità layout_detail
- Aggiornata grafica per i mini-pulsanti
- Nelle intestazioni delle tabelle, le celle con titoli semplici sono renderizzati come i titoli cliccabili per ordinamento
---v18.6--- 20/01/2022
- Gestione utenti: pannello utente corrente con bottoni sempre visibili (prima si attivavano sull'hover)
- Gestione del campo password con i requisiti di complessità
- Introdotto il layout=login per gestire l'autenticazione in iframe
- Il menu principale può essere nascosto
---v18.5--- 01/09/2020
- Titolo e versione accorpati, bandierine, pannelloIntestazione
- Guida/Manuali
---v18.4--- 11/03/2020
- Menù laterale fisso
- Intestazione tabelle e paginatore: fisso
---v18.3--- 04/06/2020
- Aggiornato logo Softimax
- Introdotta la classe NOCHILDUX
---v18.2---
- INPUT x Date/Orario: icone per calendario e orario
- Menù: chiudi/apri/inverti tutti
- Menù: sistemare nuova grafica
- User: modificabilità icona -> FileUpload con nuovo stile
- User: icona
- User: modificabilità icona e tema
- User: quando non connesso recuperare tema grafico da cookie
- User: login in centro pagina
---v18.1---
- GENERALE: compattare in un solo file tutti i file css sparsi
- GENERALE: nuovi colori
- GENERALE: correggere incongruenze residue (ddla, colfilter, ecc)
                
*/
/* #endregion INFO */

/* #region Tabella colori */
/*  Tavola colori:

Blu
    #28314a -> "nero" di sfondo, in realta blu
    #99ccff -> "lavanda" -> elementi attivi        
    #0080ff -> "Blu pieno" -> giorno corrente nel calendario
        
Verdi                    
    #44dd11 -> "verde" -> elementi attivi con hover
    #cffbc1 -> "verde chiarissimo" - riga corrente in tabella / riga:hover      
    
Grigi
    #000000 -> "nero" -> testo dei campi di input
    #444444 -> "quasi nero" -> label dei campi di input, ombra finestra main
    #777777 -> "testo grigio disabilitato"
    #aaaaaa -> "bordo grigio disabilitato" 
    #cccccc -> "grigio scuro - intestazione colonne"
    #dddddd -> "grigio medio - righe pari", Sfondo grigio disabilitato
    #eeeeee -> "grigio chiaro - righe dispari"
    #ffffff -> "bianco" di sfondo
    
Trasparenze
    rgba(0,0,0,0.1); -> Area scurita: frame
    rgba(255,255,255,0.9) -> "quasi bianco" -> sfondo finestre

Booleani Rosso e Verde
    #00b700;  "verde vero" -> per i check true/false
    #e20000;  "rosso falso" -> per i check true/false e per i giorni correnti del calendario

*/
/* #endregion Tabella colori */

/* #region v18.6 */

/* #region Generic elements */

HTML,
BODY {
    height: 100%;
    min-height: 100%;
    margin: 0;
    padding: 0;
}

BODY {
    background: #ffffff url('background.jpg') center/cover no-repeat fixed;
    background: radial-gradient(at 30% 30%, #eeeeee 0%, #444444 100%) fixed;
    color: #28314a;
    font-family: encode-sans, sans-serif;
}

A {
    text-decoration: none;
    display: inline-block;
    color: #28314a;
    margin-bottom: 2px;
    border-bottom: 2px solid #99ccff;
}

A:hover, A:active, A:focus {
    color: #000000;
    border-bottom-color: #44dd11;
    outline: 0;
}

.layout_header A,
.layout_menu A {
    color: #99ccff;
    border-bottom-width: 0;
}

.layout_header A:hover, .layout_header A:active, .layout_header A:focus,
.layout_menu A:hover, .layout_menu A:active, .layout_menu A:focus {
    color: #44dd11;
}

/* #endregion Generic elements */

/* #region Generic classes */

.text {
    color: #000000;
    font-weight: normal;
}

.textbold {
    color: #000000;
    font-weight: bold;
}

.invisible {
    display: none;
}

.icon {
    float: left;
    border: 0;
}

.ValueContainer {
    float: left; /* è necessario per ottenere esattamente 10px di margine dx*/
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 10px;
    vertical-align: top;
}

.menu .ValueContainer {
    float: none;
}

.ValueContainer.LabelOnPreviousField {
    margin-top: -10px;
}

.ValueContainer > SPAN.text {
    color: #444444;
}

.ValueContainer IMG {
    max-width: 100%;
}

.ValueSeparator {
    clear: both;
    height: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.three_state_no {
    background-color: #e20000;
}

.three_state_not_set {
    background-color: #ffffff;
}

.three_state_yes {
    background-color: #00b700;
}

/* per gestione colonne di testi/sfondi come child semplificati */
.NOCHILDUX .UCSubDetailTopMargin,
.NOCHILDUX TR,
.NOCHILDUX TD.UCCommandCell,
.NOCHILDUX TD.UCCommandCellSimple,
.NOCHILDUX > .ValueSeparator + .ValueContainer > span > br {
    display: none;
}

.NOCHILDUX .cke_textarea_inline TR {
    display: table-row;
}

.NOCHILDUX .cke_textarea_inline TR {
    display: table-row;
}

.NOCHILDUX TR.UCDetail {
    display: table-row;
    position: relative;
}

.NOCHILDUX {
    counter-reset: section;
}

.NOCHILDUX TR.UCDetail:before {
    counter-increment: section;
    content: counter(section) ": ";
}

/* #endregion Generic classes */


/* #region Layout */

.layout_page {
    margin: 0 auto;
    text-align: left;
}

/* #region layout_header */

.layout_header {
    font-weight: bold;
    text-align: left;
    width: 100%;
    /* position: relative;  /* -18.4 */
    position: fixed; /* +18.4 */
    z-index: 9999; /* +18.4 */
    background-color: #28314a;
    background-color: #000000;
    color: #99ccff;
    /* height:auto;         /* -18.4 */
    height: 60px; /* +18.4 = logo+margin */
    line-height: normal;
}

.layout_header > * {
    display: inline-block;
    vertical-align: middle;
    line-height: 50px;
}

.layout_header .layout_title_version { /* +18.5 */
    display: inline-block; /* +18.5 */
    overflow-y: hidden; /* +18.5 */
    height: 60px; /* +18.5 = logo+margin */
    margin-left: 1em; /* +18.5 */
}

.layout_header .layout_title_version .layout_title { /* +18.5 */
    display: block; /* +18.5 */
    font-size: 30px; /* +18.5 */
    line-height: 40px; /* +18.5 */
    height: 40px; /* +18.5 */
}

.layout_header .layout_title_version .layout_version { /* +18.5 */
    display: block; /* +18.5 */
    font-size: 10px; /* +18.5 */
    line-height: 15px; /* +18.5 */
    height: 15px; /* +18.5 */
}

.layout_header HR {
    display: none;
}

.layout_header .layout_logo {
    /* padding: 2px;        /* -18.4 */
    padding: 0; /* +18.4 */
    margin-left: 0; /* +18.5 */
}

.layout_header .layout_logo IMG {
    /*height:50px;          /* -18.4 */
    /*margin-top:5px;       /* -18.4 */
    /*margin-bottom:5px;    /* -18.4 */
    height: 60px; /* +18.4 */
    margin-top: 0; /* +18.4 */
    margin-bottom: 0; /* +18.4 */
}

.layout_header .softimax-logo {
    background-image: radial-gradient(ellipse at top right, #006cff, #003e93, rgba(0,62,147,0) 65%);
    background-repeat: no-repeat;
    background-position: right top;
    position: absolute;
    right: 0;
    top: 0;
    width: 240px;
    height: 100%;
    margin-bottom: 0; /* +18.5 */
    text-align: right;
    z-index: 0;
}

.dev-server .layout_header .softimax-logo {
    background-image: radial-gradient(ellipse at top right, #ffc6c6, #ff0000, rgba(255,0,0,0) 65%); /*rosso*/
    width: 100%;
    z-index: -1;
}

.test-server .layout_header .softimax-logo {
    background-image: radial-gradient(ellipse at top right, #ffdeb8, #ff8800, rgba(255,136,0,0) 65%); /*arancione*/
    width: 100%;
    z-index: -1;
}

.qa-server .layout_header .softimax-logo {
    background-image: radial-gradient(ellipse at top right, #ffff00, #948000, rgb(255,219,0,0) 65%); /*giallo*/
    width: 100%;
    z-index: -1;
}

.layout_header .softimax-logo SPAN {
    background-image: url('logo-softimax.png');
    background-position: right top;
    background-repeat: no-repeat;
    display: inline-block;
    padding-left: 150px;
    padding-top: 30px;
    width: 0;
    height: 0;
    overflow: hidden;
    margin-top: 4px;
    margin-right: 8px;
}

.dev-server .layout_header .softimax-logo:before,
.test-server .layout_header .softimax-logo:before,
.qa-server .layout_header .softimax-logo:before {
    content: 'DEV';
    position: absolute;
    right: 5px;
    bottom: 5px;
    line-height: 1em;
    text-align: right;
    color: #ff0000;
}

.test-server .layout_header .softimax-logo:before {
    content: 'TEST';
    color: #ff8800;
}

.qa-server .layout_header .softimax-logo:before {
    content: 'QA';
    color: #ffdd00;
}

.layout_header H1 {
    margin: 0;
    line-height: 32px;
    display: inline;
}

.layout_header IMG {
    border: 0;
}

/*.layout_flags					/* -18.5 */
.layout_header .layout_flags /* +18.5 */ {
    /*text-align: right;
    margin-right: 20px; 
    height: 10px;           
    /*position: absolute;
    right: 0px;*/
    /*float:right;
    line-height:40px;*/
    /*vertical-align:top;*/ /* -18.5 */
    height: 50px; /* +18.5 */
    padding-top: 10px; /* +18.5 */
    margin-left: 1em; /* +18.5 */
    text-align: center; /* +18.5 */
}

.layout_header .layout_flags a { /* +18.5 */
    height: 25px; /* +18.5 */
    max-height: 0; /* +18.5 */
    margin: 0; /* +18.5 */
    padding: 0; /* +18.5 */
    overflow: hidden; /* +18.5 */
    display: block; /* +18.5 */
    transition: max-height 0.25s 0s ease; /* +18.5 */
}

html:not([lang]) .layout_header .layout_flags a { /* +18.5 */
    /* se manca attributo lang, mostro tutto */
    display: inline-block; /* +18.5 */
}

html:not([lang]) .layout_header .layout_flags a, /* +18.5 */
html[lang=MASTER_CODE] .layout_header .layout_flags .IT, /* +18.5 */
html[lang=IT] .layout_header .layout_flags .IT, /* +18.5 */
html[lang=EN] .layout_header .layout_flags .EN, /* +18.5 */
html[lang=FR] .layout_header .layout_flags .FR, /* +18.5 */
html[lang=DE] .layout_header .layout_flags .DE, /* +18.5 */
html[lang=RU] .layout_header .layout_flags .RU, /* +18.5 */
html[lang=US] .layout_header .layout_flags .US, /* +18.5 */
html[lang=ES] .layout_header .layout_flags .ES, /* +18.5 */
html[lang=BE] .layout_header .layout_flags .BE, /* +18.5 */
.layout_header .layout_flags:hover a { /* +18.5 */
    max-height: 40px; /* +18.5 */
    padding-bottom: 5px; /* +18.5 */
}

.layout_header .layout_flags a img { /* +18.5 */
    height: 100%; /* +18.5 */
    border: 0;
}

.layout_header .pannello-intestazione { /* +18.6 */
    display: none; /* +18.6 */
}

body.user-connected .layout_header .pannello-intestazione { /* +18.6*/
    display: table; /* +18.6*/
}

.layout_header .pannello-intestazione {
    color: #aaaaaa; /* +18.5 */
    font-weight: normal; /* +18.5 */
    font-stretch: 75%; /* +18.5 */
    line-height: 12px; /* +18.5 */
    font-size: 12px; /* +18.5 */
    position: absolute; /* +18.5 */
    left: 390px; /* +18.5 */
    right: 150px; /* +18.5 */
    top: 0; /* +18.5 */
    height: 60px; /* +18.5 */
    overflow-y: hidden; /* +18.5 */
    /* display: table;					/* +18.5 -18.6*/
}

.layout_header .pannello-intestazione > DIV { /* +18.5 */
    display: table-cell; /* +18.5 */
    vertical-align: middle; /* +18.5 */
}

.layout_header .pannello-intestazione .status { /* +18.5 */
    display: inline-block; /* +18.5 */
    margin-left: 1em; /* +18.5 */
    font-weight: normal; /* +18.5 */
}

.layout_header .pannello-intestazione .status B { /* +18.5 */
    margin-left: 0.5em; /* +18.5 */
}

.layout_header .pannello-intestazione .status.normal B, /* +18.5 */
.layout_header .pannello-intestazione .status.normal A { /* +18.5 */
    color: Green; /* +18.5 */
}

.layout_header .pannello-intestazione .status.warning B, /* +18.5 */
.layout_header .pannello-intestazione .status.warning B A { /* +18.5 */
    color: Orange; /* +18.5 */
}

.layout_header .pannello-intestazione .status.error B, /* +18.5 */
.layout_header .pannello-intestazione .status.error B A { /* +18.5 */
    color: Red; /* +18.5 */
}

.layout_header .pannello-intestazione .status B A { /* +18.5 */
    text-decoration: underline; /* +18.5 */
}

.layout_header .pannello-intestazione .quick-links { /* +18.5 */
    position: fixed; /* +18.5 */
    bottom: 0; /* +18.5 */
    right: 0; /* +18.5 */
    font-size: 24px; /* +18.5 */
    text-align: center; /* +18.5 */
    padding: 4px; /* +18.5 */
}

.layout_header .pannello-intestazione .quick-links a { /* +18.5 */
    margin: 4px 2px; /* +18.5 */
    padding: 5px; /* +18.5 */
    border-radius: 4px; /* +18.5 */
    background: black; /* +18.5 */
    height: 24px; /* +18.5 */
    width: 24px; /* +18.5 */
}

/* #endregion layout_header */

.layout_body {
    position: relative;
    height: auto !important;
    height: 500px;
    padding-top: 60px; /* +18.4 = logo+margin*/
}

.layout_menu {
    text-align: left;
    /*position:absolute;    /* -18.4*/
    position: fixed; /* +18.4 */
    left: 0;
    top: 0;
    bottom: 0; /* +18.4 */
    margin-top: 60px; /* +18.4 = logo+margin */
    z-index: 9998; /* +18.4 */
    background-color: #28314a;
}

.user-connected .layout_menu, /* +18.4 */
.user-password-pending-by-user .layout_menu, /* +18.4 */
.user-password-pending .layout_menu, /* +18.4 */
.user-editing-properties .layout_menu { /* +18.4 */
    padding-bottom: 2em; /* +18.4 */
}

.user-not-connected .layout_menu {
    top: 200px;
    width: var(--menu-width); /* *25.9 era 220px */
    margin: 0 auto;
    position: relative;
    display: block;
}

.layout_lite .layout_menu,
.layout_lite_detail .layout_menu,
body.user-connected.layout_lite .menu_mode, /* +25.9 */
body.user-connected.layout_lite_detail .menu_mode { /* +25.9 */
    display: none;
}

/* +18.6 >> */
.menu_mode {
    display: none;
}

body.user-connected .menu_mode {
    display: block;
    position: fixed;
    left: var(--menu-width); /* *25.9 era 220px */
    top: 60px; /* *25.9, era 75px */
    background: #28314a;
    color: #99ccff;
    z-index: 9999;
    font-size: 1.5em;
    width: 0.75em;
    padding: 0.25em;
    text-align: left;
    border-radius: 0 0.5em 0.5em 0;
    cursor: pointer;
    transition: left 0.25s ease 0s;
}

body.user-connected .menu_mode:hover,
body.user-connected.menu_mode_hover .menu_mode {
    color: #44dd11;
}

body.menu_closed .menu_mode {
    left: 0;
}

body .menu_mode i {
    transition: transform 0.5s ease 0.25s;
}

body.menu_closed .menu_mode i {
    transform: rotate(180deg);
}

body .layout_menu {
    transition: left 0.25s ease 0s;
}

body.user-connected.menu_closed .layout_menu {
    left: calc(var(--menu-width) * -1); /* *25.9, era -240px; */
}

body.user-connected.menu_closed.menu_mode_hover .layout_menu,
body.user-connected .layout_menu:hover {
    left: 0px;
}

body .layout_content {
    transition: margin-left 0.25s ease 0s;
}

body.user-connected.menu_closed .layout_content {
    margin-left: 0; /* *25.9 era 30px */
}

.layout_page:before,
.layout_body:before {
    transition: width 0.25s ease 0s;
}

body.user-connected.menu_closed .layout_page:before,
body.user-connected.menu_closed .layout_body:before {
    width: 0px;
}
/* +18.6 << */

.layout_content {
    margin-left: var(--menu-width); /* *25.9 era 250px */
    margin-right: 30px;
    padding-left: 30px; /* +25.9 */
    padding-top: 40px; /* *25.9, era 30px */
    height: auto !important;
    height: 400px;
    position: relative;
}

.layout_lite .layout_content,
.layout_lite_detail .layout_content {
    margin-left: 0; /* *25.9 era 30px */
}

.user-not-connected .layout_content {
    display: none;
}

/* +v18.6 >> */
body.layout_login {
    background: #ffffff !important;
}

body.layout_login .layout_header,
body.layout_login .layout_content,
body.layout_login .layout_page:before,
body.layout_login .layout_body:before,
body.layout_login .layout_menu > div,
body.layout_login .layout_menu .user_menu .buttons > a {
    display: none !important;
}

body.layout_login .layout_body {
    padding: 0 !important;
}

body.layout_login .layout_menu {
    top: 0 !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    background: #ffffff !important;
}

body.layout_login .layout_menu .user_menu {
    box-shadow: none !important;
}

body.layout_login .layout_menu .user_menu A {
    color: #000000 !important;
}

body.layout_login .layout_menu .user_menu .buttons > a.btnLogin {
    display: inline-block !important;
}
/* +v18.6 << */

.layout_content > TABLE {
    box-shadow: 5px 5px 50px 0px #444444;
}

.layout_header + br {
    display: none;
}

/* #endregion Layout */

/* #region Window */

.win_nw, .win_ne,
.win_w, .win_e,
.win_sw, .win_s, .win_se {
    display: none;
}

.win_n {
    height: 26px;
    background-color: #28314a;
    background-image: none;
    color: black;
    font-weight: bold;
    vertical-align: baseline;
}

.win_c {
    background-image: none;
    background-color: rgba(255,255,255,0.9);
    font-weight: normal;
}

.win_n .win_title {
    color: #ffffff;
    font-weight: bold;
    position: relative;
    top: 4px;
    padding-left: 4px;
}

.win_icon_security {
    float: right;
}

.win_icon,
.win_icon_security {
    BORDER-RIGHT: 0px;
    BORDER-TOP: 0px;
    BORDER-LEFT: 0px;
    BORDER-BOTTOM: 0px;
    VERTICAL-ALIGN: middle;
    margin-top: 4px;
    margin-left: 4px;
    padding: 0;
}

.win_icon_security.sbtn > SPAN.sbtn {
    background-image: none;
}

.win_icon_security.sbtn {
    background-image: none !important;
    padding: 0 !important;
}

.win_icon_security.sbtn > SPAN {
    background-image: none;
}

.win_icon.fa {
    color: #99ccff;
    padding-left: 5px;
    padding-right: 5px;
}

/* #endregion Window */

/* #region Menu */

.layout_page:before,
.layout_body:before {
    content: '';
    position: absolute;
    left: 0;
    width: var(--menu-width); /* *25.9 era 220px */
    height: 100%;
    top: 0;
    background: #28314a;
}

.layout_lite .layout_page:before,
.layout_lite .layout_body:before,
.layout_lite_detail .layout_page:before,
.layout_lite_detail .layout_body:before,
.user-not-connected .layout_page:before,
.user-not-connected .layout_body:before {
    display: none;
}

.layout_menu TABLE {
    width: var(--menu-width); /* *25.9 era 220px */
    margin-bottom: 0 !important;
}

.user-not-connected .layout_menu TABLE {
    /* width:150px;   -25.9 */
}

/* Menu utente*/
.user-not-connected .layout_menu .user_menu {
    box-shadow: 5px 5px 50px 0px #444444;
}

.layout_menu .user_menu {
    color: #28314a;
    text-align: center;
}

.layout_menu .user_menu A {
    color: #99ccff;
    margin: 5px;
    /* display: block;  /* -18.6 */
}

.layout_menu .user_menu .menu {
    padding: 10px 10px 0;
    text-align: center;
}

.user-not-connected .layout_menu .user_menu .menu {
    text-align: left;
}

.layout_menu .user_menu .avatar {
    display: block;
    width: 100px;
    height: 100px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    text-align: center;
    margin: 0 auto 10px;
    border-radius: 50%;
}

.layout_menu .user_menu .avatar:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\f2c0"; /* fa-user-o */
    font-size: 100px;
    color: #aaaaaa;
}

.layout_menu .user_menu .avatar.photo:before {
    display: none;
}

.layout_menu .user_menu .panel {
    padding-top: 1em;
    margin-top: 1em;
    padding-bottom: 1em;
    margin-bottom: 1em;
    background-color: rgba(255,255,255,0.1);
}

.layout_menu .user_menu .panel .text {
    color: #ffffff;
}

/* +18.6 >> */
.password-check-info {
    margin-top: 4px;
    margin-bottom: 4px;
}

.password-check-info,
.password-check-info.text {
    font-size: 0.75em !important;
}

.password-check-info .password-check-field {
    opacity: 0.7;
    display: inline-block;
}

.password-check-info .password-check-field:before {
    content: ', ';
}

.password-check-info .password-check-field.eight-char:before {
    content: '';
}

.password-check-info .password-check-field.password-check-ok {
    color: #00b700; /* verde vero */
    opacity: 1;
}

body.simple-pwd .password-check-info .password-check-field {
    display: none;
}

body.simple-pwd .password-check-info .password-check-field.eight-char {
    display: inline-block;
}
/* +18.6 << */

.layout_menu .user_menu .panel .filename {
    display: block;
}

.layout_menu .user_menu .ValueContainer.buttons {
    text-align: center;
    display: block;
    margin-right: 0;
    margin-bottom: 0;
}

.user-not-connected .layout_menu .user_menu .ValueContainer.buttons {
    text-align: center;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
}

.user-connected .layout_menu .user_menu .ValueContainer.buttons {
    /* max-height:0;                    /* -18.6 */
    /* overflow:hidden;                 /* -18.6 */
    /* transition: all 0.25s ease 0.5s; /* -18.6 */
    margin-top: 0; /* +18.6 */
    margin-bottom: 1em; /* +18.6 */
}

.user-connected .layout_menu .user_menu:hover .ValueContainer.buttons {
    /* margin-top: 1em;                 /* -18.6 */
    /* margin-bottom: 1em;              /* -18.6 */
    /* max-height:110px;                /* -18.6 */
}

.layout_menu .user_menu .ValueContainer.buttons A {
    color: #28314a;
}

.user-not-connected .layout_menu .user_menu .ValueContainer.buttons A {
    margin: 0;
}

/* Gestione delle scrollbar colorate nella paletta dei menu */
:root { /* +18.4 */
    --scrollbarBackColor: rgba(255,255,255,0.0); /* +18.4 */
    /* --scrollbarSliderColor: rgba(153, 204, 255,0.5); /* +18.4 */
    --scrollbarSliderColor: transparent; /* +18.4 */
    --scrollbarSliderColor-hover: rgb(153, 204, 255); /* = #99ccff;*/ /* +18.4 */
    --menu-scrollbar-size: 10px; /* +25.9 */
    --menu-width: 230px;
}

.layout_menu { /* +18.4 */
    overflow-y: auto; /* +18.4 */
    scrollbar-width: thin; /* *25.9 */
    scrollbar-color: var(--scrollbarSliderColor) var(--scrollbarBackColor); /* +18.4 */
    scrollbar-gutter: stable; /* +25.9  Evita “salti” quando la barra appare/scompare */
}

.user-not-connected .layout_menu {
    overflow: visible;
}

.layout_menu::-webkit-scrollbar { /* +18.4 */
    width: var(--menu-scrollbar-size); /* *25.9 */
}

.layout_menu::-webkit-scrollbar-track { /* +18.4 */
    background: var(--scrollbarBackColor); /* +18.4 */
}

.layout_menu::-webkit-scrollbar-thumb { /* +18.4 */
    background-color: var(--scrollbarSliderColor); /* +18.4 */
    border-radius: var(--menu-scrollbar-size); /* +25.9 */
}

.layout_menu:hover { /* +18.4 */
    scrollbar-color: var(--scrollbarSliderColor-hover) var(--scrollbarBackColor); /* +18.4 */
}

.layout_menu::-webkit-scrollbar-thumb:hover, /* +18.4 */
.layout_menu:hover::-webkit-scrollbar-thumb { /* +18.4 */
    background-color: var(--scrollbarSliderColor-hover); /* +18.4 */
}

@-moz-document url-prefix() /* +18.4 */ {
    /* hack per gestire scrollbar "strane" su Firefox */
    .layout_menu { /* +18.4 */
        overflow-x: hidden; /* +18.4 */
        padding-right: 10px; /* +18.4 */
    }
}


/* Gruppi di menu */
.layout_menu .dropdown_img {
    display: none;
}

.layout_menu .user_menu + br {
    display: none;
}


/* Small windows */
.swin_n {
    font-variant: small-caps;
    color: #99ccff;
    border-top: 1px solid rgba(255,255,255,0.1);
    border-left: 0;
    border-right: 0;
    padding-left: 10px;
    position: relative;
    padding-right: 10px;
    padding-top: 10px;
}

.swin_n:hover {
    color: #44dd11;
}

.swin_n .swin_title {
    font-weight: bold;
    line-height: 20px;
}

.swin_c {
    background-image: none;
    padding-bottom: 10px;
}

.swin_nw, .swin_ne,
.swin_w, .swin_e,
.swin_sw, .swin_s, .swin_se {
    background-image: none;
    display: none;
}

.user_menu .swin_n,
.user-not-connected .swin_n {
    display: none;
}

.user-not-connected .swin_w {
    display: table-cell;
    background: #ffffff;
    padding-left: 20px;
    color: #aaaaaa;
    vertical-align: top;
    padding-right: 20px;
    padding-top: 20px;
}

.user-not-connected .swin_w:before {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 80px;
    content: "\f2c0";
}

.user-not-connected .swin_c {
    background-color: #ffffff;
}


/* Links */
.layout_menu A.menu {
    width: auto;
    color: #99ccff;
    display: block;
    border-left: 0;
    border-right: 0;
    padding-bottom: 1px;
    padding-right: 1px;
    padding-left: 5px;
    padding-top: 1px;
    text-decoration: none;
    line-height: 24px;
    /*border-top: 1px solid rgba(255,255,255,0.1);*/
}

.layout_menu A.menu:hover, .layout_menu A.menu:active, .layout_menu A.menu:focus {
    /*background-color:rgba(255,255,255,0.1);*/
    background-color: rgba(0,0,0,0.25);
    /*color:#ffffff;*/
    color: #44dd11;
    /*
    border-color:#28314a;
    background:#28314a;
    color:#99ccff;    
    */
}

.layout_menu .mnu_Separator A.menu {
    display: block;
    color: #aaaaaa;
    background: transparent;
    text-transform: uppercase;
    padding: 0 0 2px 0;
    margin: 15px 18px 0 18px;
    line-height: 9px;
    height: 9px;
    cursor: default;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.layout_menu .mnu_Separator A.menu img {
    display: none;
}

.layout_menu A.menu > i {
    display: none;
}

.layout_menu A.menu > i.fa {
    display: inline-block;
    font-size: 16px;
    width: 16px;
    height: 16px;
    line-height: 16px;
    margin-right: 8px;
    color: #99ccff
}

.layout_menu A.menu > i.fa:before {
    text-align: center;
    display: inline-block;
    width: 16px;
}

.layout_menu A.menu > i.fa + IMG.menu {
    display: none;
}


/* voci collassabili */
/*
    collapse-all
        collapse-open-all
        collapse-close-all

    collapse-group (+collapse-closed)
        ..
        collapse-header
        ..
        collapse-voice
            ..
            collapse-voice
*/

.collapse-all {
    display: block;
    padding-top: 1em;
    padding-bottom: 1em;
    text-align: center;
}

.collapse-header,
.collapse-close-all,
.collapse-open-all {
    cursor: pointer;
    /* customizable */
    position: relative;
    display: block;
}

.collapse-close-all,
.collapse-open-all {
    display: inline-block;
    margin-right: 0.5em;
    margin-left: 0.5em;
    padding-right: 1.5em;
}

.collapse-header:before,
.collapse-close-all:before,
.collapse-open-all:before {
    content: '+';
    position: absolute;
    width: 1em;
    text-align: center;
    height: 1em;
    line-height: 1em;
    transition: all 0.25s ease 0s;
    border-radius: 1em;
    transform: rotate(45deg);
    /* customizable */
    right: 0;
    top: 0;
    border-width: 1px;
    border-style: solid;
    font-weight: bold;
}

.collapse-closed .collapse-header:before,
.collapse-open-all:before {
    border-radius: 0;
    transform: rotate(0);
}

.collapse-voice {
    max-height: 100px;
    transition: all 0.25s ease 0s;
}

.collapse-fast .collapse-voice {
    transition: none;
}

.collapse-closed .collapse-voice {
    max-height: 0;
    overflow: hidden;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    border-width: 0;
}

/* #endregion Menu */

/* #region Childs */

TR.UCDetail,
TR.UCDetailDeleted {
    background-color: #d3d3d3;
    margin-top: 4px;
    margin-bottom: 4px;
    margin-left: 0px;
    width: 100%;
}

TR.UCDetail {
    background-color: Transparent;
}

TR.UCDetailDeleted {
    background-color: #d3d3d3;
}

TD.UCCommandCell,
TD.UCCommandCellSimple {
    width: 36px;
    vertical-align: top;
    text-align: left;
    padding-right: 8px;
    padding-left: 5px;
    padding-top: 0px;
}

TD.UCContentCell {
    /*border-right: #9899c2 1px solid;*/
    border-top: #9899c2 1px solid;
    border-left: #9899c2 1px solid;
    /*border-bottom: #9899c2 1px solid;*/
    padding-right: 0px;
    padding-left: 8px;
    padding-bottom: 2px;
    padding-top: 2px;
    /*width:100%;*/
}

TR.UCDetail TD.UCContentCell {
    background-image: none;
    background-color: #eeeeee;
    border-color: #dddddd !important;
}

TR.UCDetailDeleted TD.UCContentCell {
    background-image: none;
    background-color: #d3d3d3;
}

TD.UCContentCell2 {
    /*border-right: #9899c2 1px solid;*/
    border-top: #000000 1px solid;
    border-left: #000000 1px solid;
    /*border-bottom: #9899c2 1px solid;*/
    padding-right: 0px;
    padding-left: 8px;
    padding-bottom: 2px;
    padding-top: 2px;
    /*width:100%;*/
}

TR.UCDetail TD.UCContentCell2 {
    background-color: #C0C0C0;
}

TR.UCDetailDeleted TD.UCContentCell2 {
    background-color: #d3d3d3;
}

TD.UCContentBottom {
    height: 8px;
}

TABLE.UCSubDetail TD.UCContentBottom {
    height: 0px;
}

TABLE.UCSubDetail {
    /*border-right: #9899c2 1px solid;
    border-top: #9899c2 1px solid;
    border-left: #9899c2 1px solid;
    border-bottom: #9899c2 1px solid;*/
    /*background-color: #FAFAD2;*/
    background-color: #C0C0C0;
}

TR.UCSubDetailTopMargin {
    height: 5px;
}

/* #endregion Childs */

/* #region Tabs */

.tabstrip {
    width: 100%;
    line-height: normal;
    border-bottom: 4px solid #28314a;
}

.tabstrip UL {
    margin: 0;
    padding: 10px;
    list-style: none;
}

.tabstrip LI {
    display: inline-block;
    margin: 0;
    padding: 0;
}

.tabstrip A {
    padding-top: 5px;
    padding-right: 15px;
    padding-bottom: 4px;
    padding-left: 6px;
    text-decoration: none;
    font-weight: bold;
}

.tabstrip,
.tabstrip .currentTab,
.tabstrip LI,
.tabstrip .currentTab A,
.tabstrip A {
    background-image: none;
    background-color: transparent;
}

.tabstrip A {
    display: inline-block;
    margin: 5px;
    font-weight: normal;
}

.tabstrip .currentTab {
    border-width: 0;
}

.tabstrip .currentTab A {
    padding-bottom: 5px;
    font-weight: bold;
}

.tabstrip_rev {
    line-height: normal;
    background-color: transparent;
    padding: 5px;
    border-top: 4px solid #28314a;
    width: auto;
}

.tabstrip_rev_separator {
    display: block;
    height: 7px;
}

/* #endregion Tabs */

/* #region Filtri */

.Filter {
    padding: 5px;
    border: 0 !important;
    background-color: #dddddd;
    text-align: left;
}

.Filter TD {
    display: inline-block;
    text-align: left;
    margin-right: 5px;
}

/* #endregion Filtri */

/* #region DataGrid & ColFilter */

TABLE.text {
    border: 0 !important;
}


/* Rows */
TABLE.text TR {
    background-color: #eeeeee;
    border: 0 !important;
}

TABLE.text TR.AlternateRowStyle {
    background-color: #dddddd;
}

TABLE.text TR:hover,
TABLE.text TR.AlternateRowStyle:hover,
TABLE.text TR.SelectedRowStyle {
    color: inherit !important;
    background-color: #cffbc1;
}


/* Cells */
TABLE.text TD {
    border-right: 0;
    border: 0;
    padding-left: 4px;
    padding-right: 4px;
}

TABLE.text TR.HeaderRowStyle TH,
TABLE.text TR.HeaderRowStyle TD,
TABLE.text TR.PagerRowStyle TD {
    border: 0 !important;
    background-color: #cccccc;
    padding-top: 5px;
    font-weight: normal;
}

TABLE.text TR.HeaderRowStyle TH,
TABLE.text TR.HeaderRowStyle TD {
    vertical-align: bottom;
    padding-right: 4px;
    text-align: left;
}

TABLE.text TR.HeaderRowStyle:first-child TH, /* +18.4 */
TABLE.text TR.HeaderRowStyle:first-child TD /* +18.4 */ {
    /* this is for all Safari (Desktop & iOS), not for Chrome */
    position: -webkit-sticky; /* +18.4 */
    position: sticky; /* +18.4 */
    /* top pari all'altezza dell'header */
    top: 60px; /* +18.4 */
    z-index: 99; /* +18.4 */
}

TABLE.text TR.PagerRowStyle TD {
    vertical-align: top;
    /* this is for all Safari (Desktop & iOS), not for Chrome */
    position: -webkit-sticky; /* +18.4 */
    position: sticky; /* +18.4 */
    /* top pari all'altezza dell'header */
    bottom: 0; /* +18.4 */
    z-index: 99; /* +18.4 */
}

TABLE.no-sticky TD,
 
TABLE.no-sticky TH {
        position: static !important;
}

TABLE.text TR.PagerRowStyle TD:last-child {
    text-align: left;
}

TABLE.text .HeaderOfSortingColumnASC,
TABLE.text .HeaderOfSortingColumnDESC {
    background-image: none;
    padding-left: 0;
}

TABLE.text .HeaderOfSortingColumnASC:before,
TABLE.text .HeaderOfSortingColumnDESC:before {
    color: #28314a;
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

TABLE.text .HeaderOfSortingColumnASC:before {
    content: "\f0de"; /* fa-sort-asc */
}

TABLE.text .HeaderOfSortingColumnDESC:before {
    content: "\f0dd"; /* fa-sort-desc */
}


/* Childs */
TABLE.text TR.HeaderRowStyle A,
TABLE.text TR.HeaderRowStyle TH > SPAN:not(.select2),
TABLE.text TR.HeaderRowStyle TD > SPAN:not(.select2),
TABLE.text TR.PagerRowStyle A {
    text-decoration: none;
    display: inline-block;
    line-height: 11px;
    color: #28314a;
    font-weight: bold;
    margin-bottom: 2px;
    border-bottom: 2px solid #99ccff;
    text-align: left;
}

TABLE.text TR.HeaderRowStyle TH > SPAN:not(.select2),
TABLE.text TR.HeaderRowStyle TD > SPAN:not(.select2) {
    border-bottom: 2px solid transparent;
}

TABLE.text TR.HeaderRowStyle A:hover, TABLE.text TR.HeaderRowStyle A:active, TABLE.text TR.HeaderRowStyle A:focus,
TABLE.text TR.PagerRowStyle A:hover, TABLE.text TR.PagerRowStyle A:active, TABLE.text TR.PagerRowStyle A:focus {
    color: #000000;
    border-bottom-color: #44dd11;
}

TABLE.text TR.PagerRowStyle A,
TABLE.text TR.PagerRowStyle TABLE,
TABLE.text TR.PagerRowStyle SPAN,
TABLE.text TR.PagerRowStyle SELECT {
    line-height: 11px;
    font-weight: normal;
    vertical-align: middle;
    display: inline-block;
}

TABLE.text TR.PagerRowStyle TD TABLE {
    margin-right: 20px;
}

TABLE.text TR.PagerRowStyle TD TABLE SPAN {
    font-weight: bold;
    border-bottom: 2px transparent;
}

TABLE.text TR.PagerRowStyle SELECT {
    margin-left: 5px;
}

TABLE.text .gridlist-bool-true,
TABLE.text .gridlist-bool-false {
    background-image: none !important;
    display: inline-block !important;
}

TABLE.text .gridlist-bool-true:before,
TABLE.text .gridlist-bool-false:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* text-shadow: -1px 0px 0px black, 0px -1px 0px black, 1px 0px 0px black, 0px 1px 0px black; */
}

TABLE.text .gridlist-bool-true:before {
    content: "\f00c"; /* fa-check */
    color: #00b700;
}

TABLE.text .gridlist-bool-false:before {
    content: "\f00d"; /* fa-times */
    color: #e20000;
}

/* +18.6 >> */
TABLE.text .no-bool-images .gridlist-bool-true,
TABLE.text .no-bool-images .gridlist-bool-false,
TABLE.text .no-bool-images .gridlist-bool-true:before,
TABLE.text .no-bool-images .gridlist-bool-false:before {
    display: none !important;
    background-image: none !important;
}
/* +18.6 << */

/* ColFilter  */
TABLE.text TR.filter_row TH {
    border-top: 1px solid lightgray;
    vertical-align: bottom;
}

TABLE.text TR.filter_row INPUT[type=text],
TABLE.text TR.filter_row .select2-container .select2-selection UL INPUT {
    box-sizing: border-box;
    /*display: inline-block;*/
    margin: 0;
    min-height: 0;
    padding: 0 2px;
    position: relative;
    top: 0;
    vertical-align: middle;
}

TABLE.text TR.filter_row INPUT[type=text],
TABLE.text TR.filter_row .select2-container .select2-selection--multiple {
    line-height: normal;
    min-height: 0 !important;
    font-weight: normal;
}

TABLE.text TR.filter_row .select2-container .select2-selection {
    background: transparent none repeat scroll 0 0;
    border: 0 none;
    min-height: 0;
    font-size: 10px !important;
}

TABLE.text TR.filter_row .select2-container .select2-selection UL /* EX: TABLE.text TR.filter_row SELECT ~ .select2-container .select2-selection UL */ {
    padding: 0;
}

TABLE.text TR.filter_row .select2-container .select2-selection UL LI {
    display: block;
    float: none;
    margin: 0;
}

TABLE.text TR.filter_row .select2-container .select2-selection UL INPUT {
    background: #fff none repeat scroll 0 0;
    margin-top: 0;
    width: 100% !important;
}

TABLE.text TR.filter_row .select2-container .select2-dropdown {
    /*width: auto !important;*/
    min-width: 10em;
}

TABLE.text TR.filter_row .select2-container .select2-dropdown .select2-results__option {
    font-size: 10px !important;
    text-align: left;
}

TABLE.text TR.filter_row .select2-container .select2-selection--multiple .select2-selection__choice { /* .select2-container--default */
    float: none;
}

/* #endregion DataGrid & ColFilter*/

/* #region Lines & Frame */

.line_v {
    height: 100%;
    width: 3px;
}

.linew_v {
    height: 100%;
    width: 4px;
}

.line_h {
    height: 3px;
    width: 100%;
}

.linew_h {
    height: 4px;
    width: 100%;
}

.frame {
    border: 0;
    background-color: rgba(0,0,0,0.1);
    padding: 10px;
}

/* #endregion Lines & Frame*/


/* #region Bottoni */

/* #region button (classico) */

A.btn,
A.btnDisabled,
.file-upload-container LABEL.btn {
    display: inline-block;
    cursor: pointer;
    height: 32px;
    margin: 10;
    overflow: hidden;
    padding: 0 0 0 7px;
    text-decoration: none;
}

A.btn SPAN.btn
A.btnDisabled SPAN.btn {
    display: inline-block;
    cursor: pointer;
    height: 32px;
    margin: 0;
    overflow: hidden;
    padding: 0 7px 0 0;
    text-decoration: none;
}

A.btn SPAN.btnText,
A.btnDisabled SPAN.btnText {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: 0px 6px;
    font-size: 8pt;
    font-weight: bold;
    margin: 0;
    padding: 8px 0 0 0;
    height: 32px;
}

/* #endregion button (classico) */

/* #region button "small" (classico) */

A.sbtn,
A.sbtnDisabled,
.file-upload-container .sbtn {
    display: inline-block;
    cursor: pointer;
    height: 22px;
    margin: 0;
    overflow: hidden;
    padding: 0 0 0 5px;
    text-decoration: none;
}

A.sbtn SPAN.sbtn,
A.sbtnDisabled SPAN.sbtn {
    display: inline-block;
    cursor: pointer;
    height: 22px;
    margin: 0;
    overflow: hidden;
    padding: 0 5px 0 0;
    text-decoration: none;
}

A.sbtn SPAN.sbtnText,
A.sbtnDisabled SPAN.sbtnText {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: 0px 2px;
    font-size: 8pt;
    font-weight: bold;
    margin: 0;
    padding: 3px 0 0 0;
    height: 22px;
}


/* #endregion button "small" (classico) */

/* #region button "micro" (classico) */


/* #endregion button "micro" (classico) */

A.btn,
A.sbtn,
A.mbtn,
A.btnDisabled,
A.sbtnDisabled,
A.mbtnDisabled,
.file-upload-container LABEL.btn,
.file-upload-container LABEL.sbtn,
.tabstrip A {
    background-image: none !important;
    border: 1px solid #99ccff;
    background-color: #99ccff;
    border-radius: 3px;
    color: #28314a;
    display: inline-block;
    /* --- */
    vertical-align: middle;
    padding: 0 4px !important;
    height: auto !important;
    width: auto !important;
    min-height: 26px !important;
    line-height: 26px !important;
}

A.sbtn,
A.sbtnDisabled {
    min-height: 22px !important;
    line-height: 22px !important;
}

A.mbtn,
A.mbtnDisabled {
    position: relative;
    overflow: hidden;
    height: 14px !important;
    min-height: 0 !important;
    width: 0 !important;
    padding: 0 !important;
    padding-left: 14px !important;
    margin-left: 4px;
    vertical-align: text-top;
}

A.btn:hover, A.btn:active, A.btn:focus,
A.sbtn:hover, A.sbtn:active, A.sbtn:focus,
A.mbtn:hover, A.mbtn:active, A.mbtn:focus,
.tabstrip A:hover, .tabstrip A:active, .tabstrip A:focus {
    /*color: #28314a;
    border:1px solid #28314a;*/
    color: #000000;
    border: 1px solid #000000;
    background-color: #44dd11;
}

.layout_menu .user_menu A.sbtn:hover, .layout_menu .user_menu A.sbtn:active, .layout_menu .user_menu A.sbtn:focus {
    border-color: #44dd11;
}

A.btn > SPAN,
A.sbtn > SPAN,
A.mbtn > SPAN,
A.btnDisabled > SPAN,
A.sbtnDisabled > SPAN,
A.mbtnDisabled > SPAN {
    background-image: none !important;
    background-color: transparent !important;
    display: inline-block;
    vertical-align: middle;
    padding: 0 !important;
    margin: 0 !important;
    height: auto !important;
    height: 26px !important;
    line-height: 26px !important;
}

A.sbtn > SPAN,
A.sbtnDisabled > SPAN {
    height: 22px !important;
    line-height: 22px !important;
}

A.btn > SPAN > SPAN,
A.sbtn > SPAN > SPAN,
A.mbtn > SPAN > SPAN,
A.btnDisabled > SPAN > SPAN,
A.sbtnDisabled > SPAN > SPAN,
A.mbtnDisabled > SPAN > SPAN {
    color: #28314a;
    display: inline-block;
    font-weight: bold !important;
    font-weight: normal !important;
    background-image: none !important;
    background-color: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    height: auto !important;
}

A.btn:hover > SPAN > SPAN, A.btn:active > SPAN > SPAN, A.btn:focus > SPAN > SPAN,
A.sbtn:hover > SPAN > SPAN, A.sbtn:active > SPAN > SPAN, A.sbtn:focus > SPAN > SPAN,
A.mbtn:hover > SPAN > SPAN, A.mbtn:active > SPAN > SPAN, A.mbtn:focus > SPAN > SPAN {
    color: #28314a;
}


/* bottoni nella barra del titolo */
.win_n A.sbtn {
    background-color: transparent;
    border: 1px solid #28314a;
    color: #99ccff;
    margin: 4px 4px 4px 0;
    padding: 0 !important;
    min-height: 16px !important;
    line-height: 16px !important;
}

.win_n A.sbtn:hover, .win_n A.sbtn:active, .win_n A.sbtn:focus {
    color: #44dd11;
}

.win_n A.sbtn > SPAN {
    height: 16px !important;
    line-height: 16px !important;
}


/* bottoni disabilitati */
A.btnDisabled,
A.sbtnDisabled,
A.mbtnDisabled {
    background-color: #dddddd !important;
    border-color: #aaaaaa !important;
    color: #aaaaaa !important;
    cursor: default;
    pointer-events: none;
}

/* #endregion Bottoni */

/* #region Icone x Bottoni */
A.btn:before,
A.sbtn:before,
A.mbtn:before,
A.btnNew:before,
A.btnModify:before,
A.btnChangePassword:before,
A.btnInsert:before,
A.btnUpdate:before,
A.btnConfirmPassword:before,
A.btnDelete:before,
A.btnCancel:before,
A.btnCancelPassword:before,
A.btnRefresh:before,
A.btnReIndex:before,
A.btnFilter:before,
A.btnFilterNew:before,
A.btnFilterAdd:before,
A.btnFilterDelete:before,
A.btnReplace:before,
A.btnRestore:before,
A.btnLogin:before,
A.btnLogout:before,
A.btnSecurityOpen:before,
A.btnSecurityClose:before,
A.btnPrint:before,
A.btnExport:before {
    height: 22px;
    line-height: 22px;
    padding: 0;
    margin: 0 4px;
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

A.mbtn:before,
A.mbtnDisabled:before {
    margin: 0;
    position: absolute;
    left: 2px;
    top: 1px;
    font-size: 12px;
}

A.btn > SPAN > SPAN,
A.sbtn > SPAN > SPAN,
A.mbtn > SPAN > SPAN,
A.btnNew > SPAN > SPAN,
A.btnModify > SPAN > SPAN,
A.btnChangePassword > SPAN > SPAN,
A.btnInsert > SPAN > SPAN,
A.btnUpdate > SPAN > SPAN,
A.btnConfirmPassword > SPAN > SPAN,
A.btnDelete > SPAN > SPAN,
A.btnCancel > SPAN > SPAN,
A.btnCancelPassword > SPAN > SPAN,
A.btnRefresh > SPAN > SPAN,
A.btnReIndex > SPAN > SPAN,
A.btnFilter > SPAN > SPAN,
A.btnFilterNew > SPAN > SPAN,
A.btnFilterAdd > SPAN > SPAN,
A.btnFilterDelete > SPAN > SPAN,
A.btnReplace > SPAN > SPAN,
A.btnRestore > SPAN > SPAN,
A.btnLogin > SPAN > SPAN,
A.btnLogout > SPAN > SPAN,
A.btnSecurityOpen > SPAN > SPAN,
A.btnSecurityClose > SPAN > SPAN,
A.btnPrint > SPAN > SPAN,
A.btnExport > SPAN > SPAN {
    background-image: none !important;
    padding-left: 0 !important;
}

INPUT.win_icon_security:before,
A.btnNew:before {
    content: "\f0fe"; /* fa-plus-square */
}

A.btnNew.mbtn:before {
    content: "\f067"; /* fa-plus */
    top: 2px;
}

A.btnModify:before {
    content: "\f040"; /* fa-pencil */
}

A.btnChangePassword:before {
    content: "\f084"; /* fa-key */
}

A.btnInsert:before,
A.btnUpdate:before,
A.btnConfirmPassword:before {
    content: "\f0c7"; /* fa-floppy-o */
}

A.btnDelete:before {
    content: "\f1f8"; /* fa-trash */
}

A.btnCancel:before,
A.btnCancelPassword:before {
    content: "\f0e2"; /* fa-undo */
}

A.btnRefresh:before,
A.btnReIndex:before {
    content: "\f021"; /* fa-refresh */
}

A.btnFilter:before,
A.btnFilterNew:before {
    content: "\f002"; /* fa-search */
}

A.btnFilterAdd:before {
    content: "\f00e"; /* fa-search-plus */
}

A.btnFilterDelete:before {
    content: "\f010"; /* fa-search-minus */
}

A.btnReplace:before,
A.btnRestore:before {
    content: "\f079"; /* fa-retweet */
}

A.btnLogin:before {
    content: "\f090"; /* fa-sign-in */
}

A.btnLogout:before {
    content: "\f08b"; /* fa-sign-out */
}

A.btnSecurityOpen:before {
    content: "\f09c"; /* fa-unlock */
}

A.btnSecurityClose:before {
    content: "\f023"; /* fa-unclose */
}

A.btnPrint:before {
    content: "\f02f"; /* fa-print */
}

A.btnExport:before {
    content: "\f019"; /* fa-download */
}

/* #endregion Icone x Bottoni */

/* #region ImageSelector */

.ImageSelector DIV {
    margin-top: 4px;
}

.ImageSelector DIV DIV {
    float: left;
    margin: 0 3px 2px 0;
}

.ImageSelector DIV DIV DIV {
    background-color: #e3e3eF;
    border: solid 1px silver;
    overflow: hidden;
    height: 100px;
    text-align: center;
}

.ImageSelector DIV DIV.ImageSelector_EndOfList {
    clear: both;
    height: 0;
    float: none;
    border: 0;
    margin: 0;
}

.ImageSelector DIV DIV DIV INPUT {
    height: 60%;
    display: block;
    margin: 0 auto;
}

.ImageSelector SPAN SPAN, .ImageSelector SPAN A {
    padding: 5px;
}

.ImageSelector DIV DIV DIV SPAN {
    padding: 1px;
}

/* #endregion ImageSelector */

/* #region Calendar */
.input-wrapper {
    position: relative;
}

.input-wrapper input {
    padding-left: 24px !important;
}

.input-wrapper label {
    position: absolute;
    top: 6px;
    left: 5px;
    width: 16px;
    height: 16px;
}

.input-wrapper label:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.input-wrapper.date_icon label:before {
    content: "\f073"; /* fa-calendar */
}

.input-wrapper.time_icon label:before,
.input-wrapper.datetime_icon label:before,
.input-wrapper.timespan_icon label:before {
    content: "\f017"; /* fa-clock-o */
}


/* -- POPUP -- */

.Calendar .ajax__calendar_container {
    border: 1px solid #000000;
    background-color: #ffffff;
    color: #000000;
    font-family: encode-sans, sans-serif;
    font-size: 1em;
    z-index: 100;
    width: 14em;
}

/* COLORI */
.Calendar .ajax__calendar_other .ajax__calendar_day,
.Calendar .ajax__calendar_other .ajax__calendar_year,
.Calendar .ajax__calendar_invalid {
    color: #dddddd;
}

.Calendar .ajax__calendar_today {
    color: #0080ff;
}

.Calendar .ajax__calendar_active .ajax__calendar_day,
.Calendar .ajax__calendar_active .ajax__calendar_month,
.Calendar .ajax__calendar_active .ajax__calendar_year {
    color: #e20000;
}

.Calendar .ajax__calendar_hover .ajax__calendar_day,
.Calendar .ajax__calendar_hover .ajax__calendar_month,
.Calendar .ajax__calendar_hover .ajax__calendar_year,
.Calendar .ajax__calendar_hover .ajax__calendar_today {
    color: #e20000;
    /*font-weight:bold;*/
}

.Calendar .ajax__calendar_dayname {
    color: #000000;
    font-weight: bold;
}

.Calendar .ajax__calendar_active .ajax__calendar_day,
.Calendar .ajax__calendar_active .ajax__calendar_month,
.Calendar .ajax__calendar_active .ajax__calendar_year {
    font-weight: bold;
}

/* DIMENSIONI */
.Calendar .ajax__calendar_header {
    height: 2em !important;
}

.Calendar .ajax__calendar_body {
    height: 12em;
    width: 13em;
    padding-right: 0.75em;
}

.Calendar .ajax__calendar_days,
.Calendar .ajax__calendar_months,
.Calendar .ajax__calendar_years {
    width: 13em !important;
    height: 12em !important;
}

.Calendar .ajax__calendar_container TABLE {
    display: table !important;
    font-size: 1em !important;
}

.Calendar .ajax__calendar_container TR {
    display: table-row !important;
}

.Calendar .ajax__calendar_container TH,
.Calendar .ajax__calendar_container TD {
    font-size: 0.9em !important;
    display: table-cell !important;
}

.Calendar .ajax__calendar_day,
.Calendar .ajax__calendar_dayname {
    width: 1.5em !important;
    height: 1.75em !important;
}

.Calendar .ajax__calendar_month,
.Calendar .ajax__calendar_year {
    padding-top: 1.2em !important;
    height: 3em !important;
    width: 3em !important;
}

.Calendar .ajax__calendar_month br,
.Calendar .ajax__calendar_year br {
    display: none !important;
}

/* #endregion calendar */

/*#region SFXE-SFXP */

.sfxe-template.placeholder-list,
.sfxp-template.placeholder-list {
    position: relative;
    top: -10px;
    background: lightyellow;
}

.sfxe-destinatario SMALL {
    color: #aaaaaa;
    display: block;
    line-height: 1em;
    padding-top: 0.5em;
    height: 1em;
}

.sfxe-iscritti {
    border-collapse: collapse;
    border: 1px solid gray;
    width: 100%;
}

.sfxe-iscritti TR {
    background-color: #eeeeee;
}

.sfxe-iscritti TR:nth-child(2n) {
    background-color: #cccccc;
}

.sfxe-iscritti TR.header,
.sfxe-iscritti TR.footer {
    background-color: #dddddd;
    line-height: 11px;
    color: #28314a;
    font-weight: bold;
}

.sfxe-iscritti TD {
    padding: 0.25em;
}

.sfxp-frame {
    margin-bottom: 2em;
    padding-bottom: 2em;
    border-bottom: 2px dashed #000000;
}

.sfxp-section-title .text {
    font-weight: bold;
}

/* #endregion SFXE-SFXP */

/* #region Progress */

.WorkingPanel {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
    background-color: Black;
    opacity: .75;
}

.WorkingPanel DIV {
    top: 40%;
    font-weight: bold;
    left: 38%;
    right: 38%;
    position: absolute;
    text-align: left;
    z-index: 3000;
    padding: 20px 20px 20px 40px;
    background-image: url('progress.gif');
    background-repeat: no-repeat;
    background-position: 10px center;
    background-color: #ffffff;
    border: 4px solid #99ccff;
    color: #28314a;
}

/* #endregion progress */

/* #region CKEditor */

.cke_editable {
    background-color: window;
    border-color: activeborder;
    border-style: inset;
    border-width: 2px;
    color: windowtext;
    padding: 2px;
    min-height: 4em;
}

.cke_toolbox {
    display: inline-block;
}

.cke_toolbox + .cke_wordcount {
    float: none;
    text-align: right;
}

/* #endregion CKEditor */

/*#region Input */

INPUT[type=text],
INPUT[type=number], /* +18.6 */
INPUT[type=password],
SELECT,
TEXTAREA,
.select2-container .select2-selection, /* ex: .select2-container .select2-selection--single,*/
TABLE.text TR.filter_row .select2-container INPUT.select2-search__field, /* ex: TABLE.text TR.filter_row SELECT ~ .select2-container .select2-selection UL INPUT, */
.cke,
.cke_editable {
    box-sizing: border-box;
    border: 1px solid #aaaaaa !important;
    border-bottom: 2px solid #99ccff !important;
    color: #000000 !important;
    background-color: #ffffff;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
}

TABLE.text TR.filter_row .select2-container .select2-selection {
    border: 0 !important;
}

INPUT[type=text],
INPUT[type=number], /* +18.6 */
INPUT[type=password],
SELECT,
TEXTAREA {
    line-height: 24px;
    min-height: 28px;
    padding-left: 3px;
}

INPUT[type=text],
INPUT[type=number], /* +18.6 */
INPUT[type=password] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

TEXTAREA {
    padding-top: 4px;
    line-height: normal;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

SELECT {
    /*height:28px;    /* fa casini con la combobox asynx*/
}

INPUT[type=text]:focus,
INPUT[type=number]:focus, /* +18.6 */
INPUT[type=password]:focus,
SELECT:focus,
TEXTAREA:focus,
.select2-container.select2-container--focus .select2-selection, /* ex: .select2-container.select2-container--focus .select2-selection--single, */
.select2-container.select2-container--open INPUT.select2-search__field:focus, /* ex: .select2-container.select2-container--open INPUT.select2-search__field;  ex: .select2-container.select2-container--focus .select2-selection--multiple UL INPUT */
TABLE.text TR.filter_row .select2-container INPUT.select2-search__field:focus, /* ex: TABLE.text TR.filter_row SELECT ~ .select2-container.select2-container--focus .select2-selection UL INPUT,*/
.cke.cke_focus,
.cke_editable.cke_focus {
    outline: 0;
    border: 1px solid #000000 !important;
    border-bottom: 2px solid #44dd11 !important;
}

.select2-container.select2-container--open .select2-selection {
    outline: 0;
    border: 1px solid #000000 !important;
    border-bottom: 0 !important;
}

.select2-container.select2-container--open .select2-dropdown {
    outline: 0;
    border: 1px solid #000000 !important;
    border-bottom: 1px solid #000000 !important;
}

TABLE.text TR.filter_row .select2-container.select2-container--focus .select2-selection {
    border: 0 !important;
}

.select2-container .select2-selection--single,
.select2-container .select2-selection--multiple {
    min-height: 29px !important;
}

/* +18.6 >> */
TD.UCContentCell .select2-container .select2-selection--multiple {
    padding-bottom: 5px;
}
/* +18.6 << */

.select2-container--default.select2-container--disabled .select2-selection--single {
    background-color: #dddddd !important;
}

TR.UCChildSelector INPUT[checked=checked] + label {
    font-weight: bold;
}

.LabelForNextField INPUT[type=checkbox] {
    margin: 0 3px 0 0;
    height: 12px;
}

.file-upload-container INPUT[type=file] {
    display: none;
}

[type=radio],
legend {
    outline-color: #44dd11;
}


/* checkbox */
INPUT[type=checkbox],
INPUT[type=radio] {
    height: 0;
    width: 0;
    outline: 0;
    position: absolute;
    overflow: hidden;
    clip: rect(0,0,0,0);
    margin: -1;
}

INPUT[type=checkbox] + LABEL,
INPUT[type=radio] + LABEL {
    position: relative;
    padding-left: 20px;
    margin-right: 15px;
    color: #28314a;
    cursor: pointer;
}

INPUT[type=checkbox] + LABEL:hover,
INPUT[type=radio] + LABEL:hover {
    color: #000000;
}

INPUT[type=checkbox] + LABEL:before,
INPUT[type=radio] + LABEL:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 1em;
    height: 1em;
    border: 1px solid red;
    background: white;
    border: 1px solid #aaaaaa;
    border-bottom: 2px solid #99ccff;
}

INPUT[type=radio] + LABEL:before {
    border-radius: 50%;
}

INPUT[type=checkbox]:focus + LABEL:before,
INPUT[type=checkbox] + LABEL:hover:before,
INPUT[type=radio]:focus + LABEL:before,
INPUT[type=radio] + LABEL:hover:before {
    border: 1px solid #000000;
    border-bottom: 2px solid #44dd11;
}

INPUT[type=checkbox]:checked + LABEL:before,
INPUT[type=radio]:checked + LABEL:before {
    content: "\f00c"; /* fa-check */
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}



INPUT[type=text][disabled],
INPUT[type=number][disabled], /* +18.6 */
INPUT[type=password][disabled], /* +18.6 */
INPUT[type=checkbox][disabled] + LABEL:before,
INPUT[type=radio][disabled] + LABEL:before,
TEXTAREA[disabled],
SELECT[disabled] {
    background-color: #dddddd;
    border-color: #aaaaaa !important;
    color: #777777;
    cursor: default;
}


/*#endregion Input*/


/* #region Font Sizes */

BODY,
INPUT,
TEXTAREA,
SELECT,
BUTTON,
A.menu,
A.btn > SPAN > SPAN,
A.btnDisabled > SPAN > SPAN,
.win_n, .win_c, .win_title,
.text, .textbold, .small,
.WorkingPanel DIV,
.select2-results__option {
    font-size: 14px !important;
    /*line-height: 18px;*/
}

A.sbtn > SPAN > SPAN,
A.sbtnDisabled > SPAN > SPAN,
.small,
.swin_n .swin_title {
    font-stretch: condensed;
    font-size: 14px !important;
    line-height: 22px;
}

.ValueContainer > SPAN.text {
    font-stretch: condensed;
    font-size: 14px !important;
    line-height: 18px; /* x chk LabelForNextField */
}

.user-not-connected .ValueContainer > SPAN.text,
.user-not-connected INPUT[type=text],
.user-not-connected INPUT[type=number], /* +18.6 */
.user-not-connected INPUT[type=password],
.user-not-connected A.sbtn > SPAN > SPAN,
.user-not-connected A.sbtnDisabled > SPAN > SPAN {
    font-stretch: expanded;
    font-size: 14px !important;
}

TABLE.text TR.filter_row .select2 INPUT,
TABLE.text TR.filter_row INPUT[type="number"], /* +18.6 */
TABLE.text TR.filter_row INPUT[type="text"] {
    font-size: 12px !important;
    line-height: 16px;
}

SMALL,
.note {
    font-size: 12px !important;
    line-height: 14px;
}

TABLE.text TR.HeaderRowStyle A,
TABLE.text TR.HeaderRowStyle TH > SPAN:not(.select2),
TABLE.text TR.HeaderRowStyle TD > SPAN:not(.select2),
TABLE.text TR.PagerRowStyle A,
TABLE.text TR.PagerRowStyle SPAN,
TABLE.text TR.PagerRowStyle SELECT,
.sfxe-iscritti TR.header,
.sfxe-iscritti TR.footer,
.collapse-close-all,
.collapse-open-all {
    font-stretch: condensed;
    font-size: 12px !important;
    /*line-height: 16px;*/
}

.layout_menu .mnu_Separator A.menu {
    font-size: 9px !important;
}

/* #endregion Font Sizes */

/* #region Guida/Manuali >> */

/*
    COLOR TABLE

    #888888 = grigio = comandi dell'indice aperto
    #0033aa = blu = icone, titolo, link

*/


.sfx_help {
    min-width: 40em;
    padding: 4em 1em 1em;
    position: relative;
    margin: 30px;
}

.sfx_help ul {
    margin-top: 0;
    padding-left: 1.5em;
}

.sfx_help p + ul {
    margin-top: -1em; /* per rimuovere i margin-bottom:1em del P */
}

.sfx_help h1 {
    margin-bottom: 0;
    font-size: 14pt;
}

.sfx_help h2 {
    font-size: 12pt;
    text-decoration: underline;
    font-weight: bold;
}

.sfx_help h3 {
    margin-bottom: 0;
    margin-top: 0;
    font-size: 10pt;
}



.sfx_help .command_line,
.sfx_help .command_line_output,
.sfx_help .command_line_editor {
    background: #000000 none repeat scroll 0 0;
    display: block;
    font-family: monospace;
    font-size: 11px;
    overflow-x: auto;
    padding: 10px;
    position: relative;
    white-space: nowrap;
}

.sfx_help .command_line::before,
.sfx_help .command_line_output::before,
.sfx_help .command_line_editor::before {
    color: #999;
    font-family: arial;
    font-size: 6px;
    left: 1px;
    letter-spacing: 2px;
    position: absolute;
    text-transform: uppercase;
    top: 1px;
}

.sfx_help .command_line {
    color: #00ff00;
}

.sfx_help .command_line::before {
    content: 'Command line';
}

.sfx_help .command_line_output {
    color: #aaaaaa;
    border-color: #aaaaaa;
    border-style: dashed;
    border-width: 1px 0;
}

.sfx_help .command_line_output::before {
    content: 'Output';
}

.sfx_help .command_line_editor { /* giallo */
    background-color: #440;
    border-color: #aaaa00;
    border-style: dashed;
    border-width: 1px 0;
    color: #ffff00;
}
/*.command_line_editor {  /* grigio-azzurro * /
    background-color: #def;     /*#eee* /
    border-color: #aaa;
    border-style: dashed;
    border-width: 1px 0;
    color: #00a;
}*/
.sfx_help .command_line_editor::before {
    content: 'Editor';
}

.sfx_help .indice-capitoli {
    margin: 0;
    margin-right: 30px;
    margin-bottom: 10px;
    padding: 1em;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    overflow-y: hidden;
    max-height: 1em;
    transition: all 0.25s;
    border: 1px solid transparent;
    cursor: default;
    border-color: transparent;
    background: transparent;
}

.sfx_help .indice-capitoli:hover,
.sfx_help .indice-capitoli.fisso {
    max-height: 95%;
    min-height: 30em;
    overflow-y: scroll;
    background: lightyellow;
    border: 1px solid lightgray;
}

.sfx_help .indice-capitoli.fisso {
    border-color: #0033aa;
}

.sfx_help .indice-capitoli .titolo-indice {
    text-decoration: underline;
    color: #0033aa;
    font-size: 1.5em;
}

.sfx_help .indice-capitoli .titolo-indice .pin {
    display: none;
    color: Gray;
    margin-left: 1em;
    border: 1px solid gray;
    width: 1em;
    text-align: center;
    padding: 0.25em;
    font-size: 0.75em;
    vertical-align: top;
    cursor: pointer;
}

.sfx_help .indice-capitoli:hover .titolo-indice .pin,
.sfx_help .indice-capitoli.fisso .titolo-indice .pin {
    display: inline-block;
}

.sfx_help .indice-capitoli.fisso .titolo-indice .pin {
    color: #0033aa;
    border-color: #0033aa;
}



.sfx_help .indice-capitoli > div {
    max-height: 0;
    overflow: hidden;
    transition: all 0.25s;
}

.sfx_help .indice-capitoli:hover > div,
.sfx_help .indice-capitoli.fisso > div {
    max-height: 100%;
}

.sfx_help .gruppo-capitoli,
.sfx_help .gruppo-titoletti {
    list-style: none;
    /*padding-left:14px;*/
}

.sfx_help .capitolo {
    margin-top: 2px;
    margin-bottom: 2px;
}

.sfx_help .titolo {
    text-decoration: none;
    color: black;
}

.sfx_help .titolo.titolo-selezionato {
    font-weight: bold;
}

.sfx_help .titoletto {
    margin-top: 2px;
    margin-bottom: 2px;
    margin-left: 3px;
    color: #777777;
}

.sfx_help .group-header,
.sfx_help .no-group-header,
.sfx_help .external-commands a {
    color: #888888;
    font-weight: bold;
    padding: 0.25em;
    font-size: 0.6em;
    text-transform: uppercase;
    cursor: pointer;
    position: relative;
    vertical-align: top;
    display: inline-block;
    height: 1em;
    border-bottom: 0;
}

.sfx_help .external-commands a > i.fa {
    font-size: 1.75em;
    position: absolute;
    left: -1em;
    top: 0;
    color: #0033aa;
}

.sfx_help .group .group-header:before,
.sfx_help .group-header.close_all:before,
.sfx_help .group-header.open_all:before {
    content: '+';
    position: absolute;
    left: -1.5em;
    bottom: 0;
    font-size: 1.25em;
    width: 1em;
    text-align: center;
    height: 1em;
    line-height: 1em;
    font-weight: bold;
    transition: all 0.5s ease 0s;
    border-radius: 1em;
    transform: rotate(45deg);
    border: 1px solid #0033aa;
    background-color: #0033aa;
    color: White;
}

.sfx_help .group-header.revert_all:before,
.sfx_help .group-header.open_current:before {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: 1.75em;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    color: #0033aa;
    background: transparent;
    left: -1em;
    top: 0;
    position: absolute;
}

.sfx_help .group-header.revert_all:before {
    content: "\f021"; /* fa-refresh */
}

.sfx_help .group-header.open_current:before {
    content: "\f02d"; /* fa-book */
}

.sfx_help .group.closed .group-header:before,
.sfx_help .group-header.open_all:before {
    border-radius: 0;
    transform: rotate(0);
    background-color: White;
    color: #0033aa;
}

.sfx_help .group.closed ul,
.sfx_help .group.closed li {
    max-height: 0;
    max-width: 0;
    overflow: hidden;
    padding-top: 0;
    padding-bottom: 0;
    border: 0;
}

.sfx_help .external-commands,
.sfx_help .group-all-commands {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}

.sfx_help .group-all-commands {
    border-bottom: 1px solid lightgray;
}

.sfx_help .gruppo-capitoli + .group-all-commands {
    border-top: 1px solid lightgray;
    border-bottom: none;
}

.sfx_help .external-commands a,
.sfx_help .group-all-commands .group-header {
    opacity: 0.6;
}

.sfx_help .external-commands a:hover,
.sfx_help .group-all-commands .group-header:hover {
    opacity: 1;
}

.sfx_help .external-commands a,
.sfx_help .group-header.close_all,
.sfx_help .group-header.open_all,
.sfx_help .group-header.revert_all,
.sfx_help .group-header.open_current {
    margin-left: 2.5em;
    margin-right: 2em;
}

.sfx_help .breadcrumbs {
    margin-left: -0.5em;
    margin-bottom: 1em;
    padding-bottom: 1em;
    border-bottom: 1px solid lightgray;
}

.sfx_help .breadcrumbs .level {
    position: relative;
    z-index: 0;
    padding-left: 0.5em;
}

.sfx_help .breadcrumbs .content > a {
    z-index: 1;
    color: Gray;
    font-size: 0.9em;
    border: none;
}

.sfx_help .breadcrumbs .content > a.current {
    font-weight: bold;
    font-size: 1.25em;
    color: Black;
}

.sfx_help .breadcrumbs .content .brothers {
    display: inline-block;
    list-style: none;
    position: absolute;
    background: lightyellow;
    width: auto;
    left: 2em;
    top: 1em;
    z-index: 2;
    max-height: 0;
    padding: 0;
    border: 0 solid gray;
    overflow: hidden;
    transition: all 0.25s 0.25s ease;
}

.sfx_help .breadcrumbs .content a.current + .brothers {
    left: 2.5em;
    top: 1.25em;
}

.sfx_help .breadcrumbs .content:hover > .brothers {
    max-height: 50em;
    padding: 1em;
    border: 1px solid gray;
    overflow-y: auto;
    transition: all 0.25s 0.5s ease;
}

.sfx_help .breadcrumbs .content .brothers > a {
    float: left;
    clear: left;
}

.sfx_help .elencoFiles li:first-child {
    list-style: none;
    margin-left: -1em;
}


.sfx_help .risultato {
    padding: 1em;
    margin-bottom: 1em;
    max-width: 800px;
}

.sfx_help .risultato .path {
    color: gray;
    font-size: 0.9em;
}

.sfx_help .risultato > a {
    font-weight: bold;
    color: Black;
    font-size: 1.4em;
}

.sfx_help .risultato .corrispondenze {
    margin: 0.25em;
}

.sfx_help .evidenzia {
    background-color: yellow;
}

/* #endregion Guida/Manuali >> */

/* #endregion v18.6 */

/* #region v25.9 */
.languages-container {
    position: relative;
    display: inline-block;
    height: 50px;
    cursor: pointer;
}

.languages-container .languages {
    position: absolute;
    left: 0;
    top: 0;
    max-height: 1.5em;
    overflow: hidden;
    padding: 2px;
    margin: 2px;
    border: 1px solid transparent;
    background-color: transparent;
    /*transition:max-height 0.25s ease 0s;*/
}

.languages-container:hover .languages {
    max-height: 15em;
    border-color: white;
    background-color: black;
}

.languages-container .languages .language {
    display: block;
    margin: 0 1px;
    padding: 0 1px;
    width: 1.5em;
    height: 1.5em;
    line-height: 1.5em;
    text-align: center;
    font-weight: normal;
    max-height: 0em;
    overflow: hidden;
    transition: all 0.25s ease 0s;
}

.languages-container .languages .language.current {
    font-weight: bold;
    max-height: 1.5em;
    margin: 1px 1px;
    padding: 1px 1px;
    cursor: default;
}

.languages-container:hover .languages .language {
    max-height: 1.5em;
    margin: 1px 1px;
    padding: 1px 1px;
    transition: all 0.25s ease 0s;
}

.languages-container .languages .language + .language {
    border-top: 0px dotted transparent;
}

.languages-container:hover .languages .language + .language {
    border-top-color: white;
    border-top-width: 1px;
    transition: all 0.25s ease 0s;
}
/* #endregion v25.9 */


/* #region CUSTOM 321 >> */


/* Compilato da Softimax. v18.269 = 26/09/18 */

/* NORMAL */
@font-face {
    font-family: 'roboto';
    font-weight: normal;
    font-style: normal;
    src: url('Roboto-Regular.ttf') format('truetype');
}

/* NORMAL-THIN */
@font-face {
    font-family: 'roboto';
    font-weight: 100;
    font-style: normal;
    src: url('Roboto-Thin.ttf') format('truetype');
}

/* NORMAL-BOLD */
@font-face {
    font-family: 'roboto';
    font-weight: bold;
    font-style: normal;
    src: url('Roboto-Bold.ttf') format('truetype');
}

/* CONDENSED */
@font-face {
    font-family: 'roboto';
    font-weight: normal;
    font-style: normal;
    font-stretch: condensed;
    src: url('RobotoCondensed-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'roboto-condensed';
    font-weight: normal;
    font-style: normal;
    src: url('RobotoCondensed-Regular.ttf') format('truetype');
}

/* CONDENSED-THIN*/
@font-face {
    font-family: 'roboto';
    font-weight: 100;
    font-style: normal;
    font-stretch: condensed;
    src: url('RobotoCondensed-Light.ttf') format('truetype');
}
@font-face {
    font-family: 'roboto-condensed';
    font-weight: normal;
    font-style: normal;
    src: url('RobotoCondensed-Light.ttf') format('truetype');
}

/* CONDENSED-BOLD*/
@font-face {
    font-family: 'roboto';
    font-weight: bold;
    font-style: normal;
    font-stretch: condensed;
    src: url('RobotoCondensed-Bold.ttf') format('truetype');
}
@font-face {
    font-family: 'roboto-condensed';
    font-weight: bold;
    font-style: normal;
    src: url('RobotoCondensed-Bold.ttf') format('truetype');
}


body {
    background: #ffffff;    
    color: #444444;
    font-family:roboto, encode-sans, sans-serif;
}

body:before {
    content: '';
    position: fixed !important;
    right: 0 !important;
    top: 0 !important;
    background-color: #ffffff !important;
    background-image: url('background.png') !important;
    width: 100% !important;
    height: 100% !important;
    background-position: right bottom !important;
    background-repeat: no-repeat !important;
    opacity: 0.5 !important;
}

A {
    color: #444444;
    border-bottom: 2px solid #444444;
}

A:hover {
    cursor:pointer;
}

A:hover, A:active, A:focus {
    color: #000000;
    border-bottom-color: #000000;
}

:root { /* +18.4 */
    --scrollbarBackColor: rgba(255,255,255, 0.0);
    --scrollbarSliderColor: rgba(0, 0, 0, 0.5); 
    --scrollbarSliderColor-hover: rgb(0, 0, 0); 
    --menu-width: 250px;
}

.text {
    color:#444444;
}

.layout_header {
    color: #ffffff;
}

.layout_header .layout_title_version .layout_version {
    color:#aaaaaa;
}

.layout_header .layout_logo {
    display:none;
}

.layout_header .softimax-logo {
    background-image: none;
}

.layout_header .softimax-logo span {
    opacity:0.7;
}

.dev-server .layout_header .softimax-logo,
.test-server .layout_header .softimax-logo,
.qa-server .layout_header .softimax-logo {
    background-image: none;
}


.layout_header A, .layout_menu A {
    color: #000000;
}

.layout_header .pannello-intestazione .quick-links a {
    background: #000000;
    border:1px solid #000000;
    color: #ffffff;
}

.layout_header .pannello-intestazione .quick-links a:hover {
    background: #ffffff;
    color: #000000;
}

.layout_header A:hover, 
.layout_header A:active, 
.layout_header A:focus, 
.layout_menu A:hover, 
.layout_menu A:active, 
.layout_menu A:focus {
    color: #000000;
}

.collapse-header:hover:before, 
.collapse-close-all:hover:before, 
.collapse-open-all:hover:before,
.collapse-closed .collapse-header:hover:before,
.collapse-open-all:hover:before {
    color: #ffffff;
    background-color:#000000;
}

.layout_menu {
    background-color: #ffffff;
}

.user-connected .layout_menu, 
.user-password-pending-by-user .layout_menu, 
.user-password-pending .layout_menu, 
.user-editing-properties .layout_menu {
    border-right:3px solid #000000;
}

.layout_menu A.menu,
.layout_menu .user_menu A {
    color: #000000;
}

.layout_menu A.menu > i.fa {
    color: #000000;
}

.layout_menu A.menu {
    color: #000000;
    border: 2px solid #444444;
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 2px;
    margin-top: 2px;
}

.layout_menu .user_menu A:hover {
    color: #000000;
}

.layout_menu .user_menu .panel .text {
    color: #444444;
}

.layout_menu A.menu:hover,
.layout_menu A.menu:active,
.layout_menu A.menu:focus,
.layout_menu A.menu:hover > i.fa,
.layout_menu A.menu:active > i.fa,
.layout_menu A.menu:focus > i.fa {
    background-color: #000000;
    color: #ffffff;
}

.layout_menu .mnu_Separator A.menu {
    border:none;    
}

.layout_menu .user_menu .avatar:before {
    content: '';
    display: block;
    width: 100px;
    height: 100px;
    background-image: url('logo321_TeamRiders.png');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
}

.layout_menu .user_menu .ValueContainer.buttons A {
    color: #ffffff;
    background-color: #000000;
    border-color: #000000;
}

.layout_menu .user_menu A.sbtn:hover,
.layout_menu .user_menu A.sbtn:active,
.layout_menu .user_menu A.sbtn:focus {
    color: #000000;
    background-color: #ffffff;
}

body.user-connected .menu_mode {
    border:3px solid #000000;
    border-left:0;
    background: #ffffff;
    color: #000000;
    width:0.5em;
}

body.user-connected .menu_mode:hover {
    background: #000000;
    color: #ffffff;
}

.layout_content > TABLE {
    box-shadow: none;
}

.win_n {
    background-color: #000000;
}

.win_n A.sbtn {
    color: #ffffff;
}

.win_n A.sbtn:hover, 
.win_n A.sbtn:active,
.win_n A.sbtn:focus {
    color: #000000;
}

.swin_n,
.swin_n:hover {
    color: #000000;
}

TABLE.text TR.HeaderRowStyle A, 
TABLE.text TR.PagerRowStyle A {
    border-bottom-color: #000000;
}

TABLE.text TR.HeaderRowStyle A:hover, 
TABLE.text TR.HeaderRowStyle A:active, 
TABLE.text TR.HeaderRowStyle A:focus, 
TABLE.text TR.PagerRowStyle A:hover, 
TABLE.text TR.PagerRowStyle A:active, 
TABLE.text TR.PagerRowStyle A:focus {
    border-bottom-color: #000000;
}

TABLE.text TR.AlternateRowStyle {
    background-color: #ffffff;
}

TABLE.text TR:hover, TABLE.text TR.AlternateRowStyle:hover, TABLE.text TR.SelectedRowStyle {
    background-color: #bdbdbd;
}

INPUT[type=text], 
INPUT[type=number], 
INPUT[type=password], 
SELECT, 
TEXTAREA, 
.select2-container .select2-selection, 
TABLE.text TR.filter_row .select2-container INPUT.select2-search__field, 
.cke, 
.cke_editable {
    border-bottom: 1px solid #000000 !important;
}

INPUT[type=text]:focus, 
INPUT[type=number]:focus, 
INPUT[type=password]:focus, 
SELECT:focus, 
TEXTAREA:focus, 
.select2-container.select2-container--focus .select2-selection, 
.select2-container.select2-container--open INPUT.select2-search__field:focus, 
TABLE.text TR.filter_row .select2-container INPUT.select2-search__field:focus, 
.cke.cke_focus, 
.cke_editable.cke_focus {
    border: 1px solid #000000 !important;
    border-bottom: 1px solid #000000 !important;
}

A.btn, 
A.sbtn, 
A.mbtn, 
A.sbtnDisabled,
.file-upload-container LABEL.btn, 
.file-upload-container LABEL.sbtn, 
.tabstrip A {
    border: 1px solid #000000;
    background-color: #000000;
    color: #ffffff;
}

A.btn > SPAN > SPAN,
A.sbtn > SPAN > SPAN,
A.mbtn > SPAN > SPAN {
    color: #ffffff;
}

.tabstrip .currentTab, 
.tabstrip .currentTab A {
    background-color: #ffffff;
    color:#000000;
}


A.btn:hover, A.btn:active, A.btn:focus,
A.sbtn:hover, A.sbtn:active, A.sbtn:focus,
A.mbtn:hover, A.mbtn:active, A.mbtn:focus,
.tabstrip A:hover,
.tabstrip A:active,
.tabstrip A:focus {
    color: #000000;
    background-color: #ffffff;
}

.WorkingPanel DIV {
    border: 4px solid #000000;    
}

/* #endregion CUSTOM 321 << */