+
- {/* 1. Área da Foto de Perfil (Quadrada) */}
-
-
-
-
- {/* 2. Nome do Usuário com Edição */}
-
- {isEditingName ? (
-
setUserName(e.target.value)}
- onBlur={() => setIsEditingName(false)}
- onKeyPress={handleNameChange}
- autoFocus
- style={styles.nameInput}
- />
- ) : (
-
{userName}
- )}
-
-
+
+
- {/* 3. Email (AGORA EXIBE O VALOR SIMULADO/CORRIGIDO) */}
-
Email: {userEmail}
+
+
+ {isEditingName ? (
+
setUserName(e.target.value)}
+ onBlur={() => setIsEditingName(false)}
+ onKeyDown={handleNameKeyDown}
+ autoFocus
+ />
+ ) : (
+
{userName}
+ )}
- {/* 4. Cargo (AGORA EXIBE O VALOR SIMULADO/CORRIGIDO) */}
-
Cargo: {userRole}
+
+
+
+
+ Email: {userEmail}
+
+
+
+ Cargo: {userRole}
+
+
+
+
+
+
);
};
-// Estilos Atualizados para Aumentar o Tamanho do Modal
-const styles = {
- overlay: {
- position: 'fixed',
- top: 0,
- left: 0,
- right: 0,
- bottom: 0,
- backgroundColor: 'rgba(0, 0, 0, 0.5)',
- display: 'flex',
- justifyContent: 'center',
- alignItems: 'center',
- zIndex: 1100,
- },
- modalContainer: {
- position: 'relative',
- padding: '50px 70px', // Aumentado o padding
- backgroundColor: 'white',
- borderRadius: '15px',
- boxShadow: '0 8px 30px rgba(0, 0, 0, 0.3)',
- display: 'flex',
- flexDirection: 'column',
- alignItems: 'center',
- minWidth: '400px',
- width: '60%', // Aumentando a largura para cobrir mais a tela
- maxWidth: '500px', // Limite máximo para não ficar gigante em telas grandes
- height: 'auto',
- },
- closeButton: {
- position: 'absolute',
- top: '15px',
- right: '20px',
- background: 'none',
- border: 'none',
- fontSize: '30px',
- cursor: 'pointer',
- color: '#666',
- lineHeight: '1',
- },
- // ... (Os estilos de profilePictureContainer, infoContainer, etc., permanecem iguais)
- profilePictureContainer: {
- width: '120px',
- height: '120px',
- borderRadius: '15px',
- overflow: 'hidden',
- boxShadow: '0 4px 10px rgba(0, 0, 0, 0.15)',
- marginBottom: '20px',
- },
- profilePicturePlaceholder: {
- width: '100%',
- height: '100%',
- backgroundColor: '#A9A9A9',
- backgroundImage: 'url(\'data:image/svg+xml;utf8,
\')',
- backgroundSize: '80%',
- backgroundRepeat: 'no-repeat',
- backgroundPosition: 'center',
- },
- infoContainer: {
- textAlign: 'center',
- maxWidth: '400px',
- width: '100%',
- },
- nameSection: {
- display: 'flex',
- alignItems: 'center',
- justifyContent: 'center',
- marginBottom: '10px',
- },
- userName: {
- margin: '0 5px 0 0',
- fontSize: '1.8rem',
- color: '#333',
- },
- nameInput: {
- fontSize: '1.8rem',
- padding: '5px',
- border: '1px solid #ccc',
- borderRadius: '5px',
- textAlign: 'center',
- marginRight: '5px',
- },
- editButton: {
- background: 'none',
- border: 'none',
- cursor: 'pointer',
- fontSize: '1.2rem',
- marginLeft: '5px',
- },
- emailText: {
- fontSize: '1rem',
- color: '#666',
- margin: '5px 0',
- },
- roleText: {
- fontSize: '1.1rem',
- color: '#333',
- marginTop: '15px',
- paddingTop: '10px',
- borderTop: '1px solid #eee',
- }
-};
-
-export default ProfilePage;
\ No newline at end of file
+export default ProfilePage;
diff --git a/src/pages/style/ProfilePage.css b/src/pages/style/ProfilePage.css
index e69de29..c9215aa 100644
--- a/src/pages/style/ProfilePage.css
+++ b/src/pages/style/ProfilePage.css
@@ -0,0 +1,178 @@
+/* src/pages/ProfilePage.css */
+
+/* Overlay que cobre toda a tela */
+.profile-overlay {
+ position: fixed;
+ inset: 0;
+ background-color: rgba(0, 0, 0, 0.65);
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ z-index: 20000; /* acima de header, vlibras, botões de acessibilidade */
+ padding: 20px;
+ box-sizing: border-box;
+}
+
+/* Card central (estilo modal amplo parecido com a 4ª foto) */
+.profile-modal {
+ background: #ffffff;
+ border-radius: 10px;
+ padding: 18px;
+ width: min(1100px, 96%);
+ max-width: 1100px;
+ box-shadow: 0 18px 60px rgba(0, 0, 0, 0.5);
+ position: relative;
+ box-sizing: border-box;
+ overflow: visible;
+}
+
+/* Botão fechar (X) no canto do card */
+.profile-close {
+ position: absolute;
+ top: 14px;
+ right: 14px;
+ background: none;
+ border: none;
+ font-size: 26px;
+ color: #666;
+ cursor: pointer;
+ line-height: 1;
+}
+
+/* Conteúdo dividido em 2 colunas: esquerda avatar / direita infos */
+.profile-content {
+ display: flex;
+ gap: 28px;
+ align-items: flex-start;
+ padding: 22px 18px;
+}
+
+/* Coluna esquerda - avatar */
+.profile-left {
+ width: 220px;
+ display: flex;
+ justify-content: center;
+}
+
+/* Avatar quadrado com sombra (estilo da foto 4) */
+.avatar-wrapper {
+ position: relative;
+ width: 180px;
+ height: 180px;
+}
+
+.avatar-square {
+ width: 100%;
+ height: 100%;
+ border-radius: 8px;
+ background-color: #d0d0d0;
+ background-image: url("data:image/svg+xml;utf8,
");
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 55%;
+ box-shadow: 0 8px 24px rgba(0,0,0,0.25);
+}
+
+/* Botão editar sobre o avatar — círculo pequeno */
+.avatar-edit-btn {
+ position: absolute;
+ right: -8px;
+ bottom: -8px;
+ transform: translate(0, 0);
+ border: none;
+ background: #ffffff;
+ padding: 8px 9px;
+ border-radius: 50%;
+ box-shadow: 0 6px 14px rgba(0,0,0,0.18);
+ cursor: pointer;
+ font-size: 0.95rem;
+ line-height: 1;
+}
+
+/* Coluna direita - informações */
+.profile-right {
+ flex: 1;
+ min-width: 280px;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+}
+
+/* Nome e botão de editar inline */
+.profile-name-row {
+ display: flex;
+ align-items: center;
+ gap: 10px;
+ margin-bottom: 10px;
+}
+
+.profile-username {
+ margin: 0;
+ font-size: 1.9rem;
+ color: #222;
+}
+
+.profile-edit-inline {
+ background: none;
+ border: none;
+ cursor: pointer;
+ font-size: 1.05rem;
+ color: #444;
+}
+
+/* input de edição do nome */
+.profile-name-input {
+ font-size: 1.6rem;
+ padding: 6px 8px;
+ border: 1px solid #e0e0e0;
+ border-radius: 6px;
+}
+
+/* email/role */
+.profile-email,
+.profile-role {
+ margin: 6px 0;
+ color: #555;
+ font-size: 1rem;
+}
+
+.profile-role {
+ margin-top: 14px;
+ padding-top: 12px;
+ border-top: 1px solid #f1f1f1;
+ color: #333;
+}
+
+/* ações (apenas fechar aqui) */
+.profile-actions-row {
+ display: flex;
+ gap: 12px;
+ margin-top: 18px;
+}
+
+/* botões */
+.btn {
+ padding: 8px 14px;
+ border-radius: 8px;
+ border: 1px solid transparent;
+ cursor: pointer;
+ font-size: 0.95rem;
+}
+
+.btn-close {
+ background: #f0f0f0;
+ color: #222;
+ border: 1px solid #e6e6e6;
+}
+
+/* responsividade */
+@media (max-width: 880px) {
+ .profile-content {
+ flex-direction: column;
+ gap: 14px;
+ align-items: center;
+ }
+ .profile-left { width: 100%; }
+ .avatar-wrapper { width: 140px; height: 140px; }
+ .profile-right { width: 100%; text-align: center; }
+}