@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-primary: #141414;--bg-secondary: #181818;--bg-card: #222222;--bg-hover: #2f2f2f;--accent-red: #E50914;--accent-red-hover: #f40612;--accent-gold: #ffc107;--accent-cyan: #00e5ff;--text-primary: #ffffff;--text-secondary: #aaaaaa;--text-muted: #666666;--border-color: #333333;--glass-bg: rgba(24, 24, 24, .85);--glass-border: rgba(255, 255, 255, .1);--glass-blur: blur(16px);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);--shadow-md: 0 4px 20px rgba(0, 0, 0, .6);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .8);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--transition-fast: .2s ease;--transition-normal: .3s ease}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif;font-weight:700;letter-spacing:-.02em}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all var(--transition-fast)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-red)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 24px}.content-row-grid{grid-template-columns:repeat(var(--content-row-columns, 4),minmax(0,1fr))}@media (max-width: 900px){.content-row-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 600px){.content-row-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 380px){.content-row-grid{grid-template-columns:minmax(0,1fr)}}.btn-primary{background:var(--accent-red);color:#fff;font-weight:600;padding:12px 24px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.95rem;box-shadow:0 4px 15px #e5091466}.btn-primary:hover{background:var(--accent-red-hover);transform:translateY(-2px);box-shadow:0 6px 20px #e5091499}.btn-secondary{background:#ffffff26;color:var(--text-primary);font-weight:600;padding:12px 24px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.95rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:#ffffff40;transform:translateY(-2px)}.btn-outline{background:transparent;border:1px solid var(--border-color);color:var(--text-primary);font-weight:500;padding:10px 20px;border-radius:var(--radius-sm)}.btn-outline:hover{border-color:var(--text-primary);background:#ffffff0d}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-md)}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.badge-red{background:#e5091433;color:var(--accent-red);border:1px solid rgba(229,9,20,.4)}.badge-gold{background:#ffc10726;color:var(--accent-gold);border:1px solid rgba(255,193,7,.3)}.badge-dark{background:#0009;color:var(--text-secondary);border:1px solid var(--border-color)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s ease forwards}.cv-ticket-page{position:relative;min-height:calc(100vh - 70px);overflow:hidden;padding:54px 0 72px;color:#fff;background:radial-gradient(ellipse at 50% 18%,rgba(229,9,20,.16),transparent 48%),var(--bg-primary)}.cv-ticket-glow{position:absolute;inset:0 0 auto;height:420px;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent)}.cv-ticket-container{position:relative;z-index:1;max-width:760px}.cv-payment-success{text-align:center;margin-bottom:32px;animation:fadeIn .5s ease both}.cv-success-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border:1px solid rgba(34,197,94,.38);border-radius:50%;color:#4ade80;background:#22c55e1a;box-shadow:0 0 34px #22c55e1f}.cv-success-eyebrow{margin:0 0 8px;color:#86efac;font-size:.72rem;font-weight:800;letter-spacing:.16em}.cv-payment-success h1{margin:0 0 9px;color:#fff;font-size:clamp(1.55rem,4vw,2.25rem)}.cv-payment-success>p:last-child{margin:0;color:var(--text-secondary);font-size:.92rem}.cv-printer{width:min(100%,510px);margin:0 auto;padding:0 18px;display:flex;flex-direction:column;align-items:center}.cv-printer-ticket-slot{z-index:2;width:min(88%,400px);height:15px;margin-bottom:-8px;border:2px solid #62636a;border-bottom:0;border-radius:9px 9px 0 0;background:#08090b}.cv-printer-face{position:relative;z-index:2;width:100%;padding:17px 22px 16px;border:1px solid #45464d;border-radius:16px 16px 8px 8px;background:linear-gradient(145deg,#292a30,#141519 70%);box-shadow:0 18px 44px #00000075,inset 0 1px #ffffff14}.cv-printer-brand{display:flex;align-items:center;gap:9px;margin-bottom:14px;color:#bfc0c7;font-size:.66rem;font-weight:800;letter-spacing:.12em}.cv-printer-light{width:8px;height:8px;border-radius:50%;background:#43d17a;box-shadow:0 0 11px #43d17a}.cv-printer-display{display:flex;align-items:center;justify-content:center;gap:9px;min-height:43px;border:1px solid rgba(255,255,255,.07);border-radius:7px;color:#ff5960;background:#090a0d;font-size:.68rem;font-weight:800;letter-spacing:.09em}.cv-printer-output{width:100%;height:10px;margin-top:14px;overflow:hidden;border-radius:8px;background:#07080a;box-shadow:inset 0 2px 5px #000000e6}.cv-printer-output span{display:block;width:36%;height:2px;margin:4px auto;border-radius:2px;background:#5b5c62}.cv-ticket-paper{position:relative;z-index:1;width:min(100%,440px);margin:-3px auto 0;padding:25px 27px 22px;color:#202027;background-color:#fbf8ef;background-image:repeating-linear-gradient(0deg,rgba(70,54,30,.018) 0,rgba(70,54,30,.018) 1px,transparent 1px,transparent 5px);box-shadow:0 20px 55px #0000006b;clip-path:polygon(0 0,100% 0,100% 98.7%,96% 100%,92% 98.7%,88% 100%,84% 98.7%,80% 100%,76% 98.7%,72% 100%,68% 98.7%,64% 100%,60% 98.7%,56% 100%,52% 98.7%,48% 100%,44% 98.7%,40% 100%,36% 98.7%,32% 100%,28% 98.7%,24% 100%,20% 98.7%,16% 100%,12% 98.7%,8% 100%,4% 98.7%,0 100%)}.cv-printer.is-printing .cv-ticket-paper{max-height:0;padding-top:0;padding-bottom:0;opacity:.2;overflow:hidden;transform:translateY(-16px)}.cv-printer.is-finished .cv-ticket-paper{animation:ticketFeed 1.35s cubic-bezier(.18,.72,.2,1) both}@keyframes ticketFeed{0%{max-height:0;opacity:.3;transform:translateY(-75px)}to{max-height:720px;opacity:1;transform:translateY(0)}}.cv-ticket-topline,.cv-ticket-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}.cv-ticket-logo{display:flex;align-items:center;gap:8px;font-size:.9rem;letter-spacing:.04em}.cv-ticket-logo span{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:#fff;background:#e50914;font-size:.67rem}.cv-ticket-paid{padding:4px 8px;border-radius:4px;color:#117541;background:#d9f8e6;font-size:.64rem;font-weight:900;letter-spacing:.08em}.cv-ticket-kicker{margin:19px 0 5px;color:#8a2024;font-size:.61rem;font-weight:900;letter-spacing:.16em}.cv-ticket-paper h2{margin:0 0 9px;color:#19191e;font-size:1.42rem;line-height:1.15}.cv-ticket-venue{display:flex;align-items:flex-start;gap:6px;color:#4c4c52;font-size:.79rem}.cv-ticket-venue svg{flex:0 0 auto;color:#e50914}.cv-ticket-rule{margin:15px 0;border-top:1px dashed rgba(32,32,39,.32)}.cv-ticket-facts{display:grid;grid-template-columns:1fr 1fr;gap:13px 16px}.cv-ticket-facts>div,.cv-ticket-meta>div{min-width:0;display:flex;flex-direction:column;gap:5px}.cv-ticket-facts span,.cv-ticket-meta span,.cv-ticket-total-label{display:flex;align-items:center;gap:4px;color:#77777e;font-size:.57rem;font-weight:800;letter-spacing:.09em}.cv-ticket-facts strong,.cv-ticket-meta strong{overflow-wrap:anywhere;color:#222228;font-size:.76rem}.cv-ticket-meta{display:grid;gap:10px}.cv-ticket-meta strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem}.cv-ticket-bottom{align-items:flex-end;margin-top:18px}.cv-ticket-total-label{margin-bottom:3px}.cv-ticket-total{color:#16161a;font-size:1.55rem}.cv-ticket-qr,.cv-ticket-qr-placeholder{width:92px;height:92px;padding:4px;border-radius:7px;background:#fff;object-fit:contain}.cv-ticket-footnote{max-width:280px;margin:12px 0 0;color:#73737a;font-size:.6rem;line-height:1.45}.cv-printer-base{display:flex;justify-content:center;gap:7px;width:min(92%,470px);height:20px;border:1px solid #4c4d53;border-top:0;border-radius:0 0 13px 13px;background:linear-gradient(180deg,#1f2025,#111216);box-shadow:0 18px 32px #00000061}.cv-printer-base span{width:18%;height:3px;margin-top:5px;border-radius:2px;background:#090a0c}.cv-printer.is-printing .cv-printer-light{animation:printerBlink .8s steps(2,jump-none) infinite}@keyframes printerBlink{50%{opacity:.25}}.cv-ticket-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:28px auto 0}.cv-ticket-actions>*{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 15px;text-decoration:none}.cv-ticket-empty{min-height:60vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;text-align:center}.cv-ticket-empty h1,.cv-ticket-empty p{margin:0}.cv-ticket-empty p{color:var(--text-secondary)}@media (max-width: 540px){.cv-ticket-page{padding:38px 0 48px}.cv-ticket-container{padding-right:14px;padding-left:14px}.cv-printer{padding:0 7px}.cv-printer-face{padding:14px 14px 13px}.cv-ticket-paper{padding:21px 19px 22px}.cv-ticket-paper h2{font-size:1.23rem}.cv-ticket-facts{gap:11px 10px}.cv-ticket-actions>*{flex:1 1 42%;font-size:.84rem}}@media (prefers-reduced-motion: reduce){.cv-payment-success,.cv-printer.is-finished .cv-ticket-paper{animation:none}.cv-printer.is-printing .cv-ticket-paper{max-height:720px;padding-top:25px;padding-bottom:22px;opacity:1;transform:none}.cv-printer.is-printing .cv-printer-light{animation:none}}@media print{body *{visibility:hidden!important}.cv-ticket-paper,.cv-ticket-paper *{visibility:visible!important}.cv-ticket-page{min-height:0;padding:0;background:#fff}.cv-ticket-glow,.cv-payment-success,.cv-printer-ticket-slot,.cv-printer-face,.cv-printer-base,.cv-ticket-actions{display:none!important}.cv-ticket-container{max-width:none;padding:0}.cv-printer{width:100%;padding:0}.cv-ticket-paper{position:absolute;top:20px;left:50%;width:440px;margin:0;transform:translate(-50%);box-shadow:none}}.responsive-two-col{display:grid;grid-template-columns:1fr 340px;gap:32px}@media (max-width: 900px){.responsive-two-col{grid-template-columns:1fr;gap:24px}}@media (max-width: 768px){.container{padding:0 16px}.hide-on-mobile{display:none!important}.show-on-mobile{display:flex!important}}@media (min-width: 769px){.hide-on-desktop{display:none!important}}.scroll-touch-x{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.scroll-touch-x::-webkit-scrollbar{height:4px}.scroll-touch-x::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.mobile-nav-drawer{position:fixed;top:70px;left:0;right:0;bottom:0;background:#121212fa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:999;padding:24px 20px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;animation:fadeIn .2s ease-out}.mobile-nav-link{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:10px;font-size:1.05rem;font-weight:600;color:var(--text-primary);background:#ffffff0a;border:1px solid rgba(255,255,255,.06);transition:all .2s;text-decoration:none}.mobile-nav-link:hover,.mobile-nav-link.active{background:#e5091426;border-color:#e5091466;color:#fff}.my-bookings-page{min-height:100vh;background:var(--bg-primary)}.my-bookings-header{padding:38px 0 0;border-bottom:1px solid var(--border-color);background:radial-gradient(ellipse at 14% 0,rgba(229,9,20,.1),transparent 36%)}.my-bookings-heading{display:flex;align-items:center;gap:16px;padding-bottom:28px}.my-bookings-heading-icon{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border:1px solid rgba(229,9,20,.28);border-radius:15px;color:#ff6570;background:#e509141a}.my-bookings-eyebrow{display:block;margin-bottom:4px;color:#ff737b;font-size:.67rem;font-weight:800;letter-spacing:.16em}.my-bookings-heading h1{margin:0;color:#fff;font-size:clamp(1.65rem,4vw,2.15rem);line-height:1.15}.my-bookings-heading p{margin:6px 0 0;color:var(--text-secondary);font-size:.9rem}.my-bookings-count{margin-left:auto;padding:8px 12px;border:1px solid var(--border-color);border-radius:999px;color:#d4d4d8;background:#ffffff09;font-size:.78rem;font-weight:700;white-space:nowrap}.booking-tabs{display:flex;gap:8px;padding-bottom:13px}.booking-tab{flex:0 0 auto;padding:10px 15px;border:1px solid transparent;border-radius:9px;color:var(--text-secondary);background:transparent;font:inherit;font-size:.83rem;font-weight:650;cursor:pointer;transition:color .18s ease,background .18s ease,border-color .18s ease}.booking-tab:hover{color:#fff;background:#ffffff0b}.booking-tab.is-active{border-color:#e5091459;color:#fff;background:#e509141f}.my-bookings-content{padding-top:28px;padding-bottom:64px}.booking-list{display:flex;flex-direction:column;gap:15px}.booking-card{position:relative;display:grid;grid-template-columns:112px minmax(0,1fr) 205px;min-height:185px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:linear-gradient(115deg,#ffffff0b,#ffffff05 55%),var(--bg-card);box-shadow:0 12px 32px #00000029;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.booking-card:hover{transform:translateY(-2px);border-color:#e5091461;box-shadow:0 16px 38px #00000040}.booking-card-poster{position:relative;display:grid;place-items:center;min-height:100%;overflow:hidden;color:#ffffffad;background:radial-gradient(circle at 50% 30%,rgba(229,9,20,.28),transparent 60%),linear-gradient(145deg,#27232a,#101014)}.booking-card-poster img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.booking-card-poster:after{position:absolute;top:45%;right:0;bottom:0;left:0;content:"";background:linear-gradient(180deg,transparent,rgba(0,0,0,.56));pointer-events:none}.booking-card-poster>span{position:absolute;z-index:1;bottom:10px;left:10px;padding:4px 7px;border:1px solid rgba(255,255,255,.22);border-radius:5px;color:#fff;background:#0000007a;font-size:.57rem;font-weight:800;letter-spacing:.1em}.booking-card-main{min-width:0;padding:20px 22px}.booking-card-title-row{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.booking-card-title-row h2{min-width:0;margin:0;color:#fff;font-size:1.13rem;line-height:1.35;overflow-wrap:anywhere}.booking-status{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;padding:5px 8px;border:1px solid transparent;border-radius:999px;font-size:.68rem;font-weight:750}.booking-status-confirmed{border-color:#22c55e38;color:#86efac;background:#22c55e1a}.booking-status-pending{border-color:#f59e0b38;color:#fcd34d;background:#f59e0b1a}.booking-status-cancelled{border-color:#ef444438;color:#fca5a5;background:#ef44441a}.booking-status-completed{border-color:#06b6d438;color:#67e8f9;background:#06b6d41a}.booking-card-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:13px;color:#b5b5bf;font-size:.78rem}.booking-card-meta span{display:inline-flex;align-items:center;gap:6px;min-width:0}.booking-card-meta svg{flex:0 0 auto;color:#fb5963}.booking-ticket-summary{display:flex;align-items:flex-start;gap:10px;margin-top:15px}.booking-summary-label{flex:0 0 auto;padding-top:4px;color:#777985;font-size:.61rem;font-weight:800;letter-spacing:.12em}.booking-seat-list{display:flex;flex-wrap:wrap;gap:5px}.booking-seat-list span{padding:3px 7px;border:1px solid rgba(229,9,20,.3);border-radius:5px;color:#ff858b;background:#e5091414;font-size:.7rem;font-weight:750}.booking-ticket-count{color:#d4d4d8;font-size:.76rem;line-height:1.5;overflow-wrap:anywhere}.booking-card-aside{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;padding:18px 20px;border-left:1px dashed rgba(255,255,255,.13);text-align:right}.booking-order-number{max-width:100%;margin-bottom:17px;color:#767984;font-size:.58rem;font-weight:800;letter-spacing:.1em}.booking-order-number strong{display:block;margin-top:4px;color:#c7c7ce;font-size:.7rem;letter-spacing:.025em;overflow-wrap:anywhere}.booking-total-label{color:#777985;font-size:.6rem;font-weight:800;letter-spacing:.12em}.booking-total{margin-top:3px;color:#f6c453;font-size:1.32rem;font-weight:850;letter-spacing:-.025em}.booking-card-actions{display:flex;flex-direction:column;align-items:stretch;gap:7px;width:100%;margin-top:14px}.booking-action-primary,.booking-action-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:7px 10px;border:1px solid transparent;border-radius:7px;font-size:.74rem;font-weight:750;text-decoration:none;transition:background .18s ease,border-color .18s ease}.booking-action-primary{border-color:#e509146b;color:#fff;background:#c90d17}.booking-action-primary:hover{border-color:#ff4650;background:#e50914}.booking-action-secondary{border-color:#ef444433;color:#fca5a5;background:#ef44440e}.booking-action-secondary:hover{border-color:#ef44446b;background:#ef44441f}.booking-empty-state{display:flex;flex-direction:column;align-items:center;padding:76px 20px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#ffffff06;text-align:center}.booking-empty-icon{display:grid;place-items:center;width:62px;height:62px;margin-bottom:17px;border:1px solid rgba(229,9,20,.25);border-radius:18px;color:#ff6972;background:#e509141a}.booking-empty-state h2{margin:0;color:#fff;font-size:1.2rem}.booking-empty-state p{margin:8px 0 21px;color:var(--text-secondary);font-size:.88rem}@media (max-width: 760px){.booking-card{grid-template-columns:92px minmax(0,1fr)}.booking-card-poster{grid-row:span 2}.booking-card-main{padding:17px 17px 12px}.booking-card-aside{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:12px 17px 16px;border-top:1px dashed rgba(255,255,255,.13);border-left:0;text-align:left}.booking-order-number{margin:0}.booking-order-number strong{max-width:135px}.booking-total-label{display:none}.booking-total{flex:0 0 auto;margin:0;font-size:1.08rem}.booking-card-actions{flex-direction:row;justify-content:flex-end;width:auto;margin:0}.booking-action-primary,.booking-action-secondary{min-height:34px;white-space:nowrap}}@media (max-width: 520px){.my-bookings-header{padding-top:27px}.my-bookings-heading{gap:12px;padding-bottom:21px}.my-bookings-heading-icon{flex-basis:44px;width:44px;height:44px;border-radius:13px}.my-bookings-heading p{max-width:225px;font-size:.8rem}.my-bookings-count{align-self:flex-start;padding:6px 8px;font-size:.66rem}.booking-tabs{gap:5px;padding-bottom:10px}.booking-tab{padding:9px 11px;font-size:.75rem}.my-bookings-content{padding-top:18px}.booking-list{gap:11px}.booking-card{grid-template-columns:76px minmax(0,1fr);border-radius:13px}.booking-card-poster>span{bottom:7px;left:6px;padding:3px 5px;font-size:.5rem}.booking-card-main{padding:13px 12px 10px}.booking-card-title-row{gap:7px}.booking-card-title-row h2{font-size:.94rem}.booking-status{padding:4px 6px;font-size:.6rem}.booking-card-meta{gap:7px 12px;margin-top:10px;font-size:.71rem}.booking-card-meta span{align-items:flex-start}.booking-card-meta svg{width:13px;height:13px}.booking-ticket-summary{gap:7px;margin-top:11px}.booking-seat-list span{padding:3px 5px;font-size:.64rem}.booking-card-aside{flex-wrap:wrap;gap:9px;padding:10px 11px 12px}.booking-order-number{font-size:.53rem}.booking-order-number strong{max-width:112px;font-size:.62rem}.booking-total{font-size:.95rem}.booking-card-actions{flex:1 1 100%}.booking-action-primary,.booking-action-secondary{flex:1;font-size:.69rem}}
