.gmd-lightbox{
    position:fixed; inset:0; z-index:99999;
    display:none; align-items:center; justify-content:center;
}
.gmd-lightbox.gmd-lightbox-open{ display:flex; animation:fadein .3s ease; }
@keyframes fadein{ from{opacity:0;} to{opacity:1;} }

.gmd-lightbox-overlay{
    position:fixed; inset:0;
    background:transparent; /* pas de voile */
    cursor:pointer;
    z-index:1;
}

.gmd-lightbox-content{
    position:fixed; inset:0;
    z-index:2;
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    pointer-events:none;
}

.gmd-lightbox-inner{
    display:flex; align-items:center; justify-content:center;
    max-width:90vw; max-height:90vh;
    pointer-events:auto;
}

#gmd-lightbox-img{
    max-width:100%; max-height:100%;
    border-radius:12px;
    box-shadow:0 12px 24px rgba(0,0,0,.08);
    border:2px solid #fff;
    background:#fff;
    object-fit:contain;
    margin:0 48px;
    animation:scalein .28s ease;
}
@keyframes scalein{ from{transform:scale(.95);opacity:.6;} to{transform:scale(1);opacity:1;} }

.gmd-lightbox-close{
    position:absolute; top:15px; right:20px;
    font-size:2rem; border:none; background:rgba(0,0,0,.05);
    color:#444; cursor:pointer; padding:8px 12px;
    border-radius:50%; transition:background .2s,color .2s;
    z-index:3; pointer-events:auto;
}
.gmd-lightbox-close:hover{ background:rgba(0,0,0,.1); color:#000; }

.gmd-lightbox-prev,.gmd-lightbox-next{
    position:absolute; top:50%; transform:translateY(-50%);
    font-size:2.5rem; border:none; background:rgba(0,0,0,.05);
    color:#444; cursor:pointer; padding:6px 10px;
    border-radius:50%; transition:background .2s,color .2s;
    z-index:3; pointer-events:auto;
}
.gmd-lightbox-prev{ left:15px; }
.gmd-lightbox-next{ right:15px; }
.gmd-lightbox-prev:hover,.gmd-lightbox-next:hover{ background:rgba(0,0,0,.1); color:#000; }

#gmd-lightbox-download{
    margin-top:15px;
    color:#444; background:black;
    border-radius:6px; font-size:1rem; padding:6px 16px;
    text-decoration:none; border:1.5px solid #aaa;
    transition:all .2s; pointer-events:auto; z-index:3;
}
#gmd-lightbox-download:hover{ background:#444; color:#fff; border-color:#444; }

.gmd-lightbox button:focus,
.gmd-lightbox a:focus{
    outline:2px solid rgba(0,0,0,.2);
}

/* Mobile */
@media(max-width:800px){
    #gmd-lightbox-img{ max-width:95vw; max-height:75vh; margin:0 4vw; }
    .gmd-lightbox-prev,.gmd-lightbox-next{ font-size:1.8rem; padding:6px 8px; }
    .gmd-lightbox-close{ font-size:1.8rem; top:10px; right:12px; }
    #gmd-lightbox-download{ font-size:.9rem; padding:5px 12px; }
}
