.el-emoji-trigger { flex:0 0 36px; width:36px; height:36px; padding:0; border:0; border-radius:50%; background:transparent; color:#222; cursor:pointer; font:23px/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; display:inline-flex; align-items:center; justify-content:center; }
.el-emoji-trigger:hover, .el-emoji-trigger[aria-expanded="true"] { background:#e8e7f1; }
.el-emoji-trigger:focus-visible, .el-emoji-picker button:focus-visible, .el-emoji-picker input:focus-visible, .el-emoji-picker select:focus-visible { outline:2px solid #635bff; outline-offset:2px; }
.el-emoji-picker { position:fixed; z-index:100100; width:360px; display:flex; flex-direction:column; box-sizing:border-box; overflow:hidden; border:1px solid #dedee5; border-radius:16px; background:#fff; color:#202024; box-shadow:0 12px 48px #0003; font:13px/1.4 -apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC",sans-serif; text-align:left; }
.el-emoji-picker[hidden] { display:none !important; }
.el-emoji-picker * { box-sizing:border-box; }
.el-emoji-header { display:flex; align-items:center; gap:8px; padding:12px 14px 6px; flex-shrink:0; }
.el-emoji-title { margin:0; font-size:15px; font-weight:650; flex:1; }
.el-emoji-close { width:32px; height:32px; border:0; border-radius:8px; background:#f4f4f6; color:#555; cursor:pointer; font:18px/1 sans-serif; }
.el-emoji-search { display:block; margin:4px 12px 8px; width:calc(100% - 24px); min-height:38px; padding:9px 11px; border:1px solid #dedee5; border-radius:9px; background:#fafafa; color:#202024; font:inherit; font-size:16px; flex-shrink:0; }
.el-emoji-categories { display:flex; overflow-x:auto; gap:2px; padding:3px 10px 7px; flex-shrink:0; scrollbar-width:thin; }
.el-emoji-category { flex:0 0 33px; width:33px; height:34px; padding:0; border:0; border-radius:8px; background:transparent; color:#555; font:21px/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; cursor:pointer; }
.el-emoji-category[aria-pressed="true"] { background:#ede9fe; box-shadow:inset 0 -2px #635bff; }
.el-emoji-filter { display:flex; align-items:center; justify-content:space-between; gap:6px; padding:4px 12px 8px; flex-shrink:0; border-bottom:1px solid #eee; }
.el-emoji-filter select { max-width:155px; min-height:30px; border:1px solid #ddd; border-radius:7px; background:#fff; color:#333; font:inherit; }
.el-emoji-count { color:#71717a; font-size:11px; }
.el-emoji-scroll { overflow-y:auto; min-height:60px; flex:1; overscroll-behavior:contain; padding:8px 10px; }
.el-emoji-grid { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:3px; }
.el-emoji-cell { display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:1; min-height:35px; border:0; padding:2px; border-radius:8px; background:transparent; cursor:pointer; font:27px/1.1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; }
.el-emoji-cell:hover, .el-emoji-cell:focus-visible { background:#f1eefb; }
.el-emoji-more { display:block; margin:8px auto; min-height:32px; padding:6px 15px; border:1px solid #ddd; border-radius:8px; background:#fff; color:#4f46e5; font:inherit; cursor:pointer; }
.el-emoji-more[hidden], .el-emoji-empty[hidden] { display:none !important; }
.el-emoji-empty { padding:20px 8px; color:#71717a; text-align:center; }
.el-emoji-notice { min-height:17px; padding:0 12px; color:#b91c1c; font-size:12px; }
.el-emoji-footer { padding:6px 12px 10px; color:#71717a; font-size:10px; flex-shrink:0; }
.el-mobile-chat { position:fixed; inset:0; z-index:10000; display:flex; align-items:flex-end; justify-content:center; padding:16px 12px max(16px,env(safe-area-inset-bottom)); background:#0005; }
.el-mobile-chat[hidden] { display:none !important; }
.el-mobile-chat-card { width:min(100%,440px); border:1px solid #eee; border-radius:16px; padding:14px; background:#fff; box-shadow:0 12px 40px #0003; color:#222; }
.el-mobile-chat-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; font-size:14px; }
.el-mobile-chat-card input { min-width:0; font-size:16px; }
.el-mobile-chat-card .cw-input-box { padding:5px 7px; }
.el-mobile-chat-card .cw-send-btn { padding:8px; }
.cw-input-box input { min-width:0; }
.el-emoji-image { display:inline-block; width:1.2em; height:1.2em; margin:0 .025em; vertical-align:-.2em; object-fit:contain; }
.el-emoji-fallback { font:inherit; font-size:.8em; }
.el-emoji-editor { flex:1; min-width:0; min-height:22px; max-height:96px; overflow-y:auto; white-space:pre-wrap; overflow-wrap:anywhere; outline:0; line-height:1.55; font-size:14px; color:inherit; cursor:text; }
.el-emoji-editor:empty::before { content:attr(data-placeholder); color:#888; pointer-events:none; }
.mc-input.el-emoji-editor { height:auto; min-height:36px; padding:6px 12px; background:white; }
.el-mobile-chat-card .el-emoji-editor { font-size:16px; }
.el-emoji-editor:focus-visible { outline:2px solid #635bff; outline-offset:1px; }
@media (max-width:380px) { .el-emoji-grid { grid-template-columns:repeat(7,minmax(0,1fr)); } }
