/* Moteur d'affichage commun : styles (identiques sur la TV et dans la simulation de la console). */
.sg-stage {
    position: relative;
    overflow: hidden;
    background: #050b14;
}

.sg-video, .sg-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.sg-stage [hidden] { display: none !important; }

.sg-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(135deg, rgba(2,6,23,var(--sg-shade-a,.08)), rgba(2,6,23,var(--sg-shade-b,.25)));
    pointer-events: none;
}

/* Titre superposé au fond (police officielle Aptos, repli si absente). */
.sg-title {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}

.sg-logos {
    position: absolute;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    pointer-events: none;
}

.sg-row {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Logos posés tels quels sur le fond : aucun cadre, aucune ombre. */
.sg-logo {
    display: block;
    flex: none;
    object-fit: contain;
}

.sg-zone-guide {
    position: absolute;
    z-index: 3;
    border: 2px dashed rgba(255,196,0,.95);
    background: rgba(255,196,0,.10);
    pointer-events: none;
}

.sg-zone-guide::after {
    content: "Zone des logos";
    position: absolute;
    left: 0;
    bottom: 100%;
    padding: .15em .6em;
    background: rgba(255,196,0,.95);
    color: #1a1a1a;
    font: 600 max(11px, 1.1em)/1.3 "Segoe UI", Arial, sans-serif;
    white-space: nowrap;
}

/* Message de secours (vidéo illisible et aucun fond) : une seule ligne, taille ajustée par le moteur. */
.sg-fallback {
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 10%;
    transform: translate(-50%, -50%);
    max-width: 85%;
    padding: .8em 1.4em;
    color: #fff;
    background: rgba(15,23,42,.85);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: .5em;
    font: 500 2.4em/1.3 "Segoe UI", Arial, sans-serif;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
}
