/* Approved compact course reminder; geometry is independent of time state. */
.dashboard-upcoming{display:grid;gap:12px;margin-bottom:16px}
.dashboard-upcoming:empty{display:none}
.course-reminder-frame{container-type:inline-size;min-width:0}
.course-reminder{position:relative;box-sizing:border-box;display:grid;grid-template-columns:88px minmax(0,1fr) 162px;grid-template-rows:80px;align-items:start;gap:16px;height:110px;min-height:110px;padding:14px;border:1px solid #0043fa;border-radius:14px;background:#0043fa;color:white}
.course-reminder-clock{box-sizing:border-box;grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:88px;height:70px;min-height:70px;max-height:70px;align-self:start;gap:4px;padding:8px;border-radius:12px;background:#d5ff9a;color:#152600;overflow:hidden;white-space:nowrap;font-size:24px;line-height:1.1;font-weight:800}
.course-reminder-clock.late{background:#ddc7ff;color:#211139}
.course-reminder-clock small{font-size:11px;font-weight:700;line-height:1.1}
.course-reminder-clock.is-live{gap:2px}
.course-reminder-clock.is-live>span,.course-reminder-clock.is-live>strong{font-size:21px;line-height:24px;font-weight:800;letter-spacing:0}
.course-reminder-text{grid-column:2;grid-row:1;height:80px;display:flex;flex-direction:column;padding-right:8px;min-width:0}
.course-reminder-eyebrow{color:#b5f500;font-size:12px;font-weight:800;letter-spacing:.025em;line-height:1.5;margin:0 0 3px}
.course-reminder-text h2{font-size:17px;font-weight:800;line-height:1.45;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.course-reminder-text p{font-size:12px;line-height:18px;color:#e0e8ff;margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.course-reminder-cta{box-sizing:border-box;grid-column:3;grid-row:1;align-self:end;justify-self:end;display:inline-flex;align-items:center;justify-content:center;width:162px;height:38px;min-height:38px;padding:9px 13px;margin:0;border:0;border-radius:10px;background:#a9ee00;color:#071000;font:800 12px/18px var(--font);text-decoration:none;white-space:nowrap;cursor:pointer}
.course-reminder-cta:disabled{background:#e9edf3;color:#5c6678;cursor:default}
.course-reminder-close{position:absolute;right:8px;top:8px;display:grid;place-items:center;width:25px;height:25px;padding:0;border:0;border-radius:7px;background:transparent;color:white;font:20px/1 var(--font);cursor:pointer}
.course-reminder-close:hover{background:#ffffff20}
@container(max-width:500px){
.course-reminder{grid-template-columns:88px minmax(0,1fr);grid-template-rows:70px 38px;height:150px;min-height:150px;gap:12px;padding:14px}
.course-reminder-clock{font-size:23px}
.course-reminder-text{grid-column:2;grid-row:1;height:70px;padding-right:17px}
.course-reminder-eyebrow{font-size:11px;letter-spacing:0}
.course-reminder-text h2{font-size:15px;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:18px}
.course-reminder-text p{font-size:11px;line-height:16px;margin-top:4px}
.course-reminder-cta{grid-column:1/-1;grid-row:2;align-self:end;justify-self:end;margin:0}
}
/* Only the mobile participant identity spacing is compacted. */
@media(max-width:950px){
.booking-market:not(.course-admin) .booking-identity .booking-code{margin-bottom:8px}
.booking-market:not(.course-admin) .booking-identity .booking-small-group{margin-top:4px;margin-bottom:0}
.booking-market:not(.course-admin) .booking-course-row{row-gap:14px}
}
