/* Account panel: opaque surface keeps map labels from competing with controls. */
#user-profile-menu{box-sizing:border-box;width:min(316px,calc(100vw - 24px));padding:16px;border:1px solid #3a718b!important;border-radius:20px;background:linear-gradient(155deg,#12344b,#081d30 70%)!important;box-shadow:0 20px 55px #020d2399,inset 0 1px #b3f1ff18!important;max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain;backdrop-filter:none!important}
#user-profile-menu *{box-sizing:border-box}
.profile-panel-kicker{display:flex;align-items:center;gap:7px;color:#7eb8cd;font-size:9px;font-weight:800;letter-spacing:1.6px;margin-bottom:16px}
.profile-panel-kicker>span{width:6px;height:6px;background:#50dbef;box-shadow:0 0 8px #50dbef66;border-radius:2px}
#user-profile-menu .user-profile-info{padding:0 0 16px;margin:0 0 14px;gap:12px;border-bottom:1px solid #72c6e522}
#user-profile-menu .user-profile-avatar{width:46px;height:46px;flex:0 0 46px;border:1px solid #62d8ef77;border-radius:14px;background:#153f56!important;box-shadow:inset 0 0 0 4px #09273c}
#user-profile-menu .user-profile-name{font-size:14px;max-width:215px;letter-spacing:.1px}
#user-profile-menu .user-profile-email{font-size:11px;font-weight:400;max-width:215px;color:#a4bccb!important}
#user-profile-menu .pwa-profile-status{padding:13px;margin:0 0 14px;border:1px solid #5b9dbb40;border-radius:13px;background:#061a2bbd;gap:8px}
#user-profile-menu .pwa-status-copy strong{font-size:11px;line-height:1.5}
#user-profile-menu .pwa-status-copy small{font-size:10px;line-height:1.5;color:#9cb7c8}
#user-profile-menu .pwa-install-button,#user-profile-menu .pwa-offline-refresh{min-height:40px;border-radius:9px;font-size:11px;font-weight:700;letter-spacing:0;display:flex;align-items:center;justify-content:center;gap:8px}
#user-profile-menu .pwa-install-button[hidden]{display:none}
#user-profile-menu .pwa-install-button{background:linear-gradient(110deg,#1679a2,#145372);border:1px solid #58d6f299}
#user-profile-menu .pwa-offline-refresh{background:#12383e;color:#a6e9df;border-color:#51c6b544}
#user-profile-menu .pwa-install-button:before,#user-profile-menu .pwa-offline-refresh:before{content:"";width:17px;height:17px;flex-shrink:0;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12m-4-4 4 4 4-4M4 16v5h16v-5'/%3E%3C/svg%3E") center/contain no-repeat}
#user-profile-menu .user-profile-link{min-height:60px;padding:9px 10px;gap:10px;justify-content:flex-start;border:1px solid #4a83952b;border-radius:11px;background:#12334a;margin-bottom:8px;font-size:12px;font-weight:700}
.profile-action-icon{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border:1px solid #59c8e53d;border-radius:9px;background:#17465c;color:#73dff3}
.profile-action-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.profile-action-copy{flex:1;line-height:1.5}.profile-action-copy small{display:block;font-size:10px;font-weight:400;color:#9ebdcd;margin-top:2px}
.profile-action-arrow{font:22px/1 sans-serif;color:#77afc3}
#user-profile-menu .user-logout-form{margin-top:12px;padding-top:12px;border-top:1px solid #72c6e522}
#user-profile-menu .user-logout-btn{justify-content:flex-start;min-height:44px;padding:6px 10px;border-radius:10px;font-size:12px;gap:10px;background:#442b3b!important;color:#ffc0cd!important}
#user-profile-menu .user-logout-btn .profile-action-icon{background:transparent;border-color:transparent;color:#ffa4bc}
#user-profile-menu :is(button,a):focus-visible{outline:2px solid #8cecff;outline-offset:2px}
#user-profile-menu :is(button,a):hover{filter:brightness(1.12)}
body.wayfinding-offline #user-profile-menu .pwa-offline-refresh{display:none}
/* Keep the account popover small enough to leave the campus visible. */
#user-profile-menu{width:min(270px,calc(100vw - 24px));padding:11px;border-radius:16px;max-height:min(430px,calc(100dvh - 150px))}
#user-profile-menu .profile-panel-kicker{display:none}
#user-profile-menu .user-profile-info{padding-bottom:10px;margin-bottom:10px;gap:9px}
#user-profile-menu .user-profile-avatar{width:36px;height:36px;flex-basis:36px;border-radius:11px}
#user-profile-menu .user-profile-name{font-size:12px;max-width:190px}
#user-profile-menu .user-profile-email{font-size:10px;max-width:190px}
#user-profile-menu .pwa-profile-status{padding:10px;margin-bottom:9px;gap:6px}
#user-profile-menu .pwa-status-copy small{display:none}
#user-profile-menu .pwa-install-button,#user-profile-menu .pwa-offline-refresh{min-height:36px;padding:7px 9px;margin-top:2px;font-size:10px}
#user-profile-menu .user-profile-link{min-height:44px;padding:6px 8px;margin-bottom:6px;gap:8px}
#user-profile-menu .profile-action-copy small{display:none}
#user-profile-menu .profile-action-icon{width:27px;height:27px;flex-basis:27px;border-radius:8px}
#user-profile-menu .profile-action-icon svg{width:18px;height:18px}
#user-profile-menu .user-logout-form{margin-top:7px;padding-top:7px}
#user-profile-menu .user-logout-btn{min-height:40px;padding:6px 8px;gap:8px}
