/* Popup Figma; azioni e dati restano nei moduli PHP esistenti. */
button.prospect-route-marker, button.path-footprint { background: none; border: 0; padding: 0; color: inherit; }
button.prospect-route-marker:focus-visible, button.path-footprint:focus-visible, .pending-play-action:focus-visible { outline: 3px solid #0075b9; outline-offset: 4px; }
.play-result .modal-dialog { max-width: 790px; width: calc(100% - 30px); margin-inline: auto; }
.play-result .play-result-content { align-items: center; background: #fff; border: 0; border-radius: 0; box-shadow: 0 4px 15px #00000040; color: var(--ink); min-height: 516px; padding: 34px 40px 30px; text-align: center; }
.play-result .play-result-close { align-items: center; background: none; border: 0; color: var(--ink); display: flex; font-size: 14px; font-weight: 500; gap: 8px; padding: 0; position: absolute; right: 24px; top: 24px; z-index: 1; }
.play-result-close img { height: 24px; width: 24px; }
.play-result .play-result-art { flex-shrink: 0; height: 206px; position: relative; width: 582px; max-width: 100%; }
.play-result .play-result-prize { height: 100%; object-fit: contain; width: 100%; }
.play-result .play-result-content h2 { color: var(--ink); font-size: 28px; font-weight: 700; line-height: 34px; margin: 16px 0 24px; max-width: 601px; width: 100%; overflow-wrap: anywhere; }
.play-result .play-result-description { font-size: 18px; line-height: 24px; margin: 0; max-width: 710px; overflow-wrap: anywhere; }
.play-result .play-result-win h2 { margin-bottom: 32px; }
.play-result .play-result-win { min-height: 548px; padding-bottom: 32px; }
.play-result .play-result-win .play-result-description { min-height: 48px; }
.play-result .play-result-action { align-items: center; background: var(--ink); border: 1px solid var(--ink); border-radius: 4px; color: #fff; display: flex; font-size: 18px; font-weight: 700; min-height: 56px; justify-content: center; margin-top: 24px; max-width: 100%; padding: 8px 16px; text-decoration: none; width: 298px; }
.play-result-action:hover { background: var(--brand-red); border-color: var(--brand-red); color: #fff; }
.play-result-secondary { color: var(--ink); font-size: 14px; line-height: 20px; margin-top: 12px; text-decoration: underline; }
.play-result .play-result-sent { min-height: 462px; }
.play-result .play-result-sent h2 { margin-bottom: 31px; }
.play-result .play-result-friend, .play-result .play-result-invite { min-height: 480px; padding-top: 19px; }
.play-result .play-result-friend .play-result-art, .play-result .play-result-invite .play-result-art { height: 216px; width: 384px; }
.play-result .play-result-friends { height: 216px; object-fit: contain; width: 384px; max-width: 100%; }
.play-result .play-result-friend h2, .play-result .play-result-invite h2 { margin: 21px 0 8px; }
.play-result .play-result-friend .play-result-action { margin-top: 35px; }
.play-result .play-result-friend { min-height: 512px; padding-bottom: 43px; }
.play-result .play-result-friend .play-result-action { margin-top: auto; }
.play-result .play-result-invite .prospect-copy-link { background: none; border: 0; margin-top: 24px; max-width: 100%; overflow-wrap: anywhere; }
.play-result .play-result-loss { min-height: 558px; padding-top: 9px; }
.play-result .play-result-loss .play-result-art { height: 208px; width: 443px; }
.play-result .play-result-coin { height: 205px; left: 85px; position: absolute; top: 0; width: 272px; object-fit: contain; }
.play-result .play-result-star { position: absolute; }
.play-result .star-small { height: 28px; left: 7px; top: 124px; width: 28px; }
.play-result .star-large { height: 47px; right: -12px; top: 138px; width: 47px; }
.play-result .star-medium { height: 29px; right: -13px; top: 82px; width: 29px; }
.play-result .play-result-friend .star-small { top: 76px; }
.play-result .play-result-friend .star-large { top: 133px; }
.play-result .play-result-friend .star-medium { right: 21px; top: 114px; }
.play-result .play-result-footprints { display: flex; flex-shrink: 0; height: 98px; justify-content: space-between; max-width: 100%; width: 443px; }
.play-result .play-result-footprints .path-footprint { height: 98px; width: 65px; }
.play-result .play-result-footprints .path-token-coin { height: 72px; left: -3px; top: 3px; width: 72px; }
.play-result .play-result-footprints .path-token-check { height: 26px; right: -2px; top: 0; width: 26px; }
.play-result .play-result-footprints .path-token-pending { height: 74px; left: -4px; top: -2px; width: 74px; }
.play-result .play-result-footprints .path-footprint small { bottom: 0; display: block; font-size: 14px; left: 0; line-height: 18px; position: absolute; width: 100%; }
.play-result .play-result-loss h2 { margin: 24px 0 8px; }
.play-result .play-result-loss .play-result-action { margin-top: 52px; }
.play-result .play-result-message { min-height: 280px; padding-top: 75px; justify-content: center; }
.campaign-paw-modal .modal-dialog { max-width: 343px; }
.play-result .play-result-paw, .play-result .play-result-paw-friend { align-items: stretch; border-radius: 4px; box-shadow: 5px 5px 20px #000f201a; min-height: 340px; padding: 36px 18px 28px; text-align: left; }
.campaign-paw-modal .play-result-close { font-size: 16px; font-weight: 700; gap: 4px; }
.campaign-paw-modal .play-result-close span { text-decoration: underline; }
.campaign-paw-modal .play-result-art { align-self: center; height: 140px; width: 174px; }
.campaign-paw-modal .play-result-coin { height: 131px; left: 0; width: 174px; }
.campaign-paw-modal .play-result-badge { height: 40px; position: absolute; right: 18px; top: 4px; width: 40px; }
.campaign-paw-modal .play-result-paw-friend .play-result-badge { height: 50px; right: 0; top: 17px; width: 44px; object-fit: contain; }
.campaign-paw-modal .play-result-content h2 { font-size: 20px; line-height: 25px; margin: 12px 0 18px; }
.campaign-paw-modal .play-result-description { font-size: 16px; line-height: 21px; }
.campaign-paw-modal .play-result-content h2, .campaign-paw-modal .play-result-description { max-width: 295px; }
.campaign-paw-modal .play-result-paw-friend .play-result-art { height: 128px; }
.campaign-paw-modal .play-result-paw-friend h2 { margin-bottom: 16px; }
.campaign-game-modal .modal-dialog { max-width: 1302px; width: calc(100% - 64px); }
.play-result .play-result-game { min-height: 0; padding: 58px 0 20px; }
.play-result .play-result-content .game-modal-title { font-size: 18px; left: 24px; line-height: 24px; margin: 0; position: absolute; top: 24px; width: auto; }
.campaign-game-modal iframe { aspect-ratio: 1302 / 732; border: 0; display: block; max-height: 74vh; min-height: 280px; width: 100%; }
.game-modal-completion { width: 100%; }
.game-modal-completion a { margin-inline: auto; }
.play-result button:focus-visible, .play-result a:focus-visible { outline: 3px solid #0075b9; outline-offset: 4px; }
@media (max-width: 767.98px) {
    .play-result .play-result-content { min-height: 471px; padding: 65px 23px 30px; }
    .play-result .play-result-close { right: 20px; }
    .play-result .play-result-art { height: 122px; max-width: calc(100% + 46px); width: 345px; }
    .play-result .play-result-content h2 { font-size: 20px; line-height: 25px; margin: 19px 0 8px; }
    .play-result .play-result-description { font-size: 18px; line-height: 24px; }
    .play-result .play-result-win { min-height: 503px; padding-bottom: 33px; }
    .play-result .play-result-win .play-result-description { min-height: 96px; }
    .play-result .play-result-action { font-size: 16px; min-height: 48px; margin-top: 30px; width: calc(100% + 16px); max-width: calc(100% + 16px); }
    .play-result .play-result-secondary { font-size: 12px; }
    .play-result .play-result-sent { min-height: 417px; }
    .play-result .play-result-sent h2 { margin-bottom: 24px; }
    .play-result .play-result-star { display: none; }
    .play-result .play-result-loss { min-height: 468px; padding-top: 24px; }
    .play-result .play-result-loss .play-result-art { height: 120px; width: 176px; }
    .play-result .play-result-coin { height: 133px; left: 0; top: 0; width: 176px; }
    .play-result .play-result-footprints { height: 66px; width: 298px; }
    .play-result .play-result-footprints .path-footprint { height: 66px; width: 44px; }
    .play-result .play-result-footprints .path-token-coin { height: 48px; left: -2px; top: 2px; width: 48px; }
    .play-result .play-result-footprints .path-token-check { height: 18px; right: -1px; width: 18px; }
    .play-result .play-result-footprints .path-token-pending { height: 50px; left: -3px; top: -1px; width: 50px; }
    .play-result .play-result-footprints .path-footprint small { font-size: 12px; line-height: 16px; }
    .play-result .play-result-loss h2 { margin-top: 17px; margin-bottom: 14px; }
    .play-result .play-result-loss .play-result-action { margin-top: auto; }
    .play-result .play-result-friend, .play-result .play-result-invite { padding-top: 54px; }
    .play-result .play-result-friend { min-height: 503px; padding-bottom: 33px; }
    .play-result .play-result-friend .play-result-art, .play-result .play-result-invite .play-result-art { height: 144px; width: 256px; }
    .play-result .play-result-friends { height: 144px; width: 256px; }
    .play-result .play-result-friend h2, .play-result .play-result-invite h2 { margin-top: 20px; }
    .play-result .play-result-message { min-height: 280px; }
    .campaign-paw-modal .play-result-paw, .campaign-paw-modal .play-result-paw-friend { min-height: 340px; padding: 36px 18px 28px; }
    .campaign-paw-modal .play-result-art { height: 140px; width: 174px; }
    .campaign-paw-modal .play-result-coin { height: 131px; width: 174px; }
    .campaign-paw-modal .play-result-content h2 { margin: 12px 0 18px; }
    .campaign-paw-modal .play-result-paw-friend h2 { margin-bottom: 16px; }
    .campaign-paw-modal .play-result-description { font-size: 16px; line-height: 21px; }
    .campaign-game-modal .modal-dialog { width: calc(100% - 30px); }
    .campaign-game-modal .play-result-game { min-height: 0; padding: 64px 0 16px; }
    .campaign-game-modal iframe { aspect-ratio: 345 / 500; min-height: 380px; max-height: 70vh; }
    .play-result .play-result-content .game-modal-title { font-size: 16px; left: 16px; top: 24px; }
}
