.ll-course-select { position: relative; min-width: 0; width: 100%; }
.ll-course-select__native { position: absolute !important; width: 1px !important; height: 1px !important; opacity: 0; pointer-events: none; clip-path: inset(50%); overflow: hidden; }
.ll-course-select .ll-app-combobox__trigger { display: flex; align-items: center; justify-content: space-between; gap: 12px; box-sizing: border-box; width: 100%; min-height: 43px; margin: 0; padding: 10px 13px; border: 1px solid #9fc7e8; border-radius: 9px; background: #fff; color: #092b4e; font: inherit; font-weight: 600; text-align: left; cursor: pointer; box-shadow: 0 2px 8px rgb(7 43 77 / 6%); }
.ll-course-select .ll-app-combobox__trigger:hover,
.ll-course-select .ll-app-combobox__trigger:focus-visible,
.ll-course-select .ll-app-combobox__trigger[aria-expanded="true"] { border-color: #0d6cbb; outline: none; box-shadow: 0 0 0 3px rgb(13 108 187 / 14%); }
.ll-course-select .ll-app-combobox__trigger:disabled { cursor: not-allowed; color: #587087; background: #f2f6f9; opacity: .75; }
.ll-course-select .ll-app-combobox__trigger[aria-invalid="true"] { border-color: #b32d2e; }
.ll-course-select .ll-app-combobox__trigger > span { min-width: 0; overflow-wrap: anywhere; }
.ll-course-select .ll-app-combobox__trigger > svg { flex: 0 0 18px; width: 18px; height: 18px; fill: none; stroke: #0d6cbb; stroke-width: 2; }
.ll-course-select .ll-app-combobox__trigger[aria-expanded="true"] > svg { transform: rotate(180deg); }
/* The top layer keeps branded menus above cards, calendars and modal dialogs. */
.ll-course-select-menu { position: fixed; inset: auto; z-index: 100100; box-sizing: border-box; margin: 0; padding: 6px; overflow-y: auto; overscroll-behavior: contain; border: 1px solid #b9d6ee; border-radius: 12px; background: #fff; color: #092b4e; box-shadow: 0 18px 45px rgb(5 35 65 / 18%); font: 600 13px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; text-align: left; }
.ll-course-select-menu::backdrop { background: transparent; }
.ll-course-select-menu[hidden] { display: none !important; }
.ll-course-select-menu [role="option"] { display: flex; align-items: center; gap: 10px; padding: 10px 11px; border-radius: 8px; cursor: pointer; overflow-wrap: anywhere; }
.ll-course-select-menu [role="option"].is-active,
.ll-course-select-menu [role="option"]:hover { background: #eaf4fd; }
.ll-course-select-menu [role="option"][aria-disabled="true"] { opacity: .5; cursor: not-allowed; }
.ll-course-select-menu .ll-course-select__check { flex: 0 0 22px; text-align: center; color: transparent; border-radius: 6px; }
.ll-course-select-menu [aria-selected="true"] .ll-course-select__check { color: #fff; background: #0d6cbb; }
.ll-course-select__search-wrap { position: sticky; top: -6px; z-index: 1; margin: -2px -2px 4px; padding: 4px 4px 6px; background: #fff; }
.ll-course-select__search { box-sizing: border-box; width: 100%; min-height: 34px; margin: 0; padding: 5px 9px; border: 1px solid #8c8f94; border-radius: 4px; background: #fff; color: #2c3338; font: 400 14px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.ll-course-select__search:focus { border-color: #2271b1; outline: none; box-shadow: 0 0 0 1px #2271b1; }
.ll-course-select__empty { padding: 9px 10px; color: #646970; font-weight: 400; }
.ll-course-select__empty[hidden],
.ll-course-select-menu [role="option"][hidden] { display: none !important; }
.ll-course-select__error { display: block; margin-top: 5px; color: #b32d2e; font-size: 12px; }
.ll-course-select__error[hidden] { display: none; }
.ll-admin-filters > .ll-course-select { flex: 0 1 260px; width: auto; min-width: 140px; }
.ll-course-select--order-filter { display: inline-block; width: 260px; max-width: 100%; margin: 0 4px 0 0; vertical-align: top; }
.ll-course-select--order-filter .ll-app-combobox__trigger { height: 32px; min-height: 32px; padding: 0 8px; gap: 6px; border-color: #8c8f94; border-radius: 3px; color: #2c3338; font: 400 14px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; box-shadow: none; }
.ll-course-select--order-filter .ll-app-combobox__trigger:hover,
.ll-course-select--order-filter .ll-app-combobox__trigger:focus-visible,
.ll-course-select--order-filter .ll-app-combobox__trigger[aria-expanded="true"] { border-color: #2271b1; box-shadow: 0 0 0 1px #2271b1; }
.ll-course-select--order-filter .ll-app-combobox__trigger > span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.ll-course-select--order-filter .ll-app-combobox__trigger > svg { flex-basis: 16px; width: 16px; height: 16px; stroke: #2c3338; }
.ll-course-select--order-filter .ll-course-select-menu { padding: 6px; border-color: #8c8f94; border-radius: 4px; color: #2c3338; font-weight: 400; box-shadow: 0 8px 18px rgb(0 0 0 / 18%); }
.ll-course-select--order-filter .ll-course-select-menu [role="option"] { padding: 7px 8px; border-radius: 3px; }
.ll-calendar .ll-calendar__selectors .ll-app-combobox__trigger { width: 100%; height: 38px; min-height: 38px; padding: 6px; gap: 3px; border-radius: 8px; background: #eaf4fd; font-size: 12px; font-weight: 700; box-shadow: none; }
.ll-calendar .ll-calendar__selectors .ll-app-combobox__trigger > span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.ll-calendar .ll-calendar__selectors .ll-app-combobox__trigger > svg { width: 12px; height: 12px; flex-basis: 12px; }
.ll-traffic__course > .ll-course-select { margin-top: 6px; }
.ll-traffic__course .ll-app-combobox__trigger { height: 42px; min-height: 42px; padding: 8px 12px; }
.ll-traffic__course .ll-app-combobox__trigger > span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.ll-plan-courses { display: grid; gap: 10px; max-height: 440px; overflow: auto; padding: 4px; }
.ll-plan-courses > label { display: flex !important; flex-direction: row !important; align-items: flex-start; gap: 12px; padding: 12px; border: 1px solid #d4e5f4; border-radius: 9px; background: #f8fbff; }
.ll-plan-courses input { flex: 0 0 auto; margin-top: 3px; }
.ll-plan-courses small { display: block; margin-top: 5px; font-weight: 400; }
.ll-plan-courses .is-unavailable { background: #f5f7f9; }
.ll-plan-note { padding: 14px 16px; border: 1px solid #b9d6ee; border-radius: 10px; background: #f1f8ff; color: #294d70; line-height: 1.6; }
.ll-plan-note[hidden] { display: none; }
.ll-course-plan-picker { display: grid; gap: 14px; }
.ll-course-plan-picker[hidden] { display: none; }
.ll-course-plan-picker__options { max-height: 320px; padding: 2px; }
.ll-course-plan-picker__options > label { cursor: pointer; transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease; }
.ll-course-plan-picker__options > label:hover { border-color: #7ebce9; background: #f1f8ff; }
.ll-course-plan-picker__options > label:has(input:checked) { border-color: #2189d4; background: #eaf6ff; box-shadow: inset 4px 0 0 #147cc5; }
.ll-course-plan-picker__options input:focus-visible { outline: 3px solid #69baf0; outline-offset: 3px; }
.ll-course-plan-picker__options .subscription-details { white-space: nowrap; }
.ll-subscriptions-page .ll-admin-page__header { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 20px; }
.ll-subscriptions-page .ll-admin-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.ll-subscriptions-page .ll-admin-card > h2:first-child { margin-top: 0; }
.ll-subscriptions-page .ll-admin-form > .ll-admin-actions { margin-bottom: 24px; }
.ll-subscriptions-page .ll-admin-form__grid { margin-bottom: 18px; }
@media (max-width: 782px) { .ll-subscriptions-page .ll-admin-page__header { display: block; } }
