/** * Skin advanced
	* @author Blancks
*/

/** * Parametri di default nella pagina
*/

@font-face {
	font-family: 'Onderneming';
	src: url('fonts/Onderneming.eot');
	src: local('â˜º'), url('fonts/Onderneming.woff') format('woff'), url('fonts/Onderneming.ttf') format('truetype'), url('fonts/Onderneming.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Agressive_Winter';
	src: url('fonts/aAgressiveWinter.eot');
	src: local('â˜º'), url('fonts/aAgressiveWinter.woff') format('woff'), url('fonts/aAgressiveWinter.ttf') format('truetype'), url('fonts/aAgressiveWinter.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Biko';
	src: url('fonts/Biko.eot');
	src: local('â˜º'), url('fonts/Biko.woff') format('woff'), url('fonts/Biko.ttf') format('truetype'), url('fonts/Biko.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Hello_Almeida';
	src: url('fonts/Hello_Almeida.ttf');
	src: local('â˜º'), url('fonts/Hello_Almeida.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'HaloDek';
	src: url('fonts/HaloDek.eot');
	src: local('â˜º'), url('fonts/HaloDek.woff') format('woff'), url('fonts/HaloDek.ttf') format('truetype'), url('fonts/HaloDek.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
    font-family: 'Lato';
    src: url('fonts/Lato-Regular.eot');
    src: url('fonts/Lato-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/Lato-Regular.woff2') format('woff2'),
        url('fonts/Lato-Regular.woff') format('woff'),
        url('fonts/Lato-Regular.ttf') format('truetype'),
        url('fonts/Lato-Regular.svg#Lato-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sigmar One';
    src: url('fonts/SigmarOne-Regular.eot');
    src: url('fonts/SigmarOne-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/SigmarOne-Regular.woff2') format('woff2'),
        url('fonts/SigmarOne-Regular.woff') format('woff'),
        url('fonts/SigmarOne-Regular.ttf') format('truetype'),
        url('fonts/SigmarOne-Regular.svg#Sigmar-One') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Cinzel';
    src: url('fonts/Cinzel-Regular.eot');
    src: url('fonts/Cinzel-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/Cinzel-Regular.woff2') format('woff2'),
        url('fonts/Cinzel-Regular.woff') format('woff'),
        url('fonts/Cinzel-Regular.ttf') format('truetype'),
        url('fonts/Cinzel-Regular.svg#Cinzel-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Sigali';
    src: url('fonts/Sigali.eot');
    src: url('fonts/Sigali.eot?#iefix') format('embedded-opentype'),
        url('fonts/Sigali.woff2') format('woff2'),
        url('fonts/Sigali.woff') format('woff'),
        url('fonts/Sigali.ttf') format('truetype'),
        url('fonts/Sigali.svg#Sigali') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


html, body {
    height: 100%;
}

body {
    padding: 0;
    margin: 0;
    color: #2d1a0b;
    font-family: 'Lato', Verdana, Sans;
    font-size: 15px;
    background-image: url("imgs/dashboard2026/bg-campus-blur.webp");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

body.natale {
    padding: 0;
    margin: 0;
    color: #DEB887;
    font-family: 'Lato', Verdana, Sans;
    font-size: 15px;
    background-image: url("imgs/natalemain.png");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

body.nataleaspen {
    padding: 0;
    margin: 0;
    color: #DEB887;
    font-family: 'Lato', Verdana, Sans;
    font-size: 15px;
    background-image: url("imgs/natalemainaspen.png");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

body.transparent_body {
    background-color: transparent;
    background-image: none;
}

#framecontentTop,
#framecontentLeft,
#framecontentRight,
#maincontent{
    position: fixed;
    box-sizing: border-box;
    border: 0;
    background: #120b06 url("imgs/decor/board-wood.png") center center / cover;
    box-shadow: none;
}

::-webkit-scrollbar{	height:3px;	width:5px; background-color: transparent; }
::-webkit-scrollbar-corner{	background-color: rgb(40,36,36);	}
::-webkit-scrollbar-track:vertical, ::-webkit-scrollbar-track:horizontal, ::-webkit-scrollbar-thumb:vertical, ::-webkit-scrollbar-thumb:horizontal, ::-webkit-scrollbar-track:vertical, ::-webkit-scrollbar-track:horizontal, ::-webkit-scrollbar-thumb:vertical, ::-webkit-scrollbar-thumb:horizontal{border-style:solid;	border-color:transparent;	}
::-webkit-scrollbar-thumb:vertical{	border-width:0;	border-left-width:1px;	}
::-webkit-scrollbar-thumb:horizontal{	border-width:0;	border-top-width:1px;	}
::-webkit-scrollbar-thumb{	border-radius: 10px;	background: rgb(222, 184, 135);	-webkit-box-shadow:inset 0 0 6px rgba(170,131,66,.7);	}
::-webkit-scrollbar-thumb:hover, 
::-webkit-scrollbar-thumb:active{	background: rgb(40,36,36);	-webkit-box-shadow:inset 0 0 6px rgba(170,131,66,.9);	}
::-webkit-scrollbar-track{	border-radius: 10px;	}
::-webkit-scrollbar-track:hover, 
::-webkit-scrollbar-track:active{	-webkit-box-shadow:inset 0 0 10px rgba(0,0,0,0.7);	border: 1px solid rgba(0,0,0,0);	}

div, ul, li {
    margin: 0;
    padding: 0;
}

div.forum_post_message ul {
	padding:20px;
}

.blank {
    clear: both;
}

a, a:visited {
    color: #2d1a0b;
    text-decoration: none;
    font-size: 15px;
}

a.fc-daygrid-more-link, a.fc-daygrid-more-link:visited {
	font-size: 14px;
}

a:hover {
    color: #2d1a0b;
    font-weight: bolder;
    text-decoration: none;
}

div.form_field table {
    margin: 5px auto;
}

input, textarea, select {
    width: 80%;
    padding: 5px;
    border: 1px solid #282424;
    background-color: #282424;
    color: #deb887;
    font-size: 14px;
    margin-bottom: 10px;
}

select {
    width: 83%;
    padding: 6px 10px;
    border: 1px solid #282424;
    background-color: #282424;
    color: #deb887;
    font-size: 14px;
}

input[type='submit'] {
    width: auto;
    margin: 5px 0 15px 0;
    height: 30px;
    text-transform: uppercase;
}

textarea {
    height: 100px;
}

textarea.aiuto {
    height: 400px;
}

textarea.aiuto_nuova {
    height: 200px;
}

div.form_label {
    font-size: 13px;
    font-weight: bolder;
    margin-top: 5px;
    margin-bottom: 2px;
    text-transform: uppercase;
    color: #282424;
}

div.form_info {
    font-size: 15px;
    margin-bottom: 15px;
    color: #282424;
}

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

/** * Stile dei messaggi d'avviso dell'engine */
div.warning, div.error {
    background-color: rgba(40, 36, 36, 0.6); /* rosso tenue e trasparente */
    border: 1px solid #DEB887; /* bordo rosso brunito */
    color: #DEB887; /* testo rosa chiaro */
    padding: 10px 15px;
    margin: 30px auto;
    font-weight: normal;
    text-align: center;
    font-size: 14px;
    border-radius: 4px;
    box-shadow: 0 0 8px rgba(40, 36, 36, 0.3);
    width: 80%;
    font-family: 'Lato';
}

div.contenitore_avvisocambio {
    width: 300px;
    height: 200px;
    float: right;
    margin: 200px 100px 0 0;
}

div.warning_cambiopass {
    font-family: 'Agressive_Winter';
    font-size: 20px;
    color: #282424;
}

div.link_back {
    text-align: center;
    background: linear-gradient(145deg, #2c2a28, #1e1c1b);
    border: solid 1px #e8d9b6;
    box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.05), 0 0 15px rgba(201, 179, 126, 0.2), 0 2px 5px rgba(0, 0, 0, 0.6);
    border-radius: 5px;
    color: #e8d9b6;
    padding: 5px 5px 8px 5px;
    font-family: 'Lato';
    font-size: 13px;
    text-transform: uppercase;
    min-width: 200px;
    max-width: 350px;
    height: 15px;
    margin: 5px auto;
}

div.link_back a{
        color: #e8d9b6;
}
div.link_back a:hover{
    text-decoration: none
}

/** * Logout */

div.logout_sfondo {
    height: 100%;
    width: 100%;
    position: relative;
    background-image: url(imgs/homeout.png);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}



div.logout_box {
  position: absolute;
  width: 600px;
  height: 410px;
  display: table-cell;
  top: 50%;
  left: 50%;
  margin: -385px 0 0 -315px;
  background: rgba(255, 248, 200, 0.15);
  border: 1px solid rgba(255, 255, 200, 0.3);
  border-radius: 15px;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 0 15px rgba(255, 215, 0, 0.3), 0 0 30px rgba(255, 255, 153, 0.1);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
}

div.logout_desc {
    width: 570px;
    height: 50px;
    color: rgba(255, 248, 200, 0.8);
    font-size: 20px;
    text-align: center;
}

div.logout_asc {
    width: 570px;
    height: 50px;
    color: rgba(255, 248, 200, 0.8);
    font-size: 20px;
    text-align: center;
}

div.logout_box a {
    text-decoration: none;
    color: #e5ce7d;
    font-size: 22px;
}

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

/** * Stile dei contenitori grigi con i bordini arrotondati
*/
div.presenti {
    margin: 5px auto;
    padding: 10px;
    width: 180px;
    background-color: #b9b9b9;
    border: solid 1px #444;
    -moz-border-radius: 5px; /* Bordi arrotondati */
    -webkit-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;
}

/*MENU SUPERIORE (avatar, link alla scheda, link alla gestione e link alla manutenzione*/

div.titolo_land {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    height: 100%;
    padding-left: 20px;
    box-sizing: border-box;
    background: url(imgs/decor/scudetto.png) left / contain no-repeat;
    font-family: "Cinzel", Georgia, serif;
    font-size: clamp(24px, 1.8vw, 36px);
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1;
    white-space: normal;
    color: #d9c982;
    text-shadow: 0 1px 1px rgba(255, 244, 186, 0.35), 0 2px 3px rgba(0, 0, 0, 0.85), 0 0 5px rgba(212, 185, 95, 0.22);
    filter: none;
}

div.top_menu{
    width: 200px;
    height: 685px;
}

div.pagina_top_menu{
	position:relative;
}

div.musica_natale{
	width: 170px;
    height: 75px;
    position:absolute;
    top:605px;
    left:10px;
}

div.menu_avatar{
    width: 280px;
    height: 206px;
    position:relative;
    top:10px;
    left:5px;
}

div.cornice_avatar{
	width: 280px;
    height: 206px;
    position:absolute;
    background: url(imgs/menu/studentcard.png);
	z-index: 2;
}

div.cornice_avatar_natale{
	width: 240px;
    height: 160px;
    position:absolute;
    background: url(imgs/menu/natalestudentcard.png);
	z-index: 2;
}

div.cornice_avatar_giochi{
	width: 240px;
    height: 160px;
    position:absolute;
    background: url(imgs/menu/poterestudentcard.png);
	z-index: 2;
}

div.cornice_avatar_cerche{
	width: 240px;
    height: 160px;
    position:absolute;
    background: url(imgs/menu/cerchestudentcard.png);
	z-index: 2;
}

div.miniav{
	position:absolute;
    top:52px;
    left:21px;
	z-index: 1;
}

img.miniav{
	width:100px;
    height:100px;
}

div.nome_pg_card {
    z-index:20; 
    position:absolute; 
    top:60px;
    right:10px;
    width:140px;
    height:90px;
    color:black;
    font-family:'Cinzel'; 
    font-size:13px;
    padding-top:5px;
    text-align:left;
    white-space:normal;
}

div.nome_card_lungo {
    z-index:20; 
    position:absolute; 
    top:155px;
    right:15px;
    width:250px;
    height:20px;
    color:black;
    font-family:'Cinzel'; 
    font-size:13px;
    padding-top:5px;
    text-align:center;
    white-space:normal;
}

/*MESSAGGI, FORUM E ALTRA ROBA*/

div.messages{
	position:absolute;
    top: 10px;
    left: 0px;
    width: 200px;
    height:104px;
}

div.online{
	position:absolute;
    top: 105px;
    left: 0px;
    width: 200px;
    height:104px;
}

div.forum{
	position:absolute;
    top: 210px;
    left: 0px;
    width: 200px;
    height:156px;
}

div.agenda{
	position:absolute;
    top: 315px;
    left: 10px;
    width: 200px;
    height:104px;
}


div.messagesoff{
	position:relative;
    top:0px;
    left:0px;
    width: 120px;
    height:50px;
}

div.messageson{
	position:relative;
    top:0px;
    left:0px;
    width: 65px;
    height:170px;
}

div.forums{
	position:relative;
    top:0px;
    left:0px;
    width: 65px;
    height:170px;
}

div.iframe_agenda{
	position:relative;
    top:0px;
    left:0px;
    width: 170px;
    height:104px;
}

div.messaggio_forum{
	position:absolute;
    top:0;
    left:0;
}

div.messaggio_forum_sub{
	position:absolute;
    top:55px;
    left:0;
}

div.messaggio_forum_down{
    position:absolute;
    bottom:5px;
    left:0;
}

div.messaggio_social_sub{
	position:absolute;
    bottom:0;
    left:0;
}

div.nr_messaggi_chat {
    position: absolute;
    top: 66px;
    left: 5px;
    transform: rotate(2deg);
    z-index:3;
    font-size: 10px;
    color: #ead488;
}

div.nr_presenti{
    position: absolute;
    top: 66px;
    left: 5px;
    transform: rotate(2deg);
    z-index:3;
    font-size: 10px;
    color: #ead488;
}

div.appuntamenti{
    width: 200px;
    height:150px;
    padding-top: 5px;
    text-align: center;
    font-size: 12px;
    transform: rotate(358deg);
    color: #ead488;
}

div.box_data{
	position: absolute;
    top: 800px;
    left: 8px;
    width: 121px;
    padding-top: 5px;
    text-align: center;
    font-size: 12px;
    transform: rotate(358deg);
    color: #ead488;
}

div.orologio{
	float: right;
    text-align: center;
    margin: 0 10px 0 0;
}

div.menu_aggiorna{
    position: absolute;
    top: 120px;
    left: 59px;
    width: 52px;
    height: 52px;
}

div.menu_aggiorna img {
    width: 50px;
    height: 50px;
}

div.menu_esci{
    position: absolute;
    top: 120px;
    left: 118px;
    width: 52px;
    height: 52px;
}

div.menu_esci img {
    width: 50px;
    height: 50px;
}

div.menu_gestione{
    position: absolute;
    top: 180px;
    left: 0;
    width: 82px;
    height: 52px;
}

div.menu_manutenzione{
    position: absolute;
    top: 180px;
    left: 88px;
    width: 82px;
    height: 52px;
}

div.link_agenda{
    position: absolute;
    top: 0;
    left: 0;
    width: 82px;
    height: 52px;
}

div.link_newsocial{
    position: absolute;
    top: 0;
    left: 88px;
    width: 82px;
    height: 52px;
}

div.pagina_info_location{
	position:absolute;
    top: 388px;
    left: 39px;
}

div.link_mappa{
    position: absolute;
    top: 120px;
    left: 0px;
    width: 52px;
    height: 52px;
}

div.menu{
	position:absolute;
    top:408px;
    left:8px;
    width:170px;
    height:230px;
}

div.output {
	margin: 0;
    padding: 18px;
    width: 180px;
    background-color: transparent;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0px;
    left: 0px;
    width: auto;
    box-sizing: border-box;
    overflow: auto;
    text-align: center;
}

div.popup {
	position:absolute;
    top: 0;
    bottom: 0;
    right: 0px;
    left: 0px;
    width: auto;
    overflow: auto;
    background: url(imgs/decor/board-wood.png) top left repeat transparent;
}

/*div.popup:has(.pagina_scheda),
div.popup:has(.pagina_scheda_png) {
    background: transparent !important;
}*/

div.link_uffici{
	position:absolute;
    top: 60px;
    left: 59px;
    width: 52px;
    height: 52px;
}

div.link_servizi{
	position:absolute;
    top: 60px;
    left: 0px;
    width: 52px;
    height: 52px;
}

div.link_manuali{
	position:absolute;
    top: 60px;
    left: 118px;
    width: 52px;
    height: 52px;
}

div.link_servizi,
div.link_uffici,
div.link_manuali,
div.link_mappa,
div.menu_aggiorna,
div.menu_esci,
div.menu_gestione,
div.menu_manutenzione,
div.link_agenda,
div.link_newsocial {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 2px solid #9a6a2f;
    border-radius: 7px;
    background:
        linear-gradient(180deg, rgba(30, 27, 22, 0.96), rgba(12, 12, 10, 0.96)),
        #171511;
    box-shadow:
        inset 0 0 0 1px rgba(238, 178, 86, 0.35),
        inset 0 0 0 4px rgba(0, 0, 0, 0.45),
        0 2px 3px rgba(0, 0, 0, 0.65);
}

div.link_servizi:before,
div.link_uffici:before,
div.link_manuali:before,
div.link_mappa:before,
div.menu_aggiorna:before,
div.menu_esci:before,
div.menu_gestione:before,
div.menu_manutenzione:before,
div.link_agenda:before,
div.link_newsocial:before {
    content: "";
    position: absolute;
    inset: 5px;
    border: 1px solid rgba(177, 121, 48, 0.7);
    border-radius: 4px;
    pointer-events: none;
}

div.link_servizi:hover,
div.link_uffici:hover,
div.link_manuali:hover,
div.link_mappa:hover,
div.menu_aggiorna:hover,
div.menu_esci:hover,
div.menu_gestione:hover,
div.menu_manutenzione:hover,
div.link_agenda:hover,
div.link_newsocial:hover
{
    border-color: #bd873d;
    background:
        linear-gradient(180deg, rgba(39, 35, 28, 0.98), rgba(17, 16, 13, 0.98)),
        #1d1a15;
}

div.link_servizi a,
div.link_uffici a,
div.link_manuali a,
div.link_mappa a,
div.menu_aggiorna a,
div.menu_esci a,
div.menu_gestione a,
div.menu_manutenzione a,
div.link_agenda a,
div.link_newsocial a
{
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

div.link_servizi img,
div.link_uffici img,
div.link_manuali img,
div.link_mappa img,
div.menu_aggiorna img,
div.menu_esci img,
div.menu_gestione img,
div.menu_manutenzione img,
div.link_agenda img,
div.link_newsocial img
{
    display: block;
    max-width: 32px;
    max-height: 32px;
    object-fit: contain;
}

div.link_sogno{
	position:absolute;
    top: 370px;
    left: 100px;
}

/** * Informazioni con anteprima luogo */
div.info_image {
    text-align: center;
}

/** * Men di gioco
*/
select#gotomap {
    display: block;
    width: 160px;
    margin: 0 auto 15px auto;
}

div.link_menu {
    font-size: 14px;
    border-bottom: solid 1px #2d1a0b;
}

div.link_menu a {
    display: block;
    text-align: center;
    color: #2d1a0b;
}

div.link_menu a.sprite {
    display: block;
    width: 50px;
    height: 50px;
    background: no-repeat top left;
}

div.link_menu a.sprite:hover {
    background-position: 0 100%;
}

/** * Posizionamento mappa cliccabile 
*/
div.mappaclick_map {
    margin: 20px auto;
    position:relative;
}

/** * Link testuali sulla mappa */
div.mappaclick_map a {
    font-size: 13px;
    font-weight: bolder;
}

/** * stile della tooltip di descrizione sulla mappa 
*/
div#descriptionLoc {
    position: absolute;
    bottom: 180px;
    left: 20px;
    width: 250px;
    height: 100px;
    overflow: auto;
    padding: 10px;
    font-size: 11px;
    font-family: 'Lato';
    text-align: justify;
    color: black;
    background: url('imgs/decor/paper.jpg');
    border: solid 1px black;
    border-radius: 20px;
    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 */
}

/** * Stili relativi all'elenco delle mappe in basso
*/
div.mappaclick_more {
    padding-top: 0px;
    width: 162px;
    height: 309px;
    position: absolute;
    top: 135px;
    left: 38px;
    overflow: auto;
    text-align: left;
}

div.mappaclick_more a {
    font-family: 'Lato';
    color: black;
    font-weight: normal;
    font-size: 14px;
}

div.box_luoghi{
    padding-top: 0px;
    width: 170px;
    height: 315px;
    position: absolute;
    top: 135px;
    left: 215px;
    overflow: auto;
    text-align: left;
    font-family: 'Lato';
    color: black;
}

div.link_luogo a{
    font-family: 'Lato';
    color: black;
    font-weight: normal;
    font-size: 14px;
}

/* Pulsanti testuali laterali */
div.messages,
div.online,
div.forum,
div.agenda {
    left: 8px;
    width: 170px;
}

div.messages {
    top: 18px;
}

div.online {
    top: 130px;
}

div.forum {
    top: 242px;
}

div.agenda {
    top: 354px;
}

div.messagesoff,
div.messageson,
div.iframe_agenda {
    width: 170px;
    height: 104px;
}

div.forums {
    width: 170px;
    height: 156px;
}

iframe.iframe_messaggi,
iframe.iframe_online,
iframe.iframe_bacheca,
div.agenda iframe {
    width: 170px;
    height: 104px;
}

iframe.iframe_forums {
    width: 170px;
    height: 160px;
}

div.messaggio_forum,
div.messaggio_forum_sub,
div.messaggio_social_sub,
div.messaggio_forum_down {
    position: absolute;
    left: 0;
    bottom: auto;
    width: 170px;
}

div.messaggio_forum {
    top: 0;
}

div.messaggio_forum_sub,
div.messaggio_social_sub {
    top: 56px;
}

div.messaggio_forum_down {
    top: 112px;
}

div.messaggio_forum a,
div.messaggio_forum a:visited,
div.messaggio_forum_sub a,
div.messaggio_forum_sub a:visited,
div.messaggio_social_sub a,
div.messaggio_social_sub a:visited,
div.messaggio_forum_down a,
div.messaggio_forum_down a:visited {
    position: relative;
    display: block;
    width: 170px;
    height: 48px;
    min-height: 48px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    text-decoration: none;
}

div.messaggio_forum a:before,
div.messaggio_forum_sub a:before,
div.messaggio_social_sub a:before,
div.messaggio_forum_down a:before {
    content: none;
}

div.messaggio_pulsante,
div.chat_pulsante,
button.ticket_pulsante,
div.bacheca_pulsante,
div.agenda_pulsante {
    position: relative;
    box-sizing: border-box;
    width: 170px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0 38px 0 18px;
    overflow: hidden;
    border: 2px solid #9a6a2f;
    border-radius: 7px;
    background:
        linear-gradient(180deg, rgba(30, 27, 22, 0.96), rgba(12, 12, 10, 0.96)),
        #171511;
    box-shadow:
        inset 0 0 0 1px rgba(238, 178, 86, 0.35),
        inset 0 0 0 4px rgba(0, 0, 0, 0.45),
        0 2px 3px rgba(0, 0, 0, 0.65);
    color: #c9933f;
    font-family: 'Cinzel', Georgia, serif;
    font-size: 13px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    text-transform: uppercase;
    text-shadow:
        1px 1px 0 #050505,
        0 0 5px rgba(236, 167, 70, 0.35);
    cursor: pointer;
}

div.messaggio_pulsante:before,
div.chat_pulsante:before,
button.ticket_pulsante:before,
div.bacheca_pulsante:before,
div.agenda_pulsante:before {
    content: "";
    position: absolute;
    inset: 5px;
    border: 1px solid rgba(177, 121, 48, 0.7);
    border-radius: 4px;
    pointer-events: none;
}

div.messaggio_pulsante:hover,
div.chat_pulsante:hover,
button.ticket_pulsante:hover,
div.bacheca_pulsante:hover,
div.agenda_pulsante:hover {
    color: #e1b45c;
    border-color: #bd873d;
    background:
        linear-gradient(180deg, rgba(39, 35, 28, 0.98), rgba(17, 16, 13, 0.98)),
        #1d1a15;
}

button.ticket_pulsante {
    appearance: none;
    -webkit-appearance: none;
    border-style: solid;
}

div.messaggio_pulsante {
    overflow: visible;
}

span.ticket_pulsante_testo {
    position: relative;
    z-index: 1;
}

div.messaggio_pulsante_non_letto,
div.bacheca_pulsante_non_letto,
div.agenda_pulsante_non_letto {
    border-color: #d4a24b;
    color: #edc36d;
}

div.chat_pulsante_natale,
div.bacheca_pulsante_natale,
div.agenda_pulsante_natale {
    border-color: #b8914d;
}

div.nr_messaggi_chat,
div.nr_presenti,
div.chat_contatore,
div.bacheca_contatore,
div.bacheca_notifica,
div.agenda_contatore,
span.messaggio_notifica_non_letto {
    position: absolute;
    top: 50%;
    right: 9px;
    left: auto;
    box-sizing: border-box;
    width: 22px;
    min-width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    transform: translateY(-50%);
    z-index: 2;
    border: 1px solid #9a6a2f;
    border-radius: 50%;
    background: rgba(14, 13, 11, 0.96);
    box-shadow:
        inset 0 0 0 2px rgba(0, 0, 0, 0.35),
        0 1px 3px rgba(0, 0, 0, 0.6);
    color: #f0cf79;
    font-family: 'Cinzel', Georgia, serif;
    font-size: 11px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-shadow: 1px 1px 0 #050505;
}

span.ticket_notifica_nuovi {
    display: flex;
}

div.ticket_contatore_nuovi {
    float: right;
}

div.ticket_notifica_contenitore {
    float: right;
    margin: 0;
}

div.ticket_contatore_nuovi span.ticket_notifica_nuovi {
    position: static;
    display: inline;
    width: auto;
    min-width: 0;
    height: auto;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: inherit;
    font: inherit;
    text-shadow: inherit;
}

div.messaggio_social_sub {
    display: block;
}

div.messaggio_pulsante span.messaggio_notifica_non_letto,
div.messaggio_social_sub div.agenda_contatore {
    top: 50%;
    right: 9px;
}

/* Mappaclick 2026 */
div.output:has(.pagina_mappaclick) {
    padding: 8px;
    overflow: hidden;
    text-align: left;
}

div.pagina_mappaclick {
    width: 100%;
    height: 100%;
    min-height: 0;
    box-sizing: border-box;
    padding: 0;
    overflow: hidden;
    font-family: 'Lato', Verdana, sans-serif;
}

div.pagina_mappaclick div.mappaclick_map {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 0;
    max-height: none;
    margin: 0;
    padding: 12px;
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(220px, .72fr);
    grid-template-rows: minmax(186px, .44fr) minmax(0, 1fr) minmax(88px, .18fr);
    gap: 12px;
    align-items: stretch;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, .04), transparent 18%, transparent 82%, rgba(255, 255, 255, .035)),
        linear-gradient(180deg, rgba(45, 26, 11, .72), rgba(10, 7, 5, .9)),
        url("imgs/decor/board-wood.png") center center / cover;
    border: 1px solid rgba(215, 171, 90, .48);
    box-shadow:
        0 0 0 5px rgba(8, 5, 3, .72),
        0 0 0 6px rgba(205, 155, 76, .22),
        inset 0 0 0 1px rgba(255, 231, 165, .18),
        inset 0 0 42px rgba(0, 0, 0, .74),
        0 10px 24px rgba(0, 0, 0, .45);
}

div.pagina_mappaclick div.mappaclick_map:before,
div.pagina_mappaclick div.mappaclick_map:after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 2;
}

div.pagina_mappaclick div.mappaclick_map:before {
    inset: 8px;
    border: 1px solid rgba(218, 174, 91, .28);
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .55);
}

div.pagina_mappaclick div.mappaclick_map:after {
    right: 18px;
    top: 18px;
    width: 88px;
    height: 88px;
    border-radius: 50%;
    opacity: .12;
    border: 1px solid #2d1a0b;
    box-shadow: inset 0 0 0 6px rgba(45, 26, 11, .45);
}

div.pagina_mappaclick div.box_meteo {
    display: none;
}

div.pagina_mappaclick div.mappaclick_location_panel,
div.pagina_mappaclick div.box_luoghi,
div.pagina_mappaclick div.mappaclick_more,
div.pagina_mappaclick div.accesso_privata {
    position: relative;
    inset: auto;
    width: auto;
    height: auto;
    min-width: 0;
    min-height: 0;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 22px 22px 18px;
    box-sizing: border-box;
    color: #2c1b0d;
    overflow: hidden;
    border: 1px solid rgba(72, 43, 17, .78);
    border-radius: 6px;
    background-image:
        radial-gradient(ellipse at center, rgba(255, 242, 200, 0) 48%, rgba(82, 48, 16, .28) 100%),
        linear-gradient(rgba(244, 222, 171, .2), rgba(222, 188, 120, .18)),
        url("imgs/decor/paper.jpg");
    background-repeat: no-repeat, repeat, repeat;
    background-position: center center, center center, center center;
    background-size: 100% 100%, auto, 260px auto;
    box-shadow:
        inset 0 0 0 1px rgba(255, 243, 204, .48),
        inset 0 0 34px rgba(58, 32, 10, .22),
        inset 0 -26px 36px rgba(92, 55, 20, .18),
        0 3px 0 rgba(35, 20, 8, .7),
        0 13px 22px rgba(0, 0, 0, .38);
    z-index: 3;
}

div.pagina_mappaclick div.mappaclick_location_panel:after,
div.pagina_mappaclick div.box_luoghi:after,
div.pagina_mappaclick div.mappaclick_more:after,
div.pagina_mappaclick div.accesso_privata:after,
div.box_meteo:after,
div.link_sogno:after {
    content: "";
    position: absolute;
    inset: 0;
    border: 14px solid transparent;
    border-image: url("imgs/decor/bordiriquadri.png") 64 round;
    border-radius: 6px;
    pointer-events: none;
    z-index: 12;
}

div.pagina_mappaclick div.mappaclick_location_panel {
    grid-column: 1;
    grid-row: 1 / 4;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
}

div.pagina_mappaclick a.mappaclick_location_link {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    width: 100%;
    height: 100%;
    min-height: 0;
    color: inherit;
    text-decoration: none;
    overflow: hidden;
}

div.pagina_mappaclick div.mappaclick_location_label {
    display: grid;
    grid-template-rows: auto auto;
    gap: 8px;
    min-height: 0;
    margin: 0 0 12px;
    color: #ffe3ad;
}

div.pagina_mappaclick div.mappaclick_location_label:before {
    content: none;
    display: none;
}

div.pagina_mappaclick div.mappaclick_location_heading {
    justify-self: start;
}

div.pagina_mappaclick div.mappaclick_location_heading span,
div.pagina_mappaclick div.mappaclick_location_label span {
    display: block;
    margin: 0 0 2px;
    font-size: 11px;
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: 0;
}

div.pagina_mappaclick div.mappaclick_location_label strong {
    display: block;
    font-family: 'Cinzel', Georgia, serif;
    font-size: clamp(24px, 2.1vw, 32px);
    line-height: 1;
    font-weight: normal;
    text-transform: uppercase;
    letter-spacing: 0;
}

div.pagina_mappaclick div.mappaclick_location_status {
    justify-self: end;
    display: grid;
    grid-template-columns: max-content max-content;
    gap: 20px;
    align-items: center;
    max-width: none;
    margin: 0 6px 0 0;
}

div.pagina_mappaclick div.mappaclick_status_item {
    display: grid;
    grid-template-columns: 38px max-content;
    gap: 8px;
    align-items: center;
}

div.pagina_mappaclick div.mappaclick_status_icon img,
div.pagina_mappaclick div.mappaclick_status_item img {
    width: 38px !important;
    height: 38px !important;
    max-width: 38px !important;
    max-height: 38px !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    object-fit: contain;
}

div.pagina_mappaclick div.mappaclick_status_item strong {
    color: #2d1a0b;
    font-family: 'Cinzel', Georgia, serif;
    font-size: 18px;
    line-height: 1;
    font-weight: normal;
    text-transform: none;
}

div.pagina_mappaclick div.mappaclick_status_item span {
    display: block;
    margin-top: 2px;
    color: #2d1a0b;
    font-family: 'Lato', Verdana, sans-serif;
    font-size: 11px;
    line-height: 1.15;
    text-transform: none;
}

div.pagina_mappaclick div.mappaclick_location_image {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

div.pagina_mappaclick div.mappaclick_location_panel img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    aspect-ratio: auto;
    box-sizing: border-box;
    object-fit: cover;
    object-position: center;
    border: 1px solid rgba(66, 39, 15, .72);
    box-shadow:
        inset 0 0 0 1px rgba(255, 239, 190, .18),
        0 2px 0 rgba(45, 26, 10, .5),
        0 8px 18px rgba(0, 0, 0, .2);
}

div.pagina_mappaclick div.mappaclick_location_image #descriptionLoc {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: auto;
    width: auto;
    height: auto;
    max-height: 46%;
    min-height: 0;
    overflow: auto;
    padding: 14px 18px;
    box-sizing: border-box;
    border: 0;
    border-top: 1px solid rgba(23, 13, 5, .74);
    border-radius: 0;
    background:
        linear-gradient(rgba(246, 225, 181, .9), rgba(234, 203, 145, .94)),
        url("imgs/decor/paper.jpg") center center / 260px auto repeat;
    color: #1d1208;
    font-family: 'Lato', Verdana, sans-serif;
    font-size: 15px;
    line-height: 1.32;
    text-align: left;
    box-shadow:
        0 -10px 22px rgba(0, 0, 0, .32),
        inset 0 1px 0 rgba(255, 244, 206, .5);
    z-index: 4;
}

div.pagina_mappaclick div.box_luoghi {
    grid-column: 2;
    grid-row: 2;
}

div.pagina_mappaclick div.mappaclick_more {
    grid-column: 2;
    grid-row: 1;
}

div.pagina_mappaclick div.box_luoghi,
div.pagina_mappaclick div.mappaclick_more {
    display: flex;
    flex-direction: column;
}

div.pagina_mappaclick div.mappaclick_scroll {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 4px;
}

div.pagina_mappaclick div.mappaclick_more:before,
div.pagina_mappaclick div.box_luoghi:before {
    display: block;
    margin: 0 0 8px;
    color: #3b240e;
    font-family: 'Cinzel', Georgia, serif;
    font-size: 19px;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0;
}

div.pagina_mappaclick div.mappaclick_more:before {
    content: "Mappe";
}

div.pagina_mappaclick div.box_luoghi:before {
    content: "Luoghi";
}

div.pagina_mappaclick div.link_luogo,
div.pagina_mappaclick div.link_map {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    line-height: 1.2;
}

div.pagina_mappaclick div.link_luogo a,
div.pagina_mappaclick div.link_map a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 20px;
    padding: 2px 0;
    color: #1f1409;
    font-size: 13px;
    font-weight: normal;
    text-decoration: none;
    border-bottom: 1px solid rgba(76, 46, 19, .22);
}

div.pagina_mappaclick div.link_luogo a:after,
div.pagina_mappaclick div.link_map a:after {
    content: ">";
    color: rgba(62, 38, 16, .66);
}

div.pagina_mappaclick div.link_luogo a:hover,
div.pagina_mappaclick div.link_map a:hover {
    color: #6e4316;
    font-weight: normal;
}

div.pagina_mappaclick div.link_luogo img,
div.pagina_mappaclick div.link_map img {
    max-width: 100%;
    max-height: 32px;
    object-fit: contain;
}

div.pagina_mappaclick div.accesso_privata {
    grid-column: 2;
    grid-row: 3;
    display: grid;
    align-content: center;
}

div.pagina_mappaclick div.accesso_privata form.form_gioco {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto 30px;
    gap: 7px 8px;
    align-items: center;
    margin: 0;
}

div.pagina_mappaclick div.form_label_pvt {
    grid-column: 1 / -1;
    margin: 0;
    color: #2d1a0b;
    font-family: 'Cinzel', Georgia, serif;
    font-size: 17px;
    line-height: 1;
}

div.pagina_mappaclick div.accesso_privata span {
    display: none;
}

div.pagina_mappaclick input.input_pass_privata,
div.pagina_mappaclick input.input_submit_privata {
    height: 30px;
    margin: 0;
    box-sizing: border-box;
}

div.pagina_mappaclick input.input_pass_privata {
    width: 100%;
    min-width: 0;
    color: #ead9ad;
    background: rgba(15, 11, 8, .88);
    border: 1px solid rgba(86, 53, 24, .75);
    border-radius: 4px;
}

div.pagina_mappaclick input.input_submit_privata {
    width: auto;
    min-width: 76px;
    padding: 0 12px;
    color: #d9ae5b;
    font-size: 14px;
    line-height: 30px;
    background: linear-gradient(180deg, #221812, #0d0a08);
    border: 1px solid rgba(217, 174, 91, .56);
    border-radius: 4px;
}

/* Colonna sinistra: card e box rapidi */
div.menu_avatar {
    top: 20px;
    left: 10px;
    width: 280px;
    height: 206px;
}

div.appuntamenti_panel {
    position: absolute;
    top: 445px;
    left: 10px;
    box-sizing: border-box;
    width: 280px;
    height: 145px;
    padding: 15px;
    overflow: hidden;
    color: #2d1a0b;
    border: 1px solid rgba(72, 43, 17, .78);
    border-radius: 5px;
    background-image:
        url("imgs/decor/puntina.png"),
        url("imgs/decor/puntina.png"),
        radial-gradient(ellipse at center, rgba(255, 246, 207, .26) 0%, rgba(224, 185, 115, .12) 45%, rgba(65, 36, 12, .28) 100%),
        linear-gradient(180deg, rgba(255, 242, 198, .28), rgba(128, 77, 24, .14)),
        url("imgs/decor/paper.jpg");
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, repeat;
    background-position: 6px 6px, calc(100% - 6px) 6px, center center, center center, center center;
    background-size: 12px 12px, 12px 12px, 100% 100%, 100% 100%, 260px auto;
    box-shadow:
        inset 0 0 0 1px rgba(255, 239, 190, .46),
        inset 0 0 18px rgba(64, 36, 12, .34),
        inset 0 -18px 26px rgba(77, 45, 16, .22),
        0 2px 0 rgba(30, 17, 6, .78),
        0 10px 18px rgba(0, 0, 0, .36);
    z-index: 3;
}

div.appuntamenti_panel:after,
div.link_sogno:after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 5px;
    background:
        linear-gradient(90deg, rgba(48, 28, 10, .92), rgba(185, 130, 56, .82), rgba(48, 28, 10, .92)) top left / 100% 3px no-repeat,
        linear-gradient(90deg, rgba(48, 28, 10, .90), rgba(188, 132, 58, .76), rgba(48, 28, 10, .90)) bottom left / 100% 3px no-repeat,
        linear-gradient(180deg, rgba(48, 28, 10, .90), rgba(188, 132, 58, .74), rgba(48, 28, 10, .90)) top left / 3px 100% no-repeat,
        linear-gradient(180deg, rgba(48, 28, 10, .90), rgba(188, 132, 58, .74), rgba(48, 28, 10, .90)) top right / 3px 100% no-repeat;
    box-shadow:
        inset 0 0 0 1px rgba(46, 26, 8, .92),
        inset 0 0 0 3px rgba(238, 198, 116, .36),
        inset 0 0 0 5px rgba(84, 50, 17, .62),
        inset 0 0 0 7px rgba(255, 237, 179, .16),
        inset 0 0 18px rgba(42, 23, 7, .36);
    pointer-events: none;
    z-index: 12;
}

div.box_meteo {
    position: absolute;
    top: 250px;
    left: 10px;
    box-sizing: border-box;
    width: 280px;
    height: 132px;
    padding: 38px 18px 14px;
    overflow: hidden;
    color: #2d1a0b;
    font-family: 'Lato', Verdana, sans-serif;
    font-size: 0;
    text-transform: none;
    border: 1px solid rgba(72, 43, 17, .78);
    box-shadow:
        inset 0 0 0 1px rgba(255, 243, 204, .48),
        inset 0 0 34px rgba(58, 32, 10, .22),
        inset 0 -26px 36px rgba(92, 55, 20, .18),
        0 3px 0 rgba(35, 20, 8, .7),
        0 13px 22px rgba(0, 0, 0, .38);
    background-image:
        url("imgs/decor/puntina.png"),
        url("imgs/decor/puntina.png"),
        radial-gradient(ellipse at center, rgba(255, 242, 200, 0) 48%, rgba(82, 48, 16, .28) 100%),
        linear-gradient(rgba(244, 222, 171, .2), rgba(222, 188, 120, .18)),
        url("imgs/decor/paper.jpg");
    background-repeat: no-repeat, no-repeat, no-repeat, repeat, repeat;
    background-position: 6px 6px, calc(100% - 6px) 6px, center center, center center, center center;
    background-size: 12px 12px, 12px 12px, 100% 100%, auto, 260px auto;
}

div.box_meteo:before {
    content: "METEO";
    position: absolute;
    top: 13px;
    left: 0;
    right: 0;
    color: #2d1a0b;
    font-family: 'Cinzel', Georgia, serif;
    font-size: 18px;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
}

div.box_meteo * {
    font-size: initial;
}

div.link_sogno {
    position: absolute;
    top: 405px;
    left: 10px;
    box-sizing: border-box;
    width: 132px;
    height: 132px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none;
    z-index: 3;
    border: 1px solid rgba(50, 29, 10, .86);
    border-radius: 5px;
    background-image:
        radial-gradient(ellipse at center, rgba(255, 246, 207, .24) 0%, rgba(224, 185, 115, .10) 42%, rgba(65, 36, 12, .26) 100%),
        linear-gradient(90deg, rgba(54, 30, 10, .32), transparent 18%, transparent 82%, rgba(54, 30, 10, .30)),
        linear-gradient(180deg, rgba(255, 242, 198, .28), rgba(128, 77, 24, .14)),
        url("imgs/decor/paper.jpg");
    background-repeat: no-repeat, no-repeat, no-repeat, repeat;
    background-position: center center, center center, center center, center center;
    background-size: 100% 100%, 100% 100%, 100% 100%, 220px auto;
    box-shadow:
        inset 0 0 0 1px rgba(255, 239, 190, .46),
        inset 0 0 16px rgba(64, 36, 12, .34),
        inset 0 -18px 26px rgba(77, 45, 16, .22),
        0 2px 0 rgba(30, 17, 6, .78),
        0 10px 18px rgba(0, 0, 0, .36);
}

div.link_sogno:before {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    background-image: url("imgs/decor/puntina.png"), url("imgs/decor/puntina.png");
    background-repeat: no-repeat, no-repeat;
    background-position: 6px 6px, calc(100% - 6px) 6px;
    background-size: 12px 12px, 12px 12px;
    pointer-events: none;
    z-index: 13;
}

div.link_sogno:after {
    box-shadow:
        inset 0 0 0 1px rgba(46, 26, 8, .92),
        inset 0 0 0 3px rgba(238, 198, 116, .36),
        inset 0 0 0 5px rgba(84, 50, 17, .62),
        inset 0 0 0 7px rgba(255, 237, 179, .16),
        inset 0 0 18px rgba(42, 23, 7, .36),
        inset 0 10px 16px rgba(255, 241, 190, .16),
        inset 0 -10px 16px rgba(39, 22, 7, .24);
}

div.link_sogno a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
}

div.link_sogno img {
    display: block;
    width: 112px;
    height: 112px;
    max-width: 112px;
    max-height: 112px;
    object-fit: contain;
}

div.pagina_info_location .mappaclick_side_weather {
    position: absolute;
    top: 5px;
    box-sizing: border-box;
    width: 235px;
    height: 210px;
    min-height: 0;
    max-height: 210px;
    margin: 0;
    padding: 10px 5px 12px;
    display: grid;
    grid-template-columns: 0fr;
    grid-template-rows: 42px 40px 18px;
    justify-items: center;
    align-items: center;
    overflow: hidden;
    border-radius: 6px;
    color: #2d1a0b;
    z-index: 1;
}

div.pagina_info_location .mappaclick_side_weather h3,
div.pagina_info_location .weather_row {
    display: none;
}

div.pagina_info_location .mappaclick_side_weather .link_sogno {
    position: static;
    width: 200px;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 0;
    background: transparent;
    background-image: none;
    box-shadow: none;
}

div.pagina_info_location .mappaclick_side_weather .link_sogno:before,
div.pagina_info_location .mappaclick_side_weather .link_sogno:after {
    content: none;
    display: none;
}

div.pagina_info_location .mappaclick_side_weather .link_sogno a,
div.pagina_info_location .mappaclick_side_weather .link_sogno img,
div.pagina_info_location .mappaclick_onair a,
div.pagina_info_location .mappaclick_onair img {
    display: block;
    width: 210px !important;
    height: 100px !important;
    max-width: 242px !important;
    max-height: 155px !important;
    object-fit: contain;
}

div.pagina_info_location .mappaclick_onair {
    width: 211px;
    height: 65px;
}

div.pagina_info_location .mappaclick_admin_tools {
    position: absolute;
    top: 135px;
    left: -5px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 133px;
    width: 100%;
    height: 25px;
}

div.pagina_info_location .special_pages {
    position: absolute;
    top: 120px;
    left: 80px;
    width: 63px;
    height: 63px;
}

div.pagina_info_location .mappaclick_admin_tools a,
div.pagina_info_location .mappaclick_admin_tools img {
    width: 50px !important;
    height: 50px !important;
    max-width: 50px !important;
    max-height: 50px !important;
    object-fit: contain;
}

div.appuntamenti_panel .weather_datetime {
    position: absolute;
    right: 16px;
    bottom: 8px;
    display: flex;
    align-items: center;
    gap: 4px;
    color: #2d1a0b;
    font-family: 'Lato', Verdana, sans-serif;
    font-size: 10px;
    line-height: 1;
    text-align: right;
    opacity: .85;
    z-index: 14;
}

div.pagina_info_location .weather_datetime .orologio {
    float: none;
    margin: 0;
}

div.titolo_appuntamenti {
    font-family: 'Cinzel';
    text-align: center;
}

div.appuntamenti_panel marquee {
    display: block;
    width: 100%;
    height: 100%;
}

div.appuntamenti_panel div.appuntamenti {
    width: 240px;
    height: 100px;
    padding: 0 5px 0 0;
    color: #2d1a0b;
    font-size: 12px;
    line-height: 1.25;
    text-align: justify;
    transform: none;
    overflow: auto;
}

div.appuntamenti_panel div.appuntamenti > div:first-child {
    margin-bottom: 8px;
    font-family: 'Cinzel', Georgia, serif;
    font-size: 14px;
    text-transform: uppercase;
}

div.appuntamenti_panel .titolo_appuntamento {
    margin-top: 8px;
    font-weight: bold;
}

div.appuntamenti_panel .descrizione_appuntamento {
    font-size: 11px;
}

div.orario_appuntamento {
    font-family: 'Cinzel';
    font-size: 13px;
    padding: 2px;
    border-top: solid 1px #282424;
    border-bottom: solid 1px #282424;
    text-align: center;
}

div.titolo_appuntamento {
    font-family: 'Cinzel';
    font-size: 13px;
}

div.descrizione_appuntamento {
    font-family: 'Lato';
    font-size: 11px;
    text-transform: capitalize;
}

body:has(.pagina_mappaclick) div.menu_gestione,
body:has(.pagina_mappaclick) div.menu_manutenzione {
    display: none;
}

body:has(.pagina_mappaclick) div.appuntamenti_panel {
    top: 230px;
    height: 160px;
}

div.scudetto {
    background: url(imgs/decor/scudettoverticale.png);
    width: 300px;
    height: 700px;
    position: absolute;
    bottom: 0;
    z-index: 0;
}

@media (max-height: 820px) {
    div.pagina_mappaclick div.mappaclick_map {
        grid-template-rows: minmax(186px, .44fr) minmax(0, 1fr) minmax(88px, .18fr);
        gap: 10px;
        padding: 11px;
    }

    div.pagina_mappaclick div.mappaclick_location_panel,
    div.pagina_mappaclick div.box_luoghi,
    div.pagina_mappaclick div.mappaclick_more,
    div.pagina_mappaclick div.accesso_privata {
        padding: 18px 18px 14px;
        background-size: 100% 100%, auto, 240px auto;
    }
}

@media (max-width: 980px) {
    div.output:has(.pagina_mappaclick) {
        overflow: auto;
    }

    div.pagina_mappaclick {
        height: auto;
        overflow: visible;
    }

    div.pagina_mappaclick div.mappaclick_map {
        height: auto;
        min-height: 0;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto auto;
    }

    div.pagina_mappaclick div.mappaclick_location_panel,
    div.pagina_mappaclick div.box_luoghi,
    div.pagina_mappaclick div.mappaclick_more,
    div.pagina_mappaclick div.accesso_privata {
        grid-column: 1;
        grid-row: auto;
    }

    div.pagina_mappaclick div.mappaclick_location_panel img,
    div.pagina_mappaclick div.mappaclick_location_image {
        height: auto;
        aspect-ratio: 16 / 8;
    }

    div.pagina_mappaclick div.mappaclick_location_image #descriptionLoc {
        max-height: 58%;
        font-size: 14px;
    }
}

/* RADIO ON AIR */

div.radio_shell {
    width: 620px;
    height: 400px;
    margin: 18px auto;
    font-family: 'Lato', serif;
    background: url('imgs/decor/pannelloonair.png');
    padding: 20px;
}

div.radio_grid {
    display: grid;
    grid-template-columns: 155px 1fr;
    gap: 1px;
}

div.radio_title {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
    color: #d7b46a;
    font-family: 'Cinzel';
    font-size: 30px;
    margin-top: 4px;
}

div.radio_stations {
  height: 285px;
  overflow: auto;
  padding: 10px;
  background: none;
  border: none;
  box-shadow: none;
}

.radio_station {
  display: block;
  width: 100%;
  margin: 0 0 8px;
  padding: 5px !important;
  border: 1px solid #4f4328;
  background: #211d24;
  color: #FAEBD7;
  cursor: pointer;
  text-align: left;
}

.radio_meta {
  min-height: 10px !important;
  font-size: 12px;
  color: #c8bda7;
  font-family: 'Lato';
}

div.radio_track {
  display: block;
  width: 100%;
  padding: 5px 8px;
  margin-bottom: 0px;
  border: 0;
  background: transparent;
  color: #c8bda7;
  text-align: left;
  cursor: pointer;
}

.radio_player {
    width: 405px !important;
    height: 328px !important;
    border: 1px solid #6f5b31;
    background: #17151a;
    padding: 5px !important;
    box-shadow: 0 0 18px rgba(0, 0, 0, .45);
    
}

.radio_now {
    margin: 16px 0 10px;
    font-size: 18px;
    text-transform: uppercase;
    color: #d7b46a;
    min-height: 25px !important;
    text-align: center;
}

.radio_tracks {
    max-height: 165px !important;
    overflow: auto;
    margin-top: 0px !important;
    border-top: 1px solid #3d3320;
    padding-top: 9px !important;
}

.radio_controls {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 10px 0 10px 62px !important;
}

/* Halloween 2026. Theme-local overrides of the existing layout rules.
   Body specificity keeps these rules above the shared dashboard geometry and
   preserves the existing PHP, links, permissions and iframe refresh logic. */
:root {
    --hw-ink: #25150c;
    --hw-copper: #b45b1b;
    --hw-gold: #efb45e;
    --hw-edge: clamp(16px, 2vw, 34px);
    --hw-left: 300px;
    --hw-right: 200px;
    --hw-header: 124px;
    --hw-skull-size: 32px;
    --hw-paper: linear-gradient(#120b08a8, #120b0800 max(27%, 56px)), radial-gradient(ellipse at center, #f2d4a126 40%, #43200c70 100%), url("imgs/decor/paper.jpg") center / 680px auto;
    --hw-frame: inset 0 0 0 1px #efb45e7a, inset 0 0 0 4px #170b06, inset 0 0 0 5px #b45b1b, inset 0 0 22px #351308a6, 0 3px 9px #000b;
}

body:has(#maincontent) {
    /* Un'unica scala per entrambi gli assi: lo sfondo si ritaglia senza deformarsi. */
    background: #100c09 url("imgs/halloween/surround.webp") center / cover fixed no-repeat;
    color: var(--hw-ink);
}

@media (max-aspect-ratio: 1/1) {
    body:has(#maincontent) {
        /* In verticale conserva castello e zucca sul lato destro dell'illustrazione. */
        background-position: right top;
    }
}

/* The outer artwork remains visible around and below the working panels. */
body:has(#maincontent)::before {
    content: "";
    position: fixed;
    inset: var(--hw-edge);
    border: 1px solid #8c431d;
    border-radius: 15px;
    box-shadow: inset 0 0 0 3px #090706, inset 0 0 0 4px #b66625, 0 0 16px #000b;
    pointer-events: none;
    z-index: 10;
}


/* One subtle frosted-glass surface behind the entire dashboard. The panels
   remain above it, so their text and location images stay sharp. */
body:has(#maincontent)::after {
    content: "";
    position: fixed;
    inset: var(--hw-edge);
    border-radius: 15px;
    background: rgba(34, 31, 28, .22);
    -webkit-backdrop-filter: blur(3px) saturate(.85);
    backdrop-filter: blur(3px) saturate(.85);
    box-shadow: inset 0 1px 0 rgba(255, 228, 190, .08);
    pointer-events: none;
    z-index: 1;
}

body #framecontentTop,
body #framecontentLeft,
body #framecontentRight,
body #maincontent {
    position: fixed;
    box-sizing: border-box;
    border: 0;
    background: transparent;
    box-shadow: none;
}

body:has(#framecontentTop) #framecontentTop {
    top: var(--hw-edge);
    left: calc(var(--hw-edge) + var(--hw-left) + 12px);
    right: calc(var(--hw-edge) + var(--hw-right) + 12px);
    height: var(--hw-header);
    border-radius: 0;
    overflow: hidden;
}

body:has(#framecontentTop) #framecontentLeft {
    top: var(--hw-edge);
    bottom: var(--hw-edge);
    left: var(--hw-edge);
    width: var(--hw-left);
    border-radius: 0;
    overflow: hidden;
}

body #framecontentRight {
    top: var(--hw-edge);
    bottom: var(--hw-edge);
    right: var(--hw-edge);
    width: var(--hw-right);
    border-radius: 0;
    overflow: hidden;
}

body:has(#framecontentTop) #maincontent {
    top: calc(var(--hw-edge) + var(--hw-header) + 12px) !important;
    bottom: var(--hw-edge);
    left: calc(var(--hw-edge) + var(--hw-left) + 12px);
    right: calc(var(--hw-edge) + var(--hw-right) + 12px);
}

/* Chat pages render only the right rail, without the top and left frames. */
body:has(#maincontent):not(:has(#framecontentTop)) #maincontent {
    top: var(--hw-edge) !important;
    left: var(--hw-edge);
    right: calc(var(--hw-edge) + var(--hw-right) + 12px);
    bottom: var(--hw-edge);
    background: #100d0b url("imgs/decor/board-wood.png") center / cover;
}

body div.titolo_land {
    padding: 0 24px;
    background: url("imgs/decor/scudetto.png") left center / 76% 100% no-repeat;
    color: #ffd596;
    font-size: clamp(22px, 1.85vw, 36px);
    line-height: 1.18;
    text-shadow: 0 2px 2px #000, 0 0 12px #eb6b173d;
}

body div.output:has(.pagina_mappaclick) { padding: 5px; }
body div.pagina_mappaclick div.mappaclick_map {
    padding: 8px;
    gap: 16px;
    grid-template-columns: minmax(0, 2.8fr) minmax(230px, 1fr);
    grid-template-rows: minmax(200px, .55fr) minmax(0, 1fr) 88px;
    background: rgba(14, 12, 9, .30);
    border: 1px solid #b05e25;
    box-shadow: inset 0 0 0 2px #090705, 0 0 0 3px #080605, 0 0 0 4px #9c4d20;
}
body div.pagina_mappaclick div.mappaclick_map::before,
body div.pagina_mappaclick div.mappaclick_map::after { content: none; }

/* Shared shaded parchment and copper frame on every dashboard card. */
body div.pagina_mappaclick div.mappaclick_location_panel,
body div.pagina_mappaclick div.box_luoghi,
body div.pagina_mappaclick div.mappaclick_more,
body div.pagina_mappaclick div.accesso_privata,
body div.menu_avatar,
body div.appuntamenti_panel {
    color: var(--hw-ink);
    border: 1px solid #c47430;
    border-radius: 6px;
    background: var(--hw-paper);
    box-shadow: var(--hw-frame);
}

body div.pagina_mappaclick div.mappaclick_location_panel::after,
body div.pagina_mappaclick div.box_luoghi::after,
body div.pagina_mappaclick div.mappaclick_more::after,
body div.pagina_mappaclick div.accesso_privata::after,
body div.appuntamenti_panel::after,
body div.cornice_avatar::after {
    content: "";
    position: absolute;
    inset: 4px;
    border: 1px solid #efbd7459;
    border-image: none;
    border-radius: 3px;
    background: url("imgs/halloween/skull.webp") right 6px top 6px / var(--hw-skull-size) auto no-repeat;
    box-shadow: none;
    pointer-events: none;
    z-index: 12;
}

body div.pagina_mappaclick div.mappaclick_location_panel {
    grid-template-rows: minmax(0, 1fr);
    padding: 23px 23px 48px;
}
body div.pagina_mappaclick div.mappaclick_location_label {
    gap: 13px;
    margin-bottom: 16px;
}
body div.pagina_mappaclick div.mappaclick_location_heading > strong {
    font-size: clamp(25px, 2.1vw, 36px);
}
body div.pagina_mappaclick div.mappaclick_location_status { gap: 22px; margin-right: 30px; }
body div.pagina_mappaclick div.mappaclick_status_item strong,
body div.pagina_mappaclick div.mappaclick_status_item span { color: #ffe3ad; }
body div.pagina_mappaclick div.mappaclick_status_icon { filter: brightness(0) invert(.88) sepia(.5); }
body div.pagina_mappaclick div.mappaclick_location_image { border: 1px solid #693818; }

/* This image is shared outside themes in PHP. Replace only the school image in
   this skin, keeping the original element, alt text, link and tooltip intact. */
body .mappaclick_location_image > img:is([src$="/high_school.jpg"], [src$="/highschool.jpg"], [alt="High School" i]) {
    content: url("imgs/halloween/high-school.webp");
}

body .mappaclick_location_image > img:is([src$="/area_culturale.jpg"], [src$="/area_culturale.jpg"], [alt="Area culturale" i]) {
    content: url("imgs/halloween/area_culturale_halloween.jpg");
}

body .mappaclick_location_image > img:is([src$="/area_sportiva.jpg"], [src$="/area_sportiva.jpg"], [alt="Area sportiva" i]) {
    content: url("imgs/halloween/area_sportiva_halloween.jpg");
}

body .mappaclick_location_image > img:is([src$="/dormitori.jpg"], [src$="/dormitori.jpg"], [alt="Dormitori" i]) {
    content: url("imgs/halloween/dormitori_halloween.jpg");
}

body .mappaclick_location_image > img:is([src$="/giardini.jpg"], [src$="/giardini.jpg"], [alt="Giardini" i]) {
    content: url("imgs/halloween/giardini_halloween.jpg");
}

body .mappaclick_location_image > img:is([src$="/merriwick.jpg"], [src$="/merriwick.jpg"], [alt="Merriwick" i]) {
    content: url("imgs/halloween/merriwick_halloween.jpg");
}

body .mappaclick_location_image > img:is([src$="/altermerriwick.jpg"], [src$="/altermerriwick.jpg"], [alt="Alter Merriwick" i]) {
    content: url("imgs/halloween/altermerriwick_halloween.jpg");
}


body div.pagina_mappaclick div.box_luoghi,
body div.pagina_mappaclick div.mappaclick_more { padding: 23px 20px 17px; }
body div.pagina_mappaclick div.link_luogo a,
body div.pagina_mappaclick div.link_map a {
    min-height: 20px;
    padding: 2px 0;
    font-size: 14px;
    color: #241408;
}
body div.pagina_mappaclick div.link_map img { width: 20px; height: 20px; }
body div.pagina_mappaclick div.link_luogo a:hover,
body div.pagina_mappaclick div.link_map a:hover { color: #863809; background: #fff0cc35; }
body div.pagina_mappaclick div.accesso_privata { padding: 17px 20px 14px; }
/* Warm titles stay readable in the shaded upper edge; reserve the skull corner. */
body div.pagina_mappaclick div.mappaclick_more::before,
body div.pagina_mappaclick div.box_luoghi::before,
body div.pagina_mappaclick div.form_label_pvt,
body div.appuntamenti_panel .titolo_appuntamenti {
    padding-right: 28px;
    color: #ffe3ad;
    text-shadow: 0 1px 2px #120b08;
}
body div.pagina_mappaclick div.form_label_pvt { font-size: clamp(14px, 1vw, 17px); }
body div.pagina_mappaclick input.input_pass_privata,
body div.pagina_mappaclick input.input_submit_privata { border-color: #a9682c; }
body div.pagina_mappaclick input.input_submit_privata { color: #ffcc81; }

/* ID card: the avatar and all character data remain supplied by the game. */
body div.menu_avatar { top: 18px; left: 10px; height: 214px; }
body div.cornice_avatar {
    width: 100%; height: 100%; background: none;
    border-radius: 6px;
}
body div.cornice_avatar::before {
    content: "ID Card";
    position: absolute;
    top: 15px; left: 38px; right: 38px;
    color: #ffe3ad;
    text-shadow: 0 1px 2px #120b08;
    font: 22px/1.1 'Cinzel', Georgia, serif;
    text-align: center;
}
body div.miniav { top: 53px; left: 22px; }
body img.miniav { width: 94px; height: 100px; object-fit: cover; border: 2px solid #753b17; box-shadow: 0 0 0 2px #d09550; }
body div.nome_pg_card { top: 58px; right: 15px; width: 130px; padding: 0; font-size: 12px; line-height: 1.4; }
body div.nome_card_lungo { top: 166px; right: 14px; width: 250px; font-size: 13px; }
body:has(.pagina_mappaclick) div.appuntamenti_panel { top: 248px; height: 164px; }
body div.appuntamenti_panel { padding: 17px 18px; }
body div.appuntamenti_panel .titolo_appuntamenti { font-size: 14px; }
body div.appuntamenti_panel div.appuntamenti { color: #2c1b0d; padding-bottom: 18px; }

body div.pagina_info_location { top: 420px; left: 30px; }
/* Keep the original Sogna and On Air artwork supplied by the game. */
body div.pagina_info_location .mappaclick_side_weather {
    position: relative; top: 0; width: 240px; height: 206px; padding: 0;
    grid-template-columns: 1fr; grid-template-rows: 70px 70px 42px; gap: 12px;
    overflow: visible;
}
body div.pagina_info_location .mappaclick_side_weather .link_sogno,
body div.pagina_info_location .mappaclick_onair {
    width: 220px; height: 70px;
    background: transparent;
    border: 0; border-radius: 0;
    box-shadow: none;
}
body div.pagina_info_location .mappaclick_side_weather .link_sogno a,
body div.pagina_info_location .mappaclick_onair a,
body div.pagina_info_location .mappaclick_side_weather .link_sogno img,
body div.pagina_info_location .mappaclick_onair img {
    display: block;
    width: 220px !important; height: 70px !important;
    max-width: 220px !important; max-height: 70px !important;
    object-fit: contain;
}
body div.pagina_info_location .mappaclick_admin_tools {
    position: static; gap: 85px; height: 42px;
}
/* Nine-slice frame: only the empty middle stretches vertically. The top
   and bottom use the same scale as the 724px-wide source, so the pumpkin,
   compass and corner details keep their original proportions at any height. */
body div.scudetto {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-height: none;
    box-sizing: border-box;
    background: none;
    border: 0 solid transparent;
    border-image-source: url("imgs/halloween/sidebar-shield.webp");
    border-image-slice: 120 60 420 fill;
    border-image-width:
        calc(var(--hw-left) * 120 / 724)
        calc(var(--hw-left) * 60 / 724)
        calc(var(--hw-left) * 420 / 724);
    border-image-repeat: stretch;
    pointer-events: none;
    z-index: 0;
}
body #framecontentLeft .colonne_sx {
    position: relative;
    z-index: 1;
}

/* Buttons also apply in the separate transparent iframe documents. */
body div.messaggio_pulsante,
body div.chat_pulsante,
body button.ticket_pulsante,
body div.bacheca_pulsante,
body div.agenda_pulsante,
body div.link_servizi,
body div.link_uffici,
body div.link_manuali,
body div.link_mappa,
body div.menu_aggiorna,
body div.menu_esci,
body div.link_agenda,
body div.link_newsocial {
    color: #efb45e;
    border-color: #b45b1b;
    background: linear-gradient(#211a13, #0b0908);
    box-shadow: inset 0 0 0 1px #ffbe6447, inset 0 0 0 4px #0008, 0 2px 4px #000c;
    font-weight: normal;
}
body div.messaggio_pulsante::before,
body div.chat_pulsante::before,
body div.bacheca_pulsante::before,
body div.agenda_pulsante::before { border-color: #a25d23; }
body div.messaggio_pulsante_non_letto,
body div.bacheca_pulsante_non_letto,
body div.agenda_pulsante_non_letto { color: #ffe0a5; border-color: #efac43; }
body div.nr_messaggi_chat,
body div.nr_presenti,
body div.chat_contatore,
body div.bacheca_contatore,
body div.bacheca_notifica,
body div.agenda_contatore,
body span.messaggio_notifica_non_letto { border-color: #ba701f; color: #ffd28b; }
body #framecontentRight div.menu { left: 14px; }
body #framecontentRight div.messages,
body #framecontentRight div.online,
body #framecontentRight div.forum { left: 14px; }

body a:focus-visible,
body button:focus-visible,
body input:focus-visible { outline: 2px solid #ffc477; outline-offset: 3px; }
body div.popup { background: #100c09 url("imgs/decor/board-wood.png") center / cover; }
body.transparent_body { background: transparent; }

/* Smaller desktop screens retain both navigation columns and usable lists. */
@media (max-width: 1360px) {
    :root { --hw-left: 270px; --hw-header: 108px; }
    body div.menu_avatar,
    body div.appuntamenti_panel { left: 9px; width: 252px; }
    body div.nome_pg_card { right: 12px; width: 112px; font-size: 11px; }
    body div.nome_card_lungo { width: 226px; }
    body div.pagina_info_location { left: 15px; }
    body div.titolo_land { padding-left: 17px; font-size: clamp(19px, 1.7vw, 25px); background-size: 96% 100%; }
    body div.pagina_mappaclick div.mappaclick_map { grid-template-columns: minmax(0, 1fr) 220px; gap: 12px; }
    body div.pagina_mappaclick div.mappaclick_location_panel { padding: 17px 17px 30px; }
    body div.pagina_mappaclick div.mappaclick_location_status { gap: 10px; }
    body div.pagina_mappaclick div.mappaclick_status_item { grid-template-columns: 28px max-content; gap: 4px; }
    body div.pagina_mappaclick div.mappaclick_status_icon img { width: 28px !important; height: 28px !important; }
    body div.pagina_mappaclick div.mappaclick_status_item strong { font-size: 15px; }
    body div.pagina_mappaclick div.mappaclick_status_item span { font-size: 10px; }
}
@media (max-height: 760px) {
    body:has(#framecontentTop) { --hw-header: 98px; --hw-edge: 16px; }
    body:has(.pagina_mappaclick) div.appuntamenti_panel { top: 240px; height: 136px; }
    body div.pagina_info_location { top: 390px; }
    body div.pagina_mappaclick div.mappaclick_map { grid-template-rows: 166px minmax(0, 1fr) 88px; }
    body div.pagina_mappaclick div.mappaclick_more,
    body div.pagina_mappaclick div.box_luoghi { padding: 18px 17px 14px; }
    body div.pagina_mappaclick div.link_map a,
    body div.pagina_mappaclick div.link_luogo a { min-height: 21px; font-size: 13px; }
}
@media (max-width: 1100px) {
    body div.pagina_mappaclick div.mappaclick_map {
        height: auto; overflow: visible;
        grid-template-columns: 1fr; grid-template-rows: auto auto auto auto;
    }
    body div.output:has(.pagina_mappaclick) { overflow: auto; }
    body div.pagina_mappaclick { height: auto; overflow: visible; }
    body div.pagina_mappaclick div.mappaclick_location_panel,
    body div.pagina_mappaclick div.box_luoghi,
    body div.pagina_mappaclick div.mappaclick_more,
    body div.pagina_mappaclick div.accesso_privata { grid-column: 1; grid-row: auto; }
    body div.pagina_mappaclick div.mappaclick_location_image { height: auto; aspect-ratio: 16 / 10; }
    body div.pagina_mappaclick div.mappaclick_scroll { max-height: 280px; }
}
