body {
    font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    background-color: #f0f2f5;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
}

.container {
    background: white;
    padding: 2.5rem;
    border-radius: 20px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
    text-align: center;
    width: 400px;
}

h1 {
    color: #333;
    margin-bottom: 2rem;
    font-weight: 700;
}

.ball-container {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 2.5rem;
    min-height: 60px;
    align-items: center;
}

.placeholder {
    color: #888;
    font-size: 1.1rem;
}

.ball {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-weight: bold;
    font-size: 1.2rem;
    box-shadow: 0 4px 6px rgba(0,0,0,0.15);
    animation: bounce 0.5s ease-out;
}

@keyframes bounce {
    0% { transform: translateY(20px); opacity: 0; }
    100% { transform: translateY(0); opacity: 1; }
}

/* 로또 번호대별 색상 */
.ball.color-1 { background-color: #fbc400; } /* 1-10: 노랑 */
.ball.color-2 { background-color: #69c8f2; } /* 11-20: 파랑 */
.ball.color-3 { background-color: #ff7272; } /* 21-30: 빨강 */
.ball.color-4 { background-color: #aaaaaa; } /* 31-40: 회색 */
.ball.color-5 { background-color: #b0d840; } /* 41-45: 초록 */

#generate-btn {
    background-color: #4a90e2;
    color: white;
    border: none;
    padding: 12px 24px;
    font-size: 1.1rem;
    font-weight: bold;
    border-radius: 10px;
    cursor: pointer;
    transition: background-color 0.2s, transform 0.1s;
    width: 100%;
}

#generate-btn:hover {
    background-color: #357abd;
}

#generate-btn:active {
    transform: scale(0.98);
}
