.webinar-calendar { margin:24px 0; padding:24px; border:1px solid #d8e0ea; border-radius:10px; background:#f5f8ff; color:#03256c; }
.webinar-calendar-heading { display:flex; align-items:center; gap:10px; }
.webinar-calendar .webinar-calendar-heading h2 { margin:0; font-size:26px; line-height:1.2; }
.webinar-calendar>p { margin:12px 0 20px; font-size:15px; line-height:1.5; }
.webinar-calendar-months { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.webinar-calendar-month { min-width:0; padding:14px; border:1px solid #d8e0ea; border-radius:8px; background:#fff; }
.webinar-calendar table { width:100%; table-layout:fixed; border:0; border-collapse:separate; border-spacing:3px; margin:0; }
.webinar-calendar caption { padding:0 0 12px; text-align:left; text-transform:none; color:#03256c; font:700 20px/1.3 'Roboto Condensed',Arial,sans-serif; }
.webinar-calendar th,.webinar-calendar td { border:0; padding:0; text-align:center; background:transparent; }
.webinar-calendar th { padding-bottom:7px; color:#667286; font-size:12px; }
.webinar-calendar td>span,.webinar-calendar-day { display:flex; align-items:center; justify-content:center; height:40px; border-radius:7px; font:500 15px/1 Roboto,Arial,sans-serif; }
.webinar-calendar td>span { color:#677384; }
.webinar-calendar .webinar-calendar-day { position:relative; color:#fff; background:#0034ff; text-decoration:none; font-weight:700; }
.webinar-calendar .webinar-calendar-day:hover { color:#fff; background:#03256c; }
html:not([data-accessible]) .webinar-calendar .webinar-calendar-day:is(:focus,:focus-visible) { color:#fff!important; background:#03256c; }
.webinar-calendar-day:focus-visible { outline:3px solid #03256c; outline-offset:2px; }
.webinar-calendar-dot { width:4px; height:4px; border-radius:50%; background:currentColor; position:absolute; bottom:4px; }
.webinar-calendar .webinar-calendar-legend { margin:16px 0 0; display:flex; align-items:center; gap:8px; color:#526175; font-size:13px; }
.webinar-calendar-legend>span { display:inline-block; width:12px; height:12px; border-radius:3px; background:#0034ff; flex-shrink:0; }
[data-cdo-webinar] { scroll-margin-top:24px; }
[data-cdo-webinar]:target { outline:2px solid #0034ff; outline-offset:3px; }
.webinar-date-strip { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 24px; padding:16px; border-bottom:1px solid #d8e0ea; border-radius:5px 5px 0 0; background:#f1f5ff; color:#03256c; }
.webinar-date-strip>div { display:flex; align-items:center; gap:8px; font:600 14px/1.4 Roboto,Arial,sans-serif; }
.webinar-date-strip svg,.webinar-calendar-heading svg { flex-shrink:0; }
@media(max-width:600px) {
 .webinar-calendar { padding:14px; }
 .webinar-calendar-months { grid-template-columns:minmax(0,1fr); gap:14px; }
 .webinar-calendar-month { padding:8px; }
 .webinar-calendar .webinar-calendar-heading h2 { font-size:23px; }
 .webinar-date-strip { justify-content:flex-start; flex-direction:column; align-items:flex-start; gap:10px; }
}
html[data-accessible] .webinar-calendar-months { grid-template-columns:minmax(0,1fr); }
html[data-accessible] .webinar-calendar-day { outline:2px solid currentColor; outline-offset:-2px; }
