.fan-promo{width:min(440px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #c4ff4640;background:#191c16;color:var(--cream);box-shadow:0 30px 100px #0006;overscroll-behavior:contain}
.fan-promo[open]{animation:promo-enter .45s cubic-bezier(.2,.65,.25,1) both}
.fan-promo::backdrop{background:#080b08a6;backdrop-filter:blur(7px)}
.promo-top{padding:10px 14px 10px 26px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #efeee925}
.promo-top .meta{font-size:10px;color:#b4b9aa}
.promo-close{display:grid;place-items:center;width:44px;height:44px}
.promo-close svg{width:22px;height:22px}
.promo-content{padding:27px}
.promo-kicker{color:var(--lime);font-size:10px;margin-bottom:17px}
.fan-promo h2{font-family:Inter,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-size:28px;line-height:1.4;letter-spacing:-.05em;font-weight:750}
#promo-description{font-size:14px;line-height:1.85;color:#bcc0b5;word-break:keep-all;margin:16px 0 23px}
#promo-description strong{color:var(--cream);font-weight:600;white-space:nowrap}
.promo-ticket{padding:19px 21px;background:var(--lime);color:var(--ink);display:flex;flex-direction:column;gap:15px}
.promo-ticket>strong{font-family:Unbounded,Arial,sans-serif;font-weight:800;font-size:44px;line-height:1.05;letter-spacing:-.065em}
.promo-ticket>strong span{opacity:.4}
.promo-ticket>.meta:last-child{font-size:8px;border-top:1px solid #17181640;padding-top:12px;letter-spacing:.025em}
.promo-peace{width:100%;min-height:52px;margin-top:22px;border:1px solid #efeee94d;font-family:Unbounded,Arial,sans-serif;font-weight:650;font-size:15px;transition:background .2s,color .2s}
.promo-peace:hover{background:var(--cream);color:var(--ink)}
@keyframes promo-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:420px){.promo-content{padding:23px}.fan-promo h2{font-size:25px}.promo-ticket>strong{font-size:39px}}
.fan-thanks{width:min(440px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px)}
.fan-thanks .board-dialog-top{padding:8px 22px}
.thanks-content{padding:22px 26px}
.fan-thanks h2{font-family:Inter,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-size:27px;font-weight:750;letter-spacing:-.05em;line-height:1.35}
#thanks-description{font-size:14px;line-height:1.8;color:#c5ccbe;margin:13px 0 19px}
#thanks-description strong{color:var(--cream);font-weight:500}
.thanks-ticket{gap:10px;padding:16px 20px}
.thanks-ticket>strong{font-size:39px}
.thanks-details{margin:18px 0 10px;display:grid;gap:7px;font-size:12px;line-height:1.5}
.thanks-details>div{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px}
.thanks-details dt{color:#abb59e}
.thanks-details dd{margin:0;overflow-wrap:anywhere;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.thanks-reference{font-size:8px;letter-spacing:0;color:#aeb99f;overflow-wrap:anywhere}
.thanks-content .promo-peace{margin-top:17px;min-height:46px}
.thanks-reopen{display:block;margin-top:16px;padding:10px 0;text-decoration:underline;text-underline-offset:5px;color:var(--lime);font-size:13px;min-height:44px}
@media(max-width:420px){.thanks-content{padding:19px 22px}.fan-thanks h2{font-size:25px}.thanks-content .promo-kicker{font-size:9px;margin-bottom:12px}}
