body{ 
    font-family: Arial, sans-serif; 
    text-align:center; 
    background:#1b263b;
    color:#f1f5f9;
}
.container{ 
    width:300px; 
    margin:100px auto; 
    background:white; 
    padding:20px; 
    border-radius:10px; 
}
input{ 
     
    padding:10px; 
    margin:10px; 
}
button{ 
    padding:10px 20px; 
    cursor:pointer; 
}
img{ 
    max-width:90%; 
}

header{
    background:#0d1b2a;
    color:white;
    padding:20px;
    width:100%;
    box-sizing:border-box;
    display:flex;
    align-items:center;
}
.btn-deconnexion{
    position: fixed;
    top: 20px;
    right: 20px;
    background: #95a0ab;
    padding: 10px 15px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
}
.btn-deconnexion:hover{
    opacity: 0.8;
}

nav a{
    color:white;
    text-decoration:none;
    margin:0 15px;
    font-weight:bold;
}
.dashboard{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:25px;
    max-width:1000px;
    margin:40px auto;
}
.card-admin{
    background:#162434;
    color:white;
    text-decoration:none;
    border-radius:15px;
    padding:25px;
    transition:.2s;
    border:2px solid #28435f;
}
.card-admin:hover{
    transform:translateY(-5px);
    border-color:#4da3ff;
    box-shadow:0 0 15px rgba(77,163,255,.35);
}
.titre-site{
    display:flex;
    align-items:center;
    gap:20px;
    
}
nav{
    margin-left:60px;   /* augmente l'espace entre le titre et Accueil */
}
#logo{
    width:80px;
    height:auto;
}
.btn-retour{
    display:inline-block;
    margin:20px 0;
    padding:10px 16px;
    background:#2c3e50;
    color:white;
    text-decoration:none;
    border-radius:8px;
    transition:0.2s;
}

.btn-retour:hover{
    background:#3d5872;
    transform:translateY(-2px);
}
.bloc-zonage{
    background:#162434;
    border-radius:15px;
    padding:20px;
    margin-bottom:30px;
    border:1px solid #28435f;
}
.preview-zonage{
    display:block;
    width:100%;
    max-width:650px;
    margin:15px auto;
    border-radius:10px;
    border:2px solid #35506d;
    background:#0d1b2a;
}
.aucune-carte{
    width:100%;
    max-width:650px;
    height:350px;
    margin:15px auto;
    border:2px dashed #4b6580;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#9fb3c8;
    background:#0d1b2a;
}
.choix-couleur{
    display:flex;
    gap:12px;
    margin:15px 0;
}

.choix-couleur input{
    display:none;
}

.choix-couleur label{
    width:32px;
    height:32px;
    border-radius:50%;
    cursor:pointer;
    border:3px solid transparent;
    transition:.2s;
}

.gris{background:#6c757d;}
.vert{background:#2ecc71;}
.jaune{background:#f1c40f;}
.orange{background:#e67e22;}
.rouge{background:#e74c3c;}
.violet{background:#8e44ad;}

.choix-couleur input:checked + label{
    border-color:white;
    transform:scale(1.15);
    box-shadow:0 0 10px white;
}
textarea{
    width:100%;
    min-height:180px;
    padding:15px;
    box-sizing:border-box;
    background:#162435;
    color:white;
    border:2px solid #2c3e50;
    border-radius:10px;
    font-size:16px;
    resize:vertical;
    font-family:inherit;
}

textarea:focus{
    outline:none;
    border-color:#4da3ff;
    box-shadow:0 0 10px rgba(77,163,255,.4);
}
@media (max-width:768px){
    header{
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 12px;
        padding: 15px;
    }
    form{
        width:90%;
        max-width:350px;
        margin:30px auto;
    }
    form{
        padding:20px;
    }
    input{
        width:100%;
        box-sizing:border-box;
    }
    .titre-site{
        flex-direction: column;
        text-align: center;
        gap: 10px;
    }
    nav{
        margin-left: 0;
        display: flex;
        gap: 15px;
        flex-wrap: wrap;
        justify-content: center;
    }
    #logo{
        width: 60px;
    }

}