.ns-avatar-menu {
    position: relative;
    z-index: 2;
    align-self: flex-end;
    max-width: 100%;
    color: #e6edfb;
    font: 400 14px/1.45 system-ui, sans-serif;
    pointer-events: auto;
}
.ns-avatar-menu-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid #526480;
    border-radius: 10px;
    background: #101b30;
    color: inherit;
    font: inherit;
    cursor: pointer;
}
.ns-avatar-menu-button:focus-visible,
.ns-avatar-menu-panel:focus-visible,
.ns-avatar-menu-option input:focus-visible {
    outline: 2px solid #f2b544;
    outline-offset: 3px;
}
.ns-avatar-menu-panel {
    position: absolute;
    right: 0;
    bottom: calc(100% + 8px);
    width: min(18rem, calc(100vw - 24px));
    max-height: min(65vh, 24rem);
    overflow: auto;
    box-sizing: border-box;
    padding: 14px;
    border: 1px solid #526480;
    border-radius: 12px;
    background: #101b30;
    box-shadow: 0 8px 30px #0008;
    overscroll-behavior: contain;
}
.ns-avatar-menu-panel[hidden] { display: none; }
.ns-avatar-menu-row {
    min-width: 0;
    margin: 0;
    padding: 12px 0;
    border: 0;
    border-bottom: 1px solid #33415a;
}
.ns-avatar-menu-row:first-child { padding-top: 0; }
.ns-avatar-menu-row:last-child { padding-bottom: 0; border-bottom: 0; }
.ns-avatar-menu-row legend { padding: 0; font-weight: 650; }
.ns-avatar-menu-reason { margin: 6px 0 0; color: #b8c5db; font-size: 13px; overflow-wrap: anywhere; }
.ns-avatar-menu-option { display: flex; align-items: center; gap: 8px; min-height: 44px; overflow-wrap: anywhere; }
.ns-avatar-menu-option input { flex: 0 0 auto; width: 18px; height: 18px; accent-color: #f2b544; }
.ns-avatar-menu-option input:disabled + span { color: #b8c5db; }
