/* --- BỐ CỤC TÀU VŨ TRỤ --- */
.space-arena {
    height: 240px;
    background: linear-gradient(180deg, #1a237e 0%, #000000 100%);
    box-shadow: inset 0 0 30px rgba(0,0,0,0.8);
    position: relative; 
    overflow: hidden;
    border-radius: 12px;
}

/* Nền sao nhấp nháy chuyển động */
.space-bg {
    position: absolute;
    top: 0; left: 0;
    width: 200%; height: 100%;
    background-image: 
        radial-gradient(1px 1px at 20px 30px, #ffffff, rgba(0,0,0,0)),
        radial-gradient(1.5px 1.5px at 50px 70px, #fff59d, rgba(0,0,0,0)),
        radial-gradient(2px 2px at 120px 40px, #81d4fa, rgba(0,0,0,0)),
        radial-gradient(1px 1px at 180px 110px, #ffffff, rgba(0,0,0,0));
    background-repeat: repeat;
    animation: move-stars 10s linear infinite;
    z-index: 1;
}

@keyframes move-stars {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* Vật phẩm nhiệm vụ (Phát sáng) */
.space-object {
    position: absolute;
    top: 40%; left: 60%;
    transform: translate(-50%, -50%);
    width: 80px; height: 80px;
    background: rgba(255, 255, 255, 0.1);
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 3;
    animation: float-obj 3s ease-in-out infinite alternate;
}

@keyframes float-obj {
    0% { transform: translate(-50%, -40%); }
    100% { transform: translate(-50%, -60%); }
}

/* Hiệu ứng xử lý xong sự cố */
.resolve-success {
    animation: warp-drive 1s ease-in forwards !important;
}
@keyframes warp-drive {
    0% { transform: translate(-50%, -50%) scale(1); opacity: 1; filter: brightness(1); }
    50% { transform: translate(-50%, -50%) scale(1.5); opacity: 1; filter: brightness(2); }
    100% { transform: translate(-50%, -50%) scale(0); opacity: 0; filter: brightness(3); }
}

/* Hiệu ứng báo lỗi đỏ */
.error-flash {
    animation: flash-red 0.5s infinite alternate;
}
@keyframes flash-red {
    0% { background: rgba(229, 57, 53, 0.1); border-color: #e53935; box-shadow: 0 0 20px #e53935 !important; }
    100% { background: rgba(229, 57, 53, 0.5); border-color: #ffcdd2; box-shadow: 0 0 40px #e53935 !important; }
}

/* Nhân vật Phi hành gia lơ lửng */
.astronaut-char {
    position: absolute;
    bottom: 30px;
    left: 15%;
    font-size: 4.5rem;
    z-index: 5;
    filter: drop-shadow(0 5px 10px rgba(0,0,0,0.5));
    animation: float-astro 4s ease-in-out infinite alternate;
}

@keyframes float-astro {
    0% { transform: translateY(0) rotate(-5deg); }
    100% { transform: translateY(-15px) rotate(5deg); }
}

/* Tàu vũ trụ nền */
.spaceship-bg {
    position: absolute;
    top: 20%; right: -20%;
    font-size: 2rem;
    z-index: 2;
    opacity: 0.6;
    animation: fly-by 8s linear infinite;
}

@keyframes fly-by {
    0% { transform: translate(0, 0) scale(0.5); opacity: 0; }
    20% { opacity: 0.6; }
    80% { opacity: 0.6; }
    100% { transform: translate(-400px, 50px) scale(1.5); opacity: 0; }
}

/* Nhảy mừng không trọng lực */
.happy-float {
    animation: anti-gravity-spin 1s ease-out forwards !important;
}
@keyframes anti-gravity-spin {
    0% { transform: translateY(0) rotate(0); }
    50% { transform: translateY(-50px) rotate(180deg) scale(1.2); }
    100% { transform: translateY(0) rotate(360deg) scale(1); }
}

/* Rung lắc khi sai */
.shake-error { animation: shake-char 0.4s !important; }
@keyframes shake-char {
    0% { transform: translateX(0); }
    25% { transform: translateX(-15px) rotate(-10deg); }
    50% { transform: translateX(15px) rotate(10deg); }
    75% { transform: translateX(-15px) rotate(-10deg); }
    100% { transform: translateX(0); }
}

.min-h-75 { min-height: 85px; }