/* Avatar disclosure: keep its light surface readable inside the dark topbar. */
body:not([data-view="admin"]) .topbar .topbar-user .account-dropdown {
  box-sizing:border-box; width:304px; max-width:calc(100vw - 24px); padding:8px;
  border:1px solid #e2ddcf; border-radius:18px; background:#fffdf8; color:#34394c;
  box-shadow:0 16px 42px #1d25432b,0 3px 10px #3439590d;
  overflow:auto; overscroll-behavior:contain; scrollbar-width:thin;
}
body:not([data-view="admin"]) .topbar .topbar-user .account-dropdown a { color:#34394c; text-decoration:none; }
body:not([data-view="admin"]) .topbar .topbar-user .account-dropdown .account-menu-header {
  display:flex; align-items:center; gap:12px; width:100%; padding:14px 12px; margin:0;
  border:0; border-radius:12px; background:linear-gradient(115deg,#f6f4e9,#edf4ed); text-align:left;
}
.account-dropdown .account-menu-header > .avatar { display:block; flex:none; width:44px; height:44px; margin:0; border:2px solid #fff; border-radius:12px; image-rendering:pixelated; }
.account-menu-header-copy { display:flex; flex-direction:column; gap:6px; min-width:0; }
.account-dropdown .account-menu-name { padding:0; margin:0; border:0; color:#34394c; font-size:.95rem; line-height:1.4; overflow-wrap:anywhere; }
.account-menu-caption { color:#7a8271; font-size:.7rem; line-height:1.4; }
.account-menu-links { display:grid; gap:3px; margin:8px 0 0; }
body:not([data-view="admin"]) .topbar .topbar-user .account-dropdown .account-menu-link {
  display:grid; grid-template-columns:34px minmax(0,1fr) 12px; align-items:center; gap:10px;
  padding:11px 10px; min-height:62px; width:100%; border:0; border-radius:10px; background:transparent;
}
.account-menu-link-icon { display:grid; place-items:center; width:34px; height:34px; border:1px solid #ece3ce; border-radius:10px; background:#faf3e3; color:#8c7545; }
.account-dropdown .account-menu-icon { display:block; width:19px; height:19px; flex:none; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.account-menu-link-copy { display:flex; flex-direction:column; gap:4px; min-width:0; }
.account-menu-link-copy strong { color:#3e4651; font-size:.82rem; line-height:1.4; font-weight:600; }
.account-menu-link-copy > span { color:#929085; font-size:.68rem; line-height:1.5; overflow-wrap:anywhere; }
.account-menu-arrow { color:#a9ab9f; font-size:1.2rem; text-align:center; }
body:not([data-view="admin"]) .topbar .topbar-user .account-dropdown .account-menu-link:hover,
body:not([data-view="admin"]) .topbar .topbar-user .account-dropdown .account-menu-header:hover { background:#f1f5eb; }
.account-dropdown a:focus-visible, .account-dropdown button:focus-visible { outline:2px solid #71876a; outline-offset:-2px; }
body:not([data-view="admin"]) .topbar .topbar-user .account-dropdown .account-logout {
  display:flex; align-items:center; justify-content:center; gap:8px; box-sizing:border-box;
  width:100%; min-height:40px; margin:8px 0 0; padding:10px 12px; border:1px solid #efdcd4; border-radius:10px;
  color:#a56552; background:#fcf2ed; font:inherit; font-size:.78rem; line-height:1.5; cursor:pointer;
}
body:not([data-view="admin"]) .topbar .topbar-user .account-dropdown .account-logout:hover { background:#f8e6dc; color:#94503e; }
.account-dropdown .account-logout:disabled { cursor:wait; opacity:.55; }
.account-dropdown > .error-text { margin:10px 6px 2px; font-size:.72rem; color:#a74e45; white-space:normal; overflow-wrap:anywhere; }
.account-dropdown .account-mobile-summary { padding:12px 4px; margin:0; border:0; }
.account-dropdown .account-mobile-summary .account-stats { margin:0; padding:10px 0; border-color:#e1e8dc; background:#f1f5eb; }
.account-dropdown .account-mobile-summary .account-stat strong { color:#415447; font-size:1.2rem; }
.account-dropdown .account-mobile-summary .account-stat span { color:#7e877b; font-size:.68rem; }
.account-dropdown .account-mobile-summary .account-stat-note { color:#939387; font-size:.65rem; margin:7px 0; }
.account-dropdown .account-mobile-summary .account-links { margin-top:8px; }
.account-dropdown .account-mobile-summary .account-shortcut { background:#eef5ec; border-color:#e0e9db; }
@media(max-width:1080px) {
  .account-menu-human .account-menu-links { display:none; }
  .account-menu-human .account-dropdown .account-logout { margin-top:0; }
}
@media(prefers-reduced-motion:no-preference) {
  .account-menu[open] .account-dropdown { animation:account-menu-in .13s ease-out; }
  @keyframes account-menu-in { from { opacity:0; } to { opacity:1; } }
}
