.rams-scratch-wrap{
    display:flex;
    justify-content:center;
    margin:40px 0;
}

.rams-scratch-card{
    position:relative;
    width:400px;
    height:200px;
    border-radius:16px;
    overflow:hidden;
    background:#fff;
    border:4px solid #f5c542;
    box-shadow:0 10px 25px rgba(0,0,0,.3);
}

.rams-scratch-card.status-pending{
    border-color:#f24578;
}

.rams-scratch-card.status-closed{
    border-color:#f3383542;
}

.rams-scratch-reveal{
    position:absolute;
    inset:0;
    z-index:1;
    display:flex;
    justify-content:center;
    align-items:center;
}

.rams-scratch-reveal img{
    max-width:100%;
    border-radius:10px;
}

.rams-scratch-canvas{
    position:absolute;
    inset:0;
    z-index:2;
    cursor:pointer;
    touch-action:none;
}

.rams-gift-icon{
    position:absolute;
    bottom:90px;
    left:50%;
    transform:translateX(-50%);
    font-size:44px;
    z-index:3;
    animation:rams-bounce 1.4s infinite;
}

@keyframes rams-bounce{
    0%,100%{ transform:translateX(-50%) translateY(0); }
    50%{ transform:translateX(-50%) translateY(-6px); }
}

.rams-scratch-btn{
    position:absolute;
    bottom:55px;
    left:50%;
    transform:translateX(-50%);
    z-index:4;
    padding:8px 22px;
    border:none;
    background:#000;
    color:#fff;
    border-radius:20px;
    cursor:pointer;
}

.rams-keep-text{
    position:absolute;
    bottom:30px;
    width:100%;
    text-align:center;
    font-size:13px;
    display:none;
    z-index:4;
}

.rams-brand-text{
    position:absolute;
    top:8px;
    width:100%;
    text-align:center;
    font-weight:bold;
    font-size:14px;
    z-index:4;
}

.rams-confetti{
    position:fixed;
    top:-10px;
    width:10px;
    height:14px;
    animation:rams-fall 3s linear forwards;
    z-index:9999;
}

@keyframes rams-fall{
    to{
        transform:translateY(110vh) rotate(360deg);
        opacity:0;
    }
}