/* LOL242 Reactions. All text solid #111. Brand: aquamarine #17b8b4, gold #f6c22d, black #111. */

.lol242rx-postbar{margin:1rem 0;padding:.6rem 0;border-top:2px solid #17b8b4;border-bottom:2px solid #17b8b4}
.lol242rx-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:.35rem 0 0;color:#111;font-size:.95rem;line-height:1.2;position:relative}
.lol242rx-bar--comment{font-size:.85rem}
.lol242rx-btn{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:.35rem;min-height:36px;padding:.3rem .75rem;border:2px solid #111;border-radius:999px;background:#fff;color:#111!important;font:inherit;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}
.lol242rx-bar--comment .lol242rx-btn{min-height:30px;padding:.15rem .6rem}
.lol242rx-btn:hover{background:#e6fbfa}
.lol242rx-btn:focus-visible{outline:3px solid #f6c22d;outline-offset:2px}
.lol242rx-btn.is-on{background:#17b8b4;border-color:#111}
.lol242rx-btn__icon{display:inline-flex;width:1.45em;height:1.45em}
.lol242rx-btn__icon.is-pop{animation:lol242rx-pop .45s cubic-bezier(.3,1.6,.5,1)}
.lol242rx-btn__label{color:#111}
.lol242rx-ico{width:100%;height:100%;display:block;overflow:visible}
.lol242rx-ico--idle{filter:saturate(.9)}
.lol242rx-sum{display:inline-flex;align-items:center;gap:.3rem;color:#111;font-weight:700}
.lol242rx-sum__icons{display:inline-flex}
.lol242rx-sum__icons .lol242rx-ico{width:1.35em;height:1.35em;margin-left:-.35em;background:#fff;border-radius:50%}
.lol242rx-sum__icons .lol242rx-ico:first-child{margin-left:0}
.lol242rx-note{flex-basis:100%;color:#111;font-weight:600;font-size:.85em}

.lol242rx-picker{position:absolute;z-index:99999;display:flex;gap:2px;padding:6px 8px;background:#fff;border:2px solid #111;border-radius:999px;box-shadow:0 6px 0 #17b8b4,0 10px 24px rgba(0,0,0,.18);max-width:calc(100vw - 12px);box-sizing:border-box}
.lol242rx-picker[hidden]{display:none}
.lol242rx-picker.is-in{animation:lol242rx-rise .22s ease-out}
.lol242rx-pick{all:unset;position:relative;display:block;width:38px;height:38px;cursor:pointer;transition:transform .15s;-webkit-tap-highlight-color:transparent}
.lol242rx-pick .lol242rx-ico{width:100%;height:100%}
.lol242rx-pick:hover,.lol242rx-pick:focus-visible{transform:translateY(-8px) scale(1.3)}
.lol242rx-pick:focus-visible{outline:3px solid #f6c22d;border-radius:50%}
.lol242rx-pick__tip{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:6px;padding:2px 7px;background:#111;color:#fff;font:700 11px/1.4 Arial,Helvetica,sans-serif;border-radius:999px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}
.lol242rx-pick:hover .lol242rx-pick__tip,.lol242rx-pick:focus-visible .lol242rx-pick__tip{opacity:1}
@media (max-width:380px){.lol242rx-pick{width:33px;height:33px}.lol242rx-picker{padding:5px 6px}}

/* per-emoji hover animations */
.lol242rx-pick:hover .lol242rx-ico--like,.lol242rx-pick:focus-visible .lol242rx-ico--like{animation:lol242rx-tilt .5s ease-in-out infinite alternate;transform-origin:30% 80%}
.lol242rx-pick:hover .lol242rx-ico--love,.lol242rx-pick:focus-visible .lol242rx-ico--love{animation:lol242rx-beat .6s ease-in-out infinite}
.lol242rx-pick:hover .lol242rx-ico--care,.lol242rx-pick:focus-visible .lol242rx-ico--care{animation:lol242rx-hug .7s ease-in-out infinite}
.lol242rx-pick:hover .lol242rx-ico--haha,.lol242rx-pick:focus-visible .lol242rx-ico--haha{animation:lol242rx-laugh .25s ease-in-out infinite alternate}
.lol242rx-pick:hover .lol242rx-ico--wow,.lol242rx-pick:focus-visible .lol242rx-ico--wow{animation:lol242rx-wow .6s ease-out infinite alternate}
.lol242rx-pick:hover .lol242rx-ico--sad .lol242rx-i-tear,.lol242rx-pick:focus-visible .lol242rx-ico--sad .lol242rx-i-tear{animation:lol242rx-tear 1s ease-in infinite}
.lol242rx-pick:hover .lol242rx-ico--angry,.lol242rx-pick:focus-visible .lol242rx-ico--angry{animation:lol242rx-shake .12s linear infinite}
.lol242rx-pick:hover .lol242rx-i-steam,.lol242rx-pick:focus-visible .lol242rx-i-steam{animation:lol242rx-steam .6s ease-out infinite}
.lol242rx-pick:hover .lol242rx-i-him,.lol242rx-pick:focus-visible .lol242rx-i-him{animation:lol242rx-hop .32s ease-in-out infinite alternate}
.lol242rx-pick:hover .lol242rx-i-her,.lol242rx-pick:focus-visible .lol242rx-i-her{animation:lol242rx-hop .32s ease-in-out infinite alternate-reverse}
.lol242rx-i-hib,.lol242rx-i-steam,.lol242rx-i-him,.lol242rx-i-her,.lol242rx-i-tear{transform-box:fill-box;transform-origin:center}

@keyframes lol242rx-pop{0%{transform:scale(.4)}60%{transform:scale(1.35)}100%{transform:scale(1)}}
@keyframes lol242rx-rise{from{opacity:0;transform:translateY(8px) scale(.9)}to{opacity:1;transform:none}}
@keyframes lol242rx-tilt{from{transform:rotate(-12deg)}to{transform:rotate(10deg)}}
@keyframes lol242rx-beat{0%,100%{transform:scale(1)}30%{transform:scale(1.18)}60%{transform:scale(.95)}}
@keyframes lol242rx-hug{0%,100%{transform:scale(1)}50%{transform:scale(1.1,.94)}}
@keyframes lol242rx-laugh{from{transform:translateY(0) rotate(-6deg)}to{transform:translateY(-3px) rotate(6deg)}}
@keyframes lol242rx-wow{from{transform:scale(1)}to{transform:scale(1.14)}}
@keyframes lol242rx-tear{0%{transform:translateY(0);opacity:1}100%{transform:translateY(10px);opacity:0}}
@keyframes lol242rx-shake{0%{transform:translateX(-1.5px)}50%{transform:translateX(1.5px)}100%{transform:translateX(-1.5px)}}
@keyframes lol242rx-steam{from{transform:translateY(2px) scale(.8);opacity:.4}to{transform:translateY(-4px) scale(1.1);opacity:1}}
@keyframes lol242rx-hop{from{transform:translateY(0)}to{transform:translateY(-4px)}}

/* comment box */
.lol242rx-count{margin:.25rem 0 0;text-align:right;color:#111!important;font-weight:700;font-size:.85rem}
.lol242rx-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* Bahama Drama stage */
.lol242rx-stage{position:fixed;left:50%;bottom:12px;z-index:100000;width:min(320px,86vw);transform:translate(-50%,130%);opacity:0;pointer-events:none;transition:transform .35s cubic-bezier(.3,1.4,.5,1),opacity .3s;background:#fff;border:3px solid #111;border-radius:18px;box-shadow:0 6px 0 #f6c22d,0 12px 30px rgba(0,0,0,.25);padding:6px 6px 2px}
.lol242rx-stage.is-on{transform:translate(-50%,0);opacity:1}
.lol242rx-dance{display:block;width:100%;height:auto}
.lol242rx-dance g{transform-box:fill-box}
.lol242rx-d-leg,.lol242rx-d-arm{transform-origin:50% 6%}
.lol242rx-d-him,.lol242rx-d-her,.lol242rx-d-himwrap,.lol242rx-d-herwrap,.lol242rx-d-skirt{transform-origin:50% 100%}
.lol242rx-d-sp,.lol242rx-d-note{transform-box:fill-box;transform-origin:center;opacity:0}
.is-dancing .lol242rx-d-him{animation:lol242rx-bob .3125s ease-in-out infinite alternate}
.is-dancing .lol242rx-d-himwrap{animation:lol242rx-slide-r 5.2s ease-in-out 1}
.is-dancing .lol242rx-d-her{animation:lol242rx-bob .3125s ease-in-out infinite alternate-reverse}
.is-dancing .lol242rx-d-herwrap{animation:lol242rx-spin 5.2s ease-in-out 1}
.is-dancing .lol242rx-d-leg--a{animation:lol242rx-kick-a .3125s ease-in-out infinite alternate}
.is-dancing .lol242rx-d-leg--b{animation:lol242rx-kick-b .3125s ease-in-out infinite alternate}
.is-dancing .lol242rx-d-arm--a{animation:lol242rx-swing-a .625s ease-in-out infinite alternate}
.is-dancing .lol242rx-d-arm--b{animation:lol242rx-swing-b .625s ease-in-out infinite alternate}
.is-dancing .lol242rx-d-skirt{animation:lol242rx-twirl .625s ease-in-out infinite alternate}
.is-dancing .lol242rx-d-sp{animation:lol242rx-spark .625s ease-out infinite}
.is-dancing .lol242rx-d-sp--2{animation-delay:.156s}.is-dancing .lol242rx-d-sp--3{animation-delay:.3125s}.is-dancing .lol242rx-d-sp--4{animation-delay:.47s}.is-dancing .lol242rx-d-sp--5{animation-delay:.2s;animation-duration:1.25s}
.is-dancing .lol242rx-d-note{animation:lol242rx-note 1.25s ease-out infinite}
.is-dancing .lol242rx-d-note--2{animation-delay:.6s}
.is-calm .lol242rx-d-him,.is-calm .lol242rx-d-her{animation:lol242rx-bob .5s ease-in-out 2 alternate}
.is-calm .lol242rx-d-sp{opacity:1}
@keyframes lol242rx-bob{from{transform:translateY(0)}to{transform:translateY(-5px)}}
@keyframes lol242rx-kick-a{from{transform:rotate(-4deg)}to{transform:rotate(24deg)}}
@keyframes lol242rx-kick-b{from{transform:rotate(-22deg)}to{transform:rotate(4deg)}}
@keyframes lol242rx-swing-a{from{transform:rotate(20deg)}to{transform:rotate(120deg)}}
@keyframes lol242rx-swing-b{from{transform:rotate(-110deg)}to{transform:rotate(-15deg)}}
@keyframes lol242rx-twirl{from{transform:skewX(-6deg)}to{transform:skewX(6deg)}}
@keyframes lol242rx-spin{0%,40%{transform:scaleX(1)}47%{transform:scaleX(-1)}54%,100%{transform:scaleX(1)}}
@keyframes lol242rx-slide-r{0%,100%{transform:translateX(0)}50%{transform:translateX(10px)}}
@keyframes lol242rx-spark{0%{opacity:0;transform:scale(.2) rotate(0)}40%{opacity:1;transform:scale(1.2) rotate(45deg)}100%{opacity:0;transform:scale(.6) rotate(90deg)}}
@keyframes lol242rx-note{0%{opacity:0;transform:translateY(8px)}30%{opacity:1}100%{opacity:0;transform:translateY(-16px) rotate(12deg)}}

@media (prefers-reduced-motion:reduce){
  .lol242rx-pick,.lol242rx-stage{transition:none}
  .lol242rx-pick:hover *,.lol242rx-pick:focus-visible *,.lol242rx-btn__icon.is-pop,.lol242rx-picker.is-in{animation:none!important}
}

/* Site Visitors board: dark dashboard look. All text white or bright, never gray. */
.lol242rx-vb{background:#242526;color:#fff;border-radius:16px;padding:16px;margin:1rem 0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.3;max-width:720px}
.lol242rx-vb *{box-sizing:border-box}
.lol242rx-vb-title{font-size:1.5rem;font-weight:800;color:#fff;margin:0 0 .75rem}
.lol242rx-vb-title a{color:#fff!important;text-decoration:none}
.lol242rx-vb-tabs{display:flex;gap:.4rem;margin:0 0 .85rem;flex-wrap:wrap}
.lol242rx-vb-tab{all:unset;cursor:pointer;padding:.5rem 1rem;border-radius:999px;color:#fff;font-weight:600;font-size:1rem;-webkit-tap-highlight-color:transparent}
.lol242rx-vb-tab.is-on{background:#2374e1;color:#fff}
.lol242rx-vb-tab:focus-visible{outline:2px solid #fff;outline-offset:2px}
.lol242rx-vb-panel[hidden]{display:none}
.lol242rx-vb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lol242rx-vb-card{background:#242526;border:1px solid #4a4c4f;border-radius:14px;padding:12px 14px;min-width:0}
.lol242rx-vb-label{color:#fff;font-size:.95rem;font-weight:500;margin-bottom:4px}
.lol242rx-vb-row{display:flex;align-items:baseline;justify-content:space-between;gap:.4rem;flex-wrap:wrap}
.lol242rx-vb-num{color:#fff;font-size:1.45rem;font-weight:800;overflow-wrap:anywhere}
.lol242rx-vb-card:last-child .lol242rx-vb-num{font-size:1.1rem}
.lol242rx-vb-chg{color:#fff;font-weight:700;font-size:1.05rem;white-space:nowrap}
.lol242rx-vb-chg.is-up{color:#4ade80}
.lol242rx-vb-chg.is-down{color:#ff6b6b}
.lol242rx-vb-h{color:#fff!important;font-size:1.1rem;font-weight:800;margin:1.1rem 0 .5rem}
.lol242rx-vb-bars{list-style:none;margin:0;padding:0}
.lol242rx-vb-bars li{margin:0 0 .6rem;padding:0}
.lol242rx-vb-bar-top{display:flex;align-items:center;gap:.45rem;color:#fff;font-size:.95rem}
.lol242rx-vb-name{flex:1;min-width:0;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lol242rx-vb-pct{color:#fff;font-weight:700}
.lol242rx-vb-track{height:8px;background:#3a3b3c;border-radius:999px;margin-top:4px;overflow:hidden}
.lol242rx-vb-track span{display:block;height:100%;background:#2d88ff;border-radius:999px}
.lol242rx-vb-empty,.lol242rx-vb-foot{color:#fff;font-size:.85rem;margin:.75rem 0 0}
.lol242rx-vb--compact{padding:12px}
.lol242rx-vb--compact .lol242rx-vb-title{font-size:1.1rem}
.lol242rx-vb--compact .lol242rx-vb-bars{margin-top:.75rem}

.lol242rx-badge{position:fixed;left:10px;bottom:10px;z-index:99990;display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .7rem;background:#242526;color:#fff!important;border:1px solid #4a4c4f;border-radius:999px;font:600 13px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;text-decoration:none!important;box-shadow:0 4px 12px rgba(0,0,0,.25)}
.lol242rx-badge:hover,.lol242rx-badge:focus{background:#2374e1;color:#fff!important}
.lol242rx-badge__n{font-weight:800;color:#fff}
@media print{.lol242rx-badge{display:none}}

/* Public counter bar (Facebook style). Solid black text. */
.lol242rx-meta{margin:.4rem 0 .8rem}
.lol242rx-meta--bd{margin:.5rem 0 0;padding:0 1rem}
.lol242rx-cbar{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem .1rem;color:#111;font:600 .92rem/1.35 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.lol242rx-cbar *{color:#111!important}
.lol242rx-cbar__item{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}
.lol242rx-cbar__item+.lol242rx-cbar__item::before{content:"·";margin:0 .4rem 0 .3rem;font-weight:800;color:#111}
.lol242rx-cbar__icons{display:inline-flex}
.lol242rx-cbar__icons:empty{display:none}
.lol242rx-cbar__icons .lol242rx-ico{width:1.3em;height:1.3em;margin-left:-.3em;background:#fff;border-radius:50%}
.lol242rx-cbar__icons .lol242rx-ico:first-child{margin-left:0}
.lol242rx-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* v1.1 "chosen" celebrations. Fixed overlay: no layout shift. Transforms/opacity only. */
.lol242rx-fx{position:fixed;inset:0;pointer-events:none;z-index:100002;overflow:hidden}
.lol242rx-fx-box{position:absolute;width:0;height:0}
.lol242rx-fx-ico{position:absolute;left:0;top:0;transform-origin:50% 50%;will-change:transform}
.lol242rx-fx-ico,.lol242rx-fx-in{display:block}
.lol242rx-fx-ico{margin:0}
.lol242rx-fx-box .lol242rx-fx-ico{translate:-50% -50%}
.lol242rx-fx-in{width:100%;height:100%;transform-origin:50% 50%;will-change:transform,filter}
.lol242rx-fx-in .lol242rx-ico{width:100%;height:100%}
.is-go .lol242rx-fx-ico--like .lol242rx-fx-in{animation:lol242rx-c-like 1.8s cubic-bezier(.3,1.4,.5,1) both}
.is-go .lol242rx-fx-ico--love .lol242rx-fx-in{animation:lol242rx-c-love 1.9s ease-in-out both}
.is-go .lol242rx-fx-ico--care .lol242rx-fx-in{animation:lol242rx-c-care 1.9s ease-in-out both}
.is-go .lol242rx-fx-ico--haha .lol242rx-fx-in{animation:lol242rx-c-haha 1.9s ease-in-out both}
.is-go .lol242rx-fx-ico--wow .lol242rx-fx-in{animation:lol242rx-c-wow 1.7s cubic-bezier(.3,1.5,.5,1) both}
.is-go .lol242rx-fx-ico--sad .lol242rx-fx-in{animation:lol242rx-c-sad 2.2s ease-in-out both}
.is-go .lol242rx-fx-ico--angry .lol242rx-fx-in{animation:lol242rx-c-angry 1.8s linear both}
.is-go .lol242rx-fx-ico--drama .lol242rx-fx-in{animation:lol242rx-c-drama 1.3s cubic-bezier(.3,1.4,.5,1) both}
.is-calm.is-go .lol242rx-fx-ico .lol242rx-fx-in{animation:lol242rx-c-calm .6s ease-in-out both}
@keyframes lol242rx-c-like{0%{transform:scale(1)}14%{transform:translateY(-55%) scale(2.7) rotate(-14deg)}26%{transform:translateY(-20%) scale(2.2) rotate(8deg)}38%{transform:translateY(-50%) scale(2.5) rotate(-6deg)}50%{transform:translateY(-30%) scale(2.3) rotate(4deg)}75%{transform:translateY(-35%) scale(2.4)}100%{transform:none}}
@keyframes lol242rx-c-love{0%{transform:scale(1)}10%{transform:scale(2.2)}18%{transform:scale(1.8)}26%{transform:scale(2.6)}34%{transform:scale(2)}42%{transform:scale(2.8)}55%{transform:scale(2.3) rotate(-6deg)}70%{transform:scale(2.4) rotate(6deg)}100%{transform:none}}
@keyframes lol242rx-c-care{0%{transform:scale(1)}15%{transform:scale(2.4)}25%{transform:scale(2.8,2)}35%{transform:scale(2.1,2.6) rotate(-8deg)}45%{transform:scale(2.7,2.1) rotate(8deg)}55%{transform:scale(2.2,2.5) rotate(-5deg)}70%{transform:scale(2.4)}100%{transform:none}}
@keyframes lol242rx-c-haha{0%{transform:scale(1)}12%{transform:translateY(-40%) scale(2.4) rotate(-25deg)}24%{transform:translateY(-10%) scale(2.3) rotate(25deg)}36%{transform:translateY(-45%) scale(2.4) rotate(-20deg)}48%{transform:translateY(-10%) scale(2.3) rotate(20deg)}60%{transform:translateY(-40%) scale(2.4) rotate(360deg)}78%{transform:translateY(-20%) scale(2.3) rotate(360deg)}100%{transform:rotate(360deg)}}
@keyframes lol242rx-c-wow{0%{transform:scale(1)}12%{transform:translateY(-30%) scale(3)}24%{transform:translate(0,-10%) scale(2.2,2.6)}40%{transform:translateY(-35%) scale(2.6)}70%{transform:translateY(-25%) scale(2.5)}100%{transform:none}}
@keyframes lol242rx-c-sad{0%{transform:scale(1)}20%{transform:translateY(-10%) scale(2.3)}55%{transform:translateY(-5%) scale(2.2) rotate(-4deg)}62%{transform:translateY(-5%) scale(2.2) translateX(-6%)}68%{transform:translateY(-5%) scale(2.2) translateX(6%)}74%{transform:translateY(-5%) scale(2.2) translateX(-4%)}82%{transform:translateY(-5%) scale(2.2)}100%{transform:none}}
@keyframes lol242rx-c-angry{0%{transform:scale(1);filter:none}12%{transform:scale(2.5);filter:saturate(1.4)}16%,24%,32%,40%,48%,56%{transform:scale(2.5) translateX(-7%) rotate(-4deg);filter:saturate(1.9) hue-rotate(-12deg) brightness(.9)}20%,28%,36%,44%,52%,60%{transform:scale(2.5) translateX(7%) rotate(4deg);filter:saturate(1.9) hue-rotate(-12deg) brightness(.9)}75%{transform:scale(2.4);filter:saturate(1.6) hue-rotate(-10deg)}100%{transform:none;filter:none}}
@keyframes lol242rx-c-drama{0%{transform:scale(.2) rotate(-200deg)}45%{transform:scale(2.8) rotate(20deg)}65%{transform:scale(2.3) rotate(-8deg)}80%{transform:scale(2.4)}100%{transform:none}}
@keyframes lol242rx-c-calm{0%,100%{transform:none}50%{transform:scale(1.3)}}

.lol242rx-p{position:absolute;left:0;top:0;display:block;width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);opacity:0;will-change:transform,opacity;animation:lol242rx-p-out var(--t) cubic-bezier(.2,.7,.3,1) var(--dl) both}
.lol242rx-p svg{display:block;width:100%;height:100%}
.lol242rx-p--conf{height:calc(var(--s) * .55);border-radius:2px}
.lol242rx-p--fall{animation-name:lol242rx-p-fall}
.lol242rx-p--rise{animation-name:lol242rx-p-rise;animation-timing-function:ease-out}
.lol242rx-p--wink{animation-name:lol242rx-p-wink}
.lol242rx-p--ring{border:3px solid #17b8b4;border-radius:50%;box-shadow:0 0 0 2px #111;animation-name:lol242rx-p-ring}
.lol242rx-p--cloud{width:var(--s);height:calc(var(--s) * .6);margin:calc(var(--s) * -.3) 0 0 calc(var(--s) / -2);animation-name:lol242rx-p-cloud;animation-timing-function:ease-in-out}
.lol242rx-p--rain{animation-name:lol242rx-p-rain;animation-timing-function:ease-in}
.lol242rx-p--ha{width:auto;height:auto;margin:-.7em 0 0 -1em;padding:.1em .45em;background:#fff;border:2px solid #111;border-radius:999px;color:#111;font:900 13px/1.2 Arial,Helvetica,sans-serif;white-space:nowrap}
@keyframes lol242rx-p-out{0%{opacity:0;transform:translate(0,0) scale(.3)}15%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1) rotate(var(--r))}}
@keyframes lol242rx-p-fall{0%{opacity:0;transform:translate(0,0) scale(.4)}12%{opacity:1}50%{opacity:1;transform:translate(var(--dx),var(--dy)) rotate(calc(var(--r) / 2))}100%{opacity:0;transform:translate(calc(var(--dx) * 1.15),calc(var(--dy) + 70px)) rotate(var(--r))}}
@keyframes lol242rx-p-rise{0%{opacity:0;transform:translate(0,0) scale(.4)}15%{opacity:1}50%{transform:translate(calc(var(--dx) * .5 + 8px),calc(var(--dy) * .5)) scale(1) rotate(var(--r))}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.1) rotate(calc(var(--r) * -1))}}
@keyframes lol242rx-p-wink{0%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(0) rotate(0)}40%{opacity:1;transform:translate(var(--dx),var(--dy)) scale(1.3) rotate(90deg)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(0) rotate(180deg)}}
@keyframes lol242rx-p-ring{0%{opacity:.95;transform:scale(.6)}100%{opacity:0;transform:scale(3.6)}}
@keyframes lol242rx-p-cloud{0%{opacity:0;transform:translate(-90px,var(--dy))}25%{opacity:1;transform:translate(0,var(--dy))}80%{opacity:1;transform:translate(0,var(--dy))}100%{opacity:0;transform:translate(60px,var(--dy))}}
@keyframes lol242rx-p-rain{0%{opacity:0;transform:translate(var(--dx),var(--dy))}20%{opacity:1}100%{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 55px))}}

.lol242rx-sum__n.is-bump,.lol242rx-cbar__n.is-bump{display:inline-block;animation:lol242rx-bump .5s cubic-bezier(.3,1.6,.5,1)}
@keyframes lol242rx-bump{0%{transform:scale(1)}40%{transform:scale(1.6)}100%{transform:scale(1)}}
.lol242rx-plus{position:absolute;translate:-50% -100%;padding:1px 7px;background:#f6c22d;border:2px solid #111;border-radius:999px;color:#111;font:900 13px/1.2 Arial,Helvetica,sans-serif;animation:lol242rx-plus 1.1s ease-out both}
.lol242rx-plus.is-calm{animation-name:lol242rx-plus-calm}
@keyframes lol242rx-plus{0%{opacity:0;transform:translateY(6px) scale(.5)}20%{opacity:1;transform:translateY(-6px) scale(1.15)}100%{opacity:0;transform:translateY(-34px) scale(1)}}
@keyframes lol242rx-plus-calm{0%,100%{opacity:0}30%,70%{opacity:1}}
@media (prefers-reduced-motion:reduce){.lol242rx-sum__n.is-bump,.lol242rx-cbar__n.is-bump{animation:none}}

/* v1.2: hide the old WP ULike "+1" wherever the new reaction bar is on the page (posts, Bahama Drama). Data untouched. */
body:has(.lol242rx-bar) .wpulike,body:has(.lol242rx-bar) .wp_ulike_general_class,body:has(.lol242rx-cbar) .wpulike,body:has(.lol242rx-cbar) .wp_ulike_general_class{display:none!important}

/* ===== v1.4: always-visible 8-reaction row, comment "React" sheet, theme-proof buttons ===== */
.lol242rx-rowwrap{margin:.6rem 0 .4rem;container-type:inline-size}
.lol242rx-row__head{margin:0 0 .35rem!important;color:#111!important;font:800 1rem/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important}
.lol242rx-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;padding:6px;border:2px solid #111;border-radius:14px;background:#fff}
@container (max-width:339px){.lol242rx-row{grid-template-columns:repeat(4,minmax(0,1fr))}}
@supports not (container-type:inline-size){@media (max-width:339px){.lol242rx-row{grid-template-columns:repeat(4,minmax(0,1fr))}}}
.lol242rx-row .lol242rx-rbtn,.lol242rx-sheet .lol242rx-sbtn{appearance:none!important;-webkit-appearance:none!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:2px!important;min-width:0!important;width:100%!important;min-height:56px!important;margin:0!important;padding:5px 1px 4px!important;background:#fff!important;color:#111!important;border:2px solid transparent!important;border-radius:12px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;font:600 11px/1.1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:transform .12s}
.lol242rx-row .lol242rx-rbtn:focus,.lol242rx-sheet .lol242rx-sbtn:focus{background:#fff!important;color:#111!important}
@media (hover:hover) and (pointer:fine){.lol242rx-row .lol242rx-rbtn:hover,.lol242rx-sheet .lol242rx-sbtn:hover{background:#e6fbfa!important}}
.lol242rx-row .lol242rx-rbtn:active,.lol242rx-sheet .lol242rx-sbtn:active{transform:scale(.94)}
.lol242rx-row .lol242rx-rbtn:focus-visible,.lol242rx-sheet .lol242rx-sbtn:focus-visible{outline:3px solid #f6c22d!important;outline-offset:1px}
.lol242rx-row .lol242rx-rbtn.is-on,.lol242rx-sheet .lol242rx-sbtn.is-on{background:#c8f3f1!important;border-color:#111!important}
.lol242rx-row .lol242rx-rbtn--drama:not(.is-on){box-shadow:inset 0 0 0 2px #f6c22d!important}
.lol242rx-rbtn__ico{display:block;width:28px;height:28px;flex:none}
@container (min-width:400px){.lol242rx-rbtn__ico{width:32px;height:32px}.lol242rx-row .lol242rx-rbtn{font-size:12px!important}}
.lol242rx-rbtn__lab{display:block;color:#111!important;font-size:inherit;text-align:center;overflow-wrap:anywhere;hyphens:none}
.lol242rx-rbtn__n,.lol242rx-sbtn__n{display:block;min-height:1.15em;color:#111!important;font:800 12.5px/1.15 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;font-variant-numeric:tabular-nums}
.is-on .lol242rx-rbtn__n,.is-on .lol242rx-sbtn__n{text-decoration:underline;text-underline-offset:2px}
.lol242rx-row__you{min-height:1.3em;margin:.35rem 0 0!important;color:#111!important;font:700 .9rem/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important}
.lol242rx-row__you:not(:empty)::before{content:"✓ ";font-weight:900}
.lol242rx-rowwrap .lol242rx-note{display:block;color:#111}

/* comment bar: React button + summary, theme-proof */
.lol242rx-bar .lol242rx-btn,.lol242rx-bar .lol242rx-sum{appearance:none!important;-webkit-appearance:none!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;gap:.35rem!important;min-height:36px!important;margin:0!important;padding:.25rem .8rem!important;background:#fff!important;color:#111!important;border:2px solid #111!important;border-radius:999px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;font:700 .9rem/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.lol242rx-bar .lol242rx-sum{border-color:transparent!important;padding:.25rem .4rem!important}
.lol242rx-bar .lol242rx-sum:empty,.lol242rx-bar .lol242rx-sum:has(.lol242rx-sum__n:empty){visibility:hidden}
.lol242rx-bar .lol242rx-btn:hover,.lol242rx-bar .lol242rx-btn:focus{background:#e6fbfa!important;color:#111!important}
.lol242rx-bar .lol242rx-btn.is-on{background:#c8f3f1!important}
.lol242rx-bar .lol242rx-btn:focus-visible,.lol242rx-bar .lol242rx-sum:focus-visible{outline:3px solid #f6c22d!important;outline-offset:2px}

/* bottom sheet */
.lol242rx-sheet{position:fixed;inset:0;z-index:100001}
.lol242rx-sheet[hidden]{display:none}
.lol242rx-sheet__bg{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.lol242rx-sheet__panel{position:absolute;left:0;right:0;bottom:0;max-height:100dvh;overflow:auto;overscroll-behavior:contain;background:#fff;border-top:3px solid #111;border-radius:18px 18px 0 0;padding:14px 14px calc(14px + env(safe-area-inset-bottom));max-width:560px;margin:0 auto}
.lol242rx-sheet.is-in .lol242rx-sheet__panel{animation:lol242rx-sheet-up .22s ease-out}
@keyframes lol242rx-sheet-up{from{transform:translateY(100%)}to{transform:none}}
.lol242rx-sheet__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.lol242rx-sheet__t{margin:0!important;color:#111!important;font:800 1.15rem/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important}
.lol242rx-sheet .lol242rx-sheet__x{appearance:none!important;min-height:40px!important;padding:.3rem .9rem!important;margin:0!important;background:#fff!important;color:#111!important;border:2px solid #111!important;border-radius:999px!important;box-shadow:none!important;text-transform:none!important;font:700 .9rem/1 Arial,Helvetica,sans-serif!important;cursor:pointer}
.lol242rx-sheet__hint{margin:.4rem 0 .6rem!important;color:#111!important;font:600 .9rem/1.3 Arial,Helvetica,sans-serif!important}
.lol242rx-sheet__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.lol242rx-sheet .lol242rx-sbtn{min-height:84px!important;font-size:12.5px!important;border-color:#111!important;border-width:1px!important}
.lol242rx-sheet .lol242rx-sbtn.is-on{border-width:3px!important}
.lol242rx-sbtn__ico{display:block;width:40px;height:40px}
.lol242rx-sbtn__lab{display:block;color:#111!important;text-align:center}
html.lol242rx-noscroll{overflow:hidden}

/* comment box label + old-PPH fallback (pre-1.1 card markup) */
.lol242rx-clabel{display:block;margin:0 0 .3rem;color:#111!important;font-weight:700}
.bdpph-card:has(.lol242rx-cbar) .bdpph-card__tally,.bdpph-card:has(.lol242rx-cbar) button[data-bdpph-action="like"]{display:none!important}
.lol242rx-meta--card{margin:.5rem 0 .25rem;padding:0 1rem}
.bdpph-card .lol242rx-rowwrap{padding:0 .75rem}
@media (prefers-reduced-motion:reduce){.lol242rx-sheet.is-in .lol242rx-sheet__panel{animation:none}.lol242rx-row .lol242rx-rbtn{transition:none}}
.lol242rx-rbtn__lab{overflow-wrap:normal;word-break:keep-all}
.lol242rx-row .lol242rx-rbtn--drama .lol242rx-rbtn__lab{font-size:8.5px;line-height:1.05;letter-spacing:-.3px}
@container (min-width:440px){.lol242rx-row .lol242rx-rbtn--drama .lol242rx-rbtn__lab{font-size:10px}}

/* ===== v1.5: a row under every post card, labeled Share button, counters on cards ===== */
.lol242rx-postbar .lol242rx-sharewrap{margin:.5rem 0 0}
.lol242rx-cardbox{clear:both;box-sizing:border-box;width:100%;flex:1 1 100%;margin:.6rem 0 .2rem;padding:.55rem .6rem .5rem;background:#fff;border:2px solid #111;border-radius:14px;text-align:left}
.lol242rx-cardbox .lol242rx-meta--list{margin:0 0 .35rem}
.lol242rx-rowwrap--compact{margin:.2rem 0 .2rem}
.lol242rx-rowwrap--compact .lol242rx-row__head{font-size:.9rem!important;margin:0 0 .25rem!important}
.lol242rx-row--compact{gap:2px;padding:3px;border-width:1.5px;border-radius:12px}
.lol242rx-row.lol242rx-row--compact .lol242rx-rbtn{min-height:48px!important;padding:3px 0 2px!important;font-size:10.5px!important}
.lol242rx-row--compact .lol242rx-rbtn__ico{width:24px;height:24px}
@container (min-width:400px){.lol242rx-row--compact .lol242rx-rbtn__ico{width:26px;height:26px}}
.lol242rx-row.lol242rx-row--compact .lol242rx-rbtn__n{font-size:11.5px!important}
.lol242rx-rowwrap--compact .lol242rx-row__you{font-size:.82rem!important;margin:.2rem 0 0!important}
.lol242rx-rowwrap--compact .lol242rx-row__you:empty{min-height:0;margin:0!important}
.lol242rx-sharewrap{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:.35rem 0 0}
.lol242rx-sharewrap .lol242rx-sharebtn{appearance:none!important;-webkit-appearance:none!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;gap:.4rem!important;min-height:40px!important;margin:0!important;padding:.3rem 1rem .3rem .75rem!important;background:#fff!important;color:#111!important;border:2px solid #111!important;border-radius:999px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;font:800 .95rem/1.1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.lol242rx-sharewrap .lol242rx-sharebtn:focus-visible{outline:3px solid #f6c22d!important;outline-offset:2px}
@media (hover:hover) and (pointer:fine){.lol242rx-sharewrap .lol242rx-sharebtn:hover{background:#e6fbfa!important}}
.lol242rx-sharewrap .lol242rx-sharebtn:active{transform:scale(.96)}
.lol242rx-sharebtn__ico{display:block;width:22px;height:22px;flex:none}
.lol242rx-sharebtn__lab{color:#111!important}
.lol242rx-sharemsg{color:#111!important;font:700 .9rem/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;overflow-wrap:anywhere}
.lol242rx-sharemsg:not(:empty)::before{content:"✓ ";font-weight:900}
/* dark sections (Bahama Drama strip) force white text; our white boxes always keep solid black text */
html body .lol242rx-cardbox,html body .lol242rx-cardbox *,html body .lol242rx-postbar *,html body .lol242rx-rowwrap *,html body .lol242rx-sharewrap *,html body .lol242rx-cbar *{color:#111!important}
.lol242-item:has(>.lol242rx-cardbox){flex-wrap:wrap}
.lol-next__item .lol242rx-cardbox{margin-top:.4rem}
@media (prefers-reduced-motion:reduce){.lol242rx-sharewrap .lol242rx-sharebtn:active{transform:none}}
