/* //////////////////////////////////////// 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: contain; width: 18vw; height: 60vh; position: fixed; bottom: 2%; right: 1%; justify-content: center; align-items: center; transform: translateY(100%); transition: transform 0.5s ease-out, opacity 0.5s ease-out; } #phone-background.show { display: flex; transform: translateY(0); } #phone-container { position: relative; width: 71.0%; height: 77.0%; display: flex; flex-direction: column; top: 0.5%; left: 1%; background: rgba(255, 255, 255, 1.0); border-radius: 5px; } #phone-header { display: flex; justify-content: space-between; align-items: center; width: 100%; height: 6%; padding: 0 0.5vw; background-color: #0056b3; border-top-left-radius: 4px; border-top-right-radius: 4px; font-size: 1.0vh; color: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); border-bottom: 0.1vh solid rgba(255, 255, 255, 0.2); } #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: 4px; border-bottom-right-radius: 4px; box-shadow: 0 -1px 3px rgba(0, 0, 0, 0.1); } #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; } /* //////////////////////////////////////// PROFIL PAGE //////////////////////////////////////// */ #profil-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-y: auto; } #profile-header { width: 80%; text-align: center; background-color: white; color: black; font-size: 1.5vh; padding: 1vh; border: 0.2vh solid #0056b3; border-radius: 0.4vh; margin-bottom: 2vh; } #profile-header p { font-size: 1.5vh; } #profil-content { width: 80%; max-width: 300px; display: flex; flex-direction: column; gap: 1.5vh; align-items: center; } .profil-field { width: 100%; display: flex; flex-direction: column; gap: 0.5vh; text-align: left; } .profil-field label { font-size: 1vh; font-weight: bold; color: #0056b3; } .profil-field input { width: 100%; padding: 0.5vh; font-size: 0.8vh; border: 0.1vh solid #ddd; border-radius: 0.4vh; box-shadow: inset 0 0.2vh 0.3vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease; } .profil-field input:focus { border-color: #0056b3; outline: none; } #save-profile { width: 100%; padding: 0.8vh; background-color: #0056b3; color: white; border: none; border-radius: 0.4vh; font-size: 0.8vh; font-weight: bold; cursor: pointer; transition: background-color 0.3s ease; text-align: center; } #save-profile:hover { background-color: #003d80; } /* //////////////////////////////////////// VEHICULE PAGE //////////////////////////////////////// */ #vehicule-page-container { display: none; width: 100%; height: 100%; padding: 2%; flex-direction: column; align-items: center; justify-content: flex-start; 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; scrollbar-width: none; -ms-overflow-style: none; } #vehicule-page-container::-webkit-scrollbar { display: none; } #vehicule-header { width: 100%; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; margin-bottom: 2vh; } #vehicule-search-container { width: 100%; /* S'assure que le conteneur prend toute la largeur disponible */ display: flex; align-items: center; justify-content: space-between; /* Ajoute un espacement uniforme entre les éléments */ gap: 1vh; margin-bottom: 0.5vh; box-sizing: border-box; /* Inclut les bordures et le padding dans la largeur */ } #vehicule-search-input { flex-grow: 1; /* Permet à l'input de prendre tout l'espace disponible */ padding: 0.7vh; font-size: 1.0vh; 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; max-width: 60%; /* Définit une largeur maximale pour éviter de dépasser */ } #vehicule-photo-button, #vehicule-search-button { padding: 0.8vh 1.2vh; /* Ajuste légèrement le padding pour un meilleur alignement */ font-size: 1.0vh; /* Réduit légèrement la taille de la police */ white-space: nowrap; /* Empêche le texte de déborder */ } #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; } #vehicule-search-button:hover { background-color: #003d80; } #vehicule-photo-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; } #vehicule-photo-button:hover { background-color: #003d80; } #vehicule-divider { width: 100%; border: 0; height: 0.1vh; background-color: #ddd; margin: 0; } #vehicule-default-text { font-size: 1.0vh; color: #888; text-align: center; } #vehicule-results-container { width: 90%; display: flex; flex-direction: column; align-items: center; gap: 2vh; } .result-container { position: relative; width: 100%; background-color: white; border: 0.1vh solid #ddd; border-radius: 0.5vh; box-shadow: 0 0.5vh 1vh rgba(0, 0, 0, 0.1); padding: 1.5vh; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 1vh; font-size: 1.1vh; color: #333; text-align: left; margin-bottom: 2vh; } .result-header-text { position: absolute; top: -0.7vh; left: 50%; transform: translateX(-50%); background-color: white; padding: 0 1vh; font-size: 1.2vh; color: #333; font-weight: bold; } #vehicle-stolen-container { display: flex; align-items: center; justify-content: flex-start; gap: 0.5vh; width: 100%; } #vehicle-stolen-container p { margin: 0; font-size: 1.1vh; line-height: 1.5; color: #333; } #vehicle-stolen-select { padding: 0; font-size: 1.0vh; height: 1.5em; 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; display: flex; align-items: center; justify-content: center; } /* //////////////////////////////////////// PERSONNES PAGE //////////////////////////////////////// */ #personnes-page-container { display: none; width: 100%; height: 100%; padding: 2%; flex-direction: column; align-items: center; justify-content: flex-start; 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; scrollbar-width: none; -ms-overflow-style: none; } #personnes-page-container::-webkit-scrollbar { display: none; } #personnes-header { width: 100%; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; margin-bottom: 2vh; } #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-search-row input { flex-grow: 1; padding: 0.7vh; font-size: 1.0vh; 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; } .personnes-search-row input:focus { border-color: #0056b3; outline: none; } #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: 90%; 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; } /* //////////////////////////////////////// PERSONNES FPR PAGE //////////////////////////////////////// */ #personnes-fpr-page-container { display: none; width: 100%; height: 100%; padding: 2%; flex-direction: column; align-items: center; justify-content: flex-start; 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; scrollbar-width: none; -ms-overflow-style: none; } #personnes-fpr-page-container::-webkit-scrollbar { display: none; } #fpr-page-header { width: 100%; /* Occupe toute la largeur */ display: flex; flex-direction: column; /* Affiche les éléments verticalement */ align-items: center; /* Centre horizontalement */ justify-content: flex-start; /* Aligne en haut */ margin-bottom: 0.5vh; } #fpr-page-divider { width: 100%; /* Largeur complète */ border: 0; height: 0.1vh; background-color: #ddd; /* Couleur gris clair */ margin: 0; margin-bottom: 2vh; } #fpr-results-container { width: 90%; display: flex; flex-direction: column; align-items: center; } .fpr-add-row { display: flex; align-items: center; gap: 0.5vh; width: 100%; box-sizing: border-box; } #fpr-reason-input { flex-grow: 1; padding: 0.5vh; border: 0.1vh solid #ddd; border-radius: 0.4vh; font-size: 1vh; box-shadow: inset 0 0.1vh 0.2vh rgba(0, 0, 0, 0.1); transition: border-color 0.3s ease; height: calc(1.2em + 1vh); /* Hauteur explicite pour harmoniser */ } #fpr-reason-input:focus { border-color: #0056b3; outline: none; } #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; min-width: 2.5vh; height: calc(1.2em + 1vh); /* Identique à l'input */ padding: 0; /* Padding supprimé car la hauteur est définie */ } #fpr-add-button i { font-size: 1.1vh; } #fpr-add-button:hover { background-color: #003d80; } /* //////////////////////////////////////// MESSAGERIE PAGE //////////////////////////////////////// */ #messagerie-page-container { display: none; width: 100%; height: 100%; flex-direction: column; align-items: center; justify-content: flex-start; 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; } #messagerie-content { width: 90%; flex-grow: 1; background-color: white; border: 0.1vh solid #ddd; border-radius: 0.5vh; box-shadow: 0 0.5vh 1vh rgba(0, 0, 0, 0.1); 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: 1vh; margin-bottom: 1vh; scrollbar-width: none; -ms-overflow-style: none; } #messagerie-content::-webkit-scrollbar { display: none; } #messagerie-input-container { width: 90%; 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: 2%; flex-direction: column; align-items: center; justify-content: 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; } #annuaire-header { width: 90%; text-align: center; background-color: white; color: black; font-size: 1.5vh; padding: 1vh; border: 0.2vh solid #0056b3; border-radius: 0.4vh; margin-bottom: 2vh; } #annuaire-header p { font-size: 1.5vh; } #annuaire-content { width: 90%; height: 50%; max-height: 50%; background-color: rgba(255, 255, 255, 0.9); border-radius: 0.5vh; box-shadow: 0 0 1vh rgba(0, 0, 0, 0.1); overflow-y: auto; overflow-x: hidden; } #annuaire-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 0.8vh; } #annuaire-table thead tr { background-color: #0056b3; color: white; } #annuaire-table th, #annuaire-table td { padding: 0.6vh; border: 0.1vh solid #ddd; } #annuaire-table tbody tr:nth-child(even) { background-color: #f9f9f9; } #annuaire-table tbody tr:hover { background-color: #e6f7ff; } #annuaire-table td { color: #333; } #annuaire-table td.phone-unknown { color: #888; font-style: italic; } #annuaire-content::-webkit-scrollbar { width: 0.4vw; } #annuaire-content::-webkit-scrollbar-thumb { background-color: rgba(0, 0, 0, 0.2); } #annuaire-content::-webkit-scrollbar-thumb:hover { background-color: rgba(0, 0, 0, 0.4); } #annuaire-content::-webkit-scrollbar-track { background-color: rgba(0, 0, 0, 0.1); }