:root{--green:#d52b2b!important;--ink:#2b2b2b!important;--line:#e4e4e4!important;--muted:#777!important}body{background:#f6f6f6!important}.topbar{background:#fff!important;border-bottom:1px solid #ddd!important;box-shadow:0 1px 5px #00000012!important}.brand-mark{background:#d52b2b!important}.brand strong,.brand strong span{color:#d52b2b!important}.hero{background:linear-gradient(135deg,#a81717,#d83131)!important;min-height:320px!important}.hero-copy h1 em{color:#fff!important}.booking{margin-top:-55px!important;box-shadow:0 8px 30px #0002!important;border-radius:10px!important}.search-grid label{border-radius:4px!important}.primary{background:#d52b2b!important;border-color:#d52b2b!important}.journey-card{border-radius:8px!important}.filter-chip.active{background:#d52b2b!important;border-color:#d52b2b!important}.seat.selected{background:#d52b2b!important;border-color:#d52b2b!important}.checkout{border-radius:8px!important}.inner-hero{background:linear-gradient(135deg,#a81717,#d83131)!important}.text-btn,.journey-details{color:#d52b2b!important}.payment-total strong,.review-price strong{color:#d52b2b!important}

.payment-method-info{padding:12px;border:1px solid #ddd;background:#fafafa;border-radius:6px;font-size:12px;line-height:1.5;margin:12px 0}
.ticket-query-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.ticket-query-actions button{padding:9px 12px;border:1px solid #bbb;background:#fff;cursor:pointer;border-radius:4px}
.ticket-query-actions .danger{border-color:#c33;color:#a00}
.service-request{margin-top:12px;padding:10px;background:#fff8e8;border:1px solid #ead3a3;font-size:12px}
@media print{.topbar,footer,.nav-link,.success-actions,.ticket-query-actions{display:none!important}.success-ticket,.ticket-query-card{box-shadow:none!important;border:0!important}}

.card-fields{margin-top:14px;padding-top:14px;border-top:1px solid #ddd}
.card-fields .pay-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.card-fields .safe{display:block;margin-top:8px;color:#666;line-height:1.45}

.three-ds-sim{padding:18px;border:1px solid #ddd;background:#fafafa;margin:16px 0;display:grid;gap:8px}

.history-divider{display:flex;align-items:center;gap:12px;margin:24px 0;color:#999;font-size:11px}.history-divider:before,.history-divider:after{content:"";height:1px;background:#ddd;flex:1}
.history-list{display:grid;gap:10px;margin-top:14px}.history-item{border:1px solid #ddd;padding:14px;border-radius:6px;background:#fff}.history-item-head{display:flex;justify-content:space-between;gap:12px}.history-item small{display:block;color:#666;margin-top:6px}
.otp-label{display:block;margin-top:10px}.otp-label input{margin-top:6px;width:100%;padding:12px;border:1px solid #bbb;font-size:18px;letter-spacing:6px;text-align:center}

.nav-account-btn{background:transparent;border:0;color:inherit;cursor:pointer;font:inherit;position:relative}.notif-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:10px;background:#c52026;color:#fff;font-size:10px}
.account-modal-card{max-width:760px;width:min(94vw,760px);max-height:88vh;overflow:auto;position:relative}.modal-x{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:24px;cursor:pointer}.account-tabs{display:flex;gap:6px;border-bottom:1px solid #ddd;margin:16px 0}.account-tabs button{border:0;background:transparent;padding:10px 12px;cursor:pointer}.account-tabs button.active{border-bottom:2px solid #c52026;font-weight:700}.account-booking,.saved-passenger-card,.notification-card{border:1px solid #ddd;border-radius:6px;padding:12px;margin:10px 0}.notification-card.unread{background:#fff7f7;border-color:#efc3c3}.account-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.account-actions button{padding:8px 10px;border:1px solid #bbb;background:#fff;cursor:pointer;border-radius:4px}

.coupon-row{display:flex;gap:8px}.coupon-row input{flex:1}.coupon-box{margin:12px 0}.loyalty-card{padding:18px;border:1px solid #ddd;border-radius:8px;background:#fafafa}.loyalty-big{font-size:32px;font-weight:800}.favorite-route{display:flex;justify-content:space-between;gap:12px;padding:10px;border:1px solid #ddd;border-radius:6px;margin:8px 0}.pref-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #eee}

.campaign-box,.points-box{margin:12px 0}.campaign-box select,.points-box input{width:100%}.campaign-badge{display:inline-block;padding:3px 7px;border-radius:10px;background:#f1f1f1;font-size:11px;margin-top:6px}

.ancillary-box{margin:16px 0;padding:14px;border:1px solid #ddd;border-radius:8px}.ancillary-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #eee}.ancillary-item:last-child{border-bottom:0}.ancillary-item select{width:76px}

.live-trip-card{margin-top:14px;border:1px solid #ddd;border-radius:8px;padding:14px;background:#fff}.live-trip-head{display:flex;justify-content:space-between;gap:12px}.live-progress{height:8px;background:#eee;border-radius:8px;overflow:hidden;margin:12px 0}.live-progress i{display:block;height:100%;background:#c52026}.live-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.live-meta div{background:#fafafa;border:1px solid #eee;padding:8px;border-radius:5px}.live-meta small{display:block;color:#777}
.operations-login-link{color:inherit;text-decoration:none}
.ticket-barcode-v74{width:100%;max-width:420px;height:64px;background:#fff}
.ticket-print-v104{font-family:Arial;padding:36px;color:#222}.ticket-print-v104 h1{color:#c52026}
.ticket-print-v104 .line{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid #ddd;padding:10px 0}
.ticket-print-v104 .pnr{font-size:28px;font-weight:bold}.ticket-print-v104 .total{font-size:20px;font-weight:bold;margin-top:24px}
.ticket-print-v104 .ticket-barcode-wrap{margin:18px 0}
