/* Last-mile profile controls and mobile navigation clarity. */
.profile-avatar-picker { isolation:isolate; overflow:visible!important; }
.profile-avatar-picker .profile-preview { position:relative; z-index:1; overflow:hidden; border-radius:50%!important; background:#111115; }
.profile-avatar-overlay { z-index:5; pointer-events:none; }
.profile-avatar-picker.is-uploading::after { z-index:7!important; }
.profile-presence { position:absolute; right:-1px; bottom:2px; z-index:8; width:15px; height:15px; border:3px solid #111115; border-radius:50%; background:#36d786; box-shadow:0 0 0 2px rgba(54,215,134,.13),0 3px 10px rgba(54,215,134,.35); }
.profile-presence[hidden] { display:none!important; }
@media(hover:hover){.profile-avatar-picker:hover .profile-presence,.profile-avatar-picker:focus-within .profile-presence{opacity:0}}
@media(hover:none){.profile-avatar-overlay{right:-3px!important;bottom:-2px!important;z-index:9;box-shadow:0 4px 12px rgba(0,0,0,.38)}.profile-presence{right:19px;bottom:-1px;z-index:8}}

@media(max-width:760px){
  .notification-button{position:relative!important;overflow:visible!important}
  .notification-button>[data-notification-badge]{top:-6px!important;right:-6px!important;z-index:20!important}
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}
  .profile-avatar-overlay{inset:auto -3px -2px auto!important;width:28px!important;height:28px!important;border:2px solid #111115!important;border-radius:50%!important;background:#806cf2!important;opacity:1!important;transform:none!important;box-shadow:0 4px 12px rgba(0,0,0,.38)}
  .profile-avatar-overlay .ui-icon{width:14px!important;height:14px!important}
  .profile-presence{right:20px!important;bottom:-1px!important}
  .mobile-dock{inset:auto 10px calc(8px + env(safe-area-inset-bottom)) 10px!important;width:auto!important;height:64px!important;padding:5px!important;align-items:stretch!important;gap:3px!important;border:1px solid rgba(255,255,255,.19)!important;border-radius:19px!important;background:rgba(16,16,19,.94)!important;box-shadow:0 18px 48px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.07)!important}
  .mobile-dock::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 46%);pointer-events:none}
  .mobile-dock button{position:relative;min-width:0!important;min-height:52px!important;padding:6px 2px 5px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px!important;border:1px solid transparent!important;border-radius:13px!important;color:#96969f!important}
  .mobile-dock button .ui-icon{width:19px!important;height:19px!important;flex:none}
  .mobile-dock button span{width:100%;font-size:9px!important;font-weight:650;line-height:1!important;letter-spacing:0!important;text-align:center}
  .mobile-dock button.active{color:#fff!important;border-color:rgba(255,255,255,.1)!important;background:linear-gradient(180deg,rgba(139,124,255,.2),rgba(139,124,255,.1))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 4px 14px rgba(0,0,0,.18)!important}
  .mobile-dock [data-notification-badge]{top:4px!important;right:max(6px,17%)!important;border-color:#101013!important}
  .mobile-menu-dialog{border:1px solid rgba(255,255,255,.16)!important;background:rgba(13,13,16,.98)!important;box-shadow:0 -22px 70px rgba(0,0,0,.58)!important}
}
@media(max-width:370px){.mobile-dock{inset-inline:6px!important;gap:1px!important}.mobile-dock button span{font-size:8px!important}}

/* Consistent marketplace banners: cards use a real landscape frame on every screen. */
.listing-card .listing-media{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:16/9!important;overflow:hidden!important;background:linear-gradient(145deg,#17171b,#0b0b0e)!important}
.listing-card .listing-media>img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.listing-card .listing-media-placeholder{align-self:center;justify-self:center}

/* Numbered notification and inbox indicators. */
[data-notification-badge]:not([hidden]){display:grid!important;place-items:center!important;min-width:19px!important;width:auto!important;height:19px!important;padding:0 5px!important;border-width:2px!important;border-radius:999px!important;font-size:9px!important;font-weight:800!important;line-height:1!important;letter-spacing:-.02em!important;font-variant-numeric:tabular-nums!important}
.nav-link [data-notification-badge]{right:9px!important}
.thread-avatar{position:relative!important;overflow:visible!important}
.thread-unread-count{position:absolute;z-index:7;top:-6px;right:-8px;display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border:2px solid #101013;border-radius:999px;background:#806cf2;color:#fff;font-size:10px;font-weight:800;line-height:1;box-shadow:0 5px 14px rgba(128,108,242,.38)}

/* Native pill switches, protected from browser and legacy checkbox styles. */
.settings-subsection{display:grid;gap:0;margin-top:9px;padding-top:18px;border-top:1px solid rgba(255,255,255,.09)}
.settings-subsection>.kicker{margin:0 0 7px}
.setting-toggle>input[type="checkbox"][role="switch"]{-webkit-appearance:none!important;appearance:none!important;position:relative!important;display:block!important;flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important;height:26px!important;min-height:26px!important;max-height:26px!important;margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:999px!important;background:#242429!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.35)!important;cursor:pointer!important;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease!important}
.setting-toggle>input[type="checkbox"][role="switch"]::before{content:""!important;position:absolute!important;inset:3px auto auto 3px!important;width:18px!important;height:18px!important;margin:0!important;border:0!important;border-radius:50%!important;background:#a1a1aa!important;box-shadow:0 1px 4px rgba(0,0,0,.45)!important;transform:none!important;transition:transform .2s cubic-bezier(.2,.8,.2,1),background .2s ease!important}
.setting-toggle>input[type="checkbox"][role="switch"]:checked{border-color:#8b7cff!important;background:#806cf2!important;box-shadow:0 0 0 3px rgba(128,108,242,.12),inset 0 1px 1px rgba(255,255,255,.16)!important}
.setting-toggle>input[type="checkbox"][role="switch"]:checked::before{background:#fff!important;transform:translateX(20px)!important}
.setting-toggle>input[type="checkbox"][role="switch"]:focus-visible{outline:2px solid #b5aaff!important;outline-offset:3px!important}

/* More opens like a native bottom sheet; each action settles into place. */
@keyframes mzz-more-sheet-in{from{opacity:0;transform:translateY(34px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes mzz-more-item-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes mzz-more-backdrop-in{from{background:rgba(0,0,0,0)}to{background:rgba(0,0,0,.68)}}
.mobile-menu-dialog[open]{animation:mzz-more-sheet-in .28s cubic-bezier(.2,.82,.2,1)!important;transform-origin:50% 100%}
.mobile-menu-dialog[open]::backdrop{animation:mzz-more-backdrop-in .22s ease both}
.mobile-menu-dialog[open] .mobile-menu-grid>button{animation:mzz-more-item-in .26s both cubic-bezier(.2,.8,.2,1)}
.mobile-menu-dialog[open] .mobile-menu-grid>button:nth-child(2){animation-delay:.025s}.mobile-menu-dialog[open] .mobile-menu-grid>button:nth-child(3){animation-delay:.05s}.mobile-menu-dialog[open] .mobile-menu-grid>button:nth-child(4){animation-delay:.075s}.mobile-menu-dialog[open] .mobile-menu-grid>button:nth-child(5){animation-delay:.1s}

@media(max-width:760px){
  .listing-card .listing-media{height:auto!important;aspect-ratio:16/9!important}
  .mobile-dock [data-notification-badge]:not([hidden]){top:0!important;right:max(2px,10%)!important}
  .settings-subsection{margin-inline:-2px}
}
