.ref-agenda { color-scheme:dark; padding-block:var(--b27-space-section); padding-inline:0; color:var(--b27-ink); background:var(--b27-cream-50); }
.ref-agenda a { color:inherit; }

.ref-agenda .b27-eyebrow,.ref-agenda .b27-programme__links a { color:var(--b27-teal); }
.ref-agenda .b27-programme__header { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:end; gap:24px; margin:0 0 16px; padding:0; border:0; }
.ref-agenda .b27-programme__header h1,.ref-agenda .b27-programme__header h2 { max-width:900px; font-size:var(--b27-type-page); line-height:1.1; letter-spacing:-.035em; text-transform:none; margin:12px 0 0; color:var(--b27-ink); }
.ref-agenda .b27-programme__context { max-width:320px; font-size:14px; }
.ref-agenda .b27-selected-tracks { display:none; }
.ref-agenda .b27-programme__links { margin-top:12px; }
.ref-agenda__layout { display:grid; gap:24px; }
.ref-agenda .b27-programme-filters { display:block; min-width:0; margin:0; border:0; padding:0; background:transparent; }
.ref-agenda .b27-programme-days { border:0; padding:0; margin:0 0 24px; }
.ref-agenda .b27-programme-days > div { display:flex; flex-wrap:wrap; gap:8px; border:0; }
.ref-agenda .b27-programme-days label { position:relative; flex:0 0 auto; inline-size:auto; min-inline-size:0; }
.ref-agenda .b27-programme-days label span { display:flex; align-items:center; justify-content:center; gap:4px; width:100%; min-height:44px; padding:8px 16px; border:1px solid var(--b27-control-border); border-radius:8px; background:var(--ref-raised, #12223a); color:var(--b27-ink); font-size:14px; cursor:pointer; }
.ref-agenda .b27-programme-days label strong { font-family:Syne,sans-serif; font-size:24px; line-height:1; }
.ref-agenda .b27-programme-days input { position:absolute; width:1px; height:1px; opacity:0; }
.ref-agenda .b27-programme-days input:checked + span { border:1px solid var(--b27-teal); background:var(--b27-teal); color:var(--ref-bg, #050c12); }
.ref-agenda .b27-programme-days input:focus-visible + span { outline:3px solid var(--b27-teal); outline-offset:3px; }
.ref-agenda__worlds { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
.ref-agenda--home .ref-agenda__worlds { display:none; }
.ref-agenda .b27-programme-filters__fields,.ref-agenda .b27-programme-filters[data-enhanced=true] .b27-programme-filters__fields { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
.ref-agenda [data-enhanced=true] label:has(select) { display:none; }
.ref-agenda .b27-programme-search input { width:100%; margin-top:8px; min-height:44px; border-color:var(--b27-control-border); border-radius:8px; color:var(--b27-ink); background:var(--ref-raised, #12223a); }
.ref-agenda .b27-programme-search input::placeholder { color:var(--b27-muted); opacity:1; }
.ref-agenda .b27-programme-search__field { display:flex; align-items:center; gap:12px; }
.ref-agenda .b27-programme-search__field input { min-width:0; flex:1; }
.ref-agenda [data-programme-clear-search] { display:inline-flex; align-items:center; min-height:44px; flex:0 0 auto; margin-top:8px; font-size:14px; text-underline-offset:.2em; }
.ref-agenda [data-programme-clear-search]:focus-visible { outline:2px solid var(--b27-teal); outline-offset:3px; }
.ref-agenda .b27-programme-filters__summary { margin-top:20px; font-size:14px; color:var(--b27-muted); }
.ref-agenda__results { min-width:0; }
.ref-agenda .b27-session-groups { display:block; max-width:none; margin:0; }
.ref-agenda .b27-programme-day { margin:0 0 32px; }
.ref-agenda .b27-programme-day__heading { display:flex; align-items:baseline; gap:16px; margin:0 0 16px; padding:0; border:0; color:var(--b27-ink); }
.ref-agenda .b27-programme-day__date { font-family:Syne,sans-serif; font-size:48px; line-height:1; color:var(--b27-teal); }
.ref-agenda .b27-programme-day__label { max-inline-size:none; font-size:14px; letter-spacing:0; text-transform:none; color:var(--b27-muted); }
.ref-agenda .b27-session-list { display:block; margin:0; padding:0; list-style:none; border-top:1px solid var(--ref-line); background:transparent; }
.ref-agenda .b27-session { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; border:0; border-bottom:1px solid var(--ref-line); padding:24px 0; border-radius:0; background:transparent; }
.ref-agenda .b27-session__overview { display:grid; grid-template-columns:minmax(0,1fr); gap:12px 16px; min-width:0; min-height:0; margin:0; padding:0; }
.ref-agenda .b27-session__time { margin:0; font-size:14px; font-weight:500; color:var(--b27-teal); }
.ref-agenda__end { display:block; margin-top:4px; color:var(--b27-muted); }
.ref-agenda .b27-session__identity { min-width:0; }
.ref-agenda .b27-session__title { margin:0 0 8px; font-family:Manrope,sans-serif; font-size:18px; font-weight:600; line-height:1.3; letter-spacing:0; text-transform:none; color:var(--b27-ink); }
.ref-agenda .b27-session__title a { display:block; min-block-size:0; margin:0; padding:0; color:var(--b27-ink); }
.ref-agenda--directory .b27-session__title { font-family:Manrope,sans-serif; font-size:18px; }
.ref-agenda .ref-agenda__faculty { display:flex; flex-wrap:wrap; gap:12px; list-style:none; padding:0; margin:16px 0 0; color:var(--b27-ink); }
.ref-agenda__faculty li { margin:0; }
.ref-agenda__faculty a { display:flex; align-items:center; gap:12px; min-height:44px; color:var(--b27-ink); text-decoration:none; }
.ref-agenda__faculty a:is(:hover, :focus-visible) .ref-agenda__faculty-name { text-decoration:underline; text-underline-offset:.2em; }
.ref-agenda__faculty a:focus-visible { outline:2px solid var(--b27-brass-500); outline-offset:4px; }
.ref-agenda__faculty img { flex:0 0 48px; width:48px; height:48px; object-fit:cover; border-radius:50%; }
.ref-agenda__faculty-name { display:block; font-size:14px; font-weight:500; color:var(--b27-ink); }
.ref-agenda__faculty-detail { display:block; font-size:14px; color:var(--b27-muted); }
.ref-agenda .b27-session__open { display:none; }
.ref-agenda .b27-session__context { grid-column:1; display:flex; flex-wrap:wrap; justify-content:flex-start; text-align:start; gap:4px 12px; font-size:14px; line-height:1.45; color:var(--b27-muted); }
.ref-agenda .b27-session__context p { margin:0; }
.ref-agenda .b27-session__format,.ref-agenda .b27-session__status { flex:0 1 auto; }
.ref-agenda .b27-session__status { color:#f3d48a; }
.ref-agenda .b27-session__actions { display:flex; flex-wrap:wrap; align-items:flex-start; align-self:start; justify-content:flex-start; gap:12px; border:0; margin:0; padding:0; }
.ref-agenda .b27-session__actions--row:not(:has(button:not([hidden]))) { display:flex; }
.ref-agenda .b27-session__actions .b27-session__room { flex:0 1 auto; max-width:100px; margin:0; font-size:14px; color:var(--b27-muted); }
.ref-agenda .b27-save { min-width:44px; min-height:44px; padding:8px 12px; border:1px solid var(--b27-control-border); border-radius:8px; background:transparent; color:var(--b27-ink); font-size:14px; }
.ref-agenda .b27-save[aria-pressed=true] { background:var(--b27-teal); color:var(--ref-bg, #050c12); border-color:var(--b27-teal); }
.ref-agenda .b27-demo-note,.ref-agenda .b27-empty { color:var(--b27-ink); background:var(--ref-raised, #12223a); border-color:var(--b27-teal); }
.ref-agenda .b27-browser-save-note { font-size:14px; line-height:1.6; margin-top:32px; color:var(--b27-muted); }
.ref-agenda [hidden] { display:none !important; }
.ref-agenda [data-filter-empty] a { display:inline-flex; align-items:center; min-height:44px; padding:8px 12px; border:1px solid var(--b27-control-border); border-radius:8px; }
.ref-agenda [data-programme-results]:focus { outline:2px solid var(--b27-teal); outline-offset:4px; }
@media(min-width:640px) {
 .ref-agenda .b27-session { grid-template-columns:minmax(0,1fr) auto; }
 .ref-agenda .b27-session__overview { grid-template-columns:96px minmax(0,1fr); }
 .ref-agenda--directory .b27-session__overview { grid-template-columns:96px minmax(0,1fr); }
 .ref-agenda .b27-session__context { grid-column:2; }
 .ref-agenda .b27-session__actions { max-width:140px; justify-content:flex-end; }
}
@media(min-width:768px) { .ref-agenda .b27-session__title,.ref-agenda--directory .b27-session__title { font-size:20px; } }
@media(min-width:1024px) {
 .ref-agenda .b27-programme-filters[data-enhanced=true] { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr); gap:16px 24px; align-items:end; }
 .ref-agenda .b27-programme-days,.ref-agenda .b27-programme-filters__summary { grid-column:1 / -1; margin:0; }
 .ref-agenda__worlds { margin:0; align-self:end; }
}
.b27-session-detail.b27-container { padding-inline:0; padding-block:var(--b27-space-section); color:var(--b27-ink); }
.b27-session-detail__content { max-width:72ch; }
.b27-session-detail__content p,.b27-session-detail__content li { font-size:16px; line-height:1.65; }
.b27-session-detail__faculty { margin-block:24px; }
.b27-session-detail__actions { margin-top:24px; }
.b27-session-detail [data-session-back] { display:inline-flex; align-items:center; min-height:44px; }
.b27-session-detail__faculty .ref-agenda__faculty { display:grid; gap:16px; list-style:none; padding:0; margin:0; }
.b27-session-detail__faculty .ref-agenda__faculty li { list-style:none; margin:0; }
.b27-session-detail__faculty .ref-agenda__faculty a { display:flex; align-items:center; gap:12px; min-height:44px; }
.b27-session-detail__faculty .ref-agenda__faculty img { flex:0 0 40px; width:40px; height:40px; object-fit:cover; border-radius:50%; }
.b27-session-detail__faculty .ref-agenda__faculty a > span { min-width:0; }
