/* V16 — correctif de mise en page du détail média mobile */
@media (max-width:639px){
  .lightbox-card{
    height:100dvh!important;
    max-height:100dvh!important;
    overflow:hidden!important;
  }

  .lightbox-stage{
    flex:0 0 46dvh!important;
    height:46dvh!important;
    min-height:0!important;
    max-height:46dvh!important;
    overflow:hidden!important;
  }

  .lightbox-img-wrap{
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  .lightbox-img-wrap img,
  .lightbox-img-wrap video{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
  }

  .lightbox-panel{
    position:relative!important;
    flex:1 1 auto!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  .comments-list{
    min-height:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
  }
}

/* V17 — menus d'actions au-dessus de la zone de saisie */
@media(max-width:639px){.lightbox-panel{overflow:visible!important}.comments-list{overflow-y:auto!important}.comment-form{z-index:10!important}.media-action-menu{z-index:15}.comment-action-menu{z-index:16}}


/* V18 — fond flou premium + hauteur adaptative selon le ratio du média */
@media(max-width:639px){
  .lightbox-stage.media-adaptive{position:relative!important;background:#25221f!important;transition:height .18s ease,flex-basis .18s ease}
  .lightbox-stage.media-adaptive.is-landscape{flex:0 0 clamp(220px,calc(100vw / var(--media-ratio,1.5)),42dvh)!important;height:clamp(220px,calc(100vw / var(--media-ratio,1.5)),42dvh)!important;max-height:42dvh!important}
  .lightbox-stage.media-adaptive.is-square{flex:0 0 min(50dvh,100vw)!important;height:min(50dvh,100vw)!important;max-height:50dvh!important}
  .lightbox-stage.media-adaptive.is-portrait{flex:0 0 54dvh!important;height:54dvh!important;max-height:54dvh!important}
  .lightbox-stage.media-adaptive .lightbox-img-wrap{position:relative!important;isolation:isolate}
  .lightbox-media-backdrop{position:absolute;inset:-18px;z-index:0;overflow:hidden;background:#292622}
  .lightbox-media-backdrop:after{content:"";position:absolute;inset:0;background:rgba(28,24,21,.20);pointer-events:none}
  .lightbox-media-backdrop img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;filter:blur(28px) saturate(.92) brightness(.72);transform:scale(1.12);opacity:.96}
  .lightbox-media-main{position:absolute;inset:0;z-index:1;display:grid;place-items:center;overflow:hidden}
  .lightbox-media-main img,.lightbox-media-main video{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;position:relative;z-index:1}
  .lightbox-stage.media-adaptive .mobile-lightbox-counter,.lightbox-stage.media-adaptive .lightbox-nav{z-index:4}
}


/* V19 — menus d’actions compacts, correctement ancrés au bouton */
@media(max-width:639px){
  .media-action-menu summary,.comment-action-menu summary{
    display:grid!important;place-items:center!important;
    border:1px solid rgba(90,82,72,.18)!important;
    background:#f7f0e7!important;color:#514b45!important;
    box-shadow:none!important;
  }
  .media-action-menu summary{width:38px!important;height:38px!important}
  .comment-action-menu summary{width:34px!important;height:34px!important;border-color:transparent!important;background:transparent!important}
  .media-action-menu[open] summary,.comment-action-menu[open] summary{background:#eee3d6!important}
  .media-action-menu .action-popover,.comment-action-menu .action-popover{
    position:fixed!important;left:12px;right:auto!important;top:12px;bottom:auto!important;
    width:auto!important;min-width:156px!important;max-width:calc(100vw - 24px)!important;
    padding:6px!important;border-radius:14px!important;
    background:#fffdfa!important;border:1px solid rgba(90,82,72,.16)!important;
    box-shadow:0 12px 32px rgba(40,32,26,.16)!important;z-index:1000!important;
  }
  .media-action-menu .action-popover button,.comment-action-menu .action-popover button{
    min-height:42px!important;padding:9px 12px!important;border-radius:9px!important;font-size:14px!important;
  }
}


/* V21 — menus actions au-dessus du bouton + accès admin mobile */
@media(max-width:639px){
  /* Les menus restent ancrés à leur bouton et s'ouvrent vers le haut. */
  .media-action-menu,.comment-action-menu{position:relative!important;z-index:4!important}
  .media-action-menu .action-popover,.comment-action-menu .action-popover{
    position:absolute!important;
    left:auto!important;right:0!important;
    top:auto!important;bottom:calc(100% + 8px)!important;
    min-width:156px!important;width:max-content!important;max-width:min(220px,calc(100vw - 32px))!important;
    padding:6px!important;border-radius:14px!important;
    background:#fffdfa!important;border:1px solid rgba(90,82,72,.16)!important;
    box-shadow:0 12px 30px rgba(40,32,26,.16)!important;
    z-index:30!important;
  }
  .media-action-menu .action-popover button,.comment-action-menu .action-popover button{
    width:100%!important;min-height:42px!important;padding:9px 12px!important;border-radius:9px!important;text-align:left!important;font-size:14px!important;
  }
  /* La zone commentaires redevient un vrai viewport : aucun bouton ... ne peut flotter sur le champ d'envoi. */
  .lightbox-panel{overflow:hidden!important}
  .comments-list{position:relative!important;overflow-y:auto!important;z-index:1!important}
  .comment-form{position:relative!important;z-index:40!important;background:var(--surface)!important}
  .comment-action-menu summary,.media-action-menu summary{position:relative!important;z-index:5!important}

  .mobile-admin-entry{display:block;margin:18px 0 6px;padding:0 18px}
  .mobile-admin-entry button{width:100%;border:1px solid rgba(75,65,56,.12);background:#fffdfa;border-radius:16px;min-height:68px;padding:12px 14px;display:flex;align-items:center;gap:12px;text-align:left;box-shadow:0 3px 14px rgba(60,48,38,.04)}
  .mobile-admin-entry-icon{width:40px;height:40px;border-radius:12px;background:var(--sage-soft);color:var(--sage);display:grid;place-items:center;font-size:19px;flex:none}
  .mobile-admin-entry button>span:nth-child(2){display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
  .mobile-admin-entry strong{font-size:14px}
  .mobile-admin-entry small{font-size:11px;color:var(--muted);font-weight:400}
  .mobile-admin-entry-arrow{font-size:24px;color:var(--muted);line-height:1}
}
@media(min-width:640px){.mobile-admin-entry{display:none!important}}
