/* MoneyJourney header account button (brand v2) */
.mj-acct { --mj-ink: #101B1A; --mj-pine: #1F7A5C; --mj-brass: #B8863B; --mj-bone: #F5F1E8; --mj-line: #E3DDCB;
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif; line-height: 1.2; }
.mj-acct a { text-decoration: none; }

/* logged out */
.mj-acct.mj-acct-out { display: inline-flex; align-items: center; gap: 16px; }
.mj-acct .mj-acct-login { color: var(--mj-ink); font-weight: 600; font-size: 15px; }
.mj-acct .mj-acct-login:hover { color: var(--mj-pine); }
.mj-acct .mj-acct-join { background: var(--mj-brass); color: var(--mj-ink); font-weight: 700; font-size: 14px; padding: 9px 18px; border-radius: 8px; }
.mj-acct .mj-acct-join:hover { background: var(--mj-ink); color: #fff; }

/* logged in */
details.mj-acct.mj-acct-in { position: relative; display: inline-block; }
details.mj-acct-in > summary { list-style: none; cursor: pointer; background: #fff; color: var(--mj-ink); border: 1px solid var(--mj-ink);
  border-radius: 8px; padding: 8px 16px; font-weight: 700; font-size: 14px; user-select: none; }
details.mj-acct-in > summary::-webkit-details-marker { display: none; }
details.mj-acct-in > summary::after { content: "\25BE"; margin-left: 8px; font-size: 11px; }
details.mj-acct-in > summary:hover { background: var(--mj-ink); color: #fff; }
details.mj-acct-in > summary:focus-visible, .mj-acct a:focus-visible { outline: 2px solid var(--mj-pine); outline-offset: 2px; }
.mj-acct .mj-acct-menu { position: absolute; right: 0; top: calc(100% + 8px); min-width: 220px; z-index: 99999; background: #fff;
  border: 1px solid var(--mj-line); border-radius: 10px; box-shadow: 0 12px 24px rgba(16, 27, 26, 0.14); padding: 6px; }
.mj-acct .mj-acct-menu a { display: block; padding: 10px 12px; border-radius: 6px; color: var(--mj-ink); font-weight: 500; font-size: 14px; }
.mj-acct .mj-acct-menu a:hover { background: var(--mj-bone); color: var(--mj-pine); }
.mj-acct .mj-acct-menu a.mj-acct-up { color: var(--mj-pine); font-weight: 700; }
.mj-acct .mj-acct-menu a.mj-acct-logout { margin-top: 4px; border-top: 1px solid var(--mj-line); border-radius: 0 0 6px 6px; padding-top: 12px; }

/* dark header: [mj_account_button theme="dark"] */
.mj-acct-dark .mj-acct-login { color: #fff; }
.mj-acct-dark .mj-acct-login:hover { color: var(--mj-brass); }
details.mj-acct-dark > summary { background: transparent; color: #fff; border-color: #fff; }
details.mj-acct-dark > summary:hover { background: #fff; color: var(--mj-ink); }

@media (max-width: 640px) {
  .mj-acct.mj-acct-out { gap: 12px; }
  .mj-acct .mj-acct-join { padding: 8px 14px; }
  .mj-acct .mj-acct-menu { min-width: 200px; }
}
