@font-face {
    font-family: "Jost";
    src: url('../fonts/Jost-Regular.ttf');
    src: url('../fonts/Jost-Regular.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Jost-Regular.woff2') format('woff2'),
         url('../fonts/Jost-Regular.woff') format('woff'),
         url('../fonts/Jost-Regular.ttf')  format('truetype'),
         url('../fonts/Jost-Regular.svg#svgFontName') format('svg');
}

@media (min-width: 1600px) {
    .mainAction {
        font-size: 2.5em!important;
    }

    .add .step, .verify .step, .publish .step {
        font-size: 5em!important;
    }
}

@media (min-resolution: 120dpi) {
    .mainAction {
        font-size: 2em!important;
    }

    .searchButton {
        font-size: inherit!important;
    }

    .add .step, .verify .step, .publish .step {
        font-size: 4em!important;
    }

    .publish {
        left: 23em!important;
        top: 3em!important;
    }

    #venteButton {
        right: 92px!important;
    }

    #locationButton {
        right: 10px!important;
    }
}

@media (max-height: 780px) {
    .add {
        right: 9em!important;
        top: 19em!important;
    }

    .verify {
        right: -5em!important;
        top: 6em!important;
    }

    #slideshow {
        left: 51%!important;
    }

}

@media (max-height: 660px) {
    .add {
        right: 6em!important;
        top: 14em!important;
    }

    .verify {
        left: -10em!important;
        top: 3em!important;
    }

    #slideshow {
        display: none;
    }

}

@media (max-width: 1400px) {
    .add button, .verify button, .publish button {
        padding: 1em!important;
        width: 6em!important;
        height: 6em!important;
    }

    .add .step, .verify .step, .publish .step {
        font-size: 3em!important;
    }

    .mainButton i {
        font-size: 3em!important;
    }

    .mainCounts > div i {
        font-size: 20px!important;
    }

    .publish, .verify, .add {
        flex-direction: column;
    }

    .publish {
        left: 28em!important;
        top: -1em!important;
    }

    .verify {
        right: 0em!important;
        top: -1em!important;
    }

    .add {
        right: 15em!important;
        top: 13em!important;
    }

    .notification i {
        font-size: 1em!important;
    }

    .slideshowTextBottomType {
        font-size: 17px!important;
    }

    .slideshowTextBottomPrice {
        font-size: 19px!important;
    }
}

@media (max-width: 1110px) {
    .indexStep {
        flex-direction: column!important;
        width: 100%;
    }

    .publish {
        left: 15em!important;
        top: 0em!important;
    }

    .verify {
        left: 1em!important;
        top: 3em!important;
    }

    .add {
        right: 11em!important;
        top: 15em!important;
    }

    #slideshow {
        display: none!important;
    }
}

@media (max-width: 970px) {
    #propertyAd {
        flex-direction: column;
    }

    #propertyAdInfos {
        margin-bottom: 10px!important;
    }

    #propertyAdInfos, #propertyAdInfos2 {
        width: 100%!important;
        padding: 0!important;
    }
}

@media (max-width: 760px) or (max-height: 690px) {
    #all-actions {
        background-position-y: 7em!important;
    }

    .publish, .verify, .add {
        flex-direction: column;
    }
    
    .publish {
        left: 4em!important;
        top: 4em!important;
    }

    .verify {
        right: 0em!important;
        left: -1em!important;
        top: 6em!important;
    }

    .add {
        right: 5em!important;
        top: 11em!important;
    }

    .add .step, .verify .step, .publish .step {
        font-size: 2em!important;
    }

    .mainButton i {
        font-size: 1.9em!important;
    }

    .mainAction p {
        text-align: center!important;
    }

    .add button, .verify button, .publish button {
        padding: 0.5em!important;
        width: 4em!important;
        height: 4em!important;
    }

    .mainAction {
        font-size: large!important;
    }

    #buttonsBottom i {
        font-size: 2em!important;
    }

    .buttonBottomText {
        font-size: large!important;
    }

    .mainCounts > div, .mainCounts > div i {
        font-size: large!important;
    }

    #propertyDetailsContent {
        flex-direction: column;
    }

    #slideshow {
        display: none!important;
    }

    .propertyDetailsContainer {
        flex-direction: column;
    }
}

@media (max-width: 605px) {
    .item {
        flex-direction: column;
    }

    .propertyPhoto img {
        width: 100%!important;
    }
}

::-webkit-scrollbar-thumb {
    background: #A20AFF;
}

body {
    font-family: Jost, Arial, Helvetica, sans-serif;
}

button {
   border: #A20AFF solid 2px; 
}

button:not(:disabled):hover {
    background-color: #A20AFF;
}

input, textarea, select {
    border: #A20AFF solid 2px;
}

input#file_dpe {
    color: black;
}

/* -- BASE -- */

#logo-soft img {
    width: 8em;
}

#main {
    background-image: url(../backgrounds/city.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
}

.mainButton {
    padding: 20px 15px;
    border-radius: 15em;
    background-color: black;
    border: white 3px solid;
}

.mainButton i {
    font-size: 4em;
}



.user-avatar {
    border: #a20aff solid 2px;
}

#installPWA {
    background-color: #0000007a;
    padding: 5px;
    text-align: center;
}

.selected:hover {
    background-color: #A20AFF!important;
}

#logoMiddle img {
    max-width: 150px;
}

.notification {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #ffffff;
    color: black;
    border-radius: 100px;
    border: 3px solid black;
    min-width: 200px;
    max-width: 300px;
    padding: 5px;
}

.notification i {
    font-size: 20px!important;
    margin: 0 5px;
}

#closeNotificationUpRight {
    cursor: pointer;
}

#all-actions {
    background-image: url(../backgrounds/lane.png);
    background-repeat: no-repeat;
    background-position: top;
    height: 100vh;
}

#actions {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 1;
}

.publish, .verify, .add {
    position: inherit;
    display: flex;
    align-items: center;
}

.publish {
    left: 24em;
    top: 3em;
}

.verify {
    right: -2em;
    top: 9em;
}

.add {
    right: 12em;
    top: 27em;
}

.add .step, .verify .step, .publish .step {
    font-size: 6em;
    font-weight: bold;
    vertical-align: top;
}

.mainCounts > div {
    width: 100%;
    padding: 0 5px;
    margin: 5px 0;
    text-align: center;
    border: white solid 2px;
    border-radius: 100px;
    font-weight: normal;
    font-size: 20px;
}

.mainCounts > div i {
    font-size: 20px;
    margin-right: 5px;
}

/* -- SLIDESHOW -- */

#slideshow {
    display: none;
    position: absolute;
    top: 45%;
    left: 55%;
    width: 30vw;
    max-width: 600px;
    height: 40vh;
    border: 3px solid white;
    border-radius: 20px;
    overflow: hidden;
}

.slideshowContainer {
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.slideshowContainer.active {
    opacity: 1;
}

#slideshow img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.slideshowTextTop {
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
    background-color: #000000c7;
    text-align: center;
    padding: 3px 0;
}

.slideshowTextTopOffer {
    font-weight: bold;
    font-size: 25px;
}

.slideshowTextBottom {
    position: absolute;
    width: 100%;
    z-index: 1;
    bottom: 0;
    background-color: #000000c7;
}

.slideshowTextBottomTitle, .slideshowTextBottomDescription {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 1px 15px;
}

.slideshowTextBottomType {
    font-size: 20px;
}

.slideshowTextBottomPrice {
    font-size: 24px;
}

.slideshowTextBottomType, .slideshowTextBottomPrice {
    font-weight: bold;
}

.slideshowTextBottomDescriptionCity, .slideshowTextBottomDescriptionReference {
    font-size: 14px;
}

.slideshowTextBottomDescriptionReference {
    font-style: italic;
    text-align: right;
}

.slideshowButtons {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.3);
    color: #fff;
    border: none;
    font-size: 2em;
    padding: 0 10px;
    cursor: pointer;
    z-index: 2;
}

.slideshowTextTopOffer {
    text-transform: uppercase;
}

#slideshowPrev { left: 10px; }
#slideshowNext { right: 10px; }

/* -- WINDOW -- */

#window-header, #window-footer {
    background: #6606a1;
}

#window-header button, #window-footer button {
    background-color: #6606a1;
}

#window-header button:hover, #window-footer button:hover {
    background-color: #330053;
}

#window-avatar-img {
    border: #A20AFF solid 2px;
}

#window-avatar-text {
    border: #A20AFF solid 2px;
}

#window-choices button:hover {
    background-color: #A20AFF;
}

#window-items-text {
    margin: 0;
}

.window-items-selected {
    display: inline-block;
    background-color: #3b005f;
    border-radius: 0 0 5px 5px;
    padding: 7px;
    margin: 0 5px 5px;
    font-size: large;
}

#window-tabs {
    background-color: #f5e4ff;
    display: flex;
    justify-content: center;
    align-items: center;
}

.windowTab {
    padding: 5px 15px;
    font-weight: bolder;
    font-size: large;
    background-color: #f5e4ff;
    color: black;
    border: 0;
    border-radius: 0;
}

.windowTabActive {
    background-color: #6606a1;
    color: white;
}

.windowTab:hover {
    background-color: #A20AFF;
    color: white;
    cursor: pointer;
}

.button-img {
    background-color: #6606a1;
}

#progress {
    background-color: #a20aff;
}

/* -- PROPERTY -- */

#propertySiteListContainer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.propertySiteItem {
    display: flex;
    border: #A20AFF solid 2px;
    border-radius: 10px;
    padding: 5px;
    width: 100%;
    margin: 5px;
    background-color: #f5e4ff;
    align-items: center;
    justify-content: center;
}

.propertySiteItem:hover {
    background-color: #A20AFF;
    cursor: pointer;
}

.propertySiteLogo {
    width: 150px;
}

#maisonsEtAppartementsLogo {
    filter: invert(100%);
}

#propertyAd {
    display: flex;
    overflow: auto;
}

#propertyAdInfos {
    width: 70%;
}

#propertyAdInfos2 {
    width: 30%;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    color: black;
    padding-left: 10px;
}

.propertyAdTitle {
    background-color: #6606a1;
    color: white!important;
    padding: 5px 15px;
    font-size: 20px!important;
}

.propertyAdContainer {
    width: 100%;
    color: black!important;
    overflow: hidden;
}

.propertyAdInsideContainer {
    display: flex;
    column-gap: 10px;
}

.propertyAdContent {
    flex: 1;
    padding: 5px 10px;
    background-color: #ecd7f9;
}

#propertyAdDetails {
    display: flex;
    flex-direction: column;
    background-color: #25003b;
}

#propertyAdOffer {
    font-size: xx-large;
    background: linear-gradient(90deg, rgb(158 0 255) 0%, rgba(0, 2, 122, 1) 100%);
    font-weight: bold;
    text-transform: uppercase;
    padding: 1vh;
}

#propertyAdType {
    font-size: 3vh;
    font-weight: bold;
    background-color: #6606a1;
    padding: 0.2em;
}

#propertyAdCity {
    background-color: #ecd7f9;
    padding: 1vh;
    font-size: 2vh;
    color: black;
}

#propertyAdPhoto {
    position: relative;
    overflow: hidden;
    height: 30em;
}

#propertyAdPhoto img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#propertyAdServices {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.serviceItem {
    padding: 5px 10px;
    border: #0609ba solid 3px;
    border-radius: 50px;
    margin: 3px;
}

#DPEItemWrapper, #GESItemWrapper {
    display: flex;
    justify-content: center;
}

.DPEGrid, .GESGrid {
    padding: 10px;
    border: #000000 solid 1px;
}

#DPE_A.active {
    background-color: #00FF00;
    color: black;
}

#DPE_B.active {
    background-color: #ADFF2F;
    color: black;
}

#DPE_C.active {
    background-color: #FFFF00;
    color: black;
}

#DPE_D.active {
    background-color: #FFA500;
}

#DPE_E.active {
    background-color: #FF4500;
}

#DPE_F.active {
    background-color: #FF0000;
}

#DPE_G.active {
    background-color: #8B0000;
}

#GES_A.active {
    background-color: #ffa9ff;
    color: black;
}

#GES_B.active {
    background-color: #ff9aff;
    color: black;
}

#GES_C.active {
    background-color: #ff6eff;
    color: black;
}

#GES_D.active {
    background-color: #ff3fff;
}

#GES_E.active {
    background-color: #ff1aff;
}

#GES_F.active {
    background-color: #e600e6;
}

#GES_G.active {
    background-color: #b300b3;
}

#propertyAdPrice {
    background-color: #6606a1;
    padding: 0.2em;
    font-size: 4vh;
    font-weight: bold;
}

#propertyAdDescription {
    text-align: left;
    background-color: #ecd7f9;
    color: black;
    padding: 0.5em;
}

#propertyAd-parameters-dpe-ges {
    display: flex;
}

.propertyList {
    display: flex;
    flex-direction: column;
}

.propertyOffer {
    color: white;
    display: inline-block;
    text-align: revert-layer;
    font-weight: bold;
    text-transform: uppercase;
    padding: 5px 10px;
    margin: 5px 0;
    background-color: #6606a1;
    border-radius: 50px;
}

.propertyDescription {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    text-align: left;
    margin: 0 1em;
}

.propertyReference {
    font-style: italic;
    font-size: medium;
}

.propertyType {
    font-size: 20px;
    font-weight: bold;
    text-transform: uppercase;
}

.propertyPhoto img {
    width: 10em;
}

.propertyPrice {
    width: 10em;
    font-weight: bold;
    font-size: 3vh;
}

.propertyStep, .leadStep, .watchStep, .mandateStep, .estimateStep, .userStep {
    display: none;
}

.property-save {
    position: absolute;
    bottom: 120px;
    left: 0;
    margin: 1em;
}

.propertyActions {
    width: 250px;
    display: flex;
    flex-direction: column;
}

#propertyDetails {
    display: flex;
    flex-direction: column;
}

.propertyDetailsContainer {
    display: flex;
    gap: 10px;
}

.propertyDetailsCard {
    flex: 1;
    display: flex;
    flex-direction: column;
}

textarea#propertyDescription {
    height: 25em;
}

#searchPropertyVerify {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* -- DASHBOARD -- */

#dashBoard {
    width: 250px;
    border-radius: 10px;
    padding: 5px;
    text-align: center;
}

#dashBoardTitle {
    text-transform: uppercase;
    font-size: 20px;
}

#dashBoardCards {
    display: grid;
    grid-template-rows: repeat(2, 1fr);
    grid-template-columns: repeat(2, 1fr);
}

.dashBoardCard {
    border: solid 2px white;
    border-radius: 10px;
    margin: 5px;
    padding: 5px;
}

.dashBoardCardCountNumber {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: x-large;
    padding: 0;
}

.dashBoardCardDescription {
    margin: 0;
    font-size: medium;
}

#propertyCountVerify {
    background-color: #B71C1C;
}

#propertyCountPublish {
    background-color: #c78921;
}

#propertyCountPublished {
    background-color: #2d9f32;
}

#leadCountVerify {
    background-color: #004491;
}

.address .fa-solid {
    padding: 1vh;
}

#logoSoftFooter {
    width: 80px;
    height: 34px;
    background-image: url("../images/d-lane-footerLogo.png");
    float: right;
}

.loading {
    border-right-color: #A20AFF;
}

/* -- LISTING -- */

.listInitials {
    border: #A20AFF solid 2px;
}

.leadTimeline {
    border: #A20AFF solid 2px;
    display: flex;
    margin-right: 10px;
    background-color: #c7c7c7;
    border-radius: 17px;
    justify-content: center;
}

.timelineStep {
    padding: 10px;
    border-right: #505050 solid 2px;
}

.timelineStep.leadCreated {
    background-color: #ff9f9f;
    border-start-start-radius: 15px;
    border-end-start-radius: 15px;
}

.timelineStep.firstContact {
    background-color: #ffd486;
}

.timelineStep.visitDone {
     background-color: #aeceff;
}

.timelineStep.offerReceived {
    background-color: #9cffe0;
}

.timelineStep.saleClosed {
    background-color: #5eff5e;
    border-start-end-radius: 15px;
    border-end-end-radius: 15px;
    border: 0;
}

/* -- SEARCH -- */

#venteButton {
    right: 100px;
}

#locationButton {
    right: 10px;
}

/* -- LOGIN -- */

#loginScreen {
    background-image: url("../backgrounds/clean.png");
}

#loginLogo {
    background-image: url("../images/d-lane-login-logo.png");
}

.login-container input[type="submit"] {
    background-color: #6606a1;
}

.login-container input[type="submit"]:hover {
    background: #330053;
}

#collective-trial-description {
    height: 5em;
}