/* ==========================================================================
   🧱 MASTER RESET: RIMOZIONE BARRE DI SCORRIMENTO VERTICALI ORFANE (T9)
   ========================================================================== */
html, body {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important; 
    background-attachment: fixed !important;
}

/* 🎯 CORREZIONE RIGIDA PER L'IFRAME DELLA DASHBOARD (SMARTPHONE VIEW) */
body::-webkit-scrollbar {
    display: none !important; 
    width: 0 !important;
    height: 0 !important;
}

/* Fix per i margini di Bootstrap che strabordano lateralmente o verticalmente */
.container-fluid {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}



/* ==========================================================================
   🖼️ IMMAGINE DI COPERTINA CON ANGOLI SMUSSATI RESPONSIVI
   ========================================================================== */
.image-main {
    width: 100% !important;
    height: auto !important;
    overflow: hidden !important;
}

.image-main img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important; 
    object-fit: contain !important; 
    border-bottom-left-radius: 6.6cqw !important;  /* 🎯 Convertito 24px in cqw (24 / 360 * 100) */
    border-bottom-right-radius: 6.6cqw !important; /* 🎯 Convertito 24px in cqw */
}

.main-name {
    margin-bottom: 12cqw;
}

.margin5 {
    height: 5cqw !important; 
    width: 100% !important; 
    display: block !important; 
    clear: both !important;
}

.margin10 {
    height: 10cqw !important; 
    width: 100% !important; 
    display: block !important; 
    clear: both !important;
}

.margin15 {
    height: 15cqw !important; 
    width: 100% !important; 
    display: block !important; 
    clear: both !important;
}

.margin20 {
    height: 20cqw !important; 
    width: 100% !important; 
    display: block !important; 
    clear: both !important;
}

.margin25 {
    height: 25cqw !important; 
    width: 100% !important; 
    display: block !important; 
    clear: both !important;
}

/* ==========================================================================
   📸 CONTENITORE AVATAR MASTER BOX (SIGILLATO ED ESPANSO PER IL T9)
   ========================================================================== */
.zoom-in-out-box {
    position: relative !important;
    display: block !important;
    
    /* 🎯 Sincronizzato ed espanso a 43cqw per centratura ed impatto ottimale */
    width: 43cqw !important;
    height: 43cqw !important;
    max-width: 43cqw !important;
    max-height: 43cqw !important;
    
    margin-left: auto !important;
    margin-right: auto !important;
    border: 0.8cqw solid rgba(255, 255, 255, 0.2) !important; /* Convertito 3px */
    box-shadow: 0 2.2cqw 6.6cqw rgba(0, 0, 0, 0.2) !important; /* Convertito 8px 24px */
    overflow: hidden !important;
    z-index: 10 !important;
    background: rgba(255, 255, 255, 0.1) !important;
    box-sizing: border-box !important;

}

.zoom-in-out-box.circular--portrait {
    border-radius: 50% !important;
}
.zoom-in-out-box.shape-square {
    border-radius: 4.4cqw !important; /* 🎯 Convertito 16px in cqw (16 / 360 * 100) */
}

.zoom-in-out-box img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important; 
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    border-radius: inherit !important; /* Forza l'immagine a seguire la forma esatta del guscio padre */
}

/* Protezione elastica per i loghi aziendali in formato vettoriale SVG */
.zoom-in-out-box img[src*=".svg"] {
    object-fit: contain !important;
    padding: 0.8cqw !important; /* Camera d'aria interna di sicurezza (3px) */
}

/* ==========================================================================
   📡 STRUTTURA E CONTROLLO DI APPARIZIONE MATRICE QR CODE (T9 FINALE)
   ========================================================================== */
.public-qrcode-container {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-top: 8.3cqw !important;    /* 🎯 Convertito 30px in cqw */
    margin-bottom: 8.3cqw !important; /* 🎯 Convertito 30px in cqw */
    width: 100% !important;
    box-sizing: border-box !important;
}

#qrcodeTpl {
    padding: 5.5cqw !important; /* 🎯 Convertito 20px in cqw */
    border-radius: 5cqw !important; /* 🎯 Convertito 18px in cqw */
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    text-align: center !important;
    box-shadow: 0 1.6cqw 6.6cqw rgba(0,0,0,0.12) !important; /* Convertito 6px 24px */
    display: inline-block !important;
}

#qrcodeTpl .scan-me {
    font-size: 3.2cqw !important; /* 🎯 Convertito 0.8rem in cqw */
    font-weight: bold !important;
    text-transform: uppercase !important;
    letter-spacing: 0.2cqw !important; /* Convertito 1px */
    margin-bottom: 3.3cqw !important; /* Convertito 12px */
}

.qrcode-wrapper {
    padding: 2.7cqw !important; /* 🎯 Convertito 10px in cqw */
    background: #ffffff !important; 
    border-radius: 3.3cqw !important; /* Convertito 12px */
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    max-width: 90cqw !important;  /* 🎯 Convertito max-width: 200px in cqw */
    max-height: 90cqw !important; /* 🎯 Convertito max-height: 200px in cqw */
    margin: 0 auto !important;
}

#qrcode-public, 
#qrcode-public canvas, 
#qrcode-public img {
    width: 100% !important;
    height: auto !important;
    max-width: 96cqw !important;  /* 🎯 Convertito 180px in cqw (180 / 360 * 100) */
    max-height: 96cqw !important; /* 🎯 Convertito 180px in cqw */
    display: block !important;
}

/* ==========================================================================
   🧱 CONFIGURAZIONE ACCORDION RESPONSIVO MODELLO T9
   ========================================================================== */
.myaccordion {
    padding: 0 !important;
    width: 100% !important; /* Forza il contenitore a occupare tutto lo spazio disponibile */
    box-sizing: border-box !important;
    margin-top: 0cqw !important; 
    border: 0px solid #fff !important;
}

.myaccordion .card {
    /* 🎯 RISOLTO: Sradicato il vecchio 96vw instabile e forzato a 91.6cqw 
       per farlo entrare al millimetro senza sbavature laterali nell'onboarding */
    width: 96cqw !important; 
    
    margin-left: auto !important;
    margin-right: auto !important;
    background: rgba(255, 255, 255, 0.06) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 4.4cqw !important; /* Convertito 16px */
    margin-bottom: 3.3cqw !important;  /* Convertito 12px */
    overflow: hidden !important;
    box-shadow: 0 1.1cqw 4.1cqw rgba(0, 0, 0, 0.1) !important; /* Convertito 4px 15px */
}

.myaccordion .card-header {
    background: transparent !important;
    border-bottom: none !important;
    padding: 0 !important;
}

.myaccordion .card-header button.btn-link {
    width: 100% !important;
    padding: 4.4cqw 5.5cqw !important; /* 🎯 Convertito 16px 20px */
    text-align: left !important;
    font-weight: 600 !important;
    font-size: 4cqw !important; /* 🎯 Convertito 1rem in cqw proporzionato */
    color: inherit !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

.myaccordion .card-header button.btn-link:focus,
.myaccordion .card-header button.btn-link:hover {
    text-decoration: none !important;
    box-shadow: none !important;
}



.myaccordion .card_info .card-body {
    background: transparent !important;
    padding: 5.5cqw !important; /* Convertito 20px */
    font-size: 3.8cqw !important; /* Convertito 0.95rem */
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.myaccordion .card_gallery .card-body {
    background: transparent !important;
    padding: 0cqw !important; /* Convertito 20px */
    font-size: 3.8cqw !important; /* Convertito 0.95rem */
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.myaccordion .card_video .card-body {
    background: transparent !important;
    padding: 1.5cqw !important; /* Convertito 20px */
    font-size: 3.8cqw !important; /* Convertito 0.95rem */
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.gallery-block.grid-gallery .item img {
    transition: transform 0.2s ease-in-out !important;
    box-shadow: 0 1.1cqw 2.7cqw rgba(0,0,0,0.15) !important;
}
.gallery-block.grid-gallery .item img:hover {
    transform: scale(1.02) !important;
}
/* ==========================================================================
   🎛️ EFFETTO OVERLAPPING (BOTTONI SPUNTATI A METÀ T9)
   ========================================================================== */
.t9-control-bar {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    height: 13.3cqw !important; /* 🎯 Convertito 48px in cqw (48 / 360 * 100) fluida per la Dashboard */
    background-color: rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-top: none !important; 
    box-shadow: 0 -1.1cqw 6.9cqw rgba(0, 0, 0, 0.15) !important; /* Convertito ombra 4px 25px */
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

.t9-action-row {
    display: flex !important;
    justify-content: space-around !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 111.1cqw !important; /* 🎯 Convertito max-width: 400px in cqw (400 / 360 * 100) */
    margin: 0 auto !important;
    padding: 0 4.1cqw !important; /* Convertito 15px */
    position: relative !important;
}

/* I 3 bottoni inferiori vengono spinti verso l'alto per metà della loro altezza */
.t9-control-btn {
    width: 12.7cqw !important;  /* 🎯 Convertito 46px in cqw (46 / 360 * 100) */
    height: 12.7cqw !important; /* 🎯 Convertito 46px in cqw */
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    box-shadow: 0 1.1cqw 3.3cqw rgba(0,0,0,0.15) !important; /* Convertito 4px 12px */
    
    /* 🎯 IL TRUCCO: Spinge il bottone verso l'alto in modo proporzionale in cqw (metà di 12.7cqw) */
    transform: translateY(-6.3cqw) !important; 
    z-index: 10000 !important;
    transition: transform 0.1s ease, background 0.2s !important;
}

.t9-control-btn:active { 
    transform: translateY(-6.3cqw) scale(0.9) !important; 
}

.t9-control-btn i { 
    font-size: 5cqw !important; /* 🎯 Convertito 1.25rem in cqw reattivo */
}

/* ==========================================================================
   🛸 CONFIGURAZIONE AVATAR SOPRAELEVATO CON BOTTONI SATELLITE (T9 CORE)
   ========================================================================== */
.heavy-avatar-wrapper.zoom-in-out-box {
    position: relative !important;
    width: 43cqw !important;  /* 🎯 Sincronizzato con l'asse dei modelli precedenti per perfetta centratura */
    height: 43cqw !important; 
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    box-shadow: 0 1.6cqw 6.6cqw rgba(0,0,0,0.18) !important; /* Convertito 6px 24px */
    z-index: 15 !important;
    float: none !important;
    display: block !important;
    overflow: visible !important; /* ⚠️ FONDAMENTALE: Permette ai bottoni satelliti esterni di sbordare */
    margin-bottom: 35cqw !important; /* 🎯 Convertito 35vw residui a 25cqw bilanciati per stabilità guscio */
}

/* Gestione delle forme applicata direttamente sul blocco principale */
.heavy-avatar-wrapper.zoom-in-out-box.circular--portrait,
.heavy-avatar-wrapper.zoom-in-out-box.circular--portrait .heavy-avatar-inner-box,
.heavy-avatar-wrapper.zoom-in-out-box.circular--portrait img {
    border-radius: 50% !important;
}

.heavy-avatar-wrapper.zoom-in-out-box.shape-square,
.heavy-avatar-wrapper.zoom-in-out-box.shape-square .heavy-avatar-inner-box,
.heavy-avatar-wrapper.zoom-in-out-box.shape-square img {
    border-radius: 5cqw !important; /* 🎯 Convertito 18px in cqw */
}

.heavy-avatar-inner-box {
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 14 !important;
}

/* 🛸 UNIFORMAZIONE DEI BOTTONI SATELLITE (Intorno al profilo) */
.avatar-satellite-buttons .sat-btn {
    position: absolute !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 1.1cqw 2.7cqw rgba(0,0,0,0.15) !important;
    text-decoration: none !important;
    z-index: 20 !important;
    opacity: 0;
    transition: transform 0.15s ease, background 0.15s ease, opacity 0.2s ease !important;
}

.avatar-satellite-buttons .sat-btn i { 
    font-size: 5.5cqw !important; /* 🎯 Convertito il vecchio gigante 8vw a 5.5cqw reattivo */
}

/* ==========================================================================
   🔳 SCHERMATA POP-UP (MODAL WINDOW CORES) DEL QR CODE SUL SITO T9
   ========================================================================== */
.t9-modal-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(0, 0, 0, 0.6) !important; 
    backdrop-filter: blur(8px) !important; 
    -webkit-backdrop-filter: blur(8px) !important;
    z-index: 100000 !important; 
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease !important;
}

.t9-modal-overlay.open {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.t9-modal-content {
    background: rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    padding: 6.6cqw !important; /* 🎯 Convertito 24px in cqw (24 / 360 * 100) */
    border-radius: 6.6cqw !important; /* 🎯 Convertito 24px in cqw */
    box-shadow: 0 5.5cqw 13.8cqw rgba(0,0,0,0.3) !important; /* Convertito ombra 20px 50px */
    position: relative !important;
    max-width: 94cqw !important; /* 🎯 Convertito max-width: 280px in cqw (280 / 360 * 100) */
    width: 94% !important;
    transform: scale(0.85) !important;
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    text-align: center !important;
}

.t9-modal-overlay.open .t9-modal-content { 
    transform: scale(1) !important; 
}

/* La X di chiusura in alto a destra nel pop-up */
.t9-modal-close {
    position: absolute !important;
    top: 2.2cqw !important;   /* 🎯 Convertito 8px in cqw */
    right: 3.8cqw !important;  /* 🎯 Convertito 14px in cqw */
    font-size: 5.5cqw !important; /* 🎯 Convertito 1.6rem in cqw */
    color: #ffffff !important;
    cursor: pointer !important;
    opacity: 0.7 !important;
    transition: opacity 0.2s !important;
}
.t9-modal-close:hover { 
    opacity: 1 !important; 
}

/* ==========================================================================
   🎛️ 🌐 IL NUOVO QUADRO GLOSSY DEI SOCIAL IN MEZZO ALLA PAGINA (T9 GRID)
   ========================================================================== */
.public-social-container-t9 {
    padding: 0 4.1cqw !important; /* 🎯 Convertito 15px in cqw (15 / 360 * 100) */
    margin-top: 10cqw !important;   /* 🎯 Convertito 25px in cqw (25 / 360 * 100) */
    margin-bottom: 10cqw !important;   /* 🎯 Convertito 25px in cqw (25 / 360 * 100) */
}


.social-box-glossy {
    background: rgba(255, 255, 255, 0.06) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 5cqw !important; /* 🎯 Convertito 18px in cqw (18 / 360 * 100) */
    padding: 4.4cqw 3.3cqw !important; /* 🎯 Convertito 16px 12px in cqw */
    box-shadow: 0 1.1cqw 4.1cqw rgba(0,0,0,0.08) !important; /* Convertito ombra 4px 15px */
}

.scritta-social { 
    font-weight: 600 !important; 
    font-size: 3.4cqw !important; /* 🎯 Convertito 0.85rem in cqw proporzionato */
    text-transform: uppercase !important; 
    letter-spacing: 0.1cqw !important; /* Convertito 0.5px */
    opacity: 0.8 !important; 
}

.social-row-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 3.3cqw !important; /* 🎯 Convertito 12px in cqw */
}

/* 🌐 BOTTONE SOCIAL INTERMEDI: TONDI E REATTIVI INSIDE THE BOX */
.t9-social-inline-btn {
    width: 10cqw !important;     /* 🎯 Convertito 36px in cqw (36 / 360 * 100) per scala onboarding */
    height: 10cqw !important;
    min-width: 100cqw; /* Rimosso parametro fisso */
    min-width: 10cqw !important;
    min-height: 10cqw !important;
    
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 50% !important; /* Mantiene la sfericità perfetta */
    
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    transition: transform 0.1s ease !important;
    box-sizing: border-box !important;
}

.t9-social-inline-btn:active { 
    transform: scale(0.9) !important; 
}

/* Adatta proporzionalmente la dimensione dell'icona social interna */
.t9-social-inline-btn i { 
    font-size: 4cqw !important; /* 🎯 Convertito 1rem in cqw proporzionato */
    margin: 0 !important;
    padding: 0 !important;
    display: inline-block !important;
}

.social-icon-clear {
    /* [FONDAMENTALE] Forza il browser a usare Font Awesome per questo elemento */
    font-family: "Font Awesome 6 Brands", "Font Awesome 7 Brands", "Font Awesome 6 Free", "Font Awesome 7 Free" !important;
    
    /* [FONDAMENTALE] I brand richiedono un peso specifico per essere renderizzati */
    font-weight: 400 !important; 
    
    /* Assicura che l'icona mantenga uno stile visivo corretto e pulito */
    font-style: normal !important;
    display: inline-block !important;
}


/* ↕️ ORIZZONTI DI SPAZIATURA VERTICALE ELASTICA */
.section-spacer { 
    height: 25cqw !important; /* 🎯 Sradicato il vecchio 25vw instabile e convertito in 25cqw */
    width: 100% !important;
    display: block !important;
}

.section-spacer-little { 
    height: 10cqw !important; /* 🎯 Sradicato il vecchio 10vw instabile e convertito in 10cqw */
    width: 100% !important;
    display: block !important;
}

/* ==========================================================================
   🧼 RESET TOTALE: RIMOZIONE QUADRATINI E OMBRE RESIDUE SULLE ICONE (T9)
   ========================================================================== */
.t9-control-btn, 
.t9-control-btn span, 
.t9-control-btn a,
.t9-social-inline-btn,
.t9-social-inline-btn span {
    box-shadow: none !important;
    text-shadow: none !important;
    text-decoration: none !important;
    border-bottom: none !important;
}

/* Forza le icone FontAwesome ad essere un elemento unico centrato senza blocchi d'appoggio sottostanti */
.t9-control-bar i,
.social-row-grid i {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
}

/* Se l'effetto persiste, potrebbe essere un'ereditarietà dei vecchi pulsanti, azzeriamola */
.social-btn-raised {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}


/*  Per rimpicciolire le frecce detra e sinistra nella gallery di baguettebox */

/* 1. Fa trasparente il cerchio/blocco esterno delle frecce laterali */
#baguetteBox-overlay button#next-button,
#baguetteBox-overlay button#previous-button {
     
    background-color: transparent !important; 
}

/* 🎯 RIMPICCIOLISCE LA FRECCIA GRAFICA EFFETTIVA */
#baguetteBox-overlay .baguetteBox-button svg {
    /* Rimpicciolisce la freccia al 60% della sua dimensione originale */
    transform: scale(0.6) !important; 
    
    /* Assicura che la freccia rimanga centrata durante il rimpicciolimento */
    transform-origin: center !important; 
}

/* 🎯 AVVICINA LE FRECCE AI BORDI DELLA SCOCCA DELLO SMARTPHONE */

/* Spinge la freccia sinistra (Previous) verso il bordo sinistro */
#baguetteBox-overlay button#previous-button {
    left: -8px !important; /* Regola questo valore: 0px è il limite massimo attaccato al bordo */
}

/* Spinge la freccia destra (Next) verso il bordo destro */
#baguetteBox-overlay button#next-button {
    right: -8px !important; /* Regola questo valore: 0px è il limite massimo attaccato al bordo */
}