/**
 * Member state in the navigation.
 *
 * The account item and the per-item Visibility flags are resolved client-side
 * (see member-nav.js) so the page itself stays cacheable.
 */

/* Items flagged Members only ship hidden and are revealed once MemberMax
   confirms a session; Logged-out-only items get this class added instead. */
.roa-nav-hidden {
	display: none !important;
}

/* "Hi, <name> (Log out)" must stay on one line, always.
   Divi styles menu links as `display: block` with their own padding, which
   breaks the line before "Log out" — hence the overrides. */
.roa-member-greeting,
.roa-member-greeting * {
	white-space: nowrap !important;
}

/* inline-flex, not inline: the item lines up against the other menu items by
   its box rather than by a text baseline, so it stops carrying descender space
   below itself. inline-flex (not flex) keeps it in the horizontal menu row. */
.roa-member-greeting {
	display: inline-flex !important;
	/* baseline, not center: the two labels are different sizes, and centering
	   their boxes drops the smaller one's baseline below the larger one's.
	   !important is load-bearing — Divi ships
	   `.et_pb_menu .et_pb_menu__menu > nav > ul > li { align-items: stretch }`,
	   which outranks a single class and stretches both labels to full item
	   height, leaving each sitting at the top of its own box. This one
	   declaration is what actually aligns the item; verified in the browser. */
	align-items: baseline !important;
	gap: 0.35em;
	line-height: 1;
}

/* Deliberately no font-size on the item itself. The site's Customizer CSS has
   `#menu-top-menu ul li { font-size: 16px !important }`, and an ID beats any
   number of classes, so setting one here would be dead code. The item inherits
   the nav's size; only Log out below is sized down, which does work because
   nothing targets the anchor's font-size. */
.roa-member-greeting__name {
	line-height: 1;
}

.roa-member-greeting__logout {
	display: inline-block !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
	line-height: 1;
	/* Secondary again — an action, not the label. */
	font-size: 0.9em;
}

/* Parentheses come from CSS so the markup stays free of loose text nodes. */
.roa-member-greeting__logout::before {
	content: "(";
}

.roa-member-greeting__logout::after {
	content: ")";
}
