@charset "UTF-8";body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.AllocationList-filters{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding:20px 0;border-top:1px solid #99b6bb;background:#fffffff5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.AllocationList-resultCount{margin:0 0 12px;font-size:.875rem;color:#252d2fa6}.AllocationList-allAdmittedBanner{margin:0 0 12px;padding:12px;border-radius:3px;background:#2c98b11f;color:#206e80;font-size:.9375rem;font-weight:600}.AllocationList-list{list-style:none;padding:0;margin:0}.AllocationList-listItem{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border-bottom:1px solid #e0e0e0;border-left:4px solid transparent;background:#fff;transition:background-color .15s ease}.AllocationList-listItem[data-status=pending]{border-left-color:#ed5c3aa6;background:#ed5c3a0a}.AllocationList-listItem[data-status=admitted]{border-left-color:#2c98b1;background:#2c98b10f}.AllocationList-listItem[data-status=cancelled]{border-left-color:#252d2f40;background:#252d2f08;opacity:.7}.AllocationList-listItem:nth-child(2n){background-image:linear-gradient(to right,#d6e2e42e,#d6e2e42e);background-blend-mode:multiply}@media(max-width:480px){.AllocationList-listItem{grid-template-columns:1fr;padding:0}}.AllocationList-rowButton{display:grid;grid-template-columns:2fr 2fr 1fr auto;gap:1rem;align-items:center;width:100%;padding:1.25rem 1rem;border:none;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;min-height:44px}.AllocationList-rowButton:hover,.AllocationList-rowButton:focus-visible{outline:2px solid #2c98b1;outline-offset:-2px}@media(max-width:480px){.AllocationList-rowButton{grid-template-columns:1fr auto;grid-template-areas:"name details" "event event" "code code";padding:1rem .75rem}}.AllocationList-name{font-size:1.0625rem;font-weight:600;text-align:left}@media(max-width:480px){.AllocationList-name{grid-area:name}}.AllocationList-code{text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875rem;color:#252d2fb3}@media(max-width:480px){.AllocationList-code{grid-area:code;text-align:left}}.AllocationList-eventName{text-align:left;font-size:.875rem;color:#252d2fa6}@media(max-width:480px){.AllocationList-eventName{grid-area:event}}.AllocationList-detailsIcon{color:#2c98b1;font-size:1.5rem;line-height:1;justify-self:end}@media(max-width:480px){.AllocationList-detailsIcon{grid-area:details}}.AllocationList-admitToggle{text-align:right;justify-self:end;padding-right:1rem}@media(max-width:480px){.AllocationList-admitToggle{padding:0 .75rem .75rem;justify-self:start}}.AllocationList-admitToggle .Loading{width:20px}.TicketInfo{position:fixed;top:20px;left:20px;right:20px;bottom:20px;background:#fff;padding:20px;border-radius:3px;box-shadow:0 8px 32px #252d2f2e;border:2px solid #2c98b1;display:flex;flex-direction:column;gap:12px;text-align:left;overflow-y:auto;z-index:10}.TicketInfo-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:1px solid #e0e0e0}.TicketInfo-identity{display:flex;flex-direction:column;gap:8px;min-width:0}.TicketInfo-name{margin:0;font-size:1.5rem;font-weight:600;line-height:1.2;color:#252d2f}.TicketInfo-statusBadge{display:inline-flex;align-items:center;align-self:flex-start;padding:4px 10px;border-radius:999px;font-size:.8125rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.TicketInfo-statusBadge[data-status=pending]{background:#ed5c3a1f;color:#e93d15}.TicketInfo-statusBadge[data-status=admitted]{background:#2c98b126;color:#206e80}.TicketInfo-statusBadge[data-status=cancelled]{background:#ed5c3a2e;color:#e03b14}.TicketInfo--cancelled{border-color:#ed5c3a}.TicketInfo-cancelledNotice{margin:0;padding:12px;border-radius:3px;background:#ed5c3a1a;color:#d63914;font-weight:600}.TicketInfo-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:3px;background:transparent;color:#252d2f;font-size:1.75rem;line-height:1;cursor:pointer}.TicketInfo-close:hover,.TicketInfo-close:focus-visible{background:#d6e2e4;outline:2px solid #2c98b1;outline-offset:2px}.TicketInfo-primary{display:flex;flex-direction:column;gap:8px;padding:12px;background:#d6e2e4;border-radius:3px}.TicketInfo-code{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1.75rem;font-weight:600;letter-spacing:.08em;color:#252d2f;word-break:break-all}.TicketInfo-eventName{margin:0;font-size:1.125rem;font-weight:500;color:#252d2f}.TicketInfo-quantity{margin:0;font-size:.9375rem;color:#252d2fbf}.TicketInfo-action{padding:12px 0}.TicketInfo-admitToggle{width:100%}.TicketInfo-details{padding-top:12px;border-top:1px solid #e0e0e0}.TicketInfo-detailsList{margin:0;display:flex;flex-direction:column;gap:12px}.TicketInfo-detailRow{display:grid;grid-template-columns:minmax(120px,40%) 1fr;gap:8px 12px;align-items:baseline}.TicketInfo-detailLabel{margin:0;font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#252d2f8c}.TicketInfo-detailValue{margin:0;font-size:.9375rem;color:#252d2f;word-break:break-word}.TicketInfo-footer{margin-top:auto;padding-top:12px}.TicketInfo-footerClose{width:100%}@media(min-width:640px){.TicketInfo{top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(480px,100vw - 40px);max-height:calc(100vh - 40px)}}.Loading{display:block;min-width:24px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.AdmitToggle{position:relative}.AdmitToggle-label{position:relative;display:inline-flex;align-items:center;gap:20px;cursor:pointer;width:auto;min-height:44px}.AdmitToggle-label:hover .AdmitToggle-box{background-color:#fff}.AdmitToggle-label--compact{gap:0}.AdmitToggle-label.isAdmitted .AdmitToggle-box{border-color:#2c98b1}.AdmitToggle-label.isAdmitted .AdmitToggle-box:after{font-size:1.125rem}.AdmitToggle-box{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:2px solid #99b6bb;border-radius:4px;box-sizing:border-box;transition:border-color .2s ease,background-color .2s ease}.AdmitToggle-box:after{content:"✓";display:flex;align-items:center;justify-content:center;font-size:0;font-weight:700;line-height:1;color:#2c98b1;transition:font-size .2s ease}.AdmitToggle-checkbox{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}.AdmitToggle-error{color:#ed5c3a;margin-top:8px}.AdmitToggle .Loading{width:20px}.AdmitToggle-text{position:static;width:auto;margin:0;font-size:1.125rem;font-weight:600}.TicketInfo-admitToggle,.TicketInfo-admitToggle .AdmitToggle-label{width:100%}.Filter-wrapper{display:flex;align-items:center;gap:12px;flex:1 1 200px;min-width:0}.Filter{flex:1;min-width:0;margin:0}.Filter-clear{flex-shrink:0;padding:5px 10px;font-size:.875rem;min-height:36px}.ButtonGroup{border-radius:6px;border:1px solid #2c98b1;width:auto;display:inline-block;padding:3px;margin-right:0;flex-shrink:0}.ButtonGroup .Button{display:inline-block;width:auto;margin:0 1px 0 0;border-radius:0}.ButtonGroup .Button:first-child{border-radius:3px 0 0 3px}.ButtonGroup .Button:last-child{border-radius:0 3px 3px 0;margin-right:0}.EmptyState{text-align:center;padding:40px 20px;border:1px dashed #99b6bb;border-radius:6px;background:#d6e2e459}.EmptyState-title{margin:0;font-size:1.125rem;font-weight:600;color:#252d2f}.EmptyState-message{margin:12px 0 0;font-size:.9375rem;color:#252d2fa6}.EmptyState-action{margin-top:20px}.EventRow-chevron,.EventSummary-chevron{flex-shrink:0;color:#2c98b1;font-size:1.25rem;line-height:1}.EventSummary{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;text-align:left}.EventSummary--card{align-items:center;width:100%}.EventSummary-main{flex:1;min-width:0}.EventSummary-trailing{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:8px;flex-shrink:0;margin-left:auto}.EventSummary-name{margin:0;font-size:1.125rem;font-weight:600;line-height:1.3;color:#252d2f}.EventSummary--card .EventSummary-name{color:#2c98b1}.EventSummary-subtitle{margin:8px 0 0;font-size:.9375rem;color:#252d2fbf}.EventSummary-meta{margin:8px 0 0;font-size:.875rem;color:#252d2f99}.EventSummary-price{flex-shrink:0;padding:4px 10px;border-radius:999px;background:#2c98b11f;color:#247c90;font-size:.875rem;font-weight:600}@keyframes skeleton-pulse{0%,to{opacity:.55}50%{opacity:1}}.ListSkeleton{display:flex;flex-direction:column;gap:12px;margin-top:20px}.ListSkeleton-row{border-radius:6px;background:linear-gradient(90deg,#d6e2e4cc,#e0e0e0e6,#d6e2e4cc);animation:skeleton-pulse 1.4s ease-in-out infinite}.ListSkeleton-row--event{height:88px}.ListSkeleton-row--guest{height:72px}.ApiErrorMessage{margin:1rem 0}.ApiErrorMessage-text{margin:0 0 .75rem}.ApiErrorMessage-retry{margin-top:0}.Allocations-options{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.Allocations-options .Button{margin-top:0;width:auto}.Allocations-eventCard{margin-bottom:20px}.Page,.Allocations{max-width:720px;margin:0 auto;text-align:left}.EventRow{display:flex;align-items:center;text-decoration:none;color:inherit;background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:20px;transition:background-color .15s ease,box-shadow .15s ease}.EventRow:hover,.EventRow:focus-visible{background:#d6e2e473;box-shadow:0 2px 8px #252d2f14;outline:2px solid #2c98b1;outline-offset:2px}.EventRow-chevron{flex-shrink:0;color:#2c98b1;font-size:1.25rem;line-height:1}.EventList{display:flex;flex-direction:column;gap:12px;margin-top:20px}.Allocations-loading{max-width:60px;margin:40px auto}.Allocations-eventList{text-align:left}.Staff-list{margin-top:20px}.Scan-form{display:flex;flex-direction:row;align-items:flex-end;justify-content:center;height:100%;margin:0 auto;max-width:600px;padding:20px;text-align:left;gap:20px}.Scan-form.Form{max-width:600px}.Scan-inputGroup{flex:1;margin-bottom:0}.Scan-submit.Button{width:100px;margin-top:0}.Scan #video{position:static}@keyframes shakeError{0%{transform:translate(0)}15%{transform:translate(.375rem)}30%{transform:translate(-.375rem)}45%{transform:translate(.375rem)}60%{transform:translate(-.375rem)}75%{transform:translate(.375rem)}90%{transform:translate(-.375rem)}to{transform:translate(0)}}.Form{margin:auto;max-width:500px;text-align:left}.Form-inputGroup{margin-bottom:12px}.Form-inputGroup--error .Input-field{animation-name:shakeError;animation-fill-mode:forwards;animation-duration:.6s;animation-timing-function:ease-in-out}.Form-label{margin-bottom:6px;display:block;text-align:left;color:#666;font-size:16px}.Form-inputError{margin:6px 0 12px;color:#ed5c3a}.Input{display:block;color:#252d2f}.Input--hasOption{position:relative}.Input--hasOption .Input-option{position:absolute;right:12px;top:10.8px;text-transform:uppercase;font-weight:700;border:none;background:transparent;opacity:.6;padding:0;font-size:14px;color:#333!important;width:auto}.Input-field{display:block;font-size:18px;padding:7.2px;height:36px;width:100%;box-sizing:border-box;border:1px solid #e0e0e0;border-width:0 0 2px 0;border-color:#99b6bb;border-radius:0;background:transparent}.Input-field:focus{outline-color:#2c98b1}.Form-inputGroup--error .Input-field{border-color:#ed5c3a}.Form-inputGroup--error .Input-field:focus{outline:0}.Input-dropdown{position:relative}.Input-dropdown:after{content:"";display:block;width:0;height:0;border:10px solid #e0e0e0;border-color:transparent;border-top-color:#e0e0e0;position:absolute;right:12px;top:30px}.Button{padding:10px 20px;display:block;font-size:16px;width:100%;background-color:#2c98b1;border-radius:3px;color:#fff;border:none;box-sizing:border-box;text-align:center;text-decoration:none;margin-top:20px;cursor:pointer;min-height:44px}.Button.isActive{background-color:#2c98b1;color:#fff}.Button.isInactive{background-color:transparent;color:#2c98b1}.Button--ghost{background-color:transparent;color:#2c98b1;border:1px solid #99b6bb;margin-top:0;width:auto;display:inline-flex;align-items:center;justify-content:center}.Button--compact{margin-top:0;width:auto;display:inline-flex;align-items:center;justify-content:center}.Error{color:#ed5c3a;text-align:left}.Login{width:320px;margin:0 auto}.NavBar{display:flex;align-items:center;column-gap:20px}@media(max-width:720px){.NavBar{justify-content:center;row-gap:20px}}.NavBar-item{text-transform:uppercase;font-weight:700;text-decoration:none;color:#252d2f}.NavBar .Button{margin-top:0;max-width:120px;color:#fff}.Page{max-width:720px;margin:0 auto;text-align:left}.Page-title{text-align:center;margin:0 0 20px;font-size:1.5rem;font-weight:600}.Page-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.App-header{display:flex;justify-content:space-between;text-align:left;background-color:#d6e2e4;height:40px;padding:20px;color:#252d2f;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}@media(max-width:720px){.App-header{flex-direction:column;row-gap:6px;padding-top:10px;height:70px}}.App-logo{height:40px}.App-body{padding:20px;text-align:left}
