/* Vùng đại dương */
.ocean-container {
    height: 160px;
    background: linear-gradient(180deg, #4fc3f7 0%, #0277bd 100%);
    box-shadow: inset 0 0 20px rgba(0,0,0,0.3);
}

.ocean-bg {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    /* Gợi ý: Có thể chèn ảnh AI đáy biển vào đây */
    background-size: cover;
    background-position: center bottom;
    opacity: 0.5;
    z-index: 1;
    border-bottom: 20px solid #ffd54f; /* Lớp cát vàng dưới đáy */
}

/* Kho báu ở đích */
.treasure-chest {
    position: absolute;
    bottom: 10px;
    right: 5%;
    font-size: 2.5rem;
    z-index: 2;
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.5));
}

/* Tàu ngầm */
.submarine {
    position: absolute;
    bottom: 40px; 
    left: 2%; 
    font-size: 3rem;
    z-index: 3;
    transition: left 0.8s cubic-bezier(0.25, 1, 0.5, 1), bottom 0.4s ease-in-out;
    filter: drop-shadow(4px 4px 4px rgba(0,0,0,0.4));
}

/* Hiệu ứng bong bóng nước */
.bubbles {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}
.bubble {
    position: absolute;
    bottom: 0;
    width: 15px;
    height: 15px;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    animation: rise 3s infinite ease-in;
}

@keyframes rise {
    0% { bottom: 0; transform: translateX(0); opacity: 0; }
    50% { opacity: 1; }
    100% { bottom: 100%; transform: translateX(-20px); opacity: 0; }
}

.shake-error { animation: shake 0.4s; }
@keyframes shake {
    0% { transform: translateX(0) rotate(0deg); }
    25% { transform: translateX(-5px) rotate(-5deg); }
    50% { transform: translateX(5px) rotate(5deg); }
    75% { transform: translateX(-5px) rotate(-5deg); }
    100% { transform: translateX(0) rotate(0deg); }
}
.min-h-75 { min-height: 75px; }

/* Làm nổi bật chữ X */
.text-x {
    color: #dc3545;
    font-family: "Comic Sans MS", cursive, sans-serif;
    font-style: italic;
    font-size: 2.5rem;
}
/* Khung ô vuông điền số thay cho chữ X */
.empty-box {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 45px;
    height: 45px;
    border: 3px dashed #fd7e14; /* Viền cam nét đứt */
    border-radius: 10px;
    background-color: #fff;
    margin: 0 8px;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.05);
    font-size: 1.8rem;
    color: #dc3545; /* Dấu hỏi màu đỏ */
    font-weight: bold;
    font-family: "Comic Sans MS", "Nunito", sans-serif;
    vertical-align: middle;
}

/* Kích thước nhỏ hơn cho phần ô nhập liệu */
.empty-box-sm {
    width: 35px;
    height: 35px;
    font-size: 1.4rem;
    margin: 0;
    border-width: 2px;
}