/* ------------- */
/* HTML */
/* ------------- */
html,
body {
font-family: "Inter", sans-serif;
background-color: #1e1e1e;
color: #eff1f3;
margin: 0;
padding: 0;
overflow: auto;
height: 100%; /* Définit la hauteur de la page à 100% */
display: flex; /* Flexbox sur le body */
flex-direction: column; /* Aligne le contenu du body en colonne */
}
/* --------------- */
/* Header */
/* --------------- */
header {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
padding: 10px 40px;
}
header a {
text-decoration: none;
color: #eff1f3;
}
header ul {
list-style: none;
display: flex;
align-items: center;
}
header li {
cursor: pointer;
}
.header_text {
display: flex;
flex-grow: 1; /* Le conteneur des liens prend toute la place disponible */
justify-content: center; /* Centre les liens horizontalement */
gap: 15%; /* Espace entre les liens */
font-weight: 600;
}
.header_text a {
padding: 0 10px;
}
.header_text li a:hover {
color: #00a8e8;
}
.bouton_connexion {
padding: 10px 20px;
border-radius: 900px;
font-size: 16px; /* Taille de la police */
border-color: #00a8e8;
color: #eff1f3;
background-color: #00a8e8;
margin-top: 0;
cursor: pointer;
}
.bouton_connexion:hover {
border-color: #eff1f3;
color: #00a8e8;
background-color: #eff1f3; /* Changer la couleur au survol */
}
#smart_building {
width: 13%;
margin-left: -40px;
height: auto;
}
/* --------------- */
/* Profil */
/* --------------- */
/* Conteneur Profil */
.container {
width: 80%; /* Adaptation à la nouvelle structure, largeur plus grande */
max-width: 800px; /* Limite la taille maximale à 800px */
margin: 50px auto; /* Centre le conteneur et ajoute un espacement */
background-color: #2c2c2c;
padding: 30px 40px;
border-radius: 15px;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.6);
display: flex;
flex-direction: column; /* Assure un alignement vertical des éléments */
gap: 20px; /* Espacement entre les éléments internes */
z-index: 1; /* Pour s'assurer que ce contenu reste bien en-dessous de l'en-tête */
}
/* Titre */
h1 {
text-align: center;
margin-bottom: 30px;
color: #ffffff;
}
/* Formulaire Profil */
form div {
margin-bottom: 20px;
}
label {
display: block;
margin-bottom: 8px;
font-weight: bold;
color: #ccc;
}
/* Champs de saisie */
input[type="text"],
input[type="password"],
input[type="file"],
select {
width: 100%;
padding: 10px 12px;
font-size: 14px;
background-color: #3a3a3a;
color: #ffffff;
border: 1px solid #555;
border-radius: 8px;
box-sizing: border-box;
transition: border-color 0.3s;
}
/* Champs désactivés */
input:disabled,
select:disabled {
background-color: #2c2c2c;
color: #888;
border: 1px solid #444;
cursor: not-allowed;
}
/* Image de profil */
.container img {
margin-top: 10px;
border-radius: 10px;
border: 2px solid #444;
max-width: 100px;
height: auto;
}
/* Boutons (Editer, Sauvegarder) */
button {
padding: 10px 16px;
border: none;
border-radius: 8px;
font-size: 15px;
cursor: pointer;
transition: background-color 0.3s ease;
color: white;
}
/* Bouton Modifier */
#editBtn {
background-color: #27ae60;
}
#editBtn:hover {
background-color: #219150;
}
/* Bouton Sauvegarder */
#saveBtn {
background-color: #e67e22;
}
#saveBtn:hover {
background-color: #d35400;
}
/* --------------- */
/* Footer */
/* --------------- */
footer {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
font-size: 14px;
text-transform: uppercase;
padding: 20px;
margin-top: auto; /* Cela force le footer à se pousser vers le bas */
}
.copyright {
padding: 10px 20px;
}
footer a {
text-decoration: none;
color: #eff1f3;
}
.footer_link {
display: flex;
flex-grow: 1;
gap: 10%;
}
.footer_link a {
padding: 0 10px;
}
.copyright {
padding: 10px 20px;
}
/* ------------------------- */
/* Responsive Design */
/* ------------------------- */
/* GRAND ÉCRAN (> 1440px) */
@media (min-width: 1440px) {
main {
padding: 60px;
max-width: 1200px;
}
.container {
width: 70%;
}
h1 {
font-size: 48px;
}
.bouton_connexion {
padding: 12px 24px;
font-size: 18px;
}
}
/* TABLETTE - Moyenne (1025px à 1440px) */
@media (max-width: 1440px) and (min-width: 1025px) {
.container {
width: 75%;
max-width: 1000px;
}
h1 {
font-size: 40px;
}
.bouton_connexion {
padding: 10px 20px;
font-size: 16px;
}
}
/* TABLETTE - Petite (769px à 1024px) */
@media (max-width: 1024px) and (min-width: 769px) {
header {
flex-wrap: wrap;
justify-content: center;
padding: 20px;
gap: 20px;
}
#smart_building {
width: 100px;
margin: 0;
}
.header_text {
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
gap: 30px;
}
.bouton_connexion {
padding: 8px 16px;
font-size: 14px;
}
.container {
width: 90%;
max-width: 1000px;
}
h1 {
font-size: 36px;
margin-bottom: 20px;
}
}
/* MOBILE (≤ 768px) */
@media (max-width: 768px) {
header {
flex-direction: column;
align-items: center;
gap: 15px;
}
#smart_building {
width: 90px;
height: auto;
margin: 0 auto;
}
.header_text {
flex-direction: column;
align-items: center;
gap: 10px;
font-size: 16px;
}
.bouton_connexion {
padding: 10px 20px;
width: auto;
text-align: center;
}
.container {
width: 100%;
max-width: 100%;
padding: 20px;
}
h1 {
font-size: 28px;
margin-bottom: 20px;
}
footer {
flex-direction: column;
text-align: center;
gap: 10px;
align-items: center;
}
.footer_link {
flex-direction: column;
align-items: center;
gap: 10px;
}
.copyright {
padding: 0;
}
}
/* TÉLÉPHONE TRÈS PETIT (≤ 480px) */
@media (max-width: 480px) {
.container {
width: 100%;
padding: 10px;
}
h1 {
font-size: 24px;
margin-bottom: 20px;
}
.bouton_connexion {
padding: 8px 16px;
font-size: 14px;
}
#smart_building {
width: 70px;
}
}