/* Passionnément Sexualité — Correctifs affichage v1.0.5 */

/* Connexions : texte public lisible sur fond sombre */
#cxs-public-info { color:#eadde7 !important; }
#cxs-public-info h1,#cxs-public-info h2,#cxs-public-info h3 { color:#f3a7ce !important; }
#cxs-public-info p,#cxs-public-info li { color:#e6d9e3 !important; }
#cxs-public-info strong { color:#fff7fb !important; }

/* Connexions : pas de hauteur vide avant chargement */
#cxs-game-slot.connexions-embed,.connexions-embed { min-height:0 !important; height:auto !important; }
#cxs-game-slot iframe,.connexions-embed iframe {
    width:100% !important;
    min-height:0 !important;
    height:760px;
    display:block;
    border:0;
    border-radius:16px;
}
body.ps-connexions-jeu-ouvert #cxs-public-info { display:none !important; }

/*
 * Menu mobile Astra — v1.0.3
 * Astra garde toute sa logique d'ouverture/fermeture.
 * On remet simplement le parent, le bouton et le sous-menu dans un vrai flux en grille.
 */
@media (max-width:921px) {
    #ast-mobile-site-navigation .main-header-menu,
    #ast-mobile-site-navigation .main-header-menu > li {
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children {
        display:grid !important;
        grid-template-columns:minmax(0,1fr) 64px !important;
        grid-template-rows:auto auto !important;
        align-items:center !important;
        position:relative !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:0 !important;
        padding:0 !important;
        overflow:visible !important;
    }

    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children > a.menu-link {
        grid-column:1 !important;
        grid-row:1 !important;
        display:flex !important;
        align-items:center !important;
        width:100% !important;
        height:auto !important;
        min-height:64px !important;
        margin:0 !important;
        padding:14px 12px 14px 28px !important;
        box-sizing:border-box !important;
        position:static !important;
        transform:none !important;
    }

    /* La petite flèche intégrée au lien ferait doublon avec le bouton Astra. */
    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children > a.menu-link > .dropdown-menu-toggle {
        display:none !important;
    }

    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children > button.ast-menu-toggle {
        grid-column:2 !important;
        grid-row:1 !important;
        position:static !important;
        inset:auto !important;
        width:56px !important;
        height:56px !important;
        min-width:56px !important;
        min-height:56px !important;
        max-width:56px !important;
        max-height:56px !important;
        margin:4px 8px 4px 0 !important;
        padding:0 !important;
        transform:none !important;
        float:none !important;
        z-index:2 !important;
        align-self:center !important;
        justify-self:end !important;
        line-height:1 !important;
    }

    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children > .sub-menu {
        grid-column:1 / -1 !important;
        grid-row:2 !important;
        position:static !important;
        inset:auto !important;
        transform:none !important;
        float:none !important;
        clear:both !important;
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:0 !important;
        padding:0 !important;
        box-sizing:border-box !important;
        box-shadow:none !important;
        border:0 !important;
        overflow:visible !important;
    }

    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children > .sub-menu > li {
        display:block !important;
        position:static !important;
        float:none !important;
        clear:both !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        margin:0 !important;
        padding:0 !important;
        box-sizing:border-box !important;
    }

    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children > .sub-menu > li > a.menu-link {
        display:flex !important;
        align-items:center !important;
        width:100% !important;
        height:auto !important;
        min-height:54px !important;
        margin:0 !important;
        padding:12px 28px 12px 48px !important;
        box-sizing:border-box !important;
        position:static !important;
        transform:none !important;
        white-space:normal !important;
        line-height:1.3 !important;
        background:#fff !important;
        color:#5f236d !important;
        border-top:1px solid rgba(95,35,109,.10) !important;
    }

    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children > .sub-menu > li > a.menu-link:hover,
    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children > .sub-menu > li > a.menu-link:focus {
        background:#fbf5fb !important;
        color:#c5237d !important;
    }

    /* Les éléments suivants doivent toujours reprendre le flux après le sous-menu. */
    #ast-mobile-site-navigation .main-header-menu > li.menu-item-has-children + li {
        clear:both !important;
        position:relative !important;
        margin-top:0 !important;
    }

    #cxs-game-slot iframe,.connexions-embed iframe { border-radius:12px; }
}

/* ==========================================================
 * v1.0.4 — Menu mobile : correctif final ciblé sur Sexualité
 * ========================================================== */
@media (max-width:921px) {
    #ast-mobile-site-navigation li.menu-item-51934 {
        display:block !important;
        position:relative !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:0 !important;
        padding:0 !important;
        overflow:visible !important;
    }
    #ast-mobile-site-navigation li.menu-item-51934 > a.menu-link {
        display:flex !important;
        align-items:center !important;
        position:relative !important;
        width:100% !important;
        min-height:64px !important;
        height:auto !important;
        margin:0 !important;
        padding:14px 82px 14px 28px !important;
        box-sizing:border-box !important;
    }
    #ast-mobile-site-navigation li.menu-item-51934 > a.menu-link > .dropdown-menu-toggle {
        display:none !important;
    }
    #ast-mobile-site-navigation li.menu-item-51934 > button.ast-menu-toggle {
        position:absolute !important;
        top:4px !important;
        right:8px !important;
        left:auto !important;
        bottom:auto !important;
        width:56px !important;
        height:56px !important;
        min-width:56px !important;
        min-height:56px !important;
        margin:0 !important;
        padding:0 !important;
        transform:none !important;
        z-index:4 !important;
    }
    #ast-mobile-site-navigation li.menu-item-51934 > ul.sub-menu {
        position:static !important;
        inset:auto !important;
        transform:none !important;
        float:none !important;
        clear:both !important;
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:0 !important;
        padding:0 !important;
        box-sizing:border-box !important;
        box-shadow:none !important;
        overflow:visible !important;
    }
    #ast-mobile-site-navigation li.menu-item-51934 > ul.sub-menu > li,
    #ast-mobile-site-navigation li.menu-item-51934 > ul.sub-menu > li > a.menu-link {
        position:static !important;
        float:none !important;
        clear:both !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:0 !important;
        box-sizing:border-box !important;
    }
    #ast-mobile-site-navigation li.menu-item-51934 > ul.sub-menu > li > a.menu-link {
        display:flex !important;
        align-items:center !important;
        min-height:54px !important;
        padding:12px 28px 12px 48px !important;
        white-space:normal !important;
        line-height:1.3 !important;
    }
}

/* Entre Nous : notification de reconnexion (le +18 reste géré nativement par le jeu) */
.ps-en-hidden { display:none !important; }
.ps-en-connection-toast {
    position:fixed !important;
    z-index:999999 !important;
    left:50% !important;
    right:auto !important;
    top:max(12px, env(safe-area-inset-top)) !important;
    transform:translateX(-50%) !important;
    width:auto !important;
    max-width:min(92vw,460px) !important;
    min-width:0 !important;
    margin:0 !important;
    padding:10px 16px !important;
    border-radius:999px !important;
    font-size:14px !important;
    line-height:1.25 !important;
    text-align:center !important;
    box-shadow:0 8px 24px rgba(0,0,0,.24) !important;
    pointer-events:none !important;
}
@media (max-width:600px) {
    .ps-en-connection-toast {
        max-width:calc(100vw - 24px) !important;
        font-size:13px !important;
        padding:9px 13px !important;
    }
}


/* Entre Nous v1.0.7 : avant validation +18, le choix du mode n'est pas affiché.
   Le bloc +18 reste entièrement piloté par le jeu natif. */
body .ps-en-mode-menu-hidden{
    display:none !important;
}


/* Page Jeux — accroche Connexions */
.ps-connexions-signature{
    margin: .35rem 0 1rem !important;
    font-size: clamp(1rem, 1.2vw, 1.15rem);
    line-height: 1.5;
    font-weight: 600;
    opacity: .95;
}


/* Page Jeux — accroche Entre Nous */
.ps-entre-nous-signature{
    margin: .35rem 0 1rem !important;
    font-size: clamp(1rem, 1.2vw, 1.15rem);
    line-height: 1.5;
    font-weight: 600;
    opacity: .95;
}
