/* Fonctions ajoutées au nouveau design (n'en modifie aucun style existant) */
.status.ok{color:#487f10;font-weight:700}
.project-photo a{cursor:zoom-in}
.viewer{border:0;padding:0;background:rgba(6,14,10,.95);width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;color:#fff}
.viewer::backdrop{background:rgba(0,0,0,.9)}
.viewer[open]{display:grid;place-items:center}
.viewer img{max-width:94vw;max-height:80dvh;object-fit:contain;border-radius:8px;user-select:none}
.viewer .v-cap{position:absolute;bottom:52px;left:50%;translate:-50% 0;font-size:14px;color:#e7ece8;max-width:90vw;text-align:center;margin:0}
.viewer button{position:absolute;border:0;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;border-radius:50%;width:48px;height:48px;font-size:30px;line-height:1;padding:0}
.viewer button:hover{background:rgba(255,255,255,.28)}
.v-close{top:14px;right:14px}.v-prev{left:12px;top:50%;translate:0 -50%}.v-next{right:12px;top:50%;translate:0 -50%}
.viewer.single .v-nav{display:none}
.viewer .count{position:absolute;bottom:16px;left:50%;translate:-50% 0;font-size:13px;opacity:.8}
