/*
|--------------------------------------------------------------------------
| GADIT Milano - Stile Globale
|--------------------------------------------------------------------------
| Uso:
| 1) Salva questo file in: css/gadit-style.css
| 2) Inserisci nelle pagine:
|    <link rel="stylesheet" href="css/gadit-style.css">
|--------------------------------------------------------------------------
*/


/* =========================
   Sfondo generale
========================= */


body.gadit-theme,
.gadit-theme{
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    background:
        radial-gradient(circle at 50% 0%, rgba(247, 223, 147, .24), transparent 22rem),
        radial-gradient(circle at 12% 18%, rgba(14, 90, 49, .28), transparent 18rem),
        radial-gradient(circle at 88% 82%, rgba(185, 31, 43, .20), transparent 18rem),
        linear-gradient(145deg, #000 0%, #0d0b08 50%, #030303 100%);
    color: var(--gadit-cream);
}

body.gadit-theme::before{
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    background:
        repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 16px),
        linear-gradient(90deg, transparent, rgba(214, 173, 87, .07), transparent);
    opacity: .7;
    z-index: -1;
}

/* =========================
   Layout base pagina
========================= */

.gadit-page{
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(1rem, 4vw, 3rem);
    position: relative;
}

.gadit-page-top{
    min-height: 100vh;
    padding: clamp(1rem, 4vw, 3rem);
    position: relative;
}

/* =========================
   Card principale
========================= */

.gadit-card{
    width: 100%;
    max-width: 760px;
    border: 1px solid var(--gadit-border);
    border-radius: 1.75rem;
    overflow: hidden;
    background: var(--gadit-card-bg);
    box-shadow:
        0 1.5rem 4rem rgba(0, 0, 0, .55),
        0 0 0 .35rem rgba(214, 173, 87, .08),
        inset 0 1px 0 rgba(255, 255, 255, .12);
    backdrop-filter: blur(10px);
    position: relative;
}

.gadit-card::before{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 64%;
    height: .36rem;
    pointer-events: none;
    border-radius: 0 0 .5rem .5rem;
    background: linear-gradient(
        90deg,
        var(--gadit-green) 0 33.333%,
        #fff 33.333% 66.666%,
        var(--gadit-red) 66.666% 100%
    );
    opacity: .95;
}

.gadit-card-sm{
    max-width: 500px;
}

.gadit-card-lg{
    max-width: 1040px;
}

.gadit-card-header{
    padding: 2rem 1.75rem 0;
    text-align: center;
}

.gadit-card-body{
    padding: 1.75rem;
}

/* =========================
   Logo badge
========================= */

.gadit-brand-badge{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: clamp(7.25rem, 24vw, 9.25rem);
    height: clamp(7.25rem, 24vw, 9.25rem);
    border-radius: 50%;
    padding: .35rem;
    background: radial-gradient(
        circle at 35% 25%,
        #fff9df,
        var(--gadit-gold-light) 22%,
        var(--gadit-gold) 55%,
        var(--gadit-gold-dark) 100%
    );
    box-shadow:
        0 1rem 2.25rem rgba(0,0,0,.55),
        0 0 0 .2rem rgba(214,173,87,.38),
        0 0 2.5rem rgba(214,173,87,.2);
}

.gadit-brand-badge img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 50%;
    filter: drop-shadow(0 .45rem .8rem rgba(0,0,0,.45));
}

/* =========================
   Titoli e testi
========================= */

.gadit-title{
    color: var(--gadit-gold-light);
    letter-spacing: .04em;
    text-transform: uppercase;
    text-shadow: 0 2px 0 rgba(0,0,0,.5);
    font-weight: 700;
}

.gadit-subtitle,
.gadit-muted,
.text-secondary.gadit-muted,
.text-muted.gadit-muted{
    color: var(--gadit-muted) !important;
}

.gadit-link,
.gadit-card a{
    color: var(--gadit-gold-light);
}

.gadit-link:hover,
.gadit-card a:hover{
    color: #fff4bd;
}

/* =========================
   Divisore tricolore
========================= */

.gadit-tricolore{
    display: flex;
    height: .28rem;
    border-radius: 999px;
    overflow: hidden;
    margin: 1rem auto 0;
    max-width: 16rem;
    box-shadow: 0 .35rem 1rem rgba(0,0,0,.25);
}

.gadit-tricolore span{
    flex: 1;
}

.gadit-tricolore span:nth-child(1){
    background: var(--gadit-green);
}

.gadit-tricolore span:nth-child(2){
    background: #fff;
}

.gadit-tricolore span:nth-child(3){
    background: var(--gadit-red);
}

/* =========================
   Form
========================= */

.gadit-card label,
.gadit-label{
    color: var(--gadit-gold-light);
    letter-spacing: .02em;
    font-weight: 600;
}

.gadit-card .form-control,
.gadit-card .form-select,
.gadit-input{
    min-height: 3rem;
    border-radius: .9rem;
    background: rgba(255, 248, 231, .96);
    border: 1px solid rgba(214,173,87,.45);
    color: #1f1608;
}

.gadit-card .form-control::placeholder,
.gadit-input::placeholder{
    color: rgba(31,22,8,.5);
}

.gadit-card .form-control:focus,
.gadit-card .form-select:focus,
.gadit-input:focus{
    border-color: var(--gadit-gold);
    box-shadow: 0 0 0 .25rem rgba(214, 173, 87, .18);
}

/* =========================
   Bottoni
========================= */

.gadit-btn,
.gadit-card .btn-primary{
    background: var(--gadit-gold);
    border-color: var(--gadit-gold);
    color: #120d04;
    min-height: 3rem;
    border-radius: .9rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    box-shadow: 0 .9rem 1.9rem rgba(214,173,87,.22);
}

.gadit-btn:hover,
.gadit-card .btn-primary:hover{
    background: var(--gadit-gold-light);
    border-color: var(--gadit-gold-light);
    color: #120d04;
}

.gadit-btn-dark{
    background: #3b3327;
    border-color: #3b3327;
    color: #fff;
}

/* =========================
   Box esito / alert
========================= */

.gadit-status{
    border-radius: 1rem;
    padding: 1rem;
    border: 1px solid rgba(214,173,87,.35);
    background: rgba(255,248,231,.06);
    color: var(--gadit-cream);
}

.gadit-status-success{
    border-color: rgba(14,90,49,.75);
    box-shadow: inset .28rem 0 0 var(--gadit-green);
}

.gadit-status-error{
    border-color: rgba(185,31,43,.75);
    box-shadow: inset .28rem 0 0 var(--gadit-red);
}

/* =========================
   Risultati ricerca
========================= */

.gadit-result-card,
.gadit-empty-result{
    display: block;
    background: rgba(255, 248, 231, .96);
    color: #17120a;
    border: 1px solid rgba(214,173,87,.45);
    border-left: .4rem solid var(--gadit-gold);
    border-radius: 1rem;
    padding: 1rem;
    margin-bottom: .8rem;
    text-decoration: none;
    font-family: Arial, Helvetica, sans-serif;
    box-shadow: 0 .55rem 1.25rem rgba(0,0,0,.18);
    transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.gadit-result-card:hover{
    transform: translateY(-1px);
    border-color: var(--gadit-gold);
    box-shadow: 0 .8rem 1.7rem rgba(214,173,87,.18);
    color: #17120a;
}

.gadit-result-title{
    font-weight: 800;
    color: #120d04;
    margin-bottom: .35rem;
}

.gadit-result-meta{
    color: #4e4536;
    font-size: .92rem;
    line-height: 1.45;
}

.gadit-empty-result{
    border-left-color: var(--gadit-red);
    color: #5c1018;
    font-weight: 700;
}

/* =========================
   Stile documento / PDF
========================= */

.gadit-pdf-shell{
    position: relative;
    padding: 2rem 1rem;
}

.gadit-pdf-paper{
    width: min(100%, 1040px);
    margin: 0 auto;
    background: #fffdf7;
    color: #1b1b1b;
    border: 1px solid rgba(214, 173, 87, .55);
    box-shadow:
        0 2rem 5rem rgba(0,0,0,.65),
        0 0 0 .45rem rgba(214, 173, 87, .08);
    border-radius: 10px;
    overflow: hidden;
}

.gadit-pdf-header{
    padding: 1.5rem 2rem 1rem;
    border-bottom: 2px solid var(--gadit-gold);
    background:
        linear-gradient(90deg, rgba(14,90,49,.08), transparent 25%, rgba(214,173,87,.16) 50%, transparent 75%, rgba(185,31,43,.08)),
        #fff;
}

.gadit-pdf-body{
    padding: 2rem;
}

.gadit-pdf-footer{
    padding: 1rem 2rem 1.5rem;
    color: #6c6250;
    text-align: center;
    font-size: .82rem;
    border-top: 1px solid #e6decf;
    background: #fffaf0;
}

/* =========================
   Checkbox ufficiali
========================= */

.gadit-official-checks{
    display: grid;
    gap: .75rem;
    margin: 1rem 0;
}

.gadit-official-check{
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: .85rem;
    padding: .95rem 1rem;
    border: 1px solid rgba(214, 173, 87, .55);
    border-left: 5px solid var(--gadit-gold);
    border-radius: .65rem;
    background: linear-gradient(90deg, rgba(214,173,87,.16), rgba(255,255,255,.95));
    box-shadow: 0 .35rem 1rem rgba(0,0,0,.06);
    cursor: pointer;
}

.gadit-official-check input[type="checkbox"]{
    appearance: none;
    width: 14px;
    height: 14px;
    border: 2px solid #777;
    border-radius: 2px;
    position: relative;
    cursor: pointer;
    margin-top: 2px;
    flex: 0 0 auto;
    background: #fff;
}

.gadit-official-check input[type="checkbox"]:checked{
    border-color: var(--gadit-green);
}

.gadit-official-check input[type="checkbox"]:checked::after{
    content: "✔";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -58%);
    font-size: 14px;
    color: var(--gadit-green);
    font-weight: bold;
    line-height: 1;
}

.gadit-official-check label{
    margin: 0;
    color: #211b10;
    font-size: .95rem;
    line-height: 1.45;
    font-weight: 700;
    cursor: pointer;
}

.gadit-official-check small{
    display: block;
    margin-top: .15rem;
    color: #6c6250;
    font-family: Arial, Helvetica, sans-serif;
    font-size: .8rem;
    font-weight: 400;
}

/* =========================
   Responsive
========================= */

@media (max-width: 575.98px){
    .gadit-page {
        align-items: stretch;
        padding: .75rem;
    }

    .gadit-card {
        max-width: none;
        border-radius: 1.25rem;
    }


}

/* =========================
   Stampa
========================= */

@media print{
    body.gadit-theme {
        background: #fff;
        color: #000;
    }

    body.gadit-theme::before {
        display: none;
    }

    .gadit-pdf-shell {
        padding: 0;
    }

    .gadit-pdf-paper {
        width: 100%;
        border: none;
        border-radius: 0;
        box-shadow: none;
    }

    .btn,
    .gadit-btn,
    input[type="reset"] {
        display: none !important;
    }
}


/* =========================================================
   GADIT APP - TOP FISSO + AREA CARICAMENTO SENZA FRAME/IFRAME
========================================================= */


body.gadit-theme.has-fixed-top{
    padding-top: var(--gadit-top-height, 112px);
}


.gadit-top-fixed .button,
.gadit-top-fixed button,
.gadit-top-fixed input[type="button"],
.gadit-top-fixed input[type="submit"]{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 2.55rem;
    padding: .58rem .86rem;
    border-radius: 999px;
    border: 1px solid rgba(214,173,87,.48) !important;
    background:
        linear-gradient(180deg, rgba(247,223,147,.22), rgba(214,173,87,.10)),
        rgba(255,248,231,.06) !important;
    color: var(--gadit-cream) !important;
    text-decoration: none !important;
    font-family: Arial, Helvetica, sans-serif;
    font-size: clamp(.72rem, .9vw, .86rem);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    line-height: 1.1;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 .45rem 1rem rgba(0,0,0,.22);
    transition: transform .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
    cursor: pointer;
}

.gadit-nav-button:hover,
.gadit-nav-button.is-active,
.gadit-top-fixed .button:hover,
.gadit-top-fixed button:hover,
.gadit-top-fixed input[type="button"]:hover,
.gadit-top-fixed input[type="submit"]:hover{
    transform: translateY(-1px);
    border-color: var(--gadit-gold) !important;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    color: #120d04 !important;
}

.gadit-nav-button-logout{
    border-color: rgba(185,31,43,.65) !important;
    background: linear-gradient(180deg, rgba(185,31,43,.26), rgba(80,8,14,.62)) !important;
}

.gadit-webmail-status{
    color: var(--gadit-gold-light);
    font-size: .78rem;
    max-width: 180px;
}


.gadit-dashboard-home{
    max-width: 1180px;
    margin: 0 auto;
}

@media (max-width: 1199.98px){
    body.gadit-theme.has-fixed-top{
        padding-top: var(--gadit-top-height-tablet, 150px);
    }

    .gadit-navbar-luxury{
        min-height: var(--gadit-top-height-tablet, 150px);
        grid-template-columns: 1fr auto;
    }

    .gadit-navbar-actions{
        grid-column: 1 / -1;
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: .25rem;
        scrollbar-width: thin;
    }

    .gadit-main-window{
        min-height: calc(100vh - var(--gadit-top-height-tablet, 150px));
    }
}

@media (max-width: 575.98px){
    body.gadit-theme.has-fixed-top{
        padding-top: var(--gadit-top-height-mobile, 168px);
    }


    .gadit-navbar-side{
        justify-content: flex-start;
    }


    .gadit-top-fixed .button,
.gadit-top-fixed button,
.gadit-top-fixed input[type="button"],
.gadit-top-fixed input[type="submit"]{
        min-height: 2.35rem;
        padding: .5rem .72rem;
        font-size: .68rem;
        white-space: nowrap;
    }

    .gadit-main-window{
        padding: .45rem;
        min-height: calc(100vh - var(--gadit-top-height-mobile, 168px));
    }

    .gadit-content-frame{
        border-radius: .9rem;
    }

    .gadit-content-inner{
        padding: .55rem;
    }
}

/* =========================================================
   GADIT MODAL FIX V5 - Pulsanti/Modali + scrollbar Nuova Guardia
   Regole intenzionalmente forti per prevalere su Bootstrap/DataTables.
========================================================= */
.modal.gadit-action-modal .modal-dialog,
.gadit-action-modal .modal-dialog{
    max-width: min(760px, calc(100vw - 1rem)) !important;
}

.modal.gadit-action-modal .modal-content,
.gadit-action-modal .modal-content,
.modal.gadit-action-modal .gadit-modal-content,
.gadit-action-modal .gadit-modal-content{
    overflow: hidden !important;
    border: 1px solid rgba(214, 173, 87, .62) !important;
    border-radius: 1.35rem !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(247, 223, 147, .16), transparent 18rem),
        linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.99)) !important;
    color: var(--gadit-cream) !important;
    box-shadow:
        0 1.35rem 3.4rem rgba(0,0,0,.62),
        0 0 0 .28rem rgba(214,173,87,.10),
        inset 0 1px 0 rgba(255,255,255,.12) !important;
}

.modal.gadit-action-modal .modal-content::before,
.gadit-action-modal .modal-content::before{
    content: "";
    display: block;
    height: .32rem;
    background: linear-gradient(90deg, var(--gadit-green) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red) 66.666% 100%);
}

.modal.gadit-action-modal .modal-header,
.modal.gadit-action-modal .modal-footer,
.gadit-action-modal .modal-header,
.gadit-action-modal .modal-footer{
    border-color: rgba(214,173,87,.34) !important;
    background: rgba(255,248,231,.045) !important;
}

.modal.gadit-action-modal .modal-title,
.gadit-action-modal .modal-title{
    color: var(--gadit-gold-light) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.55) !important;
}

.modal.gadit-action-modal .modal-body,
.gadit-action-modal .modal-body{
    color: var(--gadit-cream) !important;
    background: transparent !important;
}

.modal.gadit-action-modal label,
.gadit-action-modal label{
    color: var(--gadit-gold-light) !important;
    font-weight: 800 !important;
    letter-spacing: .02em !important;
}

.modal.gadit-action-modal .form-control,
.modal.gadit-action-modal .form-select,
.gadit-action-modal .form-control,
.gadit-action-modal .form-select{
    min-height: 2.85rem !important;
    border-radius: .9rem !important;
    border: 1px solid rgba(214,173,87,.5) !important;
    background: rgba(255,248,231,.96) !important;
    color: #1f1608 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45) !important;
}

.modal.gadit-action-modal .form-control:focus,
.modal.gadit-action-modal .form-select:focus,
.gadit-action-modal .form-control:focus,
.gadit-action-modal .form-select:focus{
    border-color: var(--gadit-gold) !important;
    box-shadow: 0 0 0 .24rem rgba(214,173,87,.2) !important;
}

.modal.gadit-action-modal .modal-footer,
.gadit-action-modal .modal-footer{
    gap: .65rem !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
}

.modal.gadit-action-modal .modal-footer .btn,
.modal.gadit-action-modal form .btn,
.gadit-action-modal .modal-footer .btn,
.gadit-action-modal form .btn{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .42rem !important;
    min-height: 2.75rem !important;
    padding: .62rem 1rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.62) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .055em !important;
    line-height: 1 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 .55rem 1.15rem rgba(0,0,0,.30) !important;
    transition: transform .15s ease, filter .15s ease, background .15s ease, color .15s ease !important;
}

.modal.gadit-action-modal .btn-secondary,
.gadit-action-modal .btn-secondary{
    background: linear-gradient(180deg, rgba(255,248,231,.16), rgba(59,51,39,.86)) !important;
    color: var(--gadit-cream) !important;
    border-color: rgba(214,173,87,.42) !important;
}

.modal.gadit-action-modal .btn-success,
.gadit-action-modal .btn-success{
    background: linear-gradient(180deg, rgba(247,223,147,.92), rgba(14,90,49,.96)) !important;
    color: #fff8e7 !important;
    border-color: rgba(247,223,147,.76) !important;
}

.modal.gadit-action-modal .btn-danger,
.gadit-action-modal .btn-danger{
    background: linear-gradient(180deg, rgba(247,223,147,.82), rgba(185,31,43,.96)) !important;
    color: #fff8e7 !important;
    border-color: rgba(247,223,147,.72) !important;
}

.modal.gadit-action-modal .btn-warning,
.gadit-action-modal .btn-warning{
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    color: #120d04 !important;
    border-color: var(--gadit-gold-light) !important;
}

.modal.gadit-action-modal .btn:hover,
.gadit-action-modal .btn:hover{
    transform: translateY(-1px) !important;
    filter: brightness(1.08) !important;
}


/* Barra intestazione + scrollbar GADIT per modal Anagrafica */
.modal.gadit-action-modal .gadit-modal-header-centered,
.gadit-action-modal .gadit-modal-header-centered{
    position: relative !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 1rem 3.25rem 1rem 1rem !important;
}

.modal.gadit-action-modal .gadit-modal-heading,
.gadit-action-modal .gadit-modal-heading{
    width: 100% !important;
    min-width: 0 !important;
}

.modal.gadit-action-modal .gadit-modal-bar,
.gadit-action-modal .gadit-modal-bar{
    margin-top: .65rem !important;
    max-width: 18rem !important;
}

.modal.gadit-action-modal .gadit-modal-close,
.gadit-action-modal .gadit-modal-close{
    position: absolute !important;
    right: 1rem !important;
    top: 1rem !important;
    margin: 0 !important;
}

.modal.gadit-action-modal .modal-body.gadit-modal-body,
.gadit-action-modal .modal-body.gadit-modal-body{
    max-height: min(70vh, 640px) !important;
    overflow-y: auto !important;
    scrollbar-width: thin !important;
    scrollbar-color: var(--gadit-gold) rgba(5,4,3,.75) !important;
}

.modal.gadit-action-modal .modal-body.gadit-modal-body::-webkit-scrollbar,
.gadit-action-modal .modal-body.gadit-modal-body::-webkit-scrollbar{
    width: 10px !important;
    height: 10px !important;
    display: block !important;
}

.modal.gadit-action-modal .modal-body.gadit-modal-body::-webkit-scrollbar-track,
.gadit-action-modal .modal-body.gadit-modal-body::-webkit-scrollbar-track{
    background: rgba(5,4,3,.86) !important;
    border-left: 1px solid rgba(214,173,87,.22) !important;
}

.modal.gadit-action-modal .modal-body.gadit-modal-body::-webkit-scrollbar-thumb,
.gadit-action-modal .modal-body.gadit-modal-body::-webkit-scrollbar-thumb{
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold-dark)) !important;
    border: 2px solid rgba(5,4,3,.86) !important;
}

.modal.gadit-action-modal .modal-body.gadit-modal-body::-webkit-scrollbar-thumb:hover,
.gadit-action-modal .modal-body.gadit-modal-body::-webkit-scrollbar-thumb:hover{
    background: linear-gradient(180deg, #fff4bd, var(--gadit-gold)) !important;
}

@media (max-width: 575.98px){
    .modal.gadit-action-modal .modal-body.gadit-modal-body,
    .gadit-action-modal .modal-body.gadit-modal-body{
        max-height: calc(100vh - 11.5rem) !important;
    }

    .modal.gadit-action-modal .gadit-modal-header-centered,
    .gadit-action-modal .gadit-modal-header-centered{
        padding-right: 2.75rem !important;
    }

    .modal.gadit-action-modal .modal-title,
    .gadit-action-modal .modal-title{
        font-size: .95rem !important;
        line-height: 1.25 !important;
    }
}

/* Barra/scroll della modal Nuova Guardia in stile GADIT */
#nuovaGuardiaModal .modal-body.gadit-modal-body,
#nuovaGuardiaModal .gadit-modal-frame{
    scrollbar-width: thin !important;
    scrollbar-color: var(--gadit-gold) rgba(5,4,3,.75) !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar,
#nuovaGuardiaModal .gadit-modal-frame::-webkit-scrollbar{
    width: 10px !important;
    height: 10px !important;
    display: block !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar-track,
#nuovaGuardiaModal .gadit-modal-frame::-webkit-scrollbar-track{
    background: rgba(5,4,3,.86) !important;
    border-left: 1px solid rgba(214,173,87,.22) !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar-thumb,
#nuovaGuardiaModal .gadit-modal-frame::-webkit-scrollbar-thumb{
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold-dark)) !important;
    border: 2px solid rgba(5,4,3,.86) !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar-thumb:hover,
#nuovaGuardiaModal .gadit-modal-frame::-webkit-scrollbar-thumb:hover{
    background: linear-gradient(180deg, #fff4bd, var(--gadit-gold)) !important;
}

@media (max-width: 575.98px){
    .modal.gadit-action-modal .modal-dialog,
    .gadit-action-modal .modal-dialog{
        margin: .45rem !important;
        max-width: calc(100vw - .9rem) !important;
    }

    .modal.gadit-action-modal .modal-footer,
    .gadit-action-modal .modal-footer{
        flex-direction: column-reverse !important;
        align-items: stretch !important;
    }

    .modal.gadit-action-modal .modal-footer form,
    .modal.gadit-action-modal .modal-footer .btn,
    .gadit-action-modal .modal-footer form,
    .gadit-action-modal .modal-footer .btn{
        width: 100% !important;
    }
}


/* =========================================================
   FIX V7 - Barra e scroll GADIT visibili nella modal Anagrafica
   Nota: il form ora è il contenitore .modal-content per mantenere
   header, body scrollabile e footer nella struttura Bootstrap corretta.
========================================================= */
.modal.gadit-action-modal .gadit-edit-modal-form{
    position: relative !important;
    overflow: hidden !important;
    max-height: calc(100vh - 2rem) !important;
    display: flex !important;
    flex-direction: column !important;
}

.modal.gadit-action-modal .gadit-edit-modal-form::before{
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(64%, 18rem) !important;
    height: .36rem !important;
    z-index: 3 !important;
    border-radius: 0 0 .55rem .55rem !important;
    background: linear-gradient(90deg, var(--gadit-green) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red) 66.666% 100%) !important;
    box-shadow: 0 .35rem 1rem rgba(0,0,0,.28) !important;
}

.modal.gadit-action-modal .gadit-edit-modal-form .gadit-modal-header{
    flex: 0 0 auto !important;
    padding-top: 1.25rem !important;
}

.modal.gadit-action-modal .gadit-edit-modal-body{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    max-height: none !important;
    scrollbar-width: thin !important;
    scrollbar-color: var(--gadit-gold) rgba(5,4,3,.78) !important;
}

.modal.gadit-action-modal .gadit-edit-modal-form .modal-footer{
    flex: 0 0 auto !important;
    position: sticky !important;
    bottom: 0 !important;
    z-index: 2 !important;
    background: linear-gradient(180deg, rgba(18,17,14,.96), rgba(5,4,3,.98)) !important;
    border-top: 1px solid rgba(214,173,87,.42) !important;
}

.modal.gadit-action-modal .gadit-edit-modal-body::-webkit-scrollbar{
    width: 12px !important;
    height: 12px !important;
    display: block !important;
}

.modal.gadit-action-modal .gadit-edit-modal-body::-webkit-scrollbar-track{
    background: rgba(5,4,3,.88) !important;
    border-left: 1px solid rgba(214,173,87,.25) !important;
}

.modal.gadit-action-modal .gadit-edit-modal-body::-webkit-scrollbar-thumb{
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold), var(--gadit-gold-dark)) !important;
    border: 2px solid rgba(5,4,3,.88) !important;
}

@media (max-width: 575.98px){
    .modal.gadit-action-modal .gadit-edit-modal-form{
        max-height: calc(100dvh - 1rem) !important;
    }

    .modal.gadit-action-modal .modal-dialog{
        margin: .5rem !important;
    }
}

/* =========================================================
   FIX V8 - Spaziatura mobile Anagrafica
   Migliora distanza label/campo nella modal modifica anagrafica
   senza variare logica o nomi dei campi.
========================================================= */
.modal.gadit-action-modal .gadit-edit-modal-body .container-fluid{
    padding-left: clamp(.65rem, 2vw, 1rem) !important;
    padding-right: clamp(.65rem, 2vw, 1rem) !important;
}

.modal.gadit-action-modal .gadit-edit-modal-body .row{
    align-items: center !important;
    row-gap: .45rem !important;
    margin-bottom: .9rem !important;
}

.modal.gadit-action-modal .gadit-edit-modal-body label,
.modal.gadit-action-modal .gadit-edit-modal-body .control-label{
    display: block !important;
    position: static !important;
    top: auto !important;
    margin: 0 !important;
    padding-top: .15rem !important;
    color: var(--gadit-gold-light) !important;
    font-weight: 800 !important;
    letter-spacing: .025em !important;
    line-height: 1.25 !important;
}

.modal.gadit-action-modal .gadit-edit-modal-body .form-control,
.modal.gadit-action-modal .gadit-edit-modal-body .form-select{
    width: 100% !important;
    margin: 0 !important;
}

@media (max-width: 767.98px){
    .modal.gadit-action-modal .gadit-edit-modal-body{
        padding: 1rem .75rem 1.15rem !important;
    }

    .modal.gadit-action-modal .gadit-edit-modal-body .container-fluid{
        padding-left: .25rem !important;
        padding-right: .25rem !important;
    }

    .modal.gadit-action-modal .gadit-edit-modal-body .row{
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 1.05rem !important;
        padding: .72rem .68rem .78rem !important;
        border: 1px solid rgba(214,173,87,.22) !important;
        border-radius: .95rem !important;
        background: rgba(255,248,231,.045) !important;
        row-gap: .58rem !important;
    }

    .modal.gadit-action-modal .gadit-edit-modal-body .row > [class*="col-"]{
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .modal.gadit-action-modal .gadit-edit-modal-body label,
    .modal.gadit-action-modal .gadit-edit-modal-body .control-label{
        margin-bottom: .48rem !important;
        font-size: .86rem !important;
    }

    .modal.gadit-action-modal .gadit-edit-modal-body .form-control,
    .modal.gadit-action-modal .gadit-edit-modal-body .form-select{
        min-height: 2.85rem !important;
        border-radius: .85rem !important;
        font-size: 1rem !important;
    }

    .modal.gadit-action-modal .gadit-edit-modal-form .modal-footer{
        padding: .8rem .9rem !important;
        gap: .6rem !important;
    }
}

/* =========================================================
   GADIT - Rifiniture modal Anagrafica v9
========================================================= */
.gadit-action-modal .gadit-edit-modal-header{
    padding-right: 4.25rem !important;
}

.gadit-action-modal .gadit-modal-x{
    position: absolute;
    top: .85rem;
    right: .85rem;
    width: 2.65rem;
    height: 2.65rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(214, 173, 87, .72);
    background:
        radial-gradient(circle at 35% 22%, rgba(247,223,147,.95), rgba(214,173,87,.62) 42%, rgba(80,8,14,.82) 100%);
    color: #fff8e7;
    box-shadow: 0 .65rem 1.25rem rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.22);
    text-shadow: 0 1px 0 rgba(0,0,0,.55);
    cursor: pointer;
    transition: transform .15s ease, filter .15s ease, border-color .15s ease;
    z-index: 5;
}

.gadit-action-modal .gadit-modal-x:hover,
.gadit-action-modal .gadit-modal-x:focus{
    transform: translateY(-1px) scale(1.03);
    filter: brightness(1.1);
    border-color: var(--gadit-gold-light);
    outline: none;
}

.gadit-action-modal .gadit-territory-row{
    position: relative;
}

.gadit-action-modal .gadit-filter-field{
    padding-right: 2.4rem !important;
    background-image:
        linear-gradient(45deg, transparent 50%, #7d5220 50%),
        linear-gradient(135deg, #7d5220 50%, transparent 50%);
    background-position:
        calc(100% - 1.05rem) 1.22rem,
        calc(100% - .72rem) 1.22rem;
    background-size: .36rem .36rem, .36rem .36rem;
    background-repeat: no-repeat;
}

.gadit-action-modal .gadit-field-help{
    display: block;
    margin-top: .35rem;
    color: var(--gadit-muted);
    font-family: Arial, Helvetica, sans-serif;
    font-size: .78rem;
    line-height: 1.25;
}

@media (max-width: 575.98px){
    .gadit-action-modal .gadit-edit-modal-header{
        padding: 1rem 3.7rem 1rem 1rem !important;
    }

    .gadit-action-modal .gadit-modal-x{
        top: .72rem;
        right: .72rem;
        width: 2.45rem;
        height: 2.45rem;
    }

    .gadit-action-modal .gadit-field-help{
        margin-top: .4rem;
        font-size: .76rem;
    }
}

/* =========================================================
   GADIT - Correzioni modal Anagrafica v10
   - X sempre visibile
   - Select ricercabili Regione / Provincia / Comune
   - Residenza e CAP sotto Comune
========================================================= */
.modal.gadit-action-modal .select2-container{
    width: 100% !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

.modal.gadit-action-modal .select2-container--bootstrap-5 .select2-selection,
.modal.gadit-action-modal .select2-container--default .select2-selection--single{
    min-height: 2.85rem !important;
    border-radius: .9rem !important;
    border: 1px solid rgba(214,173,87,.5) !important;
    background: rgba(255,248,231,.96) !important;
    color: #1f1608 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45) !important;
    display: flex !important;
    align-items: center !important;
}

.modal.gadit-action-modal .select2-container--bootstrap-5 .select2-selection__rendered,
.modal.gadit-action-modal .select2-container--default .select2-selection--single .select2-selection__rendered{
    color: #1f1608 !important;
    line-height: 2.75rem !important;
    padding-left: .85rem !important;
}

.modal.gadit-action-modal .select2-container--bootstrap-5 .select2-selection__arrow,
.modal.gadit-action-modal .select2-container--default .select2-selection--single .select2-selection__arrow{
    height: 2.75rem !important;
    right: .65rem !important;
}

.select2-dropdown{
    border: 1px solid rgba(214,173,87,.72) !important;
    border-radius: .85rem !important;
    overflow: hidden !important;
    background: #fff8e7 !important;
    box-shadow: 0 .85rem 1.8rem rgba(0,0,0,.32) !important;
    z-index: 20000 !important;
}

.select2-search__field{
    min-height: 2.45rem !important;
    border-radius: .65rem !important;
    border: 1px solid rgba(214,173,87,.55) !important;
    outline: none !important;
}

.select2-results__option{
    color: #1f1608 !important;
    padding: .55rem .75rem !important;
}

.select2-results__option--highlighted,
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable,
.select2-container--bootstrap-5 .select2-results__option--highlighted{
    background: var(--gadit-gold, #d6ad57) !important;
    color: #120d04 !important;
}

/* FIX V11 - X chiusura Anagrafica in stile GADIT */
.modal.gadit-action-modal .gadit-edit-modal-header{
    position: relative !important;
    padding-right: 4.25rem !important;
}
.modal.gadit-action-modal .gadit-modal-x{
    position: absolute !important;
    top: .75rem !important;
    right: .85rem !important;
    z-index: 20 !important;
    width: 2.35rem !important;
    height: 2.35rem !important;
    min-width: 2.35rem !important;
    min-height: 2.35rem !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.76) !important;
    background: radial-gradient(circle at 35% 25%, var(--gadit-gold-light), var(--gadit-gold) 58%, var(--gadit-gold-dark)) !important;
    color: #120d04 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 1.45rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-shadow: none !important;
    box-shadow: 0 .45rem 1rem rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.4) !important;
    opacity: 1 !important;
    cursor: pointer !important;
}
.modal.gadit-action-modal .gadit-modal-x span{
    display: block !important;
    transform: translateY(-1px) !important;
}
.modal.gadit-action-modal .gadit-modal-x:hover{
    transform: translateY(-1px) !important;
    filter: brightness(1.08) !important;
}
@media (max-width: 575.98px){
    .modal.gadit-action-modal .gadit-edit-modal-header{
        padding-right: 3.7rem !important;
    }
    .modal.gadit-action-modal .gadit-modal-x{
        top: .55rem !important;
        right: .6rem !important;
        width: 2.15rem !important;
        height: 2.15rem !important;
        min-width: 2.15rem !important;
        min-height: 2.15rem !important;
        font-size: 1.3rem !important;
    }
}

/* =========================================================
   ANAGRAFICA - SEZIONE RESIDENZA
========================================================= */
.gadit-residenza-section{
    margin: .5rem 0 1rem;
    padding: 1rem;
    border: 1px solid rgba(214,173,87,.38);
    border-radius: 1rem;
    background: rgba(255,248,231,.045);
}

.gadit-section-title{
    margin-bottom: .85rem;
    color: var(--gadit-gold-light);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: .9rem;
    border-left: .28rem solid var(--gadit-gold);
    padding-left: .7rem;
}

.gadit-required{
    color: var(--gadit-gold-light);
    font-weight: 900;
}

.gadit-edit-modal-form select:required:invalid,
.gadit-edit-modal-form .form-select:required:invalid{
    border-color: rgba(185,31,43,.75);
    box-shadow: 0 0 0 .18rem rgba(185,31,43,.12);
}

@media (max-width: 575.98px){
    .gadit-residenza-section{
        padding: .85rem;
        border-radius: .9rem;
    }

    .gadit-residenza-section .gadit-edit-row{
        margin-bottom: .9rem;
    }
}

/* =========================================================
   GADIT - Modal firma con canvas touch/mouse
========================================================= */
.gadit-firma-modal .modal-dialog{
    max-width: min(1120px, calc(100vw - 1rem)) !important;
}
.gadit-firma-modal .modal-content{
    overflow: hidden;
}
.gadit-firma-modal-body{
    background:
        radial-gradient(circle at 50% 0%, rgba(247,223,147,.16), transparent 18rem),
        linear-gradient(145deg, rgba(5,4,3,.96), rgba(18,17,14,.98));
}
.gadit-firma-frame{
    display: block;
    width: 100%;
    height: min(78vh, 780px);
    min-height: 560px;
    border: 0;
    background: transparent;
}
@media (max-width: 575.98px){
    .gadit-firma-modal .modal-dialog{
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        margin: 0 !important;
    }
    .gadit-firma-modal .modal-content{
        height: 100dvh !important;
        border-radius: 0 !important;
        border: 0 !important;
    }
    .gadit-firma-frame{
        height: calc(100dvh - 86px) !important;
        min-height: 0 !important;
    }
}


/* =========================================================
   GADIT ODS - gestione, registrazione e modali
========================================================= */
.gadit-ods-shell{
    width: min(100%, 1600px);
    margin: 0 auto;
}
.gadit-ods-card{
    max-width: none !important;
    border-radius: 1.35rem !important;
}
.gadit-ods-toolbar{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}
.gadit-ods-toolbar .gadit-nav-button{
    min-height: 2.55rem;
}
.gadit-ods-table-wrap{
    background: rgba(255,248,231,.965);
    color: #17120a;
    border: 1px solid rgba(214,173,87,.45);
    border-radius: 1.05rem;
    padding: .75rem;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45), 0 .8rem 1.8rem rgba(0,0,0,.26);
    overflow-x: auto;
}
.gadit-ods-table{
    width: 100% !important;
    margin: 0 !important;
    font-family: Arial, Helvetica, sans-serif;
    vertical-align: middle;
}
.gadit-ods-table thead th{
    background: linear-gradient(180deg, #2b2115, #120d04) !important;
    color: var(--gadit-gold-light) !important;
    border-color: rgba(214,173,87,.35) !important;
    text-transform: uppercase;
    letter-spacing: .035em;
    font-size: .78rem;
    white-space: nowrap;
    text-align: center !important;
}
.gadit-ods-table tbody td{
    border-color: rgba(125,82,32,.22) !important;
    vertical-align: middle !important;
}
.gadit-ods-table tbody tr:hover td{
    background: rgba(214,173,87,.11) !important;
}
.gadit-ods-status-img{
    width: 42px;
    height: 42px;
    object-fit: contain;
    filter: drop-shadow(0 .2rem .25rem rgba(0,0,0,.25));
}
.gadit-row-actions{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    flex-wrap: wrap;
}
.gadit-action-btn{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: .38rem;
    min-height: 2.35rem;
    padding: .52rem .78rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
    letter-spacing: .045em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    line-height: 1 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 .45rem .95rem rgba(0,0,0,.24) !important;
}
.gadit-action-btn:hover{ transform: translateY(-1px); filter: brightness(1.06); }
.gadit-action-btn-success{ background: linear-gradient(180deg, rgba(247,223,147,.9), rgba(14,90,49,.96)) !important; color: #fff8e7 !important; }
.gadit-action-btn-danger{ background: linear-gradient(180deg, rgba(247,223,147,.82), rgba(185,31,43,.96)) !important; color: #fff8e7 !important; }
.gadit-ods-form-card{ max-width: 980px !important; margin: 0 auto; }
.gadit-form-section{
    border: 1px solid rgba(214,173,87,.28);
    border-radius: 1rem;
    background: rgba(255,248,231,.045);
    padding: 1rem;
    margin-bottom: 1rem;
}
.gadit-form-section .input-group-text{
    background: linear-gradient(180deg, rgba(247,223,147,.92), rgba(214,173,87,.82)) !important;
    color: #120d04 !important;
    border: 1px solid rgba(214,173,87,.5) !important;
    border-radius: .9rem 0 0 .9rem !important;
    font-weight: 900 !important;
    min-width: 13rem;
    justify-content: flex-start;
}
.gadit-form-section .form-control,
.gadit-form-section .form-select,
.gadit-form-section textarea{
    min-height: 3rem;
    border-radius: 0 .9rem .9rem 0 !important;
    background: rgba(255,248,231,.96) !important;
    border: 1px solid rgba(214,173,87,.45) !important;
    color: #1f1608 !important;
}
.gadit-char-count{
    width: 100%;
    margin-top: .35rem;
    color: var(--gadit-muted);
    font-family: Arial, Helvetica, sans-serif;
    font-size: .82rem;
    text-align: right;
}
.dataTables_wrapper,
.dt-container{ font-family: Arial, Helvetica, sans-serif; }
.dt-container .dt-search input,
.dt-container .dt-length select,
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select{
    border-radius: .75rem !important;
    border: 1px solid rgba(214,173,87,.45) !important;
    background: #fff8e7 !important;
    color: #120d04 !important;
    min-height: 2.35rem;
}
.dt-container .dt-paging .dt-paging-button.current,
.dt-container .dt-paging .dt-paging-button.current:hover{
    background: var(--gadit-gold) !important;
    border-color: var(--gadit-gold) !important;
    color: #120d04 !important;
}
@media (max-width: 767.98px){
    .gadit-ods-toolbar{ align-items: stretch; }
    .gadit-ods-toolbar .gadit-nav-button{ width: 100%; }
    .gadit-form-section{ padding: .8rem; }
    .gadit-form-section .input-group{ display: block; }
    .gadit-form-section .input-group-text{
        width: 100%;
        min-width: 0;
        border-radius: .9rem .9rem 0 0 !important;
        margin-bottom: 0;
    }
    .gadit-form-section .form-control,
    .gadit-form-section .form-select,
    .gadit-form-section textarea{
        width: 100% !important;
        border-radius: 0 0 .9rem .9rem !important;
    }
}

/* =========================================================
   GADIT DASHBOARD - Stili migrati da dashboard.php
   ========================================================= */
:root{
            --gadit-top-height: 0px;
            --gadit-safe-gap: clamp(.45rem, 1.2vw, .85rem);
        }

        *, *::before, *::after{ box-sizing: border-box; }

        /* FIX TOP: il top è già nella griglia, quindi non deve aggiungere padding progressivo */
        body.gadit-app-shell.has-fixed-top,
        body.gadit-theme.gadit-app-shell.has-fixed-top{
            padding-top: 0 !important;
        }


        html,
        body{
            width: 100%;
            height: 100%;
            min-height: 100%;
            margin: 0;
            overflow: hidden !important;
        }

        body.gadit-app-shell{
            display: grid;
            grid-template-rows: auto minmax(0, 1fr);
            min-height: 100vh;
            min-height: 100dvh;
            max-height: 100vh;
            max-height: 100dvh;
        }

        .gadit-top-fixed{
            position: relative;
            z-index: 1050;
            width: 100%;
            max-width: 100vw;
            overflow: clip;
        }

        .gadit-navbar-luxury{
            width: 100%;
            max-width: 100vw;
            display: grid;
            grid-template-columns: minmax(15rem, .9fr) minmax(0, 2.3fr) auto;
            align-items: center;
            gap: var(--gadit-safe-gap);
            padding: clamp(.45rem, 1.15vw, .8rem) clamp(.55rem, 1.5vw, 1.1rem);
        }

        .gadit-navbar-brand-area,
        .gadit-navbar-actions,
        .gadit-navbar-side,
        .gadit-brand-link{
            min-width: 0;
        }

        .gadit-brand-link{
            display: flex;
            align-items: center;
            gap: .65rem;
            text-decoration: none;
        }

        .gadit-navbar-logo{
            width: clamp(2.45rem, 5vw, 3.85rem);
            height: clamp(2.45rem, 5vw, 3.85rem);
            flex: 0 0 auto;
            object-fit: contain;
        }

        .gadit-brand-text{
            display: block;
            min-width: 0;
            line-height: 1.15;
        }

        .gadit-brand-text strong,
        .gadit-brand-text small{
            display: block;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .gadit-brand-text strong{
            font-size: clamp(.78rem, 1.45vw, 1.05rem);
        }

        .gadit-brand-text small{
            font-size: clamp(.66rem, 1vw, .82rem);
        }

        .gadit-navbar-actions{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(8.8rem, 1fr));
            gap: .45rem;
            align-items: stretch;
            width: 100%;
            overflow: hidden;
        }

        .gadit-nav-button{
            min-width: 0;
            min-height: clamp(2.25rem, 4.2vw, 2.9rem);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: .45rem .6rem;
            border-radius: .8rem;
            text-align: center;
            text-decoration: none;
            line-height: 1.1;
        }

        .gadit-nav-button span{
            display: block;
            max-width: 100%;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
            font-size: clamp(.68rem, .95vw, .82rem);
        }

        .gadit-main-window{
            min-width: 0;
            min-height: 0;
            width: 100%;
            height: 100%;
            max-width: 100vw;
            overflow: hidden !important;
            padding: 0;
            margin: 0;
        }

        .gadit-content-frame,
        .gadit-content-inner{
            position: relative;
            width: 100%;
            height: 100%;
            min-width: 0;
            min-height: 0;
            max-width: 100vw;
            overflow: auto;
            scrollbar-width: none;
            -ms-overflow-style: none;
        }

        .gadit-content-frame,
        .gadit-content-inner,
        .gadit-scroll-clean,
        .dataTables_scrollBody,
        .dt-scroll-body,
        .dt-scroll,
        .table-responsive{
            scrollbar-width: thin;
            scrollbar-color: var(--gadit-gold) rgba(5,4,3,.78);
        }

        .gadit-content-frame::-webkit-scrollbar,
        .gadit-content-inner::-webkit-scrollbar,
        .gadit-scroll-clean::-webkit-scrollbar,
        .dataTables_scrollBody::-webkit-scrollbar,
        .dt-scroll-body::-webkit-scrollbar,
        .dt-scroll::-webkit-scrollbar,
        .table-responsive::-webkit-scrollbar{
            width: 10px !important;
            height: 10px !important;
            display: block !important;
        }

        .gadit-content-frame::-webkit-scrollbar-track,
        .gadit-content-inner::-webkit-scrollbar-track,
        .gadit-scroll-clean::-webkit-scrollbar-track,
        .dataTables_scrollBody::-webkit-scrollbar-track,
        .dt-scroll-body::-webkit-scrollbar-track,
        .dt-scroll::-webkit-scrollbar-track,
        .table-responsive::-webkit-scrollbar-track{
            background: rgba(5,4,3,.86) !important;
            border: 1px solid rgba(214,173,87,.18) !important;
        }

        .gadit-content-frame::-webkit-scrollbar-thumb,
        .gadit-content-inner::-webkit-scrollbar-thumb,
        .gadit-scroll-clean::-webkit-scrollbar-thumb,
        .dataTables_scrollBody::-webkit-scrollbar-thumb,
        .dt-scroll-body::-webkit-scrollbar-thumb,
        .dt-scroll::-webkit-scrollbar-thumb,
        .table-responsive::-webkit-scrollbar-thumb{
            border-radius: 999px !important;
            background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold-dark)) !important;
            border: 2px solid rgba(5,4,3,.86) !important;
        }

        .gadit-content-loader{
            position: fixed;
            top: calc(var(--gadit-top-height) + .75rem);
            right: .75rem;
            z-index: 1100;
            padding: .65rem .9rem;
            border-radius: .85rem;
            border: 1px solid var(--gadit-border);
            background: rgba(5, 4, 3, .92);
            color: var(--gadit-gold-light);
            box-shadow: 0 .75rem 1.5rem rgba(0,0,0,.35);
        }

        .gadit-content-inner.is-loading{ opacity: .55; }

        .gadit-content-inner > .gadit-page,
        .gadit-content-inner > .gadit-page-top,
        .gadit-content-inner .gadit-page,
        .gadit-content-inner .gadit-page-top{
            width: 100%;
            max-width: 100%;
            min-height: 100%;
            align-items: stretch;
            justify-content: flex-start;
            padding: clamp(.5rem, 1.5vw, 1.2rem);
        }

        .gadit-content-inner > .gadit-card,
        .gadit-content-inner .gadit-dashboard-home,
        .gadit-content-inner .gadit-card-lg,
        .gadit-content-inner .gadit-fullscreen-panel{
            width: 100%;
            max-width: none !important;
            min-height: 100%;
            border-radius: 0;
        }

        .gadit-content-inner .container,
        .gadit-content-inner .container-sm,
        .gadit-content-inner .container-md,
        .gadit-content-inner .container-lg,
        .gadit-content-inner .container-xl,
        .gadit-content-inner .container-xxl{
            width: 100% !important;
            max-width: none !important;
            padding-left: clamp(.5rem, 1.4vw, 1rem);
            padding-right: clamp(.5rem, 1.4vw, 1rem);
        }

        .gadit-content-inner table{
            width: 100% !important;
        }

        .gadit-content-inner .table-responsive,
        .gadit-content-inner .dataTables_wrapper,
        .gadit-content-inner .dt-container{
            width: 100%;
            max-width: 100%;
            overflow: auto;
            scrollbar-width: thin;
            scrollbar-color: var(--gadit-gold) rgba(5,4,3,.78);
        }

        .gadit-content-inner table.table,
        .gadit-content-inner .dataTable{
            border-radius: .9rem;
            overflow: hidden;
            background: rgba(255,248,231,.96);
            color: #1f1608;
            font-family: Arial, Helvetica, sans-serif;
        }

        .gadit-content-inner table.table thead th,
        .gadit-content-inner .dataTable thead th{
            background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
            color: #120d04 !important;
            border-color: rgba(125,82,32,.35) !important;
            text-transform: uppercase;
            letter-spacing: .04em;
            font-size: .78rem;
        }

        .gadit-content-inner table.table tbody td,
        .gadit-content-inner .dataTable tbody td{
            border-color: rgba(125,82,32,.16) !important;
            vertical-align: middle;
        }

        @media (max-width: 991.98px){
            .gadit-navbar-luxury{
                grid-template-columns: minmax(0, 1fr) auto;
            }

            .gadit-navbar-actions{
                grid-column: 1 / -1;
                grid-template-columns: repeat(3, minmax(0, 1fr));
                order: 3;
            }
        }

        @media (max-width: 575.98px){
            .gadit-navbar-luxury{
                grid-template-columns: 1fr auto;
                gap: .4rem;
                padding: .4rem .45rem;
            }

            .gadit-navbar-logo{
                width: 2.35rem;
                height: 2.35rem;
            }

            .gadit-brand-text strong{
                max-width: calc(100vw - 7.8rem);
            }

            .gadit-brand-text small{
                display: none;
            }

            .gadit-navbar-actions{
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: .35rem;
            }

            .gadit-nav-button{
                min-height: 2.15rem;
                border-radius: .65rem;
                padding: .35rem .45rem;
            }

            .gadit-nav-button span{
                font-size: .66rem;
            }

            .gadit-card-header,
            .gadit-card-body{
                padding: .9rem;
            }
        }

        /* GADIT DATATABLES CONTROLLI CITTADINI */
        .gadit-content-inner .dt-container{ width:100% !important; font-family:Arial,Helvetica,sans-serif !important; color:#17120a !important; }
        .gadit-content-inner .dt-layout-row{ display:flex !important; align-items:center !important; justify-content:space-between !important; gap:.75rem !important; flex-wrap:wrap !important; margin:.4rem 0 .85rem !important; }
        .gadit-content-inner .dt-layout-cell{ display:flex !important; align-items:center !important; gap:.45rem !important; }
        .gadit-content-inner .dt-layout-cell.dt-layout-end{ margin-left:auto !important; }
        .gadit-content-inner .dt-container label{ color:#332616 !important; font-weight:800 !important; }
        .gadit-content-inner .dt-search input, .gadit-content-inner .dt-length select{ min-height:2.45rem !important; border-radius:.85rem !important; border:1px solid rgba(214,173,87,.58) !important; background:#fff8e7 !important; color:#120d04 !important; box-shadow:inset 0 1px 0 rgba(255,255,255,.55) !important; }
        .gadit-content-inner .dt-search input{ min-width:min(320px,70vw) !important; }
        .gadit-content-inner .dt-info{ color:#4e4536 !important; font-weight:800 !important; margin-top:.55rem !important; }
        .gadit-content-inner .dt-paging{ display:flex !important; justify-content:flex-end !important; gap:.25rem !important; flex-wrap:wrap !important; margin-top:.45rem !important; }
        .gadit-content-inner .dt-paging .dt-paging-button{ border-radius:.25rem !important; border:1px solid rgba(214,173,87,.45) !important; background:rgba(255,248,231,.82) !important; color:#120d04 !important; font-weight:900 !important; min-width:2.35rem !important; min-height:2.35rem !important; }
        .gadit-content-inner .dt-paging .dt-paging-button.current{ background:#0d6efd !important; border-color:#0d6efd !important; color:#fff !important; }
        @media (max-width:767.98px){ .gadit-content-inner .dt-layout-row,.gadit-content-inner .dt-layout-cell{display:grid!important;grid-template-columns:1fr!important;width:100%!important}.gadit-content-inner .dt-layout-cell.dt-layout-end{margin-left:0!important}.gadit-content-inner .dt-search input{width:100%!important;min-width:0!important;margin-left:0!important}}

        /* =========================================================
           GADIT DataTables - controlli più leggibili
        ========================================================= */
        .gadit-content-inner .dt-container .dt-length,
        .gadit-content-inner .dataTables_wrapper .dataTables_length,
        .gadit-content-inner .dt-container .dt-search,
        .gadit-content-inner .dataTables_wrapper .dataTables_filter{
            display: inline-flex !important;
            align-items: center !important;
            gap: .55rem !important;
            padding: .55rem .75rem !important;
            border: 1px solid rgba(214,173,87,.48) !important;
            border-radius: 999px !important;
            background:
                linear-gradient(180deg, rgba(18,17,14,.94), rgba(5,4,3,.96)),
                radial-gradient(circle at 50% 0%, rgba(247,223,147,.18), transparent 12rem) !important;
            color: var(--gadit-gold-light, #f7df93) !important;
            box-shadow:
                0 .55rem 1.2rem rgba(0,0,0,.26),
                inset 0 1px 0 rgba(255,255,255,.10) !important;
        }

        .gadit-content-inner .dt-container .dt-length label,
        .gadit-content-inner .dt-container .dt-search label,
        .gadit-content-inner .dataTables_wrapper .dataTables_length label,
        .gadit-content-inner .dataTables_wrapper .dataTables_filter label{
            color: var(--gadit-gold-light, #f7df93) !important;
            font-family: Georgia, "Times New Roman", serif !important;
            font-weight: 900 !important;
            letter-spacing: .045em !important;
            text-transform: uppercase !important;
            text-shadow: 0 2px 0 rgba(0,0,0,.55) !important;
            margin: 0 !important;
            white-space: nowrap !important;
        }

        .gadit-content-inner .dt-container .dt-length select,
        .gadit-content-inner .dataTables_wrapper .dataTables_length select{
            min-width: 5.2rem !important;
            padding-left: .9rem !important;
            padding-right: 2rem !important;
            border-radius: 999px !important;
            border: 1px solid rgba(247,223,147,.7) !important;
            background:
                linear-gradient(180deg, #fff8e7, #f7df93) !important;
            color: #120d04 !important;
            font-weight: 900 !important;
            text-align: center !important;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 .35rem .85rem rgba(0,0,0,.16) !important;
        }

        .gadit-content-inner .dt-container .dt-search input,
        .gadit-content-inner .dataTables_wrapper .dataTables_filter input{
            border-radius: 999px !important;
            border: 1px solid rgba(247,223,147,.72) !important;
            background: #fff8e7 !important;
            color: #120d04 !important;
            font-weight: 800 !important;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 .35rem .85rem rgba(0,0,0,.16) !important;
        }

        .gadit-content-inner .dt-container .dt-search input:focus,
        .gadit-content-inner .dataTables_wrapper .dataTables_filter input:focus,
        .gadit-content-inner .dt-container .dt-length select:focus,
        .gadit-content-inner .dataTables_wrapper .dataTables_length select:focus{
            border-color: var(--gadit-gold, #d6ad57) !important;
            box-shadow:
                0 0 0 .22rem rgba(214,173,87,.24),
                inset 0 1px 0 rgba(255,255,255,.65) !important;
        }

        .gadit-content-inner .dt-container .dt-info,
        .gadit-content-inner .dataTables_wrapper .dataTables_info{
            display: inline-flex !important;
            align-items: center !important;
            min-height: 2.8rem !important;
            padding: .62rem .95rem !important;
            border-radius: 999px !important;
            border: 1px solid rgba(214,173,87,.48) !important;
            background:
                linear-gradient(180deg, rgba(247,223,147,.22), rgba(214,173,87,.10)),
                rgba(18,17,14,.94) !important;
            color: var(--gadit-gold-light, #f7df93) !important;
            font-family: Arial, Helvetica, sans-serif !important;
            font-size: .92rem !important;
            font-weight: 900 !important;
            letter-spacing: .03em !important;
            text-transform: uppercase !important;
            text-shadow: 0 1px 0 rgba(0,0,0,.62) !important;
            box-shadow:
                0 .55rem 1.25rem rgba(0,0,0,.24),
                inset .28rem 0 0 var(--gadit-gold, #d6ad57) !important;
        }

        .gadit-content-inner .dt-container .dt-layout-row:last-child{
            margin-top: .95rem !important;
            padding-top: .8rem !important;
            border-top: 1px solid rgba(214,173,87,.24) !important;
        }

        @media (max-width: 767.98px){
            .gadit-content-inner .dt-container .dt-length,
            .gadit-content-inner .dataTables_wrapper .dataTables_length,
            .gadit-content-inner .dt-container .dt-search,
            .gadit-content-inner .dataTables_wrapper .dataTables_filter,
            .gadit-content-inner .dt-container .dt-info,
            .gadit-content-inner .dataTables_wrapper .dataTables_info{
                width: 100% !important;
                justify-content: center !important;
                border-radius: 1rem !important;
                text-align: center !important;
                flex-wrap: wrap !important;
            }

            .gadit-content-inner .dt-container .dt-search input,
            .gadit-content-inner .dataTables_wrapper .dataTables_filter input{
                width: 100% !important;
            }
        }

/* =========================================================
   GADIT - Gestione Cittadino + DataTables premium
   Solo grafica/frontend: nessuna modifica a query, loop o dati PHP.
========================================================= */
body.gadit-theme{
    min-height: 100vh;
    font-family: Georgia, "Times New Roman", serif;
}
.gadit-management-shell{
    width: min(100%, 1680px);
    margin: 0 auto;
    padding: clamp(.7rem, 2vw, 1.4rem);
}
.gadit-cittadino-hero{
    position: relative;
    overflow: hidden;
    margin: 0 auto 1rem;
    padding: clamp(1rem, 2.4vw, 1.55rem);
    border: 1px solid var(--gadit-border, rgba(214,173,87,.42));
    border-radius: clamp(1rem, 2vw, 1.6rem);
    background:
        radial-gradient(circle at 50% 0%, rgba(247,223,147,.18), transparent 20rem),
        linear-gradient(180deg, rgba(18,17,14,.97), rgba(5,4,3,.99));
    box-shadow:
        0 1.25rem 3rem rgba(0,0,0,.48),
        0 0 0 .28rem rgba(214,173,87,.08),
        inset 0 1px 0 rgba(255,255,255,.12);
}
.gadit-cittadino-hero::before{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(68%, 22rem);
    height: .36rem;
    border-radius: 0 0 .55rem .55rem;
    background: linear-gradient(90deg, var(--gadit-green, #0e5a31) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red, #b91f2b) 66.666% 100%);
    box-shadow: 0 .35rem 1rem rgba(0,0,0,.28);
}
.gadit-cittadino-hero-inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}
.gadit-cittadino-title-wrap{
    min-width: min(100%, 360px);
}
.gadit-cittadino-kicker{
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: .35rem;
    color: var(--gadit-muted, #cbbf9c);
    font-family: Arial, Helvetica, sans-serif;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.gadit-page-title{
    margin: 0;
    color: var(--gadit-gold-light, #f7df93);
    font-size: clamp(1.35rem, 3.2vw, 2.35rem);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: .055em;
    text-transform: uppercase;
    text-shadow: 0 2px 0 rgba(0,0,0,.62);
}
.gadit-page-subtitle{
    margin: .35rem 0 0;
    color: var(--gadit-muted, #cbbf9c);
    font-family: Arial, Helvetica, sans-serif;
    font-size: clamp(.82rem, 1.6vw, .96rem);
}
.gadit-toolbar-actions{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .65rem;
    flex-wrap: wrap;
}
.btn.gadit-main-btn,
a.gadit-main-btn{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: .48rem;
    min-height: 2.75rem;
    padding: .66rem 1rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.64) !important;
    background:
        linear-gradient(180deg, rgba(247,223,147,.98), rgba(214,173,87,.92)) !important;
    color: #120d04 !important;
    font-family: Arial, Helvetica, sans-serif;
    font-size: clamp(.74rem, 1.1vw, .84rem) !important;
    font-weight: 900 !important;
    letter-spacing: .055em;
    text-transform: uppercase;
    text-decoration: none !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.4),
        0 .65rem 1.35rem rgba(0,0,0,.32),
        0 0 1.2rem rgba(214,173,87,.16);
    transition: transform .15s ease, filter .15s ease, box-shadow .15s ease;
    white-space: nowrap;
}
.btn.gadit-main-btn:hover,
.btn.gadit-main-btn:focus,
a.gadit-main-btn:hover,
a.gadit-main-btn:focus{
    transform: translateY(-1px);
    filter: brightness(1.07);
    color: #120d04 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.52),
        0 .85rem 1.75rem rgba(0,0,0,.4),
        0 0 1.6rem rgba(214,173,87,.24);
}
.gadit-main-btn-green{
    background: linear-gradient(180deg, rgba(247,223,147,.92), rgba(14,90,49,.98)) !important;
    color: #fff8e7 !important;
    border-color: rgba(247,223,147,.7) !important;
}
.gadit-main-btn-green:hover,
.gadit-main-btn-green:focus{ color: #fff8e7 !important; }
.gadit-table-panel{
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(214,173,87,.48);
    border-radius: clamp(1rem, 2vw, 1.35rem);
    background: rgba(255,248,231,.965);
    padding: clamp(.55rem, 1.5vw, .9rem);
    box-shadow:
        0 1rem 2.6rem rgba(0,0,0,.38),
        inset 0 1px 0 rgba(255,255,255,.5);
}
.gadit-table-scroll{
    width: 100%;
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--gadit-gold, #d6ad57) rgba(5,4,3,.2);
}
.gadit-table-scroll::-webkit-scrollbar{ height: 10px; }
.gadit-table-scroll::-webkit-scrollbar-track{ background: rgba(5,4,3,.13); border-radius: 999px; }
.gadit-table-scroll::-webkit-scrollbar-thumb{
    border-radius: 999px;
    background: linear-gradient(90deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold-dark, #7d5220));
}
#empTable{
    width: 100% !important;
    margin: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0;
    font-family: Arial, Helvetica, sans-serif;
    color: #17120a;
}
#empTable thead th,
table.dataTable thead > tr > th{
    background: linear-gradient(180deg, #2b2115, #120d04) !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    border-color: rgba(214,173,87,.36) !important;
    text-align: center !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: .76rem;
    white-space: nowrap;
    vertical-align: middle;
}
#empTable tbody td{
    border-color: rgba(125,82,32,.22) !important;
    vertical-align: middle !important;
    font-size: .9rem;
}
#empTable tbody tr{
    transition: transform .14s ease, box-shadow .14s ease;
}
#empTable.table-striped > tbody > tr:nth-of-type(odd) > *{
    --bs-table-bg-type: rgba(214,173,87,.055);
}
#empTable tbody tr:hover > *{
    background: rgba(214,173,87,.18) !important;
    color: #120d04 !important;
}
.gadit-action-btn,
#empTable .btn{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-height: 2.25rem;
    padding: .5rem .72rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .72rem !important;
    font-weight: 900 !important;
    letter-spacing: .045em;
    text-transform: uppercase;
    line-height: 1 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 .4rem .9rem rgba(0,0,0,.24) !important;
    transition: transform .15s ease, filter .15s ease;
}
.gadit-action-btn:hover,
#empTable .btn:hover{ transform: translateY(-1px); filter: brightness(1.08); }
.dt-container,
.dataTables_wrapper{
    font-family: Arial, Helvetica, sans-serif;
    color: #17120a;
}
.dt-container .dt-layout-row{
    gap: .75rem;
    align-items: center;
}
.dt-container .dt-search label,
.dt-container .dt-length label,
.dataTables_wrapper .dataTables_filter label,
.dataTables_wrapper .dataTables_length label{
    color: #332616 !important;
    font-weight: 800;
}
.dt-container .dt-search input,
.dt-container .dt-length select,
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select{
    min-height: 2.4rem;
    border-radius: .85rem !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    background: #fff8e7 !important;
    color: #120d04 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.55);
    outline: none !important;
}
.dt-container .dt-search input:focus,
.dt-container .dt-length select:focus{
    border-color: var(--gadit-gold, #d6ad57) !important;
    box-shadow: 0 0 0 .22rem rgba(214,173,87,.18) !important;
}
.dt-container .dt-info,
.dataTables_wrapper .dataTables_info{
    color: #4e4536 !important;
    font-weight: 700;
}
.dt-container .dt-paging{
    display: flex;
    justify-content: flex-end;
    gap: .25rem;
    flex-wrap: wrap;
}
.dt-container .dt-paging .dt-paging-button,
.dataTables_wrapper .dataTables_paginate .paginate_button{
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.45) !important;
    background: rgba(255,248,231,.82) !important;
    color: #120d04 !important;
    font-weight: 900 !important;
    min-width: 2.25rem;
    min-height: 2.25rem;
    box-shadow: 0 .25rem .65rem rgba(0,0,0,.12);
}
.dt-container .dt-paging .dt-paging-button.current,
.dt-container .dt-paging .dt-paging-button.current:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{
    background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57)) !important;
    border-color: var(--gadit-gold, #d6ad57) !important;
    color: #120d04 !important;
}
.dt-container .dt-paging .dt-paging-button:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button:hover{
    background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57)) !important;
    border-color: var(--gadit-gold, #d6ad57) !important;
    color: #120d04 !important;
    transform: translateY(-1px);
}
.dt-container .dt-paging .dt-paging-button.disabled,
.dt-container .dt-paging .dt-paging-button.disabled:hover{
    opacity: .45;
    transform: none;
}
.modal.gadit-action-modal .btn-close{
    filter: none;
    opacity: 1;
}
@media (max-width: 767.98px){
    .gadit-cittadino-hero-inner,
    .gadit-toolbar-actions{
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }
    .btn.gadit-main-btn,
    a.gadit-main-btn{ width: 100%; }
    .dt-container .dt-layout-row{
        display: grid !important;
        grid-template-columns: 1fr;
    }
    .dt-container .dt-search,
    .dt-container .dt-length,
    .dt-container .dt-info,
    .dt-container .dt-paging{
        width: 100%;
        text-align: left !important;
        justify-content: flex-start;
    }
    .dt-container .dt-search input{
        width: 100% !important;
        margin-left: 0 !important;
        margin-top: .35rem;
    }
    .dt-container .dt-length select{ margin: 0 .25rem; }
    #empTable tbody td{ font-size: .86rem; }
    .gadit-row-actions{ justify-content: stretch; }
    .gadit-row-actions .btn{ width: 100%; }
}

/* Pulsanti GADIT premium aggiuntivi: toolbar e azioni tabella */
.gadit-toolbar-actions .gadit-main-btn i,
.gadit-row-actions .gadit-action-btn i{
    font-size: 1rem;
    line-height: 1;
}
.gadit-toolbar-actions .gadit-main-btn{
    position: relative;
    overflow: hidden;
}
.gadit-toolbar-actions .gadit-main-btn::after,
.gadit-row-actions .gadit-action-btn::after{
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,.28) 45%, transparent 70%);
    transform: translateX(-120%);
    transition: transform .45s ease;
    pointer-events: none;
}
.gadit-toolbar-actions .gadit-main-btn:hover::after,
.gadit-row-actions .gadit-action-btn:hover::after{
    transform: translateX(120%);
}
.gadit-row-actions .gadit-action-btn{
    position: relative;
    overflow: hidden;
    min-width: 7.6rem;
}
.gadit-action-photo{
    border-color: rgba(247,223,147,.75) !important;
    background:
        linear-gradient(180deg, rgba(247,223,147,.88), rgba(14,90,49,.98)) !important;
    color: #fff8e7 !important;
}
.gadit-action-edit{
    border-color: rgba(247,223,147,.82) !important;
    background:
        linear-gradient(180deg, rgba(247,223,147,.98), rgba(214,173,87,.95)) !important;
    color: #120d04 !important;
}
@media (max-width: 575.98px){
    .gadit-row-actions .gadit-action-btn{
        width: 100%;
        min-width: 0;
    }
}

/* FIX VISIBILITA PULSANTI GADIT - forza rendering anche se CSS esterni/DataTables sovrascrivono */
.gadit-force-button,
a.gadit-force-button,
button.gadit-force-button,
#empTable tbody td:last-child a.gadit-force-button{
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .45rem !important;
    min-height: 2.55rem !important;
    padding: .62rem .95rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(247,223,147,.78) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 .55rem 1.15rem rgba(0,0,0,.34), 0 0 1rem rgba(214,173,87,.14) !important;
    transition: transform .15s ease, filter .15s ease, box-shadow .15s ease !important;
    position: relative !important;
    overflow: hidden !important;
    white-space: nowrap !important;
}
.gadit-force-button:hover,
a.gadit-force-button:hover,
button.gadit-force-button:hover,
#empTable tbody td:last-child a.gadit-force-button:hover{
    transform: translateY(-1px) !important;
    filter: brightness(1.08) !important;
    text-decoration: none !important;
}
.gadit-force-button-gold,
a.gadit-force-button-gold,
button.gadit-force-button-gold{
    background: linear-gradient(180deg, #f7df93, #d6ad57) !important;
    color: #120d04 !important;
}
.gadit-force-button-green,
a.gadit-force-button-green,
button.gadit-force-button-green{
    background: linear-gradient(180deg, rgba(247,223,147,.95), rgba(14,90,49,.98)) !important;
    color: #fff8e7 !important;
}
.gadit-force-button-red,
a.gadit-force-button-red,
button.gadit-force-button-red{
    background: linear-gradient(180deg, rgba(247,223,147,.9), rgba(185,31,43,.96)) !important;
    color: #fff8e7 !important;
}
.gadit-force-button i{ display: inline-block !important; font-size: 1rem !important; line-height: 1 !important; }
.gadit-row-actions{ min-width: 180px !important; }
@media (max-width: 575.98px){
    .gadit-force-button,
    a.gadit-force-button,
    button.gadit-force-button{ width: 100% !important; }
}


/* FIX FINALE VISIBILITA: classe autonoma con inline fallback */
.gadit-real-button{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .45rem !important;
    min-height: 42px !important;
    padding: 10px 16px !important;
    border-radius: 999px !important;
    border: 1px solid #f7df93 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: .05em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 8px 18px rgba(0,0,0,.35), 0 0 18px rgba(214,173,87,.18) !important;
    white-space: nowrap !important;
}
.gadit-real-button:hover{ filter: brightness(1.08) !important; transform: translateY(-1px) !important; }
.gadit-real-gold{ background: linear-gradient(180deg,#f7df93,#d6ad57) !important; color: #120d04 !important; }
.gadit-real-green{ background: linear-gradient(180deg,#f7df93,#0e5a31) !important; color: #fff8e7 !important; }
.gadit-real-red{ background: linear-gradient(180deg,#f7df93,#b91f2b) !important; color: #fff8e7 !important; }
@media (max-width: 575.98px){ .gadit-real-button{ width: 100% !important; } }

/* FIX DEFINITIVO - pulsanti Foto/Anagrafica nella tabella */
#empTable tbody td .gadit-row-actions{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .45rem !important;
    flex-wrap: wrap !important;
    min-width: 210px !important;
}
#empTable tbody td a.gadit-table-button,
#empTable tbody td a.gadit-table-button:visited{
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-decoration: none !important;
}
#empTable tbody td a.gadit-table-button:hover,
#empTable tbody td a.gadit-table-button:focus{
    transform: translateY(-1px) !important;
    filter: brightness(1.08) !important;
    text-decoration: none !important;
}
@media (max-width: 575.98px){
    #empTable tbody td .gadit-row-actions{ min-width: 0 !important; }
    #empTable tbody td a.gadit-table-button{ width: 100% !important; }
}


/* =========================================================
   GADIT - MODALI CITTADINO: Foto + Anagrafica
   Replica lo stile modali guardie, applicato al contenitore esterno
   e ai form interni inclusi da show_edit_modal/show_managed_img.
========================================================= */
.gadit-theme .modal.gadit-action-modal{ padding: 0 !important; }
.gadit-theme .gadit-action-modal .modal-dialog{
    width: min(920px, calc(100vw - 1rem)) !important;
    max-width: min(920px, calc(100vw - 1rem)) !important;
    margin: .75rem auto !important;
}
.gadit-theme .gadit-action-modal .modal-content.gadit-modal-content,
.gadit-theme .gadit-action-modal form.modal-content.gadit-modal-content{
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    max-height: calc(100dvh - 1.5rem) !important;
    overflow: hidden !important;
    border: 1px solid rgba(214,173,87,.68) !important;
    border-radius: 1.35rem !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(247,223,147,.18), transparent 18rem),
        linear-gradient(180deg, rgba(18,17,14,.99), rgba(5,4,3,1)) !important;
    color: var(--gadit-cream, #fff8e7) !important;
    box-shadow:
        0 1.6rem 4rem rgba(0,0,0,.72),
        0 0 0 .28rem rgba(214,173,87,.10),
        inset 0 1px 0 rgba(255,255,255,.12) !important;
}
.gadit-theme .gadit-action-modal .modal-content.gadit-modal-content::before,
.gadit-theme .gadit-action-modal form.modal-content.gadit-modal-content::before{
    content: "";
    display: block;
    height: .34rem;
    flex: 0 0 auto;
    background: linear-gradient(90deg, var(--gadit-green, #0e5a31) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red, #b91f2b) 66.666% 100%);
}
.gadit-theme .gadit-action-modal .modal-header,
.gadit-theme .gadit-action-modal .modal-footer{
    flex: 0 0 auto !important;
    border-color: rgba(214,173,87,.38) !important;
    background: rgba(255,248,231,.05) !important;
}
.gadit-theme .gadit-action-modal .modal-header{
    position: relative !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 1.05rem 4rem 1rem 1rem !important;
}
.gadit-theme .gadit-action-modal .modal-title,
.gadit-theme .gadit-action-modal .gadit-title{
    color: var(--gadit-gold-light, #f7df93) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.55) !important;
}
.gadit-theme .gadit-action-modal .gadit-modal-x{
    appearance: none !important;
    -webkit-appearance: none !important;
    position: absolute !important;
    top: .72rem !important;
    right: .8rem !important;
    z-index: 50 !important;
    width: 2.45rem !important;
    height: 2.45rem !important;
    min-width: 2.45rem !important;
    min-height: 2.45rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.76) !important;
    background: radial-gradient(circle at 35% 25%, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57) 58%, var(--gadit-gold-dark, #7d5220)) !important;
    color: #120d04 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 1.45rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    box-shadow: 0 .45rem 1rem rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.4) !important;
    opacity: 1 !important;
    cursor: pointer !important;
}
.gadit-theme .gadit-action-modal .gadit-modal-x:hover{ transform: translateY(-1px) !important; filter: brightness(1.08) !important; }
.gadit-theme .gadit-action-modal .modal-body.gadit-modal-body,
.gadit-theme .gadit-action-modal .gadit-edit-modal-body{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    padding: 1rem !important;
    background: transparent !important;
    color: var(--gadit-cream, #fff8e7) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    scrollbar-width: thin !important;
    scrollbar-color: var(--gadit-gold, #d6ad57) rgba(5,4,3,.78) !important;
}
.gadit-theme .gadit-action-modal .modal-body::-webkit-scrollbar,
.gadit-theme .gadit-action-modal .gadit-edit-modal-body::-webkit-scrollbar{ width: 11px !important; height: 11px !important; }
.gadit-theme .gadit-action-modal .modal-body::-webkit-scrollbar-track,
.gadit-theme .gadit-action-modal .gadit-edit-modal-body::-webkit-scrollbar-track{ background: rgba(5,4,3,.88) !important; }
.gadit-theme .gadit-action-modal .modal-body::-webkit-scrollbar-thumb,
.gadit-theme .gadit-action-modal .gadit-edit-modal-body::-webkit-scrollbar-thumb{
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57), var(--gadit-gold-dark, #7d5220)) !important;
    border: 2px solid rgba(5,4,3,.88) !important;
}
.gadit-theme .gadit-action-modal .gadit-residenza-section,
.gadit-theme .gadit-action-modal .gadit-form-section,
.gadit-theme .gadit-action-modal .gadit-photo-card{
    margin: 0 0 1rem !important;
    padding: 1rem !important;
    border: 1px solid rgba(214,173,87,.38) !important;
    border-radius: 1rem !important;
    background: rgba(255,248,231,.055) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.gadit-theme .gadit-action-modal .gadit-section-title{
    margin: 0 0 .85rem !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    font-size: .9rem !important;
    border-left: .28rem solid var(--gadit-gold, #d6ad57) !important;
    padding-left: .7rem !important;
}
.gadit-theme .gadit-action-modal .row.gadit-edit-row,
.gadit-theme .gadit-action-modal .modal-body .row{
    align-items: center !important;
    row-gap: .45rem !important;
    margin-bottom: .82rem !important;
}
.gadit-theme .gadit-action-modal label,
.gadit-theme .gadit-action-modal .control-label{
    display: block !important;
    margin-bottom: .35rem !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    font-weight: 900 !important;
    letter-spacing: .025em !important;
}
.gadit-theme .gadit-action-modal .form-control,
.gadit-theme .gadit-action-modal .form-select,
.gadit-theme .gadit-action-modal textarea,
.gadit-theme .gadit-action-modal select,
.gadit-theme .gadit-action-modal input[type="text"],
.gadit-theme .gadit-action-modal input[type="email"],
.gadit-theme .gadit-action-modal input[type="number"],
.gadit-theme .gadit-action-modal input[type="date"]{
    width: 100% !important;
    min-height: 2.85rem !important;
    border-radius: .9rem !important;
    border: 1px solid rgba(214,173,87,.55) !important;
    background: rgba(255,248,231,.96) !important;
    color: #1f1608 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45) !important;
}
.gadit-theme .gadit-action-modal .form-control:focus,
.gadit-theme .gadit-action-modal .form-select:focus,
.gadit-theme .gadit-action-modal textarea:focus,
.gadit-theme .gadit-action-modal input:focus,
.gadit-theme .gadit-action-modal select:focus{
    border-color: var(--gadit-gold, #d6ad57) !important;
    box-shadow: 0 0 0 .24rem rgba(214,173,87,.2) !important;
    outline: none !important;
}
.gadit-theme .gadit-action-modal .modal-footer{
    gap: .6rem !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
    padding: .85rem 1rem !important;
}
.gadit-theme .gadit-action-modal .modal-footer .btn,
.gadit-theme .gadit-action-modal form .btn,
.gadit-theme .gadit-action-modal input[type="button"],
.gadit-theme .gadit-action-modal input[type="submit"],
.gadit-theme .gadit-action-modal .gadit-photo-delete{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .4rem !important;
    min-height: 2.75rem !important;
    padding: .62rem 1.05rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.62) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 .55rem 1.15rem rgba(0,0,0,.28) !important;
}
.gadit-theme .gadit-action-modal .btn-secondary{ background: linear-gradient(180deg, rgba(247,223,147,.18), rgba(59,51,39,.96)) !important; border-color: rgba(214,173,87,.46) !important; color: var(--gadit-cream, #fff8e7) !important; }
.gadit-theme .gadit-action-modal .btn-warning{ background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57)) !important; border-color: var(--gadit-gold, #d6ad57) !important; color: #120d04 !important; }
.gadit-theme .gadit-action-modal .btn-danger,
.gadit-theme .gadit-action-modal .gadit-photo-delete{ background: linear-gradient(180deg, #d34855, var(--gadit-red, #b91f2b)) !important; border-color: rgba(247,223,147,.55) !important; color: #fff8e7 !important; }
.gadit-theme .gadit-action-modal .btn:hover,
.gadit-theme .gadit-action-modal input[type="button"]:hover,
.gadit-theme .gadit-action-modal input[type="submit"]:hover{ transform: translateY(-1px) !important; filter: brightness(1.06) !important; }
.gadit-theme .gadit-action-modal .gadit-photo-gallery{
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
    gap: 1rem !important;
}
.gadit-theme .gadit-action-modal .gadit-photo-thumb{
    display: block !important;
    width: 100% !important;
    max-width: 220px !important;
    height: auto !important;
    margin: 0 auto .75rem !important;
    border: 2px solid rgba(214,173,87,.62) !important;
    border-radius: .9rem !important;
    background: #fff8e7 !important;
    box-shadow: 0 .55rem 1.1rem rgba(0,0,0,.35) !important;
    cursor: zoom-in !important;
}
@media (max-width: 575.98px){
    .gadit-theme .gadit-action-modal .modal-dialog{
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        margin: 0 !important;
    }
    .gadit-theme .gadit-action-modal .modal-content.gadit-modal-content,
    .gadit-theme .gadit-action-modal form.modal-content.gadit-modal-content{
        min-height: 100dvh !important;
        max-height: 100dvh !important;
        border-radius: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
    }
    .gadit-theme .gadit-action-modal .modal-header{ padding: .85rem 3.6rem .85rem .85rem !important; }
    .gadit-theme .gadit-action-modal .modal-title{ font-size: 1rem !important; line-height: 1.25 !important; }
    .gadit-theme .gadit-action-modal .modal-body.gadit-modal-body,
    .gadit-theme .gadit-action-modal .gadit-edit-modal-body{ padding: .75rem !important; }
    .gadit-theme .gadit-action-modal .modal-body .row,
    .gadit-theme .gadit-action-modal .row.gadit-edit-row{
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: .7rem .65rem !important;
        border: 1px solid rgba(214,173,87,.22) !important;
        border-radius: .9rem !important;
        background: rgba(255,248,231,.045) !important;
    }
    .gadit-theme .gadit-action-modal .modal-body .row > [class*="col-"]{ padding-left: 0 !important; padding-right: 0 !important; }
    .gadit-theme .gadit-action-modal .modal-footer{ flex-direction: column-reverse !important; align-items: stretch !important; position: sticky !important; bottom: 0 !important; z-index: 2 !important; background: linear-gradient(180deg, rgba(5,4,3,.92), rgba(5,4,3,.98)) !important; }
    .gadit-theme .gadit-action-modal .modal-footer .btn,
    .gadit-theme .gadit-action-modal form,
    .gadit-theme .gadit-action-modal form .btn,
    .gadit-theme .gadit-action-modal input[type="button"],
    .gadit-theme .gadit-action-modal input[type="submit"]{ width: 100% !important; }
}

/* Modal Nuovo Cittadino isolata: non comprime gestione_cittadino */
.gadit-new-cittadino-modal .modal-dialog{
    width: min(1180px, calc(100vw - 1rem)) !important;
    max-width: min(1180px, calc(100vw - 1rem)) !important;
}
.gadit-new-cittadino-modal .modal-content{
    height: calc(100dvh - 1rem) !important;
    max-height: calc(100dvh - 1rem) !important;
}
.gadit-new-cittadino-modal #nuovoCittadinoFrame{
    width: 100% !important;
    height: 100% !important;
    min-height: 620px !important;
}
@media (max-width: 575.98px){
    .gadit-new-cittadino-modal .modal-dialog{
        width: 100vw !important;
        max-width: 100vw !important;
        margin: 0 !important;
    }
    .gadit-new-cittadino-modal .modal-content{
        height: 100dvh !important;
        max-height: 100dvh !important;
        border-radius: 0 !important;
    }
    .gadit-new-cittadino-modal #nuovoCittadinoFrame{
        min-height: 0 !important;
    }
}


/* FIX GADIT - scrollbar dorata per modal Nuovo Cittadino */
#nuovoCittadinoModal .gadit-modal-body{
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: thin !important;
    scrollbar-color: #d6ad57 rgba(5,4,3,.88) !important;
}
#nuovoCittadinoModal .gadit-modal-body::-webkit-scrollbar{
    width: 12px !important;
    height: 12px !important;
}
#nuovoCittadinoModal .gadit-modal-body::-webkit-scrollbar-track{
    background: rgba(5,4,3,.88) !important;
    border-left: 1px solid rgba(214,173,87,.25) !important;
}
#nuovoCittadinoModal .gadit-modal-body::-webkit-scrollbar-thumb{
    border-radius: 999px !important;
    background: linear-gradient(180deg,#f7df93,#d6ad57,#7d5220) !important;
    border: 2px solid rgba(5,4,3,.88) !important;
}

/* FIX GADIT - DataTables sempre subito sotto intestazione dopo update.php */
.gadit-table-panel{
    margin-top: 0 !important;
}
.gadit-table-panel .dt-container,
.gadit-table-panel .dataTables_wrapper{
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.gadit-table-panel .dt-layout-row:first-child{
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.gadit-table-panel .dt-layout-row{
    margin: 0 0 .65rem 0 !important;
}
.gadit-table-panel .dt-layout-row:last-child{
    margin: .65rem 0 0 0 !important;
}
.gadit-page-alert{
    position: fixed !important;
    top: clamp(.75rem, 1.5vw, 1.15rem) !important;
    right: clamp(.75rem, 1.5vw, 1.15rem) !important;
    z-index: 20000 !important;
    width: min(420px, calc(100vw - 1.5rem)) !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: auto;
}
.gadit-page-alert .alert{
    margin: 0 !important;
    border-radius: 1rem !important;
    box-shadow: 0 .9rem 2rem rgba(0,0,0,.38) !important;
}
@media (max-width: 575.98px){
    .gadit-page-alert{
        left: .65rem !important;
        right: .65rem !important;
        width: auto !important;
    }
}
/* ===== Fine GADIT - Gestione Cittadino ===== */


/* ==== registrazione_cittadino migrated styles ==== */
.gadit-form-card {
            max-width: 1120px;
        }

        .gadit-form-card .input-group-text {
            background: var(--gadit-gold);
            border-color: var(--gadit-gold);
            color: #120d04;
            font-weight: 800;
            border-radius: .9rem 0 0 .9rem;
        }

        .gadit-form-card .input-group .form-control,
        .gadit-form-card .input-group .form-select {
            border-radius: 0 .9rem .9rem 0;
        }

        .gadit-form-card .row {
            row-gap: 1rem;
            margin-bottom: 1rem;
        }

        .gadit-form-card .mb-3 {
            margin-bottom: 1rem !important;
        }

        .gadit-form-card hr {
            border-color: rgba(214,173,87,.35);
            opacity: 1;
            margin: 1.5rem 0;
        }

        .gadit-form-card .invalid-feedback {
            color: #ff9ba3;
            font-family: Arial, Helvetica, sans-serif;
            font-weight: 700;
        }

        .gadit-form-card .form-control.is-invalid {
            border-color: var(--gadit-red);
        }

        .gadit-section-note {
            background: rgba(255,248,231,.08);
            border-left: .35rem solid var(--gadit-gold);
            border-radius: .8rem;
            padding: .85rem 1rem;
            color: var(--gadit-muted);
            margin-bottom: 1.25rem;
            font-family: Arial, Helvetica, sans-serif;
        }

        .gadit-form-card .btn-primary {
            min-height: 3rem;
            border-radius: .9rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .04em;
        }

        .gadit-form-card .btn-secondary {
            min-height: 3rem;
            border-radius: .9rem;
            font-weight: 800;
        }


        /* =========================================================
           GADIT - Step UX, bozza automatica e comandi sempre visibili
        ========================================================= */
        body.gadit-theme {
            min-height: 100dvh;
            overflow-x: hidden;
        }

        .gadit-page-top {
            padding-bottom: 7.5rem !important;
        }

        .gadit-form-card {
            position: relative;
        }

        .gadit-stepper {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: .6rem;
            margin: 1rem 0 1.25rem;
        }

        .gadit-step-pill {
            border: 1px solid rgba(214,173,87,.45);
            border-radius: 999px;
            background: rgba(255,248,231,.06);
            color: var(--gadit-muted);
            min-height: 2.65rem;
            padding: .55rem .7rem;
            font-family: Arial, Helvetica, sans-serif;
            font-size: .76rem;
            font-weight: 900;
            line-height: 1.1;
            text-transform: uppercase;
            letter-spacing: .04em;
            text-align: center;
            cursor: pointer;
            transition: transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
        }

        .gadit-step-pill.is-active {
            background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold));
            border-color: var(--gadit-gold-light);
            color: #120d04;
            box-shadow: 0 .55rem 1.2rem rgba(214,173,87,.24);
        }

        .gadit-step-pill.is-done {
            color: var(--gadit-gold-light);
            border-color: rgba(214,173,87,.78);
        }

        .gadit-step-title {
            margin: .35rem 0 1rem;
            color: var(--gadit-gold-light);
            font-family: Georgia, "Times New Roman", serif;
            font-size: 1.05rem;
            font-weight: 900;
            letter-spacing: .06em;
            text-transform: uppercase;
            text-shadow: 0 2px 0 rgba(0,0,0,.55);
        }

        .gadit-draft-status {
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            margin-bottom: 1rem;
            padding: .45rem .75rem;
            border: 1px solid rgba(214,173,87,.35);
            border-radius: 999px;
            background: rgba(14,90,49,.22);
            color: var(--gadit-gold-light);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .78rem;
            font-weight: 900;
        }

        .gadit-step-hidden {
            display: none !important;
        }

        .gadit-territory-row small.gadit-territory-help {
            display: block;
            width: 100%;
            margin-top: .38rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .78rem;
            font-weight: 700;
        }

        .gadit-step-actions {
            position: sticky !important;
            bottom: .55rem !important;
            z-index: 9999 !important;
            display: flex !important;
            align-items: center !important;
            justify-content: space-between !important;
            gap: .75rem !important;
            flex-wrap: wrap !important;
            margin: 1.45rem 0 0 !important;
            padding: .9rem !important;
            border: 1px solid rgba(214,173,87,.62) !important;
            border-radius: 1.1rem !important;
            background:
                radial-gradient(circle at 50% 0%, rgba(247,223,147,.16), transparent 15rem),
                linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.99)) !important;
            box-shadow:
                0 -.55rem 1.45rem rgba(0,0,0,.42),
                0 .55rem 1.25rem rgba(0,0,0,.25),
                inset 0 1px 0 rgba(255,255,255,.12) !important;
            backdrop-filter: blur(10px) !important;
        }

        .gadit-step-actions::before {
            content: "";
            position: absolute;
            top: 0;
            left: 50%;
            transform: translateX(-50%);
            width: min(64%, 18rem);
            height: .3rem;
            border-radius: 0 0 .5rem .5rem;
            background: linear-gradient(90deg, var(--gadit-green) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red) 66.666% 100%);
        }

        .gadit-step-actions .gadit-actions-right {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: .55rem;
            flex-wrap: wrap;
        }

        .gadit-step-actions .btn,
        .gadit-step-actions input[type="submit"],
        .gadit-step-actions input[type="reset"] {
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            min-height: 2.9rem !important;
            padding: .68rem 1.08rem !important;
            border-radius: 999px !important;
            border: 1px solid rgba(214,173,87,.68) !important;
            font-family: Arial, Helvetica, sans-serif !important;
            font-size: .82rem !important;
            font-weight: 900 !important;
            line-height: 1 !important;
            text-transform: uppercase !important;
            letter-spacing: .055em !important;
            opacity: 1 !important;
            visibility: visible !important;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 .45rem 1rem rgba(0,0,0,.28) !important;
        }

        .gadit-step-actions .btn-primary,
        .gadit-step-actions input[type="submit"].btn-primary {
            background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
            color: #120d04 !important;
            border-color: var(--gadit-gold-light) !important;
        }

        .gadit-step-actions .btn-secondary,
        .gadit-step-actions input[type="reset"].btn-secondary {
            background: linear-gradient(180deg, rgba(255,248,231,.18), rgba(59,51,39,.92)) !important;
            color: var(--gadit-cream) !important;
            border-color: rgba(214,173,87,.45) !important;
        }

        .gadit-step-actions .btn:hover,
        .gadit-step-actions input[type="submit"]:hover,
        .gadit-step-actions input[type="reset"]:hover {
            transform: translateY(-1px) !important;
            filter: brightness(1.08) !important;
        }

        .gadit-step-actions .btn:disabled {
            opacity: .48 !important;
            cursor: not-allowed !important;
            transform: none !important;
        }

        .gadit-step-actions .d-none {
            display: none !important;
        }

        @media (max-width: 767.98px) {
            .gadit-page-top { padding-bottom: 9rem !important; }
            .gadit-stepper { grid-template-columns: 1fr 1fr; }
            .gadit-step-actions {
                bottom: .35rem !important;
                display: grid !important;
                grid-template-columns: 1fr !important;
                gap: .6rem !important;
            }
            .gadit-step-actions .gadit-actions-right {
                display: grid !important;
                grid-template-columns: 1fr !important;
                width: 100% !important;
            }
            .gadit-step-actions .btn,
            .gadit-step-actions input[type="submit"],
            .gadit-step-actions input[type="reset"] {
                width: 100% !important;
            }
        }


        /* FIX GADIT: prova pulita, tutti i campi del form sempre visibili */
        #gaditRegistrazioneCittadinoForm .mb-3,
        #gaditRegistrazioneCittadinoForm .input-group,
        #gaditRegistrazioneCittadinoForm .form-control,
        #gaditRegistrazioneCittadinoForm .form-select {
            display: flex;
        }
        #gaditRegistrazioneCittadinoForm .gadit-step-hidden,
        #gaditRegistrazioneCittadinoForm [data-gadit-step] {
            display: block !important;
        }
        #gaditRegistrazioneCittadinoForm #btn {
            display: inline-flex !important;
        }

        .gadit-required-notice {
            margin: .55rem 0 1rem;
            padding: .72rem .9rem;
            border: 1px solid rgba(214,173,87,.42);
            border-left: .35rem solid var(--gadit-gold);
            border-radius: .85rem;
            background: rgba(255,248,231,.06);
            color: var(--gadit-gold-light);
            font-family: Arial, Helvetica, sans-serif;
            font-weight: 800;
            font-size: .9rem;
        }
        .gadit-required-mark {
            color: var(--gadit-gold-light);
            font-weight: 900;
        }
        .gadit-required-help {
            display: block;
            width: 100%;
            margin-top: .35rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .8rem;
            font-weight: 700;
        }


        /* GADIT - Obbligatori visibili + verifica email realtime */
        .gadit-required-mark {
            display: inline-block !important;
            margin-left: .18rem !important;
            color: #fff4bd !important;
            font-weight: 900 !important;
            font-size: 1.05em !important;
            line-height: 1 !important;
            text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
        }
        .gadit-required-help {
            display: block !important;
            flex-basis: 100% !important;
            width: 100% !important;
            margin-top: .35rem !important;
            color: var(--gadit-muted) !important;
            font-family: Arial, Helvetica, sans-serif !important;
            font-size: .8rem !important;
            font-weight: 700 !important;
        }
        .gadit-email-check {
            display: block;
            flex-basis: 100%;
            width: 100%;
            margin-top: .42rem;
            padding: .55rem .7rem;
            border: 1px solid rgba(214,173,87,.28);
            border-radius: .75rem;
            background: rgba(255,248,231,.055);
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .82rem;
            font-weight: 800;
        }
        .gadit-email-check.is-ok {
            border-color: rgba(14,90,49,.65);
            color: #bff3cf;
            background: rgba(14,90,49,.18);
        }
        .gadit-email-check.is-warn {
            border-color: rgba(214,173,87,.7);
            color: var(--gadit-gold-light);
            background: rgba(214,173,87,.14);
        }
        .gadit-email-check.is-error {
            border-color: rgba(185,31,43,.7);
            color: #ffb5bd;
            background: rgba(185,31,43,.16);
        }
        #gaditRegistrazioneCittadinoForm .input-group-text .gadit-required-mark {
            position: static !important;
            transform: none !important;
        }

/* ==== registrazione_cittadino migrated styles ==== */
/* =========================================================
           GADIT - Stile registrazione cittadino
           Solo estetica: nessuna modifica alla logica PHP.
        ========================================================= */
        .gadit-form-card {
            max-width: 1120px;
        }

        .gadit-form-card .gadit-section-note {
            border: 1px solid rgba(214,173,87,.35);
            border-left: .35rem solid var(--gadit-gold, #d6ad57);
            border-radius: .85rem;
            padding: .85rem 1rem;
            margin-bottom: 1.25rem;
            background: rgba(255,248,231,.07);
            color: var(--gadit-muted, #cbbf9c);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .94rem;
            font-weight: 700;
        }

        .gadit-styled-form {
            font-family: Georgia, "Times New Roman", serif;
        }

        .gadit-styled-form .mb-3,
        .gadit-styled-form .form-group {
            margin-bottom: 1rem !important;
        }

        .gadit-styled-form .input-group {
            border-radius: 1rem;
            box-shadow: 0 .5rem 1.1rem rgba(0,0,0,.18);
        }

        .gadit-styled-form .input-group-text,
        .gadit-styled-form label:not(.form-check-label) {
            background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57)) !important;
            border: 1px solid rgba(214,173,87,.55) !important;
            color: #120d04 !important;
            font-weight: 900 !important;
            border-radius: .9rem 0 0 .9rem !important;
            min-width: 11rem;
            justify-content: flex-start;
        }

        .gadit-styled-form .input-group .form-control,
        .gadit-styled-form .input-group .form-select,
        .gadit-styled-form .input-group .gadit-input {
            border-radius: 0 .9rem .9rem 0 !important;
        }

        .gadit-styled-form .form-control,
        .gadit-styled-form .form-select,
        .gadit-styled-form textarea,
        .gadit-styled-form .gadit-input {
            min-height: 3rem;
            background: rgba(255,248,231,.96) !important;
            border: 1px solid rgba(214,173,87,.48) !important;
            color: #1f1608 !important;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.45) !important;
        }

        .gadit-styled-form .form-control:focus,
        .gadit-styled-form .form-select:focus,
        .gadit-styled-form textarea:focus {
            border-color: var(--gadit-gold, #d6ad57) !important;
            box-shadow: 0 0 0 .24rem rgba(214,173,87,.2) !important;
        }

        .gadit-styled-form .btn,
        .gadit-styled-form input[type="submit"],
        .gadit-styled-form input[type="reset"],
        .gadit-styled-form button {
            min-height: 2.85rem;
            border-radius: 999px !important;
            padding: .65rem 1.1rem;
            font-family: Arial, Helvetica, sans-serif;
            font-weight: 900 !important;
            text-transform: uppercase;
            letter-spacing: .055em;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 .55rem 1.15rem rgba(0,0,0,.30);
        }

        .gadit-styled-form .btn-primary,
        .gadit-styled-form input[type="submit"] {
            background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57)) !important;
            border-color: var(--gadit-gold-light, #f7df93) !important;
            color: #120d04 !important;
        }

        .gadit-styled-form .btn-secondary,
        .gadit-styled-form input[type="reset"] {
            background: linear-gradient(180deg, rgba(255,248,231,.16), rgba(59,51,39,.92)) !important;
            color: var(--gadit-cream, #fff8e7) !important;
            border-color: rgba(214,173,87,.45) !important;
        }

        .gadit-styled-form .btn:hover,
        .gadit-styled-form input[type="submit"]:hover,
        .gadit-styled-form input[type="reset"]:hover,
        .gadit-styled-form button:hover {
            transform: translateY(-1px);
            filter: brightness(1.06);
        }

        .gadit-styled-form .invalid-feedback {
            color: #ffb7bd;
            font-family: Arial, Helvetica, sans-serif;
            font-weight: 800;
        }

        @media (max-width: 767.98px) {
            .gadit-styled-form .input-group {
                display: block;
            }

            .gadit-styled-form .input-group-text,
            .gadit-styled-form label:not(.form-check-label) {
                width: 100%;
                min-width: 0;
                border-radius: .9rem .9rem 0 0 !important;
            }

            .gadit-styled-form .input-group .form-control,
            .gadit-styled-form .input-group .form-select,
            .gadit-styled-form .input-group .gadit-input {
                width: 100%;
                border-radius: 0 0 .9rem .9rem !important;
            }

            .gadit-styled-form .btn,
            .gadit-styled-form input[type="submit"],
            .gadit-styled-form input[type="reset"],
            .gadit-styled-form button {
                width: 100%;
                margin-bottom: .5rem;
            }
        }


        /* =========================================================
           FIX GADIT - registrazione cittadino in pagina unica
           Mostra tutti i campi del form e lascia Invio sempre disponibile.
        ========================================================= */
        .gadit-step-hidden,
        #gaditRegistrazioneCittadinoForm .gadit-step-hidden {
            display: block !important;
        }
        #gaditPrevStep,
        #gaditNextStep,
        #gaditClearDraft,
        .gadit-stepper,
        #gaditStepTitle,
        #gaditDraftStatus {
            display: none !important;
        }
        #gaditRegistrazioneCittadinoForm #btn,
        #gaditRegistrazioneCittadinoForm input[type="submit"]#btn,
        #gaditRegistrazioneCittadinoForm #btn.d-none {
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
        }
        #gaditRegistrazioneCittadinoForm .gadit-step-actions {
            position: static !important;
            bottom: auto !important;
            justify-content: flex-end !important;
        }
        #gaditRegistrazioneCittadinoForm .gadit-actions-right {
            display: flex !important;
            justify-content: flex-end !important;
            gap: .65rem !important;
            flex-wrap: wrap !important;
        }

        /* GADIT - Salvataggio bozza semplice */
        .gadit-draft-status {
            display: block;
            width: 100%;
            margin-top: .55rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .84rem;
            text-align: right;
        }
        .gadit-form-post-result {
            margin: 0 0 1rem 0;
            border-radius: .9rem;
            font-family: Arial, Helvetica, sans-serif;
            font-weight: 700;
        }
        .gadit-btn-draft {
            background: linear-gradient(180deg, rgba(255,248,231,.16), rgba(59,51,39,.86)) !important;
            border-color: rgba(214,173,87,.42) !important;
            color: var(--gadit-cream) !important;
        }

/* ==== registrazione_cittadino migrated styles ==== */
.gadit-result-modal-backdrop {
            position: fixed;
            inset: 0;
            z-index: 30000;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1rem;
            background: rgba(0, 0, 0, .68);
            backdrop-filter: blur(8px);
        }
        .gadit-result-modal-box {
            width: min(100%, 520px);
            border: 1px solid rgba(214,173,87,.62);
            border-radius: 1.35rem;
            overflow: hidden;
            background: linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.99));
            color: var(--gadit-cream);
            box-shadow: 0 1.35rem 3.4rem rgba(0,0,0,.62), 0 0 0 .28rem rgba(214,173,87,.10), inset 0 1px 0 rgba(255,255,255,.12);
            text-align: center;
        }
        .gadit-result-modal-box::before {
            content: "";
            display: block;
            height: .32rem;
            background: linear-gradient(90deg, var(--gadit-green) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red) 66.666% 100%);
        }
        .gadit-result-modal-body { padding: 1.6rem 1.4rem; }
        .gadit-result-modal-title {
            margin: 0 0 .7rem;
            color: var(--gadit-gold-light);
            font-weight: 900;
            text-transform: uppercase;
            letter-spacing: .045em;
        }
        .gadit-result-modal-message { margin: 0 0 1rem; font-family: Arial, Helvetica, sans-serif; }
        .gadit-result-modal-note { margin: 0; color: var(--gadit-muted); font-size: .9rem; font-family: Arial, Helvetica, sans-serif; }
        .gadit-result-modal-icon {
            width: 3.25rem;
            height: 3.25rem;
            margin: 0 auto 1rem;
            border-radius: 999px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.7rem;
            font-weight: 900;
            background: var(--gadit-gold);
            color: #120d04;
            box-shadow: 0 .65rem 1.25rem rgba(0,0,0,.35);
        }

/* =========================================================
   GADIT UX PRO - Registrazione Cittadino
   Solo ottimizzazione aspetto/usabilità. Logica PHP invariata.
========================================================= */

.gadit-registration-pro,
.gadit-card.gadit-registration-pro {
    max-width: 1180px !important;
    border-radius: 1.55rem !important;
}

.gadit-registration-pro .gadit-card-header {
    padding: 1.75rem 1.75rem 1.1rem !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(247,223,147,.13), transparent 20rem),
        linear-gradient(180deg, rgba(255,248,231,.04), transparent) !important;
    border-bottom: 1px solid rgba(214,173,87,.22) !important;
}

.gadit-registration-pro .gadit-card-body {
    padding: clamp(1rem, 2vw, 1.65rem) !important;
}

.gadit-registration-pro .gadit-title {
    font-size: clamp(1.35rem, 2.2vw, 2rem) !important;
}

.gadit-registration-pro .gadit-subtitle,
.gadit-registration-pro .gadit-muted {
    font-family: Arial, Helvetica, sans-serif !important;
    line-height: 1.45 !important;
}

/* Avviso campi obbligatori */
.gadit-required-note,
.gadit-registration-pro .gadit-required-note {
    display: flex !important;
    align-items: center !important;
    gap: .65rem !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin: 0 auto 1.1rem !important;
    padding: .72rem 1rem !important;
    border: 1px solid rgba(214,173,87,.42) !important;
    border-left: .35rem solid var(--gadit-gold) !important;
    border-radius: 999px !important;
    background: rgba(255,248,231,.075) !important;
    color: var(--gadit-gold-light) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .86rem !important;
    font-weight: 800 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 .5rem 1.2rem rgba(0,0,0,.18) !important;
}

/* Step/progress */
.gadit-stepper-pro {
    position: sticky !important;
    top: .45rem !important;
    z-index: 12 !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
    gap: .55rem !important;
    margin: 0 0 1.2rem !important;
    padding: .55rem !important;
    border: 1px solid rgba(214,173,87,.28) !important;
    border-radius: 1.15rem !important;
    background: rgba(5,4,3,.72) !important;
    backdrop-filter: blur(10px) !important;
    box-shadow: 0 .9rem 2rem rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.gadit-stepper-pro .gadit-step-pill {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .42rem !important;
    min-height: 2.55rem !important;
    padding: .55rem .7rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.32) !important;
    background: rgba(255,248,231,.055) !important;
    color: var(--gadit-muted) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .74rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
    cursor: pointer !important;
    transition: transform .15s ease, border-color .15s ease, background .15s ease, color .15s ease !important;
}

.gadit-step-pill::before {
    content: attr(data-step-num) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.38rem !important;
    height: 1.38rem !important;
    border-radius: 50% !important;
    background: rgba(214,173,87,.18) !important;
    color: var(--gadit-gold-light) !important;
    border: 1px solid rgba(214,173,87,.38) !important;
    font-size: .76rem !important;
}

.gadit-step-pill.is-active {
    background: linear-gradient(180deg, rgba(247,223,147,.92), rgba(214,173,87,.82)) !important;
    border-color: var(--gadit-gold-light) !important;
    color: #120d04 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 .6rem 1.25rem rgba(214,173,87,.22) !important;
}

.gadit-step-pill.is-active::before {
    background: #120d04 !important;
    color: var(--gadit-gold-light) !important;
    border-color: rgba(18,13,4,.8) !important;
}

.gadit-step-pill.is-done {
    border-color: rgba(14,90,49,.72) !important;
    color: var(--gadit-gold-light) !important;
}

/* Sezioni form */
.gadit-step-panel,
.gadit-form-section,
.gadit-registration-pro fieldset {
    position: relative !important;
    margin-bottom: 1rem !important;
    padding: clamp(.95rem, 1.8vw, 1.25rem) !important;
    border: 1px solid rgba(214,173,87,.28) !important;
    border-radius: 1.15rem !important;
    background:
        linear-gradient(180deg, rgba(255,248,231,.055), rgba(255,248,231,.025)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 .65rem 1.55rem rgba(0,0,0,.16) !important;
}

.gadit-step-title,
.gadit-section-title,
.gadit-registration-pro legend {
    display: flex !important;
    align-items: center !important;
    gap: .55rem !important;
    margin: 0 0 1rem !important;
    color: var(--gadit-gold-light) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 1rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .065em !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.55) !important;
}

.gadit-step-title::before,
.gadit-section-title::before,
.gadit-registration-pro legend::before {
    content: "" !important;
    width: .55rem !important;
    height: .55rem !important;
    border-radius: 50% !important;
    background: var(--gadit-gold) !important;
    box-shadow: 0 0 0 .28rem rgba(214,173,87,.16) !important;
}

/* Layout campi più professionale */
.gadit-registration-pro .row,
.gadit-registration-pro .form-row {
    row-gap: .85rem !important;
}

.gadit-registration-pro .mb-3,
.gadit-registration-pro .form-group {
    margin-bottom: .95rem !important;
}

.gadit-registration-pro label,
.gadit-registration-pro .gadit-label {
    display: flex !important;
    align-items: center !important;
    gap: .35rem !important;
    margin-bottom: .42rem !important;
    color: var(--gadit-gold-light) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
}

.gadit-registration-pro label .gadit-required,
.gadit-registration-pro .gadit-required {
    color: #fff4bd !important;
    text-shadow: 0 0 .7rem rgba(214,173,87,.42) !important;
}

.gadit-registration-pro .form-control,
.gadit-registration-pro .form-select,
.gadit-registration-pro textarea,
.gadit-registration-pro input[type="text"],
.gadit-registration-pro input[type="email"],
.gadit-registration-pro input[type="date"],
.gadit-registration-pro input[type="tel"],
.gadit-registration-pro select {
    min-height: 3.05rem !important;
    border-radius: .95rem !important;
    border: 1px solid rgba(214,173,87,.52) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,248,231,.95)) !important;
    color: #1f1608 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .96rem !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 .35rem .85rem rgba(0,0,0,.10) !important;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease !important;
}

.gadit-registration-pro textarea {
    min-height: 6.5rem !important;
    resize: vertical !important;
}

.gadit-registration-pro .form-control:focus,
.gadit-registration-pro .form-select:focus,
.gadit-registration-pro textarea:focus,
.gadit-registration-pro input:focus,
.gadit-registration-pro select:focus {
    border-color: var(--gadit-gold) !important;
    box-shadow:
        0 0 0 .23rem rgba(214,173,87,.22),
        0 .55rem 1.15rem rgba(0,0,0,.16) !important;
    transform: translateY(-1px) !important;
    outline: none !important;
}

.gadit-registration-pro .form-control[readonly],
.gadit-registration-pro .form-control:disabled,
.gadit-registration-pro .form-select:disabled {
    background: linear-gradient(180deg, rgba(230,222,207,.95), rgba(210,200,180,.92)) !important;
    color: #4a3b24 !important;
    opacity: 1 !important;
}

/* Email/aiuti/esiti campo */
.gadit-registration-pro small,
.gadit-registration-pro .form-text,
.gadit-registration-pro .gadit-field-help,
.gadit-registration-pro #emailHelp,
.gadit-registration-pro #gaditEmailFeedback {
    display: block !important;
    margin-top: .38rem !important;
    color: var(--gadit-muted) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .78rem !important;
    line-height: 1.35 !important;
}

.gadit-registration-pro .is-invalid,
.gadit-registration-pro input.gadit-invalid {
    border-color: rgba(185,31,43,.86) !important;
    box-shadow: 0 0 0 .23rem rgba(185,31,43,.18) !important;
}

.gadit-registration-pro .is-valid,
.gadit-registration-pro input.gadit-valid {
    border-color: rgba(14,90,49,.76) !important;
    box-shadow: 0 0 0 .23rem rgba(14,90,49,.16) !important;
}

/* Select2 coerente */
.gadit-registration-pro .select2-container {
    width: 100% !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

.gadit-registration-pro .select2-selection {
    min-height: 3.05rem !important;
    border-radius: .95rem !important;
    border: 1px solid rgba(214,173,87,.52) !important;
    background: rgba(255,248,231,.96) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 .35rem .85rem rgba(0,0,0,.10) !important;
}

/* Bottoni finali */
.gadit-registration-pro .gadit-form-actions,
.gadit-registration-pro .form-actions,
.gadit-registration-pro .modal-footer,
.gadit-registration-pro .card-footer {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 10 !important;
    margin: 1rem -0.2rem -0.2rem !important;
    padding: .85rem !important;
    border: 1px solid rgba(214,173,87,.26) !important;
    border-radius: 1.15rem !important;
    background: linear-gradient(180deg, rgba(18,17,14,.92), rgba(5,4,3,.96)) !important;
    box-shadow: 0 -.5rem 1.5rem rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.gadit-registration-pro .btn,
.gadit-registration-pro button,
.gadit-registration-pro input[type="submit"],
.gadit-registration-pro input[type="reset"] {
    border-radius: 999px !important;
    min-height: 2.85rem !important;
    padding: .62rem 1.05rem !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 900 !important;
    letter-spacing: .05em !important;
    text-transform: uppercase !important;
}

.gadit-registration-pro .btn-primary,
.gadit-registration-pro .btn-success,
.gadit-registration-pro input[type="submit"] {
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    border-color: var(--gadit-gold-light) !important;
    color: #120d04 !important;
    box-shadow: 0 .8rem 1.45rem rgba(214,173,87,.22) !important;
}

/* Bozza */
.gadit-draft-status,
#gaditDraftStatus {
    display: inline-flex !important;
    align-items: center !important;
    gap: .45rem !important;
    margin: .2rem 0 1rem !important;
    padding: .55rem .85rem !important;
    border: 1px solid rgba(214,173,87,.35) !important;
    border-radius: 999px !important;
    background: rgba(14,90,49,.22) !important;
    color: var(--gadit-gold-light) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
}

/* Mini toolbar interna */
.gadit-form-mini-toolbar {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:.75rem !important;
    flex-wrap:wrap !important;
    margin-bottom:1rem !important;
}

/* Riduce spazi se il file viene mostrato dentro modal/dashboard */
.gadit-content-inner .gadit-registration-pro {
    margin: 0 auto !important;
}

@media (max-width: 991.98px) {
    .gadit-stepper-pro {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        position: relative !important;
        top: auto !important;
    }
}

@media (max-width: 575.98px) {
    .gadit-registration-pro .gadit-card-header,
    .gadit-registration-pro .gadit-card-body {
        padding: 1rem !important;
    }

    .gadit-stepper-pro {
        grid-template-columns: 1fr !important;
        gap: .45rem !important;
        padding: .45rem !important;
    }

    .gadit-registration-pro .gadit-form-actions,
    .gadit-registration-pro .form-actions,
    .gadit-registration-pro .modal-footer,
    .gadit-registration-pro .card-footer {
        position: static !important;
    }

    .gadit-registration-pro .btn,
    .gadit-registration-pro button,
    .gadit-registration-pro input[type="submit"],
    .gadit-registration-pro input[type="reset"] {
        width: 100% !important;
        margin-bottom: .4rem !important;
    }
}


/* =========================================================
   GADIT - Step/Tabs registrazione cittadino
========================================================= */
.gadit-step-nav,
.gadit-registration-tabs,
.nav-pills.gadit-step-nav,
.nav-tabs.gadit-step-nav {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin-bottom: 1.25rem;
}

.gadit-step-nav .nav-link,
.gadit-registration-tabs .nav-link,
.gadit-registration-tab,
button.gadit-registration-tab {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 2.8rem;
    padding: .72rem 1rem;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    background:
        linear-gradient(180deg, rgba(247,223,147,.16), rgba(214,173,87,.08)),
        rgba(255,248,231,.04) !important;
    color: var(--gadit-gold-light) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    text-decoration: none !important;
    line-height: 1.1 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12),
        0 .45rem 1rem rgba(0,0,0,.22) !important;
    transition:
        transform .15s ease,
        background .15s ease,
        border-color .15s ease,
        color .15s ease !important;
}

.gadit-step-nav .nav-link:hover,
.gadit-step-nav .nav-link.active,
.gadit-registration-tabs .nav-link:hover,
.gadit-registration-tabs .nav-link.active,
.gadit-registration-tab:hover,
.gadit-registration-tab.active,
button.gadit-registration-tab:hover,
button.gadit-registration-tab.active {
    transform: translateY(-1px);
    border-color: var(--gadit-gold) !important;
    background:
        linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    color: #120d04 !important;
}

@media (max-width: 575.98px) {
    .gadit-step-nav,
    .gadit-registration-tabs {
        gap: .45rem;
    }

    .gadit-step-nav .nav-link,
    .gadit-registration-tabs .nav-link,
    .gadit-registration-tab,
    button.gadit-registration-tab {
        width: 100%;
        min-height: 2.55rem;
        font-size: .74rem !important;
        padding: .62rem .8rem;
    }
}

/* =========================================================
   CSS inline migrato dai file PHP
   ========================================================= */

/* CSS spostato da capture_photo.php */
:root {
            --gadit-black: #050403;
            --gadit-gold: #d6ad57;
            --gadit-gold-light: #f7df93;
            --gadit-gold-dark: #7d5220;
            --gadit-green: #0e5a31;
            --gadit-red: #b91f2b;
            --gadit-cream: #fff8e7;
            --gadit-muted: #cbbf9c;
            --gadit-border: rgba(214, 173, 87, .42);
            --gadit-card-bg: linear-gradient(180deg, rgba(18, 17, 14, .96), rgba(5, 4, 3, .98));
        }

        html,
        body {
            min-height: 100%;
        }

        body.gadit-theme {
            margin: 0;
            font-family: Georgia, "Times New Roman", serif;
            background:
                radial-gradient(circle at 50% 0%, rgba(247, 223, 147, .24), transparent 22rem),
                radial-gradient(circle at 12% 18%, rgba(14, 90, 49, .28), transparent 18rem),
                radial-gradient(circle at 88% 82%, rgba(185, 31, 43, .20), transparent 18rem),
                linear-gradient(145deg, #000 0%, #0d0b08 50%, #030303 100%);
            color: var(--gadit-cream);
        }

        .gadit-capture-page {
            min-height: 100vh;
            padding: clamp(.75rem, 3vw, 2rem);
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .gadit-capture-shell {
            width: min(100%, 1180px);
        }

        .gadit-capture-card {
            position: relative;
            overflow: hidden;
            border: 1px solid var(--gadit-border);
            border-radius: clamp(1rem, 2vw, 1.75rem);
            background: var(--gadit-card-bg);
            box-shadow:
                0 1.5rem 4rem rgba(0, 0, 0, .55),
                0 0 0 .35rem rgba(214, 173, 87, .08),
                inset 0 1px 0 rgba(255, 255, 255, .12);
            backdrop-filter: blur(10px);
        }

        .gadit-capture-card::before {
            content: "";
            position: absolute;
            top: 0;
            left: 50%;
            transform: translateX(-50%);
            width: min(64%, 22rem);
            height: .36rem;
            pointer-events: none;
            border-radius: 0 0 .5rem .5rem;
            background: linear-gradient(90deg, var(--gadit-green) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red) 66.666% 100%);
            opacity: .95;
            z-index: 2;
        }

        .gadit-capture-header {
            padding: clamp(1.35rem, 3vw, 2rem) clamp(1rem, 3vw, 1.75rem) .75rem;
            text-align: center;
        }

        .gadit-title {
            color: var(--gadit-gold-light);
            letter-spacing: .04em;
            text-transform: uppercase;
            text-shadow: 0 2px 0 rgba(0,0,0,.5);
            font-weight: 800;
            margin: 0;
        }

        .gadit-subtitle {
            margin-top: .45rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .95rem;
        }

        .gadit-tricolore {
            display: flex;
            height: .28rem;
            border-radius: 999px;
            overflow: hidden;
            margin: 1rem auto 0;
            max-width: 16rem;
            box-shadow: 0 .35rem 1rem rgba(0,0,0,.25);
        }

        .gadit-capture-body {
            padding: clamp(1rem, 3vw, 1.75rem);
        }

        .gadit-camera-grid {
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
            gap: clamp(1rem, 2.5vw, 1.35rem);
            align-items: stretch;
        }

        .gadit-panel {
            min-width: 0;
            border: 1px solid rgba(214,173,87,.38);
            border-radius: 1.15rem;
            background: rgba(255,248,231,.055);
            box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 .8rem 1.8rem rgba(0,0,0,.22);
            overflow: hidden;
        }

        .gadit-panel-heading {
            padding: .85rem 1rem;
            border-bottom: 1px solid rgba(214,173,87,.28);
            background: linear-gradient(180deg, rgba(255,248,231,.08), rgba(5,4,3,.25));
            color: var(--gadit-gold-light);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .82rem;
            font-weight: 900;
            text-transform: uppercase;
            letter-spacing: .06em;
        }

        .gadit-panel-body {
            padding: 1rem;
        }

        #my_camera,
        #results {
            width: 100%;
            min-height: 260px;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 1px solid rgba(214,173,87,.45);
            border-radius: 1rem;
            background:
                linear-gradient(145deg, rgba(255,248,231,.96), rgba(245,225,171,.96));
            color: #17120a;
            font-family: Arial, Helvetica, sans-serif;
            font-weight: 800;
            text-align: center;
            overflow: hidden;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 .65rem 1.45rem rgba(0,0,0,.18);
        }

        #my_camera video,
        #my_camera canvas,
        #results img {
            display: block;
            width: 100% !important;
            max-width: 640px;
            height: auto !important;
            object-fit: contain;
            border-radius: .75rem;
        }

        .gadit-actions {
            display: flex;
            justify-content: center;
            gap: .7rem;
            flex-wrap: wrap;
            margin-top: 1.1rem;
        }

        .gadit-action-btn,
        .gadit-action-btn:visited,
        input.gadit-action-btn,
        button.gadit-action-btn {
            appearance: none;
            -webkit-appearance: none;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            gap: .45rem;
            min-height: 2.75rem;
            padding: .68rem 1.05rem !important;
            border-radius: 999px !important;
            border: 1px solid rgba(214,173,87,.62) !important;
            font-family: Arial, Helvetica, sans-serif !important;
            font-size: .84rem !important;
            font-weight: 900 !important;
            letter-spacing: .055em !important;
            text-transform: uppercase !important;
            text-decoration: none !important;
            line-height: 1 !important;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 .55rem 1.15rem rgba(0,0,0,.30) !important;
            transition: transform .15s ease, filter .15s ease, background .15s ease, color .15s ease !important;
            cursor: pointer;
        }

        .gadit-action-btn:hover,
        .gadit-action-btn:focus {
            transform: translateY(-1px) !important;
            filter: brightness(1.08) !important;
            outline: none;
        }

        .gadit-btn-gold {
            background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
            color: #120d04 !important;
            border-color: var(--gadit-gold-light) !important;
        }

        .gadit-btn-green {
            background: linear-gradient(180deg, rgba(247,223,147,.92), rgba(14,90,49,.96)) !important;
            color: #fff8e7 !important;
            border-color: rgba(247,223,147,.76) !important;
        }

        .gadit-btn-dark {
            background: linear-gradient(180deg, rgba(255,248,231,.16), rgba(59,51,39,.92)) !important;
            color: var(--gadit-cream) !important;
            border-color: rgba(214,173,87,.42) !important;
        }

        .gadit-note {
            margin-top: .75rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .82rem;
            text-align: center;
        }

        @media (max-width: 767.98px) {
            .gadit-capture-page {
                align-items: stretch;
                padding: .55rem;
            }

            .gadit-capture-card {
                border-radius: 1.1rem;
            }

            .gadit-camera-grid {
                grid-template-columns: 1fr;
            }

            .gadit-capture-header {
                padding: 1.35rem .9rem .55rem;
            }

            .gadit-capture-body {
                padding: .85rem;
            }

            #my_camera,
            #results {
                min-height: 220px;
            }

            .gadit-actions {
                align-items: stretch;
            }

            .gadit-action-btn,
            input.gadit-action-btn,
            button.gadit-action-btn {
                width: 100%;
                min-height: 2.85rem;
            }
        }

/* CSS spostato da forget-pwd.php */
:root {
            --gadit-black: #050403;
            --gadit-gold: #d6ad57;
            --gadit-gold-light: #f7df93;
            --gadit-gold-dark: #7d5220;
            --gadit-green: #0e5a31;
            --gadit-red: #b91f2b;
            --gadit-cream: #fff8e7;
            --gadit-muted: #cbbf9c;
            --card-border: rgba(214, 173, 87, .42);
        }

        body {
            margin: 0;
            font-family: Georgia, "Times New Roman", serif;
            background:
                radial-gradient(circle at 50% 0%, rgba(247, 223, 147, .24), transparent 22rem),
                radial-gradient(circle at 12% 18%, rgba(14, 90, 49, .28), transparent 18rem),
                radial-gradient(circle at 88% 82%, rgba(185, 31, 43, .20), transparent 18rem),
                linear-gradient(145deg, #000 0%, #0d0b08 50%, #030303 100%);
            color: var(--gadit-cream);
        }

        body::before {
            content: "";
            position: fixed;
            inset: 0;
            pointer-events: none;
            background:
                repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 16px),
                linear-gradient(90deg, transparent, rgba(214, 173, 87, .07), transparent);
            opacity: .7;
        }

        .reset-page {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: clamp(1rem, 4vw, 3rem);
            position: relative;
        }

        .reset-card {
            width: 100%;
            max-width: 500px;
            border: 1px solid var(--card-border);
            border-radius: 1.75rem;
            overflow: hidden;
            background: linear-gradient(180deg, rgba(18, 17, 14, .96), rgba(5, 4, 3, .98));
            box-shadow:
                0 1.5rem 4rem rgba(0, 0, 0, .55),
                0 0 0 .35rem rgba(214, 173, 87, .08),
                inset 0 1px 0 rgba(255, 255, 255, .12);
            backdrop-filter: blur(10px);
            position: relative;
        }

        .reset-card::before {
            content: "";
            position: absolute;
            top: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 64%;
            height: .36rem;
            pointer-events: none;
            border-radius: 0 0 .5rem .5rem;
            background: linear-gradient(90deg,
                var(--gadit-green) 0 33.333%,
                #fff 33.333% 66.666%,
                var(--gadit-red) 66.666% 100%);
            opacity: .95;
        }

        .reset-card__header {
            padding: 2rem 1.75rem 0;
            position: relative;
        }

        .reset-card__body { padding: 1.75rem; }

        .brand-badge {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: clamp(7.25rem, 28vw, 9.25rem);
            height: clamp(7.25rem, 28vw, 9.25rem);
            border-radius: 50%;
            padding: .35rem;
            background: radial-gradient(circle at 35% 25%, #fff9df, var(--gadit-gold-light) 22%, var(--gadit-gold) 55%, var(--gadit-gold-dark) 100%);
            box-shadow:
                0 1rem 2.25rem rgba(0,0,0,.55),
                0 0 0 .2rem rgba(214,173,87,.38),
                0 0 2.5rem rgba(214,173,87,.2);
        }

        .brand-badge img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            border-radius: 50%;
            filter: drop-shadow(0 .45rem .8rem rgba(0,0,0,.45));
        }

        .reset-card h1 {
            color: var(--gadit-gold-light);
            letter-spacing: .04em;
            text-transform: uppercase;
            text-shadow: 0 2px 0 rgba(0,0,0,.5);
        }

        .reset-card p, .text-secondary, .text-muted {
            color: var(--gadit-muted) !important;
        }

        .form-label {
            color: var(--gadit-gold-light);
            letter-spacing: .02em;
        }

        .form-control, .btn {
            min-height: 3rem;
            border-radius: .9rem;
        }

        .form-control {
            background: rgba(255, 248, 231, .96);
            border: 1px solid rgba(214,173,87,.45);
            color: #1f1608;
        }

        .form-control::placeholder { color: rgba(31,22,8,.5); }

        .form-control:focus {
            border-color: var(--gadit-gold);
            box-shadow: 0 0 0 .25rem rgba(214, 173, 87, .18);
        }

        .reset-actions .btn {
            width: 100%;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .06em;
        }

        .btn-primary {
            --bs-btn-bg: var(--gadit-gold);
            --bs-btn-border-color: var(--gadit-gold);
            --bs-btn-color: #120d04;
            --bs-btn-hover-bg: var(--gadit-gold-light);
            --bs-btn-hover-border-color: var(--gadit-gold-light);
            --bs-btn-hover-color: #120d04;
            --bs-btn-active-bg: var(--gadit-gold-dark);
            --bs-btn-active-border-color: var(--gadit-gold-dark);
            box-shadow: 0 .9rem 1.9rem rgba(214,173,87,.22);
        }

        a { color: var(--gadit-gold-light); }
        a:hover { color: #fff4bd; }

        .tricolore-divider {
            display: flex;
            height: .28rem;
            border-radius: 999px;
            overflow: hidden;
            margin: 1rem auto 0;
            max-width: 16rem;
            box-shadow: 0 .35rem 1rem rgba(0,0,0,.25);
        }

        .tricolore-divider span { flex: 1; }
        .tricolore-divider span:nth-child(1) { background: var(--gadit-green); }
        .tricolore-divider span:nth-child(2) { background: #fff; }
        .tricolore-divider span:nth-child(3) { background: var(--gadit-red); }

        @media (max-width: 575.98px) {
            .reset-page {
                align-items: stretch;
                padding: .75rem;
            }

            .reset-card {
                max-width: none;
                border-radius: 1.25rem;
            }

            .reset-card__header, .reset-card__body { padding: 1.25rem; }
        }

/* CSS spostato da index.php */
:root {
            --gadit-black: #050403;
            --gadit-gold: #d6ad57;
            --gadit-gold-light: #f7df93;
            --gadit-gold-dark: #7d5220;
            --gadit-green: #0e5a31;
            --gadit-red: #b91f2b;
            --gadit-cream: #fff8e7;
            --gadit-muted: #cbbf9c;
            --card-border: rgba(214, 173, 87, .42);
        }

        .login-page {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: clamp(1rem, 4vw, 3rem);
            position: relative;
        }

        .login-card {
            width: 100%;
            max-width: 500px;
            border: 1px solid var(--card-border);
            border-radius: 1.75rem;
            overflow: hidden;
            background: linear-gradient(180deg, rgba(18, 17, 14, .96), rgba(5, 4, 3, .98));
            box-shadow:
                0 1.5rem 4rem rgba(0, 0, 0, .55),
                0 0 0 .35rem rgba(214, 173, 87, .08),
                inset 0 1px 0 rgba(255, 255, 255, .12);
            backdrop-filter: blur(10px);
            position: relative;
        }

        .login-card::before {
            content: "";
            position: absolute;
            top: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 64%;
            height: .36rem;
            pointer-events: none;
            border-radius: 0 0 .5rem .5rem;
            background: linear-gradient(90deg,
                var(--gadit-green) 0 33.333%,
                #fff 33.333% 66.666%,
                var(--gadit-red) 66.666% 100%);
            opacity: .95;
        }

        .login-card__header {
            padding: 2rem 1.75rem 0;
            position: relative;
        }

        .login-card__body { padding: 1.75rem; }

        .login-card h1 {
            color: var(--gadit-gold-light);
            letter-spacing: .04em;
            text-transform: uppercase;
            text-shadow: 0 2px 0 rgba(0,0,0,.5);
        }

        .login-card p, .text-secondary { color: var(--gadit-muted) !important; }

        .form-control, .input-group-text, .btn {
            min-height: 3rem;
            border-radius: .9rem;
        }

        .password-toggle {
            border-top-left-radius: 0;
            border-bottom-left-radius: 0;
            border-color: rgba(214,173,87,.5);
            color: var(--gadit-gold-light);
            background: rgba(214,173,87,.08);
        }

        .password-toggle:hover, .password-toggle:focus {
            background: var(--gadit-gold);
            border-color: var(--gadit-gold);
            color: #100b03;
        }

        .login-actions .btn {
            width: 100%;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .06em;
        }

        .alert {
            border-radius: 1rem;
            border-width: 1px;
        }

        .alert a { font-weight: 700; }

        @media (max-width: 575.98px) {
            .login-page {
                align-items: stretch;
                padding: .75rem;
            }

            .login-card {
                max-width: none;
                border-radius: 1.25rem;
            }

            .login-card__header, .login-card__body { padding: 1.25rem; }
        }

/* CSS spostato da pwd-reset-token.php */
:root {
            --gadit-black: #050403;
            --gadit-gold: #d6ad57;
            --gadit-gold-light: #f7df93;
            --gadit-gold-dark: #7d5220;
            --gadit-green: #0e5a31;
            --gadit-red: #b91f2b;
            --gadit-cream: #fff8e7;
            --gadit-muted: #cbbf9c;
            --card-border: rgba(214, 173, 87, .42);
        }

        .status-box {
            border-radius: 1rem;
            padding: 1rem;
            border: 1px solid rgba(214,173,87,.35);
            background: rgba(255,248,231,.06);
            color: var(--gadit-cream);
        }

        .status-box.success {
            border-color: rgba(14,90,49,.75);
            box-shadow: inset .28rem 0 0 var(--gadit-green);
        }

        .status-box.error {
            border-color: rgba(185,31,43,.75);
            box-shadow: inset .28rem 0 0 var(--gadit-red);
        }

        .btn {
            min-height: 3rem;
            border-radius: .9rem;
        }

        .btn-primary {
            --bs-btn-bg: var(--gadit-gold);
            --bs-btn-border-color: var(--gadit-gold);
            --bs-btn-color: #120d04;
            --bs-btn-hover-bg: var(--gadit-gold-light);
            --bs-btn-hover-border-color: var(--gadit-gold-light);
            --bs-btn-hover-color: #120d04;
            --bs-btn-active-bg: var(--gadit-gold-dark);
            --bs-btn-active-border-color: var(--gadit-gold-dark);
            width: 100%;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .06em;
            box-shadow: 0 .9rem 1.9rem rgba(214,173,87,.22);
        }

        @media (max-width: 575.98px) {
        }

/* CSS spostato da registrazione_guardia.php */
.gadit-form-card {
            max-width: 1120px;
        }

        .gadit-form-actions {
            display: flex;
            flex-wrap: wrap;
            gap: .75rem;
            margin-top: 1.5rem;
        }

        .gadit-form-actions .btn {
            flex: 1 1 220px;
        }


        .gadit-form-section {
            padding: 1rem;
            border: 1px solid rgba(214,173,87,.22);
            border-radius: 1rem;
            background: rgba(255,248,231,.035);
        }

        .gadit-form-section-title {
            margin: 0 0 1rem;
            color: var(--gadit-gold-light);
            font-size: 1rem;
            font-weight: 800;
            letter-spacing: .05em;
            text-transform: uppercase;
        }

        .gadit-form-card .form-label {
            color: var(--gadit-gold-light);
            font-weight: 700;
            margin-bottom: .35rem;
        }


        .gadit-password-field {
            position: relative;
        }

        .gadit-password-field .form-control {
            padding-right: 4.25rem;
        }

        .gadit-toggle-password {
            position: absolute;
            right: .45rem;
            top: 50%;
            transform: translateY(-50%);
            min-height: 2.15rem;
            border: 1px solid rgba(214,173,87,.55);
            border-radius: .7rem;
            background: rgba(214,173,87,.18);
            color: #1f1608;
            font-family: Arial, Helvetica, sans-serif;
            font-size: .78rem;
            font-weight: 800;
            letter-spacing: .03em;
            cursor: pointer;
            padding: 0 .65rem;
        }

        .gadit-toggle-password:hover {
            background: rgba(214,173,87,.32);
        }

        .gadit-password-note {
            border: 1px solid rgba(214,173,87,.35);
            border-left: .35rem solid var(--gadit-gold);
            border-radius: .8rem;
            padding: .8rem 1rem;
            background: rgba(255,248,231,.08);
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .92rem;
            font-weight: 700;
        }


        /* =========================
           Wizard UX e bozza automatica
        ========================= */
        .gadit-wizard-steps {
            display: grid;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: .55rem;
            margin: 1rem 0 1.25rem;
        }

        .gadit-wizard-step {
            border: 1px solid rgba(214,173,87,.35);
            border-radius: 999px;
            padding: .55rem .65rem;
            background: rgba(255,248,231,.06);
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .78rem;
            font-weight: 800;
            text-align: center;
            cursor: pointer;
            transition: background .15s ease, color .15s ease, border-color .15s ease;
        }

        .gadit-wizard-step.is-active {
            background: rgba(214,173,87,.26);
            border-color: var(--gadit-gold);
            color: var(--gadit-gold-light);
            box-shadow: 0 .55rem 1.2rem rgba(214,173,87,.12);
        }

        .gadit-wizard-step.is-complete {
            border-color: rgba(14,90,49,.75);
            color: #d7f4df;
        }

        .gadit-form-section[data-wizard-step] {
            display: none;
        }

        .gadit-form-section[data-wizard-step].is-active {
            display: block;
        }

        .gadit-draft-status {
            border: 1px solid rgba(214,173,87,.35);
            border-left: .35rem solid var(--gadit-gold);
            border-radius: .85rem;
            padding: .75rem 1rem;
            margin: .85rem 0 1.2rem;
            background: rgba(255,248,231,.07);
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .9rem;
            font-weight: 700;
        }

        .gadit-wizard-actions {
            display: flex;
            flex-wrap: wrap;
            gap: .75rem;
            justify-content: space-between;
            margin-top: 1.5rem;
        }

        .gadit-wizard-actions .btn {
            min-width: 9rem;
        }

        @media (max-width: 767.98px) {
            .gadit-wizard-steps {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

/* =========================================================
   GADIT FIX - Scroll mobile quando registrazione_guardia.php
   viene aperto dentro il modal "Nuova Guardia".
   Non modifica logica PHP: solo visualizzazione/responsive.
========================================================= */
@media (max-width: 767.98px) {
    html,
    body.gadit-theme {
        height: 100dvh !important;
        max-height: 100dvh !important;
        overflow-y: scroll !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: thin !important;
        scrollbar-color: var(--gadit-gold) rgba(5,4,3,.88) !important;
    }

    body.gadit-theme::-webkit-scrollbar,
    html::-webkit-scrollbar {
        width: 12px !important;
        display: block !important;
    }

    body.gadit-theme::-webkit-scrollbar-track,
    html::-webkit-scrollbar-track {
        background: rgba(5,4,3,.90) !important;
        border-left: 1px solid rgba(214,173,87,.30) !important;
    }

    body.gadit-theme::-webkit-scrollbar-thumb,
    html::-webkit-scrollbar-thumb {
        border-radius: 999px !important;
        background: linear-gradient(
            180deg,
            var(--gadit-gold-light),
            var(--gadit-gold),
            var(--gadit-gold-dark)
        ) !important;
        border: 2px solid rgba(5,4,3,.90) !important;
    }

    body.gadit-theme::-webkit-scrollbar-thumb:hover,
    html::-webkit-scrollbar-thumb:hover {
        background: linear-gradient(180deg, #fff4bd, var(--gadit-gold)) !important;
    }

    .gadit-page-top {
        min-height: auto !important;
        height: auto !important;
        padding: .55rem .45rem 1rem !important;
        overflow: visible !important;
    }

    .gadit-form-card {
        max-width: none !important;
        width: 100% !important;
        margin: 0 auto !important;
        border-radius: 1rem !important;
    }

    .gadit-card-header {
        padding: 1rem .9rem .35rem !important;
    }

    .gadit-card-body {
        padding: .85rem !important;
    }

    .gadit-brand-badge {
        width: 4.8rem !important;
        height: 4.8rem !important;
    }

    .gadit-wizard-steps {
        position: sticky !important;
        top: 0 !important;
        z-index: 10 !important;
        background: linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.94)) !important;
        padding: .45rem !important;
        margin-left: -.45rem !important;
        margin-right: -.45rem !important;
        border: 1px solid rgba(214,173,87,.28) !important;
        border-radius: .9rem !important;
        box-shadow: 0 .55rem 1.25rem rgba(0,0,0,.35) !important;
    }

    .gadit-form-actions,
    .gadit-wizard-actions {
        position: sticky !important;
        bottom: 0 !important;
        z-index: 11 !important;
        background: linear-gradient(180deg, rgba(18,17,14,.94), rgba(5,4,3,.99)) !important;
        border-top: 1px solid rgba(214,173,87,.35) !important;
        padding: .75rem .25rem .35rem !important;
        margin-bottom: -.35rem !important;
    }
}

/* CSS spostato da registrazione_ods.php */
/* Rifinitura locale: solo presentazione, nessuna logica PHP modificata */
		*, *::before, *::after { box-sizing: border-box; }
		body.gadit-ods-registration-embed, body.gadit-ods-registration-embed * { max-width: none; }
		html,
		body,
		body.gadit-theme.gadit-ods-registration-embed {
			width: 100% !important;
			max-width: none !important;
			min-width: 100% !important;
			min-height: 100%;
			margin: 0;
			background: transparent;
			overflow-x: hidden;
		}

		body.gadit-theme.gadit-ods-registration-embed::before {
			display: none;
		}

		.gadit-ods-registration-page {
			width: 100% !important;
			max-width: none !important;
			min-height: 100vh;
			min-height: 100dvh;
			padding: clamp(.65rem, 2vw, 1.15rem);
			display: flex;
			align-items: flex-start;
			justify-content: center;
			box-sizing: border-box;
		}

		.gadit-ods-registration-page > .gadit-card,
		.gadit-ods-form-card {
			flex: 1 1 auto !important;
			width: 100% !important;
			max-width: 1040px !important;
			min-width: 0 !important;
			margin-left: auto !important;
			margin-right: auto !important;
			overflow: visible;
		}

		.gadit-ods-form-card .gadit-form-section,
		.gadit-ods-form-card .gadit-ods-info-grid,
		.gadit-ods-form-card .gadit-ods-input-grid,
		.gadit-ods-form-card form {
			width: 100% !important;
			max-width: none !important;
		}

		.gadit-ods-form-card .gadit-card-header {
			padding-top: clamp(1.35rem, 3vw, 1.85rem);
		}

		.gadit-ods-form-card .gadit-card-body {
			padding: clamp(1rem, 2.6vw, 1.75rem);
		}

		.gadit-ods-form-grid {
			display: grid;
			gap: clamp(.85rem, 1.8vw, 1.15rem);
		}

		.gadit-ods-info-grid {
			display: grid;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			gap: .9rem;
		}

		.gadit-ods-input-grid {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: .9rem;
		}

		.gadit-ods-field {
			position: relative;
			display: flex;
			flex-direction: column;
			gap: .45rem;
			padding: .9rem;
			border: 1px solid rgba(214,173,87,.28);
			border-radius: 1rem;
			background: rgba(255,248,231,.045);
			box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
		}

		.gadit-ods-field-label {
			display: flex;
			align-items: center;
			gap: .45rem;
			margin: 0;
			color: var(--gadit-gold-light);
			font-family: Arial, Helvetica, sans-serif;
			font-size: .82rem;
			font-weight: 900;
			letter-spacing: .045em;
			text-transform: uppercase;
			line-height: 1.2;
		}

		.gadit-ods-field-label i {
			color: var(--gadit-gold);
			font-size: 1rem;
		}

		.gadit-ods-field-help {
			margin: -.15rem 0 .1rem;
			color: var(--gadit-muted);
			font-family: Arial, Helvetica, sans-serif;
			font-size: .78rem;
			line-height: 1.35;
		}

		.gadit-ods-field .form-control,
		.gadit-ods-field .form-select {
			width: 100% !important;
			min-height: 3.05rem;
			border-radius: .9rem !important;
			background: rgba(255,248,231,.96) !important;
			border: 1px solid rgba(214,173,87,.45) !important;
			color: #1f1608 !important;
			font-family: Arial, Helvetica, sans-serif;
			box-shadow: inset 0 1px 0 rgba(255,255,255,.45);
		}

		.gadit-ods-field .form-control:focus,
		.gadit-ods-field .form-select:focus {
			border-color: var(--gadit-gold) !important;
			box-shadow: 0 0 0 .24rem rgba(214,173,87,.2) !important;
		}

		.gadit-ods-field .form-control[disabled],
		.gadit-ods-field .form-control[readonly] {
			font-weight: 900;
			text-align: center;
			background: linear-gradient(180deg, rgba(255,248,231,.98), rgba(247,223,147,.9)) !important;
			color: #120d04 !important;
			opacity: 1;
		}

		.gadit-ods-field textarea.form-control {
			min-height: clamp(9rem, 18vh, 12rem);
			resize: vertical;
			line-height: 1.55;
		}

		.gadit-ods-field-full {
			grid-column: 1 / -1;
		}

		.gadit-char-count {
			width: 100%;
			margin-top: .1rem;
			color: var(--gadit-muted);
			font-family: Arial, Helvetica, sans-serif;
			font-size: .82rem;
			text-align: right;
		}

		.gadit-ods-actions {
			display: flex;
			gap: .75rem;
			justify-content: flex-end;
			flex-wrap: wrap;
			padding-top: .25rem;
		}

		.gadit-ods-actions .btn,
		.gadit-ods-actions .gadit-btn {
			min-width: 10rem;
		}

		@media (max-width: 991.98px) {
			.gadit-ods-info-grid,
			.gadit-ods-input-grid {
				grid-template-columns: 1fr;
			}
		}

		@media (max-width: 767.98px) {
			.gadit-ods-registration-page {
				padding: .6rem;
			}

			.gadit-ods-field {
				padding: .78rem;
				border-radius: .9rem;
			}

			.gadit-ods-field-label {
				font-size: .78rem;
			}

			.gadit-ods-actions {
				flex-direction: column-reverse;
			}

			.gadit-ods-actions .btn,
			.gadit-ods-actions .gadit-btn {
				width: 100%;
			}
		}

		/* FIX V4 - quando la pagina è caricata nel modal/iframe: niente restringimenti e contenuto subito visibile */
		html,
		body.gadit-theme.gadit-ods-registration-embed {
			height: auto !important;
			min-height: 100% !important;
			overflow-x: hidden !important;
			overflow-y: auto !important;
		}
		.gadit-ods-registration-page {
			width: 100% !important;
			max-width: none !important;
			min-height: auto !important;
			padding: .9rem !important;
			display: block !important;
		}
		.gadit-ods-registration-page .gadit-ods-form-card {
			display: block !important;
			width: 100% !important;
			max-width: none !important;
			margin: 0 auto !important;
		}
		.gadit-ods-registration-page .gadit-card-body,
		.gadit-ods-registration-page form,
		.gadit-ods-registration-page .gadit-form-section {
			display: block;
			width: 100% !important;
		}
		.gadit-ods-registration-page .gadit-ods-form-grid {
			display: grid !important;
		}


		/* FIX V5 - form proporzionato nel modal: larghezza piena e scroll naturale interno all'iframe */
		body.gadit-theme.gadit-ods-registration-embed {
			min-height: 100% !important;
		}
		.gadit-ods-registration-page {
			padding: clamp(1rem, 2vw, 1.35rem) !important;
		}
		.gadit-ods-registration-page .gadit-ods-form-card {
			max-width: 1180px !important;
		}
		.gadit-ods-registration-page .gadit-card-header {
			padding-top: 1.35rem !important;
			padding-bottom: .75rem !important;
		}
		.gadit-ods-registration-page .gadit-card-body {
			padding: clamp(1rem, 2vw, 1.45rem) !important;
		}


		/* FIX V11 - Vista dentro modal: form più compatto per evitare scrollbar laterale */
		body.gadit-theme.gadit-ods-registration-embed {
			overflow-y: hidden !important;
		}
		.gadit-ods-registration-page {
			padding: .55rem .85rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-form-card {
			max-width: 1040px !important;
			border-radius: 1rem !important;
		}
		.gadit-ods-registration-page .gadit-card-header {
			padding-top: .9rem !important;
			padding-bottom: .35rem !important;
		}
		.gadit-ods-registration-page .gadit-card-header .gadit-title {
			font-size: 1.12rem !important;
			margin-bottom: .15rem !important;
		}
		.gadit-ods-registration-page .gadit-tricolore {
			margin-top: .45rem !important;
		}
		.gadit-ods-registration-page .gadit-card-body {
			padding: .75rem .95rem .85rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-form-grid {
			gap: .55rem !important;
		}
		.gadit-ods-registration-page .gadit-form-section {
			padding: .65rem !important;
			margin-bottom: 0 !important;
			border-radius: .85rem !important;
		}
		.gadit-ods-registration-page .gadit-section-title {
			margin-bottom: .55rem !important;
			font-size: .78rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-info-grid,
		.gadit-ods-registration-page .gadit-ods-input-grid {
			gap: .55rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-field {
			padding: .6rem !important;
			gap: .28rem !important;
			border-radius: .8rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-field-label {
			font-size: .72rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-field-help {
			font-size: .7rem !important;
			line-height: 1.2 !important;
			margin: -.05rem 0 .05rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-field .form-control,
		.gadit-ods-registration-page .gadit-ods-field .form-select {
			min-height: 2.35rem !important;
			border-radius: .72rem !important;
			font-size: .9rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-field textarea.form-control {
			min-height: 5.2rem !important;
			height: 5.2rem !important;
			line-height: 1.35 !important;
		}
		.gadit-ods-registration-page .gadit-char-count {
			font-size: .72rem !important;
			margin-top: 0 !important;
		}
		.gadit-ods-registration-page .gadit-ods-actions {
			padding-top: .15rem !important;
			gap: .55rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-actions .btn,
		.gadit-ods-registration-page .gadit-ods-actions .gadit-btn {
			min-height: 2.35rem !important;
			min-width: 9rem !important;
			padding: .5rem .85rem !important;
			font-size: .78rem !important;
		}


		/* FIX V12 - Dentro iframe: nasconde completamente la scrollbar e compatta il form. */
		html,
		body.gadit-theme.gadit-ods-registration-embed {
			height: 100% !important;
			max-height: 100% !important;
			overflow: hidden !important;
			overflow-y: hidden !important;
			scrollbar-width: none !important;
		}
		html::-webkit-scrollbar,
		body.gadit-theme.gadit-ods-registration-embed::-webkit-scrollbar {
			width: 0 !important;
			height: 0 !important;
			display: none !important;
		}
		.gadit-ods-registration-page {
			height: 100% !important;
			min-height: 100% !important;
			overflow: hidden !important;
			padding: .45rem .75rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-form-card {
			height: calc(100% - .1rem) !important;
			display: flex !important;
			flex-direction: column !important;
		}
		.gadit-ods-registration-page .gadit-card-header {
			flex: 0 0 auto !important;
			padding-top: .72rem !important;
			padding-bottom: .25rem !important;
		}
		.gadit-ods-registration-page .gadit-card-body {
			flex: 1 1 auto !important;
			min-height: 0 !important;
			overflow: hidden !important;
			padding: .55rem .8rem .65rem !important;
		}
		.gadit-ods-registration-page .gadit-ods-form-grid { gap: .42rem !important; }
		.gadit-ods-registration-page .gadit-form-section { padding: .52rem !important; }
		.gadit-ods-registration-page .gadit-ods-field { padding: .48rem !important; gap: .2rem !important; }
		.gadit-ods-registration-page .gadit-ods-field textarea.form-control {
			min-height: 4.4rem !important;
			height: 4.4rem !important;
			resize: none !important;
		}

/* CSS spostato da reset-pwd.php */
:root {
            --gadit-black: #050403;
            --gadit-gold: #d6ad57;
            --gadit-gold-light: #f7df93;
            --gadit-gold-dark: #7d5220;
            --gadit-green: #0e5a31;
            --gadit-red: #b91f2b;
            --gadit-cream: #fff8e7;
            --gadit-muted: #cbbf9c;
            --card-border: rgba(214, 173, 87, .42);
        }

        .reset-card {
            width: 100%;
            max-width: 540px;
            border: 1px solid var(--card-border);
            border-radius: 1.75rem;
            overflow: hidden;
            background: linear-gradient(180deg, rgba(18, 17, 14, .96), rgba(5, 4, 3, .98));
            box-shadow:
                0 1.5rem 4rem rgba(0, 0, 0, .55),
                0 0 0 .35rem rgba(214, 173, 87, .08),
                inset 0 1px 0 rgba(255, 255, 255, .12);
            backdrop-filter: blur(10px);
            position: relative;
        }

        .form-label, label {
            color: var(--gadit-gold-light);
            letter-spacing: .02em;
            font-weight: 600;
        }

        .form-check-label {
            color: var(--gadit-muted);
            font-size: .95rem;
        }

        .password-rules {
            border-radius: 1rem;
            padding: 1rem;
            border: 1px solid rgba(214,173,87,.35);
            background: rgba(255,248,231,.06);
            color: var(--gadit-muted);
            font-size: .95rem;
        }

        @media (max-width: 575.98px) {
        }

/* CSS spostato da ricerca_verbale.php */
.gadit-search-panel {
            display: grid;
            gap: 1rem;
        }

        .gadit-live-search-input {
            width: 100%;
            max-width: 100%;
            min-height: 3.85rem !important;
            font-size: clamp(1rem, 2vw, 1.18rem);
            padding: .95rem 1.15rem !important;
            box-sizing: border-box !important;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .gadit-order-row {
            display: grid;
            grid-template-columns: 1fr;
            gap: .85rem;
        }

        .gadit-search-hint {
            display: block;
            margin-top: .45rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .88rem;
        }

        .gadit-results-summary {
            margin-bottom: .9rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
        }

        .gadit-results-grid {
            display: grid;
            gap: .9rem;
            width: 100%;
            min-width: 0;
        }

        #risultatiRicerca,
        .gadit-result-content,
        .gadit-result-meta,
        .gadit-result-title,
        .gadit-preview-box {
            min-width: 0;
            max-width: 100%;
            overflow-wrap: anywhere;
            word-break: break-word;
        }

        .gadit-result-card-advanced {
            display: grid !important;
            grid-template-columns: 64px minmax(0, 1fr);
            gap: .95rem;
            align-items: start;
            width: 100%;
            max-width: 100%;
            box-sizing: border-box;
        }

        .gadit-pdf-icon {
            width: 58px;
            height: 64px;
            border-radius: .75rem;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: linear-gradient(180deg, #fff4bd, var(--gadit-gold));
            color: #120d04;
            font-family: Arial, Helvetica, sans-serif;
            font-size: .78rem;
            font-weight: 900;
            letter-spacing: .08em;
            box-shadow: 0 .45rem 1rem rgba(0,0,0,.22);
            border: 1px solid rgba(125,82,32,.35);
        }

        .gadit-preview-box {
            margin-top: .75rem;
            padding: .85rem;
            border-radius: .85rem;
            background: rgba(5,4,3,.06);
            border: 1px solid rgba(125,82,32,.16);
            color: #211b10;
            line-height: 1.55;
            max-height: 12rem;
            overflow: auto;
            scrollbar-width: thin;
            scrollbar-color: var(--gadit-gold) rgba(5,4,3,.08);
        }

        .gadit-preview-box::-webkit-scrollbar {
            width: 8px;
            height: 8px;
        }

        .gadit-preview-box::-webkit-scrollbar-thumb {
            border-radius: 999px;
            background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold));
        }

        .gadit-highlight {
            background: linear-gradient(180deg, #fff4bd, #f7df93);
            color: #120d04;
            padding: .08rem .18rem;
            border-radius: .2rem;
            font-weight: 900;
        }

        .gadit-open-hint {
            margin-top: .65rem;
            color: #7d5220;
            font-weight: 900;
            font-size: .88rem;
        }

        .gadit-live-pagination {
            display: flex;
            flex-wrap: wrap;
            gap: .45rem;
            justify-content: center;
            margin-top: 1rem;
        }

        .gadit-page-btn {
            min-width: 2.45rem;
            min-height: 2.45rem;
            border-radius: 999px;
            border: 1px solid rgba(214,173,87,.55);
            background: rgba(255,248,231,.12);
            color: var(--gadit-cream);
            font-weight: 900;
            cursor: pointer;
        }

        .gadit-page-btn.is-active,
        .gadit-page-btn:hover {
            background: var(--gadit-gold);
            color: #120d04;
        }

        .gadit-cache-note {
            margin-top: .75rem;
            font-size: .82rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
        }

        @media (max-width: 991.98px) {
            .gadit-page-top {
                padding: .85rem;
            }

            .gadit-card.gadit-card-lg {
                max-width: none;
                border-radius: 1.15rem;
            }

            .gadit-card-header,
            .gadit-card-body {
                padding-left: 1rem;
                padding-right: 1rem;
            }
        }

        @media (max-width: 767.98px) {
            .gadit-results-summary {
                padding: .75rem .85rem;
                border: 1px solid rgba(214,173,87,.22);
                border-radius: .85rem;
                background: rgba(255,248,231,.055);
                line-height: 1.35;
            }

            .gadit-result-card-advanced {
                grid-template-columns: 1fr;
                gap: .7rem;
                padding: .85rem !important;
                border-radius: .95rem !important;
            }

            .gadit-pdf-icon {
                width: 100%;
                height: 2.55rem;
                border-radius: .8rem;
                position: sticky;
                top: 0;
            }

            .gadit-result-title {
                font-size: 1rem;
                line-height: 1.25;
            }

            .gadit-result-meta {
                display: grid;
                gap: .22rem;
                font-size: .86rem;
                line-height: 1.38;
            }

            .gadit-preview-box {
                font-size: .92rem;
                line-height: 1.45;
                padding: .72rem;
                max-height: 10.5rem;
                -webkit-overflow-scrolling: touch;
            }

            .gadit-open-hint {
                display: block;
                width: 100%;
                padding: .62rem .7rem;
                border-radius: 999px;
                background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold));
                color: #120d04;
                text-align: center;
                font-size: .78rem;
            }

            .gadit-live-pagination {
                justify-content: stretch;
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(2.45rem, 1fr));
            }

            .gadit-page-btn {
                width: 100%;
            }

            .gadit-live-search-input {
                min-height: 3.4rem !important;
                font-size: 1rem !important;
                padding-left: .95rem !important;
                padding-right: .95rem !important;
                white-space: normal;
            }
        }

        @media (max-width: 575.98px) {
            .gadit-page-top {
                padding: .55rem;
            }

            .gadit-card-header,
            .gadit-card-body {
                padding-left: .78rem;
                padding-right: .78rem;
            }

            .gadit-title {
                font-size: 1.35rem;
                line-height: 1.18;
            }

            .gadit-results-grid {
                gap: .72rem;
            }

            .gadit-result-card-advanced {
                margin-bottom: .72rem !important;
            }
        }

/* CSS spostato da database-cittadini/show_managed_img.php */
@media (max-width: 767.98px) {
    #<?php echo $gaditPhotoModalId; ?> .gadit-camera-grid { grid-template-columns: 1fr !important; }
    #<?php echo $gaditPhotoModalId; ?> .gadit-action-btn,
    #<?php echo $gaditPhotoModalId; ?> .modal-footer .btn { width: 100% !important; }
}

/* CSS spostato da database-guardie/documenti_guardia.php */
html, body { min-height: 100%; margin: 0; }
        body.gadit-theme { overflow-x: hidden; }
        .gadit-doc-shell { padding: clamp(.75rem, 2vw, 1.25rem); }
        .gadit-doc-panel {
            width: 100%;
            border: 1px solid rgba(214,173,87,.55);
            border-radius: 1.25rem;
            background: radial-gradient(circle at 50% 0%, rgba(247,223,147,.14), transparent 18rem), linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.99));
            color: var(--gadit-cream, #fff8e7);
            box-shadow: 0 1rem 2.4rem rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.10);
            overflow: hidden;
        }
        .gadit-doc-panel::before { content:""; display:block; height:.32rem; background:linear-gradient(90deg,var(--gadit-green,#0e5a31) 0 33.333%,#fff 33.333% 66.666%,var(--gadit-red,#b91f2b) 66.666% 100%); }
        .gadit-doc-header { padding: 1rem 1.1rem .75rem; border-bottom: 1px solid rgba(214,173,87,.28); text-align: center; }
        .gadit-doc-header h2 { font-size: clamp(1.05rem, 2.8vw, 1.55rem); margin: 0; color: var(--gadit-gold-light,#f7df93); text-transform: uppercase; letter-spacing:.045em; font-weight: 800; }
        .gadit-doc-header p { color: var(--gadit-muted,#cbbf9c); margin: .45rem 0 0; font-family: Arial, Helvetica, sans-serif; }
        .gadit-doc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .9rem; padding: 1rem; }
        .gadit-doc-card { min-width: 0; border: 1px solid rgba(214,173,87,.42); border-radius: 1rem; background: rgba(255,248,231,.055); box-shadow: 0 .65rem 1.45rem rgba(0,0,0,.28); overflow: hidden; display:flex; flex-direction:column; }
        .gadit-doc-preview { position:relative; background: rgba(0,0,0,.18); padding:.7rem; text-align:center; }
        .gadit-doc-preview img { width: 100%; max-width: 185px; height: 145px; object-fit: contain; border-radius:.7rem; background:#fff8e7; border:1px solid rgba(214,173,87,.45); box-shadow:0 .45rem 1rem rgba(0,0,0,.30); }
        .gadit-doc-link { display:inline-block; text-decoration:none; color:inherit; position:relative; }
        .gadit-doc-empty { display:inline-block; position:relative; opacity:.82; }
        .gadit-doc-badge { position:absolute; left:.45rem; bottom:.45rem; border-radius:999px; padding:.25rem .55rem; font-family:Arial,Helvetica,sans-serif; font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.04em; box-shadow:0 .35rem .8rem rgba(0,0,0,.35); }
        .gadit-doc-badge-ok { background:linear-gradient(180deg,var(--gadit-gold-light,#f7df93),var(--gadit-gold,#d6ad57)); color:#120d04; }
        .gadit-doc-badge-missing { background:linear-gradient(180deg,rgba(247,223,147,.75),rgba(185,31,43,.95)); color:#fff8e7; }
        .gadit-doc-content { padding:.85rem; display:flex; flex-direction:column; gap:.65rem; flex:1; }
        .gadit-doc-content h5 { margin:0; color:var(--gadit-gold-light,#f7df93); font-size:.94rem; font-weight:800; text-transform:uppercase; letter-spacing:.035em; line-height:1.25; }
        .gadit-doc-form { display:grid; gap:.5rem; margin-top:auto; }
        .gadit-doc-file-label { color:var(--gadit-muted,#cbbf9c); font-size:.78rem; font-family:Arial,Helvetica,sans-serif; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
        .gadit-doc-file { min-height:2.65rem; border-radius:.85rem; border:1px solid rgba(214,173,87,.45); background:rgba(255,248,231,.96); color:#1f1608; font-size:.9rem; }
        .gadit-doc-submit, .gadit-doc-actions .btn { border-radius:999px!important; min-height:2.55rem; border:1px solid rgba(214,173,87,.66)!important; background:linear-gradient(180deg,var(--gadit-gold-light,#f7df93),var(--gadit-gold,#d6ad57))!important; color:#120d04!important; font-weight:900!important; text-transform:uppercase!important; letter-spacing:.045em!important; box-shadow:0 .45rem 1rem rgba(0,0,0,.28)!important; }
        .gadit-doc-actions { display:flex; flex-wrap:wrap; gap:.55rem; padding:0 1rem 1rem; }
        .gadit-doc-actions .btn-secondary { background:linear-gradient(180deg,rgba(255,248,231,.16),rgba(59,51,39,.86))!important; color:var(--gadit-cream,#fff8e7)!important; }
        .gadit-doc-legend { margin: 0 1rem 1rem; padding: .9rem 1rem; border-radius: 1rem; border:1px solid rgba(214,173,87,.35); background:rgba(255,248,231,.055); color:var(--gadit-muted,#cbbf9c); font-family:Arial,Helvetica,sans-serif; font-size:.9rem; line-height:1.45; }
        .gadit-doc-legend b { color:var(--gadit-gold-light,#f7df93); }
        @media (max-width: 991.98px) { .gadit-doc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
        @media (max-width: 575.98px) { .gadit-doc-shell { padding:.55rem; } .gadit-doc-grid { grid-template-columns: 1fr; padding:.75rem; gap:.75rem; } .gadit-doc-actions { flex-direction:column; padding:.75rem; } .gadit-doc-actions .btn { width:100%; } .gadit-doc-preview img { max-width:100%; height:155px; } }

/* CSS spostato da database-guardie/firma_guardia.php */
html, body { min-height: 100%; }
        body.gadit-theme { padding: <?php echo $isModal ? '0' : '.75rem'; ?>; background: <?php echo $isModal ? 'transparent' : 'inherit'; ?>; overflow-x: hidden; }
        .gadit-firma-card { max-width: 980px; margin: 0 auto; border-radius: <?php echo $isModal ? '0' : '1.75rem'; ?>; }
        .gadit-firma-card.gadit-card::before { display: <?php echo $isModal ? 'none' : 'block'; ?>; }
        .gadit-firma-preview {
            display: flex; align-items: center; justify-content: center; min-height: 230px; padding: 1rem;
            border: 1px solid rgba(214,173,87,.45); border-radius: 1rem; background: rgba(255,248,231,.96);
            box-shadow: inset 0 1px 0 rgba(255,255,255,.65), 0 .65rem 1.35rem rgba(0,0,0,.18);
        }
        .gadit-firma-preview img { max-width: 100%; max-height: 210px; object-fit: contain; }
        .gadit-signature-shell {
            border: 1px solid rgba(214,173,87,.55); border-radius: 1rem; background: #fffdf7;
            padding: .65rem; box-shadow: inset 0 0 0 1px rgba(255,255,255,.55), 0 .65rem 1.35rem rgba(0,0,0,.18);
        }
        #gaditSignatureCanvas {
            width: 100%; height: 260px; display: block; border-radius: .8rem; background: #fff;
            border: 1px dashed rgba(125,82,32,.55); touch-action: none; cursor: crosshair;
        }
        .gadit-signature-hint { color: #5b4a2a; font-family: Arial, Helvetica, sans-serif; font-size: .88rem; }
        .gadit-firma-actions { display: flex; flex-wrap: wrap; gap: .65rem; justify-content: flex-end; }
        .gadit-firma-actions .btn { min-height: 2.7rem; border-radius: 999px; font-weight: 800; text-transform: uppercase; letter-spacing: .035em; }
        .gadit-firma-actions .btn-warning { background: var(--gadit-gold); border-color: var(--gadit-gold); color: #120d04; }
        .gadit-firma-actions .btn-secondary { background: #3b3327; border-color: rgba(214,173,87,.45); color: #fff8e7; }
        .gadit-firma-actions .btn-outline-light { border-color: rgba(214,173,87,.55); color: var(--gadit-gold-light); }
        @media (max-width: 575.98px) {
            body.gadit-theme { padding: 0; }
            .firma-attuale { margin-bottom: 1.25rem !important; }
            .gadit-signature-shell { margin-top: .35rem; }
            .gadit-card-header, .gadit-card-body { padding: 1rem; }
            .gadit-firma-preview { min-height: 160px; }
            #gaditSignatureCanvas { height: 320px; }
            .gadit-firma-actions { flex-direction: column-reverse; align-items: stretch; }
            .gadit-firma-actions .btn { width: 100%; }
        }

/* CSS spostato da database-guardie/gestione_guardie.php */
/* =========================================================
   GESTIONE GUARDIE - Restyling GADIT completo
   Logica PHP invariata: modifica solo grafica/layout/JS UI
========================================================= */
html, body {
    width: 100%;
    min-width: 0;
    min-height: 100%;
    margin: 0;
    overflow: hidden;
}

body.gadit-theme {
    min-height: 100vh;
    min-height: 100dvh;
    font-family: Georgia, "Times New Roman", serif;
}

.gadit-page-top {
    width: 100%;
    max-width: 100%;
    height: 100vh;
    height: 100dvh;
    min-height: 0;
    padding: clamp(.45rem, 1.5vw, 1rem);
    overflow: hidden;
}

.gadit-management-card {
    width: 100%;
    max-width: none !important;
    height: 100%;
    min-height: 0;
    border-radius: clamp(1rem, 2vw, 1.75rem);
    display: flex;
    flex-direction: column;
}

.gadit-management-card .gadit-card-header {
    flex: 0 0 auto;
    padding: clamp(.85rem, 1.7vw, 1.4rem) clamp(.8rem, 2vw, 1.5rem) .75rem;
}

.gadit-management-card .gadit-card-body {
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    width: 100%;
    padding: 0 clamp(.65rem, 1.5vw, 1.25rem) clamp(.65rem, 1.5vw, 1.25rem);
    display: flex;
    flex-direction: column;
    gap: .8rem;
}

.gadit-page-title {
    margin: 0;
    font-size: clamp(1.35rem, 3.4vw, 2.65rem);
}

.gadit-toolbar {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .75rem;
    border: 1px solid rgba(214,173,87,.38);
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(255,248,231,.08), rgba(255,248,231,.03));
}

.gadit-toolbar-text {
    min-width: 0;
}

.gadit-toolbar-text strong {
    display: block;
    color: var(--gadit-gold-light);
    text-transform: uppercase;
    letter-spacing: .05em;
    font-size: clamp(.88rem, 1.6vw, 1rem);
}

.gadit-toolbar-text span {
    display: block;
    color: var(--gadit-muted);
    font-size: .9rem;
}

.gadit-actions,
.gadit-row-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    flex-wrap: wrap;
}

/* Pulsanti stile top/buttons, ma coerenti GADIT e con scritte centrate */
.gadit-btn-top,
.gadit-actions .btn,
.gadit-row-actions .btn,
.gadit-card .btn.gadit-btn-top {
    min-height: 2.55rem;
    min-width: 9.5rem;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .45rem !important;
    padding: .55rem .9rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.78) !important;
    background: linear-gradient(180deg, rgba(255,248,231,.13), rgba(5,4,3,.76)) !important;
    color: var(--gadit-gold-light) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 .55rem 1rem rgba(0,0,0,.26);
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 800 !important;
    font-size: .82rem !important;
    line-height: 1 !important;
    letter-spacing: .03em;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase;
    white-space: nowrap !important;
}

.gadit-btn-top:hover,
.gadit-actions .btn:hover,
.gadit-row-actions .btn:hover {
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    color: #120d04 !important;
    border-color: var(--gadit-gold-light) !important;
}

.gadit-btn-top i,
.gadit-row-actions .btn i,
.gadit-actions .btn i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.1em;
    height: 1.1em;
    margin: 0 !important;
    line-height: 1 !important;
    flex: 0 0 auto;
}

.gadit-btn-text {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    text-align: center !important;
}

.gadit-table-shell {
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    width: 100%;
    border: 1px solid rgba(214,173,87,.42);
    border-radius: 1rem;
    background: rgba(255,248,231,.06);
    padding: .65rem;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.gadit-table-scroll {
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
    overflow: auto;
    border-radius: .8rem;
    scrollbar-width: thin;
    scrollbar-color: rgba(214,173,87,.75) rgba(255,248,231,.10);
}

.gadit-table-scroll::-webkit-scrollbar { width: 8px; height: 8px; }
.gadit-table-scroll::-webkit-scrollbar-track { background: rgba(255,248,231,.10); border-radius: 999px; }
.gadit-table-scroll::-webkit-scrollbar-thumb { background: rgba(214,173,87,.75); border-radius: 999px; }

.gadit-table-shell .dt-container,
.gadit-table-shell .dataTables_wrapper {
    flex: 1 1 auto;
    min-height: 0;
    width: 100% !important;
    color: var(--gadit-cream);
    display: flex;
    flex-direction: column;
}

.gadit-table-shell .dt-layout-row {
    flex: 0 0 auto;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .65rem;
    flex-wrap: wrap;
    margin: 0 0 .55rem;
}

.gadit-table-shell .dt-layout-row.dt-layout-table {
    flex: 1 1 auto;
    min-height: 0;
    display: block;
    overflow: auto;
    margin-bottom: .55rem;
    border-radius: .8rem;
}

.gadit-table-shell .dt-search,
.gadit-table-shell .dt-length,
.gadit-table-shell .dt-info,
.gadit-table-shell .dt-paging { color: var(--gadit-cream); }

.gadit-table-shell .dt-input,
.gadit-table-shell .form-control,
.gadit-table-shell .form-select {
    background: rgba(255,248,231,.96) !important;
    border: 1px solid rgba(214,173,87,.55) !important;
    border-radius: .65rem !important;
    color: #1f1608 !important;
}

#empTable {
    width: 100% !important;
    min-width: 980px;
    margin: 0 !important;
    font-family: Arial, Helvetica, sans-serif;
    background: rgba(255,248,231,.98);
    color: #1f1608;
    border-radius: .75rem;
    overflow: hidden;
}

#empTable thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold));
    color: #120d04;
    border-color: rgba(125,82,32,.45);
    text-transform: uppercase;
    font-size: .76rem;
    line-height: 1.15;
    vertical-align: middle;
    text-align: center;
    white-space: normal;
}

#empTable tbody td {
    vertical-align: middle;
    border-color: rgba(125,82,32,.22);
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
}

#empTable td center,
#empTable th center {
    display: block;
    width: 100%;
    text-align: center;
}

.gadit-status-icon {
    width: clamp(16px, 2.2vw, 22px) !important;
    height: clamp(16px, 2.2vw, 22px) !important;
    max-width: 22px !important;
    max-height: 22px !important;
    object-fit: contain;
    vertical-align: middle;
    filter: drop-shadow(0 .16rem .24rem rgba(0,0,0,.22));
}

#empTable td .col-6:has(.gadit-status-icon),
#empTable td center {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#empTable tbody td.gadit-decreto-cell,
#empTable tbody td.gadit-decreto-cell center {
    text-align: center !important;
}

#empTable tbody td.gadit-decreto-cell .gadit-decreto-text,
#empTable tbody td.gadit-decreto-cell.gadit-decreto-expired,
#empTable tbody td.gadit-decreto-cell.gadit-decreto-expiring,
#empTable tbody td.gadit-decreto-cell.gadit-decreto-valid {
    font-family: Arial, Helvetica, sans-serif !important;
}

#empTable tbody td.gadit-decreto-expired,
#empTable tbody td.gadit-decreto-expired .gadit-decreto-text,
.gadit-expired {
    color: var(--gadit-red) !important;
    font-size: .86rem;
    font-weight: 900 !important;
    margin: 0;
}

#empTable tbody td.gadit-decreto-valid,
#empTable tbody td.gadit-decreto-valid .gadit-decreto-text,
.gadit-valid {
    color: var(--gadit-green) !important;
    font-weight: 400 !important;
    margin: 0;
}

#empTable tbody td.gadit-decreto-expiring,
#empTable tbody td.gadit-decreto-expiring .gadit-decreto-text,
.gadit-expiring-soon {
    color: #f28c28 !important;
    font-weight: 400 !important;
    margin: 0;
    animation: gaditDecretoBlink 1s ease-in-out infinite !important;
}

#empTable.table tbody tr > td.gadit-decreto-expired,
#empTable.table tbody tr > td.gadit-decreto-expired *,
#empTable.table-striped tbody tr > td.gadit-decreto-expired,
#empTable.table-striped tbody tr > td.gadit-decreto-expired * {
    color: var(--gadit-red) !important;
    font-weight: 900 !important;
}

#empTable.table tbody tr > td.gadit-decreto-expiring,
#empTable.table tbody tr > td.gadit-decreto-expiring *,
#empTable.table-striped tbody tr > td.gadit-decreto-expiring,
#empTable.table-striped tbody tr > td.gadit-decreto-expiring * {
    color: #f28c28 !important;
    font-weight: 400 !important;
    animation: gaditDecretoBlink 1s ease-in-out infinite !important;
}

#empTable.table tbody tr > td.gadit-decreto-valid,
#empTable.table tbody tr > td.gadit-decreto-valid *,
#empTable.table-striped tbody tr > td.gadit-decreto-valid,
#empTable.table-striped tbody tr > td.gadit-decreto-valid * {
    color: var(--gadit-green) !important;
    font-weight: 400 !important;
}

@keyframes gaditDecretoBlink {
    0%, 100% { opacity: 1; }
    50% { opacity: .28; }
}

.gadit-row-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 230px;
}

.gadit-row-actions .btn {
    min-width: 0 !important;
    width: 100%;
    min-height: 2.28rem;
    padding: .45rem .55rem !important;
    font-size: .72rem !important;
}

/* Vista mobile: la tabella diventa una lista di schede, non una tabella schiacciata */
@media (max-width: 767.98px) {
    html, body { overflow: hidden; }

    .gadit-page-top {
        padding: .45rem;
    }

    .gadit-management-card {
        border-radius: 1rem;
    }

    .gadit-management-card .gadit-card-header {
        padding: .85rem .7rem .55rem;
    }

    .gadit-management-card .gadit-card-body {
        padding: 0 .5rem .5rem;
        gap: .55rem;
    }

    .gadit-toolbar {
        align-items: stretch;
        text-align: center;
        flex-direction: column;
        padding: .6rem;
    }

    .gadit-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .gadit-actions .btn,
    .gadit-btn-top {
        width: 100%;
        min-width: 0;
    }

    .gadit-table-shell {
        padding: .45rem;
    }

    .gadit-table-shell .dt-layout-row {
        display: grid;
        grid-template-columns: 1fr;
        gap: .45rem;
    }

    .gadit-table-shell .dt-layout-cell,
    .gadit-table-shell .dt-search,
    .gadit-table-shell .dt-length,
    .gadit-table-shell .dt-paging,
    .gadit-table-shell .dt-info {
        width: 100%;
        text-align: center;
    }

    .gadit-table-shell .dt-input,
    .gadit-table-shell .form-control,
    .gadit-table-shell .form-select {
        width: 100% !important;
        margin: .2rem 0 !important;
    }

    #empTable,
    #empTable thead,
    #empTable tbody,
    #empTable th,
    #empTable td,
    #empTable tr {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    #empTable thead {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        white-space: nowrap !important;
    }

    #empTable {
        background: transparent;
        border: 0;
    }

    #empTable tbody tr {
        margin: 0 0 .75rem !important;
        border: 1px solid rgba(214,173,87,.55) !important;
        border-left: .35rem solid var(--gadit-gold) !important;
        border-radius: 1rem !important;
        background: rgba(255,248,231,.97) !important;
        color: #1f1608;
        overflow: hidden;
        box-shadow: 0 .55rem 1.15rem rgba(0,0,0,.22);
    }

    #empTable tbody td {
        display: grid !important;
        grid-template-columns: minmax(7.5rem, 38%) minmax(0, 1fr);
        align-items: center;
        gap: .55rem;
        text-align: right !important;
        padding: .68rem .78rem !important;
        border: 0 !important;
        border-bottom: 1px solid rgba(125,82,32,.18) !important;
        min-height: 2.65rem;
    }

    #empTable tbody td:last-child {
        border-bottom: 0 !important;
        display: block !important;
        text-align: center !important;
    }

    #empTable tbody td::before {
        content: attr(data-label);
        color: #120d04;
        font-family: Georgia, "Times New Roman", serif;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: .03em;
        font-size: .72rem;
        text-align: left;
    }

    #empTable tbody td:last-child::before {
        display: block;
        margin-bottom: .55rem;
        text-align: center;
    }

    #empTable td center {
        text-align: right;
    }

    .gadit-row-actions {
        grid-template-columns: 1fr;
        width: 100%;
        min-width: 0;
    }

    .gadit-row-actions .btn {
        width: 100%;
        min-height: 2.45rem;
        font-size: .78rem !important;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    #empTable { min-width: 1100px; }
}

/* Modal Nuova Guardia: dimensionato sul form registrazione_guardia.php
   Il form interno usa .gadit-form-card max-width: 1120px; qui il modal
   aggiunge solo lo spazio per bordo e scrollbar, poi diventa fullscreen mobile. */
.gadit-theme .modal { padding: 0 !important; }
.gadit-theme .modal-dialog.gadit-modal-dialog {
    --gadit-registration-form-width: 1120px;
    --gadit-modal-extra-space: 34px;
    width: min(calc(var(--gadit-registration-form-width) + var(--gadit-modal-extra-space)), calc(100vw - 1rem));
    max-width: min(calc(var(--gadit-registration-form-width) + var(--gadit-modal-extra-space)), calc(100vw - 1rem));
    height: min(96vh, 980px);
    height: min(96dvh, 980px);
    margin: max(.35rem, 2vh) auto;
}

.gadit-theme .modal-content.gadit-modal-content {
    height: 100%;
    max-height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(214,173,87,.55);
    border-radius: 1.2rem;
    overflow: hidden;
    background: var(--gadit-card-bg);
    color: var(--gadit-cream);
    box-shadow: 0 2rem 5rem rgba(0,0,0,.72);
}

.gadit-theme .modal-header,
.gadit-theme .modal-footer {
    flex: 0 0 auto;
    min-height: 3.5rem;
    border-color: rgba(214,173,87,.38);
    background: rgba(255,248,231,.05);
}

.gadit-theme .modal-title {
    color: var(--gadit-gold-light);
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: .04em;
}

.gadit-modal-frame {
    width: 100%;
    height: 100%;
    min-height: 0;
    border: 0;
    background: #050403;
    display: block;
}

.gadit-theme .modal-body.gadit-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    padding: 0;
    overflow: hidden;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .gadit-theme .modal-dialog.gadit-modal-dialog {
        width: calc(100vw - .75rem);
        max-width: calc(100vw - .75rem);
        height: calc(100vh - .75rem);
        height: calc(100dvh - .75rem);
        margin: .375rem auto;
    }
}

@media (max-width: 767.98px) {
    .gadit-theme .modal-dialog.gadit-modal-dialog {
        width: 100vw;
        max-width: 100vw;
        height: 100vh;
        height: 100dvh;
        margin: 0;
    }
    .gadit-theme .modal-content.gadit-modal-content {
        border-radius: 0;
        border-left: 0;
        border-right: 0;
    }
    .gadit-theme .modal-header {
        min-height: 3.15rem;
        padding: .65rem .85rem;
    }
}


/* Modali azione/anagrafica generate fuori dalla tabella */
.gadit-theme .gadit-action-modal .modal-dialog {
    width: min(760px, calc(100vw - 1rem));
    max-width: min(760px, calc(100vw - 1rem));
    margin-left: auto;
    margin-right: auto;
}
.gadit-theme .gadit-action-modal .modal-content.gadit-modal-content {
    height: auto;
    max-height: calc(100dvh - 1rem);
}
.gadit-theme .gadit-action-modal .modal-body {
    overflow: auto;
    font-family: Arial, Helvetica, sans-serif;
}
.gadit-theme .gadit-action-modal label {
    color: var(--gadit-gold-light);
    font-weight: 700;
}
.gadit-theme .gadit-action-modal .form-control,
.gadit-theme .gadit-action-modal .form-select {
    min-height: 2.75rem;
    border-radius: .75rem;
}

.gadit-theme .gadit-action-modal .modal-footer {
    gap: .55rem;
    flex-wrap: wrap;
}
.gadit-theme .gadit-action-modal .modal-footer .btn,
.gadit-theme .gadit-action-modal form .btn {
    min-height: 2.75rem;
    border-radius: 999px !important;
    padding: .62rem 1.05rem;
    font-family: Arial, Helvetica, sans-serif;
    font-size: .82rem;
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: .045em;
    border: 1px solid rgba(214,173,87,.55) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 .55rem 1.15rem rgba(0,0,0,.28);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}
.gadit-theme .gadit-action-modal .btn-secondary {
    background: linear-gradient(180deg, rgba(247,223,147,.18), rgba(59,51,39,.96)) !important;
    border-color: rgba(214,173,87,.46) !important;
    color: var(--gadit-cream) !important;
}
.gadit-theme .gadit-action-modal .btn-success {
    background: linear-gradient(180deg, #1d8a4d, var(--gadit-green)) !important;
    border-color: rgba(247,223,147,.55) !important;
    color: #fff8e7 !important;
}
.gadit-theme .gadit-action-modal .btn-danger {
    background: linear-gradient(180deg, #d34855, var(--gadit-red)) !important;
    border-color: rgba(247,223,147,.55) !important;
    color: #fff8e7 !important;
}
.gadit-theme .gadit-action-modal .btn-warning {
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    border-color: var(--gadit-gold) !important;
    color: #120d04 !important;
}
.gadit-theme .gadit-action-modal .modal-footer .btn:hover,
.gadit-theme .gadit-action-modal form .btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.06);
}
@media (max-width: 575.98px) {
    .gadit-theme .gadit-action-modal .modal-footer {
        position: sticky;
        bottom: 0;
        z-index: 2;
        background: linear-gradient(180deg, rgba(5,4,3,.92), rgba(5,4,3,.98));
        border-top: 1px solid rgba(214,173,87,.38);
    }
    .gadit-theme .gadit-action-modal .modal-footer .btn,
    .gadit-theme .gadit-action-modal form,
    .gadit-theme .gadit-action-modal form .btn {
        width: 100%;
    }
}
@media (max-width: 575.98px) {
    .gadit-theme .gadit-action-modal .modal-dialog {
        width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        margin: 0;
    }
    .gadit-theme .gadit-action-modal .modal-content.gadit-modal-content {
        min-height: 100dvh;
        max-height: 100dvh;
        border-radius: 0;
    }
}

/* =========================================================
   FIX DEFINITIVO: indicatori CSS al posto delle immagini
   e modal dimensionato sul form registrazione_guardia.php
========================================================= */
.gadit-state-badge {
    width: 1.55rem !important;
    height: 1.55rem !important;
    min-width: 1.55rem !important;
    min-height: 1.55rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.65) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 .28rem .65rem rgba(0,0,0,.22);
    font-size: .92rem !important;
    line-height: 1 !important;
    vertical-align: middle !important;
}
.gadit-state-badge i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin: 0 !important;
}
.gadit-state-ok {
    background: linear-gradient(180deg, #1d8a4d, var(--gadit-green)) !important;
    color: #fff8e7 !important;
}
.gadit-state-no {
    background: linear-gradient(180deg, #d34855, var(--gadit-red)) !important;
    color: #fff8e7 !important;
}
#empTable td .col-6:has(.gadit-state-badge),
#empTable td center:has(.gadit-state-badge) {
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Bootstrap imposta max-width sui dialog: qui lo annulliamo in modo esplicito. */
#nuovaGuardiaModal.modal {
    --bs-modal-width: min(1188px, calc(100vw - 24px)) !important;
    padding: 0 !important;
}
#nuovaGuardiaModal .modal-dialog.gadit-modal-dialog {
    width: var(--bs-modal-width) !important;
    max-width: var(--bs-modal-width) !important;
    height: min(94dvh, 1040px) !important;
    max-height: min(94dvh, 1040px) !important;
    margin: max(8px, calc((100dvh - min(94dvh, 1040px)) / 2)) auto !important;
    transform: none;
}
#nuovaGuardiaModal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
}
#nuovaGuardiaModal .gadit-modal-body {
    height: auto !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}
#nuovaGuardiaModal .gadit-modal-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
}
@media (max-width: 991.98px) {
    #nuovaGuardiaModal.modal {
        --bs-modal-width: 100vw !important;
    }
    #nuovaGuardiaModal .modal-dialog.gadit-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }
    #nuovaGuardiaModal .modal-content.gadit-modal-content {
        border-radius: 0 !important;
        border: 0 !important;
    }
}
@media (max-width: 575.98px) {
    .gadit-state-badge {
        width: 1.4rem !important;
        height: 1.4rem !important;
        min-width: 1.4rem !important;
        min-height: 1.4rem !important;
        font-size: .82rem !important;
    }
}


/* FIX VISIBILITA INDICATORI: non dipende da immagini né da Bootstrap Icons */
.gadit-state-badge {
    box-sizing: border-box !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    border: 1px solid rgba(214,173,87,.85) !important;
    color: #fff8e7 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
    vertical-align: middle !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.gadit-state-ok { background: linear-gradient(180deg, #16884a, #0e5a31) !important; }
.gadit-state-no { background: linear-gradient(180deg, #d44552, #b91f2b) !important; }
#empTable td .col-6 {
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
#empTable td .col-6 center,
#empTable td center {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
@media (max-width: 575.98px) {
    .gadit-state-badge {
        width: 22px !important;
        height: 22px !important;
        min-width: 22px !important;
        min-height: 22px !important;
        font-size: 14px !important;
    }
}


/* =========================================================
   FIX MOBILE GADIT - Scroll verticale visibile Modal Nuova Guardia
   Mantiene autofit desktop, abilita scrollbar GADIT su mobile.
========================================================= */
@media (max-width: 575.98px) {
    #nuovaGuardiaModal.modal.gadit-action-modal .modal-dialog {
        width: calc(100vw - .9rem) !important;
        max-width: calc(100vw - .9rem) !important;
        height: calc(100dvh - .9rem) !important;
        max-height: calc(100dvh - .9rem) !important;
        margin: .45rem auto !important;
    }

    #nuovaGuardiaModal.modal.gadit-action-modal .modal-content,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-content {
        height: 100% !important;
        max-height: calc(100dvh - .9rem) !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
        border-radius: 1rem !important;
    }

    #nuovaGuardiaModal.modal.gadit-action-modal .modal-header,
    #nuovaGuardiaModal.modal.gadit-action-modal .modal-footer {
        flex: 0 0 auto !important;
    }

    #nuovaGuardiaModal.modal.gadit-action-modal .modal-body,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-body,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-frame {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: thin !important;
        scrollbar-color: var(--gadit-gold) rgba(5,4,3,.78) !important;
    }

    #nuovaGuardiaModal.modal.gadit-action-modal .modal-body::-webkit-scrollbar,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-body::-webkit-scrollbar,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-frame::-webkit-scrollbar {
        width: 10px !important;
        height: 10px !important;
        display: block !important;
    }

    #nuovaGuardiaModal.modal.gadit-action-modal .modal-body::-webkit-scrollbar-track,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-body::-webkit-scrollbar-track,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-frame::-webkit-scrollbar-track {
        background: rgba(5,4,3,.88) !important;
        border-left: 1px solid rgba(214,173,87,.25) !important;
    }

    #nuovaGuardiaModal.modal.gadit-action-modal .modal-body::-webkit-scrollbar-thumb,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-body::-webkit-scrollbar-thumb,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-frame::-webkit-scrollbar-thumb {
        border-radius: 999px !important;
        background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold), var(--gadit-gold-dark)) !important;
        border: 2px solid rgba(5,4,3,.88) !important;
    }

    #nuovaGuardiaModal.modal.gadit-action-modal .modal-body::-webkit-scrollbar-thumb:hover,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-body::-webkit-scrollbar-thumb:hover,
    #nuovaGuardiaModal.modal.gadit-action-modal .gadit-modal-frame::-webkit-scrollbar-thumb:hover {
        background: linear-gradient(180deg, #fff4bd, var(--gadit-gold)) !important;
    }
}


/* =========================================================
   FIX V3 REALE - Scroll mobile visibile Modal Nuova Guardia
   Forza l'altezza del modal e lo scroll sul contenitore/iframe effettivo.
========================================================= */
@media (max-width: 767.98px) {
    body.modal-open {
        overflow: hidden !important;
    }

    #nuovaGuardiaModal {
        overflow: hidden !important;
    }

    #nuovaGuardiaModal .modal-dialog {
        width: calc(100vw - .7rem) !important;
        max-width: calc(100vw - .7rem) !important;
        height: calc(100dvh - .7rem) !important;
        max-height: calc(100dvh - .7rem) !important;
        margin: .35rem auto !important;
    }

    #nuovaGuardiaModal .modal-content {
        height: 100% !important;
        max-height: calc(100dvh - .7rem) !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
    }

    #nuovaGuardiaModal .modal-header,
    #nuovaGuardiaModal .modal-footer {
        flex: 0 0 auto !important;
    }

    #nuovaGuardiaModal .modal-body {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow-y: scroll !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: thin !important;
        scrollbar-color: var(--gadit-gold) rgba(5,4,3,.82) !important;
    }

    #nuovaGuardiaModal iframe,
    #nuovaGuardiaModal .gadit-modal-frame,
    #nuovaGuardiaModal .gadit-iframe,
    #nuovaGuardiaModal .modal-body iframe {
        width: 100% !important;
        height: auto !important;
        min-height: 1150px !important;
        max-height: none !important;
        overflow: visible !important;
        display: block !important;
        border: 0 !important;
    }

    #nuovaGuardiaModal .modal-body::-webkit-scrollbar {
        width: 12px !important;
        display: block !important;
    }

    #nuovaGuardiaModal .modal-body::-webkit-scrollbar-track {
        background: rgba(5,4,3,.9) !important;
        border-left: 1px solid rgba(214,173,87,.30) !important;
        border-radius: 999px !important;
    }

    #nuovaGuardiaModal .modal-body::-webkit-scrollbar-thumb {
        border-radius: 999px !important;
        background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold), var(--gadit-gold-dark)) !important;
        border: 2px solid rgba(5,4,3,.9) !important;
    }

    #nuovaGuardiaModal .modal-body::-webkit-scrollbar-thumb:hover {
        background: linear-gradient(180deg, #fff4bd, var(--gadit-gold)) !important;
    }
}

/* CSS spostato da database-guardie/gestione_guardie.php */
#nuovaGuardiaModal {
    --gadit-modal-w: min(1168px, calc(100vw - 18px));
    --gadit-modal-h: min(96dvh, calc(100dvh - 18px));
    padding: 0 !important;
}

#nuovaGuardiaModal .modal-dialog.gadit-modal-dialog {
    width: var(--gadit-modal-w) !important;
    max-width: none !important;
    height: var(--gadit-modal-h) !important;
    max-height: var(--gadit-modal-h) !important;
    margin: calc((100dvh - var(--gadit-modal-h)) / 2) auto !important;
}

#nuovaGuardiaModal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

#nuovaGuardiaModal .gadit-modal-close {
    position: absolute !important;
    top: .8rem !important;
    right: .8rem !important;
    width: 40px !important;
    height: 40px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.65) !important;
    background: radial-gradient(circle at 35% 20%, rgba(247,223,147,.24), rgba(0,0,0,.78)) !important;
    color: #f7df93 !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    z-index: 1065 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 .5rem 1.25rem rgba(0,0,0,.35), 0 0 0 .18rem rgba(214,173,87,.12) !important;
    transition: transform .15s ease, background .15s ease, color .15s ease !important;
}

#nuovaGuardiaModal .gadit-modal-close:hover,
#nuovaGuardiaModal .gadit-modal-close:focus {
    background: #d6ad57 !important;
    color: #120d04 !important;
    transform: scale(1.05) !important;
    outline: none !important;
}

#nuovaGuardiaModal .modal-header {
    display: none !important;
}

#nuovaGuardiaModal .modal-header {
    flex: 0 0 auto !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#nuovaGuardiaModal .gadit-modal-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    display: block !important;
    border: 0 !important;
}

@media (max-width: 991.98px) {
    #nuovaGuardiaModal {
        --gadit-modal-w: 100vw;
        --gadit-modal-h: 100dvh;
    }
    #nuovaGuardiaModal .modal-dialog.gadit-modal-dialog {
        margin: 0 !important;
    }
}


/* FIX GADIT DEFINITIVO: nessuna barra laterale visibile, grafica invariata */
html,
body,
body.gadit-theme,
body.modal-open {
    overflow: hidden !important;
    padding-right: 0 !important;
}

#nuovaGuardiaModal,
#nuovaGuardiaModal.modal,
#nuovaGuardiaModal .modal-dialog,
#nuovaGuardiaModal .modal-content {
    overflow: hidden !important;
    scrollbar-width: none !important;
}

#nuovaGuardiaModal::-webkit-scrollbar,
#nuovaGuardiaModal .modal-dialog::-webkit-scrollbar,
#nuovaGuardiaModal .modal-content::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

#nuovaGuardiaFrame.gadit-modal-frame {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
    overflow: hidden !important;
}

/* CSS spostato da database-guardie/gestione_guardie.php */
.gadit-row-actions .gadit-action-btn{position:relative!important;overflow:hidden!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.4rem!important;min-height:2.45rem!important;min-width:7.8rem!important;padding:.52rem .82rem!important;border-radius:999px!important;border:1px solid rgba(214,173,87,.72)!important;font-family:Arial,Helvetica,sans-serif!important;font-size:.74rem!important;font-weight:900!important;letter-spacing:.045em!important;text-transform:uppercase!important;text-decoration:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 .55rem 1.1rem rgba(0,0,0,.34)!important;transition:transform .15s ease,filter .15s ease,border-color .15s ease!important}.gadit-row-actions .gadit-action-btn:before{display:none!important;content:none!important}.gadit-row-actions .gadit-action-btn:hover{transform:translateY(-1px)!important;filter:brightness(1.08)!important}.gadit-row-actions .gadit-action-btn i,.gadit-row-actions .gadit-action-btn .gadit-btn-text{position:relative;z-index:1}.gadit-row-actions .gadit-action-btn-danger{background:linear-gradient(180deg,rgba(247,223,147,.82),rgba(185,31,43,.96))!important;color:#fff8e7!important}.gadit-row-actions .gadit-action-btn-green{background:linear-gradient(180deg,rgba(247,223,147,.78),rgba(14,90,49,.96))!important;color:#fff8e7!important}.gadit-row-actions .gadit-action-btn-gold{background:linear-gradient(180deg,var(--gadit-gold-light,#f7df93),var(--gadit-gold,#d6ad57))!important;color:#120d04!important;border-color:var(--gadit-gold-light,#f7df93)!important}.gadit-row-actions .gadit-action-btn-documenti{background:linear-gradient(180deg,rgba(255,248,231,.14),rgba(18,17,14,.92))!important;color:var(--gadit-gold-light,#f7df93)!important}.gadit-firma-modal .modal-dialog,.gadit-documenti-modal .modal-dialog{max-width:min(1180px,calc(100vw - 1rem))!important}.gadit-firma-frame,.gadit-documenti-frame{display:block;width:100%;height:min(76vh,760px);border:0;background:transparent}.gadit-comune-select:disabled + .select2 .select2-selection{opacity:.78!important}@media(max-width:575.98px){.gadit-row-actions .gadit-action-btn{width:100%!important;min-width:0!important}.gadit-firma-frame,.gadit-documenti-frame{height:76dvh}}

/* CSS spostato da database-guardie/gestione_guardie.php */
.gadit-row-actions .gadit-action-btn::before{content:none!important;display:none!important;background:none!important;height:0!important;}
.gadit-row-actions .gadit-action-btn{overflow:visible!important;}

/* CSS spostato da database-guardie/gestione_guardie.php */
.modal.gadit-action-modal .modal-dialog,.gadit-action-modal .modal-dialog{max-width:min(760px,calc(100vw - 1rem))!important}.modal.gadit-action-modal .modal-content,.gadit-action-modal .modal-content,.modal.gadit-action-modal .gadit-modal-content,.gadit-action-modal .gadit-modal-content{overflow:hidden!important;border:1px solid rgba(214,173,87,.62)!important;border-radius:1.35rem!important;background:radial-gradient(circle at 50% 0%,rgba(247,223,147,.16),transparent 18rem),linear-gradient(180deg,rgba(18,17,14,.98),rgba(5,4,3,.99))!important;color:var(--gadit-cream,#fff8e7)!important;box-shadow:0 1.35rem 3.4rem rgba(0,0,0,.62),0 0 0 .28rem rgba(214,173,87,.10),inset 0 1px 0 rgba(255,255,255,.12)!important}.modal.gadit-action-modal .modal-content::before,.gadit-action-modal .modal-content::before{content:"";display:block;height:.32rem;background:linear-gradient(90deg,var(--gadit-green,#0e5a31) 0 33.333%,#fff 33.333% 66.666%,var(--gadit-red,#b91f2b) 66.666% 100%)}.modal.gadit-action-modal .modal-header,.modal.gadit-action-modal .modal-footer,.gadit-action-modal .modal-header,.gadit-action-modal .modal-footer{border-color:rgba(214,173,87,.34)!important;background:rgba(255,248,231,.045)!important}.modal.gadit-action-modal .modal-title,.gadit-action-modal .modal-title{color:var(--gadit-gold-light,#f7df93)!important;font-family:Georgia,"Times New Roman",serif!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.045em!important;text-shadow:0 2px 0 rgba(0,0,0,.55)!important}.modal.gadit-action-modal .modal-body,.gadit-action-modal .modal-body{color:var(--gadit-cream,#fff8e7)!important;background:transparent!important}.modal.gadit-action-modal label,.gadit-action-modal label{color:var(--gadit-gold-light,#f7df93)!important;font-weight:800!important;letter-spacing:.02em!important}.modal.gadit-action-modal .form-control,.modal.gadit-action-modal .form-select,.gadit-action-modal .form-control,.gadit-action-modal .form-select{min-height:2.85rem!important;border-radius:.9rem!important;border:1px solid rgba(214,173,87,.5)!important;background:rgba(255,248,231,.96)!important;color:#1f1608!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.45)!important}.modal.gadit-action-modal .modal-footer,.gadit-action-modal .modal-footer{gap:.65rem!important;justify-content:flex-end!important;flex-wrap:wrap!important}.modal.gadit-action-modal .modal-footer .btn,.modal.gadit-action-modal form .btn,.gadit-action-modal .modal-footer .btn,.gadit-action-modal form .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.42rem!important;min-height:2.75rem!important;padding:.62rem 1rem!important;border-radius:999px!important;border:1px solid rgba(214,173,87,.62)!important;font-family:Arial,Helvetica,sans-serif!important;font-size:.82rem!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.055em!important;line-height:1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 .55rem 1.15rem rgba(0,0,0,.30)!important}.modal.gadit-action-modal .btn-secondary,.gadit-action-modal .btn-secondary{background:linear-gradient(180deg,rgba(255,248,231,.16),rgba(59,51,39,.86))!important;color:var(--gadit-cream,#fff8e7)!important;border-color:rgba(214,173,87,.42)!important}.modal.gadit-action-modal .btn-success,.gadit-action-modal .btn-success{background:linear-gradient(180deg,rgba(247,223,147,.92),rgba(14,90,49,.96))!important;color:#fff8e7!important;border-color:rgba(247,223,147,.76)!important}.modal.gadit-action-modal .btn-danger,.gadit-action-modal .btn-danger{background:linear-gradient(180deg,rgba(247,223,147,.82),rgba(185,31,43,.96))!important;color:#fff8e7!important;border-color:rgba(247,223,147,.72)!important}.modal.gadit-action-modal .btn-warning,.gadit-action-modal .btn-warning{background:linear-gradient(180deg,var(--gadit-gold-light,#f7df93),var(--gadit-gold,#d6ad57))!important;color:#120d04!important;border-color:var(--gadit-gold-light,#f7df93)!important}.modal.gadit-action-modal .btn:hover,.gadit-action-modal .btn:hover{transform:translateY(-1px)!important;filter:brightness(1.08)!important}#nuovaGuardiaModal .modal-body.gadit-modal-body,#nuovaGuardiaModal .gadit-modal-frame{scrollbar-width:thin!important;scrollbar-color:var(--gadit-gold,#d6ad57) rgba(5,4,3,.75)!important}#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar,#nuovaGuardiaModal .gadit-modal-frame::-webkit-scrollbar{width:10px!important;height:10px!important;display:block!important}#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar-track,#nuovaGuardiaModal .gadit-modal-frame::-webkit-scrollbar-track{background:rgba(5,4,3,.86)!important;border-left:1px solid rgba(214,173,87,.22)!important}#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar-thumb,#nuovaGuardiaModal .gadit-modal-frame::-webkit-scrollbar-thumb{border-radius:999px!important;background:linear-gradient(180deg,var(--gadit-gold-light,#f7df93),var(--gadit-gold-dark,#7d5220))!important;border:2px solid rgba(5,4,3,.86)!important}@media(max-width:575.98px){.modal.gadit-action-modal .modal-dialog,.gadit-action-modal .modal-dialog{margin:.45rem!important;max-width:calc(100vw - .9rem)!important}.modal.gadit-action-modal .modal-footer,.gadit-action-modal .modal-footer{flex-direction:column-reverse!important;align-items:stretch!important}.modal.gadit-action-modal .modal-footer form,.modal.gadit-action-modal .modal-footer .btn,.gadit-action-modal .modal-footer form,.gadit-action-modal .modal-footer .btn{width:100%!important}}

/* CSS spostato da database-guardie/gestione_guardie.php */
.modal.gadit-action-modal .gadit-edit-modal-header{position:relative!important;padding-right:4.25rem!important}.modal.gadit-action-modal .gadit-modal-x{position:absolute!important;top:.75rem!important;right:.85rem!important;z-index:20!important;width:2.35rem!important;height:2.35rem!important;min-width:2.35rem!important;min-height:2.35rem!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;border:1px solid rgba(214,173,87,.76)!important;background:radial-gradient(circle at 35% 25%,var(--gadit-gold-light,#f7df93),var(--gadit-gold,#d6ad57) 58%,var(--gadit-gold-dark,#7d5220))!important;color:#120d04!important;font-family:Arial,Helvetica,sans-serif!important;font-size:1.45rem!important;font-weight:900!important;line-height:1!important;text-shadow:none!important;box-shadow:0 .45rem 1rem rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.4)!important;opacity:1!important;cursor:pointer!important}.modal.gadit-action-modal .gadit-modal-x span{display:block!important;transform:translateY(-1px)!important}.modal.gadit-action-modal .gadit-modal-x:hover{transform:translateY(-1px)!important;filter:brightness(1.08)!important}@media(max-width:575.98px){.modal.gadit-action-modal .gadit-edit-modal-header{padding-right:3.7rem!important}.modal.gadit-action-modal .gadit-modal-x{top:.55rem!important;right:.6rem!important;width:2.15rem!important;height:2.15rem!important;min-width:2.15rem!important;min-height:2.15rem!important;font-size:1.3rem!important}}

/* CSS spostato da database-guardie/gestione_guardie.php */
#nuovaGuardiaModal,
#nuovaGuardiaModal.modal {
    padding: 0 !important;
    overflow: hidden !important;
    --gadit-ng-w: min(1188px, calc(100vw - 18px));
    --gadit-ng-h: auto;
}

#nuovaGuardiaModal .modal-dialog.gadit-modal-dialog {
    width: var(--gadit-ng-w) !important;
    max-width: var(--gadit-ng-w) !important;
    height: var(--gadit-ng-h) !important;
    max-height: calc(100dvh - 18px) !important;
    margin: max(9px, calc((100dvh - min(var(--gadit-ng-real-h, 860px), calc(100dvh - 18px))) / 2)) auto !important;
    transition: width .18s ease, height .18s ease, margin .18s ease !important;
}

#nuovaGuardiaModal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: var(--gadit-ng-h) !important;
    max-height: calc(100dvh - 18px) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body {
    flex: 0 0 auto !important;
    width: 100% !important;
    height: var(--gadit-ng-frame-h, 760px) !important;
    max-height: calc(100dvh - 18px) !important;
    padding: 0 !important;
    overflow: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

#nuovaGuardiaModal .modal-body.gadit-modal-body::-webkit-scrollbar,
#nuovaGuardiaModal .gadit-modal-frame::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

#nuovaGuardiaFrame.gadit-modal-frame {
    width: 100% !important;
    height: var(--gadit-ng-frame-h, 760px) !important;
    max-height: calc(100dvh - 18px) !important;
    min-height: 320px !important;
    border: 0 !important;
    display: block !important;
    overflow: hidden !important;
    background: transparent !important;
}

@media (max-width: 991.98px) {
    #nuovaGuardiaModal,
    #nuovaGuardiaModal.modal {
        --gadit-ng-w: 100vw;
    }
    #nuovaGuardiaModal .modal-dialog.gadit-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: min(var(--gadit-ng-real-h, 100dvh), 100dvh) !important;
        max-height: 100dvh !important;
        margin: 0 auto !important;
    }
    #nuovaGuardiaModal .modal-content.gadit-modal-content,
    #nuovaGuardiaModal .modal-body.gadit-modal-body,
    #nuovaGuardiaFrame.gadit-modal-frame {
        max-height: 100dvh !important;
    }
}

/* CSS spostato da database-ods/gestione_ods.php */
/* =========================================================
   GESTIONE O.D.S. - Restyling GADIT coerente con gestione_guardie.php
   Logica PHP invariata: modifica solo grafica/layout/JS UI
========================================================= */
html, body {
    width: 100%;
    min-width: 0;
    min-height: 100%;
    margin: 0;
    overflow: hidden;
}

.gadit-management-card,
.gadit-ods-card {
    width: 100%;
    max-width: none !important;
    height: 100%;
    min-height: 0;
    border-radius: clamp(1rem, 2vw, 1.75rem);
    display: flex;
    flex-direction: column;
}

.gadit-toolbar,
.gadit-ods-toolbar {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .75rem;
    border: 1px solid rgba(214,173,87,.38);
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(255,248,231,.08), rgba(255,248,231,.03));
}

.gadit-btn-top,
.gadit-nav-button,
.gadit-actions .btn,
.gadit-row-actions .btn,
.gadit-row-actions .gadit-table-action,
.gadit-card .btn.gadit-btn-top {
    min-height: 2.55rem;
    min-width: 9.5rem;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .45rem !important;
    padding: .55rem .9rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.78) !important;
    background: linear-gradient(180deg, rgba(255,248,231,.13), rgba(5,4,3,.76)) !important;
    color: var(--gadit-gold-light) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 .55rem 1rem rgba(0,0,0,.26);
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 800 !important;
    font-size: .82rem !important;
    line-height: 1 !important;
    letter-spacing: .03em;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase;
    white-space: nowrap !important;
}

.gadit-btn-top:hover,
.gadit-nav-button:hover,
.gadit-actions .btn:hover,
.gadit-row-actions .btn:hover,
.gadit-row-actions .gadit-table-action:hover {
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    color: #120d04 !important;
    border-color: var(--gadit-gold-light) !important;
    transform: translateY(-1px);
}

.gadit-row-actions .gadit-table-action-success {
    background: linear-gradient(180deg, rgba(247,223,147,.92), rgba(14,90,49,.96)) !important;
    border-color: rgba(247,223,147,.75) !important;
    color: #fff8e7 !important;
}

.gadit-row-actions .gadit-table-action-danger {
    background: linear-gradient(180deg, rgba(247,223,147,.88), rgba(185,31,43,.96)) !important;
    border-color: rgba(247,223,147,.72) !important;
    color: #fff8e7 !important;
}

.gadit-row-actions .gadit-table-action-success:hover,
.gadit-row-actions .gadit-table-action-danger:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}


/* FIX AZIONE ODS - colori forzati sui pulsanti Attiva/Disattiva */
.gadit-row-actions a.gadit-table-action.gadit-action-activate,
.gadit-row-actions a.gadit-table-action.gadit-action-activate:visited,
.gadit-row-actions a.gadit-table-action.gadit-action-activate:focus {
    background: linear-gradient(180deg, #2abf6f, #0e5a31) !important;
    border-color: #2abf6f !important;
    color: #fff8e7 !important;
}
.gadit-row-actions a.gadit-table-action.gadit-action-deactivate,
.gadit-row-actions a.gadit-table-action.gadit-action-deactivate:visited,
.gadit-row-actions a.gadit-table-action.gadit-action-deactivate:focus {
    background: linear-gradient(180deg, #e55361, #b91f2b) !important;
    border-color: #e55361 !important;
    color: #fff8e7 !important;
}
.gadit-row-actions a.gadit-table-action.gadit-action-activate:hover,
.gadit-row-actions a.gadit-table-action.gadit-action-deactivate:hover {
    color: #fff8e7 !important;
    filter: brightness(1.1);
    transform: translateY(-1px);
}


.gadit-btn-top i,
.gadit-nav-button i,
.gadit-row-actions .btn i,
.gadit-row-actions .gadit-table-action i,
.gadit-actions .btn i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.1em;
    height: 1.1em;
    margin: 0 !important;
    line-height: 1 !important;
    flex: 0 0 auto;
}

#empTable {
    width: 100% !important;
    min-width: 1080px;
    margin: 0 !important;
    font-family: Arial, Helvetica, sans-serif;
    background: rgba(255,248,231,.98);
    color: #1f1608;
    border-radius: .75rem;
    overflow: hidden;
}

#empTable thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    color: #120d04 !important;
    border-color: rgba(125,82,32,.45) !important;
    text-transform: uppercase;
    font-size: .76rem;
    line-height: 1.15;
    vertical-align: middle;
    text-align: center;
    white-space: normal;
}

#empTable tbody td {
    vertical-align: middle;
    border-color: rgba(125,82,32,.22) !important;
    color: #1f1608;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
}

#empTable tbody td:nth-child(3),
#empTable tbody td:nth-child(6) { text-align: left; }

#empTable tbody tr:hover td { background: rgba(214,173,87,.12) !important; }

.gadit-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-width: 6.2rem;
    padding: .42rem .65rem;
    border-radius: 999px;
    border: 1px solid rgba(214,173,87,.55);
    font-family: Arial, Helvetica, sans-serif;
    font-size: .75rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .045em;
    white-space: nowrap;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 .35rem .85rem rgba(0,0,0,.15);
}
.gadit-status-pill-ok { background: linear-gradient(180deg, rgba(14,90,49,.92), rgba(5,54,29,.96)); color: #fff8e7; }
.gadit-status-pill-ko { background: linear-gradient(180deg, rgba(185,31,43,.92), rgba(92,16,24,.96)); color: #fff8e7; }

.gadit-table-action-danger { background: linear-gradient(180deg, #d34855, var(--gadit-red)) !important; color: #fff8e7 !important; }
.gadit-table-action-success { background: linear-gradient(180deg, #1d8a4d, var(--gadit-green)) !important; color: #fff8e7 !important; }

.gadit-theme .modal { padding: 0 !important; }
.gadit-theme .modal-dialog.gadit-modal-dialog,
.gadit-ods-create-modal .modal-dialog {
    --gadit-registration-form-width: 1120px;
    --gadit-modal-extra-space: 34px;
    width: min(calc(var(--gadit-registration-form-width) + var(--gadit-modal-extra-space)), calc(100vw - 1rem));
    max-width: min(calc(var(--gadit-registration-form-width) + var(--gadit-modal-extra-space)), calc(100vw - 1rem));
    height: min(96vh, 980px);
    height: min(96dvh, 980px);
    margin: max(.35rem, 2vh) auto;
}

.gadit-modal-header-centered {
    position: relative !important;
    justify-content: center !important;
    text-align: center !important;
    padding-right: 4.25rem !important;
}
.gadit-modal-heading { width: 100% !important; }
.gadit-modal-bar { margin-top: .65rem !important; max-width: 18rem !important; }
.gadit-modal-x {
    position: absolute !important;
    top: .75rem !important;
    right: .85rem !important;
    z-index: 20 !important;
    width: 2.35rem !important;
    height: 2.35rem !important;
    min-width: 2.35rem !important;
    min-height: 2.35rem !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.76) !important;
    background: radial-gradient(circle at 35% 25%, var(--gadit-gold-light), var(--gadit-gold) 58%, var(--gadit-gold-dark)) !important;
    color: #120d04 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 1.45rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    box-shadow: 0 .45rem 1rem rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.4) !important;
    opacity: 1 !important;
    cursor: pointer !important;
}
.gadit-modal-x span { display: block !important; transform: translateY(-1px) !important; }
.gadit-modal-x:hover { transform: translateY(-1px) !important; filter: brightness(1.08) !important; }

.gadit-theme .gadit-action-modal .modal-dialog {
    width: min(760px, calc(100vw - 1rem));
    max-width: min(760px, calc(100vw - 1rem));
    margin-left: auto;
    margin-right: auto;
}
.gadit-theme .gadit-action-modal .modal-footer .btn {
    min-height: 2.75rem;
    border-radius: 999px !important;
    padding: .62rem 1.05rem;
    font-family: Arial, Helvetica, sans-serif;
    font-size: .82rem;
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: .045em;
    border: 1px solid rgba(214,173,87,.55) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 .55rem 1.15rem rgba(0,0,0,.28);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}
.gadit-theme .gadit-action-modal .btn-secondary { background: linear-gradient(180deg, rgba(247,223,147,.18), rgba(59,51,39,.96)) !important; color: var(--gadit-cream) !important; }
.gadit-theme .gadit-action-modal .btn-success { background: linear-gradient(180deg, #1d8a4d, var(--gadit-green)) !important; color: #fff8e7 !important; }
.gadit-theme .gadit-action-modal .btn-danger { background: linear-gradient(180deg, #d34855, var(--gadit-red)) !important; color: #fff8e7 !important; }
.gadit-theme .gadit-action-modal .modal-footer .btn:hover { transform: translateY(-1px); filter: brightness(1.06); }

.gadit-ods-create-modal .modal-dialog {
    width: min(1180px, calc(100vw - 1rem)) !important;
    max-width: min(1180px, calc(100vw - 1rem)) !important;
    height: min(99vh, 1280px) !important;
    height: min(99dvh, 1280px) !important;
}

/* FIX GADIT ODS - il modal di registrazione usa un iframe: la regola
   generale delle action-modal impostava la modal-content ad auto, quindi
   l'iframe non riceveva un'altezza stabile e il form risultava schiacciato. */
.gadit-ods-create-modal .modal-content.gadit-modal-content {
    height: 100% !important;
    max-height: 99dvh !important;
    display: flex !important;
    flex-direction: column !important;
}

.gadit-ods-create-modal .gadit-ods-create-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
    display: flex !important;
}

.gadit-ods-create-frame {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border: 0 !important;
    background: transparent !important;
    display: block !important;
    flex: 1 1 auto !important;
}

/* FIX V3 - iframe Nuovo O.D.S. forzato a occupare tutta la modal anche se Bootstrap/GADIT sovrascrivono iframe */
#nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog {
    width: min(1180px, calc(100vw - 1rem)) !important;
    max-width: min(1180px, calc(100vw - 1rem)) !important;
}
#nuovoOdsModal.gadit-ods-create-modal .modal-content.gadit-modal-content {
    width: 100% !important;
}
#nuovoOdsModal .gadit-ods-create-body {
    position: relative !important;
    width: 100% !important;
    display: block !important;
}
#nuovoOdsFrame.gadit-ods-create-frame {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    border: 0 !important;
    display: block !important;
}
.gadit-content-loader {
    position: absolute;
    top: .8rem;
    right: .8rem;
    z-index: 2;
    border-radius: 999px;
    padding: .45rem .8rem;
    background: var(--gadit-gold);
    color: #120d04;
    font-weight: 800;
    font-family: Arial, Helvetica, sans-serif;
    box-shadow: 0 .5rem 1.2rem rgba(0,0,0,.35);
}

@media (max-width: 767.98px) {
    .gadit-toolbar, .gadit-ods-toolbar { align-items: stretch; text-align: center; flex-direction: column; padding: .6rem; }
    .gadit-actions .btn, .gadit-btn-top, .gadit-nav-button { width: 100%; min-width: 0; }
    .gadit-row-actions { display: grid; grid-template-columns: 1fr; width: 100%; min-width: 0; }
    .gadit-row-actions .btn,
    .gadit-row-actions .gadit-table-action { width: 100%; min-height: 2.45rem; font-size: .78rem !important; }
    .gadit-theme .modal-dialog.gadit-modal-dialog,
    .gadit-ods-create-modal .modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        margin: 0 !important;
    }
    .gadit-theme .modal-header { min-height: 3.15rem; padding: .65rem 3.7rem .65rem .85rem; }
    .gadit-modal-x { top: .55rem !important; right: .6rem !important; width: 2.15rem !important; height: 2.15rem !important; min-width: 2.15rem !important; min-height: 2.15rem !important; font-size: 1.3rem !important; }
    .gadit-theme .gadit-action-modal .modal-footer .btn { width: 100%; }
}


/* FIX V4 - Nuovo O.D.S.: iframe non assoluto, corpo modal con altezza reale e form visibile */
#nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog {
    width: min(1180px, calc(100vw - 1rem)) !important;
    max-width: min(1180px, calc(100vw - 1rem)) !important;
    height: min(99dvh, 1280px) !important;
    margin: max(.35rem, 2vh) auto !important;
}
#nuovoOdsModal.gadit-ods-create-modal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: 100% !important;
    max-height: 99dvh !important;
    display: flex !important;
    flex-direction: column !important;
}
#nuovoOdsModal .modal-header {
    flex: 0 0 auto !important;
}
#nuovoOdsModal .gadit-ods-create-body {
    position: relative !important;
    flex: 1 1 auto !important;
    min-height: 420px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: stretch !important;
}
#nuovoOdsFrame.gadit-ods-create-frame {
    position: static !important;
    inset: auto !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 100% !important;
    border: 0 !important;
    display: block !important;
    background: transparent !important;
}
@media (max-width: 575.98px) {
    #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        margin: 0 !important;
    }
    #nuovoOdsModal .gadit-ods-create-body {
        min-height: calc(100dvh - 4.2rem) !important;
    }
}


/* FIX V5 - Nuovo O.D.S.: modal proporzionato al form, più alto e più largo senza modificare logica PHP */
#nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog {
    width: min(1040px, calc(100vw - 1.25rem)) !important;
    max-width: min(1040px, calc(100vw - 1.25rem)) !important;
    height: min(97dvh, 1120px) !important;
    min-height: min(840px, calc(100dvh - 1.25rem)) !important;
    margin: max(.35rem, 1.5vh) auto !important;
}
#nuovoOdsModal .gadit-ods-create-body {
    flex: 1 1 auto !important;
    min-height: 650px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: stretch !important;
    padding: 0 !important;
}
#nuovoOdsFrame.gadit-ods-create-frame {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 100% !important;
    flex: 1 1 auto !important;
    display: block !important;
    border: 0 !important;
    background: transparent !important;
}
@media (max-width: 575.98px) {
    #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        min-height: 100dvh !important;
        margin: 0 !important;
    }
}


/* FIX V6 - Nuovo O.D.S.: forza la dimensione del modal già al primo click.
   Regola in fondo al CSS per prevalere su Bootstrap e su .gadit-action-modal generico. */
body.gadit-theme #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog,
body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl.gadit-modal-dialog {
    width: min(1320px, calc(100vw - 1.25rem)) !important;
    max-width: min(1320px, calc(100vw - 1.25rem)) !important;
    min-width: 0 !important;
    height: min(97dvh, 1120px) !important;
    min-height: min(840px, calc(100dvh - 1.25rem)) !important;
    margin: max(.35rem, 1.5vh) auto !important;
}
body.gadit-theme #nuovoOdsModal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: 100% !important;
    max-height: 99dvh !important;
}
body.gadit-theme #nuovoOdsModal .gadit-ods-create-body {
    min-height: 720px !important;
}
@media (max-width: 991.98px) {
    body.gadit-theme #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog,
    body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl.gadit-modal-dialog {
        width: calc(100vw - .75rem) !important;
        max-width: calc(100vw - .75rem) !important;
        min-width: 0 !important;
        height: calc(100dvh - .75rem) !important;
        min-height: 0 !important;
        margin: .375rem auto !important;
    }
    body.gadit-theme #nuovoOdsModal .gadit-ods-create-body {
        min-height: calc(100dvh - 4.6rem) !important;
    }
}
@media (max-width: 575.98px) {
    body.gadit-theme #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog,
    body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl.gadit-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        margin: 0 !important;
    }
}

/* FIX V7 - Nuovo O.D.S.: larghezza contenuta e altezza maggiore, applicata anche al primo click */
body.gadit-theme #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog,
body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl.gadit-modal-dialog {
    width: min(1040px, calc(100vw - 1.25rem)) !important;
    max-width: min(1040px, calc(100vw - 1.25rem)) !important;
    min-width: 0 !important;
    height: min(97dvh, 1120px) !important;
    min-height: min(840px, calc(100dvh - 1.25rem)) !important;
    margin: max(.35rem, 1.5vh) auto !important;
}
@media (max-width: 991.98px) {
    body.gadit-theme #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog,
    body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl.gadit-modal-dialog {
        width: calc(100vw - .75rem) !important;
        max-width: calc(100vw - .75rem) !important;
        height: calc(100dvh - .75rem) !important;
        min-height: 0 !important;
        margin: .375rem auto !important;
    }
}


/* FIX V9 - Nuovo O.D.S.: aumenta SOLO l'altezza utile della finestra modal.
   Mantiene la larghezza contenuta ed elimina la scrollbar laterale del modal. */
html body.gadit-theme #nuovoOdsModal.gadit-ods-create-modal {
    overflow: hidden !important;
}
html body.gadit-theme #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog,
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl.gadit-modal-dialog {
    width: min(1040px, calc(100vw - 1.25rem)) !important;
    max-width: min(1040px, calc(100vw - 1.25rem)) !important;
    min-width: 0 !important;
    height: calc(100dvh - .75rem) !important;
    min-height: calc(100dvh - .75rem) !important;
    max-height: calc(100dvh - .75rem) !important;
    margin: .375rem auto !important;
}
html body.gadit-theme #nuovoOdsModal .modal-content.gadit-modal-content {
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}
html body.gadit-theme #nuovoOdsModal .modal-header {
    flex: 0 0 auto !important;
}
html body.gadit-theme #nuovoOdsModal .gadit-ods-create-body {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
}
html body.gadit-theme #nuovoOdsFrame.gadit-ods-create-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    display: block !important;
    border: 0 !important;
}
@media (max-width: 575.98px) {
    html body.gadit-theme #nuovoOdsModal.gadit-ods-create-modal .modal-dialog.gadit-modal-dialog,
    html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl.gadit-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        min-height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }
}


/* FIX V10 DEFINITIVO - Nuovo O.D.S.: allunga il MODAL PRINCIPALE dopo il click su Aggiungimi O.D.S.
   Larghezza contenuta, altezza quasi piena, nessuna scrollbar verticale del modal. */
html body.gadit-theme .modal#nuovoOdsModal {
    overflow: hidden !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog,
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl,
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.gadit-modal-dialog {
    width: min(1040px, calc(100vw - 1.25rem)) !important;
    max-width: min(1040px, calc(100vw - 1.25rem)) !important;
    height: calc(100vh - 1rem) !important;
    height: calc(100dvh - 1rem) !important;
    min-height: calc(100vh - 1rem) !important;
    min-height: calc(100dvh - 1rem) !important;
    max-height: calc(100vh - 1rem) !important;
    max-height: calc(100dvh - 1rem) !important;
    margin: .5rem auto !important;
    display: flex !important;
    align-items: stretch !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-header {
    flex: 0 0 auto !important;
}
html body.gadit-theme .modal#nuovoOdsModal .gadit-ods-create-body {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
}
html body.gadit-theme .modal#nuovoOdsModal iframe#nuovoOdsFrame {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    display: block !important;
    border: 0 !important;
}
@media (max-width: 575.98px) {
    html body.gadit-theme .modal#nuovoOdsModal .modal-dialog,
    html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl,
    html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.gadit-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        min-height: 100vh !important;
        min-height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }
}


/* FIX V11 - Nuovo O.D.S.: altezza proporzionata senza scrollbar laterale del modal principale */
html body.gadit-theme .modal#nuovoOdsModal {
    overflow: hidden !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog,
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl,
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.gadit-modal-dialog {
    width: min(1040px, calc(100vw - 1.25rem)) !important;
    max-width: min(1040px, calc(100vw - 1.25rem)) !important;
    height: calc(100vh - .75rem) !important;
    height: calc(100dvh - .75rem) !important;
    min-height: calc(100vh - .75rem) !important;
    min-height: calc(100dvh - .75rem) !important;
    max-height: calc(100vh - .75rem) !important;
    max-height: calc(100dvh - .75rem) !important;
    margin: .375rem auto !important;
    display: flex !important;
    align-items: stretch !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-content.gadit-modal-content {
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-header {
    flex: 0 0 auto !important;
    min-height: 3.95rem !important;
    padding-top: .65rem !important;
    padding-bottom: .55rem !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-title {
    font-size: 1rem !important;
    line-height: 1.15 !important;
}
html body.gadit-theme .modal#nuovoOdsModal .gadit-modal-bar {
    margin-top: .42rem !important;
}
html body.gadit-theme .modal#nuovoOdsModal .gadit-ods-create-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
}
html body.gadit-theme .modal#nuovoOdsModal iframe#nuovoOdsFrame {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    display: block !important;
    overflow: hidden !important;
    border: 0 !important;
}


/* FIX V12 - Nuovo O.D.S.: elimina la scrollbar verticale visibile del modal principale e dell'iframe.
   Il dialog resta lungo quanto la finestra utile; lo scroll del form non viene mostrato nel modal. */
html body.gadit-theme.modal-open,
html body.gadit-theme.modal-open > * {
    scrollbar-width: none !important;
}
html body.gadit-theme.modal-open::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}
html body.gadit-theme .modal#nuovoOdsModal,
html body.gadit-theme .modal#nuovoOdsModal.show {
    overflow: hidden !important;
    overflow-y: hidden !important;
    padding-right: 0 !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog,
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.modal-xl,
html body.gadit-theme .modal#nuovoOdsModal .modal-dialog.gadit-modal-dialog {
    width: min(1040px, calc(100vw - 1.25rem)) !important;
    max-width: min(1040px, calc(100vw - 1.25rem)) !important;
    height: calc(100vh - .5rem) !important;
    height: calc(100dvh - .5rem) !important;
    min-height: calc(100vh - .5rem) !important;
    min-height: calc(100dvh - .5rem) !important;
    max-height: calc(100vh - .5rem) !important;
    max-height: calc(100dvh - .5rem) !important;
    margin: .25rem auto !important;
    overflow: hidden !important;
}
html body.gadit-theme .modal#nuovoOdsModal .modal-content.gadit-modal-content,
html body.gadit-theme .modal#nuovoOdsModal .modal-body.gadit-ods-create-body {
    overflow: hidden !important;
    overflow-y: hidden !important;
}
html body.gadit-theme .modal#nuovoOdsModal iframe#nuovoOdsFrame {
    overflow: hidden !important;
    scrollbar-width: none !important;
}
html body.gadit-theme .modal#nuovoOdsModal iframe#nuovoOdsFrame::-webkit-scrollbar {
    width: 0 !important;
    display: none !important;
}

/* CSS spostato da database-verbali/gestione_verbali.php */
/* =========================================================
   GESTIONE VERBALI - Restyling GADIT completo
   Logica PHP invariata: modifica solo grafica/layout/JS UI
========================================================= */
html, body {
    width: 100%;
    min-width: 0;
    min-height: 100%;
    margin: 0;
    overflow: hidden;
}

/* Pulsanti stile top/buttons, ma coerenti GADIT e con scritte centrate */
.gadit-btn-top,
.gadit-actions .btn,
.gadit-row-actions .btn,
.gadit-card .btn.gadit-btn-top {
    height: 2.75rem !important;
    min-height: 2.75rem !important;
    min-width: 10.25rem;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .48rem !important;
    padding: 0 1rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.78) !important;
    background: linear-gradient(180deg, rgba(255,248,231,.13), rgba(5,4,3,.76)) !important;
    color: var(--gadit-gold-light) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 .55rem 1rem rgba(0,0,0,.26);
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 800 !important;
    font-size: .82rem !important;
    line-height: 1 !important;
    letter-spacing: .03em;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase;
    white-space: nowrap !important;
}

.gadit-btn-top i,
.gadit-row-actions .btn i,
.gadit-actions .btn i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.15rem !important;
    height: 1.15rem !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    font-size: 1rem !important;
    flex: 0 0 1.15rem;
}

.gadit-btn-text {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 1.15rem !important;
    line-height: 1.15rem !important;
    text-align: center !important;
    vertical-align: middle !important;
}

@keyframes gaditDecretoBlink {
}

/* Vista mobile: la tabella diventa una lista di schede, non una tabella schiacciata */
@media (max-width: 767.98px) {
}

@media (min-width: 768px) and (max-width: 1199.98px) {
}


/* =========================================================
   GESTIONE VERBALI - adattamento minimale su impaginazione Guardie
   Solo grafica/layout: logica PHP invariata.
========================================================= */
.gadit-toolbar { justify-content: flex-start; }
.gadit-toolbar .gadit-muted { margin-right: 1rem; }
.gadit-actions { justify-content: flex-start; }
.gadit-table-shell { overflow: hidden; }
#empTable { min-width: 980px; }
#empTable td[bgcolor="orange"],
#empTable td[bgcolor="#00FF00"],
#empTable td[bgcolor="#ff6347"] {
    color: #120d04 !important;
    font-weight: 900;
    letter-spacing: .045em;
    text-align: center !important;
}
#empTable td[bgcolor="orange"] { background: #f7c46a !important; }
#empTable td[bgcolor="#00FF00"] { background: #7ee38a !important; }
#empTable td[bgcolor="#ff6347"] { background: #ff8a78 !important; }
.gadit-row-actions .btn,
#empTable .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .38rem !important;
    min-height: 2.35rem !important;
    padding: .52rem .78rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
    letter-spacing: .045em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    line-height: 1 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 .45rem .95rem rgba(0,0,0,.24) !important;
}
#empTable .btn-success { background: linear-gradient(180deg, rgba(247,223,147,.9), rgba(14,90,49,.96)) !important; color: #fff8e7 !important; }
#empTable .btn-danger { background: linear-gradient(180deg, rgba(247,223,147,.82), rgba(185,31,43,.96)) !important; color: #fff8e7 !important; }
#empTable .btn-warning { background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important; color: #120d04 !important; }
.gadit-action-modal .modal-content,
.modal-content {
    border: 1px solid rgba(214,173,87,.62) !important;
    border-radius: 1.2rem !important;
}
@media (max-width: 767.98px) {
    #empTable { min-width: 0; }
}


/* FIX V11 - allineamento perfetto bottoni toolbar verbali */
.gadit-toolbar .gadit-actions {
    display: flex !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: .65rem !important;
    flex-wrap: wrap !important;
}
.gadit-toolbar .gadit-btn-top,
.gadit-toolbar a.gadit-btn-top,
.gadit-toolbar button.gadit-btn-top {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .45rem !important;
    height: 2.75rem !important;
    min-height: 2.75rem !important;
    padding: 0 1.05rem !important;
    margin: 0 !important;
    border-radius: 999px !important;
    line-height: 1 !important;
    vertical-align: middle !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}
.gadit-toolbar .gadit-btn-top i,
.gadit-toolbar .gadit-btn-top .bi,
.gadit-toolbar .gadit-btn-top .gadit-btn-text {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 1rem !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    transform: none !important;
}
.gadit-toolbar .gadit-btn-top .bi {
    font-size: 1rem !important;
}
.gadit-toolbar button.gadit-btn-top {
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* FIX V12 - bottoni principali identici e testo perfettamente centrato */
.gadit-toolbar .gadit-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: .65rem !important;
    flex-wrap: wrap !important;
}
.gadit-toolbar a.gadit-main-action,
.gadit-toolbar a.gadit-main-action:link,
.gadit-toolbar a.gadit-main-action:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 0 18px !important;
    line-height: 44px !important;
    box-sizing: border-box !important;
}
.gadit-toolbar .gadit-main-action .gadit-btn-inner {
    display: inline-grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: max-content !important;
    align-items: center !important;
    justify-content: center !important;
    column-gap: 8px !important;
    height: 44px !important;
    line-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
}
.gadit-toolbar .gadit-main-action .bi,
.gadit-toolbar .gadit-main-action .gadit-btn-text {
    display: block !important;
    height: 44px !important;
    line-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    position: static !important;
}
.gadit-toolbar .gadit-main-action .bi {
    font-size: 16px !important;
    width: 16px !important;
    text-align: center !important;
}
.gadit-toolbar .gadit-main-action .gadit-btn-text {
    font-size: .82rem !important;
    font-weight: 900 !important;
}


/* =========================================================
   V13 - Rifinitura premium completa: tabella, stati, modali, mobile
   Solo presentazione: nessuna variazione alla logica PHP.
========================================================= */
.gadit-card.gadit-management-card::after {
    content: "";
    position: absolute;
    inset: auto 1.25rem 0 1.25rem;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(214,173,87,.55), transparent);
    pointer-events: none;
}

.gadit-page-title {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
}
.gadit-page-title::before,
.gadit-page-title::after {
    content: "✦";
    color: var(--gadit-gold);
    font-size: .72em;
    text-shadow: 0 0 .8rem rgba(214,173,87,.35);
}

.gadit-toolbar {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 .65rem 1.4rem rgba(0,0,0,.25);
}
.gadit-toolbar .gadit-muted {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding-left: .25rem;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 700;
    letter-spacing: .02em;
}
.gadit-toolbar .gadit-muted::before {
    content: "📋";
    margin-right: .45rem;
    filter: drop-shadow(0 .15rem .2rem rgba(0,0,0,.35));
}

.gadit-table-shell {
    background:
        radial-gradient(circle at 50% 0%, rgba(247,223,147,.12), transparent 18rem),
        linear-gradient(180deg, rgba(255,248,231,.085), rgba(255,248,231,.035));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 .9rem 2rem rgba(0,0,0,.28);
}

.gadit-table-shell .dt-layout-row:first-child {
    padding: .55rem .6rem;
    border: 1px solid rgba(214,173,87,.28);
    border-radius: .85rem;
    background: rgba(5,4,3,.42);
}
.gadit-table-shell .dt-layout-row:last-child {
    padding: .45rem .3rem 0;
}
.gadit-table-shell label {
    color: var(--gadit-gold-light) !important;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 800;
    letter-spacing: .025em;
}
.gadit-table-shell .dt-search input,
.gadit-table-shell .dt-length select {
    min-height: 2.45rem !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45), 0 .35rem .85rem rgba(0,0,0,.18) !important;
}
.gadit-table-shell .dt-search input:focus,
.gadit-table-shell .dt-length select:focus {
    border-color: var(--gadit-gold) !important;
    box-shadow: 0 0 0 .22rem rgba(214,173,87,.18) !important;
    outline: none !important;
}
.gadit-table-shell .dt-paging .dt-paging-button,
.gadit-table-shell .dataTables_paginate .paginate_button {
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.38) !important;
    color: var(--gadit-cream) !important;
    background: rgba(255,248,231,.055) !important;
    margin: 0 .12rem !important;
}
.gadit-table-shell .dt-paging .dt-paging-button.current,
.gadit-table-shell .dt-paging .dt-paging-button.current:hover,
.gadit-table-shell .dataTables_paginate .paginate_button.current,
.gadit-table-shell .dataTables_paginate .paginate_button.current:hover {
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    color: #120d04 !important;
    border-color: var(--gadit-gold-light) !important;
}

#empTable {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    box-shadow: 0 .65rem 1.35rem rgba(0,0,0,.22);
}
#empTable thead th {
    padding: .9rem .65rem !important;
    border-bottom: 2px solid rgba(125,82,32,.55) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.28);
}
#empTable tbody tr {
    transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
#empTable tbody tr:nth-child(even) td {
    background-color: rgba(255,248,231,.88) !important;
}
#empTable tbody tr:nth-child(odd) td {
    background-color: rgba(255,253,247,.98) !important;
}
#empTable tbody tr:hover td {
    background-color: rgba(247,223,147,.28) !important;
}
#empTable tbody td {
    padding: .72rem .6rem !important;
}
#empTable tbody td:nth-child(1),
#empTable tbody td:nth-child(2) {
    font-weight: 900;
    color: #120d04;
}
#empTable tbody td:nth-child(3) {
    font-weight: 800;
}
#empTable tbody td:nth-child(4),
#empTable tbody td:nth-child(5),
#empTable tbody td:nth-child(6) {
    font-size: .88rem;
}

.gadit-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 8.25rem;
    min-height: 2rem;
    padding: .35rem .75rem;
    border-radius: 999px;
    border: 1px solid rgba(18,13,4,.14);
    font-family: Arial, Helvetica, sans-serif;
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.34), 0 .35rem .85rem rgba(0,0,0,.18);
}
.gadit-status-badge::before {
    content: "";
    width: .48rem;
    height: .48rem;
    border-radius: 50%;
    margin-right: .45rem;
    background: currentColor;
    box-shadow: 0 0 .65rem currentColor;
}
.gadit-status-registrato {
    background: linear-gradient(180deg, #ffe6a8, #f2a640) !important;
    color: #5a3100 !important;
}
.gadit-status-firmato {
    background: linear-gradient(180deg, #d7ffd6, #2f9d50) !important;
    color: #073916 !important;
}
.gadit-status-annullato {
    background: linear-gradient(180deg, #ffd1cb, #d34a3d) !important;
    color: #5c1018 !important;
}

#empTable td.gadit-status-cell {
    background: inherit !important;
}

#empTable td:last-child {
    min-width: 260px;
}
#empTable td:last-child .gadit-row-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(112px, 1fr));
    gap: .48rem;
    width: 100%;
}
#empTable td:last-child .gadit-row-actions .btn {
    margin: 0 !important;
    min-height: 2.42rem !important;
    width: 100% !important;
}
#empTable .glyphicon {
    top: 0 !important;
    margin-right: .28rem;
}

/* Modali incluse: rese GADIT senza cambiare i file PHP inclusi */
.modal.gadit-action-modal .modal-dialog {
    max-width: min(760px, calc(100vw - 1rem)) !important;
}
.modal.gadit-action-modal .modal-content {
    overflow: hidden !important;
    border: 1px solid rgba(214,173,87,.62) !important;
    border-radius: 1.35rem !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(247,223,147,.16), transparent 18rem),
        linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.99)) !important;
    color: var(--gadit-cream) !important;
    box-shadow: 0 1.35rem 3.4rem rgba(0,0,0,.62), 0 0 0 .28rem rgba(214,173,87,.10), inset 0 1px 0 rgba(255,255,255,.12) !important;
}
.modal.gadit-action-modal .modal-content::before {
    content: "";
    display: block;
    height: .32rem;
    background: linear-gradient(90deg, var(--gadit-green) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red) 66.666% 100%);
}
.modal.gadit-action-modal .modal-header,
.modal.gadit-action-modal .modal-footer {
    border-color: rgba(214,173,87,.34) !important;
    background: rgba(255,248,231,.045) !important;
}
.modal.gadit-action-modal .modal-title {
    color: var(--gadit-gold-light) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.55) !important;
}
.modal.gadit-action-modal .modal-body {
    color: var(--gadit-cream) !important;
    background: transparent !important;
    max-height: min(70vh, 640px);
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--gadit-gold) rgba(5,4,3,.75);
}
.modal.gadit-action-modal .modal-body::-webkit-scrollbar { width: 10px; }
.modal.gadit-action-modal .modal-body::-webkit-scrollbar-track { background: rgba(5,4,3,.86); }
.modal.gadit-action-modal .modal-body::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold-dark));
    border: 2px solid rgba(5,4,3,.86);
}
.modal.gadit-action-modal .close {
    opacity: 1 !important;
    color: #120d04 !important;
    text-shadow: none !important;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 25%, var(--gadit-gold-light), var(--gadit-gold) 58%, var(--gadit-gold-dark)) !important;
    border: 1px solid rgba(214,173,87,.76) !important;
    box-shadow: 0 .45rem 1rem rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.4) !important;
}
.modal.gadit-action-modal .form-control {
    min-height: 2.85rem !important;
    border-radius: .9rem !important;
    border: 1px solid rgba(214,173,87,.5) !important;
    background: rgba(255,248,231,.96) !important;
    color: #1f1608 !important;
}
.modal.gadit-action-modal .btn,
.modal.gadit-action-modal input[type="submit"].btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .4rem !important;
    min-height: 2.75rem !important;
    padding: .62rem 1rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.62) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
    white-space: normal !important;
}
.modal.gadit-action-modal .btn-primary,
.modal.gadit-action-modal .btn-info {
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold)) !important;
    color: #120d04 !important;
    border-color: var(--gadit-gold-light) !important;
}
.modal.gadit-action-modal .btn-warning {
    background: linear-gradient(180deg, rgba(247,223,147,.92), rgba(214,173,87,.82)) !important;
    color: #120d04 !important;
}
.modal.gadit-action-modal .btn-default {
    background: linear-gradient(180deg, rgba(255,248,231,.16), rgba(59,51,39,.86)) !important;
    color: var(--gadit-cream) !important;
}
.modal.gadit-action-modal blink {
    display: block;
    margin: .75rem 0;
    color: #ffb3a9 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 1rem !important;
    text-align: center;
    animation: gaditDecretoBlink 1s ease-in-out infinite;
}

@media (max-width: 767.98px) {
    .gadit-page-title::before,
    .gadit-page-title::after { display: none; }
    .gadit-toolbar .gadit-muted {
        justify-content: center;
        margin-right: 0 !important;
    }
    #empTable tbody td:nth-child(7),
    #empTable tbody td.gadit-status-cell {
        display: flex !important;
        justify-content: space-between !important;
        text-align: right !important;
    }
    #empTable tbody td:nth-child(7)::before,
    #empTable tbody td.gadit-status-cell::before {
        align-self: center;
    }
    .gadit-status-badge {
        min-width: 0;
        width: auto;
        max-width: 100%;
    }
    #empTable td:last-child .gadit-row-actions {
        grid-template-columns: 1fr;
    }
    .modal.gadit-action-modal .modal-dialog {
        margin: .45rem !important;
        max-width: calc(100vw - .9rem) !important;
    }
    .modal.gadit-action-modal .modal-body {
        max-height: calc(100dvh - 11.5rem);
    }
    .modal.gadit-action-modal .modal-footer {
        display: grid;
        gap: .55rem;
    }
    .modal.gadit-action-modal .modal-footer .btn,
    .modal.gadit-action-modal .modal-footer form {
        width: 100% !important;
    }
}


/* V14 - Modal Nuovo Verbale con iframe ricerca in stile GADIT */
#nuovoVerbaleModal .modal-dialog {
    width: min(980px, calc(100vw - 1rem)) !important;
    max-width: min(980px, calc(100vw - 1rem)) !important;
}

#nuovoVerbaleModal .modal-content {
    overflow: hidden !important;
}

#nuovoVerbaleModal .modal-header {
    position: relative;
    padding-right: 4rem !important;
}

#nuovoVerbaleModal .modal-title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
}

.gadit-verbale-search-frame {
    display: block;
    width: 100%;
    height: min(76vh, 740px);
    min-height: 540px;
    border: 0;
    background: #050403;
}

@media (max-width: 575.98px) {
    #nuovoVerbaleModal .modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        margin: 0 !important;
    }

    #nuovoVerbaleModal .modal-content {
        height: 100dvh !important;
        border-radius: 0 !important;
        border: 0 !important;
    }

    #nuovoVerbaleModal .modal-body {
        padding: 0 !important;
        max-height: none !important;
    }

    .gadit-verbale-search-frame {
        height: calc(100dvh - 4.5rem);
        min-height: 0;
    }
}


/* V16 - Apertura certa modal Nuovo Verbale (normalizzato: z-index gestito dal fix globale modal) */
#nuovoVerbaleModal .modal-dialog {
    margin-top: 3vh;
}
#nuovoVerbaleModal .gadit-verbale-search-frame {
    display: block;
    width: 100%;
    height: min(78vh, 760px);
    min-height: 520px;
    border: 0;
    background: #fff8e7;
}
@media (max-width: 575.98px) {
    #nuovoVerbaleModal .modal-content {
        height: 100dvh !important;
        border-radius: 0 !important;
    }
    #nuovoVerbaleModal .gadit-verbale-search-frame {
        height: calc(100dvh - 4.8rem) !important;
        min-height: 0 !important;
    }
}


/* V17 - Compatibilità Bootstrap 5 / DataTables 2.3.8 */
.gadit-action-modal .btn-close.gadit-modal-x {
    position: absolute !important;
    top: .75rem !important;
    right: .85rem !important;
    z-index: 20 !important;
    width: 2.35rem !important;
    height: 2.35rem !important;
    min-width: 2.35rem !important;
    min-height: 2.35rem !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.76) !important;
    background: radial-gradient(circle at 35% 25%, var(--gadit-gold-light), var(--gadit-gold) 58%, var(--gadit-gold-dark)) !important;
    opacity: 1 !important;
    box-shadow: 0 .45rem 1rem rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.4) !important;
}
.gadit-action-modal .btn-close.gadit-modal-x::before {
    content: "×";
    color: #120d04;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1;
}
.gadit-action-modal .btn-close.gadit-modal-x:hover {
    transform: translateY(-1px) !important;
    filter: brightness(1.08) !important;
}
.gadit-table-shell table.dataTable.table > thead > tr > th,
.gadit-table-shell table.dataTable.table > tbody > tr > td {
    box-sizing: border-box;
}
.gadit-table-shell .dt-container .dt-length label,
.gadit-table-shell .dt-container .dt-search label,
.gadit-table-shell .dt-container .dt-info {
    color: var(--gadit-muted) !important;
}
.gadit-table-shell .pagination .page-link {
    background: rgba(255,248,231,.08) !important;
    border-color: rgba(214,173,87,.35) !important;
    color: var(--gadit-gold-light) !important;
}
.gadit-table-shell .pagination .active .page-link {
    background: var(--gadit-gold) !important;
    border-color: var(--gadit-gold) !important;
    color: #120d04 !important;
}


/* V18 - Modal Nuovo Verbale: iframe ricerca_verbale.php + X GADIT visibile */
#nuovoVerbaleModal .modal-header.gadit-modal-header-centered {
    position: relative !important;
    min-height: 4.65rem !important;
    padding: 1rem 4.4rem 1rem 1rem !important;
    justify-content: center !important;
    text-align: center !important;
}

#nuovoVerbaleModal .gadit-modal-x,
#nuovoVerbaleModal button.gadit-modal-x {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: absolute !important;
    top: .75rem !important;
    right: .85rem !important;
    z-index: 50 !important;
    width: 2.55rem !important;
    height: 2.55rem !important;
    min-width: 2.55rem !important;
    min-height: 2.55rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(247,223,147,.86) !important;
    background: radial-gradient(circle at 35% 25%, var(--gadit-gold-light), var(--gadit-gold) 58%, var(--gadit-gold-dark)) !important;
    color: #120d04 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 1.55rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-shadow: none !important;
    box-shadow: 0 .55rem 1.15rem rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.42) !important;
    opacity: 1 !important;
    cursor: pointer !important;
}

#nuovoVerbaleModal .gadit-modal-x span {
    display: block !important;
    line-height: 1 !important;
    transform: translateY(-1px) !important;
}

#nuovoVerbaleModal .gadit-modal-x:hover,
#nuovoVerbaleModal .gadit-modal-x:focus {
    transform: translateY(-1px) scale(1.04) !important;
    filter: brightness(1.08) !important;
    outline: none !important;
}

#nuovoVerbaleModal .modal-body {
    padding: 0 !important;
    overflow: hidden !important;
    background: #050403 !important;
}

#nuovoVerbaleModal iframe.gadit-verbale-search-frame {
    display: block !important;
    width: 100% !important;
    height: min(78vh, 760px) !important;
    min-height: 520px !important;
    border: 0 !important;
    background: #fff8e7 !important;
}

@media (max-width: 575.98px) {
    #nuovoVerbaleModal .modal-header.gadit-modal-header-centered {
        min-height: 4.4rem !important;
        padding-right: 3.8rem !important;
    }

    #nuovoVerbaleModal .gadit-modal-x,
    #nuovoVerbaleModal button.gadit-modal-x {
        top: .6rem !important;
        right: .65rem !important;
        width: 2.35rem !important;
        height: 2.35rem !important;
        min-width: 2.35rem !important;
        min-height: 2.35rem !important;
        font-size: 1.4rem !important;
    }
}


/* V25 - Modal Ricerca Verbale adattiva: dimensione in base al contenuto iframe */
#nuovoVerbaleModal {
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

#nuovoVerbaleModal .modal-dialog {
    width: min(98vw, 1500px) !important;
    max-width: min(98vw, 1500px) !important;
    height: auto !important;
    max-height: none !important;
    margin: 1rem auto !important;
}

#nuovoVerbaleModal .modal-content.gadit-modal-content,
#nuovoVerbaleModal .modal-content {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    display: block !important;
    overflow: visible !important;
    border-radius: 1.25rem !important;
}

#nuovoVerbaleModal .modal-header.gadit-modal-header-centered,
#nuovoVerbaleModal .modal-header {
    min-height: 70px !important;
    height: auto !important;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

#nuovoVerbaleModal .modal-body {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: #050403 !important;
}

#nuovoVerbaleModal iframe.gadit-verbale-search-frame {
    display: block !important;
    width: 100% !important;
    height: 720px;
    min-height: 560px !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #050403 !important;
}

@media (max-width: 575.98px) {
    #nuovoVerbaleModal .modal-dialog {
        width: calc(100vw - .7rem) !important;
        max-width: calc(100vw - .7rem) !important;
        margin: .35rem auto !important;
    }
    #nuovoVerbaleModal .modal-content.gadit-modal-content,
    #nuovoVerbaleModal .modal-content {
        border-radius: 1rem !important;
    }
    #nuovoVerbaleModal iframe.gadit-verbale-search-frame {
        min-height: 520px !important;
    }
}

/* =========================================================
   V27 - Modal Nuovo Verbale extra largo e responsive
   Desktop: quasi tutto lo schermo. Mobile: fullscreen.
   L'iframe riempie realmente tutta la finestra senza schiacciare il contenuto.
========================================================= */
#nuovoVerbaleModal.modal {
    overflow: hidden !important;
}
#nuovoVerbaleModal .modal-dialog {
    width: min(98vw, 1760px) !important;
    max-width: min(98vw, 1760px) !important;
    height: 94vh !important;
    max-height: 94vh !important;
    margin: 3vh auto !important;
}
#nuovoVerbaleModal .modal-content.gadit-modal-content,
#nuovoVerbaleModal .modal-content {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-radius: 1.35rem !important;
}
#nuovoVerbaleModal .modal-header.gadit-modal-header-centered,
#nuovoVerbaleModal .modal-header {
    flex: 0 0 auto !important;
    min-height: 4.4rem !important;
    padding-top: .9rem !important;
    padding-bottom: .85rem !important;
}
#nuovoVerbaleModal .modal-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #050403 !important;
}
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#gaditRicercaVerbaleFrame {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #050403 !important;
}
@media (min-width: 1800px) {
    #nuovoVerbaleModal .modal-dialog {
        width: min(96vw, 1900px) !important;
        max-width: min(96vw, 1900px) !important;
    }
}
@media (max-width: 991.98px) {
    #nuovoVerbaleModal .modal-dialog {
        width: 98vw !important;
        max-width: 98vw !important;
        height: 94dvh !important;
        max-height: 94dvh !important;
        margin: 3dvh auto !important;
    }
}
@media (max-width: 575.98px) {
    #nuovoVerbaleModal .modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }
    #nuovoVerbaleModal .modal-content.gadit-modal-content,
    #nuovoVerbaleModal .modal-content {
        border-radius: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
    }
    #nuovoVerbaleModal .modal-header.gadit-modal-header-centered,
    #nuovoVerbaleModal .modal-header {
        min-height: 4rem !important;
        padding-top: .75rem !important;
        padding-bottom: .7rem !important;
    }
}


/* =========================================================
   V28 - Modal Nuovo Verbale massima dimensione responsive
   Override finale: nessuna larghezza Bootstrap residua, iframe pieno.
========================================================= */
#nuovoVerbaleModal,
#nuovoVerbaleModal.modal {
    --gadit-verbale-header-h: 70px;
    overflow: hidden !important;
}
#nuovoVerbaleModal .modal-dialog,
#nuovoVerbaleModal .modal-dialog.modal-dialog-centered {
    width: calc(100vw - 20px) !important;
    max-width: none !important;
    min-width: 0 !important;
    height: calc(100dvh - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    margin: 10px auto !important;
    padding: 0 !important;
}
#nuovoVerbaleModal .modal-content,
#nuovoVerbaleModal .modal-content.gadit-modal-content {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal .modal-header,
#nuovoVerbaleModal .modal-header.gadit-modal-header-centered {
    flex: 0 0 var(--gadit-verbale-header-h) !important;
    height: var(--gadit-verbale-header-h) !important;
    min-height: var(--gadit-verbale-header-h) !important;
    padding: .75rem 4.25rem .75rem 1rem !important;
}
#nuovoVerbaleModal .modal-body {
    flex: 1 1 auto !important;
    width: 100% !important;
    height: calc(100dvh - 20px - var(--gadit-verbale-header-h)) !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: auto !important;
    background: #050403 !important;
}
@media (min-width: 1400px) {
    #nuovoVerbaleModal .modal-dialog,
    #nuovoVerbaleModal .modal-dialog.modal-dialog-centered {
        width: calc(100vw - 28px) !important;
        height: calc(100dvh - 28px) !important;
        max-height: calc(100dvh - 28px) !important;
        margin: 14px auto !important;
    }
    #nuovoVerbaleModal .modal-body {
        height: calc(100dvh - 28px - var(--gadit-verbale-header-h)) !important;
    }
}
@media (max-width: 767.98px) {
    #nuovoVerbaleModal,
    #nuovoVerbaleModal.modal {
        --gadit-verbale-header-h: 58px;
    }
    #nuovoVerbaleModal .modal-dialog,
    #nuovoVerbaleModal .modal-dialog.modal-dialog-centered {
        width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }
    #nuovoVerbaleModal .modal-content,
    #nuovoVerbaleModal .modal-content.gadit-modal-content {
        border-radius: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
    }
    #nuovoVerbaleModal .modal-body {
        height: calc(100dvh - var(--gadit-verbale-header-h)) !important;
    }
}


/* =========================================================
   V29 - Modal ricerca verbale realmente allungata e responsive
   Override finale: usa viewport quasi intera su desktop/tablet,
   fullscreen su mobile. Nessuna barra della modal, solo iframe.
========================================================= */
#nuovoVerbaleModal.modal {
    --gadit-modal-margin-x: 8px;
    --gadit-modal-margin-y: 8px;
    --gadit-modal-header-height: 66px;
    padding: 0 !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal .gadit-verbale-modal-dialog,
#nuovoVerbaleModal .modal-dialog {
    position: relative !important;
    width: calc(100vw - (var(--gadit-modal-margin-x) * 2)) !important;
    max-width: calc(100vw - (var(--gadit-modal-margin-x) * 2)) !important;
    min-width: calc(100vw - (var(--gadit-modal-margin-x) * 2)) !important;
    height: calc(100dvh - (var(--gadit-modal-margin-y) * 2)) !important;
    max-height: calc(100dvh - (var(--gadit-modal-margin-y) * 2)) !important;
    min-height: calc(100dvh - (var(--gadit-modal-margin-y) * 2)) !important;
    margin: var(--gadit-modal-margin-y) auto !important;
    padding: 0 !important;
    transform: none !important;
}
#nuovoVerbaleModal .modal-content.gadit-modal-content,
#nuovoVerbaleModal .modal-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-radius: 1.15rem !important;
}
#nuovoVerbaleModal .modal-header.gadit-modal-header-centered,
#nuovoVerbaleModal .modal-header {
    flex: 0 0 var(--gadit-modal-header-height) !important;
    height: var(--gadit-modal-header-height) !important;
    min-height: var(--gadit-modal-header-height) !important;
    max-height: var(--gadit-modal-header-height) !important;
    padding: .7rem 4.4rem .7rem 1.15rem !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal .modal-body {
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: calc(100dvh - (var(--gadit-modal-margin-y) * 2) - var(--gadit-modal-header-height)) !important;
    max-height: calc(100dvh - (var(--gadit-modal-margin-y) * 2) - var(--gadit-modal-header-height)) !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    height: calc(100dvh - (var(--gadit-modal-margin-y) * 2) - var(--gadit-modal-header-height)) !important;
    max-height: calc(100dvh - (var(--gadit-modal-margin-y) * 2) - var(--gadit-modal-header-height)) !important;
    min-height: calc(100dvh - (var(--gadit-modal-margin-y) * 2) - var(--gadit-modal-header-height)) !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: auto !important;
    background: #050403 !important;
}
@media (min-width: 1200px) {
    #nuovoVerbaleModal.modal {
        --gadit-modal-margin-x: 10px;
        --gadit-modal-margin-y: 10px;
        --gadit-modal-header-height: 68px;
    }
}
@media (max-width: 767.98px) {
    #nuovoVerbaleModal.modal {
        --gadit-modal-margin-x: 0px;
        --gadit-modal-margin-y: 0px;
        --gadit-modal-header-height: 58px;
    }
    #nuovoVerbaleModal .modal-header.gadit-modal-header-centered,
    #nuovoVerbaleModal .modal-header {
        padding: .55rem 3.8rem .55rem .85rem !important;
    }
}


/* =========================================================
   V30 - Correzione dimensioni Modal Nuovo Verbale
   Desktop/tablet: quasi tutto viewport, centrata.
   Mobile: fullscreen reale con altezza visualViewport.
   Corpo e iframe occupano tutto lo spazio disponibile.
========================================================= */
#nuovoVerbaleModal.modal {
    --gadit-nv-x: 12px;
    --gadit-nv-y: 12px;
    --gadit-nv-header: 64px;
    padding: 0 !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal .modal-dialog,
#nuovoVerbaleModal .gadit-verbale-modal-dialog {
    width: calc(100vw - (var(--gadit-nv-x) * 2)) !important;
    max-width: calc(100vw - (var(--gadit-nv-x) * 2)) !important;
    min-width: 0 !important;
    height: calc(var(--gadit-nv-vh, 100dvh) - (var(--gadit-nv-y) * 2)) !important;
    max-height: calc(var(--gadit-nv-vh, 100dvh) - (var(--gadit-nv-y) * 2)) !important;
    margin: var(--gadit-nv-y) auto !important;
    padding: 0 !important;
}
#nuovoVerbaleModal .modal-content,
#nuovoVerbaleModal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-radius: 1.15rem !important;
}
#nuovoVerbaleModal .modal-header,
#nuovoVerbaleModal .modal-header.gadit-modal-header-centered {
    flex: 0 0 var(--gadit-nv-header) !important;
    height: var(--gadit-nv-header) !important;
    min-height: var(--gadit-nv-header) !important;
    padding: .65rem 4.25rem .65rem 1rem !important;
}
#nuovoVerbaleModal .modal-title {
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
#nuovoVerbaleModal .modal-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    border: 0 !important;
    overflow: auto !important;
    background: #050403 !important;
}
@media (min-width: 1200px) {
    #nuovoVerbaleModal.modal {
        --gadit-nv-x: 18px;
        --gadit-nv-y: 14px;
        --gadit-nv-header: 66px;
    }
}
@media (max-width: 767.98px) {
    #nuovoVerbaleModal.modal {
        --gadit-nv-x: 0px;
        --gadit-nv-y: 0px;
        --gadit-nv-header: 56px;
    }
    #nuovoVerbaleModal .modal-header,
    #nuovoVerbaleModal .modal-header.gadit-modal-header-centered {
        padding: .5rem 3.65rem .5rem .8rem !important;
    }
}

/* =========================================================
   V31 - Nuovo Verbale a visualizzazione totale
   Full viewport su desktop, tablet e mobile, senza cambiare
   logica PHP o destinazione iframe ricerca_verbale.php.
========================================================= */
body.modal-open:has(#nuovoVerbaleModal.show) {
    overflow: hidden !important;
    padding-right: 0 !important;
}
#nuovoVerbaleModal.modal {
    --gadit-nv-x: 0px !important;
    --gadit-nv-y: 0px !important;
    width: 100vw !important;
    height: var(--gadit-nv-vh, 100dvh) !important;
    padding: 0 !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal .modal-dialog,
#nuovoVerbaleModal .gadit-verbale-modal-dialog {
    width: 100vw !important;
    max-width: 100vw !important;
    height: var(--gadit-nv-vh, 100dvh) !important;
    max-height: var(--gadit-nv-vh, 100dvh) !important;
    margin: 0 !important;
    padding: 0 !important;
}
#nuovoVerbaleModal .modal-content,
#nuovoVerbaleModal .modal-content.gadit-modal-content {
    width: 100vw !important;
    height: var(--gadit-nv-vh, 100dvh) !important;
    max-height: var(--gadit-nv-vh, 100dvh) !important;
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}
#nuovoVerbaleModal .modal-header,
#nuovoVerbaleModal .modal-header.gadit-modal-header-centered {
    flex: 0 0 var(--gadit-nv-header, 62px) !important;
    height: var(--gadit-nv-header, 62px) !important;
    min-height: var(--gadit-nv-header, 62px) !important;
}
#nuovoVerbaleModal .modal-body {
    flex: 1 1 auto !important;
    width: 100% !important;
    height: calc(var(--gadit-nv-vh, 100dvh) - var(--gadit-nv-header, 62px)) !important;
    max-height: calc(var(--gadit-nv-vh, 100dvh) - var(--gadit-nv-header, 62px)) !important;
    min-height: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
}


/* =========================================================
   V29 - Nuovo Verbale: modal auto-adattivo senza barra laterale interna
   Il contenitore non forza più l'altezza viewport: l'iframe viene dimensionato
   sul contenuto caricato, mantenendo responsive web/mobile.
========================================================= */
body.modal-open:has(#nuovoVerbaleModal.show) {
    overflow: auto !important;
    padding-right: 0 !important;
}
#nuovoVerbaleModal,
#nuovoVerbaleModal.modal {
    overflow-x: hidden !important;
    overflow-y: visible !important;
}
#nuovoVerbaleModal .modal-dialog,
#nuovoVerbaleModal .gadit-verbale-modal-dialog {
    width: min(98vw, 1760px) !important;
    max-width: min(98vw, 1760px) !important;
    height: auto !important;
    max-height: none !important;
    margin: clamp(.4rem, 2vh, 1rem) auto !important;
    padding: 0 !important;
}
#nuovoVerbaleModal .modal-content,
#nuovoVerbaleModal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    display: block !important;
    overflow: visible !important;
    border-radius: 1.25rem !important;
}
#nuovoVerbaleModal .modal-header,
#nuovoVerbaleModal .modal-header.gadit-modal-header-centered {
    height: auto !important;
    min-height: 4rem !important;
    max-height: none !important;
    flex: none !important;
}
#nuovoVerbaleModal .modal-body {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: #050403 !important;
}
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 360px !important;
    max-height: none !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff8e7 !important;
}
@media (max-width: 575.98px) {
    #nuovoVerbaleModal .modal-dialog,
    #nuovoVerbaleModal .gadit-verbale-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        margin: 0 !important;
    }
}


/* =========================================================
   V32 - Modal Nuovo Verbale auto-size reale
   Dimensione calcolata dal contenuto caricato nell'iframe.
   Nessuna scrollbar laterale interna al modal; se il contenuto supera
   lo schermo, scorre la pagina/modale Bootstrap esterna.
========================================================= */
body.modal-open:has(#nuovoVerbaleModal.show) {
    overflow: auto !important;
    padding-right: 0 !important;
}
#nuovoVerbaleModal,
#nuovoVerbaleModal.modal {
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}
#nuovoVerbaleModal .modal-dialog,
#nuovoVerbaleModal .gadit-verbale-modal-dialog {
    width: var(--gadit-nv-auto-w, min(98vw, 1760px)) !important;
    max-width: calc(100vw - .75rem) !important;
    min-width: min(360px, calc(100vw - .75rem)) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: clamp(.35rem, 1.4vh, 1rem) auto !important;
    padding: 0 !important;
}
#nuovoVerbaleModal .modal-content,
#nuovoVerbaleModal .modal-content.gadit-modal-content {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    overflow: visible !important;
    border-radius: 1.25rem !important;
}
#nuovoVerbaleModal .modal-body {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: #050403 !important;
}
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: var(--gadit-nv-auto-h, 520px) !important;
    min-height: 360px !important;
    max-height: none !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff8e7 !important;
}
@media (max-width: 575.98px) {
    #nuovoVerbaleModal .modal-dialog,
    #nuovoVerbaleModal .gadit-verbale-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        min-width: 100vw !important;
        margin: 0 auto !important;
    }
}


/* =========================================================
   FIX FINALE GADIT - Nuovo Verbale auto-fit reale contenuto iframe
   Nessuna scrollbar interna: altezza/larghezza calcolate dal contenuto caricato.
========================================================= */
body.modal-open:has(#nuovoVerbaleModal.show) {
    overflow-y: auto !important;
    padding-right: 0 !important;
}
#nuovoVerbaleModal .modal-dialog,
#nuovoVerbaleModal .gadit-verbale-modal-dialog {
    width: var(--gadit-nv-fit-w, min(98vw, 1400px)) !important;
    max-width: calc(100vw - 12px) !important;
    min-width: min(420px, calc(100vw - 12px)) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: clamp(.35rem, 1.4vh, 1rem) auto !important;
    padding: 0 !important;
    transform: none !important;
}
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: var(--gadit-nv-fit-h, 520px) !important;
    min-height: 260px !important;
    max-height: none !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff8e7 !important;
}
@media (max-width: 575.98px) {
    #nuovoVerbaleModal .modal-dialog,
    #nuovoVerbaleModal .gadit-verbale-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        min-width: 100vw !important;
        margin: 0 !important;
    }
}

/* CSS spostato da database-verbali/gestione_verbali.php */
.gadit-multi-search-wrapper{
    width:100%;
    margin:1rem 0;
}

.gadit-multi-search-card{
    border:1px solid rgba(214,173,87,.35);
    border-radius:1.2rem;
    overflow:hidden;
    background:
        linear-gradient(180deg, rgba(18,17,14,.96), rgba(5,4,3,.99));
    box-shadow:
        0 1rem 2.5rem rgba(0,0,0,.45),
        inset 0 1px 0 rgba(255,255,255,.08);
}

.gadit-multi-search-card::before{
    content:"";
    display:block;
    height:.32rem;
    background:
        linear-gradient(
            90deg,
            var(--gadit-green) 0 33.333%,
            #fff 33.333% 66.666%,
            var(--gadit-red) 66.666% 100%
        );
}

.gadit-multi-search-header{
    padding:1rem 1rem .25rem;
}

.gadit-multi-search-title{
    margin:0;
    color:var(--gadit-gold-light);
    text-transform:uppercase;
    letter-spacing:.05em;
}

.gadit-multi-search-form{
    padding:1rem;
}

.gadit-multi-search-grid{
    display:grid;
    grid-template-columns:
        minmax(220px,300px)
        1fr
        auto;
    gap:.8rem;
    align-items:end;
}

.gadit-multi-search-field label{
    display:block;
    margin-bottom:.4rem;
    color:var(--gadit-gold-light);
    font-weight:800;
}

.gadit-multi-search-field .form-control,
.gadit-multi-search-field .form-select{
    min-height:3rem;
    border-radius:.9rem;
}

.gadit-multi-search-action{
    display:flex;
    align-items:flex-end;
}

.gadit-multi-search-action .gadit-btn{
    min-width:160px;
}

@media (max-width: 767.98px){

    .gadit-multi-search-grid{
        grid-template-columns:1fr;
    }

    .gadit-multi-search-action{
        width:100%;
    }

    .gadit-multi-search-action .gadit-btn{
        width:100%;
    }
}

/* CSS spostato da database-verbali/show_delete_modal.php */
blink {
    color: #1c87c9;
    font-size: 20px;
    font-weight: bold;
    font-family: sans-serif;
  }

/* CSS spostato da test/ricerca_multi_tabelle.php */
:root {
            --gadit-black: #050403;
            --gadit-gold: #d6ad57;
            --gadit-gold-light: #f7df93;
            --gadit-gold-dark: #7d5220;
            --gadit-green: #0e5a31;
            --gadit-red: #b91f2b;
            --gadit-cream: #fff8e7;
            --gadit-muted: #cbbf9c;
            --gadit-border: rgba(214, 173, 87, .42);
            --gadit-card-bg: linear-gradient(180deg, rgba(18, 17, 14, .96), rgba(5, 4, 3, .98));
        }

        body.gadit-theme {
            margin: 0;
            min-height: 100vh;
            font-family: Georgia, "Times New Roman", serif;
            background:
                radial-gradient(circle at 50% 0%, rgba(247, 223, 147, .24), transparent 22rem),
                radial-gradient(circle at 12% 18%, rgba(14, 90, 49, .28), transparent 18rem),
                radial-gradient(circle at 88% 82%, rgba(185, 31, 43, .20), transparent 18rem),
                linear-gradient(145deg, #000 0%, #0d0b08 50%, #030303 100%);
            color: var(--gadit-cream);
        }

        .gadit-search-page {
            width: min(100%, 1280px);
            margin: 0 auto;
            padding: clamp(.85rem, 2.4vw, 2rem);
            box-sizing: border-box;
        }

        .gadit-search-card {
            border: 1px solid var(--gadit-border);
            border-radius: 1.35rem;
            overflow: hidden;
            background: var(--gadit-card-bg);
            box-shadow:
                0 1.5rem 4rem rgba(0,0,0,.55),
                0 0 0 .35rem rgba(214,173,87,.08),
                inset 0 1px 0 rgba(255,255,255,.12);
        }

        .gadit-search-card::before {
            content: "";
            display: block;
            height: .34rem;
            background: linear-gradient(90deg, var(--gadit-green) 0 33.333%, #fff 33.333% 66.666%, var(--gadit-red) 66.666% 100%);
        }

        .gadit-search-header,
        .gadit-search-body {
            padding: clamp(1rem, 2vw, 1.4rem);
        }

        .gadit-title {
            margin: 0;
            color: var(--gadit-gold-light);
            text-transform: uppercase;
            letter-spacing: .055em;
            text-shadow: 0 2px 0 rgba(0,0,0,.5);
        }

        .gadit-search-form {
            display: grid;
            grid-template-columns: minmax(180px, 260px) 1fr auto;
            gap: .75rem;
            align-items: end;
            margin-top: 1rem;
        }

        .gadit-field label {
            display: block;
            margin-bottom: .35rem;
            color: var(--gadit-gold-light);
            font-weight: 800;
            letter-spacing: .02em;
        }

        .gadit-config-help {
            display: block;
            margin-top: .38rem;
            color: var(--gadit-muted);
            font-family: Arial, Helvetica, sans-serif;
            font-size: .78rem;
            line-height: 1.3;
        }

        .gadit-field input,
        .gadit-field select {
            width: 100%;
            min-height: 3rem;
            border-radius: .9rem;
            border: 1px solid rgba(214,173,87,.45);
            background: rgba(255,248,231,.96);
            color: #1f1608;
            padding: .65rem .85rem;
            box-sizing: border-box;
        }

        .gadit-btn {
            min-height: 3rem;
            border-radius: .9rem;
            border: 1px solid var(--gadit-gold);
            background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold));
            color: #120d04;
            padding: .65rem 1rem;
            font-weight: 900;
            text-transform: uppercase;
            letter-spacing: .055em;
            cursor: pointer;
        }

        .gadit-results {
            display: grid;
            gap: .85rem;
            margin-top: 1rem;
        }

        .gadit-result-card {
            background: rgba(255,248,231,.965);
            color: #17120a;
            border: 1px solid rgba(214,173,87,.45);
            border-left: .38rem solid var(--gadit-gold);
            border-radius: 1rem;
            padding: 1rem;
            font-family: Arial, Helvetica, sans-serif;
            box-shadow: 0 .55rem 1.25rem rgba(0,0,0,.18);
        }

        .gadit-result-title {
            font-weight: 900;
            color: #120d04;
            margin-bottom: .7rem;
        }

        .gadit-result-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
            gap: .65rem;
        }

        .gadit-result-field {
            border: 1px solid rgba(125,82,32,.20);
            border-radius: .75rem;
            background: rgba(255,255,255,.55);
            padding: .65rem;
            min-width: 0;
        }

        .gadit-result-field strong {
            display: block;
            color: #4e3214;
            font-size: .78rem;
            text-transform: uppercase;
            letter-spacing: .045em;
            margin-bottom: .22rem;
        }

        .gadit-result-field span {
            display: block;
            overflow-wrap: anywhere;
            line-height: 1.35;
        }

        .gadit-empty,
        .gadit-error {
            margin-top: 1rem;
            border-radius: 1rem;
            padding: 1rem;
            font-family: Arial, Helvetica, sans-serif;
            background: rgba(255,248,231,.08);
            border: 1px solid rgba(214,173,87,.35);
            color: var(--gadit-cream);
        }

        .gadit-error {
            border-color: rgba(185,31,43,.75);
            box-shadow: inset .28rem 0 0 var(--gadit-red);
        }

        @media (max-width: 767.98px) {
            .gadit-search-page {
                padding: .65rem;
            }

            .gadit-search-card {
                border-radius: 1rem;
            }

            .gadit-search-form {
                grid-template-columns: 1fr;
            }

            .gadit-btn {
                width: 100%;
            }

            .gadit-result-grid {
                grid-template-columns: 1fr;
            }

            .gadit-title {
                font-size: 1.15rem;
                line-height: 1.25;
            }
        }

/* CSS spostato da verbali/atti_accertamento/index.php */
.gadit-save-notice{margin:.85rem 0 0!important;border-width:2px!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:900!important;letter-spacing:.015em!important;box-shadow:0 .8rem 1.8rem rgba(0,0,0,.35), inset .35rem 0 0 currentColor!important}.gadit-save-notice.gadit-status-success{background:linear-gradient(90deg,rgba(14,90,49,.95),rgba(5,4,3,.94))!important;color:#fff8e7!important;border-color:rgba(247,223,147,.75)!important}.gadit-save-notice.gadit-status-error{background:linear-gradient(90deg,rgba(185,31,43,.98),rgba(5,4,3,.96))!important;color:#fff8e7!important;border-color:rgba(247,223,147,.8)!important}.gadit-save-notice a{color:#fff4bd!important;text-decoration:underline!important}.pdf-editor-layout{width:min(100%,1700px);margin:0 auto;display:grid;grid-template-columns:minmax(320px,420px) 1fr;gap:1rem;align-items:start}.pdf-preview-card{position:sticky;top:1rem}.pdf-preview-box{height:640px;border-radius:1rem;overflow:hidden;border:1px solid rgba(214,173,87,.45);background:#fff8e7}.pdf-preview-box object,.pdf-preview-box iframe{width:100%;height:100%;display:block;border:0}.pdf-original-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:.75rem 0}.pdf-original-actions .gadit-nav-button{min-height:2.25rem;padding:.48rem .72rem;font-size:.72rem}.pdf-mobile-original{display:none}.pdf-mobile-original img{width:100%;height:auto;display:block;border-radius:1rem;border:1px solid rgba(214,173,87,.55);background:#fff;box-shadow:0 .8rem 1.6rem rgba(0,0,0,.28)}.pdf-mobile-note{margin:.65rem 0 0;color:#fff8e7;background:linear-gradient(90deg,rgba(14,90,49,.9),rgba(5,4,3,.92));border:1px solid rgba(247,223,147,.55);border-radius:.85rem;padding:.7rem;font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:.86rem}.editable-paper{font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.35}.doc-heading{text-align:center;text-transform:uppercase;font-family:Georgia,'Times New Roman',serif;font-weight:900;letter-spacing:.03em;color:#111}.doc-subheading{text-align:center;font-size:13px;line-height:1.35}.doc-title{text-align:center;font-family:Georgia,'Times New Roman',serif;font-size:24px;font-weight:900;margin:1rem 0 .8rem;text-decoration:underline}.doc-row{display:flex;gap:.45rem;align-items:flex-end;flex-wrap:wrap;margin:.45rem 0}.doc-row label{color:#1b1b1b!important;font-weight:700}.doc-input,.doc-textarea{border:0;border-bottom:1px solid #333;background:rgba(255,255,255,.55);padding:.12rem .25rem;color:#111;font:inherit;min-width:90px}.doc-input:focus,.doc-textarea:focus{outline:2px solid rgba(214,173,87,.45);border-radius:.2rem}.doc-input[readonly]{background:#eee8d8!important;color:#3b3327!important;cursor:not-allowed!important;font-weight:700}
.gadit-bn-visible{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .55rem;border:2px solid rgba(214,173,87,.75);border-radius:.55rem;background:#fff8e7;color:#120d04;font-weight:900;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.gadit-bn-visible input{width:210px!important;min-width:210px!important;border:0!important;border-bottom:2px solid #120d04!important;background:#fff!important;text-align:center;font-weight:900!important;letter-spacing:.04em}.gadit-bn-note{width:100%;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;color:#6c6250;margin-top:.15rem}
.doc-input.sm{width:72px}.doc-input.md{width:180px}.doc-input.lg{flex:1;min-width:260px}.doc-input[type="date"],.doc-input[type="time"]{min-height:2rem;border:1px solid #d8c79e;border-radius:.35rem;background:#fffdf7;padding:.2rem .35rem}.doc-input[type="time"].sm{width:115px}.doc-input[type="date"].md{width:170px}.city-help{width:100%;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;color:#6c6250;margin-top:.15rem}.doc-input.city-field{background:#fffdf7;border:1px solid #d8c79e;border-radius:.35rem;min-height:2rem}.doc-textarea{display:block;width:100%;min-height:220px;resize:vertical;border:1px solid #d8c79e;border-radius:.35rem;background:#fff;line-height:1.55}.checks-grid{display:grid;gap:.38rem;margin:.7rem 0}.checkline{display:flex;align-items:center;gap:.45rem;color:#111;font-weight:700}.checkline input{width:16px;height:16px}.sign-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem;text-align:center}.sign-box{border-top:1px solid #333;padding-top:.45rem;min-height:8.4rem}.signature-pad-wrap{border:1px solid #d8c79e;border-radius:.55rem;background:#fff;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.signature-pad{display:block;width:100%;height:135px;touch-action:none;cursor:crosshair;background:#fff}.signature-actions{display:flex;gap:.4rem;justify-content:center;flex-wrap:wrap;margin-top:.35rem}.signature-clear{min-height:2rem!important;padding:.3rem .65rem!important;border-radius:999px!important;font-size:.72rem!important}.signature-hint{display:block;color:#6c6250;font-size:.76rem;margin-top:.25rem;font-family:Arial,Helvetica,sans-serif}.toolbar{display:flex;gap:.55rem;flex-wrap:wrap;justify-content:center;margin:0 0 1rem}.toolbar button,.toolbar a{border:0}.status-line{margin:.75rem 0 0;color:var(--gadit-muted);font-family:Arial,Helvetica,sans-serif;font-size:.86rem}.gadit-pdf-saved-line{margin:.9rem 0 0!important;padding:.85rem 1rem!important;border:2px solid rgba(247,223,147,.9)!important;border-radius:1rem!important;background:linear-gradient(90deg,rgba(214,173,87,.96),rgba(14,90,49,.92))!important;color:#120d04!important;font-family:Arial,Helvetica,sans-serif!important;font-size:1rem!important;font-weight:900!important;box-shadow:0 .85rem 1.9rem rgba(0,0,0,.38), inset .32rem 0 0 #fff8e7!important}.gadit-pdf-saved-line a{display:inline-block;margin-left:.25rem;color:#050403!important;background:#fff8e7!important;border:1px solid rgba(5,4,3,.25)!important;border-radius:.65rem!important;padding:.22rem .48rem!important;text-decoration:none!important;word-break:break-all}.gadit-pdf-saved-line a:hover{background:#fff4bd!important;color:#050403!important}@media(max-width:1050px){.pdf-editor-layout{grid-template-columns:1fr}.pdf-preview-card{position:static}.pdf-preview-box{height:420px}}@media(max-width:767.98px){.pdf-preview-box{height:auto;min-height:0;background:transparent;border:0;overflow:visible}.pdf-preview-box object,.pdf-preview-box iframe{display:none}.pdf-mobile-original{display:block}.pdf-original-actions .gadit-nav-button{width:100%;justify-content:center}.pdf-preview-card .gadit-card-body{padding:1rem}}@media print{.pdf-preview-card,.toolbar,.gadit-card-header,.gadit-pdf-footer{display:none!important}.gadit-pdf-paper{box-shadow:none!important;border:0!important;width:100%!important}.gadit-pdf-body{padding:0!important}.doc-input,.doc-textarea{background:transparent}.pdf-editor-layout{display:block}.gadit-page-top{padding:0!important}}
        .verbale-locked .doc-input,.verbale-locked .doc-textarea{background:#f1ead8!important;color:#4a4031!important;cursor:not-allowed!important}.verbale-locked .signature-pad{pointer-events:none!important;cursor:not-allowed!important;background:#f7f0df!important}.gadit-locked-notice{margin:.85rem 0 0!important;border:2px solid rgba(247,223,147,.9)!important;border-radius:1rem!important;background:linear-gradient(90deg,rgba(185,31,43,.96),rgba(5,4,3,.94))!important;color:#fff8e7!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:900!important;padding:.85rem 1rem!important;box-shadow:0 .85rem 1.9rem rgba(0,0,0,.38), inset .32rem 0 0 var(--gadit-gold)!important}

/* === GADIT responsive review: CSS centralizzato generato === */
/* Le classi seguenti sostituiscono gli attributi style="..." rimossi dai PHP. */
.gadit-inline-001{margin:0; padding:0; background-color:#f4f4f4; font-family:Arial, Helvetica, sans-serif;}
.gadit-inline-002{background-color:#f4f4f4; padding:20px;}
.gadit-inline-003{background:#ffffff; border:1px solid #dddddd; border-radius:8px; overflow:hidden;}
.gadit-inline-004{background:#ffffff; padding:22px 20px 14px 20px;}
.gadit-inline-005{display:block; max-width:120px; height:auto; border:0;}
.gadit-inline-006{background:#d6ad57; padding:16px 20px; text-align:center; color:#000000; font-size:18px; font-weight:bold;}
.gadit-inline-007{padding:30px; color:#333333; font-size:14px; line-height:1.6;}
.gadit-inline-008{margin-top:0;}
.gadit-inline-009{margin:24px auto;}
.gadit-inline-010{border-radius:5px;}
.gadit-inline-011{display:inline-block; padding:13px 28px; font-size:14px; color:#000000; text-decoration:none; font-weight:bold;}
.gadit-inline-012{word-break:break-all; color:#0e5a31;}
.gadit-inline-013{color:#0e5a31;}
.gadit-inline-014{margin-bottom:0;}
.gadit-inline-015{background:#f0f0f0; padding:16px 20px; text-align:center; font-size:12px; color:#777777; line-height:1.5;}
.gadit-inline-016{background: transparent;}
.gadit-inline-017{min-height: 100vh; width: 100%; justify-content: center;}
.gadit-inline-018{margin-left:auto;margin-right:auto;}
.gadit-inline-019{margin-bottom: .8rem; display: none;}
.gadit-inline-020{font-size:25px; color:blue}
.gadit-inline-021{text-align:center}
.gadit-inline-022{position:relative; top:7px;}
.gadit-inline-023{height:10px;}
.gadit-inline-024{width: 100%}
.gadit-inline-025{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.45rem!important;min-height:42px!important;padding:10px 16px!important;border-radius:999px!important;border:1px solid #f7df93!important;background:linear-gradient(180deg,#f7df93,#d6ad57)!important;color:#120d04!important;font-family:Arial,Helvetica,sans-serif!important;font-size:13px!important;font-weight:900!important;letter-spacing:.05em!important;text-transform:uppercase!important;text-decoration:none!important;line-height:1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 18px rgba(0,0,0,.35),0 0 18px rgba(214,173,87,.18)!important;white-space:nowrap!important;cursor:pointer!important;}
.gadit-inline-026{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.45rem!important;min-height:42px!important;padding:10px 16px!important;border-radius:999px!important;border:1px solid #f7df93!important;background:linear-gradient(180deg,#f7df93,#0e5a31)!important;color:#fff8e7!important;font-family:Arial,Helvetica,sans-serif!important;font-size:13px!important;font-weight:900!important;letter-spacing:.05em!important;text-transform:uppercase!important;text-decoration:none!important;line-height:1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 18px rgba(0,0,0,.35),0 0 18px rgba(214,173,87,.18)!important;white-space:nowrap!important;cursor:pointer!important;}
.gadit-inline-027{display:inline-block!important;font-size:1rem!important;line-height:1!important;}
.gadit-inline-028{width:min(1180px,calc(100vw - 1rem))!important;max-width:min(1180px,calc(100vw - 1rem))!important;margin:.5rem auto!important;}
.gadit-inline-029{position:relative;overflow:hidden;border:1px solid rgba(214,173,87,.68);border-radius:1.35rem;background:radial-gradient(circle at 50% 0%,rgba(247,223,147,.18),transparent 18rem),linear-gradient(180deg,rgba(18,17,14,.99),rgba(5,4,3,1));color:#fff8e7;box-shadow:0 1.6rem 4rem rgba(0,0,0,.72),0 0 0 .28rem rgba(214,173,87,.10),inset 0 1px 0 rgba(255,255,255,.12);height:calc(100dvh - 1rem);max-height:calc(100dvh - 1rem);display:flex;flex-direction:column;}
.gadit-inline-030{height:.36rem;background:linear-gradient(90deg,#0e5a31 0 33.333%,#fff 33.333% 66.666%,#b91f2b 66.666% 100%);flex:0 0 auto;}
.gadit-inline-031{position:relative;justify-content:center;text-align:center;padding:1.05rem 4rem 1rem 1rem;border-color:rgba(214,173,87,.38);background:rgba(255,248,231,.05);flex:0 0 auto;}
.gadit-inline-032{color:#f7df93;font-family:Georgia,'Times New Roman',serif;font-weight:900;text-transform:uppercase;letter-spacing:.045em;text-shadow:0 2px 0 rgba(0,0,0,.55);font-size:clamp(1rem,2.2vw,1.35rem);}
.gadit-inline-033{display:flex;height:.28rem;border-radius:999px;overflow:hidden;margin:.65rem auto 0;max-width:18rem;box-shadow:0 .35rem 1rem rgba(0,0,0,.25);}
.gadit-inline-034{flex:1;background:#0e5a31;}
.gadit-inline-035{flex:1;background:#fff;}
.gadit-inline-036{flex:1;background:#b91f2b;}
.gadit-inline-037{position:absolute;top:.72rem;right:.8rem;z-index:50;width:2.45rem;height:2.45rem;min-width:2.45rem;min-height:2.45rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:999px;border:1px solid rgba(214,173,87,.76);background:radial-gradient(circle at 35% 25%,#f7df93,#d6ad57 58%,#7d5220);color:#120d04;font-family:Arial,Helvetica,sans-serif;font-size:1.45rem;font-weight:900;line-height:1;box-shadow:0 .45rem 1rem rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.4);opacity:1;cursor:pointer;}
.gadit-inline-038{display:block;transform:translateY(-1px);}
.gadit-inline-039{flex:1 1 auto;min-height:0;overflow:auto;background:#fff8e7;}
.gadit-inline-040{display:block;width:100%;height:2300px;min-height:2300px;border:0;background:#fff8e7;overflow:hidden;}
.gadit-inline-041{max-width:min(920px,calc(100vw - 1rem));}
.gadit-inline-042{flex:1 1 auto;min-height:0;overflow-y:auto;padding:1rem;background:transparent;color:#fff8e7;font-family:Arial,Helvetica,sans-serif;}
.gadit-inline-043{padding-left:.25rem;padding-right:.25rem;}
.gadit-inline-044{margin:0 0 1rem;padding:1rem;border:1px solid rgba(214,173,87,.38);border-radius:1rem;background:rgba(255,248,231,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.gadit-inline-045{margin:0 0 .85rem;color:#f7df93;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.9rem;border-left:.28rem solid #d6ad57;padding-left:.7rem;}
.gadit-inline-046{row-gap:.45rem;margin-bottom:.82rem;}
.gadit-inline-047{display:block;margin-bottom:.35rem;color:#f7df93;font-weight:900;letter-spacing:.025em;}
.gadit-inline-048{width:100%;min-height:2.85rem;border-radius:.9rem;border:1px solid rgba(214,173,87,.55);background:rgba(255,248,231,.96);color:#1f1608;box-shadow:inset 0 1px 0 rgba(255,255,255,.45);}
.gadit-inline-049{gap:.6rem;justify-content:flex-end;flex-wrap:wrap;padding:.85rem 1rem;border-color:rgba(214,173,87,.38);background:rgba(255,248,231,.05);flex:0 0 auto;}
.gadit-inline-050{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.75rem;padding:.62rem 1.05rem;border-radius:999px;border:1px solid rgba(214,173,87,.46);font-family:Arial,Helvetica,sans-serif;font-size:.82rem;font-weight:900;line-height:1.1;text-transform:uppercase;letter-spacing:.045em;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 .55rem 1.15rem rgba(0,0,0,.28);background:linear-gradient(180deg,rgba(247,223,147,.18),rgba(59,51,39,.96));color:#fff8e7;}
.gadit-inline-051{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.75rem;padding:.62rem 1.05rem;border-radius:999px;border:1px solid #d6ad57;font-family:Arial,Helvetica,sans-serif;font-size:.82rem;font-weight:900;line-height:1.1;text-transform:uppercase;letter-spacing:.045em;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 .55rem 1.15rem rgba(0,0,0,.28);background:linear-gradient(180deg,#f7df93,#d6ad57);color:#120d04;}
.gadit-inline-052{max-width:min(1180px,calc(100vw - 1rem));}
.gadit-inline-053{position:relative;overflow:hidden;border:1px solid rgba(214,173,87,.68);border-radius:1.35rem;background:radial-gradient(circle at 50% 0%,rgba(247,223,147,.18),transparent 18rem),linear-gradient(180deg,rgba(18,17,14,.99),rgba(5,4,3,1));color:#fff8e7;box-shadow:0 1.6rem 4rem rgba(0,0,0,.72),0 0 0 .28rem rgba(214,173,87,.10),inset 0 1px 0 rgba(255,255,255,.12);max-height:calc(100dvh - 1.5rem);display:flex;flex-direction:column;}
.gadit-inline-054{margin-top:.65rem;color:#cbbf9c;font-family:Arial,Helvetica,sans-serif;font-size:.82rem;line-height:1.3;}
.gadit-inline-055{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;align-items:start;}
.gadit-inline-056{grid-column:1/-1;border-radius:1rem;padding:1rem;border:1px solid rgba(214,173,87,.35);background:rgba(255,248,231,.06);color:#fff8e7;text-align:center;font-weight:800;}
.gadit-inline-057{display:flex;flex-direction:column;gap:.75rem;align-items:center;justify-content:space-between;min-height:190px;padding:.85rem;border:1px solid rgba(214,173,87,.42);border-radius:1rem;background:linear-gradient(180deg,rgba(255,248,231,.10),rgba(255,248,231,.045));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 .75rem 1.4rem rgba(0,0,0,.24);}
.gadit-inline-058{width:100%;max-width:150px;height:115px;object-fit:cover;border-radius:.85rem;border:1px solid rgba(214,173,87,.58);background:#fff8e7;box-shadow:0 .6rem 1.2rem rgba(0,0,0,.35);cursor:zoom-in;transition:transform .15s ease,box-shadow .15s ease;}
.gadit-inline-059{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:2.55rem;padding:.58rem .9rem;border-radius:999px;border:1px solid rgba(247,223,147,.72);font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em;line-height:1.1;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 .5rem 1rem rgba(0,0,0,.28);background:linear-gradient(180deg,rgba(247,223,147,.82),rgba(185,31,43,.96));color:#fff8e7;}
.gadit-inline-060{margin:0;padding:1rem;border:1px solid rgba(214,173,87,.38);border-radius:1rem;background:rgba(255,248,231,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.gadit-inline-061{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:stretch;}
.gadit-inline-062{min-width:0;border:1px solid rgba(214,173,87,.38);border-radius:1.15rem;background:rgba(255,248,231,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 .8rem 1.8rem rgba(0,0,0,.22);overflow:hidden;}
.gadit-inline-063{padding:.85rem 1rem;border-bottom:1px solid rgba(214,173,87,.28);background:linear-gradient(180deg,rgba(255,248,231,.08),rgba(5,4,3,.25));color:#f7df93;font-family:Arial,Helvetica,sans-serif;font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;}
.gadit-inline-064{padding:1rem;}
.gadit-inline-065{display:flex;justify-content:center;gap:.65rem;flex-wrap:wrap;margin-top:1rem;}
.gadit-inline-066{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.45rem;min-height:2.75rem;padding:.68rem 1.05rem!important;border-radius:999px!important;border:1px solid rgba(247,223,147,.76)!important;font-family:Arial,Helvetica,sans-serif!important;font-size:.84rem!important;font-weight:900!important;letter-spacing:.055em!important;text-transform:uppercase!important;line-height:1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 .55rem 1.15rem rgba(0,0,0,.30)!important;background:linear-gradient(180deg,rgba(247,223,147,.92),rgba(14,90,49,.96))!important;color:#fff8e7!important;cursor:pointer;}
.gadit-inline-067{margin-top:.75rem;color:#cbbf9c;font-family:Arial,Helvetica,sans-serif;font-size:.82rem;line-height:1.3;}
.gadit-inline-068{max-width:100%;height:auto;border-radius:.85rem;border:1px solid rgba(214,173,87,.55);box-shadow:0 .65rem 1.25rem rgba(0,0,0,.30);}
.gadit-inline-069{width:70px;height:70px;}
.gadit-inline-070{display:none}
.gadit-inline-071{display:block}
.gadit-inline-072{background:rgba(14,90,49,.18);color:#0e5a31;font-weight:800;}
.gadit-inline-073{background:rgba(185,31,43,.18);color:#8b111c;font-weight:800;}
.gadit-inline-074{background:linear-gradient(180deg,#e55361,#b91f2b)!important;border-color:#e55361!important;color:#fff8e7!important;}
.gadit-inline-075{background:linear-gradient(180deg,#2abf6f,#0e5a31)!important;border-color:#2abf6f!important;color:#fff8e7!important;}
.gadit-inline-076{width:min(1040px, calc(100vw - 1.25rem)) !important; max-width:min(1040px, calc(100vw - 1.25rem)) !important; height:calc(100vh - .75rem) !important; height:calc(100dvh - .75rem) !important; min-height:calc(100vh - .75rem) !important; min-height:calc(100dvh - .75rem) !important; max-height:calc(100vh - .75rem) !important; max-height:calc(100dvh - .75rem) !important; margin:.375rem auto !important; display:flex !important; align-items:stretch !important;}
.gadit-inline-077{flex:1 1 auto !important; min-height:0 !important; overflow:hidden !important;}
.gadit-inline-078{padding:0; overflow:hidden;}
.gadit-inline-079{display:block;width:100%;min-width:100%;height:auto;min-height:360px;border:0;overflow:hidden;}
.gadit-inline-080{margin:.2rem 0 .4rem}
.gadit-inline-081{color:#111;padding:1rem}
.gadit-inline-082{justify-content:space-between}
.gadit-inline-083{min-width:260px; height:auto; vertical-align:middle}
.gadit-inline-084{flex-basis:100%}

/* Revisione generale visualizzazione PC/mobile da CSS centralizzato */
html{
    width:100%;
    min-height:100%;
    -webkit-text-size-adjust:100%;
}
body.gadit-responsive-page{
    min-width:0;
    overflow-x:hidden;
}
.gadit-responsive-page img,
.gadit-theme img{
    max-width:100%;
    height:auto;
}
.gadit-responsive-page table{
    max-width:100%;
}
.gadit-responsive-page .container,
.gadit-responsive-page .container-fluid{
    max-width:100%;
}
.gadit-responsive-page .row{
    min-width:0;
}
.gadit-responsive-page input,
.gadit-responsive-page select,
.gadit-responsive-page textarea,
.gadit-responsive-page button{
    max-width:100%;
}
.gadit-responsive-page textarea{
    resize:vertical;
}
.gadit-responsive-page .table-responsive,
.gadit-responsive-page .dataTables_wrapper,
.gadit-responsive-page .dt-container{
    width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
}
.gadit-responsive-page .modal-dialog{
    max-width:min(96vw, 1100px);
    margin-left:auto;
    margin-right:auto;
}
.gadit-responsive-page .modal-content{
    max-height:calc(100vh - 1rem);
}
.gadit-responsive-page .modal-body{
    overflow-x:hidden;
}
.gadit-responsive-page .gadit-card,
.gadit-responsive-page .gadit-panel,
.gadit-responsive-page .gadit-shell,
.gadit-responsive-page .gadit-content{
    max-width:100%;
}
.gadit-responsive-page .gadit-row-actions,
.gadit-responsive-page .gadit-actions,
.gadit-responsive-page .btn-toolbar{
    flex-wrap:wrap;
}

@media (max-width: 991.98px){
    .gadit-responsive-page{
        font-size:15px;
    }
    .gadit-responsive-page .container,
    .gadit-responsive-page .container-fluid{
        padding-left:.85rem;
        padding-right:.85rem;
    }
    .gadit-responsive-page .row{
        row-gap:.75rem;
    }
    .gadit-responsive-page .modal-dialog{
        width:calc(100vw - 1rem);
        margin:.5rem auto;
    }
    .gadit-responsive-page .modal-header,
    .gadit-responsive-page .modal-body,
    .gadit-responsive-page .modal-footer{
        padding-left:.85rem;
        padding-right:.85rem;
    }
    .gadit-responsive-page .gadit-title,
    .gadit-responsive-page h1{
        font-size:clamp(1.35rem, 6vw, 2rem);
    }
    .gadit-responsive-page h2{
        font-size:clamp(1.2rem, 5vw, 1.65rem);
    }
    .gadit-responsive-page .btn,
    .gadit-responsive-page .gadit-real-button,
    .gadit-responsive-page .gadit-action-btn{
        white-space:normal;
    }
}

@media (max-width: 575.98px){
    .gadit-responsive-page{
        font-size:14px;
    }
    .gadit-responsive-page .gadit-page,
    .gadit-responsive-page .gadit-page-top{
        padding:.75rem;
    }
    .gadit-responsive-page .gadit-card-body{
        padding:1rem;
    }
    .gadit-responsive-page .form-control,
    .gadit-responsive-page .form-select,
    .gadit-responsive-page .btn{
        min-height:42px;
    }
    .gadit-responsive-page .row>[class*="col-"]{
        min-width:0;
    }
    .gadit-responsive-page .table-responsive table,
    .gadit-responsive-page .dataTable{
        font-size:.875rem;
    }
    .gadit-responsive-page .gadit-row-actions,
    .gadit-responsive-page .gadit-actions{
        gap:.45rem;
    }
    .gadit-responsive-page .gadit-row-actions > *,
    .gadit-responsive-page .gadit-actions > *{
        flex:1 1 auto;
    }
}
.gadit-inline-085{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.42rem!important;min-height:38px!important;padding:9px 13px!important;border-radius:999px!important;border:1px solid rgba(247,223,147,.82)!important;font-family:Arial,Helvetica,sans-serif!important;font-size:12px!important;font-weight:900!important;letter-spacing:.045em!important;text-transform:uppercase!important;text-decoration:none!important;line-height:1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 7px 15px rgba(0,0,0,.32),0 0 14px rgba(214,173,87,.14)!important;white-space:nowrap!important;cursor:pointer!important;background:linear-gradient(180deg,rgba(247,223,147,.95),rgba(14,90,49,.98))!important;color:#fff8e7!important;}
.gadit-inline-086{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.42rem!important;min-height:38px!important;padding:9px 13px!important;border-radius:999px!important;border:1px solid rgba(247,223,147,.82)!important;font-family:Arial,Helvetica,sans-serif!important;font-size:12px!important;font-weight:900!important;letter-spacing:.045em!important;text-transform:uppercase!important;text-decoration:none!important;line-height:1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 7px 15px rgba(0,0,0,.32),0 0 14px rgba(214,173,87,.14)!important;white-space:nowrap!important;cursor:pointer!important;background:linear-gradient(180deg,#f7df93,#d6ad57)!important;color:#120d04!important;}
.gadit-inline-087{width:100%;min-height:260px;display:flex;align-items:center;justify-content:center;border-radius:1rem;border:1px dashed rgba(214,173,87,.45);background:#fff8e7;color:#1f1608;overflow:hidden;}
.gadit-inline-088{appearance:none;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.45rem;min-height:2.75rem;padding:.68rem 1.05rem!important;border-radius:999px!important;border:1px solid #f7df93!important;font-family:Arial,Helvetica,sans-serif!important;font-size:.84rem!important;font-weight:900!important;letter-spacing:.055em!important;text-transform:uppercase!important;line-height:1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 .55rem 1.15rem rgba(0,0,0,.30)!important;background:linear-gradient(180deg,#f7df93,#d6ad57)!important;color:#120d04!important;cursor:pointer;}
.gadit-inline-089{width:100%;min-height:260px;display:flex;align-items:center;justify-content:center;border-radius:1rem;border:1px dashed rgba(214,173,87,.45);background:#fff8e7;color:#1f1608;text-align:center;font-weight:800;overflow:hidden;padding:.75rem;}
.gadit-inline-090{position:static;width:100%;height:100%;min-height:100%;display:block;border:0;}
.gadit-inline-091{border:0;margin:0;padding:0;min-width:0}


/* =========================================================
   GADIT - NORMALIZZAZIONE MODALI BOOTSTRAP
   Controllo ampio dopo confronto PHP/CSS:
   - i popup vengono generati dai PHP e spostati nel body
   - il backdrop deve stare SEMPRE sotto la finestra
   - il contenuto della modal deve restare cliccabile e opaco
   - nessun elemento decorativo deve intercettare i click
========================================================= */
:root{
    --gadit-modal-z: 100060;
    --gadit-modal-dialog-z: 100070;
    --gadit-backdrop-z: 100040;
}

body.modal-open{
    overflow: hidden !important;
    padding-right: 0 !important;
}

body.modal-open > .modal,
body.modal-open > .modal.gadit-action-modal,
body.gadit-theme.modal-open > .modal,
body.gadit-theme.modal-open > .modal.gadit-action-modal,
.modal.show,
.modal.gadit-action-modal.show{
    --bs-modal-zindex: var(--gadit-modal-z) !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: var(--gadit-modal-z) !important;
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    transform: none !important;
    pointer-events: auto !important;
}

body.modal-open > .modal.show,
body.modal-open > .modal.gadit-action-modal.show,
.modal.show{
    display: block !important;
}

body.modal-open > .modal .modal-dialog,
body.modal-open > .modal.gadit-action-modal .modal-dialog,
.modal.show .modal-dialog,
.modal.gadit-action-modal.show .modal-dialog{
    position: relative !important;
    z-index: var(--gadit-modal-dialog-z) !important;
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    transform: none !important;
    pointer-events: auto !important;
}

body.modal-open > .modal .modal-content,
body.modal-open > .modal .modal-header,
body.modal-open > .modal .modal-body,
body.modal-open > .modal .modal-footer,
body.modal-open > .modal button,
body.modal-open > .modal a,
body.modal-open > .modal input,
body.modal-open > .modal select,
body.modal-open > .modal textarea,
body.modal-open > .modal iframe,
.modal.show .modal-content,
.modal.show .modal-header,
.modal.show .modal-body,
.modal.show .modal-footer,
.modal.show button,
.modal.show a,
.modal.show input,
.modal.show select,
.modal.show textarea,
.modal.show iframe{
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    pointer-events: auto !important;
}

body.modal-open > .modal .modal-content,
.modal.show .modal-content{
    position: relative !important;
    z-index: var(--gadit-modal-dialog-z) !important;
}

.modal-backdrop,
.modal-backdrop.show,
body.modal-open .modal-backdrop,
body.modal-open .modal-backdrop.show{
    --bs-backdrop-zindex: var(--gadit-backdrop-z) !important;
    z-index: var(--gadit-backdrop-z) !important;
    pointer-events: auto !important;
}

body.modal-open > .modal-backdrop + .modal-backdrop,
body.modal-open .modal-backdrop.show + .modal-backdrop.show{
    z-index: calc(var(--gadit-backdrop-z) - 1) !important;
}

body.modal-open > .modal .gadit-modal-x,
body.modal-open > .modal .btn-close,
body.modal-open > .modal .close,
.modal.show .gadit-modal-x,
.modal.show .btn-close,
.modal.show .close{
    z-index: calc(var(--gadit-modal-dialog-z) + 10) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* Le bande/decorazioni delle modal restano visive, ma non bloccano X, campi e pulsanti. */
.modal .gadit-modal-content::before,
.modal .gadit-edit-modal-form::before,
.modal .gadit-inline-030,
.modal .gadit-tricolore,
.modal .gadit-modal-bar{
    pointer-events: none !important;
}

/* Select2 dentro modal: menu sopra la finestra, non sopra il backdrop soltanto. */
body.modal-open .select2-container,
body.modal-open .select2-dropdown,
body.modal-open .select2-container--open{
    z-index: calc(var(--gadit-modal-dialog-z) + 20) !important;
}

@media (max-width: 575.98px){
    body.modal-open > .modal .modal-dialog,
    .modal.show .modal-dialog{
        width: calc(100vw - .75rem) !important;
        max-width: calc(100vw - .75rem) !important;
        margin: .375rem auto !important;
    }
    body.modal-open > .modal .modal-content,
    .modal.show .modal-content{
        max-height: calc(100dvh - .75rem) !important;
    }
}

/* GADIT BOOTSTRAP 5.3.8 RIGOROUS MODAL PATCH
   Normalizza tutte le modali dopo la migrazione Bootstrap 5.
   Obiettivo: niente backdrop sopra la modal, niente testo sbiadito, X/pulsanti/input sempre cliccabili. */
:root{
    --bs-modal-zindex: 1055;
    --bs-backdrop-zindex: 1050;
}
html body.modal-open{ overflow: hidden !important; }
html body > .modal{
    z-index: 1055 !important;
    pointer-events: none !important;
    opacity: 1 !important;
}
html body > .modal.show,
html body > .modal[style*="display: block"]{
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}
html body > .modal .modal-dialog{
    position: relative !important;
    z-index: 1060 !important;
    pointer-events: auto !important;
}
html body > .modal .modal-content,
html body > .modal form.modal-content,
html body > .modal .modal-header,
html body > .modal .modal-body,
html body > .modal .modal-footer{
    pointer-events: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
}
html body > .modal-backdrop,
html body > .modal-backdrop.show{
    z-index: 1050 !important;
    opacity: .5 !important;
    pointer-events: none !important;
}
html body > .modal + .modal-backdrop{ z-index: 1050 !important; }
html body > .modal button,
html body > .modal a,
html body > .modal input,
html body > .modal select,
html body > .modal textarea,
html body > .modal label,
html body > .modal [role="button"]{
    pointer-events: auto !important;
}
html body > .modal .close,
html body > .modal .btn-close,
html body > .modal .gadit-modal-x{
    opacity: 1 !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}
html body > .modal .close{
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font-size: 1.75rem !important;
    line-height: 1 !important;
}
.gadit-theme .modal.gadit-action-modal.fade:not(.show){ opacity: 0 !important; }
.gadit-theme .modal.gadit-action-modal.show{ opacity: 1 !important; }
.gadit-theme .modal.gadit-action-modal .modal-dialog{ transform: none; }
@media (max-width: 767.98px){
    html body > .modal .modal-dialog{
        width: calc(100vw - .5rem) !important;
        max-width: calc(100vw - .5rem) !important;
        margin: .25rem auto !important;
    }
    html body > .modal .modal-content,
    html body > .modal form.modal-content{
        max-height: calc(100dvh - .5rem) !important;
    }
}
/* END GADIT BOOTSTRAP 5.3.8 RIGOROUS MODAL PATCH */


/* GADIT ALERT CLOSE BS5 PATCH */
.btn-close-gadit.close{ cursor:pointer!important; opacity:1!important; text-decoration:none!important; }

/* =========================================================
   FIX GADIT - MODALI NON SBIADITE / OPACITÀ PIENA
   Dopo la migrazione Bootstrap 5 alcuni popup vengono aperti
   ancora con display:block prima/senza la classe .show: questa
   patch finale prevale sulle vecchie regole .fade:not(.show),
   mantiene il backdrop sotto la finestra e rende il contenuto
   completamente opaco, senza modificare la logica PHP.
========================================================= */
:root{
    --gadit-modal-z-final: 2147483000;
    --gadit-modal-dialog-z-final: 2147483010;
    --gadit-backdrop-z-final: 2147482990;
}

html body.modal-open > .modal,
html body.gadit-theme.modal-open > .modal,
html body > .modal.show,
html body.gadit-theme > .modal.show,
html body > .modal[style*="display: block"],
html body.gadit-theme > .modal[style*="display: block"],
html body > .modal.fade[style*="display: block"],
html body.gadit-theme > .modal.fade[style*="display: block"],
html body > .modal.gadit-action-modal.fade[style*="display: block"],
html body.gadit-theme > .modal.gadit-action-modal.fade[style*="display: block"]{
    display: block !important;
    z-index: var(--gadit-modal-z-final) !important;
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    -webkit-filter: none !important;
    mix-blend-mode: normal !important;
    pointer-events: auto !important;
}

html body.modal-open > .modal .modal-dialog,
html body.modal-open > .modal .modal-content,
html body.modal-open > .modal form.modal-content,
html body > .modal.show .modal-dialog,
html body > .modal.show .modal-content,
html body > .modal.show form.modal-content,
html body > .modal[style*="display: block"] .modal-dialog,
html body > .modal[style*="display: block"] .modal-content,
html body > .modal[style*="display: block"] form.modal-content{
    z-index: var(--gadit-modal-dialog-z-final) !important;
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    -webkit-filter: none !important;
    mix-blend-mode: normal !important;
    pointer-events: auto !important;
}

html body.modal-open > .modal .modal-header,
html body.modal-open > .modal .modal-body,
html body.modal-open > .modal .modal-footer,
html body.modal-open > .modal .modal-title,
html body.modal-open > .modal .form-control,
html body.modal-open > .modal .form-select,
html body.modal-open > .modal textarea,
html body.modal-open > .modal select,
html body.modal-open > .modal input,
html body.modal-open > .modal button,
html body.modal-open > .modal a,
html body.modal-open > .modal label,
html body.modal-open > .modal iframe,
html body > .modal.show .modal-header,
html body > .modal.show .modal-body,
html body > .modal.show .modal-footer,
html body > .modal.show .modal-title,
html body > .modal.show .form-control,
html body > .modal.show .form-select,
html body > .modal.show textarea,
html body > .modal.show select,
html body > .modal.show input,
html body > .modal.show button,
html body > .modal.show a,
html body > .modal.show label,
html body > .modal.show iframe,
html body > .modal[style*="display: block"] .modal-header,
html body > .modal[style*="display: block"] .modal-body,
html body > .modal[style*="display: block"] .modal-footer,
html body > .modal[style*="display: block"] .modal-title,
html body > .modal[style*="display: block"] .form-control,
html body > .modal[style*="display: block"] .form-select,
html body > .modal[style*="display: block"] textarea,
html body > .modal[style*="display: block"] select,
html body > .modal[style*="display: block"] input,
html body > .modal[style*="display: block"] button,
html body > .modal[style*="display: block"] a,
html body > .modal[style*="display: block"] label,
html body > .modal[style*="display: block"] iframe{
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    -webkit-filter: none !important;
    mix-blend-mode: normal !important;
}

/* Il fondale rimane visibile ma molto leggero e SEMPRE sotto la modal. */
html body .modal-backdrop,
html body .modal-backdrop.show,
html body.modal-open .modal-backdrop,
html body.modal-open .modal-backdrop.show,
html body.gadit-theme.modal-open .modal-backdrop,
html body.gadit-theme.modal-open .modal-backdrop.show{
    z-index: var(--gadit-backdrop-z-final) !important;
    opacity: .22 !important;
    filter: none !important;
    -webkit-filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    pointer-events: none !important;
}

/* Se una vecchia regola lascia la modal in fade senza .show ma visibile via JS,
   questa riga impedisce l'effetto trasparente/sbiadito. */
html body.gadit-theme .modal.fade[style*="display: block"]:not(.show),
html body.gadit-theme .modal.gadit-action-modal.fade[style*="display: block"]:not(.show){
    opacity: 1 !important;
}


/* =========================================================
   GADIT FIX BACKDROP NON SBIADITO - Modal non full-screen
   Il problema segnalato era il fondale Bootstrap che veniva
   applicato sopra/attorno alle modal cittadino: la pagina intera
   appariva slavata. Manteniamo la modal cliccabile e togliamo
   l'effetto grigio per tutte le modal GADIT, lasciando invariata
   la modal full-screen Nuovo Verbale.
========================================================= */
body.gadit-modal-clean-backdrop .modal-backdrop,
body.gadit-modal-clean-backdrop .modal-backdrop.show,
html body.gadit-modal-clean-backdrop.modal-open .modal-backdrop,
html body.gadit-modal-clean-backdrop.modal-open .modal-backdrop.show{
    opacity: 0 !important;
    background: transparent !important;
    filter: none !important;
    -webkit-filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    pointer-events: none !important;
}
body.gadit-modal-clean-backdrop > .modal.show,
body.gadit-modal-clean-backdrop > .modal[style*="display: block"]{
    opacity: 1 !important;
    filter: none !important;
    -webkit-filter: none !important;
    mix-blend-mode: normal !important;
}
body.gadit-modal-clean-backdrop > .modal.show .modal-dialog,
body.gadit-modal-clean-backdrop > .modal.show .modal-content,
body.gadit-modal-clean-backdrop > .modal[style*="display: block"] .modal-dialog,
body.gadit-modal-clean-backdrop > .modal[style*="display: block"] .modal-content{
    opacity: 1 !important;
    filter: none !important;
    -webkit-filter: none !important;
    mix-blend-mode: normal !important;
}
body.gadit-modal-clean-backdrop .gadit-management-shell,
body.gadit-modal-clean-backdrop .container-fluid,
body.gadit-modal-clean-backdrop .gadit-table-panel{
    opacity: 1 !important;
    filter: none !important;
    -webkit-filter: none !important;
}

/* =========================================================
   FIX O.D.S. - Modal "Aggiungimi O.D.S." leggibile
   La pagina registrazione_ods.php è caricata in iframe: tutto lo stile
   deve arrivare da gadit-style.css, senza <style> nei PHP.
========================================================= */
html body.gadit-theme.gadit-ods-registration-embed {
    color: var(--gadit-cream, #fff8e7) !important;
    background: transparent !important;
    font-family: Arial, Helvetica, sans-serif !important;
}
html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-registration-page {
    min-height: 100vh !important;
    min-height: 100dvh !important;
    padding: clamp(.65rem, 2vw, 1.15rem) !important;
    align-items: flex-start !important;
}
html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-form-card {
    background: linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.99)) !important;
    border: 1px solid rgba(214,173,87,.46) !important;
    box-shadow: 0 1rem 2.4rem rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.07) !important;
    color: var(--gadit-cream, #fff8e7) !important;
}
html body.gadit-theme.gadit-ods-registration-embed .gadit-card-header,
html body.gadit-theme.gadit-ods-registration-embed .gadit-card-body,
html body.gadit-theme.gadit-ods-registration-embed .gadit-form-section,
html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-field {
    color: var(--gadit-cream, #fff8e7) !important;
}
html body.gadit-theme.gadit-ods-registration-embed .gadit-title,
html body.gadit-theme.gadit-ods-registration-embed .gadit-section-title,
html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-field-label {
    color: var(--gadit-gold-light, #f7df93) !important;
    text-shadow: 0 .08rem .16rem rgba(0,0,0,.45) !important;
}
html body.gadit-theme.gadit-ods-registration-embed .gadit-muted,
html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-field-help,
html body.gadit-theme.gadit-ods-registration-embed .gadit-char-count {
    color: rgba(255,248,231,.82) !important;
}
html body.gadit-theme.gadit-ods-registration-embed .form-control,
html body.gadit-theme.gadit-ods-registration-embed .form-select,
html body.gadit-theme.gadit-ods-registration-embed textarea.form-control {
    background: #fff8e7 !important;
    color: #120d04 !important;
    border: 1px solid rgba(214,173,87,.72) !important;
    border-radius: .9rem !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.6) !important;
    min-height: 2.75rem !important;
    font-weight: 700 !important;
}
html body.gadit-theme.gadit-ods-registration-embed textarea.form-control {
    min-height: 7rem !important;
    resize: vertical !important;
}
html body.gadit-theme.gadit-ods-registration-embed .form-control:focus,
html body.gadit-theme.gadit-ods-registration-embed .form-select:focus {
    border-color: var(--gadit-gold-light, #f7df93) !important;
    box-shadow: 0 0 0 .22rem rgba(214,173,87,.28), inset 0 1px 0 rgba(255,255,255,.65) !important;
}
html body.gadit-theme.gadit-ods-registration-embed .form-control:disabled,
html body.gadit-theme.gadit-ods-registration-embed .form-select:disabled {
    background: rgba(255,248,231,.78) !important;
    color: #3b2b12 !important;
    opacity: 1 !important;
}
html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-actions {
    display: flex !important;
    justify-content: flex-end !important;
    gap: .75rem !important;
    flex-wrap: wrap !important;
    padding-top: .35rem !important;
}
html body.gadit-theme.gadit-ods-registration-embed .btn,
html body.gadit-theme.gadit-ods-registration-embed input[type="submit"],
html body.gadit-theme.gadit-ods-registration-embed input[type="reset"] {
    min-height: 2.75rem !important;
    border-radius: 999px !important;
    padding: .65rem 1.15rem !important;
    font-weight: 900 !important;
}
html body.gadit-theme.gadit-ods-registration-embed .gadit-btn,
html body.gadit-theme.gadit-ods-registration-embed input[type="submit"] {
    background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57)) !important;
    border-color: var(--gadit-gold, #d6ad57) !important;
    color: #120d04 !important;
}
html body.gadit-theme.gadit-ods-registration-embed .gadit-btn-dark,
html body.gadit-theme.gadit-ods-registration-embed input[type="reset"] {
    background: linear-gradient(180deg, #3b3327, #17120a) !important;
    border-color: rgba(247,223,147,.42) !important;
    color: #fff8e7 !important;
}
@media (max-width: 767.98px) {
    html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-info-grid,
    html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-input-grid {
        grid-template-columns: 1fr !important;
    }
    html body.gadit-theme.gadit-ods-registration-embed .gadit-card-body {
        padding: .9rem !important;
    }
    html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-actions .btn,
    html body.gadit-theme.gadit-ods-registration-embed .gadit-ods-actions input {
        width: 100% !important;
    }
}

/* =========================
   Patch responsive globale 2026-05
   Obiettivo: mantenere lo stile GADIT, evitare overflow su mobile/tablet
   e conservare le proporzioni dei pulsanti senza alterare la logica PHP.
========================= */

*,
*::before,
*::after{
    box-sizing: border-box;
}

html{
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
}

body.gadit-theme{
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

.gadit-theme img,
.gadit-theme video,
.gadit-theme canvas,
.gadit-theme svg{
    max-width: 100%;
    height: auto;
}

.gadit-theme table{
    max-width: 100%;
}

.gadit-theme .table-responsive,
.gadit-theme .dataTables_wrapper,
.gadit-theme .dt-container,
.gadit-theme .gadit-table-wrap,
.gadit-theme .gadit-content-inner{
    max-width: 100%;
}

.gadit-theme .table-responsive,
.gadit-theme .dataTables_wrapper,
.gadit-theme .dt-container{
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.gadit-theme .btn,
.gadit-theme button,
.gadit-theme input[type="button"],
.gadit-theme input[type="submit"],
.gadit-theme input[type="reset"],
.gadit-theme a.gadit-nav-button,
.gadit-theme .gadit-force-button,
.gadit-theme .gadit-real-button,
.gadit-theme .gadit-table-button{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 2.75rem;
    line-height: 1.15;
    white-space: normal;
    text-align: center;
    vertical-align: middle;
    max-width: 100%;
}

.gadit-theme .btn-sm,
.gadit-theme .btn.btn-sm{
    min-height: 2.35rem;
}

.gadit-theme .btn-lg,
.gadit-theme .btn.btn-lg{
    min-height: 3.15rem;
}

.gadit-theme .modal-footer,
.gadit-theme .gadit-form-actions,
.gadit-theme .gadit-step-actions,
.gadit-theme .gadit-wizard-actions,
.gadit-theme .login-actions,
.gadit-theme .reset-actions,
.gadit-theme .gadit-row-actions{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .65rem;
}

.gadit-theme .modal-footer .btn,
.gadit-theme .gadit-form-actions .btn,
.gadit-theme .gadit-step-actions .btn,
.gadit-theme .gadit-wizard-actions .btn,
.gadit-theme .login-actions .btn,
.gadit-theme .reset-actions .btn{
    flex: 0 1 auto;
}

@media (max-width: 991.98px){
    .gadit-page,
    .gadit-page-top,
    .gadit-main-window,
    .gadit-content-frame,
    .gadit-content-inner{
        width: 100%;
        max-width: 100%;
    }

    .gadit-card,
    .gadit-card-sm,
    .gadit-card-lg{
        max-width: 100%;
    }

    .gadit-navbar-luxury{
        flex-wrap: wrap;
    }

    .gadit-navbar-actions{
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px){
    .gadit-card-header,
    .gadit-card-body{
        padding-left: clamp(1rem, 4vw, 1.35rem);
        padding-right: clamp(1rem, 4vw, 1.35rem);
    }

    .gadit-theme .container,
    .gadit-theme .container-fluid{
        max-width: 100%;
        overflow-x: hidden;
    }

    .gadit-theme .row{
        --bs-gutter-x: 1rem;
    }

    .gadit-theme .form-control,
    .gadit-theme .form-select,
    .gadit-theme textarea,
    .gadit-theme select,
    .gadit-theme input{
        max-width: 100%;
    }

    .gadit-theme .modal-dialog{
        margin-left: .75rem;
        margin-right: .75rem;
    }
}

@media (max-width: 575.98px){
    .gadit-theme .btn,
    .gadit-theme button,
    .gadit-theme input[type="button"],
    .gadit-theme input[type="submit"],
    .gadit-theme input[type="reset"]{
        width: 100%;
        min-width: 0 !important;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .gadit-theme a.gadit-nav-button,
    .gadit-theme .dt-paging .dt-paging-button,
    .gadit-theme .dataTables_paginate .paginate_button,
    .gadit-theme .btn-close{
        width: auto;
    }

    .gadit-theme .gadit-row-actions,
    .gadit-theme .modal-footer,
    .gadit-theme .gadit-form-actions,
    .gadit-theme .gadit-step-actions,
    .gadit-theme .gadit-wizard-actions,
    .gadit-theme .login-actions,
    .gadit-theme .reset-actions{
        flex-direction: column;
        align-items: stretch;
    }
}

/* =========================================================
   GADIT DATATABLES 2 - controlli comuni ricerca / record
   ========================================================= */
.gadit-theme .dt-container,
.gadit-content-inner .dt-container{
    width: 100% !important;
    max-width: 100% !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

.gadit-theme .dt-container .dt-layout-row,
.gadit-content-inner .dt-container .dt-layout-row{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .75rem !important;
    flex-wrap: wrap !important;
    margin: .55rem 0 .85rem !important;
}

.gadit-theme .dt-container .dt-layout-cell,
.gadit-content-inner .dt-container .dt-layout-cell{
    display: flex !important;
    align-items: center !important;
    gap: .55rem !important;
    min-width: 0 !important;
}

.gadit-theme .dt-container .dt-layout-cell.dt-layout-end,
.gadit-content-inner .dt-container .dt-layout-cell.dt-layout-end{
    margin-left: auto !important;
}

.gadit-theme .dt-container .dt-search,
.gadit-theme .dt-container .dt-length,
.gadit-content-inner .dt-container .dt-search,
.gadit-content-inner .dt-container .dt-length{
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    gap: .55rem !important;
    padding: .55rem .75rem !important;
    border: 1px solid rgba(214,173,87,.48) !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(18,17,14,.94), rgba(5,4,3,.96)) !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    box-shadow: 0 .55rem 1.2rem rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.gadit-theme .dt-container .dt-search label,
.gadit-theme .dt-container .dt-length label,
.gadit-content-inner .dt-container .dt-search label,
.gadit-content-inner .dt-container .dt-length label{
    display: inline-flex !important;
    align-items: center !important;
    gap: .55rem !important;
    margin: 0 !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 900 !important;
    letter-spacing: .045em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.gadit-theme .dt-container .dt-search input,
.gadit-theme .dt-container .dt-length select,
.gadit-content-inner .dt-container .dt-search input,
.gadit-content-inner .dt-container .dt-length select{
    display: inline-block !important;
    visibility: visible !important;
    min-height: 2.45rem !important;
    border-radius: .85rem !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    background: #fff8e7 !important;
    color: #120d04 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.55) !important;
}

.gadit-theme .dt-container .dt-search input,
.gadit-content-inner .dt-container .dt-search input{
    min-width: min(320px, 70vw) !important;
    padding: .45rem .75rem !important;
}

.gadit-theme .dt-container .dt-length select,
.gadit-content-inner .dt-container .dt-length select{
    min-width: 5.5rem !important;
    padding: .45rem 2rem .45rem .75rem !important;
}

.gadit-theme .dt-container .dt-info,
.gadit-content-inner .dt-container .dt-info{
    color: #4e4536 !important;
    font-weight: 800 !important;
}

.gadit-theme .dt-container .dt-paging,
.gadit-content-inner .dt-container .dt-paging{
    display: flex !important;
    justify-content: flex-end !important;
    gap: .25rem !important;
    flex-wrap: wrap !important;
}

.gadit-theme .dt-container .dt-paging .dt-paging-button,
.gadit-content-inner .dt-container .dt-paging .dt-paging-button{
    border-radius: .45rem !important;
    border: 1px solid rgba(214,173,87,.45) !important;
    background: rgba(255,248,231,.88) !important;
    color: #120d04 !important;
    font-weight: 900 !important;
    min-width: 2.35rem !important;
    min-height: 2.35rem !important;
}

.gadit-theme .dt-container .dt-paging .dt-paging-button.current,
.gadit-content-inner .dt-container .dt-paging .dt-paging-button.current{
    background: var(--gadit-gold, #d6ad57) !important;
    border-color: var(--gadit-gold, #d6ad57) !important;
    color: #120d04 !important;
}

@media (max-width: 767.98px){
    .gadit-theme .dt-container .dt-layout-row,
    .gadit-theme .dt-container .dt-layout-cell,
    .gadit-theme .dt-container .dt-search,
    .gadit-theme .dt-container .dt-length,
    .gadit-content-inner .dt-container .dt-layout-row,
    .gadit-content-inner .dt-container .dt-layout-cell,
    .gadit-content-inner .dt-container .dt-search,
    .gadit-content-inner .dt-container .dt-length{
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        margin-left: 0 !important;
    }

    .gadit-theme .dt-container .dt-search input,
    .gadit-theme .dt-container .dt-length select,
    .gadit-content-inner .dt-container .dt-search input,
    .gadit-content-inner .dt-container .dt-length select{
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* =========================================================
   FIX FINALE - Modal Nuovo Cittadino dentro gestione_cittadino.php
   L'iframe carica registrazione_cittadino.php e deve occupare realmente
   il corpo della modal su desktop e mobile, senza <style> nei PHP.
========================================================= */
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog{
    width: min(1180px, calc(100vw - 1rem)) !important;
    max-width: min(1180px, calc(100vw - 1rem)) !important;
    height: calc(100dvh - 1rem) !important;
    margin: .5rem auto !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-header{
    flex: 0 0 auto !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-modal-body{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: hidden !important;
    padding: 0 !important;
    background: #050403 !important;
}
html body.gadit-theme #nuovoCittadinoModal iframe#nuovoCittadinoFrame,
html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border: 0 !important;
    overflow: auto !important;
    background: #050403 !important;
}
@media (max-width: 575.98px){
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog{
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        margin: 0 !important;
    }
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
        border-radius: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
    }
}

/* =========================================================
   FIX V3 - Nuovo Cittadino: modal a tutta altezza, iframe scrollabile
   Evita il taglio a metà causato dall'altezza dinamica dell'iframe.
========================================================= */
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal{
    overflow: hidden !important;
    padding: 0 !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
    width: min(1220px, calc(100vw - 1rem)) !important;
    max-width: min(1220px, calc(100vw - 1rem)) !important;
    height: calc(100vh - 1rem) !important;
    height: calc(100dvh - 1rem) !important;
    min-height: calc(100vh - 1rem) !important;
    min-height: calc(100dvh - 1rem) !important;
    max-height: calc(100vh - 1rem) !important;
    max-height: calc(100dvh - 1rem) !important;
    margin: .5rem auto !important;
    display: flex !important;
    align-items: stretch !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content.gadit-modal-content,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-header{
    flex: 0 0 auto !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: hidden !important;
    padding: 0 !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame{
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    border: 0 !important;
    overflow: auto !important;
    background: #050403 !important;
}
@media (max-width: 575.98px){
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        min-height: 100vh !important;
        min-height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
        border-radius: 0 !important;
        border: 0 !important;
    }
}


/* =========================================================
   FIX V4 - Nuovo Cittadino: nessuna doppia barra e contenuto intero
   L'iframe si adatta al contenuto; lo scroll è solo nella modal ed è nascosto.
========================================================= */
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
    height: calc(100dvh - 1rem) !important;
    max-height: calc(100dvh - 1rem) !important;
    align-items: stretch !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 0 !important;
    background: #050403 !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body::-webkit-scrollbar,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body::-webkit-scrollbar,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039::-webkit-scrollbar{
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame,
html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040{
    display: block !important;
    width: 100% !important;
    min-height: 100% !important;
    height: auto !important;
    border: 0 !important;
    overflow: hidden !important;
    background: #050403 !important;
}
@media (max-width: 575.98px){
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }
}


/* =========================================================
   FIX V5 - Nuovo Cittadino: scroll interno iframe senza barra visibile
   La modal resta piena; il contenuto di registrazione scorre fino in fondo.
========================================================= */
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    padding: 0 !important;
    background: #050403 !important;
}
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame,
html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    border: 0 !important;
    background: #050403 !important;
    overflow: auto !important;
}
html.gadit-in-modal-frame-html,
body.gadit-theme.gadit-in-modal-frame{
    height: 100% !important;
    min-height: 100% !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}
html.gadit-in-modal-frame-html::-webkit-scrollbar,
body.gadit-theme.gadit-in-modal-frame::-webkit-scrollbar{
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}
body.gadit-theme.gadit-in-modal-frame .gadit-page-top{
    min-height: 100% !important;
    padding: clamp(.5rem, 1.5vw, 1rem) !important;
}
body.gadit-theme.gadit-in-modal-frame .gadit-card,
body.gadit-theme.gadit-in-modal-frame .gadit-ods-form-card{
    max-width: min(100%, 980px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
@media (max-width: 575.98px){
    body.gadit-theme.gadit-in-modal-frame .gadit-page-top{
        padding: .45rem !important;
    }
}

/* =========================================================
   FIX V6 - Nuovo Cittadino: desktop scrollabile fino in fondo
   Desktop: scroll sulla modal-body, iframe alto quanto il form.
   Mobile/tablet: scroll interno iframe conservato.
========================================================= */
@media (min-width: 992px){
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
        width: min(1220px, calc(100vw - 1rem)) !important;
        max-width: min(1220px, calc(100vw - 1rem)) !important;
        height: calc(100dvh - 1rem) !important;
        max-height: calc(100dvh - 1rem) !important;
        margin: .5rem auto !important;
        display: flex !important;
        align-items: stretch !important;
    }

    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
        height: 100% !important;
        max-height: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
    }

    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-header{
        flex: 0 0 auto !important;
    }

    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039{
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: auto !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding: 0 !important;
        background: #050403 !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body::-webkit-scrollbar,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body::-webkit-scrollbar,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039::-webkit-scrollbar{
        width: 0 !important;
        height: 0 !important;
        display: none !important;
    }

    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame,
    html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040{
        display: block !important;
        width: 100% !important;
        min-height: 100% !important;
        max-height: none !important;
        border: 0 !important;
        background: #050403 !important;
        overflow: hidden !important;
    }

    html.gadit-in-modal-frame-html,
    body.gadit-theme.gadit-in-modal-frame{
        height: auto !important;
        min-height: 0 !important;
        overflow-y: hidden !important;
        overflow-x: hidden !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }
}


/* =========================================================
   FIX V7 - Nuovo Cittadino: scroll unico dentro iframe su PC/tablet/mobile
   La modal occupa l'altezza utile; l'iframe riempie tutto il body.
   La scrollbar laterale dell'iframe viene nascosta, ma lo scroll resta attivo.
========================================================= */
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
    width: min(1220px, calc(100vw - .75rem)) !important;
    max-width: min(1220px, calc(100vw - .75rem)) !important;
    height: calc(100dvh - .75rem) !important;
    max-height: calc(100dvh - .75rem) !important;
    margin: .375rem auto !important;
    display: flex !important;
    align-items: stretch !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-header{
    flex: 0 0 auto !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    padding: 0 !important;
    background: #050403 !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body::-webkit-scrollbar,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body::-webkit-scrollbar,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039::-webkit-scrollbar{
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame,
html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    border: 0 !important;
    background: #050403 !important;
    overflow: auto !important;
}

html.gadit-in-modal-frame-html,
body.gadit-theme.gadit-in-modal-frame{
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

html.gadit-in-modal-frame-html::-webkit-scrollbar,
body.gadit-theme.gadit-in-modal-frame::-webkit-scrollbar{
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

@media (max-width: 575.98px){
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }

    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
        border-radius: 0 !important;
    }
}


/* =========================================================
   FIX V8 - Nuovo Cittadino: scroll unico sulla modal-body
   - PC/tablet/mobile scorrono fino in fondo.
   - L'iframe non ha scrollbar propria.
   - La scrollbar visiva della modal viene nascosta, ma lo scroll resta attivo.
========================================================= */
#nuovoCittadinoModal.gadit-new-cittadino-modal,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal{
    overflow: hidden !important;
    padding-right: 0 !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
    width: min(1220px, calc(100vw - .75rem)) !important;
    max-width: min(1220px, calc(100vw - .75rem)) !important;
    height: calc(100dvh - .75rem) !important;
    max-height: calc(100dvh - .75rem) !important;
    margin: .375rem auto !important;
    display: flex !important;
    align-items: stretch !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-modal-content{
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-header{
    flex: 0 0 auto !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    background: #050403 !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body::-webkit-scrollbar,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body::-webkit-scrollbar,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039::-webkit-scrollbar{
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame,
html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040{
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 100% !important;
    max-height: none !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #050403 !important;
}

html.gadit-in-modal-frame-html,
html.gadit-in-modal-frame-html body.gadit-theme,
body.gadit-theme.gadit-in-modal-frame{
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-x: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

html.gadit-in-modal-frame-html::-webkit-scrollbar,
html.gadit-in-modal-frame-html body::-webkit-scrollbar,
body.gadit-theme.gadit-in-modal-frame::-webkit-scrollbar{
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

body.gadit-theme.gadit-in-modal-frame .gadit-page-top{
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
    padding: clamp(.5rem, 1.4vw, 1rem) !important;
}

body.gadit-theme.gadit-in-modal-frame .gadit-card,
body.gadit-theme.gadit-in-modal-frame .gadit-form-card,
body.gadit-theme.gadit-in-modal-frame .gadit-ods-form-card{
    max-width: min(100%, 980px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

@media (max-width: 575.98px){
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }

    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-content{
        border-radius: 0 !important;
    }

    body.gadit-theme.gadit-in-modal-frame .gadit-page-top{
        padding: .45rem !important;
    }
}


/* =========================================================
   FIX V9 - Nuovo Cittadino: scroll reale dentro iframe
   - Necessario su PC: il wheel del mouse dentro iframe non propaga
     sempre lo scroll alla modal padre.
   - Barra laterale nascosta anche su mobile.
========================================================= */
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-body.gadit-modal-body,
html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .gadit-inline-039{
    overflow: hidden !important;
    height: auto !important;
    min-height: 0 !important;
    flex: 1 1 auto !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame,
html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040{
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    overflow: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame::-webkit-scrollbar,
html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040::-webkit-scrollbar{
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

html.gadit-in-modal-frame-html,
html.gadit-in-modal-frame-html body,
html.gadit-in-modal-frame-html body.gadit-theme,
body.gadit-theme.gadit-in-modal-frame{
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

html.gadit-in-modal-frame-html::-webkit-scrollbar,
html.gadit-in-modal-frame-html body::-webkit-scrollbar,
body.gadit-theme.gadit-in-modal-frame::-webkit-scrollbar{
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

body.gadit-theme.gadit-in-modal-frame .gadit-page-top{
    min-height: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding-bottom: 2rem !important;
}

@media (min-width: 768px){
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog,
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal .modal-dialog.modal-xl{
        height: calc(100vh - 1rem) !important;
        max-height: calc(100vh - 1rem) !important;
    }
}

@media (max-width: 575.98px){
    html body.gadit-theme #nuovoCittadinoModal.gadit-new-cittadino-modal iframe#nuovoCittadinoFrame,
    html body.gadit-theme #nuovoCittadinoFrame.gadit-inline-040{
        height: 100% !important;
        min-height: 100% !important;
    }
}

/* =========================================================
   GADIT CITTADINI - DataTables come gestione_guardie.php
   Solo grafica/layout: nessuna logica PHP modificata.
========================================================= */
.gadit-cittadino-page{
    width: 100%;
    max-width: 100%;
    min-height: 100%;
    align-items: stretch;
    justify-content: flex-start;
}

.gadit-cittadino-management-card{
    width: 100%;
    max-width: none !important;
}

.gadit-cittadino-table-shell,
.gadit-table-shell{
    background: rgba(255,248,231,.965);
    color: #17120a;
    border: 1px solid rgba(214,173,87,.45);
    border-radius: 1.05rem;
    padding: .75rem;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45), 0 .8rem 1.8rem rgba(0,0,0,.26);
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--gadit-gold) rgba(5,4,3,.78);
}

.gadit-cittadino-table-shell::-webkit-scrollbar,
.gadit-table-shell::-webkit-scrollbar{
    width: 10px !important;
    height: 10px !important;
    display: block !important;
}

.gadit-cittadino-table-shell::-webkit-scrollbar-track,
.gadit-table-shell::-webkit-scrollbar-track{
    background: rgba(5,4,3,.86) !important;
    border: 1px solid rgba(214,173,87,.18) !important;
}

.gadit-cittadino-table-shell::-webkit-scrollbar-thumb,
.gadit-table-shell::-webkit-scrollbar-thumb{
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold-dark)) !important;
    border: 2px solid rgba(5,4,3,.86) !important;
}

.gadit-cittadino-table-shell #empTable{
    width: 100% !important;
    margin: 0 !important;
    font-family: Arial, Helvetica, sans-serif;
    vertical-align: middle;
}

.gadit-cittadino-table-shell #empTable thead th{
    background: linear-gradient(180deg, #2b2115, #120d04) !important;
    color: var(--gadit-gold-light) !important;
    border-color: rgba(214,173,87,.35) !important;
    text-transform: uppercase;
    letter-spacing: .035em;
    font-size: .78rem;
    white-space: nowrap;
    text-align: center !important;
}

.gadit-cittadino-table-shell #empTable tbody td{
    border-color: rgba(125,82,32,.22) !important;
    vertical-align: middle !important;
    background: rgba(255,248,231,.965);
}

.gadit-cittadino-table-shell #empTable tbody tr:hover td{
    background: rgba(214,173,87,.11) !important;
}

.gadit-cittadino-page .dt-container,
.gadit-cittadino-page .dataTables_wrapper{
    width: 100% !important;
    font-family: Arial, Helvetica, sans-serif !important;
    color: #17120a !important;
}

.gadit-cittadino-page .dt-layout-row{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .75rem !important;
    flex-wrap: wrap !important;
    margin: .4rem 0 .85rem !important;
}

.gadit-cittadino-page .dt-layout-cell{
    display: flex !important;
    align-items: center !important;
    gap: .45rem !important;
}

.gadit-cittadino-page .dt-layout-cell.dt-layout-end{
    margin-left: auto !important;
}

.gadit-cittadino-page .dt-container .dt-length,
.gadit-cittadino-page .dt-container .dt-search,
.gadit-cittadino-page .dataTables_wrapper .dataTables_length,
.gadit-cittadino-page .dataTables_wrapper .dataTables_filter{
    display: inline-flex !important;
    align-items: center !important;
    gap: .55rem !important;
    padding: .55rem .75rem !important;
    border: 1px solid rgba(214,173,87,.48) !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(18,17,14,.94), rgba(5,4,3,.96)), radial-gradient(circle at 50% 0%, rgba(247,223,147,.18), transparent 12rem) !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    box-shadow: 0 .55rem 1.2rem rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.gadit-cittadino-page .dt-container .dt-length label,
.gadit-cittadino-page .dt-container .dt-search label,
.gadit-cittadino-page .dataTables_wrapper .dataTables_length label,
.gadit-cittadino-page .dataTables_wrapper .dataTables_filter label{
    color: var(--gadit-gold-light, #f7df93) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 900 !important;
    letter-spacing: .045em !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.55) !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.gadit-cittadino-page .dt-search input,
.gadit-cittadino-page .dt-length select,
.gadit-cittadino-page .dataTables_filter input,
.gadit-cittadino-page .dataTables_length select{
    min-height: 2.45rem !important;
    border-radius: .85rem !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    background: #fff8e7 !important;
    color: #120d04 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.55) !important;
}

.gadit-cittadino-page .dt-search input{
    min-width: min(320px,70vw) !important;
}

.gadit-cittadino-page .dt-info{
    color: #4e4536 !important;
    font-weight: 800 !important;
    margin-top: .55rem !important;
}

.gadit-cittadino-page .dt-paging{
    display: flex !important;
    justify-content: flex-end !important;
    gap: .25rem !important;
    flex-wrap: wrap !important;
    margin-top: .45rem !important;
}

.gadit-cittadino-page .dt-paging .dt-paging-button{
    border-radius: .25rem !important;
    border: 1px solid rgba(214,173,87,.45) !important;
    background: rgba(255,248,231,.82) !important;
    color: #120d04 !important;
    font-weight: 900 !important;
    min-width: 2.35rem !important;
    min-height: 2.35rem !important;
}

.gadit-cittadino-page .dt-paging .dt-paging-button.current,
.gadit-cittadino-page .dt-paging .dt-paging-button.current:hover{
    background: var(--gadit-gold) !important;
    border-color: var(--gadit-gold) !important;
    color: #120d04 !important;
}

@media (max-width: 767.98px){
    .gadit-cittadino-page .dt-layout-row,
    .gadit-cittadino-page .dt-layout-cell{
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
    }

    .gadit-cittadino-page .dt-layout-cell.dt-layout-end{
        margin-left: 0 !important;
    }

    .gadit-cittadino-page .dt-container .dt-length,
    .gadit-cittadino-page .dt-container .dt-search{
        width: 100% !important;
        border-radius: 1rem !important;
    }

    .gadit-cittadino-page .dt-search input{
        width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
    }

    .gadit-cittadino-table-shell table,
    .gadit-cittadino-table-shell thead,
    .gadit-cittadino-table-shell tbody,
    .gadit-cittadino-table-shell th,
    .gadit-cittadino-table-shell td,
    .gadit-cittadino-table-shell tr{
        display: block;
    }

    .gadit-cittadino-table-shell thead{
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0,0,0,0);
        border: 0;
    }

    .gadit-cittadino-table-shell #empTable tbody tr{
        margin-bottom: .85rem;
        border: 1px solid rgba(214,173,87,.38);
        border-radius: 1rem;
        background: rgba(255,248,231,.965);
        overflow: hidden;
        box-shadow: 0 .55rem 1.2rem rgba(0,0,0,.16);
    }

    .gadit-cittadino-table-shell #empTable tbody td{
        display: grid !important;
        grid-template-columns: minmax(8.5rem, .8fr) 1fr;
        gap: .6rem;
        align-items: center;
        text-align: left !important;
        border: 0 !important;
        border-bottom: 1px solid rgba(125,82,32,.18) !important;
        padding: .75rem .85rem !important;
        white-space: normal !important;
    }

    .gadit-cittadino-table-shell #empTable tbody td::before{
        content: attr(data-label);
        color: #120d04;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: .035em;
        font-size: .75rem;
    }

    .gadit-cittadino-table-shell #empTable tbody td > center,
    .gadit-cittadino-table-shell #empTable tbody td .gadit-row-actions{
        justify-self: stretch;
    }

    .gadit-cittadino-table-shell #empTable tbody td .gadit-row-actions{
        justify-content: flex-start;
    }
}

/* =========================================================
   GADIT DATATABLES v11 - contrasto scuro/oro per tutti i controlli
   Solo CSS: nessuna modifica alla logica PHP o JS.
========================================================= */
body.gadit-theme .dt-container,
body.gadit-theme .dataTables_wrapper,
.gadit-content-inner .dt-container,
.gadit-content-inner .dataTables_wrapper,
.gadit-cittadino-page .dt-container,
.gadit-cittadino-page .dataTables_wrapper{
    color: var(--gadit-cream, #fff8e7) !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

body.gadit-theme .dt-layout-row,
body.gadit-theme .dataTables_wrapper .row,
.gadit-cittadino-page .dt-layout-row{
    color: var(--gadit-cream, #fff8e7) !important;
}

body.gadit-theme .dt-container label,
body.gadit-theme .dataTables_wrapper label,
body.gadit-theme .dt-container .dt-length label,
body.gadit-theme .dt-container .dt-search label,
body.gadit-theme .dataTables_wrapper .dataTables_length label,
body.gadit-theme .dataTables_wrapper .dataTables_filter label,
.gadit-cittadino-page .dt-container label{
    color: var(--gadit-gold-light, #f7df93) !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 900 !important;
    letter-spacing: .045em !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.65) !important;
}

body.gadit-theme .dt-container .dt-length,
body.gadit-theme .dt-container .dt-search,
body.gadit-theme .dataTables_wrapper .dataTables_length,
body.gadit-theme .dataTables_wrapper .dataTables_filter,
.gadit-cittadino-page .dt-container .dt-length,
.gadit-cittadino-page .dt-container .dt-search{
    display: inline-flex !important;
    align-items: center !important;
    gap: .55rem !important;
    padding: .58rem .78rem !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(247,223,147,.14), transparent 11rem),
        linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.99)) !important;
    box-shadow:
        0 .55rem 1.2rem rgba(0,0,0,.34),
        inset 0 1px 0 rgba(255,255,255,.12) !important;
}

body.gadit-theme .dt-container .dt-search input,
body.gadit-theme .dataTables_wrapper .dataTables_filter input,
body.gadit-theme .dt-container .dt-length select,
body.gadit-theme .dataTables_wrapper .dataTables_length select,
.gadit-cittadino-page .dt-search input,
.gadit-cittadino-page .dt-length select{
    min-height: 2.55rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(247,223,147,.78) !important;
    background: linear-gradient(180deg, #fff8e7, #f7df93) !important;
    color: #120d04 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 900 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.7),
        0 .35rem .85rem rgba(0,0,0,.22) !important;
    outline: none !important;
}

body.gadit-theme .dt-container .dt-search input::placeholder,
body.gadit-theme .dataTables_wrapper .dataTables_filter input::placeholder,
.gadit-cittadino-page .dt-search input::placeholder{
    color: rgba(18,13,4,.72) !important;
    opacity: 1 !important;
    font-weight: 800 !important;
}

body.gadit-theme .dt-container .dt-search input:focus,
body.gadit-theme .dataTables_wrapper .dataTables_filter input:focus,
body.gadit-theme .dt-container .dt-length select:focus,
body.gadit-theme .dataTables_wrapper .dataTables_length select:focus,
.gadit-cittadino-page .dt-search input:focus,
.gadit-cittadino-page .dt-length select:focus{
    border-color: var(--gadit-gold-light, #f7df93) !important;
    box-shadow:
        0 0 0 .24rem rgba(214,173,87,.28),
        inset 0 1px 0 rgba(255,255,255,.72) !important;
}

body.gadit-theme .dt-container .dt-info,
body.gadit-theme .dataTables_wrapper .dataTables_info,
.gadit-cittadino-page .dt-info{
    display: inline-flex !important;
    align-items: center !important;
    min-height: 2.75rem !important;
    padding: .62rem .95rem !important;
    border: 1px solid rgba(214,173,87,.58) !important;
    border-left: .35rem solid var(--gadit-gold, #d6ad57) !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(247,223,147,.16), transparent 10rem),
        linear-gradient(180deg, rgba(18,17,14,.98), rgba(5,4,3,.99)) !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    font-weight: 900 !important;
    letter-spacing: .03em !important;
    text-transform: uppercase !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.65) !important;
    box-shadow: 0 .55rem 1.2rem rgba(0,0,0,.32) !important;
}

body.gadit-theme .dt-container .dt-paging,
body.gadit-theme .dataTables_wrapper .dataTables_paginate,
.gadit-cittadino-page .dt-paging{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: .35rem !important;
    flex-wrap: wrap !important;
}

body.gadit-theme .dt-container .dt-paging .dt-paging-button,
body.gadit-theme .dataTables_wrapper .dataTables_paginate .paginate_button,
.gadit-cittadino-page .dt-paging .dt-paging-button{
    min-width: 2.55rem !important;
    min-height: 2.55rem !important;
    padding: .55rem .78rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,173,87,.62) !important;
    background:
        linear-gradient(180deg, rgba(255,248,231,.16), rgba(18,17,14,.96)) !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .035em !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12),
        0 .4rem .9rem rgba(0,0,0,.24) !important;
}

body.gadit-theme .dt-container .dt-paging .dt-paging-button:hover,
body.gadit-theme .dataTables_wrapper .dataTables_paginate .paginate_button:hover,
.gadit-cittadino-page .dt-paging .dt-paging-button:hover{
    background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57)) !important;
    border-color: var(--gadit-gold-light, #f7df93) !important;
    color: #120d04 !important;
    transform: translateY(-1px) !important;
}

body.gadit-theme .dt-container .dt-paging .dt-paging-button.current,
body.gadit-theme .dt-container .dt-paging .dt-paging-button.current:hover,
body.gadit-theme .dataTables_wrapper .dataTables_paginate .paginate_button.current,
body.gadit-theme .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,
.gadit-cittadino-page .dt-paging .dt-paging-button.current,
.gadit-cittadino-page .dt-paging .dt-paging-button.current:hover{
    background: linear-gradient(180deg, var(--gadit-gold-light, #f7df93), var(--gadit-gold, #d6ad57)) !important;
    border-color: var(--gadit-gold-light, #f7df93) !important;
    color: #120d04 !important;
    text-shadow: none !important;
}

body.gadit-theme .dt-container .dt-paging .dt-paging-button.disabled,
body.gadit-theme .dt-container .dt-paging .dt-paging-button.disabled:hover,
body.gadit-theme .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
body.gadit-theme .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover{
    opacity: .55 !important;
    color: rgba(247,223,147,.72) !important;
    background: rgba(18,17,14,.78) !important;
    transform: none !important;
}

body.gadit-theme .dt-container .dt-processing,
body.gadit-theme .dataTables_wrapper .dataTables_processing,
.gadit-cittadino-page .dt-processing{
    border: 1px solid rgba(214,173,87,.65) !important;
    border-radius: 1rem !important;
    background: rgba(5,4,3,.96) !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    font-weight: 900 !important;
    box-shadow: 0 .9rem 2rem rgba(0,0,0,.38) !important;
}

body.gadit-theme table.dataTable > thead > tr > th,
body.gadit-theme table.dataTable > thead > tr > td,
.gadit-cittadino-page table.dataTable > thead > tr > th{
    background: linear-gradient(180deg, #2b2115, #120d04) !important;
    color: var(--gadit-gold-light, #f7df93) !important;
    border-color: rgba(214,173,87,.38) !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.7) !important;
}

body.gadit-theme table.dataTable > tbody > tr > td,
.gadit-cittadino-page table.dataTable > tbody > tr > td{
    color: #17120a !important;
}

body.gadit-theme table.dataTable > tbody > tr:hover > td,
.gadit-cittadino-page table.dataTable > tbody > tr:hover > td{
    background: rgba(214,173,87,.16) !important;
    color: #120d04 !important;
}

/* Stato ordinamento DataTables: icone/testi visibili su sfondo scuro */
body.gadit-theme table.dataTable thead .dt-column-order,
.gadit-cittadino-page table.dataTable thead .dt-column-order{
    color: var(--gadit-gold-light, #f7df93) !important;
    opacity: 1 !important;
}

@media (max-width: 767.98px){
    body.gadit-theme .dt-container .dt-length,
    body.gadit-theme .dt-container .dt-search,
    body.gadit-theme .dataTables_wrapper .dataTables_length,
    body.gadit-theme .dataTables_wrapper .dataTables_filter,
    body.gadit-theme .dt-container .dt-info,
    body.gadit-theme .dataTables_wrapper .dataTables_info{
        width: 100% !important;
        justify-content: center !important;
        border-radius: 1rem !important;
        text-align: center !important;
        flex-wrap: wrap !important;
    }

    body.gadit-theme .dt-container .dt-search input,
    body.gadit-theme .dataTables_wrapper .dataTables_filter input{
        width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
    }

    body.gadit-theme .dt-container .dt-paging,
    body.gadit-theme .dataTables_wrapper .dataTables_paginate{
        justify-content: center !important;
        width: 100% !important;
    }
}

/* =========================================================
   GADIT BUTTONS - VERSIONE COMPATTA GLOBALE
   Applicata su gadit-style_fix_v11.css
========================================================= */

.gadit-btn,
.gadit-card .btn-primary,
.gadit-card .btn,
.gadit-top-fixed .button,
.gadit-top-fixed button,
.gadit-top-fixed input[type="button"],
.gadit-top-fixed input[type="submit"],
.gadit-nav-button,
.gadit-action-btn,
.gadit-row-actions .btn,
.gadit-ods-toolbar .gadit-nav-button,
.modal.gadit-action-modal .modal-footer .btn,
.modal.gadit-action-modal form .btn,
.gadit-action-modal .modal-footer .btn,
.gadit-action-modal form .btn,
.dt-container .dt-paging .dt-paging-button,
.dataTables_wrapper .paginate_button{
    min-height: 2.15rem !important;
    padding: .42rem .72rem !important;
    font-size: .72rem !important;
    letter-spacing: .04em !important;
    border-radius: .72rem !important;
    line-height: 1.1 !important;
}

/* Pulsanti navbar/dashboard */
.gadit-nav-button{
    min-height: 2rem !important;
    padding: .38rem .58rem !important;
}

.gadit-nav-button span{
    font-size: .66rem !important;
}

/* Pulsanti azione nelle tabelle */
.gadit-action-btn{
    min-height: 2rem !important;
    padding: .38rem .62rem !important;
    font-size: .68rem !important;
}

/* Pulsanti paginazione DataTables */
.dt-container .dt-paging .dt-paging-button,
.dataTables_wrapper .paginate_button{
    min-width: 2rem !important;
    min-height: 2rem !important;
    padding: .32rem .52rem !important;
    font-size: .7rem !important;
}

/* Mobile */
@media (max-width: 575.98px){
    .gadit-btn,
    .gadit-card .btn-primary,
    .gadit-card .btn,
    .gadit-top-fixed .button,
    .gadit-top-fixed button,
    .gadit-top-fixed input[type="button"],
    .gadit-top-fixed input[type="submit"],
    .gadit-nav-button,
    .gadit-action-btn,
    .gadit-row-actions .btn,
    .gadit-ods-toolbar .gadit-nav-button,
    .modal.gadit-action-modal .modal-footer .btn,
    .modal.gadit-action-modal form .btn,
    .gadit-action-modal .modal-footer .btn,
    .gadit-action-modal form .btn{
        min-height: 2rem !important;
        padding: .36rem .6rem !important;
        font-size: .66rem !important;
        border-radius: .68rem !important;
    }

    .gadit-nav-button{
        min-height: 1.9rem !important;
        padding: .32rem .5rem !important;
    }

    .gadit-nav-button span{
        font-size: .62rem !important;
    }

    .dt-container .dt-paging .dt-paging-button,
    .dataTables_wrapper .paginate_button{
        min-width: 1.9rem !important;
        min-height: 1.9rem !important;
        padding: .28rem .45rem !important;
        font-size: .64rem !important;
    }
}

/* =========================================================
   GADIT DATATABLES - PULSANTI COMPATTI GLOBALI
========================================================= */

.dt-container .dt-paging .dt-paging-button,
.dataTables_wrapper .dataTables_paginate .paginate_button,
.dataTables_wrapper .paginate_button,
.gadit-content-inner .dt-paging .dt-paging-button,
.gadit-content-inner .dataTables_wrapper .dataTables_paginate .paginate_button{
    min-width: 1.75rem !important;
    min-height: 1.75rem !important;
    height: auto !important;
    padding: .24rem .44rem !important;
    margin: 0 .08rem !important;
    border-radius: .48rem !important;
    font-size: .62rem !important;
    line-height: 1.05 !important;
    letter-spacing: .025em !important;
}

/* Eventuali bottoni DataTables Buttons: copia, excel, pdf, stampa, colonne */
.dt-container .dt-buttons,
.dataTables_wrapper .dt-buttons{
    display: flex !important;
    gap: .28rem !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

.dt-container .dt-buttons .dt-button,
.dataTables_wrapper .dt-buttons .dt-button,
.dt-container button.dt-button,
.dataTables_wrapper button.dt-button,
.dt-container a.dt-button,
.dataTables_wrapper a.dt-button,
.dt-container div.dt-button,
.dataTables_wrapper div.dt-button,
button.buttons-copy,
button.buttons-excel,
button.buttons-csv,
button.buttons-pdf,
button.buttons-print,
button.buttons-colvis,
a.buttons-copy,
a.buttons-excel,
a.buttons-csv,
a.buttons-pdf,
a.buttons-print,
a.buttons-colvis{
    min-height: 1.85rem !important;
    padding: .3rem .55rem !important;
    border-radius: .58rem !important;
    font-size: .64rem !important;
    line-height: 1.05 !important;
    letter-spacing: .03em !important;
}

/* Bottoni dentro celle tabella DataTables */
.dt-container table .btn,
.dataTables_wrapper table .btn,
.dt-container table button,
.dataTables_wrapper table button,
.dt-container table input[type="button"],
.dataTables_wrapper table input[type="button"],
.dt-container table input[type="submit"],
.dataTables_wrapper table input[type="submit"],
.gadit-content-inner .dt-container table .btn,
.gadit-content-inner .dataTables_wrapper table .btn{
    min-height: 1.85rem !important;
    padding: .3rem .52rem !important;
    border-radius: .58rem !important;
    font-size: .64rem !important;
    line-height: 1.05 !important;
}

/* Select e ricerca DataTables leggermente più compatti */
.dt-container .dt-search input,
.dt-container .dt-length select,
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select{
    min-height: 2rem !important;
    padding: .28rem .55rem !important;
    font-size: .78rem !important;
    border-radius: .62rem !important;
}

.dt-container .dt-length,
.dt-container .dt-search,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter{
    padding: .38rem .58rem !important;
    gap: .38rem !important;
}

.dt-container .dt-length label,
.dt-container .dt-search label,
.dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label{
    font-size: .72rem !important;
}

/* Mobile */
@media (max-width: 575.98px){
    .dt-container .dt-paging .dt-paging-button,
    .dataTables_wrapper .dataTables_paginate .paginate_button,
    .dataTables_wrapper .paginate_button,
    .gadit-content-inner .dt-paging .dt-paging-button,
    .gadit-content-inner .dataTables_wrapper .dataTables_paginate .paginate_button{
        min-width: 1.65rem !important;
        min-height: 1.65rem !important;
        padding: .22rem .38rem !important;
        font-size: .58rem !important;
        border-radius: .42rem !important;
    }

    .dt-container .dt-buttons .dt-button,
    .dataTables_wrapper .dt-buttons .dt-button,
    .dt-container button.dt-button,
    .dataTables_wrapper button.dt-button,
    .dt-container a.dt-button,
    .dataTables_wrapper a.dt-button,
    button.buttons-copy,
    button.buttons-excel,
    button.buttons-csv,
    button.buttons-pdf,
    button.buttons-print,
    button.buttons-colvis{
        min-height: 1.75rem !important;
        padding: .26rem .48rem !important;
        font-size: .58rem !important;
    }

    .dt-container table .btn,
    .dataTables_wrapper table .btn,
    .dt-container table button,
    .dataTables_wrapper table button{
        min-height: 1.75rem !important;
        padding: .26rem .46rem !important;
        font-size: .58rem !important;
    }
}

/* =========================================================
   GADIT DATATABLES - FIX FIRMA ORIZZONTALE
   Mantiene la voce "Firma" orizzontale nelle card responsive
   di gestione_guardie / DataTables.
========================================================= */

/* Header e celle: evita spezzature verticali */
.gadit-content-inner table.dataTable th,
.gadit-content-inner table.dataTable td,
.gadit-content-inner .dataTable th,
.gadit-content-inner .dataTable td,
.gadit-ods-table th,
.gadit-ods-table td{
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* DataTables Responsive: titolo campo a sinistra sempre orizzontale */
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control::before,
table.dataTable > tbody > tr.child ul.dtr-details > li .dtr-title,
table.dataTable > tbody > tr.child span.dtr-title,
.dtr-details .dtr-title,
.dtr-data .dtr-title{
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* Card mobile generate dalle tabelle GADIT: impedisce che "FIRMA" venga disposto una lettera per riga */
.gadit-content-inner .dataTable td::before,
.gadit-content-inner table.dataTable td::before,
.gadit-content-inner .gadit-ods-table td::before,
.gadit-guardie-card td::before,
.gadit-mobile-card td::before{
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    min-width: 7.5rem !important;
    width: 7.5rem !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* Colonna Firma in gestione_guardie: contenuto centrato e non spezzato */
.gadit-content-inner table.dataTable td[data-label="Firma"],
.gadit-content-inner table.dataTable td[data-label="FIRMA"],
.gadit-content-inner table.dataTable td:nth-child(7),
.gadit-content-inner .gadit-ods-table td:nth-child(7){
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-align: center !important;
    vertical-align: middle !important;
}

/* Se la tabella viene trasformata in righe/card su schermi piccoli */
@media (max-width: 767.98px){
    .gadit-content-inner table.dataTable td,
    .gadit-content-inner .gadit-ods-table td{
        grid-template-columns: minmax(7.5rem, 40%) minmax(0, 1fr) !important;
        align-items: center !important;
    }

    .gadit-content-inner table.dataTable td::before,
    .gadit-content-inner .gadit-ods-table td::before{
        max-width: none !important;
        text-align: left !important;
    }
}



/* =========================================================
   FIX DOCUMENTI GUARDIA - SCROLL MOBILE/TABLET
   Nessuna modifica alla logica PHP
========================================================= */

html:has(body.gadit-responsive-page),
body.gadit-theme.gadit-responsive-page{
    height: auto !important;
    min-height: 100dvh !important;
    max-height: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

body.gadit-theme.gadit-responsive-page .gadit-doc-shell{
    min-height: 100dvh !important;
    overflow: visible !important;
}

body.gadit-theme.gadit-responsive-page .gadit-doc-panel{
    overflow: visible !important;
}

/* quando Documenti Guardia è aperto nella modal/iframe */
#gaditDocumentiModal .modal-dialog{
    max-height: calc(100dvh - 1rem) !important;
}

#gaditDocumentiModal .modal-content{
    max-height: calc(100dvh - 1rem) !important;
    display: flex !important;
    flex-direction: column !important;
}

#gaditDocumentiModal .gadit-documenti-modal-body{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

#gaditDocumentiModal .gadit-documenti-frame{
    width: 100% !important;
    height: 100% !important;
    min-height: 70dvh !important;
    border: 0 !important;
}

/* =========================================================
   GADIT - FIX Modal Nuovo Verbale stabile
   Centralizzato in gadit-style.css: evita autoridimensionamento
   e rimbalzo laterale causati da misure JS dell'iframe.
========================================================= */
#nuovoVerbaleModal.modal{
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding-right: 0 !important;
}

#nuovoVerbaleModal.fade .modal-dialog,
#nuovoVerbaleModal.show .modal-dialog{
    transform: none !important;
    transition: none !important;
}

#nuovoVerbaleModal .gadit-verbale-modal-dialog,
#nuovoVerbaleModal .modal-dialog{
    width: min(96vw, 1280px) !important;
    max-width: min(96vw, 1280px) !important;
    height: min(90dvh, 860px) !important;
    min-height: 520px !important;
    max-height: 90dvh !important;
    margin: 5dvh auto !important;
    padding: 0 !important;
}

#nuovoVerbaleModal .modal-content,
#nuovoVerbaleModal .modal-content.gadit-modal-content{
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

#nuovoVerbaleModal .modal-header,
#nuovoVerbaleModal .modal-header.gadit-modal-header-centered{
    flex: 0 0 auto !important;
}

#nuovoVerbaleModal .modal-body{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    border: 0 !important;
    overflow: auto !important;
}

@media (max-width: 767.98px){
    #nuovoVerbaleModal.modal{
        overflow: hidden !important;
    }

    #nuovoVerbaleModal .gadit-verbale-modal-dialog,
    #nuovoVerbaleModal .modal-dialog{
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        min-height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }

    #nuovoVerbaleModal .modal-content,
    #nuovoVerbaleModal .modal-content.gadit-modal-content{
        border-radius: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
    }
}

/* =========================================================
   GADIT - FIX V2 Modal Nuovo Verbale: nitidezza + scroll risultati
   Mantiene la modal stabile, ma non blocca lo scorrimento dei risultati
   caricati in ricerca_verbale.php dentro iframe.
========================================================= */

#nuovoVerbaleModal.modal,
#nuovoVerbaleModal.modal.show{
    opacity: 1 !important;
    filter: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

#nuovoVerbaleModal .modal-dialog,
#nuovoVerbaleModal .gadit-verbale-modal-dialog,
#nuovoVerbaleModal .modal-content,
#nuovoVerbaleModal .modal-content.gadit-modal-content,
#nuovoVerbaleModal .modal-body,
#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame{
    opacity: 1 !important;
    filter: none !important;
}

#nuovoVerbaleModal .modal-body{
    overflow: auto !important;
    scrollbar-width: thin !important;
    scrollbar-color: var(--gadit-gold) rgba(5,4,3,.78) !important;
    -webkit-overflow-scrolling: touch !important;
}

#nuovoVerbaleModal .modal-body::-webkit-scrollbar{
    width: 10px !important;
    height: 10px !important;
    display: block !important;
}

#nuovoVerbaleModal .modal-body::-webkit-scrollbar-track{
    background: rgba(5,4,3,.86) !important;
    border-left: 1px solid rgba(214,173,87,.22) !important;
}

#nuovoVerbaleModal .modal-body::-webkit-scrollbar-thumb{
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold-dark)) !important;
    border: 2px solid rgba(5,4,3,.86) !important;
}

#nuovoVerbaleModal iframe.gadit-verbale-search-frame,
#nuovoVerbaleModal #gaditRicercaVerbaleFrame{
    overflow: auto !important;
    background: transparent !important;
}

/* Pagina ricerca_verbale.php caricata dentro iframe: scroll sempre disponibile */
html:has(body.gadit-responsive-page),
body.gadit-theme.gadit-responsive-page{
    height: auto !important;
    min-height: 100dvh !important;
    max-height: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    scrollbar-width: thin !important;
    scrollbar-color: var(--gadit-gold) rgba(5,4,3,.78) !important;
    -webkit-overflow-scrolling: touch !important;
    opacity: 1 !important;
    filter: none !important;
}

body.gadit-theme.gadit-responsive-page::-webkit-scrollbar{
    width: 10px !important;
    height: 10px !important;
    display: block !important;
}

body.gadit-theme.gadit-responsive-page::-webkit-scrollbar-track{
    background: rgba(5,4,3,.86) !important;
    border-left: 1px solid rgba(214,173,87,.22) !important;
}

body.gadit-theme.gadit-responsive-page::-webkit-scrollbar-thumb{
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--gadit-gold-light), var(--gadit-gold-dark)) !important;
    border: 2px solid rgba(5,4,3,.86) !important;
}

body.gadit-theme.gadit-responsive-page .gadit-page-top{
    min-height: 100dvh !important;
    height: auto !important;
    overflow: visible !important;
    padding-bottom: 2rem !important;
}

body.gadit-theme.gadit-responsive-page .gadit-card.gadit-card-lg{
    height: auto !important;
    min-height: auto !important;
    overflow: visible !important;
}

body.gadit-theme.gadit-responsive-page .gadit-card-body{
    overflow: visible !important;
}

body.gadit-theme.gadit-responsive-page #risultatiRicerca{
    display: block !important;
    overflow: visible !important;
    padding-bottom: 1.5rem !important;
}

@media (max-width: 767.98px){
    #nuovoVerbaleModal.modal{
        overflow-y: auto !important;
    }

    #nuovoVerbaleModal .modal-body{
        overflow: auto !important;
    }

    #nuovoVerbaleModal iframe.gadit-verbale-search-frame,
    #nuovoVerbaleModal #gaditRicercaVerbaleFrame{
        height: 100% !important;
        min-height: 0 !important;
    }
}

/* =========================================================
   GADIT - Condivisione PDF verbale bloccato: email + SMS
   Stile centralizzato per box azioni in index verbali.
========================================================= */
.gadit-share-box{
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid rgba(214,173,87,.45);
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(255,248,231,.08), rgba(255,248,231,.035));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 .65rem 1.35rem rgba(0,0,0,.18);
}
.gadit-share-title{
    color: var(--gadit-gold-light);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .055em;
    margin-bottom: .2rem;
}
.gadit-share-subtitle,
.gadit-share-link{
    color: var(--gadit-muted);
    font-family: Arial, Helvetica, sans-serif;
    font-size: .86rem;
    line-height: 1.35;
}
.gadit-share-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
    margin-top: .9rem;
}
.gadit-share-form{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .55rem;
    align-items: center;
}
.gadit-share-input{
    min-height: 2.75rem !important;
    border-radius: .85rem !important;
}
.gadit-share-btn{
    min-height: 2.75rem !important;
    white-space: nowrap;
}
.gadit-share-link{
    margin-top: .8rem;
    word-break: break-word;
}
.gadit-share-notice{
    margin-top: .85rem;
}
@media (max-width: 991.98px){
    .gadit-share-grid,
    .gadit-share-form{
        grid-template-columns: 1fr;
    }
    .gadit-share-btn{
        width: 100%;
    }
}

/* =========================================================
   GADIT - Invio PDF firmato via Email / SMS
   Classi isolate: non modificano il layout del verbale.
========================================================= */
.gadit-share-card{
    margin: 1rem auto 0 !important;
}
.gadit-share-mb{
    margin-bottom: .75rem !important;
}
.gadit-share-mb-lg{
    margin-bottom: .9rem !important;
}
.gadit-share-form{
    margin: 0 0 .85rem 0 !important;
}
.gadit-share-form:last-child{
    margin-bottom: 0 !important;
}
.gadit-share-row{
    display: flex !important;
    gap: .6rem !important;
    flex-wrap: wrap !important;
    margin-top: .35rem !important;
}
.gadit-share-input{
    flex: 1 1 240px !important;
    min-width: 240px !important;
}
@media (max-width: 575.98px){
    .gadit-share-input,
    .gadit-share-row .gadit-btn{
        width: 100% !important;
    }
}
