/* EV v303 targeted fixes: instant theme, strict presence display, single chat image viewer, admin active state */
.evdm-support-status,
.evdm-support-status *,
.evdm-support-countdown,
#supportCountdown,
[data-support-countdown],
[data-ev-support-waiting],
[data-ev-support-connected]{color:#dc2626!important;font-weight:1000!important;}
html.dark .evdm-support-status,
html.dark .evdm-support-status *,
html.dark .evdm-support-countdown,
html.dark #supportCountdown,
html.dark [data-support-countdown],
html.dark [data-ev-support-waiting],
html.dark [data-ev-support-connected]{color:#f87171!important;text-shadow:0 0 14px rgba(248,113,113,.18)!important;}
.ev-escrow-presence-row,.ev-escrow-presence-stack{display:block;color:#334155!important;font-size:11px!important;line-height:1.25!important;font-weight:950;margin-top:2px;}
.ev-escrow-presence-stack{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:flex-start;}
.ev-escrow-presence-row[data-ev-presence-layout="stack"]{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;}
.ev-presence-person{display:block!important;color:#0f172a!important;font-weight:1000!important;line-height:1.15!important;}
.ev-presence-status{display:inline-flex!important;align-items:center!important;gap:6px!important;color:#475569!important;font-weight:1000!important;line-height:1.15!important;}
.ev-escrow-presence-row.is-online,.ev-escrow-presence-row.online,.evdm-active-status.online,.ev-presence-status.online{color:#047857!important;}
.ev-escrow-presence-row.is-online .ev-presence-status,.ev-escrow-presence-row.online .ev-presence-status{color:#047857!important;}
.ev-escrow-presence-row.is-offline,.ev-escrow-presence-row.offline,.evdm-active-status.offline{color:#475569!important;}
.ev-escrow-presence-row.is-offline .ev-presence-status,.ev-escrow-presence-row.offline .ev-presence-status{color:#475569!important;}
.ev-escrow-presence-row.is-suspended,.ev-escrow-presence-row.suspended,.evdm-active-status.suspended{color:#b91c1c!important;}
.ev-escrow-presence-row.is-suspended .ev-presence-status,.ev-escrow-presence-row.suspended .ev-presence-status{color:#b91c1c!important;}
.evdm-active-status{color:#334155!important;background:#f8fafc!important;border-color:rgba(100,116,139,.35)!important;}
.evdm-active-status.online{color:#047857!important;background:#ecfdf5!important;border-color:rgba(16,185,129,.50)!important;}
.evdm-active-status.offline{color:#475569!important;background:#f1f5f9!important;border-color:rgba(100,116,139,.35)!important;}
.evdm-active-status.suspended{color:#b91c1c!important;background:#fef2f2!important;border-color:rgba(239,68,68,.42)!important;}
.evdm-presence-dot,.ev-presence-dot{display:inline-block;width:8px;height:8px;min-width:8px;border-radius:999px;background:#16a34a;margin-right:3px;vertical-align:middle;box-shadow:0 0 0 3px rgba(22,163,74,.15);}
html.dark .ev-escrow-presence-row,html.dark .ev-escrow-presence-stack{color:#cbd5e1!important;}
html.dark .ev-presence-person{color:#f8fafc!important;}
html.dark .ev-presence-status{color:#cbd5e1!important;}
html.dark .ev-escrow-presence-row.is-online .ev-presence-status,html.dark .ev-escrow-presence-row.online .ev-presence-status,html.dark .evdm-active-status.online{color:#86efac!important;}
html.dark .ev-escrow-presence-row.is-offline .ev-presence-status,html.dark .ev-escrow-presence-row.offline .ev-presence-status,html.dark .evdm-active-status.offline{color:#cbd5e1!important;}
html.dark .ev-escrow-presence-row.is-suspended .ev-presence-status,html.dark .ev-escrow-presence-row.suspended .ev-presence-status,html.dark .evdm-active-status.suspended{color:#fecaca!important;}
html.dark .evdm-active-status{background:#0f172a!important;border-color:rgba(148,163,184,.38)!important;color:#cbd5e1!important;}
html.dark .evdm-active-status.online{background:rgba(16,185,129,.18)!important;border-color:rgba(52,211,153,.55)!important;}
html.dark .evdm-active-status.suspended{background:rgba(127,29,29,.58)!important;border-color:rgba(248,113,113,.48)!important;}
html.dark .evdm-presence-dot,html.dark .ev-presence-dot{background:#86efac;box-shadow:0 0 0 3px rgba(134,239,172,.16);}
/* Hide any empty link-preview shells everywhere. They become visible only when real metadata exists. */
.ev-link-preview:not(.ev-preview-ready),.evdm-link-preview:not(.ev-preview-ready),[data-link-preview]:not(.ev-preview-ready){display:none!important;}
/* Admin side menu active state, same language as floating menu. */
.ev-menu-link{position:relative!important;}
.ev-menu-link.is-active,.ev-menu-link[aria-current="page"],.ev-menu-link[data-ev-active="1"]{background:rgba(14,165,233,.13)!important;border-color:rgba(14,165,233,.34)!important;color:#075985!important;box-shadow:inset 4px 0 0 #0ea5e9,0 10px 24px rgba(14,165,233,.10)!important;}
.ev-menu-link.is-active::after,.ev-menu-link[aria-current="page"]::after,.ev-menu-link[data-ev-active="1"]::after{content:"";position:absolute;right:12px;top:50%;width:7px;height:7px;border-radius:999px;background:#0ea5e9;transform:translateY(-50%);box-shadow:0 0 0 4px rgba(14,165,233,.14);}
.ev-menu-link.is-active .ev-menu-icon,.ev-menu-link[aria-current="page"] .ev-menu-icon{background:rgba(14,165,233,.18)!important;color:#0369a1!important;border-color:rgba(14,165,233,.18)!important;}
html.dark .ev-menu-link.is-active,html.dark .ev-menu-link[aria-current="page"],html.dark .ev-menu-link[data-ev-active="1"]{background:rgba(56,189,248,.15)!important;border-color:rgba(125,211,252,.34)!important;color:#e0f2fe!important;box-shadow:inset 4px 0 0 #7dd3fc,0 12px 28px rgba(14,165,233,.14)!important;}
html.dark .ev-menu-link.is-active::after,html.dark .ev-menu-link[aria-current="page"]::after,html.dark .ev-menu-link[data-ev-active="1"]::after{background:#7dd3fc;box-shadow:0 0 0 4px rgba(125,211,252,.15);}
html.dark .ev-menu-link.is-active .ev-menu-icon,html.dark .ev-menu-link[aria-current="page"] .ev-menu-icon{background:rgba(125,211,252,.16)!important;color:#e0f2fe!important;border-color:rgba(125,211,252,.20)!important;}
/* EV Quick notification badge */
.evx-command-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff;font-size:10px;font-weight:1000;display:inline-flex;align-items:center;justify-content:center;margin-left:auto;}
.evx-command-item .evx-command-label{display:flex;align-items:center;gap:8px;min-width:0;}

/* EV v304 — stable chat navigation, one media viewer, pinning, swipe reply and AJAX admin search. */
.ev304-jump-hit{outline:3px solid #0ea5e9!important;outline-offset:4px!important;border-radius:16px!important;animation:ev304JumpPulse 1.8s ease both!important;scroll-margin-block:90px!important}
@keyframes ev304JumpPulse{0%,100%{box-shadow:inherit}20%,72%{box-shadow:0 0 0 6px rgba(14,165,233,.18),0 12px 35px rgba(14,165,233,.28)!important}}
[data-chat-row].is-active-chat,[data-hsc-chat-row].is-active-chat,[data-chat-row][aria-current="page"],[data-hsc-chat-row][aria-current="page"]{background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(255,255,255,.96))!important;border-color:rgba(14,165,233,.68)!important;box-shadow:inset 5px 0 0 #0284c7,0 12px 34px rgba(2,132,199,.18)!important;transform:none!important}
html.dark [data-chat-row].is-active-chat,html.dark [data-hsc-chat-row].is-active-chat,html.dark [data-chat-row][aria-current="page"],html.dark [data-hsc-chat-row][aria-current="page"]{background:linear-gradient(135deg,rgba(14,165,233,.28),rgba(15,23,42,.98))!important;border-color:rgba(125,211,252,.72)!important;box-shadow:inset 5px 0 0 #7dd3fc,0 12px 34px rgba(2,132,199,.24)!important}
[data-ev-chat-pin]{cursor:pointer;position:relative;z-index:3;display:inline-flex!important;align-items:center;justify-content:center;min-width:24px;min-height:24px;width:24px;height:24px;padding:0;border-radius:8px;border:1px solid rgba(148,163,184,.3);background:rgba(255,255,255,.88);font-size:11px;line-height:1;transition:transform .14s ease,background .14s ease,border-color .14s ease}
[data-ev-chat-pin] svg{display:block;width:12px;height:12px;pointer-events:none}[data-ev-chat-pin]:hover{transform:translateY(-1px)}[data-ev-chat-pin][aria-disabled="true"]{opacity:.55;pointer-events:none}[data-ev-chat-pin][aria-pressed="true"]{background:#e0f2fe;border-color:#38bdf8;color:#075985;box-shadow:0 7px 18px rgba(14,165,233,.18)}
html.dark [data-ev-chat-pin]{background:rgba(15,23,42,.9);color:#e2e8f0}html.dark [data-ev-chat-pin][aria-pressed="true"]{background:rgba(14,165,233,.25);border-color:#7dd3fc;color:#e0f2fe}
.ev-swipe-candidate{will-change:transform;touch-action:pan-y!important;position:relative;z-index:2}
.ev-swipe-candidate::after{content:"↩ Reply";position:absolute;right:-82px;top:50%;transform:translateY(-50%);font-size:11px;font-weight:1000;color:#0284c7;white-space:nowrap;pointer-events:none}

#evChatMediaViewer{position:fixed!important;inset:0!important;z-index:2147483647!important;display:none;align-items:center;justify-content:center;background:rgba(2,6,23,.965)!important;color:#fff;touch-action:none;overflow:hidden}
#evChatMediaViewer.show{display:flex!important}
#evChatMediaViewer .evv-stage{position:absolute!important;inset:56px 48px 94px!important;width:auto!important;height:auto!important;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0!important}
#evChatMediaViewer .evv-stage img,#evChatMediaViewer .evv-stage video{display:block;max-width:100%!important;max-height:100%!important;width:auto;height:auto;object-fit:contain;border-radius:14px;transform-origin:center;will-change:transform;background:#000}
#evChatMediaViewer .evv-stage video{min-width:min(820px,88vw);max-width:min(1200px,calc(100vw - 96px))!important}
#evChatMediaViewer button{appearance:none;border:0;cursor:pointer;font-weight:1000}
#evChatMediaViewer .evv-close,#evChatMediaViewer .evv-prev,#evChatMediaViewer .evv-next{position:fixed;z-index:3;color:#fff;background:rgba(15,23,42,.78);border:1px solid rgba(255,255,255,.2);box-shadow:0 12px 34px rgba(0,0,0,.4)}
#evChatMediaViewer .evv-close{right:14px;top:calc(14px + env(safe-area-inset-top));width:46px;height:46px;border-radius:999px;font-size:29px}
#evChatMediaViewer .evv-prev,#evChatMediaViewer .evv-next{top:50%;transform:translateY(-50%);width:48px;height:70px;border-radius:18px;font-size:42px}
#evChatMediaViewer .evv-prev{left:10px}#evChatMediaViewer .evv-next{right:10px}
#evChatMediaViewer .evv-help{position:fixed;left:14px;top:calc(14px + env(safe-area-inset-top));z-index:3;max-width:calc(100vw - 90px);border-radius:14px;background:rgba(15,23,42,.74);border:1px solid rgba(255,255,255,.16);padding:9px 12px;font-size:11px;font-weight:900;color:#fff}
#evChatMediaViewer .evv-bottom{position:fixed;left:0;right:0;bottom:0;z-index:4;min-height:78px;padding:10px max(12px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-right));display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(180deg,rgba(2,6,23,0),rgba(2,6,23,.92) 30%)}
#evChatMediaViewer .evv-show-chat{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:14px;background:#0ea5e9;color:#fff;box-shadow:0 12px 28px rgba(14,165,233,.28)}
#evChatMediaViewer .evv-tools{position:static!important;transform:none!important;display:flex;gap:7px;padding:6px;border-radius:17px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18)}
#evChatMediaViewer .evv-tools button{position:static!important;min-width:44px;height:40px;border-radius:12px;background:#fff;color:#0f172a;font-size:15px;box-shadow:none}

#evEscrowSearchModal{position:fixed;inset:0;z-index:2147483640;display:flex;align-items:flex-start;justify-content:center;padding:7vh 14px 14px;background:rgba(2,6,23,.72);backdrop-filter:blur(8px)}
#evEscrowSearchModal .ev-search-panel{width:min(620px,100%);max-height:86dvh;overflow:hidden;display:flex;flex-direction:column;border-radius:24px;background:#fff;color:#0f172a;border:1px solid rgba(148,163,184,.3);box-shadow:0 30px 100px rgba(2,6,23,.45)}
html.dark #evEscrowSearchModal .ev-search-panel{background:#0f172a;color:#f8fafc;border-color:rgba(148,163,184,.35)}
#evEscrowSearchModal .ev-search-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid rgba(148,163,184,.22)}
#evEscrowSearchModal .ev-search-head button{width:38px;height:38px;border-radius:12px;border:0;background:#f1f5f9;font-size:23px;font-weight:1000}html.dark #evEscrowSearchModal .ev-search-head button{background:#1e293b;color:#fff}
#evEscrowSearchModal form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:13px;border-bottom:1px solid rgba(148,163,184,.2)}
#evEscrowSearchModal input{min-width:0;border:1px solid #cbd5e1;border-radius:14px;padding:12px 14px;background:#fff;color:#0f172a;outline:none}html.dark #evEscrowSearchModal input{background:#020617;border-color:#475569;color:#fff}
#evEscrowSearchModal form button{border:0;border-radius:14px;padding:0 17px;background:#0ea5e9;color:#fff;font-weight:1000}
#evEscrowSearchModal .ev-search-results{padding:10px;overflow:auto;display:grid;gap:7px}
#evEscrowSearchModal [data-escrow-search-id]{display:grid;gap:4px;width:100%;text-align:left;padding:12px;border-radius:14px;border:1px solid rgba(148,163,184,.22);background:#f8fafc;color:#0f172a}html.dark #evEscrowSearchModal [data-escrow-search-id]{background:#111827;color:#f8fafc;border-color:#334155}
#evEscrowSearchModal [data-escrow-search-id] span{font-size:12px;color:#64748b}.ev-search-empty{padding:25px;text-align:center;color:#64748b;font-weight:800}
#evEscrowSearchButton{flex:0 0 auto!important}

.ev-admin-users-shell{transition:opacity .16s ease,filter .16s ease}.ev-admin-users-shell.ev-users-loading{opacity:.55;filter:saturate(.7);pointer-events:none;cursor:progress}
@media(max-width:640px){
  #evChatMediaViewer .evv-stage{inset:58px 8px 96px!important}
  #evChatMediaViewer .evv-stage video{min-width:0;max-width:100%!important}
  #evChatMediaViewer .evv-prev,#evChatMediaViewer .evv-next{width:38px;height:58px;border-radius:15px;font-size:33px}
  #evChatMediaViewer .evv-prev{left:5px}#evChatMediaViewer .evv-next{right:5px}
  #evChatMediaViewer .evv-help{font-size:10px;padding:8px 10px}
  #evChatMediaViewer .evv-bottom{gap:7px}.evv-show-chat{padding-inline:13px!important;font-size:12px}
  #evEscrowSearchModal{padding-top:4vh}
}

/* EV v305: real two-finger image zoom and centered video loading feedback. */
#evChatMediaViewer .evv-stage{touch-action:none!important;overscroll-behavior:contain!important}
#evChatMediaViewer .evv-video-loader{position:absolute;left:50%;top:50%;z-index:4;display:none;transform:translate(-50%,-50%);align-items:center;gap:9px;padding:10px 13px;border-radius:999px;background:rgba(2,6,23,.76);color:#fff;font-size:12px;font-weight:900;pointer-events:none}
#evChatMediaViewer .evv-video-loader.show{display:flex}
#evChatMediaViewer .evv-video-loader span,.ev-video-loading-indicator{width:25px;height:25px;border-radius:50%;border:3px solid rgba(255,255,255,.38);border-top-color:#fff;animation:ev305VideoSpin .72s linear infinite}
.ev-video-loading-host{position:relative!important}
.ev-video-loading-indicator{position:absolute;left:50%;top:50%;z-index:6;display:none;transform:translate(-50%,-50%);pointer-events:none;background:rgba(2,6,23,.34);box-shadow:0 0 0 9px rgba(2,6,23,.34)}
.ev-video-loading-indicator.show{display:block}
.ev-field-needs-attention{outline:3px solid rgba(239,68,68,.32)!important;border-color:#ef4444!important;box-shadow:0 0 0 5px rgba(239,68,68,.12)!important}
.ev-chat-busy-spinner{display:inline-block;width:22px;height:22px;margin-right:9px;vertical-align:middle;border-radius:50%;border:3px solid rgba(14,116,144,.2);border-top-color:currentColor;animation:ev305VideoSpin .72s linear infinite}
.ev-search-loading,.evdm-search-loading{display:flex!important;align-items:center!important;justify-content:center!important;min-height:86px!important}
.ev-chat-load-error button{display:inline-flex;margin-left:8px;padding:7px 11px;border:0;border-radius:10px;background:var(--ev-brand,#0f766e);color:#fff;font-weight:900}
.ev-admin-user-searchbar{display:flex;align-items:center}
.ev-admin-user-search-submit{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border:0;border-left:1px solid rgba(148,163,184,.28);background:transparent;color:inherit;cursor:pointer}
@keyframes ev305VideoSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
#evChatMediaViewer .evv-video-loader span,.ev-chat-busy-spinner{animation-name:ev305SpinPlain}
@keyframes ev305SpinPlain{to{transform:rotate(360deg)}}


/* EV v306: one initial-position owner for Escrow Chat. */
#chatBox.ev-chat-opening{position:relative!important;overflow:hidden!important;}
#chatBox.ev-chat-opening{position:relative!important;}
#chatBox.ev-chat-opening>:not(.ev-chat-opening-state){visibility:hidden!important;}
.ev-chat-opening-state{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:30;width:max-content;max-width:calc(100% - 32px);margin:0;padding:10px 14px;border-radius:999px;display:flex;align-items:center;gap:9px;background:rgba(15,23,42,.82);color:#fff;font-size:12px;font-weight:900;box-shadow:0 12px 34px rgba(2,6,23,.22);}
.ev-chat-opening-state>span{width:22px;height:22px;border-radius:50%;border:3px solid rgba(255,255,255,.38);border-top-color:#fff;animation:ev305SpinPlain .72s linear infinite;}
/* One centered video-loading indicator across Private, Village and Escrow chat. */
.evdm-video-wrap,.ev-video-wrap,.hvc-video-wrap,.ev-video-loading-host{position:relative!important;}
.evdm-video-wrap>.evdm-media-loading,.ev-video-wrap>.ev-media-loading,.hvc-video-wrap>.ev-media-loading{position:absolute!important;inset:50% auto auto 50%!important;right:auto!important;margin:-31px 0 0 -31px!important;width:62px!important;height:62px!important;border-radius:999px!important;border:5px solid rgba(255,255,255,.95)!important;border-top-color:#1a3e5c!important;background:rgba(2,6,23,.52)!important;box-shadow:0 12px 34px rgba(2,6,23,.28)!important;display:none!important;z-index:12!important;pointer-events:none!important;animation:ev305SpinPlain .72s linear infinite!important;}
.evdm-video-wrap.is-loading>.evdm-media-loading,.ev-video-wrap.is-loading>.ev-media-loading,.hvc-video-wrap.is-loading>.ev-media-loading{display:block!important;}
.evdm-video-wrap.is-ready>.evdm-media-loading,.ev-video-wrap.is-ready>.ev-media-loading,.hvc-video-wrap.is-ready>.ev-media-loading{display:none!important;}
#evChatMediaViewer,.evv-stage,#evChatMediaViewer img{touch-action:none!important;}

/* EV v307: visible swipe-to-reply feedback across every chat. */
.ev-swipe-reply-cue{position:fixed;z-index:2147483200;display:flex;align-items:center;gap:7px;min-width:76px;height:44px;padding:0 13px;border-radius:999px;background:rgba(15,23,42,.92);color:#fff;box-shadow:0 14px 34px rgba(2,6,23,.28);opacity:0;transform:scale(.82);pointer-events:none;transition:opacity .08s linear,transform .08s linear;}
.ev-swipe-reply-cue.show{display:flex}.ev-swipe-reply-cue.ready{background:#0ea5e9}.ev-swipe-reply-cue span{font-size:19px}.ev-swipe-reply-cue b{font-size:12px;font-weight:1000}.ev-swipe-replied{animation:evSwipeReplyPulse .8s ease}
@keyframes evSwipeReplyPulse{0%,100%{filter:none}35%{filter:drop-shadow(0 0 10px rgba(14,165,233,.75))}}

/* EV v308 final interaction ownership. */
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page) .evdm-row[data-id],
:is(body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) [data-escrow-mid],
:is(body.ev-village-chat-page,body.ev-admin-village-chat-page) :is(.ev-bubble-row[data-id],.hvc-row[data-id]){
  touch-action:pan-y!important;
  -webkit-user-select:none;
  user-select:none;
}
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page) .evdm-reply.show{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  z-index:30!important;
  color:#075985!important;
  background:#e0f2fe!important;
  border-color:#7dd3fc!important;
  box-shadow:0 8px 22px rgba(14,165,233,.15)!important;
}
html.dark :is(body.ev-private-clean-page,body.ev-admin-direct-clean-page) .evdm-reply.show{
  color:#e0f2fe!important;background:#0c4a6e!important;border-color:#38bdf8!important;
}
/* Lift every floating chat menu and allow long menus to scroll. */
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page,body.ev-private-villager-mode,body.ev-private-support-mode,body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) :is(#evdmMenuDot,.evdm-menu-dot){bottom:208px!important;}
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page,body.ev-private-villager-mode,body.ev-private-support-mode,body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) :is(#evdmMenuPanel,.evdm-menu-panel){
  bottom:260px!important;max-height:min(62dvh,520px)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
}
body.ev-village-chat-page :is(#evMiniMenuDot,.ev-mini-menu-dot){bottom:208px!important;}
body.ev-village-chat-page :is(#evMiniMenuPanel,.ev-mini-menu-panel){
  bottom:260px!important;max-height:min(62dvh,520px)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
}
body.ev-admin-village-chat-page :is(#hvcHeadMenu,#hvcBackendMenu){max-height:min(62dvh,520px)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;}
@media(max-width:640px){
  :is(body.ev-private-clean-page,body.ev-admin-direct-clean-page,body.ev-private-villager-mode,body.ev-private-support-mode,body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) :is(#evdmMenuDot,.evdm-menu-dot),body.ev-village-chat-page :is(#evMiniMenuDot,.ev-mini-menu-dot){bottom:194px!important;}
  :is(body.ev-private-clean-page,body.ev-admin-direct-clean-page,body.ev-private-villager-mode,body.ev-private-support-mode,body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) :is(#evdmMenuPanel,.evdm-menu-panel),body.ev-village-chat-page :is(#evMiniMenuPanel,.ev-mini-menu-panel){bottom:246px!important;max-height:58dvh!important;}
}

body.ev-admin-village-chat-page #hvcFloatLogo{bottom:208px!important;}
body.ev-admin-village-chat-page #hvcBackendMenu{bottom:260px!important;max-height:min(62dvh,520px)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;}
@media(max-width:640px){body.ev-admin-village-chat-page #hvcFloatLogo{bottom:194px!important;}body.ev-admin-village-chat-page #hvcBackendMenu{bottom:246px!important;max-height:58dvh!important;}}

/* EV v308 deterministic historical-message ownership. */
:is(.evdm-msgs,.ev-msgs,.hvc-msgs)[data-ev-historical-view]>*{overflow-anchor:none!important;}
:is(.evdm-msgs,.ev-msgs,.hvc-msgs)[data-ev-historical-view]>[data-ev-historical-anchor="1"]{overflow-anchor:none!important;}
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page) .evdm-reply.ev-reply-activated{animation:evReplyActivated .82s ease!important;}
@keyframes evReplyActivated{0%{transform:translateY(5px);opacity:.35}35%{transform:translateY(0);opacity:1;box-shadow:0 0 0 4px rgba(14,165,233,.18)}100%{transform:none;opacity:1}}


/* EV v308 final runtime ownership: one scroll anchor and visible support receipts. */
:is(body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) #chatBox{
  overflow-anchor:none!important;scroll-behavior:auto!important;contain:none!important;
}
:is(body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) #chatBox>#evInitialEscrowMessages{
  display:contents!important;overflow-anchor:none!important;
}
:is(body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) #chatBox>*:not(#evEscrowBottomAnchor){overflow-anchor:none!important;}
:is(body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) #evEscrowBottomAnchor{
  display:block!important;width:1px!important;height:1px!important;min-height:1px!important;overflow-anchor:none!important;
}
body.ev-escrow-admin-chat-page .escrow-read-slot:not(:empty){
  display:block!important;visibility:visible!important;opacity:1!important;filter:none!important;mix-blend-mode:normal!important;
  position:relative!important;z-index:3!important;color:#0f172a!important;background:#fff!important;
  border:0!important;border-radius:8px!important;padding:3px 6px!important;
  font-size:10.5px!important;font-weight:900!important;line-height:1.35!important;white-space:pre-line!important;
}
body.ev-escrow-admin-chat-page .evdm-row.mine .escrow-read-slot:not(:empty),
body.ev-escrow-admin-chat-page [data-escrow-own="1"] .escrow-read-slot:not(:empty){
  color:#075985!important;background:#f0f9ff!important;border:0!important;
}
html.dark body.ev-escrow-admin-chat-page .escrow-read-slot:not(:empty){
  color:#e0f2fe!important;background:#0f172a!important;border:0!important;
}
/* Menus sit above the composer/bottom navigation and scroll instead of leaving the viewport. */
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page,body.ev-village-chat-page,body.ev-admin-village-chat-page,body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page)
:is(.evdm-menu-panel,.ev-mini-panel,.hvc-menu-panel,.ev-village-menu-panel,.ev-chat-menu-panel){
  max-height:min(58dvh,480px)!important;overflow-y:auto!important;overflow-x:hidden!important;
  overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
}
body.ev-create-escrow-page #ev-app-main,body.ev-create-escrow-page #escForm{
  display:block!important;visibility:visible!important;opacity:1!important;max-height:none!important;overflow:visible!important;
}

/* EV v332: one scroll owner and native composer text selection across every chat. */
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page) .evdm-msgs,
:is(body.ev-village-chat-page,body.ev-admin-village-chat-page) :is(.ev-msgs,.hvc-msgs,#messages,#msgs),
:is(body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) #chatBox{
  overflow-anchor:none!important;
  scroll-behavior:auto!important;
}
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page) .evdm-msgs>*,
:is(body.ev-village-chat-page,body.ev-admin-village-chat-page) :is(.ev-msgs,.hvc-msgs,#messages,#msgs)>*,
:is(body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) #chatBox>*{overflow-anchor:none!important;}
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page) .evdm-form textarea,
body.ev-village-chat-page .ev-composer textarea,
body.ev-admin-village-chat-page .hvc-composer textarea,
:is(body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) .chat-composer textarea{
  -webkit-user-select:text!important;
  user-select:text!important;
  -webkit-touch-callout:default!important;
  touch-action:auto!important;
  caret-color:auto!important;
}


/* EV v335: deterministic target reveal and native text selection in every chat composer. */
.ev-chat-anchor-freeze{visibility:hidden!important;}
:is(body.ev-private-clean-page,body.ev-admin-direct-clean-page,body.ev-village-chat-page,body.ev-admin-village-chat-page,body.ev-escrow-private-layout,body.ev-escrow-admin-chat-page) :is(textarea,input[type="text"],input[type="search"]),
#chatInput,#messageInput,#msg{
  -webkit-user-select:text!important;
  user-select:text!important;
  -webkit-touch-callout:default!important;
  touch-action:auto!important;
  pointer-events:auto!important;
  cursor:text!important;
}
