/* ------------- */ /* 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; } }