/* Keep conversation controls inside the visible viewport, including an open keyboard. */
html.messenger-open,html.messenger-open body{overflow:hidden;overscroll-behavior:none}
#messages-inbox{box-sizing:border-box;overscroll-behavior:contain}
#messages-inbox .messenger-shell,#messages-inbox .messenger-thread{min-width:0;min-height:0;overflow:hidden}
#messages-inbox .thread-header{position:relative;top:auto;display:flex;flex-shrink:0;min-width:0;gap:10px;z-index:auto;box-shadow:none}
#messages-inbox .thread-heading{overflow-wrap:anywhere}
#messages-inbox .thread-heading h2{font-size:17px;line-height:1.35}
#messages-inbox .thread-heading p:empty{display:none}
#messages-inbox #message-connection{display:block;line-height:1.5;margin-top:4px}
#messages-inbox .thread-actions{display:flex;flex:none;gap:6px}
#messages-inbox .thread-actions .history-button{min-height:44px;padding:8px 12px;font-size:12px;margin:0}
#messages-inbox .thread-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;overflow-anchor:auto}
#messages-inbox #live-reply-form{min-width:0;box-sizing:border-box;width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:end;padding:12px}
#messages-inbox #live-reply{width:100%;min-width:0;max-width:100%;min-height:44px;max-height:min(150px,25dvh);max-height:min(150px,calc(var(--messenger-height,100dvh) * .25));font-size:16px;line-height:1.5;overflow-y:auto;padding:10px 12px}
#messages-inbox .message-send{width:44px;height:44px;min-width:0;padding:0}
#messages-inbox #messages-query{font-size:16px;min-width:0}
#messages-inbox #message-typing:empty{display:none}
#messages-inbox #live-thread-error{flex-shrink:0;overflow-wrap:anywhere;line-height:1.5;padding:8px 16px}
#messages-inbox #live-thread-refresh{flex:none;margin:8px auto;min-height:44px}
#messages-inbox #message-attachment{flex:none;min-width:0;overflow-wrap:anywhere}
#messages-inbox.access-required .messenger-shell>:not(#messages-access){display:none!important}
#messages-access{width:100%;min-width:0;min-height:0;display:flex;flex-direction:column;overflow-y:auto}
#messages-access .messenger-head{position:relative;top:auto;display:flex;flex:none;gap:16px}
#messages-access .messenger-head h2{font-size:26px;line-height:1.3;margin:0}
.message-access-card{width:min(100%,500px);box-sizing:border-box;padding:32px 24px;margin:auto;overflow-wrap:anywhere;text-align:center}
.message-access-card h2{font-size:26px;line-height:1.25;margin:24px 0 16px}
.message-access-card p{font-size:16px;line-height:1.6;margin:14px 0}
.message-access-card .note{font-size:14px;color:#5b6d63}
.message-access-card .btn{white-space:normal;min-height:48px;margin-top:12px;max-width:100%}
@media(max-width:760px){
 #messages-inbox{position:fixed;inset:auto;top:var(--messenger-top,0px);left:var(--messenger-left,0px);width:var(--messenger-width,100%);height:var(--messenger-height,100dvh);max-width:none;max-height:none;margin:0;border-radius:0}
 #messages-inbox .thread-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px 8px;padding:8px max(8px,env(safe-area-inset-right)) 8px max(8px,env(safe-area-inset-left));padding-top:max(8px,env(safe-area-inset-top))}
 #messages-inbox .thread-header>[data-act=close]{grid-column:3;grid-row:1;align-self:start}
 #messages-inbox .thread-heading{grid-column:2;grid-row:1}
 #messages-inbox .thread-actions{grid-column:2;grid-row:2;flex-wrap:wrap}
 #messages-inbox .thread-heading h2{font-size:16px}
 #messages-inbox #live-reply-form{padding:10px max(8px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
 #messages-inbox.keyboard-open #live-reply-form{padding-bottom:8px}
 #messages-inbox #messages-latest{bottom:100px;max-width:90%;white-space:normal}
 #messages-inbox .messenger-head{padding-top:max(20px,env(safe-area-inset-top))}
 .message-access-card{padding:24px 20px}
}
