.events-page{max-width:70rem;margin-inline:0;padding:2.625rem 1.75rem;font-family:Inter18pt,sans-serif}.events-page-title{color:var(--foreground);margin-bottom:.4375rem;font-family:ManropeExtraBold,sans-serif;font-size:1.75rem;font-weight:800}.events-page-subtitle{color:var(--muted-foreground);margin-bottom:1.75rem;font-size:.875rem}.events-grid{grid-template-columns:repeat(3,1fr);gap:1.3125rem;display:grid}.events-card{background:var(--card);border:1px solid var(--border);color:inherit;border-radius:.4375rem;flex-direction:column;text-decoration:none;transition:box-shadow .2s,transform .2s;display:flex;overflow:hidden}.events-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.events-card-image{object-fit:cover;width:100%;height:10.5rem;display:block}.events-card-placeholder{background:linear-gradient(135deg, var(--primary), var(--accent));width:100%;height:10.5rem;color:var(--primary-foreground);opacity:.85;justify-content:center;align-items:center;font-size:2.1875rem;font-weight:700;display:flex}.events-card-body{flex-direction:column;flex:1;gap:.4375rem;padding:.875rem 1.0938rem 1.0938rem;display:flex}.events-card-title{color:var(--foreground);margin:0;font-family:ManropeExtraBold,sans-serif;font-size:1.0062rem;font-weight:700;line-height:1.3}.events-card-date,.events-card-location{color:var(--muted-foreground);font-size:.7656rem}.events-card-footer{justify-content:space-between;align-items:center;margin-top:auto;padding-top:.4375rem;display:flex}.events-card-price{color:var(--foreground);font-size:.8312rem;font-weight:600}.events-card-price--free{background:var(--success);color:#fff;letter-spacing:.03em;text-transform:uppercase;border-radius:9999px;padding:.1313rem .525rem;font-size:.6562rem;font-weight:700}.events-card-spots{color:var(--muted-foreground);font-size:.7rem}.events-card-recurring{letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary);border:1px solid color-mix(in srgb, var(--primary) 25%, transparent);border-radius:9999px;padding:.1313rem .4813rem;font-size:.6125rem;font-weight:700}.events-empty{text-align:center;color:var(--muted-foreground);padding:3.5rem .875rem}.events-empty-title{color:var(--foreground);margin-bottom:.4375rem;font-family:ManropeExtraBold,sans-serif;font-size:1.3125rem}.event-detail{max-width:70rem;margin-inline:auto;padding:2.625rem 1.75rem;font-family:Inter18pt,sans-serif}.event-back-link{color:var(--muted-foreground);align-items:center;gap:.3062rem;margin-bottom:1.3125rem;font-size:.7656rem;text-decoration:none;transition:color .15s;display:inline-flex}.event-back-link:hover{color:var(--foreground)}.event-hero{margin-bottom:1.75rem}.event-hero-image{object-fit:cover;border-radius:.4375rem;width:100%;height:17.5rem;margin-bottom:1.3125rem}.event-title{color:var(--foreground);margin:0 0 .875rem;font-family:ManropeExtraBold,sans-serif;font-size:1.75rem;font-weight:800;line-height:1.2}.event-meta{color:var(--muted-foreground);flex-wrap:wrap;gap:.875rem 1.75rem;margin-bottom:1.3125rem;font-size:.8312rem;display:flex}.event-meta-item{align-items:center;gap:.35rem;display:flex}.event-badge{letter-spacing:.03em;text-transform:uppercase;border-radius:9999px;padding:.175rem .6125rem;font-size:.6562rem;font-weight:700;display:inline-block}.event-badge--free{background:var(--success);color:#fff}.event-badge--virtual{background:var(--accent);color:var(--accent-foreground)}.event-badge--paid{background:var(--primary);color:var(--primary-foreground)}.event-badge--recurring{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary);border:1px solid color-mix(in srgb, var(--primary) 25%, transparent)}.event-description{color:var(--foreground);margin-bottom:2.1875rem;line-height:1.7}.event-description p{margin-bottom:.875rem}.event-description{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.75rem;padding:1.0938rem 1.3125rem}.event-description__text{color:var(--muted-foreground);white-space:pre-line;margin:0;font-size:.8312rem;line-height:1.7}.event-description__toggle{color:var(--primary);cursor:pointer;background:0 0;border:none;margin-top:.4375rem;padding:0;font-size:.7438rem;font-weight:600;transition:opacity .15s;display:inline-block}.event-description__toggle:hover{opacity:.8}.event-video{border-radius:var(--radius,.4375rem);background:#000;width:100%;height:0;margin-bottom:1.75rem;padding-bottom:56.25%;position:relative;overflow:hidden}.event-video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.event-video-link{background:var(--card);border:1px solid var(--border);border-radius:var(--radius,.4375rem);margin-bottom:1.75rem;padding:.875rem 1.0938rem;font-size:.7875rem}.event-video-link a{color:var(--primary);font-weight:600;text-decoration:none}.event-video-link a:hover{text-decoration:underline}.event-register-layout{grid-template-columns:3fr 2fr;align-items:start;gap:1.3125rem;display:grid}.event-register-main{background:var(--card);border:1px solid var(--border);border-radius:.4375rem;padding:1.75rem}.event-register-side{background:var(--card);border:1px solid var(--border);border-radius:.4375rem;padding:1.3125rem;position:sticky;top:1.75rem}.event-donate-header{border-bottom:1px solid var(--border);margin-bottom:1.3125rem;padding-bottom:.875rem}.event-donate-title{color:var(--foreground);margin:0 0 .4375rem;font-size:.9625rem;font-weight:700}.event-donate-desc{color:var(--muted-foreground);margin:0;font-size:.7438rem;line-height:1.6}.event-form-section{background:var(--card);border:1px solid var(--border);border-radius:.4375rem;padding:1.75rem}.event-form-title{color:var(--foreground);margin:0 0 1.3125rem;font-family:ManropeExtraBold,sans-serif;font-size:1.1813rem;font-weight:700}.event-form-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.875rem;margin-bottom:.875rem;display:grid}.event-form-field{flex-direction:column;gap:.3062rem;margin-bottom:.875rem;display:flex}.event-form-label{color:var(--foreground);font-size:.7438rem;font-weight:600}.event-form-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);padding:.525rem .7rem;font-family:inherit;font-size:.8312rem;transition:border-color .15s,box-shadow .15s}.event-form-input:focus{border-color:var(--ring);box-shadow:0 0 0 2px color-mix(in srgb, var(--ring) 25%, transparent);outline:none}.event-form-input::placeholder{color:var(--muted-foreground);opacity:.6}.event-form-input--error{border-color:var(--destructive)}.event-form-input--error:focus{border-color:var(--destructive);box-shadow:0 0 0 2px color-mix(in srgb, var(--destructive) 25%, transparent)}.event-field-error{color:var(--destructive);margin-top:.2188rem;font-size:.6825rem;display:block}.event-form-select{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);cursor:pointer;padding:.525rem .7rem;font-family:inherit;font-size:.8312rem}.event-form-select:focus{border-color:var(--ring);box-shadow:0 0 0 2px color-mix(in srgb, var(--ring) 25%, transparent);outline:none}.event-form-submit{background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.4375rem;width:100%;margin-top:.4375rem;padding:.6125rem 1.575rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:background .15s;display:inline-flex}.event-form-submit:hover:not(:disabled){background:var(--primary-hover)}.event-form-submit:disabled{opacity:.6;cursor:not-allowed}.event-form-error{background:color-mix(in srgb, var(--destructive) 10%, transparent);border:1px solid var(--destructive);color:var(--destructive);border-radius:var(--radius);margin-bottom:.875rem;padding:.6562rem .875rem;font-size:.7875rem}.event-form-success{background:color-mix(in srgb, var(--success) 10%, transparent);border:1px solid var(--success);color:var(--success);border-radius:var(--radius);text-align:center;padding:1.3125rem}.event-form-success-title{margin-bottom:.4375rem;font-family:ManropeExtraBold,sans-serif;font-size:1.0938rem;font-weight:700}.event-capacity-closed{text-align:center;background:color-mix(in srgb, var(--warning) 10%, transparent);border:1px solid var(--warning);border-radius:var(--radius);color:var(--warning);padding:1.3125rem;font-weight:600}.event-donate-amounts{flex-wrap:wrap;gap:.4375rem;margin-bottom:.6562rem;display:flex}.event-donate-pill{border:1px solid var(--border);border-radius:var(--radius,.3281rem);background:var(--card);color:var(--foreground);cursor:pointer;padding:.4375rem 1.0938rem;font-size:.7875rem;font-weight:600;transition:all .15s}.event-donate-pill:hover{border-color:var(--primary)}.event-donate-pill--active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}@media (max-width:1024px){.events-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.events-grid{grid-template-columns:1fr}.events-page,.event-detail{padding:1.75rem .875rem}.event-form-row{grid-template-columns:1fr}.event-hero-image{height:12.25rem}.event-title{font-size:1.3125rem}.event-register-layout{grid-template-columns:1fr}.event-register-side{position:static}.event-register-main{padding:1.0938rem}}.event-occurrence-select{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius,.4375rem);background:var(--card);width:100%;max-height:240px;color:var(--foreground);flex-direction:column;gap:.35rem;padding:.5687rem .7rem;display:flex;overflow-y:auto}.event-occurrence-select__all{color:var(--foreground);cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:.4813rem;padding-bottom:.3937rem;font-weight:600;display:flex}.event-occurrence-select__list{flex-direction:column;gap:.3062rem;padding-top:.1313rem;display:flex}.event-occurrence-select__option{color:var(--foreground);cursor:pointer;word-break:break-word;align-items:center;gap:.4813rem;font-size:.7875rem;line-height:1.35;display:flex}.event-occurrence-select__all input,.event-occurrence-select__option input{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex:none}@media (max-width:640px){.event-occurrence-select{max-height:200px;padding:.4813rem .5687rem}.event-occurrence-select__option{font-size:.7438rem}}
