/* OVBC 2027 agenda module. Styles are scoped to #ovbc-compact-agenda. */
#ovbc-compact-agenda{color-scheme:light dark;--oc-paper:light-dark(#ffffff,#111c27);--oc-ink:light-dark(#182f44,#e3edf6);--oc-muted:light-dark(#526576,#b0c0ce);--oc-line:light-dark(#dce4e9,#354653);--oc-wash:light-dark(#f3f6f7,#1d2b36);--oc-accent:light-dark(#006f78,#75d6dc);--oc-active:light-dark(#153d51,#92d3db);--oc-on-active:light-dark(#ffffff,#102731);--oc-hover:light-dark(#f7fafb,#1a2a37);background:var(--oc-paper);color:var(--oc-ink);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.45;width:100%;box-sizing:border-box}
#ovbc-compact-agenda *{box-sizing:border-box}
#ovbc-compact-agenda a{color:inherit;text-decoration:none}
#ovbc-compact-agenda button{font:inherit;cursor:pointer;color:var(--oc-ink)}
#ovbc-compact-agenda .oc-main{padding:22px 30px 18px}
#ovbc-compact-agenda h1{font-size:28px;line-height:1.2;letter-spacing:-.6px;font-weight:500;margin:0}
#ovbc-compact-agenda .oc-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--oc-line);padding-bottom:13px}
#ovbc-compact-agenda .oc-days{display:flex;gap:6px}
#ovbc-compact-agenda .oc-days button{border:1px solid var(--oc-line);background:var(--oc-paper);padding:8px 18px;border-radius:4px;font-weight:500}
#ovbc-compact-agenda .oc-days button span{margin-left:6px;font-weight:400}
#ovbc-compact-agenda .oc-days [aria-pressed="true"]{background:var(--oc-active);color:var(--oc-on-active);border-color:var(--oc-active)}
#ovbc-compact-agenda .oc-expand,#ovbc-compact-agenda .oc-next-day{background:transparent;border:0;color:var(--oc-accent);padding:8px 0;font-size:13px}
#ovbc-compact-agenda .oc-day-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:15px 0 12px}
#ovbc-compact-agenda h2{font-size:16px;font-weight:500;margin:0}
#ovbc-compact-agenda .oc-day-heading>span{font-size:11px;color:var(--oc-muted)}
#ovbc-compact-agenda .oc-row{display:grid;grid-template-columns:104px minmax(0,1fr);border-bottom:1px solid var(--oc-line)}
#ovbc-compact-agenda .oc-time{font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;padding:13px 12px 10px 0;white-space:nowrap}
#ovbc-compact-agenda .oc-session{min-width:0}
#ovbc-compact-agenda summary{cursor:pointer;list-style:none;position:relative;padding:11px 27px 11px 0}
#ovbc-compact-agenda summary::-webkit-details-marker{display:none}
#ovbc-compact-agenda summary::after{content:'+';position:absolute;right:4px;top:10px;color:var(--oc-accent);font-size:19px;font-weight:400}
#ovbc-compact-agenda details[open]>summary::after{content:'−'}
#ovbc-compact-agenda summary:hover{background:var(--oc-hover)}
#ovbc-compact-agenda .oc-session-title{display:block;font-size:15px;font-weight:500;line-height:1.35}
#ovbc-compact-agenda .oc-teaser{display:block;color:var(--oc-muted);font-size:13px;margin-top:3px}
#ovbc-compact-agenda .oc-names{display:block;color:var(--oc-accent);font-size:12px;line-height:1.5;margin-top:5px}
#ovbc-compact-agenda .oc-role-preview{display:inline;font-size:13px;color:#596579}
#ovbc-compact-agenda .oc-speaker{display:inline-block;max-width:100%}
#ovbc-compact-agenda .oc-detail{padding:0 28px 15px 0}
#ovbc-compact-agenda .oc-format{display:inline-block;font-size:11px;font-weight:500;letter-spacing:.3px;color:var(--oc-accent);margin:0 0 7px}
#ovbc-compact-agenda .oc-description{font-size:14px;margin:0 0 14px;max-width:78ch}
#ovbc-compact-agenda .oc-faculty{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 22px;border-top:1px solid var(--oc-line);padding-top:12px}
#ovbc-compact-agenda .oc-person-name{font-size:13px;font-weight:500;display:block}
#ovbc-compact-agenda .oc-person-title,#ovbc-compact-agenda .oc-person-organization{display:block;font-size:12px;color:var(--oc-muted)}
#ovbc-compact-agenda .oc-logistics{background:var(--oc-wash);padding:0 8px}
#ovbc-compact-agenda .oc-logistics .oc-time{padding:8px 8px 8px 0}
#ovbc-compact-agenda .oc-logistics-title{align-self:center;font-size:12px;font-weight:500;padding:7px 0}
#ovbc-compact-agenda .oc-tracks-label{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:21px 0 10px}
#ovbc-compact-agenda .oc-tracks-label span{font-size:12px;color:var(--oc-muted)}
#ovbc-compact-agenda .oc-track-headings{display:grid;grid-template-columns:104px repeat(3,minmax(0,1fr));background:var(--oc-wash);border-top:1px solid var(--oc-line);border-bottom:1px solid var(--oc-line)}
#ovbc-compact-agenda .oc-track-heading{padding:10px 11px;font-size:12px;font-weight:500}
#ovbc-compact-agenda .oc-track-number{display:block;color:var(--oc-accent);font-size:11px;margin-bottom:3px}
#ovbc-compact-agenda .oc-track-slot{display:grid;grid-template-columns:104px repeat(3,minmax(0,1fr));border-bottom:1px solid var(--oc-line);align-items:start}
#ovbc-compact-agenda .oc-track-slot .oc-session{padding:0 11px;border-left:1px solid var(--oc-line)}
#ovbc-compact-agenda .oc-track-slot summary{padding-right:19px}
#ovbc-compact-agenda .oc-track-slot summary::after{right:0}
#ovbc-compact-agenda .oc-track-slot .oc-session-title{font-size:14px}
#ovbc-compact-agenda .oc-track-slot .oc-teaser{font-size:12px;margin-top:6px}
#ovbc-compact-agenda .oc-track-slot .oc-faculty{grid-template-columns:1fr}
#ovbc-compact-agenda .oc-track-slot .oc-detail{padding-right:0}
#ovbc-compact-agenda .oc-mobile-track{display:none}
#ovbc-compact-agenda .oc-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;color:var(--oc-muted);font-size:11px}
@media(max-width:700px){
#ovbc-compact-agenda .oc-main{padding:18px 16px}
#ovbc-compact-agenda h1{font-size:24px}
#ovbc-compact-agenda .oc-controls{flex-wrap:wrap}
#ovbc-compact-agenda .oc-day-heading{align-items:flex-start;flex-direction:column;gap:3px}
#ovbc-compact-agenda .oc-row{grid-template-columns:86px minmax(0,1fr)}
#ovbc-compact-agenda .oc-time{font-size:11px}
#ovbc-compact-agenda .oc-faculty{grid-template-columns:1fr}
#ovbc-compact-agenda .oc-track-headings{display:none}
#ovbc-compact-agenda .oc-track-slot{grid-template-columns:1fr}
#ovbc-compact-agenda .oc-track-slot>.oc-time{background:var(--oc-wash);padding:8px;font-size:12px}
#ovbc-compact-agenda .oc-track-slot .oc-session{border-left:0;padding:0 0 0 10px;border-bottom:1px solid var(--oc-line);grid-column:1!important}
#ovbc-compact-agenda .oc-mobile-track{display:block;font-size:11px;color:var(--oc-accent);margin-bottom:5px}
#ovbc-compact-agenda .oc-track-slot .oc-session-title{font-size:15px}
#ovbc-compact-agenda .oc-track-slot .oc-teaser{font-size:13px}
#ovbc-compact-agenda .oc-footer{flex-wrap:wrap}
}
@media(max-width:420px){
#ovbc-compact-agenda .oc-days button{padding:9px 12px}
#ovbc-compact-agenda .oc-days button span{display:block;margin:1px 0 0;font-size:12px}
#ovbc-compact-agenda .oc-expand{font-size:12px;max-width:100px;text-align:right}
#ovbc-compact-agenda .oc-row{grid-template-columns:1fr}
#ovbc-compact-agenda .oc-row>.oc-time{padding:10px 0 0;color:var(--oc-muted)}
#ovbc-compact-agenda .oc-row summary{padding-top:4px}
#ovbc-compact-agenda .oc-row summary::after{top:3px}
#ovbc-compact-agenda .oc-logistics{grid-template-columns:85px minmax(0,1fr)}
#ovbc-compact-agenda .oc-logistics>.oc-time{padding:8px 0}
}
@media(pointer:coarse){
#ovbc-compact-agenda button{min-height:44px}
#ovbc-compact-agenda summary{min-height:44px}
}
#ovbc-compact-agenda{color-scheme:light;--oc-paper:#ffffff;--oc-ink:#0B1220;--oc-muted:#475569;--oc-line:#E2E8F0;--oc-wash:#eff4f8;--oc-accent:#0F766E;--oc-active:#0F766E;--oc-on-active:#ffffff;--oc-hover:#f5f9fa;--oc-navy:#101028;--oc-gold:#e1a332;font-family:Inter,Arial,sans-serif;font-size:16px;background:transparent}
#ovbc-compact-agenda h1{font-size:38px;line-height:1.2;font-weight:600;letter-spacing:-.8px;margin:0;color:#fff}
#ovbc-compact-agenda .oc-main{max-width:1200px;background:#fff;margin:26px auto;padding:24px 30px 20px;border-radius:12px}
#ovbc-compact-agenda .oc-controls{padding-bottom:18px}
#ovbc-compact-agenda .oc-program-note{margin:0 0 18px;color:#475569;font-size:14px;line-height:1.6}
#ovbc-compact-agenda .oc-program-note strong{font-weight:600;color:#101028}
#ovbc-compact-agenda .oc-days button{border-radius:8px;padding:10px 23px;font-size:15px;min-height:44px}
#ovbc-compact-agenda .oc-expand,#ovbc-compact-agenda .oc-next-day{font-size:14px;min-height:44px}
#ovbc-compact-agenda .oc-day-heading{padding:18px 0 15px}
#ovbc-compact-agenda h2{color:#101028;font-size:18px;font-weight:600}
#ovbc-compact-agenda .oc-day-heading>span{font-size:12px}
#ovbc-compact-agenda .oc-row{grid-template-columns:116px minmax(0,1fr)}
#ovbc-compact-agenda .oc-time{font-size:13px;padding-top:16px}
#ovbc-compact-agenda summary{padding-top:13px;padding-bottom:13px}
#ovbc-compact-agenda .oc-session-title{font-size:16px;font-weight:600;color:#101028;line-height:1.4}
#ovbc-compact-agenda .oc-teaser{font-size:14px;line-height:1.5;margin-top:4px}
#ovbc-compact-agenda .oc-names{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 16px;font-size:14px;line-height:1.6;margin-top:6px}
#ovbc-compact-agenda details[open]>summary .oc-teaser{display:none}
#ovbc-compact-agenda .oc-description{font-size:16px;line-height:1.6;max-width:78ch}
#ovbc-compact-agenda .oc-format{font-size:12px}
#ovbc-compact-agenda .oc-format-label{display:table;max-width:100%;margin:5px 0 6px;padding:3px 7px;border-radius:4px;background:#eaf5f3;color:#0F766E;font-size:12px;font-weight:600;line-height:1.5}
#ovbc-compact-agenda .oc-highlight{background:#fff8e6;border-left:4px solid #e1a332;border-bottom:1px solid #eedba9;border-radius:6px;margin:12px 0;padding:0 12px}
#ovbc-compact-agenda .oc-featured-label{display:block;margin:0 0 5px;color:#805300;font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
#ovbc-compact-agenda .oc-highlight .oc-format-label{padding:0;background:transparent;color:#805300;font-size:13px}
#ovbc-compact-agenda .oc-highlight summary:hover{background:#fff2cc}
#ovbc-compact-agenda .oc-highlight .oc-session-title{font-weight:700}
#ovbc-compact-agenda .oc-person-name{font-size:14px;font-weight:600}
#ovbc-compact-agenda .oc-person-title,#ovbc-compact-agenda .oc-person-organization{font-size:13px}
#ovbc-compact-agenda .oc-logistics-title{font-size:13px;padding:10px 0}
#ovbc-compact-agenda .oc-logistics .oc-time{padding:10px 8px 10px 0}
#ovbc-compact-agenda .oc-track-headings{grid-template-columns:116px repeat(3,minmax(0,1fr));background:#101028;border-color:#101028;border-radius:6px 6px 0 0;color:#fff}
#ovbc-compact-agenda .oc-track-heading{font-size:14px;padding:13px 14px;line-height:1.45}
#ovbc-compact-agenda .oc-track-number{color:#e1a332;font-size:12px;margin-bottom:4px}
#ovbc-compact-agenda .oc-track-slot{grid-template-columns:116px repeat(3,minmax(0,1fr))}
#ovbc-compact-agenda .oc-track-slot .oc-session{padding:0 14px}
#ovbc-compact-agenda .oc-track-slot .oc-session-title{font-size:15px}
#ovbc-compact-agenda .oc-track-slot .oc-teaser{font-size:13px}
#ovbc-compact-agenda .oc-track-slot .oc-description{font-size:14px}
#ovbc-compact-agenda .oc-footer{font-size:12px}
#ovbc-compact-agenda a:hover{text-decoration:underline;text-underline-offset:3px}
#ovbc-compact-agenda summary:focus-visible,#ovbc-compact-agenda button:focus-visible,#ovbc-compact-agenda a:focus-visible{outline:3px solid #0F766E;outline-offset:3px}
@media(max-width:1250px){
#ovbc-compact-agenda .oc-main{margin:22px 24px}
}
@media(max-width:700px){
#ovbc-compact-agenda h1{font-size:30px}
#ovbc-compact-agenda .oc-main{margin:15px 12px;padding:18px 16px}
#ovbc-compact-agenda .oc-row{grid-template-columns:95px minmax(0,1fr)}
#ovbc-compact-agenda .oc-time{font-size:12px}
#ovbc-compact-agenda .oc-day-heading>span{font-size:12px}
#ovbc-compact-agenda .oc-track-headings{display:none}
#ovbc-compact-agenda .oc-track-slot{grid-template-columns:1fr}
#ovbc-compact-agenda .oc-track-slot>.oc-time{background:#101028;color:#fff;border-radius:4px;padding:9px 10px}
#ovbc-compact-agenda .oc-mobile-track{font-size:12px}
#ovbc-compact-agenda .oc-track-slot .oc-session-title{font-size:16px}
#ovbc-compact-agenda .oc-track-slot .oc-teaser{font-size:14px}
#ovbc-compact-agenda .oc-track-slot .oc-session{padding:0 4px}
}
@media(max-width:420px){
#ovbc-compact-agenda .oc-main{margin:12px 8px;padding:16px 12px}
#ovbc-compact-agenda .oc-controls{gap:5px}
#ovbc-compact-agenda .oc-days{gap:5px}
#ovbc-compact-agenda .oc-days button{padding:8px 11px;font-size:14px}
#ovbc-compact-agenda .oc-days button span{font-size:12px}
#ovbc-compact-agenda .oc-expand{max-width:86px;font-size:12px}
#ovbc-compact-agenda .oc-row{grid-template-columns:1fr}
#ovbc-compact-agenda .oc-row>.oc-time{padding:12px 0 0}
#ovbc-compact-agenda .oc-row summary{padding-top:5px}
#ovbc-compact-agenda .oc-logistics{grid-template-columns:89px minmax(0,1fr)}
#ovbc-compact-agenda .oc-logistics>.oc-time{padding:10px 0}
#ovbc-compact-agenda h1{font-size:28px}
}
#ovbc-compact-agenda .oc-download-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 22px}
#ovbc-compact-agenda a.oc-download{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:4px;background:var(--oc-active);color:var(--oc-on-active);font-size:14px;font-weight:600}
#ovbc-compact-agenda a.oc-download:focus-visible{outline:3px solid var(--oc-accent);outline-offset:3px}
#ovbc-compact-agenda .oc-download-row>span{font-size:13px;color:var(--oc-muted)}
/* Embedded in agendaNew.php: no grey backdrop, fill the parent container */
#ovbc-compact-agenda .oc-main{max-width:none;width:100%;margin:0;padding:0;border-radius:0;background:transparent}
