/* --- BỐ CỤC ĐƯỜNG BĂNG SÂN BAY --- */
.airport-arena {
    height: 220px;
    background: linear-gradient(180deg, #1a237e 0%, #3949ab 40%, #757575 40%, #424242 100%);
    box-shadow: inset 0 0 20px rgba(0,0,0,0.6);
    position: relative;
    overflow: hidden;
    border: 5px solid #283593;
    border-radius: 12px;
}

/* Vạch kẻ đường băng */
.runway-lines {
    position: absolute;
    bottom: 25px;
    left: 0;
    width: 200%;
    height: 6px;
    background: repeating-linear-gradient(90deg, #ffffff, #ffffff 30px, transparent 30px, transparent 60px);
    z-index: 1;
    animation: pan-runway 2s linear infinite;
    opacity: 0.8;
}
@keyframes pan-runway {
    0% { transform: translateX(0); }
    100% { transform: translateX(-60px); }
}

/* Máy bay vận tải (Bên phải) */
.plane-item {
    position: absolute;
    right: 5%;
    bottom: 40px;
    font-size: 6.5rem;
    z-index: 3;
    transition: all 1s ease;
    filter: drop-shadow(-5px 10px 5px rgba(0,0,0,0.5));
}
.idle-plane {
    animation: engine-vibrate 0.1s infinite;
}
@keyframes engine-vibrate {
    0% { transform: scaleX(-1) translateY(0); }
    100% { transform: scaleX(-1) translateY(1px); }
}

/* Xe nâng hàng / Kiện hàng (Bên trái) */
.cargo-item {
    position: absolute;
    left: 5%;
    bottom: 30px;
    font-size: 4rem;
    z-index: 4;
    transition: all 0.3s ease;
    filter: drop-shadow(3px 5px 5px rgba(0,0,0,0.4));
}
.waiting {
    animation: forklift-wait 0.5s infinite alternate;
}
@keyframes forklift-wait {
    0% { transform: translateY(0); }
    100% { transform: translateY(-2px); }
}

/* Hoạt ảnh bốc hàng lên máy bay */
.load-to-plane {
    animation: load-cargo 0.8s ease-in forwards;
}
@keyframes load-cargo {
    0% { left: 5%; bottom: 30px; transform: scale(1); }
    70% { left: 60%; bottom: 30px; transform: scale(1); }
    100% { left: 70%; bottom: 60px; transform: scale(0.5); opacity: 0; }
}

/* Máy bay chớp đèn khi nhận hàng */
.flash-plane {
    filter: drop-shadow(0 0 20px #00e5ff) !important;
}

/* Rơi hàng khi sai số liệu */
.drop-cargo {
    animation: cargo-fail 0.6s ease-in forwards;
}
@keyframes cargo-fail {
    0% { left: 5%; bottom: 30px; transform: rotate(0); }
    50% { left: 40%; bottom: 30px; transform: rotate(20deg); }
    100% { left: 45%; bottom: -20px; transform: rotate(90deg); opacity: 0; }
}

/* Sân bay báo động rung lắc */
.shake-error { animation: airport-alarm 0.4s infinite; filter: sepia(1) hue-rotate(-50deg) saturate(3); }
@keyframes airport-alarm {
    0% { transform: translate(0) rotate(0); }
    25% { transform: translate(-3px, 3px) rotate(-1deg); }
    50% { transform: translate(3px, -3px) rotate(1deg); }
    75% { transform: translate(-3px, -3px) rotate(-1deg); }
    100% { transform: translate(0) rotate(0); }
}

/* Cất cánh khi kết thúc game */
.take-off {
    animation: plane-fly 3s cubic-bezier(0.55, 0.085, 0.68, 0.53) forwards;
}
@keyframes plane-fly {
    0% { right: 5%; bottom: 40px; transform: scaleX(-1) rotate(0deg); }
    100% { right: 150%; bottom: 300px; transform: scaleX(-1) rotate(20deg) scale(0.5); opacity: 0; }
}

.min-h-75 { min-height: 90px; }