/* Componente de agenda: estilos aislados del resto del CMS. */
.dae-agenda-page{width:100%;min-width:0;background:#fff}
.dae-agenda-page .ea-shell{position:relative;z-index:2;box-sizing:border-box;width:calc(100% - 40px);max-width:1440px;margin:-28px auto 0;padding:20px 20px 64px;border-radius:26px 26px 0 0;background:#fff}
.dae-agenda-header .ec-hero__photo{background:#006779}
.dae-agenda-header .ec-hero__photo img{transform:none;object-position:center 8%}
.dae-agenda-header a:focus-visible{outline:2px solid var(--ec-muted);outline-offset:3px}
#escena-agenda.dae-agenda{--ea-red:#b6002d;--ea-ink:#080f2d;--ea-muted:#596b83;--ea-cream:#f5f3ef;--ea-border:#e7e9ee;--ea-header-height:0px;--ea-nav-height:64px;--ea-scroll-offset:calc(var(--ea-header-height) + 16px);width:100%;min-width:0;color:var(--ea-ink);font:16px/1.5 'Open Sans',Arial,sans-serif}
#escena-agenda.dae-agenda *, #escena-agenda.dae-agenda *::before, #escena-agenda.dae-agenda *::after{box-sizing:border-box}
#escena-agenda.dae-agenda a{color:inherit;text-decoration:none;border-bottom:0;font-weight:inherit}
#escena-agenda.dae-agenda input, #escena-agenda.dae-agenda select, #escena-agenda.dae-agenda button{font:inherit}
#escena-agenda.dae-agenda a:focus-visible, #escena-agenda.dae-agenda button:focus-visible{outline:2px solid var(--ea-muted);outline-offset:3px}
#escena-agenda.dae-agenda .ec-icon{display:block;flex:none;width:20px;height:20px}
#escena-agenda.dae-agenda .ea-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#escena-agenda.dae-agenda .ea-filters{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.7fr) auto;align-items:start;gap:18px;padding:22px 24px;margin:8px 0 26px;border-radius:16px;background:var(--ea-cream)}
#escena-agenda.dae-agenda .ea-field{min-width:0}
#escena-agenda.dae-agenda .ea-field label{display:block;margin:0 0 6px;font-size:13px;font-weight:700;color:var(--ea-ink)}
#escena-agenda.dae-agenda .ea-field input, #escena-agenda.dae-agenda .ea-field select{display:block;width:100%;min-height:48px;margin:0;padding:10px 12px;border:1px solid #b0bdcc;border-radius:7px;background:#fff;color:#263e5b;font-size:14px;box-shadow:none}
#escena-agenda.dae-agenda .ea-field input{appearance:none}
#escena-agenda.dae-agenda .ea-field select{cursor:pointer}
#escena-agenda.dae-agenda .ea-field input:focus, #escena-agenda.dae-agenda .ea-field input:active, #escena-agenda.dae-agenda .ea-field select:focus, #escena-agenda.dae-agenda .ea-field select:active{outline:none;border-color:var(--ea-muted);box-shadow:none}
#escena-agenda.dae-agenda .ea-actions{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:25px}
#escena-agenda.dae-agenda .ea-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 16px;border:1px solid var(--ea-red);border-radius:11px;background:var(--ea-red);color:#fff;font-size:14px;font-weight:700;white-space:nowrap;cursor:pointer}
#escena-agenda.dae-agenda .ea-actions button:hover{background:#900023}
#escena-agenda.dae-agenda .ea-actions a{font-size:14px;text-decoration:underline;text-underline-offset:3px;color:#3f4e64}
#escena-agenda.dae-agenda .ea-count{margin:0 0 30px;font-size:15px;color:var(--ea-muted)}
#escena-agenda.dae-agenda .ea-layout{display:grid;grid-template-columns:176px minmax(0,1fr);align-items:start;gap:24px}
#escena-agenda.dae-agenda .ea-months{min-width:0}
#escena-agenda.dae-agenda .ea-month-nav{position:sticky;top:calc(var(--ea-header-height) + 16px);z-index:3;min-width:0;max-height:calc(100vh - var(--ea-header-height) - 32px);overflow-y:auto;background:#fff}
#escena-agenda.dae-agenda .ea-month-nav__list{list-style:none;margin:0;padding:0}
#escena-agenda.dae-agenda .ea-month-nav__list li{margin:0;padding:0;list-style:none}
#escena-agenda.dae-agenda .ea-month-nav a{display:flex;align-items:center;gap:10px;min-height:34px;padding:6px 4px;color:var(--ea-muted);font-size:13px;line-height:1.4}
#escena-agenda.dae-agenda .ea-month-nav a::before{content:'';flex:none;width:16px;height:2px;margin-right:8px;background:#aab3bf;transition:width .18s ease,margin-right .18s ease}
#escena-agenda.dae-agenda .ea-month-nav a:hover::before, #escena-agenda.dae-agenda .ea-month-nav a:focus-visible::before{width:24px;margin-right:0}
#escena-agenda.dae-agenda .ea-month-nav a[aria-current="location"]{color:var(--ea-red);font-weight:700}
#escena-agenda.dae-agenda .ea-month-nav a[aria-current="location"]::before{width:24px;margin-right:0;background:var(--ea-red)}
#escena-agenda.dae-agenda .ea-month-nav a:focus-visible{outline-offset:-2px}
#escena-agenda.dae-agenda .ea-month > h2{scroll-margin-top:var(--ea-scroll-offset)}
#escena-agenda.dae-agenda .ea-month > h2:focus-visible{outline:2px solid var(--ea-muted);outline-offset:4px}
#escena-agenda.dae-agenda .ea-month{margin:0 0 42px}
#escena-agenda.dae-agenda .ea-month > h2{display:flex;align-items:center;gap:12px;margin:0 0 20px;color:var(--ea-ink);font:800 28px/1.25 'Plus Jakarta Sans','Open Sans',Arial,sans-serif;letter-spacing:-.025em}
#escena-agenda.dae-agenda .ea-month > h2::before{content:'';width:6px;height:29px;border-radius:4px;background:var(--ea-red)}
#escena-agenda.dae-agenda .ea-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px}
#escena-agenda.dae-agenda .ea-day{min-width:0;border:1px solid var(--ea-border);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 3px 10px rgba(18,25,42,.04)}
#escena-agenda.dae-agenda .ea-day > h3{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin:0;padding:16px 18px;border-bottom:1px solid var(--ea-border);background:var(--ea-cream);color:var(--ea-ink);font:700 17px/1.2 'Open Sans',Arial,sans-serif;text-transform:none;letter-spacing:0}
#escena-agenda.dae-agenda .ea-day > h3 time{display:flex;align-items:center;gap:10px}
#escena-agenda.dae-agenda .ea-day__number{color:var(--ea-red);font:800 35px/1 'Plus Jakarta Sans','Open Sans',Arial,sans-serif}
#escena-agenda.dae-agenda .ea-day__month{font-size:15px;font-weight:400;color:var(--ea-muted)}
#escena-agenda.dae-agenda .ea-event{padding:0 18px 12px}
#escena-agenda.dae-agenda .ea-event + .ea-event{border-top:1px solid var(--ea-border)}
#escena-agenda.dae-agenda .ea-event__image{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;margin:0 -18px 12px;border-radius:0;background:var(--ea-cream)}
#escena-agenda.dae-agenda .ea-event__image img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
#escena-agenda.dae-agenda .ea-event__image:focus-visible{outline-offset:-4px}
#escena-agenda.dae-agenda .ea-event h4{margin:0 0 4px;padding:0;color:var(--ea-ink);font:800 19px/1.3 'Plus Jakarta Sans','Open Sans',Arial,sans-serif;overflow-wrap:anywhere;text-transform:none;letter-spacing:0}
#escena-agenda.dae-agenda .ea-event h4::after{content:none}
#escena-agenda.dae-agenda .ea-event h4 a:hover{color:var(--ea-red);text-decoration:underline}
#escena-agenda.dae-agenda .ea-event__artist{margin:0 0 10px;color:#354862;font-size:14px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
#escena-agenda.dae-agenda .ea-event__facts{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;margin:0;font-size:14px;line-height:1.4}
#escena-agenda.dae-agenda .ea-event__population{grid-column:1/-1}
#escena-agenda.dae-agenda .ea-event__facts dt{margin:0;color:var(--ea-muted);font-size:12px;font-weight:400}
#escena-agenda.dae-agenda .ea-event__facts dd{margin:0;color:#263e5b;overflow-wrap:anywhere}
#escena-agenda.dae-agenda .ea-event__time dd{font-weight:700}
#escena-agenda.dae-agenda .ea-event__link{display:inline-flex;align-items:center;gap:10px;margin-top:8px;color:var(--ea-red);font-size:14px;font-weight:700}
#escena-agenda.dae-agenda .ea-event__link:hover{text-decoration:underline}
#escena-agenda.dae-agenda .ea-empty{padding:28px;border:1px solid var(--ea-border);border-radius:12px;background:var(--ea-cream);color:#354862;text-align:center}
@media(max-width:1023px){
    #escena-agenda.dae-agenda{--ea-scroll-offset:calc(var(--ea-header-height) + var(--ea-nav-height) + 32px)}
    #escena-agenda.dae-agenda .ea-layout{display:block}
    #escena-agenda.dae-agenda .ea-month-nav{margin-bottom:24px;max-height:none;overflow:visible;border-bottom:1px solid var(--ea-border)}
    #escena-agenda.dae-agenda .ea-month-nav::before{content:'';position:absolute;top:-16px;left:0;right:0;height:16px;background:#fff;pointer-events:none}
    #escena-agenda.dae-agenda .ea-month-nav__list{display:flex;gap:8px;overflow-x:auto;padding:6px 0;scrollbar-width:thin}
    #escena-agenda.dae-agenda .ea-month-nav__list li{flex:none}
    #escena-agenda.dae-agenda .ea-month-nav a{min-height:44px;white-space:nowrap;padding:8px 6px}
    #escena-agenda.dae-agenda .ea-days{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:799px){
    #escena-agenda.dae-agenda{--ea-header-height:132px}
}
@media(max-width:991px){
    #escena-agenda.dae-agenda .ea-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
    #escena-agenda.dae-agenda .ea-actions{grid-column:1/-1;align-items:flex-end;padding-top:0}
}
@media(prefers-reduced-motion:reduce){
    #escena-agenda.dae-agenda .ea-month-nav a, #escena-agenda.dae-agenda .ea-month-nav a::before{transition:none}
}
@media(max-width:767px){
    .dae-agenda-page .ea-shell{width:calc(100% - 24px);padding:14px 14px 48px}
    #escena-agenda.dae-agenda .ea-days{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:639px){
    #escena-agenda.dae-agenda .ea-filters{grid-template-columns:1fr;padding:18px}
    #escena-agenda.dae-agenda .ea-field input, #escena-agenda.dae-agenda .ea-field select{font-size:16px}
    #escena-agenda.dae-agenda .ea-actions{align-items:stretch}
    #escena-agenda.dae-agenda .ea-actions a{text-align:center}
    #escena-agenda.dae-agenda .ea-month > h2{font-size:25px}
    #escena-agenda.dae-agenda .ea-event{padding:0 20px 12px}
    #escena-agenda.dae-agenda .ea-event__image{margin-right:-20px;margin-left:-20px}
}
@media(max-width:539px){
    #escena-agenda.dae-agenda .ea-days{grid-template-columns:1fr;gap:16px}
    .dae-agenda-page .ea-shell{margin-top:-20px;border-radius:22px 22px 0 0}
    .dae-agenda-header .ec-hero__photo{height:240px}
    .dae-agenda-header .ec-hero__photo img{object-position:60% 35%}
}
