/* fjalla-one-regular - latin */
@font-face {
  font-family: 'Fjalla One';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/fjalla-one-v8-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/fjalla-one-v8-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/fjalla-one-v8-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/fjalla-one-v8-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/fjalla-one-v8-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/fjalla-one-v8-latin-regular.svg#FjallaOne') format('svg'); /* Legacy iOS */
}


/* prompt-regular - latin */
@font-face {
  font-family: 'Prompt';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/prompt-v5-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/prompt-v5-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/prompt-v5-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/prompt-v5-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/prompt-v5-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/prompt-v5-latin-regular.svg#Prompt') format('svg'); /* Legacy iOS */
}

/* prompt-500 - latin */
@font-face {
  font-family: 'Prompt';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/prompt-v5-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/prompt-v5-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/prompt-v5-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/prompt-v5-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/prompt-v5-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/prompt-v5-latin-500.svg#Prompt') format('svg'); /* Legacy iOS */
}

/* baloo-2-regular - latin */
@font-face {
  font-family: 'Baloo 2';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/baloo-2-v2-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/baloo-2-v2-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/baloo-2-v2-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/baloo-2-v2-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/baloo-2-v2-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/baloo-2-v2-latin-regular.svg#Baloo2') format('svg'); /* Legacy iOS */
}

/* baloo-2-500 - latin */
@font-face {
  font-family: 'Baloo 2';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/baloo-2-v2-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/baloo-2-v2-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/baloo-2-v2-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/baloo-2-v2-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/baloo-2-v2-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/baloo-2-v2-latin-500.svg#Baloo2') format('svg'); /* Legacy iOS */
}


html {
	scroll-behavior: smooth;
}

body {
	font-family: 'Baloo 2', sans-serif;
	background-color: #FFFFFF;
	font-weight: normal;
	font-size: 16px;
	color: #2F4F4F;
}
h1 {
		font-family: 'Prompt', sans-serif;
		font-weight: 500;
		font-size: 30px;	
}

h2 {
		font-family: 'Fjalla One', sans-serif;
		font-size:19px;
		font-weight: 500;
	
}

img {
  height: auto;
  max-width:100%;
}

.font1 {
		font-family:'Fjalla One', sans-serif;	
		font-weight: 500;
		font-size:20px;
}

.font2 {
		font-family: 'Fjalla One', sans-serif;
		font-weight: 500;
		font-size: 16px;
		color: darkslategrey;
	
}
.font3 {
		font-family:'Prompt', sans-serif;
		font-weight: 400;
		font-size:19px;
		padding-bottom: 5%;
	
}

.fontc1{
	font-family: 'Prompt', sans-serif;
	font-weight: 400;
	font-size: 14px;
	color: darkslategray;
}

.fontc2{
	font-family: 'Fjalla One', sans-serif;
	font-weight: 400;
	font-size: 14px;
	color: darkslategray;
}
/* STICKY */
div.sticky {
  position: -webkit-sticky; /* Safari */
  position: sticky;
  top: 0;
  background-color: white !important;
  overflow: hidden;
}

/* LINK */
a:link, a:visited {
  color: slateblue;
  text-decoration: none;
  font-weight: normal;
  cursor: pointer;
}

/* mouse over link */
a:hover, a:active {
  color: red;
  cursor: pointer;
  font-weight: bold;
  
}

/*FONT LINK*/

.fakelnk{

	font-family: 'Prompt', sans-serif;
	font-size: 20px;
	color: blue;
}

.fakelnk:hover{
	color: red;
	cursor: pointer;
}

/*BUTTONS Y COTILLONS */
.button_small {
  background-color: white;
  font-family: 'Fjalla One', sans-serif;
  font-weight: normal;
  color: #332830 ;
  border: 2px solid #332830;
  font-size: 18px;
  padding: 4px;
  width: 120px;
  cursor: pointer;
  margin-bottom: 2%;

}

.button_small:hover {
  background-color: #332830;
  color: white;
}

.button_main {
  background-color: white; 
  font-family: 'Fjalla One', sans-serif;
  font-weight: 500;
  color: #332830 ; 
  border: 2px solid #332830;
  font-size: 32px;
  padding: 16px;
  width: 450px;
  cursor: pointer;
  margin-bottom: 5%;
}

.button_main:hover {
  background-color: #332830;
  color: white;
}


.button_preve {
  background-color: white; 
  font-family: 'Fjalla One', sans-serif;
  font-weight: 500;
  color: #332830 ; 
  border: 2px solid #332830;
  font-size: 24px;
  padding: 8px;
  width: 350px;
  cursor: pointer;
  margin-bottom: 5%;
}

.button_preve:hover {
  background-color: #332830;
  color: white;
}
.button_preve:disabled,
.button_preve[disabled]{
  background-color: #cccccc;
  border: 2px solid #cccccc;
}

/* COMPARE */

.button_compara {
        background-color: white;
        font-family: 'Fjalla One', sans-serif;
        font-size: 14px;
        color: darkslategray;
        text-align: left;
        width: 100%;
        cursor: pointer;
        border: none;
}
.button_compara:hover {
        background-color: #332830;
        color: white;
}
.button_compara:focus {
        background-color: #332830;
        color: white;
}



/* CONTAINER TEXT */

.container {
  position: relative;
  text-align: center;
  color: white;
  /*-webkit-text-stroke: 2px slateblue;*/
}

/* Bottom left text */
.text-pos {
  position: absolute;
  bottom: 10%;
  left: 10%;
  font-weight: bolder;
  font-size: 60px;
}
.accordion {
  font-family: 'Baloo 2';
  background-color: white;
  color: darkslategrey;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
  transition: 0.8s;
}

.active, .accordion:hover {
  background-color: gainsboro;
  color: lightslategrey;
}

.panel {
  padding: 0 18px;
  background-color: white;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
}

.fonttitle{
	font-family: 'Fjalla One', sans-serif;
	font-size: 20px;
	font-weight: 500;
	color: darkslategrey;
	
}


/*-- LOGIN --*/

.login{
	margin-left: 25%;
	margin-right: 25%;
	font-size: 16px;

}


/* GRID */


.grid_tab12{
        display: grid;
        grid-template-columns: 1fr 2fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;

}
.grid_tab12 > span{
        padding: 4px 4px;

}

.grid_comp{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;

}
.grid_comp > span{
	padding: 4px 4px;

}


.grid_site_9{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}
.grid_site_9 > span{
    padding: 4px 4px;
}



.grid_site_5{
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr 1fr 1fr;
}
.grid_site_5 > span{
	padding: 4px 4px;
}

.grid_site_4{
        display: grid;
        grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
}
.grid_site_4 > span{
        padding: 4px 4px;
}

.grid_site_3{
        display: grid;
        grid-template-columns: 2fr 1fr 1fr 1fr;
}
.grid_site_3 > span{
        padding: 4px 4px;
}

.grid_site_2{
        display: grid;
        grid-template-columns: 2fr 1fr 1fr;
}
.grid_site_2 > span{
        padding: 4px 4px;
}

.grid_site_1{
        display: grid;
        grid-template-columns: 2fr 1fr;
}
.grid_site_1 > span{
        padding: 4px 4px;
}

.grid_prod{
        display: grid;
        grid-template-columns: 1fr 1fr 3fr;
}
.grid_prod > span{
        padding: 2px 2px;
}

.grid_policy{
        display: grid;
        grid-template-columns: 1fr 3fr;
}
.grid_policy > span{
        padding: 4px 4px;
}


/*---INPUT--*/
input, select, textarea {
	font-size: 16px;
}
input:focus, select:focus{
	background-color: lavender;
}
input[type=text]{
  width: 30%;
  padding: 9px;
  border: 1px solid gainsboro;
  resize: vertical;
  cursor: pointer;
  font-family: 'Baloo 2', sans-serif;
  
}
input[type=password]{
  width: 30%;
  padding: 9px;
  border: 1px solid gainsboro;
  resize: vertical;
  cursor: pointer;
  font-family: 'Baloo 2', sans-serif;
}
input[type=date]{
  width: 30%;
  padding: 9px;
  border: 1px solid gainsboro;
  resize: vertical;
  cursor: pointer;
  font-family: 'Baloo 2', sans-serif;
}
input[type=number]{
  width: 30%;
  padding: 9px;
  border: 1px solid gainsboro;
  resize: vertical;
  cursor: pointer;
  font-family: 'Baloo 2', sans-serif;
}
input[type=email]{
  width: 30%;
  padding: 9px;
  border: 1px solid gainsboro;
  resize: vertical;
  cursor: pointer;
  font-family: 'Baloo 2', sans-serif;
}
select {
  width: 30%;
  padding: 9px;
  border: 1px solid gainsboro;
  resize: vertical;
  cursor: pointer;
  font-family: 'Baloo 2', sans-serif;	
	
}

input, select, textarea{

    -ms-box-sizing:content-box;
    -moz-box-sizing:content-box;
    box-sizing:content-box;
    -webkit-box-sizing:content-box
}


.inputbox{
	font-family: 'Fjalla One', sans-serif;
}



/* TAB COMPARATORE */
.collapsible {
  background-color: #ffffff;
  color: darkslategray;
  cursor: pointer;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
}

.active, .collapsible:hover {
  background-color: steelblue;
  color: white;
}

.collapsible:after {
  content: '\25BC';
  color: white;
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

.active:after {
  content: "\25B2";
}

.content {
  padding: 0 18px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
  background-color: #f1f1f1;
}

.button_acq {
  background-color: white;
  font-family: 'Fjalla One', sans-serif;
  font-weight: 300;
  color: #332830 ;
  border: 2px solid #332830;
  font-size: 18px;
  padding: 8px;
  width: 100px;
  cursor: pointer;
  margin-bottom: 5%;
}


.button_acq:hover {
  background-color: #332830;
  color: white;
}

.allowed{
	color: seagreen;
}
.denied{
	color: orangered;
}
.fonttab{
	font-family 'Prompt',sans-serif;
	font-size: 13px;
}
.compfont{
	font-size: 14px;
}


/* Style the tab content */
.tabcontent {
  display: none;
  padding: 6px 12px;
  -webkit-animation: fadeEffect 1s;
  animation: fadeEffect 1s;
}

/* Fade in tabs */
@-webkit-keyframes fadeEffect {
  from {opacity: 0;}
  to {opacity: 1;}
}

@keyframes fadeEffect {
  from {opacity: 0;}
  to {opacity: 1;}
}


/* END COMPARATORE */
/* SLIDER */

.slidecontainer {
  width: 50%;
}

.slider {
  -webkit-appearance: none;
  width: 100%;
  height: 15px;
  border-radius: 5px;
  background: silver;
  outline: none;
  opacity: 0.75;
  -webkit-transition: .2s;
  transition: opacity .2s;
}

.slider:hover {
  opacity: 1;
}

.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: darkslateblue;
  cursor: pointer;
}

.slider::-moz-range-thumb {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: darkslateblue;
  cursor: pointer;
}

/*MARGINS & CENTERS*/

.compad {
  	position: -webkit-sticky; /* Safari */
  	position: sticky;
  	top: 0;
  	background-color: white !important;
	overflow: hidden;

	padding: 12px;
}

.preveform{
		margin-left: 20%;
}
.labelform{
		font-size: 16px;
		font-weight: normal;
		line-height: 32px;
}

.lmargin10{
		margin-left: 10%;
}
.margin10{
		margin-left: 10%;
		margin-right: 10%;

}
.margin5{
		margin-left: 5%;
		margin-right: 5%;

}
.centerx{
		text-align: center;
}

.lineh32{
		line-height: 36px;
	
}
.vspacer{
		margin-bottom: 5%;
		margin-top: 5%
}
.pad10{
		padding-top: 2%;
		display: table;
	
}

.pad5{
		display: table-cell;
	
}

.pstyle {
		padding: 5%;
		text-align: justify;
}

.silverline{
	margin-left: 10%;
	margin-right: 10%;
	border-top: 1px silver solid;
	padding-top:3%;
	padding-bottom: 3%;	
}
.silverline_fixed{
	margin-left: 10%;
	margin-right: 10%;
	border-top: 1px silver solid;
	padding-top: 16%;
	padding-bottom: 16px;
}
.to_upper{
		text-transform: uppercase;
	
}

/*--------------------------------------------*/


.tpol {
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}

.tpol td, .tpol th { 
  padding: 8px;
}

.tpol tr:hover {background-color: #ddd;}

.tpol th {
  padding-top: 8px;
  padding-bottom: 8px;
  text-align: center;
  background-color: #154A98;
  color: white;
  font-family: lucida console;
}
.tpol td {
  padding-top: 8px;
  padding-bottom: 8px;
  color: darkslategray;
  font-family: courier new;
}

.tpol td[align="right"] {
    text-align: right;
    color: blue;
}

.tpol td[align="left"] {
    text-align: left;
    color: red;
}
/*--------------------------------------------*/


/* CHECKBOX */
/* The kontainer */
.kontainer {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 18px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.kontainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #eee;
}

/* On mouse-over, add a grey background color */
.kontainer:hover input ~ .checkmark {
  background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.kontainer input:checked ~ .checkmark {
  background-color: #2196F3;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.kontainer input:checked ~ .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.kontainer .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
/* END CHECKBOX */

/* BTN REBAJAS */
.btn {

	font-family: 'Fjalla One';
 	border: none;
  	outline: none;
  	padding: 12px 16px;
  	width: 200px;
  	background-color: white;
  	cursor: pointer;
  	font-size: 28px;
}

.active, .btn:hover {
  	background-color: #332830;
  	color: white;
}

/*DROPDOWN */

.dropbtn {
  background-color: #332830;
  color: white;
  padding: 16px;
  font-size: 16px;
  border: none;
}

.dropdown {
  position: relative;
  display: inline-block;
}


.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f1f1f1;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
}


.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

.dropdown-content a:hover {background-color: silver;}

.dropdown:hover .dropdown-content {display: block;}

.dropdown:hover .dropbtn {background-color: darkslategrey; cursor: pointer;}

/*OVERLAY*/
#overlay {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.5);
  z-index: 2;
  cursor: pointer;
}

#text{
  position: absolute;
  top: 12%;
  left: 50%;
  font-size: 50px;
  color: white;
  transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
}


/* MENU */

.topnav {
  overflow: hidden;
  background-color: white;
}

.topnav a {
  float: right;
  display: block;
  color:  #332830;
  text-align: center;
  padding: 14px 12px;
  text-decoration: none;
  font-size: 16px;
}
.topnav a:hover {
  background-color: #332830;
  color: white;
}

.topnav a.active {
  background-color: white;
  color: darkslategrey;
}

.topnav .icon {
  display: none;
}


.topnav a:hover{
  background-color: #555;
  color: white;
}

/* MODAL */
/* SLOT SX AREA */
#slot_warning {
  margin-top: 5px;
  font-size: 12px;
  color: red;
}

#slot_suggestions span {
  cursor: pointer;
  margin-right: 10px;
  text-decoration: underline;
  color: green;
}

#slot_suggestions {
  margin-top: 3px;
  font-size: 12px;
}


/* MODAL SX NOTE ZOOM */
.note-zoom-modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0; top: 0;
  width: 100%; height: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.5);
  padding-top: 80px;
}

.note-zoom-modal-content {
  background-color: #fff;
  margin: auto;
  padding: 20px;
  border-radius: 8px;
  width: 60%;
  font-size: 14px;
  line-height: 1.6;
  box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}

.note-zoom-close {
  color: #666;
  float: right;
  font-size: 22px;
  font-weight: bold;
  cursor: pointer;
}

.note-zoom-close:hover {
  color: #000;
}


/* MODAL */

.modal {
  display: block; 
  position: fixed;
  z-index: 1; 
  padding-top: 1px; 
  left: 0;
  top: 0;
  width: 100%; 
  height: 100%; 
  overflow: auto; 
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.9);
}

.modal-content {
  background-color: #fefefe;
  margin: auto;
  padding: 20px;
  border: 1px solid #888;
  width: 90%;
}

/*START STICKY*/

/* Fix the sticky table header */
.table-container {
    max-height: 500px; /* Adjust based on needs */
    overflow-y: auto; /* Keep scrollbar */
    position: relative;
    background-color: white;
    border: none; /* Removes unwanted borders */
}

/* Ensure the table is structured properly */
.plock {
    width: 100%;
    border: none; /* Removes table border */
    border-collapse: collapse;
}

/* Sticky Table Header */
.plock thead {
    position: sticky;
    top: 0px; /* Adjust based on menu height */
    background-color: #002F6C; /* Matches design */
    color: white;
    z-index: 2; /* Ensures it stays above the table content */
    font-family: "Courier New", Courier, monospace;
}

/* Table Header Cells */
.plock th {
    padding: 10px;
    text-align: left;
    border: none;
    font-family: "Courier New", Courier, monospace;
}

/* Table Body */
.plock td {
    padding: 10px;
    border-bottom: 1px solid #ddd;
    font-family: "Courier New", Courier, monospace;
    border: none; /* Ensure no extra borders */
}

/* Fix Sticky Menu */
.section.sticky {
    position: sticky;
    top: 0;
    z-index: 10; /* Keeps it above the table */
    background-color: white;
}

/* Prevent the table from floating over other elements */
.section {
    position: relative;
    z-index: 1; /* Ensure it's below sticky header */
}

/* Fix Modal Overlapping */
.modal {
    z-index: 1000; /* Highest so it stays on top */
}


/*END */
/*INFOBOX*/

/*INFOBOX*/

/*CLASS FLEXY -- SX_OPEN US */
/* EXPERIMENTAL CODE */

.newrow {
  display: flex;
  gap: 2%;
  margin: 10px 0;
}

[class*="col-"] {
    flex: 1;
}
.button-wrapper {
  display: flex;
  justify-content: center; 
  gap: 40px; 
  flex-wrap: wrap;
  margin: 20px 0;
}
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}

\@media (max-width: 600px) {
  .newrow {
    flex-direction: column;
  }
}


/*TABLE AREA SX*/

.table-full {
    width: 100%;
    border-collapse: collapse;
    background: white;
}

.table-full thead {
    background: steelblue;
    color: white;
}

.table-full th,
.table-full td {
    padding: 10px;
    font-size: 13px;
    text-align: left; /* default */
}

/* Alignment helpers */
.text-left    { text-align: left; }
.text-center  { text-align: center; }
.text-right   { text-align: right; }
.text-justify { text-align: justify; }

/* Hover + striping */
.table-full tbody tr {
    background: white;
    transition: background 0.2s;
}
.table-full tbody tr:nth-child(even) {
    background: #f2f2f2;
}
.table-full tbody tr:hover {
    background: #e9ecef;
}

/* Responsive tweaks */
@media (max-width: 800px) {
    .table-full th,
    .table-full td {
        padding: 8px;
        font-size: 12px;
    }
}

.clickable-row {
  cursor: pointer;
  transition: background-color 0.3s ease-in-out;
}
.clickable-row:hover {
  background-color:  #AFE1AF!important;
}
/* MODIFICA ANAG START */

.sx-form-two-column {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}

.sx-form-grid {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 10px 20px;
  align-items: center;
}

.sx-form-grid label {
  text-align: right;
  font-weight: 500;
}

.sx-form-grid input,
.sx-form-grid select,
.sx-form-grid textarea {
  width: 100%;
  padding: 6px;
  font-size: 13px;
  box-sizing: border-box;
}
/* MODIFICA END */



/*END */
/*SX-FORM 10% */
.sx-form-grid {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 10px 20px;
  align-items: center;
}

.sx-form-grid label {
  font-weight: 500;
  text-align: right;
}

.sx-form-grid input,
.sx-form-grid select,
.sx-form-grid textarea {
  width: 100%;
  padding: 5px;
  font-size: 13px;
  box-sizing: border-box;
}

.sx-wrapper {
  margin: 0 10%;
}

.sx-text-left {
  text-align: left;
}

/*MODAL POPUP SX*/

.descrizione-preview {
  cursor: zoom-in;
  color: #0056a0;
  text-decoration: underline dotted;
}
.descrizione-modal {
  display: none;
  position: fixed;
  z-index: 1000;
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.4);
}

.descrizione-modal-content {
  background-color: #fff;
  margin: auto;
  padding: 20px 30px;
  border: 1px solid #888;
  width: 60%;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
  font-size: 15px;
  line-height: 1.5;
}

.descrizione-close {
  color: #aaa;
  float: right;
  font-size: 24px;
  font-weight: bold;
}

.descrizione-close:hover,
.descrizione-close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}


.sx-label-block {
  display: inline-block;
  background-color: #000;
  color: #fff;
  padding: 2px 8px;
  font-weight: bold;
  border-radius: 4px;
}

/*END*/

/*UPLOAD REFACTOR */
.hidden {
  display: none;
}

.upload-box {
  border: 2px dashed #ccc;
  padding: 30px;
  text-align: center;
  font-size: 15px;
  color: #666;
  background: #f9f9f9;
  cursor: pointer;
  transition: background 0.3s;
}

.upload-box:hover {
  background: #f1f1f1;
}

.upload-filename {
  margin: 10px 0;
  font-style: italic;
  color: #555;
}

/* Tighten textarea */
.upload-description textarea {
  width: 100%;
  max-width: 600px;
  padding: 1%;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
}



.upload-progress {
  width: 100%;
  max-width: 600px;
  background: #eee;
  height: 10px;
  margin-top: 20px;
}

#progressFill {
  height: 10px;
  width: 0%;
  background: steelblue;
  transition: width 0.3s ease;
}

.upload-status {
  margin-top: 15px;
  font-weight: bold;
  color: #333;
}

.upload-list {
  margin-top: 20px;
}

.upload-box,
.upload-filename,
.upload-description,
.upload-progress,
.upload-status,
.upload-list,
.button_preve {
  margin-top: 1%;
}

/* Optional spacing tweak for header block */
.sx-header-bar + .upload-box {
  margin-top: 3%;
}



/*END */


/*TOGGLE NOTE ON SX AREA*/

/* TABLE AREA SX */

.sx-table {
  width: 100%;
  border-collapse: collapse;
  background: white;
}

.sx-table th,
.sx-table td {
  padding: 10px;
  font-size: 13px;
  text-align: left;
  vertical-align: top;
}

.sx-table thead {
  background: steelblue;
  color: white;
}

.sx-text-center { text-align: center; }
.sx-text-left   { text-align: left; }
.sx-text-right  { text-align: right; }

/* Hover-expanding note */
.sx-note-cell {
  max-width: 200px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  transition: all 0.3s ease-in-out;
  cursor: zoom-in;
}

.sx-note-cell:hover {
  white-space: normal;
  max-width: 100%;
  background: #ffffe0;
  padding: 6px;
  z-index: 1;
  cursor: zoom-out;
}

/* Responsive */
@media (max-width: 768px) {
  .sx-table td,
  .sx-table th {
    display: block;
    width: 100% !important;
  }

  .sx-table tr {
    display: block;
    margin-bottom: 20px;
  }

  .sx-table input,
  .sx-table select,
  .sx-table textarea {
    width: 100% !important;
  }
}

.sx-pager {
  display: inline-block;
  width: 180px;           /* Fixed equal width */
  text-align: center;
  font-size: 13px;
  padding: 6px 10px;
  margin: 0 5px;
}

.sx-header {
  background-color: #339980;
  color: white;
  padding: 4px;
  margin: 0;
}

.sx-header-bar {
  background-color: #426b8c;
  color: white;
  font-weight: bold;
  padding: 8px 16px;
  font-size: 17px;
  text-align: center;
}

.sx-subheader-bar {
  background-color: #426b8c;  /* darker bluish tone */
  color: white;
  font-weight: bold;
  padding: 8px 16px;
  font-size: 16px;
  text-align: center;
  text-transform: uppercase;
}


/*END */



.close {
  color: #aaaaaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}


.close2 {
  color: #aaaaaa;
  font-size: 28px;
  font-weight: bold;
}

.close2:hover,
.close2:focus {
  color: green;
  text-decoration: none;
  cursor: pointer;
}

.close3 {
  color: black;
  font-weight: normal;
}

.close3:hover,
.close3:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

/*UPLOAD */

.upload-box {
    border: 2px dashed #25383C;
    padding: 30px;
    width: 30%;
    text-align: center;
    cursor: pointer;
    transition: 0.3s;
    margin: 0 auto 10px auto; /* <-- fixed: horizontally center */
}

#progressBar {
    width: 30%;
    height: 20px;
    background: #eee;
    border: 1px solid #ccc;
    margin: 15px auto; /* <-- fixed: horizontally center */
}

.upload-box.dragover {
    background-color: #eef;
    border-color: #66f;
}

#progressFill {
    height: 100%;
    width: 0%;
    background: #3a9;
    transition: width 0.3s;
}
#uploaded-files {
    margin-top: 20px;
    /*font-family: sans-serif*/;
}

/* STATUS SX */

/* STATUS SX */
.status {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-size: 11px;  /* Ridotto a 11px */
  color: inherit;
  cursor: pointer;
}

.status::after {
  content: attr(data-tooltip);
  white-space: normal;
  position: absolute;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  background: #000;  /* Sfondo nero */
  color: #fff;       /* Testo bianco per contrasto */
  font-size: 11px;   /* Font size ridotto */
  font-family: "Segoe UI", sans-serif;
  padding: 6px 10px;
  border-radius: 6px;
  border: 2px solid #ffd700;  /* Bordo oro 2px */
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 1000;
  max-width: 320px;
  line-height: 1.4;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.status:hover::after {
  opacity: 1;
}

.td-center {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
/* STATUS SX */




/* STATUS SX */

/* MEDIA*/

@media screen and (max-width: 600px) {
  .topnav a:not(:first-child){
    display: none;
  }
  .topnav a.icon {
    float: right;
    display: block;
  }
}

@media screen and (max-width: 600px) {
  .topnav.responsive {position: relative;}
  .topnav.responsive .icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .topnav.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
}
/* END MENU */

.ship{
		display: none;
		margin: 10%;
}

/*ALERT*/

#loginfail {
	-moz-animation: cssAnimation 0s ease-in 2s forwards;
    /* Firefox */
    	-webkit-animation: cssAnimation 0s ease-in 2s forwards;
    /* Safari and Chrome */
    	-o-animation: cssAnimation 0s ease-in 2s forwards;
    /* Opera */
    	animation: cssAnimation 0s ease-in 2s forwards;
    	-webkit-animation-fill-mode: forwards;
   	animation-fill-mode: forwards;
}
@keyframes cssAnimation {
    to {
        width:0;
        height:0;
        overflow:hidden;
    }
}

@-webkit-keyframes cssAnimation {
    to {
        width:0;
        height:0;
        visibility:hidden;
    }
}

/*END ALERT*/

@media screen and (max-width: 768px) {

  input[type=date], input[type=text], input[type=password], input[type=email], select { width: 50%;}

  #logo {text-align: center;}
  .ship {margin: 35%;}
  .topnav a:not(:first-child) {display: none;}
  .topnav a.icon {
    float: right;
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .topnav.responsive {position: relative;}
  .topnav.responsive .icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .topnav.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
}




/* END MENU */

@media only screen and (max-width: 1151px) {

  	.button_main { font-size: 20px; width: 260px; }
  	.button_preve { font-size: 20px; width: 260px; }
	.fontc1 {font-size: 13px}
  	.fontc2 {font-size: 13px}
  	.compad {padding: 70px}
      	.allowed{ font-size: 12px;}
        .denied { font-size: 12px;}
        .compfont{ font-size: 11px;}
        .button_acq{font-size: 14px; width: 60px;}
	
	img.responsive { width: 140px; height: auto; }
}
@media only screen and (max-width: 768px) {

	 body {font-size: 15px;}
	.font1 {font-size: 15px;}
	.text-pos { font-size: 22px; }
	.pstyle { padding: 0}
	.fontc1 {font-size: 12px}
	.fontc2 {font-size: 12px}
	.fonttab{font-size: 12px}
	.compad {padding: 80px}
	img.responsive { width: 100px; height: auto; }
}


/* --- larghezza uniforme per area toggle + pulsanti --- */
.sx-toggles,
#timeline,
#historyTable,
#doc-section {
  max-width: 1200px;              /* scegli 1100–1280 a piacere */
  width: 100%;
  margin-left: auto !important;   /* override dei margin: 0 10% inline */
  margin-right: auto !important;
  padding-inline: 16px;
  box-sizing: border-box;
  clear: both;                    /* evita sovrapposizioni */
}

/* --- stile pannello uniforme (bordo, fondo, padding) --- */
#timeline,
#historyTable,
#doc-section {
  border: 1px solid silver;      /* colore bordo: regola a gusto */
  border-radius: 10px;
  padding: 16px 18px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.05);
}

/* tabelle a tutta larghezza e scroll orizzontale se servisse */
#timeline table,
#historyTable table,
#doc-section table {
  width: 100%;
}

#historyTable,
#timeline,
#doc-section {
  overflow-x: auto;
}

/* spaziatura coerente dei bottoni toggle */
.sx-toggles > div { margin: 12px 0; }

