/* --- BỐ CỤC PHÒNG KIỂM ĐỊNH KCS --- */
.qc-arena {
    height: 180px;
    background: linear-gradient(180deg, #2c3e50 0%, #34495e 100%);
    box-shadow: inset 0 0 20px rgba(0,0,0,0.8);
    position: relative;
    overflow: hidden;
    border: 4px solid #7f8c8d;
    border-radius: 12px;
}

/* Băng chuyền công nghệ cao */
.hi-tech-belt {
    position: absolute;
    bottom: 20px;
    left: 0;
    width: 200%;
    height: 15px;
    background: repeating-linear-gradient(90deg, #95a5a6, #95a5a6 15px, #7f8c8d 15px, #7f8c8d 30px);
    z-index: 1;
    animation: slide-belt 2s linear infinite;
    box-shadow: 0 5px 10px rgba(0,0,0,0.5);
}
@keyframes slide-belt {
    0% { transform: translateX(0); }
    100% { transform: translateX(-30px); }
}

/* Khung máy quét */
.scanner-arch {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 35px;
    width: 120px;
    height: 100px;
    border: 8px solid #bdc3c7;
    border-bottom: none;
    border-radius: 10px 10px 0 0;
    z-index: 3;
    background: rgba(44, 62, 80, 0.5);
    box-shadow: inset 0 10px 20px rgba(0,0,0,0.5);
}

/* Tia Laser quét */
.scanner-laser {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    width: 100px;
    height: 4px;
    background-color: #00e5ff;
    box-shadow: 0 0 15px 5px rgba(0, 229, 255, 0.6);
    z-index: 4;
}
.scanning {
    animation: laser-scan 1.5s infinite alternate ease-in-out;
}
@keyframes laser-scan {
    0% { top: 10px; }
    100% { top: 80px; }
}

.scan-pass {
    background-color: #00e676;
    box-shadow: 0 0 20px 8px rgba(0, 230, 118, 0.8);
    top: 50px;
}

.scan-fail {
    background-color: #ff1744;
    box-shadow: 0 0 20px 8px rgba(255, 23, 68, 0.8);
    animation: alert-blink 0.2s infinite;
}
@keyframes alert-blink {
    0% { opacity: 1; }
    100% { opacity: 0; }
}

/* Thùng hàng đang quét */
.qc-box {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 35px;
    font-size: 4rem;
    z-index: 2;
    transition: all 0.3s ease;
}
.on-belt {
    animation: box-vibrate 0.5s infinite alternate;
}
@keyframes box-vibrate {
    0% { transform: translateX(-50%) translateY(0); }
    100% { transform: translateX(-50%) translateY(-2px); }
}

/* Hoạt ảnh qua cổng thành công */
.pass-anim {
    animation: slide-out-right 1s ease-in forwards;
}
@keyframes slide-out-right {
    0% { left: 50%; opacity: 1; }
    100% { left: 120%; opacity: 0; }
}

/* Lỗi rung lắc */
.shake-error { animation: box-error 0.4s infinite; filter: sepia(1) hue-rotate(-50deg) saturate(3); }
@keyframes box-error {
    0% { transform: translateX(-50%) rotate(0); }
    25% { transform: translateX(calc(-50% - 5px)) rotate(-5deg); }
    50% { transform: translateX(calc(-50% + 5px)) rotate(5deg); }
    75% { transform: translateX(calc(-50% - 5px)) rotate(-5deg); }
    100% { transform: translateX(-50%) rotate(0); }
}

/* Thắng lợi */
.triumph-bounce {
    animation: win-jump 1s infinite alternate;
}
@keyframes win-jump {
    0% { transform: translateX(-50%) translateY(0) scale(1); }
    100% { transform: translateX(-50%) translateY(-20px) scale(1.2); }
}

.min-h-75 { min-height: 90px; }