.composer{position:relative}
.composer-tools{display:flex;align-items:center;gap:.4rem;margin:.2rem 0 .5rem}
.sticker-trigger{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;background:transparent;color:#566d78}
.sticker-trigger:hover,.sticker-trigger[aria-expanded="true"]{background:#e6f7f0;color:#087d61}
.sticker-panel{position:absolute;z-index:8;left:1.6rem;right:1.6rem;bottom:calc(100% - 1px);padding:.75rem;border:1px solid var(--line);border-radius:10px 10px 0 0;background:#f8fbfb;max-height:min(44dvh,360px);box-shadow:0 -8px 24px #102d3c20;overflow:hidden;display:flex;flex-direction:column;gap:.5rem}
.sticker-panel[hidden]{display:none}
.sticker-panel p{font-size:.8rem;margin-bottom:.5rem}
.sticker-tabs{display:flex;gap:.35rem;overflow-x:auto;overflow-y:hidden;flex:none;padding:.15rem .1rem .4rem;scrollbar-width:thin}
.sticker-tab{position:relative;flex:0 0 54px;width:54px;height:54px;padding:4px;border:2px solid transparent;border-radius:9px;background:white}
.sticker-tab[aria-selected="true"]{border-color:#00a67a;background:#e6f7f0}
.sticker-tab:focus-visible{outline:2px solid #087d61;outline-offset:1px}
.sticker-tab img{width:100%;height:100%;object-fit:contain}
.sticker-tab-star{position:absolute;right:0;bottom:0;font-size:13px;color:#d99500;background:white;border-radius:50%;line-height:1}
.sticker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:.5rem;min-height:0;overflow-y:auto}
.sticker-option{min-width:0;padding:.35rem;display:flex;align-items:center;flex-direction:column;gap:.2rem}
.sticker-option.selected{outline:2px solid #00a67a;background:#e6f7f0}
.sticker-option img{width:68px;height:68px;object-fit:contain}
.sticker-option small{font-size:.7rem;line-height:1.2;text-align:center}
.sent-sticker{display:block;width:128px;max-width:100%;height:128px;object-fit:contain}
@media(max-width:650px){.sticker-panel{left:1rem;right:1rem;max-height:min(42dvh,320px)}}
