._contain {
    display : block;
    position: relative;
    float: left;
    margin: 10px;
    width: 380px;
    min-height : 150px;
    border : 1px solid black;
}

/* TEXT INPUT */
._textInput{
    display: block;
    margin :5px;
    margin-left: 10px; 
    margin-bottom :8px;
}

._textInput input:focus{
    border : 1px solid #269DF3;
}

._textInput label {
    display : block;
    font-size: 16px;
    padding-left: 10px;
    margin-bottom: 0px;
    text-transform: capitalize;
    text-align: left;
}

._textInput input {
    width: 100%;
    height: 44px;
    font-size: 12px;
    background: #4A4A4A;
    border: 1px solid rgba(255, 255, 255, 0.4);
    color: white;
    /*! margin-left: 10px; */
     padding-left: 5px;
    /*! margin-bottom :8px; */
}

._textInput input:disabled {
    background: #D9D9D9
}

._textInput ._small{
    width: 100px;
}

._textInput ._verysmall{
    width: 50px;
}
._verysmall input{
    height: 30px;
}
._textInput ._medium{
    width: 185px;
    display: block;
    position: relative;
    float: left;
}

._textInput ._RTB{
    width: 317px;
}

._textInput ._MAX{
    width: 100%;
}


._textInput ._rightSelector{
    
    width: 22px;
    height: 44px;

    position: relative;
    float: right;
    display: block;
    background: red;
    margin-top: -44px;
}

._textInput ._plus{
    display:block;
    width: 22px;
    height: 22px;
    background-color: #D9D9D9;
    text-align: center;
    color: black;
    cursor: pointer;
}

._textInput ._plus:hover{
    background-color: #0F0F0F;
    color: #55FFA4;
}

._textInput ._moins{
    display:block;
    width: 22px;
    height: 22px;
    background-color: #D9D9D9;
    text-align: center;
    color: black;
    cursor: pointer;
}

._textInput ._moins:hover{
    background-color: #0F0F0F;
    color: #55FFA4;
}



/* SELECT INPUT */
._selectInput .selectionned{
    color : pink;
    font-weight: bold;

}

._selectInput{
    margin :5px;
    /*! padding-top: 0px; */
}

._selectInput label {
    display : block;
    font-size: 16px;
    padding-left: 5px;
    margin-bottom: 0px;
    text-transform: capitalize;
}

._selectInput select {
    width: 317px;
    height: 44px;
    font-size: 12px;
    background: #4A4A4A;
    color: white;
    border: none;

    padding-left: 5px;
}

._selectedOption{
    width: 325px;
}
._selectedOption ul{
    margin-left :0px;
}

._selectedOption li{
    padding :5px;
}

._selectedOption input{
    position : relative;
    float : right;
}

._selectCollision {
    margin :5px;
    display: block;
    width: 100%;
    height: 200px;
    padding: 10px;
}

._selectCollision ._visualCollision {
    display: block;
    position: relative;
    float: right;
    width: 100px ;
    height: 100px;
}

/* small box for collision*/


._visualCollision div{
    display: block;
    position: absolute;
    border : 1px solid black;
}

._visualCollision ._leftCollide{
    display: block;
    position: absolute;
    left:0px;
    top:0px;
    width: 10px ;
    height: 82px;
}
._visualCollision ._topCollide{
    display: block;
    position: absolute;
    top:0px;
    left:0px;
    width: 82px ;
    height: 10px;
}
._visualCollision ._rightCollide{
    display: block;
    position: absolute;
    left:72px;
    top:0px;
    width: 10px ;
    height: 82px;
}
._visualCollision ._bottomCollide{
    display: block;
    position: absolute;
    left:0px;
    top:72px;
    width: 82px ;
    height: 10px;
}

/* end of small bloc for collision */

._formCollision{
    display: block;
    height: 130px;
    width: 340px;
    background: #4A4A4A;
    padding: 10px;
}

._selectCollision ._visualCheck{
    display: block;
    position: relative;
    float: left;
    color:white;
}

._visualCheck span{
    display: block;
    position: relative;
    float: left;
    width: 100%;
    color:black;
}

._inputSubmit{
    margin :5px;
    display: block;
    height: 35px;
    cursor: pointer;
    background-color:lightgrey ;
    border : 1px solid black;
    color:black;
    user-select: none;
}

._inputSubmit:active{
    background-color:darkgrey;
    color: white ;
}

._inputSubmit p{
    text-align: center;
    line-height:30px;    
}

._selectListenTo{
    color: black !important;
}

._selectListenTo span{
    display: block;
}

._listenToEntity input{
    margin-left: 15px;
}

._listenToEntity ._formBody{
    margin-left: 15px;
}

._formTitle{
    display: block;
    position: relative;
    float: left;
    text-align: left;
    text-transform: capitalize;
    margin-bottom: px;
}

._formTitle_medium{
    display: block;
    width: 150px;
    position: relative;
    float: left;
    text-align: left;
    overflow-x: auto;
    margin-right: 10px;
    height: 44px;
    padding-top: 5px;
}

._create{
    display: block;
    position: relative;
    float: right;
    text-decoration: underline;
    cursor: pointer;
}

._add{
    display: block;
    text-decoration: underline;
    cursor: pointer;
    margin: 20px;
}


._subForm{
    border-top: 0.1rem dotted white;
    margin-bottom: 10px;
    padding: 5px;
 }




._subject {
    display: block;
    background: #2F2F2F;
    color: #FFFFFF;
}

._subject hr{
    border-top: 1px solid white;
    width: 380px ;
}

._getters {
    display: block;
    background: #0F0F0F;
    width: 100%;
    margin-bottom: 5px;
    color: white;

}


._getterTitle {
    display: block;
    background: #4A4A4A;
    font-family: roboto;
    font-weight: 500;
    font-size: 16px;
    font-style: italic;
    text-align: left;
    width: 100%;
    color: white;
    height: 44px;
    padding: 10px;
}

._getterTitleReduced {
    display: block;
    background: #55FFA4;
    text-align: left;
    font-family: roboto;
    font-weight: 500;
    font-size: 16px;
    font-style: italic;
    text-align: left;
    width: 100%;
    color: black;
    height: 44px;
    padding: 10px;
}

._selectAsButton{
    display: block;
    position: relative;
    margin-left: 5px;
    min-height: 80px;
}

._selectAsButton ._formTitle{
    display: block;
   width: 100%;
}

._buttons{
    display: block;
    width: 100%;
    height: 45px;
    margin-left: 5px;
}

._button{
    display: block;
    position: relative;
    min-width: 30px;
    height: 100%;
    float: left;
    margin-left: 5px; 
    background-color: #4A4A4A; 
    cursor: pointer;
}

._selectAsButtonTitle{
    display: block;
    width: 100%;
    text-transform: capitalize;
}

._selectAsButton input{
    height: 44px;
    color: white;
    background: #4A4A4A;
    border:none;
}

._conditionFull{
    display: none;
    border: 1px solid #55FFA4;
}

._getters:hover ._conditionFull {
    display: block;
}

._getters:hover ._conditionReduced {
    display: none;
}

._getterOperations{
    display: block;
}


/* dataForm*/

._dataForm{
    display: block;
    /*! margin-left: 15px; */
    /*! margin-right: 15px; */
}

._dataForm ._componentTitle{
    cursor: pointer;
    height: 57px;
}

._dataForm ._formComponent{
    display: none;
}

._dataForm:hover ._componentTitle{
    
}

._dataForm:hover ._formComponent{
    display: block;
}

._listInRTB{
    display: block;
    position: relative;
    float: left;
    width: 100%;
    background:#2F2F2F;
    padding-left: 5px;
    padding-right: 15px;
}

#ListReduced{
    display: block;
    width: 100%;
    background: #262626;

}

#ListReduced ._reducedNavInit{
    display: block;
    padding-top: 10px;
    padding-left: 15px;
    height: 35px;
    cursor: auto;
    Opacity: 0.6;
    border-bottom-width: 0.1rem;
    border-bottom-style: dotted;
    border-bottom-color: white;
}

._listInRTB ._reducedNav{
    display: block;
    padding: 15px;
    height: 50px;
    cursor: pointer;
    text-transform: capitalize;
    /*background-color: red;*/
    position: relative;
    float: left;
    width: 100%;
    border-bottom : 1px solid black;
    margin-bottom: 10px;
    background-color: #262626;

}

#ListReduced ._listTitle{
    display: block;
    text-transform: capitalize;
    position:relative;
    float:left;
    left: 25px;
}
._reducedNav ._listAll{
    display: block;
    position:relative;
    float:right;
    right: 20px;
    text-decoration: underline;
}

._largeButton{
    height: 50px;
    width: 100%;
    background-color: #2DB3FF;
    color: white;
    border: none;
    font-weight: bold;
    margin-top: 15px;

}

._largeButton:active{
    background-color: white;
    color: #2DB3FF;
}

._medButton{
    height: 50px;
    width: 340px;
    background-color: #2DB3FF;
    color: white;
    border: none;
    font-weight: bold;
    margin-top: 15px;

}

._medButton:active{
    background-color: white;
    color: #2DB3FF;
}


._smallButton{
    height: 50px;
    width: 124px;
    background-color: #2DB3FF;
    color: white;
    border: none;
    font-weight: bold;
    margin-top: 15px;
}

._smallButton:active{
    background-color: white;
    color: #2DB3FF;
}

button{
    height: 50px;
    min-width: 125px;
    background-color: #2DB3FF;
    color: white;
    border: none;
    font-weight: bold;
    margin-top: 15px !important;
    padding-left: 20px;
    padding-right: 20px;

}

button:hover{
    background-color: #269DF3;
}

button:active{
    background-color: white;
    color: #2DB3FF;
}


._backTitle{
    margin-right: 10px;
    float: left;
    margin-top: -2px;
}

/* Save feedback */
._saveFeedback {
    display: block;
    padding: 8px 15px;
    font-size: 14px;
    font-weight: bold;
    clear: both;
}
._saveSuccess { color: #55FFA4; }
._saveError { color: #FF5555; }

/* Selected item indicator */
._formSelectedName {
    display: block;
    padding: 4px 10px;
    font-size: 11px;
    color: #55FFA4;
    font-style: italic;
    opacity: 0.8;
}

/* Formulaire HUD (uiElement).
   Les actions restent EN HAUT et les champs scrollent dans leur propre cadre : le panneau de
   droite ne scrolle qu'au-delà de 850px et le body est en overflow:hidden -> un formulaire long
   rendrait son bouton SAVE inatteignable sur un écran plus petit. */
._uiElementActions {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
    padding: 8px 10px 10px 10px;
    border-bottom: 1px solid #444;
    margin-bottom: 6px;
}

._uiElementActions ._medButton {
    width: auto;
    flex: 1 1 40%;
    min-width: 110px;
    height: 40px;
    margin-top: 0;
}

._uiElementActions ._secondary {
    background-color: #4A4A4A;
}

._uiElementFields {
    display: block;
    max-height: 46vh;
    overflow-y: auto;
    overflow-x: hidden;
}

._uiElementAdvanced {
    cursor: pointer;
    padding: 10px;
    margin-top: 6px;
    color: #2DB3FF;
    font-weight: bold;
    border-top: 1px solid #444;
}

/* Formulaire HUD (uiElement) : chaque champ porte son aide sous l'input. */
._uiElementField {
    display: block;
    width: 100%;
}

._formHelp {
    display: block;
    padding: 0 10px 6px 10px;
    font-size: 10px;
    line-height: 1.3;
    color: #8fa8bd;
    opacity: 0.75;
}

/* Section headers in TriggerView */
._sectionHeader {
    display: block;
    width: 100%;
    padding: 7px 15px;
    background-color: #1a1a1a;
    color: #55FFA4;
    font-weight: bold;
    font-size: 11px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-top: 4px;
    border-left: 3px solid #55FFA4;
}

/* Step flow in Database tab header */
._stepFlow {
    display: block;
    font-size: 11px;
    color: rgba(255,255,255,0.5);
    letter-spacing: 0.5px;
}

/* Step badge on DataForm titles */
._stepBadge {
    display: inline-block;
    color: #55FFA4;
    margin-right: 4px;
    font-weight: bold;
}

/** SELECT DIRECTION **/

._selectDirection{
    width: 100%;
    height: 80px;
    display: block;
    position: relative;
    padding-left: 10px;
}

._selectDirection ._formTitle{
    margin-top: 25px;
}

.active{
    background-color: red
}

._formDirection{

    width: 70px;
    display: block;
    float: left;
    margin-left: 30px;
}

._formDirection span{
    display: block;
    position: relative;
    float: left;
    height: 21px;
    width: 21px;
    cursor: pointer;
    margin: 1px;
}

._formDirection span:hover{
    cursor: pointer;
    margin: 1px;
    border: 1px solid green ;
}

._directionNO img{
    transform: rotate(225deg);
}

._directionN img{
    transform: rotate(270deg);
}

._directionNE img{
    transform: rotate(315deg);
}

._directionO img{
    transform: rotate(180deg);
}

._directionSO img{
    transform: rotate(135deg);
}

._directionS img{
    transform: rotate(90deg);
}

._directionSE img{
    transform: rotate(45deg);
}

/** CSS CORE BODY */

._mainBody{
    background-color:  #262626;
    float: left;
    color: white;
    padding-left: 50px;
    padding-right: 50px;
    width: 100%;
}

._core{
    width: 100%;
    float: left;
}

._core ._gameDisplay{
    margin-bottom: 50px;
}

/** Profil */

._userProfil{
    display: block;
    width: 100%;
    background-color: #262626;
    float: left;
    color: white;
}
._userProfil ._gameDisplayList{
    width: 100%;
}

._about {
    display: block;
    width: 100%;
    float: left;
    color: white;
    margin-bottom: 20px;
}

._about span{
    display: block;
    float: left;
    color: white;
    margin-top: 20px;
}

._about img{
    float: left;
    border-radius: 50%;
    width: 110px;
    height: 110px;
    margin-right: 20px;
}

/**  CSS Boutique  */

._gameDisplayList{
    position: relative;
    width: 100%;
    float: left;
}

._gameDisplayList ._rightInfo a{
    color: white;
    text-decoration: underline;
}

._header{
    display: block;
    position: relative;
    width: 100%;
    float: left;
    margin-bottom: 10px;
    margin-top: 20px;
}

._header ._title{
    position: relative;
    float: left;
    font-size: 26px;
    line-height: 30.47px;
}

._header ._title2{
    position: relative;
    float: left;
    font-size: 16px;
    line-height: 19px;
}



._bottomBar ._rightInfo{
    display: flex;
    align-items: flex-start;
    padding: 0px;
    
    position: absolute;
    max-width: 129px;
    height: 19px;
    right: 10px;
    bottom: 20px;
}

._bottomBar ._leftInfo{
    display: flex;
    align-items: flex-start;

    width: 263px;
    height: 16px;
    bottom: 20px;

    font-size: 14px;
    line-height: 16px;
    
    /* blue */
    color: #2DB3FF;
    position: absolute;
    padding-left: 5px;
}

._header ._rightInfo{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0px;
    
    position: absolute;
    width: 129px;
    height: 19px;
    right: 10px;
}

._gameDisplay2{
    display: block;
    position: relative;
    float: left;
    width: 433px;
    height: 360px;
    margin-right: 20px;
    padding: 5px;
    background-color: #0F0F0F;
    color: white;
}
._gameDisplay{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 10px;

    position: relative;
    width: 433px;
    height: 360px;

    background: #0F0F0F;
    border-radius: 6px;
    float:left;
    margin-right: 1%;
}

._gameDisplay2 ._title{
    display: block;
    position: relative;
    width: 420px;
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 10px;
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.4);
    font-size: 20px;
    line-height: 23px;
    cursor: pointer;
}

._gameDisplay ._title{
    position: static;
    width: 413px;
    height: 19px;
    left: 0px;
    top: 0px;
    /* white */
    color: #FFFFFF;
    /* Inside Auto Layout */
    flex: none;
    order: 0;
    flex-grow: 0;
    margin: 10px 0px;
    padding-bottom: 30px;
    padding-left: 5px;

    font-size: 16px;
    line-height: 19px;
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.4);
    cursor: pointer;
}


._gameDisplay ._bottomBar{
    color:rgba(255, 255, 255, 0.4);
}

._carouselitem ._gameDisplay{
     float: none;
    margin-left: 5px; 
    padding: 5px;
    background-color: #0F0F0F;
    color: white;
    margin-left: auto;
}

._gameDisplay ._gameIcon{
    position: static;
    max-width: 413px;
    width: auto;
    height: 260px;
    left: 10px;
    top: 10px;
    
    
    /* Inside Auto Layout */
    flex: none;
    order: 0;
    flex-grow: 0;
    margin: 5px auto;
}

/** gameDetail */

._gameDetails{
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    background-color: #262626;
    color: white;
    margin-bottom: 40px;
    float: left;
}

._gameDetails ._gameIcon{
    float: left;
    width: 850px;
    height: 625px;
}

._gameDetails ._details{
    display: block;
    position: relative;
    padding-left: 30px;
    width: calc(100% - 850px);
    min-width: 350px; 
    float: left;
}

._gameDetails ._title{
    display: block;
    position: relative;
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 10px;
    border-top: 0.5px solid rgba(255, 255, 255, 0.4);
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.4);
    font-size: 20px;
    line-height: 23px;

}

._gameDetails ._bottomBar{
    padding-top:10px;
    border-top: 0.5px solid rgba(255, 255, 255, 0.4);
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.4);
    height: 50px;
}

._gameDetails ._tags{
    display: block;
    position: relative;
    width: 100%;
    margin-top: 20px;
    margin-bottom: 20px;
}

._tags ._tag{
    background: #2F2F2F;
    /* white transparent */
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-sizing: border-box;
    border-radius: 3px;
    margin-left: 10px;
    padding: 5px;
}

/* popup */
._half{
    display: block;
    position: relative;
    float: left;
    width: 50%;
    padding-left: 28px;
    margin-top: 27px;
    margin-bottom: 27px;
    padding-right: 28px;
}

._half ._textInput{
    margin-left:0px;
    margin-bottom:10px;
}

._half ._selectInput{
    margin-left:0px;
    margin-bottom:10px;
}

._footer{
    display: block;
    position: relative;
    float: left;
    height: 70px;
    width: 100%;
    background-color: #3E3E3E;
}

._footer ._smallButton{
    margin-right:15px;
    margin-top: 10px;
    float: right;
}

/* login */

._logSign{
    display: block;
    width: 790px;
    background-color: #262626;
    float: left;
    color: white;

}

._logSign ._formTitle{
    margin-bottom: 20px;
}

/* CREATE GAME */

._createGame{
    display: block;
    width: 790px;
    background-color: #262626;
    float: left;
    color: white;

}

._createGame ._formTitle{
    margin-bottom: 10px;
}

._createGame textarea{
    width: 340px;
    height: 160px;
    padding: 5px;
    background: #3E3E3E;
    border: 1px solid rgba(255, 255, 255, 0.4);
    color: white;
}

._gameTypeSelection {
    padding: 20px;
}

._gameTypeGrid {
    display: flex;
    gap: 16px;
    margin-top: 16px;
    justify-content: center;
}

._gameTypeCard {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 20px;
    width: 200px;
    background: #3E3E3E;
    border: 2px solid rgba(255, 255, 255, 0.15);
    border-radius: 8px;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s;
}

._gameTypeCard:hover {
    border-color: rgba(255, 255, 255, 0.5);
    background: #4a4a4a;
}

._gameTypeCard._selected {
    border-color: #4a9eff;
    background: #2a3a50;
}

._gameTypeIcon {
    font-size: 40px;
    margin-bottom: 10px;
}

._gameTypeLabel {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 6px;
}

._gameTypeDesc {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
    text-align: center;
}

._gameTypeHeader {
    display: flex;
    align-items: center;
    padding: 8px 16px;
    gap: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

._backBtn {
    background: none;
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: white;
    padding: 4px 12px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 13px;
}

._backBtn:hover {
    background: rgba(255, 255, 255, 0.1);
}

._selectedType {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.8);
}

/* CAROUSEL */

._carousel{
    position : relative;
    overflow : hidden;
}

._carouselpanorama{
    transition : transform 0.3s;
    transform : translate3d(0,0,0);
    width: 300%;
    overflow-y: hidden;
}

._carouselpanorama::after{
    content : '';
    clear : both;
    display : table
}

._carouselitem{
    float : left;
    width: 430px;
    margin-right: 20px;
}

._carousel_prev, ._carousel_next{
    position : absolute;
    z-index : 100;
    width : 30px;
    height : 50px;
    background : white url("/src/static/img/arrow-carrou-right.png") center center no-repeat;
    background-size : 20px 20px;
    top : 110px;
    right : 0px;
    box-shadow : 0 15px 35px #3232321a,0 5px 15px #0000001a;
    cursor : pointer;
    transition : transform 0.3s;
}


._carousel_prev:hover , ._carousel_next:hover{
    transform : scale(1.2)
}

._carousel_prev{
    right : auto;
    left : 1px;
    background : white url("/src/static/img/arrow-carrou-left.png") center center no-repeat;
    background-size : 20px 20px;
}