table.dataTable,
table.dataTable td,
table.dataTable th {font-size: 12px;}

/* NASCONDE LE FRECCE DI ORDINAMENTO (versioni recenti) */
.dt-column-order {
    display: none !important;
}

/* Opzionale: rimuovi padding extra se serve */
table.dataTable thead th {
    padding-right: 8px !important;
}
div.dtsb-titleRow {
    display: none !important;
}

/* Menu DROPDOWN */
* { box-sizing:border-box; !important}
body {
    font-family:"Nunito Sans", Arial, Helvetica, sans-serif;
    padding-top:40px;
    background:#424242;
!important
}

.menubar {
    position:fixed; top:0; left:0; right:0;
    background:rgb(51, 102, 153); height:30px;
    box-shadow:0 2px 8px rgba(0,0,0,0.25);
    z-index:9999; user-select:none;
!important
}
.menubar-inner {
    max-width:1200px; margin:0 auto;
    display:flex; justify-content:center; align-items:center; height:100%;
!important
}

.menu > ul { display:flex; list-style:none; margin-top: 15px; !important}
.menu > ul > li { position:relative; !important}
.menu > ul > li > a {
    display:block; padding:0 24px; color:white; text-decoration:none;
    font-weight:500; font-size:14.5px; line-height:30px;
    transition:background 0.25s;
!important
}
.menu > ul > li:hover > a { background:rgba(255,255,255,0.15); !important}

/* Dropdown */
.menu > ul > li > a + .dropdown {
    position:absolute; top:100%; left:0; min-width:190px;
    background:#2c2c2c; box-shadow:0 10px 30px rgba(0,0,0,0.45);
    border-radius:0 0 6px 6px; overflow:hidden;
    opacity:0; visibility:hidden; transform:translateY(-6px);
    transition:all 0.25s ease;
!important
}
.menu > ul > li:hover > a + .dropdown {
    opacity:1; visibility:visible; transform:translateY(0);
!important
}

.dropdown a {
    display:block; padding:6px 18px; color:#eee; font-size:13.5px;
    text-decoration:none; transition:all 0.2s;
!important
}
.dropdown a:hover {
    background:rgb(51, 102, 153); color:white; padding-left:24px; !important
}
.dropdown a::after {
    content:""; position:absolute; bottom:0; left:50%; width:0; height:1px;
    background:white; transition:width 0.3s; transform:translateX(-50%);
!important
}
.dropdown a:hover::after { width:65%; !important}

.dropdown hr { margin:2px 0; height:1px; background:#444; border:none; !important}
/* FINE Menu DROPDOWN */

a { color : black; text-decoration : none;}
a:link {	text-decoration : none;}
a:visited {	text-decoration : none;}
a:hover {	text-decoration : underline;}

/* Intestazione tabella */
.I1 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px; color : white; background-color : #0000a0; font-weight : bold}
.I1RED { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px; color : white; background-color : red; font-weight : bold}
.I2 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px; color : white; background-color : #0000a0; font-weight : bold;}
.I2RED { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px; color : white; background-color : red; font-weight : bold;}
.I2RED16 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 16px; color : white; background-color : red; font-weight : bold;}
.I2REDBIG { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 32px; color : white; background-color : red; font-weight : bold;}
.CENTERED { text-align: center;}

/* Voci tabella nero */
.NB10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : White;  font-weight : bold;}
.NB11 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : Black;  background-color : White;  font-weight : bold;}
.NB12 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 14px;  color : Black;  background-color : White;  font-weight : bold;}
.NB10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : White;}
.NG10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : Black;  background-color : #FFFFC0;  font-weight : bold;}
.NG11 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : Black;  background-color : #FFFFC0;  font-weight : bold;}
.NG10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #FFFFC0;}
.NR10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #FFCFC0;  font-weight : bold;}
.NR11 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : Black;  background-color : #FFCFC0;  font-weight : bold;}
.NR10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #FFCFC0;}
.NGR10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #DDDDDD;  font-weight : bold;}
.NGR11 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : Black;  background-color : #DDDDDD ; font-weight : bold;}
.NGR10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #DDDDDD;}
.NC11 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : Black;  background-color : #CCCCFF;  font-weight : bold;}
.NC10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #CCCCFF;  font-weight : bold;}
.NC10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #CCCCFF;}
.NV11 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : Black;  background-color : #DCF5E4; font-weight : bold;}
.NV10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #DCF5E4; font-weight : bold;}
.NV10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #DCF5E4;}
.NROSA10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : Thistle;}

.NRED10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : red;  font-weight : bold;}
.NRED10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : red;}
.NGREEN10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #33FF00;  font-weight : bold;}
.NGREEN10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #33FF00;}
.NORANGE10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #FF9900;  font-weight : bold;}
.NORANGE10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #FF9900;}
.NDARKORANGE10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #FF7F50;  font-weight : bold;}
.NDARKORANGE10N { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : Black;  background-color : #FF7F50;}

/* Altro */
.TESTO18 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 18px;  color : Black;  background-color : White;  font-weight : bold;}
.TESTO20RED { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 20px;  color : red;  background-color : White;  font-weight : bold;}
.TRASPARENTE {background-color : #424242;}
.red {color : red}
.green {color : green}
.black {color : black}
.darkorange {color : darkorange}
.grassetto {font-weight : bold;}

/* Per messaggi */
.MR { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : red;  background-color : white;  font-weight : bold; text-align : center;}
.MRL { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : red;  background-color : white;  font-weight : bold; text-align : left;}
.RM { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : white;  background-color : red;  font-weight : bold; text-align : center;}
.MN { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 13px;  color : black;  background-color : White;  font-weight : bold; text-align : center;}
.MN10 { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : black;  background-color : White;  font-weight : bold; text-align : center;}
.DEBUG { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : black;  background-color : white;  text-align : left; padding: 10px;}

/* Elementi form */
input.inputButton { background-color: #CCC; border: #666 solid 1px; color: #000; font-size: 12px; font-family : "Nunito Sans", Arial, Helvetica, sans-serif; cursor:pointer; border-radius: 10px;}
input.inputButton:hover, input.inputButton:focus { background-color: #FFCC00; }
input.inputButton:active { border-style : inset; }
select,input[type="text"],input[type="radio"] {font-family : "Nunito Sans", Arial, Helvetica, sans-serif;}

/* Ajax */
.ajaxMessage { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 15px;  color : Black;  background-color : white;  font-weight : bold; text-align : center;  width: auto; border: 1px solid Black;  padding: 10px;  height: auto;  margin: 20px;}

.bordino {width: auto; border: 2px solid Black;  padding: 2px;  height: auto;margin: 0px 5px 20px 5px;}
.highlight { font-family : "Nunito Sans", Arial, Helvetica, sans-serif; font-size : 12px;  color : White;  background-color : red;  font-weight: bold; }
.rounded-corners {border: 2px solid #333; border-radius: 10px;}

/* TIPPY: Tooltip con bordo totale 1px (come richiesto) */
.tippy-box[data-theme="thinborder"] {
    background: transparent;
    padding: 1px;                     /* bordo 1px tutto intorno */
    border-radius: 6px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.7);
    max-width: 280px;
    font-size: 12.5px;
    line-height: 1.25;
}
.tippy-box[data-theme="thinborder"] > .tippy-content {
    background: #5f4b8b;
    border-radius: 5px;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.tippy-header {
    background: #5f4b8b;
    color: white;
    font-size: 15px;
    font-weight: bold;
    padding: 6px 10px;
}
.tippy-body {
    background: #dfe5ff;
    color: #000;
    padding: 6px 10px;
}
.tippy-body strong { color:#1a0dab; font-weight:bold; }
