/* Profile-photo menu (Oct 11): replaces the tab grid and the header buttons, mobile first. Uses the pp.css palette. */
.ptop .pin{flex-wrap:nowrap;gap:12px}
.pgtitle{font-weight:800;font-size:16px;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto}
.pmenu{position:relative;margin-left:auto;display:flex;align-items:center;gap:10px;flex:none}
.pmbtn{position:relative;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;flex:none}
.pmbtn .avatar{display:grid!important;width:38px;height:38px;font-size:13px;border:2px solid var(--line)}
.pmbtn img.avatar{display:block!important}
.pmenu.open .pmbtn .avatar,.pmbtn:hover .avatar{border-color:var(--accent)}
.pmbtn:focus-visible{outline:2px solid var(--accent-light,#9ed0ff);outline-offset:2px}
.pmbadge{position:absolute;top:0;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--gold);color:#1b1500;font-size:11px;font-weight:800;line-height:18px;text-align:center;border:2px solid var(--surface)}
.pmpanel{position:absolute;right:0;top:calc(100% + 8px);z-index:60;width:min(290px,calc(100vw - 24px));background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.45);padding:8px}
.pmpanel[hidden]{display:none}
.pmwho{display:flex;flex-direction:column;gap:2px;padding:8px 10px 10px;border-bottom:1px solid var(--line);margin-bottom:6px;min-width:0}
.pmwho b{color:var(--fg);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pmwho span{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pmnav{display:flex;flex-direction:column;gap:2px}
.pmnav a,.pmitem{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 12px;border-radius:10px;color:var(--fg);text-decoration:none;font-weight:600;font-size:15px}
.pmnav a:hover,.pmitem:hover{background:var(--card2,rgba(255,255,255,.05))}
.pmnav a.on{background:var(--accent-dim);color:var(--fg);box-shadow:inset 3px 0 0 var(--accent)}
.pmnav a:focus-visible,.pmitem:focus-visible,.pmlang button:focus-visible{outline:2px solid var(--accent-light,#9ed0ff);outline-offset:-2px}
.pmnav .cnt{display:inline-block;margin-left:8px;background:var(--gold);color:#1b1500;border-radius:99px;font-size:12px;font-weight:800;padding:1px 8px}
.pmdiv{border:0;border-top:1px solid var(--line);margin:6px 4px}
.pmlang{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 12px;color:var(--muted);font-weight:600;font-size:14px}
.pmlang .langsw button{padding:7px 12px;font-size:13px}
.pmout{margin:0}
.pmitem{width:100%;background:none;border:0;font:inherit;cursor:pointer;text-align:left;color:var(--muted)}
.ptop .pmenu .status{display:inline-flex}
@media (max-width:760px){
  .ptop .pin{flex-wrap:nowrap}
  .ptop .pmenu .status{display:none}
  .brand>span:not(.pxmark){display:none}
  .pgtitle{font-size:16px;padding-left:12px;border-left:1px solid var(--line)}
}
.pmclear{color:var(--fg)}
