/* Pelqe.com v2.1.55: unselected reactions + instant non-blank photo/avatar placeholders. */
.v12-post .r2145-actions .reaction-control .reaction-open,
.r206-actions .r206-react-open { display:none!important }
.v12-post .r2145-actions .reaction-control form .action-button {padding-right:4px!important}
.v12-post .r2145-actions .reaction-control .action-button:not(.is-liked) {color:var(--ink,#1b2435)!important}
.v12-post .r2145-actions .reaction-control .action-button:not(.is-liked) .icon-thumbs-up {fill:none!important;stroke:currentColor!important}
.v12-post .r2145-actions .reaction-control .action-button.is-liked {color:var(--red,#ed1b2f)!important}
.v12-post .reaction-current:has(.icon-thumbs-up){display:inline-flex;align-items:center;justify-content:center}
.v12-post .reaction-current .icon-thumbs-up {width:22px;height:22px}
.v12-post .r2145-metrics [data-reaction-icons]:empty{display:none}
body[data-theme="dark"] .v12-post .r2145-actions .reaction-control .action-button:not(.is-liked) {color:var(--ink,#f8f9fb)!important}
/* Override generic dark-mode rules that paint ALL post SVG icons red. */
body[data-theme="dark"] .v192-icon-actions .reaction-control .action-button:not(.is-liked) svg {color:inherit!important;stroke:currentColor!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .v192-icon-actions .reaction-control .action-button:not(.is-liked) svg {color:inherit!important;stroke:currentColor!important}}
.r206-actions>.r206-like-group>.r206-like{flex:1 1 auto;max-width:100%;width:100%}
.r206-actions>.r206-like-group>.r206-like:not(.is-active){color:var(--r206-icon)!important}
.r206-like .reaction-current .icon-thumbs-up{width:23px;height:23px;fill:none!important;stroke:currentColor!important}
/* Avatar dimensions remain identical to the old <img class="avatar"> markup. */
.r2155-avatar{position:relative;overflow:hidden;isolation:isolate}
.r2155-avatar .r2155-avatar-initial{display:grid;place-items:center;position:absolute;inset:0;font:inherit;color:inherit;line-height:1}
.r2155-avatar>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:inherit;z-index:1;display:block}
.r2155-avatar>img[hidden]{display:none!important}
.r2155-avatar.is-loading>img{opacity:0}
.r2155-avatar.is-ready>img{opacity:1;transition:opacity .14s ease-out}
/* The skeleton appears instantly; an image appears only once it is ready. */
.v12-post .post-photo{position:relative;background:linear-gradient(110deg,#e7ebf1 12%,#f4f6fa 40%,#e7ebf1 70%);background-size:220% 100%}
.v12-post .post-photo.is-loading{animation:r2155-skeleton 1.25s linear infinite}
.v12-post .post-photo.is-loading img{opacity:0}
.v12-post .post-photo.is-ready img{opacity:1;transition:opacity .18s ease-out,transform .24s}
.v12-post .post-photo.is-failed{animation:none}
.r206-stage{background:linear-gradient(110deg,#1e2330,#343c4b,#1e2330);background-size:220% 100%}
.r206-stage:has(.r206-main-img:not(.is-ready)){animation:r2155-skeleton 1.25s linear infinite}
.r206-stage .r206-main-img:not(.is-ready){opacity:0}
.r206-stage .r206-main-img.is-ready{opacity:1;transition:opacity .18s ease-out}
@keyframes r2155-skeleton{from{background-position:180% 0}to{background-position:-40% 0}}
@media(prefers-reduced-motion:reduce){.v12-post .post-photo.is-loading,.r206-stage:has(.r206-main-img:not(.is-ready)){animation:none}}

/* Touch tap = like/unlike; holding reveals the picker without an arrow. */
@media (hover:none){
  .v12-post .reaction-control:not(.open) .reaction-picker{opacity:0!important;pointer-events:none!important;transform:translateY(8px)!important}
  .v12-post .reaction-control.open .reaction-picker{opacity:1!important;pointer-events:auto!important;transform:translateY(0)!important}
}

/* v2.1.56: A continuous hit area joins the button to the picker.
   Previously 5-7px gaps closed the picker as the pointer moved upward. */
.v12-post .reaction-control .reaction-picker{
  bottom:calc(100% - 2px)!important;
  z-index:70;
}
.r206-like-group .r206-reaction-picker{
  bottom:calc(100% - 2px)!important;
  z-index:70;
}
/* Keep the emoji tray interactive while moving toward an individual emoji. */
.v12-post .reaction-control:hover .reaction-picker,
.v12-post .reaction-control:focus-within .reaction-picker,
.v12-post .reaction-control.open .reaction-picker{
  opacity:1;pointer-events:auto;transform:translateY(0);
}

/* v2.1.57: Let browsers paint photo pixels immediately instead of intentionally
   holding them at opacity 0 until JavaScript runs. No "WS" initials flash. */
.r2155-avatar{background:#d9e0e8}
.r2155-avatar .r2155-avatar-initial{opacity:0}
.r2155-avatar.is-failed .r2155-avatar-initial{opacity:1}
.r2155-avatar>img,
.r2155-avatar.is-loading>img,
.r2155-avatar.is-ready>img{opacity:1!important;transition:none!important}
