.payment-highlight{width:fit-content;animation:pulse 2s infinite}
@keyframes pulse{
0%,100%{box-shadow:0 4px 10px rgba(255,0,0,.2)}
50%{box-shadow:0 4px 20px rgba(255,0,0,.4)}
}
.card{border-radius:10px}
.contact-details>div{padding:.5rem 0}
@media (max-width:768px){
.payment-highlight{width:100%;justify-content:center}
.btn-sm{width:100%;margin-bottom:.5rem}
}
.seat-selection-modal{padding:20px}
.flight-header{margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:8px}
.flight-title{color:#007bff;font-size:1.2rem;margin:0}
.aircraft-panel,.passengers-panel{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:15px;height:100%}
.panel-title{font-size:1.1rem;font-weight:600;margin-bottom:15px;color:#495057}
.passenger-item{padding:10px;margin-bottom:10px;border:2px solid #dee2e6;border-radius:6px;cursor:pointer;transition:all .3s ease}
.passenger-item:hover{border-color:#007bff;background:#f8f9fa}
.passenger-item.active{border-color:#28a745;background:#d4edda}
.passenger-name{font-weight:600;color:#495057;margin-bottom:5px}
.seat-status{font-size:.9rem;color:#6c757d}
.seat-number{font-weight:600;color:#007bff}
.seat-legend{margin-top:20px;padding:15px;background:#f8f9fa;border-radius:6px}
.legend-title{font-size:.95rem;font-weight:600;margin-bottom:10px}
.legend-item{display:flex;align-items:center;margin-bottom:8px;font-size:.9rem}
.legend-color{width:30px;height:30px;border:2px solid #dee2e6;border-radius:4px;margin-right:10px}
.legend-color.available{background:#28a745;border-color:#28a745}
.legend-color.exit-row{background:#28a745;border-color:#28a745;position:relative}
.legend-color.exit-row::after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;background:#dc3545}
.legend-color.selected{background:#007bff;border-color:#007bff}
.legend-color.occupied{background:#dc3545;border-color:#dc3545}
.aircraft-layout{background:#f8f9fa;padding:20px;border-radius:8px;max-height:500px;overflow-y:auto}
.seat-row{display:flex;align-items:center;margin-bottom:8px;gap:5px}
.row-number{width:40px;text-align:center;font-weight:600;color:#6c757d;font-size:.9rem}
.seat-group{display:flex;gap:5px}
.aisle{width:30px}
.seat{width:35px;height:35px;border:2px solid #dee2e6;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:#fff}
.seat-available{border-color:#28a745;color:#28a745;background:#d4edda}
.seat-available:hover{background:#28a745;color:#fff;transform:scale(1.1)}
.seat-available.selected{background:#007bff;border-color:#007bff;color:#fff;transform:scale(1.1)}
.seat-occupied{background:#dc3545;border-color:#dc3545;color:#fff;cursor:not-allowed;opacity:.6}
.pulse-button,.pulse-success-button{display:block;cursor:pointer}
.pulse-button{-webkit-box-shadow:0 0 0 0 rgba(212,90,104,.5);box-shadow:0 0 0 0 rgba(212,90,104,.5);background-color:#ff000026!important;animation:pulse-cus 2s infinite;-webkit-animation:pulse-cus 2s infinite}
.pulse-success-button{-webkit-box-shadow:0 0 0 0 rgba(40,167,69,.5);box-shadow:0 0 0 0 rgba(40,167,69,.5);background-color:#28a74526!important;animation:pulse-success-cus 2s infinite;-webkit-animation:pulse-success-cus 2s infinite}
@keyframes pulse-cus{
0%{-webkit-transform:scale(1);transform:scale(1)}
70%{-webkit-transform:scale(.8);transform:scale(.8);-webkit-box-shadow:0 0 0 30px rgba(212,90,104,0);box-shadow:0 0 0 30px rgba(212,90,104,0)}
100%{-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:0 0 0 0 rgba(212,90,104,0);box-shadow:0 0 0 0 rgba(212,90,104,0)}
}
@keyframes pulse-success-cus{
0%{-webkit-transform:scale(1);transform:scale(1)}
70%{-webkit-transform:scale(.8);transform:scale(.8);-webkit-box-shadow:0 0 0 30px rgba(40,167,69,0);box-shadow:0 0 0 30px rgba(40,167,69,0)}
100%{-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:0 0 0 0 rgba(40,167,69,0);box-shadow:0 0 0 0 rgba(40,167,69,0)}
}.pulse-success-button {
    background: rgba(40,167,69,.12) !important;
}