.aa-acct {
	--aa-surface: var(--cl-bg-surface, #FFFDF9);
	--aa-soft: var(--cl-bg-soft, #F1E9DE);
	--aa-text: var(--cl-text-primary, #2B231C);
	--aa-muted: var(--cl-text-muted, #6E6155);
	--aa-border: var(--cl-border, #E7DCCB);
	--aa-tool: var(--cl-tool, #2F6E68);
	--aa-tool-hover: var(--cl-tool-hover, #234F4B);
	position: relative;
	display: inline-flex;
	align-items: center;
	font-family: Inter, system-ui, sans-serif;
}
.aa-acct *, .aa-acct *::before, .aa-acct *::after { box-sizing: border-box; }

/* The header slot sits at the right of its row: after the nav on desktop, beside Menu on phones and tablets. */
body .elementor #aa-acct-slot { display: flex; flex: 0 0 auto; width: auto; align-items: center; margin-left: auto; }
body .elementor #aa-acct-slot:not(:has(.aa-acct)) { display: none; }

.aa-acct .aa-acct__btn {
	display: flex; align-items: center; gap: 6px;
	margin: 0; padding: 3px 6px 3px 3px;
	background: none; border: 1px solid transparent; border-radius: 999px;
	color: var(--aa-muted); cursor: pointer; line-height: 1;
}
.aa-acct .aa-acct__btn:hover, .aa-acct .aa-acct__btn[aria-expanded="true"] { background: var(--aa-soft); border-color: var(--aa-border); }
.aa-acct .aa-acct__btn:focus-visible { outline: 2px solid var(--aa-tool); outline-offset: 2px; }

.aa-acct .aa-acct__av {
	display: grid; place-items: center;
	width: 38px; height: 38px; flex: 0 0 38px;
	border-radius: 50%;
	background: var(--aa-tool); color: var(--aa-surface);
	font-family: Manrope, Inter, sans-serif; font-weight: 700; font-size: 14px; letter-spacing: .02em;
}
.aa-acct .aa-acct__chev { display: inline-flex; width: 14px; height: 14px; flex: 0 0 14px; }
.aa-acct .aa-acct__chev svg { display: block; width: 14px; height: 14px; max-width: none; overflow: visible; transition: transform .15s; }
.aa-acct .aa-acct__btn[aria-expanded="true"] .aa-acct__chev svg { transform: rotate(180deg); }

.aa-acct .aa-acct__menu {
	position: absolute; top: calc(100% + 10px); right: 0; z-index: 1000;
	width: 260px; padding: 8px;
	background: var(--aa-surface); border: 1px solid var(--aa-border); border-radius: 12px;
	box-shadow: 0 12px 32px rgba(43, 35, 28, .12);
	text-align: left;
}
.aa-acct .aa-acct__menu[hidden] { display: none; }

.aa-acct .aa-acct__who { display: flex; gap: 12px; align-items: center; padding: 10px 10px 14px; margin: 0 0 6px; border-bottom: 1px solid var(--aa-border); }
.aa-acct .aa-acct__who .aa-acct__av { width: 42px; height: 42px; flex-basis: 42px; font-size: 15px; }
.aa-acct .aa-acct__id { min-width: 0; }
.aa-acct .aa-acct__name { margin: 0; font-size: 15px; font-weight: 600; line-height: 1.3; color: var(--aa-text); overflow-wrap: anywhere; }
.aa-acct .aa-acct__email { margin: 2px 0 0; font-size: 13px; line-height: 1.3; color: var(--aa-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.aa-acct .aa-acct__email--only { margin: 0; font-size: 14px; color: var(--aa-text); }

.aa-acct .aa-acct__list { margin: 0; padding: 0; list-style: none; }
.aa-acct .aa-acct__list li { margin: 0; padding: 0; }
.aa-acct .aa-acct__item {
	display: flex; align-items: center; gap: 12px;
	padding: 10px; border-radius: 8px;
	font-size: 15px; font-weight: 400; line-height: 1.3;
	color: var(--aa-text); text-decoration: none;
}
.aa-acct .aa-acct__item:hover, .aa-acct .aa-acct__item:focus-visible { background: var(--aa-soft); color: var(--aa-text); outline: none; }
.aa-acct .aa-acct__item svg { width: 18px; height: 18px; flex: 0 0 18px; color: var(--aa-muted); }
.aa-acct .aa-acct__sep { height: 1px; margin: 6px 0; background: var(--aa-border); }

@media (max-width: 767px) {
	.aa-acct .aa-acct__btn { padding: 2px; }
	.aa-acct .aa-acct__chev { display: none; }
	.aa-acct .aa-acct__menu { position: fixed; top: var(--aa-acct-top, 72px); left: 16px; right: 16px; width: auto; }
	.aa-acct .aa-acct__item { padding: 13px 10px; }
}
