.drecha-events-app{--drecha-blue:#0757d8;--drecha-ink:#172033;--drecha-line:#dbe4f0;--drecha-wash:#f5f8fc;color:var(--drecha-ink)}
.drecha-events-filter-trigger{display:flex;justify-content:flex-end;margin:0 0 .9rem}.drecha-events-filter-open{display:inline-flex;align-items:center;gap:.55rem;min-height:2.7rem;border:1px solid var(--drecha-blue);border-radius:4px;padding:.55rem 1rem;background:var(--drecha-blue);color:#fff;font-family:inherit;font-size:.875rem;font-weight:700;line-height:1.2;cursor:pointer}.drecha-events-filter-open:hover{filter:brightness(.92)}.drecha-events-filter-count{display:inline-grid;place-items:center;min-width:1.35rem;height:1.35rem;border-radius:999px;padding:0 .3rem;background:#fff;color:var(--drecha-blue);font-size:.7rem}
.drecha-events-filter-dialog{width:min(36rem,calc(100vw - 2rem));max-width:none;max-height:calc(100vh - 2rem);margin:auto;border:0;border-radius:4px;padding:0;background:transparent;color:var(--drecha-ink);box-shadow:0 28px 80px rgba(15,32,58,.3)}.drecha-events-filter-dialog::backdrop{background:rgba(11,24,45,.58);backdrop-filter:blur(3px)}.drecha-events-filter-panel{overflow:hidden;border:1px solid var(--drecha-line);border-radius:4px;background:#fff}.drecha-events-filter-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--drecha-line);padding:1.25rem 1.35rem;background:var(--drecha-wash)}.drecha-events-filter-panel>header p{margin:0 0 .2rem;color:#52647a;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.drecha-events-filter-panel>header h2{margin:0;color:var(--drecha-ink);font-family:inherit;font-size:1.35rem;font-weight:750;line-height:1.2}.drecha-events-filter-close{border:0;padding:.35rem;background:transparent;color:#40536b;font-family:inherit;font-size:.8rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.drecha-events-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.35rem;font-size:16px;line-height:1.4}.drecha-events-filters *{box-sizing:border-box}.drecha-events-filters label{display:grid;gap:.4rem;margin:0;color:var(--drecha-ink);font-size:.78rem;font-weight:700}.drecha-events-filters .drecha-events-search{grid-column:1/-1}.drecha-events-filters :is(input,select,button){width:100%;max-width:none;min-height:2.8rem;margin:0;border:1px solid #b9c7d8;border-radius:4px;padding:.58rem .75rem;background:#fff;color:var(--drecha-ink);font-family:inherit;font-size:.875rem;font-weight:500;line-height:1.25;box-shadow:none}.drecha-events-filters select{padding-right:2rem}.drecha-events-filters footer{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--drecha-line);margin-top:.25rem;padding-top:1rem}.drecha-events-filters footer button{width:auto;min-width:8rem;border-color:var(--drecha-blue);background:var(--drecha-blue);color:#fff;font-weight:700;cursor:pointer}.drecha-events-filters footer button:hover{filter:brightness(.92)}.drecha-events-clear{color:#40536b;font-size:.8rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.drecha-events-views{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem}
.drecha-events-views a,.drecha-event-actions a{border:1px solid var(--drecha-line);border-radius:4px;padding:.55rem .8rem;color:var(--drecha-ink);font-size:.8rem;font-weight:700;text-decoration:none}
.drecha-events-views a:is(:hover,.is-active){border-color:var(--drecha-blue);background:#eef5ff;color:var(--drecha-blue)}
.drecha-events-list{display:grid;gap:1rem}
.drecha-event-card{position:relative;border:1px solid var(--drecha-line);border-radius:4px;padding:1.25rem;background:#fff}
.drecha-event-card time{display:block;font-size:.875rem;color:#466078}
.drecha-event-card h3{margin:.35rem 0 0;font-size:1.25rem}.drecha-event-card h3 a,.drecha-event-location a{text-decoration:none}.drecha-event-card p{margin:.5rem 0 0}
.drecha-event-card.is-compact{padding:.75rem}.drecha-event-card.is-compact h3{font-size:1rem}
.drecha-featured-label{display:inline-block;margin:0 0 .6rem;border-radius:4px;padding:.25rem .45rem;background:#fff1a8;color:#5b4700;font-size:.7rem;font-weight:800;text-transform:uppercase}
.drecha-teacher-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.drecha-teacher-row a{display:inline-flex;align-items:center;gap:.45rem;color:var(--drecha-ink);font-size:.8rem;font-weight:700;text-decoration:none}
.drecha-teacher-avatar{width:2.4rem;height:2.4rem;border:2px solid #fff;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px var(--drecha-line)}.drecha-teacher-avatar.is-fallback{display:inline-flex;align-items:center;justify-content:center;background:#dce9ff;color:var(--drecha-blue);font-weight:800}
.drecha-event-actions{display:flex;gap:.5rem;margin-top:1rem}
.drecha-calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.drecha-calendar-heading h2{margin:0}.drecha-calendar-heading a{font-size:1.5rem;text-decoration:none}
.drecha-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow-x:auto;border-top:1px solid var(--drecha-line);border-left:1px solid var(--drecha-line)}
.drecha-calendar-weekday,.drecha-calendar-cell{min-width:7rem;border-right:1px solid var(--drecha-line);border-bottom:1px solid var(--drecha-line);padding:.6rem}.drecha-calendar-weekday{background:var(--drecha-wash);font-size:.72rem;font-weight:800;text-align:center;text-transform:uppercase}
.drecha-calendar-cell{min-height:8rem}.drecha-calendar-cell.is-empty{background:#fafbfc}.drecha-calendar-number{font-size:.8rem;font-weight:800}.drecha-calendar-cell a{display:grid;gap:.1rem;margin-top:.45rem;border-left:3px solid var(--drecha-blue);padding:.35rem;background:#eef5ff;color:var(--drecha-ink);font-size:.72rem;font-weight:700;text-decoration:none}.drecha-calendar-cell a time{font-size:.65rem;font-weight:400}
.drecha-week-grid{display:grid;gap:.75rem}.drecha-week-grid>section{border-top:3px solid var(--drecha-blue);padding-top:.65rem}.drecha-week-grid>section>h3{margin:0 0 .65rem;font-size:.9rem}
.drecha-event-meta{display:grid;grid-template-columns:max-content 1fr;gap:.5rem 1rem;border-block:1px solid var(--drecha-line);padding-block:1rem}.drecha-event-meta dt{font-weight:700}.drecha-event-meta dd{margin:0}
.drecha-teacher-profiles{margin:1.5rem 0}.drecha-teacher-profiles>div{display:flex;flex-wrap:wrap;gap:1rem}.drecha-teacher-profiles a{display:flex;align-items:center;gap:.75rem;text-decoration:none}.drecha-teacher-profiles small{display:block;color:#526078}
.single-drecha_teacher .wp-post-image{width:min(14rem,60vw);height:min(14rem,60vw);border-radius:50%;object-fit:cover}
.drecha-online-event-link{display:inline-flex;border-radius:4px;padding:.7rem 1rem;background:var(--drecha-blue);color:#fff;text-decoration:none}.drecha-related-events{margin-top:2rem}.drecha-events-empty,.drecha-events-notice{border-left:4px solid var(--drecha-blue);padding:1rem;background:#eef5ff}
@media(min-width:720px){.drecha-events-list{grid-template-columns:repeat(2,minmax(0,1fr))}.drecha-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));overflow-x:auto}.drecha-week-grid>section{min-width:8rem}}
@media(max-width:719px){.drecha-events-filters{grid-template-columns:1fr}.drecha-events-filters .drecha-events-search,.drecha-events-filters footer{grid-column:1}.drecha-month-grid{grid-template-columns:repeat(7,7rem)}.drecha-event-meta{grid-template-columns:1fr}.drecha-event-meta dt{margin-top:.5rem}}
