:root{--parral-primary:#004C97;--parral-accent:#D4AF37;--parral-radius:16px;--parral-shadow:0 12px 30px rgba(0,0,0,.08)}
.parral-event-banner,.parral-calendar-wrapper{margin:2rem 0;font-family:inherit}
.parral-event-banner__header,.parral-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.parral-event-banner__header h2,.parral-calendar-toolbar h2{margin:0;font-size:clamp(1.4rem,2vw,2rem);font-weight:800;color:var(--parral-primary)}
.parral-event-banner__controls{display:flex;gap:.5rem;align-items:center}
.parral-event-prev,.parral-event-next,.parral-nav-btn{border:1px solid rgba(0,76,151,.25)!important;background:var(--parral-primary)!important;color:#fff!important;border-radius:999px!important;width:42px!important;height:42px!important;cursor:pointer!important;font-size:1.8rem!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 8px 18px rgba(0,76,151,.18)!important;padding:0!important}
.parral-event-prev:hover,.parral-event-next:hover,.parral-nav-btn:hover{filter:brightness(.95);transform:translateY(-1px)}
.parral-event-banner__track{display:flex;gap:1rem;overflow-x:auto;scroll-behavior:smooth;padding:.25rem .1rem 1rem}
.parral-event-card{min-width:300px;max-width:320px;background:#fff;border-radius:var(--parral-radius);overflow:hidden;box-shadow:var(--parral-shadow);color:inherit;text-decoration:none!important;border-left:5px solid var(--parral-accent);transition:transform .15s ease,box-shadow .15s ease}
.parral-event-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(0,0,0,.12)}
.parral-event-card__image{aspect-ratio:16/9;overflow:hidden;background:#eef3f8}
.parral-event-card__image img{width:100%;height:100%;object-fit:cover}
.parral-event-card__body{padding:1rem}
.parral-event-card__date,.parral-event-card__category{display:inline-block;font-size:.78rem;border-radius:999px;padding:.25rem .55rem;margin:0 .25rem .5rem 0;background:rgba(0,76,151,.08);color:var(--parral-primary);font-weight:700}
.parral-event-card__category{background:var(--parral-accent);color:#111}
.parral-event-card h3{margin:.25rem 0;font-size:1.05rem;font-weight:800;color:#111}
.parral-event-card p{color:#666;font-size:.9rem}
.parral-calendar-filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
.parral-filter-btn{border:1px solid rgba(0,76,151,.25);background:#fff;color:var(--parral-primary);border-radius:999px;padding:.4rem .75rem;cursor:pointer;font-weight:700}
.parral-filter-btn.active{background:var(--parral-primary);color:#fff}
.parral-calendar-days,.parral-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}
.parral-calendar-days div{text-align:center;font-weight:700;color:#666}
.parral-calendar-day{min-height:100px;background:#fff;border-radius:12px;box-shadow:var(--parral-shadow);padding:.7rem}
.parral-calendar-day strong{display:block;margin-bottom:.3rem}
.parral-calendar-event-link{display:block;font-size:.82rem;color:var(--parral-primary);cursor:pointer;margin-bottom:.25rem;line-height:1.2}
.parral-calendar-event-link:hover{text-decoration:underline}
.parral-calendar-details{margin-top:2rem}
.parral-calendar-detail-card{background:#fff;border-radius:var(--parral-radius);box-shadow:var(--parral-shadow);padding:1rem;margin-bottom:1rem;border-left:5px solid var(--parral-primary)}
.parral-calendar-detail-card img{width:100%;border-radius:12px;margin-bottom:12px}
.parral-empty,.parral-loading{color:#666;margin:0}
@media(max-width:900px){.parral-calendar-days,.parral-calendar-grid{grid-template-columns:repeat(2,1fr)}.parral-event-card{min-width:260px}}