/* Agenda presentation only. Source data, state calculation and URLs stay unchanged. */
.schedule-browser .agenda-panel{overflow:hidden;border:1px solid #e4deec;border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(248,245,252,.86));box-shadow:inset 0 1px 0 #fff,0 18px 44px -34px rgba(44,31,72,.24);backdrop-filter:none;-webkit-backdrop-filter:none}
.agenda-panel-head,.agenda-panel.is-today .agenda-panel-head{padding:22px 24px;background:rgba(255,255,255,.4);border-bottom:1px solid #e9e3ee;gap:18px}
.agenda-panel.is-today .agenda-panel-head{background:linear-gradient(110deg,rgba(255,240,207,.55),rgba(255,255,255,.35) 70%)}
.agenda-date-number,.agenda-panel.is-today .agenda-date-number{width:50px;height:54px;font-size:25px;border-radius:13px;background:#eee9f7;color:#302758;border:1px solid #ded5ee;box-shadow:none}
.agenda-panel.is-today .agenda-date-number{background:#fff0ce;color:#865a1b;border-color:#efd49c}
.agenda-panel-head h3{font-size:23px;margin:0 0 2px}
.agenda-day-identity{gap:13px}.agenda-day-meta{margin-top:5px;gap:8px}.agenda-state{font-size:10px;padding:3px 8px}
.agenda-all-button{min-height:42px;font-size:12px;padding:9px 15px;box-shadow:inset 0 1px 0 #fff;background:rgba(255,255,255,.75)}
.agenda-scroll{padding:20px;min-height:0;max-height:min(650px,70svh);scrollbar-gutter:stable;overflow-x:hidden}
.agenda-entries,.agenda-dialog .agenda-entries{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.agenda-entry,.agenda-dialog .agenda-entry{display:grid;grid-template-columns:164px minmax(0,1fr);gap:26px;padding:24px;border:1px solid #e7e0ef;border-radius:18px;background:rgba(255,255,255,.65);box-shadow:none;overflow:visible}
.agenda-entry::before,.agenda-entry.is-live-now::before{display:none}
.agenda-entry-time{position:relative;display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-start;flex-wrap:nowrap;gap:9px;padding:3px 0 0;border:0;font-size:14px;font-weight:800;color:#403361;line-height:1.6;height:auto;font-variant-numeric:tabular-nums}
.agenda-time-icon{width:18px;height:22px;background:none;border-radius:0;color:#8c7aa7;flex:none}
.agenda-time-icon svg{width:16px;height:16px}
.agenda-entry-content{position:relative;padding-inline-start:24px;border-inline-start:1px solid rgba(139,121,163,.22);min-width:0}
.agenda-entry-content::before{content:'';position:absolute;inset-inline-start:-4px;top:5px;width:7px;height:7px;background:#9a8aaf;border-radius:50%;box-shadow:0 0 0 4px #fdfbff}
.agenda-entry-status{font-size:10px;color:#81738e;gap:7px;line-height:1.6}.agenda-status-dot{display:none}
.agenda-entry h4{font-size:clamp(18px,1.65vw,22px);line-height:1.55;margin:7px 0 13px;max-width:62ch}
.agenda-entry-location{display:grid;grid-template-columns:auto 16px minmax(0,1fr);align-items:start;gap:9px;border:0;padding:0;margin:0;color:#60546f;font-size:13px;line-height:1.75}
.agenda-entry-location>span:last-child{min-width:0;overflow-wrap:anywhere}
.agenda-entry-location svg{margin-top:4px;width:15px;height:15px}
.agenda-format{flex:none;align-self:center;max-width:100%;font-size:10px;padding:3px 9px;border-radius:6px;margin-inline-end:6px;font-weight:600}
.agenda-entry[data-state="completed"]{background:rgba(248,246,250,.85);border-color:#e7e2ec;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.agenda-entry[data-state="completed"] h4{color:#70677c}.agenda-entry[data-state="completed"] .agenda-entry-time{color:#82788e;background:none}
.agenda-entry.is-live-now{background:linear-gradient(110deg,#fff4f6,#fffbfc);border:1px solid #efc6d1;border-radius:18px;margin-block:0;padding:24px;box-shadow:none}
.agenda-entry.is-live-now::after{display:none}
.agenda-entry.is-live-now .agenda-entry-content{border-color:#e9bcc8}
.agenda-entry.is-live-now .agenda-entry-content::before{background:#d33b5b;box-shadow:0 0 0 4px #fff1f4;animation:timelinePulse 2.5s ease-out infinite}
.agenda-entry.is-live-now .agenda-entry-status-text{padding:0;border:0;background:none;color:#b22f4e}
.agenda-entry.is-live-now .agenda-entry-time{background:none;border:0;color:#a62c49}
.agenda-entry.is-live-now .agenda-time-icon{background:none;color:#bd536b}
.agenda-tabs-label{margin:16px 0 10px;font-size:12px}
.agenda-tabs{gap:8px;padding:4px}
.agenda-tab{min-height:110px;padding:12px;border-radius:12px;gap:3px;box-shadow:none;transition:background .2s,border-color .2s,box-shadow .2s}
.agenda-tab b{font-size:13px}.agenda-tab-date,.agenda-tab-count{font-size:10px}
.agenda-tab .agenda-state{display:none}
.agenda-tab.is-today .agenda-state{display:inline-flex;margin-top:4px;font-size:9px;padding:2px 6px;line-height:1.5}
.agenda-tab[aria-selected="true"]{box-shadow:inset 0 2px 0 #e4b967,0 5px 14px -11px #302857;background:linear-gradient(145deg,#3b3065,#282143);border-color:#65517d}
.agenda-tab:hover{transform:none;box-shadow:none}
.agenda-empty{margin-block:16px;padding:30px;border:1px dashed #dcd3e8;border-radius:15px;background:rgba(255,255,255,.35)}
.agenda-dialog .agenda-entry{grid-template-columns:135px minmax(0,1fr);gap:16px}.agenda-dialog .agenda-entry h4{font-size:18px}
@keyframes timelinePulse{0%,100%{box-shadow:0 0 0 4px #fff1f4}50%{box-shadow:0 0 0 7px rgba(211,59,91,.1)}}
@media(max-width:600px){
 .schedule-browser .agenda-panel{border-radius:20px}
 .agenda-panel-head,.agenda-panel.is-today .agenda-panel-head{padding:17px 16px;gap:14px}
 .agenda-all-button{width:auto;min-height:44px}.agenda-panel-head h3{font-size:21px}
 .agenda-scroll{padding:12px;max-height:min(620px,72svh)}
 .agenda-entry,.agenda-dialog .agenda-entry{grid-template-columns:minmax(0,1fr);gap:12px;padding:18px 16px;border-radius:16px}
 .agenda-entry-time{font-size:13px;gap:8px;padding:0}
 .agenda-entry-content{padding-inline-start:16px}
 .agenda-entry h4{font-size:18px;line-height:1.6;margin:6px 0 12px}
 .agenda-entry.is-live-now{padding:18px 16px;margin-block:0;border-radius:16px}
 .agenda-entry-location{grid-template-columns:16px minmax(0,1fr);gap:7px;align-items:start;font-size:13px}
 .agenda-entry-location .agenda-format{grid-column:1/-1;justify-self:start;margin-bottom:2px}.agenda-entry-location svg{margin-top:4px}
 .agenda-tabs{display:flex;overflow-x:auto;gap:8px;padding:5px 4px 10px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#c8bdd8 transparent;overscroll-behavior-x:contain}
 .agenda-tab{flex:0 0 96px;min-height:108px;padding:11px;scroll-snap-align:center}
 .agenda-tab-date,.agenda-tab-count{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.agenda-entry.is-live-now .agenda-entry-content::before{animation:none}}
