*{margin:0;padding:0;box-sizing:border-box}:root{--background-color:var(--background);--card-background:var(--background);--text-color:var(--foreground);--text-secondary:var(--muted-foreground);--border-color:var(--input-border-color);--primary-color:var(--primary);--primary-hover:var(--primary-alpha-30);--primary-active:var(--primary-alpha-15);--button-text:var(--button-text);--error-color:#ef4444;--success-color:#10b981;--border-radius-sm:4px;--border-radius-md:8px;--border-radius-lg:12px;--border-radius-xl:20px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--font-size-xs:12px;--font-size-sm:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:24px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:600;--transition-speed:0.2s;--glass-bg:rgba(18,16,19,.25);--glass-bg-heavy:rgba(18,16,19,.5);--glass-border:hsla(0,0%,100%,.15);--glass-highlight:hsla(0,0%,100%,.06);--glass-shadow:0 4px 16px rgba(0,0,0,.15)}.event-page-blurred-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden;pointer-events:none}.event-page-blurred-bg-img{object-fit:cover;filter:blur(20px);transform:scale(1.15)}.event-page-blurred-bg-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--background);opacity:.6}body{background-color:var(--background-color);color:var(--text-color);line-height:1.5}.checkout-container{max-width:1200px;margin:0 auto;padding:var(--spacing-md);min-height:100vh;background-color:transparent;position:relative;z-index:1}.checkout-content{display:flex;flex-direction:column;position:relative}.checkout-header{padding:var(--spacing-md) 0;margin-bottom:var(--spacing-lg)}.checkout-main{display:flex;gap:var(--spacing-xl);flex:1 1;margin-top:20px}.checkout-form{flex:1 1}.checkout-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-sm)}.checkout-description{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.error-message{background-color:rgba(239,68,68,.1);color:var(--error-color);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);text-align:center}.form-group{width:100%;display:flex;flex-direction:column;position:relative;margin:0 auto 20px}.form-input{padding:.75rem;background-color:var(--glass-bg-heavy);border:1px solid var(--glass-border);border-radius:.375rem;color:var(--text-color,#fff);font-size:1rem;transition:border-color .3s ease}.form-input:focus{outline:none}.form-label{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:16px;color:var(--muted-foreground,hsla(0,0%,100%,.5));pointer-events:none;transition:all .3s ease;padding:0 5px}.form-input:focus+.form-label,.form-input:not(:placeholder-shown)+.form-label{top:0;transform:translateY(-50%) scale(.8)}.counter-button{width:28px;height:28px;border-radius:var(--border-radius-md);background-color:var(--input-bg-color,#1d1d1d);color:var(--text-color);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-speed)}.counter-button:hover:not(:disabled){background-color:var(--primary-color);color:var(--button-text)}.counter-button:disabled{opacity:.5;cursor:not-allowed}.counter-icon{line-height:1}.counter-icon,.ticket-count{font-size:var(--font-size-md)}.ticket-count{min-width:30px;text-align:center;font-weight:var(--font-weight-medium)}.ticket-quantity-row{align-items:center}.summary-ticket-counter{display:flex;align-items:center;gap:var(--spacing-sm)}.continue-button{background-color:var(--primary-color);color:var(--button-text);border:none;padding:var(--spacing-md) var(--spacing-xl);border-radius:9999px;font-size:var(--font-size-md);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color var(--transition-speed);width:100%;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.continue-button:hover{background-color:var(--primary-hover)}.continue-button:active{background-color:var(--primary-active)}.terms-container{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-lg);line-height:1.6}.text-link{color:var(--primary-color);background:none;border:none;padding:0;font:inherit;cursor:pointer;text-decoration:underline}.text-link:hover{color:var(--primary-hover)}.order-summary{width:50%;background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-highlight);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);position:-webkit-sticky;position:sticky;top:var(--spacing-xl);height:-moz-fit-content;height:fit-content;transition:transform var(--transition-speed),opacity var(--transition-speed)}.order-summary.expanded .summary-content{max-height:1000px;opacity:1;transition:max-height .3s ease,opacity .3s ease;overflow:visible}.order-summary.collapsed .summary-content{max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;margin-top:0}.order-summary.collapsed .summary-header{border-bottom:none;margin-bottom:0;padding-bottom:var(--spacing-md)}.summary-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);min-height:60px;position:relative}.summary-header-content{flex:1 1;display:flex;flex-direction:column}.collapsed-summary-info{display:flex;justify-content:space-between;margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-secondary);position:absolute;top:30px;left:0;width:100%;text-align:center}.ticket-count{margin-right:var(--spacing-md)}.total-price-collapsed{font-weight:var(--font-weight-bold);color:var(--text-color)}.collapse-button{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-md);transition:background-color var(--transition-speed),transform var(--transition-speed);position:absolute;top:0;right:0}.collapse-button:hover{background-color:hsla(0,0%,100%,.1)}.toggle-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.close-button{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);border-radius:50%;transition:background-color var(--transition-speed)}.close-button:hover{background-color:hsla(0,0%,100%,.1)}.summary-content{gap:var(--spacing-md)}.summary-content,.summary-section{display:flex;flex-direction:column}.summary-section{gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.summary-section-title{font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xs)}.addon-name,.summary-section-title{font-size:var(--font-size-md);color:var(--text-color)}.addon-price{font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.summary-row{display:flex;justify-content:space-between;align-items:center}.discount-code{margin-bottom:var(--spacing-lg)}.discount-code input{width:60%;background-color:var(--input-background);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--spacing-sm);color:var(--text-color);font-size:var(--font-size-sm)}.subtotal{padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.fee{color:var(--text-secondary);font-size:var(--font-size-sm)}.fee-details{font-size:calc(var(--font-size-sm) - 2px);opacity:.8;font-style:italic}.total{padding-top:var(--spacing-md);margin-top:var(--spacing-md);border-top:1px solid var(--border-color);font-weight:var(--font-weight-bold)}.total-price{font-size:var(--font-size-lg)}#payment-form,.stripe-placeholder form{width:100%!important;max-width:100%!important}.otp-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000}.otp-content{background-color:var(--card-background);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);width:90%;max-width:400px;position:relative}.otp-content h2{margin-bottom:var(--spacing-md)}.otp-content p{margin-bottom:var(--spacing-lg);color:var(--text-secondary)}.otp-actions{display:flex;justify-content:space-between;margin-top:var(--spacing-lg)}.resend-button{background:transparent;border:1px solid var(--border-color);color:var(--text-color);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);cursor:pointer;transition:background-color var(--transition-speed)}.resend-button:hover{background-color:hsla(0,0%,100%,.1)}.verify-button{background-color:var(--primary-color);color:var(--button-text);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);cursor:pointer;transition:background-color var(--transition-speed)}.verify-button:hover{background-color:var(--primary-hover)}.loading-overlay{right:0;bottom:0;background-color:rgba(0,0,0,.8);flex-direction:column}.loading-spinner{width:50px;height:50px;border:4px solid hsla(0,0%,100%,.1);border-top:4px solid var(--primary-color);animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.payment-section{margin-top:var(--spacing-xl)}.section-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-md)}.stripe-container{border:1px solid var(--glass-border);border-radius:var(--border-radius-md);padding:var(--spacing-lg);background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.stripe-placeholder{text-align:center;padding:var(--spacing-xl) 0;color:var(--text-secondary)}.form-row{display:flex;gap:20}@media (max-width:768px){.checkout-main{flex-direction:column-reverse}.order-summary{width:100%;position:static}.order-summary .hide{display:none}}@media (max-width:600px){.form-row{flex-direction:column;gap:0}.checkout-form{padding-bottom:var(--spacing-xl)}}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-in-out}.loading-container{width:90%;max-width:400px;background-color:var(--background,#121212);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.2);overflow:hidden;padding:24px;animation:slideUp .4s ease-out}.loading-content{flex-direction:column;text-align:center}.loading-content,.loading-icon{display:flex;align-items:center}.loading-icon{margin-bottom:24px;position:relative;width:80px;height:80px;justify-content:center}.loading-spinner{width:60px;height:60px;border:4px solid transparent;border-radius:50%;animation:spin 1.2s cubic-bezier(.5,0,.5,1) infinite}.loading-progress{width:100%;height:4px;background-color:hsla(0,0%,100%,.1);border-radius:2px;margin-bottom:24px;overflow:hidden}.loading-progress-bar{height:100%;width:30%;border-radius:2px;animation:progress 2s ease-in-out infinite}.loading-message{font-size:1.5rem;font-weight:600;margin-bottom:8px;color:var(--text-color,#fff)}.loading-submessage{font-size:.95rem;color:var(--muted-foreground,hsla(0,0%,100%,.6));margin-bottom:16px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes progress{0%{transform:translateX(-100%)}50%{transform:translateX(100%)}to{transform:translateX(300%)}}#payment-form form{width:30vw;min-width:500px;align-self:center;box-shadow:var(--button-shadow,0 0 0 .5px rgba(50,50,93,.1),0 2px 5px 0 rgba(50,50,93,.1),0 1px 1.5px 0 rgba(0,0,0,.07));border-radius:var(--border-radius-lg,7px);padding:0 40px 40px;background-color:var(--input-bg-color,#fff)}#payment-form #email{border-radius:var(--border-radius-md,6px);margin-bottom:16px;padding:12px;border:1px solid var(--border,rgba(50,50,93,.1));max-height:44px;font-size:var(--font-size-md,16px);width:100%;background:var(--input-bg-color,#fff);color:var(--input-text-color,#000);box-sizing:border-box}#payment-form #payment-message{color:var(--muted-foreground,#697386);font-size:var(--font-size-md,16px);line-height:20px;padding-top:12px;text-align:center}#payment-form #payment-element{margin-bottom:24px}#payment-form button{background:var(--primary-gradient,linear-gradient(90deg,var(--primary,#9333ea) 0,var(--secondary,#6b21a8) 100%));font-family:var(--font-family,Arial,sans-serif);color:var(--button-text,#fff);border-radius:var(--border-radius-md,4px);border:1px;border-style:solid;border-color:var(--border,transparent);padding:12px 16px;font-size:var(--font-size-md,16px);font-weight:600;cursor:pointer;display:block;transition:all .2s ease;width:100%;transform:var(--button-transform,none);box-shadow:var(--button-shadow,0 4px 5.5px 0 rgba(0,0,0,.07))}#payment-form button:hover{background:var(--primary-alpha-30,#7e22ce)}#payment-form button:disabled{opacity:.5;cursor:default;background:var(--button-greyed,hsla(0,0%,100%,.1))}.spinner,.spinner:after,.spinner:before{border-radius:50%}.spinner{color:var(--text-color,#fff);font-size:22px;text-indent:-99999px;margin:0 auto;position:relative;width:20px;height:20px;box-shadow:inset 0 0 0 2px;transform:translateZ(0)}.spinner:after,.spinner:before{position:absolute;content:""}.spinner:before{height:20.4px;border-radius:20.4px 0 0 20.4px;top:-.2px;left:-.2px;transform-origin:10.4px 10.2px;animation:loading 2s ease 1.5s infinite}.spinner:after,.spinner:before{width:10.4px;background:var(--primary-gradient,linear-gradient(90deg,var(--primary,#9333ea) 0,var(--secondary,#6b21a8) 100%))}.spinner:after{height:10.2px;border-radius:0 10.2px 10.2px 0;top:-.1px;left:10.2px;transform-origin:0 10.2px;animation:loading 2s ease infinite}@keyframes loading{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media only screen and (max-width:600px){form{width:100%;max-width:320px}}