/* Account menu (<details>, no JS needed): rail row on wide screens, avatar button in the narrow header. */
.ni-menu { position: relative; }
.ni-menu summary { list-style: none; cursor: pointer; }
.ni-menu summary::-webkit-details-marker { display: none; }
.ni-menu ul {
  position: absolute; z-index: 10; margin: 0; padding: 0.375rem; list-style: none; min-width: 12rem;
  background: var(--ni-color-surface); border: 1px solid var(--ni-color-border); border-radius: var(--ni-radius-md);
  box-shadow: var(--ni-shadow-pop);
}
.ni-menu li a, .ni-menu li button {
  display: flex; align-items: center; gap: 0.625rem; width: 100%; padding: 0.5rem 0.625rem; border: 0; border-radius: 0.5rem;
  background: none; color: inherit; font: 500 0.875rem/1.3 var(--ni-font-sans); text-align: start; cursor: pointer;
}
.ni-menu li a:hover, .ni-menu li button:hover { background: var(--ni-color-surface-2); color: var(--ni-color-primary); }
.ni-menu li .ni-i { width: 1.125rem; height: 1.125rem; }
.ni-menu form { margin: 0; }

.ni-acct-rail summary { display: flex; align-items: center; gap: 0.625rem; padding: 0.625rem; border-radius: 0.875rem; }
.ni-acct-rail summary:hover, .ni-acct-rail[open] summary { background: var(--ni-color-hover); }
.ni-acct-rail .ni-who { flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.3; }
.ni-acct-rail .ni-name, .ni-acct-rail .ni-meta { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 0.875rem; }
.ni-acct-rail ul { bottom: calc(100% + 0.375rem); inset-inline: 0; }
.ni-acct-header summary { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: 50%; }
.ni-acct-header ul { top: calc(100% + 0.5rem); inset-inline-end: 0; }
.ni-av-32 { width: 2rem; height: 2rem; font-size: 0.875rem; }
.ni-av-40 { width: 2.5rem; height: 2.5rem; font-size: 1rem; }
.ni-follow { margin: 0; flex: none; }
.ni-btn-soft { background: var(--ni-color-surface-2); color: var(--ni-color-primary); }
.ni-btn-soft:hover { background: var(--ni-color-soft-hover); }
.ni-follow-sm .ni-btn { height: 2rem; padding: 0 0.75rem; font-size: 0.8125rem; }
.ni-author .ni-follow { margin-inline-start: auto; align-self: center; }
.ni-follow-wide .ni-btn { width: 100%; height: 2.25rem; }
