#openStickers{color:var(--spirit-accent,var(--ink));border-radius:50%}
#openStickers[aria-expanded="true"]{background:var(--spirit-mist);color:var(--spirit-ink)}
#stickerPanel{padding:12px 2px 2px;max-height:min(330px,48dvh);overflow-y:auto;overscroll-behavior:contain}
#stickerPanel[hidden]{display:none}
.sticker-panel-head{display:flex;align-items:center;justify-content:space-between;color:var(--spirit-muted,var(--muted));font-size:12px;padding:0 5px 7px}
.sticker-panel-head button{display:flex;gap:4px;align-items:center;min-height:32px;color:var(--spirit-accent,var(--ink));font-size:12px}
.sticker-panel-head svg{width:16px;height:16px}
.sticker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 8px}
.sticker-choice{min-width:0;padding:2px;border-radius:16px;transition:background .15s,transform .15s}
.sticker-choice:active{background:var(--spirit-mist);transform:scale(.94)}
.sticker-choice:focus-visible,#openStickers:focus-visible{outline:2px solid var(--spirit-accent);outline-offset:2px}
.sticker-choice:disabled{opacity:.45}
.chat-sticker{position:relative;width:138px;max-width:100%;text-align:center;color:var(--spirit-ink,var(--ink));padding:0 5px 6px}
.sticker-art{position:relative;display:block;width:128px;height:112px;max-width:100%;margin:auto}
.sticker-art img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 5px rgba(var(--spirit-rgb,98,131,168),.12))}
.sticker-mark{position:absolute;right:2px;top:9px;font-size:26px;font-style:normal;color:var(--spirit-accent,var(--ink));line-height:1;transform:rotate(9deg)}
.sticker-caption{display:block;position:relative;margin-top:-5px;font-size:21px;line-height:1.4;font-weight:600;letter-spacing:.08em;text-shadow:0 1px 3px #fff,1px 0 3px #fff,-1px 0 3px #fff}
.sticker-peek .sticker-art{transform:rotate(-10deg)}
.sticker-love .sticker-mark{font-size:35px;top:22px;right:0}
.sticker-hug .sticker-art img{transform:rotate(5deg)}
.sticker-sleep .sticker-mark{font-size:19px;letter-spacing:3px;top:7px}
.sticker-ok .sticker-mark{font-size:24px;top:26px}
.sticker-choice .chat-sticker{width:100%;padding-bottom:5px}
.sticker-choice .sticker-art{width:94px;height:76px}
.sticker-choice .sticker-caption{font-size:15px;margin-top:0}
.sticker-choice .sticker-mark{font-size:20px;right:0}
body[data-page="chat"] .message.has-sticker{width:fit-content;max-width:86%}
body[data-page="chat"] .message.has-sticker .chat-sticker{margin-left:auto}
body[data-page="chat"] .message.has-sticker .message-text{margin-top:8px}
.sticker-custom{padding:0}
.sticker-custom img{display:block;max-width:150px;max-height:165px;width:auto;height:auto;object-fit:contain;margin-left:auto;border-radius:8px}
#photoStickerMode{font-size:12px;white-space:nowrap;width:auto;min-height:36px;margin-left:0;padding:2px 8px;border-radius:12px;color:var(--spirit-muted,var(--muted))}
#photoStickerMode[aria-pressed="true"]{color:var(--spirit-ink,var(--ink));background:var(--spirit-mist)}
.composer.is-dictating #stickerPanel{display:none}
@media(prefers-reduced-motion:no-preference){.message.has-sticker .sticker-art{animation:sticker-hello .45s ease-out 1}@keyframes sticker-hello{0%{opacity:.5;scale:.92}70%{scale:1.035}100%{opacity:1;scale:1}}}
@media(max-width:360px){.composer-row{gap:2px}.sticker-grid{gap:2px}.sticker-choice .sticker-art{width:82px;height:69px}}
