/* PBP Events — front-end grid + per-event page */
.pbp-events-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; }
.pbp-event-card {
	background: rgba(12,10,9,.6); border: 1px solid rgba(246,244,239,.22); border-radius: 12px;
	padding: 1.6rem 1.4rem; display: flex; flex-direction: column; gap: .5rem;
}
.pbp-event-card--full { border-color: rgba(220,50,50,.4); }
.pbp-event__city {
	font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 700;
	color: #F4C03C;
}
.pbp-event__title { font-size: 1.3rem; font-weight: 600; margin: 0; color: #F6F4EF; line-height: 1.2; }
.pbp-event__date, .pbp-event__venue { font-size: .9rem; color: rgba(246,244,239,.7); }
.pbp-event__price { font-size: 1.1rem; font-weight: 600; color: #F6F4EF; }
.pbp-event__capacity { font-size: .8rem; color: rgba(246,244,239,.5); }
.pbp-event__btn {
	display: inline-block; margin-top: .6rem; padding: .7rem 1.4rem; border-radius: 999px;
	background: #F4C03C; color: #0A0A0E; font-weight: 700; font-size: .9rem; text-align: center;
	transition: transform .3s, box-shadow .3s; text-decoration: none;
}
.pbp-event__btn:hover { transform: translateY(-2px); box-shadow: 0 14px 30px -10px rgba(244,192,60,.7); color: #0A0A0E; }
.pbp-event__btn--full { background: transparent; border: 1px solid rgba(220,50,50,.5); color: #ffb0b0; }
.pbp-events-empty { padding: 2rem 0; text-align: center; color: rgba(246,244,239,.6); }
.pbp-events-empty a { color: #F4C03C; }

/* Per-event page (register form) */
.pbp-event-detail { max-width: 720px; }
.pbp-event-detail__tiers { display: grid; gap: .8rem; margin: 1.5rem 0; }
.pbp-event-detail__tier {
	display: flex; align-items: center; gap: .8rem; padding: 1rem 1.2rem;
	border: 1px solid rgba(246,244,239,.22); border-radius: 8px; cursor: pointer; transition: border-color .2s;
}
.pbp-event-detail__tier:hover { border-color: #F4C03C; }
.pbp-event-detail__tier input { accent-color: #F4C03C; width: auto; }
.pbp-event-detail__tier-name { font-weight: 600; flex: 1; }
.pbp-event-detail__tier-price { font-weight: 700; color: #F4C03C; }
.pbp-event-detail__form { display: grid; gap: .8rem; margin-top: 1.5rem; }
.pbp-event-detail__form input[type=text],
.pbp-event-detail__form input[type=email],
.pbp-event-detail__form input[type=tel] {
	width: 100%; padding: .8rem .9rem; border-radius: 10px; border: 1px solid rgba(246,244,239,.22);
	background: #0A0A0E; color: #F6F4EF; font: inherit; font-size: .95rem; box-sizing: border-box;
}
.pbp-event-detail__form label { font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: rgba(246,244,239,.62); font-weight: 600; }
.pbp-event-detail__submit {
	width: 100%; padding: .95rem; border: 0; border-radius: 999px; cursor: pointer;
	background: #F4C03C; color: #0A0A0E; font-weight: 700; font-size: .95rem;
}
.pbp-event-ok, .pbp-event-err, .pbp-event-demo {
	padding: 1rem 1.2rem; border-radius: 10px; margin-bottom: 1.5rem; font-size: .95rem;
}
.pbp-event-ok { background: rgba(70,180,80,.12); border: 1px solid rgba(70,180,80,.4); color: #F6F4EF; }
.pbp-event-err { background: rgba(220,50,50,.12); border: 1px solid rgba(220,50,50,.4); color: #ffb0b0; }
.pbp-event-demo { background: rgba(255,185,0,.12); border: 1px solid rgba(255,185,0,.4); color: #ffd966; }
