*{box-sizing:border-box;margin:0;padding:0}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;--color-text: #1e0a3c;--color-bg: #ffffff;color:#1e0a3c;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}button,input{font-family:inherit}.event-checkout-page{min-height:100vh;background:#fff;color:#1e0a3c;padding:2rem;max-width:1200px;margin:0 auto}.event-checkout-loading,.event-checkout-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:40vh;gap:1rem;text-align:center}.event-checkout-loading p,.event-checkout-error p{color:#666;margin:0}.event-checkout-error h2{margin:0 0 .5rem;font-size:1.5rem}.spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.event-checkout-layout{display:flex;gap:2rem;align-items:flex-start}@media(max-width:768px){.event-checkout-layout{flex-direction:column}}.event-checkout-main{flex:1;min-width:0;max-width:65%}@media(max-width:768px){.event-checkout-main{max-width:100%}}.event-checkout-sidebar{flex:0 0 35%;min-width:280px}@media(max-width:768px){.event-checkout-sidebar{flex:1 1 auto;width:100%}}.event-checkout-header{margin-bottom:1.5rem}.event-checkout-title{font-size:1.75rem;font-weight:600;margin:0 0 .25rem;line-height:1.3}.event-checkout-datetime{font-size:1rem;color:#6b7280;margin:0}.event-checkout-promo{margin-bottom:1.5rem}.event-checkout-promo label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.event-checkout-promo-row{display:flex;gap:.5rem}.event-checkout-promo-row input{flex:1;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem}.event-checkout-promo-row input:disabled{background:#f9fafb;color:#9ca3af}.event-checkout-promo-row button{padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer}.event-checkout-promo-row button:disabled{background:#9ca3af;cursor:not-allowed}.event-checkout-tickets h2{font-size:1rem;font-weight:600;margin:0 0 1rem}.event-checkout-no-tickets{color:#6b7280;margin:0}.event-checkout-ticket-cards{display:flex;flex-direction:column;gap:1rem}.event-checkout-ticket-card{border:1px solid #e5e7eb;border-radius:8px;padding:1rem;background:#fff}.event-checkout-ticket-card.sold-out{opacity:.7}.event-checkout-ticket-card.sold-out .event-checkout-quantity-control button,.event-checkout-ticket-card.sold-out .event-checkout-quantity-control span{color:#9ca3af}.event-checkout-ticket-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.event-checkout-ticket-header h3{font-size:1rem;font-weight:600;margin:0}.event-checkout-sold-out{font-size:.875rem;color:#6b7280;background:#f3f4f6;padding:.25rem .5rem;border-radius:4px}.event-checkout-ticket-body{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.event-checkout-quantity-control{display:flex;align-items:center;gap:.5rem;border:1px solid #d1d5db;border-radius:6px;overflow:hidden}.event-checkout-quantity-control button{width:36px;height:36px;border:none;background:#f9fafb;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151}.event-checkout-quantity-control button:not(:disabled):hover{background:#f3f4f6}.event-checkout-quantity-control button:disabled{color:#9ca3af;cursor:not-allowed}.event-checkout-quantity-control .event-checkout-quantity{min-width:1.5rem;text-align:center;font-weight:500}.event-checkout-ticket-price{display:flex;flex-direction:column;gap:.25rem}.event-checkout-ticket-price .price{font-size:1rem;font-weight:600}.event-checkout-ticket-price .fee-tax,.event-checkout-ticket-price .availability{font-size:.8125rem;color:#6b7280}.event-checkout-bottom-bar{display:flex;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.event-checkout-few-left{margin:0;font-size:.875rem;color:#b45309}.event-checkout-cta{padding:.75rem 1.5rem;background:#f97316;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer}.event-checkout-cta:disabled{background:#9ca3af;cursor:not-allowed}.event-checkout-branding{margin-bottom:1rem;border-radius:8px;overflow:hidden;background:#f3f4f6}.event-checkout-branding--mobile{display:none}@media(max-width:768px){.event-checkout-branding--mobile{display:block;margin-bottom:1.5rem}.event-checkout-branding--sidebar{display:none}}.event-checkout-event-image{width:100%;height:auto;display:block}.event-checkout-placeholder-banner{aspect-ratio:16 / 9;background:linear-gradient(135deg,#e5e7eb,#d1d5db)}.event-checkout-cart-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:2rem;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af}.event-checkout-cart-icon{width:64px;height:64px;margin-bottom:.5rem}.event-checkout-cart-placeholder p{margin:0;font-size:.875rem}.not-found-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.not-found-page__content{text-align:center;max-width:420px}.not-found-page__logo{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:2rem}.not-found-page__logo-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:#2563eb;color:#fff;border-radius:4px;font-weight:700;font-size:22px;font-family:inherit}.not-found-page__logo-text{color:var(--color-text, #1e0a3c);font-size:26px;font-weight:600;letter-spacing:-.5px}.not-found-page__title{color:var(--color-text, #1e0a3c);font-size:1.75rem;font-weight:700;margin:0 0 1rem;line-height:1.2}.not-found-page__message{color:var(--color-text, #1e0a3c);font-size:1.125rem;line-height:1.6;margin:0 0 .5rem}.not-found-page__hint{color:#6f7287;font-size:.9375rem;line-height:1.5;margin:0}#root{width:100%;min-height:100vh}
