/*
=================================
PLANNING KS
SPRINT 8
=================================
*/

.pks-titre-etape{

    margin:0 0 5px 0 !important;

    line-height:1.1;
}

.pks-manifestation-select input[type=text]{

    margin-top:0 !important;
}

.pks-manifestation-select{

    background:#f7fbff;

    border:1px solid #1F4E79;

    border-radius:10px;
    padding:8px 15px;
    margin:8px 0;
}

.pks-manifestation-titre{

    background:#1F4E79;

    color:#fff;

    padding:14px 18px;

    border-radius:10px;

    font-size:24px;

    font-weight:700;

    margin-bottom:15px;

    box-shadow:
        0 2px 6px rgba(0,0,0,.08);
}

.pks-manifestation-description{

    margin:12px 0 15px 0;

    padding:12px 15px;

    background:#ffffff;

    border:2px solid #e4e7eb;

    border-radius:8px;

    font-size:15px;

    line-height:1.5;

    text-align:justify;

    color:#444;
}
.pks-wrapper{
    max-width:900px;
    margin:auto;
    padding:0px;
}

/* Titres */

.pks-wrapper h2{
    color:#1F4E79;
    font-size:32px;
    margin-bottom:5px;
}

.pks-manifestation-select label{
    font-size:16px;
    font-weight:500;
    

}

.pks-manif-ligne1{

    display:flex;

    justify-content:space-between;

    align-items:center;
}

.pks-manif-date{

    margin-top:4px;

    font-size:14px;

    color:#dce9f8;
}

.pks-manifestation-select h3{

    margin-top:0 !important;

    margin-bottom:5px;
}

.pks-wrapper h3{
    color:#1F4E79;
    margin-top:3px;
}

/* Inputs */

.pks-wrapper input[type=text],
.pks-wrapper input[type=date],
.pks-wrapper input[type=time],
.pks-wrapper select{

    width:100%;
    max-width:350px;

    padding:10px;

    border:1px solid #d0d7de;
    border-radius:8px;

    margin-top:5px;
}

/* Boutons */

.pks-wrapper button{

    background:#1F4E79;
    color:#fff;

    border:none;

    padding:10px 18px;

    border-radius:8px;

    cursor:pointer;

    margin-top:20px;
}

.pks-wrapper button:hover{

    background:#163b5d;
}

/*
=================================
CARTE INFO
=================================
*/

.pks-dashboard{

    background:#f7fbff;

    border:1px solid #d8e6f5;

    border-radius:12px;

    padding:15px;

    margin-bottom:20px;

    box-shadow:
    0 2px 8px rgba(0,0,0,.05);
}

/*
=================================
PARTICIPANTS
=================================
*/

.pks-participant{

    background:white;

    border:1px solid #e5e7eb;

    border-radius:8px;

    padding:10px;

    margin-bottom:8px;
}

.pks-participant-count{

    font-size:12px;

    color:#667085;

    font-weight:500;
}

/*
=================================
CRENEAUX
=================================
*/

.pks-creneau{

    background:white;

    border-radius:12px;

    padding:15px;

    margin-bottom:15px;

    box-shadow:
        0 2px 8px rgba(0,0,0,.08);
}

.pks-creneau:hover{

    transform:translateY(-2px);

    transition:.2s;
}

/*
=================================
ETAT
=================================
*/

.pks-etat-vide{

    color:#DC3545;
    font-weight:bold;
}

.pks-etat-partiel{

    color:#F39C12;
    font-weight:bold;
}

.pks-etat-complet{

    color:#28A745;
    font-weight:bold;
}

.pks-dashboard-user{
 font-size:18px;
font-weight:600;
line-height:1;

}

/*
=================================
MOBILE
=================================
*/

@media(max-width:768px){

    .pks-wrapper{

        padding:15px;
    }

    .pks-wrapper h2{

        font-size:28px;
    }

}

/*
=================================
SPRINT 8.2
INDICATEURS VISUELS
=================================
*/


.pks-remplissage-inline{

    display:flex;
flex-wrap:wrap;
    align-items:center;

    gap:8px;

    margin:2px 0;
}



.pks-groupe-titre{

    background:#1F4E79;

    color:white;

    padding:10px 15px;

    border-radius:8px;

    font-size:22px;

    font-weight:600;

    margin-top:30px;

    margin-bottom:5px;
}

.pks-participants-list{

    display:flex;

    flex-wrap:wrap;

    gap:8px;

    margin-bottom:15px;
}

.pks-participant-tag{

    display:flex;

    align-items:center;

    gap:8px;

    background:#f4f8fc;

    border:1px solid #dfe8f2;

    border-radius:20px;

    padding:4px 10px;
}

.pks-participant-tag form{

    margin:0;
}

.pks-delete-participant{

    width:18px;

    height:18px;

    padding:0 !important;

    margin:0 !important;

    border-radius:50%;

    background:#dc3545;

    color:white;

    font-size:11px;

    line-height:1;
}

.pks-remplissage-inline .pks-slots{

    margin:0;
}

.pks-remplissage-texte{

    font-size:14px;

    font-weight:600;

    color:#666;
}

.pks-slots{

    display:flex;

    flex-wrap:wrap;

    gap:2px;

    max-width:100%;

    font-size:20px;
}

.pks-slot-filled{
    opacity:1;
    color:#008000;

}

.pks-slot-empty{
    opacity:.15;
}

.pks-remplissage{

    font-size:14px;

    color:#666;
}

/*
=================================
SPRINT 8.3
CARTE CRENEAU
=================================
*/

.pks-card {

    background:#fff;

    border-radius:12px;

    border:1px solid #e5e7eb;

    padding:20px;

    margin-bottom:20px;

    box-shadow:
        0 4px 12px rgba(0,0,0,.07);

    transition:.2s;
}

.pks-card:hover{

    transform:translateY(-2px);

    box-shadow:
        0 6px 18px rgba(0,0,0,.12);
}

.pks-card-header{

    font-size:18px;

    font-weight:600;

    color:#1F4E79;

    margin-bottom:10px;
}

.pks-card-date{

    color:#666;

    font-size:14px;

    margin-bottom:12px;
}

.pks-badge{
    display:inline-flex;
    align-items:center;

    padding:4px 10px;
    border-radius:15px;

    font-size:12px;
    font-weight:bold;

    margin-bottom:0;

    white-space:nowrap;
}

.pks-badge-danger{

    background:#ffe6e6;

    color:#dc3545;
}

.pks-badge-warning{

    background:#fff4dd;

    color:#f39c12;
}

.pks-badge-success{

    background:#e5f8eb;

    color:#28a745;

}
.pks-inscription-card{

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:10px;

    padding:15px;

    margin-bottom:15px;
}

.pks-participant-card{

    background:#fff;

    border:1px solid #e5e7eb;

    border-radius:12px;

    margin-bottom:12px;

    overflow:hidden;

    box-shadow:
    0 2px 8px rgba(0,0,0,.05);
}

.pks-creneau-info{

    margin-top:4px;

    font-size:14px;

    color:#555;
}

.pks-creneau-ligne2{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:nowrap;
    font-size:14px;
    min-height:28px;
}

.pks-entete{

    display:flex;

    align-items:center;

    gap:25px;

    padding:15px 20px;

    margin-bottom:10px;

    background:#f4f8fc;

    border-radius:12px;
}

.pks-logo{

    width:160px;

    height:auto;
}

.pks-entete-texte h1{

    margin:0;

    color:#1F4E79;

    font-size:36px;

    line-height:1;

    font-weight:700;
}

.pks-slogan{

    margin-top:2px;

    color:#444;

    font-size:14px;

    line-height:1.1;
}

.pks-aide-utilisateur{

    background:#fff9c4;

    border:1px solid #e6d77b;

    border-radius:12px;

    padding:5px 12px;

margin-top:0;
margin-right:0px;
margin-bottom:20px;
margin-left:0px;
    color:#5c4b00;

    font-size:14px;

    line-height:1.5;

    box-shadow:
        0 2px 5px rgba(0,0,0,.05);
}

.pks-participants-inline{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    margin-top:4px;

    margin-bottom:2px;
}

.pks-participant-checkbox{

    display:flex;

    align-items:center;

    gap:4px;

    font-size:14px;
}

.pks-creneau-ligne2 span{

    display:flex;

    align-items:center;

    height:28px;
}

.pks-etat-inline{

    display:flex;

    align-items:center;

    height:28px;

    margin-left:auto;
}


.pks-creneau-etat{

    margin-top:4px;

    font-size:13px;

    font-weight:600;
}

.pks-participant-header{

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:2px 10px !important;

    line-height:1.1;

    min-height:22px;

    background:#f4f8fc;

    border-bottom:1px solid #e3ebf4;

    color:#1F4E79;

    font-weight:600;
}

.pks-participant-header span:last-child{

    margin-left:auto;
}

.pks-inscription-row{

    display:flex;

    align-items:center !important;

    gap:10px;

    padding:0 10px;

    height:32px;

    border-top:1px solid #f2f2f2;
}

.col-groupe{

    width:180px;

    font-weight:600;
}

.col-date{

    width:130px;
}

.col-horaire{

    width:140px;
}

.col-action{

    margin-left:auto;

    display:flex;

    align-items:center;

    justify-content:center;

    align-self:center;
}

.col-action form{

    margin:0 !important;

    padding:0 !important;

    display:flex;

    align-items:center;

    justify-content:center;
}

.pks-btn-cancel{

    width:24px;

    height:24px;

    padding:0 !important;

    margin:0;

    border-radius:6px;

    display:flex;

    align-items:center;

    justify-content:center;

    line-height:24px;

    font-size:13px;
}
.col-action form{

    margin:0 !important;

    padding:0 !important;

    display:flex;

    align-items:center !important;

    justify-content:center;

    height:32px;
}

.pks-btn-cancel{

    width:22px !important;

    height:22px !important;

    min-height:22px !important;

    padding:0 !important;

    margin:0 !important;

    display:flex !important;

    align-items:center !important;

    justify-content:center !important;

    line-height:1 !important;
}


/* =================================
   MOBILE
================================= */

@media (max-width:768px){

    .pks-wrapper{
        padding:15px;
    }

    .pks-wrapper h2{
        font-size:28px;
    }

    .pks-manifestation-titre{
        font-size:16px;
        padding:10px 12px;
    }

    .pks-dashboard-user{
        font-size:11px;
        font-weight:500;
        line-height:1.2;
    }

    .pks-badge{
        display:none;
    }

    .pks-participant-count{
        display:none;
    }

    /* Cartes inscriptions */

    .pks-inscription-row{

        display:block !important;

        position:relative;

        height:auto !important;

        padding:8px 40px 8px 10px !important;

        border-top:1px solid #f2f2f2;
    }

    .col-groupe{

        display:block !important;

        width:auto !important;

        font-weight:600;

        margin-bottom:4px;
    }

.col-date,
.col-horaire{

    display:inline-block !important;

    width:auto !important;

    font-size:13px;

    color:#666;
}

.col-date{
    margin-right:8px;
}

    .col-action{

        position:absolute;

        top:50%;

        right:8px;

        transform:translateY(-50%);

        margin:0;
    }

    .pks-btn-cancel{

        width:28px !important;

        height:28px !important;

        min-height:28px !important;

        margin:0 !important;

        padding:0 !important;

        display:flex !important;

        align-items:center !important;

        justify-content:center !important;
    }

   .pks-entete{

        flex-direction:column;

        text-align:center;
        padding:4px 12px;
        gap:4px;               /* rapproche logo et texte */
        margin-bottom:4px;
    }

    .pks-logo{

        width:90px;

        margin-bottom:0;
    }

.pks-entete-texte h1{

        margin:0;
        margin-bottom:-5px;

        white-space:nowrap;

        font-size:clamp(10px, 4vw, 22px);

        line-height:1;

        overflow:hidden;
    }
 .pks-entete-texte{
        flex:1;
        min-width:0;
    }

.pks-slogan{

        margin-top:0px;

        margin-bottom:5;

        line-height:1;

        font-size:clamp(7px,2vw,11px);
}

.pks-titre-etape{

    display:block;

    width:100%;

    overflow:hidden;

    text-overflow:ellipsis;

    white-space:nowrap;

    font-size:clamp(16px, 4vw, 36px);
}


.pks-manifestation-select label {
    font-size: 14px;
    font-weight: 500;
}

.pks-manifestation-select p{

    margin:0 !important;

    padding:0 !important;
}

    .pks-manifestation-titre{

        white-space:nowrap;

        overflow:hidden;

        font-size:clamp(12px,4vw,18px);

        padding:8px 10px;
    }

    .pks-manifestation-titre a{

        font-size:clamp(10px,3vw,15px);

        white-space:nowrap;
    }

.pks-manif-date{

    margin-top:Opx;

    font-size:11px;

    color:#dce9f8;

}
}

