@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;700;900&display=swap');

body {
    font-family: 'Noto Sans KR', sans-serif;
    background-color: #0b0e11;
    color: #ffffff;
    overflow-x: hidden;
}

/* 컬러 변수 및 유틸리티 */
.roblox-red { color: #f41e1e; }
.bg-roblox-red { background-color: #f41e1e; }

.glass-card {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 1.5rem;
}

.gradient-text {
    background: linear-gradient(45deg, #f41e1e, #ff6b6b);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* 애니메이션 정의 */
@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0px); }
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    75% { transform: translateX(5px); }
}

.animate-float { animation: float 3s ease-in-out infinite; }
.animate-shake { animation: shake 0.2s ease-in-out 0s 2; }

/* 진행 바 스타일 */
.progress-bar {
    height: 8px;
    background: #1a1d21;
    border-radius: 4px;
    overflow: hidden;
}

.progress-fill {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #f41e1e, #ff6b6b);
    transition: width 0.3s ease;
}

.hidden-step { display: none; }

/* 로벅스 아이콘 및 코인 효과 */
.robux-icon {
    display: inline-block;
    width: 24px;
    height: 24px;
    background: #232527;
    border: 2px solid #ffffff;
    border-radius: 4px;
    transform: rotate(45deg);
    margin-right: 8px;
    position: relative;
}
.robux-icon::after {
    content: 'R';
    position: absolute;
    transform: rotate(-45deg);
    font-weight: 900;
    font-size: 14px;
    left: 3px;
    top: 0px;
}

.coin {
    position: fixed;
    z-index: 100;
    pointer-events: none;
}