.hmoob-media-picker.hidden{display:none!important}
.hmoob-media-picker{position:fixed;inset:0;z-index:2147483647!important;display:flex;align-items:center;justify-content:center;padding:18px;isolation:isolate;pointer-events:auto}
.hmoob-media-picker-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62);backdrop-filter:blur(8px)}
.hmoob-media-picker-dialog{position:relative;width:min(760px,96vw);max-height:min(780px,92vh);display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:var(--card,#fff);color:var(--text,#172033);box-shadow:0 28px 80px rgba(0,0,0,.34);border:1px solid color-mix(in srgb,var(--line,#dbe3ef) 80%,transparent)}
.hmp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line,#e5e7eb)}
.hmp-head strong{display:block;font-size:1.05rem}
.hmp-head span{display:block;color:var(--muted,#64748b);font-size:.86rem;margin-top:2px}
.hmp-close{width:36px;height:36px;border:0;border-radius:999px;background:var(--button-bg,#111827);color:var(--button-text,#fff);font-weight:900;cursor:pointer}
.hmp-tabs{display:flex;gap:8px;padding:12px 16px 0}
.hmp-tabs button,.hmp-sticker-set-tabs button{border:1px solid var(--line,#dbe3ef);background:color-mix(in srgb,var(--card,#fff) 88%,var(--bg,#f0f2f5));color:var(--text,#172033);border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}
.hmp-tabs button.is-active,.hmp-sticker-set-tabs button.is-active{background:linear-gradient(135deg,#2563eb,#8b5cf6);color:#fff;border-color:transparent}
.hmp-body{padding:16px;overflow:auto;min-height:280px}
.hmp-upload-panel{margin-bottom:14px}
.hmp-upload-btn{width:100%;min-height:76px;border:1px solid color-mix(in srgb,var(--accent,#1877f2) 34%,var(--line,#dbe3ef));border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent,#1877f2) 13%,var(--card,#fff)),color-mix(in srgb,#8b5cf6 10%,var(--card,#fff)));color:var(--text,#172033);display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-areas:"icon title" "icon copy";align-items:center;column-gap:12px;padding:13px 14px;text-align:left;cursor:pointer;box-shadow:0 14px 34px rgba(15,23,42,.10)}
.hmp-upload-btn:hover{border-color:var(--accent,#1877f2);box-shadow:0 18px 40px rgba(15,23,42,.16);transform:translateY(-1px)}
.hmp-upload-btn > span{grid-area:icon;width:44px;height:44px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#8b5cf6);color:#fff;font-size:24px;font-weight:950;line-height:1}
.hmp-upload-btn strong{grid-area:title;font-size:.96rem;font-weight:950;line-height:1.1}
.hmp-upload-btn small{grid-area:copy;color:var(--muted,#64748b);font-size:.78rem;font-weight:800;line-height:1.2}
.hmp-grid{display:grid;gap:12px}
.hmp-image-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}
.hmp-sticker-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}
.hmp-image-tile,.hmp-sticker-tile{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;border:1px solid var(--line,#dbe3ef);border-radius:16px;background:color-mix(in srgb,var(--card,#fff) 90%,var(--bg,#f8fafc));padding:10px;cursor:pointer;min-height:132px;color:var(--text,#172033)}
.hmp-image-tile:hover,.hmp-sticker-tile:hover{border-color:var(--accent,#1877f2);box-shadow:0 14px 32px rgba(15,23,42,.15);transform:translateY(-1px)}
.hmp-image-tile img,.hmp-image-tile video{width:100%;height:96px;object-fit:cover;border-radius:12px;background:#f8fafc}
.hmp-sticker-tile img{width:72px;height:72px;object-fit:contain}
.hmp-image-tile span,.hmp-sticker-tile span{font-size:.76rem;font-weight:800;color:var(--muted,#64748b);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hmp-image-tile small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:800;color:color-mix(in srgb,var(--muted,#64748b) 78%,transparent)}
.hmp-sticker-set-tabs{display:flex;gap:8px;overflow:auto;padding:0 0 12px;margin-bottom:12px;border-bottom:1px solid var(--line,#e5e7eb)}
.hmp-load{display:block;margin:14px auto 0;border:0;border-radius:999px;background:var(--button-bg,#111827);color:var(--button-text,#fff);padding:10px 18px;font-weight:900;cursor:pointer}
.hmp-empty,.hmp-error,.hmp-sticker-loading{padding:18px;border-radius:16px;background:color-mix(in srgb,var(--muted,#64748b) 10%,var(--card,#fff));color:var(--muted,#64748b);font-weight:800;text-align:center}
.hmp-empty.hidden{display:none}
.hmp-error{color:#b91c1c;background:#fee2e2}
.messenger-picked-preview,.mp-picked-preview,.chat-picked-preview{display:flex;align-items:center;gap:10px;margin:8px 0 0;padding:8px 10px;border-radius:14px;background:color-mix(in srgb,var(--card,#fff) 88%,var(--bg,#f0f2f5));border:1px solid var(--line,#dbe3ef)}
.messenger-picked-preview img,.messenger-picked-preview video,.mp-picked-preview img,.mp-picked-preview video,.chat-picked-preview img,.chat-picked-preview video{width:54px;height:54px;object-fit:cover;border-radius:12px;background:#fff}
.messenger-picked-preview.is-sticker img,.mp-picked-preview.is-sticker img,.chat-picked-preview.is-sticker img{object-fit:contain}
.messenger-picked-preview button,.mp-picked-preview button,.chat-picked-preview button{margin-left:auto;border:0;border-radius:999px;background:var(--button-bg,#111827);color:var(--button-text,#fff);padding:7px 10px;font-weight:800;cursor:pointer}
.hmoob-media-tools{display:flex;align-items:center;gap:7px}
.hmoob-media-tool-btn{border:0;border-radius:999px;background:color-mix(in srgb,var(--button-bg,#111827) 92%,transparent);color:var(--button-text,#fff);font-weight:900;padding:9px 11px;cursor:pointer;white-space:nowrap}
.messenger-message-sticker,.mp-message-sticker,.chat-msg-sticker{display:flex;align-items:center;margin-top:8px}
.messenger-message-sticker img,.mp-message-sticker img,.chat-msg-sticker img{width:min(132px,42vw);max-height:132px;object-fit:contain;border-radius:16px;background:color-mix(in srgb,var(--card,#fff) 72%,transparent);box-shadow:0 10px 26px rgba(15,23,42,.12)}
.chat-msg-sticker img{width:min(118px,36vw);max-height:118px}
.messenger-send .hmoob-media-tools,.mp-send .hmoob-media-tools,.chat-compose .hmoob-media-tools{flex-wrap:wrap}
@media(max-width:680px){
  .hmoob-media-picker{padding:10px;align-items:flex-end}
  .hmoob-media-picker-dialog{width:100%;max-height:88vh;border-radius:18px}
  .hmp-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hmp-sticker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .messenger-message-sticker img,.mp-message-sticker img,.chat-msg-sticker img{width:104px;max-height:104px}
}
