.avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:var(--color-roxo);color:white;font-weight:600;font-family:Inter,sans-serif}.avatar-image{width:100%;height:100%;object-fit:cover}.avatar-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.avatar-small{width:32px;height:32px;font-size:.75rem}.avatar-medium{width:48px;height:48px;font-size:1rem}.avatar-large{width:64px;height:64px;font-size:1.25rem}.profile-settings{max-width:1200px;margin:0 auto 3.5rem;padding:0 1.5rem}.profile-settings-header{margin-bottom:1.5rem}.profile-settings-subtitle{color:var(--color-roxo);font-family:Inter,sans-serif;font-size:1rem;margin-top:.5rem}.profile-settings-form{background:white;border-radius:16px;padding:2rem;box-shadow:0 10px 24px rgba(83,66,166,.12);display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem 1.5rem;align-items:end}.profile-settings--menu{padding:0;margin:0}.profile-settings--menu .profile-settings-form{padding:0;box-shadow:none;background:transparent;grid-template-columns:1fr}.profile-settings--menu .profile-settings-button{width:100%;justify-self:stretch}.profile-field{display:flex;flex-direction:column;gap:.5rem}.profile-field label{font-weight:600;color:var(--color-roxo);font-size:.95rem}.profile-field input{padding:.75rem;border:1px solid #e0e0e0;border-radius:8px;font-size:.95rem;font-family:Inter,sans-serif}.profile-field input:focus{outline:none;border-color:var(--color-roxo)}.profile-settings-button{padding:.9rem 2rem;background:var(--color-roxo);color:white;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s;justify-self:flex-start}.profile-settings-button:disabled{opacity:.6;cursor:not-allowed}.profile-settings-error,.profile-settings-success{grid-column:1/-1;padding:.75rem 1rem;border-radius:8px;font-size:.95rem;font-family:Inter,sans-serif}.profile-settings-error{background:#fee;border:1px solid #fcc;color:#c33}.profile-settings-success{background:#eefbf2;border:1px solid #c8ead1;color:#1d7a3a}.profile-settings-google-notice{grid-column:1/-1;padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;color:#856404;font-size:.9rem;margin-bottom:1rem}.profile-settings-google-notice p{margin:0;line-height:1.5}.profile-settings-reauth-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.profile-settings-reauth-content{background:white;border-radius:16px;padding:2rem;max-width:500px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.3)}.profile-settings-reauth-content h3{font-size:1.5rem;font-weight:600;color:var(--color-roxo);margin:0 0 1rem;font-family:var(--font-title)}.profile-settings-reauth-content p{color:var(--color-text-secondary);margin:0 0 1.5rem;line-height:1.6}.profile-settings-reauth-actions{display:flex;gap:1rem;justify-content:flex-end}.profile-settings-reauth-button{padding:.75rem 1.5rem;background:var(--color-roxo);color:white;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;font-family:Inter,sans-serif}.profile-settings-reauth-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(83,66,166,.3)}.profile-settings-cancel-button{padding:.75rem 1.5rem;background:#e5e7eb;color:#374151;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;font-family:Inter,sans-serif}.profile-settings-cancel-button:hover{background:#d1d5db}@media (max-width:768px){.profile-settings{padding:0 1rem}.profile-settings-form{padding:1.5rem}.profile-settings-button{width:100%;justify-self:stretch}.profile-settings-reauth-content{padding:1.5rem}.profile-settings-reauth-actions{flex-direction:column}.profile-settings-cancel-button,.profile-settings-reauth-button{width:100%}}.user-menu{position:relative;flex-shrink:0}.user-menu-trigger{background:none;border:none;padding:0;cursor:pointer;transition:transform .2s ease}.user-menu-trigger:hover{transform:scale(1.05)}.user-menu-trigger:active{transform:scale(.95)}.user-menu-dropdown{position:absolute;top:calc(100% + 12px);right:0;background:white;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.15);min-width:200px;width:360px;max-width:90vw;z-index:1000;overflow:hidden;animation:slideDown .2s ease}.user-menu-backdrop{display:none}.user-profile-modal{position:fixed;inset:0;margin:auto;background:white;border-radius:16px;padding:1.25rem 1rem 1.5rem;width:min(520px,92vw);max-height:85vh;overflow-y:auto;z-index:1000;box-shadow:0 18px 40px rgba(57,44,121,.25)}.user-profile-modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.user-profile-modal-header h3{margin:0;font-size:1.2rem;color:var(--color-roxo);font-family:var(--font-title)}.user-profile-close{border:none;background:rgba(83,66,166,.08);color:var(--color-roxo-escuro);width:36px;height:36px;border-radius:50%;font-size:1.2rem;cursor:pointer}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-menu-info{padding:16px}.user-menu-name{font-weight:600;font-size:.95rem;color:var(--color-roxo);margin-bottom:4px;font-family:Inter,sans-serif}.user-menu-email{font-size:.85rem;color:#666;font-family:Inter,sans-serif}.user-menu-divider{height:1px;background:#e0e0e0;margin:8px 0}.user-menu-item{width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:.9rem;font-family:Inter,sans-serif;transition:background-color .2s ease;color:#333}.user-menu-item-primary{color:var(--color-roxo);font-weight:600}.user-menu-item:hover{background-color:#f5f5f5}.user-menu-logout{color:#e74c3c;font-weight:500}.user-menu-logout:hover{background-color:#fee;color:#c0392b}@media (max-width:768px){.user-menu-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:999}.user-menu-dropdown{right:-10px;width:320px;max-width:90vw}.user-menu-trigger{display:flex;align-items:center}}@media (max-width:480px){.user-menu-dropdown{width:280px}.user-profile-modal{width:min(360px,92vw)}.user-menu-info{padding:12px}.user-menu-name{font-size:.85rem}.user-menu-email{font-size:.75rem}.user-menu-item{padding:10px 12px;font-size:.85rem}}