/** * LAYOUT SITO *//** * Struttura contenitore di tutto il sito */
body{background-image: url("imgs/sfondo_main.png");
font-family:Georgia; font-size:12px; color:white; margin: 5 5 5 5px;text-decoration:none;
overflow:auto !important;}
body.transparent_body{background-color:transparent; background-image:none;}
div, ul, li{margin:auto; padding:0;
}.blank{clear:both;}

/** *table,text */ 
div.form_field table{
	margin:5px auto;
}

/* Scheda laterale: highlight CLAN E GILDE quando ci sono bonus da selezionare */
.clan-gilde-label{
  position: relative;
  display: inline-block;
}
.clan-gilde-pending{
  animation: clanGildePulse 1.2s ease-in-out infinite;
}
.clan-gilde-pending[data-tooltip]:hover::after{
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-50%);
  margin-top: 6px;
  padding: 4px 6px;
  background-color: #111;
  color: #fff;
  border: 1px solid #444;
  border-radius: 4px;
  max-width: calc(100vw - 10px);
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  text-align: center;
  z-index: 9999;
}
@keyframes clanGildePulse{
  0%, 100% { color: #ffffff; }
  50% { color: #ff3333; }
}
textarea{
	height: 100px;
	width:80%;
	margin-top: 10px;
	margin-bottom:10px;
	font-family: Georgia, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", serif;
}
textarea.form_textarea2{
	height: 100px;
	width:90%;
	margin-top: 20px;
	margin-bottom:20px;
}
select{
width:200px;
	margin-bottom:10px;
}
select.html-font-select{
	width:auto;
	min-width:118px;
	max-width:180px;
	height:22px;
	margin:1px;
	margin-bottom:0;
	padding:1px 4px;
	font-size:11px;
	vertical-align:top;
}
div.html-toolbar-wrap{
	width:80%;
	max-width:100%;
	margin:10px auto 6px auto;
	position:relative;
}
div.html-toolbar-main{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:4px;
	margin-bottom:6px;
}
div.html-toolbar-main img.button{
	margin:1px;
	cursor:pointer;
}
div.html-toolbar-quick{
	position:relative;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:6px;
}
button.html-quick-button{
	width:auto;
	min-width:0;
	margin:0;
	padding:4px 10px;
	border:1px solid #7a6540;
	border-radius:999px;
	background:rgba(28, 18, 11, 0.95);
	color:#f0ddba;
	font-family:Georgia, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", serif;
	font-size:11px;
	line-height:1.3;
	cursor:pointer;
}
button.html-quick-button:hover,
button.html-quick-button:focus{
	background:#3a2515;
	color:#fff4dd;
	outline:none;
}
button.html-emoji-tab-active,
button.html-media-tab-active{
	background:#6b452c;
	color:#fff7e5;
}
button.html-quick-button:disabled{
	opacity:0.55;
	cursor:default;
}
button.html-emoji-button{
	padding:4px 0;
	min-width:36px;
	font-size:18px;
	line-height:1;
}
button.html-media-card{
	width:100%;
	padding:6px;
	border-radius:10px;
	text-align:left;
}
button.html-media-card img{
	display:block;
	width:100%;
	height:110px;
	object-fit:cover;
	border-radius:8px;
	background:#000;
}
span.html-media-card__label{
	display:block;
	margin-top:6px;
	font-size:10px;
	line-height:1.3;
	color:#f3e7ca;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
div.html-emoji-picker,
div.html-media-picker{
	display:none;
	position:absolute;
	left:0;
	top:calc(100% + 8px);
	z-index:1200;
	width:430px;
	max-width:92vw;
	padding:10px;
	border:1px solid #7a6540;
	border-radius:12px;
	background:#120b07;
	box-shadow:0 12px 28px rgba(0, 0, 0, 0.45);
	box-sizing:border-box;
}
div.html-emoji-panel,
div.html-media-panel{
	display:flex;
	flex-direction:column;
	gap:8px;
}
div.html-emoji-most-wrap,
div.html-emoji-most,
div.html-emoji-head,
div.html-emoji-tabs,
div.html-media-tabs,
div.html-media-search-row,
div.html-media-footer{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:6px;
}
div.html-media-footer{
	justify-content:space-between;
}
span.html-emoji-most-label{
	display:block;
	width:100%;
	font-size:11px;
	font-weight:bold;
	color:#f3dfbb;
}
div.html-emoji-most{
	min-height:34px;
}
div.html-emoji-extra{
	display:none;
}
input.html-emoji-search,
input.html-media-search{
	width:100% !important;
	flex:1 1 180px;
	min-width:0;
	margin:0;
	padding:6px 8px;
	border:1px solid #6e5735;
	background:#21160f;
	color:#fff3d8;
	font-family:Georgia, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", serif;
	box-sizing:border-box;
}
div.html-emoji-grid{
	display:grid;
	grid-template-columns:repeat(8, minmax(0, 1fr));
	gap:4px;
}
div.html-media-grid{
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:8px;
	max-height:320px;
	overflow-y:auto;
	padding-right:2px;
}
div.html-emoji-empty,
div.html-media-status{
	font-size:11px;
	line-height:1.4;
	color:#f1dfbc;
}
div.html-media-status.is-error{
	color:#ffb0b0;
}
a.html-media-attribution{
	display:inline-flex;
	align-items:center;
	gap:4px;
	color:#f1dfbc;
	font-size:10px;
	text-decoration:none;
}
a.html-media-attribution:hover,
a.html-media-attribution:focus{
	color:#fff4dd;
	text-decoration:underline;
}
.gdrcd-rich-media{
	display:block;
	max-width:100%;
	width:auto;
	max-height:340px;
	margin:8px 0;
	border:1px solid rgba(255, 245, 221, 0.18);
	border-radius:10px;
	background:#000;
}
@media screen and (max-width: 700px){
	div.html-toolbar-wrap{
		width:90%;
	}
	div.html-emoji-picker,
	div.html-media-picker{
		width:100%;
		max-width:100%;
	}
	div.html-emoji-grid{
		grid-template-columns:repeat(6, minmax(0, 1fr));
	}
}
select[type=stats]{
width:100%;
	margin-bottom:10px;
}
select[type=gestione]{
width:350px;
	margin-bottom:10px;    
}
input{
width:40%;
	margin-bottom:5px;
}
input[type=text]{
width:50%;
	margin-bottom:5px;
}
input.genere_altro_input{
  width:200px;
}

/* Layout campi Genere/Altro (iscrizione e scheda_gst) */
.clg-genere-row{
  display:flex;
  gap:4px;
  align-items:flex-end;
  flex-wrap:wrap;
  margin:0;
}
.clg-genere-row-left{
  justify-content:flex-start;
}
.clg-genere-row-center{
  justify-content:center;
}
.clg-genere-col{
  display:flex;
  flex-direction:column;
  margin:0;
}
.clg-genere-col-left{
  align-items:flex-start;
}
.clg-genere-col-center{
  align-items:center;
}
.clg-genere-label{
  margin:0 !important;
}
.clg-genere-label-center{
  text-align:center;
  width:100%;
}
.clg-genere-field{
  margin:0 !important;
}
.clg-genere-control{
  width:180px !important;
  margin-bottom:0 !important;
}

/* Renderer monetario condiviso */
.gdrcd-money{
	display:inline-flex;
	align-items:center;
	flex-wrap:nowrap;
	gap:3px;
	max-width:100%;
	line-height:1;
	vertical-align:middle;
	white-space:nowrap;
}

.gdrcd-money-range{
	display:inline-flex;
	align-items:center;
	flex-wrap:nowrap;
	gap:3px;
	max-width:100%;
	line-height:1;
	vertical-align:middle;
	white-space:nowrap;
}

.gdrcd-money-range__sep{
	display:inline-block;
	flex:0 0 auto;
	line-height:1;
}

.gdrcd-money__part{
	display:inline-flex;
	align-items:center;
	flex:0 0 auto;
	gap:1px;
	line-height:1;
	white-space:nowrap;
}

.gdrcd-money__value{
	display:inline-block;
	font-weight:700;
	line-height:1;
}

.gdrcd-money__value--platino{
	color:#e5e4e2;
}

.gdrcd-money__value--oro{
	color:#e4b849;
}

.gdrcd-money__value--argento{
	color:#b3b3b3;
}

.gdrcd-money__icon{
	display:block;
	flex:0 0 auto;
	width:0.82em;
	height:0.82em;
	object-fit:contain;
}

input[type=checkbox]{
width:auto;	
	margin-bottom:10px;
}
input[type=submit]{
	width:auto;
	margin:5px 0 15px 0;
}
input[type=stats]{
	width:120px;
	margin-bottom:5px;
}
div input[type=numero]{
	width:50px;
	margin-bottom:5px;
}

div.form_label{
	font-size:12px;
	font-weight:bolder;

}


/** * Stile dei messaggi d'avviso dell'engine */ 
div.warning, div.error{
	font-size:12px;
	text-align:center;
	margin:15px;
	font-weight:bolder;
	padding:10px;
	border:solid 1px #800;
	color:WHITE;
	background-image: url(../../imgs/DOC.png);
}

div.link_back{
	text-align:center; 
    padding:2px;
    border:solid 1px grey;
	-moz-border-radius:8px;		/* Bordi arrotondati */
	-webkit-border-radius:8px;
	-khtml-border-radius: 8px;
	border-radius:8px;
	background-image: url(../../imgs/DOC.png);
}

/** * Logout */
div.logout_box{
	padding:10px;
	text-align:center; 
	color: black;
	border:solid 1px #333;
	-moz-border-radius:5px;		/* Bordi arrotondati */
	-webkit-border-radius:5px;
	-khtml-border-radius: 5px;
	border-radius:5px;
}

div.logout_box a{
	text-decoration:underline;
	font-style:italic;
	color: black;
}


/** * Titoli delle sezioni
*/
div.innertube h2, div.output h2, div.page_title h2, div.titolo_mappa h2{
    font-size: 14px;
	font-weight:bolder;
	border-bottom: 1px solid #D9D9D9;
    padding-bottom: 4px;
    margin-top:3px;
}

div.titolo_mappa h2{
    font-size: 14px;
	font-weight:bolder;
	border-bottom: 1px solid #D9D9D9;
    padding-bottom: 4px;
    margin-top:3px;
	color: black;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-wrap:nowrap;
	column-gap: 6px;
	row-gap: 4px;
	text-align:center;
	white-space: nowrap;
}

div.titolo_mappa div.titolo_mappa_titleline{
	font-size: 14px;
	font-weight:bolder;
	color: black;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-wrap:nowrap;
	column-gap: 6px;
	row-gap: 4px;
	text-align:center;
	line-height: 1.25;
	margin: 0;
	white-space: nowrap;
}

div.titolo_mappa h2 a{
	display:inline-flex;
	align-items:center;
}

div.titolo_mappa h2 a img{
	display:block;
}

div.titolo_mappa h2 span.mappa-title-meteo,
div.titolo_mappa div.titolo_mappa_titleline span.mappa-title-meteo{
	display:inline-flex;
	align-items:center;
	gap: 4px;
	line-height: 1;
	font-size:11px;
	font-weight:normal;
	vertical-align:middle;
	white-space: nowrap;
}

div.titolo_mappa h2 span.mappa-title-meteo img,
div.titolo_mappa div.titolo_mappa_titleline span.mappa-title-meteo img{
	display:block;
	flex: 0 0 auto;
}

div.titolo_mappa h2 span.mappa-title-moons,
div.titolo_mappa div.titolo_mappa_titleline span.mappa-title-moons{
	display:inline-flex;
	align-items:center;
	gap: 4px;
	line-height: 1;
	white-space: nowrap;
}

div.titolo_mappa h2 span.mappa-title-moons img,
div.titolo_mappa div.titolo_mappa_titleline span.mappa-title-moons img{
	display:block;
}

div.titolo_mappa h2 span.mappa-title-info,
div.titolo_mappa div.titolo_mappa_titleline span.mappa-title-info{
	display:inline-flex;
	align-items:center;
	line-height:1;
	white-space:nowrap;
}

div.titolo_mappa h2 span.mappa-title-info a,
div.titolo_mappa div.titolo_mappa_titleline span.mappa-title-info a{
	display:inline-flex;
	align-items:center;
}

div.titolo_mappa h2 span.mappa-title-info img.title-info-icon,
div.titolo_mappa div.titolo_mappa_titleline span.mappa-title-info img.title-info-icon{
	display:block;
	width:auto;
	height:auto;
	max-width:none;
	flex: 0 0 auto;
	vertical-align:middle;
}

div.titolo_mappa.titolo_mappa_slider{
	display:flex;
	align-items:center;
	justify-content:center;
	gap: 0;
	width: max-content;
	max-width: none;
	padding: 5px 10px 5px 12px;
	border: 1px solid #c5ac84;
	border-radius: 16px;
	background: linear-gradient(180deg, rgba(251, 246, 236, 0.98) 0%, rgba(236, 224, 201, 0.96) 100%);
	box-shadow: 0 2px 6px rgba(58, 37, 16, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.9);
	margin: 0 auto 2px auto;
}

div.pagina_mappaclick div.titolo_mappa.titolo_mappa_slider{
	margin-top: 4px;
}

div.titolo_mappa_slider_view{
	display:grid;
	align-items:center;
	flex: 0 0 auto;
	width: auto;
	max-width: none;
	min-height: 24px;
	padding: 0 2px 0 0;
	box-sizing: border-box;
	overflow: visible;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.75);
}

div.titolo_mappa_slider_track{
	display:grid;
	align-items:center;
	width:100%;
}

div.titolo_mappa_slide{
	display:flex;
	align-items:center;
	justify-content:center;
	grid-area: 1 / 1;
	min-width:100%;
	width:100%;
	box-sizing:border-box;
	opacity:0;
	visibility:hidden;
	transform: translateY(4px);
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
}

div.titolo_mappa_slide.titolo_mappa_slide_main{
	opacity:1;
	visibility:visible;
	transform: translateY(0);
}

div.titolo_mappa.titolo_mappa_slider.is-day-visible div.titolo_mappa_slide.titolo_mappa_slide_main{
	opacity:0;
	visibility:hidden;
	transform: translateY(-4px);
}

div.titolo_mappa.titolo_mappa_slider.is-day-visible div.titolo_mappa_slide.titolo_mappa_slide_day{
	opacity:1;
	visibility:visible;
	transform: translateY(0);
}

div.titolo_mappa_slider div.titolo_mappa_slide h2{
	border-bottom: none;
	padding-bottom: 0;
	margin: 0;
	line-height: 1.1;
}

div.titolo_mappa_dayline{
	font-size: 14px;
	font-weight:bolder;
	border-bottom: none;
	padding-bottom: 0;
	margin: 0;
	color: black;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	line-height: 1.1;
	white-space: nowrap;
}

button.titolo_mappa_toggle{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width: 18px;
	height: 14px;
	padding: 0 0 0 8px;
	border: none;
	border-left: 1px solid rgba(124, 86, 44, 0.24);
	background: transparent;
	color: #6a5134;
	cursor: pointer;
	flex: 0 0 auto;
	align-self:center;
	margin: 0;
	line-height: 1;
	transition: color 0.2s ease, transform 0.2s ease;
}

button.titolo_mappa_toggle:hover,
button.titolo_mappa_toggle:focus{
	background: transparent;
	color: #3c2915;
	transform: translateY(-1px);
	outline: none;
}

button.titolo_mappa_toggle span.titolo_mappa_toggle_icon{
	display:block;
	width: 16px;
	height: 10px;
	line-height: 1;
	box-sizing: border-box;
	background: currentColor;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10' fill='none'%3E%3Cpath d='M1.75 1.75 L8 8 L14.25 1.75' stroke='black' stroke-width='2.35' stroke-linecap='round' stroke-linejoin='miter'/%3E%3C/svg%3E");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10' fill='none'%3E%3Cpath d='M1.75 1.75 L8 8 L14.25 1.75' stroke='black' stroke-width='2.35' stroke-linecap='round' stroke-linejoin='miter'/%3E%3C/svg%3E");
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
	transform: rotate(0deg);
	transform-origin: center center;
	transition: transform 0.2s ease;
}

[data-map-header-slider].is-day-visible button.titolo_mappa_toggle span.titolo_mappa_toggle_icon,
[data-chat-header-slider].is-day-visible button.titolo_mappa_toggle span.titolo_mappa_toggle_icon{
	transform: rotate(180deg);
}

div.titolo_box h2{
    font-size: 14px;
	font-weight:bolder;
	border-bottom: 1px solid #D9D9D9;
    padding-bottom: 4px;
    margin-top:3px;
	color: white;
}

div.titolo_abi{
	font-size:13px; 
	font-weight:bold; 
	color: #45e5ff; 
	text-align:left;
}

/** * Stile dei contenitori grigi con i bordini arrotondati
*/
div.pagina_info_location, div.menu, div.presenti, div.output{
    margin:5px auto;
	padding:10px;
    overflow: hidden;

}

div.msgs{
	margin-left:10px;
	margin-top: -15px;
    overflow: visible;
    padding-bottom: 18px;

}

div.output{
	position:absolute;
	top:40px;
	bottom:0;
	right:0px;
	left:0px;
	width:auto;
	overflow:auto;
	text-align:center;

}

/** * Frame Messaggi 
*/
iframe.iframe_messaggi{
width: 180px;
height:126px;
display:block;
margin-bottom: 8px;
}

div.pagina_messaggi{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	margin:0;
	overflow:visible;
	text-align:center;
	font-size:10px;
}

div.pagina_messaggi a, div.pagina_messaggi a:visited{
	text-decoration:none;
	color:white;
}

div.pagina_messaggi a.messaggi_link{
	position:relative;
	display:inline-block;
	max-width:100%;
	max-height:100%;
	vertical-align:top;
}

div.pagina_messaggi a.messaggi_link img{
	display:block;
	max-width:100%;
	max-height:100%;
	height:auto;
}

div.pagina_messaggi span.messaggi_badge{
	position:absolute;
	top:18px;
	right:18px;
	min-width:22px;
	height:22px;
	padding:0 5px;
	box-sizing:border-box;
	border:1px solid rgba(255, 248, 221, 0.85);
	border-radius:8px;
	background:#b91414;
	color:#fff8dd;
	font-size:12px;
	font-weight:bold;
	line-height:20px;
	text-align:center;
	text-shadow:0 1px 1px rgba(0, 0, 0, 0.55);
	box-shadow:0 2px 5px rgba(0, 0, 0, 0.35);
}

div.messaggio_forum_nuovo a, div.messaggio_forum_nuovo a:visited{
	font-weight:bolder;
	font-style:italic;
    font-size:20px;
	color:RED;

}

/*.messaggio_forum img {
    width: 80px;
	margin-top: 10px;
}*/

/** * Informazioni con anteprima luogo
*/
div.info_image{
    text-align:left;
    font-size:12px; color:white; 
}
div.box_stato_luogo{
	padding-top:5px;
	margin-bottom:5px;
    font-size:12px; color:#FFFAFA; 

}

div.meteo, div.meteo_date{
	padding-right:10px; margin: auto;
	text-align:center;
	font-size:13px;
	font-weight: bold;
    height:auto;
	color: #000000;
}

div.luna{
    position: center;
    height: 112px;        /* Altezza IFRAME Sx */
    width: 300px;
	color:#fff;
}

/** *LINK */ 
/*Aspetto dei link*/

a, a:visited{
    border: none;
	color:  white; /*colore base dei link*/
    font-size:12px;
	text-decoration: none;
    display:inline-block;
    margin-top:3px;

}

a:hover{
    margin-top:3px;
    border: none;
	color:  red; /*colore base dei link al passaggio del mouse*/
	font-weight:bolder;
    text-decoration: none;
    display:inline-block;

}
/** * Men  di gioco
*/
/*Area informazioni*/
div.info{
margin left: 10px;
   width: 190px;
   height: 240px;
   border: none;
  background-color: none;
  color: #fff;
  font-family: Georgia;
  font-style: normal;
  font-weight: normal;
  font-variant: small-caps;
  text-decoration: blink;
  border-radius: 1px;
  text-shadow: 1px 1px 5px #000;
}

div.menu_info_test {
width: 142px;
height: 50px;


}

div.form_info{
	font-size:12px;
	margin-bottom:15px;

}

select.day, select.month, select.year{
	width:60px;
	display:inline-block;

}

div.menu_aggiorna {
width: 142px;
height: 50px;


}


div.menu_mappa {
width: 142px;
height: 50px;


}


div.menu_presenti {

width: 142px;
height: 50px;
}


div.menu_scheda_han {

width: 142px;
height: 50px;
}

div.menu_gestione {

width: 142px;
height: 50px;
}

div.menu_bacheche {

width: 142px;
height: 50px;
}

div.menu_documentazione {

width: 142px;
height: 50px;
}

div.menu_servizi {

width: 142px;
height: 50px;
}

div.menu_esci {

width: 142px;
height: 50px;
}


/** * gotomap
*/
select#gotomap{
	display:block;
	width:180px;
	margin:0 auto 15px auto;
}


/** * Mappa cliccabile */

/** * Posizionamento mappa cliccabile 
*/
div.mappaclick_map{
	margin:5px auto;
	position:relative;
	border-radius: 10px;
	border: 1px solid #7c562c;
	box-shadow: 0 2px 8px rgba(58, 37, 16, 0.20);
	overflow: hidden;
}

/** * Link testuali sulla mappa */
div.mappaclick_map a{ 
background: url("../../imgs/DOC.png");
    
    font-size: 18px;
    font-family:Palatino Linotype;
    font-weight:bolder; color: white;
    font-variant: small-caps;
    
   text-align: center;
   text-shadow: 1px 1px 2px black;
   text-shadow: 0px 1px 1px #000;

    border: solid 1px  grey;
	-moz-border-radius:5px;		/* Bordi arrotondati */
	-webkit-border-radius:5px;
	-khtml-border-radius: 5px;
	border-radius:5px;
}

div.mappaclick_map a:hover{
 background: url("../../imgs/DOC.png");
    
    font-size: 18px;
    font-family:Palatino Linotype;
    font-weight:bolder; color: #FF0000;
    font-variant: small-caps;
    
   text-align: center;
   text-shadow: 1px 1px 2px black;
   text-shadow: 0px 1px 1px #000;

    border: solid 1px  grey;
	-moz-border-radius:5px;		/* Bordi arrotondati */
	-webkit-border-radius:5px;
	-khtml-border-radius: 5px;
	border-radius:5px;
}

div.mappaclick-label{
	position:absolute;
}

div.mappaclick_map.edit-mode div.mappaclick-label[data-id]{
	cursor:move;
	outline:1px dashed #ccc;
}

div.mappaclick-editor{
	text-align:center;
	margin:10px 0;
}

div.mappaclick-editor-form{
	display:none;
	margin-top:6px;
}

/** * stile della tooltip di descrizione sulla mappa 
*/
div#descriptionLoc{
	background-image: url("../../pages/Anagrafe_menu/sf.nero.png");
	position:absolute;
	width: 300px;
	height: 300px;
	overflow: hidden;
	padding:20px;
	border:solid 1px grey;
	font-family:Georgia;
	-moz-border-radius:5px;		/* Bordi arrotondati */
	-webkit-border-radius:5px;
	-khtml-border-radius: 5px;
	border-radius:5px;
	display:none;/*NON TOCCARE* Di configurazione: nasconde la tip in partenza */
	z-index:9999;/*NON TOCCARE* Di configurazione: mostra la tooltip sopra gli altri link */
	pointer-events:none;
	opacity:0;
	-webkit-transition: opacity 0.15s ease;
	transition: opacity 0.15s ease;
}


/** * Stili relativi all'elenco delle mappe in basso
*/
div.mappaclick_more{
	padding-top:10px;
}

div.mappaclick_more a{
	padding:8px;
	margin-right:10px;
	-moz-border-radius:5px;		/* Bordi arrotondati */
	-webkit-border-radius:5px;
	-khtml-border-radius: 5px;
	border-radius:5px;

}

/** * Messages center
*/
div.elenco_record_gioco{
	padding:20px;
}

div.elenco_record_gioco table{
	width:100%;
    -moz-border-radius:5px;		/* Bordi arrotondati */
	-webkit-border-radius:5px;
	-khtml-border-radius: 5px;
	border-radius:5px;

}

div.elementi_elenco{
	padding-top:5px;
	text-align:center;
    color: WHITE;

}

div.titoli_elenco{
	font-size:12px; COLOR:RED;
	font-weight:bolder;
}


div.titoli_elenco_2{
	font-size:12px; COLOR:WHITE;
	font-weight:bolder;
}


img.colonna_elengo_messaggi_icon{
	width:30px;
	height:30px;
}

div.controlli_elenco{
	font-size:12px; COLOR:RED;
	width:60px;

}

div.controllo_elenco{
	width:20px;
}

div.controllo_elenco input[type='image']{
	width:15px;
}

/** * Ambientazione/Regolamento */
div.user_ambientazione div.elementi_elenco, div.servizi_abilita div.elementi_elenco{
   font-style: italic;
   font-size: 13px;
   text-align: justify;
   padding:5px;
    
}

div.user_ambientazione td.casella_titolo div.elementi_elenco, div.servizi_abilita td.casella_titolo div.elementi_elenco{
	font-size:12px;
	padding:2px 0 2px 10px;
    margin: 5 5 5 5px;
}

div.descr_luogo2{
	margin: auto;
	width:auto;
	color:#ffffff;
	
}
div.descr_luogo{
	margin:5px auto;
	padding:10px;
	width:800px;
	color:#000000;
	border:solid 1px #ff9900;
	-moz-border-radius:8px;		/* Bordi arrotondati */
	-webkit-border-radius:8px;
	-khtml-border-radius: 8px;
	border-radius:8px;
}
div.bottone_luoghi{
	margin:10px auto;
	width:180px;
	border:solid 1px #ff9900;
	-moz-border-radius:8px;		/* Bordi arrotondati */
	-webkit-border-radius:8px;
	-khtml-border-radius: 8px;
	border-radius:8px;
}

/** * Generico per elenchi, bacheche, regolamento, ambientazione etc */
div.capitolo_elenco{
    padding:5px 5px 5px 5px;
    background: url("../../imgs/DOC.png");
    
    font-size: 18px;
    font-family:Palatino Linotype;
    font-weight:bolder; color: orange;
    font-variant: small-caps;
    
   text-align: center;
   text-shadow: 1px 1px 2px black;
   text-shadow: 0px 1px 1px #000;

    border: solid 1px  grey;
	-moz-border-radius:5px;		/* Bordi arrotondati */
	-webkit-border-radius:5px;
	-khtml-border-radius: 5px;
	border-radius:5px;
    overflow: auto;
    
}

div.elementi_elenco{
	min-height:20px;
    font-weight:normal; color: white;
	font-size:14px;
    
}

td.casella_elemento, div.elementi_elenco{
	font-size:12px; 
    font-weight:normal; color: white;


}

td.casella_grimorio, div.elementi_grimorio{
	font-size:12px; 
    font-weight:normal; color: white;
	text-align:left;


}

div.elementi_grimorio a{
    float: left;
	font-weight:bolder;font-size:12px;
	color:WHITE;
}


div.elementi_grimorio a:hover{
    font-size:12px;
    color: #FF0000;
	text-decoration:Underline blink;
}

div.elementi_grimorio p{
    float: left;
	font-weight:bolder;font-size:12px;
	color:WHITE;
}

td.dio_boia, div.madonna_loia{
	font-size:12px; 
    font-weight:normal; color: white;
    width: 50%;


}

div.controllo_elenco input[type='image']{
	height:15px;
	width:15px;
	display:block;
	margin: 2px;
	padding: 2px 0px 2px 0px;

}


div.elementi_elenco a{
	font-weight:bolder;font-size:12px;
	color:WHITE;
}


div.elementi_elenco a:hover{
    font-size:12px;
    color: #FF0000;
	text-decoration:Underline blink;
}



/***  class per le tre pagine storia, affetti e descrizione fisica nell'avatar***/
}
div.descr_luogo{
	margin:5px auto;
	padding:10px;
	width:800px;
	color:#000000;
	border:solid 1px #ff9900;
	-moz-border-radius:8px;		/* Bordi arrotondati */
	-webkit-border-radius:8px;
	-khtml-border-radius: 8px;
	border-radius:8px;
}
div.bottone_luoghi{
	margin:10px auto;
	width:180px;
	border:solid 1px #ff9900;
	-moz-border-radius:8px;		/* Bordi arrotondati */
	-webkit-border-radius:8px;
	-khtml-border-radius: 8px;
	border-radius:8px;
}


/** * Stile tabelle nei moduli di gestione */

div.elenco_record_gestione table{
	width:95%;
	margin:5px auto; 	
    font-size:12px; color:#00BFFF;


}

/** * Menu Sinistro */

div.link_menu{
/*margin-top: 110%;
margin-left: 9%;*/
margin-left: 15px;
margin-top: 93px;
}

/** * Accorgimenti Layout */

/** * Allineamento verticale delle colonne 
*/
#framecontentLeft, #framecontentRight, #framecontentTop{ display:table; }

/** * margine delle colonne */
div.innertube{
	display:table-cell;
	vertical-align:top;
	height: 1200px; /* altezza stendardo */
	background: url("../../imgs/Drappo.png");
	background-repeat: no-repeat;
	background-position-y: 100px;
	z-index: 1;
	position: absolute;

}
/*
.link_menu_top {
    margin-bottom: -10px;
}
*/

.innertube {
	margin-left: 0 !important;
}

/** * Barra superiore */
#maincontent.maincontent--topbar{
	--topbar-offset: 76px;
	--topbar-content-gap: 4px;
	overflow-x: hidden;
	overflow-y: hidden;
}

#maincontent.maincontent--topbar.maincontent--topbar-extra{
	--topbar-offset: 138px;
}

#maincontent.maincontent--topbar .output{
	position: absolute;
	top: calc(var(--topbar-offset) + var(--topbar-content-gap));
	right: 0;
	bottom: 0;
	left: 0;
	min-height: 0;
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
	overflow: auto;
}

/* Mantiene visibile lo scrollbar del contenuto centrale
   anche quando il documento ha già un proprio scrollbar. */
#maincontent > .output{
	scrollbar-gutter: stable;
}

@supports (-moz-appearance:none){
	#maincontent.maincontent--topbar > .output,
	#maincontent > .output{
		right: 18px;
		overflow-y: scroll;
		scrollbar-width: auto;
	}
}

#framecontentTop.framecontent-topbar{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: var(--topbar-offset, 84px);
	padding-right: 0;
	overflow: visible;
	z-index: 4000;
}

.topbar-shell,
.topbar-shell div,
.topbar-shell ul,
.topbar-shell li{
	margin: 0;
}

#maincontent.maincontent--topbar.topbar-menu-open > #framecontentTop.framecontent-topbar{
	height: calc(var(--topbar-offset, 84px) + 360px);
}

.topbar-shell{
	position: relative;
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	align-items: center;
	gap: 8px 16px;
	padding: 10px 16px;
  margin: 0px 12px 0px 12px;
	border: 1px solid rgba(193, 154, 97, 0.38);
	border-radius: 18px;
	background:
		radial-gradient(circle at top right, rgba(193, 154, 97, 0.18), transparent 34%),
		linear-gradient(180deg, rgba(33, 23, 19, 0.97), rgba(17, 11, 10, 0.98));
	box-shadow: 0 18px 36px rgba(0, 0, 0, 0.34);
	backdrop-filter: blur(10px);
}

.topbar-shell::before{
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	border: 1px solid rgba(255, 255, 255, 0.05);
	pointer-events: none;
}

.topbar-shell a,
.topbar-shell a:visited,
.topbar-shell a:hover,
.topbar-shell a:focus{
	margin-top: 0;
	text-decoration: none;
	color: inherit;
}

.topbar-brand{
	display: flex;
	flex-direction: column;
	gap: 2px;
	align-self: stretch;
	justify-content: center;
	padding: 0;
	line-height: 1;
	white-space: nowrap;
}

.topbar-brand,
.topbar-brand:visited,
.topbar-brand:hover,
.topbar-brand:focus{
	display: flex;
	font-size: inherit;
	font-weight: normal;
	line-height: 1;
	transform: none;
}

.topbar-brand:hover .topbar-brand__title,
.topbar-brand:focus .topbar-brand__title{
	color: #fff6e6;
}

.topbar-brand__eyebrow{
	font-size: 9px;
	font-weight: bold;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(223, 197, 152, 0.82);
	line-height: 1;
	white-space: nowrap;
}

.topbar-brand__title{
	font-size: 21px;
	font-weight: bold;
	line-height: 1;
	color: #f6ead4;
	white-space: nowrap;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.32);
	transition: color 0.15s ease;
}

.topbar-nav{
	position: relative;
	align-self: stretch;
	display: flex;
	align-items: center;
}

.topbar-nav__list{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: nowrap;
	gap: 8px;
	width: 100%;
	list-style: none;
}

.topbar-nav__item{
	position: relative;
	list-style: none;
	flex: 0 0 auto;
}

.topbar-nav__item--menu{
	position: relative;
}

.topbar-nav__menu-control{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	max-width: 100%;
}

.topbar-nav__menu-link{
	flex: 0 0 auto;
	min-width: 0;
	width: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	min-height: 36px;
	padding: 0 13px;
	border: 1px solid rgba(193, 154, 97, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.04);
	color: rgba(229, 206, 167, 0.96);
	box-sizing: border-box;
	margin-top: 0;
	font-family: Georgia, serif;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
	text-decoration: none;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
	transform: none;
}

.topbar-nav__menu-link:visited,
.topbar-nav__menu-link:hover,
.topbar-nav__menu-link:focus{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	min-height: 36px;
	padding: 0 13px;
	border: 1px solid rgba(193, 154, 97, 0.26);
	border-radius: 999px;
	box-sizing: border-box;
	margin-top: 0;
	font-family: Georgia, serif;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1;
	white-space: nowrap;
	text-decoration: none;
	transform: none;
}

.topbar-nav__menu-link:hover,
.topbar-nav__menu-link:focus{
	border: 1px solid rgba(223, 197, 152, 0.72);
	background: rgba(223, 197, 152, 0.12);
	color: #f6e4bf;
	outline: none;
}

.topbar-nav__trigger,
.topbar-nav__link,
.topbar-nav__link:visited,
.topbar-nav__link:hover,
.topbar-nav__link:focus{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	min-height: 36px;
	padding: 0 13px;
	border: 1px solid rgba(193, 154, 97, 0.26);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.04);
	color: rgba(246, 240, 231, 0.96);
	font-family: Georgia, serif;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
	transform: none;
}

.topbar-nav__trigger:hover,
.topbar-nav__trigger:focus,
.topbar-nav__link:hover,
.topbar-nav__link:focus{
	border-color: rgba(223, 197, 152, 0.72);
	background: rgba(223, 197, 152, 0.12);
	color: #fff6e6;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16);
	outline: none;
	transform: none;
}

.topbar-nav__toggle{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 36px;
	min-width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid rgba(193, 154, 97, 0.28);
	border-radius: 999px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
	color: rgba(229, 206, 167, 0.96);
	cursor: pointer;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.topbar-nav__toggle:hover,
.topbar-nav__toggle:focus{
	border-color: rgba(223, 197, 152, 0.72);
	background: linear-gradient(180deg, rgba(223, 197, 152, 0.16), rgba(223, 197, 152, 0.07));
	color: #fff6e6;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16);
	outline: none;
	transform: none;
}

.topbar-nav__toggle:active{
	background: linear-gradient(180deg, rgba(133, 93, 55, 0.96), rgba(84, 54, 31, 0.98));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 6px 12px rgba(0, 0, 0, 0.2);
}

.topbar-nav__item--active .topbar-nav__trigger,
.topbar-nav__item--active .topbar-nav__link,
.topbar-nav__item.is-open .topbar-nav__trigger{
	border-color: rgba(223, 197, 152, 0.86);
	background: linear-gradient(180deg, rgba(112, 78, 44, 0.86), rgba(76, 50, 30, 0.94));
	color: #fff5e7;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.18);
}

.topbar-nav__item--active .topbar-nav__menu-link,
.topbar-nav__item.is-open .topbar-nav__menu-link{
	border-color: rgba(223, 197, 152, 0.86);
	background: linear-gradient(180deg, rgba(112, 78, 44, 0.86), rgba(76, 50, 30, 0.94));
	color: #f1ddb5;
}

.topbar-nav__item--active .topbar-nav__toggle,
.topbar-nav__item.is-open .topbar-nav__toggle{
	border-color: rgba(223, 197, 152, 0.78);
	background: linear-gradient(180deg, rgba(95, 66, 40, 0.9), rgba(61, 40, 24, 0.96));
	color: #fff5e7;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.18);
}

.topbar-nav__item.is-pinned .topbar-nav__toggle{
	border-color: rgba(240, 214, 172, 0.96);
	background: linear-gradient(180deg, rgba(141, 99, 58, 0.98), rgba(91, 58, 32, 0.99));
	color: #fff7eb;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14), 0 12px 22px rgba(0, 0, 0, 0.24);
}

.topbar-nav__toggle-icon{
	display: block;
	width: 12px;
	height: 12px;
	background: currentColor;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M2 3.5L5 6.5L8 3.5' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M2 3.5L5 6.5L8 3.5' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
	transform: rotate(0deg);
	transform-origin: center center;
	transition: transform 0.18s ease;
}

.topbar-nav__item.is-open .topbar-nav__toggle-icon{
	transform: rotate(180deg);
}

.topbar-nav__panel{
	position: absolute;
	top: calc(100% + 10px);
	left: 50%;
	right: auto;
	width: auto;
	max-width: calc(100vw - 24px);
	padding: 12px;
	border: 1px solid rgba(193, 154, 97, 0.34);
	border-radius: 18px;
	background:
		radial-gradient(circle at top left, rgba(223, 197, 152, 0.12), transparent 28%),
		linear-gradient(180deg, rgba(31, 22, 18, 0.98), rgba(14, 10, 9, 0.98));
	box-shadow: 0 24px 40px rgba(0, 0, 0, 0.34);
	backdrop-filter: blur(12px);
	z-index: 4200;
	box-sizing: border-box;
	--topbar-card-width: 168px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateX(-50%);
	transform-origin: top center;
	transition: opacity 0.16s ease, visibility 0.16s ease;
}

.topbar-nav__panel::before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -12px;
	height: 12px;
}

.topbar-nav__item.is-open .topbar-nav__panel{
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateX(-50%);
}

.topbar-nav__panel-grid{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
}

.topbar-nav__panel-row{
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: 6px;
	width: max-content;
	max-width: 100%;
	margin: 0 auto;
}

.topbar-menu-card,
.topbar-menu-card:visited,
.topbar-menu-card:hover{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0;
	flex: 0 0 var(--topbar-card-width, 168px);
	width: var(--topbar-card-width, 168px);
	min-height: 44px;
	padding: 6px 10px;
	border: 1px solid rgba(193, 154, 97, 0.2);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.04);
	color: #f6ead4;
	box-sizing: border-box;
	min-width: 0;
	font-size: inherit;
	font-weight: normal;
	line-height: 1.05;
	text-decoration: none;
	text-align: center;
	transform: none;
}

.topbar-menu-card:focus{
	display: flex;
	font-size: inherit;
	font-weight: normal;
	transform: none;
}

.topbar-menu-card:hover,
.topbar-menu-card:focus{
	background: rgba(223, 197, 152, 0.12);
	border-color: rgba(223, 197, 152, 0.42);
	color: #fff5e7;
	outline: none;
	font-size: inherit;
	font-weight: normal;
	transform: none;
}

.topbar-menu-card__label{
	font-size: 12px;
	font-weight: bold;
	line-height: 1.05;
	width: 100%;
	text-align: center;
	color: inherit;
	white-space: nowrap;
}

.topbar-extra{
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 8px;
}

.topbar-extra__item{
	padding: 10px 12px;
	border: 1px solid rgba(193, 154, 97, 0.18);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.03);
}

.topbar-extra__item h2{
	margin-top: 0;
}

@media (max-width: 1240px){
	#maincontent.maincontent--topbar{
		--topbar-offset: 116px;
	}

	#maincontent.maincontent--topbar.maincontent--topbar-extra{
		--topbar-offset: 168px;
	}

	.topbar-shell{
		grid-template-columns: 1fr;
		align-items: stretch;
	}

	.topbar-nav{
		align-items: flex-start;
	}

	.topbar-nav__list{
		justify-content: flex-start;
		flex-wrap: wrap;
	}
}

@media (max-width: 900px){
	#maincontent.maincontent--topbar{
		--topbar-offset: 158px;
	}

	#maincontent.maincontent--topbar.maincontent--topbar-extra{
		--topbar-offset: 216px;
	}

	.topbar-shell{
		gap: 8px 10px;
		padding: 10px 12px;
		margin: 0 8px;
	}

	.topbar-brand__title{
		font-size: 19px;
	}

	.topbar-nav__panel{
		padding: 10px;
	}
}

@media (max-width: 720px){
	#maincontent.maincontent--topbar{
		--topbar-offset: 204px;
	}

	#maincontent.maincontent--topbar.maincontent--topbar-extra{
		--topbar-offset: 268px;
	}

	.topbar-nav__item{
		width: 100%;
	}

	.topbar-nav__menu-control{
		display: grid;
		grid-template-columns: minmax(0, 1fr) 42px;
		gap: 8px;
		width: 100%;
	}

	.topbar-nav__trigger,
	.topbar-nav__link{
		width: 100%;
	}

	.topbar-nav__menu-link{
		width: auto;
	}

	.topbar-nav__toggle{
		width: 42px;
		min-width: 42px;
		height: 42px;
		justify-self: end;
	}

	.topbar-shell{
		gap: 8px;
		padding: 9px 10px;
		margin: 0 6px;
		border-radius: 16px;
	}

	.topbar-nav__list{
		gap: 6px;
	}

	.topbar-nav__panel{
		left: 50%;
		right: auto;
		width: 100%;
		max-width: none;
		padding: 8px;
		border-radius: 16px;
	}

	.topbar-nav__panel-grid{
		width: 100%;
	}

	.topbar-menu-card{
		flex-basis: 100%;
		width: 100%;
		min-height: 40px;
		padding: 6px 8px;
	}
}

#layerontop {
    width: 188px;
    top: 0;
    left: 3px;
    pointer-events: none;
}

#menucol {
    position: absolute;
    z-index: 10;
}

.link_menu_top img {
    width: 145px;
}

.link_menu_top {
    position: relative;
    width: 145px;
    margin-bottom: 6px;
}

a.menu-arcane-btn {
    position: relative;
    display: inline-block;
    border-radius: 14px;
    overflow: hidden;
    isolation: isolate;
}

a.menu-arcane-btn--image,
a.menu-arcane-btn--text {
    width: 145px;
}

a.menu-arcane-btn img {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1;
    border-radius: 14px;
    transition: transform 0.25s ease, filter 0.25s ease;
}

a.menu-arcane-btn img,
a.menu-arcane-btn .menu-arcane-btn__label {
    position: relative;
    z-index: 1;
}

a.menu-arcane-btn .menu-arcane-btn__label {
    display: block;
    transition: transform 0.25s ease, filter 0.25s ease;
}

a.menu-arcane-btn .menu-arcane-fx {
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s ease-out;
    z-index: 2;
}

a.menu-arcane-btn .menu-arcane-sheen,
a.menu-arcane-btn .menu-arcane-sparkles {
    position: absolute;
    pointer-events: none;
    will-change: opacity, filter, transform, background-position;
}

a.menu-arcane-btn .menu-arcane-sheen {
    inset: -2%;
    border-radius: 16px;
    background:
        linear-gradient(
            115deg,
            rgba(0, 0, 0, 0) 28%,
            rgba(228, 240, 255, 0.02) 40%,
            rgba(228, 240, 255, 0.12) 49%,
            rgba(246, 230, 202, 0.07) 54%,
            rgba(0, 0, 0, 0) 66%
        ),
        radial-gradient(circle at 28% 46%, rgba(208, 230, 247, 0.07) 0%, rgba(208, 230, 247, 0) 34%),
        radial-gradient(circle at 74% 50%, rgba(255, 250, 241, 0.06) 0%, rgba(255, 250, 241, 0) 26%);
    background-size: 220% 100%, 100% 100%, 100% 100%;
    background-position: 140% 50%, 0 0, 0 0;
    background-repeat: no-repeat;
    filter: blur(1.2px) brightness(0.96);
    opacity: 0.34;
    mix-blend-mode: screen;
    -webkit-mask-image: radial-gradient(ellipse 96% 90% at 50% 50%, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.78) 44%, rgba(0, 0, 0, 0.40) 72%, rgba(0, 0, 0, 0.10) 90%, rgba(0, 0, 0, 0) 100%);
    mask-image: radial-gradient(ellipse 96% 90% at 50% 50%, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.78) 44%, rgba(0, 0, 0, 0.40) 72%, rgba(0, 0, 0, 0.10) 90%, rgba(0, 0, 0, 0) 100%);
    transform: scale(0.998);
    animation: menu-sheen-glide 4.8s ease-in-out infinite;
    animation-delay: -1.7s;
    z-index: 1;
}

a.menu-arcane-btn .menu-arcane-sparkles {
    inset: -3%;
    border-radius: 16px;
    background-repeat: no-repeat;
    filter: blur(0.8px) brightness(1);
    animation-fill-mode: both;
    mix-blend-mode: screen;
    transform-origin: 50% 50%;
    -webkit-mask-image: radial-gradient(ellipse 96% 90% at 50% 50%, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.78) 44%, rgba(0, 0, 0, 0.40) 72%, rgba(0, 0, 0, 0.10) 90%, rgba(0, 0, 0, 0) 100%);
    mask-image: radial-gradient(ellipse 96% 90% at 50% 50%, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.78) 44%, rgba(0, 0, 0, 0.40) 72%, rgba(0, 0, 0, 0.10) 90%, rgba(0, 0, 0, 0) 100%);
    transform: scale(0.995);
    z-index: 3;
}

a.menu-arcane-btn .menu-arcane-sparkles--a {
    background:
        radial-gradient(circle at 14% 28%, rgba(247, 250, 255, 0.96) 0 0.82%, rgba(247, 250, 255, 0.32) 1.48%, rgba(247, 250, 255, 0) 3.9%),
        radial-gradient(circle at 38% 16%, rgba(218, 237, 255, 0.92) 0 0.78%, rgba(218, 237, 255, 0.28) 1.42%, rgba(218, 237, 255, 0) 3.7%),
        radial-gradient(circle at 74% 24%, rgba(244, 248, 255, 0.90) 0 0.8%, rgba(244, 248, 255, 0.28) 1.42%, rgba(244, 248, 255, 0) 3.8%),
        radial-gradient(circle at 86% 44%, rgba(222, 238, 255, 0.84) 0 0.76%, rgba(222, 238, 255, 0.24) 1.38%, rgba(222, 238, 255, 0) 3.6%),
        radial-gradient(circle at 62% 74%, rgba(226, 241, 255, 0.78) 0 0.76%, rgba(226, 241, 255, 0.22) 1.34%, rgba(226, 241, 255, 0) 3.5%),
        radial-gradient(circle at 18% 60%, rgba(242, 232, 201, 0.60) 0 0.72%, rgba(242, 232, 201, 0.18) 1.28%, rgba(242, 232, 201, 0) 3.2%);
    animation: menu-sparkle-drift-a 9.2s linear infinite, menu-sparkle-twinkle-a 4.6s ease-in-out infinite;
    animation-delay: -3.4s, -1.3s;
}

a.menu-arcane-btn .menu-arcane-sparkles--b {
    background:
        radial-gradient(circle at 20% 40%, rgba(241, 247, 255, 0.90) 0 0.78%, rgba(241, 247, 255, 0.26) 1.4%, rgba(241, 247, 255, 0) 3.7%),
        radial-gradient(circle at 52% 18%, rgba(212, 234, 255, 0.88) 0 0.76%, rgba(212, 234, 255, 0.24) 1.38%, rgba(212, 234, 255, 0) 3.6%),
        radial-gradient(circle at 82% 62%, rgba(242, 233, 203, 0.68) 0 0.74%, rgba(242, 233, 203, 0.20) 1.34%, rgba(242, 233, 203, 0) 3.4%),
        radial-gradient(circle at 30% 82%, rgba(222, 239, 255, 0.82) 0 0.76%, rgba(222, 239, 255, 0.24) 1.4%, rgba(222, 239, 255, 0) 3.7%),
        radial-gradient(circle at 48% 86%, rgba(244, 248, 255, 0.78) 0 0.74%, rgba(244, 248, 255, 0.22) 1.36%, rgba(244, 248, 255, 0) 3.6%),
        radial-gradient(circle at 10% 46%, rgba(207, 232, 255, 0.74) 0 0.72%, rgba(207, 232, 255, 0.20) 1.32%, rgba(207, 232, 255, 0) 3.4%);
    animation: menu-sparkle-drift-b 10.6s linear infinite, menu-sparkle-twinkle-b 5.4s ease-in-out infinite;
    animation-delay: -6.1s, -3.7s;
}

a.menu-arcane-btn .menu-arcane-sparkles--c {
    background:
        radial-gradient(circle at 40% 20%, rgba(236, 246, 255, 0.90) 0 0.78%, rgba(236, 246, 255, 0.26) 1.42%, rgba(236, 246, 255, 0) 3.8%),
        radial-gradient(circle at 64% 68%, rgba(209, 235, 255, 0.84) 0 0.76%, rgba(209, 235, 255, 0.24) 1.38%, rgba(209, 235, 255, 0) 3.6%),
        radial-gradient(circle at 12% 44%, rgba(243, 234, 206, 0.70) 0 0.72%, rgba(243, 234, 206, 0.18) 1.32%, rgba(243, 234, 206, 0) 3.4%),
        radial-gradient(circle at 72% 14%, rgba(228, 242, 255, 0.82) 0 0.76%, rgba(228, 242, 255, 0.22) 1.34%, rgba(228, 242, 255, 0) 3.5%),
        radial-gradient(circle at 34% 72%, rgba(212, 236, 255, 0.78) 0 0.74%, rgba(212, 236, 255, 0.20) 1.3%, rgba(212, 236, 255, 0) 3.4%);
    animation: menu-sparkle-drift-c 8.4s linear infinite, menu-sparkle-twinkle-c 6.2s ease-in-out infinite;
    animation-delay: -1.9s, -4.8s;
}

a.menu-arcane-btn:hover .menu-arcane-fx,
a.menu-arcane-btn:focus-visible .menu-arcane-fx {
    opacity: 1;
}

a.menu-arcane-btn:hover img,
a.menu-arcane-btn:hover .menu-arcane-btn__label {
    transform: scale(1.015);
    filter: brightness(1.08) contrast(1.04) saturate(1.08);
}

a.menu-arcane-btn:focus-visible {
    outline: 1px solid rgba(214, 194, 147, 0.72);
    outline-offset: 2px;
}

a.menu-arcane-btn--text {
    box-sizing: border-box;
    padding: 12px 14px;
    text-align: center;
    text-decoration: none;
    color: #d8d7cd;
    background: linear-gradient(180deg, rgba(63, 58, 47, 0.96) 0%, rgba(31, 33, 34, 0.96) 100%);
    border: 1px solid rgba(171, 140, 94, 0.35);
    box-shadow: inset 0 0 10px rgba(204, 210, 201, 0.08);
}

a.menu-arcane-btn--text:hover,
a.menu-arcane-btn--text:focus-visible {
    color: #ffffff;
}

@keyframes menu-sparkle-drift-a {
    0% {
        transform: rotate(6deg) scale(0.995);
    }
    33% {
        transform: rotate(126deg) scale(1.014);
    }
    68% {
        transform: rotate(254deg) scale(1.006);
    }
    100% {
        transform: rotate(366deg) scale(0.995);
    }
}

@keyframes menu-sparkle-drift-b {
    0% {
        transform: rotate(128deg) scale(1.002);
    }
    39% {
        transform: rotate(258deg) scale(1.016);
    }
    72% {
        transform: rotate(382deg) scale(0.998);
    }
    100% {
        transform: rotate(488deg) scale(1.002);
    }
}

@keyframes menu-sparkle-drift-c {
    0% {
        transform: rotate(-72deg) scale(0.992);
    }
    31% {
        transform: rotate(62deg) scale(1.01);
    }
    67% {
        transform: rotate(188deg) scale(1.018);
    }
    100% {
        transform: rotate(288deg) scale(0.992);
    }
}

@keyframes menu-sparkle-twinkle-a {
    0%,
    100% {
        opacity: 0.12;
        filter: blur(0.84px) brightness(0.92);
    }
    10% {
        opacity: 0.18;
        filter: blur(0.76px) brightness(0.98);
    }
    18% {
        opacity: 0.7;
        filter: blur(0.18px) brightness(1.74);
    }
    25% {
        opacity: 0.16;
        filter: blur(0.84px) brightness(0.94);
    }
    41% {
        opacity: 0.08;
        filter: blur(0.94px) brightness(0.86);
    }
    56% {
        opacity: 0.5;
        filter: blur(0.3px) brightness(1.26);
    }
    64% {
        opacity: 0.13;
        filter: blur(0.82px) brightness(0.92);
    }
    82% {
        opacity: 0.86;
        filter: blur(0.12px) brightness(2.02);
    }
    89% {
        opacity: 0.18;
        filter: blur(0.74px) brightness(0.96);
    }
}

@keyframes menu-sparkle-twinkle-b {
    0%,
    100% {
        opacity: 0.1;
        filter: blur(0.88px) brightness(0.9);
    }
    14% {
        opacity: 0.14;
        filter: blur(0.82px) brightness(0.94);
    }
    27% {
        opacity: 0.62;
        filter: blur(0.22px) brightness(1.48);
    }
    35% {
        opacity: 0.12;
        filter: blur(0.84px) brightness(0.92);
    }
    53% {
        opacity: 0.08;
        filter: blur(0.96px) brightness(0.86);
    }
    69% {
        opacity: 0.8;
        filter: blur(0.14px) brightness(1.9);
    }
    77% {
        opacity: 0.16;
        filter: blur(0.8px) brightness(0.94);
    }
    92% {
        opacity: 0.46;
        filter: blur(0.34px) brightness(1.2);
    }
}

@keyframes menu-sparkle-twinkle-c {
    0%,
    100% {
        opacity: 0.11;
        filter: blur(0.86px) brightness(0.92);
    }
    9% {
        opacity: 0.2;
        filter: blur(0.74px) brightness(1);
    }
    22% {
        opacity: 0.48;
        filter: blur(0.32px) brightness(1.22);
    }
    31% {
        opacity: 0.12;
        filter: blur(0.82px) brightness(0.92);
    }
    47% {
        opacity: 0.84;
        filter: blur(0.12px) brightness(1.96);
    }
    55% {
        opacity: 0.14;
        filter: blur(0.78px) brightness(0.94);
    }
    73% {
        opacity: 0.09;
        filter: blur(0.94px) brightness(0.86);
    }
    85% {
        opacity: 0.62;
        filter: blur(0.22px) brightness(1.46);
    }
    93% {
        opacity: 0.16;
        filter: blur(0.78px) brightness(0.96);
    }
}

@keyframes menu-sheen-glide {
    0% {
        background-position: 140% 50%, 0 0, 0 0;
        filter: blur(1.2px) brightness(0.94);
    }
    50% {
        background-position: 24% 50%, 0 0, 0 0;
        filter: blur(0.9px) brightness(1.08);
    }
    100% {
        background-position: -120% 50%, 0 0, 0 0;
        filter: blur(1.2px) brightness(0.96);
    }
}

@media (prefers-reduced-motion: reduce) {
    a.menu-arcane-btn .menu-arcane-fx,
    a.menu-arcane-btn img,
    a.menu-arcane-btn .menu-arcane-btn__label,
    a.menu-arcane-btn .menu-arcane-sheen,
    a.menu-arcane-btn .menu-arcane-sparkles {
        animation: none;
        transition: none;
    }
}

#framecontentLeft{
	background-size: auto !important;
}

/* Menu laterale scorrevole */
:root {
  --side-menu-open-width: 218px;
  --side-menu-rail-width: 36px;
  --side-menu-tab-width: 56px;
  --side-menu-tab-overlap: 3px;
  --side-menu-mail-space: 142px;
  --side-menu-mail-height: 132px;
  --side-menu-mail-button-offset: 6px;
  --side-menu-mail-frame-size: 126px;
  --side-menu-transition: 260ms ease;
}

#framecontentLeft.side-menu-shell {
  display: block !important;
  position: fixed !important;
  top: var(--side-menu-mail-height) !important;
  left: 0 !important;
  width: var(--side-menu-open-width) !important;
  height: calc(100vh - var(--side-menu-mail-height)) !important;
  min-height: 0 !important;
  overflow: visible !important;
  background: none !important;
  box-shadow: none !important;
  z-index: 4600 !important;
  transform: translateX(calc(0px - var(--side-menu-open-width))) !important;
  transition: transform var(--side-menu-transition), filter 180ms ease;
}

#framecontentLeft.side-menu-shell.is-open,
#framecontentLeft.side-menu-shell.is-pinned {
  transform: translateX(0) !important;
}

body.side-menu-ready #maincontent {
  left: var(--side-menu-mail-space) !important;
  transition: left var(--side-menu-transition);
}

body.side-menu-ready.side-menu-pinned #maincontent {
  left: var(--side-menu-open-width) !important;
}

#framecontentLeft.side-menu-shell .side-menu-panel,
#framecontentLeft.side-menu-shell .side-menu-panel div,
#framecontentLeft.side-menu-shell .side-menu-panel ul,
#framecontentLeft.side-menu-shell .side-menu-panel li {
  margin-left: 0;
  margin-right: 0;
}

#framecontentLeft.side-menu-shell .side-menu-panel {
  position: relative;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  margin-left: 0;
  padding: 18px 11px 14px;
  overflow: visible;
  border: 1px solid rgba(214, 184, 111, 0.36);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(6, 9, 12, 0.94), rgba(14, 15, 16, 0.74) 56%, rgba(8, 12, 14, 0.94)),
    linear-gradient(180deg, rgba(214, 179, 98, 0.22), rgba(20, 25, 28, 0.18) 36%, rgba(6, 10, 12, 0.56)),
    url("../../imgs/bgsinistro.png") top center / 200px 1149px no-repeat;
  box-shadow:
    12px 0 28px rgba(0, 0, 0, 0.46),
    inset -1px 0 0 rgba(244, 222, 163, 0.24),
    inset 0 0 24px rgba(69, 229, 255, 0.07);
}

#framecontentLeft.side-menu-shell .side-menu-panel::before {
  display: none;
}

#framecontentLeft.side-menu-shell .side-menu-panel::after {
  display: none;
}

#framecontentLeft.side-menu-shell .side-menu-rail {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: var(--side-menu-rail-width);
  z-index: 6;
  cursor: pointer;
  pointer-events: auto;
}

#framecontentLeft.side-menu-shell .side-menu-rail::before {
  display: none;
}

#framecontentLeft.side-menu-shell .side-menu-rail-tabs {
  position: absolute;
  top: 18px;
  right: calc(0px - var(--side-menu-tab-width) + var(--side-menu-tab-overlap));
  display: flex;
  flex-direction: column;
  gap: 9px;
  width: var(--side-menu-tab-width);
  padding: 0;
  z-index: 2;
  overflow: visible;
  pointer-events: auto;
}

#framecontentLeft.side-menu-shell .side-menu-rail-tabs::before {
  display: none;
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab {
  --side-menu-tab-tint: rgba(126, 231, 255, 0.14);
  --side-menu-tab-line: rgba(126, 231, 255, 0.36);
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--side-menu-tab-width);
  min-width: 0;
  height: 88px;
  padding: 8px 0 8px 8px;
  border: 1px solid rgba(126, 231, 255, 0.34);
  border-left: 0;
  border-radius: 0 8px 8px 0;
  color: #ecfbff;
  background:
    linear-gradient(180deg, var(--side-menu-tab-tint), rgba(7, 12, 14, 0.98) 48%, rgba(244, 222, 163, 0.08)),
    linear-gradient(90deg, rgba(9, 15, 17, 0.98), rgba(8, 14, 16, 0.98));
  box-shadow:
    inset 8px 0 12px rgba(0, 0, 0, 0.34),
    inset -1px 0 0 rgba(244, 222, 163, 0.18),
    -1px 0 0 rgba(6, 11, 13, 0.92),
    8px 5px 16px rgba(0, 0, 0, 0.40),
    0 0 10px rgba(126, 231, 255, 0.08);
  cursor: pointer;
  transform: translateX(3px);
  transition: color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, filter 150ms ease, transform 150ms ease;
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab:nth-child(1) {
  --side-menu-tab-tint: rgba(244, 222, 163, 0.15);
  --side-menu-tab-line: rgba(244, 222, 163, 0.40);
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab:nth-child(2) {
  --side-menu-tab-tint: rgba(126, 231, 255, 0.16);
  --side-menu-tab-line: rgba(126, 231, 255, 0.40);
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab::before {
  display: none;
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab::after {
  display: none;
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab__label {
  position: relative;
  z-index: 2;
  display: block;
  font-family: Georgia, serif;
  font-size: 11px;
  font-weight: bold;
  font-variant: small-caps;
  letter-spacing: 0;
  line-height: 1;
  text-shadow: 0 1px 2px #000;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab:hover,
#framecontentLeft.side-menu-shell .side-menu-rail-tab:focus-visible,
#framecontentLeft.side-menu-shell .side-menu-rail-tab.is-active,
#framecontentLeft.side-menu-shell.is-pinned .side-menu-rail-tab[aria-pressed="true"] {
  z-index: 3;
  color: #ffffff;
  border-color: rgba(244, 222, 163, 0.62);
  filter: brightness(1.12);
  transform: translateX(3px);
  box-shadow:
    inset 8px 0 12px rgba(0, 0, 0, 0.28),
    inset -1px 0 0 rgba(244, 222, 163, 0.28),
    -1px 0 0 rgba(6, 11, 13, 0.92),
    11px 6px 18px rgba(0, 0, 0, 0.48),
    0 0 16px rgba(126, 231, 255, 0.16);
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab:hover::after,
#framecontentLeft.side-menu-shell .side-menu-rail-tab:focus-visible::after,
#framecontentLeft.side-menu-shell .side-menu-rail-tab.is-active::after,
#framecontentLeft.side-menu-shell.is-pinned .side-menu-rail-tab[aria-pressed="true"]::after {
  display: none;
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab:hover::before,
#framecontentLeft.side-menu-shell .side-menu-rail-tab:focus-visible::before,
#framecontentLeft.side-menu-shell .side-menu-rail-tab.is-active::before,
#framecontentLeft.side-menu-shell.is-pinned .side-menu-rail-tab[aria-pressed="true"]::before {
  opacity: 0.95;
}

#framecontentLeft.side-menu-shell .side-menu-rail-tab:focus-visible {
  outline: 1px solid rgba(244, 222, 163, 0.92);
  outline-offset: 2px;
}

#framecontentLeft.side-menu-shell .side-menu-panes {
  position: relative;
  z-index: 3;
  height: calc(100vh - var(--side-menu-mail-height) - 36px);
  min-height: 270px;
  overflow: hidden;
}

.side-menu-mail-dock {
  position: fixed;
  top: 0;
  left: 0;
  width: var(--side-menu-mail-space);
  height: var(--side-menu-mail-height);
  z-index: 4700;
  overflow: visible;
  pointer-events: auto;
  transition: width var(--side-menu-transition);
}

body.side-menu-ready.side-menu-pinned .side-menu-mail-dock {
  width: var(--side-menu-open-width);
}

.side-menu-mail-dock div.msgs {
  margin: 0;
  padding: 0;
  width: 100%;
  overflow: visible;
}

.side-menu-mail-dock iframe.iframe_messaggi {
  display: block;
  width: var(--side-menu-mail-frame-size);
  height: var(--side-menu-mail-frame-size);
  margin: var(--side-menu-mail-button-offset) auto 0;
}

/* Le finestre aperte con modalWindow devono stare sopra al dock missive. */
body .ui-widget-overlay {
  z-index: 4790 !important;
}

body .ui-dialog {
  z-index: 4800 !important;
}

#framecontentLeft.side-menu-shell #menucol {
  position: relative;
  z-index: 1;
}

#framecontentLeft.side-menu-shell .side-menu-pane {
  position: relative;
  z-index: 3;
  height: 100%;
  overflow: hidden;
}

#framecontentLeft.side-menu-shell .side-menu-pane[hidden] {
  display: none !important;
}

#framecontentLeft.side-menu-shell .side-menu-pane div.menu,
#framecontentLeft.side-menu-shell .side-menu-pane div.presenti,
#framecontentLeft.side-menu-shell .side-menu-pane div.pagina_link_menu,
#framecontentLeft.side-menu-shell .side-menu-pane div.page_body {
  margin: 0;
  padding: 0;
  overflow: visible;
}

#framecontentLeft.side-menu-shell .side-menu-pane div.link_menu {
  position: relative;
  z-index: 4;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  margin: 0;
}

#framecontentLeft.side-menu-shell .side-menu-pane .link_menu_top {
  position: relative;
  z-index: 4;
  width: 166px;
  max-width: 100%;
  margin: 0;
}

#framecontentLeft.side-menu-shell .side-menu-pane .link_menu_top img,
#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn--image,
#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn--text {
  width: 166px;
  max-width: 100%;
}

#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn,
#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn img,
#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn .menu-arcane-sheen,
#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn .menu-arcane-sparkles {
  border-radius: 8px;
}

#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn {
  position: relative;
  z-index: 4;
  box-shadow:
    0 0 0 1px rgba(126, 231, 255, 0.12),
    0 8px 16px rgba(0, 0, 0, 0.26);
}

#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn:hover,
#framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn:focus-visible {
  box-shadow:
    0 0 0 1px rgba(244, 222, 163, 0.50),
    0 0 18px rgba(69, 229, 255, 0.18),
    0 10px 18px rgba(0, 0, 0, 0.30);
}

@media (max-height: 720px) {
  :root {
    --side-menu-mail-space: 132px;
    --side-menu-mail-height: 116px;
    --side-menu-mail-frame-size: 110px;
  }

  #framecontentLeft.side-menu-shell .side-menu-panel {
    padding-top: 14px;
  }

  #framecontentLeft.side-menu-shell .side-menu-panel::before {
    display: none;
  }

  #framecontentLeft.side-menu-shell .side-menu-panel::after {
    display: none;
  }

  #framecontentLeft.side-menu-shell .side-menu-rail-tabs {
    top: 14px;
    gap: 7px;
    padding: 0;
  }

  #framecontentLeft.side-menu-shell .side-menu-rail-tab {
    height: 78px;
  }

  #framecontentLeft.side-menu-shell .side-menu-panes {
    height: calc(100vh - var(--side-menu-mail-height) - 28px);
  }

  #framecontentLeft.side-menu-shell .side-menu-pane div.link_menu {
    gap: 5px;
  }
}

@media (max-width: 720px) {
  :root {
    --side-menu-open-width: 208px;
    --side-menu-rail-width: 34px;
    --side-menu-mail-space: 134px;
    --side-menu-mail-height: 124px;
    --side-menu-mail-frame-size: 118px;
  }

  body.side-menu-ready.side-menu-pinned #maincontent {
    left: var(--side-menu-mail-space) !important;
  }
}

@media (max-width: 520px) {
  :root {
    --side-menu-open-width: 190px;
    --side-menu-rail-width: 30px;
    --side-menu-tab-width: 46px;
    --side-menu-tab-overlap: 2px;
    --side-menu-mail-space: 96px;
    --side-menu-mail-height: 98px;
    --side-menu-mail-frame-size: 92px;
  }

  #framecontentLeft.side-menu-shell .side-menu-panel {
    padding: 12px 8px 10px;
  }

  #framecontentLeft.side-menu-shell .side-menu-rail-tabs {
    top: 12px;
    gap: 6px;
  }

  #framecontentLeft.side-menu-shell .side-menu-rail-tab {
    height: 74px;
    padding-left: 6px;
  }

  #framecontentLeft.side-menu-shell .side-menu-rail-tab__label {
    font-size: 10px;
  }

  #framecontentLeft.side-menu-shell .side-menu-panes {
    height: calc(100vh - var(--side-menu-mail-height) - 22px);
    min-height: 220px;
  }

  #framecontentLeft.side-menu-shell .side-menu-pane div.link_menu {
    gap: 5px;
  }

  #framecontentLeft.side-menu-shell .side-menu-pane .link_menu_top,
  #framecontentLeft.side-menu-shell .side-menu-pane .link_menu_top img,
  #framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn--image,
  #framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn--text {
    width: 150px;
  }

}

@media (max-width: 380px) {
  :root {
    --side-menu-open-width: 178px;
    --side-menu-tab-width: 42px;
    --side-menu-mail-space: 88px;
    --side-menu-mail-height: 88px;
    --side-menu-mail-frame-size: 82px;
  }

  #framecontentLeft.side-menu-shell .side-menu-panel {
    padding: 10px 7px;
  }

  #framecontentLeft.side-menu-shell .side-menu-rail-tab {
    height: 70px;
  }

  #framecontentLeft.side-menu-shell .side-menu-pane .link_menu_top,
  #framecontentLeft.side-menu-shell .side-menu-pane .link_menu_top img,
  #framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn--image,
  #framecontentLeft.side-menu-shell .side-menu-pane a.menu-arcane-btn--text {
    width: 142px;
  }

}

@media (prefers-reduced-motion: reduce) {
  #framecontentLeft.side-menu-shell,
  body.side-menu-ready #maincontent {
    transition: none;
  }
}


/* =========================
   GDRCD Toast Overlay (gdrcd_render_toasts)
   - warning: bordo verde
   - error: bordo rosso
   - confirm: nessun bordo colorato
   Posizionamento:
   - .gdrcd-toasts--fixed  : centrato sul viewport
   - .gdrcd-toasts--anchor : alias legacy, centrato anch'esso sul viewport
   ========================= */

.gdrcd-toast-anchor{
  position: relative;
}

.gdrcd-toasts{
  z-index: 2147483647;
  display: flex;
  flex-direction: column;
  gap: 8px;
  pointer-events: none;
  isolation: isolate;
}

.gdrcd-toasts.gdrcd-toasts--fixed{
  position: fixed;
  top: clamp(18px, 24vh, 220px);
  left: 50%;
  transform: translateX(-50%);
  max-width: min(720px, calc(100vw - 24px));
}

.gdrcd-toasts.gdrcd-toasts--anchor{
  position: fixed;
  top: clamp(18px, 24vh, 220px);
  left: 50%;
  transform: translateX(-50%);
  max-width: min(720px, calc(100vw - 24px));
}

.gdrcd-toasts .gdrcd-toast{
  pointer-events: auto;
  background: rgba(20, 20, 20, 0.92);
  color: #fff;
  border-radius: 12px;
  padding: 10px 14px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.25);
  border: 2px solid transparent;
  opacity: 1;
  transform: translateY(0);
  transition: opacity .5s ease, transform .5s ease;
  word-wrap: break-word;
}

.gdrcd-toasts .gdrcd-toast.warning{
  border-color: #2ecc71; /* verde */
}

.gdrcd-toasts .gdrcd-toast.error{
  border-color: #e74c3c; /* rosso */
}

.gdrcd-toasts .gdrcd-toast.confirm{
  border-color: transparent; /* nessun colore */
}

.gdrcd-toasts .gdrcd-toast.gdrcd-toast--hide{
  opacity: 0;
  transform: translateY(-6px);
}

/* =========================
   Scheda2 - Tabelle avanzamenti (shrink-to-fit)
   Riduce lo spazio vuoto: le tabelle si adattano al contenuto
   ========================= */

.pagina_scheda2 table.colonne_abilita_scheda{
  width:auto !important;
  max-width:100%;
  display:inline-table;
  table-layout:auto;
  border-collapse:collapse;
  border:2px solid #777;
}

.pagina_scheda2 .elenco_record_gestione table{
  width:auto !important;
  max-width:100%;
  display:inline-table;
  table-layout:auto;
  border-collapse:collapse;
  border:2px solid #777;
}

.pagina_scheda2 table.colonne_abilita_scheda th,
.pagina_scheda2 table.colonne_abilita_scheda td{
  padding:4px;
  vertical-align: middle;
}
.pagina_scheda2 table.colonne_abilita_scheda td{
  min-height:38px;
}

.pagina_scheda2 table.colonne_abilita_scheda th:not(:first-child),
.pagina_scheda2 table.colonne_abilita_scheda td:not(:first-child){
  text-align:center;
  white-space:nowrap;
}

/* =========================
   Scheda2 - Layout tabelle affiancate
   - Caratteristiche: 3 tabelle (Fisiche/Sociali/Mentali)
   - Abilità: 2 tabelle (continuazione)
   ========================= */

.pagina_scheda2 .car_tables_row{
  display:grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  column-gap:12px;
  row-gap:12px;
  align-items:start;
  justify-items:center;
  justify-content:center;
  overflow:visible;
  width:100%;
  box-sizing:border-box;
}

.pagina_scheda2 .skills_tables_row{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 12px;
  row-gap: 12px;
  align-items: start;
  justify-items: center;
}

.pagina_scheda2 .car_block{
  display: flex;
  flex-direction: column;
  align-items: center;
  width: auto;
  text-align: center;
}
.pagina_scheda2 .stat-points{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:2.6em;
}
.pagina_scheda2 .stat-dots{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:2.2em;
}
.pagina_scheda2 .stat-dots-row{
  display:flex;
  justify-content:center;
}
.pagina_scheda2 .stat-dot{
  display:inline-block;
  width:1em;
  text-align:center;
  line-height:1;
}
.pagina_scheda2 .car_tables_row .car_block:first-child{
  justify-self:start;
}
.pagina_scheda2 .car_tables_row .car_block:last-child{
  justify-self:end;
}

.pagina_scheda2 .skills_block{
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  text-align: center;
}

.pagina_scheda2 .car_table_title{
  font-weight: bolder;
  margin: 0 0 6px 0;
  text-align: center;
}

/* Ripristino allineamento titoli/form servizi (centrati come in origine) */
div.page_title,
div.page_title h2 {
  text-align: center;
}

div.pagina_servizi_banca div.panels_box,
div.pagina_servizi_banca div.form_gioco,
div.pagina_servizi_banca div.form_label,
div.pagina_servizi_banca div.form_field,
div.pagina_servizi_banca div.form_submit,
div.pagina_servizi_lavoro div.panels_box,
div.pagina_servizi_lavoro div.form_gioco,
div.pagina_servizi_lavoro div.form_label,
div.pagina_servizi_lavoro div.form_field,
div.pagina_servizi_lavoro div.form_submit {
  text-align: center;
}

div.pagina_servizi_banca{
  --bank-panel-bg:
    linear-gradient(90deg, rgba(6, 9, 12, 0.94), rgba(14, 15, 16, 0.74) 56%, rgba(8, 12, 14, 0.94)),
    linear-gradient(180deg, rgba(214, 179, 98, 0.18), rgba(20, 25, 28, 0.18) 36%, rgba(6, 10, 12, 0.56));
  --bank-panel-bg-soft: linear-gradient(180deg, rgba(126, 231, 255, 0.08), rgba(255, 255, 255, 0.02));
  --bank-panel-border: rgba(126, 231, 255, 0.22);
  --bank-panel-border-strong: rgba(244, 222, 163, 0.44);
  --bank-panel-shadow: 0 14px 32px rgba(0, 0, 0, 0.34);
  --bank-accent: #a9edf8;
  --bank-accent-strong: #ecfbff;
  background:
    radial-gradient(circle at top, rgba(69, 229, 255, 0.12), transparent 42%),
    linear-gradient(180deg, rgba(11, 14, 18, 0.72), rgba(7, 10, 13, 0.26)),
    linear-gradient(90deg, rgba(6, 9, 12, 0.94), rgba(14, 15, 16, 0.74) 56%, rgba(8, 12, 14, 0.94)),
    url("../../imgs/bgsinistro.png") top center / 200px 1149px no-repeat;
  border: 1px solid rgba(214, 184, 111, 0.30);
  border-radius: 18px;
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.28);
  overflow: hidden;
  padding: 10px 12px 18px;
}

div.pagina_servizi_banca div.page_title{
  margin-bottom: 14px;
}

div.pagina_servizi_banca div.page_title h2{
  border-bottom-color: rgba(126, 231, 255, 0.30);
  color: #ecfbff;
  display: inline-block;
  letter-spacing: 0.08em;
  margin: 0 auto;
  padding: 0 18px 6px 18px;
  text-transform: uppercase;
}

div.pagina_servizi_banca div.page_body{
  display: flex;
  flex-direction: column;
  gap: 18px;
}

div.pagina_servizi_banca .bank-page-actions{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin: -4px auto 0;
  max-width: 980px;
  width: 100%;
}

div.pagina_servizi_banca a.bank-nav-button,
div.pagina_servizi_banca a.bank-nav-button:visited{
  align-items: center;
  background:
    linear-gradient(180deg, rgba(34, 55, 63, 0.96), rgba(13, 25, 31, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.10), rgba(244, 222, 163, 0.10));
  border: 1px solid rgba(126, 231, 255, 0.30);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
  box-sizing: border-box;
  color: #f1fdff;
  display: inline-flex;
  font-size: 12px;
  font-weight: bold;
  justify-content: center;
  letter-spacing: 0.08em;
  line-height: 1.2;
  margin: 0;
  min-height: 38px;
  min-width: 170px;
  padding: 9px 18px;
  text-decoration: none;
  text-transform: uppercase;
  transform: none;
}

div.pagina_servizi_banca a.bank-nav-button:hover,
div.pagina_servizi_banca a.bank-nav-button:focus{
  align-items: center;
  background:
    linear-gradient(180deg, rgba(46, 76, 86, 0.98), rgba(18, 36, 44, 1)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.16), rgba(244, 222, 163, 0.14));
  border-color: rgba(244, 222, 163, 0.42);
  border-style: solid;
  border-width: 1px;
  box-sizing: border-box;
  color: #ffffff;
  display: inline-flex;
  font-weight: bold;
  line-height: 1.2;
  margin: 0;
  min-height: 38px;
  outline: none;
  padding: 9px 18px;
  transform: none;
}

div.pagina_servizi_banca div.warning,
div.pagina_servizi_banca div.error{
  background:
    linear-gradient(180deg, rgba(19, 28, 33, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.06), rgba(244, 222, 163, 0.06));
  border: 1px solid rgba(126, 231, 255, 0.24);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  color: #f0fbff;
  margin: 0 auto;
  max-width: 980px;
  width: 100%;
}

div.pagina_servizi_banca div.link_back{
  background:
    linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.08), rgba(244, 222, 163, 0.08));
  border: 1px solid rgba(126, 231, 255, 0.22);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
  margin: 0 auto;
  max-width: 260px;
  padding: 6px 16px;
}

div.pagina_servizi_banca div.link_back a,
div.pagina_servizi_banca div.link_back a:visited{
  color: #ecfbff;
  display: block;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-top: 0;
}

div.pagina_servizi_banca div.link_back a:hover{
  color: #f4dea3;
  margin-top: 0;
}

div.pagina_servizi_banca div.panels_box.bank-overview{
  background: var(--bank-panel-bg);
  border: 1px solid var(--bank-panel-border);
  border-radius: 20px;
  box-shadow: var(--bank-panel-shadow);
  margin: 0 auto;
  max-width: 980px;
  padding: 22px;
  width: 100%;
}

div.pagina_servizi_banca .bank-overview__grid{
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

div.pagina_servizi_banca .bank-summary-card{
  background: linear-gradient(180deg, rgba(126, 231, 255, 0.06), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 16px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    inset 0 0 18px rgba(69, 229, 255, 0.04);
  overflow: hidden;
  padding: 18px 16px;
  position: relative;
}

div.pagina_servizi_banca .bank-summary-card::before{
  background: linear-gradient(90deg, rgba(126, 231, 255, 0.95), rgba(126, 231, 255, 0));
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  right: 25%;
  top: 0;
}

div.pagina_servizi_banca .bank-summary-card__label{
  color: rgba(214, 244, 250, 0.78);
  font-size: 11px;
  letter-spacing: 0.12em;
  margin-bottom: 10px;
  text-transform: uppercase;
}

div.pagina_servizi_banca .bank-summary-card__value{
  color: #f2fdff;
  font-size: 24px;
  line-height: 1.2;
}

div.pagina_servizi_banca .bank-summary-card__action{
  display: flex;
  justify-content: center;
  margin-top: 14px;
}

div.pagina_servizi_banca a.bank-nav-button.bank-nav-button--salary,
div.pagina_servizi_banca a.bank-nav-button.bank-nav-button--salary:visited{
  min-width: 160px;
  width: 100%;
}

div.pagina_servizi_banca .bank-summary-card__money{
  font-size: 24px;
  gap: 8px;
}

div.pagina_servizi_banca .bank-summary-card__money .gdrcd-money__part{
  gap: 4px;
}

div.pagina_servizi_banca .bank-summary-card__money .gdrcd-money__value{
  font-size: 1em;
}

div.pagina_servizi_banca .bank-overview__notice{
  margin-top: 16px;
}

div.pagina_servizi_banca .bank-overview__message{
  margin: 0;
  max-width: none;
  width: auto;
}

div.pagina_servizi_banca .bank-overview__hint{
  background: rgba(126, 231, 255, 0.035);
  border: 1px dashed rgba(126, 231, 255, 0.22);
  border-radius: 14px;
  color: #d9f9ff;
  padding: 12px 16px;
}

div.pagina_servizi_banca .bank-actions-grid{
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 auto;
  max-width: 980px;
  width: 100%;
}

div.pagina_servizi_banca div.form_gioco.bank-action-card{
  background: var(--bank-panel-bg);
  border: 1px solid var(--bank-panel-border);
  border-radius: 18px;
  box-shadow: var(--bank-panel-shadow);
  margin: 0;
  overflow: hidden;
  padding: 18px 20px;
}

div.pagina_servizi_banca div.form_gioco.bank-action-card.bank-action-card--transfer{
  grid-column: 1 / -1;
}

div.pagina_servizi_banca div.form_gioco.bank-action-card.bank-action-card--withdraw{
  border-top: 3px solid rgba(229, 228, 226, 0.75);
}

div.pagina_servizi_banca div.form_gioco.bank-action-card.bank-action-card--deposit{
  border-top: 3px solid rgba(228, 184, 73, 0.75);
}

div.pagina_servizi_banca div.form_gioco.bank-action-card.bank-action-card--transfer{
  border-top: 3px solid rgba(179, 179, 179, 0.75);
}

div.pagina_servizi_banca div.form_gioco.bank-action-card.bank-action-card--convert{
  border-top: 3px solid rgba(178, 138, 255, 0.75);
  grid-column: 1 / -1;
}

div.pagina_servizi_banca .bank-convert-info{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

div.pagina_servizi_banca .bank-convert-info__item{
  background: var(--bank-panel-bg-soft);
  border: 1px solid rgba(178, 138, 255, 0.18);
  border-radius: 14px;
  display: flex;
  flex: 1 1 200px;
  flex-direction: column;
  gap: 4px;
  padding: 12px 14px;
}

div.pagina_servizi_banca .bank-convert-info__item--rate{
  justify-content: center;
}

div.pagina_servizi_banca .bank-convert-info__label{
  color: rgba(219, 247, 252, 0.78);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

div.pagina_servizi_banca .bank-convert-info__value{
  color: #f2fdff;
  font-size: 18px;
  font-weight: bold;
}

div.pagina_servizi_banca .bank-convert-hint{
  background: rgba(178, 138, 255, 0.06);
  border: 1px dashed rgba(178, 138, 255, 0.26);
  border-radius: 14px;
  color: #ece4ff;
  font-size: 12px;
  padding: 10px 14px;
}

div.pagina_servizi_banca .bank-convert-preview{
  align-items: center;
  background: var(--bank-panel-bg-soft);
  border: 1px solid rgba(178, 138, 255, 0.20);
  border-radius: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  padding: 12px 16px;
}

div.pagina_servizi_banca .bank-convert-preview__label{
  color: rgba(219, 247, 252, 0.78);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

div.pagina_servizi_banca .bank-convert-preview__value{
  color: #f2fdff;
  font-size: 22px;
  font-weight: bold;
}

div.pagina_servizi_banca .bank-convert-preview__value .gdrcd-money{
  font-size: 22px;
  gap: 8px;
}

div.pagina_servizi_banca .bank-convert-preview__value .gdrcd-money__part{
  gap: 4px;
}

div.pagina_servizi_banca .bank-convert-preview__value .gdrcd-money__value{
  font-size: 1em;
}

div.pagina_servizi_banca div.form_gioco.bank-action-card form{
  display: flex;
  flex-direction: column;
  gap: 14px;
}

div.pagina_servizi_banca div.form_label.bank-action-card__title{
  color: var(--bank-accent-strong);
  font-size: 14px;
  letter-spacing: 0.12em;
  margin: 0;
  text-transform: uppercase;
}

div.pagina_servizi_banca .bank-money-grid{
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

div.pagina_servizi_banca .bank-money-field{
  background: var(--bank-panel-bg-soft);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 14px;
  margin: 0;
  padding: 12px;
}

div.pagina_servizi_banca .bank-money-field__label{
  display: block;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin-bottom: 8px;
}

div.pagina_servizi_banca .bank-money-field--platino .bank-money-field__label{
  color: #e5e4e2;
}

div.pagina_servizi_banca .bank-money-field--oro .bank-money-field__label{
  color: #e4b849;
}

div.pagina_servizi_banca .bank-money-field--argento .bank-money-field__label{
  color: #d0d0d0;
}

div.pagina_servizi_banca .bank-money-field__input,
div.pagina_servizi_banca .bank-action-card__input,
div.pagina_servizi_banca .bank-action-card__select{
  background: rgba(7, 12, 14, 0.88);
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 10px;
  box-sizing: border-box;
  color: #effcff;
  margin: 0;
  max-width: none;
  padding: 10px 12px;
  width: 100% !important;
}

div.pagina_servizi_banca .bank-money-field__input{
  font-size: 16px;
  text-align: center;
}

div.pagina_servizi_banca .bank-action-card__field{
  margin: 0;
  text-align: left;
}

div.pagina_servizi_banca .bank-action-card__field-label{
  color: rgba(219, 247, 252, 0.82);
  display: block;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin-bottom: 6px;
  text-transform: uppercase;
}

div.pagina_servizi_banca .bank-action-card__select{
  width: 100%;
}

div.pagina_servizi_banca .bank-action-card__input::placeholder{
  color: rgba(214, 244, 250, 0.42);
}

div.pagina_servizi_banca div.form_submit.bank-action-card__submit{
  margin-top: 4px;
}

div.pagina_servizi_banca .bank-action-card__button{
  background:
    linear-gradient(180deg, rgba(34, 55, 63, 0.96), rgba(13, 25, 31, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.10), rgba(244, 222, 163, 0.10));
  border: 1px solid rgba(126, 231, 255, 0.28);
  border-radius: 999px;
  color: #f1fdff;
  cursor: pointer;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin: 0;
  min-width: 160px;
  padding: 10px 18px;
  text-transform: uppercase;
  width: auto !important;
}

div.pagina_servizi_banca .bank-action-card__button:hover,
div.pagina_servizi_banca .bank-action-card__button:focus{
  background:
    linear-gradient(180deg, rgba(46, 76, 86, 0.98), rgba(18, 36, 44, 1)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.16), rgba(244, 222, 163, 0.14));
  border-color: rgba(244, 222, 163, 0.40);
  color: #ffffff;
  outline: none;
}

@media screen and (max-width: 840px){
  div.pagina_servizi_banca .bank-overview__grid,
  div.pagina_servizi_banca .bank-actions-grid{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_banca div.form_gioco.bank-action-card.bank-action-card--transfer,
  div.pagina_servizi_banca div.form_gioco.bank-action-card.bank-action-card--convert{
    grid-column: auto;
  }
}

@media screen and (max-width: 640px){
  div.pagina_servizi_banca{
    padding-left: 8px;
    padding-right: 8px;
  }

  div.pagina_servizi_banca div.panels_box.bank-overview,
  div.pagina_servizi_banca div.form_gioco.bank-action-card{
    padding: 16px 14px;
  }

  div.pagina_servizi_banca .bank-money-grid{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_banca .bank-summary-card__value,
  div.pagina_servizi_banca .bank-summary-card__money{
    font-size: 20px;
  }
}
div.pagina_servizi_lavoro{
  --job-panel-bg:
    linear-gradient(90deg, rgba(7, 12, 18, 0.96), rgba(15, 24, 34, 0.84) 56%, rgba(8, 13, 19, 0.95)),
    linear-gradient(180deg, rgba(125, 183, 207, 0.12), rgba(23, 27, 31, 0.12) 38%, rgba(8, 10, 12, 0.58));
  --job-panel-bg-soft: linear-gradient(180deg, rgba(125, 183, 207, 0.08), rgba(255, 255, 255, 0.02));
  --job-panel-border: rgba(125, 183, 207, 0.20);
  --job-panel-border-strong: rgba(191, 228, 243, 0.32);
  --job-shadow: 0 14px 32px rgba(0, 0, 0, 0.34);
  --job-accent: #7db7cf;
  --job-accent-soft: #eef8fb;
  background:
    radial-gradient(circle at top, rgba(125, 183, 207, 0.12), transparent 42%),
    linear-gradient(180deg, rgba(11, 14, 18, 0.72), rgba(7, 10, 13, 0.26)),
    linear-gradient(90deg, rgba(7, 12, 18, 0.96), rgba(15, 24, 34, 0.84) 56%, rgba(8, 13, 19, 0.95)),
    url("../../imgs/bgsinistro.png") top center / 200px 1149px no-repeat;
  border: 1px solid rgba(125, 183, 207, 0.24);
  border-radius: 18px;
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.28);
  overflow: hidden;
  padding: 8px 10px 14px;
}

div.pagina_servizi_lavoro div.page_title{
  margin-bottom: 14px;
}

div.pagina_servizi_lavoro div.page_title h2{
  border-bottom-color: rgba(125, 183, 207, 0.28);
  color: #eef8fb;
  display: inline-block;
  letter-spacing: 0.08em;
  margin: 0 auto;
  padding: 0 18px 6px 18px;
  text-transform: uppercase;
}

div.pagina_servizi_lavoro div.page_body{
  display: flex;
  flex-direction: column;
  gap: 14px;
}

div.pagina_servizi_lavoro div.warning,
div.pagina_servizi_lavoro div.error{
  background:
    linear-gradient(180deg, rgba(19, 28, 33, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(125, 183, 207, 0.08), rgba(191, 228, 243, 0.04));
  border: 1px solid rgba(125, 183, 207, 0.24);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  color: #f8fcff;
  margin: 0 auto;
  max-width: 980px;
  width: 100%;
}

div.pagina_servizi_lavoro div.link_back,
div.pagina_servizi_lavoro div.panels_link{
  background:
    linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(125, 183, 207, 0.10), rgba(191, 228, 243, 0.06));
  border: 1px solid rgba(125, 183, 207, 0.24);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
  margin: 0 auto;
  max-width: 260px;
  padding: 6px 16px;
  text-align: center;
}

div.pagina_servizi_lavoro div.link_back a,
div.pagina_servizi_lavoro div.link_back a:visited,
div.pagina_servizi_lavoro div.panels_link a,
div.pagina_servizi_lavoro div.panels_link a:visited{
  color: #eef8fb;
  display: block;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-top: 0;
}

div.pagina_servizi_lavoro div.link_back a:hover,
div.pagina_servizi_lavoro div.panels_link a:hover{
  color: #c8ecfa;
  margin-top: 0;
}

div.pagina_servizi_lavoro div.panels_box.job-overview{
  background: var(--job-panel-bg);
  border: 1px solid var(--job-panel-border);
  border-radius: 18px;
  box-shadow: var(--job-shadow);
  margin: 0 auto;
  max-width: 1120px;
  padding: 16px 18px;
  text-align: center;
  width: 100%;
}

div.pagina_servizi_lavoro .job-overview__lead{
  color: #e4f2f8;
  font-size: 13px;
  line-height: 1.5;
}

div.pagina_servizi_lavoro .job-overview__status{
  background: rgba(125, 183, 207, 0.06);
  border: 1px dashed rgba(125, 183, 207, 0.24);
  border-radius: 999px;
  color: #def9ff;
  display: inline-block;
  margin-top: 10px;
  padding: 8px 14px;
}

div.pagina_servizi_lavoro .job-list-grid{
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 auto;
  max-width: 1120px;
  width: 100%;
}

div.pagina_servizi_lavoro article.job-card{
  background: var(--job-panel-bg);
  border: 1px solid var(--job-panel-border);
  border-radius: 16px;
  box-shadow: var(--job-shadow);
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow: hidden;
  padding: 12px;
  position: relative;
}

div.pagina_servizi_lavoro article.job-card::before{
  background: linear-gradient(90deg, rgba(125, 183, 207, 0.95), rgba(125, 183, 207, 0));
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  right: 25%;
  top: 0;
}

div.pagina_servizi_lavoro article.job-card.is-current{
  border-color: var(--job-panel-border-strong);
  box-shadow:
    var(--job-shadow),
    inset 0 0 0 1px rgba(191, 228, 243, 0.10);
}

div.pagina_servizi_lavoro .job-card__crest{
  align-items: center;
  background: var(--job-panel-bg-soft);
  border: 1px solid rgba(125, 183, 207, 0.12);
  border-radius: 14px;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  min-height: 68px;
  padding: 8px;
  width: 100%;
}

div.pagina_servizi_lavoro .job-card__crest img{
  display: block;
  height: auto;
  margin: 0 auto;
  max-height: 46px;
  max-width: 46px;
}

div.pagina_servizi_lavoro .job-card__content{
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: center;
}

div.pagina_servizi_lavoro .job-card__header{
  display: flex;
  flex-direction: column;
  gap: 4px;
}

div.pagina_servizi_lavoro .job-card__label,
div.pagina_servizi_lavoro .job-card__detail-label{
  color: rgba(222, 247, 255, 0.78);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

div.pagina_servizi_lavoro .job-card__title{
  color: var(--job-accent-soft);
  font-size: 17px;
  line-height: 1.15;
  margin: 0;
}

div.pagina_servizi_lavoro .job-card__details{
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr;
}

div.pagina_servizi_lavoro .job-card__detail{
  background: var(--job-panel-bg-soft);
  border: 1px solid rgba(125, 183, 207, 0.10);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  justify-content: center;
  min-height: 0;
  padding: 10px;
}

div.pagina_servizi_lavoro .job-card__detail-value{
  align-items: center;
  color: #eef8fb;
  display: flex;
  font-size: 13px;
  justify-content: center;
  line-height: 1.35;
  min-height: 0;
}

div.pagina_servizi_lavoro .job-card__money .gdrcd-money__part{
  gap: 4px;
}

div.pagina_servizi_lavoro .job-card__money .gdrcd-money__value{
  font-size: 1.05em;
}

div.pagina_servizi_lavoro form.job-card__form{
  margin: 0;
  text-align: center;
  width: 100%;
}

div.pagina_servizi_lavoro .job-card__button{
  background:
    linear-gradient(180deg, rgba(40, 56, 64, 0.96), rgba(16, 25, 31, 0.98)),
    linear-gradient(90deg, rgba(125, 183, 207, 0.14), rgba(191, 228, 243, 0.08));
  border: 1px solid rgba(125, 183, 207, 0.26);
  border-radius: 999px;
  color: #f8fcff;
  cursor: pointer;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin: 0;
  min-width: 0;
  padding: 8px 12px;
  text-transform: uppercase;
  width: 100%;
}

div.pagina_servizi_lavoro .job-card__button:hover,
div.pagina_servizi_lavoro .job-card__button:focus{
  background:
    linear-gradient(180deg, rgba(55, 76, 86, 0.98), rgba(20, 34, 42, 1)),
    linear-gradient(90deg, rgba(125, 183, 207, 0.18), rgba(191, 228, 243, 0.14));
  border-color: rgba(191, 228, 243, 0.34);
  color: #ffffff;
  outline: none;
}

div.pagina_servizi_lavoro .job-card__button--quit{
  border-color: rgba(226, 143, 126, 0.34);
}

div.pagina_servizi_lavoro .job-card__status{
  color: #def9ff;
  display: inline-block;
  font-size: 11px;
}

div.pagina_servizi_lavoro .job-card__status--empty{
  opacity: 0.45;
}

@media screen and (max-width: 920px){
  div.pagina_servizi_lavoro .job-list-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media screen and (max-width: 760px){
  div.pagina_servizi_lavoro{
    padding-left: 8px;
    padding-right: 8px;
  }

  div.pagina_servizi_lavoro div.panels_box.job-overview,
  div.pagina_servizi_lavoro article.job-card{
    padding: 14px 12px;
  }

  div.pagina_servizi_lavoro .job-card__details{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_lavoro .job-list-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  div.pagina_servizi_lavoro .job-card__title{
    font-size: 16px;
  }

  div.pagina_servizi_lavoro .job-card__detail{
    min-height: 0;
  }
}

@media screen and (max-width: 520px){
  div.pagina_servizi_lavoro .job-list-grid{
    grid-template-columns: 1fr;
  }
}

/* ============================================================
   SERVIZI_ANAGRAFE
   ============================================================ */
div.pagina_servizi_anagrafe{
  --anagrafe-panel-bg:
    linear-gradient(90deg, rgba(6, 9, 12, 0.94), rgba(14, 15, 16, 0.74) 56%, rgba(8, 12, 14, 0.94)),
    linear-gradient(180deg, rgba(125, 183, 207, 0.16), rgba(20, 25, 28, 0.18) 36%, rgba(6, 10, 12, 0.56));
  --anagrafe-panel-border: rgba(125, 183, 207, 0.22);
  --anagrafe-panel-shadow: 0 14px 32px rgba(0, 0, 0, 0.34);
  background:
    radial-gradient(circle at top, rgba(69, 180, 255, 0.10), transparent 42%),
    linear-gradient(180deg, rgba(8, 12, 15, 0.92), rgba(4, 7, 9, 0.98));
}

div.pagina_servizi_anagrafe div.page_body{
  display: flex;
  flex-direction: column;
  gap: 14px;
}

div.pagina_servizi_anagrafe .anagrafe-filter-section{
  background: var(--anagrafe-panel-bg);
  border: 1px solid var(--anagrafe-panel-border);
  border-radius: 18px;
  box-shadow: var(--anagrafe-panel-shadow);
  margin: 0 auto;
  max-width: 1120px;
  padding: 14px 18px;
  width: 100%;
}

div.pagina_servizi_anagrafe .anagrafe-filter-label{
  color: rgba(175, 220, 240, 0.78);
  font-size: 11px;
  letter-spacing: 0.14em;
  margin-bottom: 10px;
  text-transform: uppercase;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-form{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  width: 100%;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-grid{
  align-items: flex-end;
  display: flex;
  flex: 1 1 780px;
  flex-wrap: wrap;
  gap: 12px;
  min-width: 0;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-field{
  display: flex;
  flex-direction: column;
  flex: 1 1 128px;
  gap: 6px;
  min-width: 128px;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-field--name{
  flex: 1.4 1 200px;
  min-width: 180px;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-field--select{
  flex: 1 1 124px;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-field span{
  color: #d8f3ff;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-field input,
div.pagina_servizi_anagrafe .anagrafe-advanced-field select{
  background: rgba(8, 15, 18, 0.86);
  border: 1px solid rgba(125, 183, 207, 0.22);
  border-radius: 12px;
  box-sizing: border-box;
  color: #eef8ff;
  min-height: 38px;
  padding: 8px 12px;
  width: 100%;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-field input::placeholder{
  color: rgba(205, 235, 248, 0.48);
}

div.pagina_servizi_anagrafe .anagrafe-advanced-actions{
  align-items: center;
  align-self: flex-end;
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  margin-left: auto;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-submit,
div.pagina_servizi_anagrafe .anagrafe-advanced-reset,
div.pagina_servizi_anagrafe .anagrafe-advanced-reset:visited{
  background: rgba(125, 183, 207, 0.10);
  border: 1px solid rgba(125, 183, 207, 0.24);
  border-radius: 999px;
  box-sizing: border-box;
  color: #eef8ff;
  display: inline-flex;
  font-size: 12px;
  font-weight: bold;
  justify-content: center;
  letter-spacing: 0.06em;
  margin-top: 0;
  min-height: 38px;
  padding: 8px 16px;
  text-decoration: none;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  white-space: nowrap;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-submit{
  cursor: pointer;
}

div.pagina_servizi_anagrafe .anagrafe-advanced-submit:hover,
div.pagina_servizi_anagrafe .anagrafe-advanced-reset:hover{
  background: rgba(125, 183, 207, 0.22);
  border-color: rgba(125, 183, 207, 0.55);
  color: #ffffff;
}

div.pagina_servizi_anagrafe .anagrafe-filter-nav{
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

/* Scelta dell'elenco (personaggi / PNG): stessi pulsanti dei filtri, staccati dal resto */
div.pagina_servizi_anagrafe .anagrafe-elenco-tabs{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(125, 183, 207, 0.25);
}

div.pagina_servizi_anagrafe a.anagrafe-filter-btn,
div.pagina_servizi_anagrafe a.anagrafe-filter-btn:visited{
  background: rgba(125, 183, 207, 0.07);
  border: 1px solid rgba(125, 183, 207, 0.20);
  border-radius: 999px;
  color: #bde8f8;
  display: inline-block;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-top: 0;
  padding: 3px 10px;
  text-decoration: none;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}

div.pagina_servizi_anagrafe a.anagrafe-filter-btn:hover,
div.pagina_servizi_anagrafe a.anagrafe-filter-btn.is-active{
  background: rgba(125, 183, 207, 0.22);
  border-color: rgba(125, 183, 207, 0.55);
  color: #eef8ff;
  margin-top: 0;
}

div.pagina_servizi_anagrafe .anagrafe-results{
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0 auto;
  max-width: 1120px;
  width: 100%;
}

div.pagina_servizi_anagrafe .anagrafe-results-header{
  background: var(--anagrafe-panel-bg);
  border: 1px solid var(--anagrafe-panel-border);
  border-radius: 14px;
  box-shadow: var(--anagrafe-panel-shadow);
  color: #d6f0ff;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.10em;
  padding: 10px 16px;
  text-align: center;
  text-transform: uppercase;
}

div.pagina_servizi_anagrafe .anagrafe-results-value{
  color: #7ee7ff;
}

div.pagina_servizi_anagrafe .anagrafe-pg-grid{
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
}

div.pagina_servizi_anagrafe .anagrafe-pg-card{
  align-items: center;
  background: linear-gradient(180deg, rgba(125, 183, 207, 0.07), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(125, 183, 207, 0.14);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  display: flex;
  gap: 8px;
  justify-content: space-between;
  overflow: hidden;
  padding: 10px 12px;
  position: relative;
}

div.pagina_servizi_anagrafe .anagrafe-pg-card::before{
  background: linear-gradient(90deg, rgba(125, 183, 207, 0.85), rgba(125, 183, 207, 0));
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  right: 40%;
  top: 0;
}

div.pagina_servizi_anagrafe .anagrafe-pg-card:hover{
  border-color: rgba(125, 183, 207, 0.34);
}

div.pagina_servizi_anagrafe a.anagrafe-pg-name,
div.pagina_servizi_anagrafe a.anagrafe-pg-name:visited{
  color: #cde8f5;
  flex: 1;
  font-size: 12px;
  line-height: 1.4;
  margin-top: 0;
  text-decoration: none;
}

div.pagina_servizi_anagrafe a.anagrafe-pg-name:hover{
  color: #eef8ff;
  margin-top: 0;
}

div.pagina_servizi_anagrafe a.anagrafe-pg-mail{
  display: flex;
  flex-shrink: 0;
  margin-top: 0;
  opacity: 0.60;
}

div.pagina_servizi_anagrafe a.anagrafe-pg-mail:hover{
  margin-top: 0;
  opacity: 1;
}

div.pagina_servizi_anagrafe a.anagrafe-pg-mail img{
  display: block;
  height: 16px;
  width: auto;
}

div.pagina_servizi_anagrafe div.link_back{
  background:
    linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(125, 183, 207, 0.10), rgba(191, 228, 243, 0.06));
  border: 1px solid rgba(125, 183, 207, 0.24);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
  margin: 0 auto;
  max-width: 260px;
  padding: 6px 16px;
  text-align: center;
}

div.pagina_servizi_anagrafe div.link_back a,
div.pagina_servizi_anagrafe div.link_back a:visited{
  color: #eef8fb;
  display: block;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-top: 0;
}

div.pagina_servizi_anagrafe div.link_back a:hover{
  color: #c8ecfa;
  margin-top: 0;
}

@media screen and (max-width: 720px){
  div.pagina_servizi_anagrafe .anagrafe-advanced-form{
    align-items: stretch;
  }
  div.pagina_servizi_anagrafe .anagrafe-advanced-grid{
    flex: 1 1 100%;
  }
  div.pagina_servizi_anagrafe .anagrafe-advanced-field{
    flex: 1 1 calc(50% - 6px);
    min-width: 0;
  }
  div.pagina_servizi_anagrafe .anagrafe-advanced-actions{
    justify-content: flex-start;
    margin-left: 0;
    width: 100%;
  }
  div.pagina_servizi_anagrafe .anagrafe-pg-grid{
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  }
}

@media screen and (max-width: 480px){
  div.pagina_servizi_anagrafe .anagrafe-advanced-grid{
    width: 100%;
  }
  div.pagina_servizi_anagrafe .anagrafe-advanced-field,
  div.pagina_servizi_anagrafe .anagrafe-advanced-field--name,
  div.pagina_servizi_anagrafe .anagrafe-advanced-field--select{
    flex: 1 1 100%;
  }
  div.pagina_servizi_anagrafe .anagrafe-advanced-submit,
  div.pagina_servizi_anagrafe .anagrafe-advanced-reset,
  div.pagina_servizi_anagrafe .anagrafe-advanced-reset:visited{
    width: 100%;
  }
  div.pagina_servizi_anagrafe .anagrafe-pg-grid{
    grid-template-columns: 1fr 1fr;
  }
}

/* Ripristino allineamento titoli colonne Servizi_Gilde */
div.pagina_servizi_gilde td.casella_titolo,
div.pagina_servizi_gilde div.titoli_elenco {
  text-align: center;
}
/* Ripristino allineamento Servizi_Mercato e immagini Servizi_Gilde */

/* Servizi_Gilde: titoli e icone centrati */
div.pagina_servizi_gilde td.casella_titolo,
div.pagina_servizi_gilde div.titoli_elenco,
div.pagina_servizi_gilde div.icone_elenco {
  text-align: center;
}

div.pagina_servizi_gilde div.icone_elenco img {
  display: block;
  margin: 0 auto;
}

div.pagina_servizi_gilde div.guild-sb-entry {
  margin: 14px auto 8px auto;
  max-width: 560px;
}

div.pagina_servizi_gilde a.guild-sb-entry__link,
div.pagina_servizi_gilde a.guild-sb-entry__link:visited {
  align-items: center;
  background-image: url(../../imgs/DOC.png);
  border: 1px solid #6a6a6a;
  border-radius: 10px;
  box-shadow: 0 2px 7px rgba(0, 0, 0, 0.35);
  display: flex;
  gap: 14px;
  margin-top: 0;
  min-height: 82px;
  padding: 10px 14px;
  text-decoration: none;
}

div.pagina_servizi_gilde a.guild-sb-entry__link:hover {
  border-color: #d9b277;
  color: #ffffff;
  margin-top: 0;
}

div.pagina_servizi_gilde .guild-sb-entry__icon_wrap {
  align-items: center;
  background: rgba(0, 0, 0, 0.24);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 8px;
  display: flex;
  flex: 0 0 64px;
  height: 64px;
  justify-content: center;
  width: 64px;
}

div.pagina_servizi_gilde img.guild-sb-entry__icon {
  border-radius: 6px;
  display: block;
  height: 64px;
  margin: 0;
  object-fit: cover;
  width: 64px;
}

div.pagina_servizi_gilde .guild-sb-entry__text {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.15;
  text-align: left;
}

div.pagina_servizi_gilde .guild-sb-entry__title {
  color: #ffd78f;
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 19px;
  font-variant: small-caps;
  font-weight: bolder;
  text-shadow: 0 1px 2px #000;
}

div.pagina_servizi_gilde .guild-sb-entry__subtitle {
  color: #f0f0f0;
  font-size: 13px;
  margin-top: 4px;
}

div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input {
  margin-bottom: 0;
  max-width: 88px;
  text-align: center;
  width: 88px !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  margin: 2px 0 6px 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-cell {
  align-items: center;
  display: inline-flex;
  gap: 5px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit {
  display: flex;
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-bank-first-label {
  margin-top: 12px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-first-label {
  margin-top: 12px;
}

div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input {
  margin-bottom: 0;
  max-width: 74px;
  text-align: center;
  width: 74px !important;
}

div.pagina_servizi_gilde_tesoreria table.guild-sb-storage-table {
  border-collapse: separate;
  border-spacing: 0 8px;
}

div.pagina_servizi_gilde_tesoreria table.guild-sb-storage-table tr.guild-sb-item-row td {
  background: transparent !important;
}

div.pagina_servizi_gilde_tesoreria td.guild-sb-row-shell {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-row-box {
  background: rgba(0, 0, 0, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  box-sizing: border-box;
  padding: 6px 8px;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-row-grid {
  align-items: stretch;
  column-gap: 8px;
  display: grid;
  grid-template-columns: 26% 24% 36% 14%;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-row-grid > div {
  box-sizing: border-box;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria table.guild-sb-storage-table td.casella_titolo div.titoli_elenco {
  padding-left: 0 !important;
  text-align: center !important;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-col {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center !important;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-name {
  font-size: 12px;
  font-variant: small-caps;
  margin-bottom: 4px;
  text-align: center !important;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-image img {
  display: block;
  height: 108px;
  margin: 0 auto;
  object-fit: cover;
  width: 72px;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-image--empty {
  font-size: 10px;
  font-style: italic;
  opacity: 0.8;
  text-align: center !important;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-bonus-col {
  align-self: stretch;
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center !important;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-desc-col {
  align-self: stretch;
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 0 !important;
  text-align: center !important;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-bonus-wrap {
  margin: 0 auto;
  max-width: 240px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-bonus-wrap div.inventario_riga_proprieta {
  align-items: baseline;
  display: flex;
  font-size: 10px;
  gap: 5px;
  justify-content: center;
  line-height: 1.25;
  margin-bottom: 2px;
}

div.pagina_servizi_gilde_tesoreria span.guild-sb-bonus-label,
div.pagina_servizi_gilde_tesoreria span.guild-sb-bonus-value {
  font-weight: bold;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria span.guild-sb-bonus-empty {
  display: inline-block;
  white-space: nowrap;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-description {
  font-size: 11px;
  line-height: 1.3;
  margin: 0 auto !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  padding-left: 0 !important;
  text-align: center !important;
  text-indent: 0 !important;
  white-space: pre-line;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-qty-col {
  align-items: center;
  display: flex;
  justify-content: center;
  text-align: center !important;
}

@media (max-width: 900px) {
  div.pagina_servizi_gilde_tesoreria div.guild-sb-row-grid {
    grid-template-columns: 1fr;
    row-gap: 8px;
  }

  div.pagina_servizi_gilde_tesoreria td.guild-sb-bonus-head div.titoli_elenco {
    padding-left: 0;
    text-align: center !important;
  }
}

div.pagina_servizi_gilde_tesoreria{
  --guild-sb-content-width: min(100%, 1680px);
  --guild-sb-panel-bg:
    linear-gradient(90deg, rgba(6, 9, 12, 0.94), rgba(14, 15, 16, 0.74) 56%, rgba(8, 12, 14, 0.94)),
    linear-gradient(180deg, rgba(214, 179, 98, 0.16), rgba(20, 25, 28, 0.16) 38%, rgba(6, 10, 12, 0.58));
  --guild-sb-panel-bg-soft: linear-gradient(180deg, rgba(126, 231, 255, 0.08), rgba(255, 255, 255, 0.02));
  --guild-sb-border: rgba(126, 231, 255, 0.20);
  --guild-sb-border-strong: rgba(244, 222, 163, 0.44);
  --guild-sb-shadow: 0 14px 32px rgba(0, 0, 0, 0.34);
  background:
    radial-gradient(circle at top, rgba(69, 229, 255, 0.12), transparent 42%),
    linear-gradient(180deg, rgba(11, 14, 18, 0.72), rgba(7, 10, 13, 0.26)),
    linear-gradient(90deg, rgba(6, 9, 12, 0.94), rgba(14, 15, 16, 0.74) 56%, rgba(8, 12, 14, 0.94)),
    url("../../imgs/bgsinistro.png") top center / 200px 1149px no-repeat;
  border: 1px solid rgba(214, 184, 111, 0.30);
  border-radius: 18px;
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.28);
  box-sizing: border-box;
  overflow: hidden;
  padding: 10px 12px 18px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria div.page_title{
  margin-bottom: 14px;
}

div.pagina_servizi_gilde_tesoreria div.page_title h2{
  border-bottom-color: rgba(126, 231, 255, 0.30);
  color: #ecfbff;
  display: inline-block;
  letter-spacing: 0.08em;
  margin: 0 auto;
  padding: 0 18px 6px 18px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria div.page_body{
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria div.warning,
div.pagina_servizi_gilde_tesoreria div.error{
  background:
    linear-gradient(180deg, rgba(19, 28, 33, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.06), rgba(244, 222, 163, 0.06));
  border: 1px solid rgba(126, 231, 255, 0.24);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
  color: #f0fbff;
  margin: 0 auto;
  max-width: none;
  width: var(--guild-sb-content-width);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-feedback-list{
  display: flex;
  flex-direction: column;
  gap: 12px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-feedback{
  margin: 0 auto;
  max-width: none;
  width: var(--guild-sb-content-width);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-panel{
  background: var(--guild-sb-panel-bg);
  border: 1px solid var(--guild-sb-border);
  border-radius: 20px;
  box-sizing: border-box;
  box-shadow: var(--guild-sb-shadow);
  margin: 0 auto;
  max-width: none;
  padding: 22px;
  width: var(--guild-sb-content-width);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-hero{
  margin-bottom: 18px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-hero__eyebrow{
  color: rgba(214, 244, 250, 0.78);
  font-size: 11px;
  letter-spacing: 0.18em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-hero__title{
  color: #ecfbff;
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 28px;
  font-variant: small-caps;
  font-weight: bolder;
  line-height: 1.1;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-hero__meta{
  color: #d6eef2;
  font-size: 12px;
  margin-top: 8px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-summary-grid{
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

div.pagina_servizi_gilde_tesoreria .guild-sb-summary-card{
  background: linear-gradient(180deg, rgba(126, 231, 255, 0.06), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 16px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    inset 0 0 18px rgba(69, 229, 255, 0.04);
  overflow: hidden;
  padding: 18px 16px;
  position: relative;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-summary-card::before{
  background: linear-gradient(90deg, rgba(126, 231, 255, 0.95), rgba(126, 231, 255, 0));
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  right: 25%;
  top: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-summary-card__label{
  color: rgba(214, 244, 250, 0.78);
  font-size: 11px;
  letter-spacing: 0.12em;
  margin-bottom: 10px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-summary-card__value{
  color: #f2fdff;
  font-size: 22px;
  line-height: 1.2;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-summary-card__money{
  font-size: 22px;
  gap: 8px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-summary-card__money .gdrcd-money__part{
  gap: 4px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-summary-card__text{
  color: #d6eef2;
  display: inline-block;
  font-size: 15px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-permission-list{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-permission-badge{
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(244, 222, 163, 0.16);
  border-radius: 999px;
  color: #d5dde0;
  display: inline-flex;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.04em;
  padding: 7px 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-permission-badge--ok{
  background: rgba(126, 231, 255, 0.10);
  border-color: rgba(126, 231, 255, 0.24);
  color: #ecfbff;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-section-grid{
  box-sizing: border-box;
  display: grid;
  gap: 18px;
  grid-template-columns: 1fr;
  margin: 0 auto;
  width: var(--guild-sb-content-width);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-section-grid > .guild-sb-panel{
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-panel .capitolo_elenco{
  color: #f4dea3;
  margin-bottom: 16px;
  text-align: center !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-operation-grid{
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card{
  background: var(--guild-sb-panel-bg-soft);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  margin: 0;
  overflow: hidden;
  padding: 16px 18px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card--wide,
div.pagina_servizi_gilde_tesoreria .guild-sb-inline-warning{
  grid-column: 1 / -1;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card--deposit{
  border-top: 3px solid rgba(228, 184, 73, 0.72);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card--withdraw{
  border-top: 3px solid rgba(229, 228, 226, 0.72);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card--transfer{
  border-top: 3px solid rgba(126, 231, 255, 0.72);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card--warehouse{
  border-top: 3px solid rgba(244, 222, 163, 0.60);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card form{
  display: flex;
  flex-direction: column;
  gap: 14px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__title{
  color: #ecfbff;
  font-size: 14px;
  letter-spacing: 0.10em;
  margin: 0;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__field,
div.pagina_servizi_gilde_tesoreria .guild-sb-qty-row{
  margin: 0;
  text-align: left !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__field-label{
  color: rgba(219, 247, 252, 0.82);
  display: block;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.10em;
  margin-bottom: 6px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-transfer-fields{
  align-items: flex-end;
  display: flex;
  gap: 14px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__field--cause{
  flex: 1 1 auto;
  min-width: 260px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__field--target{
  flex: 0 0 auto;
  min-width: 260px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__field--target .guild-sb-select{
  min-width: 260px;
  width: max-content !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row{
  align-items: flex-end;
  display: flex;
  gap: 12px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row .guild-sb-form-card__field{
  flex: 1 1 0;
  min-width: 220px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row .guild-sb-qty-row{
  flex: 0 0 120px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row input.guild-sb-qty-input{
  max-width: none;
  width: 100% !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row .guild-sb-money-submit{
  flex: 0 0 auto;
  margin-top: 0;
  padding-top: 17px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-grid{
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-card{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 14px;
  display: block;
  padding: 12px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-card__label{
  display: block;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin-bottom: 8px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-card--platino .guild-sb-money-card__label{
  color: #e5e4e2;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-card--oro .guild-sb-money-card__label{
  color: #e4b849;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-card--argento .guild-sb-money-card__label{
  color: #d0d0d0;
}

div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input,
div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input,
div.pagina_servizi_gilde_tesoreria .guild-sb-control{
  background: rgba(7, 12, 14, 0.88);
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 10px;
  box-sizing: border-box;
  color: #effcff;
  margin: 0;
  max-width: none;
  padding: 10px 12px;
  width: 100% !important;
}

div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input{
  font-size: 16px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input{
  max-width: 120px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__hint{
  color: #d6eef2;
  font-size: 12px;
  line-height: 1.4;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit{
  display: flex;
  justify-content: center;
  margin-top: 4px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit input[type="submit"]{
  background:
    linear-gradient(180deg, rgba(34, 55, 63, 0.96), rgba(13, 25, 31, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.10), rgba(244, 222, 163, 0.10));
  border: 1px solid rgba(126, 231, 255, 0.28);
  border-radius: 999px;
  color: #f1fdff;
  cursor: pointer;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin: 0;
  min-width: 170px;
  padding: 10px 18px;
  text-transform: uppercase;
  width: auto !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit input[type="submit"]:focus{
  background:
    linear-gradient(180deg, rgba(46, 76, 86, 0.98), rgba(18, 36, 44, 1)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.16), rgba(244, 222, 163, 0.14));
  border-color: rgba(244, 222, 163, 0.40);
  color: #ffffff;
  outline: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-inline-warning{
  margin: 0;
  max-width: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-empty-card{
  background: rgba(255, 255, 255, 0.03);
  border: 1px dashed rgba(126, 231, 255, 0.22);
  border-radius: 16px;
  color: #d6eef2;
  padding: 18px;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-row-box{
  background: linear-gradient(180deg, rgba(126, 231, 255, 0.06), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 16px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 10px 24px rgba(0, 0, 0, 0.12);
  margin-bottom: 12px;
  padding: 14px 16px;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-row-grid{
  align-items: stretch;
  column-gap: 12px;
  display: grid;
  grid-template-columns: 26% 24% 36% 14%;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-col,
div.pagina_servizi_gilde_tesoreria div.guild-sb-bonus-col,
div.pagina_servizi_gilde_tesoreria div.guild-sb-desc-col,
div.pagina_servizi_gilde_tesoreria div.guild-sb-qty-col{
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-name{
  color: #ecfbff;
  font-size: 16px;
  font-variant: small-caps;
  font-weight: bold;
  margin-bottom: 6px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-item-meta{
  color: #d6eef2;
  font-size: 11px;
  margin-bottom: 8px;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-image img{
  border: 1px solid rgba(244, 222, 163, 0.18);
  border-radius: 10px;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
  height: 118px;
  width: 82px;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-image--empty{
  background: rgba(255, 255, 255, 0.03);
  border: 1px dashed rgba(126, 231, 255, 0.18);
  border-radius: 10px;
  color: #cdd9dc;
  padding: 18px 12px;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-bonus-wrap{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 12px;
  padding: 12px 10px;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-bonus-wrap div.inventario_riga_proprieta{
  font-size: 11px;
  gap: 6px;
  margin-bottom: 4px;
}

div.pagina_servizi_gilde_tesoreria span.guild-sb-bonus-label{
  color: #f4dea3;
}

div.pagina_servizi_gilde_tesoreria span.guild-sb-bonus-value{
  color: #ecfbff;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-desc-title{
  color: rgba(214, 244, 250, 0.86);
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.12em;
  margin-bottom: 6px;
  text-align: center;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-description{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 12px;
  color: #dbeef1;
  font-size: 12px;
  line-height: 1.5;
  padding: 12px !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-qty-badge{
  align-items: center;
  background: rgba(244, 222, 163, 0.10);
  border: 1px solid rgba(244, 222, 163, 0.20);
  border-radius: 999px;
  color: #fff5de;
  display: inline-flex;
  font-size: 18px;
  font-weight: bold;
  justify-content: center;
  min-height: 58px;
  min-width: 58px;
  padding: 0 12px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-links{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-links div.link_back{
  background:
    linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.08), rgba(244, 222, 163, 0.08));
  border: 1px solid rgba(126, 231, 255, 0.22);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
  margin: 0;
  max-width: 320px;
  padding: 6px 16px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-links div.link_back a,
div.pagina_servizi_gilde_tesoreria .guild-sb-links div.link_back a:visited{
  color: #ecfbff;
  display: block;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-top: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-links div.link_back a:hover{
  color: #f4dea3;
  margin-top: 0;
}

@media screen and (max-width: 900px){
  div.pagina_servizi_gilde_tesoreria .guild-sb-summary-grid,
  div.pagina_servizi_gilde_tesoreria .guild-sb-operation-grid,
  div.pagina_servizi_gilde_tesoreria div.guild-sb-row-grid{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-transfer-fields{
    align-items: stretch;
    flex-direction: column;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__field--cause,
  div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__field--target{
    min-width: 0;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-form-card__field--target .guild-sb-select{
    min-width: 0;
    width: 100% !important;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row{
    align-items: stretch;
    flex-direction: column;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row .guild-sb-form-card__field,
  div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row .guild-sb-qty-row{
    flex: 0 1 auto;
    min-width: 0;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-warehouse-action-row .guild-sb-money-submit{
    justify-content: center;
    padding-top: 0;
  }

}

@media screen and (max-width: 640px){
  div.pagina_servizi_gilde_tesoreria{
    padding-left: 8px;
    padding-right: 8px;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-panel{
    padding: 16px 14px;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-money-grid{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-hero__title{
    font-size: 24px;
  }
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-row-grid{
  grid-template-columns: minmax(210px, 260px) minmax(0, 1fr);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-main-col{
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-desc-col{
  align-items: stretch;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-description{
  box-sizing: border-box;
  max-width: none;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-action-col{
  align-items: stretch;
  display: flex;
  justify-content: center;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar{
  border-top: 1px solid rgba(126, 231, 255, 0.10);
  margin-top: 12px;
  padding-top: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-stack{
  align-items: stretch;
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-stack{
  align-items: stretch;
  align-content: stretch;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 10px 12px;
  justify-content: space-between;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-col div.guild-sb-bonus-col{
  align-self: stretch;
  margin-top: 10px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria div.guild-sb-item-col div.guild-sb-bonus-wrap{
  box-sizing: border-box;
  max-width: 100%;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-bonus-extra{
  border-top: 1px solid rgba(126, 231, 255, 0.10);
  margin-top: 7px;
  padding-top: 7px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-bonus-extra-row{
  color: #ecfbff;
  font-size: 11px;
  line-height: 1.25;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-bonus-extra-row span{
  color: #f4dea3;
  font-weight: bold;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-note-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-form{
  align-items: stretch;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 5px;
  max-width: 100%;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form{
  align-items: center;
  align-self: stretch;
  background:
    linear-gradient(180deg, rgba(19, 31, 38, 0.82), rgba(9, 15, 20, 0.88)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.06), rgba(244, 222, 163, 0.04));
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 12px;
  box-sizing: border-box;
  flex: 1 1 220px;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  max-width: none;
  min-width: 210px;
  padding: 8px 9px;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-form--wide{
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--wide{
  flex: 2 1 360px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--transfer{
  flex: 2.4 1 430px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--integrity,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--quality{
  flex: 1.7 1 330px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--take,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--split,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--merge,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--condition{
  flex: 1 1 220px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--take,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--split,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--merge,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--transfer{
  border-color: rgba(126, 231, 255, 0.18);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--condition,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--integrity,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--refund{
  background:
    linear-gradient(180deg, rgba(45, 24, 25, 0.78), rgba(18, 12, 15, 0.90)),
    linear-gradient(90deg, rgba(181, 92, 83, 0.10), rgba(244, 222, 163, 0.04));
  border-color: rgba(181, 92, 83, 0.28);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--discard,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form--quality{
  background:
    linear-gradient(180deg, rgba(33, 30, 22, 0.78), rgba(14, 14, 13, 0.90)),
    linear-gradient(90deg, rgba(244, 222, 163, 0.08), rgba(126, 231, 255, 0.04));
  border-color: rgba(244, 222, 163, 0.22);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-qty{
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-number{
  max-width: 100%;
  min-width: 0;
  text-align: center;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-target{
  flex: 0 1 auto;
  min-width: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-form select,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="number"],
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="submit"]{
  box-sizing: border-box;
  max-width: 100%;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form select,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form input[type="number"],
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form input[type="submit"]{
  flex: 0 0 auto;
  min-width: 0;
  width: auto !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-qty,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-number{
  flex: 0 0 76px;
  max-width: 86px;
  min-width: 70px;
  width: 76px !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-target{
  flex: 1 1 220px;
  max-width: none;
  min-width: 180px;
  width: 100% !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form input[type="submit"]{
  min-width: 96px;
  white-space: nowrap;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .guild-sb-note-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-detach-form input[type="submit"]{
  background:
    linear-gradient(180deg, rgba(34, 55, 63, 0.96), rgba(13, 25, 31, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.10), rgba(244, 222, 163, 0.10));
  border: 1px solid rgba(126, 231, 255, 0.26);
  border-radius: 10px;
  color: #ecfbff;
  cursor: pointer;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.04em;
  line-height: 1.2;
  margin: 0;
  padding: 7px 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-note-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-detach-form input[type="submit"]:hover{
  border-color: rgba(244, 222, 163, 0.42);
  color: #f4dea3;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card{
  background:
    linear-gradient(180deg, rgba(17, 28, 33, 0.96), rgba(7, 12, 14, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.08), rgba(244, 222, 163, 0.06));
  border: 1px solid rgba(126, 231, 255, 0.18);
  border-radius: 18px;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.20);
  box-sizing: border-box;
  margin-bottom: 0;
  overflow: hidden;
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card-grid{
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 240px));
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card:hover{
  transform: translateY(-1px);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card.is-open{
  border-color: rgba(244, 222, 163, 0.30);
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28);
  grid-column: 1 / -1;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card.arcane-card--needs-configuration{
  border-color: rgba(214, 82, 82, 0.38);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.20), 0 0 0 1px rgba(214, 82, 82, 0.22), 0 0 28px rgba(214, 82, 82, 0.26);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card.arcane-card--needs-configuration.is-open{
  border-color: rgba(221, 96, 96, 0.46);
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28), 0 0 0 1px rgba(221, 96, 96, 0.24), 0 0 30px rgba(221, 96, 96, 0.28);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card.arcane-card--needs-configuration .arcane-card__image{
  border-color: rgba(236, 145, 145, 0.34);
  box-shadow: 0 0 0 1px rgba(214, 82, 82, 0.16), 0 0 18px rgba(214, 82, 82, 0.22), 0 10px 22px rgba(0, 0, 0, 0.18);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__toggle{
  align-items: center;
  box-sizing: border-box;
  cursor: pointer;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(118px, 150px) minmax(0, 1fr);
  overflow: hidden;
  padding: 16px 18px;
  position: relative;
  transition: background 0.22s ease, box-shadow 0.22s ease;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card:not(.is-open){
  display: flex;
  flex-direction: column;
  height: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card:not(.is-open) .guild-sb-card__toggle{
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 10px;
  grid-template-columns: 1fr;
  justify-content: flex-start;
  min-height: 0;
  padding: 14px 18px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__toggle::after{
  border-bottom: 2px solid rgba(244, 222, 163, 0.84);
  border-right: 2px solid rgba(244, 222, 163, 0.84);
  content: "";
  height: 10px;
  position: absolute;
  right: 22px;
  top: 20px;
  transform: rotate(45deg);
  transition: transform 0.22s ease;
  width: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card.is-open .guild-sb-card__toggle::after{
  transform: rotate(-135deg);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__toggle:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-card__toggle:focus-visible{
  background: rgba(255, 255, 255, 0.025);
  box-shadow: inset 0 0 0 1px rgba(126, 231, 255, 0.16);
  outline: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__visual{
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 8px;
  justify-content: center;
  position: relative;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card:not(.is-open) .guild-sb-card__visual{
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__image-frame{
  display: block;
  height: 118px;
  position: relative;
  width: 86px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__image,
div.pagina_servizi_gilde_tesoreria .guild-sb-card__image-placeholder{
  border-radius: 12px;
  display: block;
  height: 118px;
  width: 86px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__image{
  background: rgba(0, 0, 0, 0.22);
  border: 1px solid rgba(244, 222, 163, 0.18);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
  object-fit: cover;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator{
  position: absolute;
  top: 10px;
  right: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  background: linear-gradient(180deg, rgba(35, 42, 57, 0.96), rgba(14, 17, 24, 0.96));
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 10px 18px rgba(0, 0, 0, 0.28);
  overflow: hidden;
  pointer-events: none;
  z-index: 2;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--with-crystal,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--with-crystal{
  right: 38px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator::before,
div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator::after{
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--ritual,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--ritual{
  border-color: rgba(246, 210, 125, 0.92);
  background: linear-gradient(180deg, rgba(104, 48, 20, 0.96), rgba(53, 22, 11, 0.96));
  box-shadow: 0 0 0 1px rgba(255, 235, 191, 0.08), 0 0 14px rgba(238, 180, 81, 0.36);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--spell,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--spell{
  border-color: rgba(190, 220, 255, 0.94);
  background: linear-gradient(180deg, rgba(49, 69, 118, 0.96), rgba(18, 28, 57, 0.96));
  box-shadow: 0 0 0 1px rgba(236, 244, 255, 0.08), 0 0 14px rgba(132, 181, 255, 0.34);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--spell::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--spell::before{
  width: 12px;
  height: 2px;
  transform: translate(-50%, -50%) rotate(45deg);
  border-radius: 2px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(201, 227, 255, 0.94));
  box-shadow: 0 0 8px rgba(223, 238, 255, 0.7);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--spell::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--spell::after{
  width: 6px;
  height: 6px;
  transform: translate(-10%, -120%);
  border-radius: 999px;
  background: radial-gradient(circle at center, rgba(255, 255, 255, 0.98) 0%, rgba(197, 224, 255, 0.96) 52%, rgba(118, 178, 255, 0.28) 100%);
  box-shadow: 0 0 8px rgba(197, 224, 255, 0.75);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--ritual::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--ritual::before{
  width: 10px;
  height: 10px;
  transform: translate(-50%, -50%);
  border: 2px solid rgba(255, 241, 211, 0.94);
  border-radius: 999px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--ritual::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--ritual::after{
  width: 4px;
  height: 4px;
  transform: translate(-50%, -50%);
  border-radius: 999px;
  background: rgba(255, 241, 211, 0.96);
  box-shadow: 0 0 6px rgba(255, 241, 211, 0.72);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--enchantment,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--enchantment{
  border-color: rgba(132, 220, 255, 0.94);
  background: linear-gradient(180deg, rgba(24, 56, 88, 0.96), rgba(11, 24, 44, 0.96));
  box-shadow: 0 0 0 1px rgba(225, 245, 255, 0.08), 0 0 14px rgba(92, 190, 255, 0.34);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--enchantment::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--enchantment::before{
  width: 9px;
  height: 9px;
  transform: translate(-50%, -50%);
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(230, 250, 255, 0.98), rgba(122, 214, 255, 0.92));
  box-shadow: 0 0 8px rgba(122, 214, 255, 0.48);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--enchantment::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--enchantment::after{
  width: 4px;
  height: 4px;
  transform: translate(20%, -145%);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 0 6px rgba(255, 255, 255, 0.72);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--potion,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--potion{
  border-color: rgba(139, 255, 215, 0.94);
  background: linear-gradient(180deg, rgba(17, 76, 61, 0.96), rgba(7, 39, 31, 0.96));
  box-shadow: 0 0 0 1px rgba(227, 255, 245, 0.08), 0 0 14px rgba(95, 230, 181, 0.34);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--potion::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--potion::before{
  width: 14px;
  height: 14px;
  transform: translate(-50%, -50%);
  background: linear-gradient(180deg, rgba(220, 255, 241, 0.98), rgba(105, 239, 191, 0.92));
  clip-path: polygon(38% 0, 62% 0, 62% 28%, 86% 92%, 14% 92%, 38% 28%);
  box-shadow: inset 0 0 0 1px rgba(18, 84, 66, 0.28);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--potion::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--potion::after{
  width: 3px;
  height: 3px;
  transform: translate(-50%, -2%);
  border-radius: 999px;
  background: rgba(18, 84, 66, 0.88);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--alchemy,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--alchemy{
  border-color: rgba(255, 211, 124, 0.94);
  background: linear-gradient(180deg, rgba(101, 63, 16, 0.96), rgba(47, 28, 8, 0.96));
  box-shadow: 0 0 0 1px rgba(255, 241, 211, 0.08), 0 0 14px rgba(241, 182, 72, 0.34);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--alchemy::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--alchemy::before{
  width: 14px;
  height: 14px;
  transform: translate(-50%, -50%);
  background: linear-gradient(180deg, rgba(255, 243, 214, 0.98), rgba(255, 195, 95, 0.92));
  clip-path: polygon(38% 0, 62% 0, 62% 28%, 86% 92%, 14% 92%, 38% 28%);
  box-shadow: inset 0 0 0 1px rgba(128, 74, 10, 0.22);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--alchemy::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--alchemy::after{
  width: 3px;
  height: 3px;
  transform: translate(-50%, -2%);
  border-radius: 999px;
  background: rgba(110, 67, 12, 0.86);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--infusion,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--infusion{
  border-color: rgba(214, 228, 255, 0.94);
  background: linear-gradient(180deg, rgba(61, 73, 103, 0.96), rgba(18, 24, 44, 0.96));
  box-shadow: 0 0 0 1px rgba(241, 246, 255, 0.08), 0 0 14px rgba(170, 197, 255, 0.30);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--infusion::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--infusion::before{
  width: 2px;
  height: 12px;
  transform: translate(-50%, -50%) rotate(45deg);
  border-radius: 2px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(201, 227, 255, 0.94));
  box-shadow: 0 0 8px rgba(223, 238, 255, 0.7);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__effect-indicator--infusion::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--infusion::after{
  width: 2px;
  height: 12px;
  transform: translate(-50%, -50%) rotate(-45deg);
  border-radius: 2px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(201, 227, 255, 0.94));
  box-shadow: 0 0 8px rgba(223, 238, 255, 0.7);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__crystal-indicator,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__crystal-indicator{
  position: absolute;
  top: 10px;
  right: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 28px;
  pointer-events: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__crystal-indicator::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__crystal-indicator::before{
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  height: 14px;
  transform: translate(-50%, -56%) rotate(45deg);
  border: 1px solid rgba(121, 201, 255, 0.72);
  border-radius: 3px;
  background: linear-gradient(135deg, rgba(219, 248, 255, 0.95) 0%, rgba(116, 206, 255, 0.86) 45%, rgba(55, 113, 255, 0.88) 100%);
  box-shadow: 0 0 12px rgba(87, 193, 255, 0.45);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__crystal-indicator::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__crystal-indicator::after{
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 5px;
  height: 5px;
  transform: translate(-50%, -92%) rotate(45deg);
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 0 6px rgba(255, 255, 255, 0.65);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__crystal-indicator.is-active,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__crystal-indicator.is-active{
  filter: drop-shadow(0 0 7px rgba(100, 255, 230, 0.65));
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .equip-v2-card__crystal-indicator.is-active::before,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__crystal-indicator.is-active::before{
  border-color: rgba(143, 255, 240, 0.95);
  background: linear-gradient(135deg, rgba(229, 255, 252, 1) 0%, rgba(127, 255, 236, 0.92) 38%, rgba(42, 190, 255, 0.92) 100%);
  box-shadow: 0 0 14px rgba(83, 239, 224, 0.7);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__image-placeholder{
  align-items: center;
  background: rgba(255, 255, 255, 0.03);
  border: 1px dashed rgba(126, 231, 255, 0.18);
  color: #d6eef2;
  display: flex;
  font-size: 11px;
  justify-content: center;
  line-height: 1.35;
  padding: 10px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__summary{
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card:not(.is-open) .arcane-card__summary{
  align-items: center;
  text-align: center;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__name{
  color: #ecfbff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.1;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__status{
  color: #f4dea3;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__meta{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card:not(.is-open) .arcane-card__meta{
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__meta span{
  align-items: center;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 999px;
  color: #dbeef1;
  display: inline-flex;
  font-size: 11px;
  gap: 4px;
  padding: 6px 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__meta strong{
  color: #f4dea3;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__meta strong::after{
  content: ":";
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__detail-shell{
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.42s ease, opacity 0.22s ease;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card.is-open .guild-sb-card__detail-shell{
  max-height: 16000px;
  opacity: 1;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card.is-open .guild-sb-card__toggle{
  padding-right: 46px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__detail{
  border-top: 1px solid rgba(126, 231, 255, 0.10);
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 14px 18px 18px 18px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__hero-grid{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__hero-grid > div{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 12px;
  min-width: 118px;
  padding: 8px 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__hero-grid span{
  color: #7ee7ff;
  display: block;
  font-size: 10px;
  letter-spacing: 0.08em;
  margin-bottom: 4px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__hero-grid strong{
  color: #ecfbff;
  font-size: 13px;
  line-height: 1.25;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__content-stack{
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__description{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 14px;
  box-sizing: border-box;
  padding: 12px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__subtitle{
  margin: 0 0 8px 0;
  text-align: left;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-bonus-wrap{
  box-sizing: border-box;
  max-width: none;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-card__visual-meta{
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 10px;
  color: #dbeef1;
  font-size: 10px;
  line-height: 1.25;
  max-width: 142px;
  padding: 7px 8px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card:not(.is-open) .guild-sb-card__visual-meta{
  display: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-card__visual-meta div.inventario_riga_proprieta{
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 3px 5px;
  justify-content: center;
  margin: 0 0 3px 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-card__visual-meta div.inventario_riga_proprieta:last-child{
  margin-bottom: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-item-description{
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #dbeef1;
  line-height: 1.5;
  padding: 0 !important;
  text-align: left !important;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-desc-title,
div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-note-title{
  text-align: left;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-note-strip{
  gap: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__actions{
  margin-top: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card__actions .guild-sb-action-stack{
  align-items: stretch;
  justify-content: space-between;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-detail-panel{
  margin-top: 0;
}

@media screen and (max-width: 820px){
  div.pagina_servizi_gilde_tesoreria .guild-sb-card-grid{
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-card__toggle{
    grid-template-columns: minmax(118px, 140px) minmax(0, 1fr);
    padding: 14px 16px;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-card__image-frame,
  div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__image,
  div.pagina_servizi_gilde_tesoreria .guild-sb-card__image-placeholder{
    height: 102px;
    width: 76px;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-card .guild-sb-card__visual-meta{
    max-width: 130px;
  }
}

@media screen and (max-width: 560px){
  div.pagina_servizi_gilde_tesoreria .guild-sb-card-grid{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-card__toggle{
    grid-template-columns: 1fr;
    padding-right: 42px;
    text-align: center;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__summary{
    align-items: center;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__meta{
    justify-content: center;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-card__visual{
    justify-content: center;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-card .arcane-card__subtitle{
    text-align: center;
  }
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel{
  background: linear-gradient(180deg, rgba(12, 22, 26, 0.92), rgba(7, 12, 14, 0.92));
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 12px;
  box-sizing: border-box;
  overflow: hidden;
  margin-top: 12px;
  padding: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel summary{
  align-items: center;
  background: rgba(255, 255, 255, 0.03);
  color: #f4dea3;
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: bold;
  justify-content: center;
  letter-spacing: 0.08em;
  line-height: 1.2;
  min-height: 30px;
  padding: 6px 12px;
  text-align: center;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel[open] summary{
  border-bottom: 1px solid rgba(126, 231, 255, 0.10);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-grid{
  align-items: stretch;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-items: stretch;
  margin-top: 0;
  padding: 12px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-note-strip{
  align-items: stretch;
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-visible-note-panel{
  box-sizing: border-box;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-note-title{
  margin-top: 2px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-panel{
  box-sizing: border-box;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-panel summary{
  background:
    linear-gradient(180deg, rgba(24, 39, 45, 0.96), rgba(10, 18, 22, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.09), rgba(244, 222, 163, 0.08));
  border: 1px solid rgba(126, 231, 255, 0.22);
  border-radius: 8px;
  color: #f4dea3;
  cursor: pointer;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.04em;
  line-height: 1.2;
  list-style: none;
  margin: 0 auto;
  min-width: 110px;
  padding: 5px 12px;
  text-align: center;
  width: fit-content;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-panel summary::-webkit-details-marker{
  display: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-body{
  background: rgba(7, 12, 14, 0.72);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 10px;
  box-sizing: border-box;
  margin-top: 6px;
  padding: 10px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-card{
  background: rgba(7, 12, 14, 0.72);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 12px;
  box-sizing: border-box;
  color: #dbeef1;
  min-width: 0;
  padding: 12px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-body .guild-sb-note-form{
  align-items: stretch;
  flex-direction: column;
  flex-wrap: nowrap;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-body .guild-sb-note-form input[type="submit"]{
  align-self: center;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-card--wide{
  grid-column: 1 / -1;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-card__title,
div.pagina_servizi_gilde_tesoreria .guild-sb-production-title{
  color: #ecfbff;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-note-current{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 10px;
  font-size: 12px;
  line-height: 1.4;
  margin-bottom: 10px;
  min-height: 38px;
  padding: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-note-current--visible{
  box-sizing: border-box;
  margin-bottom: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-note-textarea{
  min-height: 90px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-note-strip .guild-sb-note-textarea{
  min-height: 72px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-container-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-container-meta span{
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 999px;
  color: #d6eef2;
  font-size: 11px;
  padding: 5px 8px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-container-form{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 10px;
  margin-bottom: 12px;
  padding: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-container-empty{
  border: 1px dashed rgba(126, 231, 255, 0.18);
  border-radius: 10px;
  color: #d6eef2;
  font-size: 12px;
  margin-top: 10px;
  padding: 10px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-contained-grid{
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-top: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-contained-item{
  align-items: center;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  grid-template-columns: 56px minmax(0, 1fr);
  padding: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-contained-item__visual img{
  border: 1px solid rgba(244, 222, 163, 0.18);
  border-radius: 8px;
  height: 52px;
  object-fit: cover;
  width: 52px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-contained-item__body{
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-contained-item__name{
  color: #ecfbff;
  font-size: 13px;
  font-weight: bold;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-contained-item__meta{
  color: #d6eef2;
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  gap: 6px;
  margin-top: 4px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action{
  justify-content: flex-start;
  margin-top: 8px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-production-panel{
  background: rgba(244, 222, 163, 0.05);
  border: 1px solid rgba(244, 222, 163, 0.14);
  border-radius: 10px;
  margin: 12px 0;
  padding: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-card--wide > .arcane-card__description,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-card--wide > .equip-v2-extra-carry-admin,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-panel .equip-v2-slot-extra-carry{
  box-sizing: border-box;
  margin: 0;
  max-width: 100%;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry{
  display: flex;
  flex-direction: column;
  gap: 12px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel{
  background: rgba(7, 12, 14, 0.66);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 12px;
  box-shadow: none;
  box-sizing: border-box;
  clear: both;
  margin: 0;
  padding: 12px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__head{
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  justify-content: space-between;
  margin: 0 0 12px 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__title,
div.pagina_servizi_gilde_tesoreria .equip-v2-production-box__title{
  color: #f4dea3;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__meta{
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: flex-end;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__meta span,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__meta span{
  align-items: center;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 10px;
  color: #d6eef2;
  display: inline-flex;
  font-size: 11px;
  gap: 4px;
  padding: 5px 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__meta strong,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__meta strong{
  color: #f4dea3;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__meta strong::after,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__meta strong::after{
  content: ":";
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__actions,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__actions{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select{
  flex: 1 1 260px;
  max-width: 460px;
  min-width: 220px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"]{
  max-width: 80px;
  min-width: 70px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form select{
  background: rgba(7, 12, 14, 0.88);
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 10px;
  box-sizing: border-box;
  color: #ecfbff;
  min-height: 30px;
  padding: 5px 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__notice{
  border: 1px dashed rgba(126, 231, 255, 0.16);
  border-radius: 10px;
  color: #d6eef2;
  font-size: 12px;
  line-height: 1.4;
  margin-top: 10px;
  padding: 8px 10px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__actions--store-list{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 290px);
  align-items: start;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__actions--store-list > .equip-v2-summary-panel__notice{
  align-self: start;
  align-items: center;
  border: 1px solid rgba(126, 231, 255, 0.18);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  line-height: 1.45;
  margin: 0;
  max-height: 104px;
  min-height: 92px;
  overflow: hidden;
  padding: 8px 10px;
  text-align: left;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form--store-list{
  align-items: stretch;
  flex-direction: column;
  gap: 4px;
  max-width: none;
  min-width: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker{
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__list{
  display: flex;
  flex-direction: column;
  gap: 3px;
  max-height: 104px;
  overflow: auto;
  padding: 1px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__option{
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 6px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__option input[type="checkbox"]{
  accent-color: #7ee7ff;
  flex: 0 0 auto;
  margin: 0;
  transform: scale(0.92);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__body{
  background: rgba(10, 19, 24, 0.86);
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 8px;
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 8px;
  row-gap: 3px;
  min-width: 0;
  padding: 4px 8px;
  transition: background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__option:hover .equip-v2-store-picker__body,
div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__option input[type="checkbox"]:focus-visible + .equip-v2-store-picker__body{
  background: rgba(14, 28, 34, 0.92);
  border-color: rgba(126, 231, 255, 0.32);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__option input[type="checkbox"]:checked + .equip-v2-store-picker__body{
  background: rgba(21, 51, 58, 0.94);
  border-color: rgba(126, 231, 255, 0.42);
  box-shadow: 0 0 0 1px rgba(126, 231, 255, 0.16);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__name{
  color: #ecfbff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__meta{
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  justify-content: flex-end;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__pill{
  align-items: center;
  background: rgba(126, 231, 255, 0.10);
  border: 1px solid rgba(126, 231, 255, 0.18);
  border-radius: 999px;
  color: #d6eef2;
  display: inline-flex;
  font-size: 9px;
  line-height: 1.1;
  min-height: 15px;
  padding: 1px 6px;
  white-space: nowrap;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="number"]{
  height: 26px;
  max-width: 72px;
  min-width: 72px;
  padding: 3px 6px;
  font-size: 11px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="submit"]{
  height: 26px;
  padding: 3px 9px;
  font-size: 11px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="number"][disabled]{
  opacity: 0.6;
}

@media screen and (max-width: 760px){
  div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__actions--store-list{
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__actions--store-list > .equip-v2-summary-panel__notice{
    min-height: 0;
    text-align: center;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__body{
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__name{
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__meta{
    justify-content: flex-start;
  }
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item-grid{
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-top: 12px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production){
  align-items: start;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item{
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 12px;
  display: grid;
  gap: 10px;
  grid-template-columns: 56px minmax(0, 1fr);
  padding: 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item.equip-v2-container-item--needs-configuration{
  background: linear-gradient(180deg, rgba(86, 18, 24, 0.18), rgba(255, 255, 255, 0.03));
  border-color: rgba(214, 82, 82, 0.32);
  box-shadow: 0 0 0 1px rgba(214, 82, 82, 0.16), 0 0 18px rgba(214, 82, 82, 0.18);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item{
  align-self: start;
  flex: 1 1 180px;
  height: auto;
  max-width: 220px;
  min-width: 0;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable{
  height: auto;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open{
  flex-basis: 100%;
  max-width: none;
  min-width: 100%;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable{
  display: flex;
  flex-direction: column;
  gap: 0;
  height: 100%;
  overflow: hidden;
  padding: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__toggle{
  align-items: flex-start;
  box-sizing: border-box;
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: 56px minmax(0, 1fr);
  min-height: 96px;
  padding: 9px 10px;
  position: relative;
  transition: background 0.18s ease;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__toggle::after{
  border-bottom: 2px solid rgba(244, 222, 163, 0.82);
  border-right: 2px solid rgba(244, 222, 163, 0.82);
  content: "";
  height: 7px;
  position: absolute;
  right: 11px;
  top: 11px;
  transform: rotate(45deg);
  transition: transform 0.18s ease;
  width: 7px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable.is-open .equip-v2-container-item__toggle::after{
  transform: rotate(-135deg);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__toggle:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__toggle:focus-visible{
  background: rgba(255, 255, 255, 0.028);
  outline: none;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable .equip-v2-container-item__body{
  gap: 5px;
  padding-right: 16px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__detail-shell{
  border-top: 1px solid transparent;
  max-height: 0;
  overflow: hidden;
  transition: border-color 0.18s ease, max-height 0.22s ease;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable.is-open .equip-v2-container-item__detail-shell{
  border-top-color: rgba(126, 231, 255, 0.10);
  max-height: 2200px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable .equip-v2-container-item__overview{
  display: none;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable.is-open .equip-v2-container-item__overview{
  display: block;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open{
  display: grid;
  grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
  align-items: flex-start;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
  isolation: isolate;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open .equip-v2-container-item__toggle{
  grid-column: 1;
  grid-row: 1;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open .equip-v2-container-item__overview{
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: flex-start;
  min-width: 0;
  overflow: hidden;
  padding: 10px 14px 10px 10px;
  color: rgba(219, 238, 242, 0.84);
  font-size: 13px;
  font-style: italic;
  line-height: 1.55;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open .equip-v2-container-item__quick-actions{
  grid-column: 1;
  grid-row: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  padding: 6px 10px 10px 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open .equip-v2-container-item__quick-actions .equip-v2-summary-panel__form{
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open .equip-v2-container-item__detail-shell{
  grid-column: 1 / -1;
  grid-row: 3;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__quick-actions{
  padding: 0 10px 10px 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__quick-actions .equip-v2-summary-panel__form{
  gap: 6px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__quick-actions .equip-v2-summary-panel__form input[type="number"]{
  max-width: 60px;
  min-width: 60px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__detail{
  padding: 8px 10px 10px 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual{
  position: relative;
  width: 56px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual img{
  background: rgba(0, 0, 0, 0.24);
  border: 1px solid rgba(244, 222, 163, 0.16);
  border-radius: 8px;
  display: block;
  height: 72px;
  object-fit: contain;
  width: 56px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item.equip-v2-container-item--needs-configuration .equip-v2-container-item__visual img{
  border-color: rgba(236, 145, 145, 0.30);
  box-shadow: 0 0 0 1px rgba(214, 82, 82, 0.16), 0 0 14px rgba(214, 82, 82, 0.20);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator{
  top: 6px;
  right: 6px;
  width: 18px;
  height: 18px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__effect-indicator--with-crystal{
  right: 26px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__crystal-indicator{
  top: 6px;
  right: 6px;
  width: 16px;
  height: 20px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__crystal-indicator::before{
  width: 10px;
  height: 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual .equip-v2-card__crystal-indicator::after{
  width: 4px;
  height: 4px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__body{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__name{
  color: #ecfbff;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.2;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__meta{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable .equip-v2-container-item__actions{
  display: grid;
  gap: 8px;
  margin-top: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable .equip-v2-summary-panel__form{
  gap: 6px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable .equip-v2-summary-panel__form input[type="number"]{
  max-width: 60px;
  min-width: 60px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-production-box{
  background: rgba(244, 222, 163, 0.035);
  border: 1px solid rgba(244, 222, 163, 0.14);
  border-radius: 12px;
  box-sizing: border-box;
  margin-top: 14px;
  padding: 12px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-production-box .equip-v2-production-box__summary{
  justify-content: flex-start;
  margin-top: 10px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-production-box__material-pill{
  background: rgba(244, 222, 163, 0.13) !important;
  border-color: rgba(244, 222, 163, 0.24) !important;
  color: #f4dea3 !important;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item-grid--production{
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-start;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--production{
  align-content: flex-start;
  flex: 0 1 auto;
  grid-template-columns: minmax(0, 1fr);
  max-width: 100%;
  min-width: 0;
  width: fit-content;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--production .equip-v2-container-item__name,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--production .equip-v2-container-item__meta span,
div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--production .equip-v2-summary-panel__notice{
  white-space: nowrap;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--production .equip-v2-summary-panel__notice{
  align-self: center;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__meta .equip-v2-container-item__meta-pill--progress{
  background: linear-gradient(
    90deg,
    rgba(244, 222, 163, 0.36) 0%,
    rgba(244, 222, 163, 0.20) var(--production-progress, 0%),
    rgba(255, 255, 255, 0.04) var(--production-progress, 0%),
    rgba(255, 255, 255, 0.04) 100%
  );
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-panel,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-panel,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel{
  background: rgba(7, 12, 14, 0.66);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 12px;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px;
  text-align: left;
}

div.pagina_servizi_gilde_tesoreria .arcane-card__subtitle{
  color: #f4dea3;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin: 0;
  text-align: center;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel{
  border-color: rgba(244, 222, 163, 0.16);
  box-sizing: border-box;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__meta,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__stats{
  color: #d6eef2;
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  gap: 6px 12px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__current{
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(244, 222, 163, 0.12);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 9px 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__name{
  color: #ecfbff;
  font-size: 14px;
  font-weight: bold;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__empty,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__note{
  color: #d6eef2;
  font-size: 12px;
  font-style: italic;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__warning{
  color: #f4dea3;
  font-size: 12px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__actions{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 8px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form label{
  color: #7ee7ff;
  font-size: 10px;
  letter-spacing: 0.08em;
  margin: 0;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form select{
  flex: 0 0 auto;
  max-width: 100%;
  min-width: min(100%, 24rem);
  white-space: nowrap;
  width: max-content;
  field-sizing: content;
}

@media (max-width: 720px){
  div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form{
    align-items: stretch;
    width: 100%;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form select{
    min-width: 0;
    width: 100%;
  }
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current{
  align-items: flex-start;
  display: grid;
  gap: 12px;
  grid-template-columns: 68px minmax(0, 1fr);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__thumb img,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview__thumb img{
  background: rgba(0, 0, 0, 0.24);
  border: 1px solid rgba(126, 231, 255, 0.22);
  border-radius: 10px;
  display: block;
  height: 68px;
  object-fit: cover;
  width: 68px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__content,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview__content{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__head{
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  justify-content: space-between;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__name,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview__name{
  color: #ecfbff;
  font-size: 14px;
  font-weight: bold;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__meta,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__slots{
  color: #d6eef2;
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  gap: 6px 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__meta span{
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 999px;
  padding: 4px 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__slots strong,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__description-block strong,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview__description-block strong{
  color: #7ee7ff;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__description,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview__description{
  background: rgba(0, 0, 0, 0.16);
  border: 1px dashed rgba(126, 231, 255, 0.14);
  border-radius: 10px;
  color: #dbeef1;
  font-size: 12px;
  line-height: 1.45;
  padding: 8px 10px;
  white-space: pre-line;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-empty{
  background: rgba(255, 255, 255, 0.03);
  border-radius: 10px;
  color: #d6eef2;
  font-size: 12px;
  margin: 0;
  padding: 8px 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-actions,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form{
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__grid{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-actions,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form{
  align-items: stretch;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field{
  display: flex;
  flex-direction: column;
  gap: 3px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field--pick{
  flex: 1 1 320px;
  max-width: 520px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field--level{
  flex: 0 0 72px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field--level select{
  width: 72px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field label,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field label,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form label{
  color: #7ee7ff;
  font-size: 10px;
  letter-spacing: 0.08em;
  margin: 0;
  text-align: center;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__submit{
  align-items: flex-end;
  display: flex;
  flex: 0 0 auto;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview{
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 12px;
  display: grid;
  gap: 10px;
  grid-template-columns: 68px minmax(0, 1fr);
  padding: 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview[hidden]{
  display: none !important;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview__type{
  color: #7ee7ff;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-actions__secondary,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  padding: 10px 12px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__summary{
  align-items: center;
  display: flex;
  flex: 1 0 100%;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__summary strong{
  color: #f4dea3;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__summary strong::after{
  content: ":";
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__forms,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__form{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__forms{
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field{
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field--type{
  flex: 0 1 240px;
  max-width: 100%;
  width: 240px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field--capacity{
  flex: 0 0 104px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__note,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__hint{
  color: #f4dea3;
  font-size: 11px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-list{
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row{
  display: flex;
  flex-direction: column;
  gap: 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__head{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__label,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__name{
  color: #ecfbff;
  font-size: 13px;
  font-weight: bold;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__actions,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-detach-form{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker{
  display: inline-block;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker summary{
  align-items: center;
  background: rgba(24, 39, 45, 0.96);
  border: 1px solid rgba(126, 231, 255, 0.30);
  border-radius: 999px;
  color: #ecfbff;
  cursor: pointer;
  display: inline-flex;
  font-size: 18px;
  height: 26px;
  justify-content: center;
  line-height: 1;
  list-style: none;
  width: 26px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker summary::-webkit-details-marker{
  display: none;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__body{
  align-items: flex-start;
  display: grid;
  gap: 10px;
  grid-template-columns: 56px minmax(0, 1fr);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__thumb img{
  background: rgba(0, 0, 0, 0.24);
  border: 1px solid rgba(126, 231, 255, 0.20);
  border-radius: 10px;
  display: block;
  height: 56px;
  object-fit: cover;
  width: 56px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__content{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__effects,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__empty,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__empty-note{
  color: #d6eef2;
  font-size: 12px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__description span{
  color: #7ee7ff;
  display: block;
  font-size: 10px;
  letter-spacing: 0.08em;
  margin-bottom: 4px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__description div,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__empty{
  background: rgba(0, 0, 0, 0.16);
  border: 1px dashed rgba(126, 231, 255, 0.14);
  border-radius: 10px;
  color: #dbeef1;
  font-size: 12px;
  line-height: 1.45;
  padding: 8px 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__summary{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 10px;
  box-sizing: border-box;
  color: #d6eef2;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
  max-width: 100%;
  min-width: 0;
  padding: 10px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary--compact{
  align-items: stretch;
  background: transparent;
  border: 0;
  box-sizing: border-box;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  max-width: 100%;
  min-width: 0;
  padding: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary--compact .equip-v2-config-summary__item{
  background:
    linear-gradient(180deg, rgba(18, 32, 39, 0.92), rgba(7, 13, 16, 0.96)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.10), rgba(244, 222, 163, 0.06));
  border: 1px solid rgba(126, 231, 255, 0.18);
  border-radius: 10px;
  box-sizing: border-box;
  color: #ecfbff;
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: center;
  min-height: 46px;
  padding: 9px 10px;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary--compact .equip-v2-config-summary__label{
  color: #7ee7ff;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary:not(.equip-v2-config-summary--compact) > span:not(.equip-v2-config-hint) > strong::after{
  content: ":";
  margin-right: 3px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary--compact .equip-v2-config-summary__value{
  color: #f4dea3;
  font-size: 13px;
  font-weight: bold;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary:not(.equip-v2-config-summary--compact) > span:not(.equip-v2-config-hint){
  min-width: 0;
  white-space: nowrap;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary .equip-v2-config-hint{
  color: rgba(219, 247, 252, 0.82);
  flex: 1 1 260px;
  margin-left: auto;
  min-width: 0;
  overflow-wrap: anywhere;
  text-align: right;
  white-space: normal;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-panel{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-summary:not(.equip-v2-config-summary--compact){
  flex: 1 0 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-form{
  align-items: flex-end;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-grid,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__grid,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__forms,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-list{
  display: grid;
  gap: 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-panel .equip-v2-config-grid{
  align-items: flex-end;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 6px 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-panel .equip-v2-config-field{
  display: flex;
  flex: 0 1 150px;
  flex-direction: column;
  gap: 2px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-panel [hidden]{
  display: none !important;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-field label,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-crystals__label,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field label,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field label,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form label{
  color: rgba(219, 247, 252, 0.82);
  display: block;
  font-size: 11px;
  font-weight: bold;
  margin-bottom: 4px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field input,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form select{
  background: rgba(7, 12, 14, 0.88);
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 10px;
  box-sizing: border-box;
  color: #ecfbff;
  padding: 7px 8px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-field select{
  height: 30px;
  max-width: 170px;
  padding: 4px 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-crystals{
  align-items: flex-start;
  display: flex;
  flex: 0 1 auto;
  flex-direction: column;
  gap: 4px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-crystals__options{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-crystals__option{
  align-items: center;
  color: #ecfbff;
  display: inline-flex;
  font-size: 11px;
  gap: 5px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions-row,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__forms,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-actions,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__actions{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions-row{
  margin-left: auto;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"]{
  min-height: 30px;
  padding: 5px 11px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions input[type="submit"][disabled]{
  cursor: not-allowed;
  opacity: 0.45;
}

div.pagina_servizi_gilde_tesoreria .arcane-card__subtitle{
  color: #f4dea3;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 10px;
  padding: 10px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-panel,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-panel{
  box-sizing: border-box;
  margin: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .arcane-card__subtitle{
  font-size: 13px;
  margin: 0;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__grid{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  justify-content: center;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field{
  display: flex;
  flex-direction: column;
  gap: 3px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field--pick{
  flex: 1 1 320px;
  max-width: 520px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field--level{
  flex: 0 0 72px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field--level select{
  width: 72px;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field label,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field label,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form label{
  color: #7ee7ff;
  font-size: 10px;
  letter-spacing: 0.08em;
  margin: 0;
  text-align: center;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current{
  align-items: flex-start;
  display: grid;
  gap: 12px;
  grid-template-columns: 68px minmax(0, 1fr);
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__forms,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__form{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-list{
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-grid{
  gap: 10px;
  padding: 10px 12px 12px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-card--wide{
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__summary{
  background: transparent;
  border: 0;
  border-radius: 0;
  margin: 0 0 4px 0;
  padding: 0;
}

div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview{
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
}

/* Dettagli magazzino gilda: gruppi funzione leggibili e separati. */
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-panel,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-actions,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-slot-row{
  align-items: stretch;
  gap: 12px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-panel,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-actions{
  flex-direction: column;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .guild-sb-container-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-summary-panel__form:not(.equip-v2-summary-panel__form--store-list){
  background:
    linear-gradient(180deg, rgba(19, 31, 38, 0.82), rgba(9, 15, 20, 0.88)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.06), rgba(244, 222, 163, 0.04));
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 12px;
  box-sizing: border-box;
  margin: 0;
  padding: 10px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form{
  align-items: stretch;
  display: flex;
  flex: 1 1 100%;
  flex-direction: column;
  gap: 12px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-panel .equip-v2-config-grid{
  align-items: flex-end;
  display: grid;
  flex: 1 1 100%;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-panel .equip-v2-config-field{
  flex: 1 1 auto;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-field select{
  height: auto;
  max-width: none;
  min-height: 30px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-crystals{
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(126, 231, 255, 0.10);
  border-radius: 10px;
  box-sizing: border-box;
  flex: 1 1 100%;
  padding: 10px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-crystals__options{
  gap: 8px 12px;
  justify-content: center;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-crystals__option{
  background: rgba(10, 19, 24, 0.86);
  border: 1px solid rgba(126, 231, 255, 0.12);
  border-radius: 10px;
  box-sizing: border-box;
  min-height: 30px;
  padding: 5px 9px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-actions-row,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-summary-panel__actions,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-container-item__actions,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-container-item__quick-actions,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin__forms,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-actions__secondary,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-slot-row__actions{
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
  justify-content: space-between;
  margin-left: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-actions,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-clear-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin__form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-inline-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-picker__form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-detach-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .guild-sb-contained-action{
  align-items: center;
  background:
    linear-gradient(180deg, rgba(19, 31, 38, 0.82), rgba(9, 15, 20, 0.88)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.06), rgba(244, 222, 163, 0.04));
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 12px;
  box-sizing: border-box;
  display: flex;
  flex: 1 1 220px;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  margin: 0;
  min-width: 200px;
  padding: 8px 9px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-clear-form,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin__form--remove,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-inline-form:has(.equip-v2-gm-badge),
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-detach-form{
  background:
    linear-gradient(180deg, rgba(45, 24, 25, 0.78), rgba(18, 12, 15, 0.90)),
    linear-gradient(90deg, rgba(181, 92, 83, 0.10), rgba(244, 222, 163, 0.04));
  border-color: rgba(181, 92, 83, 0.28);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin__form{
  flex: 2 1 360px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin__form--remove{
  flex: 1 1 220px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin__field--type{
  flex: 1 1 220px;
  max-width: none;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin__field--capacity{
  flex: 0 0 110px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__grid{
  align-items: flex-end;
  display: grid;
  gap: 10px 12px;
  grid-template-columns: minmax(260px, 1fr) minmax(76px, 96px) minmax(96px, 120px) auto;
  justify-content: stretch;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__field{
  min-width: 0;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__field--pick{
  flex: 1 1 auto;
  max-width: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__field--level{
  flex: 1 1 auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__field--level select,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__field--level input[type="number"]{
  max-width: none;
  min-width: 0;
  text-align: center;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__submit{
  align-items: flex-end;
  justify-content: center;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-preview{
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 12px;
  padding: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-picker{
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-picker[open]{
  flex: 1 1 280px;
}

/* La configurazione bonus resta compatta come in equip: niente box larghi sui badge GM. */
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-panel{
  align-items: flex-end;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px 14px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-form{
  align-items: flex-end;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-sizing: border-box;
  display: flex;
  flex: 1 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin: 0;
  padding: 0;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-panel .equip-v2-config-grid{
  align-items: flex-end;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 6px 8px;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-grid > .equip-v2-gm-badge{
  align-self: flex-end;
  flex: 0 0 auto;
  justify-self: start;
  margin: 0 8px 5px 0;
  max-width: max-content;
  min-width: 0;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-panel .equip-v2-config-field{
  flex: 0 1 200px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-field select{
  max-width: 220px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-crystals{
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  display: flex;
  flex: 0 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin: 0;
  padding: 0;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-crystals__options{
  justify-content: flex-start;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-crystals__option{
  background: transparent;
  border: 0;
  border-radius: 0;
  min-height: 0;
  padding: 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-actions-row{
  align-items: center;
  flex: 0 0 auto;
  gap: 8px;
  margin: 0 0 0 auto;
  width: auto;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-actions,
div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-clear-form{
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  margin: 0;
  min-width: 0;
  padding: 0;
}

@media screen and (max-width: 900px){
  div.pagina_servizi_gilde_tesoreria div.guild-sb-row-grid,
  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-grid{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-action-stack{
    align-items: stretch;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-stack{
    align-items: stretch;
    justify-content: space-between;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form{
    flex: 1 1 260px;
    flex-wrap: wrap;
    justify-content: center;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__grid{
    grid-template-columns: minmax(220px, 1fr) minmax(76px, 96px) minmax(96px, 120px);
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__submit{
    grid-column: 1 / -1;
  }
}

@media screen and (max-width: 640px){
  div.pagina_servizi_gilde_tesoreria .guild-sb-contained-item{
    grid-template-columns: 1fr;
    text-align: center;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-contained-item__meta,
  div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action{
    justify-content: center;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current,
  div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview,
  div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__body,
  div.pagina_servizi_gilde_tesoreria .equip-v2-container-item{
    grid-template-columns: 1fr;
    text-align: center;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-form{
    flex-basis: 100%;
    min-width: 0;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-action-col--toolbar .guild-sb-action-target{
    min-width: 0;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-panel .equip-v2-config-grid,
  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-form__grid{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-actions,
  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-config-clear-form,
  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-extra-carry-admin__form,
  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-major-magic-inline-form,
  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-picker__form,
  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .equip-v2-crystal-detach-form,
  div.pagina_servizi_gilde_tesoreria .guild-sb-detail-panel .guild-sb-contained-action{
    flex-basis: 100%;
    min-width: 0;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__toggle{
    grid-template-columns: 1fr;
    text-align: center;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open{
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open .equip-v2-container-item__overview{
    grid-column: 1;
    grid-row: 2;
    padding: 0 10px 10px 10px;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open .equip-v2-container-item__quick-actions{
    grid-column: 1;
    grid-row: 3;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item--expandable.is-open .equip-v2-container-item__detail-shell{
    grid-column: 1;
    grid-row: 4;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--expandable .equip-v2-container-item__body{
    padding-right: 0;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual,
  div.pagina_servizi_gilde_tesoreria .equip-v2-container-item__visual img,
  div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-current__thumb img,
  div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-preview__thumb img,
  div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-slot-row__thumb img{
    margin-left: auto;
    margin-right: auto;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select,
  div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field--pick{
    flex-basis: 100%;
    max-width: 100%;
    min-width: 0;
    width: 100%;
  }

  div.pagina_servizi_gilde_tesoreria .equip-v2-slot-extra-carry .equip-v2-container-item-grid:not(.equip-v2-container-item-grid--production) > .equip-v2-container-item,
  div.pagina_servizi_gilde_tesoreria .equip-v2-container-item--production{
    max-width: none;
    width: 100%;
  }
}

/* Filtri e tab slot magazzino di gilda */
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar{
  align-items: flex-start;
  background:
    linear-gradient(180deg, rgba(10, 18, 22, 0.94), rgba(7, 12, 14, 0.96)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.06), rgba(244, 222, 163, 0.06));
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 14px;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0 0 16px 0;
  padding: 12px 14px;
  position: sticky;
  top: 10px;
  z-index: 30;
  backdrop-filter: blur(8px);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar__search{
  flex: 1 1 220px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 160px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar__filters{
  align-items: flex-end;
  display: flex;
  flex: 999 1 400px;
  flex-wrap: wrap;
  gap: 10px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar__field{
  display: flex;
  flex: 1 1 140px;
  flex-direction: column;
  gap: 4px;
  min-width: 120px;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar label{
  color: #7be7ff;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"],
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select{
  background: rgba(0, 0, 0, 0.38);
  border: 1px solid rgba(126, 231, 255, 0.20);
  border-radius: 8px;
  box-sizing: border-box;
  color: #ecfbff;
  font-size: 12px;
  min-width: 0;
  padding: 6px 10px;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select:focus{
  border-color: rgba(126, 231, 255, 0.44);
  outline: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-tab-bar{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 14px 0;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-tab{
  background:
    linear-gradient(180deg, rgba(18, 30, 36, 0.94), rgba(8, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.05), rgba(244, 222, 163, 0.05));
  border: 1px solid rgba(126, 231, 255, 0.14);
  border-radius: 20px;
  color: #a0d8ef;
  cursor: pointer;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.04em;
  line-height: 1.2;
  padding: 5px 14px;
  transition: border-color 0.18s ease, color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-tab:hover{
  border-color: rgba(215, 186, 124, 0.30);
  color: #f4dea3;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-tab:focus{
  outline: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-tab:focus-visible{
  box-shadow: 0 0 0 2px rgba(126, 231, 255, 0.28);
}

div.pagina_servizi_gilde_tesoreria .guild-sb-tab.is-active{
  background:
    radial-gradient(circle at 50% 0%, rgba(126, 231, 255, 0.20), transparent 56%),
    linear-gradient(180deg, rgba(215, 186, 124, 0.18), rgba(24, 36, 42, 0.96));
  border-color: rgba(215, 186, 124, 0.36);
  box-shadow:
    0 0 0 1px rgba(215, 186, 124, 0.10),
    0 0 18px rgba(126, 231, 255, 0.10),
    0 6px 14px rgba(0, 0, 0, 0.18);
  color: #f6eddc;
}

@media screen and (max-width: 640px){
  div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar{
    position: static;
  }
  div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar__search,
  div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar__field{
    flex-basis: 100%;
    min-width: 0;
  }
}

/* Controlli magazzini di gilda: stile coerente con equip/baule. */
div.pagina_servizi_gilde_tesoreria select.guild-sb-select,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form select,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form select,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action select,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form select,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form select,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form select,
div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input,
div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input,
div.pagina_servizi_gilde_tesoreria input.guild-sb-control,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"],
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="number"],
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="number"],
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="datetime-local"],
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field input,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="number"]{
  display: inline-block;
  box-sizing: border-box;
  min-height: 28px;
  margin: 0;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(125, 183, 207, 0.32);
  border-radius: 10px;
  background-color: #141820;
  background-image: linear-gradient(180deg, rgba(30, 36, 45, 0.98), rgba(12, 14, 19, 0.98));
  color: #f2e7d5;
  font-family: inherit;
  font-weight: 600;
  line-height: 1.2;
  text-shadow: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 0 0 1px rgba(215, 186, 124, 0.04);
  transform: none;
  vertical-align: middle;
  color-scheme: dark;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

div.pagina_servizi_gilde_tesoreria select.guild-sb-select,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form select,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form select,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action select,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form select,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field select,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form select,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form select{
  padding: 5px 8px;
}

div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input,
div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input,
div.pagina_servizi_gilde_tesoreria input.guild-sb-control,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"],
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="number"],
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="number"],
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field input[type="number"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="datetime-local"],
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field input,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="number"]{
  padding: 3px 8px;
}

div.pagina_servizi_gilde_tesoreria select.guild-sb-select:hover,
div.pagina_servizi_gilde_tesoreria select.guild-sb-select:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form select:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form select:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form select:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form select:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action select:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-field select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-field select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form select:focus,
div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input:hover,
div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input:focus,
div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input:hover,
div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input:focus,
div.pagina_servizi_gilde_tesoreria input.guild-sb-control:hover,
div.pagina_servizi_gilde_tesoreria input.guild-sb-control:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="datetime-local"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="datetime-local"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field input:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field input:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="number"]:focus{
  display: inline-block;
  box-sizing: border-box;
  min-height: 28px;
  margin: 0;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(215, 186, 124, 0.48);
  border-radius: 10px;
  background-color: #191e28;
  background-image: linear-gradient(180deg, rgba(37, 44, 54, 0.98), rgba(14, 17, 23, 0.98));
  color: #fff3df;
  font-weight: 600;
  line-height: 1.2;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 0 0 3px rgba(125, 183, 207, 0.12);
  outline: none;
  transform: none;
}

div.pagina_servizi_gilde_tesoreria select.guild-sb-select:hover,
div.pagina_servizi_gilde_tesoreria select.guild-sb-select:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form select:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form select:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form select:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form select:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action select:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-field select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-field select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form select:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form select:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form select:focus{
  padding: 5px 8px;
}

div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input:hover,
div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input:focus,
div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input:hover,
div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input:focus,
div.pagina_servizi_gilde_tesoreria input.guild-sb-control:hover,
div.pagina_servizi_gilde_tesoreria input.guild-sb-control:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-store-picker__footer input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field input[type="number"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="datetime-local"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="datetime-local"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field input:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field input:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="number"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="number"]:focus{
  padding: 3px 8px;
}

div.pagina_servizi_gilde_tesoreria select option,
div.pagina_servizi_gilde_tesoreria select optgroup{
  background-color: #141820;
  color: #f2e7d5;
}

div.pagina_servizi_gilde_tesoreria select option:checked{
  background-color: #253142;
  color: #fff3df;
}

div.pagina_servizi_gilde_tesoreria input.guild-sb-money-input:disabled,
div.pagina_servizi_gilde_tesoreria input.guild-sb-qty-input:disabled,
div.pagina_servizi_gilde_tesoreria input.guild-sb-control:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar input[type="search"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-filter-toolbar select:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="number"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form select:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="number"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form select:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="number"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action select:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="number"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form select:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form__field input[type="number"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field input:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin__field select:disabled{
  cursor: not-allowed;
  opacity: 0.58;
  border-color: rgba(125, 183, 207, 0.16);
  background-color: #101217;
  background-image: linear-gradient(180deg, rgba(23, 27, 34, 0.88), rgba(10, 11, 15, 0.88));
  color: #9b927f;
  box-shadow: none;
}

div.pagina_servizi_gilde_tesoreria input::placeholder{
  color: rgba(242, 231, 213, 0.52);
}

div.pagina_servizi_gilde_tesoreria textarea.guild-sb-note-textarea{
  display: block;
  box-sizing: border-box;
  min-height: 90px;
  margin: 0;
  padding: 10px 12px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(125, 183, 207, 0.32);
  border-radius: 10px;
  background-color: #141820;
  background-image: linear-gradient(180deg, rgba(30, 36, 45, 0.98), rgba(12, 14, 19, 0.98));
  color: #f2e7d5;
  font-family: inherit;
  line-height: 1.35;
  text-shadow: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 0 0 1px rgba(215, 186, 124, 0.04);
  transform: none;
  color-scheme: dark;
  resize: vertical;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
  width: 100%;
}

div.pagina_servizi_gilde_tesoreria textarea.guild-sb-note-textarea:hover,
div.pagina_servizi_gilde_tesoreria textarea.guild-sb-note-textarea:focus{
  display: block;
  box-sizing: border-box;
  min-height: 90px;
  margin: 0;
  padding: 10px 12px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(215, 186, 124, 0.48);
  border-radius: 10px;
  background-color: #191e28;
  background-image: linear-gradient(180deg, rgba(37, 44, 54, 0.98), rgba(14, 17, 23, 0.98));
  color: #fff3df;
  line-height: 1.35;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 0 0 3px rgba(125, 183, 207, 0.12);
  outline: none;
  transform: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit input[type="submit"],
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .guild-sb-note-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-detach-form input[type="submit"]{
  appearance: none;
  display: inline-block;
  box-sizing: border-box;
  min-height: 28px;
  margin: 0;
  padding: 3px 11px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(125, 183, 207, 0.32);
  border-radius: 10px;
  background-color: #141820;
  background-image: linear-gradient(180deg, rgba(30, 36, 45, 0.98), rgba(12, 14, 19, 0.98));
  color: #f2e7d5;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
  white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 0 0 1px rgba(215, 186, 124, 0.04);
  cursor: pointer;
  transform: none;
  vertical-align: middle;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-note-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-note-form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-detach-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-detach-form input[type="submit"]:focus{
  display: inline-block;
  box-sizing: border-box;
  min-height: 28px;
  margin: 0;
  padding: 3px 11px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(215, 186, 124, 0.48);
  border-radius: 10px;
  background-color: #191e28;
  background-image: linear-gradient(180deg, rgba(37, 44, 54, 0.98), rgba(14, 17, 23, 0.98));
  color: #fff3df;
  font-weight: 600;
  line-height: 1.2;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 0 0 3px rgba(125, 183, 207, 0.12);
  outline: none;
  transform: none;
}

div.pagina_servizi_gilde_tesoreria .guild-sb-money-submit input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-action-form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-note-form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-container-form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-contained-action input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-actions input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-summary-panel__form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-extra-carry-admin input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-major-magic-inline-form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-picker__form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-consumable-panel__form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-crystal-detach-form input[type="submit"]:disabled{
  cursor: not-allowed;
  opacity: 0.58;
  border-color: rgba(125, 183, 207, 0.16);
  background-color: #101217;
  background-image: linear-gradient(180deg, rgba(23, 27, 34, 0.88), rgba(10, 11, 15, 0.88));
  color: #9b927f;
  box-shadow: none;
}

/* Variante cromatica per soli pulsanti GM/gestione magazzino. */
div.pagina_servizi_gilde_tesoreria form:has(input[name="guild_sb_op"][value="withdraw_all_items"]) input[type="submit"],
div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-panel--master .guild-sb-note-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-gm-badge + input[type="submit"],
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"],
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="refund_instance"]) input[type="submit"],
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="break_instance"]) input[type="submit"],
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="repair_instance"]) input[type="submit"],
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="set_integrity"]) input[type="submit"],
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="restore_major_magic_charge"]) input[type="submit"]{
  appearance: none;
  display: inline-block;
  box-sizing: border-box;
  min-height: 28px;
  margin: 0;
  padding: 3px 11px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(190, 96, 92, 0.52);
  border-radius: 10px;
  background-color: #261719;
  background-image: linear-gradient(180deg, rgba(58, 31, 32, 0.98), rgba(24, 14, 16, 0.98));
  color: #f4d6cc;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
  white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255, 232, 220, 0.08), 0 0 0 1px rgba(215, 186, 124, 0.035);
  cursor: pointer;
  transform: none;
  vertical-align: middle;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

div.pagina_servizi_gilde_tesoreria form:has(input[name="guild_sb_op"][value="withdraw_all_items"]) input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria form:has(input[name="guild_sb_op"][value="withdraw_all_items"]) input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-panel--master .guild-sb-note-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-panel--master .guild-sb-note-form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-gm-badge + input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-gm-badge + input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="refund_instance"]) input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="refund_instance"]) input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="break_instance"]) input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="break_instance"]) input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="repair_instance"]) input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="repair_instance"]) input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="set_integrity"]) input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="set_integrity"]) input[type="submit"]:focus,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="restore_major_magic_charge"]) input[type="submit"]:hover,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="restore_major_magic_charge"]) input[type="submit"]:focus{
  display: inline-block;
  box-sizing: border-box;
  min-height: 28px;
  margin: 0;
  padding: 3px 11px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(225, 126, 116, 0.74);
  border-radius: 10px;
  background-color: #321d1f;
  background-image: linear-gradient(180deg, rgba(72, 38, 38, 0.98), rgba(30, 16, 18, 0.98));
  color: #ffe4da;
  font-weight: 600;
  line-height: 1.2;
  box-shadow: inset 0 1px 0 rgba(255, 232, 220, 0.10), 0 0 0 3px rgba(190, 96, 92, 0.13);
  outline: none;
  transform: none;
}

div.pagina_servizi_gilde_tesoreria form:has(input[name="guild_sb_op"][value="withdraw_all_items"]) input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .guild-sb-inline-note-panel--master .guild-sb-note-form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-gm-badge + input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria .equip-v2-config-clear-form input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="refund_instance"]) input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="break_instance"]) input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="repair_instance"]) input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="set_integrity"]) input[type="submit"]:disabled,
div.pagina_servizi_gilde_tesoreria form:has(input[name="v2_action"][value="restore_major_magic_charge"]) input[type="submit"]:disabled{
  cursor: not-allowed;
  opacity: 0.58;
  border-color: rgba(190, 96, 92, 0.24);
  background-color: #151012;
  background-image: linear-gradient(180deg, rgba(31, 22, 24, 0.88), rgba(13, 10, 12, 0.88));
  color: #a9928c;
  box-shadow: none;
}

/* Servizi_Mercato: ripristino allineamento tabella e card oggetto */
div.pagina_servizi_mercato td.casella_titolo,
div.pagina_servizi_mercato div.titoli_elenco,
div.pagina_servizi_mercato td.casella_elemento_img,
div.pagina_servizi_mercato td.casella_controlli,
div.pagina_servizi_mercato div.inventario_img,
div.pagina_servizi_mercato div.inventario_nome,
div.pagina_servizi_mercato div.inventario_quantita {
  text-align: center;
}

div.pagina_servizi_mercato div.inventario_img img,
div.pagina_servizi_mercato td.casella_elemento_img img {
  display: block;
  margin: 0 auto;
}

div.pagina_servizi_mercato div.inventario_nome {
  width: 122px;
  margin: 0 auto;
  font-size: 12px;
  font-variant: small-caps;
  text-align: center;
}

div.pagina_servizi_mercato div.inventario_quantita {
  width: 122px;
  margin: 0 auto;
  text-align: center;
}

div.pagina_servizi_mercato td.casella_bonus {
  text-align: center;
}

div.pagina_servizi_mercato td.casella_bonus div.inventario_riga_proprieta {
  width: 90%;
  margin: 0 auto;
  font-size: 10px;
  text-align: left;
}
/* Correzione generale allineamento intestazioni (titoli colonne/sezioni) */
td.casella_titolo,
td.casella_titolo > div,
td.casella_titolo > span,
td.casella_titolo div.elementi_elenco,
div.titoli_elenco,
div.titoli_elenco_2,
span.titoli_elenco,
div.capitolo_elenco,
div.icone_elenco,
div.page_title,
div.page_title h2 {
  text-align: center !important;
}

/* Centra le icone usate nelle intestazioni/elenchi senza alterare il resto */
div.icone_elenco img,
td.casella_titolo img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
/* Ripristino generale allineamento liste nei moduli di gestione (gestione_*) */
div[class*="pagina_gestione_"] div.elenco_record_gestione,
div[class*="pagina_gestione_"] div.elenco_record_gestione table,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_titolo,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.titoli_elenco,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.dio_boia,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.madonna_loia,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_elemento,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_elemento_img,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_controlli,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.elementi_elenco,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.controlli_elenco,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.icone_elenco {
  text-align: center !important;
}

div[class*="pagina_gestione_"] div.elenco_record_gestione div.icone_elenco img,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_elemento_img img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Ripristino generale allineamento liste/moduli (Skin_Base) */
div[class*="pagina_servizi_"] div.page_title,
div[class*="pagina_servizi_"] div.page_title h2,
div[class*="pagina_servizi_"] div.elenco_record_gioco,
div[class*="pagina_servizi_"] div.elenco_record_gioco table,
div[class*="pagina_servizi_"] div.elenco_record_gioco td.casella_titolo,
div[class*="pagina_servizi_"] div.elenco_record_gioco td.casella_elemento,
div[class*="pagina_servizi_"] div.elenco_record_gioco td.casella_elemento_img,
div[class*="pagina_servizi_"] div.elenco_record_gioco td.casella_controlli,
div[class*="pagina_servizi_"] div.elenco_record_gioco div.titoli_elenco,
div[class*="pagina_servizi_"] div.elenco_record_gioco div.elementi_elenco,
div[class*="pagina_servizi_"] div.elenco_record_gioco div.icone_elenco,
div[class*="pagina_servizi_"] div.elenco_record_gioco div.controlli_elenco,
div[class*="pagina_servizi_"] div.elenco_record_gioco div.inventario_img,
div[class*="pagina_servizi_"] div.elenco_record_gioco div.inventario_nome,
div[class*="pagina_servizi_"] div.elenco_record_gioco div.inventario_quantita,
div[class*="pagina_gestione_"] div.page_title,
div[class*="pagina_gestione_"] div.page_title h2,
div[class*="pagina_gestione_"] div.elenco_record_gestione,
div[class*="pagina_gestione_"] div.elenco_record_gestione table,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_titolo,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.titoli_elenco,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.dio_boia,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.madonna_loia,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_elemento,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_elemento_img,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_controlli,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.elementi_elenco,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.controlli_elenco,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.icone_elenco {
  text-align: center !important;
}

div[class*="pagina_servizi_"] div.elenco_record_gioco div.icone_elenco img,
div[class*="pagina_servizi_"] div.elenco_record_gioco td.casella_elemento_img img,
div[class*="pagina_servizi_"] div.elenco_record_gioco div.inventario_img img,
div[class*="pagina_gestione_"] div.elenco_record_gestione div.icone_elenco img,
div[class*="pagina_gestione_"] div.elenco_record_gestione td.casella_elemento_img img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Gestione incantesimi: spaziatura/utility form admin */
.pagina_gestione_incantesimi {
  --spell-admin-panel-bg: rgba(255, 255, 255, 0.03);
  --spell-admin-panel-bg-strong: rgba(255, 255, 255, 0.05);
  --spell-admin-panel-border: rgba(255, 255, 255, 0.12);
  --spell-admin-panel-border-strong: rgba(255, 255, 255, 0.20);
  --spell-admin-panel-shadow: 0 2px 8px rgba(0, 0, 0, 0.22);
}

.pagina_gestione_incantesimi .link_back {
  margin-bottom: 10px;
}

div.pagina_gestione_incantesimi .admin-card-toolbar {
  width: 100%;
  margin: 12px 0 14px;
  justify-content: flex-start;
}

div.pagina_gestione_incantesimi .admin-card-toolbar__group.spell-admin-toolbar__filters {
  flex: 0 0 100%;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  align-items: end;
  width: 100%;
}

div.pagina_gestione_incantesimi .admin-card-toolbar__group.spell-admin-toolbar__filters .admin-card-toolbar__field {
  min-width: 0;
}

div.pagina_gestione_incantesimi form.admin-card-toolbar__group {
  flex: 1 1 680px;
  flex-wrap: nowrap;
}

div.pagina_gestione_incantesimi form.admin-card-toolbar__group .admin-card-toolbar__field {
  flex: 1 1 auto;
}

.pagina_gestione_incantesimi [data-spell-section]:not([data-spell-section="spheres_link"]) {
  background: var(--spell-admin-panel-bg);
  border: 1px solid var(--spell-admin-panel-border);
  border-radius: 8px;
  box-shadow: var(--spell-admin-panel-shadow);
  margin: 12px auto;
  padding: 8px 12px 10px;
}

.pagina_gestione_incantesimi [data-spell-section]:not([data-spell-section="spheres_link"]) > .form_label {
  margin-bottom: 6px;
  padding-bottom: 5px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.pagina_gestione_incantesimi [data-spell-section]:not([data-spell-section="spheres_link"]) > .form_field {
  padding: 2px 2px 0;
}

.pagina_gestione_incantesimi [data-spell-section="level"] {
  background: linear-gradient(180deg, var(--spell-admin-panel-bg-strong), rgba(255, 255, 255, 0.02));
  border: 1px solid var(--spell-admin-panel-border-strong);
  border-left: 3px solid rgba(255, 255, 255, 0.26);
  border-radius: 10px;
  margin: 14px auto;
  padding: 10px 12px 12px;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_label {
  margin-bottom: 8px;
  padding-bottom: 6px;
  border-bottom-color: rgba(255, 255, 255, 0.12);
  letter-spacing: 0.05em;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
  text-align: left;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group {
  background: rgba(0, 0, 0, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 6px;
  box-sizing: border-box;
  justify-self: center;
  margin-bottom: 0;
  padding: 6px 8px;
  width: 100%;
  max-width: 440px;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group.spell-admin-level-custom-field {
  max-width: 440px;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group.spell-admin-level-compact-field {
  justify-self: start;
  width: fit-content;
  max-width: none;
  min-width: 0;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group.spell-admin-level-damage-field {
  grid-column: 1 / -1;
  justify-self: center;
  max-width: none;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group.spell-admin-level-damage-field > div:first-child {
  text-align: center;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group.spell-admin-level-custom-field {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group.spell-admin-level-custom-field > div:first-child {
  flex: 0 0 100%;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group.spell-admin-level-custom-field select {
  flex: 0 0 auto;
  margin-bottom: 0;
}

.pagina_gestione_incantesimi .spell-admin-field-group {
  margin-bottom: 6px;
}

.pagina_gestione_incantesimi .spell-admin-field-hint {
  font-size: 11px;
  font-style: italic;
  opacity: 0.75;
  margin-top: 4px;
}

.pagina_gestione_incantesimi .spell-admin-field-group > div:first-child {
  font-weight: bolder;
  margin-bottom: 3px;
}

.pagina_gestione_incantesimi .spell-admin-level-damage-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px 12px;
  justify-items: center;
}

.pagina_gestione_incantesimi .spell-admin-level-damage-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  margin: 0;
  max-width: 180px;
  text-align: center;
  width: 100%;
}

.pagina_gestione_incantesimi .spell-admin-level-damage-item select {
  margin-bottom: 0;
  width: 100%;
}

.pagina_gestione_incantesimi .spell-admin-effect-flags-container {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
  justify-content: center;
}

.pagina_gestione_incantesimi .spell-admin-effect-flags-group {
  background: rgba(0, 0, 0, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 6px;
  max-width: 260px;
  padding: 8px 10px;
  width: 100%;
}

.pagina_gestione_incantesimi .spell-admin-effect-flags-title {
  font-weight: bolder;
  margin-bottom: 4px;
  text-align: center;
}

.pagina_gestione_incantesimi .form_gestione select {
  width: auto;
  max-width: 100%;
}

.pagina_gestione_bacheche .form_gestione select {
  width: auto;
  max-width: 100%;
}

.pagina_gestione_incantesimi .spell-admin-image-preview {
  background: rgba(0, 0, 0, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 7px;
  margin: 8px auto 2px;
  max-width: 280px;
  padding: 8px 10px;
  text-align: center;
}

.pagina_gestione_incantesimi .spell-admin-image-preview img {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 4px;
  display: block;
  margin: 0 auto 6px;
  max-height: 180px;
  max-width: 100%;
  object-fit: contain;
}

.pagina_gestione_incantesimi .spell-admin-image-preview-filename {
  font-size: 11px;
  opacity: 0.85;
  overflow-wrap: anywhere;
}

.pagina_gestione_bacheche .board-admin-image-help {
  margin-top: 6px;
  font-size: 11px;
  opacity: 0.85;
}

.pagina_gestione_bacheche .board-admin-image-preview {
  background: rgba(0, 0, 0, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 7px;
  margin: 8px auto 2px;
  max-width: 280px;
  padding: 8px 10px;
  text-align: center;
}

.pagina_gestione_bacheche .board-admin-image-preview img {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 4px;
  display: block;
  margin: 0 auto 6px;
  max-height: 180px;
  max-width: 100%;
  object-fit: contain;
}

.pagina_gestione_bacheche .board-admin-image-preview-filename {
  font-size: 11px;
  opacity: 0.85;
  overflow-wrap: anywhere;
}

.pagina_gestione_bacheche .board-admin-hidden {
  display: none;
}

.pagina_gestione_incantesimi .spell-admin-section-title-with-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-admin {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
}

div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-admin__list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  box-sizing: border-box;
}

div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-row select {
  width: auto;
  min-width: 150px;
  max-width: 100%;
  margin-bottom: 0;
}

div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-row input[data-spell-type-parameter-value-input] {
  width: auto;
  min-width: 150px;
  max-width: 100%;
  margin-bottom: 0;
}

div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-row__button {
  width: auto;
  min-width: 34px;
  margin: 0;
  padding: 0 12px;
}

div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-admin .form_info {
  margin-top: 8px;
  text-align: center;
}

@media (max-width: 640px) {
  div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-row {
    flex-direction: column;
    align-items: stretch;
  }

  div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-row select,
  div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-row input[data-spell-type-parameter-value-input],
  div.pagina_gestione_tipi .page_body--spells .spell-type-parameter-row__button {
    width: 100%;
  }
}

.pagina_gestione_incantesimi .spell-admin-section-title-toggle {
  display: inline-flex;
  align-items: center;
  margin: 0;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group:first-child {
  grid-column: 1 / -1;
  justify-self: center;
  margin-top: 0;
  max-width: none;
  width: 60%;
}

.pagina_gestione_incantesimi .spell-admin-field-group textarea {
  margin-top: 2px;
}

.pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group:first-child textarea {
  width: 100%;
  min-height: 120px;
}

.pagina_gestione_incantesimi .spell-admin-inline-custom-input {
  box-sizing: border-box;
  flex: 1 1 auto;
  margin-bottom: 0;
  margin-left: 4px;
  min-width: 0;
  vertical-align: middle;
  width: auto;
}

.pagina_gestione_incantesimi .spell-admin-toggle-fields {
  margin-top: 8px;
}

.pagina_gestione_incantesimi [data-toggle-section="ritual_fields"] > .spell-admin-field-group,
.pagina_gestione_incantesimi [data-toggle-section="enchantment_fields"] > .spell-admin-field-group {
  background: rgba(0, 0, 0, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 7px;
  margin-bottom: 10px;
  padding: 7px 9px;
}

.pagina_gestione_incantesimi [data-toggle-section="ritual_fields"] > .spell-admin-field-group:last-child,
.pagina_gestione_incantesimi [data-toggle-section="enchantment_fields"] > .spell-admin-field-group:last-child {
  margin-bottom: 0;
}

.pagina_gestione_incantesimi [data-spell-section="potion"] .spell-admin-checkbox-line {
  padding: 2px 0;
}

.pagina_gestione_incantesimi .spell-admin-checkbox-line {
  display: block;
}

.pagina_gestione_incantesimi .spell-admin-enchantment-slots-field > div:nth-child(2) {
  margin-bottom: 8px;
}

.pagina_gestione_incantesimi .spell-admin-slot-grid {
  display: grid;
  gap: 8px 12px;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.pagina_gestione_incantesimi .spell-admin-slot-option {
  align-items: center;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 6px;
  display: flex;
  gap: 8px;
  line-height: 1.25;
  margin: 0;
  min-height: 38px;
  padding: 8px 10px;
}

.pagina_gestione_incantesimi .spell-admin-slot-option input {
  flex: 0 0 auto;
}

.pagina_gestione_incantesimi .spell-admin-hidden {
  display: none;
}

/* Editor effetti meccanici (aure): tabella larga con scorrimento interno */
.pagina_gestione_incantesimi .spell-effects-editor-wrap {
  margin-top: 8px;
  max-width: 100%;
  overflow-x: auto;
}

.pagina_gestione_incantesimi .spell-effects-editor {
  border-collapse: collapse;
  white-space: nowrap;
}

.pagina_gestione_incantesimi .spell-effects-editor th,
.pagina_gestione_incantesimi .spell-effects-editor td {
  border: 1px solid rgba(255, 255, 255, 0.08);
  padding: 4px 6px;
  text-align: left;
  vertical-align: middle;
}

.pagina_gestione_incantesimi .spell-effects-editor th {
  background: rgba(0, 0, 0, 0.12);
  font-weight: bold;
}

.pagina_gestione_incantesimi .spell-effects-editor select,
.pagina_gestione_incantesimi .spell-effects-editor input {
  max-width: 160px;
}

.pagina_gestione_incantesimi .spell-effects-editor .spell-effects-num {
  width: 62px;
}

.pagina_gestione_incantesimi .spell-effects-editor .spell-effects-gruppo {
  width: 120px;
}

.pagina_gestione_incantesimi .spell-effects-editor .spell-effects-note {
  width: 160px;
}

@media (max-width: 900px) {
  .pagina_gestione_incantesimi [data-spell-section="level"] > .form_field {
    grid-template-columns: 1fr;
  }

  .pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group {
    max-width: none;
  }

  .pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group.spell-admin-level-compact-field {
    max-width: none;
    width: 100%;
  }

  .pagina_gestione_incantesimi .spell-admin-level-damage-grid {
    grid-template-columns: 1fr;
  }

  .pagina_gestione_incantesimi .spell-admin-effect-flags-group {
    max-width: 320px;
  }

  .pagina_gestione_incantesimi [data-spell-section="level"] > .form_field > .spell-admin-field-group:first-child {
    grid-column: auto;
  }

  .pagina_gestione_incantesimi .spell-admin-inline-custom-input {
    display: block;
    margin-left: 0;
    margin-top: 4px;
    width: 100%;
  }

  .pagina_gestione_incantesimi .spell-admin-slot-grid {
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
  }
}

div[class*="pagina_gestione_"] {
  --admin-card-bg: rgba(255, 255, 255, 0.035);
  --admin-card-bg-strong: rgba(255, 255, 255, 0.06);
  --admin-card-border: rgba(255, 255, 255, 0.12);
  --admin-card-border-strong: rgba(255, 255, 255, 0.2);
  --admin-card-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
  --admin-card-action-bg: rgba(255, 255, 255, 0.07);
  --admin-card-action-bg-primary: rgba(255, 255, 255, 0.12);
  --admin-card-action-bg-danger: rgba(130, 36, 36, 0.42);
}

div[class*="pagina_gestione_"] .admin-card-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: flex-end;
  justify-content: center;
  margin: 12px auto 14px;
  padding: 10px 12px;
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-card-border);
  border-radius: 12px;
  box-shadow: var(--admin-card-shadow);
  box-sizing: border-box;
  width: min(100%, 1120px);
  position: sticky;
  top: 8px;
  z-index: 25;
  backdrop-filter: blur(8px);
}

div[class*="pagina_gestione_"] .admin-card-toolbar__group {
  display: flex;
  flex: 1 1 260px;
  flex-wrap: wrap;
  gap: 8px;
  align-items: flex-end;
}

div[class*="pagina_gestione_"] .admin-card-toolbar__field {
  display: flex;
  flex: 1 1 180px;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

div[class*="pagina_gestione_"] .admin-card-toolbar__field label {
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

div[class*="pagina_gestione_"] .admin-card-toolbar__field input,
div[class*="pagina_gestione_"] .admin-card-toolbar__field select {
  width: 100%;
  max-width: 100%;
  margin-bottom: 0;
  box-sizing: border-box;
}

div.pagina_gestione_incantesimi div.admin-card-toolbar {
  width: 100%;
  margin: 12px 0 14px;
  justify-content: flex-start;
  flex-wrap: nowrap;
}

div.pagina_gestione_incantesimi div.admin-card-toolbar > div.admin-card-toolbar__group.spell-admin-toolbar__filters {
  flex: 1 1 56%;
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
}

div.pagina_gestione_incantesimi div.admin-card-toolbar > form.admin-card-toolbar__group {
  flex: 1 1 34%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: flex-end;
  flex-wrap: nowrap;
}

div.pagina_gestione_incantesimi div.admin-card-toolbar > div.admin-card-toolbar__group.spell-admin-toolbar__filters .admin-card-toolbar__field,
div.pagina_gestione_incantesimi div.admin-card-toolbar > form.admin-card-toolbar__group .admin-card-toolbar__field {
  min-width: 0;
}

div.pagina_gestione_incantesimi div.admin-card-toolbar > form.admin-card-toolbar__group .admin-card-toolbar__actions,
div.pagina_gestione_incantesimi div.admin-card-toolbar > div.admin-card-toolbar__actions {
  justify-content: flex-start;
  align-self: flex-end;
}

@media (max-width: 1180px) {
  div.pagina_gestione_incantesimi div.admin-card-toolbar {
    flex-wrap: wrap;
  }

  div.pagina_gestione_incantesimi div.admin-card-toolbar > div.admin-card-toolbar__group.spell-admin-toolbar__filters {
    flex: 1 1 100%;
  }

  div.pagina_gestione_incantesimi div.admin-card-toolbar > form.admin-card-toolbar__group {
    flex: 1 1 520px;
  }
}

div[class*="pagina_gestione_"] .admin-card-toolbar__actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

div[class*="pagina_gestione_"] .admin-card-list {
  display: block;
  width: 100%;
  margin-top: 12px;
}

div[class*="pagina_gestione_"] .admin-card-group {
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0 0 12px;
}

div[class*="pagina_gestione_"] .admin-card-group__title {
  padding: 0 2px;
  margin: 0 0 8px;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.12em;
  opacity: 0.74;
  text-transform: uppercase;
}

div[class*="pagina_gestione_"] .admin-card-group__items {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
  gap: 10px;
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  align-items: stretch;
  justify-items: stretch;
}

div[class*="pagina_gestione_"] .admin-card-empty {
  margin: 12px auto 0;
  padding: 12px;
  background: rgba(0, 0, 0, 0.16);
  border: 1px dashed var(--admin-card-border);
  border-radius: 10px;
}

div[class*="pagina_gestione_"] .admin-card-empty--hidden {
  display: none;
}

div[class*="pagina_gestione_"] .admin-compact-card {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  grid-template-areas:
    "title title"
    "media actions"
    "badges badges"
    "excerpt excerpt";
  gap: 8px 12px;
  align-items: start;
  padding: 8px 10px;
  background: linear-gradient(180deg, var(--admin-card-bg-strong), rgba(255, 255, 255, 0.015));
  border: 1px solid var(--admin-card-border);
  border-left: 3px solid var(--admin-card-border-strong);
  border-radius: 12px;
  box-shadow: var(--admin-card-shadow);
  align-self: start;
  width: 100%;
  min-width: 0;
}

div[class*="pagina_gestione_"] .admin-compact-card__media {
  grid-area: media;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 84px;
  border-radius: 10px;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.22);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

div[class*="pagina_gestione_"] .admin-compact-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pagina_gestione_incantesimi .admin-compact-card__media img {
  object-fit: contain;
  padding: 6px;
  box-sizing: border-box;
}

div[class*="pagina_gestione_"] .admin-compact-card__media-fallback {
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0.08em;
  opacity: 0.82;
}

div[class*="pagina_gestione_"] .admin-compact-card__content {
  display: contents;
}

div[class*="pagina_gestione_"] .admin-compact-card__header {
  display: contents;
}

div[class*="pagina_gestione_"] .admin-compact-card__title-wrap {
  grid-area: title;
  min-width: 0;
  text-align: center;
}

div[class*="pagina_gestione_"] .admin-compact-card__title {
  font-size: 15px;
  font-weight: bold;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

div[class*="pagina_gestione_"] .admin-compact-card__meta {
  margin-top: 3px;
  font-size: 11px;
  opacity: 0.85;
  overflow-wrap: anywhere;
}

div[class*="pagina_gestione_"] .admin-compact-card__actions {
  grid-area: actions;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  align-content: center;
  align-self: center;
  margin-top: 0;
}

div[class*="pagina_gestione_"] .admin-card-action-form {
  margin: 0;
}

div[class*="pagina_gestione_"] .admin-card-action,
div[class*="pagina_gestione_"] .admin-card-link-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid var(--admin-card-border);
  border-radius: 999px;
  background: var(--admin-card-action-bg);
  color: inherit;
  cursor: pointer;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.04em;
  text-decoration: none;
  text-transform: uppercase;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

div[class*="pagina_gestione_"] .admin-card-action:hover,
div[class*="pagina_gestione_"] .admin-card-link-button:hover {
  background: var(--admin-card-action-bg-primary);
  border-color: var(--admin-card-border-strong);
  transform: translateY(-1px);
}

div[class*="pagina_gestione_"] .admin-card-action--primary,
div[class*="pagina_gestione_"] .admin-card-link-button {
  background: var(--admin-card-action-bg-primary);
}

div[class*="pagina_gestione_"] .admin-card-action--danger {
  background: var(--admin-card-action-bg-danger);
  border-color: rgba(194, 95, 95, 0.45);
}

div[class*="pagina_gestione_"] .admin-compact-card__badges {
  grid-area: badges;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  align-items: center;
  margin-top: 0;
}

div[class*="pagina_gestione_"] .admin-compact-card__badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: nowrap;
}

div[class*="pagina_gestione_"] .admin-compact-card__badge--accent {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.16);
}

div[class*="pagina_gestione_"] .admin-compact-card__excerpt {
  display: none;
  grid-area: excerpt;
  margin-top: 0;
  font-size: 12px;
  line-height: 1.45;
  opacity: 0.92;
}

div[class*="pagina_gestione_"] .admin-copy-banner {
  margin: 0 0 12px;
}

div.pagina_gestione_abilita .admin-card-group__items {
  grid-template-columns: repeat(auto-fit, minmax(175px, 1fr));
  gap: 6px;
}

div.pagina_gestione_abilita .admin-compact-card {
  display: grid !important;
  grid-template-columns: 1fr;
  grid-template-areas:
    "title"
    "actions"
    "badges"
    "excerpt";
  width: auto;
  min-width: 0;
  max-width: none;
  padding: 5px 7px;
  gap: 4px;
  align-self: start;
}

div.pagina_gestione_abilita .admin-compact-card__media {
  display: none;
}

div.pagina_gestione_abilita .admin-compact-card__content {
  display: contents;
}

div.pagina_gestione_abilita .admin-compact-card__title-wrap {
  text-align: center;
}

div.pagina_gestione_abilita .admin-compact-card__header {
  gap: 4px;
}

div.pagina_gestione_abilita .admin-compact-card__title {
  font-size: 14px;
}

div.pagina_gestione_abilita .admin-compact-card__meta {
  font-size: 10px;
}

div.pagina_gestione_abilita .admin-compact-card__actions {
  gap: 4px;
  margin-top: 0;
}

div.pagina_gestione_abilita .admin-compact-card__badges {
  gap: 4px;
}

div.pagina_gestione_abilita .admin-card-action,
div.pagina_gestione_abilita .admin-card-link-button,
div.pagina_gestione_abilita .admin-card-link-button {
  min-height: 24px;
  padding: 0 7px;
  font-size: 10px;
  letter-spacing: 0.02em;
}

div.pagina_gestione_abilita .admin-compact-card__badge {
  padding: 2px 5px;
  font-size: 10px;
}

@media (max-width: 820px) {
  div[class*="pagina_gestione_"] .admin-card-group__items {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr));
  }
}

@media (max-width: 620px) {
  div.pagina_gestione_abilita .admin-card-group__items {
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  }
}

@media (max-width: 420px) {
  div[class*="pagina_gestione_"] .admin-card-group__items {
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_abilita .admin-compact-card {
    width: 100%;
    max-width: none;
  }
}

@media (max-width: 820px) {
  div[class*="pagina_gestione_"] .admin-compact-card {
    grid-template-columns: 72px minmax(0, 1fr);
    grid-template-areas:
      "title title"
      "media actions"
      "badges badges"
      "excerpt excerpt";
    gap: 10px;
    padding: 8px;
  }

  div[class*="pagina_gestione_"] .admin-compact-card__media {
    min-height: 72px;
  }
}

@media (max-width: 640px) {
  div[class*="pagina_gestione_"] .admin-card-toolbar {
    padding: 10px;
  }

  div[class*="pagina_gestione_"] .admin-card-toolbar__group,
  div[class*="pagina_gestione_"] .admin-card-toolbar__actions {
    flex-basis: 100%;
  }

  div.pagina_gestione_incantesimi .admin-card-toolbar__group.spell-admin-toolbar__filters {
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_incantesimi form.admin-card-toolbar__group {
    flex-wrap: wrap;
  }

  div[class*="pagina_gestione_"] .admin-compact-card {
    grid-template-columns: 68px minmax(0, 1fr);
    grid-template-areas:
      "title title"
      "media actions"
      "badges badges"
      "excerpt excerpt";
  }

  div[class*="pagina_gestione_"] .admin-compact-card__media {
    min-height: 68px;
  }

  div.pagina_gestione_abilita .admin-compact-card {
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "actions"
      "badges"
      "excerpt";
  }
}

div.pagina_gestione_natura .admin-card-group__items,
div.pagina_gestione_carattere .admin-card-group__items,
div.pagina_gestione_divinita .admin-card-group__items,
div.pagina_gestione_fama .admin-card-group__items,
div.pagina_gestione_bacheche .admin-card-group__items,
div.pagina_gestione_gathering .admin-card-group__items,
div.pagina_gestione_iscrizione_origini .admin-card-group__items,
div.pagina_gestione_tipi .page_body--guilds .admin-card-group__items,
div.pagina_gestione_tipi .page_body--a_types .admin-card-group__items,
div.pagina_gestione_tipi .page_body--s_types .admin-card-group__items {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: stretch;
  justify-content: center;
}

/* Gestione oroscopi: card a larghezza fissa con immagine in alto (no overlap). */
div.pagina_gestione_oroscopi .admin-card-group__items {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
div.pagina_gestione_oroscopi .admin-compact-card {
  display: flex;
  flex: 0 0 240px;
  flex-direction: column;
  width: 240px;
  min-width: 0;
  max-width: 240px;
  height: auto;
  padding: 10px;
  gap: 8px;
  box-sizing: border-box;
  align-self: stretch;
  overflow: hidden;
}
div.pagina_gestione_oroscopi .admin-compact-card__media {
  width: 100%;
  min-height: 130px;
  height: 130px;
  border-radius: 10px;
}
div.pagina_gestione_oroscopi .admin-compact-card__content,
div.pagina_gestione_oroscopi .admin-compact-card__header {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  min-height: 0;
}

div.pagina_gestione_natura .admin-compact-card,
div.pagina_gestione_carattere .admin-compact-card,
div.pagina_gestione_divinita .admin-compact-card,
div.pagina_gestione_fama .admin-compact-card,
div.pagina_gestione_bacheche .admin-compact-card,
div.pagina_gestione_gathering .admin-compact-card,
div.pagina_gestione_iscrizione_origini .admin-compact-card,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card {
  display: flex;
  flex: 0 0 220px;
  flex-direction: column;
  width: 220px;
  min-width: 0;
  max-width: 220px;
  min-height: 152px;
  height: auto;
  padding: 10px;
  gap: 8px;
  align-self: stretch;
  box-sizing: border-box;
  overflow: hidden;
}

div.pagina_gestione_natura .admin-compact-card__media,
div.pagina_gestione_carattere .admin-compact-card__media,
div.pagina_gestione_divinita .admin-compact-card__media,
div.pagina_gestione_fama .admin-compact-card__media,
div.pagina_gestione_bacheche .admin-compact-card__media,
div.pagina_gestione_gathering .admin-compact-card__media,
div.pagina_gestione_iscrizione_origini .admin-compact-card__media,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__media,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__media,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__media,
div.pagina_gestione_natura .admin-compact-card__excerpt,
div.pagina_gestione_carattere .admin-compact-card__excerpt,
div.pagina_gestione_divinita .admin-compact-card__excerpt,
div.pagina_gestione_fama .admin-compact-card__excerpt,
div.pagina_gestione_bacheche .admin-compact-card__excerpt,
div.pagina_gestione_gathering .admin-compact-card__excerpt,
div.pagina_gestione_iscrizione_origini .admin-compact-card__excerpt,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__excerpt,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__excerpt,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__excerpt {
  display: none;
}

div.pagina_gestione_natura .admin-compact-card__content,
div.pagina_gestione_carattere .admin-compact-card__content,
div.pagina_gestione_divinita .admin-compact-card__content,
div.pagina_gestione_fama .admin-compact-card__content,
div.pagina_gestione_bacheche .admin-compact-card__content,
div.pagina_gestione_gathering .admin-compact-card__content,
div.pagina_gestione_iscrizione_origini .admin-compact-card__content,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__content,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__content,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
  min-height: 0;
}

div.pagina_gestione_natura .admin-compact-card__header,
div.pagina_gestione_carattere .admin-compact-card__header,
div.pagina_gestione_divinita .admin-compact-card__header,
div.pagina_gestione_fama .admin-compact-card__header,
div.pagina_gestione_bacheche .admin-compact-card__header,
div.pagina_gestione_gathering .admin-compact-card__header,
div.pagina_gestione_iscrizione_origini .admin-compact-card__header,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__header,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__header,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__header {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  flex: 1;
  gap: 10px;
}

div.pagina_gestione_natura .admin-compact-card__title-wrap,
div.pagina_gestione_carattere .admin-compact-card__title-wrap,
div.pagina_gestione_divinita .admin-compact-card__title-wrap,
div.pagina_gestione_fama .admin-compact-card__title-wrap,
div.pagina_gestione_bacheche .admin-compact-card__title-wrap,
div.pagina_gestione_gathering .admin-compact-card__title-wrap,
div.pagina_gestione_iscrizione_origini .admin-compact-card__title-wrap,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__title-wrap,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__title-wrap,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__title-wrap {
  text-align: center;
}

div.pagina_gestione_natura .admin-compact-card__title,
div.pagina_gestione_carattere .admin-compact-card__title,
div.pagina_gestione_divinita .admin-compact-card__title,
div.pagina_gestione_fama .admin-compact-card__title,
div.pagina_gestione_bacheche .admin-compact-card__title,
div.pagina_gestione_gathering .admin-compact-card__title,
div.pagina_gestione_iscrizione_origini .admin-compact-card__title,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__title,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__title,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__title {
  font-size: 14px;
}

div.pagina_gestione_natura .admin-compact-card__meta,
div.pagina_gestione_carattere .admin-compact-card__meta,
div.pagina_gestione_divinita .admin-compact-card__meta,
div.pagina_gestione_fama .admin-compact-card__meta,
div.pagina_gestione_bacheche .admin-compact-card__meta,
div.pagina_gestione_gathering .admin-compact-card__meta,
div.pagina_gestione_iscrizione_origini .admin-compact-card__meta,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__meta,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__meta,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__meta {
  display: none;
}

div.pagina_gestione_natura .admin-compact-card__actions,
div.pagina_gestione_carattere .admin-compact-card__actions,
div.pagina_gestione_divinita .admin-compact-card__actions,
div.pagina_gestione_fama .admin-compact-card__actions,
div.pagina_gestione_bacheche .admin-compact-card__actions,
div.pagina_gestione_gathering .admin-compact-card__actions,
div.pagina_gestione_iscrizione_origini .admin-compact-card__actions,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__actions,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__actions,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__actions {
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: auto;
}

div.pagina_gestione_natura .admin-card-action,
div.pagina_gestione_natura .admin-card-link-button,
div.pagina_gestione_carattere .admin-card-action,
div.pagina_gestione_carattere .admin-card-link-button,
div.pagina_gestione_divinita .admin-card-action,
div.pagina_gestione_divinita .admin-card-link-button,
div.pagina_gestione_fama .admin-card-action,
div.pagina_gestione_fama .admin-card-link-button,
div.pagina_gestione_bacheche .admin-card-action,
div.pagina_gestione_bacheche .admin-card-link-button,
div.pagina_gestione_gathering .admin-card-action,
div.pagina_gestione_gathering .admin-card-link-button,
div.pagina_gestione_iscrizione_origini .admin-card-action,
div.pagina_gestione_iscrizione_origini .admin-card-link-button,
div.pagina_gestione_tipi .page_body--guilds .admin-card-action,
div.pagina_gestione_tipi .page_body--guilds .admin-card-link-button,
div.pagina_gestione_tipi .page_body--a_types .admin-card-action,
div.pagina_gestione_tipi .page_body--a_types .admin-card-link-button,
div.pagina_gestione_tipi .page_body--s_types .admin-card-action,
div.pagina_gestione_tipi .page_body--s_types .admin-card-link-button {
  min-height: 26px;
  padding: 0 8px;
  font-size: 10px;
  letter-spacing: 0.02em;
}

div.pagina_gestione_natura .admin-compact-card__badges,
div.pagina_gestione_carattere .admin-compact-card__badges,
div.pagina_gestione_divinita .admin-compact-card__badges,
div.pagina_gestione_fama .admin-compact-card__badges {
  display: none;
}

/* Gestione stato civile: intestazioni di sezione + card compatte */
div.pagina_gestione_stato_civile .admin-section-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: min(100%, 1120px);
  margin: 20px auto 10px;
  padding: 0 2px;
  box-sizing: border-box;
}

div.pagina_gestione_stato_civile .admin-section-head__title {
  margin: 0;
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.85;
}

div.pagina_gestione_stato_civile .admin-card-list {
  width: min(100%, 1120px);
  margin-left: auto;
  margin-right: auto;
}

div.pagina_gestione_stato_civile .admin-card-group__items {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: stretch;
  justify-content: flex-start;
}

div.pagina_gestione_stato_civile .admin-compact-card {
  display: flex;
  flex: 0 0 220px;
  flex-direction: column;
  width: 220px;
  min-width: 0;
  max-width: 220px;
  min-height: 128px;
  height: auto;
  padding: 10px;
  gap: 8px;
  box-sizing: border-box;
  overflow: hidden;
}

div.pagina_gestione_stato_civile .admin-compact-card__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
  min-height: 0;
}

div.pagina_gestione_stato_civile .admin-compact-card__header {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  flex: 1;
  gap: 10px;
}

div.pagina_gestione_stato_civile .admin-compact-card__title-wrap {
  text-align: center;
}

div.pagina_gestione_stato_civile .admin-compact-card__title {
  font-size: 14px;
}

div.pagina_gestione_stato_civile .admin-compact-card__subtitle {
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.3;
  opacity: 0.72;
  text-align: center;
}

div.pagina_gestione_stato_civile .admin-compact-card__actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: auto;
}

div.pagina_gestione_stato_civile .admin-card-action,
div.pagina_gestione_stato_civile .admin-card-link-button {
  min-height: 26px;
  padding: 0 8px;
  font-size: 10px;
  letter-spacing: 0.02em;
}

div.pagina_gestione_bacheche .admin-compact-card__badges,
div.pagina_gestione_gathering .admin-compact-card__badges,
div.pagina_gestione_iscrizione_origini .admin-compact-card__badges,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__badges,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__badges,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__badges {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

div.pagina_gestione_bacheche .admin-compact-card__badge,
div.pagina_gestione_gathering .admin-compact-card__badge,
div.pagina_gestione_iscrizione_origini .admin-compact-card__badge,
div.pagina_gestione_tipi .page_body--guilds .admin-compact-card__badge,
div.pagina_gestione_tipi .page_body--a_types .admin-compact-card__badge,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__badge {
  white-space: normal;
  text-align: center;
  line-height: 1.25;
  padding: 4px 8px;
  min-height: 0;
}

div.pagina_servizi_prenotazioni {
  --hotel-card-bg: rgba(14, 21, 27, 0.92);
  --hotel-card-bg-strong: rgba(20, 30, 36, 0.96);
  --hotel-card-border: rgba(164, 218, 238, 0.14);
  --hotel-card-border-strong: rgba(186, 229, 243, 0.24);
  --hotel-card-shadow: 0 14px 32px rgba(0, 0, 0, 0.24);
  --hotel-card-accent-free: rgba(111, 196, 230, 0.92);
  --hotel-card-accent-busy: rgba(230, 191, 120, 0.88);
  background:
    radial-gradient(circle at top, rgba(92, 201, 255, 0.11), transparent 34%),
    radial-gradient(circle at 88% 12%, rgba(235, 197, 120, 0.10), transparent 24%),
    linear-gradient(180deg, rgba(9, 14, 18, 0.84), rgba(6, 9, 12, 0.98)),
    linear-gradient(90deg, rgba(8, 11, 14, 0.98), rgba(17, 24, 30, 0.90) 58%, rgba(8, 11, 14, 0.98));
  border: 1px solid rgba(164, 218, 238, 0.20);
  border-radius: 20px;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28);
  color: #e2f0f5;
  overflow: hidden;
  padding: 10px 12px 18px;
}

div.pagina_servizi_prenotazioni div.page_title h2{
  border-bottom-color: rgba(186, 229, 243, 0.28);
  color: #effbff;
}

div.pagina_servizi_prenotazioni div.warning,
div.pagina_servizi_prenotazioni div.error{
  background:
    linear-gradient(180deg, rgba(18, 25, 29, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(108, 205, 255, 0.08), rgba(231, 194, 122, 0.08));
  border: 1px solid rgba(163, 215, 235, 0.22);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  color: #f0fbff;
}

div.pagina_servizi_prenotazioni div.link_back,
div.pagina_servizi_prenotazioni div.panels_link{
  background:
    linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.08), rgba(244, 222, 163, 0.08));
  border: 1px solid rgba(126, 231, 255, 0.22);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
}

div.pagina_servizi_prenotazioni div.link_back a,
div.pagina_servizi_prenotazioni div.link_back a:visited,
div.pagina_servizi_prenotazioni div.panels_link a,
div.pagina_servizi_prenotazioni div.panels_link a:visited{
  color: #eef8fb;
}

div.pagina_servizi_prenotazioni div.link_back a:hover,
div.pagina_servizi_prenotazioni div.panels_link a:hover{
  color: #c8ecfa;
}

div.pagina_servizi_prenotazioni .hotel-room-groups {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

div.pagina_servizi_prenotazioni .hotel-room-group {
  width: min(100%, 1100px);
  margin: 0 auto;
}

div.pagina_servizi_prenotazioni .hotel-room-group__title {
  margin: 0 0 10px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(164, 218, 238, 0.18);
  color: #eef9ff;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.04em;
}

div.pagina_servizi_prenotazioni .hotel-room-group .hotel-room-grid {
  width: 100%;
  margin: 0;
}

div.pagina_servizi_prenotazioni .hotel-room-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
  width: min(100%, 1100px);
  margin: 12px auto 0;
}

div.pagina_servizi_prenotazioni .hotel-room-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 100%;
  overflow: hidden;
  border-radius: 14px;
  border: 1px solid var(--hotel-card-border);
  border-top: 3px solid var(--hotel-card-border-strong);
  background:
    linear-gradient(180deg, var(--hotel-card-bg-strong), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(120, 203, 236, 0.06), rgba(240, 206, 140, 0.04));
  box-shadow: var(--hotel-card-shadow);
}

div.pagina_servizi_prenotazioni .hotel-room-card.is-free {
  border-top-color: var(--hotel-card-accent-free);
}

div.pagina_servizi_prenotazioni .hotel-room-card.is-busy {
  border-top-color: var(--hotel-card-accent-busy);
}

div.pagina_servizi_prenotazioni .hotel-room-card__media {
  position: relative;
  min-height: 156px;
  background:
    linear-gradient(180deg, rgba(14, 21, 27, 0.96), rgba(9, 13, 16, 0.98)),
    radial-gradient(circle at center, rgba(120, 203, 236, 0.10), transparent 58%);
}

div.pagina_servizi_prenotazioni .hotel-room-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

div.pagina_servizi_prenotazioni .hotel-room-card__content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 10px;
  padding: 12px;
  min-width: 0;
}

div.pagina_servizi_prenotazioni .hotel-room-card__header {
  text-align: center;
}

div.pagina_servizi_prenotazioni .hotel-room-card__title {
  color: #f2fdff;
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

div.pagina_servizi_prenotazioni .hotel-room-card__meta {
  margin-top: 4px;
  color: rgba(210, 232, 238, 0.82);
  font-size: 12px;
  line-height: 1.3;
}

div.pagina_servizi_prenotazioni .hotel-room-card__badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}

div.pagina_servizi_prenotazioni .hotel-room-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(186, 229, 243, 0.14);
  color: #eafaff;
  font-size: 11px;
  line-height: 1.25;
  text-align: center;
}

div.pagina_servizi_prenotazioni .hotel-room-card__badge--accent {
  background: rgba(230, 191, 120, 0.12);
  border-color: rgba(230, 191, 120, 0.20);
  color: #fff1cf;
}

div.pagina_servizi_prenotazioni .hotel-room-card__excerpt {
  color: #d2e8ee;
  font-size: 12px;
  line-height: 1.45;
}

div.pagina_servizi_prenotazioni .hotel-room-card__actions {
  margin-top: auto;
}

div.pagina_servizi_prenotazioni .hotel-room-card__form {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: end;
}

div.pagina_servizi_prenotazioni .hotel-room-card__label {
  grid-column: 1 / -1;
  color: rgba(186, 229, 243, 0.76);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

div.pagina_servizi_prenotazioni .hotel-room-card__select,
div.pagina_servizi_prenotazioni .hotel-room-card__submit,
div.pagina_servizi_prenotazioni .hotel-room-card__link {
  min-height: 36px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-sizing: border-box;
}

div.pagina_servizi_prenotazioni .hotel-room-card__select {
  width: 100%;
  padding: 6px 10px;
  background: rgba(7, 11, 14, 0.92);
  border-color: rgba(164, 218, 238, 0.18);
  color: #eef9ff;
}

div.pagina_servizi_prenotazioni .hotel-room-card__submit,
div.pagina_servizi_prenotazioni .hotel-room-card__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  background: rgba(101, 190, 225, 0.14);
  border-color: rgba(164, 218, 238, 0.24);
  color: #eef9ff;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

div.pagina_servizi_prenotazioni .hotel-room-card__submit:hover,
div.pagina_servizi_prenotazioni .hotel-room-card__link:hover {
  background: rgba(111, 196, 230, 0.20);
  border-color: rgba(186, 229, 243, 0.34);
  color: #ffffff;
  transform: translateY(-1px);
}

div.pagina_servizi_prenotazioni .hotel-room-card__status {
  display: block;
  width: 100%;
  text-align: center;
  color: #d5e8ee;
  font-size: 12px;
  padding: 8px 0 2px;
}

@media (max-width: 640px) {
  div.pagina_servizi_prenotazioni .hotel-room-grid {
    grid-template-columns: 1fr;
  }

  div.pagina_servizi_prenotazioni .hotel-room-card__form {
    grid-template-columns: 1fr;
  }
}

div.pagina_gestione_sotto_razze .admin-card-group__items,
div.pagina_gestione_gilde .admin-card-group__items,
div.pagina_gestione_specs .admin-card-group__items,
div.pagina_gestione_spell_ui_presets .admin-card-group__items,
div.pagina_gestione_tipi .page_body--spells .admin-card-group__items,
div.pagina_gestione_tipi .page_body--s_types .admin-card-group__items,
div.pagina_gestione_tipi .page_body--spheres .admin-card-group__items {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: stretch;
  justify-content: center;
}

div.pagina_gestione_sotto_razze .admin-compact-card,
div.pagina_gestione_gilde .admin-compact-card,
div.pagina_gestione_specs .admin-compact-card,
div.pagina_gestione_spell_ui_presets .admin-compact-card,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card {
  display: flex;
  flex: 0 0 220px;
  flex-direction: column;
  width: 220px;
  min-width: 0;
  max-width: 220px;
  min-height: 152px;
  height: auto;
  padding: 10px;
  gap: 8px;
  align-self: stretch;
  box-sizing: border-box;
  overflow: hidden;
}

div.pagina_gestione_sotto_razze .admin-compact-card__media,
div.pagina_gestione_gilde .admin-compact-card__media,
div.pagina_gestione_specs .admin-compact-card__media,
div.pagina_gestione_spell_ui_presets .admin-compact-card__media,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__media,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__media,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__media,
div.pagina_gestione_sotto_razze .admin-compact-card__excerpt,
div.pagina_gestione_gilde .admin-compact-card__excerpt,
div.pagina_gestione_specs .admin-compact-card__excerpt,
div.pagina_gestione_spell_ui_presets .admin-compact-card__excerpt,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__excerpt,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__excerpt,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__excerpt {
  display: none;
}

div.pagina_gestione_sotto_razze .admin-compact-card__content,
div.pagina_gestione_gilde .admin-compact-card__content,
div.pagina_gestione_specs .admin-compact-card__content,
div.pagina_gestione_spell_ui_presets .admin-compact-card__content,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__content,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__content,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
  min-height: 0;
}

div.pagina_gestione_sotto_razze .admin-compact-card__header,
div.pagina_gestione_gilde .admin-compact-card__header,
div.pagina_gestione_specs .admin-compact-card__header,
div.pagina_gestione_spell_ui_presets .admin-compact-card__header,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__header,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__header,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__header {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  flex: 1;
  gap: 10px;
}

div.pagina_gestione_sotto_razze .admin-compact-card__title-wrap,
div.pagina_gestione_gilde .admin-compact-card__title-wrap,
div.pagina_gestione_specs .admin-compact-card__title-wrap,
div.pagina_gestione_spell_ui_presets .admin-compact-card__title-wrap,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__title-wrap,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__title-wrap,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__title-wrap {
  text-align: center;
}

div.pagina_gestione_sotto_razze .admin-compact-card__title,
div.pagina_gestione_gilde .admin-compact-card__title,
div.pagina_gestione_specs .admin-compact-card__title,
div.pagina_gestione_spell_ui_presets .admin-compact-card__title,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__title,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__title,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__title {
  font-size: 14px;
}

div.pagina_gestione_sotto_razze .admin-compact-card__meta,
div.pagina_gestione_gilde .admin-compact-card__meta,
div.pagina_gestione_specs .admin-compact-card__meta,
div.pagina_gestione_spell_ui_presets .admin-compact-card__meta,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__meta,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__meta,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__meta {
  display: none;
}

div.pagina_gestione_sotto_razze .admin-compact-card__actions,
div.pagina_gestione_gilde .admin-compact-card__actions,
div.pagina_gestione_specs .admin-compact-card__actions,
div.pagina_gestione_spell_ui_presets .admin-compact-card__actions,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__actions,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__actions,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__actions {
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: auto;
}

div.pagina_gestione_sotto_razze .admin-card-action,
div.pagina_gestione_sotto_razze .admin-card-link-button,
div.pagina_gestione_gilde .admin-card-action,
div.pagina_gestione_gilde .admin-card-link-button,
div.pagina_gestione_specs .admin-card-action,
div.pagina_gestione_specs .admin-card-link-button,
div.pagina_gestione_spell_ui_presets .admin-card-action,
div.pagina_gestione_spell_ui_presets .admin-card-link-button,
div.pagina_gestione_tipi .page_body--spells .admin-card-action,
div.pagina_gestione_tipi .page_body--spells .admin-card-link-button,
div.pagina_gestione_tipi .page_body--s_types .admin-card-action,
div.pagina_gestione_tipi .page_body--s_types .admin-card-link-button,
div.pagina_gestione_tipi .page_body--spheres .admin-card-action,
div.pagina_gestione_tipi .page_body--spheres .admin-card-link-button {
  min-height: 26px;
  padding: 0 8px;
  font-size: 10px;
  letter-spacing: 0.02em;
}

div.pagina_gestione_sotto_razze .admin-compact-card__badges,
div.pagina_gestione_gilde .admin-compact-card__badges,
div.pagina_gestione_specs .admin-compact-card__badges,
div.pagina_gestione_spell_ui_presets .admin-compact-card__badges,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__badges,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__badges,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__badges {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

div.pagina_gestione_sotto_razze .admin-compact-card__badge,
div.pagina_gestione_gilde .admin-compact-card__badge,
div.pagina_gestione_specs .admin-compact-card__badge,
div.pagina_gestione_spell_ui_presets .admin-compact-card__badge,
div.pagina_gestione_tipi .page_body--spells .admin-compact-card__badge,
div.pagina_gestione_tipi .page_body--s_types .admin-compact-card__badge,
div.pagina_gestione_tipi .page_body--spheres .admin-compact-card__badge {
  white-space: normal;
  text-align: center;
  line-height: 1.25;
  padding: 4px 8px;
  min-height: 0;
}

div.pagina_gestione_sotto_razze .admin-card-group,
div.pagina_gestione_gilde .admin-card-group {
  margin-bottom: 10px;
}

div.pagina_gestione_sotto_razze .admin-card-group__title,
div.pagina_gestione_gilde .admin-card-group__title {
  margin-bottom: 6px;
}

div.pagina_gestione_sotto_razze .admin-card-group__items,
div.pagina_gestione_gilde .admin-card-group__items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  justify-items: stretch;
}

div.pagina_gestione_sotto_razze .admin-compact-card,
div.pagina_gestione_gilde .admin-compact-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  grid-template-areas: "media title actions";
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 0;
  padding: 6px 10px;
  gap: 8px 12px;
  align-items: center;
}

div.pagina_gestione_sotto_razze .admin-compact-card__media,
div.pagina_gestione_gilde .admin-compact-card__media {
  display: flex;
  width: 46px;
  min-height: 46px;
}

div.pagina_gestione_sotto_razze .admin-compact-card__media img,
div.pagina_gestione_gilde .admin-compact-card__media img {
  object-fit: contain;
  padding: 3px;
  box-sizing: border-box;
}

div.pagina_gestione_sotto_razze .admin-compact-card__media-fallback,
div.pagina_gestione_gilde .admin-compact-card__media-fallback {
  font-size: 18px;
}

div.pagina_gestione_sotto_razze .admin-compact-card__content,
div.pagina_gestione_sotto_razze .admin-compact-card__header,
div.pagina_gestione_gilde .admin-compact-card__content,
div.pagina_gestione_gilde .admin-compact-card__header {
  display: contents;
}

div.pagina_gestione_sotto_razze .admin-compact-card__title-wrap,
div.pagina_gestione_gilde .admin-compact-card__title-wrap {
  display: flex;
  flex-direction: column;
  gap: 2px;
  text-align: left;
  align-self: center;
}

div.pagina_gestione_sotto_razze .admin-compact-card__title,
div.pagina_gestione_gilde .admin-compact-card__title {
  font-size: 14px;
  line-height: 1.15;
}

div.pagina_gestione_sotto_razze .admin-compact-card__meta,
div.pagina_gestione_gilde .admin-compact-card__meta {
  display: block;
  margin-top: 0;
  font-size: 10px;
  line-height: 1.25;
  opacity: 0.84;
}

div.pagina_gestione_sotto_razze .admin-compact-card__badges,
div.pagina_gestione_gilde .admin-compact-card__badges {
  width: 100%;
  justify-content: flex-start;
  gap: 4px;
  margin-top: 1px;
}

div.pagina_gestione_sotto_razze .admin-compact-card__badge,
div.pagina_gestione_gilde .admin-compact-card__badge {
  min-height: 20px;
  padding: 1px 7px;
  font-size: 9px;
  line-height: 1.2;
}

div.pagina_gestione_sotto_razze .admin-compact-card__actions,
div.pagina_gestione_gilde .admin-compact-card__actions {
  justify-content: flex-end;
  align-self: center;
  gap: 5px;
}

div.pagina_gestione_sotto_razze .admin-card-action,
div.pagina_gestione_sotto_razze .admin-card-link-button,
div.pagina_gestione_gilde .admin-card-action,
div.pagina_gestione_gilde .admin-card-link-button {
  box-sizing: border-box;
  min-height: 24px;
  padding: 0 8px;
  font-size: 10px;
  letter-spacing: 0.02em;
  line-height: normal;
  transform: none;
}

div.pagina_gestione_sotto_razze .admin-card-action:hover,
div.pagina_gestione_sotto_razze .admin-card-action:focus,
div.pagina_gestione_sotto_razze .admin-card-link-button:hover,
div.pagina_gestione_sotto_razze .admin-card-link-button:focus,
div.pagina_gestione_gilde .admin-card-action:hover,
div.pagina_gestione_gilde .admin-card-action:focus,
div.pagina_gestione_gilde .admin-card-link-button:hover,
div.pagina_gestione_gilde .admin-card-link-button:focus {
  display: inline-flex;
  box-sizing: border-box;
  min-height: 24px;
  margin: 0;
  padding: 0 8px;
  border-width: 1px;
  border-style: solid;
  font-weight: bold;
  line-height: normal;
  transform: none;
}

@media (max-width: 980px) {
  div.pagina_gestione_sotto_razze .admin-compact-card,
  div.pagina_gestione_gilde .admin-compact-card {
    grid-template-columns: 40px minmax(0, 1fr);
    grid-template-areas:
      "media title"
      "actions actions";
    gap: 8px 10px;
  }

  div.pagina_gestione_sotto_razze .admin-compact-card__media,
  div.pagina_gestione_gilde .admin-compact-card__media {
    width: 40px;
    min-height: 40px;
  }

  div.pagina_gestione_sotto_razze .admin-compact-card__media-fallback,
  div.pagina_gestione_gilde .admin-compact-card__media-fallback {
    font-size: 16px;
  }

  div.pagina_gestione_sotto_razze .admin-compact-card__actions,
  div.pagina_gestione_gilde .admin-compact-card__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 560px) {
  div.pagina_gestione_sotto_razze .admin-compact-card,
  div.pagina_gestione_gilde .admin-compact-card {
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "actions";
    padding: 7px 8px;
  }

  div.pagina_gestione_sotto_razze .admin-compact-card__media,
  div.pagina_gestione_gilde .admin-compact-card__media {
    display: none;
  }

  div.pagina_gestione_sotto_razze .admin-compact-card__title-wrap,
  div.pagina_gestione_gilde .admin-compact-card__title-wrap {
    text-align: center;
  }

  div.pagina_gestione_sotto_razze .admin-compact-card__badges,
  div.pagina_gestione_sotto_razze .admin-compact-card__actions,
  div.pagina_gestione_gilde .admin-compact-card__badges,
  div.pagina_gestione_gilde .admin-compact-card__actions {
    justify-content: center;
  }
}

@media (max-width: 720px) {
  div.pagina_gestione_natura .admin-card-group__items,
  div.pagina_gestione_carattere .admin-card-group__items,
  div.pagina_gestione_divinita .admin-card-group__items,
  div.pagina_gestione_fama .admin-card-group__items,
  div.pagina_gestione_bacheche .admin-card-group__items,
  div.pagina_gestione_gathering .admin-card-group__items,
  div.pagina_gestione_iscrizione_origini .admin-card-group__items,
  div.pagina_gestione_tipi .page_body--guilds .admin-card-group__items,
  div.pagina_gestione_tipi .page_body--a_types .admin-card-group__items,
  div.pagina_gestione_tipi .page_body--s_types .admin-card-group__items {
    justify-content: center;
  }

  div.pagina_gestione_natura .admin-compact-card,
  div.pagina_gestione_carattere .admin-compact-card,
  div.pagina_gestione_divinita .admin-compact-card,
  div.pagina_gestione_fama .admin-compact-card,
  div.pagina_gestione_bacheche .admin-compact-card,
  div.pagina_gestione_gathering .admin-compact-card,
  div.pagina_gestione_iscrizione_origini .admin-compact-card,
  div.pagina_gestione_tipi .page_body--guilds .admin-compact-card,
  div.pagina_gestione_tipi .page_body--a_types .admin-compact-card {
    flex-basis: 180px;
    width: 180px;
    max-width: 180px;
  }
}

@media (max-width: 420px) {
  div.pagina_gestione_natura .admin-card-group__items,
  div.pagina_gestione_carattere .admin-card-group__items,
  div.pagina_gestione_divinita .admin-card-group__items,
  div.pagina_gestione_fama .admin-card-group__items,
  div.pagina_gestione_bacheche .admin-card-group__items,
  div.pagina_gestione_gathering .admin-card-group__items,
  div.pagina_gestione_iscrizione_origini .admin-card-group__items,
  div.pagina_gestione_tipi .page_body--guilds .admin-card-group__items,
  div.pagina_gestione_tipi .page_body--a_types .admin-card-group__items {
    justify-content: stretch;
  }

  div.pagina_gestione_natura .admin-compact-card,
  div.pagina_gestione_carattere .admin-compact-card,
  div.pagina_gestione_divinita .admin-compact-card,
  div.pagina_gestione_fama .admin-compact-card,
  div.pagina_gestione_bacheche .admin-compact-card,
  div.pagina_gestione_gathering .admin-compact-card,
  div.pagina_gestione_iscrizione_origini .admin-compact-card,
  div.pagina_gestione_tipi .page_body--guilds .admin-compact-card,
  div.pagina_gestione_tipi .page_body--a_types .admin-compact-card {
    flex-basis: 100%;
    width: 100%;
    max-width: none;
  }
}

div.pagina_gestione_luoghi .admin-card-group__items,
div.pagina_gestione_incantesimi .admin-card-group__items,
div.pagina_gestione_mappe .admin-card-group__items,
div.pagina_gestione_razze .admin-card-group__items,
div.pagina_gestione_linguaggi .admin-card-group__items,
div.pagina_gestione_nazione_cards .admin-card-group__items {
  grid-template-columns: 1fr;
  gap: 8px;
}

div.pagina_gestione_luoghi .admin-compact-card,
div.pagina_gestione_incantesimi .admin-compact-card,
div.pagina_gestione_mappe .admin-compact-card,
div.pagina_gestione_razze .admin-compact-card,
div.pagina_gestione_linguaggi .admin-compact-card,
div.pagina_gestione_nazione_cards .admin-compact-card {
  grid-template-columns: 88px minmax(0, 1fr);
  grid-template-areas: "media content";
  gap: 12px 18px;
  align-items: center;
  min-height: 136px;
}

div.pagina_gestione_luoghi .admin-compact-card__content,
div.pagina_gestione_incantesimi .admin-compact-card__content,
div.pagina_gestione_mappe .admin-compact-card__content,
div.pagina_gestione_razze .admin-compact-card__content,
div.pagina_gestione_linguaggi .admin-compact-card__content,
div.pagina_gestione_nazione_cards .admin-compact-card__content {
  grid-area: content;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
}

div.pagina_gestione_luoghi .admin-compact-card__header,
div.pagina_gestione_incantesimi .admin-compact-card__header,
div.pagina_gestione_mappe .admin-compact-card__header,
div.pagina_gestione_razze .admin-compact-card__header,
div.pagina_gestione_linguaggi .admin-compact-card__header,
div.pagina_gestione_nazione_cards .admin-compact-card__header {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 8px;
}

div.pagina_gestione_luoghi .admin-compact-card__media,
div.pagina_gestione_incantesimi .admin-compact-card__media,
div.pagina_gestione_mappe .admin-compact-card__media,
div.pagina_gestione_razze .admin-compact-card__media,
div.pagina_gestione_linguaggi .admin-compact-card__media,
div.pagina_gestione_nazione_cards .admin-compact-card__media {
  min-height: 88px;
}

div.pagina_gestione_luoghi .admin-compact-card__title-wrap,
div.pagina_gestione_incantesimi .admin-compact-card__title-wrap,
div.pagina_gestione_mappe .admin-compact-card__title-wrap,
div.pagina_gestione_razze .admin-compact-card__title-wrap,
div.pagina_gestione_linguaggi .admin-compact-card__title-wrap,
div.pagina_gestione_nazione_cards .admin-compact-card__title-wrap {
  width: 100%;
  text-align: center;
  align-self: center;
}

div.pagina_gestione_luoghi .admin-compact-card__badges,
div.pagina_gestione_incantesimi .admin-compact-card__badges,
div.pagina_gestione_mappe .admin-compact-card__badges,
div.pagina_gestione_razze .admin-compact-card__badges,
div.pagina_gestione_linguaggi .admin-compact-card__badges,
div.pagina_gestione_nazione_cards .admin-compact-card__badges {
  width: 100%;
  justify-content: center;
  align-self: center;
  flex-wrap: wrap;
}

div.pagina_gestione_luoghi .admin-compact-card__actions,
div.pagina_gestione_incantesimi .admin-compact-card__actions,
div.pagina_gestione_mappe .admin-compact-card__actions,
div.pagina_gestione_razze .admin-compact-card__actions,
div.pagina_gestione_linguaggi .admin-compact-card__actions,
div.pagina_gestione_nazione_cards .admin-compact-card__actions {
  width: 100%;
  justify-content: center;
  align-self: center;
  flex-wrap: wrap;
}

@media (max-width: 1100px) {
  div.pagina_gestione_luoghi .admin-compact-card,
  div.pagina_gestione_incantesimi .admin-compact-card,
  div.pagina_gestione_mappe .admin-compact-card,
  div.pagina_gestione_razze .admin-compact-card,
  div.pagina_gestione_linguaggi .admin-compact-card,
  div.pagina_gestione_nazione_cards .admin-compact-card {
    grid-template-columns: 80px minmax(0, 1fr);
    grid-template-areas: "media content";
    min-height: 120px;
  }

  div.pagina_gestione_luoghi .admin-compact-card__media,
  div.pagina_gestione_incantesimi .admin-compact-card__media,
  div.pagina_gestione_mappe .admin-compact-card__media,
  div.pagina_gestione_razze .admin-compact-card__media,
  div.pagina_gestione_linguaggi .admin-compact-card__media,
  div.pagina_gestione_nazione_cards .admin-compact-card__media {
    min-height: 80px;
  }
}

div.pagina_gestione_bacheche .admin-card-group__items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  align-items: stretch;
  justify-items: stretch;
}

div.pagina_gestione_bacheche .admin-compact-card {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  grid-template-areas: "media content";
  gap: 12px 18px;
  align-items: center;
  min-height: 136px;
  width: 100%;
  max-width: none;
  flex: 1 1 100%;
}

div.pagina_gestione_bacheche .admin-compact-card__media {
  display: flex;
  min-height: 88px;
}

div.pagina_gestione_bacheche .admin-compact-card__media img {
  object-fit: contain;
  padding: 6px;
  box-sizing: border-box;
}

div.pagina_gestione_bacheche .admin-compact-card__content {
  grid-area: content;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
}

div.pagina_gestione_bacheche .admin-compact-card__header {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 8px;
}

div.pagina_gestione_bacheche .admin-compact-card__title-wrap {
  width: 100%;
  text-align: center;
  align-self: center;
}

div.pagina_gestione_bacheche .admin-compact-card__meta {
  display: block;
}

div.pagina_gestione_bacheche .admin-compact-card__badges {
  width: 100%;
  justify-content: center;
  align-self: center;
  flex-wrap: wrap;
}

div.pagina_gestione_bacheche .admin-compact-card__actions {
  width: 100%;
  justify-content: center;
  align-self: center;
  flex-wrap: wrap;
}

@media (max-width: 1100px) {
  div.pagina_gestione_bacheche .admin-compact-card {
    grid-template-columns: 80px minmax(0, 1fr);
    grid-template-areas: "media content";
    min-height: 120px;
  }

  div.pagina_gestione_bacheche .admin-compact-card__media {
    min-height: 80px;
  }
}

/* Eccezione voluta: nel mercato i parametri bonus restano leggibili a sinistra */
div.pagina_servizi_mercato td.casella_bonus div.inventario_riga_proprieta {
  text-align: left !important;
}


/* ===== COMUNICAZIONI GIOCATORI ===== */

.comm_nascosto {
    display: none !important;
}

.comm_popup_mount {
    position: fixed;
    top: 18px;
    right: 18px;
    width: min(420px, calc(100vw - 24px));
    z-index: 9001;
    pointer-events: none;
}

.comm_popup,
.comm_reminder {
    pointer-events: auto;
}

.comm_popup {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 36px);
    border: 1px solid rgba(193, 154, 97, 0.56);
    border-radius: 16px;
    background:
        radial-gradient(circle at top right, rgba(193, 154, 97, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(34, 24, 20, 0.98), rgba(18, 12, 10, 0.98));
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42);
    backdrop-filter: blur(10px);
}

.comm_popup::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid rgba(255, 255, 255, 0.04);
    pointer-events: none;
}

.comm_popup__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px 12px;
    border-bottom: 1px solid rgba(193, 154, 97, 0.18);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0));
}

.comm_popup__heading {
    min-width: 0;
}

.comm_popup__eyebrow {
    font-size: 10px;
    font-weight: bold;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(223, 197, 152, 0.8);
}

.comm_popup__title {
    margin-top: 4px;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.15;
    color: #f6ead4;
}

.comm_popup__tools {
    display: flex;
    align-items: center;
    gap: 8px;
}

.comm_popup__count {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid rgba(193, 154, 97, 0.24);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(246, 234, 212, 0.8);
    font-size: 11px;
    font-weight: bold;
    white-space: nowrap;
}

.comm_popup__tool {
    width: 30px;
    height: 30px;
    border: 1px solid rgba(193, 154, 97, 0.32);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.03);
    color: #f6ead4;
    cursor: pointer;
    font-size: 17px;
    line-height: 1;
    transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.comm_popup__tool:hover,
.comm_popup__tool:focus {
    transform: translateY(-1px);
    border-color: rgba(223, 197, 152, 0.8);
    background: rgba(223, 197, 152, 0.12);
}

.comm_popup__tool--danger {
    border-color: rgba(179, 92, 78, 0.45);
}

.comm_popup__tool--danger:hover,
.comm_popup__tool--danger:focus {
    border-color: rgba(211, 122, 108, 0.86);
    background: rgba(179, 92, 78, 0.18);
}

.comm_popup__body {
    overflow-y: auto;
    padding: 6px 16px 0;
}

.comm_popup__item {
    padding: 14px 0;
    border-top: 1px solid rgba(193, 154, 97, 0.12);
}

.comm_popup__item--first {
    border-top: 0;
}

.comm_popup__item-header {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
}

.comm_popup__item-title {
    font-size: 15px;
    font-weight: bold;
    color: #f6ead4;
    line-height: 1.25;
}

.comm_popup__item-meta {
    font-size: 11px;
    color: rgba(246, 234, 212, 0.66);
}

.comm_popup__item-text {
    font-size: 13px;
    line-height: 1.6;
    color: #f2e5cf;
}

.comm_popup__item-text p:first-child,
.comm_popup__item-text div:first-child {
    margin-top: 0;
}

.comm_popup__item-text p:last-child,
.comm_popup__item-text div:last-child {
    margin-bottom: 0;
}

.comm_popup__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px 16px;
    border-top: 1px solid rgba(193, 154, 97, 0.18);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.01), rgba(0, 0, 0, 0.08));
}

.comm_popup__hint {
    font-size: 11px;
    line-height: 1.45;
    color: rgba(246, 234, 212, 0.72);
}

.comm_popup__dismiss,
.comm_reminder__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 36px;
    padding: 0 14px;
    border: 1px solid rgba(193, 154, 97, 0.36);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(112, 78, 44, 0.92), rgba(76, 50, 30, 0.92));
    color: #fff5e7;
    cursor: pointer;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    transition: transform 0.15s ease, filter 0.15s ease;
}

.comm_popup__dismiss:hover,
.comm_popup__dismiss:focus,
.comm_reminder__button:hover,
.comm_reminder__button:focus {
    transform: translateY(-1px);
    filter: brightness(1.08);
}

.comm_reminder {
    display: flex;
    justify-content: flex-end;
}

.comm_reminder__button {
    padding-right: 16px;
    padding-left: 12px;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.28);
}

.comm_reminder__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(17, 10, 7, 0.42);
    font-size: 11px;
}

.comm_reminder__label {
    white-space: nowrap;
}

.pagina_gestione_comunicazioni {
    padding: 10px;
}

.pagina_gestione_comunicazioni .admin-compact-card {
    box-sizing: border-box;
    grid-template-columns: 64px minmax(0, 1fr);
    grid-template-areas: "media content";
    gap: 8px 12px;
    width: 100%;
    max-width: none;
    min-width: 0;
}

.pagina_gestione_comunicazioni .admin-compact-card__media {
    min-height: 64px;
    align-self: stretch;
}

.pagina_gestione_comunicazioni .admin-compact-card__content {
    grid-area: content;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.pagina_gestione_comunicazioni .admin-compact-card__header {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    align-items: center;
    gap: 8px;
}

.pagina_gestione_comunicazioni .admin-compact-card__title-wrap {
    width: 100%;
    min-width: 0;
    text-align: center;
}

.pagina_gestione_comunicazioni .admin-compact-card__meta {
    display: block;
}

.pagina_gestione_comunicazioni .admin-compact-card__media-fallback {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(193, 154, 97, 0.28);
    background: linear-gradient(180deg, rgba(193, 154, 97, 0.18), rgba(193, 154, 97, 0.05));
}

.comm-admin-card__status-dot {
    display: block;
    width: 14px;
    height: 14px;
    border-radius: 999px;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.04);
}

.comm-admin-card__status-dot--attiva {
    background: #8bc18a;
}

.comm-admin-card__status-dot--inattiva {
    background: #b56d63;
}

.pagina_gestione_comunicazioni .admin-compact-card__actions {
    width: 100%;
    justify-content: center;
    align-content: center;
    align-self: center;
    flex-wrap: wrap;
}

.pagina_gestione_comunicazioni .admin-compact-card__badges {
    width: 100%;
    justify-content: center;
    align-self: center;
    flex-wrap: wrap;
}

.pagina_gestione_comunicazioni .admin-compact-card__excerpt {
    display: block;
    width: 100%;
    font-size: 12px;
    line-height: 1.55;
    opacity: 0.92;
    text-align: center;
    overflow-wrap: anywhere;
}

.pagina_gestione_comunicazioni .admin-card-group__title {
    color: rgba(255, 255, 255, 0.86);
}

.comm-admin-summary {
    max-width: 1120px;
    margin: 0 auto 10px;
}

.comm-admin-editor {
    max-width: 1120px;
    margin: 0 auto;
}

.comm-admin-editor__intro,
.comm-admin-editor__toolbar-note {
    margin-bottom: 10px;
}

.comm-admin-editor__textarea {
    min-height: 260px;
}

.comm-admin-editor__checkbox {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
}

@media (max-width: 960px) {
    .comm_popup_mount {
        top: 12px;
        right: 12px;
        width: calc(100vw - 24px);
    }
}

@media (max-width: 680px) {
    .comm_popup__header,
    .comm_popup__footer {
        flex-direction: column;
        align-items: stretch;
    }

    .comm_popup__tools {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .pagina_gestione_comunicazioni .admin-compact-card {
        grid-template-columns: 1fr;
        grid-template-areas:
            "media"
            "content";
    }

    .pagina_gestione_comunicazioni .admin-compact-card__media {
        min-height: 52px;
    }
}

.pagina_gestione_recuperi_risorse .page_body {
    width: min(100%, 1120px);
    margin: 0 auto;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__intro,
.pagina_gestione_recuperi_risorse .resource-recovery-admin__section {
    padding: 14px 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018));
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 14px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__intro p {
    margin: 0;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__intro p + p {
    margin-top: 8px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__guide {
    padding: 10px 12px;
    background: rgba(0, 0, 0, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__section {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__section-header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px 14px;
    align-items: flex-start;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__section-title-wrap {
    flex: 1 1 280px;
    min-width: 0;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__section-title {
    margin: 0;
    font-size: 18px;
    line-height: 1.2;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__section-subtitle {
    margin: 6px 0 0;
    font-size: 12px;
    opacity: 0.82;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__add {
    white-space: nowrap;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__rows {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
    gap: 10px;
    align-items: end;
    padding: 10px 12px;
    background: rgba(0, 0, 0, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 12px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__field {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__field label {
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__field input {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin-bottom: 0;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__field-hint {
    font-size: 11px;
    opacity: 0.76;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__remove {
    min-height: 36px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 2px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-top: 2px;
    min-width: 0;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview.is-empty,
.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview-empty {
    font-size: 11px;
    opacity: 0.74;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview-head {
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    opacity: 0.82;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview-list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview-item {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 7px 8px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    min-width: 0;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview-item-top,
.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview-item-bottom {
    font-size: 11px;
    line-height: 1.2;
    opacity: 0.78;
}

.pagina_gestione_recuperi_risorse .resource-recovery-admin__preview-item-main {
    font-size: 13px;
    line-height: 1.2;
}

@media (max-width: 900px) {
    .pagina_gestione_recuperi_risorse .resource-recovery-admin__row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pagina_gestione_recuperi_risorse .resource-recovery-admin__remove {
        width: 100%;
    }
}

@media (max-width: 560px) {
    .pagina_gestione_recuperi_risorse .resource-recovery-admin__section-header {
        align-items: stretch;
    }

    .pagina_gestione_recuperi_risorse .resource-recovery-admin__add {
        width: 100%;
    }

    .pagina_gestione_recuperi_risorse .resource-recovery-admin__row {
        grid-template-columns: 1fr;
    }

    .pagina_gestione_recuperi_risorse .resource-recovery-admin__preview-item {
        width: 100%;
    }
}

/* ===== GESTIONE LOG CHAT ===== */
div.pagina_gestione_log_chat {
  --chat-log-shell-bg: rgba(5, 8, 12, 0.82);
  --chat-log-panel-bg: rgba(8, 11, 15, 0.88);
  --chat-log-panel-bg-strong: rgba(255, 255, 255, 0.075);
  --chat-log-panel-border: rgba(161, 209, 226, 0.26);
  --chat-log-panel-border-strong: rgba(214, 184, 116, 0.48);
  --chat-log-accent: #d6b874;
  --chat-log-blue: #9fc7da;
  --chat-log-text-soft: rgba(245, 242, 232, 0.72);
  --chat-log-danger: rgba(129, 42, 42, 0.46);
  --chat-log-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
}

div.pagina_gestione_log_chat div.page_body {
  width: min(100%, 1460px);
  margin: 0 auto 18px;
  padding: 14px;
  border: 1px solid rgba(161, 209, 226, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(214, 184, 116, 0.07), transparent 44%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), transparent 34%),
    var(--chat-log-shell-bg);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42);
  box-sizing: border-box;
  text-align: left;
  overflow: hidden;
}

div.pagina_gestione_log_chat .chat-log-dashboard {
  display: grid;
  grid-template-columns: minmax(260px, 0.42fr) minmax(720px, 1fr);
  gap: 12px;
  width: 100%;
  margin: 12px 0;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-dashboard--single {
  grid-template-columns: minmax(0, 1fr);
}

div.pagina_gestione_log_chat .chat-log-hero {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  margin: 0 0 12px;
  padding: 10px 12px;
  border: 1px solid rgba(214, 184, 116, 0.24);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.22);
  box-sizing: border-box;
}

div.pagina_gestione_log_chat .chat-log-hero__copy {
  flex: 1 1 420px;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-hero h2 {
  margin: 0 0 4px;
  color: #f2dfb9;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_gestione_log_chat .chat-log-hero p {
  margin: 0;
  color: var(--chat-log-text-soft);
  font-size: 12px;
  line-height: 1.4;
}

div.pagina_gestione_log_chat .chat-log-panel,
div.pagina_gestione_log_chat .chat-log-results,
div.pagina_gestione_log_chat .chat-log-danger {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border: 1px solid var(--chat-log-panel-border);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(214, 184, 116, 0.07), transparent 38%),
    linear-gradient(180deg, var(--chat-log-panel-bg-strong), var(--chat-log-panel-bg));
  box-shadow: var(--chat-log-shadow);
}

div.pagina_gestione_log_chat .chat-log-panel {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px;
  min-width: 0;
  overflow: hidden;
}

div.pagina_gestione_log_chat .chat-log-panel--filters {
  margin: 12px 0 0;
}

div.pagina_gestione_log_chat .chat-log-panel__head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-panel__head h3,
div.pagina_gestione_log_chat .chat-log-results__head h3,
div.pagina_gestione_log_chat .chat-log-danger__head h3 {
  margin: 0;
  color: #f2dfb9;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_gestione_log_chat .chat-log-panel__head p {
  margin: 0;
  color: var(--chat-log-text-soft);
  font-size: 11px;
  line-height: 1.4;
}

div.pagina_gestione_log_chat .chat-log-filter-form,
div.pagina_gestione_log_chat .chat-log-delete-form {
  display: grid;
  gap: 9px;
  align-items: end;
  width: 100%;
  min-width: 0;
  margin: 0;
}

div.pagina_gestione_log_chat .chat-log-filter-form {
  grid-template-columns: minmax(0, 1fr) auto;
}

div.pagina_gestione_log_chat .chat-log-filter-form--room {
  grid-template-columns: minmax(210px, 1.15fr) minmax(230px, 0.95fr) minmax(230px, 0.95fr) minmax(74px, auto);
}

div.pagina_gestione_log_chat .chat-log-filter-form--event {
  grid-template-columns: minmax(190px, 1fr) minmax(150px, 0.65fr) auto;
}

div.pagina_gestione_log_chat .chat-log-filter-form--event-has-area {
  grid-template-columns: minmax(190px, 1fr) minmax(160px, 0.75fr) minmax(150px, 0.65fr) auto;
}

div.pagina_gestione_log_chat .chat-log-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr));
  gap: 12px;
  width: 100%;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-type-card {
  position: relative;
  display: grid;
  grid-template-areas:
    "title title"
    "meta action";
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: minmax(54px, auto) auto;
  gap: 12px;
  align-content: space-between;
  align-items: end;
  min-width: 0;
  min-height: 124px;
  height: auto;
  margin: 0;
  padding: 13px 14px 12px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(159, 199, 218, 0.24);
  border-left-width: 3px;
  border-left-color: rgba(214, 184, 116, 0.66);
  border-radius: 8px;
  background:
    radial-gradient(circle at 18px 18px, rgba(214, 184, 116, 0.13), transparent 34px),
    linear-gradient(135deg, rgba(214, 184, 116, 0.10), transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(0, 0, 0, 0.26));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 10px 24px rgba(0, 0, 0, 0.26);
  box-sizing: border-box;
  color: #f8f2df;
  font-weight: normal;
  line-height: normal;
  overflow: hidden;
  text-decoration: none;
  transform: none;
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

div.pagina_gestione_log_chat .chat-log-type-card:hover,
div.pagina_gestione_log_chat .chat-log-type-card:focus {
  position: relative;
  display: grid;
  grid-template-areas:
    "title title"
    "meta action";
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: minmax(54px, auto) auto;
  gap: 12px;
  align-content: space-between;
  align-items: end;
  box-sizing: border-box;
  min-height: 124px;
  height: auto;
  margin: 0;
  padding: 13px 14px 12px;
  border-width: 1px 1px 1px 3px;
  border-style: solid;
  border-color: var(--chat-log-panel-border-strong);
  border-left-color: rgba(214, 184, 116, 0.78);
  border-radius: 8px;
  background:
    radial-gradient(circle at 18px 18px, rgba(214, 184, 116, 0.18), transparent 34px),
    linear-gradient(135deg, rgba(214, 184, 116, 0.16), transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.095), rgba(0, 0, 0, 0.22));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.09),
    0 10px 24px rgba(0, 0, 0, 0.26);
  color: #fff6df;
  font-weight: normal;
  line-height: normal;
  overflow: hidden;
  text-decoration: none;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-type-card__title {
  display: block;
  grid-area: title;
  min-width: 0;
  color: #f2dfb9;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.25;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

div.pagina_gestione_log_chat .chat-log-type-card__meta {
  display: inline-flex;
  grid-area: meta;
  align-items: baseline;
  gap: 5px;
  width: fit-content;
  max-width: 100%;
  min-height: 26px;
  padding: 4px 8px;
  border: 1px solid rgba(159, 199, 218, 0.14);
  border-radius: 8px;
  background: rgba(159, 199, 218, 0.12);
  box-sizing: border-box;
  color: #f8f2df;
  font-size: 12px;
  line-height: 1.2;
}

div.pagina_gestione_log_chat .chat-log-type-card__meta strong {
  color: var(--chat-log-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

div.pagina_gestione_log_chat .chat-log-type-card__action {
  display: inline-flex;
  grid-area: action;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  margin: 0;
  padding: 0 10px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(214, 184, 116, 0.32);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.22);
  box-sizing: border-box;
  color: var(--chat-log-text-soft);
  font-size: 10px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-type-card:hover .chat-log-type-card__action,
div.pagina_gestione_log_chat .chat-log-type-card:focus .chat-log-type-card__action {
  display: inline-flex;
  min-height: 26px;
  margin: 0;
  padding: 0 10px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(214, 184, 116, 0.42);
  border-radius: 8px;
  background: rgba(214, 184, 116, 0.15);
  box-sizing: border-box;
  color: #fff6df;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.2;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-field {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-field label {
  color: var(--chat-log-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

div.pagina_gestione_log_chat .chat-log-field select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
}

div.pagina_gestione_log_chat .chat-log-date-selects {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-date-selects select {
  flex: 1 1 42px;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-date-selects select.year {
  flex-basis: 64px;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-form-actions,
div.pagina_gestione_log_chat .chat-log-actions,
div.pagina_gestione_log_chat .chat-log-selection-toolbar__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  justify-content: flex-end;
  min-width: 0;
}

div.pagina_gestione_log_chat .admin-card-action,
div.pagina_gestione_log_chat .admin-card-link-button,
div.pagina_gestione_log_chat input.admin-card-action,
div.pagina_gestione_log_chat a.admin-card-link-button {
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  height: auto;
  margin: 0;
  padding: 0 12px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--chat-log-panel-border);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.08);
  color: #f8f2df;
  cursor: pointer;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transform: none;
}

div.pagina_gestione_log_chat .admin-card-action:hover,
div.pagina_gestione_log_chat .admin-card-action:focus,
div.pagina_gestione_log_chat .admin-card-link-button:hover,
div.pagina_gestione_log_chat .admin-card-link-button:focus,
div.pagina_gestione_log_chat input.admin-card-action:hover,
div.pagina_gestione_log_chat input.admin-card-action:focus,
div.pagina_gestione_log_chat a.admin-card-link-button:hover,
div.pagina_gestione_log_chat a.admin-card-link-button:focus {
  display: inline-flex;
  box-sizing: border-box;
  min-height: 32px;
  height: auto;
  margin: 0;
  padding: 0 12px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--chat-log-panel-border-strong);
  border-radius: 8px;
  background: rgba(214, 184, 116, 0.18);
  color: #fff6df;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.2;
  text-decoration: none;
  transform: none;
}

div.pagina_gestione_log_chat .admin-card-action--primary,
div.pagina_gestione_log_chat input.admin-card-action--primary {
  border-color: rgba(159, 199, 218, 0.35);
  background: rgba(159, 199, 218, 0.14);
}

div.pagina_gestione_log_chat .admin-card-action--danger,
div.pagina_gestione_log_chat input.admin-card-action--danger {
  border-color: rgba(207, 107, 107, 0.48);
  background: var(--chat-log-danger);
}

div.pagina_gestione_pulizia_personaggi div.page_body {
  width: min(100%, 1280px);
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
}

div.pagina_gestione_pulizia_personaggi .character-cleanup-template-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
  width: 100%;
  min-width: 0;
  margin: 8px 0 14px;
  box-sizing: border-box;
}

div.pagina_gestione_pulizia_personaggi .character-cleanup-template-column {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  width: 100%;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
}

div.pagina_gestione_pulizia_personaggi .character-cleanup-template-column .chat-log-field {
  width: 100%;
  margin: 0;
}

div.pagina_gestione_pulizia_personaggi .character-cleanup-template-column .chat-log-field label {
  width: 100%;
  margin: 0;
}

div.pagina_gestione_pulizia_personaggi .chat-log-field input[type="text"],
div.pagina_gestione_pulizia_personaggi .chat-log-field input[type="number"],
div.pagina_gestione_pulizia_personaggi .chat-log-field textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 7px 9px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--chat-log-panel-border);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.24);
  color: #f8f2df;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.45;
  transform: none;
}

div.pagina_gestione_pulizia_personaggi .chat-log-field input[type="text"]:focus,
div.pagina_gestione_pulizia_personaggi .chat-log-field input[type="number"]:focus,
div.pagina_gestione_pulizia_personaggi .chat-log-field textarea:focus {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 7px 9px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--chat-log-panel-border-strong);
  font-size: 12px;
  font-weight: normal;
  line-height: 1.45;
  outline: none;
  transform: none;
}

div.pagina_gestione_pulizia_personaggi .chat-log-field input[type="text"],
div.pagina_gestione_pulizia_personaggi .chat-log-field input[type="number"],
div.pagina_gestione_pulizia_personaggi .chat-log-field input[type="text"]:focus,
div.pagina_gestione_pulizia_personaggi .chat-log-field input[type="number"]:focus {
  min-height: 34px;
}

div.pagina_gestione_pulizia_personaggi .chat-log-field textarea {
  min-height: 154px;
  resize: vertical;
}

div.pagina_gestione_pulizia_personaggi .chat-log-field textarea:focus {
  min-height: 154px;
}

div.pagina_gestione_pulizia_personaggi .character-cleanup-template-grid--staff .chat-log-field textarea {
  min-height: 118px;
}

div.pagina_gestione_pulizia_personaggi .character-cleanup-template-grid--staff .chat-log-field textarea:focus {
  min-height: 118px;
}

div.pagina_gestione_pulizia_personaggi .chat-log-results table,
div.pagina_gestione_pulizia_personaggi .chat-log-panel table {
  width: 100%;
  border-collapse: collapse;
}

div.pagina_gestione_pulizia_personaggi .chat-log-results td,
div.pagina_gestione_pulizia_personaggi .chat-log-panel td {
  padding: 7px 8px;
  border-top: 1px solid rgba(214, 184, 116, 0.14);
  color: #f4ead3;
  font-size: 12px;
  line-height: 1.35;
  vertical-align: top;
}

div.pagina_gestione_log_chat .chat-log-results {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 12px 0;
  padding: 12px;
  overflow: hidden;
}

div.pagina_gestione_log_chat .chat-log-results__head {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: flex-start;
  justify-content: space-between;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-summary {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
  min-width: 0;
}

div.pagina_gestione_log_chat .chat-log-summary span {
  display: flex;
  flex: 0 1 auto;
  flex-direction: column;
  gap: 3px;
  min-width: 96px;
  max-width: 100%;
  padding: 6px 8px;
  border: 1px solid rgba(159, 199, 218, 0.16);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
  color: #f8f2df;
  font-size: 12px;
  overflow-wrap: anywhere;
}

div.pagina_gestione_log_chat .chat-log-summary strong,
div.pagina_gestione_log_chat .chat-log-entry__meta strong {
  color: var(--chat-log-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

div.pagina_gestione_log_chat .chat-log-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  max-height: 62vh;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding-right: 4px;
  box-sizing: border-box;
}

div.pagina_gestione_log_chat .chat-log-entry {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  width: 100%;
  min-width: 0;
  justify-items: stretch;
  padding: 9px 10px;
  border: 1px solid rgba(159, 199, 218, 0.16);
  border-left: 3px solid rgba(214, 184, 116, 0.48);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.22);
  box-sizing: border-box;
  text-align: left;
}

div.pagina_gestione_log_chat .chat-log-entry--selectable {
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: stretch;
}

div.pagina_gestione_log_chat .chat-log-entry__check {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  margin: 0;
  border: 1px solid rgba(214, 184, 116, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  cursor: pointer;
}

div.pagina_gestione_log_chat .chat-log-entry__check input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--chat-log-accent);
  cursor: pointer;
}

div.pagina_gestione_log_chat .chat-log-entry__check span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

div.pagina_gestione_log_chat .chat-log-entry__main {
  width: 100%;
  min-width: 0;
  justify-self: stretch;
  text-align: left !important;
}

div.pagina_gestione_log_chat .chat-log-entry__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-start;
  min-width: 0;
  margin-bottom: 7px;
  text-align: left !important;
}

div.pagina_gestione_log_chat .chat-log-entry__meta span {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  max-width: 100%;
  min-height: 24px;
  padding: 4px 7px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
  box-sizing: border-box;
  color: #f8f2df;
  font-size: 11px;
  overflow-wrap: anywhere;
}

div.pagina_gestione_log_chat .chat-log-entry__meta .chat-log-entry__type {
  align-items: center;
  gap: 5px;
}

div.pagina_gestione_log_chat .chat-log-entry__meta .chat-log-message-kind,
div.pagina_gestione_log_chat .chat-log-entry__meta .chat-log-message-method,
div.pagina_gestione_log_chat .chat-log-entry__meta .chat-log-message-archived {
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  margin: 0;
  padding: 2px 7px;
  border-width: 1px;
  border-style: solid;
  border-radius: 999px;
  color: #f8f2df;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.2;
  text-transform: uppercase;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-entry__meta .chat-log-message-kind--on {
  border-color: rgba(130, 190, 220, 0.34);
  background: rgba(80, 132, 160, 0.24);
  color: #e4f6ff;
}

div.pagina_gestione_log_chat .chat-log-entry__meta .chat-log-message-kind--off {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.075);
  color: #f2ead6;
}

div.pagina_gestione_log_chat .chat-log-entry__meta .chat-log-message-kind--unknown {
  border-color: rgba(214, 184, 116, 0.26);
  background: rgba(214, 184, 116, 0.10);
  color: var(--chat-log-text-soft);
}

div.pagina_gestione_log_chat .chat-log-entry__meta .chat-log-message-method {
  max-width: 100%;
  border-color: rgba(214, 184, 116, 0.28);
  background: rgba(214, 184, 116, 0.12);
  color: #fff3cf;
  text-transform: none;
}

/* Missiva la cui identità sopravvive solo nell'archivio: il registro la segnala
   perché la posta dei giocatori non la ricondurrebbe più a questo personaggio. */
div.pagina_gestione_log_messaggi .chat-log-entry__meta .chat-log-message-archived {
  max-width: 100%;
  border-color: rgba(198, 142, 120, 0.34);
  background: rgba(168, 100, 78, 0.22);
  color: #ffd9c9;
}

div.pagina_gestione_log_chat .chat-log-entry__meta a {
  position: static;
  display: inline;
  box-sizing: border-box;
  min-height: 0;
  height: auto;
  margin: 0;
  padding: 0;
  border-width: 0;
  border-style: solid;
  color: #f8f2df;
  font-size: 11px;
  font-weight: normal;
  line-height: 1.2;
  text-decoration: underline;
  text-decoration-color: rgba(214, 184, 116, 0.46);
  text-underline-offset: 2px;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-entry__meta a:hover,
div.pagina_gestione_log_chat .chat-log-entry__meta a:focus {
  position: static;
  display: inline;
  box-sizing: border-box;
  min-height: 0;
  height: auto;
  margin: 0;
  padding: 0;
  border-width: 0;
  border-style: solid;
  color: #fff6df;
  font-size: 11px;
  font-weight: normal;
  line-height: 1.2;
  text-decoration: underline;
  text-decoration-color: rgba(214, 184, 116, 0.76);
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-entry__text {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  color: #fffaf0;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
  text-align: left !important;
  text-indent: 0;
  white-space: pre-wrap;
  word-break: break-word;
}

div.pagina_gestione_log_chat .chat-log-entry__text[hidden] {
  display: none;
}

div.pagina_gestione_log_chat .chat-log-entry__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-top: 2px;
}

div.pagina_gestione_log_chat .chat-log-entry__view-switch {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 5px;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin: 0;
  padding: 3px;
  border: 1px solid rgba(159, 199, 218, 0.18);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.22);
  box-sizing: border-box;
}

div.pagina_gestione_log_chat .chat-log-entry__view-tab {
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  margin: 0;
  padding: 0 10px;
  border-width: 1px;
  border-style: solid;
  border-color: transparent;
  border-radius: 7px;
  background: transparent;
  color: var(--chat-log-text-soft);
  font-size: 11px;
  font-weight: bold;
  line-height: 1.2;
  text-transform: uppercase;
  transform: none;
  cursor: pointer;
}

div.pagina_gestione_log_chat .chat-log-entry__view-tab:hover,
div.pagina_gestione_log_chat .chat-log-entry__view-tab:focus {
  display: inline-flex;
  box-sizing: border-box;
  min-height: 26px;
  margin: 0;
  padding: 0 10px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(214, 184, 116, 0.32);
  border-radius: 7px;
  background: rgba(214, 184, 116, 0.10);
  color: #fff6df;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.2;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-entry__view-tab.is-active,
div.pagina_gestione_log_chat .chat-log-entry__view-tab.is-active:hover,
div.pagina_gestione_log_chat .chat-log-entry__view-tab.is-active:focus {
  display: inline-flex;
  box-sizing: border-box;
  min-height: 26px;
  margin: 0;
  padding: 0 10px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(214, 184, 116, 0.52);
  border-radius: 7px;
  background: linear-gradient(180deg, rgba(214, 184, 116, 0.26), rgba(214, 184, 116, 0.12));
  color: #fff6df;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.2;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-entry__text--html {
  padding: 10px;
  border: 1px solid rgba(159, 199, 218, 0.14);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(0, 0, 0, 0.16));
  white-space: normal;
}

div.pagina_gestione_log_chat .chat-log-entry__text--html .gdrcd-user-content {
  color: inherit;
  font-size: 12px;
  line-height: 1.5;
  white-space: normal;
}

div.pagina_gestione_log_chat .chat-log-selection-form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
}

div.pagina_gestione_log_chat .chat-log-selection-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  padding: 8px 10px;
  border: 1px solid rgba(214, 184, 116, 0.22);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.20);
}

div.pagina_gestione_log_chat .chat-log-selection-toolbar > strong {
  color: var(--chat-log-text-soft);
  font-size: 11px;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_gestione_log_chat .chat-log-danger {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 12px 0;
  padding: 12px;
}

div.pagina_gestione_log_chat .chat-log-danger__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, 0.75fr);
  gap: 10px;
  align-items: stretch;
}

div.pagina_gestione_log_chat .chat-log-panel--danger {
  margin: 0;
  border-color: rgba(207, 107, 107, 0.26);
  background:
    linear-gradient(135deg, rgba(151, 58, 58, 0.10), transparent 42%),
    linear-gradient(180deg, var(--chat-log-panel-bg-strong), rgba(12, 9, 9, 0.68));
}

div.pagina_gestione_log_chat .chat-log-delete-form--all {
  justify-content: space-between;
}

div.pagina_gestione_log_chat .chat-log-pager {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  justify-content: center;
  margin: 2px 0 0;
  color: var(--chat-log-text-soft);
  font-size: 11px;
  line-height: 1.2;
}

div.pagina_gestione_log_chat .chat-log-pager span,
div.pagina_gestione_log_chat .chat-log-pager a,
div.pagina_gestione_log_chat .chat-log-pager strong {
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 28px;
  margin: 0;
  padding: 0 8px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--chat-log-panel-border);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
  color: #f8f2df;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.2;
  text-decoration: none;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-pager span {
  min-width: 0;
  border-color: transparent;
  background: transparent;
  color: var(--chat-log-text-soft);
  text-transform: uppercase;
}

div.pagina_gestione_log_chat .chat-log-pager strong {
  border-color: var(--chat-log-panel-border-strong);
  background: rgba(214, 184, 116, 0.18);
}

div.pagina_gestione_log_chat .chat-log-pager a:hover,
div.pagina_gestione_log_chat .chat-log-pager a:focus {
  display: inline-flex;
  box-sizing: border-box;
  min-width: 28px;
  min-height: 28px;
  margin: 0;
  padding: 0 8px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--chat-log-panel-border-strong);
  border-radius: 8px;
  background: rgba(214, 184, 116, 0.18);
  color: #fff6df;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.2;
  text-decoration: none;
  transform: none;
}

div.pagina_gestione_log_chat .chat-log-actions--back {
  justify-content: center;
  margin: 12px 0 0;
}

@media (max-width: 1120px) {
  div.pagina_gestione_log_chat .chat-log-dashboard,
  div.pagina_gestione_log_chat .chat-log-danger__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_gestione_log_chat .chat-log-filter-form--room,
  div.pagina_gestione_log_chat .chat-log-filter-form--event {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  div.pagina_gestione_pulizia_personaggi .character-cleanup-template-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_gestione_pulizia_personaggi .chat-log-field textarea,
  div.pagina_gestione_pulizia_personaggi .chat-log-field textarea:focus,
  div.pagina_gestione_pulizia_personaggi .character-cleanup-template-grid--staff .chat-log-field textarea,
  div.pagina_gestione_pulizia_personaggi .character-cleanup-template-grid--staff .chat-log-field textarea:focus {
    min-height: 150px;
  }
}

@media (max-width: 680px) {
  div.pagina_gestione_log_chat div.page_body {
    padding: 0 6px 14px;
  }

  div.pagina_gestione_log_chat .chat-log-filter-form,
  div.pagina_gestione_log_chat .chat-log-filter-form--room,
  div.pagina_gestione_log_chat .chat-log-filter-form--event {
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_gestione_log_chat .chat-log-results__head,
  div.pagina_gestione_log_chat .chat-log-hero,
  div.pagina_gestione_log_chat .chat-log-summary,
  div.pagina_gestione_log_chat .chat-log-form-actions,
  div.pagina_gestione_log_chat .chat-log-selection-toolbar,
  div.pagina_gestione_log_chat .chat-log-selection-toolbar__actions {
    justify-content: stretch;
  }

  div.pagina_gestione_log_chat .chat-log-summary span,
  div.pagina_gestione_log_chat .admin-card-action,
  div.pagina_gestione_log_chat .admin-card-link-button {
    flex: 1 1 100%;
  }

  div.pagina_gestione_log_chat .chat-log-entry--selectable {
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_gestione_log_chat .chat-log-entry__check {
    min-height: 34px;
  }
}

/* ===== KARMA CONTROL PANEL ===== */
/* La pagina porta anche la classe pagina_gestione_log_chat: pannelli, campi e
   pulsanti ereditano da li', qui restano solo le parti specifiche. */

div.pagina_karma_control_panel div.page_body {
  overflow: visible;
}

div.pagina_karma_control_panel .karma-panel {
  margin: 14px 0;
  overflow: visible;
}

div.pagina_karma_control_panel .karma-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
  min-width: 0;
  margin: 0;
}

div.pagina_karma_control_panel .karma-editor-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(330px, 0.75fr);
  gap: 14px;
  align-items: start;
  width: 100%;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-editor,
div.pagina_karma_control_panel .karma-assistant-rail {
  min-width: 0;
}

div.pagina_karma_control_panel .karma-editor {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

div.pagina_karma_control_panel .karma-assistant-rail {
  position: sticky;
  top: 10px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

div.pagina_karma_control_panel .karma-rule-groups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-config-section {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  min-height: 150px;
  padding: 12px;
  border: 1px solid rgba(159, 199, 218, 0.18);
  border-left-width: 3px;
  border-left-color: rgba(159, 199, 218, 0.34);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(159, 199, 218, 0.055), transparent 48%),
    rgba(0, 0, 0, 0.18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
  box-sizing: border-box;
  overflow: hidden;
  transition: border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease;
}

div.pagina_karma_control_panel .karma-config-section--identity {
  min-height: 0;
  border-left-color: rgba(214, 184, 116, 0.5);
  background:
    linear-gradient(135deg, rgba(214, 184, 116, 0.07), transparent 52%),
    rgba(0, 0, 0, 0.18);
}

div.pagina_karma_control_panel .karma-config-section.is-being-read {
  border-color: rgba(159, 199, 218, 0.48);
  border-left-color: rgba(214, 184, 116, 0.68);
  background:
    linear-gradient(135deg, rgba(159, 199, 218, 0.10), transparent 52%),
    rgba(0, 0, 0, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 0 18px rgba(159, 199, 218, 0.07);
}

div.pagina_karma_control_panel .karma-config-section.is-being-read::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(159, 199, 218, 0.72), transparent);
  animation: karma-field-read 0.72s ease-in-out infinite alternate;
  pointer-events: none;
}

@keyframes karma-field-read {
  from { opacity: 0.25; }
  to { opacity: 0.92; }
}

div.pagina_karma_control_panel .karma-config-section__head {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-config-section__head h4 {
  margin: 0;
  color: #f2dfb9;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-config-section__head p {
  margin: 0;
  color: var(--chat-log-text-soft);
  font-size: 10px;
  line-height: 1.4;
}

div.pagina_karma_control_panel .karma-identity-grid {
  display: grid;
  grid-template-columns: minmax(180px, 0.7fr) minmax(260px, 1.3fr);
  gap: 10px;
  align-items: start;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-pair-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  align-items: start;
  min-width: 0;
  margin-top: auto;
}

div.pagina_karma_control_panel .chat-log-field select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
}

div.pagina_karma_control_panel .chat-log-field input[type="text"] {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  min-height: 34px;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 7px 9px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--chat-log-panel-border);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.24);
  color: #f8f2df;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.45;
  transform: none;
}

div.pagina_karma_control_panel .chat-log-field input[type="text"]:focus {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  min-height: 34px;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 7px 9px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--chat-log-panel-border-strong);
  border-radius: 8px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.45;
  outline: none;
  transform: none;
}

div.pagina_karma_control_panel .karma-field__hint {
  color: var(--chat-log-text-soft);
  font-size: 10px;
  font-style: italic;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

div.pagina_karma_control_panel .karma-scope-hint {
  margin: 0;
  padding: 8px 10px;
  border: 1px solid rgba(159, 199, 218, 0.18);
  border-radius: 8px;
  background: rgba(159, 199, 218, 0.07);
  box-sizing: border-box;
  color: var(--chat-log-text-soft);
  font-size: 11px;
  line-height: 1.45;
}

div.pagina_karma_control_panel .karma-form__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-form__actions .admin-card-link-button,
div.pagina_karma_control_panel .karma-form__actions .admin-card-link-button:hover,
div.pagina_karma_control_panel .karma-form__actions .admin-card-link-button:focus {
  flex: 1 1 100%;
  width: 100%;
  margin: 0;
  transform: none;
}

/* --- Julie: riquadro di flavour --- */
div.pagina_karma_control_panel .karma-julie {
  --julie-shift-x: 0px;
  --julie-shift-y: 0px;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 13px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 14px;
  border: 1px solid rgba(214, 184, 116, 0.28);
  border-radius: 8px;
  background:
    radial-gradient(circle at 36px 42px, rgba(159, 199, 218, 0.17), transparent 92px),
    linear-gradient(145deg, rgba(214, 184, 116, 0.07), transparent 48%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(0, 0, 0, 0.3));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 14px 32px rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
  overflow: hidden;
  transition: border-color 0.28s ease, background 0.28s ease, box-shadow 0.28s ease;
}

div.pagina_karma_control_panel .karma-julie::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(159, 199, 218, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(159, 199, 218, 0.025) 1px, transparent 1px);
  background-size: 18px 18px;
  opacity: 0.55;
  pointer-events: none;
  transition: opacity 0.28s ease;
}

div.pagina_karma_control_panel .karma-julie > * {
  position: relative;
  z-index: 1;
}

div.pagina_karma_control_panel .karma-julie--look-up {
  --julie-shift-x: 0px;
  --julie-shift-y: -2px;
}

div.pagina_karma_control_panel .karma-julie--look-left {
  --julie-shift-x: -2px;
  --julie-shift-y: 0px;
}

div.pagina_karma_control_panel .karma-julie--look-right {
  --julie-shift-x: 2px;
  --julie-shift-y: 0px;
}

div.pagina_karma_control_panel .karma-julie--look-down-left {
  --julie-shift-x: -2px;
  --julie-shift-y: 2px;
}

div.pagina_karma_control_panel .karma-julie--look-down-right {
  --julie-shift-x: 2px;
  --julie-shift-y: 2px;
}

div.pagina_karma_control_panel .karma-julie--ready {
  border-color: rgba(214, 184, 116, 0.5);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 0 24px rgba(214, 184, 116, 0.12);
}

div.pagina_karma_control_panel .karma-julie--warn {
  border-color: rgba(214, 160, 90, 0.52);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 0 22px rgba(214, 160, 90, 0.08);
}

div.pagina_karma_control_panel .karma-julie--error {
  border-color: rgba(207, 107, 107, 0.55);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 0 24px rgba(207, 107, 107, 0.12);
}

div.pagina_karma_control_panel .karma-julie--done {
  border-color: rgba(140, 190, 140, 0.52);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 0 26px rgba(140, 190, 140, 0.12);
}

div.pagina_karma_control_panel .karma-julie--checking::before,
div.pagina_karma_control_panel .karma-julie--working::before,
div.pagina_karma_control_panel .karma-julie--listening::before {
  opacity: 1;
}

div.pagina_karma_control_panel .karma-julie__head {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  grid-template-areas:
    "avatar copy"
    "button button";
  gap: 12px;
  align-items: center;
  width: 100%;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-julie__avatar {
  grid-area: avatar;
  position: relative;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  isolation: isolate;
}

div.pagina_karma_control_panel .karma-julie__orbit,
div.pagina_karma_control_panel .karma-julie__ring,
div.pagina_karma_control_panel .karma-julie__signal {
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  box-sizing: border-box;
  pointer-events: none;
}

div.pagina_karma_control_panel .karma-julie__orbit {
  border: 1px solid transparent;
  opacity: 0.62;
}

div.pagina_karma_control_panel .karma-julie__orbit--outer {
  width: 54px;
  height: 54px;
  margin: -27px 0 0 -27px;
  border-top-color: rgba(159, 199, 218, 0.56);
  border-right-color: rgba(159, 199, 218, 0.18);
  border-bottom-color: rgba(214, 184, 116, 0.3);
  animation: karma-julie-orbit 15s linear infinite;
}

div.pagina_karma_control_panel .karma-julie__orbit--inner {
  width: 46px;
  height: 46px;
  margin: -23px 0 0 -23px;
  border-top-color: rgba(214, 184, 116, 0.42);
  border-left-color: rgba(159, 199, 218, 0.28);
  animation: karma-julie-orbit-reverse 11s linear infinite;
}

div.pagina_karma_control_panel .karma-julie__ring {
  width: 38px;
  height: 38px;
  margin: -19px 0 0 -19px;
  border: 1px solid rgba(159, 199, 218, 0.45);
  box-shadow: inset 0 0 10px rgba(159, 199, 218, 0.08);
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

div.pagina_karma_control_panel .karma-julie__core {
  position: relative;
  z-index: 2;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--chat-log-blue);
  box-shadow:
    0 0 7px rgba(159, 199, 218, 0.92),
    0 0 18px rgba(159, 199, 218, 0.42);
  transform: translate(var(--julie-shift-x), var(--julie-shift-y));
  animation: karma-julie-breathe 3.8s ease-in-out infinite;
  transition: background 0.25s ease, box-shadow 0.25s ease, transform 0.34s cubic-bezier(0.2, 0.75, 0.25, 1);
}

/* Alone che si espande e svanisce: nasce dal nucleo, non occupa spazio */
div.pagina_karma_control_panel .karma-julie__halo {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 14px;
  height: 14px;
  margin: -7px 0 0 -7px;
  border: 1px solid rgba(214, 184, 116, 0.7);
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
}

div.pagina_karma_control_panel .karma-julie__signal {
  z-index: 0;
  width: 18px;
  height: 18px;
  margin: -9px 0 0 -9px;
  border: 1px solid rgba(159, 199, 218, 0.65);
  opacity: 0;
}

div.pagina_karma_control_panel .karma-julie--ready .karma-julie__halo,
div.pagina_karma_control_panel .karma-julie--working .karma-julie__halo,
div.pagina_karma_control_panel .karma-julie--done .karma-julie__halo {
  animation: karma-julie-halo 2.25s ease-out infinite;
}

div.pagina_karma_control_panel .karma-julie--notifying .karma-julie__signal {
  animation: karma-julie-signal 0.72s cubic-bezier(0.16, 0.72, 0.2, 1);
}

@keyframes karma-julie-halo {
  0%   { transform: scale(1);   opacity: 0.55; }
  68%  { transform: scale(3.45); opacity: 0; }
  100% { transform: scale(3.45); opacity: 0; }
}

@keyframes karma-julie-signal {
  0% { transform: scale(0.72); opacity: 0; }
  18% { opacity: 0.78; }
  100% { transform: scale(3.05); opacity: 0; }
}

@keyframes karma-julie-breathe {
  0%, 100% { opacity: 0.82; }
  50% { opacity: 1; }
}

@keyframes karma-julie-orbit {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes karma-julie-orbit-reverse {
  from { transform: rotate(360deg); }
  to { transform: rotate(0deg); }
}

div.pagina_karma_control_panel .karma-julie--ready .karma-julie__core {
  background: var(--chat-log-accent);
  box-shadow: 0 0 12px rgba(214, 184, 116, 0.8);
}

div.pagina_karma_control_panel .karma-julie--ready .karma-julie__ring {
  border-color: rgba(214, 184, 116, 0.6);
  box-shadow: inset 0 0 12px rgba(214, 184, 116, 0.12);
}

div.pagina_karma_control_panel .karma-julie--ready .karma-julie__orbit--outer,
div.pagina_karma_control_panel .karma-julie--engaged .karma-julie__orbit--outer {
  animation-duration: 8s;
}

div.pagina_karma_control_panel .karma-julie--ready .karma-julie__orbit--inner,
div.pagina_karma_control_panel .karma-julie--engaged .karma-julie__orbit--inner {
  animation-duration: 6s;
}

div.pagina_karma_control_panel .karma-julie--checking .karma-julie__core {
  background: var(--chat-log-blue);
  box-shadow: 0 0 12px rgba(159, 199, 218, 0.85);
  animation: karma-julie-pulse 0.9s ease-in-out infinite;
}

div.pagina_karma_control_panel .karma-julie--warn .karma-julie__core {
  background: #d6a05a;
  box-shadow: 0 0 12px rgba(214, 160, 90, 0.8);
}

div.pagina_karma_control_panel .karma-julie--warn .karma-julie__ring {
  border-color: rgba(214, 160, 90, 0.62);
}

div.pagina_karma_control_panel .karma-julie--error .karma-julie__core {
  background: #cf6b6b;
  box-shadow: 0 0 12px rgba(207, 107, 107, 0.85);
  animation: karma-julie-pulse 1.4s ease-in-out infinite;
}

div.pagina_karma_control_panel .karma-julie--error .karma-julie__ring {
  border-color: rgba(207, 107, 107, 0.62);
}

div.pagina_karma_control_panel .karma-julie--error .karma-julie__orbit--outer,
div.pagina_karma_control_panel .karma-julie--warn .karma-julie__orbit--outer {
  animation-duration: 18s;
}

div.pagina_karma_control_panel .karma-julie--working .karma-julie__core {
  background: var(--chat-log-accent);
  box-shadow: 0 0 14px rgba(214, 184, 116, 0.9);
  animation: karma-julie-pulse 0.62s ease-in-out infinite;
}

div.pagina_karma_control_panel .karma-julie--working .karma-julie__ring {
  border-color: rgba(214, 184, 116, 0.75);
  border-top-color: transparent;
  animation: karma-julie-spin 1.15s linear infinite;
}

div.pagina_karma_control_panel .karma-julie--working .karma-julie__orbit--outer {
  animation-duration: 1.8s;
}

div.pagina_karma_control_panel .karma-julie--working .karma-julie__orbit--inner {
  animation-duration: 1.25s;
}

div.pagina_karma_control_panel .karma-julie--done .karma-julie__core {
  background: #8cbe8c;
  box-shadow:
    0 0 8px rgba(140, 190, 140, 0.94),
    0 0 20px rgba(140, 190, 140, 0.44);
  animation: karma-julie-done 0.68s ease-out both;
}

div.pagina_karma_control_panel .karma-julie--done .karma-julie__ring {
  border-color: rgba(140, 190, 140, 0.68);
  box-shadow: inset 0 0 12px rgba(140, 190, 140, 0.12);
}

div.pagina_karma_control_panel .karma-julie--listening .karma-julie__ring {
  border-color: rgba(159, 199, 218, 0.72);
  box-shadow:
    inset 0 0 12px rgba(159, 199, 218, 0.16),
    0 0 10px rgba(159, 199, 218, 0.12);
}

@keyframes karma-julie-done {
  0% { opacity: 0.55; }
  45% { opacity: 1; }
  100% { opacity: 0.9; }
}

@keyframes karma-julie-pulse {
  0%   { opacity: 1; }
  50%  { opacity: 0.35; }
  100% { opacity: 1; }
}

@keyframes karma-julie-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

div.pagina_karma_control_panel .karma-julie__copy {
  display: flex;
  grid-area: copy;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-julie__name {
  color: #f2dfb9;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-julie__role {
  color: var(--chat-log-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-julie__status {
  min-height: 2.8em;
  color: var(--chat-log-text-soft);
  font-size: 11px;
  font-style: italic;
  line-height: 1.4;
  opacity: 1;
  transition: opacity 0.13s ease;
}

div.pagina_karma_control_panel .karma-julie__status.is-swapping {
  opacity: 0;
}

div.pagina_karma_control_panel .karma-julie--error .karma-julie__status {
  color: #e8b4b4;
}

div.pagina_karma_control_panel .karma-julie--warn .karma-julie__status {
  color: #e8cfa4;
}

div.pagina_karma_control_panel .karma-julie--checking .karma-julie__status {
  color: #cde2ec;
}

div.pagina_karma_control_panel .karma-julie--done .karma-julie__status {
  color: #cee4c8;
}

/* --- Scorciatoie --- */
div.pagina_karma_control_panel .karma-julie__presets {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  align-items: stretch;
  min-width: 0;
  padding-top: 10px;
  border-top: 1px solid rgba(214, 184, 116, 0.16);
}

div.pagina_karma_control_panel .karma-julie__presets-label {
  grid-column: 1 / -1;
  margin: 0 0 1px;
  color: var(--chat-log-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

/* Stato normale e hover ripetono lo stesso box model: il pulsante non si
   muove ne' cambia dimensione al passaggio del mouse. */
div.pagina_karma_control_panel button.karma-preset,
div.pagina_karma_control_panel button.karma-preset:hover,
div.pagina_karma_control_panel button.karma-preset:focus {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 4px;
  width: 100%;
  min-height: 68px;
  height: auto;
  margin: 0;
  padding: 9px 10px;
  border-width: 1px;
  border-style: solid;
  border-radius: 8px;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.06em;
  text-align: left;
  text-transform: none;
  transform: none;
}

div.pagina_karma_control_panel button.karma-preset {
  border-color: rgba(159, 199, 218, 0.28);
  background: rgba(159, 199, 218, 0.10);
  color: #f8f2df;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

div.pagina_karma_control_panel button.karma-preset:hover,
div.pagina_karma_control_panel button.karma-preset:focus {
  border-color: var(--chat-log-panel-border-strong);
  background: rgba(214, 184, 116, 0.18);
  color: #fff6df;
  box-shadow: inset 0 0 0 1px rgba(214, 184, 116, 0.08);
  outline: none;
}

div.pagina_karma_control_panel .karma-preset__name {
  color: #f8f2df;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  line-height: 1.25;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-preset__info {
  color: var(--chat-log-text-soft);
  font-size: 9px;
  font-weight: normal;
  letter-spacing: 0;
  line-height: 1.35;
  text-transform: none;
}

/* Lampo dorato alla scorciatoia appena applicata */
div.pagina_karma_control_panel button.karma-preset.is-applied {
  animation: karma-preset-flash 0.62s ease-out;
}

@keyframes karma-preset-flash {
  0%   { background: rgba(214, 184, 116, 0.55); border-color: rgba(214, 184, 116, 0.9); }
  100% { background: rgba(159, 199, 218, 0.10); border-color: rgba(159, 199, 218, 0.28); }
}

/* --- Referto: coerenza e riepilogo --- */
div.pagina_karma_control_panel .karma-julie__report {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  min-width: 0;
  padding-top: 10px;
  border-top: 1px solid rgba(214, 184, 116, 0.16);
  overflow: hidden;
}

/* Passata di luce quando Julie rilegge la regola */
div.pagina_karma_control_panel .karma-julie__report.is-scanning::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 36%;
  background: linear-gradient(90deg, transparent, rgba(159, 199, 218, 0.16), transparent);
  transform: translateX(-120%);
  pointer-events: none;
  animation: karma-scan 0.68s cubic-bezier(0.2, 0.7, 0.25, 1);
}

@keyframes karma-scan {
  from { transform: translateX(-120%); }
  to   { transform: translateX(390%); }
}

div.pagina_karma_control_panel .karma-report-block {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid rgba(159, 199, 218, 0.16);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.20);
  box-sizing: border-box;
}

div.pagina_karma_control_panel .karma-report-block__title {
  color: var(--chat-log-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-report-list {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}

div.pagina_karma_control_panel .karma-report-item {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  padding: 5px 8px;
  border-left: 2px solid rgba(159, 199, 218, 0.4);
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.035);
  box-sizing: border-box;
  color: #f4ead3;
  font-size: 11px;
  line-height: 1.4;
  animation: karma-report-in 0.26s ease-out both;
}

div.pagina_karma_control_panel .karma-report-item:nth-child(2) { animation-delay: 45ms; }
div.pagina_karma_control_panel .karma-report-item:nth-child(3) { animation-delay: 90ms; }
div.pagina_karma_control_panel .karma-report-item:nth-child(4) { animation-delay: 135ms; }
div.pagina_karma_control_panel .karma-report-item:nth-child(5) { animation-delay: 180ms; }
div.pagina_karma_control_panel .karma-report-item:nth-child(n+6) { animation-delay: 225ms; }

@keyframes karma-report-in {
  from { opacity: 0; transform: translateY(-3px); }
  to   { opacity: 1; transform: none; }
}

div.pagina_karma_control_panel .karma-report-item--ok {
  border-left-color: rgba(140, 190, 140, 0.65);
  color: #d8e8d2;
}

div.pagina_karma_control_panel .karma-report-item--errore {
  border-left-color: rgba(207, 107, 107, 0.8);
  background: rgba(129, 42, 42, 0.22);
  color: #f0d5d5;
}

div.pagina_karma_control_panel .karma-report-item--avviso {
  border-left-color: rgba(214, 160, 90, 0.8);
  background: rgba(214, 160, 90, 0.10);
  color: #f0dfc4;
}

div.pagina_karma_control_panel .karma-report-item--nota {
  border-left-color: rgba(159, 199, 218, 0.35);
  color: var(--chat-log-text-soft);
  font-style: italic;
}

div.pagina_karma_control_panel button.karma-report-fix,
div.pagina_karma_control_panel button.karma-report-fix:hover,
div.pagina_karma_control_panel button.karma-report-fix:focus {
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: 22px;
  height: auto;
  margin: 0;
  padding: 0 9px;
  border-width: 1px;
  border-style: solid;
  border-radius: 6px;
  font-size: 9px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transform: none;
}

div.pagina_karma_control_panel button.karma-report-fix {
  border-color: rgba(214, 184, 116, 0.42);
  background: rgba(214, 184, 116, 0.16);
  color: #fff6df;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease;
}

div.pagina_karma_control_panel button.karma-report-fix:hover,
div.pagina_karma_control_panel button.karma-report-fix:focus {
  border-color: rgba(214, 184, 116, 0.75);
  background: rgba(214, 184, 116, 0.3);
  outline: none;
}

div.pagina_karma_control_panel .karma-report-summary {
  margin: 0;
  color: #f4ead3;
  font-size: 12px;
  font-style: italic;
  line-height: 1.5;
}

/* --- Promemoria delle regole gia' attive --- */
div.pagina_karma_control_panel .karma-memo {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  align-items: flex-start;
  width: 100%;
  min-width: 0;
  margin: 12px 0 0;
  padding: 11px 12px;
  border: 1px solid rgba(159, 199, 218, 0.24);
  border-left-width: 3px;
  border-left-color: rgba(159, 199, 218, 0.5);
  border-radius: 8px;
  background:
    radial-gradient(circle at 24px 20px, rgba(159, 199, 218, 0.12), transparent 62px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(0, 0, 0, 0.22));
  box-sizing: border-box;
}

div.pagina_karma_control_panel .karma-memo__avatar {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
}

div.pagina_karma_control_panel .karma-memo__avatar .karma-julie__ring {
  width: 30px;
  height: 30px;
  margin: -15px 0 0 -15px;
}

div.pagina_karma_control_panel .karma-memo__avatar .karma-julie__core {
  width: 9px;
  height: 9px;
  transform: none;
}

div.pagina_karma_control_panel .karma-memo__copy {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-memo__title {
  color: #f2dfb9;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-memo__text {
  margin: 0;
  color: var(--chat-log-text-soft);
  font-size: 11px;
  line-height: 1.4;
}

div.pagina_karma_control_panel .karma-memo__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
  gap: 6px;
  margin: 2px 0 0;
  padding: 0;
  list-style: none;
}

div.pagina_karma_control_panel .karma-memo__item {
  display: flex;
  flex-direction: column;
  gap: 3px;
  align-items: flex-start;
  min-width: 0;
  padding: 7px 9px;
  border: 1px solid rgba(159, 199, 218, 0.2);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.24);
  box-sizing: border-box;
  font-size: 11px;
  line-height: 1.3;
}

div.pagina_karma_control_panel .karma-memo__item--permanent {
  border-color: rgba(214, 184, 116, 0.44);
  background: rgba(214, 184, 116, 0.12);
}

div.pagina_karma_control_panel .karma-memo__item strong {
  color: #f2dfb9;
  font-weight: bold;
}

div.pagina_karma_control_panel .karma-memo__item span {
  color: #f4ead3;
}

div.pagina_karma_control_panel .karma-memo__item em {
  color: var(--chat-log-text-soft);
  font-size: 10px;
  font-style: italic;
}

div.pagina_karma_control_panel .karma-julie__button,
div.pagina_karma_control_panel input.karma-julie__button,
div.pagina_karma_control_panel .karma-julie__button:hover,
div.pagina_karma_control_panel .karma-julie__button:focus,
div.pagina_karma_control_panel input.karma-julie__button:hover,
div.pagina_karma_control_panel input.karma-julie__button:focus {
  grid-area: button;
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 38px;
  height: auto;
  margin: 0;
  padding: 0 14px;
  border-width: 1px;
  border-style: solid;
  border-radius: 8px;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.2;
  transform: none;
}

div.pagina_karma_control_panel input.karma-julie__button:disabled {
  cursor: wait;
  opacity: 0.72;
}

/* --- Elenco delle regole --- */
div.pagina_karma_control_panel .karma-results {
  margin: 14px 0 0;
  padding: 14px;
}

div.pagina_karma_control_panel .karma-results__head {
  align-items: center;
}

div.pagina_karma_control_panel .karma-results__copy {
  display: flex;
  flex: 1 1 420px;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-results__copy p {
  margin: 0;
  color: var(--chat-log-text-soft);
  font-size: 11px;
  line-height: 1.4;
}

div.pagina_karma_control_panel .karma-results__stats {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  gap: 6px;
  align-items: stretch;
  justify-content: flex-end;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-results__stats span {
  display: grid;
  grid-template-columns: auto auto;
  gap: 5px;
  align-items: baseline;
  min-height: 30px;
  padding: 5px 9px;
  border: 1px solid rgba(159, 199, 218, 0.2);
  border-radius: 8px;
  background: rgba(159, 199, 218, 0.07);
  box-sizing: border-box;
  color: var(--chat-log-text-soft);
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-results__stats strong {
  color: #f8f2df;
  font-size: 13px;
  line-height: 1;
}

div.pagina_karma_control_panel .karma-results__stats .karma-results__stat--active {
  border-color: rgba(140, 190, 140, 0.32);
  background: rgba(140, 190, 140, 0.09);
}

div.pagina_karma_control_panel .karma-results__stats .karma-results__stat--inactive {
  border-color: rgba(159, 199, 218, 0.2);
}

div.pagina_karma_control_panel .karma-results__stats .karma-results__stat--spent {
  border-color: rgba(207, 107, 107, 0.3);
  background: rgba(129, 42, 42, 0.14);
}

div.pagina_karma_control_panel .karma-empty {
  margin: 0;
  color: var(--chat-log-text-soft);
  font-size: 12px;
  line-height: 1.4;
}

div.pagina_karma_control_panel .karma-table-wrapper {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(159, 199, 218, 0.14);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.16);
  box-sizing: border-box;
  overflow-x: auto;
}

div.pagina_karma_control_panel .karma-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

div.pagina_karma_control_panel .karma-table th,
div.pagina_karma_control_panel .karma-table td {
  padding: 9px 10px;
  border-top: 1px solid rgba(214, 184, 116, 0.14);
  color: #f4ead3;
  font-size: 12px;
  line-height: 1.35;
  vertical-align: middle;
  overflow-wrap: anywhere;
}

div.pagina_karma_control_panel .karma-table th {
  border-top: 0;
  border-bottom: 1px solid rgba(214, 184, 116, 0.22);
  background: rgba(214, 184, 116, 0.075);
  color: #f2dfb9;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-align: left;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-table th:nth-child(1) { width: 15%; }
div.pagina_karma_control_panel .karma-table th:nth-child(2) { width: 28%; }
div.pagina_karma_control_panel .karma-table th:nth-child(3) { width: 9%; text-align: center; }
div.pagina_karma_control_panel .karma-table th:nth-child(4) { width: 10%; }
div.pagina_karma_control_panel .karma-table th:nth-child(5) { width: 15%; }
div.pagina_karma_control_panel .karma-table th:nth-child(6) { width: 23%; text-align: right; }

div.pagina_karma_control_panel .karma-table tbody tr {
  background: rgba(255, 255, 255, 0.012);
  transition: background 0.18s ease;
}

div.pagina_karma_control_panel .karma-table tbody tr:nth-child(even) {
  background: rgba(255, 255, 255, 0.025);
}

div.pagina_karma_control_panel .karma-table tbody tr:hover {
  background: rgba(159, 199, 218, 0.065);
}

div.pagina_karma_control_panel .karma-table tbody tr.karma-table__row--active td:first-child {
  box-shadow: inset 3px 0 0 rgba(140, 190, 140, 0.5);
}

div.pagina_karma_control_panel .karma-cell-center {
  text-align: center;
}

div.pagina_karma_control_panel .karma-cell-name {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-table__residual,
div.pagina_karma_control_panel .karma-table__status {
  text-align: center;
}

div.pagina_karma_control_panel .karma-table__operations {
  text-align: right;
}

div.pagina_karma_control_panel .karma-note {
  color: var(--chat-log-text-soft);
  font-size: 10px;
  font-style: italic;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

div.pagina_karma_control_panel .karma-badge {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border: 1px solid rgba(159, 199, 218, 0.24);
  border-radius: 8px;
  background: rgba(159, 199, 218, 0.12);
  box-sizing: border-box;
  color: #f8f2df;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_karma_control_panel .karma-badge--on {
  border-color: rgba(214, 184, 116, 0.5);
  background: rgba(214, 184, 116, 0.18);
  color: #fff6df;
}

div.pagina_karma_control_panel .karma-badge--spent {
  border-color: rgba(207, 107, 107, 0.42);
  background: rgba(129, 42, 42, 0.32);
}

div.pagina_karma_control_panel .karma-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  justify-content: flex-end;
  min-width: 0;
}

div.pagina_karma_control_panel .karma-row-actions .admin-card-action,
div.pagina_karma_control_panel .karma-row-actions .admin-card-action:hover,
div.pagina_karma_control_panel .karma-row-actions .admin-card-action:focus {
  display: inline-flex;
  box-sizing: border-box;
  min-height: 28px;
  height: auto;
  margin: 0;
  padding: 0 8px;
  border-width: 1px;
  border-style: solid;
  border-radius: 7px;
  font-size: 9px;
  font-weight: bold;
  line-height: 1.2;
  transform: none;
}

div.pagina_karma_control_panel .karma-inline-form {
  display: inline-flex;
  margin: 0;
  padding: 0;
}

@media (max-width: 1080px) {
  div.pagina_karma_control_panel .karma-editor-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_karma_control_panel .karma-assistant-rail {
    position: static;
  }

  div.pagina_karma_control_panel .karma-julie__head {
    grid-template-columns: 58px minmax(0, 1fr) minmax(150px, auto);
    grid-template-areas: "avatar copy button";
  }

  div.pagina_karma_control_panel .karma-julie__button,
  div.pagina_karma_control_panel input.karma-julie__button,
  div.pagina_karma_control_panel .karma-julie__button:hover,
  div.pagina_karma_control_panel .karma-julie__button:focus,
  div.pagina_karma_control_panel input.karma-julie__button:hover,
  div.pagina_karma_control_panel input.karma-julie__button:focus {
    width: auto;
    min-width: 150px;
    min-height: 38px;
    margin: 0;
    padding: 0 14px;
  }

  div.pagina_karma_control_panel .karma-julie__presets {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  div.pagina_karma_control_panel .karma-julie__report {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  div.pagina_karma_control_panel .karma-rule-groups,
  div.pagina_karma_control_panel .karma-identity-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_karma_control_panel .karma-config-section {
    min-height: 0;
  }

  div.pagina_karma_control_panel .karma-julie__presets {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  div.pagina_karma_control_panel .karma-results__stats {
    flex: 1 1 100%;
    justify-content: flex-start;
  }

  div.pagina_karma_control_panel .karma-table-wrapper {
    border: 0;
    background: transparent;
    overflow: visible;
  }

  div.pagina_karma_control_panel .karma-table,
  div.pagina_karma_control_panel .karma-table tbody {
    display: block;
    width: 100%;
  }

  div.pagina_karma_control_panel .karma-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  div.pagina_karma_control_panel .karma-table tbody {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
  }

  div.pagina_karma_control_panel .karma-table tbody tr,
  div.pagina_karma_control_panel .karma-table tbody tr:nth-child(even),
  div.pagina_karma_control_panel .karma-table tbody tr:hover {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 12px;
    padding: 11px;
    border: 1px solid rgba(159, 199, 218, 0.18);
    border-left-width: 3px;
    border-radius: 8px;
    background:
      linear-gradient(135deg, rgba(159, 199, 218, 0.055), transparent 48%),
      rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
  }

  div.pagina_karma_control_panel .karma-table tbody tr.karma-table__row--active {
    border-left-color: rgba(140, 190, 140, 0.55);
  }

  div.pagina_karma_control_panel .karma-table tbody tr.karma-table__row--active td:first-child {
    box-shadow: none;
  }

  div.pagina_karma_control_panel .karma-table td,
  div.pagina_karma_control_panel .karma-table__residual,
  div.pagina_karma_control_panel .karma-table__status,
  div.pagina_karma_control_panel .karma-table__operations {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
    min-width: 0;
    padding: 0;
    border: 0;
    text-align: left;
  }

  div.pagina_karma_control_panel .karma-table td::before {
    content: attr(data-label);
    color: var(--chat-log-blue);
    font-size: 9px;
    font-weight: bold;
    letter-spacing: 0.07em;
    line-height: 1.2;
    text-transform: uppercase;
  }

  div.pagina_karma_control_panel .karma-table__identity,
  div.pagina_karma_control_panel .karma-table__rule,
  div.pagina_karma_control_panel .karma-table__last,
  div.pagina_karma_control_panel .karma-table__operations {
    grid-column: 1 / -1;
  }

  div.pagina_karma_control_panel .karma-cell-center {
    text-align: left;
  }

  div.pagina_karma_control_panel .karma-row-actions {
    width: 100%;
    justify-content: flex-start;
  }

  div.pagina_karma_control_panel .karma-inline-form {
    flex: 1 1 120px;
  }

  div.pagina_karma_control_panel .karma-row-actions .admin-card-action,
  div.pagina_karma_control_panel .karma-row-actions .admin-card-action:hover,
  div.pagina_karma_control_panel .karma-row-actions .admin-card-action:focus {
    width: 100%;
  }
}

@media (max-width: 560px) {
  div.pagina_karma_control_panel .karma-pair-grid,
  div.pagina_karma_control_panel .karma-julie__report {
    grid-template-columns: minmax(0, 1fr);
  }

  div.pagina_karma_control_panel .karma-julie__head {
    grid-template-columns: 58px minmax(0, 1fr);
    grid-template-areas:
      "avatar copy"
      "button button";
  }

  div.pagina_karma_control_panel .karma-julie__button,
  div.pagina_karma_control_panel input.karma-julie__button,
  div.pagina_karma_control_panel .karma-julie__button:hover,
  div.pagina_karma_control_panel .karma-julie__button:focus,
  div.pagina_karma_control_panel input.karma-julie__button:hover,
  div.pagina_karma_control_panel input.karma-julie__button:focus {
    width: 100%;
    min-width: 0;
  }

  div.pagina_karma_control_panel .karma-results__stats span {
    flex: 1 1 calc(50% - 6px);
    justify-content: center;
  }
}

@media (max-width: 410px) {
  div.pagina_karma_control_panel .karma-julie__presets {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  div.pagina_karma_control_panel .karma-config-section.is-being-read::after,
  div.pagina_karma_control_panel .karma-julie__orbit,
  div.pagina_karma_control_panel .karma-julie__core,
  div.pagina_karma_control_panel .karma-julie__ring,
  div.pagina_karma_control_panel .karma-julie__halo,
  div.pagina_karma_control_panel .karma-julie__signal,
  div.pagina_karma_control_panel button.karma-preset.is-applied,
  div.pagina_karma_control_panel .karma-julie__report.is-scanning::after,
  div.pagina_karma_control_panel .karma-report-item {
    animation: none !important;
  }

  div.pagina_karma_control_panel .karma-config-section,
  div.pagina_karma_control_panel .karma-julie,
  div.pagina_karma_control_panel .karma-julie::before,
  div.pagina_karma_control_panel .karma-julie__core,
  div.pagina_karma_control_panel .karma-julie__ring,
  div.pagina_karma_control_panel .karma-julie__status,
  div.pagina_karma_control_panel .karma-table tbody tr {
    transition: none !important;
  }
}

/* ===== GESTIONE ASTE V2 ===== */
div.pagina_gestione_aste_v2 {
  --auction-admin-bg: rgba(11, 10, 12, 0.72);
  --auction-admin-panel: rgba(255, 255, 255, 0.045);
  --auction-admin-panel-strong: rgba(255, 255, 255, 0.075);
  --auction-admin-border: rgba(209, 174, 113, 0.24);
  --auction-admin-border-strong: rgba(209, 174, 113, 0.44);
  --auction-admin-blue: #9fc7da;
  --auction-admin-gold: #d8bc79;
  --auction-admin-text-soft: rgba(255, 248, 235, 0.72);
  --auction-admin-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
}

div.pagina_gestione_aste_v2 .auction-admin {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  text-align: left;
}

div.pagina_gestione_aste_v2 .auction-admin__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid var(--auction-admin-border);
  border-radius: 14px;
  background:
    radial-gradient(circle at 100% 0, rgba(216, 188, 121, 0.13), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018));
  box-shadow: var(--auction-admin-shadow);
}

div.pagina_gestione_aste_v2 .auction-admin__intro,
div.pagina_gestione_aste_v2 .auction-admin__subtitle {
  min-width: 0;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin__subtitle {
  color: var(--auction-admin-text-soft);
  line-height: 1.35;
}

div.pagina_gestione_aste_v2 .auction-admin__links {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

div.pagina_gestione_aste_v2 .auction-admin-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
  padding: 6px;
  border: 1px solid rgba(159, 199, 218, 0.14);
  border-radius: 14px;
  background: rgba(0, 0, 0, 0.18);
}

div.pagina_gestione_aste_v2 .auction-admin-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 13px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.045);
  color: var(--auction-admin-text-soft);
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-tab:hover,
div.pagina_gestione_aste_v2 .auction-admin-tab.is-active {
  border-color: var(--auction-admin-border-strong);
  background: linear-gradient(135deg, rgba(216, 188, 121, 0.26), rgba(159, 199, 218, 0.09));
  color: #fff2d7;
}

div.pagina_gestione_aste_v2 .auction-admin-summary {
  display: grid;
  grid-template-columns: repeat(8, minmax(78px, 1fr));
  gap: 6px;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}

div.pagina_gestione_aste_v2 .auction-admin-summary li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 38px;
  margin: 0;
  padding: 7px 9px;
  border: 1px solid rgba(159, 199, 218, 0.18);
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(159, 199, 218, 0.10), rgba(0, 0, 0, 0.12));
  box-sizing: border-box;
}

div.pagina_gestione_aste_v2 .auction-admin-summary span,
div.pagina_gestione_aste_v2 .auction-admin-detail-grid span,
div.pagina_gestione_aste_v2 .auction-admin-listing-card__grid span {
  color: var(--auction-admin-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-summary strong {
  color: #fff2d7;
  font-size: 17px;
  line-height: 1;
}

div.pagina_gestione_aste_v2 .auction-admin-toolbar.admin-card-toolbar {
  position: static;
  display: grid;
  grid-template-columns: minmax(220px, 2fr) repeat(3, minmax(130px, 1fr)) auto;
  gap: 8px;
  align-items: end;
  justify-content: stretch;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 9px 10px;
}

div.pagina_gestione_aste_v2 .auction-admin-toolbar .admin-card-toolbar__field,
div.pagina_gestione_aste_v2 .auction-admin-toolbar .admin-card-toolbar__actions {
  flex: 0 1 auto;
  margin: 0;
  min-width: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-toolbar input,
div.pagina_gestione_aste_v2 .auction-admin-toolbar select,
div.pagina_gestione_aste_v2 .auction-admin-form input,
div.pagina_gestione_aste_v2 .auction-admin-form select,
div.pagina_gestione_aste_v2 .auction-admin-form textarea {
  width: 100%;
  max-width: 100%;
  margin: 0;
  box-sizing: border-box;
}

div.pagina_gestione_aste_v2 .auction-admin-panel {
  display: flex;
  flex-direction: column;
  gap: 9px;
  width: 100%;
  margin: 0;
  padding: 10px;
  border: 1px solid var(--auction-admin-border);
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(216, 188, 121, 0.07), transparent 36%),
    linear-gradient(180deg, var(--auction-admin-panel-strong), var(--auction-admin-panel));
  box-shadow: var(--auction-admin-shadow);
  box-sizing: border-box;
}

div.pagina_gestione_aste_v2 .auction-admin-panel__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-panel__head h3,
div.pagina_gestione_aste_v2 .auction-admin-panel__head p {
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-panel__head h3 {
  color: #f5e5c5;
  font-size: 15px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-panel__head p {
  flex: 1 1 auto;
  color: var(--auction-admin-text-soft);
  font-size: 11px;
  line-height: 1.35;
  text-align: right;
}

div.pagina_gestione_aste_v2 .auction-admin-form {
  display: grid;
  gap: 8px;
  align-items: end;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-duration-form {
  grid-template-columns: minmax(170px, 1.6fr) 74px 88px 110px minmax(220px, 1.5fr) auto;
}

div.pagina_gestione_aste_v2 .auction-admin-credit-form {
  grid-template-columns: minmax(170px, 0.9fr) minmax(280px, 1.1fr) minmax(260px, 1.4fr) auto;
}

div.pagina_gestione_aste_v2 .auction-admin-system-form {
  grid-template-columns: minmax(260px, 1.7fr) minmax(120px, 0.65fr) 82px minmax(150px, 0.8fr) minmax(116px, 0.58fr) minmax(124px, 0.62fr);
}

div.pagina_gestione_aste_v2 .auction-admin-system-preview {
  display: grid;
  grid-template-columns: repeat(3, minmax(128px, 1fr));
  gap: 10px;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid rgba(216, 188, 121, 0.22);
  border-radius: 11px;
  background: linear-gradient(135deg, rgba(216, 188, 121, 0.16), rgba(0, 0, 0, 0.18));
}

div.pagina_gestione_aste_v2 .auction-admin-system-preview span {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding: 6px 8px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.16);
}

div.pagina_gestione_aste_v2 .auction-admin-system-preview em {
  color: var(--auction-admin-blue);
  font-size: 10px;
  font-style: normal;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-system-preview strong {
  color: #fff2d7;
  font-size: 16px;
  line-height: 1;
}

div.pagina_gestione_aste_v2 .auction-admin-cleanup-form {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-status-checks {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-status-checks legend {
  margin: 0 5px 0 0;
  padding: 0;
  color: var(--auction-admin-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-status-checks label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid rgba(216, 188, 121, 0.18);
  border-radius: 11px;
  background: rgba(0, 0, 0, 0.18);
  color: #fff2d7;
  font-size: 11px;
  font-weight: bold;
}

div.pagina_gestione_aste_v2 .auction-admin-status-checks__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 92px;
}

div.pagina_gestione_aste_v2 .auction-admin-status-checks__text strong {
  color: #fff2d7;
  font-size: 11px;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-status-checks small {
  color: var(--auction-admin-text-soft);
  font-size: 10px;
  font-weight: normal;
}

div.pagina_gestione_aste_v2 .auction-admin-status-checks input {
  width: auto;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-cleanup-form__actions {
  display: flex;
  justify-content: flex-end;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-multiselect-bar {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
  padding: 7px 10px;
  border: 1px solid var(--auction-admin-border);
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.22);
}

div.pagina_gestione_aste_v2 .auction-admin-multiselect-bar__left {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-left: 11px;
}

div.pagina_gestione_aste_v2 .auction-admin-multiselect-bar__all {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #fff2d7;
  font-size: 11px;
  font-weight: bold;
  cursor: pointer;
  user-select: none;
}

div.pagina_gestione_aste_v2 .auction-admin-multiselect-bar__all input,
div.pagina_gestione_aste_v2 .auction-history-checkbox {
  width: 14px;
  height: 14px;
  margin: 0;
  cursor: pointer;
  accent-color: var(--auction-admin-gold);
  flex-shrink: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-multiselect-count {
  color: var(--auction-admin-text-soft);
  font-size: 11px;
  font-weight: bold;
  white-space: nowrap;
}

div.pagina_gestione_aste_v2 .auction-admin-history-card.is-selected,
div.pagina_gestione_aste_v2 .auction-admin-history-card:has(.auction-history-checkbox:checked) {
  border-left-color: var(--auction-admin-gold);
  background: linear-gradient(90deg, rgba(216, 188, 121, 0.10) 0%, transparent 55%),
              linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(0, 0, 0, 0.10));
}

div.pagina_gestione_aste_v2 .auction-admin-action-form--delete-history {
  border-color: rgba(178, 86, 67, 0.28);
  background:
    linear-gradient(90deg, rgba(178, 86, 67, 0.12), transparent 45%),
    rgba(0, 0, 0, 0.14);
}

div.pagina_gestione_aste_v2 .auction-admin-form__field--system-template {
  grid-column: span 2;
}

div.pagina_gestione_aste_v2 .auction-admin-form__field--system-money,
div.pagina_gestione_aste_v2 .auction-admin-form__field--system-note {
  grid-column: span 2;
}

div.pagina_gestione_aste_v2 .auction-admin-system-form .auction-admin-form__actions {
  align-self: stretch;
}

div.pagina_gestione_aste_v2 .auction-admin-system-form .auction-admin-form__actions .admin-card-action {
  min-height: 100%;
}

div.pagina_gestione_aste_v2 .auction-admin-form__field,
div.pagina_gestione_aste_v2 .auction-admin-form__actions,
div.pagina_gestione_aste_v2 .auction-admin-inline-form,
div.pagina_gestione_aste_v2 .auction-admin-action-form p {
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-form__field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-form__field label {
  color: var(--auction-admin-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-form__hint {
  color: var(--auction-admin-text-soft);
  font-size: 10px;
  line-height: 1.2;
}

div.pagina_gestione_aste_v2 .auction-admin-form__field--check {
  justify-content: center;
}

div.pagina_gestione_aste_v2 .auction-admin-form__field--check label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
}

div.pagina_gestione_aste_v2 .auction-admin-form__field--check input {
  width: auto;
}

div.pagina_gestione_aste_v2 .auction-admin-form textarea {
  height: 54px;
  min-height: 54px;
  resize: vertical;
}

div.pagina_gestione_aste_v2 .auction-admin-form__actions {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

div.pagina_gestione_aste_v2 .auction-admin-preset-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}

div.pagina_gestione_aste_v2 .auction-admin-preset {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  padding: 7px 8px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 11px;
  background: rgba(0, 0, 0, 0.16);
}

div.pagina_gestione_aste_v2 .auction-admin-preset strong {
  color: #fff2d7;
}

div.pagina_gestione_aste_v2 .auction-admin-preset span {
  color: var(--auction-admin-text-soft);
  font-size: 11px;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid {
  display: grid;
  grid-template-columns: minmax(210px, 1.45fr) minmax(92px, 0.56fr) minmax(92px, 0.56fr) minmax(164px, 0.9fr) 76px 70px minmax(104px, 0.68fr) minmax(106px, 0.68fr);
  row-gap: 5px;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid__head,
div.pagina_gestione_aste_v2 .auction-admin-component-auto-row {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: subgrid;
  column-gap: 6px;
  align-items: center;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid__head {
  padding: 0 8px 0;
  align-items: end;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid__head span {
  display: block;
  color: var(--auction-admin-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.3;
  padding-bottom: 5px;
  border-bottom: 1px solid rgba(159, 199, 218, 0.28);
  margin-bottom: 4px;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row {
  min-height: 42px;
  padding: 7px 8px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 11px;
  background: rgba(0, 0, 0, 0.16);
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row.is-active {
  border-color: rgba(216, 188, 121, 0.28);
  background:
    linear-gradient(90deg, rgba(216, 188, 121, 0.14), transparent 40%),
    rgba(0, 0, 0, 0.16);
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__item strong {
  color: #fff2d7;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__item span,
div.pagina_gestione_aste_v2 .auction-admin-component-auto-row > span {
  color: var(--auction-admin-text-soft);
  font-size: 11px;
  line-height: 1.2;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__quantity {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__quantity span {
  display: none;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__quantity input {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__money {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__money > span {
  display: none;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__money-fields {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 3px;
  align-items: center;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__money-fields label {
  color: var(--auction-admin-blue);
  font-size: 9px;
  font-weight: bold;
  line-height: 1;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__money-fields input {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__status {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-row__status a {
  color: var(--auction-admin-gold);
  font-weight: bold;
  text-decoration: none;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-component-auto-run {
  justify-content: flex-end;
}

/* Form aste random epiche */
div.pagina_gestione_aste_v2 .auction-admin-random-auto-form {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__fields {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  flex: 1 1 auto;
  flex-wrap: wrap;
}

div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__field span,
div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__field > span:first-child {
  color: var(--auction-admin-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__field input[type="number"] {
  width: 70px;
}

div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__stat {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 6px 12px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__stat span {
  color: var(--auction-admin-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__stat strong {
  color: #f4ebdb;
  font-size: 13px;
}

div.pagina_gestione_aste_v2 .auction-admin-random-auto-form__actions {
  flex: 0 0 auto;
}

/* Barra + pulsante aggiungi */
div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-bar {
  margin-bottom: 8px;
}

/* Form aggiunta oggetto: riga singola */
div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-form {
  padding: 10px 12px;
  border-radius: 11px;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.07);
}

div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-end;
  gap: 8px;
}

div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid > div {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1 1 0;
  min-width: 80px;
}

div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid > div:first-child {
  flex: 2 1 0;
  min-width: 140px;
}

div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid > .auction-admin-component-auto-row__money {
  flex: 2 1 0;
  min-width: 190px;
}

div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid > div:last-child {
  flex: 0 0 auto;
  min-width: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid label,
div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid > div > span:first-child,
div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid .auction-admin-component-auto-row__money > span {
  color: var(--auction-admin-blue);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid select,
div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-add-grid input[type="number"] {
  width: 100%;
  box-sizing: border-box;
}

div.pagina_gestione_aste_v2 .auction-admin-inline-form,
div.pagina_gestione_aste_v2 .auction-admin-inline-form p {
  display: inline-flex;
  margin: 0;
}

div.pagina_gestione_aste_v2 .auction-admin-detail-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

div.pagina_gestione_aste_v2 .auction-admin-detail-grid li,
div.pagina_gestione_aste_v2 .auction-admin-listing-card__grid li {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  margin: 0;
  padding: 7px 8px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.16);
}

div.pagina_gestione_aste_v2 .auction-admin-detail-grid strong,
div.pagina_gestione_aste_v2 .auction-admin-listing-card__grid strong {
  color: #fff2d7;
  font-size: 12px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

div.pagina_gestione_aste_v2 .auction-admin-notes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

div.pagina_gestione_aste_v2 .auction-admin-notes p,
div.pagina_gestione_aste_v2 .auction-admin-hint,
div.pagina_gestione_aste_v2 .auction-admin-action-form {
  margin: 0;
  padding: 8px 9px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.14);
  box-sizing: border-box;
}

div.pagina_gestione_aste_v2 .auction-admin-notes strong {
  display: block;
  margin-bottom: 4px;
  color: var(--auction-admin-blue);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

div.pagina_gestione_aste_v2 .auction-admin-hint {
  color: var(--auction-admin-text-soft);
  line-height: 1.35;
}

div.pagina_gestione_aste_v2 .auction-admin-action-form {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

div.pagina_gestione_aste_v2 .auction-admin-action-form p:first-of-type {
  flex: 1 1 auto;
  color: var(--auction-admin-text-soft);
  line-height: 1.35;
}

div.pagina_gestione_aste_v2 .auction-admin-money-fields {
  display: grid;
  grid-template-columns: auto minmax(56px, 1fr) auto minmax(56px, 1fr) auto minmax(56px, 1fr);
  gap: 4px 6px;
  align-items: center;
}

div.pagina_gestione_aste_v2 .auction-admin-money-fields label {
  color: #fff2d7;
  font-size: 10px;
}

div.pagina_gestione_aste_v2 .auction-admin-listing-card {
  margin: 0 0 6px;
  border: 1px solid rgba(159, 199, 218, 0.15);
  border-left: 3px solid var(--auction-admin-border-strong);
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(0, 0, 0, 0.10));
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16);
  overflow: hidden;
}

div.pagina_gestione_aste_v2 .auction-admin-listing-card summary {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(90px, 0.25fr) minmax(120px, 0.28fr);
  gap: 8px;
  align-items: center;
  min-height: 36px;
  padding: 8px 10px;
  cursor: pointer;
  list-style: none;
}

div.pagina_gestione_aste_v2 .auction-admin-listing-card summary::-webkit-details-marker {
  display: none;
}

div.pagina_gestione_aste_v2 .auction-admin-listing-card.auction-admin-history-card summary {
  grid-template-columns: 36px 1fr auto auto;
  gap: 8px;
  padding: 4px 10px;
  min-height: 28px;
}

div.pagina_gestione_aste_v2 .auction-admin-listing-card__title {
  color: #fff2d7;
  font-weight: bold;
  overflow-wrap: anywhere;
}

div.pagina_gestione_aste_v2 .auction-admin-listing-card__status,
div.pagina_gestione_aste_v2 .auction-admin-listing-card__price {
  justify-self: end;
  padding: 4px 8px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.18);
  color: var(--auction-admin-gold);
  font-size: 11px;
  font-weight: bold;
  white-space: nowrap;
}

div.pagina_gestione_aste_v2 .auction-admin-listing-card__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 6px;
  margin: 0;
  padding: 0 8px 8px;
  list-style: none;
}

div.pagina_gestione_aste_v2 .auction-admin-listing-card__manage {
  align-items: center;
  justify-content: center;
}

/* Griglia oggetti auto: 10 colonne — il container definisce la template, head/row ereditano via subgrid */
div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid.auction-admin-oggetti-auto-grid {
  grid-template-columns:
    minmax(148px, 1.28fr)
    minmax(72px, 0.44fr)
    minmax(72px, 0.44fr)
    minmax(72px, 0.44fr)
    minmax(154px, 0.84fr)
    68px
    68px
    minmax(92px, 0.56fr)
    minmax(94px, 0.56fr)
    auto;
}

div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-grid .auction-admin-component-auto-row > div:last-child {
  display: flex;
  align-items: center;
}

@media (max-width: 1180px) {
  div.pagina_gestione_aste_v2 .auction-admin-summary {
    grid-template-columns: repeat(4, minmax(90px, 1fr));
  }

  div.pagina_gestione_aste_v2 .auction-admin-toolbar.admin-card-toolbar,
  div.pagina_gestione_aste_v2 .auction-admin-duration-form,
  div.pagina_gestione_aste_v2 .auction-admin-system-form,
  div.pagina_gestione_aste_v2 .auction-admin-cleanup-form,
  div.pagina_gestione_aste_v2 .auction-admin-credit-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid {
    grid-template-columns: minmax(160px, 1.2fr) minmax(82px, 0.56fr) minmax(82px, 0.56fr) minmax(148px, 0.86fr) 68px 64px minmax(90px, 0.64fr) minmax(94px, 0.66fr);
  }

  div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid.auction-admin-oggetti-auto-grid {
    grid-template-columns:
      minmax(128px, 1.2fr)
      minmax(62px, 0.4fr)
      minmax(62px, 0.4fr)
      minmax(62px, 0.4fr)
      minmax(140px, 0.78fr)
      62px
      62px
      minmax(78px, 0.5fr)
      minmax(80px, 0.5fr)
      auto;
  }

  div.pagina_gestione_aste_v2 .auction-admin-form__actions,
  div.pagina_gestione_aste_v2 .auction-admin-toolbar .admin-card-toolbar__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 720px) {
  div.pagina_gestione_aste_v2 .auction-admin__topbar,
  div.pagina_gestione_aste_v2 .auction-admin-action-form,
  div.pagina_gestione_aste_v2 .auction-admin-panel__head {
    align-items: stretch;
    flex-direction: column;
  }

  div.pagina_gestione_aste_v2 .auction-admin__links,
  div.pagina_gestione_aste_v2 .auction-admin-panel__head p {
    justify-content: flex-start;
    text-align: left;
  }

  div.pagina_gestione_aste_v2 .auction-admin-summary,
  div.pagina_gestione_aste_v2 .auction-admin-toolbar.admin-card-toolbar,
  div.pagina_gestione_aste_v2 .auction-admin-system-preview,
  div.pagina_gestione_aste_v2 .auction-admin-duration-form,
  div.pagina_gestione_aste_v2 .auction-admin-system-form,
  div.pagina_gestione_aste_v2 .auction-admin-cleanup-form,
  div.pagina_gestione_aste_v2 .auction-admin-credit-form,
  div.pagina_gestione_aste_v2 .auction-admin-notes,
  div.pagina_gestione_aste_v2 .auction-admin-listing-card summary,
  div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid,
  div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-grid {
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_aste_v2 .auction-admin-listing-card.auction-admin-history-card summary {
    grid-template-columns: 36px 1fr auto;
  }

  div.pagina_gestione_aste_v2 .auction-admin-component-auto-grid__head,
  div.pagina_gestione_aste_v2 .auction-admin-component-auto-row,
  div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-grid .auction-admin-component-auto-grid__head,
  div.pagina_gestione_aste_v2 .auction-admin-oggetti-auto-grid .auction-admin-component-auto-row {
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_aste_v2 .auction-admin-form__field--system-template,
  div.pagina_gestione_aste_v2 .auction-admin-form__field--system-money,
  div.pagina_gestione_aste_v2 .auction-admin-form__field--system-note {
    grid-column: auto;
  }

  div.pagina_gestione_aste_v2 .auction-admin-listing-card__status,
  div.pagina_gestione_aste_v2 .auction-admin-listing-card__price {
    justify-self: start;
  }

  div.pagina_gestione_aste_v2 .auction-admin-cleanup-form__actions {
    justify-content: flex-start;
  }
}

div.pagina_gestione_unica .gestione-unica-toolbar {
  margin-bottom: 1rem;
}

div.pagina_gestione_unica .gestione-unica-toolbar__search {
  min-width: min(100%, 28rem);
}

div.pagina_gestione_unica .gestione-unica-tabs {
  margin-bottom: 0.9rem;
}

div.pagina_gestione_unica .gestione-unica-tabs--scope {
  margin-bottom: 1.4rem;
}

div.pagina_gestione_unica .gestione-unica-tabs--scope .arcane-tab {
  font-size: 0.88rem;
}

div.pagina_gestione_unica .gestione-unica-section {
  margin-bottom: 2rem;
}

div.pagina_gestione_unica .gestione-unica-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fill, minmax(210px, 240px));
  justify-content: center;
  align-items: start;
}

div.pagina_gestione_unica .gestione-unica-card {
  box-sizing: border-box;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "title"
    "actions"
    "badges";
  gap: 0.6rem;
  min-height: 0;
  padding: 10px 12px;
  width: 100%;
  max-width: 240px;
  min-width: 0;
  justify-self: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

div.pagina_gestione_unica .gestione-unica-card:hover {
  transform: translateY(-2px);
}

div.pagina_gestione_unica .gestione-unica-card.is-locked {
  opacity: 0.85;
}

div.pagina_gestione_unica .gestione-unica-card .admin-compact-card__title {
  line-height: 1.25;
}

div.pagina_gestione_unica .gestione-unica-card .admin-compact-card__title-wrap,
div.pagina_gestione_unica .gestione-unica-card .admin-compact-card__badges,
div.pagina_gestione_unica .gestione-unica-card .admin-compact-card__actions {
  justify-content: center;
  text-align: center;
}

div.pagina_gestione_unica .gestione-unica-card .admin-compact-card__badges {
  gap: 5px;
}

div.pagina_gestione_unica .gestione-unica-quick-form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

div.pagina_gestione_unica .gestione-unica-quick-form__field {
  width: 100%;
}

div.pagina_gestione_unica .gestione-unica-quick-form select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(22, 20, 18, 0.72);
  color: rgba(255, 244, 228, 0.92);
  box-sizing: border-box;
}

div.pagina_gestione_unica .gestione-unica-quick-form select:disabled,
div.pagina_gestione_unica .gestione-unica-quick-form button:disabled {
  opacity: 0.58;
  cursor: not-allowed;
}

div.pagina_gestione_unica .gestione-unica-quick-form__actions {
  width: 100%;
  margin-top: 0;
}

div.pagina_gestione_unica .gestione-unica-badge--moderator {
  color: #ffd8ff;
  background:
    linear-gradient(180deg, rgba(168, 54, 146, 0.34), rgba(71, 19, 78, 0.36));
  border-color: rgba(222, 125, 219, 0.42);
  box-shadow:
    inset 0 1px 0 rgba(255, 214, 249, 0.16),
    0 0 12px rgba(170, 73, 165, 0.12);
}

div.pagina_gestione_unica .gestione-unica-badge--superuser {
  color: #dce8ff;
  background:
    linear-gradient(180deg, rgba(42, 88, 201, 0.34), rgba(15, 35, 96, 0.38));
  border-color: rgba(108, 163, 255, 0.4);
  box-shadow:
    inset 0 1px 0 rgba(219, 233, 255, 0.18),
    0 0 12px rgba(67, 121, 219, 0.12);
}

div.pagina_gestione_unica .gestione-unica-card .admin-card-link-button {
  margin: 0 auto;
  min-width: 72px;
}

div.pagina_gestione_unica .gestione-unica-card .admin-card-link-button.is-disabled {
  display: inline-flex;
  margin: 0 auto;
  pointer-events: none;
  opacity: 0.58;
  filter: saturate(0.4);
}

div.pagina_gestione_unica .gestione-unica-empty {
  margin-bottom: 1.4rem;
}

@media (max-width: 767px) {
  div.pagina_gestione_unica .gestione-unica-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  }

  div.pagina_gestione_unica .gestione-unica-card {
    width: 100%;
    max-width: none;
  }
}

/* ===== REAZIONI EMOJI ===== */

.post-reactions {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  padding: 6px 0 2px;
  position: relative;
}

.post-reactions__pill {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 8px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.15);
  background: rgba(255,255,255,0.05);
  cursor: pointer;
  font-size: 0.85em;
  line-height: 1.4;
  color: inherit;
  transition: background 0.15s, border-color 0.15s;
}

.post-reactions__pill:hover {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.3);
}

.post-reactions__pill.is-active {
  background: rgba(100,150,255,0.18);
  border-color: rgba(100,150,255,0.5);
}

.post-reactions__count {
  font-size: 0.85em;
  opacity: 0.8;
}

.post-reactions__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 22px;
  border-radius: 12px;
  border: 1px dashed rgba(255,255,255,0.3);
  background: transparent;
  cursor: pointer;
  font-size: 1em;
  line-height: 1;
  color: rgba(255,255,255,0.55);
  transition: border-color 0.15s, color 0.15s, background 0.15s;
  padding: 0;
}

.post-reactions__add:hover {
  border-color: rgba(255,255,255,0.65);
  color: rgba(255,255,255,0.9);
  background: rgba(255,255,255,0.08);
}

.post-reactions__picker {
  position: absolute;
  bottom: calc(100% + 4px);
  left: 0;
  z-index: 300;
  background: #23233a;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  padding: 8px;
  min-width: 230px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.45);
}

.post-reactions__picker-quick {
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
}

.post-reactions__picker-btn {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  font-size: 1.15em;
  line-height: 1;
  transition: background 0.1s;
  padding: 0;
}

.post-reactions__picker-btn:hover {
  background: rgba(255,255,255,0.14);
}

.post-reactions__picker-more {
  display: block;
  width: 100%;
  text-align: center;
  padding: 4px 0;
  margin-top: 4px;
  border: none;
  border-top: 1px solid rgba(255,255,255,0.1);
  background: transparent;
  color: rgba(255,255,255,0.45);
  cursor: pointer;
  font-size: 0.78em;
  transition: color 0.15s;
}

.post-reactions__picker-more:hover {
  color: rgba(255,255,255,0.85);
}

.post-reactions__picker-all {
  display: none;
  flex-wrap: wrap;
  gap: 2px;
  margin-top: 4px;
  max-height: 150px;
  overflow-y: auto;
}

.post-reactions__picker-all.is-open {
  display: flex;
}

/* ============================================================
   HUB SERVIZI E DOCUMENTI
   ============================================================ */
div.pagina_utenti,
div.pagina_servizi_documenti{
  border-radius: 20px;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28);
  overflow: hidden;
  padding: 10px 12px 18px;
}

div.pagina_utenti{
  background:
    radial-gradient(circle at top, rgba(88, 201, 255, 0.16), transparent 36%),
    linear-gradient(180deg, rgba(9, 14, 18, 0.78), rgba(6, 9, 12, 0.96)),
    linear-gradient(90deg, rgba(9, 13, 17, 0.98), rgba(16, 24, 30, 0.88) 58%, rgba(8, 11, 14, 0.98));
  border: 1px solid rgba(124, 198, 225, 0.24);
}

div.pagina_servizi_documenti{
  background:
    radial-gradient(circle at top, rgba(83, 193, 255, 0.10), transparent 34%),
    radial-gradient(circle at 88% 10%, rgba(233, 191, 113, 0.12), transparent 24%),
    linear-gradient(180deg, rgba(8, 12, 16, 0.84), rgba(5, 8, 10, 0.98)),
    linear-gradient(90deg, rgba(8, 11, 14, 0.98), rgba(18, 23, 28, 0.90) 58%, rgba(8, 11, 14, 0.98));
  border: 1px solid rgba(201, 173, 112, 0.24);
}

div.pagina_utenti div.page_title,
div.pagina_servizi_documenti div.page_title{
  margin-bottom: 14px;
}

div.pagina_utenti div.page_title h2,
div.pagina_servizi_documenti div.page_title h2{
  border-bottom-color: rgba(186, 229, 243, 0.28);
  color: #effbff;
  display: inline-block;
  letter-spacing: 0.08em;
  margin: 0 auto;
  padding: 0 18px 6px 18px;
  text-transform: uppercase;
}

div.pagina_utenti div.page_body,
div.pagina_servizi_documenti div.page_body{
  display: flex;
  flex-direction: column;
  gap: 18px;
}

div.pagina_servizi_documenti div.warning,
div.pagina_servizi_documenti div.error{
  background:
    linear-gradient(180deg, rgba(18, 25, 29, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(108, 205, 255, 0.08), rgba(231, 194, 122, 0.08));
  border: 1px solid rgba(163, 215, 235, 0.22);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  color: #f0fbff;
  margin: 0 auto;
  max-width: 1100px;
  width: 100%;
}

.service-hub-hero,
.docs-library-hero,
.docs-admin-panel{
  background:
    linear-gradient(180deg, rgba(17, 24, 30, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(120, 203, 236, 0.08), rgba(240, 206, 140, 0.08));
  border: 1px solid rgba(164, 218, 238, 0.22);
  border-radius: 18px;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.26);
  margin: 0 auto;
  max-width: 1100px;
  padding: 18px 20px;
  width: 100%;
}

.service-hub-hero{
  text-align: center;
}

.service-hub-hero__eyebrow,
.docs-library-hero__eyebrow,
.docs-library-section__eyebrow{
  color: rgba(186, 229, 243, 0.78);
  font-size: 11px;
  letter-spacing: 0.18em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.service-hub-hero__title,
.docs-library-hero__title,
.docs-admin-panel__title{
  color: #effbff;
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 28px;
  font-variant: small-caps;
  font-weight: bolder;
  line-height: 1.1;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.42);
}

.service-hub-hero__body,
.docs-library-hero__body,
.docs-library-hero__note,
.docs-admin-panel__intro,
.docs-library-section__body{
  color: #d8edf2;
  font-size: 12px;
  line-height: 1.6;
  margin: 10px auto 0 auto;
  max-width: 820px;
}

.docs-library-nav{
  background: rgba(0, 0, 0, 0.20);
  border: 1px solid rgba(186, 229, 243, 0.14);
  border-radius: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  margin: 14px auto 0 auto;
  max-width: 980px;
  padding: 8px;
}

.docs-library-nav__link,
.docs-library-nav__link:visited{
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(186, 229, 243, 0.22);
  border-radius: 999px;
  color: #effbff;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.05em;
  margin-top: 0;
  padding: 7px 12px;
  text-decoration: none;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}

.docs-library-nav__link:hover,
.docs-library-nav__link.is-active{
  background: rgba(112, 190, 225, 0.16);
  border-color: rgba(186, 229, 243, 0.42);
  color: #ffffff;
  margin-top: 0;
}

.docs-library-nav__link.is-active{
  box-shadow: inset 0 0 16px rgba(120, 203, 236, 0.12);
}

.docs-search{
  margin: 16px auto 0 auto;
  max-width: 720px;
  text-align: left;
  width: 100%;
}

.docs-search__label{
  color: rgba(186, 229, 243, 0.78);
  display: block;
  font-size: 11px;
  letter-spacing: 0.12em;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.docs-search__input{
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(186, 229, 243, 0.26);
  border-radius: 12px;
  box-sizing: border-box;
  color: #effbff;
  font-size: 14px;
  line-height: 1.4;
  padding: 11px 14px;
  width: 100%;
}

.docs-search__input::placeholder{
  color: rgba(216, 237, 242, 0.55);
}

.docs-search__input:focus{
  border-color: rgba(120, 203, 236, 0.7);
  box-shadow: 0 0 0 2px rgba(120, 203, 236, 0.18);
  outline: none;
}

.docs-search__hint{
  color: rgba(216, 237, 242, 0.62);
  font-size: 11px;
  line-height: 1.5;
  margin-top: 6px;
}

.docs-search__results{
  background: rgba(7, 11, 14, 0.96);
  border: 1px solid rgba(186, 229, 243, 0.18);
  border-radius: 12px;
  margin-top: 10px;
  max-height: 380px;
  overflow-y: auto;
  padding: 4px;
}

.docs-search__empty{
  color: rgba(216, 237, 242, 0.7);
  font-size: 12px;
  padding: 12px;
}

a.docs-search__item,
a.docs-search__item:visited{
  border: 1px solid transparent;
  border-radius: 10px;
  color: #dff4fb;
  display: block;
  margin-top: 0;
  padding: 10px 12px;
  text-decoration: none;
  transition: background 0.15s, border-color 0.15s;
}

a.docs-search__item:hover,
a.docs-search__item:focus{
  background: rgba(112, 190, 225, 0.12);
  border-color: rgba(186, 229, 243, 0.32);
  color: #ffffff;
  margin-top: 0;
}

.docs-search__chip{
  background: rgba(120, 203, 236, 0.16);
  border: 1px solid rgba(186, 229, 243, 0.26);
  border-radius: 999px;
  color: #cdeefb;
  display: inline-block;
  font-size: 10px;
  letter-spacing: 0.06em;
  margin-bottom: 4px;
  padding: 2px 9px;
  text-transform: uppercase;
}

.docs-search__title{
  display: block;
  font-size: 14px;
  font-weight: bold;
}

.docs-search__snippet{
  color: rgba(216, 237, 242, 0.72);
  display: block;
  font-size: 12px;
  line-height: 1.5;
  margin-top: 3px;
}

.docs-search__snippet mark{
  background: rgba(240, 206, 140, 0.35);
  color: #fff6e2;
  padding: 0 1px;
}

.docs-admin-rebuild{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 16px 0;
}

.docs-admin-rebuild__hint{
  color: rgba(216, 237, 242, 0.62);
  font-size: 11px;
  line-height: 1.5;
}

.docs-tabs-frame{
  background: #00001a;
  border: 1px solid rgba(164, 218, 238, 0.22);
  border-radius: 14px;
  display: block;
  height: 70vh;
  margin: 16px auto 0 auto;
  max-width: 1000px;
  min-height: 480px;
  width: 100%;
}

.service-hub-grid{
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 auto;
  max-width: 1100px;
  width: 100%;
}

a.service-hub-card,
a.service-hub-card:visited{
  background: linear-gradient(180deg, rgba(112, 192, 226, 0.08), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(164, 218, 238, 0.14);
  border-radius: 18px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    inset 0 0 18px rgba(92, 188, 226, 0.04);
  color: #dff4fb;
  display: flex;
  gap: 16px;
  margin-top: 0;
  overflow: hidden;
  padding: 16px;
  position: relative;
  text-decoration: none;
  transition: transform 0.15s, border-color 0.15s, box-shadow 0.15s;
}

a.service-hub-card::before,
.docs-card::before{
  background: linear-gradient(90deg, rgba(120, 203, 236, 0.92), rgba(120, 203, 236, 0));
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  right: 34%;
  top: 0;
}

a.service-hub-card:hover{
  border-color: rgba(186, 229, 243, 0.34);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 12px 28px rgba(0, 0, 0, 0.20);
  margin-top: 0;
  transform: translateY(-2px);
}

.service-hub-card__media{
  align-items: stretch;
  background: linear-gradient(180deg, rgba(15, 22, 28, 0.94), rgba(10, 15, 18, 0.98));
  border: 1px solid rgba(164, 218, 238, 0.16);
  border-radius: 15px;
  display: flex;
  flex: 0 0 156px;
  height: 102px;
  justify-content: stretch;
  overflow: hidden;
  padding: 0;
}

.service-hub-card__media.is-empty,
.docs-card__media.is-empty{
  background:
    linear-gradient(180deg, rgba(15, 22, 28, 0.84), rgba(10, 15, 18, 0.96)),
    radial-gradient(circle at center, rgba(120, 203, 236, 0.14), transparent 60%);
}

.service-hub-card__media img{
  display: block;
  filter: saturate(1.04) drop-shadow(0 6px 14px rgba(0, 0, 0, 0.22));
  height: 100%;
  max-height: none;
  max-width: none;
  object-fit: cover;
  object-position: center center;
  transform: scale(1.14);
  width: 100%;
}

.docs-card__media img{
  display: block;
  filter: saturate(1.04) drop-shadow(0 6px 14px rgba(0, 0, 0, 0.22));
  height: 100%;
  max-height: none;
  max-width: none;
  object-fit: cover;
  object-position: center 32%;
  transform: scale(1);
  width: 100%;
}

.service-hub-card__content{
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  text-align: left;
}

.service-hub-card__eyebrow{
  color: rgba(186, 229, 243, 0.72);
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.service-hub-card__title,
.docs-card__title,
.docs-library-section__title,
.docs-admin-block__title,
.docs-admin-group__title{
  color: #f2fdff;
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 21px;
  font-variant: small-caps;
  line-height: 1.12;
}

.service-hub-card__body,
.docs-card__body{
  color: #d2e8ee;
  font-size: 12px;
  line-height: 1.55;
}

.service-hub-card__meta{
  align-self: flex-start;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(186, 229, 243, 0.18);
  border-radius: 999px;
  color: #effbff;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-top: auto;
  padding: 7px 11px;
  text-transform: uppercase;
}

.docs-library-section{
  background:
    linear-gradient(180deg, rgba(18, 26, 31, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(114, 196, 231, 0.06), rgba(241, 203, 134, 0.06));
  border: 1px solid rgba(164, 218, 238, 0.18);
  border-radius: 18px;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.24);
  margin: 0 auto;
  max-width: 1100px;
  padding: 18px 20px 20px;
  width: 100%;
}

.docs-library-section__head{
  margin-bottom: 14px;
  text-align: center;
}

.docs-card-grid{
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}

a.docs-card,
article.docs-card{
  background: linear-gradient(180deg, rgba(115, 196, 230, 0.08), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 18px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    inset 0 0 18px rgba(92, 188, 226, 0.03);
  color: #deeff5;
  display: flex;
  flex-direction: column;
  margin-top: 0;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  transition: transform 0.15s, border-color 0.15s, box-shadow 0.15s;
}

a.docs-card:hover{
  border-color: rgba(186, 229, 243, 0.32);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 12px 28px rgba(0, 0, 0, 0.20);
  margin-top: 0;
  transform: translateY(-2px);
}

.docs-card.is-disabled{
  opacity: 0.82;
}

.docs-card__media{
  align-items: stretch;
  background:
    linear-gradient(180deg, rgba(14, 21, 27, 0.96), rgba(9, 13, 16, 0.98)),
    radial-gradient(circle at center, rgba(120, 203, 236, 0.12), transparent 58%);
  border-bottom: 1px solid rgba(164, 218, 238, 0.12);
  display: flex;
  height: 108px;
  justify-content: stretch;
  padding: 0;
}

.docs-card__content{
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 10px;
  padding: 14px 16px 16px;
  text-align: left;
}

.docs-card__badge{
  align-self: flex-start;
  border-radius: 999px;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  padding: 6px 10px;
  text-transform: uppercase;
}

.docs-card__badge--external{
  background: rgba(111, 196, 230, 0.12);
  border: 1px solid rgba(164, 218, 238, 0.20);
  color: #ebfaff;
}

.docs-card__badge--internal{
  background: rgba(230, 191, 120, 0.12);
  border: 1px solid rgba(230, 191, 120, 0.20);
  color: #fff1cf;
}

.docs-card__badge--disabled{
  background: rgba(155, 165, 174, 0.12);
  border: 1px solid rgba(190, 198, 205, 0.16);
  color: #d6dde2;
}

.docs-card__cta{
  color: #eef9ff;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-top: auto;
  text-transform: uppercase;
}

div.pagina_servizi_documenti div.link_back{
  background:
    linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.08), rgba(244, 222, 163, 0.08));
  border: 1px solid rgba(126, 231, 255, 0.22);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
  margin: 0 auto;
  max-width: 260px;
  padding: 6px 16px;
  text-align: center;
}

div.pagina_servizi_documenti div.link_back a,
div.pagina_servizi_documenti div.link_back a:visited{
  color: #eef8fb;
  display: block;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-top: 0;
}

div.pagina_servizi_documenti div.link_back a:hover{
  color: #c8ecfa;
  margin-top: 0;
}

.docs-admin-panel{
  max-width: 1240px;
  margin-top: 2px;
  text-align: left;
}

.docs-admin-panel__head{
  margin-bottom: 16px;
  text-align: center;
}

.docs-admin-panel__note{
  color: #d8edf2;
  font-size: 11px;
  line-height: 1.5;
  margin-top: 10px;
}

.docs-admin-list{
  display: flex;
  flex-direction: column;
  gap: 14px;
}

details.docs-admin-create,
details.docs-admin-item,
.docs-admin-group{
  background: linear-gradient(180deg, rgba(112, 192, 226, 0.05), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 16px;
}

details.docs-admin-create,
details.docs-admin-item{
  overflow: hidden;
}

details.docs-admin-create[open],
details.docs-admin-item[open]{
  border-color: rgba(186, 229, 243, 0.22);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16);
}

summary.docs-admin-disclosure,
summary.docs-admin-item__summary{
  cursor: pointer;
  padding: 12px 14px;
}

summary.docs-admin-disclosure{
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

summary.docs-admin-disclosure:hover,
summary.docs-admin-item__summary:hover{
  background: rgba(255, 255, 255, 0.03);
}

details.docs-admin-create[open] > summary.docs-admin-disclosure,
details.docs-admin-item[open] > summary.docs-admin-item__summary{
  border-bottom: 1px solid rgba(164, 218, 238, 0.10);
}

.docs-admin-disclosure__main{
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.docs-admin-disclosure__toggle{
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(186, 229, 243, 0.14);
  border-radius: 999px;
  color: #eef9ff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 18px;
  height: 28px;
  justify-content: center;
  line-height: 1;
  width: 28px;
}

.docs-admin-disclosure__toggle::before{
  content: "+";
}

details.docs-admin-create[open] .docs-admin-disclosure__toggle::before{
  content: "-";
}

.docs-admin-disclosure__meta{
  color: #d6e7eb;
  font-size: 12px;
  line-height: 1.45;
}

.docs-admin-group{
  padding: 12px;
}

.docs-admin-group__header{
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 10px;
}

.docs-admin-group__count{
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(186, 229, 243, 0.14);
  border-radius: 999px;
  color: #e9faff;
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  padding: 6px 10px;
  text-transform: uppercase;
}

.docs-admin-group__empty{
  color: #cedce0;
  font-size: 12px;
  line-height: 1.5;
}

.docs-admin-items{
  display: flex;
  flex-direction: column;
  gap: 8px;
}

summary.docs-admin-item__summary{
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.docs-admin-item__main{
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.docs-admin-item__title{
  color: #f2fdff;
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 18px;
  font-variant: small-caps;
  line-height: 1.1;
}

.docs-admin-item__description{
  color: #d2e8ee;
  font-size: 12px;
  line-height: 1.45;
}

.docs-admin-item__path{
  color: rgba(214, 238, 243, 0.78);
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.docs-admin-item__meta{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.docs-admin-chip{
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(186, 229, 243, 0.14);
  border-radius: 999px;
  color: #ebfaff;
  display: inline-flex;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding: 6px 9px;
  text-transform: uppercase;
}

.docs-admin-chip--state-active{
  background: rgba(111, 196, 230, 0.12);
  border-color: rgba(164, 218, 238, 0.22);
}

.docs-admin-chip--state-pending,
.docs-admin-chip--muted{
  background: rgba(230, 191, 120, 0.11);
  border-color: rgba(230, 191, 120, 0.18);
  color: #fff0cb;
}

.docs-admin-item__toggle{
  color: #eef9ff;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  padding-left: 4px;
  text-transform: uppercase;
}

.docs-admin-item__toggle::before{
  content: "+";
  display: inline-block;
  margin-right: 5px;
}

details.docs-admin-item[open] .docs-admin-item__toggle::before{
  content: "-";
}

.docs-admin-card{
  background: rgba(6, 10, 13, 0.42);
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 8px 10px 10px;
  padding: 14px 16px;
}

.docs-admin-card__grid{
  display: grid;
  gap: 10px 14px;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.docs-admin-field{
  display: flex;
  flex-direction: column;
  gap: 6px;
  justify-self: stretch;
  margin: 0;
  min-width: 0;
  width: 100%;
}

.docs-admin-field--section,
.docs-admin-field--order,
.docs-admin-field--target,
.docs-admin-field--state{
  grid-column: span 2;
}

.docs-admin-field--title{
  grid-column: span 4;
}

.docs-admin-field--description{
  grid-column: 1 / -1;
}

.docs-admin-field--image,
.docs-admin-field--link{
  grid-column: span 6;
}

.docs-admin-field label{
  color: rgba(186, 229, 243, 0.82);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.12em;
  text-align: left;
  text-transform: uppercase;
}

div.pagina_servizi_documenti .docs-admin-field input[type=text],
div.pagina_servizi_documenti .docs-admin-field select,
div.pagina_servizi_documenti .docs-admin-field textarea{
  background: rgba(7, 11, 14, 0.92);
  border: 1px solid rgba(164, 218, 238, 0.18);
  border-radius: 12px;
  box-sizing: border-box;
  color: #eef9ff;
  display: block;
  font-family: Georgia, serif;
  font-size: 12px;
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
  max-width: none !important;
  min-width: 0;
  padding: 8px 10px;
  width: 100% !important;
}

div.pagina_servizi_documenti .docs-admin-field textarea{
  min-height: 58px;
  resize: vertical;
}

.docs-admin-field--description,
.docs-admin-field--image,
.docs-admin-field--link{
  justify-self: stretch;
  width: 100%;
}

.docs-admin-card__actions{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.docs-admin-button{
  border: 1px solid transparent;
  border-radius: 999px;
  cursor: pointer;
  font-family: Georgia, serif;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.06em;
  padding: 8px 14px;
  text-transform: uppercase;
  transition: transform 0.15s, border-color 0.15s, background 0.15s, color 0.15s;
  width: auto;
}

.docs-admin-button:hover{
  transform: translateY(-1px);
}

.docs-admin-button--save{
  background: rgba(101, 190, 225, 0.14);
  border-color: rgba(164, 218, 238, 0.24);
  color: #eef9ff;
}

.docs-admin-button--delete{
  background: rgba(167, 90, 90, 0.16);
  border-color: rgba(219, 147, 147, 0.22);
  color: #ffe4e4;
}

/* ============================================================
   SERVIZI_UFFICI
   ============================================================ */
div.pagina_servizi_uffici{
  background:
    radial-gradient(circle at top, rgba(92, 201, 255, 0.11), transparent 34%),
    radial-gradient(circle at 88% 12%, rgba(235, 197, 120, 0.10), transparent 24%),
    linear-gradient(180deg, rgba(9, 14, 18, 0.84), rgba(6, 9, 12, 0.98)),
    linear-gradient(90deg, rgba(8, 11, 14, 0.98), rgba(17, 24, 30, 0.90) 58%, rgba(8, 11, 14, 0.98));
  border: 1px solid rgba(164, 218, 238, 0.20);
  border-radius: 20px;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28);
  overflow: hidden;
  padding: 10px 12px 18px;
}

div.pagina_servizi_uffici div,
div.pagina_servizi_uffici ul,
div.pagina_servizi_uffici li{
  margin: 0;
}

div.pagina_servizi_uffici div.page_title{
  margin-bottom: 14px;
}

div.pagina_servizi_uffici div.page_title h2{
  border-bottom-color: rgba(186, 229, 243, 0.28);
  color: #effbff;
  display: inline-block;
  letter-spacing: 0.08em;
  margin: 0 auto;
  padding: 0 18px 6px 18px;
  text-transform: uppercase;
}

div.pagina_servizi_uffici div.page_body{
  display: flex;
  flex-direction: column;
  gap: 18px;
}

div.pagina_servizi_uffici div.warning,
div.pagina_servizi_uffici div.error{
  background:
    linear-gradient(180deg, rgba(18, 25, 29, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(108, 205, 255, 0.08), rgba(231, 194, 122, 0.08));
  border: 1px solid rgba(163, 215, 235, 0.22);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  color: #f0fbff;
  margin: 0 auto;
  max-width: 1100px;
  width: 100%;
}

.offices-hero,
.offices-summary,
.offices-section,
.offices-governments{
  background:
    linear-gradient(180deg, rgba(17, 24, 30, 0.96), rgba(9, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(120, 203, 236, 0.08), rgba(240, 206, 140, 0.08));
  border: 1px solid rgba(164, 218, 238, 0.18);
  border-radius: 18px;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.24);
  margin: 0 auto;
  max-width: 1100px;
  padding: 18px 20px;
  width: 100%;
}

.offices-hero,
.offices-section__head{
  text-align: center;
}

.offices-hero__eyebrow,
.offices-section__eyebrow{
  color: rgba(186, 229, 243, 0.78);
  font-size: 11px;
  letter-spacing: 0.18em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.offices-hero__title,
.offices-section__title,
.offices-summary__value{
  color: #effbff;
  font-family: "Palatino Linotype", Georgia, serif;
  font-variant: small-caps;
  line-height: 1.1;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.42);
}

.offices-hero__title,
.offices-section__title{
  font-size: 28px;
  font-weight: bolder;
}

.offices-hero__body,
.offices-section__body,
.offices-summary__note{
  color: #d8edf2;
  font-size: 12px;
  line-height: 1.6;
  margin: 10px auto 0 auto;
  max-width: 820px;
}

.offices-summary{
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
}

.offices-summary__main{
  background: rgba(6, 10, 13, 0.40);
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  justify-content: center;
  padding: 16px;
}

.offices-summary__label{
  color: rgba(186, 229, 243, 0.72);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.offices-summary__value{
  font-size: 30px;
}

.offices-summary__status{
  color: #eef9ff;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.offices-summary__content{
  align-self: center;
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}

.offices-summary__title{
  color: #f2fdff;
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 22px;
  font-variant: small-caps;
  line-height: 1.1;
}

.offices-summary__note{
  margin: 0;
  max-width: none;
}

.offices-summary__chips{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.offices-chip{
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(186, 229, 243, 0.18);
  border-radius: 999px;
  color: #eafaff;
  display: inline-flex;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  padding: 7px 11px;
  text-transform: uppercase;
}

.offices-chip.is-active{
  background: rgba(230, 191, 120, 0.11);
  border-color: rgba(230, 191, 120, 0.18);
  color: #fff0cb;
}

.offices-chip--subtle{
  color: #d4eaf0;
  font-weight: normal;
  letter-spacing: 0.03em;
  text-transform: none;
}

.offices-section__head{
  margin-bottom: 14px;
}

.offices-cards{
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
}

.offices-card{
  background: linear-gradient(180deg, rgba(115, 196, 230, 0.08), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 18px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    inset 0 0 18px rgba(92, 188, 226, 0.03);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative;
}

.offices-card::before{
  background: linear-gradient(90deg, rgba(120, 203, 236, 0.92), rgba(120, 203, 236, 0));
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  right: 28%;
  top: 0;
}

.offices-card--is-current{
  border-color: rgba(186, 229, 243, 0.26);
}

.offices-card__media{
  background:
    linear-gradient(180deg, rgba(14, 21, 27, 0.96), rgba(9, 13, 16, 0.98)),
    radial-gradient(circle at center, rgba(120, 203, 236, 0.12), transparent 58%);
  align-items: center;
  border-bottom: 1px solid rgba(164, 218, 238, 0.12);
  display: flex;
  height: 132px;
  justify-content: center;
  overflow: hidden;
  padding: 16px;
}

.offices-card__media img{
  display: block;
  height: auto;
  max-height: 64px;
  max-width: 64px;
  object-fit: contain;
  transform: none;
  width: auto;
}

.offices-card__content{
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 10px;
  padding: 14px 16px 16px;
}

.offices-card__top{
  align-items: flex-start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.offices-card__title{
  color: #f2fdff;
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 22px;
  font-variant: small-caps;
  line-height: 1.12;
}

.offices-badge{
  border-radius: 999px;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  padding: 6px 10px;
  text-transform: uppercase;
}

.offices-badge.is-current,
.offices-badge.is-available{
  background: rgba(111, 196, 230, 0.12);
  border: 1px solid rgba(164, 218, 238, 0.20);
  color: #ebfaff;
}

.offices-badge.is-locked{
  background: rgba(230, 191, 120, 0.12);
  border: 1px solid rgba(230, 191, 120, 0.18);
  color: #fff0cb;
}

.offices-badge.is-missing{
  background: rgba(167, 90, 90, 0.14);
  border: 1px solid rgba(219, 147, 147, 0.18);
  color: #ffe4e4;
}

.offices-card__facts{
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.offices-card__fact{
  background: rgba(6, 10, 13, 0.40);
  border: 1px solid rgba(164, 218, 238, 0.10);
  border-radius: 12px;
  color: #e7f7fb;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px;
}

.offices-card__fact strong{
  color: rgba(186, 229, 243, 0.78);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.offices-card__fact--is-ok{
  border-color: rgba(125, 214, 188, 0.18);
}

.offices-card__fact--is-need{
  border-color: rgba(230, 191, 120, 0.18);
  color: #fff0cb;
}

.offices-card__fact--is-missing{
  border-color: rgba(219, 147, 147, 0.18);
  color: #ffe4e4;
}

.offices-card__body,
.offices-card__hint{
  color: #d2e8ee;
  font-size: 12px;
  line-height: 1.55;
}

.offices-card__actions{
  align-items: center;
  display: flex;
  gap: 10px;
  margin-top: auto;
}

div.pagina_servizi_uffici form{
  margin: 0;
}

.offices-button{
  background: rgba(101, 190, 225, 0.14);
  border: 1px solid rgba(164, 218, 238, 0.24);
  border-radius: 999px;
  color: #eef9ff;
  cursor: pointer;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.06em;
  min-width: 0;
  padding: 8px 14px;
  text-transform: uppercase;
  transition: transform 0.15s, border-color 0.15s, background 0.15s, color 0.15s;
  width: auto;
}

.offices-button:hover,
.offices-button:focus{
  border-color: rgba(186, 229, 243, 0.34);
  color: #ffffff;
  outline: none;
  transform: translateY(-1px);
}

.offices-button--danger{
  background: rgba(167, 90, 90, 0.16);
  border-color: rgba(219, 147, 147, 0.22);
  color: #ffe4e4;
}

.offices-governments{
  max-width: 1100px;
}

.offices-government-form{
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 14px;
}

.offices-government-form__grid{
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.offices-field{
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.offices-field label{
  color: rgba(186, 229, 243, 0.82);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 0.12em;
  text-align: left;
  text-transform: uppercase;
}

div.pagina_servizi_uffici .offices-field select{
  background: rgba(7, 11, 14, 0.92);
  border: 1px solid rgba(164, 218, 238, 0.18);
  border-radius: 12px;
  box-sizing: border-box;
  color: #eef9ff;
  font-family: Georgia, serif;
  font-size: 12px;
  margin: 0;
  max-width: none !important;
  min-width: 0;
  padding: 8px 10px;
  width: 100% !important;
}

.offices-government-form__actions{
  display: flex;
  justify-content: flex-end;
}

.offices-back{
  background:
    linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
    linear-gradient(90deg, rgba(126, 231, 255, 0.08), rgba(244, 222, 163, 0.08));
  border: 1px solid rgba(126, 231, 255, 0.22);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
  margin: 0 auto;
  max-width: 260px;
  padding: 6px 16px;
  text-align: center;
}

.offices-back a,
.offices-back a:visited{
  color: #eef8fb;
  display: block;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-top: 0;
}

.offices-back a:hover{
  color: #c8ecfa;
  margin-top: 0;
}

@media screen and (max-width: 920px){
  .service-hub-grid{
    grid-template-columns: 1fr;
  }

  .offices-summary{
    grid-template-columns: 1fr;
  }

  .offices-government-form__grid{
    grid-template-columns: 1fr;
  }

  .offices-cards{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  a.service-hub-card,
  a.service-hub-card:visited{
    align-items: flex-start;
    flex-direction: column;
  }

  .service-hub-card__media{
    flex-basis: auto;
    width: 100%;
  }

  .docs-admin-card__grid{
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .docs-admin-field--section,
  .docs-admin-field--order,
  .docs-admin-field--target,
  .docs-admin-field--state{
    grid-column: span 2;
  }

  .docs-admin-field--title{
    grid-column: span 6;
  }

  .docs-admin-field--description{
    grid-column: 1 / -1;
  }

  .docs-admin-field--image,
  .docs-admin-field--link{
    grid-column: span 3;
  }

  summary.docs-admin-item__summary{
    grid-template-columns: 1fr;
  }

  .docs-admin-item__meta{
    justify-content: flex-start;
  }

  .docs-admin-group__header{
    align-items: flex-start;
    flex-direction: column;
  }
}

@media screen and (max-width: 640px){
  div.pagina_utenti,
  div.pagina_servizi_documenti,
  div.pagina_servizi_uffici{
    padding-left: 8px;
    padding-right: 8px;
  }

  .service-hub-hero,
  .docs-library-hero,
  .docs-library-section,
  .docs-admin-panel,
  .offices-hero,
  .offices-summary,
  .offices-section,
  .offices-governments{
    padding: 16px;
  }

  .service-hub-hero__title,
  .docs-library-hero__title,
  .docs-admin-panel__title,
  .offices-hero__title,
  .offices-section__title{
    font-size: 24px;
  }

  .service-hub-card__title,
  .docs-card__title,
  .docs-library-section__title,
  .docs-admin-block__title,
  .docs-admin-group__title,
  .offices-card__title{
    font-size: 18px;
  }

  .docs-card-grid{
    grid-template-columns: 1fr;
  }

  .offices-cards{
    grid-template-columns: 1fr;
  }

  .offices-card__facts{
    grid-template-columns: 1fr;
  }

  .offices-card__top{
    flex-direction: column;
  }

  .offices-government-form__actions{
    justify-content: stretch;
  }

  .offices-button{
    width: 100%;
  }

  .docs-library-nav{
    justify-content: flex-start;
  }

  .docs-admin-card__grid{
    grid-template-columns: 1fr;
  }

  .docs-admin-field--section,
  .docs-admin-field--title,
  .docs-admin-field--order,
  .docs-admin-field--target,
  .docs-admin-field--state,
  .docs-admin-field--description,
  .docs-admin-field--image,
  .docs-admin-field--link{
    grid-column: span 1;
  }

  .docs-admin-card__actions{
    justify-content: stretch;
  }

  summary.docs-admin-disclosure{
    align-items: flex-start;
    flex-direction: column;
  }

  .docs-admin-button{
    width: 100%;
  }
}

/* === Mobile: layout a larghezza piena per le pagine con viewport attivo ===
   Queste regole scattano solo sulle pagine che emettono il viewport meta tag
   (es. scheda_equip, scheda_oggetti). Su tutte le altre pagine il browser
   renderizza senza viewport e il breakpoint non viene mai raggiunto.     */
@media (max-width: 640px){
    /* Nasconde la colonna sinistra e il dock mail: non usabili senza hover */
    #framecontentLeft,
    #framecontentLeft.side-menu-shell{
        display:none !important;
    }
    .side-menu-mail-dock{
        display:none !important;
    }

    /* Il contenuto principale occupa l'intera larghezza */
    #maincontent,
    body.side-menu-ready #maincontent{
        left:0 !important;
    }

    /* Topbar: offset ridotto per non coprire il contenuto della scheda */
    #maincontent.maincontent--topbar{
        --topbar-offset:116px;
    }
    #maincontent.maincontent--topbar.maincontent--topbar-extra{
        --topbar-offset:168px;
    }

    /* Voci di navigazione in riga orizzontale scrollabile invece di colonna */
    .topbar-nav__list{
        flex-wrap:nowrap;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
        justify-content:flex-start;
        padding-bottom:2px;
        scrollbar-width:none;
    }
    .topbar-nav__list::-webkit-scrollbar{
        display:none;
    }

    /* Ogni voce non occupa più il 100% di larghezza */
    .topbar-nav__item{
        width:auto;
        flex-shrink:0;
    }

    /* Ripristina il layout inline-flex del controllo menu (sovrascrive il grid del 720px) */
    .topbar-nav__menu-control{
        display:inline-flex;
        grid-template-columns:unset;
        width:auto;
    }

    .topbar-nav__trigger,
    .topbar-nav__link{
        width:auto;
    }
}

/* ============================================================
   Contenimento del contenuto rich-text utente (.gdrcd-user-content)
   Wrapper generato da gdrcd_render_richtext() attorno a tutto l'HTML
   sanificato proveniente dall'utente (schede, missive, forum, news,
   location, statuti gilda, comunicazioni).
   Scopo di sicurezza: confinare position/display/overflow/z-index al
   box del contenuto, così un position:fixed/absolute o uno z-index
   inseriti dall'utente non possono sovrapporsi alla UI del sito
   (anti-clickjacking / anti-overlay).
   - contain: layout paint  -> l'elemento diventa il containing block
     dei discendenti position:fixed/absolute e ne clippa il painting.
   - isolation: isolate      -> nuovo stacking context: lo z-index interno
     non compete con quello del sito.
   - position: relative      -> ancora per i position:absolute interni.
   ============================================================ */
.gdrcd-user-content{
    position:relative;
    isolation:isolate;
    contain:layout paint;
    max-width:100%;
}

/* ============================================================
   SCHEDA BACKGROUND
   pagina_scheda_background.inc.php
   — palette allineata a servizi_prenotazioni
   ============================================================ */

div.pagina_scheda2.pagina_scheda_background{
    --bg-card-bg:        rgba(14, 21, 27, 0.92);
    --bg-card-bg-strong: rgba(20, 30, 36, 0.96);
    --bg-card-border:    rgba(164, 218, 238, 0.14);
    --bg-card-border-s:  rgba(186, 229, 243, 0.24);
    --bg-card-shadow:    0 14px 32px rgba(0, 0, 0, 0.24);
    --bg-accent:         rgba(111, 196, 230, 0.92);
    --bg-accent-soft:    rgba(101, 190, 225, 0.14);
    --bg-warm:           rgba(230, 191, 120, 0.88);
    --bg-warm-soft:      rgba(230, 191, 120, 0.12);
    --bg-text:           #e2f0f5;
    --bg-text-strong:    #effbff;
    --bg-text-dim:       rgba(210, 232, 238, 0.82);
    --bg-text-muted:     rgba(186, 229, 243, 0.76);
    --bg-gold:           #e6bf78;
    --bg-gold-glow:      rgba(230, 191, 120, 0.40);

    width: min(100%, 1100px);
    max-width: 1100px;
    min-height: 400px;
    margin: 0 auto;
    padding: 8px 10px 14px;
    box-sizing: border-box;
    overflow: hidden;
    background:
        radial-gradient(circle at top, rgba(92, 201, 255, 0.11), transparent 34%),
        radial-gradient(circle at 88% 12%, rgba(235, 197, 120, 0.10), transparent 24%),
        linear-gradient(180deg, rgba(9, 14, 18, 0.84), rgba(6, 9, 12, 0.98)),
        linear-gradient(90deg, rgba(8, 11, 14, 0.98), rgba(17, 24, 30, 0.90) 58%, rgba(8, 11, 14, 0.98));
    border: 1px solid rgba(164, 218, 238, 0.20);
    border-radius: 20px;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28);
    color: var(--bg-text);
    text-align: left;
}

/* header */
.pagina_scheda_background__header{
    margin-bottom: 10px;
    padding: 2px 4px 10px;
    border-bottom: 1px solid rgba(186, 229, 243, 0.28);
    text-align: center;
}
.pagina_scheda_background__nav{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-bottom: 5px;
}
.pagina_scheda_background__title-block{
    text-align: center;
}
.pagina_scheda_background__back-link{
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    margin-top: 0;
    padding: 0 12px;
    border: 1px solid rgba(126, 231, 255, 0.22);
    border-radius: 999px;
    background:
        linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
        linear-gradient(90deg, rgba(126, 231, 255, 0.08), rgba(244, 222, 163, 0.08));
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
    color: #eef8fb;
    font-size: 0.84em;
    font-weight: normal;
    line-height: 24px;
    text-decoration: none;
    vertical-align: middle;
    transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}
.pagina_scheda_background__back-link:hover,
.pagina_scheda_background__back-link:focus,
.pagina_scheda_background__back-link:active{
    display: inline-flex;
    align-items: center;
    margin-top: 0;
    background:
        linear-gradient(180deg, rgba(21, 34, 40, 0.98), rgba(10, 16, 20, 0.98)),
        linear-gradient(90deg, rgba(126, 231, 255, 0.12), rgba(244, 222, 163, 0.12));
    border: 1px solid rgba(186, 229, 243, 0.34);
    box-shadow: 0 0 0 1px rgba(186, 229, 243, 0.08), 0 0 16px rgba(111, 196, 230, 0.16);
    color: #c8ecfa;
    font-weight: normal;
    line-height: 24px;
    text-decoration: none;
    transform: none;
}
.pagina_scheda_background__title{
    margin: 0 0 2px;
    color: var(--bg-text-strong);
    font-size: 24px;
    font-variant: small-caps;
    letter-spacing: 0;
    text-shadow: 0 1px 8px rgba(92, 201, 255, 0.18);
}
.pagina_scheda_background__subtitle{
    margin: 0;
    color: var(--bg-text-dim);
    font-size: 12px;
    line-height: 1.45;
}
.pagina_scheda_background__costs-note{
    color: var(--bg-text-dim);
    font-size: 0.78em;
    margin: 4px 0 0;
}

/* griglia card */
.bg-card-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    align-items: stretch;
    width: min(100%, 1100px);
    margin: 8px auto 0;
    gap: 10px;
}

/* singola card */
.bg-card{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
    min-width: 0;
    min-height: 100%;
    box-sizing: border-box;
    background:
        linear-gradient(180deg, var(--bg-card-bg-strong), rgba(9, 13, 16, 0.98)),
        linear-gradient(90deg, rgba(120, 203, 236, 0.06), rgba(240, 206, 140, 0.04));
    border: 1px solid var(--bg-card-border);
    border-top: 3px solid var(--bg-card-border-s);
    border-radius: 14px;
    padding: 10px;
    box-shadow: var(--bg-card-shadow);
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.bg-card:hover{
    border-color: var(--bg-card-border-s);
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.30);
}
.bg-card.is-owned{
    border-top-color: var(--bg-warm);
}
.bg-card.is-unowned{
    opacity: 1;
}
.bg-card.is-unowned .bg-pip-image{
    border-color: rgba(186,229,243,.07);
}
.bg-card.is-unowned .bg-pip-image img{
    filter: grayscale(1) brightness(0.50) opacity(.70);
}
.bg-card.is-unowned .bg-pip-image__placeholder{
    opacity: .35;
}

/* ── anello con pallini ── */
.bg-pip-ring{
    align-self: center;
    position: relative;
    width: 190px;
    height: 190px;
    margin-bottom: -34px;
    transform: scale(0.82);
    transform-origin: top center;
    flex-shrink: 0;
}
.bg-pip-image{
    position: absolute;
    top: 20px;
    left: 20px;
    width: 150px;
    height: 150px;
    box-sizing: border-box;
    border: 1px solid rgba(186, 229, 243, 0.16);
    border-radius: 12px;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(14, 21, 27, 0.96), rgba(9, 13, 16, 0.98)),
        radial-gradient(circle at center, rgba(120, 203, 236, 0.10), transparent 58%);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 10px 24px rgba(0,0,0,.24);
}
.bg-pip-image img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.bg-pip-image__placeholder{
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background: rgba(255,255,255,.04);
    border-radius: 12px;
    border: 1px dashed rgba(186,229,243,.18);
}

/* pallini: partono tutti dal centro, ruotati attorno */
.bg-pip{
    position: absolute;
    top: calc(50% - 13px);
    left: calc(50% - 13px);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 2px solid rgba(186,229,243,.24);
    background:
        radial-gradient(circle at 50% 35%, rgba(255,255,255,.12), transparent 44%),
        rgba(14, 21, 27, 0.92);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 4px 10px rgba(0,0,0,.22);
    color: #eafaff;
    cursor: default;
    font-family: Georgia, "Palatino Linotype", serif;
    font-size: 16px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    line-height: 1;
    padding: 0;
    text-align: center;
    text-shadow: 0 1px 2px rgba(0,0,0,.74), 0 0 5px rgba(186,229,243,.18);
    transition: background .18s, border-color .18s, box-shadow .18s, color .18s;
    appearance: none;
    -webkit-appearance: none;
}
.bg-pip::after{
    content: attr(data-pip-lv);
    display: block;
    pointer-events: none;
    transform-origin: center;
}
.bg-pip.is-active{
    background:
        radial-gradient(circle at 50% 34%, rgba(255,255,255,.52), transparent 34%),
        linear-gradient(180deg, #f4d99d, var(--bg-gold) 60%, #b98130);
    border-color: #fff1cf;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.48), 0 0 8px 2px var(--bg-gold-glow), 0 0 2px rgba(255,241,207,.82);
    color: #1b1104;
    text-shadow: 0 1px 0 rgba(255,255,255,.40), 0 -1px 0 rgba(93,55,12,.22);
}

/* posizioni angolari: 5 pallini ogni 72° partendo dall'alto */
.bg-pip.bg-pip--1{ transform: rotate(0deg)   translateY(-80px); }
.bg-pip.bg-pip--2{ transform: rotate(72deg)  translateY(-80px); }
.bg-pip.bg-pip--3{ transform: rotate(144deg) translateY(-80px); }
.bg-pip.bg-pip--4{ transform: rotate(216deg) translateY(-80px); }
.bg-pip.bg-pip--5{ transform: rotate(288deg) translateY(-80px); }
.bg-pip.bg-pip--1::after{ transform: rotate(0deg); }
.bg-pip.bg-pip--2::after{ transform: rotate(-72deg); }
.bg-pip.bg-pip--3::after{ transform: rotate(-144deg); }
.bg-pip.bg-pip--4::after{ transform: rotate(-216deg); }
.bg-pip.bg-pip--5::after{ transform: rotate(-288deg); }

/* form invisibile attorno ai pallini (gestori) */
.bg-pip-form{
    display: contents;
}
button.bg-pip{
    cursor: pointer;
}
button.bg-pip:hover:not(.is-active){
    border-color: rgba(230,191,120,.62);
    background:
        radial-gradient(circle at 50% 35%, rgba(255,241,207,.22), transparent 44%),
        rgba(230,191,120,.18);
    box-shadow: 0 0 6px rgba(230,191,120,.28);
    color: #fff1cf;
}
button.bg-pip.is-active:hover{
    background:
        radial-gradient(circle at 50% 34%, rgba(255,255,255,.48), transparent 34%),
        linear-gradient(180deg, #efd08f, #d9ad5d 60%, #a86f29);
    border-color: #fff1cf;
    box-shadow: 0 0 10px 2px var(--bg-gold-glow);
}

/* corpo testuale della card */
.bg-card__body{
    width: 100%;
    min-width: 0;
    text-align: left;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    align-content: flex-start;
    justify-content: center;
    gap: 6px 8px;
    padding-top: 0;
}
.bg-card__name{
    flex: 1 0 100%;
    order: 0;
    margin: 0;
    color: #f2fdff;
    font-family: "Palatino Linotype", Georgia, serif;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.2;
    overflow-wrap: anywhere;
    text-align: center;
    text-shadow: 0 1px 6px rgba(92,201,255,.15);
}
.bg-card__level-tag{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    flex: 0 1 auto;
    flex-wrap: wrap;
    gap: 3px;
    max-width: 100%;
    min-height: 20px;
    padding: 2px 7px;
    border: 1px solid rgba(230, 191, 120, 0.20);
    border-radius: 999px;
    background: var(--bg-warm-soft);
    color: #fff1cf;
    font-size: 11px;
    font-weight: normal;
    line-height: 1.25;
    text-align: center;
    order: 1;
}
.bg-card__level-tag--none{
    border-color: rgba(186, 229, 243, 0.14);
    background: rgba(255, 255, 255, 0.04);
    color: var(--bg-text-dim);
    font-weight: normal;
}
.bg-card__badge{
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    min-height: 18px;
    padding: 2px 6px;
    border-radius: 999px;
    border: 1px solid rgba(230,191,120,.22);
    color: #fff1cf;
    font-size: 10px;
    line-height: 1.2;
}
.bg-card__badge--free{
    border-color: rgba(164,218,238,.20);
    background: rgba(101,190,225,.10);
    color: #eafaff;
}
.bg-card__level-tag .bg-card__badge--free{
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font-size: inherit;
}
.bg-card__level-tag .bg-card__badge--free::before{
    content: "·";
    margin-right: 3px;
}
.bg-card__badge--casata{
    border-color: rgba(210,170,60,.28);
    background: rgba(210,170,60,.12);
    color: #fbd97f;
}
.bg-card__level-tag .bg-card__badge--casata{
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fbd97f;
    font-size: inherit;
}
.bg-card__level-tag .bg-card__badge--casata::before{
    content: "·";
    margin-right: 3px;
}
.bg-card__effect{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    flex: 0 1 auto;
    max-width: 100%;
    box-sizing: border-box;
    min-height: 20px;
    padding: 2px 7px;
    border: 1px solid rgba(164,218,238,.16);
    border-radius: 999px;
    background: rgba(101,190,225,.10);
    color: #eafaff;
    font-size: 11px;
    line-height: 1.25;
    order: 1;
}
.bg-card__desc{
    flex: 1 0 100%;
    order: 2;
    margin: 0;
    color: #d2e8ee;
    font-size: 12px;
    line-height: 1.38;
    text-align: center;
}
.bg-card__staff-note{
    flex: 1 0 100%;
    order: 3;
    margin: 0;
    padding: 4px 7px;
    border: 1px solid rgba(230,191,120,.18);
    border-radius: 10px;
    background: rgba(230,191,120,.08);
    color: #fff1cf;
    font-size: 11px;
    line-height: 1.35;
    text-align: center;
}
.bg-card__staff-icon{
    color: var(--bg-gold);
}
.bg-card__manager-actions{
    display: flex;
    flex: 0 1 auto;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 2px;
    padding-top: 0;
    border-top: 0;
    order: 4;
}
/* riga costo + pulsante acquisto */
.bg-card__buy-row{
    display: flex;
    flex: 0 1 auto;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 2px;
    padding-top: 0;
    border-top: 0;
    order: 4;
}
.bg-card__next-cost{
    font-size: 0.8em;
    line-height: 1.2;
    white-space: nowrap;
}
.bg-card__next-cost b{
    font-weight: bold;
}
.bg-card__next-cost.can-afford{
    color: #c8ecfa;
}
.bg-card__next-cost.can-afford b{
    color: #eef9ff;
}
.bg-card__next-cost.cannot-afford{
    color: rgba(210,232,238,.48);
}
.bg-card__next-cost.cannot-afford b{
    color: rgba(210,232,238,.60);
}
.bg-card__max-reached{
    font-size: 0.75em;
    color: #fff1cf;
    font-style: italic;
    width: auto;
    text-align: center;
    white-space: nowrap;
}
/* pulsanti */
.bg-card__btn{
    min-height: 28px;
    box-sizing: border-box;
    margin-top: 0;
    padding: 0 14px;
    border: 1px solid rgba(164, 218, 238, 0.24);
    border-radius: 10px;
    background: var(--bg-accent-soft);
    color: #eef9ff;
    cursor: pointer;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
    transition: background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
    font-family: inherit;
    font-size: 0.76em;
    font-weight: normal;
    font-variant: small-caps;
    line-height: 26px;
    letter-spacing: 0;
    max-width: 100%;
    white-space: nowrap;
    overflow-wrap: anywhere;
    text-align: center;
    transform: none;
    vertical-align: middle;
    flex-shrink: 0;
}
.bg-card__btn:hover,
.bg-card__btn:focus,
.bg-card__btn:active{
    margin-top: 0;
    font-weight: normal;
    line-height: 26px;
    transform: none;
}
.bg-card__btn--buy{
    border-color: rgba(164, 218, 238, 0.24);
    color: #eef9ff;
}
.bg-card__btn--buy:hover{
    background: rgba(111, 196, 230, 0.20);
    border-color: rgba(186, 229, 243, 0.34);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 0 14px rgba(111, 196, 230, 0.18);
    color: #ffffff;
}
.bg-card__btn--disabled,
.bg-card__btn--disabled:hover{
    border-color: rgba(255,255,255,.10);
    color: rgba(210,232,238,.42);
    background: rgba(255,255,255,.03);
    box-shadow: none;
    cursor: not-allowed;
}
.bg-card__btn--reset{
    border-color: rgba(202,112,112,.34);
    background: rgba(180,80,80,.10);
    color: #efb0b0;
}
.bg-card__btn--reset:hover{
    background: rgba(180,80,80,.18);
    border-color: rgba(202,112,112,.48);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 0 14px rgba(202, 112, 112, 0.16);
    color: #ffd0d0;
}
.bg-card__btn--token{
    border-color: rgba(230,191,120,.26);
    background: var(--bg-warm-soft);
    color: #fff1cf;
}
.bg-card__btn--token:hover{
    background: rgba(230,191,120,.18);
    border-color: rgba(230,191,120,.38);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 0 14px rgba(230,191,120,.18);
    color: #ffffff;
}
.bg-card__btn--token-return{
    border-color: rgba(230,191,120,.22);
    background: rgba(230,191,120,.08);
    color: #f0d69e;
}
.bg-card__btn--token-return:hover{
    background: rgba(230,191,120,.15);
    border-color: rgba(230,191,120,.34);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 0 12px rgba(230,191,120,.14);
    color: #fff1cf;
}
.bg-card__token-row{
    display: flex;
    flex: 0 1 auto;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 2px;
    padding-top: 0;
    border-top: 0;
    order: 4;
}

.bg-card__buy-row form,
.bg-card__token-row form,
.bg-card__manager-actions form{
    display: inline-flex;
    margin: 0;
}
.bg-info-bar__sep{
    width: 1px;
    align-self: stretch;
    background: rgba(164, 218, 238, 0.18);
    flex-shrink: 0;
}
.bg-info-bar__token{
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 14px;
    flex: 1;
}
.bg-info-bar__token-label{
    font-size: 0.74em;
    color: var(--bg-text-muted);
    text-transform: uppercase;
    letter-spacing: 0;
}
.bg-info-bar__token-value{
    font-size: 0.88em;
    font-weight: bold;
    letter-spacing: 0;
}
.bg-info-bar__token.is-available .bg-info-bar__token-value{
    color: #fff1cf;
}
.bg-info-bar__token.is-used .bg-info-bar__token-value{
    color: var(--bg-text-dim);
}

.pagina_scheda_background__empty{
    padding: 16px;
    border: 1px dashed rgba(186,229,243,.18);
    border-radius: 14px;
    background: rgba(255,255,255,.03);
    color: var(--bg-text-dim);
    font-style: italic;
    text-align: center;
}

/* pannello descrizione livello */
.bg-pip-tooltip-panel{
    position: absolute;
    left: 12px;
    right: 12px;
    top: 154px;
    z-index: 2;
    width: auto;
    min-height: 2.2em;
    box-sizing: border-box;
    padding: 6px 8px;
    background:
        linear-gradient(180deg, rgba(18, 25, 29, 0.96), rgba(9, 13, 16, 0.98)),
        linear-gradient(90deg, rgba(108, 205, 255, 0.08), rgba(231, 194, 122, 0.08));
    border: 1px solid var(--bg-card-border);
    border-radius: 10px;
    box-shadow: 0 10px 24px rgba(0,0,0,.18);
    font-size: 0.76em;
    color: var(--bg-text-dim);
    line-height: 1.45;
    text-align: left;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity .18s, transform .18s;
    pointer-events: none;
    margin: 0 0 2px;
}
.bg-pip-tooltip-panel.is-visible{
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}
.bg-pip-tooltip-panel__lv{
    font-variant: small-caps;
    font-weight: bold;
    color: #fff1cf;
    margin-right: 4px;
}
.bg-pip-tooltip-panel__text{
    color: var(--bg-text);
}

/* ── barra riepilogo PX ── */
.bg-info-bar{
    display: flex;
    align-items: center;
    gap: 0;
    background:
        linear-gradient(180deg, rgba(18, 25, 29, 0.96), rgba(9, 13, 16, 0.98)),
        linear-gradient(90deg, rgba(108, 205, 255, 0.08), rgba(231, 194, 122, 0.08));
    border: 1px solid rgba(163, 215, 235, 0.22);
    border-radius: 14px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
    overflow: hidden;
    margin-bottom: 10px;
}
.bg-info-bar__px{
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 14px;
    flex-shrink: 0;
}
.bg-info-bar__px-label{
    font-size: 0.74em;
    color: var(--bg-text-muted);
    text-transform: uppercase;
    letter-spacing: 0;
}
.bg-info-bar__px-value{
    font-size: 1.3em;
    color: var(--bg-accent);
    font-variant: tabular-nums;
    font-weight: bold;
    letter-spacing: 0;
    text-shadow: 0 0 8px rgba(111,196,230,.35);
}

div.pagina_scheda_background div.warning,
div.pagina_scheda_background div.error{
    background:
        linear-gradient(180deg, rgba(18, 25, 29, 0.96), rgba(9, 13, 16, 0.98)),
        linear-gradient(90deg, rgba(108, 205, 255, 0.08), rgba(231, 194, 122, 0.08));
    border: 1px solid rgba(163, 215, 235, 0.22);
    border-radius: 14px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
    color: #f0fbff;
}

@media (max-width: 640px){
    div.pagina_scheda2.pagina_scheda_background{
        width: min(100%, calc(100vw - 12px));
        padding: 10px 8px 16px;
    }

    .bg-card-grid{
        grid-template-columns: 1fr;
    }

    .bg-info-bar{
        align-items: stretch;
        flex-direction: column;
    }

    .bg-info-bar__sep{
        width: auto;
        height: 1px;
    }

    .bg-info-bar__px,
    .bg-info-bar__token{
        justify-content: space-between;
        padding: 10px 12px;
    }

    .bg-card__buy-row{
        align-items: center;
        flex-direction: row;
    }

    .bg-card__btn{
        width: auto;
    }
}

/* ============================================================
   ISCRIZIONE — picker background (fase 2)
   ============================================================ */

.register-bg-picker{
    margin-top: 16px;
}

.register-bg-grid{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 10px;
    margin: 12px 0;
}

.register-bg-card{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 10px 8px;
    border: 2px solid rgba(255,255,255,.1);
    border-radius: 8px;
    cursor: pointer;
    transition: border-color .15s, background .15s;
    background: rgba(255,255,255,.03);
    text-align: center;
}
.register-bg-card:hover{
    border-color: rgba(200,168,75,.4);
    background: rgba(200,168,75,.05);
}
.register-bg-card.is-selected,
.register-bg-card:has(input:checked){
    border-color: #c8a84b;
    background: rgba(200,168,75,.1);
}

/* nasconde il radio button ma lo mantiene accessibile */
.register-bg-card input[type="radio"]{
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.register-bg-card__img{
    width: 64px;
    height: 64px;
    border-radius: 6px;
    overflow: hidden;
    background: rgba(255,255,255,.06);
    flex-shrink: 0;
}
.register-bg-card__img img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.register-bg-card__img-placeholder{
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,.08);
}

.register-bg-card__name{
    font-size: 0.85em;
    font-variant: small-caps;
    letter-spacing: .04em;
    color: #ddd;
    line-height: 1.2;
}
.register-bg-card__desc{
    font-size: 0.72em;
    color: #777;
    line-height: 1.3;
}

.register-bg-picker__costs-note{
    font-size: 0.78em;
    color: #555;
    margin: 4px 0 0;
}

/* card background nel wizard iscrizione: iniziali come placeholder quando manca l'immagine */
.register-lineage-module__empty{
    color: #888;
    font-style: italic;
    padding: 12px 0;
}

/* ============================================================
   GESTIONE BACKGROUND — admin-card badges extra
   ============================================================ */
.admin-compact-card__badge--warn{
    background: rgba(180,80,80,.15);
    color: #c06060;
    border-color: rgba(180,80,80,.3);
}

/* ============================================================
   GESTIONE BACKGROUND — lista e form
   — palette allineata a servizi_prenotazioni
   ============================================================ */

.pagina_gestione_background{
    --ga-bg:             rgba(14, 21, 27, 0.92);
    --ga-bg-strong:      rgba(20, 30, 36, 0.96);
    --ga-border:         rgba(164, 218, 238, 0.14);
    --ga-border-s:       rgba(186, 229, 243, 0.24);
    --ga-accent:         rgba(111, 196, 230, 0.92);
    --ga-accent-soft:    rgba(101, 190, 225, 0.14);
    --ga-warm:           rgba(230, 191, 120, 0.88);
    --ga-warm-soft:      rgba(230, 191, 120, 0.12);
    --ga-text:           #e2f0f5;
    --ga-text-strong:    #effbff;
    --ga-text-dim:       rgba(210, 232, 238, 0.82);
    --ga-text-muted:     rgba(186, 229, 243, 0.76);
    --ga-shadow:         0 14px 32px rgba(0, 0, 0, 0.24);
}

div.pagina_gestione_tipi.pagina_gestione_background{
    width: min(100%, 1180px);
    max-width: 1180px;
    min-height: 400px;
    margin: 0 auto;
    padding: 8px 10px 14px;
    box-sizing: border-box;
    font-size: 13px;
    overflow: hidden;
    background:
        radial-gradient(circle at top, rgba(92, 201, 255, 0.11), transparent 34%),
        radial-gradient(circle at 88% 12%, rgba(235, 197, 120, 0.10), transparent 24%),
        linear-gradient(180deg, rgba(9, 14, 18, 0.84), rgba(6, 9, 12, 0.98)),
        linear-gradient(90deg, rgba(8, 11, 14, 0.98), rgba(17, 24, 30, 0.90) 58%, rgba(8, 11, 14, 0.98));
    border: 1px solid rgba(164, 218, 238, 0.20);
    border-radius: 20px;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28);
    color: var(--ga-text);
}

div.pagina_gestione_background div.page_title,
div.pagina_gestione_background div.page_title h2{
    background: transparent;
    border: 0;
    box-shadow: none;
    margin: 0;
    padding: 0;
}

div.pagina_gestione_background div.page_title h2{
    color: var(--ga-text-strong);
    font-size: 24px;
    letter-spacing: 0;
    text-align: center;
    text-shadow: 0 1px 8px rgba(92, 201, 255, 0.18);
}

div.pagina_gestione_background div.page_body{
    padding: 0;
}

/* toolbar */
.bg-admin-toolbar{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 6px 8px 12px;
    border-bottom: 1px solid rgba(186, 229, 243, 0.22);
    margin-bottom: 10px;
}
.bg-admin-toolbar__title{
    margin: 0;
    color: var(--ga-text-strong);
    font-size: 22px;
    font-variant: small-caps;
    letter-spacing: 0;
    text-shadow: 0 1px 6px rgba(92,201,255,.15);
}
.bg-admin-toolbar__add{
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 26px;
    padding: 0 14px;
    border: 1px solid rgba(126, 231, 255, 0.22);
    border-radius: 999px;
    background:
        linear-gradient(180deg, rgba(16, 24, 28, 0.95), rgba(8, 13, 16, 0.98)),
        linear-gradient(90deg, rgba(126, 231, 255, 0.08), rgba(244, 222, 163, 0.08));
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
    color: #eef8fb;
    text-decoration: none;
    font-size: 0.92em;
    font-weight: normal;
    font-variant: small-caps;
    letter-spacing: 0;
    line-height: 26px;
    margin-top: 0;
    transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
    white-space: nowrap;
}
.bg-admin-toolbar__add:hover,
.bg-admin-toolbar__add:focus{
    display: inline-flex;
    align-items: center;
    margin-top: 0;
    background:
        linear-gradient(180deg, rgba(21, 34, 40, 0.98), rgba(10, 16, 20, 0.98)),
        linear-gradient(90deg, rgba(126, 231, 255, 0.12), rgba(244, 222, 163, 0.12));
    border: 1px solid rgba(186, 229, 243, 0.34);
    box-shadow: 0 0 0 1px rgba(186, 229, 243, 0.08), 0 0 16px rgba(111, 196, 230, 0.16);
    color: #c8ecfa;
    font-weight: normal;
    line-height: 26px;
    text-decoration: none;
}

/* griglia card — altezza uniforme tramite grid rows */
.bg-admin-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
    grid-auto-rows: 1fr;
    gap: 10px;
    padding: 0 0 6px;
}

/* singola card admin */
.bg-admin-card{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    background:
        linear-gradient(180deg, var(--ga-bg-strong), rgba(9, 13, 16, 0.98)),
        linear-gradient(90deg, rgba(120, 203, 236, 0.06), rgba(240, 206, 140, 0.04));
    border: 1px solid var(--ga-border);
    border-top: 3px solid var(--ga-border-s);
    border-radius: 12px;
    box-shadow: var(--ga-shadow);
    overflow: hidden;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.bg-admin-card:hover{
    border-color: var(--ga-border-s);
    box-shadow: 0 18px 36px rgba(0,0,0,.30);
}
.bg-admin-card--hidden{
    opacity: .62;
}

/* area immagine */
.bg-admin-card__media{
    width: 100%;
    height: 112px;
    flex-shrink: 0;
    background:
        linear-gradient(180deg, rgba(14, 21, 27, 0.96), rgba(9, 13, 16, 0.98)),
        radial-gradient(circle at center, rgba(120, 203, 236, 0.10), transparent 58%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-bottom: 1px solid rgba(186, 229, 243, 0.14);
}
.bg-admin-card__img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.bg-admin-card__placeholder{
    font-size: 2.8em;
    font-variant: small-caps;
    color: rgba(186, 229, 243, 0.30);
    font-weight: bold;
    letter-spacing: 0;
    user-select: none;
    line-height: 1;
}

/* corpo card */
.bg-admin-card__body{
    padding: 9px 10px 8px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-height: 0;
    text-align: center;
}
.bg-admin-card__name{
    color: var(--ga-text-strong);
    font-family: "Palatino Linotype", Georgia, serif;
    font-size: 16px;
    font-weight: bold;
    font-variant: small-caps;
    letter-spacing: 0;
    line-height: 1.2;
    overflow-wrap: anywhere;
}
.bg-admin-card__slug{
    align-self: center;
    max-width: 100%;
    padding: 2px 7px;
    border: 1px solid rgba(164, 218, 238, 0.16);
    border-radius: 999px;
    background: rgba(101, 190, 225, 0.10);
    color: #eafaff;
    display: inline-flex;
    font-family: monospace;
    font-size: 0.82em;
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.bg-admin-card__badges{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
    margin-top: 2px;
}
.bg-admin-badge{
    padding: 2px 7px;
    border: 1px solid rgba(186, 229, 243, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    color: var(--ga-text-muted);
    font-size: 0.78em;
    line-height: 1.25;
    white-space: nowrap;
}
.bg-admin-badge--iscr{
    border-color: rgba(230,191,120,.20);
    background: var(--ga-warm-soft);
    color: #fff1cf;
}
.bg-admin-badge--hidden{
    border-color: rgba(202,112,112,.34);
    color: #efb0b0;
    background: rgba(180,80,80,.10);
}
.bg-admin-card__desc{
    color: #d2e8ee;
    display: -webkit-box;
    font-size: 0.88em;
    line-height: 1.35;
    margin: 2px 0 0;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* azioni card */
.bg-admin-card__actions{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    padding: 8px 10px;
    border-top: 1px solid rgba(164, 218, 238, 0.14);
    background: rgba(0,0,0,.16);
    flex-shrink: 0;
}
.bg-admin-card__actions form{
    display: contents;
}
.bg-admin-card__btn{
    display: block;
    width: 100%;
    min-height: 26px;
    margin: 0;
    padding: 0 8px;
    text-align: center;
    font-size: 0.88em;
    font-weight: normal;
    font-variant: small-caps;
    letter-spacing: 0;
    cursor: pointer;
    border-radius: 10px;
    text-decoration: none;
    transition: background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
    font-family: inherit;
    line-height: 26px;
    box-sizing: border-box;
    white-space: nowrap;
}
.bg-admin-card__btn--edit{
    background: var(--ga-accent-soft);
    border: 1px solid rgba(164, 218, 238, 0.24);
    color: #eef9ff;
}
.bg-admin-card__btn--edit:hover{
    display: block;
    margin: 0;
    background: rgba(111, 196, 230, 0.20);
    border: 1px solid rgba(186, 229, 243, 0.34);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 0 14px rgba(111, 196, 230, 0.18);
    color: #ffffff;
    font-weight: normal;
    line-height: 26px;
    text-decoration: none;
}
.bg-admin-card__btn--delete{
    background: rgba(180,80,80,.10);
    border: 1px solid rgba(202,112,112,.34);
    color: #efb0b0;
}
.bg-admin-card__btn--delete:hover{
    background: rgba(180,80,80,.20);
    border-color: rgba(202,112,112,.48);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 0 14px rgba(202, 112, 112, 0.16);
    color: #ffd0d0;
}

/* ── form aggiunta / modifica ── */
.bg-admin-form-shell{
    max-width: 1140px;
    width: 100%;
    margin: 0 auto 4px;
    padding: 10px 12px 12px;
    border: 1px solid rgba(164, 218, 238, 0.16);
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(18, 25, 29, 0.96), rgba(9, 13, 16, 0.98)),
        linear-gradient(90deg, rgba(108, 205, 255, 0.08), rgba(231, 194, 122, 0.08));
    box-shadow: 0 10px 24px rgba(0,0,0,.18);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.bg-admin-form-preview{
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 0;
    padding: 6px 8px;
    border: 1px solid rgba(186, 229, 243, 0.14);
    border-radius: 12px;
    background: rgba(255,255,255,.025);
}
.bg-admin-form-preview__img{
    width: 54px;
    height: 54px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--ga-border-s);
    flex-shrink: 0;
}
.bg-admin-form-preview__placeholder{
    width: 54px;
    height: 54px;
    border-radius: 8px;
    border: 1px dashed var(--ga-border-s);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5em;
    color: rgba(164,218,238,.25);
    font-variant: small-caps;
    font-weight: bold;
    flex-shrink: 0;
}
.bg-admin-form-preview__label{
    color: var(--ga-text-muted);
    font-size: 0.86em;
    margin: 0;
}
.bg-admin-form{
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: stretch;
}
.bg-admin-form > *{
    align-self: stretch;
    box-sizing: border-box;
    margin-left: 0;
    margin-right: 0;
    max-width: 100%;
    width: 100%;
}
.bg-admin-form__row{
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-self: stretch;
    box-sizing: border-box;
    margin: 0;
    max-width: none;
    width: 100%;
}
.bg-admin-form__row--half{
    flex-direction: row;
    gap: 10px;
}
.bg-admin-form__row--half .bg-admin-form__field{
    flex: 1;
}
.bg-admin-form__row--checks{
    flex-direction: row;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}
.bg-admin-form__field{
    align-self: stretch;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin: 0;
    max-width: none;
    width: 100%;
}
.bg-admin-form__label{
    color: var(--ga-text-muted);
    font-size: 0.84em;
    letter-spacing: 0;
    text-transform: uppercase;
    font-variant: normal;
}
.bg-admin-form__field input[type="text"],
.bg-admin-form__field input[type="number"],
.bg-admin-form__field textarea{
    background: rgba(7, 12, 14, 0.72);
    border: 1px solid rgba(164, 218, 238, 0.18);
    border-radius: 10px;
    color: var(--ga-text);
    padding: 7px 9px;
    font-size: 0.98em;
    font-family: inherit;
    width: 100% !important;
    max-width: none;
    min-width: 0;
    margin: 0;
    box-sizing: border-box;
    transition: border-color .15s, box-shadow .15s;
}
.bg-admin-form__field input:focus,
.bg-admin-form__field textarea:focus{
    outline: none;
    border-color: var(--ga-border-s);
    box-shadow: 0 0 0 2px rgba(164,218,238,.1);
}
.bg-admin-form__field textarea{
    resize: vertical;
    height: 100px;
    min-height: 100px;
    line-height: 1.4;
}
.bg-admin-form__hint{
    font-size: 0.80em;
    color: var(--ga-text-dim);
    line-height: 1.25;
}
.bg-admin-form__hint code{
    background: rgba(164,218,238,.08);
    color: var(--ga-accent);
    padding: 1px 5px;
    border-radius: 3px;
    font-size: 0.95em;
}
.bg-admin-form__check{
    display: flex;
    align-items: center;
    gap: 7px;
    cursor: pointer;
    min-height: 24px;
    padding: 2px 8px;
    border: 1px solid rgba(186, 229, 243, 0.14);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    color: var(--ga-text);
    font-size: 0.92em;
}
.bg-admin-form__check input[type="checkbox"]{
    width: 15px;
    height: 15px;
    cursor: pointer;
    accent-color: var(--ga-accent);
}
.bg-admin-form__actions{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding-top: 8px;
    border-top: 1px solid rgba(164, 218, 238, 0.14);
    margin-top: 0;
}
.bg-admin-form__submit{
    min-height: 28px;
    padding: 0 18px;
    background: var(--ga-accent-soft);
    border: 1px solid rgba(164, 218, 238, 0.24);
    border-radius: 10px;
    color: #eef9ff;
    font-size: 0.96em;
    font-weight: normal;
    font-variant: small-caps;
    letter-spacing: 0;
    line-height: 28px;
    margin: 0;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
.bg-admin-form__submit:hover{
    background: rgba(111, 196, 230, 0.20);
    border-color: rgba(186, 229, 243, 0.34);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 0 14px rgba(111, 196, 230, 0.18);
    color: #ffffff;
}
.bg-admin-form__cancel{
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    margin-top: 0;
    padding: 0 14px;
    border: 1px solid rgba(230,191,120,.22);
    border-radius: 10px;
    background: rgba(230,191,120,.08);
    color: #f0d69e;
    font-size: 0.94em;
    font-weight: normal;
    line-height: 28px;
    text-decoration: none;
    transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}
.bg-admin-form__cancel:hover,
.bg-admin-form__cancel:focus{
    display: inline-flex;
    align-items: center;
    margin-top: 0;
    background: rgba(230,191,120,.15);
    border: 1px solid rgba(230,191,120,.34);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 0 12px rgba(230,191,120,.14);
    color: #fff1cf;
    font-weight: normal;
    line-height: 28px;
    text-decoration: none;
}

/* intestazione sezione form */
.bg-admin-form__section-title{
    color: var(--ga-text-strong);
    font-size: 0.88em;
    font-variant: small-caps;
    letter-spacing: 0;
    text-transform: uppercase;
    padding: 5px 0 2px;
    border-bottom: 1px solid rgba(186, 229, 243, 0.16);
    margin-bottom: 0;
    text-align: center;
}
.bg-admin-form__section-hint{
    font-variant: normal;
    text-transform: none;
    letter-spacing: 0;
    opacity: .6;
    font-size: 0.96em;
}
/* nome sotto preview */
.bg-admin-form-preview__nome{
    font-size: 1em;
    color: var(--ga-text-strong);
    font-variant: small-caps;
    margin: 1px 0 0;
}
/* griglia descrizioni per livello */
.bg-admin-form__levels-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
}
.bg-admin-form__label--level{
    display: flex;
    align-items: center;
    gap: 6px;
}
.bg-admin-form__level-badge{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--ga-warm-soft);
    border: 1px solid rgba(230,191,120,.24);
    color: #fff1cf;
    font-size: 0.88em;
    font-weight: bold;
    flex-shrink: 0;
}
.bg-admin-form__level-textarea{
    height: 100px;
    min-height: 100px !important;
}

@media (max-width: 900px){
    .bg-admin-form__levels-grid{
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px){
    div.pagina_gestione_tipi.pagina_gestione_background{
        width: min(100%, calc(100vw - 12px));
        padding: 10px 8px 16px;
    }

    .bg-admin-toolbar{
        align-items: center;
        flex-direction: column;
    }

    .bg-admin-form__row--half{
        flex-direction: column;
    }
    .bg-admin-form__row--checks{
        flex-wrap: wrap;
    }
    .bg-admin-form__levels-grid{
        grid-template-columns: 1fr;
    }
}

/* ── Pannello "Token specializzazioni da Background" (gestione_token_spec) ──
   Le classi generiche degli elenchi (elementi_elenco: color WHITE, titoli chiari)
   sono leggibili solo su sfondo scuro: questa pagina avvolge il contenuto in un
   pannello scuro dedicato per garantire contrasto sulla pergamena. */
div.pagina_gestione_token_spec{
    max-width: 960px;
    margin: 0 auto;
    padding: 14px 18px 20px;
    background: rgba(28, 22, 16, 0.82);
    border: 1px solid rgba(201, 164, 106, 0.45);
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
}
div.pagina_gestione_token_spec div.link_back{
    margin-bottom: 8px;
    text-align: right;
}
div.pagina_gestione_token_spec div.link_back a{
    color: #e7d3a8;
}
div.pagina_gestione_token_spec div.page_title{
    margin-top: 16px;
}
div.pagina_gestione_token_spec div.page_title:first-of-type{
    margin-top: 0;
}
div.pagina_gestione_token_spec div.page_title h2{
    color: #f3e6c8;
    border-bottom-color: rgba(201, 164, 106, 0.5);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
div.pagina_gestione_token_spec div.token-spec-intro{
    margin: 10px 0 4px;
    padding: 10px 14px;
    background: rgba(109, 79, 145, 0.22);
    border: 1px solid rgba(201, 164, 106, 0.35);
    border-radius: 8px;
    color: #efe2c6;
    text-align: center;
}
div.pagina_gestione_token_spec div.form_gioco{
    margin: 6px auto 4px;
    text-align: center;
}
div.pagina_gestione_token_spec div.form_label{
    color: #e7d3a8;
    font-weight: bolder;
    margin-bottom: 4px;
}
div.pagina_gestione_token_spec div.form_field{
    margin-bottom: 8px;
}
div.pagina_gestione_token_spec select{
    min-width: 220px;
}
div.pagina_gestione_token_spec div.elenco_record_gestione{
    margin: 6px auto 4px;
}
div.pagina_gestione_token_spec div.elenco_record_gestione table{
    width: 100%;
    border-collapse: collapse;
}
div.pagina_gestione_token_spec td.casella_titolo{
    border-bottom: 1px solid rgba(201, 164, 106, 0.5);
    padding: 6px 10px;
}
div.pagina_gestione_token_spec td.casella_elemento{
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding: 6px 10px;
}
div.pagina_gestione_token_spec tr.risultati_elenco_record_gestione:nth-child(even) td{
    background: rgba(255, 255, 255, 0.04);
}
div.pagina_gestione_token_spec div.elementi_elenco{
    color: #f1e7d2;
}
div.pagina_gestione_token_spec div.elementi_elenco form{
    margin: 0;
}

/* =========================
   PNG — pagine di creazione/modifica (gestione_png) e scheda (scheda_png)
   ========================= */
div.pagina_gestione_png{
  --png-admin-panel: rgba(20, 30, 36, 0.86);
  --png-admin-panel-soft: rgba(255, 255, 255, 0.055);
  --png-admin-field: rgba(4, 9, 12, 0.72);
  --png-admin-border: rgba(164, 218, 238, 0.24);
  --png-admin-accent: #8ed9f2;
  --png-admin-accent-soft: rgba(101, 190, 225, 0.15);
  --png-admin-warm: #e8c783;
  --png-admin-warm-soft: rgba(230, 191, 120, 0.14);
  --png-admin-text: #dcecf2;
  --png-admin-text-strong: #f2fbff;
  --png-admin-text-muted: rgba(196, 224, 234, 0.76);
  width: min(100%, 1180px);
  min-height: 420px;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
  overflow: visible;
  background:
    radial-gradient(circle at 10% 0, rgba(92, 201, 255, 0.12), transparent 30%),
    radial-gradient(circle at 92% 8%, rgba(235, 197, 120, 0.10), transparent 24%),
    linear-gradient(180deg, rgba(10, 16, 21, 0.94), rgba(5, 9, 12, 0.99));
  border: 1px solid rgba(164, 218, 238, 0.28);
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.07);
  color: var(--png-admin-text);
}

div.pagina_gestione_png div.png_admin_title{
  margin: 0;
  padding: 20px 22px 17px;
  box-sizing: border-box;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.018));
  border: 0;
  border-bottom: 1px solid var(--png-admin-border);
  border-radius: 8px 8px 0 0;
  box-shadow: none;
}

div.pagina_gestione_png div.png_admin_title h2{
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--png-admin-text-strong);
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 25px;
  font-weight: normal;
  font-variant: small-caps;
  letter-spacing: 0;
  line-height: 1.18;
  text-shadow: 0 1px 14px rgba(230, 191, 120, 0.18);
}

div.pagina_gestione_png .png_admin_subject{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 32px;
  margin: 9px 0 0;
  padding: 0 15px;
  box-sizing: border-box;
  border: 1px solid rgba(230, 191, 120, 0.34);
  border-radius: 999px;
  background: var(--png-admin-warm-soft);
  color: #fff2cf;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.2;
}

div.pagina_gestione_png .png_admin_subject__nickname{
  font-weight: bold;
  font-style: italic;
}

div.pagina_gestione_png .png_admin_subject__realname{
  font-weight: bold;
}

div.pagina_gestione_png div.png_admin_body{
  margin: 0;
  padding: 18px;
  box-sizing: border-box;
  background: transparent;
  text-align: left;
}

div.pagina_gestione_png form.png_form{
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  color: var(--png-admin-text);
  text-align: left;
}

div.pagina_gestione_png .png_form_sections{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  width: 100%;
  min-width: 0;
}

div.pagina_gestione_png fieldset.png_form_section{
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 15px 15px 16px;
  box-sizing: border-box;
  overflow: visible;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.025)),
    var(--png-admin-panel);
  border: 1px solid var(--png-admin-border);
  border-left: 3px solid rgba(126, 211, 242, 0.58);
  border-radius: 8px;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.20), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  scroll-margin-top: 16px;
}

div.pagina_gestione_png fieldset.png_form_section::after{
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.22), transparent);
  pointer-events: none;
}

div.pagina_gestione_png fieldset.png_form_section--stats,
div.pagina_gestione_png fieldset.png_form_section--skills{
  grid-column: 1 / -1;
}

div.pagina_gestione_razze_custom fieldset.png_form_section--narrative{
  grid-column: 1 / -1;
}

div.pagina_gestione_png fieldset.png_form_section--race{
  border-left-color: rgba(230, 191, 120, 0.58);
}

div.pagina_gestione_png fieldset.png_form_section--resources{
  display: flex;
  flex-direction: column;
  border-left-color: rgba(230, 191, 120, 0.64);
}

div.pagina_gestione_png fieldset.png_form_section--stats{
  border-left-color: rgba(174, 205, 143, 0.56);
}

div.pagina_gestione_png fieldset.png_form_section--skills{
  border-left-color: rgba(126, 211, 242, 0.62);
}

div.pagina_gestione_png fieldset.png_form_section legend{
  max-width: calc(100% - 16px);
  padding: 0 8px;
  color: var(--png-admin-accent);
  font-family: "Palatino Linotype", Georgia, serif;
  font-size: 13px;
  font-weight: bold;
  font-variant: small-caps;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

div.pagina_gestione_png fieldset.png_form_section--resources legend{
  color: var(--png-admin-warm);
}

div.pagina_gestione_png fieldset.png_form_section--stats legend{
  color: #b9d995;
}

div.pagina_gestione_png div.png_import_panel{
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto auto;
  align-items: end;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 11px 12px;
  box-sizing: border-box;
  background: rgba(8, 14, 18, 0.92);
  border: 1px solid var(--png-admin-border);
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

div.pagina_gestione_png fieldset.png_form_section--race div.png_import_panel--race{
  margin: 0 0 12px;
  padding: 9px 10px;
}

div.pagina_gestione_png label.png_import_field{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
}

div.pagina_gestione_png label.png_import_field select{
  width: 100%;
  min-width: 0;
  height: 38px;
  margin: 0;
  padding: 0 10px;
  box-sizing: border-box;
  background: var(--png-admin-field);
  border: 1px solid rgba(164, 218, 238, 0.22);
  border-radius: 7px;
  color: var(--png-admin-text-strong);
  font-family: inherit;
  font-size: 12px;
  line-height: 38px;
}

div.pagina_gestione_png button.png_import_button,
div.pagina_gestione_png a.png_import_button,
div.pagina_gestione_png a.png_import_button:visited{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: 38px;
  min-height: 38px;
  margin: 0;
  padding: 0 18px;
  box-sizing: border-box;
  border-width: 1px;
  border-style: solid;
  border-radius: 7px;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.2;
  text-decoration: none;
  text-transform: uppercase;
  transform: none;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

div.pagina_gestione_png button.png_import_button{
  background: linear-gradient(180deg, rgba(101, 190, 225, 0.24), rgba(63, 128, 155, 0.22));
  border-color: rgba(126, 211, 242, 0.38);
  color: #eefbff;
}

div.pagina_gestione_png a.png_import_button,
div.pagina_gestione_png a.png_import_button:visited{
  background: var(--png-admin-warm-soft);
  border-color: rgba(230, 191, 120, 0.34);
  color: #f5dfad;
}

div.pagina_gestione_png button.png_import_button:hover,
div.pagina_gestione_png button.png_import_button:focus,
div.pagina_gestione_png a.png_import_button:hover,
div.pagina_gestione_png a.png_import_button:focus{
  display: inline-flex;
  box-sizing: border-box;
  width: auto;
  height: 38px;
  min-height: 38px;
  margin: 0;
  padding: 0 18px;
  border-width: 1px;
  border-style: solid;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transform: none;
  outline: none;
}

div.pagina_gestione_png button.png_import_button:hover,
div.pagina_gestione_png button.png_import_button:focus{
  background: linear-gradient(180deg, rgba(126, 211, 242, 0.34), rgba(63, 128, 155, 0.28));
  border-color: rgba(186, 229, 243, 0.56);
  color: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06), 0 0 15px rgba(101, 190, 225, 0.17);
}

div.pagina_gestione_png a.png_import_button:hover,
div.pagina_gestione_png a.png_import_button:focus{
  background: rgba(230, 191, 120, 0.22);
  border-color: rgba(230, 191, 120, 0.50);
  color: #fff0cd;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05), 0 0 14px rgba(230, 191, 120, 0.14);
}

div.pagina_gestione_png div.png_form_grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  min-width: 0;
}

div.pagina_gestione_png div.png_form_grid--resources{
  flex: 0 0 auto;
  grid-template-columns: repeat(3, minmax(124px, 1fr));
  align-items: stretch;
  align-content: center;
  grid-auto-rows: auto;
  margin: auto 0;
}

div.pagina_gestione_png div.png_form_grid--stats{
  grid-template-columns: repeat(3, minmax(112px, 1fr));
}

/* Dati generali: coppie di campi e riepilogo razza. */
div.pagina_gestione_png div.png_form_general_layout{
  display: block;
  width: 100%;
  min-width: 0;
}

div.pagina_gestione_png div.png_form_general_layout__left{
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

div.pagina_gestione_png div.png_form_grid--general{
  grid-template-columns: 1fr;
}

div.pagina_gestione_png div.png_form_grid--skills{
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  max-height: 390px;
  padding: 2px 7px 2px 2px;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-color: rgba(126, 211, 242, 0.46) rgba(0, 0, 0, 0.18);
  scrollbar-width: thin;
}

div.pagina_gestione_png div.png_form_grid--skills:focus{
  outline: none;
  box-shadow: 0 0 0 2px rgba(126, 211, 242, 0.16);
}

div.pagina_gestione_png div.png_form_grid--skills:focus-visible{
  outline: 2px solid rgba(126, 211, 242, 0.74);
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(126, 211, 242, 0.12);
}

div.pagina_gestione_png label.png_form_field{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  margin: 0;
  padding: 10px;
  box-sizing: border-box;
  background: var(--png-admin-panel-soft);
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 8px;
  color: var(--png-admin-text);
  font-size: 12px;
  line-height: 1.25;
  transition: background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

div.pagina_gestione_png label.png_form_field:focus-within{
  background: rgba(101, 190, 225, 0.08);
  border-color: rgba(126, 211, 242, 0.34);
  box-shadow: 0 0 0 2px rgba(101, 190, 225, 0.08);
}

div.pagina_gestione_png label.png_form_field--wide{
  grid-column: 1 / -1;
}

/* Allineamento dei PNG all'origine: pannello a sé, fuori dal form del PNG,
   con la casella e la sua etichetta sulla stessa riga. */
div.pagina_gestione_png form.png_align_form{
  display: block;
  margin: 14px 0 0;
}

div.pagina_gestione_png fieldset.png_form_section--align{
  border-left-color: rgba(230, 191, 120, 0.58);
}

/* Legenda in tinta col bordo sinistro, come nelle altre varianti del pannello. */
div.pagina_gestione_png fieldset.png_form_section--align legend{
  color: var(--png-admin-warm);
}

div.pagina_gestione_png label.png_form_field--check{
  flex-direction: row;
  align-items: flex-start;
  gap: 8px;
  margin-top: 10px;
}

/* La casella va riportata alla sua misura: la regola generica dei campi
   veste ogni input del form da casella di testo (width 100%, min-height 38px)
   e senza questo reset occuperebbe l'intera riga spingendo fuori l'etichetta. */
div.pagina_gestione_png label.png_form_field--check input[type="checkbox"]{
  flex: 0 0 auto;
  width: 22px;
  min-height: 22px;
  height: 22px;
  margin: 2px 0 0;
  padding: 0;
  color-scheme: dark;
}

div.pagina_gestione_png label.png_form_field--check .png_form_field__label{
  flex: 1 1 auto;
  min-width: 0;
  text-transform: none;
  font-size: 12px;
  line-height: 1.35;
}

/* Coppia di campi affiancati nella colonna generale
   (nome+cognome, genere+altro, URL chat+scheda). */
div.pagina_gestione_png div.png_form_pair{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
}

/* Colonna delle razze: select e riepilogo sotto ai dati generali. */
div.pagina_gestione_png div.png_form_race_row__left{
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  gap: 10px;
  min-width: 0;
}

/* Le select delle razze mantengono l'altezza naturale: è il riepilogo
   sottostante ad allungarsi per pareggiare la colonna della razza custom */
div.pagina_gestione_png div.png_form_race_row__left > label.png_form_field{
  flex: 0 0 auto;
}

/* Cella di creazione delle razze custom per i PNG */
div.pagina_gestione_png div.png_form_race_cell{
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--png-admin-text);
  font-size: 12px;
  line-height: 1.25;
  transition: background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

div.pagina_gestione_png div.png_form_race_cell:focus-within{
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

div.pagina_gestione_png div.png_form_race_cell__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px 8px;
  min-width: 0;
}

div.pagina_gestione_png label.png_race_field{
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  font-size: 11px;
}

div.pagina_gestione_png label.png_race_field span{
  color: var(--png-admin-text-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

div.pagina_gestione_png label.png_race_field input{
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
}

div.pagina_gestione_png div.png_form_race_cell__actions{
  display: flex;
  justify-content: flex-end;
}

/* Riquadro di riepilogo razza (bonus/malus di caratteristica e massimali):
   riempie il pannello e centra etichette e chip */
div.pagina_gestione_png div.png_race_summary{
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  gap: 10px;
  min-width: 0;
  margin: 0;
  padding: 14px 12px;
  box-sizing: border-box;
  background: var(--png-admin-panel-soft);
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 8px;
  color: var(--png-admin-text);
  font-size: 13px;
  line-height: 1.3;
}

div.pagina_gestione_png div.png_race_summary .png_form_field__label{
  align-self: center;
  text-align: center;
  font-size: 12px;
}

div.pagina_gestione_png .png_race_summary__title{
  color: var(--png-admin-accent);
  font-size: 13px;
}

div.pagina_gestione_png div.png_race_summary__stats,
div.pagina_gestione_png div.png_race_summary__resources{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px 10px;
  min-width: 0;
}

div.pagina_gestione_png span.png_race_summary__item{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  box-sizing: border-box;
  border: 1px solid rgba(164, 218, 238, 0.15);
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.22);
  font-size: 12px;
  white-space: nowrap;
}

div.pagina_gestione_png span.png_race_summary__name{
  color: var(--png-admin-text-muted);
}

div.pagina_gestione_png span.png_race_summary__value{
  font-size: 13px;
  font-weight: 600;
}

div.pagina_gestione_png span.png_race_summary__value--bonus{
  color: #9fe3a8;
}

div.pagina_gestione_png span.png_race_summary__value--malus{
  color: #f2a09a;
}

div.pagina_gestione_png span.png_race_summary__none{
  font-size: 12px;
  font-style: italic;
  color: var(--png-admin-text-muted);
}

div.pagina_gestione_png label.png_form_field--resource{
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  min-height: 112px;
  padding: 10px;
  background: rgba(230, 191, 120, 0.065);
  border-color: rgba(230, 191, 120, 0.18);
}

div.pagina_gestione_png label.png_form_field--resource .png_form_field__meta{
  align-self: flex-start;
}

div.pagina_gestione_png label.png_form_field--resource .png_form_field__label{
  min-height: 0;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: normal;
  hyphens: none;
  word-break: normal;
  white-space: normal;
}

div.pagina_gestione_png label.png_form_field--stat .png_form_field__label{
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: normal;
  hyphens: none;
  word-break: normal;
  white-space: normal;
}

div.pagina_gestione_png label.png_form_field--stat,
div.pagina_gestione_png label.png_form_field--skill{
  display: grid;
  grid-template-columns: minmax(0, 1fr) 58px;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
}

div.pagina_gestione_png label.png_form_field--skill{
  min-height: 48px;
}

/* Caratteristiche: fra etichetta e input c'è il valore reale in gioco.
   La colonna resta a larghezza automatica, così le caratteristiche senza
   bonus non cambiano impaginazione. */
div.pagina_gestione_png label.png_form_field--stat{
  grid-template-columns: minmax(0, 1fr) auto 58px;
}

div.pagina_gestione_png span.png_form_stat_real{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  padding: 0 6px;
  box-sizing: border-box;
  background: var(--png-admin-accent-soft);
  border: 1px solid rgba(126, 211, 242, 0.28);
  border-radius: 999px;
  color: var(--png-admin-accent);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.6;
  white-space: nowrap;
  cursor: help;
}

div.pagina_gestione_png span.png_form_stat_real--empty{
  display: none;
}

/* Cella di abilità del gestore PNG: grado e specializzazioni collegate. */
div.pagina_gestione_png div.png_form_skill{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

div.pagina_gestione_png details.png_form_spec_group{
  min-width: 0;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  background: rgba(4, 9, 12, 0.50);
  border: 1px solid rgba(164, 218, 238, 0.11);
  border-radius: 8px;
}

div.pagina_gestione_png summary.png_form_spec_group__summary{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  padding: 6px 8px;
  box-sizing: border-box;
  color: var(--png-admin-text-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
  cursor: pointer;
  list-style-position: inside;
}

div.pagina_gestione_png summary.png_form_spec_group__summary:hover,
div.pagina_gestione_png summary.png_form_spec_group__summary:focus{
  display: flex;
  padding: 6px 8px;
  border-width: 0;
  color: var(--png-admin-accent);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  outline: none;
  transform: none;
}

div.pagina_gestione_png span.png_form_spec_group__count{
  flex: 0 0 auto;
  padding: 0 6px;
  box-sizing: border-box;
  background: var(--png-admin-warm-soft);
  border: 1px solid rgba(230, 191, 120, 0.24);
  border-radius: 999px;
  color: #f1d9a7;
  font-size: 10px;
  line-height: 1.6;
  white-space: nowrap;
}

div.pagina_gestione_png div.png_form_spec_list{
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 0 8px 8px;
  box-sizing: border-box;
}

div.pagina_gestione_png label.png_form_spec{
  display: flex;
  align-items: flex-start;
  gap: 6px;
  min-width: 0;
  margin: 0;
  padding: 3px 4px;
  box-sizing: border-box;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--png-admin-text);
  font-size: 11px;
  line-height: 1.3;
  cursor: pointer;
}

div.pagina_gestione_png label.png_form_spec:hover{
  display: flex;
  padding: 3px 4px;
  background: rgba(101, 190, 225, 0.10);
  border-width: 1px;
  border-style: solid;
  border-color: rgba(126, 211, 242, 0.24);
  font-size: 11px;
  font-weight: normal;
  line-height: 1.3;
  transform: none;
}

div.pagina_gestione_png label.png_form_spec input[type="checkbox"]{
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  min-height: 15px;
  margin: 1px 0 0;
  padding: 0;
  color-scheme: dark;
}

div.pagina_gestione_png label.png_form_spec input[type="checkbox"]:focus{
  width: 15px;
  height: 15px;
  min-height: 15px;
  margin: 1px 0 0;
  padding: 0;
}

/* Abilità non appresa: le spec restano visibili ma non salvabili. */
div.pagina_gestione_png details.png_form_spec_group.is-locked label.png_form_spec{
  color: rgba(220, 236, 242, 0.48);
  cursor: not-allowed;
}

div.pagina_gestione_png p.png_form_spec_locked{
  display: none;
  margin: 0;
  padding: 0 8px 8px;
  color: #f1d9a7;
  font-size: 10px;
  line-height: 1.35;
}

div.pagina_gestione_png details.png_form_spec_group.is-locked p.png_form_spec_locked{
  display: block;
}

/* Riquadro px: totale assegnato e riepilogo della spesa. */
div.pagina_gestione_png div.png_form_xp{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin: 0 0 10px;
  box-sizing: border-box;
}

div.pagina_gestione_png label.png_form_field--xp{
  display: grid;
  grid-template-columns: minmax(0, 1fr) 96px;
  align-items: center;
  gap: 8px;
  flex: 1 1 260px;
  min-width: 0;
  padding: 7px 8px;
}

div.pagina_gestione_png label.png_form_field--xp input{
  width: 96px;
  min-height: 34px;
  padding-right: 4px;
  padding-left: 6px;
  text-align: center;
}

div.pagina_gestione_png label.png_form_field--xp input:focus{
  width: 96px;
  min-height: 34px;
  padding-right: 4px;
  padding-left: 6px;
}

div.pagina_gestione_png div.png_form_xp_summary{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

div.pagina_gestione_png span.png_form_xp_summary__item{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 9px;
  box-sizing: border-box;
  background: var(--png-admin-panel-soft);
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 999px;
}

div.pagina_gestione_png span.png_form_xp_summary__label{
  color: var(--png-admin-text-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: uppercase;
}

div.pagina_gestione_png span.png_form_xp_summary__value{
  color: var(--png-admin-warm);
  font-size: 12px;
  font-weight: 700;
}

/* Px spesi oltre il totale assegnato: il Master non è vincolato, ma il
   riepilogo lo segnala. */
div.pagina_gestione_png span.png_form_xp_summary__value--over{
  color: #f0a58f;
}

/* Voci di dettaglio della spesa px: stesso chip, tono più sobrio. */
div.pagina_gestione_png span.png_form_xp_summary__item--detail{
  background: rgba(4, 9, 12, 0.48);
}

div.pagina_gestione_png span.png_form_xp_summary__item--detail .png_form_xp_summary__value{
  color: var(--png-admin-text);
  font-weight: 600;
}

/* Abilità preferita: spunta accanto al grado. */
div.pagina_gestione_png label.png_form_preferred{
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  margin: 0;
  padding: 2px 4px;
  box-sizing: border-box;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--png-admin-text-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.3;
  text-transform: uppercase;
  cursor: pointer;
}

div.pagina_gestione_png label.png_form_preferred:hover{
  display: flex;
  padding: 2px 4px;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(230, 191, 120, 0.30);
  color: var(--png-admin-warm);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.3;
  transform: none;
}

div.pagina_gestione_png label.png_form_preferred input[type="checkbox"]{
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  min-height: 14px;
  margin: 0;
  padding: 0;
  color-scheme: dark;
}

div.pagina_gestione_png label.png_form_preferred input[type="checkbox"]:focus{
  width: 14px;
  height: 14px;
  min-height: 14px;
  margin: 0;
  padding: 0;
}

div.pagina_gestione_png label.png_form_preferred input[type="checkbox"]:disabled{
  cursor: not-allowed;
  opacity: 0.45;
}

div.pagina_gestione_png div.png_form_skill.is-preferred label.png_form_field--skill{
  border-color: rgba(230, 191, 120, 0.38);
}

div.pagina_gestione_png div.png_form_skill.is-preferred label.png_form_preferred{
  color: var(--png-admin-warm);
}

/* Caratteristica portata oltre la quota gratuita d'iscrizione. */
div.pagina_gestione_png label.png_form_field--stat-paid{
  border-color: rgba(230, 191, 120, 0.34);
}

/* Scheda PNG: nota del valore di scheda accanto al valore reale. */
div.pagina_scheda_png span.png_sheet_stat__note{
  margin-left: 5px;
  color: var(--png-admin-text-muted);
  font-size: 10px;
  font-weight: normal;
}

div.pagina_scheda_png div.png_sheet_xp_breakdown{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
  margin: 8px 0 0;
  box-sizing: border-box;
}

div.pagina_scheda_png span.png_sheet_xp_breakdown__title{
  color: var(--png-admin-text-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: uppercase;
}

div.pagina_scheda_png span.png_sheet_xp_breakdown__item{
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 2px 9px;
  box-sizing: border-box;
  background: var(--png-admin-panel-soft);
  border: 1px solid rgba(164, 218, 238, 0.12);
  border-radius: 999px;
  font-size: 11px;
  line-height: 1.5;
}

/* Le abilità della scheda PNG (griglia di card con le specializzazioni dentro)
   sono in scheda.css, insieme alle altre regole di quella pagina. */

div.pagina_scheda_png span.png_sheet_meta__note{
  color: var(--png-admin-text-muted);
  font-size: 11px;
  font-weight: normal;
}

div.pagina_gestione_png .png_form_field__label{
  min-width: 0;
  color: var(--png-admin-text-muted);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0;
  overflow-wrap: normal;
  hyphens: none;
  word-break: normal;
  text-transform: uppercase;
}

div.pagina_gestione_png .png_form_field__meta{
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 22px;
  padding: 0 7px;
  box-sizing: border-box;
  border: 1px solid rgba(230, 191, 120, 0.24);
  border-radius: 999px;
  background: var(--png-admin-warm-soft);
  color: #f1d9a7;
  font-size: 10px;
  line-height: 1.2;
  white-space: nowrap;
}

div.pagina_gestione_png label.png_form_field input,
div.pagina_gestione_png label.png_form_field select,
div.pagina_gestione_png label.png_race_field input{
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 38px;
  margin: 0;
  padding: 7px 9px;
  box-sizing: border-box;
  background: var(--png-admin-field);
  border-width: 1px;
  border-style: solid;
  border-color: rgba(164, 218, 238, 0.22);
  border-radius: 7px;
  color: var(--png-admin-text-strong);
  font-family: inherit;
  font-size: 13px;
  font-weight: normal;
  line-height: 1.2;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.24);
  transform: none;
  transition: background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

div.pagina_gestione_png label.png_form_field textarea{
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 104px;
  margin: 0;
  padding: 9px 10px;
  box-sizing: border-box;
  background: var(--png-admin-field);
  border-width: 1px;
  border-style: solid;
  border-color: rgba(164, 218, 238, 0.22);
  border-radius: 7px;
  color: var(--png-admin-text-strong);
  font-family: inherit;
  font-size: 13px;
  font-weight: normal;
  line-height: 1.35;
  resize: vertical;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.24);
  transform: none;
  transition: background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

div.pagina_gestione_png label.png_form_field select[multiple]{
  min-height: 150px;
  padding: 8px 9px;
  line-height: 1.35;
}

div.pagina_gestione_png label.png_form_field--checkbox{
  justify-content: center;
}

div.pagina_gestione_png label.png_form_field--checkbox input[type="checkbox"]{
  width: 22px;
  min-height: 22px;
  height: 22px;
  margin: 5px 0 0;
  padding: 0;
  color-scheme: dark;
}

div.pagina_gestione_png label.png_form_field select{
  color-scheme: dark;
}

div.pagina_gestione_png label.png_form_field input[type="number"],
div.pagina_gestione_png label.png_race_field input[type="number"]{
  color-scheme: dark;
}

div.pagina_gestione_png label.png_form_field--stat input,
div.pagina_gestione_png label.png_form_field--skill input{
  width: 58px;
  min-height: 34px;
  padding-right: 4px;
  padding-left: 6px;
  text-align: center;
}

div.pagina_gestione_png label.png_form_field input:focus,
div.pagina_gestione_png label.png_form_field select:focus,
div.pagina_gestione_png label.png_form_field textarea:focus,
div.pagina_gestione_png label.png_race_field input:focus{
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 38px;
  margin: 0;
  padding: 7px 9px;
  box-sizing: border-box;
  background: rgba(20, 22, 20, 0.96);
  border-width: 1px;
  border-style: solid;
  border-color: rgba(126, 211, 242, 0.62);
  border-radius: 7px;
  font-weight: normal;
  line-height: 1.2;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.22), 0 0 0 3px rgba(101, 190, 225, 0.13);
  outline: none;
  transform: none;
}

div.pagina_gestione_png label.png_form_field textarea:focus{
  min-height: 104px;
  padding: 9px 10px;
  line-height: 1.35;
  resize: vertical;
}

div.pagina_gestione_png label.png_form_field select[multiple]:focus{
  min-height: 150px;
  padding: 8px 9px;
  line-height: 1.35;
}

div.pagina_gestione_png label.png_form_field--checkbox input[type="checkbox"]:focus{
  width: 22px;
  min-height: 22px;
  height: 22px;
  padding: 0;
}

/* Stessa cosa per la casella del pannello Allinea: al focus la regola generica
   dei campi rimette geometria da casella di testo e la spunta si allargherebbe
   a tutta la riga appena cliccata. */
div.pagina_gestione_png label.png_form_field--check input[type="checkbox"]:focus{
  width: 22px;
  min-height: 22px;
  height: 22px;
  padding: 0;
}

div.pagina_gestione_png label.png_form_field--stat input:focus,
div.pagina_gestione_png label.png_form_field--skill input:focus{
  width: 58px;
  min-height: 34px;
  padding-right: 4px;
  padding-left: 6px;
}

div.pagina_gestione_png label.png_form_field input:disabled{
  background: rgba(4, 9, 12, 0.54);
  border-color: rgba(164, 218, 238, 0.10);
  color: rgba(234, 223, 205, 0.54);
  cursor: not-allowed;
  opacity: 1;
}

div.pagina_gestione_png p.png_form_hint{
  margin: 10px 0 0;
  padding: 8px 10px;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.18);
  border-left: 2px solid rgba(126, 211, 242, 0.42);
  border-radius: 0 7px 7px 0;
  color: var(--png-admin-text-muted);
  font-size: 11px;
  font-style: normal;
  line-height: 1.4;
}

div.pagina_gestione_png p.png_form_hint--info{
  border-left-color: rgba(230, 191, 120, 0.54);
  color: #e7d4ad;
}

div.pagina_gestione_png div.png_form_actions p.png_form_hint--position{
  flex: 0 1 620px;
  min-width: 0;
  margin: 0;
}

div.pagina_gestione_png div.png_form_actions{
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: 100%;
  margin: 0;
  padding: 11px 12px;
  box-sizing: border-box;
  background: rgba(8, 14, 18, 0.92);
  border: 1px solid var(--png-admin-border);
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

div.pagina_gestione_png div.png_form_actions--submit{
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  justify-content: normal;
}

div.pagina_gestione_png div.png_form_actions--submit p.png_form_hint--position{
  grid-column: 1;
  justify-self: start;
  width: 100%;
  max-width: 620px;
  text-align: left;
}

div.pagina_gestione_png div.png_form_actions--submit button.png_form_submit{
  grid-column: 2;
  justify-self: center;
}

div.pagina_gestione_png div.png_form_actions--submit a.png_form_link{
  grid-column: 3;
  justify-self: end;
}

div.pagina_gestione_png div.png_form_actions button.png_form_submit,
div.pagina_gestione_png div.png_form_actions a.png_form_link,
div.pagina_gestione_png div.png_form_actions a.png_form_link:visited,
div.pagina_gestione_png div.png_form_race_cell__actions button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: 38px;
  min-height: 38px;
  margin: 0;
  padding: 0 18px;
  box-sizing: border-box;
  border-width: 1px;
  border-style: solid;
  border-radius: 7px;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.2;
  text-decoration: none;
  text-transform: uppercase;
  transform: none;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

div.pagina_gestione_png div.png_form_actions button.png_form_submit,
div.pagina_gestione_png div.png_form_race_cell__actions button{
  background: linear-gradient(180deg, rgba(101, 190, 225, 0.24), rgba(63, 128, 155, 0.22));
  border-color: rgba(126, 211, 242, 0.38);
  color: #eefbff;
}

div.pagina_gestione_png div.png_form_actions button.png_form_submit--danger{
  background: rgba(122, 34, 34, 0.34);
  border-color: rgba(224, 128, 128, 0.34);
  color: #ffe5e5;
}

div.pagina_gestione_png div.png_form_actions a.png_form_link,
div.pagina_gestione_png div.png_form_actions a.png_form_link:visited{
  background: var(--png-admin-warm-soft);
  border-color: rgba(230, 191, 120, 0.34);
  color: #f6dfae;
}

div.pagina_gestione_png div.png_form_actions button.png_form_submit:hover,
div.pagina_gestione_png div.png_form_actions button.png_form_submit:focus,
div.pagina_gestione_png div.png_form_actions a.png_form_link:hover,
div.pagina_gestione_png div.png_form_actions a.png_form_link:focus,
div.pagina_gestione_png div.png_form_race_cell__actions button:hover,
div.pagina_gestione_png div.png_form_race_cell__actions button:focus{
  display: inline-flex;
  box-sizing: border-box;
  width: auto;
  height: 38px;
  min-height: 38px;
  margin: 0;
  padding: 0 18px;
  border-width: 1px;
  border-style: solid;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transform: none;
  outline: none;
}

div.pagina_gestione_png div.png_form_actions button.png_form_submit:hover,
div.pagina_gestione_png div.png_form_actions button.png_form_submit:focus,
div.pagina_gestione_png div.png_form_race_cell__actions button:hover,
div.pagina_gestione_png div.png_form_race_cell__actions button:focus{
  background: linear-gradient(180deg, rgba(126, 211, 242, 0.34), rgba(63, 128, 155, 0.28));
  border-color: rgba(186, 229, 243, 0.56);
  color: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06), 0 0 15px rgba(101, 190, 225, 0.17);
}

div.pagina_gestione_png div.png_form_actions button.png_form_submit--danger:hover,
div.pagina_gestione_png div.png_form_actions button.png_form_submit--danger:focus{
  background: rgba(148, 47, 47, 0.42);
  border-color: rgba(244, 153, 153, 0.52);
  color: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04), 0 0 15px rgba(196, 77, 77, 0.16);
}

div.pagina_gestione_png div.png_form_actions a.png_form_link:hover,
div.pagina_gestione_png div.png_form_actions a.png_form_link:focus{
  background: rgba(230, 191, 120, 0.22);
  border-color: rgba(230, 191, 120, 0.50);
  color: #fff0cd;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05), 0 0 14px rgba(230, 191, 120, 0.14);
}

@media (max-width: 900px){
  div.pagina_gestione_png .png_form_sections{
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_png fieldset.png_form_section,
  div.pagina_gestione_png fieldset.png_form_section--general,
  div.pagina_gestione_png fieldset.png_form_section--race,
  div.pagina_gestione_png fieldset.png_form_section--skills{
    grid-column: 1;
  }
}

@media (max-width: 640px){
  div.pagina_gestione_png{
    width: 100%;
    max-width: 100%;
    min-height: 0;
    border-radius: 8px;
  }

  div.pagina_gestione_png div.png_admin_title{
    padding: 16px 12px 14px;
    border-radius: 8px 8px 0 0;
  }

  div.pagina_gestione_png div.png_admin_body{
    padding: 10px;
  }

  div.pagina_gestione_png fieldset.png_form_section{
    padding: 12px 10px 13px;
    scroll-margin-top: 16px;
  }

  div.pagina_gestione_png div.png_form_grid--general{
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_png label.png_form_field--wide{
    grid-column: 1;
  }

  div.pagina_gestione_png div.png_form_general_layout{
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_png div.png_form_pair{
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_png div.png_form_grid--resources,
  div.pagina_gestione_png div.png_form_grid--stats{
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  }

  div.pagina_gestione_png div.png_form_grid--skills{
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    max-height: 340px;
  }

  div.pagina_gestione_png div.png_form_actions{
    flex-direction: column;
    padding: 10px;
  }

  div.pagina_gestione_png div.png_import_panel{
    grid-template-columns: 1fr;
    padding: 10px;
  }

  div.pagina_gestione_png button.png_import_button,
  div.pagina_gestione_png button.png_import_button:hover,
  div.pagina_gestione_png button.png_import_button:focus,
  div.pagina_gestione_png a.png_import_button,
  div.pagina_gestione_png a.png_import_button:visited,
  div.pagina_gestione_png a.png_import_button:hover,
  div.pagina_gestione_png a.png_import_button:focus{
    width: 100%;
  }

  div.pagina_gestione_png div.png_form_actions--submit{
    grid-template-columns: 1fr;
  }

  div.pagina_gestione_png div.png_form_actions p.png_form_hint--position{
    width: 100%;
  }

  div.pagina_gestione_png div.png_form_actions--submit p.png_form_hint--position,
  div.pagina_gestione_png div.png_form_actions--submit button.png_form_submit,
  div.pagina_gestione_png div.png_form_actions--submit a.png_form_link{
    grid-column: 1;
    justify-self: stretch;
  }

  div.pagina_gestione_png div.png_form_actions button.png_form_submit,
  div.pagina_gestione_png div.png_form_actions button.png_form_submit:hover,
  div.pagina_gestione_png div.png_form_actions button.png_form_submit:focus,
  div.pagina_gestione_png div.png_form_actions a.png_form_link,
  div.pagina_gestione_png div.png_form_actions a.png_form_link:visited,
  div.pagina_gestione_png div.png_form_actions a.png_form_link:hover,
  div.pagina_gestione_png div.png_form_actions a.png_form_link:focus{
    width: 100%;
  }
}

form.png_inline_form{
  display: inline-block;
  margin: 0;
}

form.png_spell_add_form{
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
}

/* Scheda PNG */
div.png_sheet_header{
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 14px;
}

div.png_sheet_avatar{
  flex: 0 0 auto;
  width: 110px;
  border: 1px solid rgba(124, 86, 44, 0.45);
  border-radius: 8px;
  overflow: hidden;
}

div.png_sheet_avatar img{
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}

div.png_sheet_identity{
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

div.png_sheet_name{
  font-family: Georgia, serif;
  font-size: 20px;
  font-weight: bold;
}

div.png_sheet_meta{
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  font-size: 12px;
}

div.png_sheet_links{
  display: flex;
  flex-wrap: wrap;
  gap: 4px 14px;
  font-size: 12px;
}

div.png_sheet_section{
  border: 1px solid rgba(124, 86, 44, 0.45);
  border-radius: 10px;
  padding: 10px 12px 12px;
  margin-bottom: 12px;
}

div.png_sheet_section__title{
  font-family: Georgia, serif;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 12px;
  margin-bottom: 8px;
}

div.png_sheet_resources{
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
  align-items: center;
}

div.png_sheet_resource{
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}

span.png_sheet_resource__label{
  font-weight: bold;
}

div.png_sheet_stats{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  gap: 6px 14px;
}

div.png_sheet_stat{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  font-size: 12px;
  border-bottom: 1px dotted rgba(124, 86, 44, 0.4);
  padding-bottom: 2px;
  min-width: 0;
}

span.png_sheet_stat__label{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

span.png_sheet_stat__value{
  font-weight: bold;
}

div.png_sheet_empty{
  font-size: 12px;
  font-style: italic;
  opacity: 0.85;
}

table.png_sheet_table{
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

table.png_sheet_table th{
  text-align: left;
  border-bottom: 1px solid rgba(124, 86, 44, 0.5);
  padding: 3px 6px;
}

table.png_sheet_table td{
  border-bottom: 1px dotted rgba(124, 86, 44, 0.3);
  padding: 3px 6px;
}

@media (max-width: 640px) {
  div.png_sheet_header{
    flex-direction: column;
  }
}

/* Scheda PNG: form rapido delle risorse */
form.png_resources_form{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px;
  margin-top: 10px;
}

form.png_resources_form label{
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 11px;
  font-weight: bold;
}

form.png_resources_form input{
  width: 80px;
  box-sizing: border-box;
}

/* ===== Lazy loading elenchi lunghi (includes/lazylist.js) =====
   is-lazy-hidden: card oltre la finestra visibile (rivelata scrollando).
   is-filter-hidden: card esclusa da un filtro esterno (tab/categoria).
   Entrambe nascondono la card senza toglierla dal DOM. */
.is-lazy-hidden,
.is-filter-hidden {
  display: none !important;
}

.lazylist-sentinel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 8px;
  width: 100%;
}

.lazylist-sentinel[data-state="loading"],
.lazylist-sentinel[data-state="error"] {
  min-height: 40px;
  padding: 12px;
}

.lazylist-sentinel.lazylist-manual {
  cursor: pointer;
}

.lazylist-spinner {
  width: 18px;
  height: 18px;
  border: 2px solid rgba(127, 127, 127, 0.35);
  border-top-color: currentColor;
  border-radius: 50%;
  animation: lazylist-spin 0.7s linear infinite;
}

@keyframes lazylist-spin {
  to {
    transform: rotate(360deg);
  }
}

.lazylist-msg {
  font-size: 0.9em;
  opacity: 0.8;
}
