.EventsListing{max-width:1200px;margin:0 auto;padding:1.5rem}.EventsListing h1{color:var(--color-heading);margin:0 0 1rem;font-size:1.6rem}.EventsListing-filters{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.EventsListing-filters select{height:38px;padding:0 34px 0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background-color:var(--color-surface-2);color:var(--color-text);font-family:inherit;font-size:var(--text-sm);cursor:pointer;appearance:none;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236e7a8a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:15px}.EventsListing-filters select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-ring) 22%, transparent);outline:none}.EventsListing-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.EventCard{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);transition:box-shadow .15s;overflow:hidden}.EventCard:hover{box-shadow:var(--shadow-md)}.EventCard-link{color:inherit;text-decoration:none;display:block}.EventCard-img{object-fit:cover;background:var(--color-surface-2);width:100%;height:160px;display:block}.EventCard-img--empty{display:block}.EventCard-body{padding:.9rem 1rem 1.1rem}.EventCard-title{color:var(--color-heading);margin:0 0 .4rem;font-size:1.05rem}.EventCard-meta{color:var(--color-text-muted);margin:.15rem 0;font-size:.88rem}.EventCard-closed{color:var(--color-danger);border:1px solid color-mix(in srgb, var(--color-danger) 35%, transparent);border-radius:var(--radius-sm);margin-top:.5rem;padding:.1rem .4rem;font-size:.78rem;display:inline-block}.EventDetail{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:2rem;max-width:1100px;margin:0 auto;padding:1.5rem;display:grid}@media (max-width:860px){.EventDetail{grid-template-columns:1fr}}.EventDetail-content h1{color:var(--color-heading);margin:.5rem 0 1rem;font-size:1.8rem}.EventDetail-img{object-fit:cover;border-radius:var(--radius-lg);width:100%;max-height:360px}.EventDetail-facts{grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:1rem 0 1.5rem;display:grid}.EventDetail-facts dt{color:var(--color-heading);font-weight:600}.EventDetail-facts dd{color:var(--color-text-muted);margin:0}.EventDetail-description,.EventDetail-instructions{line-height:1.6}.EventDetail-instructions{border-top:1px solid var(--color-border);margin-top:1.25rem;padding-top:1rem}.EventDetail-aside{top:calc(var(--header-height,120px) + 1rem);position:sticky}.EventDetail-ok{color:var(--color-success);background:color-mix(in srgb, var(--color-success) 14%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-success) 32%, transparent);border-radius:var(--radius-md);padding:1rem}.EventDetail-closed{color:var(--color-danger)}.RegistrationForm{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;gap:.7rem;padding:1.1rem;display:flex}.RegistrationForm h2{color:var(--color-heading);margin:0 0 .3rem;font-size:1.2rem}.RegistrationForm label{color:var(--color-text);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.RegistrationForm input,.RegistrationForm select,.RegistrationForm textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);font:inherit;background:var(--color-surface-2);color:var(--color-text);padding:.5rem .6rem}.RegistrationForm input:focus,.RegistrationForm select:focus,.RegistrationForm textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-ring) 22%, transparent);outline:none}.RegistrationForm-check{flex-direction:row;align-items:flex-start;gap:.5rem}.RegistrationForm-error{color:var(--color-danger);font-size:.85rem}.RegistrationForm button{border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-on-accent);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);border:none;margin-top:.4rem;padding:.65rem 1rem;font-weight:600}.RegistrationForm button:hover:not(:disabled){background:var(--color-accent-hover)}.RegistrationForm button:disabled{opacity:.55;cursor:not-allowed}
