/* The chat/number composer stays primary; the compact tray is in flow, never over the feed. */
.t-input { flex-shrink: 0; }
#chatForm > .icon-btn { flex: 0 0 44px; }
#chatForm .niu-sticker-trigger { position: relative; }
#chatForm .niu-sticker-trigger[aria-expanded="true"] { color: var(--neon) !important; box-shadow: inset 0 0 0 1px var(--neon) !important; }
.niu-sticker-trigger [data-sticker-countdown] { position: absolute; right: -2px; top: -4px; padding: 2px 4px; background: var(--surface-2); color: var(--neon); border-radius: var(--r-pill); font-size: 10px; line-height: 1.2; font-variant-numeric: tabular-nums; }
.niu-sticker-tray { width: min(100%, 320px); margin: 0 0 var(--s2) auto; padding: var(--s2); border-radius: var(--r-card); background: var(--surface); box-shadow: inset 0 0 0 1px var(--line); }
.niu-sticker-tray[hidden] { display: none; }
.niu-sticker-tray header { display: flex; align-items: center; gap: var(--s2); min-height: 44px; }
.niu-sticker-tray header strong { font-size: 13px; font-weight: 700; color: var(--ink); }
.niu-sticker-tray header small { flex: 1; font-size: 11px; color: var(--ink-2); font-variant-numeric: tabular-nums; }
.niu-sticker-tray header button { width: 44px; height: 44px; flex: none; border: 0; border-radius: var(--r-pill); background: transparent; color: var(--ink-2); font-size: 24px; }
.niu-sticker-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--s1); }
.niu-sticker-choice { position: relative; display: grid; place-items: center; height: 68px; min-width: 44px; padding: 2px; border: 0; border-radius: var(--r-tile); background: transparent; color: var(--ink); cursor: pointer; }
.niu-sticker-choice img { display: block; width: 64px; max-width: 100%; height: 64px; object-fit: contain; }
.niu-sticker-choice img[hidden], .niu-sticker-fallback[hidden], [data-sticker-countdown][hidden] { display: none; }
.niu-sticker-fallback { position: absolute; inset: 8px; display: grid; place-items: center; font: 600 12px/1.3 var(--sans); text-align: center; background: var(--surface); border-radius: var(--r-tile); }
.niu-sticker-choice:hover:not(:disabled), .niu-sticker-tray header button:hover { background: var(--surface-2); }
.niu-sticker-choice:active:not(:disabled) { transform: scale(.97); }
.niu-sticker-choice:disabled { opacity: .4; cursor: default; }
.niu-sticker-choice:focus-visible, .niu-sticker-tray header button:focus-visible, .niu-sticker-trigger:focus-visible { outline: 2px solid var(--neon); outline-offset: 2px; }
.msg.m-sticker .niu-sticker-message { width: 120px; max-width: 100%; }
.msg.m-sticker.mine .niu-sticker-message { margin-left: auto; }
.niu-sticker-message img { display: block; width: 120px; height: 120px; object-fit: contain; }
.niu-sticker-message time { display: block; padding-top: var(--s1); color: var(--ink-2); font-size: 11px; font-variant-numeric: tabular-nums; }
.niu-sticker-message span { font: 600 13px/1.3 var(--sans); }
@media (max-width: 360px) { #chatForm { gap: var(--s1); } #chatForm input { padding-inline: var(--s3); } }
@media (max-height: 580px) { .niu-sticker-choice { height: 44px; } .niu-sticker-choice img { width: 44px; height: 44px; } }
@media (prefers-reduced-motion: reduce) { .niu-sticker-choice:active:not(:disabled) { transform: none; } }
