
.speedMailProfileHeader{display:flex;direction:rtl;align-items:center;gap:10px;min-width:0}
.speedMailProfileHeader .logo{min-width:0;flex:1;font-size:clamp(22px,5vw,29px)}
.profilePhotoButton{box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex:0 0 54px;width:54px;height:54px;min-width:54px;padding:0;border:3px solid #fff;border-radius:50%;overflow:hidden;background:#d9f3e2;color:#075e2c;box-shadow:0 3px 12px #00271777;cursor:pointer}
.profilePhotoButton img,.profilePhotoPreview img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:1}
.profilePhotoButton img[hidden],.profilePhotoPreview img[hidden]{display:none!important}
.profilePhotoFallback{font-size:30px;line-height:1}
.profilePhotoButton:focus-visible{outline:3px solid #f8d149;outline-offset:2px}
.profilePhotoDialog[hidden]{display:none!important}
.profilePhotoDialog{position:fixed;inset:0;z-index:2147483601;display:flex;align-items:center;justify-content:center;padding:14px;background:#001b12cc;direction:rtl}
.profilePhotoCard{width:min(430px,100%);max-height:min(92dvh,650px);overflow:auto;border-radius:18px;background:#fff;color:#173f2a;padding:17px;box-shadow:0 15px 40px #00180c88}
.profilePhotoCardHead{display:flex;justify-content:space-between;align-items:center;gap:8px}
.profilePhotoCardHead strong{font-size:21px}
.profilePhotoCardHead button{border:0;border-radius:9px;padding:10px 12px;background:#edf4ef;color:#075e2c;font-weight:900}
.profilePhotoPreview{display:flex;align-items:center;justify-content:center;margin:15px auto 10px;width:112px;height:112px;border:4px solid #087d43;border-radius:50%;overflow:hidden;background:#e4f6ea;color:#075e2c}
#profilePhotoDialogFallback{font-size:56px}
.profilePhotoCard p{font-size:14px;line-height:1.5;text-align:center;color:#345443}
.profilePhotoActions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.profilePhotoActions button{min-height:54px;border:2px solid #087d43;border-radius:11px;background:#087d43;color:#fff;padding:8px 6px;font:900 15px/1.25 Arial,sans-serif;cursor:pointer}
.profilePhotoActions .profilePhotoDelete{grid-column:1/-1;background:#fff1f1;color:#942929;border-color:#dcaaaa}
.profilePhotoActions button:disabled{opacity:.6;cursor:wait}
.profilePhotoStatus{min-height:20px;margin-top:11px;text-align:center;font-size:13px;font-weight:800;color:#075e2c}
.profilePhotoStatus.error{color:#9a2424}
@media(max-width:640px){.profilePhotoButton{width:46px;height:46px;min-width:46px;flex-basis:46px}.profilePhotoFallback{font-size:26px}.speedMailProfileHeader{gap:7px}.speedMailProfileHeader .logo img{width:39px;height:39px}}


/* In-place WhatsApp-style manual avatar crop. No background data is saved until approval. */
.profilePhotoCropDialog[hidden]{display:none!important}
.profilePhotoCropDialog{
 position:fixed;inset:0;z-index:2147483602;display:flex;
 align-items:center;justify-content:center;padding:12px;
 background:rgba(0,20,14,.87);direction:rtl
}
.profilePhotoCropCard{
 box-sizing:border-box;width:min(430px,100%);max-height:calc(100dvh - 24px);
 overflow-y:auto;overscroll-behavior:contain;
 padding:12px 14px 15px;border:2px solid #a3d3b3;border-radius:18px;
 background:#fff;color:#163e28;box-shadow:0 18px 46px rgba(0,0,0,.4)
}
.profilePhotoCropHead{display:flex;align-items:center;justify-content:space-between;gap:9px}
.profilePhotoCropHead strong{font-size:19px;font-weight:900}
.profilePhotoCropHead button{
 border:1px solid #b9ccbe;border-radius:9px;padding:9px 12px;
 background:#f3f7f4;color:#154b2e;font-weight:900;cursor:pointer
}
.profilePhotoCropInstructions{
 margin:8px 0 12px;text-align:center;line-height:1.4;
 font-size:13px;color:#40584a
}
.profilePhotoCropStage{
 position:relative;width:min(280px,76vw);height:min(280px,76vw);
 margin:0 auto 12px;overflow:hidden;
 border:2px solid #0b8044;border-radius:12px;background:#273329;
 touch-action:none;user-select:none
}
#profilePhotoCropCanvas{
 display:block;width:100%;height:100%;object-fit:fill;
 cursor:grab;touch-action:none
}
#profilePhotoCropCanvas:active{cursor:grabbing}
.profilePhotoCropMask{
 position:absolute;inset:0;pointer-events:none;
 background:radial-gradient(circle closest-side at center,transparent calc(100% - 3px),rgba(0,0,0,.63) 100%);
 box-shadow:inset 0 0 0 1px #bbf3cf
}
.profilePhotoCropMask::after{
 content:"";position:absolute;inset:0;border:3px solid #fff;
 border-radius:50%;box-sizing:border-box;
 box-shadow:0 0 0 1px rgba(0,0,0,.25)
}
.profilePhotoCropZoomLabel{
 display:flex;align-items:center;justify-content:space-between;
 font-size:15px;font-weight:900;margin-bottom:8px
}
#profilePhotoCropZoomValue{font-variant-numeric:tabular-nums;color:#087d43}
.profilePhotoCropZoomControls{
 display:grid;grid-template-columns:45px minmax(0,1fr) 45px;
 align-items:center;gap:9px;direction:ltr
}
.profilePhotoCropZoomControls button{
 min-height:45px;border:2px solid #0b8044;border-radius:10px;
 color:#075e2c;background:#eaf7ef;font-size:26px;font-weight:900
}
#profilePhotoCropZoom{
 width:100%;min-height:42px;accent-color:#078347;
 touch-action:pan-x
}
.profilePhotoCropActions{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin-top:12px}
.profilePhotoCropActions button{
 min-height:52px;padding:9px 7px;border-radius:11px;
 font:900 15px/1.2 Arial,sans-serif;cursor:pointer
}
.profilePhotoCropConfirm{border:2px solid #086c3c;background:#078347;color:#fff}
.profilePhotoCropCancel{border:2px solid #c6d3ca;background:#f3f7f4;color:#234b35}
.profilePhotoCropConfirm:disabled,.profilePhotoCropCancel:disabled{opacity:.58;cursor:wait}
#profilePhotoCropStatus{min-height:17px;margin-top:8px;text-align:center;color:#a32525;font-size:13px;font-weight:800}
@media(max-height:690px){
 .profilePhotoCropCard{padding:9px 12px}
 .profilePhotoCropInstructions{margin:4px 0 7px;font-size:12px}
 .profilePhotoCropStage{width:min(230px,60dvh,70vw);height:min(230px,60dvh,70vw);margin-bottom:7px}
 .profilePhotoCropActions button{min-height:43px}
}
