.ticket-screen-background{background:linear-gradient(160deg,#4a00e0,#8e2de2);min-height:100vh;padding:20px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#fff;position:relative;overflow-y:auto;overflow-x:hidden;height:100vh;width:100vw}.ticket-header{text-align:center;margin-bottom:20px}.ticket-header h1{margin:0;font-size:2rem;font-weight:700;letter-spacing:.5px}.ticket-header p{margin:5px 0 0;font-size:1.1rem;opacity:.9;font-weight:500}.ticket-body{display:flex;flex-direction:column;gap:16px;max-width:500px;margin:0 auto;padding-bottom:20px}.ticket-card{background:#fff;color:#333;border-radius:16px;padding:24px;box-shadow:0 8px 20px #0000001a}.main-card{text-align:center}.banner-container{width:100%;height:140px;overflow:hidden;border-radius:12px;margin-bottom:16px}.banner-image{width:100%;height:100%;object-fit:cover;display:block}.qr-code-container{max-width:250px;margin:0 auto 16px;padding:16px;background:#fff;border-radius:8px;border:1px solid #eee;display:flex;justify-content:center;align-items:center}.ticket-info .ticket-seat{display:block;font-size:2.5rem;font-weight:700;color:#000;margin-bottom:8px}.ticket-info .ticket-id{display:block;font-size:1rem;color:#555;letter-spacing:.5px;margin-bottom:24px;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.details-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:12px;margin-bottom:16px}.details-header h2{margin:0;font-size:1.2rem;color:#000;font-weight:600}.details-list{list-style:none;padding:0;margin:0;font-size:.95rem}.details-list li{display:flex;justify-content:space-between;margin-bottom:12px;padding:8px 0;border-bottom:1px solid #f5f5f5}.details-list li:last-child{border-bottom:none;margin-bottom:0}.details-list li span:first-child{color:#555;font-weight:500}.details-list li span:last-child{font-weight:600;color:#000;text-align:right;flex:1;margin-left:16px}.cta-button{border:none;padding:14px 16px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.primary-cta{background-color:#007bff;color:#fff;width:100%;margin-top:8px}.primary-cta:hover{background-color:#0056b3;transform:translateY(-1px);box-shadow:0 4px 12px #007bff4d}.secondary-cta{background-color:transparent;color:#007bff;border:1px solid #007bff;padding:8px 12px;font-size:.9rem}.secondary-cta:hover{background-color:#f0f8ff;transform:translateY(-1px)}.close-button{position:fixed;top:20px;right:20px;background:#fff3;border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.close-button:hover{background:#ffffff4d;transform:scale(1.1)}@media(max-width:640px){.ticket-screen-background{padding:16px;height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.ticket-header h1{font-size:1.5rem}.ticket-header p{font-size:1rem}.ticket-card{padding:20px}.qr-code-container{max-width:200px;padding:12px}.ticket-info .ticket-seat{font-size:2rem}.details-header{flex-direction:column;align-items:flex-start;gap:12px}.details-header h2{font-size:1.1rem}.secondary-cta{align-self:flex-end}.ticket-body{padding-bottom:40px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.ticket-card{animation:fadeInUp .6s ease-out}.main-card{animation-delay:.1s}.details-card{animation-delay:.2s}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.btn-soft{transition:transform .12s ease,opacity .15s ease,box-shadow .15s ease}.btn-soft:hover{transform:translateY(-1px)}.btn-soft:active{transform:translateY(0)}.fade-in{animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mini-spinner{width:16px;height:16px;border-radius:9999px;border:2px solid rgba(255,255,255,.7);border-top-color:transparent;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.pulse-soft{animation:pulseSoft 1.6s ease-in-out infinite}@keyframes pulseSoft{0%,to{opacity:1}50%{opacity:.7}}input:focus,button:focus{outline:2px solid transparent;outline-offset:2px}button,input,select,textarea{transition:all .2s ease-in-out}.card-shadow{box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 25px -3px #d226884d,0 4px 6px -2px #d226881a}.event-live{animation:livePulse 2s ease-in-out infinite}@keyframes livePulse{0%,to{box-shadow:0 0 #22c55e66}50%{box-shadow:0 0 0 10px #22c55e00}}.event-card{transition:all .3s ease}.event-card:hover{transform:translateY(-2px);box-shadow:0 20px 40px -5px #00000026}.status-badge{transition:all .2s ease}.status-badge.live{animation:statusPulse 1.5s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.7}}
