
.user-info { box-sizing: border-box; flex-wrap: nowrap; gap: 10px; }
.user-info > .app-brand { flex: 1 1 auto; min-width: 0; }
.user-info > .app-brand .app-brand-copy { overflow: hidden; }
.user-info > .app-brand .app-brand-copy strong,
.user-info > .app-brand .app-brand-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.user-info > .vpn-status-wrap, .user-info > .header-view-toggle,
.user-info > .camera-wall-header-btn, .user-info > .header-menu { flex-shrink: 0; }
.header-menu { position: relative; flex: 0 0 auto; }
.header-menu-toggle { list-style: none; display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 40px; padding: 8px 13px; box-sizing: border-box; cursor: pointer; border: 1px solid #dfe9e3; border-radius: 14px; background: #edf3f0; color: #155d45; font-size: .85rem; font-weight: 600; user-select: none; }
.header-menu-toggle::-webkit-details-marker { display: none; }
.header-menu-toggle::marker { content: ''; }
.header-menu-toggle:hover, .header-menu[open] .header-menu-toggle { background: #dfede5; }
.header-menu-toggle:focus-visible { outline: 2px solid #1f7a5a; outline-offset: 3px; }
.header-menu-chevron { font-size: .6rem; transition: transform .15s; }
.header-menu[open] .header-menu-chevron { transform: rotate(180deg); }
.header-menu-panel { position: absolute; top: calc(100% + 12px); right: 0; width: 292px; max-width: calc(100vw - 28px); max-height: calc(100dvh - 96px); overflow-y: auto; overscroll-behavior: contain; box-sizing: border-box; padding: 10px; border-radius: 20px; border: 1px solid #e4ebe7; background: #fff; color: #14221d; box-shadow: 0 18px 50px rgba(20,45,35,.18); }
.header-menu-panel .user-cluster { margin: 0; padding: 10px 8px 14px; border-bottom: 1px solid #e4ebe7; }
.header-menu-panel .user-details { display: block; min-width: 0; }
.header-menu-panel .user-name { max-width: 210px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.header-menu-panel .user-role { font-size: .72rem; }
.header-menu-links { display: flex; flex-direction: column; gap: 3px; padding: 8px 0; }
.header-menu-links .admin-btn, .header-menu-links .settings-btn { align-items: center; justify-content: flex-start; gap: 12px; width: 100%; min-height: 43px; padding: 10px 12px; margin: 0; border-radius: 11px; border: 0; background: transparent; color: #244e3c; text-align: left; font-size: .84rem; font-weight: 500; box-sizing: border-box; cursor: pointer; }
.header-menu-links .settings-btn { display: flex; }
.header-menu-links button:hover { background: #edf5f0; }
.header-menu-links button:focus-visible { outline: 2px solid #1f7a5a; outline-offset: -2px; }
.header-menu-links button i { width: 20px; flex: 0 0 20px; text-align: center; font-size: .88rem; }
.header-menu-auth { padding-top: 8px; border-top: 1px solid #e4ebe7; }
.header-menu-auth button { width: 100%; margin: 0; text-align: center; }
@media (max-width: 1000px) {
 .user-info { padding-left: 20px; padding-right: 20px; }
 .user-info > .app-brand .app-brand-copy small { display: none; }
}
@media (max-width: 768px) {
 .user-info { padding: 10px 14px; gap: 7px; }
 .user-info > .app-brand .app-brand-copy strong { font-size: .85rem; }
 .header-menu-toggle { width: 38px; min-height: 38px; padding: 0; border-radius: 12px; }
 .header-menu-toggle > span, .header-menu-chevron { display: none; }
 .header-menu-panel .user-details { display: block !important; }
 .header-menu-panel .user-cluster { margin-left: 0; }
}
@media (max-width: 420px) {
 .user-info { gap: 5px; padding-left: 10px; padding-right: 10px; }
 .user-info > .app-brand { gap: 7px; }
 .user-info > .app-brand .app-brand-icon { width: 32px; height: 32px; flex-basis: 32px; border-radius: 11px; }
 .user-info > .vpn-status-wrap .vpn-status-btn { width: 34px; min-width: 34px; height: 34px; padding: 0; justify-content: center; }
 .user-info > .vpn-status-wrap .vpn-status-label, .user-info > .vpn-status-wrap .vpn-status-icon { display: none; }
 .user-info > .vpn-status-wrap .vpn-status-dot { margin: 0; }
 .user-info > .header-view-toggle { margin: 0 !important; }
}
