@import 'https://fonts.googleapis.com/css2?family=Rajdhani:wght@400;500;600;700&display=swap';.ticket-container{--ck-bg:#0b0f1a;--ck-panel:#111827;--ck-panel2:#1a2332;--ck-panel3:#0f1623;--ck-amber:#f59e0b;--ck-amber-glow:rgba(245,158,11,0.28);--ck-amber-dim:rgba(245,158,11,0.10);--ck-blue:#38bdf8;--ck-blue-glow:rgba(56,189,248,0.20);--ck-green:#10b981;--ck-green-glow:rgba(16,185,129,0.22);--ck-red:#ef4444;--ck-text:#e2e8f0;--ck-muted:#94a3b8;--ck-divider:rgba(255,255,255,0.06);--ck-border:rgba(245,158,11,0.22);--ck-r:16px;--ck-r-sm:10px;font-family:rajdhani,segoe ui,sans-serif;background:var(--ck-bg);color:var(--ck-text);min-height:100vh;padding:40px 20px 60px;box-sizing:border-box}.ticket-container>h2{font-family:rajdhani,sans-serif;font-size:22px;font-weight:700;letter-spacing:5px;text-transform:uppercase;color:var(--ck-amber);margin:0 0 32px;padding-bottom:18px;border-bottom:1px solid var(--ck-divider);display:flex;align-items:center;gap:14px;max-width:780px;margin-left:auto;margin-right:auto}.ticket-container>h2::before{content:'';display:inline-block;flex-shrink:0;width:10px;height:10px;background:var(--ck-amber);border-radius:50%;box-shadow:0 0 12px var(--ck-amber),0 0 24px var(--ck-amber-glow);animation:ckPulse 2s ease-in-out infinite}@keyframes ckPulse{0%,100%{opacity:1;box-shadow:0 0 12px var(--ck-amber)}50%{opacity:.4;box-shadow:0 0 4px var(--ck-amber)}}#ticketDetails{max-width:780px;display:flex;flex-direction:column;gap:0;margin:0 auto;color:var(--ck-muted);font-size:14px;letter-spacing:1px}.boarding-pass+.boarding-pass{margin-top:32px}.boarding-pass{display:flex;max-width:780px;margin:0 auto 24px;background:var(--ck-panel);border:1px solid var(--ck-border);border-radius:20px;box-shadow:0 0 0 1px rgba(245,158,11,5%),0 32px 64px rgba(0,0,0,.7),inset 0 1px rgba(255,255,255,4%);overflow:hidden;animation:ckSlideIn .3s cubic-bezier(.22,1,.36,1);position:relative}.boarding-pass::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--ck-amber),rgba(245,158,11,.15),transparent);border-radius:20px 20px 0 0}@keyframes ckSlideIn{from{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.bp-left{flex:3;padding:28px 28px 24px;display:flex;flex-direction:column;gap:0}.bp-divider{width:1px;background:repeating-linear-gradient( to bottom,rgba(245,158,11,.3) 0,rgba(245,158,11,.3) 5px,transparent 5px,transparent 11px );flex-shrink:0}.bp-right{flex:1;min-width:140px;background:var(--ck-panel2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px 16px}.bp-airline-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.airline{font-family:rajdhani,sans-serif;font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--ck-amber)}.bp-status-badge{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ck-green);border:1px solid var(--ck-green);border-radius:4px;padding:3px 8px;background:rgba(16,185,129,8%)}.bp-route-bar{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--ck-divider)}.bp-city{display:flex;flex-direction:column;align-items:center}.bp-iata{font-family:rajdhani,monospace;font-size:36px;font-weight:700;color:var(--ck-text);letter-spacing:3px;line-height:1}.bp-city-name{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--ck-muted);margin-top:3px}.bp-flight-path{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.bp-plane-line{display:flex;align-items:center;gap:6px;width:100%}.bp-line{flex:1;height:1px;background:linear-gradient(90deg,rgba(245,158,11,.15),rgba(245,158,11,.5),rgba(245,158,11,.15))}.bp-plane-icon{font-size:18px;color:var(--ck-amber);filter:drop-shadow(0 0 6px rgba(245,158,11,.5))}.bp-duration{font-size:9px;font-weight:600;letter-spacing:1.5px;color:var(--ck-muted);text-transform:uppercase}.bp-passenger-label{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ck-muted);margin-bottom:3px}.passenger{font-family:rajdhani,sans-serif;font-size:20px;font-weight:700;color:var(--ck-text);letter-spacing:2px;text-transform:uppercase;margin-bottom:18px}.details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 16px}.details-grid>div{display:flex;flex-direction:column;gap:3px;margin-bottom:0}.details-grid label{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ck-muted)}.details-grid span{font-family:rajdhani,monospace;font-size:16px;font-weight:700;color:var(--ck-text);letter-spacing:1px}.bp-pnr-label{font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--ck-muted);text-align:center}.pnr-box{font-family:rajdhani,monospace;font-size:26px;font-weight:800;color:var(--ck-amber);letter-spacing:4px;text-align:center;text-shadow:0 0 20px rgba(245,158,11,.45);margin:0}#qrCode{border:2px solid var(--ck-border);border-radius:8px;padding:6px;background:#fff;display:inline-block}.bp-actions{display:flex;gap:12px;max-width:780px;margin:0 auto;flex-wrap:wrap}.print-ticket-btn{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);color:#0b0f1a;border:none;border-radius:12px;padding:15px 36px;font-family:rajdhani,sans-serif;font-size:13px;font-weight:800;letter-spacing:3px;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 28px rgba(245,158,11,.38),inset 0 1px rgba(255,255,255,.22);transition:all .18s;position:relative;overflow:hidden}.print-ticket-btn::before{content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transition:left .4s}.print-ticket-btn:hover::before{left:160%}.print-ticket-btn:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(245,158,11,.55)}.print-ticket-btn:active{transform:translateY(0);box-shadow:0 6px 16px rgba(245,158,11,.32)}.new-booking-btn{display:inline-flex;align-items:center;gap:8px;background:0 0;border:1px solid rgba(56,189,248,.45);color:var(--ck-blue);border-radius:12px;padding:14px 28px;font-family:rajdhani,sans-serif;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:all .18s}.new-booking-btn:hover{background:rgba(56,189,248,8%);border-color:var(--ck-blue);color:var(--ck-blue);box-shadow:0 0 18px rgba(56,189,248,.2);transform:translateY(-2px);text-decoration:none}.cancel-booking-btn{background:0 0;border:1px solid rgba(239,68,68,.35);color:rgba(239,68,68,.8);border-radius:12px;padding:14px 28px;font-family:rajdhani,sans-serif;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .18s}.cancel-booking-btn:hover{background:rgba(239,68,68,8%);border-color:rgba(239,68,68,.7);color:#ef4444}.ticket-container::-webkit-scrollbar{width:5px}.ticket-container::-webkit-scrollbar-track{background:var(--ck-panel)}.ticket-container::-webkit-scrollbar-thumb{background:rgba(245,158,11,.35);border-radius:3px}.ticket-container::-webkit-scrollbar-thumb:hover{background:var(--ck-amber)}@media print{.ticket-container{background:#fff;color:#000;padding:0}.boarding-pass{border:1px solid #ccc;box-shadow:none;animation:none}.bp-left{background:#fff}.bp-right{background:#f5f5f5}.airline,.pnr-box{color:#000;text-shadow:none}.bp-iata,.passenger,.details-grid span{color:#000}.details-grid label,.bp-passenger-label,.bp-pnr-label,.bp-duration,.bp-city-name{color:#555}.bp-actions,.ticket-container>h2::before{display:none}.boarding-pass::before{display:none}}@media(max-width:640px){.boarding-pass{flex-direction:column;border-radius:16px}.bp-divider{width:auto;height:1px;background:repeating-linear-gradient( to right,rgba(245,158,11,.3) 0,rgba(245,158,11,.3) 5px,transparent 5px,transparent 11px )}.bp-left{padding:20px}.bp-right{padding:20px;flex-direction:row;justify-content:space-around}.bp-iata{font-size:28px}.details-grid{grid-template-columns:repeat(2,1fr)}.bp-actions{flex-direction:column}.print-ticket-btn,.cancel-booking-btn,.new-booking-btn{width:100%;text-align:center;justify-content:center}}