/* Custom emoji panel.  Keep the panel independent from the chat shell so it
   remains usable in installed iOS PWAs and narrow mobile viewports. */
.emoji-panel{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:46;display:none;overflow:hidden;border:1px solid rgba(190,204,218,.78);border-radius:18px;background:rgba(248,251,253,.96);box-shadow:0 14px 34px rgba(48,68,84,.16);-webkit-backdrop-filter:blur(22px) saturate(1.25);backdrop-filter:blur(22px)}
.emoji-panel:not([aria-hidden="true"]){display:block}
.emoji-panel-head{display:flex;align-items:center;min-height:45px;padding:0 10px;border-bottom:1px solid rgba(190,204,218,.56);gap:2px}
.emoji-tab,.emoji-manage{height:34px;border:0;border-radius:10px;background:transparent;color:rgba(72,91,112,.64);font:500 12px/1 -apple-system,"PingFang SC",system-ui,sans-serif;padding:0 12px;cursor:pointer}
.emoji-tab.active{color:#49647c;background:rgba(157,189,211,.18)}
.emoji-manage{margin-left:auto;padding:0 8px;font-size:11px}
.emoji-manage.hidden{display:none}
.emoji-panel-body{min-height:144px;max-height:min(38dvh,270px);overflow:auto;padding:10px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.emoji-unicode-grid,.emoji-custom-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}
.emoji-unicode-item,.emoji-custom-item,.emoji-add-item{position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:1;border:0;border-radius:11px;background:transparent;color:#52697b;font:400 25px/1 "Apple Color Emoji","Segoe UI Emoji",sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent}
.emoji-unicode-item:active,.emoji-custom-item:active,.emoji-add-item:active{background:rgba(157,189,211,.2);transform:scale(.94)}
.emoji-custom-item{overflow:hidden;background:rgba(255,255,255,.56)}
.emoji-custom-item img{display:block;width:100%;height:100%;object-fit:contain;padding:4px}
.emoji-custom-item .emoji-delete{position:absolute;right:1px;top:1px;width:18px;height:18px;border:0;border-radius:50%;background:rgba(74,91,105,.78);color:#fff;font:700 13px/18px system-ui;cursor:pointer;padding:0}
.emoji-add-item{border:1px dashed rgba(157,177,193,.82);color:rgba(72,91,112,.72);font:300 28px/1 system-ui}
.emoji-panel-state{padding:32px 8px;text-align:center;color:rgba(72,91,112,.55);font:400 12px/1.55 -apple-system,"PingFang SC",system-ui,sans-serif}
html[data-global-skin] .emoji-panel{background:color-mix(in srgb,var(--nc-card) 94%,var(--nc-bg));border-color:var(--nc-line);box-shadow:var(--nc-shadow);color:var(--nc-text)}
html[data-global-skin] .emoji-panel-head{border-color:var(--nc-line)}
html[data-global-skin] .emoji-tab,html[data-global-skin] .emoji-manage{color:var(--nc-muted)}
html[data-global-skin] .emoji-tab.active{color:var(--nc-accent);background:color-mix(in srgb,var(--nc-accent-soft) 38%,transparent)}
html[data-global-skin] .emoji-custom-item{background:color-mix(in srgb,var(--nc-card) 70%,var(--nc-bg))}
html[data-global-skin] .emoji-add-item{border-color:var(--nc-line);color:var(--nc-accent)}
html[data-global-skin] .emoji-panel-state{color:var(--nc-muted)}
@media(max-width:420px){.emoji-panel{bottom:calc(100% + 6px);border-radius:16px}.emoji-panel-body{max-height:min(40dvh,250px);padding:8px}.emoji-unicode-grid,.emoji-custom-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.emoji-unicode-item,.emoji-custom-item,.emoji-add-item{font-size:23px}}
@media(prefers-reduced-motion:reduce){.emoji-unicode-item:active,.emoji-custom-item:active,.emoji-add-item:active{transform:none}}
