body{margin:0}.buyer{--page-bg: #ffffff;--text: #1a1a1a;--muted: #5b6673;--border: #c9ced4;--surface: #f3f4f6;--surface-strong: #e3e7ec;--error: #b00020;color-scheme:light dark;min-height:100vh;background:var(--page-bg);color:var(--text);font-family:system-ui,sans-serif;line-height:1.45}@media(prefers-color-scheme:dark){.buyer{--page-bg: #121417;--text: #eceff3;--muted: #a9b3be;--border: #3a424c;--surface: #1b1f24;--surface-strong: #2a3038;--error: #ff8a80}}.buyer__bar{background:var(--brand-primary);color:var(--brand-on-primary);padding:.5rem 1rem;display:flex;align-items:center}.buyer .buyer__home{color:inherit;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}.buyer .buyer__home:focus-visible{outline:3px solid var(--brand-on-primary);outline-offset:2px}.buyer__logo{display:block;max-height:48px;max-width:min(240px,60vw);width:auto;height:auto}.buyer__name{font-weight:700;font-size:1.15rem}.buyer a{color:var(--brand-link);text-decoration:underline;text-underline-offset:2px}.buyer :focus-visible{outline:3px solid var(--brand-accent);outline-offset:2px}.store{max-width:40rem;margin:0 auto;padding:1.5rem 1rem 4rem;overflow-wrap:anywhere}.store h1{margin:0 0 .25rem}.store .muted{color:var(--muted)}.store .days{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.store .days a{padding:.5rem .9rem;border:1px solid var(--border);border-radius:6px;text-decoration:none;color:var(--text)}.store .days a[aria-current=page]{background:var(--brand-primary);color:var(--brand-on-primary);border-color:var(--brand-primary);font-weight:600}.store table{width:100%;border-collapse:collapse}.store th,.store td{text-align:left;padding:.5rem .4rem;border-bottom:1px solid var(--border)}.store td.num,.store th.num{text-align:right;font-variant-numeric:tabular-nums}.store label{display:block;margin:.75rem 0}.store input[type=email],.store input[type=tel],.store input[type=number],.store input:not([type]){padding:.5rem;font-size:1rem;min-height:24px;border:1px solid var(--muted);border-radius:4px;background:var(--page-bg);color:var(--text)}.store input[type=number]{width:5rem}.store input[type=checkbox]{width:24px;height:24px;margin:0 .5rem 0 0;vertical-align:middle;accent-color:var(--brand-primary)}.store button{padding:.6rem 1.2rem;min-height:44px;font-size:1rem;background:var(--brand-primary);color:var(--brand-on-primary);border:1px solid var(--brand-primary);border-radius:6px;cursor:pointer}.store button:disabled{opacity:.6;cursor:not-allowed}.store [role=alert]{color:var(--error)}.store .totals{margin:1rem 0}.store .totals div{display:flex;justify-content:space-between;padding:.2rem 0}.store .totals .grand{font-weight:700;border-top:1px solid var(--border);margin-top:.3rem;padding-top:.5rem}.store .policy{font-size:.9rem;white-space:pre-wrap;background:var(--surface);padding:.8rem;border-radius:6px}.store .event-list{list-style:none;padding:0;margin:1rem 0}.store .event-list li{display:flex;flex-direction:column;gap:.2rem;padding:.8rem 0;border-bottom:1px solid var(--border)}.store .event-list a{font-size:1.15rem;font-weight:600}.store form.inline{display:inline;margin-left:.5rem}.tickets .hint{font-weight:600}.ticket-list{list-style:none;padding:0;margin:1rem 0}.ticket{border:1px solid var(--border);border-radius:8px;padding:1rem;margin:0 0 1rem;text-align:center;background:var(--surface)}.ticket--void{opacity:.7}.ticket__label{font-weight:600;margin:0 0 .5rem}.ticket .badge{display:inline-block;margin-left:.4rem;padding:.1rem .5rem;border-radius:999px;background:var(--surface-strong);color:var(--text);font-size:.8rem}.ticket__qr{width:min(80vw,320px);margin:0 auto;background:#fff;padding:8px;border-radius:4px}.ticket__qr svg{width:100%;height:auto;display:block}.ticket__barcode{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:1.1rem;letter-spacing:.15em;margin:.5rem 0 0}
