/* Scoped to the free-event block; leaves paid-event and site styles untouched. */
#vbef-coupon {box-sizing:border-box;margin:26px 0;padding:22px;border:1px solid #dce2ed;border-radius:12px;background:#fff;color:#172033;min-width:0;}
#vbef-coupon * {box-sizing:border-box;}
#vbef-coupon h2 {font-size:19px;font-weight:700;line-height:1.5;margin:0 0 8px;}
#vbef-coupon p {font-size:14px;line-height:1.7;margin:0 0 14px;color:#526073;}
#vbef-coupon .vbef-coupon-input {display:flex;gap:8px;align-items:stretch;min-width:0;}
#vbef-coupon input[type="text"] {min-width:0;flex:1;width:auto;border:1px solid #cad3e2;border-radius:7px;padding:12px;font-size:16px;height:auto;line-height:1.5;}
#vbef-coupon button {border:1px solid #253755;border-radius:7px;padding:10px 16px;font-size:14px;font-weight:600;line-height:1.5;white-space:nowrap;cursor:pointer;background:#253755;color:#fff;}
#vbef-coupon #vbef-clear {background:#fff;color:#334155;border-color:#ccd5e2;}
#vbef-coupon button:disabled {opacity:.65;cursor:wait;}
#vbef-coupon [hidden] {display:none!important;}
#vbef-coupon .vbef-status {margin:10px 0 0;overflow-wrap:anywhere;}
#vbef-coupon .vbef-status[data-kind="ok"] {color:#17643e;}
#vbef-coupon .vbef-status[data-kind="error"] {color:#b42318;}
#vbef-coupon .vbef-visually-hidden {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
#vbef-coupon :focus-visible {outline:2px solid #526ac5;outline-offset:2px;}
@media(max-width:520px) {#vbef-coupon{padding:16px;margin:20px 0;}#vbef-coupon .vbef-coupon-input{flex-wrap:wrap;}#vbef-coupon input[type="text"]{flex:1 0 100%;width:100%;}#vbef-coupon button{flex:1;}}
