.course-picker { margin-block: 24px; color: inherit; }
.course-picker[hidden] { display: none; }
.course-picker h3 { margin: 0 0 8px; }
.course-picker h4 { margin: 0 0 8px; font-size: 1.05rem; line-height: 1.4; }
.course-picker p { margin: 8px 0; line-height: 1.6; }
.course-picker__intro { opacity: .8; }
.course-picker__group { padding-block: 18px; border-top: 1px solid currentColor; border-color: color-mix(in srgb, currentColor 18%, transparent); }
.course-picker summary { cursor: pointer; padding-block: 8px; }
.course-picker__dates, .course-picker__payment { font-variant-numeric: tabular-nums; }
.course-picker__feedback { white-space: pre-line; overflow-wrap: anywhere; }
.course-picker__feedback:empty { display: none; }
.course-picker__status { font-weight: 600; }
.course-picker__actions, .course-picker form { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; align-items: center; }
.course-picker label { display: flex; flex-direction: column; gap: 8px; max-width: 100%; }
.course-picker input { max-width: 100%; width: 100%; }
.course-picker .btn { white-space: normal; min-height: 44px; }
@media (max-width: 480px) { .course-picker__actions .btn { width: 100%; } }

.course-picker { scroll-margin-top: 80px; }
.course-picker details { padding: 0; margin: 8px 0; background: transparent; box-shadow: none; border: 0; color: inherit; }
.course-picker summary { color: inherit; font-weight: 600; }
