/* Versioned avatar dialogs: upload, crop and remove. */
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-modal {border-radius:24px!important;overflow:hidden!important;box-shadow:0 20px 70px #0003!important;max-width:calc(100vw - 32px)!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-header {padding:22px 26px 12px!important;background:#fff!important;border:0!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-title {font-size:20px!important;font-weight:700!important;color:#171717!important;line-height:1.3!important;text-align:left!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-body {border-radius:0!important;padding:12px 26px 24px!important;background:#fff!important;font-size:15px!important;line-height:1.5!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer {border:0!important;background:#fff!important;padding:0!important;border-radius:0 0 24px 24px!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content {display:flex!important;justify-content:flex-end!important;align-items:center!important;flex-wrap:wrap!important;gap:12px!important;background:#fff!important;border-top:1px solid #eee!important;padding:18px 24px!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content button {display:inline-flex!important;align-items:center!important;justify-content:center!important;float:none!important;flex:1 1 auto!important;min-width:120px!important;min-height:44px!important;height:auto!important;width:auto!important;margin:0!important;padding:10px 20px!important;border:1.5px solid #171717!important;border-radius:999px!important;box-shadow:none!important;background:#fff!important;color:#171717!important;font-size:14px!important;font-weight:700!important;line-height:1.4!important;text-decoration:none!important;transition:background-color .18s ease,color .18s ease,border-color .18s ease!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content button:hover {background:#171717!important;color:#fff!important}
#es.es-dialog .es-dialog-footer-content [data-upload-button],#es.es-dialog .es-dialog-footer-content [data-create-button] {background:#171717!important;color:#fff!important}
#es.es-dialog .es-dialog-footer-content [data-upload-button]:hover,#es.es-dialog .es-dialog-footer-content [data-create-button]:hover {background:#ddff3f!important;border-color:#ddff3f!important;color:#171717!important}
#es.es-dialog .es-dialog-footer-content [data-delete-button] {background:#fff!important;border-color:#b42318!important;color:#b42318!important}
#es.es-dialog .es-dialog-footer-content [data-delete-button]:hover {background:#b42318!important;color:#fff!important}
#es.es-dialog .es-dialog-footer-content button:focus-visible {outline:3px solid #ddff3f!important;outline-offset:3px!important}
#es.es-dialog .es-dialog-footer-content button:disabled {opacity:.5!important;cursor:not-allowed!important}
#es.es-dialog [data-avatar-file] {font:inherit!important;max-width:100%!important;white-space:normal!important}
#es.es-dialog [data-avatar-file]::file-selector-button {border:1.5px solid #171717;border-radius:999px;background:#fff;color:#171717;font:inherit;font-weight:600;padding:9px 15px;margin:8px 12px 8px 0;cursor:pointer;transition:background .18s,color .18s}
#es.es-dialog [data-avatar-file]::file-selector-button:hover {background:#171717;color:#fff}
@media(max-width:480px){#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content{padding:16px!important;gap:8px!important}#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content button{min-width:0!important;flex:1 1 45%!important;padding:10px!important}}

#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-modal{display:flex!important;flex-direction:column!important;height:auto!important;max-height:calc(100dvh - 32px)!important;background:#fff!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-header,#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-body,#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer{position:relative!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;height:auto!important;flex:0 0 auto!important;width:100%!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-body{overflow:auto!important;flex:1 1 auto!important;padding:12px 26px 24px!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-container,#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-content{height:auto!important;position:relative!important;top:auto!important;bottom:auto!important;padding:0!important;overflow:visible!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content [data-upload-button],#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content [data-create-button]{background:#171717!important;color:#fff!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content [data-upload-button]:hover,#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content [data-create-button]:hover{background:#ddff3f!important;border-color:#ddff3f!important;color:#171717!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content [data-delete-button]{border-color:#b42318!important;color:#b42318!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-footer-content [data-delete-button]:hover{background:#b42318!important;color:#fff!important}

#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-body{border:0!important}
#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-header__grid,#es.es-dialog:has([data-avatar-file], [data-create-button], [data-delete-button], [data-album-browser]) .es-dialog-header__cell{height:auto!important;min-height:28px!important}

/* LH BUTTON LOADERS: icon before label, without overlapping the text. */
#es button:has(> .o-loader){display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}
#es button > .o-loader{order:-1!important;flex:0 0 16px!important;position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;width:16px!important;height:16px!important;margin:0!important;vertical-align:middle!important}
#es button > .o-loader.is-active{display:block!important}
#es button > .o-loader::before,#es button > .o-loader::after{box-sizing:border-box!important;top:0!important;left:0!important;width:16px!important;height:16px!important;margin:0!important;border-width:2px!important;box-shadow:none!important}
#es button > .o-loader::before{border-color:currentColor!important;opacity:.25!important}
#es button > .o-loader::after{border-color:currentColor transparent transparent!important}

/* LH album picker and avatar menu polish */
#es.es-dialog:has([data-album-browser]) .es-dialog-modal{width:800px!important}
#es.es-dialog:has([data-album-browser]) .es-dialog-body{max-height:calc(100dvh - 210px)!important}
#es.es-dialog:has([data-album-browser]) .es-media-browser-dialog{display:grid!important;grid-template-columns:200px minmax(0,1fr)!important;gap:18px!important;position:relative!important;width:100%!important;height:360px!important;min-height:240px!important}
#es.es-dialog:has([data-album-browser]) .es-media-browser-dialog__sidebar,#es.es-dialog:has([data-album-browser]) .es-media-browser-dialog__content{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;min-width:0!important;margin:0!important;float:none!important;overflow:auto!important}
#es.es-dialog:has([data-album-browser]) .es-media-browser-dialog__sidebar{border:0!important;padding:0!important}
#es.es-dialog:has([data-album-browser]) .es-media-browser-dialog__content{border:1px solid #eee!important;border-radius:14px!important;background:#fafafa!important;padding:14px!important}
#es.es-dialog:has([data-album-browser]) [data-album-list-item]{border:0!important;margin:0 0 8px!important}
#es.es-dialog:has([data-album-browser]) [data-album-list-item] .o-tabs__link{display:block!important;padding:12px!important;border:1px solid #e5e5e5!important;border-radius:12px!important;color:#171717!important;background:#fff!important;font-size:14px!important;text-decoration:none!important;transition:background .18s,border-color .18s!important}
#es.es-dialog:has([data-album-browser]) [data-album-list-item] .o-tabs__link:hover,#es.es-dialog:has([data-album-browser]) [data-album-list-item].active .o-tabs__link,#es.es-dialog:has([data-album-browser]) [data-album-list-item].is-active .o-tabs__link{background:#f4f7e7!important;border-color:#b6c65c!important}
#es.es-dialog:has([data-album-browser]) .es-content-hint{position:relative!important;inset:auto!important;transform:none!important;margin:0!important;display:flex;align-items:center;justify-content:center;min-height:240px;color:#666!important;font-size:14px!important;text-align:center}
#es.es-dialog:has([data-album-browser]) .es-media-header-affix-wrapper{position:relative!important;top:auto!important;width:100%!important}
#es.es-dialog:has([data-album-browser]) .es-dialog-footer-content [data-select-button]{background:#171717!important;color:#fff!important}
#es.es-dialog:has([data-album-browser]) .es-dialog-footer-content [data-select-button]:hover{background:#ddff3f!important;border-color:#ddff3f!important;color:#171717!important}
#es.es-dialog .es-dialog-footer-content button,#es.es-dialog .es-dialog-footer-content button:hover,#es.es-dialog .es-dialog-footer-content button:focus,#es.es-dialog .es-dialog-footer-content button:active{border-radius:999px!important;background-image:none!important;overflow:hidden!important;background-clip:padding-box!important;isolation:isolate!important;-webkit-mask-image:-webkit-radial-gradient(white,black)}
#es.es-dialog .es-dialog-footer-content button:not(.is-loading)::before,#es.es-dialog .es-dialog-footer-content button:not(.is-loading)::after{content:none!important;display:none!important}
#es .dropdown-menu:has([data-avatar-upload-button]){min-width:220px!important;max-width:calc(100vw - 32px)!important;padding:8px!important;border:1px solid #e8e8e8!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 34px #0002!important;overflow:hidden!important}
#es .dropdown-menu:has([data-avatar-upload-button])>li{padding:0!important;margin:0!important;border:0!important;background:none!important;border-radius:0!important;list-style:none!important}
#es .dropdown-menu:has([data-avatar-upload-button])>li+li{margin-top:3px!important}
#es .dropdown-menu:has([data-avatar-upload-button])>li>a{display:block!important;padding:11px 13px!important;border:0!important;border-radius:10px!important;margin:0!important;background:transparent!important;background-image:none!important;color:#171717!important;line-height:1.4!important;font-size:14px!important;font-weight:500!important;text-decoration:none!important;white-space:normal!important;box-shadow:none!important;transition:background-color .15s ease,color .15s ease!important}
#es .dropdown-menu:has([data-avatar-upload-button])>li>a:hover,#es .dropdown-menu:has([data-avatar-upload-button])>li>a:focus-visible{background:#f1f4e5!important;color:#171717!important;border-radius:10px!important;text-decoration:none!important}
#es .dropdown-menu:has([data-avatar-upload-button])>li>a::before,#es .dropdown-menu:has([data-avatar-upload-button])>li>a::after{content:none!important;display:none!important}
#es .dropdown-menu:has([data-avatar-upload-button])>li[data-avatar-remove-button]{margin-top:7px!important;padding-top:7px!important;border-top:1px solid #eee!important}
#es .dropdown-menu:has([data-avatar-upload-button])>li[data-avatar-remove-button]>a{color:#b42318!important}
#es .dropdown-menu:has([data-avatar-upload-button])>li[data-avatar-remove-button]>a:hover{background:#fff0ee!important}
@media(max-width:600px){#es.es-dialog:has([data-album-browser]) .es-media-browser-dialog{grid-template-columns:1fr!important;grid-template-rows:auto minmax(160px,1fr)!important;gap:12px!important;height:380px!important}#es.es-dialog:has([data-album-browser]) [data-album-list-item-group]{display:flex!important;gap:8px!important;overflow-x:auto!important}#es.es-dialog:has([data-album-browser]) [data-album-list-item]{flex:1 0 150px!important;margin:0!important}#es.es-dialog:has([data-album-browser]) .es-content-hint{min-height:130px!important}}

#es.es-dialog:has([data-album-browser]) .es-media-browser-dialog__sidebar,#es.es-dialog:has([data-album-browser]) .es-media-browser-dialog__content{min-height:0!important;max-height:100%!important;height:100%!important}

/* LH hard button bounds: prevent focus/hover paint crossing into neighbour. */
#es.es-dialog .es-dialog-footer-content{column-gap:14px!important}
#es.es-dialog .es-dialog-footer-content button,#es.es-dialog .es-dialog-footer-content button:hover,#es.es-dialog .es-dialog-footer-content button:focus,#es.es-dialog .es-dialog-footer-content button:active{position:relative!important;contain:paint!important;clip-path:inset(0 round 999px)!important;mask-image:none!important;-webkit-mask-image:none!important;transform:none!important;box-shadow:none!important;outline:0!important;filter:none!important}
#es.es-dialog .es-dialog-footer-content button:focus-visible{outline:2px solid #a8bb38!important;outline-offset:-5px!important}
