:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#111;background:#f5f5f3}*{box-sizing:border-box}body{margin:0}main{width:min(100% - 32px,620px);margin:0 auto;padding:28px 0 48px}.brand{color:#111;font-size:25px;font-weight:800;font-style:italic;text-decoration:none;display:inline-block;margin:0 0 24px}.card{background:#fff;border:1px solid #e6e6e1;border-radius:18px;padding:24px;box-shadow:0 10px 30px #0000000a}.stack{display:grid;gap:16px}h1,h2,p{margin:0}h1{font-size:clamp(28px,6vw,40px);letter-spacing:-.04em}h2{font-size:18px;margin-top:10px}p{line-height:1.5}.event-header{display:grid;gap:18px;margin-bottom:22px}.event-header img{width:100%;height:240px;object-fit:cover;border-radius:18px;background:#ddd}.eyebrow{color:#666;font-size:12px;font-weight:800;letter-spacing:.09em;margin-bottom:8px}.event-header h1{margin-bottom:10px}label{display:grid;gap:6px;font-size:14px;font-weight:650}input{border:1px solid #c9c9c3;border-radius:10px;font:inherit;padding:12px;width:100%}input:focus{outline:2px solid #111;outline-offset:1px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ticket{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #eee}.ticket p,.hint{color:#686862;font-size:14px}.stepper{display:flex;align-items:center;gap:10px}.stepper button{width:34px;height:34px;border:0;border-radius:50%;background:#ecece7;font-size:22px;cursor:pointer}.stepper button:disabled{opacity:.4;cursor:default}.total{display:flex;justify-content:space-between;align-items:baseline;padding-top:4px;font-size:17px}button.primary{min-height:48px;border:0;border-radius:11px;background:#111;color:#fff;font:inherit;font-weight:750;cursor:pointer;padding:12px 18px}button.primary:disabled{opacity:.45;cursor:default}.payment-form{display:grid;gap:20px}.error{color:#b42318;background:#fef3f2;border-radius:10px;padding:11px}.qr{border:1px dashed #aaa;border-radius:12px;padding:16px;display:grid;gap:10px}code{font-size:13px;overflow-wrap:anywhere;background:#f3f3f0;padding:10px;border-radius:7px}@media(max-width:480px){main{width:min(100% - 24px,620px);padding-top:20px}.card{padding:18px}.grid{grid-template-columns:1fr}}
