/* --- BỐ CỤC ĐẠI DƯƠNG SÂU THẲM --- */
.ocean-arena {
    height: 250px;
    background: linear-gradient(180deg, #0288d1 0%, #01579b 40%, #000000 100%);
    box-shadow: inset 0 0 25px rgba(0,0,0,0.8);
    position: relative;
    overflow: hidden;
    border: 4px solid #01579b;
    border-radius: 12px;
}

/* Bọt khí nổi lên */
.bubbles-bg {
    position: absolute;
    bottom: -10%;
    left: 20%;
    font-size: 1.5rem;
    color: rgba(255,255,255,0.4);
    text-shadow: 100px 50px rgba(255,255,255,0.3), 200px 100px rgba(255,255,255,0.2);
    animation: bubble-up 5s infinite ease-in;
    z-index: 1;
}
.bubbles-bg::before { content: '⚪'; }
@keyframes bubble-up {
    0% { transform: translateY(0) scale(0.5); opacity: 0.8; }
    100% { transform: translateY(-300px) scale(1.5); opacity: 0; }
}

/* Cá bơi ngang qua */
.fish-bg {
    position: absolute;
    top: 20%;
    left: 100%;
    font-size: 2.5rem;
    animation: swim-fish 12s linear infinite;
    z-index: 2;
    opacity: 0.6;
}
@keyframes swim-fish {
    0% { transform: translateX(0); }
    100% { transform: translateX(-400px); }
}

/* Tàu ngầm */
.submarine-item {
    position: absolute;
    left: 40%;
    top: 20%; /* JS sẽ cập nhật lặn sâu dần */
    font-size: 4rem;
    z-index: 4;
    transition: all 1s ease-in-out;
    filter: drop-shadow(0 5px 10px rgba(0,0,0,0.6));
}
.floating {
    animation: sub-float 2s ease-in-out infinite alternate;
}
@keyframes sub-float {
    0% { transform: translateY(0) rotate(0deg); }
    100% { transform: translateY(-5px) rotate(2deg); }
}

/* Tàu bơi mượt tới trước khi đúng */
.swim-fwd {
    animation: sub-swim 0.8s ease-in-out forwards;
}
@keyframes sub-swim {
    0% { transform: translateX(0); }
    50% { transform: translateX(20px); }
    100% { transform: translateX(0); }
}

/* Tàu rung lắc vòng xoáy khi sai */
.shake-error { animation: vortex-spin 0.5s infinite; }
@keyframes vortex-spin {
    0% { transform: translate(0) rotate(0); }
    25% { transform: translate(-10px, 5px) rotate(-15deg); }
    50% { transform: translate(10px, -5px) rotate(15deg); }
    75% { transform: translate(-5px, 10px) rotate(-15deg); }
    100% { transform: translate(0) rotate(0); }
}

.min-h-75 { min-height: 90px; }
.hl-num { color: #81d4fa; font-weight: 900; font-size: 1.2em; text-shadow: 1px 1px 2px #000; }