/*
 * ==========================================================
 * PLAISIRS WORLD
 * SIDEBAR CENTRAL - CSS
 * ==========================================================
 *
 * Utilise avec :
 * /var/www/plaisirs-world/includes/account-sidebar.php
 *
 * Fichier commun :
 * - Mon compte
 * - Historia
 * - futures pages connectees
 */

/* ==========================================================
   PLAISIRS WORLD - ACCOUNT SIDEBAR V1
   ========================================================== */

@media(min-width:761px){

    body.pw-account-with-sidebar
    .pw-account-page{
        padding-left:280px;
    }

}


.pw-account-sidebar{
    position:fixed;

    top:106px;
    left:18px;
    bottom:22px;

    z-index:700;

    width:225px;

    display:flex;
    flex-direction:column;

    box-sizing:border-box;

    border:
        1px solid
        rgba(217,181,111,.15);

    border-radius:20px;

    background:
        radial-gradient(
            circle at 30% 0%,
            rgba(217,181,111,.075),
            transparent 33%
        ),
        #0b0b0a;

    box-shadow:
        0 20px 55px
        rgba(0,0,0,.24);

    overflow:hidden;
}


.pw-account-sidebar-head{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:10px;

    padding:
        20px 17px
        16px;

    border-bottom:
        1px solid
        rgba(217,181,111,.08);
}


.pw-account-sidebar-eyebrow{
    margin-bottom:5px;

    color:#75664a;

    font-size:8px;

    font-weight:700;

    letter-spacing:1.2px;
}


.pw-account-sidebar-head strong{
    color:#e2c781;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:18px;

    font-weight:400;
}


.pw-account-sidebar-close{
    display:none;
}


.pw-account-sidebar-nav{
    flex:1;

    display:flex;
    flex-direction:column;

    gap:3px;

    overflow-y:auto;

    padding:12px 10px;
}


.pw-account-side-link{
    min-height:43px;

    display:flex;

    align-items:center;

    gap:10px;

    box-sizing:border-box;

    padding:
        0 11px;

    border:
        1px solid
        transparent;

    border-radius:11px;

    color:#8a8379;

    text-decoration:none;

    font-size:11px;

    transition:
        .16s ease;
}


.pw-account-side-link:hover{
    color:#dbc181;

    background:
        rgba(217,181,111,.035);
}


.pw-account-side-link.active{
    border-color:
        rgba(217,181,111,.17);

    background:
        linear-gradient(
            135deg,
            rgba(217,181,111,.10),
            rgba(217,181,111,.025)
        );

    color:#e6ca86;
}


.pw-account-side-icon{
    width:23px;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    color:#c3a665;

    font-size:13px;
}


.pw-account-sidebar-bottom{
    display:flex;

    flex-direction:column;

    gap:5px;

    padding:
        12px 11px
        15px;

    border-top:
        1px solid
        rgba(217,181,111,.08);
}


.pw-account-side-secondary,
.pw-account-side-logout{
    min-height:37px;

    display:flex;

    align-items:center;

    padding:
        0 10px;

    border-radius:10px;

    text-decoration:none;

    font-size:10px;
}


.pw-account-side-secondary{
    color:#736b60;
}


.pw-account-side-logout{
    color:#c8a65d;

    background:
        rgba(217,181,111,.025);
}


.pw-account-mobile-nav-button,
.pw-account-sidebar-overlay{
    display:none;
}


/* ==========================================================
   MOBILE / GSM
   ========================================================== */

@media(max-width:760px){

    body.pw-account-with-sidebar
    .pw-account-page{
        padding-left:12px;
        padding-right:12px;
        padding-top:145px;
    }


    .pw-account-mobile-nav-button{
        position:fixed;

        top:83px;
        left:14px;
        right:14px;

        z-index:690;

        height:47px;

        display:flex;

        align-items:center;
        justify-content:center;

        gap:9px;

        border:
            1px solid
            rgba(217,181,111,.17);

        border-radius:13px;

        background:
            rgba(12,12,11,.96);

        color:#d5b970;

        font-size:12px;

        cursor:pointer;

        box-shadow:
            0 10px 30px
            rgba(0,0,0,.22);
    }


    .pw-account-mobile-nav-button span{
        font-size:17px;
    }


    .pw-account-sidebar{
        top:0;
        left:0;
        bottom:0;

        z-index:9999;

        width:
            min(
                320px,
                calc(100vw - 34px)
            );

        border-radius:0 20px 20px 0;

        transform:
            translateX(-105%);

        transition:
            transform .25s ease;
    }


    .pw-account-sidebar.open{
        transform:
            translateX(0);
    }


    .pw-account-sidebar-close{
        width:36px;
        height:36px;

        display:flex;

        align-items:center;
        justify-content:center;

        border:
            1px solid
            rgba(217,181,111,.12);

        border-radius:10px;

        background:
            rgba(255,255,255,.015);

        color:#aa9669;

        font-size:22px;

        cursor:pointer;
    }


    .pw-account-sidebar-overlay{
        position:fixed;

        inset:0;

        z-index:9998;

        display:block;

        visibility:hidden;

        opacity:0;

        background:
            rgba(0,0,0,.68);

        backdrop-filter:
            blur(3px);

        transition:
            opacity .20s ease,
            visibility .20s ease;
    }


    .pw-account-sidebar-overlay.open{
        visibility:visible;

        opacity:1;
    }


    body.pw-account-sidebar-open{
        overflow:hidden;
    }

}



/* ==========================================================
   ACCOUNT ALIGNMENT FIX V2
   ========================================================== */

@media(min-width:761px){

    body.pw-account-with-sidebar
    .pw-account-page{
        padding-top:24px !important;
    }


    .pw-account-sidebar{
        top:
            var(
                --pw-account-sidebar-top,
                120px
            ) !important;
    }

}



/*
 * Le logout principal du compte
 * reste dans la sidebar.
 */

.pw-account-dashboard-bottom{
    justify-content:flex-start;
}



/* ==========================================================
   PLAISIRS WORLD SECURITY CENTER V1
   ========================================================== */

.pw-security-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:14px;

    margin-top:22px;
}


.pw-security-panel{
    padding:21px;

    border:
        1px solid
        rgba(217,181,111,.11);

    border-radius:17px;

    background:
        rgba(255,255,255,.012);
}


.pw-security-panel:first-child{
    grid-row:
        span 2;
}


.pw-security-panel-head{
    display:flex;

    align-items:flex-start;

    gap:12px;

    margin-bottom:19px;
}


.pw-security-icon{
    width:42px;
    height:42px;

    flex:0 0 42px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid
        rgba(217,181,111,.15);

    border-radius:12px;

    background:
        rgba(217,181,111,.035);

    font-size:18px;
}


.pw-security-panel h2{
    margin:0 0 5px;

    color:#d9bf80;

    font-size:15px;
}


.pw-security-panel p{
    margin:0;

    color:#756f66;

    font-size:10px;

    line-height:1.5;
}


.pw-security-help{
    margin:
        -3px 0
        16px !important;

    color:#625d55 !important;

    font-size:9px !important;
}


.pw-security-status{
    display:flex;

    align-items:center;
    justify-content:space-between;

    margin-bottom:12px;

    padding:12px;

    border-radius:10px;

    background:
        rgba(255,255,255,.015);
}


.pw-security-status span{
    color:#6f685e;

    font-size:10px;
}


.pw-security-status strong{
    font-size:11px;
}


.pw-security-action-link{
    display:block;

    margin-top:8px;

    padding:11px 12px;

    border:
        1px solid
        rgba(217,181,111,.09);

    border-radius:10px;

    color:#b99c61;

    text-decoration:none;

    font-size:10px;
}


.pw-security-history{
    margin-top:25px;

    padding-top:22px;

    border-top:
        1px solid
        rgba(217,181,111,.08);
}


.pw-security-events{
    display:flex;

    flex-direction:column;

    gap:5px;
}


.pw-security-event{
    min-height:46px;

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:20px;

    padding:
        0 13px;

    border:
        1px solid
        rgba(217,181,111,.07);

    border-radius:10px;

    background:
        rgba(255,255,255,.008);
}


.pw-security-event div{
    display:flex;

    flex-direction:column;

    gap:3px;
}


.pw-security-event strong{
    color:#a78e5c;

    font-size:10px;
}


.pw-security-event small,
.pw-security-event span{
    color:#5f5a53;

    font-size:8px;
}


.pw-security-empty{
    color:#6e675e;

    font-size:10px;
}


.pw-sessions-toolbar{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:20px;

    margin:
        20px 0;

    padding:
        16px;

    border:
        1px solid
        rgba(217,181,111,.09);

    border-radius:13px;
}


.pw-sessions-toolbar > div{
    display:flex;

    flex-direction:column;

    gap:4px;
}


.pw-sessions-toolbar strong{
    color:#c8ad70;

    font-size:12px;
}


.pw-sessions-toolbar span{
    color:#625d55;

    font-size:9px;
}


.pw-security-secondary-button{
    min-height:38px;

    padding:
        0 14px;

    border:
        1px solid
        rgba(217,181,111,.16);

    border-radius:10px;

    background:
        rgba(217,181,111,.04);

    color:#bca064;

    font-size:9px;

    cursor:pointer;
}


.pw-session-list{
    display:flex;

    flex-direction:column;

    gap:8px;
}


.pw-session-card{
    display:grid;

    grid-template-columns:
        45px
        minmax(0,1fr)
        auto;

    align-items:center;

    gap:14px;

    padding:14px;

    border:
        1px solid
        rgba(217,181,111,.08);

    border-radius:14px;

    background:
        rgba(255,255,255,.009);
}


.pw-session-card.current{
    border-color:
        rgba(217,181,111,.22);

    background:
        rgba(217,181,111,.025);
}


.pw-session-icon{
    width:42px;
    height:42px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid
        rgba(217,181,111,.12);

    border-radius:11px;

    font-size:17px;
}


.pw-session-title{
    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:6px;
}


.pw-session-title strong{
    color:#cbb171;

    font-size:11px;
}


.pw-session-current{
    padding:
        3px 6px;

    border-radius:6px;

    background:
        rgba(217,181,111,.07);

    color:#a88d59;

    font-size:7px;
}


.pw-session-revoked{
    color:#655f57;

    font-size:8px;
}


.pw-session-meta{
    display:flex;

    flex-wrap:wrap;

    gap:
        5px 15px;
}


.pw-session-meta span{
    color:#615c55;

    font-size:8px;
}


.pw-session-close{
    min-height:34px;

    padding:
        0 11px;

    border:
        1px solid
        rgba(190,115,90,.15);

    border-radius:9px;

    background:
        rgba(190,115,90,.025);

    color:#aa7764;

    font-size:8px;

    cursor:pointer;
}


@media(max-width:700px){

    .pw-security-grid{
        grid-template-columns:1fr;
    }

    .pw-security-panel:first-child{
        grid-row:auto;
    }

    .pw-sessions-toolbar{
        align-items:stretch;

        flex-direction:column;
    }

    .pw-session-card{
        grid-template-columns:
            40px
            minmax(0,1fr);
    }

    .pw-session-card form{
        grid-column:
            1 / -1;
    }

    .pw-session-close{
        width:100%;
    }

    .pw-security-event{
        align-items:flex-start;

        flex-direction:column;

        padding:
            11px 13px;

        gap:6px;
    }

}



/* ==========================================================
   ACCOUNT SIDEBAR CLEAN V2
   ========================================================== */


/*
 * La sidebar suffit pour revenir
 * dans les differentes sections.
 */

.pw-account-back{
    display:none !important;
}


/*
 * Bouton Mail temporairement inactif
 * uniquement si aucun lien Mail
 * n'existe dans le header public.
 */

.pw-account-side-disabled{
    width:100%;

    border:0;

    background:transparent;

    font-family:inherit;

    text-align:left;

    cursor:default;

    opacity:.55;
}


.pw-account-side-disabled small{
    margin-left:auto;

    color:#665f54;

    font-size:7px;

    text-transform:uppercase;

    letter-spacing:.5px;
}


/*
 * On ne met plus Logout dans la sidebar :
 * le header intelligent le gere deja.
 */

.pw-account-sidebar-bottom{
    margin-top:auto;
}


/*
 * Sidebar plus aeree maintenant
 * que les sous-sections Securite
 * ont ete retirees.
 */

.pw-account-sidebar-nav{
    gap:5px;
}


.pw-account-side-link{
    min-height:46px;
}


/*
 * Sur les pages 2FA / Recovery / Sessions,
 * la rubrique Securite reste active
 * grace au JS.
 */



/* ============================================
   PASSWORD EYE - ALIGNEMENT DANS LE CHAMP
   ============================================ */

.pw-password-wrap{
    position:relative;
    width:100%;
}

.pw-password-wrap .pw-input{
    width:100%;
    padding-right:52px !important;
}

.pw-password-toggle{
    position:absolute !important;
    top:50% !important;
    right:14px !important;
    transform:translateY(-50%) !important;

    width:34px !important;
    height:34px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    margin:0 !important;
    padding:0 !important;

    border:0 !important;
    background:transparent !important;

    font-size:17px !important;
    line-height:1 !important;

    cursor:pointer;
    z-index:2;
}


/* ==========================================
   PLAISIRS WORLD - QR 2FA FIX
   ========================================== */

.pw-two-factor-setup{
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    gap:25px;
    align-items:center;
    margin:22px 0;
}

.pw-two-factor-qr{
    display:flex;
    align-items:center;
    justify-content:center;
    padding:12px;
    border:1px solid rgba(217,181,111,.18);
    border-radius:18px;
    background:#ffffff;
}

.pw-two-factor-qr img{
    display:block;
    width:230px;
    height:230px;
    max-width:100%;
}

.pw-two-factor-steps{
    display:flex;
    flex-direction:column;
    gap:6px;
}

.pw-two-factor-steps strong{
    color:#d9bd79;
    font-size:12px;
}

.pw-two-factor-steps p{
    margin:0 0 10px;
    color:#787168;
    font-size:10px;
    line-height:1.5;
}

@media(max-width:700px){
    .pw-two-factor-setup{
        grid-template-columns:1fr;
    }

    .pw-two-factor-qr{
        width:min(280px,100%);
        margin:0 auto;
        box-sizing:border-box;
    }
}


/* ==========================================================
   PLAISIRS WORLD ACCOUNT - LISIBILITE V2
   ========================================================== */

/* Sidebar */

.pw-account-sidebar-head strong{
    font-size:20px !important;
}

.pw-account-side-link{
    font-size:13px !important;
}

.pw-account-sidebar-eyebrow{
    font-size:9px !important;
}

.pw-account-side-secondary,
.pw-account-side-logout{
    font-size:12px !important;
}


/* Dashboard principal */

.pw-account-dashboard-hero p{
    font-size:14px !important;
    line-height:1.55 !important;
}

.pw-account-status-line span{
    font-size:10px !important;
}

.pw-account-status-line strong{
    font-size:14px !important;
}


/* Cartes */

.pw-account-dashboard-card h2{
    font-size:16px !important;
    line-height:1.3 !important;
}

.pw-account-dashboard-card p{
    font-size:13px !important;
    line-height:1.55 !important;
}

.pw-account-dashboard-card span{
    font-size:12px !important;
    line-height:1.45 !important;
}

.pw-account-dashboard-card b{
    font-size:25px !important;
}


/* Pages internes */

.pw-account-intro{
    font-size:14px !important;
    line-height:1.6 !important;
}

.pw-account-section-head h2{
    font-size:18px !important;
}

.pw-account-section-head p{
    font-size:13px !important;
    line-height:1.55 !important;
}


/* Formulaires */

.pw-field span{
    font-size:12px !important;
}

.pw-input,
.pw-select{
    font-size:14px !important;
}


/* Security Center */

.pw-security-panel h2{
    font-size:16px !important;
}

.pw-security-panel p{
    font-size:12px !important;
    line-height:1.55 !important;
}

.pw-security-help{
    font-size:11px !important;
}

.pw-security-status span{
    font-size:12px !important;
}

.pw-security-status strong{
    font-size:13px !important;
}

.pw-security-action-link{
    font-size:12px !important;
}


/* Sessions */

.pw-sessions-toolbar strong{
    font-size:14px !important;
}

.pw-sessions-toolbar span{
    font-size:11px !important;
}

.pw-session-title strong{
    font-size:13px !important;
}

.pw-session-current,
.pw-session-revoked{
    font-size:9px !important;
}

.pw-session-meta span{
    font-size:10px !important;
}


/* Historique sécurité */

.pw-security-event strong{
    font-size:12px !important;
}

.pw-security-event small,
.pw-security-event span{
    font-size:10px !important;
}


/* GSM */

@media(max-width:700px){

    .pw-account-side-link{
        font-size:14px !important;
    }

    .pw-account-dashboard-card h2{
        font-size:17px !important;
    }

    .pw-account-dashboard-card p{
        font-size:13px !important;
    }

    .pw-account-dashboard-card span{
        font-size:12px !important;
    }

    .pw-account-intro{
        font-size:14px !important;
    }

}



/* ==========================================================
   PLAISIRS WORLD - CONTACT + FOOTER
   ========================================================== */

.pw-contact-card{
    display:grid;

    grid-template-columns:
        70px
        minmax(0,1fr);

    gap:22px;

    align-items:start;

    margin-top:25px;

    padding:25px;

    border:
        1px solid
        rgba(217,181,111,.14);

    border-radius:18px;

    background:
        rgba(255,255,255,.012);
}


.pw-contact-icon{
    width:64px;
    height:64px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid
        rgba(217,181,111,.16);

    border-radius:16px;

    background:
        rgba(217,181,111,.035);

    font-size:25px;
}


.pw-contact-content h2{
    margin:
        0 0 8px;

    color:#d9bd79;

    font-size:19px;
}


.pw-contact-content p{
    margin:
        0 0 10px;

    color:#858078;

    font-size:13px;
}


.pw-contact-email{
    color:#e0bf72;

    font-size:18px;

    font-weight:600;

    text-decoration:none;
}


.pw-contact-actions{
    display:flex;

    align-items:center;

    gap:12px;

    margin-top:22px;
}


.pw-contact-main-button{
    width:auto !important;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    padding:
        0 22px;

    text-decoration:none;
}


.pw-contact-note{
    margin-top:18px;

    padding:16px;

    border:
        1px solid
        rgba(217,181,111,.08);

    border-radius:13px;

    background:
        rgba(255,255,255,.008);
}


.pw-contact-note strong{
    color:#c5aa6d;

    font-size:13px;
}


.pw-contact-note p{
    margin:
        5px 0 0;

    color:#777168;

    font-size:12px;

    line-height:1.5;
}


/* FOOTER */

.pw-account-footer{
    margin-top:15px;

    padding:
        20px 25px
        30px;

    box-sizing:border-box;
}


@media(min-width:761px){

    .pw-account-footer{
        padding-left:280px;
    }

}


.pw-account-footer-inner{
    width:min(
        1050px,
        100%
    );

    margin:
        0 auto;

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:25px;

    padding-top:18px;

    border-top:
        1px solid
        rgba(217,181,111,.08);
}


.pw-account-footer-brand{
    display:flex;

    align-items:center;

    gap:9px;

    white-space:nowrap;
}


.pw-account-footer-brand strong{
    color:#8e7b52;

    font-size:11px;
}


.pw-account-footer-brand span{
    color:#59544c;

    font-size:10px;
}


.pw-account-footer-links{
    display:flex;

    align-items:center;

    justify-content:flex-end;

    flex-wrap:wrap;

    gap:
        8px 16px;
}


.pw-account-footer-links a{
    color:#777168;

    text-decoration:none;

    font-size:11px;
}


.pw-account-footer-links a:hover{
    color:#d4b66f;
}


.pw-legal-placeholder{
    margin-top:25px;

    padding:20px;

    border:
        1px solid
        rgba(217,181,111,.11);

    border-radius:15px;

    background:
        rgba(217,181,111,.018);
}


.pw-legal-placeholder strong{
    color:#d2b673;

    font-size:14px;
}


.pw-legal-placeholder p{
    margin:
        8px 0 0;

    color:#7c756c;

    font-size:13px;

    line-height:1.6;
}


@media(max-width:700px){

    .pw-contact-card{
        grid-template-columns:1fr;
    }


    .pw-contact-actions{
        align-items:stretch;

        flex-direction:column;
    }


    .pw-contact-main-button{
        width:100% !important;
    }


    .pw-account-footer{
        padding:
            15px
            15px
            25px;
    }


    .pw-account-footer-inner{
        align-items:flex-start;

        flex-direction:column;
    }


    .pw-account-footer-links{
        justify-content:flex-start;
    }

}



/* ==========================================================
   PLAISIRS WORLD - CONTACT PUBLIC
   ========================================================== */

.pw-public-contact-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:14px;

    margin-top:25px;
}


.pw-public-contact-card{
    min-height:145px;

    display:grid;

    grid-template-columns:
        55px
        minmax(0,1fr);

    align-items:start;

    gap:16px;

    padding:20px;

    box-sizing:border-box;

    border:
        1px solid
        rgba(217,181,111,.12);

    border-radius:17px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.018),
            rgba(255,255,255,.007)
        );

    color:inherit;

    text-decoration:none;
}


.pw-public-contact-card:hover{
    border-color:
        rgba(217,181,111,.28);

    background:
        rgba(217,181,111,.025);
}


.pw-public-contact-icon{
    width:50px;
    height:50px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid
        rgba(217,181,111,.15);

    border-radius:13px;

    background:
        rgba(217,181,111,.035);

    font-size:20px;
}


.pw-public-contact-card h2{
    margin:0 0 7px;

    color:#d9bc78;

    font-size:17px;
}


.pw-public-contact-card p{
    margin:0 0 10px;

    color:#817a70;

    font-size:13px;

    line-height:1.5;
}


.pw-public-contact-card strong,
.pw-public-contact-card span{
    color:#b99b5e;

    font-size:12px;
}


.pw-register-legal{
    margin:
        14px 0
        16px;

    color:#746e65;

    font-size:11px;

    line-height:1.55;
}


.pw-register-legal a{
    color:#c5a65f;

    text-decoration:none;
}


.pw-register-legal a:hover{
    color:#e0c177;
}


@media(max-width:700px){

    .pw-public-contact-grid{
        grid-template-columns:1fr;
    }

}



/* ==========================================================
   PLAISIRS WORLD - CONTACT ACCOUNT V2
   ========================================================== */

.pw-contact-service-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:14px;

    margin-top:25px;
}


.pw-contact-service-card{
    min-height:145px;

    display:grid;

    grid-template-columns:
        54px
        minmax(0,1fr);

    gap:16px;

    align-items:start;

    padding:20px;

    border:
        1px solid
        rgba(217,181,111,.12);

    border-radius:17px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.018),
            rgba(255,255,255,.007)
        );

    color:inherit;

    text-align:left;

    font-family:inherit;

    cursor:pointer;

    transition:
        .16s ease;
}


.pw-contact-service-card:hover,
.pw-contact-service-card.selected{
    border-color:
        rgba(217,181,111,.35);

    background:
        rgba(217,181,111,.035);

    transform:
        translateY(-2px);
}


.pw-contact-service-card h2{
    margin:
        0 0 7px;

    color:#d9bc78;

    font-size:17px;
}


.pw-contact-service-card p{
    margin:
        0 0 10px;

    color:#817a70;

    font-size:13px;

    line-height:1.5;
}


.pw-contact-service-card span{
    color:#b99b5e;

    font-size:12px;
}


.pw-contact-form-section{
    margin-top:30px;

    padding-top:27px;

    scroll-margin-top:125px;

    border-top:
        1px solid
        rgba(217,181,111,.09);
}


.pw-contact-textarea{
    min-height:170px;

    resize:vertical;

    padding-top:14px !important;

    line-height:1.55;
}


.pw-contact-form-bottom{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:20px;

    margin-top:20px;
}


.pw-contact-form-bottom > div{
    display:flex;

    flex-direction:column;

    gap:4px;
}


.pw-contact-form-bottom strong{
    color:#85765a;

    font-size:11px;
}


.pw-contact-form-bottom span{
    color:#c7aa68;

    font-size:13px;
}


@media(max-width:700px){

    .pw-contact-service-grid{
        grid-template-columns:1fr;
    }


    .pw-contact-form-bottom{
        align-items:stretch;

        flex-direction:column;
    }


    .pw-contact-form-bottom
    .pw-submit-inline{
        width:100%;
    }

}



/* ==========================================================
   PLAISIRS WORLD - PREFERENCES V1
   ========================================================== */

.pw-preferences-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:14px;

    margin-top:24px;
}


.pw-preference-card{
    display:grid;

    grid-template-columns:
        48px
        minmax(0,1fr);

    gap:15px;

    align-items:start;

    padding:20px;

    border:
        1px solid
        rgba(217,181,111,.11);

    border-radius:17px;

    background:
        rgba(255,255,255,.012);
}


.pw-preference-card:first-child{
    grid-column:
        1 / -1;
}


.pw-preference-icon{
    width:46px;
    height:46px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid
        rgba(217,181,111,.14);

    border-radius:12px;

    background:
        rgba(217,181,111,.03);

    font-size:19px;
}


.pw-preference-content h2{
    margin:
        0 0 6px;

    color:#d8ba76;

    font-size:17px;
}


.pw-preference-content > p{
    margin:
        0 0 17px;

    color:#817a70;

    font-size:13px;

    line-height:1.55;
}


.pw-toggle-row{
    display:flex;

    align-items:center;

    gap:11px;

    cursor:pointer;
}


.pw-toggle-row input{
    position:absolute;

    opacity:0;

    pointer-events:none;
}


.pw-toggle-switch{
    position:relative;

    width:42px;
    height:23px;

    flex:0 0 42px;

    border:
        1px solid
        rgba(217,181,111,.16);

    border-radius:30px;

    background:
        rgba(255,255,255,.04);

    transition:.18s ease;
}


.pw-toggle-switch::after{
    content:"";

    position:absolute;

    top:3px;
    left:3px;

    width:15px;
    height:15px;

    border-radius:50%;

    background:#756d60;

    transition:.18s ease;
}


.pw-toggle-row input:checked
+ .pw-toggle-switch{
    background:
        rgba(217,181,111,.18);

    border-color:
        rgba(217,181,111,.35);
}


.pw-toggle-row input:checked
+ .pw-toggle-switch::after{
    transform:
        translateX(19px);

    background:#dfbd70;
}


.pw-toggle-text{
    color:#aaa298;

    font-size:13px;
}


@media(max-width:700px){

    .pw-preferences-grid{
        grid-template-columns:1fr;
    }


    .pw-preference-card:first-child{
        grid-column:auto;
    }

}



/* ==========================================================
   PLAISIRS WORLD - PRIVACY V1
   ========================================================== */

.pw-privacy-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:14px;

    margin-top:24px;
}


.pw-privacy-card{
    display:grid;

    grid-template-columns:
        50px
        minmax(0,1fr);

    gap:15px;

    padding:20px;

    border:
        1px solid
        rgba(217,181,111,.11);

    border-radius:17px;

    background:
        rgba(255,255,255,.012);
}


.pw-privacy-icon{
    width:47px;
    height:47px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid
        rgba(217,181,111,.14);

    border-radius:12px;

    background:
        rgba(217,181,111,.03);

    font-size:19px;
}


.pw-privacy-card h2{
    margin:
        0 0 7px;

    color:#d9bc79;

    font-size:17px;
}


.pw-privacy-card p{
    margin:
        0 0 13px;

    color:#817a70;

    font-size:13px;

    line-height:1.55;
}


.pw-privacy-status{
    display:flex;

    align-items:center;
    justify-content:space-between;

    margin-top:7px;

    padding:9px 11px;

    border-radius:9px;

    background:
        rgba(255,255,255,.012);
}


.pw-privacy-status span{
    color:#777168;

    font-size:12px;
}


.pw-privacy-status strong{
    color:#c1a563;

    font-size:12px;
}


.pw-privacy-danger-zone{
    margin-top:30px;

    padding-top:26px;

    border-top:
        1px solid
        rgba(217,181,111,.09);
}


.pw-privacy-danger-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:14px;
}


.pw-privacy-danger-card{
    padding:20px;

    border:
        1px solid
        rgba(190,145,80,.16);

    border-radius:15px;

    background:
        rgba(180,130,60,.018);
}


.pw-privacy-danger-card.critical{
    border-color:
        rgba(190,90,75,.19);

    background:
        rgba(190,70,60,.018);
}


.pw-privacy-danger-card h3{
    margin:
        0 0 8px;

    color:#cfad69;

    font-size:16px;
}


.pw-privacy-danger-card p{
    margin:
        0 0 18px;

    color:#817a70;

    font-size:12px;

    line-height:1.55;
}


.pw-privacy-warning-button,
.pw-privacy-danger-button{
    min-height:40px;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    box-sizing:border-box;

    padding:
        0 15px;

    border-radius:10px;

    text-decoration:none;

    font-size:12px;

    cursor:pointer;
}


.pw-privacy-warning-button{
    border:
        1px solid
        rgba(205,156,81,.22);

    background:
        rgba(205,156,81,.04);

    color:#c7a566;
}


.pw-privacy-danger-button{
    border:
        1px solid
        rgba(190,85,75,.25);

    background:
        rgba(190,75,65,.045);

    color:#c58378;
}


.pw-privacy-confirm{
    max-width:600px;

    margin-top:25px;

    padding:22px;

    border:
        1px solid
        rgba(217,181,111,.10);

    border-radius:16px;

    background:
        rgba(255,255,255,.01);
}


@media(max-width:700px){

    .pw-privacy-grid,
    .pw-privacy-danger-grid{
        grid-template-columns:1fr;
    }

}



/* ==========================================================
   PLAISIRS WORLD - HELP + SUPPORT
   ========================================================== */

.pw-help-grid,
.pw-support-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:14px;

    margin-top:24px;
}


.pw-help-card,
.pw-support-card{
    min-height:130px;

    display:grid;

    grid-template-columns:
        48px
        minmax(0,1fr);

    gap:15px;

    align-items:start;

    padding:20px;

    box-sizing:border-box;

    border:
        1px solid
        rgba(217,181,111,.11);

    border-radius:17px;

    background:
        rgba(255,255,255,.012);

    color:inherit;

    text-decoration:none;

    transition:.16s ease;
}


.pw-help-card:hover,
.pw-support-card:hover{
    transform:translateY(-2px);

    border-color:
        rgba(217,181,111,.30);

    background:
        rgba(217,181,111,.025);
}


.pw-help-card > span,
.pw-support-icon{
    width:46px;
    height:46px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid
        rgba(217,181,111,.14);

    border-radius:12px;

    background:
        rgba(217,181,111,.03);

    font-size:19px;
}


.pw-help-card h2,
.pw-support-card h2{
    margin:
        0 0 7px;

    color:#d8ba76;

    font-size:17px;
}


.pw-help-card p,
.pw-support-card p{
    margin:
        0 0 9px;

    color:#817a70;

    font-size:13px;

    line-height:1.55;
}


.pw-support-card span{
    color:#b99b5e;

    font-size:12px;
}


@media(max-width:700px){

    .pw-help-grid,
    .pw-support-grid{
        grid-template-columns:1fr;
    }

}



/* ==========================================================
   PLAISIRS WORLD - MODE D EMPLOI V2
   ========================================================== */

.pw-guide-list{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-top:24px;
}

.pw-guide-card{
    display:grid;
    grid-template-columns:48px minmax(0,1fr);
    gap:16px;

    padding:20px;

    border:
        1px solid
        rgba(217,181,111,.10);

    border-radius:16px;

    background:
        rgba(255,255,255,.01);
}

.pw-guide-number{
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:
        1px solid
        rgba(217,181,111,.15);

    border-radius:12px;

    color:#c9aa66;

    font-size:12px;
    font-weight:700;
}

.pw-guide-card h2{
    margin:0 0 8px;

    color:#d8ba76;

    font-size:17px;
}

.pw-guide-card p{
    margin:0 0 10px;

    color:#817a70;

    font-size:13px;
    line-height:1.65;
}

.pw-guide-card a{
    color:#b99b5e;

    font-size:12px;

    text-decoration:none;
}

.pw-guide-card a:hover{
    color:#dfc079;
}

.pw-guide-future{
    color:#8d7c5a;

    font-size:12px;
}

.pw-guide-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

@media(max-width:700px){

    .pw-guide-card{
        grid-template-columns:1fr;
    }

}



/* ==========================================================
   SUPPRESSION COMPTE - CORRECTIONS UI
   ========================================================== */

.pw-delete-export a,
.pw-delete-export a:visited{
    color:#d9b56f !important;
}

.pw-delete-export a:hover{
    color:#f0d38c !important;

    border-color:
        rgba(217,181,111,.65) !important;
}


.pw-password-wrap{
    position:relative;
}


.pw-password-wrap .pw-input{
    width:100%;

    padding-right:52px;
}


.pw-password-eye{
    position:absolute;

    right:12px;
    bottom:11px;

    width:34px;
    height:34px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:0;

    background:transparent;

    color:#d9b56f;

    font-size:17px;

    cursor:pointer;
}


.pw-password-eye:hover{
    color:#f0d38c;
}


/* ==========================================================
   HISTORIA
   ========================================================== */

@media(min-width:761px){

    body.pw-account-with-sidebar
    .historia-page{
        padding-left:280px;
    }

}


@media(max-width:760px){

    body.pw-account-with-sidebar
    .historia-page{
        padding-left:12px;
        padding-right:12px;
        padding-top:145px;
    }

}

/* =========================================================
   PLAISIRS WORLD - SIDEBAR SCROLL INVISIBLE
   Le menu reste scrollable sans afficher la barre
   ========================================================= */

.pw-account-sidebar {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.pw-account-sidebar::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
}

.pw-account-sidebar-nav {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.pw-account-sidebar-nav::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
}

/* ==========================================================
   PLAISIRS WORLD
   SIDEBAR - SCROLL INVISIBLE DEFINITIF
   ========================================================== */

.pw-account-sidebar,
.pw-account-sidebar *,
.pw-account-sidebar-nav {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

.pw-account-sidebar::-webkit-scrollbar,
.pw-account-sidebar *::-webkit-scrollbar,
.pw-account-sidebar-nav::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

.pw-account-sidebar,
.pw-account-sidebar-nav {
    overflow-y: auto;
    overflow-x: hidden;
}

/* =========================================================
   PW ACCOUNT SIDEBAR GSM - HARD FIX
   ========================================================= */

@media (max-width:760px) {

    .pw-account-sidebar {
        position: fixed !important;

        top: 0 !important;
        left: 0 !important;
        bottom: 0 !important;

        width: min(320px, calc(100vw - 34px)) !important;
        height: 100dvh !important;
        max-height: 100dvh !important;

        display: flex !important;
        flex-direction: column !important;

        visibility: visible !important;
        opacity: 1 !important;

        transform: translateX(-105%) !important;

        overflow-y: auto !important;
        overflow-x: hidden !important;

        z-index: 30001 !important;

        background: #0b0b0a !important;

        pointer-events: none !important;
    }

    .pw-account-sidebar.open {
        transform: translateX(0) !important;

        visibility: visible !important;
        opacity: 1 !important;

        pointer-events: auto !important;
    }

    .pw-account-sidebar-overlay {
        position: fixed !important;
        inset: 0 !important;

        z-index: 30000 !important;

        visibility: hidden !important;
        opacity: 0 !important;

        pointer-events: none !important;
    }

    .pw-account-sidebar-overlay.open {
        visibility: visible !important;
        opacity: 1 !important;

        pointer-events: auto !important;
    }

}
