
body{
 background:#0b1020 !important;
 color:#eef2ff !important;
}
.card,.box,.panel,.download-card,.download-item{
 background:#18223d !important;
 border:1px solid #2b3a63 !important;
 box-shadow:0 8px 24px rgba(0,0,0,.25);
 transition:.2s ease;
}
.card:hover,.download-card:hover,.download-item:hover{
 transform:translateY(-2px);
}
h1,h2,h3,h4,h5,h6{color:#ffffff;}
input,select,textarea{
 background:#11192d !important;
 color:#fff !important;
}

.nav-inner{
max-width:1200px;
margin:auto;
padding:16px 24px;
display:flex;
align-items:center;
justify-content:space-between;
}
.nav-links{
display:flex;
gap:8px;
font-weight:600;
}
.nav-link.active{
    background: #8c4f00 !important;
    color:#fff !important;
    border-radius:8px;
    font-weight:600;
    box-shadow: 0 0 0 1px rgba(255,170,50,.15);
}

.nav-link.active:hover{
    background: #a85a00 !important;
}
.nav-links a{
    display:inline-block;
    padding:10px 14px;
    border:2px solid #000099;
    border-radius:8px;   /* rettangolare */
	text-decoration:none;
background-color: #fff;
font-weight:700;
color:#000;
}
.nav-links a:hover{
background: #00CCFF;
color:#000;
}

@media(max-width:900px){
.nav-links{
display:none;
width:100%;
margin-top:12px;
}
.nav-links.open{
display:flex;
flex-direction:column;
}
}


/* STEP 5 - Download Center Visual Refinement */

body{
line-height:1.6;
}

.card,.box,.panel,.download-card,.download-item{
border-radius:18px !important;
padding:18px;
}

.download-card,.download-item{
background:linear-gradient(180deg,#1a2544,#131c34) !important;
}

.download-card:hover,
.download-item:hover{
box-shadow:0 12px 30px rgba(0,0,0,.35);
}

input,select,textarea{
border-radius:12px !important;
padding:12px !important;
}

button,.btn{
border-radius:12px !important;
font-weight:600;
}

h1{
font-size:2rem;
margin-bottom:20px;
}

h2{
margin-bottom:16px;
}

table{
width:100%;
border-collapse:collapse;
background:#18223d;
}

table td,table th{
padding:12px;
border-color:#2b3a63;
}

.pagination a,
.page-link{
display:inline-block;
padding:10px 14px;
margin:2px;
border:2px solid #FFFF99;
border-radius:111px;
background:#000;
color:#FFF;
font-weight:bold;
}

.container,
.wrapper,
.content{
max-width:1280px;
margin:auto;
}


/* Mobile: logo left, hamburger right, menu full width */
@media (max-width:900px){

input[type="search"],
.search,
.search input{
width:100% !important;
max-width:100% !important;
}
}


/* =========================
   FOOTER ENTERPRISE
========================= */

.site-footer{
margin-top:40px;
padding:30px 20px;
background:#0d1117;
border-top:1px solid #222;
}

.footer-container{
max-width:1200px;
margin:0 auto;
text-align:center;
}

.footer-brand h3{
margin-bottom:10px;
font-size:22px;
color:#fff;
}

.footer-brand p{
color:#b8c1cc;
line-height:1.6;
margin-bottom:20px;
}

.footer-links{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
margin-bottom:20px;
}

.footer-links a{
color:#8ab4ff;
text-decoration:none;
}

.footer-links a:hover{
text-decoration:underline;
}

.footer-copy{
font-size:13px;
color:#8b949e;
}


/* FINAL MOBILE FIXES */
@media (max-width:900px){

.navbar{
display:flex !important;
align-items:center !important;
}

.navbar-brand{
    position:absolute;
    left:16px;
    top:50%;
    transform:translateY(-50%);
}

.search-box,
.search-box input{
display:block !important;
width:100% !important;
max-width:100% !important;
}

.card,
.download-card,
.download-item{
margin-bottom:24px !important;
}

.main-grid{
gap:24px !important;
}

}

.card-meta span{margin-right:10px;}
.card{transition:transform .2s ease;}
.card:hover{transform:translateY(-3px);}
.footer-btn{
display:inline-block;
margin:6px;
padding:12px 18px;
border-radius:999px;
border:2px solid #000099;
background:#fff;
color:#000;
font-weight:700;
text-decoration:none;
}
.footer-btn:hover{background:#00CCFF;}
footer{
 background:#002448 !important;
}
/* Thumbnail uniformi */
.download-image{
    text-align:center;
    margin-bottom:12px;
}

.download-thumb{
    width:120px;
    height:90px;
    object-fit:cover;
    border-radius:8px;
    display:block;
    margin:0 auto;
}

/* Card uniformi */
.main-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
    gap:20px;
}

.card{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    width:95%;
    max-width:none;
    margin:0 auto 20px;
    box-sizing:border-box;
}


/* Layout card stile screenshot */
.card-body-row{
    display:flex;
    align-items:center;
    gap:24px;
}

.download-image{
    flex:0 0 120px;
}

.download-thumb{
    width:120px;
    height:90px;
    object-fit:contain;
    background:transparent !important;
}

.download-placeholder{
    width:120px;
    height:90px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-size:12px;
    padding:6px;
    border:1px dashed #666;
    border-radius:8px;
}

.download-content{
    flex:1;
}

@media (max-width: 768px){
    .card-body-row{
        flex-direction:column;
        text-align:center;
        gap:12px;
    }

    .download-image{
        flex:none;
    }

    .card .cat-btn{
        width:100%;
        text-align:center;
    }
}


/* UDX DEFINITIVE DESCRIPTION FIX */
.card h3{
    min-height:auto !important;
    height:auto !important;
}
.card .download-content{
    flex:1 !important;
}
.card .download-content h3{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    min-height:unset !important;
}






/* UDX UX + SEO visual refinements */
.topnav{backdrop-filter:blur(8px);}
.menu{gap:10px !important;}
.menu a{
padding:8px 12px !important;
font-size:14px;
border-radius:10px !important;
background:linear-gradient(135deg,#004e92,#000428) !important;
color:#fff !important;
box-shadow:0 4px 12px rgba(255,138,0,.25);
}
.menu a:hover{
transform:translateY(-1px);
filter:brightness(1.05);
}

.search-premium{max-width:980px;margin:0 auto}.search-premium input{width:100%;padding:18px 22px;border-radius:14px;border:1px solid #555;background:#1b1b1b;color:#fff;font-size:1.05rem;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.news-meta{opacity:.8;font-size:.9rem;margin:8px 0 12px}
.related-box,.category-badge{display:inline-block}.category-badge{padding:4px 10px;border:1px solid #666;border-radius:999px;font-size:.8rem;margin-bottom:10px}.hero-card{padding:22px;border:1px solid #333;border-radius:16px;background:rgba(255,255,255,.03)}
.article-meta,.news-meta{opacity:.8;margin:10px 0 20px}.editor-box{margin:30px 0;padding:16px;border:1px solid #444;border-radius:12px}.news-content{max-width:820px;line-height:1.8;font-size:18px}.related-news{margin-top:40px;padding-top:20px;border-top:1px solid #333}
.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.adbox{
min-height:90px;
display:flex;
align-items:center;
justify-content:center;
border-radius:16px;
}
.card,.download-card,.download-item{
border-radius:20px !important;
}
.download-item h3,.card h3{
line-height:1.2;
}
.download-desc{
overflow-wrap:anywhere;
}
:root{--a:#ff6b2c;--bg:#0f1115;--card:#171a21;}
body{background: #000}
/* BASE */
.topnav{
  background:#002448;
  position:sticky;
  top:0;
  z-index:1000;
}

.navwrap{
  max-width:1400px;
  margin:auto;
  padding:12px;
  display: flex;
  align-items:center;
  justify-content:space-between;
}

.ul-logo-datetime {
   list-style-type: none; 
   padding: 0;
  
}

.li-logo-datetime {
display: grid;
    grid-template-columns: repeat(auto-fit,minmax(99px,1fr));
    gap: 16px;
     margin: 5px 0 0px 0;
	
	
  
}
.desktop-datetime{
    margin-left:auto;
    font-size:14px;
	font-weight:bold;
    color:#fff;
    white-space:nowrap;
	
}

#backToTop{
    display:none;
    position:fixed;
    bottom:20px;
    right:20px;
    width:45px;
    height:45px;
    border:none;
    border-radius:50%;
    cursor:pointer;
    font-size:22px;
    z-index:9999;
}

@media (max-width:800px){
    .desktop-datetime{
        display:none;
    }
}
@media (max-width:766px){
    .desktop-datetime{ 	
        display: block;
    }
}

/* MENU DESKTOP */
.menu{
  display:flex;
  gap:20px;
}

.menu a{
  color:#fff;
  text-decoration:none;
}

/* HAMBURGER */
.mobbtn{
  display:none;
  width:40px;
  height:30px;
  background:none;
  border:none;
  position:relative;
  cursor:pointer;
  z-index:3000;
}

.mobbtn span{
  position:absolute;
  left:0;
  right:0;
  height:3px;
  background:#fff;
  transition:0.3s;
}

.mobbtn span:nth-child(1){ top:0; }
.mobbtn span:nth-child(2){ top:13px; }
.mobbtn span:nth-child(3){ bottom:0; }

/* ANIMAZIONE X */
.mobbtn.active span:nth-child(1){
  transform:rotate(45deg);
  top:13px;
}

.mobbtn.active span:nth-child(2){
  opacity:0;
}

.mobbtn.active span:nth-child(3){
  transform:rotate(-45deg);
  bottom:13px;
}

/* OVERLAY */
.overlay,
.overlay.active{
display:none !important;
}

/* MOBILE SLIDE MENU */
@media (max-width:768px){

  .menu{
    position:fixed;
    top:0;
    right:-280px;
    width:260px;
    height:100vh;
    background:#002448;
    flex-direction:column;
    padding:80px 20px;
    gap:15px;
    transition:0.3s;
    z-index:2000;
  }

  .menu.active{
    right:0;
  }
  
    .mobbtn{
    display:block;
  }
}
.hero-premium{background:linear-gradient(135deg,#111,#222);color:#fff;padding:50px 20px;text-align:center}
.search-premium{max-width:900px;margin:-25px auto 20px;background: #000066;padding:2px;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.search-premium input{width:100%;padding:16px;border:1px solid #ddd;border-radius:10px}
.mag-grid{display:grid;gap:24px;max-width:1400px;margin:auto;padding:20px}
.adbox,.card{border-radius:14px}
.adbox{padding:20px;text-align:center;border:2px dashed #ccc;margin:15px 0}
.cards{
    display:flex;
    flex-direction:column;
    gap:16px;
}
.download-thumb{
    width:90px;
    min-width:90px;
    height:90px;
    object-fit:contain;
    border-radius:12px;
}
.download-content{
    flex:1;
}

.download-content h3{
    margin:0 0 8px;
}

.download-meta{
    color:#777;
    font-size:14px;
    margin-bottom:10px;
}

.download-desc{
    color:#444;
    line-height:1.5;
    margin-bottom:15px;
}

.download-actions{
    margin-top:auto;
}
.stats{display:flex;justify-content:center;gap:20px;padding:15px;flex-wrap:wrap}
.stat{background:#000;padding:15px 25px;border-radius:12px}
@media(max-width:768px){
.mag-grid{grid-template-columns:1fr}
}
.home-news-section{
margin:50px 0;
padding-top:25px;
border-top:1px solid rgba(255,255,255,.08);
}

.home-news-section h2{
margin-bottom:25px;
}

.home-news-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(100px,1fr));
gap:20px;
}

.home-news-card{
background:rgba(255,255,255,.03);
border:1px solid rgba(255,255,255,.06);
border-radius:12px;
padding:18px;
transition:.2s ease;
}

.home-news-card:hover{
transform:translateY(-2px);
}

.home-news-card h3{
margin:0 0 10px;
font-size:1.05rem;
}

.home-news-card h3 a{
text-decoration:none;
}

.home-news-image{
    margin-bottom:12px;
    overflow:hidden;
    border-radius:8px;
}

.home-news-image img{
    max-width:220px;
    width:100%;
    height:auto;
    display:block;
    margin:0 auto;
    border-radius:8px;
}

.news-featured-image{
    max-width:220px;
    width:100%;
    height:auto;
    display:block;
    margin:0 auto;
    border-radius:8px;
}

.home-news-date{
font-size:.85rem;
opacity:.75;
margin-bottom:10px;
}

.home-news-readmore{
font-weight:600;
text-decoration:none;
}

.home-news-all{
margin-top:25px;
text-align:center;
}

.home-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(180px,1fr));
    gap: 20px;
    margin: 35px 0 20px 0;
}

.home-stat {
    background: #111827;
    border: 1px solid #1e293b;
    border-radius: 12px;
    padding: 20px;
    text-align: center;
}

.home-stat-number {
    color: #FFFF33;
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 8px;
}

.home-stat-label {
    color: #cbd5e1;
    font-size: 14px;
}
.home-seo {
    background: #0b1020;
    color: #dbe4ff;
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 20px;
    font-family: Arial, Helvetica, sans-serif;
}

.home-seo h1 {
    color: #ffffff;
    font-size: 42px;
    margin-bottom: 20px;
    text-align: center;
}

.home-seo h2 {
    color: #7dd3fc;
    margin-bottom: 15px;
    font-size: 28px;
}

.home-seo p {
    line-height: 1.8;
    margin-bottom: 18px;
    color: #cbd5e1;
}

.home-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(216px,1fr));
    gap: 10px;
    margin: 50px 0;
}

.home-card {
    background: #111827;
    border: 1px solid #1e293b;
    border-radius: 12px;
    padding: 10px;
    transition: .3s;
}

.home-card:hover {
    border-color: #38bdf8;
    transform: translateY(-4px);
}

.home-card h3 {
    color: #ffffff;
    margin-bottom: 12px;
}

.home-card p {
    margin: 0;
    font-size: 15px;
}

.home-intro {
    max-width: 900px;
    margin: 0 auto 40px auto;
    text-align: center;
}

.home-highlight {
    color: #38bdf8;
    font-weight: 600;
}

.home-footer-text {
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid #1e293b;
}

.news-hero{
margin-bottom:30px;
}

.latest-news-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:20px;
margin-bottom:30px;
}

.news-list{
display:flex;
flex-direction:column;
gap:16px;
}
body{display:flex;flex-direction:column;}


/* News v37 */
.news-hero h1{font-size:1.4rem;margin-bottom:8px}
.news-grid article{transition:transform .2s ease}
.news-grid article:hover{transform:translateY(-3px)}

/* ===== UDX RECEIVERS DEFINITIVE FIX ===== */
.main-grid{
display:flex !important;
flex-direction:column !important;
align-items:center !important;
gap:20px !important;
}

.card{
width:95% !important;
max-width:1600px !important;
margin:0 auto 20px auto !important;
display:flex !important;
flex-direction:row !important;
align-items:center !important;
justify-content:space-between !important;
gap:24px !important;
box-sizing:border-box !important;
}

.download-image{flex:0 0 120px !important;}
.download-content{flex:1 !important;}

  
.warnings{
margin-top: 20px;
text-align: center;
color: #FFCC33;
font-size: 22px;
font-weight:bold;
 }
  
.warnings-txt{
margin-top: 0px;
max-width:500px;
margin:auto;
text-align:center;
padding:0px 14px;
display:flex;
align-items:center;
color: #fff;
font-size: 14px;
font-weight:bold;
 }
 .sort{
margin-bottom: 5px;
text-align: center;
color: #FFFF99;
font-size: 22px;
font-weight:bold;
 } 
 .update{
text-align:left;
padding:0px 1px;
display:flex;
color: #ffff00;
font-size: 16px;
font-weight:bold;
 }
 
 .panel{
    box-sizing:border-box;
    overflow:hidden;
}

.panel input,
.panel select,
.panel textarea{
    box-sizing:border-box;
    max-width:100%;
}

.container{
    width:100%;
    max-width:1280px;
    margin:auto;
    padding:0 15px;
    box-sizing:border-box;
}

.files {
    width: 100%;
    table-layout: fixed;
}

.files td {
    max-width: 300px;       /* larghezza desiderata */
    overflow-wrap: anywhere;
    word-break: break-word; /* compatibilitÃ  */
}


@media(max-width:900px){

    .panel{
        padding:15px;
    }

    .panel textarea{
        width:100% !important;
    }

    .panel input[type="text"],
    .panel input[type="url"],
    .panel input[type="datetime-local"],
    .panel select{
        width:100% !important;
    }
}

@media (max-width:768px){
.card{
width:98% !important;
flex-direction:column !important;
text-align:center !important;
}
.card .cat-btn{width:100% !important;}
}


.card {
    width: 97%;
    max-width: 1100px;
    margin: 0 auto 20px;
}

@media (max-width: 768px) {
.description-news {
        text-align: left !important;
		overflow-wrap: break-word;
   }

}

@media (max-width: 768px) {

    .download-content {
        text-align: left !important;
        align-items: flex-start !important;
    }

    .download-content h3,
    .download-content .description-html {
        text-align: left !important;
		overflow-wrap: break-word;
    }

}
.mobile-left {
  text-align: left; /* Allineamento di base per schermi piccoli (mobile) */
}

@media (min-width: 768px) {
  .mobile-left {
    text-align: center; /* Allineamento centrato per schermi grandi (desktop) */
  }
}
/* Contenitore esterno di tutta la sezione */
.blocco-ordinamento {
  text-align: center;
  padding: 10px 0 20px;
}

/* Stile per la scritta "Sort:" */
.blocco-ordinamento .sort {
  margin-bottom: 12px;
  font-weight: bold;
}

/* Layout Globale: Unico blocco compatto e centrato */
.contenitore-principale {
  display: flex;
  width: 97%;
  margin: 0 auto;                 /* Centra tutto il blocco nella pagina */
  justify-content: center;        /* Unisce le due coppie al centro su desktop */
  gap: 30px;                      /* Distacco leggero tra la coppia sinistra e destra */
  box-sizing: border-box;
}

.gruppo-pulsanti {
  display: flex;
  gap: 10px;                      /* Spazio stretto tra i pulsanti della stessa coppia */
}

/* Rende i pulsanti del primo gruppo (Most Recent e Most Downloaded) della stessa larghezza */
.contenitore-principale .gruppo-pulsanti:first-child .pulsante {
  flex: 1;
  min-width: 155px;               /* Larghezza minima basata sul testo piÃ¹ lungo "Most Downloaded" */
}

/* Stile Base dei Pulsanti */
.pulsante {
  display: flex;                  
  align-items: center;
  justify-content: center;
  padding: 8px 16px;              
  white-space: nowrap;            
  cursor: pointer;                
  text-decoration: none;          
  box-sizing: border-box;
  
  /* Bordi, Arrotondamento e Colori */
  border: 1px solid #FFFF99;      
  border-radius: 111px;
  background-color: #333333;      
  color: #FFFF99;                 
  font-weight: 500;
  transition: background 0.3s ease, color 0.3s ease; 
}

/* ðŸŸ¦ EFFETTO HOVER PER IL GRUPPO DI SINISTRA (Most Recent e Downloaded) */
.contenitore-principale .gruppo-pulsanti:first-child .pulsante:hover {
  background-color: #00008b;      /* Blu scuro */
  color: #ffffff;                 /* Testo bianco */
}

/* ðŸŸ¥ EFFETTO HOVER PER IL GRUPPO DI DESTRA (A-Z e Z-A) */
.contenitore-principale .gruppo-pulsanti:last-child .pulsante:hover {
  background-color: #8b0000;      /* Rosso scuro */
  color: #ffffff;                 /* Testo bianco */
}

/* Layout Mobile (sotto i 768px) */
@media (max-width: 768px) {
  .contenitore-principale {
    flex-direction: column;       /* Incolonna la coppia di destra sotto quella di sinistra */
    align-items: center;          
    gap: 12px;                    /* Distanza verticale tra le due righe su mobile */
  }

  .gruppo-pulsanti {
    justify-content: center !important; 
  }
}
/* Layout per Desktop */
.dark-blue-rows {
  width: 100%;
  border-collapse: collapse;
  font-family: sans-serif;
  margin: 20px 0;
  background-color: #0b1329; /* Sfondo blu scuro */
  color: #ffffff;
}

.dark-blue-rows th, 
.dark-blue-rows td {
  padding: 12px;
  text-align: left;
  border-bottom: 1px solid #1c2541;
}

.dark-blue-rows th {
  background-color: #000814;
  color: #4cc9f0;
  font-weight: bold;
}

.dark-blue-rows code {
  background-color: #1c2541;
  color: #4cc9f0;
  padding: 3px 6px;
  border-radius: 4px;
}

/* ?? Comportamento specifico per Mobile (sotto i 768px) */
@media screen and (max-width: 768px) {
  
  /* Nasconde la riga dei titoli */
  .dark-blue-rows thead {
    display: none;
  }
  
  /* Forza il corpo a gestire l'incolonnamento verticale */
  .dark-blue-rows tbody {
    display: flex;
    flex-direction: column;
    gap: 15px; /* Crea lo spazio vuoto tra una riga e l'altra */
    background: transparent;
  }
  
  /* Trasforma ogni singola riga in un blocco indipendente posizionato sotto il precedente */
  .dark-blue-rows tr {
    display: block;
    background-color: #0b1329; /* Mantiene lo sfondo blu scuro sul blocco riga */
    border: 1px solid #1c2541;
    border-radius: 8px;
    padding: 15px;
  }
  
  /* Gestione dei dati all'interno della riga incolonnata */
  .dark-blue-rows td {
    display: block;
    width: 100%;
    padding: 8px 0;
    border-bottom: 1px solid #1c2541;
  }
  
  /* Rimuove l'ultima linea interna alla riga per pulizia visiva */
  .dark-blue-rows td:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
}

.home-news-card h3{
    text-align:center;
    text-wrap:balance;
    max-width:90%;
    margin:0 auto 10px;
}

.home-news-card h3 a{
    display:block;
}

@media (max-width:768px){

    .home-news-grid{
        display:flex !important;
        flex-direction:column !important;
        gap:20px;
    }

    .home-news-card{
        width:100%;
    }
}

/* Glass Back To Top */

#backToTop{
    display:flex;
    align-items:center;
    justify-content:center;

    background:rgba(255,170,70,.15);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);

    border:1px solid rgba(255,180,80,.35);
    box-shadow:0 8px 30px rgba(255,140,0,.25);

    color:#ffb347;

    opacity:0;
    visibility:hidden;
    transform:translateY(15px);

    transition:all .3s ease;
}

#backToTop.show{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

#backToTop:hover{
    transform:translateY(-4px);
    box-shadow:0 12px 40px rgba(255,140,0,.4);
}

#backToTop svg:first-child{
width:52px;
height:52px;
    position:relative;
    z-index:2;
}

#backToTop .progress-ring{
    position:absolute;
    inset:0;
    transform:rotate(-90deg);
}

#backToTop .progress-ring circle{
    fill:none;
    stroke:#ff9f1c;
    stroke-width:4;
    stroke-linecap:round;
}
@media (max-width: 768px) {
    /* 1. Rimpiccioliamo il contenitore mobile (ora è 40px, ideale per gli smartphone) */
    #backToTop {
        width: 40px !important;
        height: 40px !important;
        right: 14px !important;
        bottom: 14px !important;
        position: fixed !important;
    }

    /* 2. Il cerchio SVG si adatta perfettamente ai 40px del contenitore */
    #backToTop svg {
        width: 100% !important;
        height: 100% !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        box-sizing: border-box !important;
    }

    /* 3. Centriamo la freccia e la rimpiccioliamo (da 18px a 14px) per mantenerla proporzionata */
    #backToTop i, 
    #backToTop .arrow,
    #backToTop svg + i { 
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        font-size: 14px !important; /* Freccia più piccola per il cerchio da 40px */
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1 !important;
        z-index: 2 !important;
    }
}