/* One wish per screen. Older engines use vh, modern engines use dvh. */
.receiver-gift .festival-card-shell{height:100vh;height:100dvh;min-height:0!important}
.receiver-gift.show-back .receiver-back{height:100%;overflow:hidden!important;display:flex!important;flex-direction:column;min-height:0}
.receiver-gift:not(.show-back) .receiver-back{display:none!important}
.receiver-gift .receiver-back-header{position:relative;flex:0 0 auto;padding:8px 14px;min-height:46px}
.receiver-gift .receiver-gallery{flex:1 1 0;min-height:0;display:flex;flex-direction:column;padding:8px 14px;overflow:hidden;width:min(100%,700px)}
.receiver-gift .receiver-wish{flex:1;min-height:0;display:flex;flex-direction:column;padding:8px;background:#fff8;border:1px solid #e1c4d4;box-shadow:0 7px 20px #57234415;border-radius:20px}
.receiver-gift .receiver-wish[hidden]{display:none!important}
.receiver-gift .receiver-media-stage{flex:1 1 0;min-height:70px;width:100%;aspect-ratio:auto!important;border:5px solid #fff;border-radius:15px;box-shadow:0 0 0 1px #e5cedc;background:radial-gradient(ellipse at center,#ead7e4,#faf3f7)!important;overflow:hidden}
.receiver-gift .receiver-media-stage::before{content:none!important}
.receiver-gift .receiver-media-stage video.receiver-media,.receiver-gift .receiver-media-stage img.receiver-media{width:100%;height:100%;object-fit:contain!important;transform:none!important;background:transparent}
.receiver-gift .receiver-media-stage.fill-frame video.receiver-media{object-fit:cover!important;transform:scale(1.08)!important}
.receiver-gift .receiver-text-media{height:100%!important;background:transparent!important;color:#9d5178}
.receiver-gift .wish-video-controls{position:absolute;bottom:8px;left:8px;right:8px;display:flex;justify-content:center;gap:8px;line-height:1.4}
.wish-video-controls button,.wish-pager button,.wish-read-more{border:1px solid #bda0b3;border-radius:18px;padding:7px 12px;background:#fffef5ed;color:#743855;font-size:12px}
.receiver-gift .receiver-video-fallback{display:none}
.receiver-gift .media-error .receiver-video-fallback{display:block}
.receiver-gift .receiver-wish-copy{flex:0 0 auto;padding:8px 10px 3px}
.receiver-gift .receiver-wish-copy h3{font-size:16px;margin:2px 0}
.receiver-gift .receiver-wish-copy p{font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.receiver-gift .wish-read-more{padding:2px 0;border:0;background:transparent;font-size:11px}
.receiver-gift .wish-pager{flex:0 0 auto;display:flex;justify-content:center;gap:12px;align-items:center;font-size:12px}
.wish-pager button:disabled{opacity:.4}
.receiver-gift .receiver-services{flex:0 0 auto;margin:4px auto 0}
.receiver-gift .receiver-services summary{padding:8px}
.receiver-gift .receiver-services[open] .receiver-services-panel{position:absolute;z-index:12;bottom:70px;left:12px;right:12px;background:#fff8fb;max-height:65%;overflow:auto;border:1px solid #d9bbc9;border-radius:18px;padding:12px;box-shadow:0 0 0 200vmax #260e2838}
.receiver-gift .receiver-privacy{flex:0 0 auto;font-size:9px;margin:0;padding:3px 12px calc(8px + env(safe-area-inset-bottom,0px))}
.receiver-gift .festival-icp-footer{display:none}
@media(max-height:520px){.receiver-gift .receiver-back-header{min-height:32px;padding:2px 10px}.receiver-gift .receiver-gallery{padding:4px 12px}.receiver-gift .receiver-wish-copy p{-webkit-line-clamp:1}.receiver-gift .receiver-services summary{padding:4px}}
.public-configured-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.public-configured-fields p{white-space:pre-wrap;overflow-wrap:anywhere}
