.expression-panel{position:absolute;z-index:24;left:max(12px,calc((100% - 900px)/2));bottom:calc(100% + 8px);width:min(390px,calc(100vw - 24px));max-height:min(470px,58vh);overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:20px;background:rgba(13,18,29,.98);box-shadow:0 24px 70px rgba(0,0,0,.52);backdrop-filter:blur(22px)}
.expression-head{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid rgba(255,255,255,.08)}
.expression-head strong{font-size:14px}.expression-head button{width:32px;height:32px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:#b8c1d2;font-size:20px;cursor:pointer}
.expression-content{max-height:min(410px,50vh);overflow-y:auto;padding:12px}
.emoji-section+ .emoji-section{margin-top:13px}.emoji-section h4{margin:0 0 7px;color:#8f9ab0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.emoji-item{display:grid;place-items:center;min-width:38px;height:38px;padding:0;border:0;border-radius:10px;background:transparent;font-size:23px;cursor:pointer}.emoji-item:hover,.emoji-item:focus-visible{background:rgba(82,220,232,.1);outline:none}
.sticker-pack-title{padding:1px 3px 10px;color:#9aa5b9;font-size:12px}.sticker-section+ .sticker-section{margin-top:14px}.sticker-section h4{position:sticky;top:-12px;z-index:1;margin:0 0 7px;padding:8px 2px 6px;background:rgba(13,18,29,.97);color:#8f9ab0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.sticker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.sticker-item{position:relative;display:grid;place-items:center;aspect-ratio:1;padding:5px;border:0;border-radius:15px;background:rgba(255,255,255,.035);cursor:pointer;transition:background .15s,transform .15s}.sticker-item:hover{background:rgba(82,220,232,.09);transform:translateY(-1px)}.sticker-item:disabled{opacity:.48;cursor:wait}.sticker-item img{display:block;width:100%;height:100%;object-fit:contain}
.message.sticker-message{padding:4px 4px 5px;border-color:transparent;background:transparent;box-shadow:none;overflow:visible}.message.sticker-message.own{background:transparent;border-color:transparent}.sticker-message-body{position:relative;min-width:110px}.sticker-image{display:block;width:min(160px,36vw);height:auto;max-height:160px;object-fit:contain;margin:0}.sticker-fallback{display:grid;place-items:center;width:140px;height:90px;border-radius:15px;background:var(--panel2);color:var(--muted)}.message.sticker-message time{padding:3px 6px;border-radius:10px;background:rgba(8,11,19,.72)}.message.sticker-message .message-reply{background:rgba(12,17,28,.78)}
@media(max-width:720px){.expression-panel{position:fixed;left:8px;right:8px;bottom:calc(65px + env(safe-area-inset-bottom));width:auto;max-height:50vh}.expression-content{max-height:calc(50vh - 58px)}.emoji-grid{grid-template-columns:repeat(7,1fr)}.emoji-item{min-width:34px;height:36px}.sticker-grid{grid-template-columns:repeat(4,1fr);gap:5px}.sticker-item{padding:3px}.sticker-image{width:min(140px,42vw);max-height:140px}.composer .expression-button{flex-basis:38px;width:38px}}
