/* Isolated mobile messaging surface; no web IMC selectors. */
#native-chat{--nc-gold:#ceae5e;--nc-muted:#9da6aa;box-sizing:border-box;position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:env(safe-area-inset-top) max(0px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(0px,env(safe-area-inset-left));background:#101416;color:#f4f4f2;overflow:hidden;box-shadow:none;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
#native-chat[open]{display:flex;flex-direction:column}#native-chat *{box-sizing:border-box}#native-chat button{font:inherit;color:inherit;cursor:pointer;min-height:44px}#native-chat button:focus-visible,#native-chat input:focus-visible,#native-chat textarea:focus-visible{outline:2px solid var(--nc-gold);outline-offset:-2px}#native-chat svg{width:24px;height:24px;flex-shrink:0}#native-chat header{flex:none;display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #ffffff0d;background:#101416;min-height:76px}#native-chat h2{font-size:22px;margin:0;flex:1}#native-chat .nc-icon{border:1px solid #ffffff17;border-radius:50%;background:#202528;width:46px;height:46px;min-width:46px;padding:11px;display:grid;place-items:center;margin:0;flex-shrink:0}#native-chat .nc-title{display:flex;align-items:center;gap:12px;min-width:0;padding:0;background:transparent;border:0;text-align:left;flex:1}#native-chat .nc-title>span:last-child{min-width:0}#native-chat .nc-title strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}#native-chat .nc-title small{display:block;color:var(--nc-muted);font-size:12px;margin-top:4px}#native-chat .nc-avatar{display:grid;place-items:center;width:46px;height:46px;flex:none;border-radius:50%;background:#373020;color:#e7ce8a;font-size:16px;font-weight:600}#native-chat .nc-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}#native-chat .nc-error{flex:none;color:#edbc8c;background:#101416;font-size:12px;margin:0;padding:0 16px;line-height:1.5;max-height:64px;overflow:auto}#native-chat .nc-error:not(:empty){padding:8px 16px}#native-chat .nc-search{display:flex;align-items:center;gap:10px;background:#22282b;border-radius:14px;padding:0 12px;margin:14px 16px;color:var(--nc-muted)}#native-chat input,#native-chat textarea{font:inherit;color:inherit;background:#202528;border:1px solid #ffffff15;border-radius:12px;padding:12px;min-width:0;width:100%;margin:0}#native-chat .nc-search input{border:0;background:none;height:46px;padding:8px 0}#native-chat .nc-tabs{display:flex;gap:8px;padding:0 16px 12px}#native-chat .nc-tabs button{border:0;border-radius:22px;background:#202528;padding:8px 16px;color:var(--nc-muted);font-size:13px}#native-chat .nc-tabs [aria-pressed=true]{background:#3c3423;color:#e7ce8a}#native-chat .nc-thread{position:relative;overflow:hidden;touch-action:pan-y;border-bottom:1px solid #ffffff0b}#native-chat .nc-thread-face{position:relative;display:flex;align-items:center;background:#101416;transition:transform .18s ease}#native-chat .nc-thread.revealed .nc-thread-face{transform:translateX(-228px)}#native-chat .nc-thread-open{display:flex;align-items:center;gap:12px;padding:18px 12px 18px 16px;border:0;background:none;text-align:left;min-width:0;flex:1}#native-chat .nc-thread-copy{min-width:0;flex:1}#native-chat .nc-thread-copy strong,#native-chat .nc-thread-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#native-chat .nc-thread-copy strong{font-size:16px}#native-chat .nc-thread-copy small{color:var(--nc-muted);font-size:13px;margin-top:6px}#native-chat .nc-thread-meta{display:grid;justify-items:end;gap:6px;font-size:11px;color:var(--nc-muted)}#native-chat .nc-thread-meta svg{width:13px;height:13px}#native-chat .nc-thread-meta b{background:var(--nc-gold);color:#111;border-radius:20px;min-width:21px;line-height:21px;padding:0 5px;text-align:center}#native-chat .nc-thread-face>.nc-icon{width:30px;min-width:30px;border:0;background:none;padding:3px;margin-right:5px}#native-chat .nc-swipe-actions{position:absolute;right:0;top:0;bottom:0;display:flex;align-items:center;width:228px;background:#161b1e;visibility:hidden}#native-chat .revealed .nc-swipe-actions{visibility:visible}#native-chat .nc-swipe-actions button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:76px;height:100%;border:0;border-radius:0;background:none;padding:10px 0}#native-chat .nc-swipe-actions svg{box-sizing:content-box;background:#575065;border-radius:50%;padding:12px}#native-chat .nc-swipe-actions button:nth-child(2) svg{background:#a53636}#native-chat .nc-swipe-actions button:nth-child(3) svg{background:#58615d}#native-chat .nc-swipe-actions small{font-size:11px;color:var(--nc-muted)}#native-chat #nc-history{padding:8px 14px 20px}#native-chat .nc-day{text-align:center;color:var(--nc-muted);font-size:12px;margin:22px 0}#native-chat .nc-message{display:flex;align-items:flex-end;gap:7px;margin:14px 0}#native-chat .nc-message>.nc-avatar{width:27px;height:27px;font-size:10px}#native-chat .nc-message.mine{justify-content:flex-end}#native-chat .nc-bubble{background:#292d30;border-radius:20px 20px 20px 5px;max-width:84%;min-width:84px;overflow:hidden;padding:10px 12px}#native-chat .mine .nc-bubble{background:#413922;border-radius:20px 20px 5px 20px}#native-chat .nc-author{display:block;color:#d3bd7f;font-size:12px;margin-bottom:7px}#native-chat .nc-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 5px;font-size:16px;line-height:1.45}#native-chat .nc-bubble time{display:block;text-align:right;font-size:10px;color:#b3b8b9;margin-top:6px}#native-chat .nc-message-photo{display:block;padding:0;border:0;background:none;width:100%;margin:0 0 8px}#native-chat .nc-message-photo img{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:10px}#native-chat audio{max-width:100%;height:44px}#native-chat .nc-compose{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid #ffffff10;background:#151a1d;flex:none}#native-chat .nc-compose textarea{flex:1;resize:none;max-height:100px;min-height:46px;border-radius:24px;padding:12px;font-size:16px}#native-chat .nc-compose .nc-icon{width:40px;min-width:40px;padding:8px;border:0;background:none}#native-chat .nc-send{border:0;background:var(--nc-gold);color:#151a1d;border-radius:50%;width:44px;min-width:44px;display:grid;place-items:center;padding:10px}#native-chat .recording{color:#ff6464!important}#native-chat .nc-attachment{display:flex;align-items:center;gap:16px;padding:10px 16px;background:#202528}#native-chat .nc-attachment img{max-height:90px;max-width:180px;border-radius:10px}#native-chat .nc-attachment audio{max-width:75%}#native-chat .nc-message-search{padding:8px 16px}#native-chat .nc-details{padding:14px 20px 32px}#native-chat .nc-group-hero{text-align:center;padding:8px 0 20px}#native-chat .nc-avatar-large{width:104px;height:104px;font-size:34px;margin:8px auto 20px}#native-chat h1{font-size:25px;line-height:1.3;overflow-wrap:anywhere;margin:12px 0}#native-chat .nc-group-hero p{color:var(--nc-muted);line-height:1.5;font-size:14px;white-space:pre-wrap}#native-chat .nc-quick{display:flex;justify-content:center;gap:24px;margin:4px 0 28px}#native-chat .nc-quick button{display:grid;justify-items:center;gap:8px;background:none;border:0;padding:0;font-size:13px}#native-chat .nc-quick svg{box-sizing:content-box;padding:16px 26px;border:1px solid #ffffff17;border-radius:28px;background:#202528}#native-chat .nc-card{border-radius:22px;background:#202528;overflow:hidden;margin-bottom:26px}#native-chat .nc-card>button{display:flex;align-items:center;gap:12px;width:100%;padding:18px;border:0;border-bottom:1px solid #ffffff0c;border-radius:0;background:transparent;text-align:left;font-size:15px}#native-chat .nc-card>button>span{margin-left:auto;color:var(--nc-muted)}#native-chat h3{font-size:15px;color:var(--nc-muted);margin:24px 8px 12px}#native-chat .nc-member{display:flex;align-items:center;gap:12px;padding:14px;border-bottom:1px solid #ffffff10;margin:0;font-size:15px}#native-chat .nc-member>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}#native-chat .nc-member small{font-size:11px;color:var(--nc-muted)}#native-chat .nc-member span small{display:block;margin-top:5px}#native-chat .nc-member input{width:20px;accent-color:var(--nc-gold)}#native-chat .nc-danger{color:#ff7772!important}#native-chat .nc-media-strip{display:flex;gap:8px;padding:14px;overflow:auto}#native-chat .nc-media-strip button{padding:0;border:0;min-width:65px;width:25%;aspect-ratio:1;background:none;overflow:hidden;border-radius:12px}#native-chat .nc-media-strip img,#native-chat .nc-gallery img{width:100%;height:100%;object-fit:cover}#native-chat .nc-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px}#native-chat .nc-gallery button{aspect-ratio:1;border:0;padding:0;background:none;overflow:hidden}#native-chat .nc-photo-view{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px}#native-chat .nc-photo-view img{max-width:100%;max-height:65dvh;object-fit:contain}#native-chat .nc-photo-view p{color:var(--nc-muted);font-size:12px}#native-chat .nc-photo-view button,#native-chat .nc-primary{background:var(--nc-gold);color:#141719;border:0;border-radius:24px;padding:12px 20px}#native-chat .nc-load{display:block;margin:14px auto;border:1px solid #ffffff20;border-radius:20px;background:#202528;padding:8px 16px;font-size:12px}#native-chat .nc-hint,#native-chat .nc-empty{color:var(--nc-muted);font-size:13px;line-height:1.5;padding:14px;text-align:center}#native-chat .nc-editor{padding:20px}#native-chat .nc-editor>label{display:grid;gap:8px;margin-bottom:18px;font-size:14px}#native-chat .nc-editor>label.nc-member{display:flex}#native-chat .nc-primary{width:100%;margin-top:22px}#native-chat [hidden]{display:none!important}@media(prefers-reduced-motion:reduce){#native-chat .nc-thread-face{transition:none}}
#native-chat .nc-thread{user-select:none;-webkit-user-select:none;touch-action:pan-y}
#native-chat .nc-tabs{overflow-x:auto;flex-shrink:0;white-space:nowrap}
#native-chat .nc-section{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#939b9e;padding:16px 20px 4px}
#native-chat .nc-draft{color:#d4b464}
.native-messaging-icon{color:#d4b464!important;background:linear-gradient(145deg,#343025,#1c2022)!important;border:1px solid rgba(212,180,100,.45)!important}
.native-messaging-icon>svg{width:24px;height:24px;filter:drop-shadow(0 1px 2px #0005)}

#native-chat .nc-compose{align-items:flex-end}
#native-chat .nc-compose textarea{height:46px;max-height:158px;line-height:22px;overflow-y:hidden}

/* Desktop uses the same chat surface with room for the IMC agent panel. */
@media(min-width:900px){
#native-chat.nc-desktop{inset:24px;margin:auto;width:min(1180px,calc(100vw - 48px));height:calc(100dvh - 48px);max-height:900px;border:1px solid #344044;border-radius:22px;box-shadow:0 24px 100px #0009;padding:0}
#native-chat.nc-desktop::backdrop{background:#0009}
#native-chat.nc-desktop.chat-with-agents[data-view=conversation]{padding-right:300px}
#native-chat.nc-desktop #chat-agent-panel{position:absolute;right:0;top:0;bottom:0;width:300px;padding:18px;background:#181e21;overflow:auto;border-left:1px solid #ffffff18}
#native-chat.nc-desktop.chat-agents-collapsed[data-view=conversation]{padding-right:85px}
#native-chat.nc-desktop.chat-agents-collapsed #chat-agent-panel{width:85px;padding:12px}
#native-chat.nc-desktop .nc-details{width:100%;max-width:760px;margin:auto}
#native-chat.nc-desktop .nc-bubble{max-width:75%}
#native-chat.nc-desktop .nc-message-photo img{max-width:480px}
}
/* Optional secure-messaging settings share the chat's existing card styling. */
#native-chat .nc-card>label{display:grid;gap:8px;padding:16px 18px;font-size:14px}
#native-chat .nc-card>label input{width:100%;box-sizing:border-box;min-height:44px;font-size:16px}
#native-chat .nc-card>details{padding:16px 18px}
#native-chat .nc-card>details summary{cursor:pointer;min-height:32px}
#native-chat .nc-encryption-notice{flex:none;text-align:center;font-size:11px;color:var(--nc-muted);padding:8px 16px;background:transparent}
#native-chat .nc-receipt{float:right;font-size:13px;color:#98a3a9;margin:3px 7px 0 0;letter-spacing:-3px;padding-right:3px}
#native-chat .nc-receipt.is-read{color:var(--nc-gold)}

#native-chat .nc-editor>label.nc-search{display:flex;align-items:center;margin:0 0 16px;}

/* Secure messaging settings */
#native-chat .nc-security-page{padding:20px 20px 32px;width:100%;max-width:620px;margin:0 auto}
#native-chat .nc-security-hero{text-align:center;padding:16px 4px 24px}
#native-chat .nc-security-emblem{width:84px;height:84px;display:grid;place-items:center;margin:0 auto 24px;border-radius:50%;background:#20272b}
#native-chat .nc-security-emblem svg{width:38px;height:38px;color:var(--nc-gold)}
#native-chat .nc-security-hero h2{font-size:24px;line-height:1.25;margin:0 0 12px;color:#fff;letter-spacing:-.4px}
#native-chat .nc-security-hero p{font-size:15px;line-height:1.55;color:var(--nc-muted);margin:0 auto;max-width:360px}
#native-chat .nc-security-status{width:fit-content;max-width:100%;margin:0 auto 28px;padding:10px 14px;border-radius:24px;color:#a9d5b5;background:#23392e;font-size:13px;text-align:center}
#native-chat .nc-security-label{text-transform:uppercase;letter-spacing:1.3px;font-size:12px;margin:16px 10px 10px}
#native-chat .nc-security-page .nc-card{background:#20272b;border-radius:20px;margin-bottom:20px}
#native-chat .nc-security-row{min-height:88px;gap:14px;padding:20px 16px}
#native-chat .nc-security-row>svg{color:var(--nc-gold);flex-shrink:0;width:26px;height:26px}
#native-chat .nc-card>.nc-security-row>span{margin:0;flex:1;min-width:0;color:#fff}
#native-chat .nc-security-row strong{font-size:15px;font-weight:600;display:block;line-height:1.4}
#native-chat .nc-security-row small{display:block;font-size:12px;color:var(--nc-muted);margin-top:5px;line-height:1.45}
#native-chat .nc-security-row b{font-size:24px;font-weight:400;color:var(--nc-muted)}
#native-chat .nc-security-row em{font-style:normal;font-size:11px;background:#c4aa68;color:#171b1e;padding:5px 8px;border-radius:14px;white-space:nowrap}
#native-chat .nc-security-note{display:flex;gap:12px;background:#20272b;padding:20px 16px;border-radius:20px;color:var(--nc-muted);font-size:13px;line-height:1.55}
#native-chat .nc-security-note>svg{flex-shrink:0;width:22px;height:22px}
#native-chat .nc-security-note strong{display:block;font-weight:500;color:#edf0f2;margin-bottom:6px}
#native-chat .nc-security-note p{margin:0}
#native-chat .nc-security-device{padding:18px}
#native-chat .nc-device-heading{display:flex;align-items:center;gap:14px;margin-bottom:18px}
#native-chat .nc-device-heading>svg{color:var(--nc-gold);flex-shrink:0}
#native-chat .nc-device-heading strong{display:block;overflow-wrap:anywhere;font-size:15px}
#native-chat .nc-device-heading small{display:block;color:var(--nc-muted);margin-top:6px}
#native-chat .nc-security-device summary{padding:14px 0;cursor:pointer;font-size:14px;border-top:1px solid #ffffff12}
#native-chat .nc-security-device code,#native-chat .nc-recovery-code{display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.7;font-size:13px;background:#151a1d;border-radius:12px;padding:14px}
#native-chat .nc-device-revoke{background:none;border:0;margin-top:12px}
#native-chat .nc-security-form{padding:20px}
#native-chat .nc-security-form label{display:grid;gap:10px;margin-bottom:20px;font-size:14px}
#native-chat .nc-security-form input{width:100%;min-width:0;font-size:16px;padding:12px}
#native-chat .nc-security-form input[type=file]{font-size:13px;padding:10px 0}
#native-chat .nc-security-form .nc-primary{font-size:14px;line-height:1.5}
#native-chat .nc-security-hero h2.nc-encryption-title{font-size:16px;font-weight:300;letter-spacing:0;color:#969da2}

/* Keep text entry at iOS focus-safe sizing without disabling pinch zoom. */
#native-chat .nc-search input,#native-chat .nc-editor input:not([type=checkbox]):not([type=radio]),#native-chat .nc-editor textarea{font-size:16px;}

/* Mobile focus must not trigger WebKit's small-text automatic zoom.
   Shared by personal, administrator and full IMC pages, including dialogs.
   Keep manual pinch zoom and accessibility scaling available. */
@media (pointer:coarse), (max-width:900px) {
  html body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),
  html body textarea,
  html body select,
  html body [contenteditable]:not([contenteditable="false"]) {
    font-size:max(16px, 1em) !important;
  }
}

/* Message info keeps the conversation and composer in place underneath. */
#nc-message-info{background:#101114;color:#eee;border:1px solid #34363b;border-radius:20px;width:min(520px,100%);height:min(700px,90dvh);padding:0;overflow:hidden}
#nc-message-info[open]{display:flex;flex-direction:column}
#nc-message-info::backdrop{background:#0009}
#nc-message-info .nc-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid #303237;flex-shrink:0}
#nc-message-info h2{font-size:19px;margin:0}
#nc-message-info .nc-scroll{overflow:auto;padding:16px}
#nc-message-info .nc-card{background:#1c1e23;border-radius:16px;overflow:hidden;padding:8px 12px}
#nc-message-info .nc-section{font-size:14px;color:#a9acb3;margin:20px 0 10px}
#nc-message-info .nc-hint{font-size:13px;color:#a9acb3}
#nc-message-info .nc-icon{background:transparent;color:inherit;border:0;width:40px;height:40px;padding:8px}
#nc-message-info svg{width:24px;height:24px}
#nc-message-info .nc-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#383a40;flex-shrink:0}
.nc-receipt-person{display:flex;align-items:center;gap:12px;padding:12px 0}
.nc-receipt-person small{display:block;margin-top:5px;color:#a9acb3;font-size:12px}
#native-chat button.nc-receipt{background:transparent;border:0;padding:4px;cursor:pointer;font:inherit;font-size:12px}
#native-chat .nc-message.mine{touch-action:pan-y}
@media(max-width:600px){#nc-message-info{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);box-sizing:border-box}}
