.game-launch-promotion{box-sizing:border-box;width:min(320px,84vw);max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));max-height:calc(100svh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));margin:auto;padding:0;border:0;border-radius:0;background:transparent;color:#fff3da;overflow:auto;overscroll-behavior:contain;box-shadow:none;scrollbar-width:none;text-align:center}
.game-launch-promotion::-webkit-scrollbar{display:none}
.game-launch-promotion::backdrop{background:#080609a8;backdrop-filter:blur(2px)}
.launch-visual{position:relative;filter:drop-shadow(0 5px 16px #0008)}
.launch-title-art{display:block;width:100%;height:auto;aspect-ratio:3/1;user-select:none;-webkit-user-drag:none}
.launch-slogan{display:block;width:144px;max-width:50%;height:auto;aspect-ratio:3/1;margin:10px auto 0;user-select:none;-webkit-user-drag:none}
.launch-visual h2{margin:0 0 5px;line-height:0}
.launch-gift-art{position:relative;margin-top:2px}
.launch-art{display:block;width:100%;height:auto;aspect-ratio:3/2;user-select:none;-webkit-user-drag:none}
.launch-benefit{position:absolute;bottom:7%;left:20%;width:60%;color:#fff3ce;text-align:center;text-shadow:0 2px 3px #511205}
.launch-benefit>span{display:block;font-size:10px;line-height:13px;font-weight:600;letter-spacing:1px}
.launch-benefit strong{display:block;font-size:30px;line-height:32px;font-weight:800;font-variant-numeric:tabular-nums}
.launch-benefit small{margin-left:3px;font-size:12px;font-weight:600}
.launch-copy{padding:2px 10px 0;text-shadow:0 1px 4px #000}
.launch-benefits{display:block;width:100%;min-height:46px;border:1px solid #ffe3a1;border-radius:24px;background:linear-gradient(170deg,#ffe8b5,#e7b75e 75%,#ca8f32);box-shadow:inset 0 2px 1px #fff7,0 4px 14px #0005;color:#462302;font-size:16px;font-weight:800;cursor:pointer}
.launch-links{display:flex;align-items:center;justify-content:center;gap:12px;margin:2px 0 0;color:#baaa92}
.launch-game,.launch-continue{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0;border:0;background:none;color:#f3dcbb;text-decoration:none;font:500 12px/1.4 system-ui,sans-serif;cursor:pointer}
.launch-rules{margin:0;color:#d1c4b1;font-size:10px;line-height:1.6;overflow-wrap:anywhere}
.launch-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:13px auto 0;padding:8px;border:1px solid #fff9;border-radius:50%;background:#1512194d;color:#f5ece4;cursor:pointer}
.launch-close svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.game-launch-promotion :is(button,a):focus-visible{outline:2px solid #ffe2ad;outline-offset:3px}
@media(max-width:360px){.launch-benefit strong{font-size:26px;line-height:28px}.launch-benefit>span{font-size:9px;line-height:11px}.launch-copy{padding-inline:6px}.launch-links{gap:10px}}
@media(max-height:550px){.game-launch-promotion{width:min(280px,76vw);max-height:calc(100svh - 16px)}.launch-title-art{width:220px;max-width:100%;margin:0 auto}.launch-slogan{width:114px;margin-top:5px}.launch-visual h2{margin-bottom:2px}.launch-gift-art{width:180px;max-width:100%;margin:0 auto}.launch-benefit>span{font-size:8px;line-height:10px}.launch-benefit strong{font-size:20px;line-height:22px}.launch-benefits{min-height:44px;font-size:14px}.launch-links{margin:0}.launch-game,.launch-continue{min-height:36px}.launch-rules{font-size:9px;line-height:1.4}.launch-close{margin-top:6px}}

.launch-feedback{margin:7px 0;color:#ffe0a4;font-size:11px;line-height:1.5}.launch-feedback[hidden]{display:none}.launch-benefits:disabled{opacity:.7;cursor:wait}.launch-copy .launch-rules{margin-top:10px}

/* Daily viewing check-in uses a single square transparent image. */
.launch-checkin-art{display:block;width:100%;height:auto;aspect-ratio:1;user-select:none;-webkit-user-drag:none}
@media(max-height:550px){.launch-checkin-art{width:220px;max-width:100%;margin:0 auto}}

.game-welfare-context{margin:2px 0 9px;color:#ffe2a8;font-size:13px;line-height:1.5}.game-welfare-offer .launch-copy{padding-top:5px}
@media(max-height:550px){.game-welfare-context{margin:0 0 5px;font-size:11px}.game-welfare-offer .launch-copy{padding-top:2px}}

.game-welfare-pitch{margin:0 0 10px;color:#fff3da;font-size:15px;font-weight:700;line-height:1.5}
@media(max-height:550px){.game-welfare-pitch{margin-bottom:6px;font-size:12px;line-height:1.35}}

.hall-body.modal-open{overflow:hidden}
