.bm-employee-avatar{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#191c21;color:#fff;font:600 12px/1 var(--font,sans-serif);cursor:pointer;overflow:hidden}
.bm-employee-avatar img{width:100%;height:100%;object-fit:cover}
.bm-employee-avatar:focus-visible{outline:3px solid #2468df;outline-offset:3px}
.hm-profile-avatar.bm-employee-avatar{width:42px;height:42px}
#bmEmployeePhoto{box-sizing:border-box;width:440px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:24px;overflow:auto;border:1px solid #dce3eb;border-radius:24px;background:#fafbf9;color:#171d24;box-shadow:0 24px 80px #19263b38;font:14px/1.5 var(--font,sans-serif)}
#bmEmployeePhoto::backdrop,#empPhCropModal::backdrop{background:#18253670;backdrop-filter:blur(5px)}
.bm-photo-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.bm-photo-heading h2{font-size:22px;line-height:1.3;margin:0 0 4px;font-weight:650}
.bm-photo-heading p{font-size:13px;color:#526071;margin:0;overflow-wrap:anywhere}
#bmEmployeePhoto button{font:600 13px/1.3 var(--font,sans-serif);cursor:pointer;min-height:40px;border:1px solid #d6e0ec;border-radius:12px;background:white;color:#171d24;padding:10px 14px}
#bmEmployeePhoto [data-photo-close]{flex-shrink:0;font-size:24px;line-height:1;padding:4px;width:40px}
#bmEmployeePhoto button:focus-visible,#empPhCropModal button:focus-visible{outline:3px solid #2468df;outline-offset:2px}
#bmEmployeePhoto button:disabled{cursor:wait;opacity:.55}
#bmEmployeePhoto [hidden]{display:none!important}
.bm-photo-preview{display:grid;place-items:center;width:220px;height:220px;max-width:100%;margin:22px auto 14px;border-radius:50%;overflow:hidden;font-size:40px;text-align:center;box-shadow:0 0 0 5px #edf1f5}
.bm-photo-preview img{width:100%;height:100%;object-fit:cover}
.bm-photo-hint{text-align:center;color:#526071;font-size:13px;margin:12px 0 18px}
.bm-photo-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
#bmEmployeePhoto .bm-photo-primary{background:#ffe66b;border-color:#f3dc70}
#bmEmployeePhoto .bm-photo-retry{display:block;margin:0 auto 16px;color:#1455b8}
.bm-photo-status{font-size:13px;min-height:20px;margin:14px 0 0;text-align:center;color:#526071;overflow-wrap:anywhere}
.bm-photo-status[data-phase="error"]{color:#a91e29}
.bm-photo-status[data-phase="saved"]{color:#12692e}
.bm-photo-format{border-top:1px solid #dce3eb;padding-top:12px;margin:14px 0 0;font-size:11px;color:#526071}
#empPhCropModal{box-sizing:border-box;margin:0;border:0;width:100%;max-width:none;height:100%;max-height:none;background:transparent!important;color:#171d24}
#empPhCropModal .emphc-box{box-sizing:border-box;background:#fafbf9!important;color:#171d24!important;max-height:calc(100dvh - 24px);overflow:auto;border:1px solid #dce3eb;border-radius:24px!important;box-shadow:0 24px 80px #19263b38!important}
#empPhCropTitle{color:#171d24!important;font-size:19px!important}
#empPhCropModal .emphc-box>div:nth-child(2){color:#526071!important;line-height:1.5}
#empPhCropModal button{min-height:40px;color:#171d24!important;border:1px solid #d6e0ec!important;background:white!important;border-radius:12px!important}
#empPhCropModal #empPhCropSaveBtn{background:#ffe66b!important;border-color:#f3dc70!important}
#empPhCropZoom{width:100%;accent-color:#2468df}
@media(max-width:360px){.hm-profile-avatar.bm-employee-avatar{width:36px;height:36px}#bmEmployeePhoto{padding:18px}.bm-photo-preview{width:190px;height:190px}}

/* The shared shell also has .hdr rules; an avatar keeps its own round surface. */
body.bm-app-mirror #authChip button.bm-employee-avatar,
body.bm-app-mirror :is(.hdr,.bm-mirror-shell) button.bm-employee-avatar{padding:0!important;border:0!important;border-radius:50%!important;background:var(--bm-photo-bg,#191c21)!important;color:var(--bm-photo-ink,#fff)!important;box-shadow:none!important}

/* The circular mask is presentation only; save still produces the same square JPEG. */
#empPhCropModal [hidden]{display:none!important}
#empPhCropStage.is-avatar::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 200px #142031a8;pointer-events:none;box-sizing:border-box}
#empPhCropStage:focus-visible{outline:3px solid #2468df;outline-offset:3px}
#empPhCropStatus{font-size:12px;color:#526071;margin:0 0 12px;line-height:1.45}
#empPhCropStatus[data-state="error"]{color:#a91e29}
#empPhCropModal button:disabled{opacity:.5;cursor:wait}
.bm-team-name{display:flex;align-items:center;gap:10px}
.bm-team-directory-avatar,.bm-team-avatar[data-employee-photo-id]{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--bm-photo-bg,#e4ecf8)!important;color:var(--bm-photo-ink,#24518e)!important;font:600 13px/1 var(--font,sans-serif)}
.bm-team-directory-avatar img,.bm-team-avatar[data-employee-photo-id] img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:480px){.bm-team-directory-avatar{width:34px;height:34px}.bm-team-name{gap:7px}}

/* Directory photo viewer: preserve the full saved square rather than the avatar mask. */
#page-team button[data-employee-photo-id]{padding:0!important;border:0!important;box-shadow:none;cursor:zoom-in}
#page-team button[data-employee-photo-id]:disabled{cursor:default;opacity:1}
#page-team button[data-employee-photo-id]:focus-visible{outline:3px solid #2468df;outline-offset:4px}
#bmTeamPhoto{box-sizing:border-box;width:720px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:20px;border:1px solid #dce3eb;border-radius:24px;background:#fafbf9;color:#171d24;overflow:auto;box-shadow:0 24px 80px #19263b38;font:14px/1.5 var(--font,sans-serif)}
#bmTeamPhoto::backdrop{background:#182536a8;backdrop-filter:blur(5px)}
#bmTeamPhoto .bm-photo-heading h2{font-size:20px;overflow-wrap:anywhere}
#bmTeamPhoto button{flex-shrink:0;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #d6e0ec;border-radius:12px;background:white;color:#171d24;font:600 14px/1.3 var(--font,sans-serif);cursor:pointer}
#bmTeamPhoto [data-team-photo-close]{font-size:24px;line-height:1}
#bmTeamPhoto button:focus-visible{outline:3px solid #2468df;outline-offset:2px}
#bmTeamPhoto [hidden]{display:none!important}
.bm-team-photo-image{display:grid;place-items:center;margin-top:16px;min-height:100px}
.bm-team-photo-image img{display:block;width:100%;max-height:calc(100dvh - 180px);object-fit:contain;border-radius:12px}
#bmTeamPhoto [data-team-photo-status]{margin:8px 0 0;color:#526071;text-align:center}
