/* Keep the reaction in the original still's framing: compensate the fixed
   1.024 safety crop used for stabilization. The static outer margin supplies
   the original background; feather only those edges, never the characters. */
#poule-reaction{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;z-index:1;pointer-events:none;transform:scale(0.9765625);transform-origin:50% 50%;mask-image:linear-gradient(to right,transparent,#000 14px,#000 calc(100% - 14px),transparent),linear-gradient(to bottom,transparent,#000 14px,#000 calc(100% - 14px),transparent);mask-composite:intersect}
#poule-hello{position:absolute;z-index:4;left:34%;top:55%;width:220px;height:180px;margin:0;padding:0;display:flex;align-items:flex-end;justify-content:center;border:0;border-radius:45%;background:transparent;color:#fff7df;cursor:pointer;touch-action:manipulation}
.poule-invitation{display:flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:11px 17px;border:1px solid #fff0c6a6;border-radius:28px;background:linear-gradient(120deg,#1c5561eb,#14333fe8);box-shadow:0 3px 18px #04263155,inset 0 1px #ffffff26;font-size:1.0625rem;white-space:nowrap;line-height:1.2;transition:background .2s,box-shadow .2s}
.poule-invitation svg{width:26px;height:26px;color:#f5dab0;fill:none;stroke:#f5dab0;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
#poule-hello:hover .poule-invitation,#poule-hello:focus-visible .poule-invitation{background:#29616df5;box-shadow:0 0 0 2px #ffe4a747,0 5px 25px #08242c70}
#poule-hello:focus-visible{outline:2px solid #ffedb8;outline-offset:8px}
#poule-hello[aria-pressed=true] .poule-invitation{opacity:0}
@media(min-width:1100px){body[data-scene=rencontre] .journey-panel.is-choice-panel{left:auto;right:3vw;transform:none;width:350px}body[data-scene=rencontre] .scene-choices{grid-template-columns:1fr 1fr;gap:7px}body[data-scene=rencontre] .arrival-option,body[data-scene=rencontre] .scene-choice.direction-next{min-height:134px;font-size:1.2rem;padding:16px 13px}}
@media(min-width:761px) and (max-width:1099px){body[data-scene=rencontre] .arrival-option,body[data-scene=rencontre] .scene-choice.direction-next{min-height:123px;font-size:1.2rem}body[data-scene=rencontre] .arrival-icon{top:8px;width:27px;height:27px}}
@media(max-width:760px){body[data-scene=rencontre]:not(.is-travelling) #scene-media,body[data-scene=rencontre] #poule-reaction{bottom:255px;height:calc(100% - 255px)}body[data-scene=rencontre] .arrival-option,body[data-scene=rencontre] .scene-choice.direction-next{min-height:105px;font-size:1.12rem}.poule-invitation{min-height:52px;font-size:1rem;padding:11px 16px}}
@media(max-width:760px) and (max-height:650px){body[data-scene=rencontre]:not(.is-travelling) #scene-media,body[data-scene=rencontre] #poule-reaction{bottom:0;height:100%}body[data-scene=rencontre] .arrival-option,body[data-scene=rencontre] .scene-choice.direction-next{min-height:82px}}
@media(min-width:600px) and (max-width:1099px) and (max-height:500px){body[data-scene=rencontre]:not(.is-travelling) #scene-media,body[data-scene=rencontre] #poule-reaction{right:320px;width:calc(100% - 320px);bottom:0;height:100%}body[data-scene=rencontre] .journey-panel.is-choice-panel{left:auto;right:12px;bottom:12px;transform:none;width:296px}body[data-scene=rencontre] .scene-choices{grid-template-columns:1fr 1fr;gap:6px}body[data-scene=rencontre] .arrival-option,body[data-scene=rencontre] .scene-choice.direction-next{min-height:105px;font-size:1.05rem;padding:12px}body[data-scene=rencontre] .arrival-icon{top:8px;width:24px;height:24px}}

@media(min-width:600px) and (max-width:1099px) and (max-height:500px){body[data-scene=rencontre] #sound-toggle{top:74px}}
