body{font-family:Arial,sans-serif;background:color-mix(in srgb,var(--primary-gradient-start),white 92%);margin:0;padding:0;display:flex;flex-direction:column;align-items:center}main{width:90%;max-width:1000px;margin:0 auto;padding:15px;border-radius:10px;background:color-mix(in srgb,var(--primary-gradient-start),white 85%);color:var(--header-text-color, #000000);border:1px solid var(--border-color)}header{display:flex;border:1px solid var(--border-color);border-radius:10px;flex-direction:row;align-items:center;justify-content:flex-start;padding:15px 25px;background:color-mix(in srgb,var(--primary-gradient-start),75% white);margin-top:10px;margin-bottom:10px}.header-text{display:flex;flex-direction:column;justify-content:center;flex-grow:1}header h1{margin:0;padding:0;font-size:1.8rem;color:var(--header-text-color)}header h2{margin:0;padding:0;font-size:1.2rem;color:var(--header-text-color)}footer{display:flex;flex-direction:column;align-items:center;padding:10px;text-align:center;border:1px var(--border-color);border-radius:8px}.contact-info{margin-bottom:15px}.contact-info h3{margin-bottom:10px;font-size:16pt}.contact-info p{margin:8px 0}.contact-info a{color:var(--link-color, #0066cc);text-decoration:none}.contact-info a:hover{text-decoration:underline}.copyright{font-size:.9rem;color:var(--footer-text-color, #666)}.shows-grid{background:color-mix(in srgb,var(--primary-gradient-start),85% White);border:1px solid var(--border-color);display:flex;flex-direction:column;gap:20px;max-width:90%;border-radius:10px;margin:20px;padding:20px}.show{display:flex;background:linear-gradient(to bottom,color-mix(in srgb,var(--primary-gradient-start),85% white),color-mix(in srgb,var(--primary-gradient-start),72% white),color-mix(in srgb,var(--primary-gradient-start),60% white));align-items:center;border:1px solid var(--border-color);border-radius:8px;padding:15px;gap:20px}.show img{width:300px;height:auto;border-radius:8px}.show-details{flex:1}.show-details h2{margin:10px 0;font-size:1.5em}.buy-tickets{margin-top:10px;padding:10px 20px;background-color:var(--border-color);color:#fff;font-size:16px;border:2px solid var(--border-color);border-radius:5px;cursor:pointer;transition:all .3s ease}.buy-tickets:hover{background-color:var(--button-hover, #7a2b2b);opacity:.9;transform:scale(1.02)}.buy-tickets:disabled{background-color:#ccc;border-color:#999;cursor:not-allowed;transform:none;opacity:.7}#index-tooltip{position:absolute;background:var(--primary-gradient-start);color:var(--header-text-color);padding:5px 10px;border-radius:5px;font-size:1.5rem;display:none;z-index:1000;white-space:nowrap;transition:opacity .5s ease-in-out,transform .5s ease-in-out;border:1px solid var(--border-color);box-shadow:0 2px 8px #00000026;background:linear-gradient(to right,var(--primary-gradient-start),var(--primary-gradient-end))}.layout{background:color-mix(in srgb,var(--primary-gradient-start),white 80%)}.layout .content{background:color-mix(in srgb,var(--primary-gradient-start),white 75%);border:1px solid var(--border-color);border-radius:10px;padding:20px;align-items:flex-start;gap:15px}.banner img{border:1px solid var(--event-border-color);max-width:50%;height:auto;margin:20px auto;display:block}@media (max-width: 768px){.banner img{max-width:70%;margin:15px auto}}.performances-container{flex-basis:100%;display:grid;background:color-mix(in srgb,var(--primary-gradient-start),white 75%);grid-template-columns:40% 1fr;gap:1rem;width:100%;padding:10px;border:1px solid var(--border-color);border-radius:10px;align-items:start;box-sizing:border-box}.performance-container{width:100%;grid-column:2;display:flex;border-radius:10px;flex-direction:column;gap:.75rem;box-sizing:border-box;padding:0;overflow:auto;max-height:100%}.performance{width:100%;display:flex;justify-content:space-between;align-items:center;margin:5px auto;max-width:90%;padding:10px;border:1px solid var(--border-color);background:linear-gradient(to bottom,color-mix(in srgb,var(--primary-gradient-start),85% white),color-mix(in srgb,var(--primary-gradient-start),72% white),color-mix(in srgb,var(--primary-gradient-start),60% white));border-radius:8px;font-size:1.5rem;transform:translateY(-4px);box-shadow:0 4px 8px color-mix(in srgb,var(--border-color, #000000) 20%,white)}.performance-info h2{font-size:1.3rem;margin:0}.performance-action button{padding:8px 16px;background-color:color-mix(in srgb,var(--primary-gradient-start, #90a368) 60%,white);color:#fff;border:none;border-radius:5px;cursor:pointer;transition:background-color .5s ease}.performance-action button:hover{background-color:color-mix(in srgb,var(--primary-gradient-end, #90a368) 80%,white)}.performance .details{flex-grow:1}.performance:hover{box-shadow:0 4px 8px #0003;transform:translateY(-4px);transition:all .3s ease}@media (max-width: 768px){.performance{flex-direction:column;align-items:flex-start}}.seat-details{display:flex;gap:40px;margin-top:10px}.seat-details p{color:var(--secondary-text, #666666);font-weight:bolder;font-size:16pt;margin:0}.flash-red{animation:flash 2s infinite;font-weight:bolder;color:red}@media (max-width: 768px){.banner{padding:1rem}.banner h1{font-size:2rem}}#countdown-timer{color:red;font-weight:700;font-size:18px;text-align:center;flex:1}.cancel-button,.proceed-button{background-color:var(--border-color, #C8C8C8);color:var(--section-bg, #000000);border:none;padding:10px 20px;font-size:16px;border-radius:5px;cursor:pointer;margin-bottom:10px}.cancel-button:hover,.proceed-button:hover{background-color:var(--primary-gradient-start, #FBFF04);color:#fff}.continue-button,.back-button{cursor:pointer}.continue-button rect,.back-button rect{fill:var(--primary-gradient-start);stroke:var(--border-color);stroke-width:1px;rx:20;transition:fill .3s ease}.continue-button text,.back-button text{fill:#fff;font-size:16px;font-weight:700;pointer-events:none}.continue-button:hover rect,.back-button:hover rect{fill:var(--primary-gradient-end)}.remove-seat{background-color:var(--border-color, #4CAF50);color:var(--section-bg, #ffffff);font-size:16px;padding:10px 20px;border:none;border-radius:4px;cursor:pointer;margin-bottom:10px}.remove-seat:hover{background-color:var(--primary-gradient-start, #FBFF04);color:#fff}.confirmation-message{color:var(--secondary-text);font-size:12pt;margin:4px auto;position:relative;display:block}#account-confirmation{display:block;width:100%;text-align:center;padding-left:20px;border:none}#account-container{display:flex;align-items:center;gap:10px;margin-top:10px}#account-container span{font-weight:700;color:var(--secondary-text, #666666)}#payment-form{display:flex;flex-direction:row;flex-wrap:wrap;width:100%;gap:15px;margin:20px auto;max-width:800px;box-sizing:border-box;padding:10px}#payment-form input{background-color:var(--card-bg, #ffffff);border:1px solid var(--border-color);color:var(--header-text-color, #374151);padding:8px 12px;font-size:16px;border-radius:8px;box-sizing:border-box;transition:all .2s ease;box-shadow:0 1px 2px color-mix(in srgb,var(--border-color, #000000) 5%,transparent)}#payment-form input:focus{outline:none;border-color:var(--link-color, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--link-color, #3b82f6) 20%,transparent)}#payment-form input:hover{border-color:var(--event-border-color, #d1d5db)}#payment-form label{font-weight:600;margin-right:4px;color:var(--secondary-text, #666666);font-size:.95rem;transition:color .2s ease}#payment-form a{color:var(--link-color, #0066cc);text-decoration:none;transition:color .2s ease}#payment-form a:hover{color:color-mix(in srgb,var(--link-color, #0066cc) 80%,#000000);text-decoration:underline}#payment-form input[name=first]{width:20%;border:1px solid var(--border-color)}#payment-form input[name=last]{width:30%;border:1px solid var(--border-color)}#payment-form input[name=email]{width:40%;border:1px solid var(--border-color)}#payment-form{flex-wrap:nowrap}#payment-form input:invalid{border-color:var(--border-color)}.payment-area{display:flex;align-items:center;background-color:#e6f7e6;gap:20px;margin-top:10px}#email-status{margin-top:10px;font-size:14px;color:green}.hidden{display:none}#email{flex:2}#first,#last{flex:1}#email,#first,#last{background-color:#fff!important;padding:12px;border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:16px;width:100%;margin-bottom:15px;box-shadow:0 1px 3px #0000000d}label[for=email],label[for=first],label[for=last]{display:block;font-weight:700;margin-bottom:5px;font-size:14px;color:var(--secondary-text, #333)}#selected-seats-list li:nth-child(odd){background:color-mix(in srgb,var(--background-gradient-start),White 75%)}#selected-seats-list li:nth-child(2n){background:color-mix(in srgb,var(--primary-gradient-start),white 85%),}.flash-red{color:red;animation:flash 1s infinite}@keyframes flash{0%,to{opacity:1}50%{opacity:.5}}image.accessible-icon,image.companion-icon{pointer-events:auto}#seat-alert{border:1px solid var(--border-color);color:var(--border-color, #ff0000);background:var(--theme-error, 50% transparent, #ffff00);position:absolute;max-width:150px;min-width:100px;border-radius:4px;padding:8px 12px;box-shadow:0 4px 8px #0003;z-index:9999;font-size:18px;pointer-events:none;text-align:center;transform:translate(-50%,-50%);transition:opacity .3s ease}#seat-alert.hidden{opacity:0;visibility:hidden}.banner .company-logo{max-height:300px;max-width:300px;margin-bottom:10px}.banner h1{color:var(--header-text-color);font-size:2.2rem;margin:10px 0;text-align:center}.banner .navigation{display:flex;justify-content:left;margin-top:10px;margin-left:10px}.banner{width:100%;grid-column:1;background-color:color-mix(in srgb,var(--background-gradient-start) 30%,white);padding:1rem;border-radius:8px;box-sizing:border-box;max-width:100%;overflow:hidden}.flex-end-margin{display:flex;justify-content:flex-end;margin:20px 0}.promo-code-label{font-weight:700;margin-bottom:8px}.promo-code-input-container{display:flex;align-items:center}.promo-code-input{width:80%;padding:5px;font-size:14px}.apply-code-button{margin-left:10px;padding:5px 10px;font-size:14px;color:var(--card-bg)}.payment-header{font-weight:700;margin-bottom:5px;display:flex;align-items:center}.payment-details{display:flex;align-items:center}.confirm-order-button{margin-left:20px}.timerContainer{text-align:center;margin:10px auto;display:flex;justify-content:center;width:100%}.action-row{display:flex;align-items:center;justify-content:space-between;padding:2px 6px;transition:all .2s ease-in-out;width:70%;color:red}#performances{min-height:100%;display:flex;flex-direction:column;align-items:stretch;gap:10px}.banner img,.performances{max-width:400px;margin:0 auto;text-align:left}.ada-icon{font-weight:700;fill:#333}#pricing-tier-summary{padding:5px;align-items:center;width:100%;margin:10px auto;transition:all .2s ease-in-out;box-sizing:border-box}#pricing-tier-summary table{border-collapse:collapse;width:90%;margin:20px auto}#pricing-tier-summary td{color:var(--secondary-text, #666666)}#pricing-tier-summary th{color:var(--header-text-color, #000000);padding:8px;border:solid 1px var(--border-color)}#continue-to-invoice{background-color:color-mix(in srgb,var(--background-gradient-start) 50%,white);color:var(--header-text-color, #000000);border:none;padding:10px 20px;font-size:16px;border-radius:5px;cursor:pointer;transition:all .2s ease}#continue-to-invoice:hover{background-color:color-mix(in srgb,var(--background-gradient-start) 50%,black)}#chart{margin:0 auto;width:90%;max-width:800px;height:auto;aspect-ratio:8 / 7;background-color:(in srgb,var(--primary-gradient-start) 20%,white 80%);border-color:var(--border-color);border:solid 1px var(--border-color);border-radius:10px;box-sizing:border-box}#selected-seats-container{position:absolute;top:120px;right:5%;width:20%;background:linear-gradient(to bottom,color-mix(in srgb,var(--primary-gradient-start) 50%,white),color-mix(in srgb,var(--primary-gradient-start) 30%,white),color-mix(in srgb,var(--primary-gradient-start) 10%,white));border:1px solid var(--border-color);box-shadow:0 4px 8px color-mix(in srgb,var(--border-color, #000000) 10%,transparent);border-radius:8px;padding:15px;box-sizing:border-box;text-align:left;font-size:14px;display:none}#selected-seats-container h3{color:var(--header-text-color, #000000);margin:0 0 10px;font-size:18px;font-weight:700;text-align:center}#selected-seats-list{list-style:none;padding:0;margin:0;max-height:400px;overflow-y:auto}#selected-seats-list li{border:1px solid var(--border-color);background-color:color-mix(in srgb,var(--primary-gradient-start),70% white),;box-shadow:0 2px 4px color-mix(in srgb,var(--border-color, #000000));margin:5px 0;padding:8px;transition:all .2s ease;color:var(--secondary-text, #666666)}#selected-seats-list li:hover{border-color:var(--border-color, #ccc);transform:translateY(-1px);box-shadow:0 3px 6px color-mix(in srgb,var(--border-color, #000000))}#selected-seats-container p{margin:10px 0;font-size:16px;text-align:right;font-weight:700;color:var(--header-text-color, #000000)}#selected-seats-container span{color:var(--link-color, #007bff)}#selected-seats-list li:last-child{border-bottom:none}#progress-bar{display:flex;justify-content:space-between;align-items:center;padding:0;background-color:var(--section-bg, #f3f3f3);border-radius:10px;width:45%;margin:0 auto 10px}#progress-bar ul{list-style:none;display:flex;justify-content:space-between;width:100%;padding:0;margin:0}#progress-bar .step{flex:1;text-align:center;padding:10px;position:relative;font-weight:400;color:var(--secondary-text, #aaa)}#progress-bar .step.completed{font-weight:700;color:var(--link-color, #4caf50);background-color:color-mix(in srgb,var(--section-bg, #e6f7e6) 50%,var(--card-bg, #ffffff));border-radius:5px;padding:10px}#progress-bar .step.completed:before{content:"✔";color:#4caf50;font-size:14px;font-weight:700;margin-right:8px}#progress-bar .step.completed:before{display:inline-block;background-color:transparent}#progress-bar .step.active{font-weight:700;color:var(--border-color, #2196f3);background-color:color-mix(in srgb,var(--primary-gradient-start, #dfefff) 30%,var(--card-bg, #ffffff));border-radius:5px;padding:10px;animation:flash-progress 1s infinite;box-shadow:0 4px 6px #0000001a}#progress-bar .step:after{content:"";position:absolute;top:50%;right:-50%;height:2px;width:100%;background-color:#ccc;z-index:-1;transform:translateY(-50%)}#progress-bar .step.completed:after{background-color:#4caf50}#progress-bar .step.active:after{background-color:#2196f3}#progress-bar .step:last-child:after{display:none}@keyframes flash-progress{0%,to{color:var(--header-text-color)}50%{color:var(--theme-success)}}#payment-header{color:var(--header-text-color, #2D2D2D);display:flex;align-items:center;gap:10px}#payment-tooltip{background-color:red;color:#f5f5f5;padding:5px;border-radius:5px;box-sizing:border-box;font-size:14px;visibility:hidden;opacity:0;display:none;transition:opacity .3s ease-in-out,display 0s .3s;z-index:1000;position:relative;border-bottom:5px;border:1px solid var(--border-color)}#payment-tooltip.show{visibility:visible;opacity:1;display:block;transition:opacity .3s ease-in-out}.summary-table{width:100%;border-collapse:collapse;margin-top:10px}.summary-table th,.summary-table td{border:1px solid var(--border-color);padding:8px;text-align:left}.summary-table th{background-color:var(--card-bg);font-weight:700}.summary-table tfoot td{font-weight:700}#account-container{text-align:center;margin-top:10px}#account-container span{font-weight:700;color:#000}#patron-details{width:100%;max-width:800px;margin:10px auto;padding:15px 20px;border:solid 1px var(--border-color);background-color:#f9f9f9;border-radius:10px;box-sizing:border-box}#patron-details h3{color:var(--header-text-color);border-bottom:2px solid var(--border-color, #ddd);padding-bottom:8px;margin-top:0;margin-bottom:15px;font-size:16pt}#patronId{color:var(--header-text-color);padding:4px 8px;font-size:1.2rem}.logo-container{width:200px;display:flex;align-items:center;justify-content:flex-start;margin-right:25px}.company-logo{max-height:70px;max-width:100%;width:auto;object-fit:contain}.navigation{margin-top:20px;text-align:center}.navigation button{background-color:color-mix(in srgb,var(--primary-gradient-start),white 30%);color:#fff;padding:10px 20px;font-size:16px;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s ease}.navigation button:hover{background-color:color-mix(in srgb,var(--primary-gradient-start),white 15%)}#back-to-seating{background-color:color-mix(in srgb,var(--primary-gradient-start),white 30%);color:#fff;padding:10px 20px;font-size:16px;border:none;border-radius:5px;cursor:pointer;box-shadow:0 4px 6px #0000001a;transition:background-color .3s ease,transform .2s ease}.modal-content{background:linear-gradient(to bottom,var(--card-bg, #ffffff),color-mix(in srgb,var(--section-bg, #f8f9fa) 30%,var(--card-bg, #ffffff)));border:1px solid var(--border-color);box-shadow:0 20px 25px -5px color-mix(in srgb,var(--border-color, #000000) 10%,transparent)}#back-to-seating{background:linear-gradient(to bottom,var(--border-color, #007bff),color-mix(in srgb,var(--border-color, #007bff) 90%,#000000));transition:all .2s ease}#back-to-seating:hover{background:linear-gradient(to bottom,var(--button-hover, #0056b3),color-mix(in srgb,var(--button-hover, #0056b3) 90%,#000000));transform:scale(1.05)}#back-to-seating:active{background:linear-gradient(to bottom,color-mix(in srgb,var(--button-hover, #0056b3) 80%,#000000),color-mix(in srgb,var(--button-hover, #0056b3) 100%,#000000));transform:scale(1)}button:disabled{background-color:var(--primary-gradient-end);color:#666;cursor:not-allowed;opacity:.6}#zero-cost-section .alert-success{background-color:color-mix(in srgb,var(--primary-gradient-start, #d4edda) 30%,var(--card-bg, #ffffff));border:1px solid var(--border-color);color:var(--header-text-color, #155724);padding:15px;border-radius:5px;margin-bottom:15px}#process-zero-cost{background:linear-gradient(to right,var(--primary-gradient-start, #17a2b8),var(--primary-gradient-end, #138496));color:var(--card-bg, #ffffff);box-shadow:0 2px 4px color-mix(in srgb,var(--border-color, #000000) 20%,transparent);padding:12px 24px;font-size:16px;font-weight:700;border:none;border-radius:5px;cursor:pointer;transition:all .3s ease;display:block;margin:10px 0}#process-zero-cost:hover{background:linear-gradient(to right,var(--button-hover, #138496),color-mix(in srgb,var(--button-hover, #138496) 80%,#000000));transform:translateY(-1px);box-shadow:0 4px 8px #0003}#process-zero-cost:active{transform:translateY(1px);box-shadow:0 1px 2px #0003}#process-zero-cost:disabled{background:var(--section-bg, #cccccc);color:var(--secondary-text, #666666);cursor:not-allowed;transform:none;box-shadow:none}.processing-overlay{background-color:color-mix(in srgb,var(--card-bg, #000000) 50%,transparent)}.fixed{position:fixed}.inset-0{top:0;right:0;bottom:0;left:0}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.z-50{z-index:50}.bg-black\/50{background-color:#00000080}.bg-white{background-color:#fff}.p-6{padding:1.5rem}.rounded-lg{border-radius:.5rem}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.max-w-md{max-width:28rem}.w-full{width:100%}.mx-4{margin-left:1rem;margin-right:1rem}.space-y-3>*+*{margin-top:.75rem}.mb-4{margin-bottom:1rem}.text-lg{font-size:1.125rem}.font-semibold{font-weight:600}.text-center{text-align:center}.text-black{color:#000}.text-gray-500{color:#6b7280}.text-blue-600{color:#2563eb}.text-green-600{color:#16a34a}.text-red-600{color:#dc2626}.bg-blue-50{background-color:#eff6ff}.gap-3{gap:.75rem}.h-8{height:2rem}.w-8{width:2rem}.h-5{height:1.25rem}.w-5{width:1.25rem}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes orphanPulse{0%{r:7;stroke-opacity:1;fill-opacity:1}50%{r:10;stroke-opacity:.7;fill-opacity:.7}to{r:7;stroke-opacity:1;fill-opacity:1}}.orphaned-seat-warning{animation:orphanPulse 1s infinite ease-in-out;fill:red;stroke:#fff;stroke-width:2}.orphaned-seat-highlight{fill:none;stroke:red;stroke-width:2;stroke-opacity:.5;animation:orphanPulse 1s infinite ease-in-out}#payment-wrap{box-sizing:border-box;display:flex;width:100%;flex-wrap:wrap;gap:15px;align-items:center;padding:10px;background-color:color-mix(in srgb,var(--primary-gradient-start),white 80%);border-radius:10px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid var(--border-color)}.center-timer{display:inline-block;border:solid 1px var(--background-gradient-start)}.policy-section{border:1px solid var(--border-color);padding:15px;margin-top:10px;background-color:#f9f9f9;border-radius:10px;font-size:16px;line-height:1.5;width:100%;box-sizing:border-box}.policy-section h2{font-size:18px;font-weight:700;border-bottom:2px solid var(--border-color)}.policy-section ul{list-style-type:disc;margin-left:20px;padding-left:10px}#logout{background:red;color:#fff;padding:8px 12px;border:none;cursor:pointer}#admin-menu{max-width:400px;margin:20px auto}.menu-section{background:var(--section-bg, #f8f9fa);border:1px solid var(--border-color);margin:10px 0;padding:10px;cursor:pointer}.message{padding:10px;margin:10px 0;border-radius:4px}.message.success{background-color:var(--theme-success, #28a745);color:var(--header-text-color, #155724);border:1px solid var(--border-color)}.message.error{background-color:color-mix(in srgb,var(--theme-error, #dc3545) 20%,var(--card-bg, #ffffff));color:var(--header-text-color, #721c24);border:1px solid var(--border-color)}.message.hidden{display:none}form{max-width:500px;margin:20px auto;padding:20px}label{display:block;margin-top:10px}input,select{width:100%;padding:8px;margin-top:5px;margin-bottom:10px;border:1px solid #ddd;border-radius:4px}input[type=checkbox]{width:auto}button{background-color:var(--border-color, #4CAF50);color:var(--card-bg, #ffffff);padding:10px 15px;border:none;border-radius:4px;cursor:pointer;margin-top:20px}button:hover{background-color:var(--primary-gradient-end);opacity:.6}small{color:#666;font-size:.8em}.menu-section h2{margin:0;text-align:left}.menu-section ul{list-style:none;padding:0;margin:0;display:none}.menu-section.expanded ul{display:block}.menu-section ul li{padding:8px;background:var(--card-bg, #ffffff);border-top:1px solid var(--event-border-color, #ccc);color:var(--secondary-text, #666666);cursor:pointer}.menu-section ul li:hover{background:color-mix(in srgb,var(--primary-gradient-start, #f0f0f0) 20%,var(--card-bg, #ffffff));color:var(--header-text-color, #000000)}.section-title{color:var(--header-text-color);border-bottom:2px solid var(--border-color)}.section-container{background-color:var(--section-bg, #f8f8f8)}.button-container{display:flex;justify-content:space-between;width:100%;margin:10px 0 20px;box-sizing:border-box}.button-container button{padding:10px 20px;box-sizing:border-box}#invoice-container{width:100%;max-width:100%;box-sizing:border-box;margin-bottom:10px;padding:15px;background-color:#f9f9f9;border-radius:8px;border:1px solid var(--border-color);box-shadow:0 2px 4px #0000000d;overflow-x:auto}#invoice-container h3{border-bottom:solid 2px var(--border-color);font-size:16pt;color:var(--header-text-color);padding-bottom:10px}#invoice-container table{width:100%;border:solid 1px var(--border-color);table-layout:fixed;box-sizing:border-box}.invoice-table th,.invoice-table td{padding:10px 25px;text-align:left;border:.5px solid var(--border-color);font-size:18px;line-height:1.1}.invoice-table thead tr{color:var(--header-text-color, #000000);font-weight:700}.invoice-table tr:nth-child(2n){background-color:color-mix(in srgb,var(--primary-gradient-end) 25%,white 75%)}.invoice-table tr:nth-child(odd){background-color:color-mix(in srgb,var(--primary-gradient-end) 15%,white 85%)}@media (max-width: 768px){.invoice-table th,.invoice-table td{padding:8px 12px;font-size:16px}}.receipt-container{max-width:100%;margin:20px auto;padding:20px;background-color:var(--primary-gradient-start),.5;box-shadow:0 0 10px #0000001a}.receipt-header,.order-details,.customer-details,.event-details,.purchase-details,.ticket-downloads,.receipt-footer{border:1px solid var(--border-color);margin:15px 0;padding:20px;background-color:color-mix(in srgb,var(--primary-gradient-start) 20%,white 80%);border-radius:5px}.receipt-header{text-align:center;margin-bottom:30px;background-color:var(--card-bg)}.order-details h3{border-bottom:solid 2px var(--border-color);font-size:16pt;color:var(--header-text-color);padding-bottom:10px}.label{font-weight:700;width:150px}.seats-table{width:100%;border-collapse:collapse;margin:20px 0}.seats-table th,.seats-table td{padding:10px;border:1px solid var(--border-color);text-align:left}.seats-table th{background-color:var(--primary-gradient-start)}.total-row{font-weight:700;background-color:var(--primary-gradient-end)}.ticket-download{margin:10px 0}.download-button{display:inline-block;padding:10px 20px;background-color:var(--primary-gradient-end);color:#fff;text-decoration:none;border-radius:5px}.download-button:hover{background-color:var(--primary-gradient-start)}.receipt-footer{margin-top:30px;text-align:center;border-top:1px solid var(--border-color);padding-top:20px}h3{margin-top:0;padding-bottom:10px;border-bottom:2px solid var(--border-color);color:var(--header-text-color);font-size:16pt}.purchase-info{border:1px solid #ddd;margin:15px 0;padding:20px;border-bottom:1px solid var(--border-color);border-radius:5px}.two-column-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.column .detail-row{margin:5px 0}#order-summary{width:100%;max-width:800px;margin:0 auto;padding:20px;box-sizing:border-box;border:1px solid var(--border-color);border-radius:10px;background-color:#f9f9f9}#order-summary h3{text-align:left;font-size:16pt;color:var(--header-text-color);border-bottom:2px solid var(--border-color);padding-bottom:10px;margin-top:0}.StripeElement{width:100%;padding:12px;border:1px solid var(--event-border-color, #ddd);border-radius:5px;background-color:var(--card-bg, white);margin-bottom:15px;box-sizing:border-box}.payment-info{font-weight:700;font-size:1.1em;color:var(--header-text-color);display:flex;align-items:center;margin-bottom:10px}.payment-controls{width:100%;display:flex;flex-direction:column;gap:15px}#confirm-order{align-self:flex-end;padding:10px 20px;color:var(--card-bg, white);border:none;border-radius:5px;font-size:16px;cursor:pointer;transition:all .3s ease}#confirm-order:hover:not(:disabled){background-color:color-mix(in srgb,var(--border-color, #4CAF50) 80%,black)}#confirm-order:disabled{background-color:var(--secondary-text, #cccccc);cursor:not-allowed;opacity:.7;box-shadow:none;outline:none}#zero-cost-section{width:100%}.alert-success{background-color:color-mix(in srgb,var(--theme-success, #28a745) 20%,var(--card-bg, white));color:var(--theme-success, #155724);padding:15px;border:1px solid color-mix(in srgb,var(--theme-success, #28a745) 30%,var(--card-bg, white));border-radius:8px;margin-bottom:15px}#process-zero-cost{padding:10px 20px;background-color:var(--theme-success, #28a745);color:var(--card-bg, white);border:none;border-radius:5px;font-size:16px;cursor:pointer;transition:all .3s ease}#process-zero-cost:hover{background-color:color-mix(in srgb,var(--theme-success, #28a745) 80%,black)}.hidden{display:none!important}@media (max-width: 768px){.payment-container{padding:10px}#confirm-order{width:100%;margin-top:10px}}.receipt-container{max-width:800px;margin:2rem auto;padding:2rem;background-color:color-mix(in srgb,var(--primary-gradient-start) 10%,white 90%);border-radius:8px;box-shadow:0 4px 12px #0000001a}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 0}.loading-container i{font-size:2rem;color:var(--primary-color);margin-bottom:1rem}.loading-container p{font-size:1.2rem;color:#666}.error-message{text-align:center;padding:2rem 1rem}.error-message i{font-size:3rem;color:#e74c3c;margin-bottom:1rem}.error-message h2{font-size:1.5rem;margin-bottom:1rem;color:#333}.error-message p{margin-bottom:1rem;color:#555}.error-message ul{text-align:left;max-width:80%;margin:1rem auto;padding-left:2rem}.error-message li{margin-bottom:.5rem}.error-message .action-button-container{margin-top:2rem}.receipt-header{text-align:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--primary-color)}.receipt-header h1{font-size:1.8rem;color:var(--primary-color);margin-bottom:.5rem}.receipt-header h2{font-size:1.4rem;color:#666;font-weight:400}.detail-row{background-color:var(--primary-gradient-start),.3;display:flex;justify-content:space-between;margin:10px 0;padding:5px;border-bottom:1px dashed var(--border-color)}.detail-row .label{font-weight:700;color:#555;flex:1}.detail-row .value{flex:2;text-align:right}.receipt-container h3{margin-top:5px;margin-bottom:10px;padding-bottom:.5rem;color:var(--primary-color);font-size:16pt}.seats-table{width:100%;border-collapse:collapse;margin:1rem 0}.seats-table th,.seats-table td{padding:.75rem;text-align:left;border-bottom:1px solid #ddd}.seats-table th{background-color:#f5f5f5;font-weight:700}.seats-table .total-row{font-weight:700;background-color:#f9f9f9}.seats-table .total-row td{border-top:2px solid #ddd}.ticket-downloads{margin:2rem 0}.ticket-download{margin:.75rem 0}.download-button{display:inline-block;padding:.75rem 1.5rem;background-color:var(--primary-color);color:var(--header-text-color);text-decoration:none;border-radius:4px;transition:background-color .2s}.download-button i{margin-right:.5rem}.download-button:hover{background-color:var(--secondary-color)}.receipt-footer{margin-top:2rem;padding-top:1rem;border-top:2px solid var(--primary-color);text-align:center;color:var(--header-text-color)}.receipt-footer p{font-size:1.5rem;margin:.5rem 0}.action-buttons{display:flex;justify-content:center;gap:1rem;margin:2rem 0}.primary-button,.secondary-button{display:inline-block;padding:.75rem 1.5rem;border-radius:4px;text-decoration:none;font-weight:700;cursor:pointer;transition:all .2s}.primary-button{background-color:var(--primary-color);color:#fff;border:none}.primary-button:hover{background-color:var(--secondary-color)}.secondary-button{background-color:#f8f9fa;color:#333;border:1px solid #ddd}.secondary-button:hover{background-color:#e9ecef}.primary-button i,.secondary-button i{margin-right:.5rem}.email-notification{position:fixed;top:1rem;right:1rem;width:24rem;z-index:9999;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@media print{header,footer,.action-buttons,.email-notification{display:none!important}.receipt-container{box-shadow:none;margin:0;padding:0}.download-button{display:none}body{background-color:#fff}}.payment-container{margin:20px 0}.payment-content{padding:20px}.payment-content h3{color:var(--header-text-color, inherit);margin-bottom:15px;font-size:16pt}#payment-form-container{background-color:color-mix(in srgb,var(--section-bg) 40%,white 60%);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:15px;position:relative}.styled-card-element{background-color:#fff!important;padding:15px;border:1px solid var(--border-color, #ddd);border-radius:4px;box-shadow:0 1px 3px #0000000d;min-height:40px;margin:5px 10px 15px}.card-field-label{display:block;font-weight:700;margin-bottom:8px;font-size:14px;color:var(--secondary-text, #333)}.process-button{background-color:#ccc;color:#fff;border:none;border-radius:4px;padding:14px 24px;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .3s;width:calc(100% - 30px);margin:20px 15px 10px auto;display:block;opacity:.7}.process-button.ready{background-color:var(--theme-primary, #8B3232)!important;opacity:1!important}.process-button:hover:not(:disabled){background-color:var(--button-hover, #7a2b2b)}.process-button:disabled{cursor:not-allowed}.tooltip{background-color:color-mix(in srgb,var(--section-bg) 80%,white 20%);border:1px solid var(--border-color, #ff0000);box-shadow:0 2px 5px color-mix(in srgb,var(--border-color) 20%,transparent);color:var(--header-text-color);position:absolute;padding:8px 12px;pointer-events:none;z-index:9999;font-size:14px;border-radius:4px;opacity:0;transition:opacity .2s ease-in-out;display:block!important}.card-errors{color:var(--theme-error, #dc3545);font-size:14px;margin:10px 10px 0;background-color:#dc35451a;padding:8px;border-radius:4px;border:1px solid var(--theme-error, #dc3545);display:none}#payment-form-container.disabled{opacity:.7;pointer-events:none}.StripeElement{padding:10px;font-size:16px!important}.StripeElement--focus{border-color:var(--theme-primary, #8B3232);box-shadow:0 0 0 1px var(--theme-primary, #8B3232)}.StripeElement--invalid{border-color:var(--theme-error, #dc3545)}.StripeElement--webkit-autofill{background-color:#fff!important}.promo-section{padding:15px;display:flex;flex-direction:column}.promo-header{margin-bottom:10px}.promo-label{font-weight:700;font-size:16pt;color:var(--secondary-text, #333);border-bottom:solid 2px var(--border-color);padding-bottom:10px;display:block}.promo-input-row{display:flex;align-items:center;gap:10px;width:100%}.promo-input{background-color:#fff;border:1px solid var(--border-color, #ddd);border-radius:4px;padding:10px 12px;font-size:16px;flex-grow:1;min-width:0}.promo-button{background-color:var(--theme-primary, #8B3232);color:#fff;border:none;border-radius:4px;padding:10px 15px;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap;min-width:80px;max-width:120px;width:auto}.promo-button:hover:not(:disabled){background-color:var(--button-hover, #7a2b2b)}.promo-button:disabled{background-color:#ccc;cursor:not-allowed}.coupon-feedback{margin-top:10px;font-size:14px;min-height:20px}
