/* Perfil do usuário (1.9.7) dentro dos ambientes */

/* usuário no rodapé do menu */
.nav-usuario{margin-top:auto;position:relative;display:flex;align-items:center;gap:9px;padding:8px;border-radius:8px;cursor:pointer;border:1px solid var(--line);background:#fff}
.nav-usuario:hover,.nav-usuario.on{background:#f5f7fa}
.nav-usuario .nm{min-width:0;flex:1;font-size:12px;line-height:1.3}
.nav-usuario .nm b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-usuario .nm span{color:var(--ink-3);font-size:11px}
.nav-usuario .seta{color:var(--ink-4)}
.pf-menu{position:absolute;left:0;right:0;bottom:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(17,24,39,.16);overflow:hidden;z-index:30}
.pf-menu .quem{display:flex;align-items:center;gap:9px;padding:11px 12px;border-bottom:1px solid var(--line-soft)}
.pf-menu .quem b{display:block;font-size:12.5px}
.pf-menu .quem span{display:block;font-size:11px;color:var(--ink-3);max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-menu a{display:flex;align-items:center;gap:9px;padding:9px 12px;color:var(--ink);text-decoration:none;font-size:12.5px}
.pf-menu a:hover,.pf-menu a.foco{background:var(--brand-soft);color:var(--brand)}
.pf-menu hr{border:0;border-top:1px solid var(--line-soft);margin:0}

/* foto ou iniciais */
.pf-foto{flex:none;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:650;letter-spacing:.02em;background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}
.pf-foto.g26{width:26px;height:26px;font-size:10.5px}
.pf-foto.g30{width:30px;height:30px;font-size:11px}
.pf-foto.g56{width:56px;height:56px;font-size:19px}
.pf-foto.g120{width:120px;height:120px;font-size:38px}

.cabeca.pf-cab{align-items:center}
.cabeca.pf-cab .t{flex:1}
.cabeca.pf-cab h1{display:flex;align-items:center;gap:10px}
.cabeca.pf-cab .meta{margin:3px 0 0;color:var(--ink-3);font-size:12px}

.pf-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.pf-col{display:flex;flex-direction:column;gap:16px;min-width:0}
.pf-quadro{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px}
.pf-quadro>h2{margin:0;font-size:13.5px;font-weight:700;display:flex;align-items:center;gap:8px}
.pf-quadro>h2 .chip{margin-left:auto}
.pf-quadro>.sub{margin:3px 0 14px;font-size:12px;color:var(--ink-3)}
.pf-bloco-foto{display:flex;align-items:center;gap:20px}
.pf-bloco-foto .lado{display:flex;flex-direction:column;gap:9px;min-width:0}
.pf-bloco-foto .botoes{display:flex;gap:8px;flex-wrap:wrap}
.pf-bloco-foto .dica{font-size:12px;color:var(--ink-3);line-height:1.5}
.pf-leitura .campo input{background:#f7f8f9;color:var(--ink-2)}
.pf-leitura .campo label one-icon{color:var(--ink-3)}
.pf-linha{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pf-vinc{border:1px solid var(--line);border-radius:8px;overflow:hidden}
.pf-vinc .item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line-soft)}
.pf-vinc .item:last-child{border-bottom:0}
.pf-vinc .av{width:30px;height:30px;border-radius:8px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;flex:none}
.pf-vinc .av.cinza{background:#f3f4f6;color:var(--ink-2)}
.pf-vinc .txt{min-width:0;flex:1}
.pf-vinc .txt b{display:block;font-weight:600;font-size:12.5px}
.pf-vinc .txt span{font-size:11.5px;color:var(--ink-3)}
.pf-rodape{margin:12px 0 0;font-size:11.5px;color:var(--ink-3);display:flex;align-items:flex-start;gap:6px}
.aviso.erro{background:var(--erro-soft);border-color:var(--erro-line);color:#991b1b}

/* recorte da foto */
.pf-recorte{position:relative;width:100%;height:300px;border-radius:10px;overflow:hidden;background:#111827;cursor:grab;touch-action:none;user-select:none}
.pf-recorte:active{cursor:grabbing}
.pf-recorte img{position:absolute;left:50%;top:50%;max-width:none;pointer-events:none}
.pf-recorte .mascara{position:absolute;left:50%;top:50%;width:220px;height:220px;margin:-110px 0 0 -110px;border-radius:50%;box-shadow:0 0 0 999px rgba(15,23,42,.62);border:2px solid #fff;pointer-events:none}
.pf-zoom{display:flex;align-items:center;gap:10px;margin-top:12px;color:var(--ink-3);font-size:12px}
.pf-zoom input{flex:1;accent-color:var(--brand)}
.pf-previas{display:flex;align-items:center;gap:14px;margin-top:14px;font-size:12px;color:var(--ink-3)}
.pf-previas .p{display:flex;align-items:center;gap:7px}
