/* TikAp Reco: theme-agnostic, accessible event forms (no external libraries). */
.tikap-events { --tikap-event-ink: #202b3b; --tikap-event-soft: #f5f7fb; --tikap-event-line: #d7dce5; --tikap-event-action: #176c70; width: 100%; max-width: 900px; margin: 24px auto; color: var(--tikap-event-ink); font-family: inherit; }
.tikap-events h2 { font-size: clamp(1.45rem, 3vw, 2rem); margin: 0 0 12px; }
.tikap-events form, .tikap-events-webinar { border: 1px solid var(--tikap-event-line); border-radius: 14px; padding: clamp(16px, 3vw, 28px); background: #fff; margin: 20px 0; box-shadow: 0 8px 24px rgba(19,35,48,.04); }
.tikap-events-grid, .tikap-events-sessions { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; margin-bottom: 20px; }
.tikap-events label { display: block; font-size: .94rem; font-weight: 600; line-height: 1.5; margin-bottom: 14px; }
.tikap-events input:not([type="checkbox"]), .tikap-events select, .tikap-events textarea { width: 100%; min-width: 0; padding: 11px 12px; border: 1px solid #b7c2cf; border-radius: 9px; background-color: #fff; color: #243246; font: inherit; margin: 6px 0 0; box-sizing: border-box; }
.tikap-events input:focus-visible, .tikap-events select:focus-visible, .tikap-events textarea:focus-visible, .tikap-events button:focus-visible { outline: 3px solid #69b9bb; outline-offset: 2px; }
.tikap-events-slot[hidden] { display: none; }
.tikap-events .tikap-events-consent { display: flex; gap: 11px; align-items: flex-start; font-size: .9rem; font-weight: 400; margin: 18px 0; }
.tikap-events .tikap-events-consent input { width: 17px; height: 17px; flex: 0 0 17px; margin: 3px 0; }
.tikap-events button { cursor: pointer; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 9px; padding: 13px 22px; background: var(--tikap-event-action); color: #fff; font: inherit; font-weight: 700; transition: filter .15s ease; }
.tikap-events button:hover { filter: brightness(.9); }
.tikap-events .tikap-events-notice { background: #eef7f3; border-left: 4px solid #23845f; border-radius: 6px; padding: 13px 17px; }
.tikap-events .tikap-events-webinar h3 { font-size: 1.3rem; margin-top: 0; }
@media (max-width: 620px) { .tikap-events-grid, .tikap-events-sessions { grid-template-columns: 1fr; gap: 2px; } .tikap-events button { width: 100%; } }
