.bf-bonus{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:1rem}.bf-bonus__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);border:0;padding:0;cursor:pointer}.bf-bonus__dialog{position:relative;width:min(94vw,460px);max-height:94dvh;overflow-y:auto;overscroll-behavior:contain;background:#000000;border:3px solid #000000;box-shadow:10px 10px 0 #fcc017;animation:bf-bonus-in .36s cubic-bezier(.16,1,.3,1) backwards}@keyframes bf-bonus-in{0%{opacity:0;transform:translate3d(0,18px,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}.bf-bonus__bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .7rem;background:#000000}.bf-bonus__tag{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#ffffff}.bf-bonus__tag:before{content:"";display:block;width:10px;height:10px;background:#ff6032;border:2px solid #ffffff}.bf-bonus__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border:2px solid #000000;border-radius:2px;background:#fcc017;color:#000000;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:3px 3px 0 #ffffff}.bf-bonus__close:hover{transform:translate3d(2px,2px,0);box-shadow:1px 1px 0 #ffffff}.bf-bonus__close:focus-visible{outline:3px solid #38b6ff;outline-offset:3px}.bf-bonus__art{position:relative;container-type:inline-size;aspect-ratio:4/5;width:100%;background:#ffffff;overflow:hidden}.bf-bonus__img{position:absolute;inset:0;display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center}.bf-bonus__placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem;text-align:center;background:#ffffff;border:3px dashed #000000;font-family:var(--font-body);font-size:.8rem;font-weight:700;line-height:1.4;color:#000000}.bf-bonus__placeholder span{font-size:.65rem}.bf-bonus__loading,.bf-bonus__placeholder span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.bf-bonus__loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#ffffff;font-size:.7rem;color:#000000}.bf-bonus__error{left:0;right:0;bottom:0;padding:.6rem .8rem;background:#000000;color:#ffffff;font-size:.72rem;font-weight:700;line-height:1.35}.bf-bonus__cta,.bf-bonus__error{position:absolute;text-align:center}.bf-bonus__cta{transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:56px;max-width:100%;padding:clamp(12px,var(--bf-btn-pad,2.5cqw),22px) 1rem;border:2px solid #000000;border-radius:2px;background:#ff6032;color:#000000;font-family:var(--font-body);font-size:clamp(13px,var(--bf-btn-font,2.6563cqw),24px);font-weight:900;line-height:1.15;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;box-shadow:6px 6px 0 #000000;transition:transform .2s ease,box-shadow .2s ease;overflow-wrap:break-word}.bf-bonus__cta:hover{transform:translate(-50%,-50%) translate3d(2px,2px,0);box-shadow:4px 4px 0 #000000}.bf-bonus__cta:active{transform:translate(-50%,-50%) translate3d(5px,5px,0);box-shadow:0 0 0 #000000}.bf-bonus__cta:focus-visible{outline:3px solid #38b6ff;outline-offset:3px}.bf-bonus__preview{position:relative;border:2px dashed rgba(255,255,255,.35);border-radius:8px;padding:.5rem;background:rgba(255,255,255,.03)}.bf-bonus__preview-tag{position:absolute;top:-10px;left:10px;padding:2px 8px;border:2px solid #000000;background:#38b6ff;color:#000000;font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.bf-bonus__preview--mobile .bf-bonus__art{width:min(100%,260px);margin:0 auto}@media (prefers-reduced-motion:reduce){.bf-bonus__close,.bf-bonus__cta,.bf-bonus__dialog{animation:none!important;transition:none!important}.bf-bonus__close:hover,.bf-bonus__cta:active,.bf-bonus__cta:hover{transform:translate(-50%,-50%);box-shadow:6px 6px 0 #000000}.bf-bonus__close:hover{transform:none;box-shadow:3px 3px 0 #ffffff}}