#register [hidden]{display:none!important}#registration-form input,#registration-form select{font-size:16px;max-width:100%;min-width:0}#registration-form .field{min-width:0}#registration-form input[type=file]{width:100%;font-size:14px}#registration-form small{line-height:1.5}#registration-form button{white-space:normal;border:0;cursor:pointer}#registration-form button:disabled{opacity:.6;cursor:wait}#registration-status{line-height:1.5}#register .qr p{font-size:15px;line-height:1.5}#register .qr a{text-decoration:underline}@media(max-width:600px){#register .formgrid{grid-template-columns:1fr}#register .formcard{padding:20px}}

/* October 2026: pay first on phones, grouped fields, a real receipt */
.reg-steps{display:flex;flex-wrap:wrap;gap:10px 28px;margin:4px 0 0;padding:0;list-style:none;counter-reset:step}
.reg-steps li{counter-increment:step;display:flex;align-items:center;gap:10px;font-size:16px;line-height:1.4}
.reg-steps li::before{content:counter(step);display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--p);color:#fff;font-weight:900;font-size:14px}
#register .formwrap{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);grid-template-areas:"form pay"}
#register .formwrap>form{grid-area:form}
#register .formwrap>aside{grid-area:pay;align-self:start;position:sticky;top:100px}
@media(max-width:820px){#register .formwrap{grid-template-columns:minmax(0,1fr);grid-template-areas:"pay" "form"}#register .formwrap>aside{position:static}}
#registration-form fieldset{border:0;padding:0;margin:0 0 26px;min-width:0}
#registration-form legend{font:700 22px/1.2 Georgia,serif;color:var(--p);margin:0 0 14px;padding:0}
#registration-form .field label{font-size:12px}
#registration-form input:not([type=checkbox]):not([type=file]),#registration-form select{min-height:48px;background:#fff}
#proof-preview{display:block;max-width:220px;width:100%;height:auto;margin-top:10px}
#registration-form .consent{margin:4px 0 14px}
.no-fee-note{background:#f7edf3;padding:12px;font-weight:700;color:var(--p)}
.saved-receipt{margin:12px 0 0;font-size:14px}

.receipt{max-width:620px;margin:30px auto 0;scroll-margin-top:100px}
.receipt:focus{outline:none}
.receipt-card{background:#fff;box-shadow:0 8px 28px #4d213020;overflow:hidden;overflow-wrap:anywhere}
.receipt-head{display:flex;align-items:center;gap:16px;background:var(--p);color:#fff;padding:18px 22px;border-bottom:5px solid var(--o)}
.receipt-head img{border-radius:50%;background:#fff;flex:none}
.receipt-head b{display:block;letter-spacing:.06em}
.receipt-head span{font-size:13px;color:#ffd5c2}
#registration-receipt #receipt-title{font:700 32px/1.15 Georgia,serif;color:var(--p);margin:22px 22px 6px}
.receipt-status{margin:0 22px;color:#a8431a;font-weight:700;line-height:1.5}
.receipt-name{font:700 26px/1.25 Georgia,serif;margin:18px 22px 10px}
.receipt-ref{margin:0 22px;padding:14px 16px;border:3px solid var(--g);display:flex;flex-direction:column;gap:4px}
.receipt-ref span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#765f6c;text-transform:uppercase}
.receipt-ref b{font-size:28px;letter-spacing:.04em;font-variant-numeric:tabular-nums}
#receipt-details{display:grid;grid-template-columns:150px 1fr;gap:10px 14px;margin:18px 22px;line-height:1.45}
#receipt-details dt{font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--p)}
#receipt-details dd{margin:0}
.receipt-event{background:#25151f;color:#fff;margin:0;padding:18px 22px;line-height:1.6}
.receipt-event b{color:var(--g)}
.receipt-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.receipt-actions .btn{border:0;cursor:pointer;min-height:48px}
@media(max-width:600px){#receipt-details{grid-template-columns:1fr;gap:2px}#receipt-details dd{margin-bottom:10px}.receipt-actions .btn{flex:1 1 100%}}
@media print{body *{visibility:hidden}#registration-receipt,#registration-receipt *{visibility:visible}#registration-receipt{position:absolute;left:0;top:0;width:100%;margin:0}.receipt-actions,#receipt-help{display:none}.receipt-card{box-shadow:none;border:1px solid #ccc}.receipt-head,.receipt-event{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
