/* andreas09 v1.0 (Dec 10th 2005) - An open source template by Andreas Viklund - http://andreasviklund.com. Free to use for any purpose as long as the proper credits are given to the original author. */

.active{
	border:0;
}
a {
color:#000000;
font-weight:bold;
/*font-size: 1.3em;*/
line-height: 1.7em;
text-decoration:none;
}

a:hover {
color:#000000;
text-decoration:underline;
}

 select.form-control{width:auto;height:auto}
iframe{background-color:#ffffff}
/*** Main container ***/

#container {
color:#303030;
margin:0;
padding:0;
text-align:left;
display:flex;
width:100%;
}

/*** Header section ***/

#sitename {
color:#000;
/* margin:0 10px 10px; */
position:absolute;
right:0;
width:100%;
background-color: #fff;
transition: all 0.3s;
min-height:150px;
z-index:999;
font-size:0.9rem;
}
#sitename.active{
width:83.4%;
	
}

#sitename #logo_testata {
border:0px solid #b0b0b0;
}

#sitename a {
color:#428f46;
}


#sitename img,#sitenamealt img {
border:0px solid #b0b0b0;
}

#sitename h1,#sitename h2 {
font-weight:400;
letter-spacing:-2px;
margin-right:2px;
padding:0;

}

#sitename h1 {
font:100% Verdana,Tahoma,Arial,sans-serif;
font-size:1.6em;
padding-top:20px;
letter-spacing:0px;
}

#sitename h2 {
font:100% Verdana,Tahoma,Arial,sans-serif;
font-size:1.1em;
letter-spacing:0px;
}

#sitename p {
font-size:1.2em;
line-height:1.4em;
 margin:0 0 16px 0px;

}

#sitename span{	
	background-color:#428f46;
}
#sitename span a,
#sitename span i{
	color:#ffffff;
}
#sitename p i{
	color:#000000;
}

#usermenu li:hover
{
	background:#428f46;
}

#usermenu li:hover a
{
	color:#ffffff;
}

/*** Horizontal menu ***/

#mainmenu ul {
font-size:0.8rem;
margin:0;
}

#mainmenu li a,
#mainmenu li i
{
	color:#000000;
}

#mainmenu li a{
display:block;	
padding-top: 10px;	
padding-bottom: 10px;
text-transform:uppercase;
text-decoration:none;

}

#mainmenu li:hover {
background:#428f46;
text-decoration:none;
}
#mainmenu li:hover a,
#mainmenu li:hover i
{
	color:#ffffff; 
}

#mainmenu li.current a,
#mainmenu li.current i
 { color:#ffffff; }

#mainmenu li.current {
background:#428f46;
}

/*** Content wrap ***/

#wrap {
position:absolute;
right:0;	
top:20%;
/*clear:both;*/
font-size:0.9em;
/*padding:0;*/
width:100%;
transition: all 0.3s;
background-image: linear-gradient(#f0f0f024,#9b9999a8);
}
#wrap.active{
width:83.4%;
}


#main{
	min-height:calc(100vh - 260px);
}


#description{color:#428f46;margin-top:7%;margin-bottom:3%;font-size: 2.5rem }
.index-card h4{color:#428f46;}
.index-card p{color: #000000}
.index-card i{color:grey}
#mail-to{margin-top:3%; border-top: 2px solid grey; border-bottom: 2px solid grey; color: grey;font-weight: 600;font-size: 1.1rem}
#div_presentazione img{ max-width:100%;}
#div_presentazione span{font-weight:700; font-size:1.3rem;}

#waitModal{color:#555}
.modal-backdrop.show{opacity: .8;}
/*.modal-dialog{margin-top:30%}*/

#circle {
    position: relative;
    /*transform: translate(-50%,-50%);*/
    margin:auto;
	width: 80px;
    height: 80px;	
}

.loader {
    width: calc(100% - 0px);
	height: calc(100% - 0px);
	border: 8px solid #ffffff;
	border-top: 8px solid #428f46;
	border-radius: 50%;
	animation: rotate 2s linear infinite;
}
@keyframes rotate {
100% {transform: rotate(360deg);}
} 


#leftside h1,#rightside h1{
color:#505050;
font-size:1.6em;
font-weight:bold;
letter-spacing:-1px;
margin:0 0 12px;
}

#leftside h2,#rightside h2 {
font-size:1.1em;
margin:0 0 20px;
}

#leftside p,#rightside p{
font-size:0.9em;
line-height:1.4em;
margin:0 0 16px 10px;
}

.linklist {
list-style:none;
margin:0 0 16px 10px;
padding:0;
}

.linklist li {margin-bottom:0.7em;}

/*** Sidebar menu ***/

.nav {
background:#e8e9ea;
border:1px solid #b0b0b0;
color:#606060;
display:block;
margin-top:8px;
padding:5px 4px 4px 10px;
position:relative;
text-transform:uppercase;
width:140px;
}

.nav:hover,.active {
background:#f8f9fa;
/*border:1px solid #909090;*/
color:#303030;
text-decoration:none;
}

.sub {
font-size:0.8em;
letter-spacing:1px;
margin:3px 0 2px 10px;
padding:4px 2px 2px 8px;
width:125px;
}


.table-striped tbody tr.selected{background-color: #428f46 !important;color:#ffffff}

/*** Content ***/

#content,#contentalt {
background-color:#ffffff;
border:1px solid #909090;
color:#2a2a2a;
margin:auto;
min-height:400px;
min-width: 60%;
}

div#content table {width:100%}
/*div#content table tr table tr:nth-child(even){background-color: #f0e4e4}
div#content table tr table tr:nth-child(odd){background-color: #ffffff}
*/
#contentalt {margin:0 195px 0 20px;}

#content a,#content { color:#000;}
#content a:hover { background-color:#d7d7d7; text-decoration:none;}
#tabs-1,#tabs-2,#tabs-3 {
	border:solid 1px #02a91e;
}

#content h1,#content h2,#contentalt h1,#contentalt h2 {
background-color:inherit;
color:#000000;
font-size:1.8em;
font-weight:bold;
letter-spacing:-1px;
margin:0 0 15px;
padding:0;
}

#content h2,#contentalt h2 {
font-size:1.6em;
margin-bottom:10px;
}

#content h5,#contentalt h5 {
font-size:1.0em;
margin-bottom:10px;
}

#content img,#contentalt img {
border:0px solid #b0b0b0;
float:left;
padding:5px;
}

#content .comm_copy{
	text-align:center;
	font-size:0.7em;
	padding: 5px;
	text-transform: uppercase;  	
}
#content .comm_copy i{font-size:5em;}
#content .comm_copy i,span{color:#428f46;}


#table_cart td{
	text-align:center;
	
}
/*** Footer ***/

#footer {
background:#8b8b8b url(../img/footerbg.jpg) top left repeat-x;
clear:both;
color:#d0d0d0;
font-size:0.9em;
font-weight:bold;
position:relative;
margin:0;
padding:20px 0;
text-align:center;
width:100%;
}

#footer a {
color:#d0d0d0;
font-weight:bold;
}

/*** Various classes ***/

.thumbnail {
background:#fafbfc;
border:1px solid #b0b0b0;
margin:0 0 10px 10px;
padding:5px;
}

.searchform {margin:0;}

.searchbox {
background:#f0f0f0;
border:1px solid #b0b0b0;
margin:0 4px 0 0;
width:100px;
}

.UPPERsearchbox {
background:#f0f0f0;
border:1px solid #b0b0b0;
margin:0 4px 0 0;
width:100px;
text-transform: uppercase;  
}


/*css input file*/
.file_input_textbox
{	
	background:#f0f0f0;
	border:1px solid #b0b0b0;
	margin:0 4px 0 0;
	width:45px;
	/*float: left;*/
}

.file_input_div
{
	position: relative; 
	width: 45px; 
	height: 23px; 
	overflow: hidden;
}

.file_input_button
{
	width: 40px; 
	position: absolute; 
	top: 0px;
	background-color: #D4D0C8;
	color: #000000;
	border-style: solid;
	border-color: #7A7874;
	border-width: 1px;
	margin-top: 2px;
}

.file_input_hidden
{
	font-size: 40px; 
	position: absolute; 
	right: 0px; 
	top: 0px; 
	opacity: 0; 
	
	filter: alpha(opacity=0); 
	-ms-filter: "alpha(opacity=0)"; 
	-khtml-opacity: 0; 
	-moz-opacity: 0;
	
}
/*fine css input file*/

.searchfile {
background:#f0f0f0;
border:1px solid #b0b0b0;
margin:0 4px 0 0;
width:170px;
}

.searchbutton {
background:#f0f0f0;
border:1px solid #b0b0b0;
}

.clearingdiv {
clear:both;
height:30px;
width:1px;
}

.hide {display:none;}

/*** Menu a tre livelli a sinistra ***/

#pmenu {
position:fixed;
font-size:1rem;
width: 16.6%;
background-color:#272822;
height:100vh;
left:0;
top:0;
margin-left: -16.6%;
transition: all 0.3s;
overflow-y:scroll;
overflow: -moz-scrollbars-none;
-ms-overflow-style: none;
}

#pmenu .collapse
{
	background-color:#484846;
}

#pmenu .collapse [id^="c_classes_"] {
	background-color: #9d9d9d;	
}

#pmenu::-webkit-scrollbar { width: 0 !important }

#pmenu.active {
	margin-left: 0;	    
}

#pmenu a {
display:block; 
/*height:35px;*/
text-transform:uppercase;  
color: #CFD8DC;
width:100%;
padding-left:10px;
}
#pmenu ul {width:100%;padding-inline-start:0;margin:0;text-align:left;font-size:0.8rem; }

#pmenu ul li {position:relative;border:0px solid #f0f0f0;width:100%;}
#pmenu ul li:hover{background-color:#428f46}
#pmenu li:hover{background-color:#428f46}

#pmenu ul li a:visited { text-decoration:none;}
#pmenu ul li a {display:block;text-decoration:none; width:100%;padding:10px 0 10px 15px}
#pmenu li:hover > ul#a3 {display:block; position:absolute; margin-top:-22px; left:150px; text-align:left;}
#pmenu li:hover > ul#a3b {display:block; position:absolute; margin-top:-22px; left:150px; text-align:left;} 
#pmenu .bold {font-weight:bold;}

#pmenu .collapse li ul {background-color: #8b8b8b;color: #000000;} 

#categories div a
{
	color:#428f46;
}


#categories div a:hover
{
	background:#428f46;
	color: #ffffff;
}



@media (max-width: 768px) {
	#pmenu {
		font-size:0.9rem;
		width: 30%;
		margin-left: -30%;
		
	}
	#pmenu ul{
		font-size:0.7rem
	}
	
	#wrap{top:350px;}
	#wrap.active{width:70%;}
	#sitename{font-size:0.6rem;text-align:center}
	#sitename.active{width:70%;}
	.form-control,#content .btn{font-size:0.5rem!important}
	
}
@media (min-width: 768px) {
	#mainmenu .collapse:not(.show){display:flex}
}	

/*** Text format ***/

.intro {
font-size:1.1em;
font-weight:bold;
letter-spacing:-1px;
}

.small {font-size:0.8em;}
.large {font-size:1.4em;}
.center {text-align:center;}
.right {text-align:right;}

/*** End of file ***/

/* Immagini variabili gestite da foglio di stile */
.td_linguetta_media { 
/*background-image:url('img/bg-detail-middle-header.gif');*/
background-image:url('img/bg-detail-middle-header.gif');
background-repeat:no-repeat;
}

.td_linguetta_corta { 
/*background-image:url('img/bg-detail-middle-header.gif');*/
background-image:url('img/bg-detail-middle-title.gif');
background-repeat:no-repeat;
}
.div_linguetta_corta { 
color:#428f46; 
font-weight:bold; 
font-size:1.2em; 
margin:-1px -0px;
}
.a_link_skprod { 
color:#428f46;
font-weight:bold; 
font-size:1.2em;
}
.td_iniziale_marchi { 
background-image:url('img/bg-detail-middle-initial.gif');
background-repeat: no-repeat;
}
.div_iniziale_marchi { 
color:#008000; 
margin:3px 10px;
}

.btn-primary,.btn-primary:hover,.btn-primary:focus{
	background-color:#428f46;
	border-color: #428f46;
}
/* Immagini variabili gestite da foglio di stile */

/* allinemento grafica carrello */

/* Colore righe tabella */
 tr[id^="rigatab_"]{ background-color: #f0e4e4}  
 tr[id*="$"]{background-color: #ffffff}
 
table#tab_scadenze{font-size:0.8rem}


/*override datatable*/
.page-item.active .page-link {background-color: #428f46;border-color:#428f46;}
.page-link { color: #428f46 }
table#orders{font-size:0.7rem}
table#orders .subTable{font-size:0.6rem}
table#orders button{font-size:0.5rem}
table#orders thead input{width:100%;margin-top:10px}
#orders_wrapper .active a{color:#ffffff}
#orders_wrapper li:hover{background:none}
 
table#availableBigProds,
table#availableSmallProds,
button#add2cart,
button#other2cart
{
	font-size: 0.7rem;
}

.NAV{ background-color: #fff;}
.MAG{ background-color: #98e298 }
.ARR{ background-color: #fdf360 }
.ACQ{ background-color: #f8b37a}
.TUD{ background-color: #fdf360 }

table.priceBlocks {
	border: 1px black;
	max-width: max-content;
	font-size: 0.7rem;
	overflow: auto;
	white-space: nowrap;
}

table.priceBlocks tbody{
	display: flex;
}
table.priceBlocks tbody tr{
	display: flex;
	flex-direction: column;
	width:max-content;
}


table.priceBlocks td,table.priceBlocks th{
	padding: 0.5em;
	text-align: end;
	border: 1px grey;
	border-style: solid;


}

table.detail-tab tr td{
	border: 1px solid grey
}

table.detail-tab tr td:first-child{
	border: 0;
}

@media (max-width: 768px) {


	table#orders{font-size:0.45rem;}
	table#orders .subTable{font-size:0.35rem}
	table#orders td,table#orders th{padding: 3px}
	#content table{ font-size:0.45rem;}
}

button#add2cart,
button#other2cart{
	font-size: 0.8rem;
	color: #428f46;
	height: 9rem;
				}

#intSconti,#otDiscInt {
	background-color: green;
	text-align: center;
}

#intSconti>span,#otDiscInt>span{
	color: #ffffff;
	padding-left: 1em;
    padding-right: 1em;
}

.modal-header {
	flex-wrap:wrap;
}
.modal-subHeader{
	margin-top:5px;
}
.modal-header .close {
	width:10%;
	margin: 0;
	padding:0;
}
.modal-title {
	width:90%;
}

#info-req-description {
	min-width: 180px;
}

#minQtyAlert{
	font-size: 1.0rem;
}

#filterHeader {
	background-color: green;
}

#filter-list .btn-light.active{
	background-color: green;
	color:white;
}
#filter-list .btn:focus {
	outline: none;
	box-shadow: none;
}
td.net-price-cell {
	background-color: lightgreen;
	font-weight: bold;
	font-size: 1.2em;
}

td.discount-cell {
	font-weight: bold;
	font-size: 1.2em;
}

th.discount-cell {
	line-height: 2;
}

th.net-price-cell {
	line-height: 2;
}

.table-container {
	max-width:fit-content;
	min-width: 100px;
	display: none;
}

.price-header > *{
	font-weight: bold;
	color:red;
}

a.second-level {
	padding-left:10% !important;
}
a.third-level {
	padding-left:15% !important;
}

#btnGetSchedaTecnica:disabled{
	cursor:not-allowed;
}

.price_tag.placeholder {
    display: inline-block;
    min-width: 150px;
    min-height: 20px;
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: shimmer 1.5s infinite;
    color: transparent;
  }
.tab-title {
	font-size:1.2rem;
	font-weight: bold;
}
  
  @keyframes shimmer {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
  }


  #contenitore-caricamento {
	position: relative; /* necessario per posizionare overlay all'interno */
	width:100%;
  }
  
  #loading-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.8); /* semi-trasparente */
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
  }
  
  .spinner {
	width: 40px;
	height: 40px;
	border: 4px solid #ccc;
	border-top-color: #007c21;
	border-radius: 50%;
	animation: spin 1s linear infinite;
  }
  
  @keyframes spin {
	to { transform: rotate(360deg); }
  }
  
  .pack-img {
	max-width: 70px;
	max-height: 70px;
	width: auto;
	height: auto;
  }


/* Toast notifications */
.toast-notification {
    position: fixed;
    bottom: 20px;
    right: 20px;
    padding: 16px 24px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 9999;
    font-size: 16px;
    min-width: 300px;
    max-width: 500px;
    animation: slideInUp 0.3s ease-out;
    font-family: Arial, sans-serif;
}

.toast-notification.toast-success {
    background-color: #4CAF50;
    color: white;
    border-left: 5px solid #388E3C;
}

.toast-notification.toast-error {
    background-color: #f44336;
    color: white;
    border-left: 5px solid #c62828;
}

.toast-notification.toast-warning {
    background-color: #ff9800;
    color: white;
    border-left: 5px solid #f57c00;
}

.toast-notification strong {
    display: block;
    margin-bottom: 8px;
    font-size: 17px;
}

.toast-notification.fade-out {
    animation: slideOutDown 0.5s ease-in forwards;
}

/* Animazione dal basso verso l'alto (entrata) */
@keyframes slideInUp {
    from {
        transform: translateY(100px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Animazione verso il basso (uscita) */
@keyframes slideOutDown {
    from {
        transform: translateY(0);
        opacity: 1;
    }
    to {
        transform: translateY(100px);
        opacity: 0;
    }
}

/* Responsive per mobile */
@media (max-width: 768px) {
    .toast-notification {
        right: 10px;
        left: 10px;
        bottom: 10px;
        min-width: unset;
        max-width: unset;
    }
}

/* Animazioni carrello */
@keyframes flashCart {
    0%, 100% {
        background-color: transparent;
    }
    50% {
        background-color: rgba(40, 167, 69, 0.3);
    }
}

.cart-update-flash {
    animation: flashCart 0.5s ease-in-out;
    border-radius: 5px;
    padding: 5px;
    transition: all 0.3s ease;
}

.cart-plus-animation {
    pointer-events: none;
    user-select: none;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

#sendorder{
	background-color:#428f46;
}
#sendorder span{
	color:white;
}
#sendorder:hover {
	background-color:#256129;
}