/* //////////////////////////////////////// GLOBAL STYLES //////////////////////////////////////// */ * { user-select: none; margin: 0; padding: 0; box-sizing: border-box; font-family: 'Roboto', sans-serif; } /* //////////////////////////////////////// TABLET BACKGROUND //////////////////////////////////////// */ #phone-background { display: none; background: url('background.png') no-repeat center center; background-size: cover; /* Ajustement à l'échelle du conteneur */ width: 18%; /* Largeur en pourcentage de la fenêtre */ height: 60%; /* Hauteur en pourcentage de la fenêtre */ position: fixed; bottom: 2%; /* Distance du bas en pourcentage */ right: 1%; /* Distance de la droite en pourcentage */ justify-content: center; align-items: center; transform: translateY(100%); /* Hors de l'écran initialement */ transition: transform 0.5s ease-out, opacity 0.5s ease-out; } #phone-background.show { display: flex; transform: translateY(0); /* Ramène l'élément à sa position visible */ } #phone-container { position: relative; width: 74%; /* Largeur relative au conteneur parent */ height: 81%; /* Hauteur relative au conteneur parent */ display: flex; flex-direction: column; top: 0.5%; /* Déplacement vertical en pourcentage */ left: 1%; /* Déplacement horizontal en pourcentage */ background: rgba(255, 255, 255, 1.0); /* Couleur de fond */ border-radius: 2%; /* Arrondi des coins en pourcentage */ } #phone-header { display: flex; justify-content: space-between; align-items: center; width: 100%; /* Largeur complète du conteneur */ height: 6%; /* Hauteur relative au conteneur parent */ padding: 0 2%; /* Espacement horizontal interne */ background-color: #0056b3; /* Couleur de fond */ border-top-left-radius: 2%; /* Arrondi en haut à gauche */ border-top-right-radius: 2%; /* Arrondi en haut à droite */ font-size: 1vh; /* Taille de police relative à la hauteur de l'écran */ color: #fff; /* Couleur du texte */ box-shadow: 0 3% 5% rgba(0, 0, 0, 0.1); /* Ombre portée */ border-bottom: 0.2% solid rgba(255, 255, 255, 0.2); /* Bordure inférieure */ } #phone-date { font-weight: 500; margin: 0; text-align: left; color: #fff; } #phone-icons { display: flex; gap: 0.3vw; } #phone-icons i { font-size: 1.0vh; color: #fff; } #phone-footer { display: flex; justify-content: space-around; align-items: center; width: 100%; height: 7%; background-color: #333; color: #fff; border-bottom-left-radius: 2%; border-bottom-right-radius: 2%; box-shadow: 0 -1% 3% rgba(0, 0, 0, 0.1); font-size: 1.8vh; } #phone-footer i { font-size: 1.2vh; cursor: pointer; transition: color 0.3s ease; } #phone-footer i:hover { color: #007bff; } /* //////////////////////////////////////// PHONE PAGES //////////////////////////////////////// */ #login-page-container { display: none; width: 100%; height: 100%; padding: 2%; flex-direction: column; justify-content: center; align-items: center; background-color: rgba(255, 255, 255, 0.95); border-radius: 1vh; box-shadow: 0 0 1vh rgba(0, 0, 0, 0.1); text-align: center; overflow: hidden; } #login-page-container img { width: 7vw; height: auto; margin-bottom: 1.5vh; } #login-page-container p { font-size: 1.0vh; color: #777; margin-bottom: 1.5vh; } #login-page-container input { width: 70%; padding: 0.5vh; margin: 0.5vh 0; border: 0.2vh solid #ddd; border-radius: 0.5vh; font-size: 1.0vh; box-shadow: inset 0 0.3vh 0.5vh rgba(0, 0, 0, 0.05); transition: border-color 0.3s ease; } #login-page-container input:focus { border-color: #0056b3; outline: none; } #login-page-container button { width: 70%; padding: 0.5vh; margin-top: 0.5vh; background-color: #0056b3; color: white; border: none; border-radius: 0.5vh; font-size: 1.0vh; font-weight: 500; cursor: pointer; transition: background-color 0.3s ease; text-align: center; } #login-page-container button:hover { background-color: #003d80; } /* //////////////////////////////////////// HOME PAGE //////////////////////////////////////// */ #home-page-container { display: none; flex-direction: column; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 2%; background-color: rgba(255, 255, 255, 0.95); border-radius: 1vh; box-shadow: 0 0 1vh rgba(0, 0, 0, 0.1); text-align: center; overflow-y: auto; overflow-x: hidden; gap: 2vh; } #home-page-container::-webkit-scrollbar { width: 0.8vw; } #home-page-container::-webkit-scrollbar-thumb { background-color: rgba(0, 0, 0, 0.2); border-radius: 10px; } #home-page-container::-webkit-scrollbar-thumb:hover { background-color: rgba(0, 0, 0, 0.4); } #home-page-container::-webkit-scrollbar-track { background-color: rgba(0, 0, 0, 0.1); } .home-buttons { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.0vh; max-width: 100%; } .home-button { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; width: 3vw; } .home-button button { width: 100%; height: 5vh; padding: 1vh; background-color: #0056b3; border: none; border-radius: 3px; color: white; font-size: 1.6vh; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: background-color 0.3s ease; box-shadow: 0 0.1vh 0.3vh rgba(0, 0, 0, 0.2); } .home-button button:hover { background-color: #003d80; } .home-button p { margin-top: 0.5vh; font-size: 0.9vh; color: #0056b3; font-weight: 500; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } #home-welcome-message { display: flex; flex-direction: column; align-items: center; justify-content: center; margin-bottom: 2vh; font-size: 1.2vh; color: #0056b3; font-weight: 500; text-align: center; } #home-welcome-logo { width: 5vw; height: auto; margin-bottom: 1vh; } /* //////////////////////////////////////// RESULT CONTAINER //////////////////////////////////////// */ .result-container { position: relative; width: 100%; background-color: #f9f9f9; border: 0.1vh solid #ddd; border-radius: 0.5vh; box-shadow: 0 0.5vh 1vh rgba(0, 0, 0, 0.1); margin-bottom: 1vh; /* Réduit l'espacement entre les conteneurs */ overflow: hidden; font-size: 1.1vh; color: #333; display: flex; flex-direction: column; } .result-container .header { display: flex; align-items: center; justify-content: flex-start; background-color: #0056b3; color: white; padding: 0.8vh 1.2vh; /* Réduit l'espacement à l'intérieur du header */ font-size: 1.2vh; font-weight: bold; text-align: left; width: 100%; box-shadow: 0 0.2vh 0.5vh rgba(0, 0, 0, 0.2); } .result-container .header i { margin-right: 0.8vh; /* Réduit l'espacement entre l'icône et le texte */ font-size: 1.4vh; } .result-container .content { padding: 1vh; /* Réduit l'espacement autour du contenu */ display: flex; flex-direction: column; gap: 0.5vh; /* Réduit l'espacement entre les éléments du contenu */ color: #333; font-size: 1.1vh; text-align: left; background-color: white; border-top: 0.1vh solid #ddd; } .result-container .content p { margin: 0; line-height: 1.3; /* Réduit l'espacement entre les lignes de texte */ } .result-container .content p strong { color: #0056b3; } .result-container .content p:last-child { margin-bottom: 0; } .result-container:hover { transform: scale(1.01); transition: transform 0.2s ease, box-shadow 0.2s ease; box-shadow: 0 0.8vh 1.5vh rgba(0, 0, 0, 0.2); } /* //////////////////////////////////////// PROFIL PAGE //////////////////////////////////////// */ #profil-page-container { display: none; width: 100%; height: 100%; padding: 0; flex-direction: column; align-items: center; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow-y: auto; position: relative; } #profile-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #profile-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } #profile-avatar-container { width: 100%; display: flex; flex-direction: column; align-items: center; margin-top: 6vh; /* Espace sous le header */ margin-bottom: 1vh; /* Réduit l'espace entre le profile-avatar-container et le profil-content */ } #profile-avatar { width: 8vh; /* Taille de l'image (diamètre du rond) */ height: 8vh; border-radius: 50%; /* Rend l'image circulaire */ object-fit: cover; /* Ajuste l'image au conteneur sans la déformer */ border: 0.2vh solid #0056b3; /* Bordure autour de l'image */ box-shadow: 0 0 0.5vh rgba(0, 0, 0, 0.2); /* Ombre légère */ } #profile-name { margin-top: 0.8vh; /* Réduit l'espacement entre l'image et le texte */ font-size: 1.2vh; font-weight: bold; color: #0056b3; text-align: center; } #profil-content { width: 80%; display: flex; flex-direction: column; gap: 2vh; align-items: center; justify-content: center; flex-grow: 1; /* Utilise tout l'espace restant */ } .profil-field { width: 100%; display: flex; flex-direction: column; text-align: left; position: relative; } .profil-field label { font-size: 1.1vh; font-weight: bold; color: #0056b3; margin-bottom: 0.5vh; } .profil-field .input-container { display: flex; align-items: center; background-color: #f9f9f9; border: 0.1vh solid #ddd; border-radius: 0.5vh; overflow: hidden; /* Supprime les débordements */ transition: border-color 0.3s ease, box-shadow 0.3s ease; padding: 0 0.8vh; /* Ajoute un padding pour les icônes */ flex-wrap: nowrap; /* Empêche le contenu de se déplacer sur une nouvelle ligne */ } .profil-field .input-container:focus-within { border-color: #0056b3; box-shadow: 0 0 0.5vh rgba(0, 86, 179, 0.3); } .profil-field .input-container i { color: #0056b3; font-size: 1.2vh; margin-right: 1vh; /* Éloigne légèrement l'icône de l'input */ margin-left: 0.3vh; /* Ajoute un espacement à gauche pour centrer l'icône */ } .profil-field input { flex-grow: 1; font-size: 1vh; border: none; background: none; outline: none; color: #333; padding: 0.8vh 1vh; } .profil-field input::placeholder { color: #aaa; font-style: italic; } #save-profile { background-color: #0056b3; color: white; /* Couleur de l'icône en blanc */ border: none; display: flex; align-items: center; /* Centre verticalement le contenu */ justify-content: center; /* Centre horizontalement le contenu */ width: 6vh; /* Largeur augmentée pour un bouton mieux proportionné */ height: 100%; /* Hauteur égale à celle de l'input */ cursor: pointer; transition: background-color 0.3s ease, transform 0.2s ease; border-radius: 0; /* Supprime la bordure arrondie */ padding: 0; /* Supprime les marges intérieures pour un alignement parfait */ box-sizing: border-box; /* Inclut la bordure et le padding dans la largeur et hauteur */ } #save-profile i { font-size: 1.1vh; /* Taille de l'icône légèrement augmentée */ color: white; /* Assure que l'icône reste blanche */ line-height: 1; /* Supprime tout décalage lié à la hauteur de ligne */ } .profil-field .input-container + .input-container { margin-top: 0.5vh; /* Ajoute un espacement entre les conteneurs adjacents */ } /* //////////////////////////////////////// VEHICULE PAGE //////////////////////////////////////// */ #vehicule-page-container { display: none; width: 100%; height: 100%; padding: 0; flex-direction: column; align-items: center; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow-y: auto; position: relative; } #vehicule-page-container::-webkit-scrollbar { display: none; } /* Main Header */ #vehicule-main-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #vehicule-main-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } /* Header Section */ #vehicule-header { width: 95%; display: flex; flex-direction: column; align-items: center; margin-top: 3.5vh; } #vehicule-search-container { width: 100%; display: flex; align-items: center; gap: 1vh; justify-content: space-between; /* Écarte les éléments pour qu'ils remplissent l'espace */ flex-wrap: nowrap; /* Empêche le retour à la ligne */ } .vehicule-input-container { display: flex; align-items: center; background-color: #f9f9f9; border: 0.1vh solid #ddd; border-radius: 0.5vh; padding: 0.7vh 1vh; flex-grow: 1; /* Permet à l'input de prendre l'espace restant */ max-width: calc(100% - 6.4vh); /* Ajuste la largeur en fonction des boutons */ box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease, box-shadow 0.3s ease; } .vehicule-input-container:focus-within { border-color: #0056b3; box-shadow: 0 0 0.5vh rgba(0, 86, 179, 0.3); } .vehicule-input-container i { color: #0056b3; font-size: 1.2vh; margin-right: 0.8vh; } .vehicule-input-container input { flex-grow: 1; font-size: 1.0vh; border: none; background: none; outline: none; color: #333; padding: 0; width: 100%; } .vehicule-input-container input::placeholder { color: #aaa; font-style: italic; } /* Buttons Styling */ #vehicule-photo-button, #vehicule-search-button { background-color: #0056b3; color: white; border: none; border-radius: 0.5vh; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 0.3s ease; padding: 0.7vh 1.2vh; font-size: 1.0vh; width: 2.8vh; /* Taille uniforme pour les boutons */ height: 2.8vh; /* Taille uniforme pour les boutons */ flex-shrink: 0; /* Empêche les boutons de se réduire */ } #vehicule-photo-button:hover, #vehicule-search-button:hover { background-color: #003d80; } /* Divider Styling */ #vehicule-divider { width: 100%; border: 0; height: 0.1vh; background-color: #ddd; margin: 0; margin-top: 0.5vh; } /* Default Text */ #vehicule-default-text { font-size: 1.0vh; color: #888; text-align: center; margin-top: 1vh; } /* Results Section */ #vehicule-results-container { width: 95%; display: flex; flex-direction: column; align-items: center; margin-top: 1vh; gap: 2vh; } /* Stolen Vehicle Section */ #vehicle-stolen-container { display: flex; align-items: center; gap: 0.5vh; width: 100%; } #vehicle-stolen-container p { margin: 0; font-size: 1.0vh; line-height: 1.5; color: #333; } #vehicle-stolen-select { padding: 0.1vh; font-size: 0.8vh; border: 0.1vh solid #ddd; border-radius: 0.5vh; box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); flex-shrink: 0; text-align: center; text-align-last: center; } /* //////////////////////////////////////// PERSONNES PAGE //////////////////////////////////////// */ #personnes-page-container { display: none; width: 100%; height: 100%; padding: 0; flex-direction: column; align-items: center; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow-y: auto; position: relative; } #personnes-page-container::-webkit-scrollbar { display: none; } #personnes-main-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #personnes-main-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } #personnes-header { width: 95%; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; margin-top: 3.5vh; /* Laisse de l'espace sous le header principal */ margin-bottom: 1vh; } #personnes-search-container { width: 100%; display: flex; flex-direction: column; gap: 0.5vh; margin-bottom: 0.5vh; } .personnes-search-row { display: flex; width: 100%; align-items: center; gap: 1vh; } .personnes-input-container { display: flex; align-items: center; background-color: #f9f9f9; border: 0.1vh solid #ddd; border-radius: 0.5vh; padding: 0.7vh 1vh; flex-grow: 1; box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease, box-shadow 0.3s ease; } .personnes-input-container:focus-within { border-color: #0056b3; box-shadow: 0 0 0.5vh rgba(0, 86, 179, 0.3); } .personnes-input-container i { color: #0056b3; font-size: 1.2vh; margin-right: 0.8vh; } .personnes-input-container input { flex-grow: 1; font-size: 1.0vh; border: none; background: none; outline: none; color: #333; padding: 0; } .personnes-input-container input::placeholder { color: #aaa; font-style: italic; } #personnes-search-button { background-color: #0056b3; color: white; border: none; padding: 0.8vh 1.5vh; border-radius: 0.5vh; font-size: 1.2vh; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 0.3s ease; } #personnes-search-button:hover { background-color: #003d80; } #personnes-divider { width: 100%; border: 0; height: 0.1vh; background-color: #ddd; margin: 0; } #personnes-default-text { font-size: 1.0vh; color: #888; text-align: center; } #personnes-results-container { width: 95%; display: flex; flex-direction: column; align-items: center; } #person-snpc-status-container { position: relative; width: 100%; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; font-size: 1.1vh; color: #333; text-align: left; } #person-fpr-extra-text, #person-taj-extra-text, #person-pve-extra-text { text-decoration: underline; /* Souligné par défaut */ color: #0056b3; /* Couleur de base */ cursor: pointer; /* Curseur de pointeur */ font-weight: normal; /* Poids de police normal */ } #person-fpr-extra-text:hover, #person-taj-extra-text:hover, #person-pve-extra-text:hover { text-decoration: underline; color: #003d80; /* Couleur plus foncée au survol */ font-weight: bold; /* Met le texte en gras au survol */ } /* Clignotement rouge */ @keyframes blink-red { 0%, 100% { background-color: #f9f9f9; /* Couleur par défaut */ border-color: #ddd; /* Couleur de bordure par défaut */ } 50% { background-color: rgba(255, 0, 0, 0.2); /* Rouge pâle */ border-color: rgba(255, 0, 0, 0.8); /* Bordure rouge */ } } .result-container.blinking { animation: blink-red 1s infinite; /* Animation de clignotement */ } /* //////////////////////////////////////// PERSONNES FPR PAGE //////////////////////////////////////// */ #personnes-fpr-page-container { display: none; width: 100%; height: 100%; padding: 0; flex-direction: column; align-items: center; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow-y: auto; position: relative; } #personnes-fpr-page-container::-webkit-scrollbar { display: none; } /* Main Header */ #fpr-main-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #fpr-main-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } /* Default Text */ #fpr-default-text { font-size: 1.0vh; color: #888; text-align: center; margin-top: 4vh; } /* Results Container */ #fpr-results-container { width: 95%; display: flex; flex-direction: column; align-items: center; margin-top: 3.5vh; } /* Input Row */ .fpr-add-row { display: flex; align-items: center; gap: 0.5vh; width: 100%; box-sizing: border-box; } /* Input Styling */ .fpr-input-container { display: flex; align-items: center; background-color: #f9f9f9; border: 0.1vh solid #ddd; border-radius: 0.5vh; padding: 0.7vh 1vh; flex-grow: 1; box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease, box-shadow 0.3s ease; } .fpr-input-container:focus-within { border-color: #0056b3; box-shadow: 0 0 0.5vh rgba(0, 86, 179, 0.3); } .fpr-input-container i { color: #0056b3; font-size: 1.2vh; margin-right: 0.8vh; } .fpr-input-container input { flex-grow: 1; font-size: 1.0vh; border: none; background: none; outline: none; color: #333; padding: 0; } .fpr-input-container input::placeholder { color: #aaa; font-style: italic; } /* Button Styling */ #fpr-add-button { background-color: #0056b3; color: white; border: none; border-radius: 0.4vh; font-size: 1vh; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 0.3s ease; width: 2.5vh; height: 2.8vh; padding: 0; } #fpr-add-button i { font-size: 1.1vh; } #fpr-add-button:hover { background-color: #003d80; } /* //////////////////////////////////////// PERSONNES TAJ PAGE //////////////////////////////////////// */ #personnes-taj-page-container { display: none; width: 100%; height: 100%; padding: 0; flex-direction: column; align-items: center; justify-content: flex-start; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow-y: auto; position: relative; scrollbar-width: none; -ms-overflow-style: none; } #personnes-taj-page-container::-webkit-scrollbar { display: none; } /* Main Header */ #taj-main-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #taj-main-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } /* Default Text */ #taj-default-text { font-size: 1.0vh; color: #888; text-align: center; margin-top: 4vh; } /* Results Container */ #taj-results-container { width: 95%; display: flex; flex-direction: column; align-items: center; margin-top: 3.5vh; } /* Input Row */ .taj-add-row { display: flex; align-items: center; gap: 0.5vh; width: 100%; box-sizing: border-box; } /* Input Styling */ .taj-input-container { display: flex; align-items: center; background-color: #f9f9f9; border: 0.1vh solid #ddd; border-radius: 0.5vh; padding: 0.7vh 1vh; flex-grow: 1; box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease, box-shadow 0.3s ease; } .taj-input-container:focus-within { border-color: #0056b3; box-shadow: 0 0 0.5vh rgba(0, 86, 179, 0.3); } .taj-input-container i { color: #0056b3; font-size: 1.2vh; margin-right: 0.8vh; } .taj-input-container input { flex-grow: 1; font-size: 1.0vh; border: none; background: none; outline: none; color: #333; padding: 0; } .taj-input-container input::placeholder { color: #aaa; font-style: italic; } /* Button Styling */ #taj-add-button { background-color: #0056b3; color: white; border: none; border-radius: 0.4vh; font-size: 1vh; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 0.3s ease; width: 2.5vh; height: 2.8vh; padding: 0; } #taj-add-button i { font-size: 1.1vh; } #taj-add-button:hover { background-color: #003d80; } /* //////////////////////////////////////// PERSONNES PVE PAGE //////////////////////////////////////// */ #personnes-pve-page-container { display: none; width: 100%; height: 100%; padding: 0; flex-direction: column; align-items: center; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow-y: auto; position: relative; } #personnes-pve-page-container::-webkit-scrollbar { display: none; } /* Main Header */ #pve-main-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #pve-main-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } #pve-default-text { font-size: 1.0vh; color: #888; text-align: center; margin-top: 4vh; } #pve-results-container { width: 95%; display: flex; flex-direction: column; align-items: center; margin-top: 3.5vh; } /* PVE Input Container */ .pve-input-container { display: flex; align-items: center; background-color: #f9f9f9; border: 0.1vh solid #ddd; border-radius: 0.5vh; padding: 0.7vh 1vh; flex-grow: 1; box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease, box-shadow 0.3s ease; width: 100%; } .pve-input-container:focus-within { border-color: #0056b3; box-shadow: 0 0 0.5vh rgba(0, 86, 179, 0.3); } .pve-input-container i { color: #0056b3; font-size: 1.2vh; margin-right: 0.8vh; } .pve-input-container input { flex-grow: 1; font-size: 1.0vh; border: none; background: none; outline: none; color: #333; padding: 0; } .pve-input-container input::placeholder { color: #aaa; font-style: italic; } /* Add Button */ #pve-add-button { background-color: #0056b3; color: white; border: none; border-radius: 0.4vh; font-size: 1.0vh; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 0.3s ease; padding: 0.5vh 1vh; width: 100%; } #pve-add-button:hover { background-color: #003d80; } /* //////////////////////////////////////// MESSAGERIE PAGE //////////////////////////////////////// */ #messagerie-page-container { display: none; width: 100%; height: 100%; flex-direction: column; align-items: center; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow: hidden; position: relative; } #messagerie-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #messagerie-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } #messagerie-content { width: 95%; flex-grow: 1; background-color: white; padding: 0.5vh; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; overflow-y: auto; text-align: left; font-size: 1.2vh; color: #333; margin-top: 4vh; /* Espace sous le header */ margin-bottom: 1vh; scrollbar-width: none; -ms-overflow-style: none; } #messagerie-content::-webkit-scrollbar { display: none; } #messagerie-input-container { width: 95%; display: flex; align-items: center; justify-content: center; gap: 1vh; padding: 1vh 0; border-top: 0.1vh solid #ddd; } #messagerie-input { width: 70%; padding: 0.8vh; font-size: 1.2vh; border: 0.1vh solid #ddd; border-radius: 0.5vh; box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease; } #messagerie-input:focus { border-color: #0056b3; outline: none; } #messagerie-send-button { padding: 0.8vh 1.5vh; background-color: #0056b3; color: white; font-size: 1.2vh; border: none; border-radius: 0.5vh; cursor: pointer; transition: background-color 0.3s ease; } #messagerie-send-button:hover { background-color: #003d80; } .message-wrapper { display: flex; flex-direction: column; margin: 0.5vh 0; max-width: 90%; word-wrap: break-word; } .received-message { align-self: flex-start; text-align: left; } .sent-message { align-self: flex-end; text-align: right; } .message { padding: 1vh 1.5vh; border-radius: 1vh; font-size: 1.2vh; line-height: 1.5; max-width: 100%; } .message.received { background-color: white; color: #333; border: 0.1vh solid #ddd; } .message.sent { background-color: #0056b3; color: white; } .message-sender { font-size: 1vh; color: #888; margin-bottom: 0.5vh; } /* //////////////////////////////////////// ANNUAIRE PAGE //////////////////////////////////////// */ #annuaire-page-container { display: none; width: 100%; height: 100%; padding: 0; flex-direction: column; align-items: center; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow-y: auto; position: relative; } #annuaire-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #annuaire-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } #annuaire-subheader { margin-top: 3.5vh; font-size: 1vh; color: #555; text-align: center; font-weight: bold; } #annuaire-content { width: 95%; display: flex; flex-wrap: wrap; gap: 1vh; margin: 1vh 0; /* Ajoute un espacement extérieur en haut et en bas */ justify-content: center; overflow-y: auto; scrollbar-width: none; /* Pour Firefox */ -ms-overflow-style: none; /* Pour Internet Explorer et Edge */ } #annuaire-content::-webkit-scrollbar { display: none; /* Pour Chrome, Safari et Opera */ } .annuaire-card { width: 100%; max-width: 20vh; background-color: #fdfdfd; border-radius: 0.5vh; box-shadow: 0 0.5vh 1vh rgba(0, 0, 0, 0.1); padding: 1vh; display: flex; align-items: center; gap: 1vh; transition: transform 0.2s ease, box-shadow 0.2s ease; } .annuaire-card:hover { transform: scale(1.01); box-shadow: 0 0.3vh 1.0vh rgba(0, 0, 0, 0.2); } .annuaire-card .icon { display: flex; align-items: center; justify-content: center; width: 3vh; /* Assure une largeur identique à la hauteur */ height: 3vh; /* Assure une hauteur identique à la largeur */ background-color: #0056b3; color: white; border-radius: 50%; /* Crée un cercle parfait */ font-size: 1.1vh; /* Taille de l'icône ajustée */ box-shadow: 0 0.2vh 0.5vh rgba(0, 0, 0, 0.1); /* Ajoute une ombre subtile */ flex-shrink: 0; /* Empêche le conteneur de se réduire si nécessaire */ } .annuaire-card .info { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 0.3vh; width: 100%; } .annuaire-card .info .name { font-size: 1.2vh; font-weight: bold; color: #0056b3; text-align: left; } .annuaire-card .info .phone { font-size: 1vh; color: #333; text-align: left; } .annuaire-card .info .phone.phone-unknown { color: #888; font-style: italic; } /* //////////////////////////////////////// PATROUILLES PAGE //////////////////////////////////////// */ #patrouilles-page-container { display: none; width: 100%; height: 100%; flex-direction: column; align-items: center; background-color: rgba(255, 255, 255, 0.95); text-align: center; overflow-y: auto; position: relative; } #patrouilles-page-container::-webkit-scrollbar { display: none; } /* Main Header */ #patrouilles-main-header { width: 100%; height: 3vh; display: flex; align-items: center; justify-content: center; background-color: #0056b3; color: white; font-size: 1.2vh; position: absolute; top: 0; left: 0; z-index: 10; } #patrouilles-main-header p { margin: 0; font-size: 1.2vh; font-weight: bold; } /* Patrouilles Content */ #patrouilles-content { width: 95%; display: flex; flex-wrap: wrap; justify-content: center; overflow-y: auto; scrollbar-width: none; /* Pour Firefox */ -ms-overflow-style: none; /* Pour Internet Explorer et Edge */ margin-top: 4vh; /* Espace sous le header */ } #patrouilles-content::-webkit-scrollbar { display: none; } /* Input Row */ .patrol-input-row { display: flex; align-items: center; justify-content: center; width: 100%; } /* Input Container */ .patrol-input-container { display: flex; align-items: center; background-color: #f9f9f9; border: 0.1vh solid #ddd; border-radius: 0.5vh; padding: 0.7vh 1vh; box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease, box-shadow 0.3s ease; width: 100%; /* Aligne avec le bouton */ } .patrol-input-container:focus-within { border-color: #0056b3; box-shadow: 0 0 0.5vh rgba(0, 86, 179, 0.3); } .patrol-input-container i { color: #0056b3; font-size: 1.2vh; margin-right: 0.8vh; } .patrol-input-container input { flex-grow: 1; font-size: 1.0vh; border: none; background: none; outline: none; color: #333; padding: 0; } .patrol-input-container input::placeholder { color: #aaa; font-style: italic; } #create-patrol-button { background-color: #0056b3; color: white; border: none; border-radius: 0.5vh; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 0.3s ease; padding: 0.7vh 1vh; font-size: 1.0vh; width: 100%; /* Même largeur que les inputs */ gap: 0.5vh; /* Ajoute un espacement entre l'icône et le texte */ } #panic-button { display: flex; align-items: center; justify-content: center; background-color: #ff4d4d; border: none; border-radius: 0.5vh; padding: 0.7vh 1.5vh; color: white; font-weight: bold; font-size: 1vh; cursor: pointer; transition: background-color 0.3s ease, transform 0.2s ease; box-shadow: 0 0.3vh 0.5vh rgba(0, 0, 0, 0.1); width: 100%; /* Ajuste à la largeur disponible */ } .panic-button i { margin-right: 0.5vh; } #create-patrol-button:hover { background-color: #003d80; } .patrol-action-buttons { display: flex; flex-direction: row; /* Aligne les boutons en ligne */ gap: 0.5vh; /* Ajoute un espace entre les boutons */ justify-content: center; /* Centre les boutons horizontalement */ } .patrol-action-buttons button { background-color: #0056b3; color: white; border: none; border-radius: 0.5vh; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 0.3s ease; padding: 0.5vh 1.2vh; font-size: 1vh; flex: 1; /* Permet aux boutons de prendre une taille égale */ max-width: 49%; /* Limite la largeur des boutons */ } .patrol-action-buttons button:hover { background-color: #003d80; } .patrol-action-buttons button i { margin-right: 0.5vh; } .patrol-action-divider { width: 100%; height: 0.1vh; background-color: #ddd; border: none; }