/* SJR TV · 04 Nov · Régie de composition (V5) — lecteur physiquement centré.
   Aucun recadrage des fichiers vidéo, seuls les arrière-plans sont ajustables. */
:root{--tv-half-video:min(28.125vw,157.5px);--tv-video-h:min(56.25vw,315px)}
.scene-body{position:absolute;inset:0;top:0!important;transform:none}
.player-area,.scene .player-area{
 position:absolute;left:0;right:0;top:50%!important;bottom:auto;
 width:100%;height:auto;min-height:0!important;max-height:none!important;
 aspect-ratio:16/9!important;transform:translateY(-50%);
 margin:0;padding:0;border-radius:0;overflow:hidden;
}
.player-area .sjr-native-video{width:100%;height:100%;object-fit:contain!important;object-position:center!important}
.scene-photo img,.scene-photo.photo-syamali img{
 object-position:var(--sjr-focus-x,50%) var(--sjr-focus-y,40%)!important;
 transform:scale(var(--sjr-zoom,1.025))!important;
}
.scene-glass{top:calc(50% + var(--tv-half-video) + 5px)!important;height:auto!important}
.frame-atmosphere{top:calc(50% - var(--tv-half-video) - 26px)!important;
 height:calc(var(--tv-video-h) + 52px)!important;max-height:none!important}
/* Texte et actions sont une seconde zone stable ; ils n’influencent jamais le lecteur. */
.scene-meta{bottom:calc(var(--nav) + 18px)}
.scene.meta-compact .scene-description{-webkit-line-clamp:2!important}
.scene.meta-compact .scene-artist{margin-bottom:5px}
.scene.meta-compact .scene-title{margin-bottom:4px}
.scene.meta-compact .story-link{margin-top:4px;min-height:22px}
.scene.meta-compact .artist-avatar{width:32px;height:32px;flex-basis:32px}
.scene.meta-compact .artist-chip strong{font-size:clamp(17px,5.6vw,23px)}
.scene.meta-tight .scene-description{-webkit-line-clamp:1!important}
.scene.meta-tight .artist-avatar{width:29px;height:29px;flex-basis:29px}
.scene.meta-tight .scene-title{font-size:11.7px}
.scene.meta-tight .scene-artist{margin-bottom:2px}
.scene.meta-tight .artist-chip{min-height:30px}
.scene.meta-tight .story-link{margin-top:2px}
.scene.meta-tight .scene-description{font-size:10.9px;line-height:1.28}
@media(max-width:355px){
 .player-area,.scene .player-area{top:50%!important;height:auto!important;min-height:0!important;aspect-ratio:16/9!important}
 .scene-meta{bottom:calc(var(--nav) + 7px)}
 .scene-description{font-size:11.1px}
}
@media(max-height:690px){.scene-meta{bottom:calc(var(--nav) + 8px)}}
@media(min-width:560px){
 .player-area,.scene .player-area{top:50%!important}
 .scene-meta{bottom:calc(var(--nav) + 18px)}
}
/* Respecte les préférences système et les zones de sécurité Safari. */
@media(prefers-reduced-motion:reduce){.player-area{transition:none!important}}
/* Hauteurs courtes : seul le rail d'actions se compacte ; le lecteur ne bouge pas. */
@media(max-width:355px) and (max-height:620px){
 .meta-actions{gap:0;padding:2px 1px}
 .meta-action{height:35px;width:36px;padding:7px}
 .meta-action svg{width:20px;height:20px}
 .scene-meta{bottom:calc(var(--nav) + 7px)}
}
@media(min-width:356px) and (max-height:720px){
 .meta-actions{gap:0;padding:2px 2px}
 .meta-action{height:36px;width:39px;padding:7px}
 .meta-action svg{width:21px;height:21px}
}
@media(min-width:480px) and (max-height:760px){
 .scene-meta{bottom:calc(var(--nav) + 10px)}
 .meta-actions{gap:0;padding:2px 2px}
 .meta-action{height:35px;width:37px;padding:7px}
 .meta-action svg{width:20px;height:20px}
 .scene-description{font-size:12px;line-height:1.37;-webkit-line-clamp:2}
 .scene-artist{margin-bottom:6px}
 .scene-title{margin-bottom:4px}
 .story-link{margin-top:5px;min-height:22px}
}
