/* Course actions share the application's header, content and fixed footer. */
html body #dialog.course-modal840{width:min(820px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important;max-height:90dvh!important;padding:0!important;overflow:hidden!important;border:1px solid #bdcede;border-radius:6px;color:#173c60;font-family:'RL67 UI',Arial,sans-serif}
html body #dialog.course-modal840[data-course-modal840=instructor],html body #dialog.course-modal840[data-course-modal840=payment-links]{width:min(1040px,calc(100vw - 32px))!important}
html body #dialog.course-modal840[data-course-modal840=price],html body #dialog.course-modal840[data-course-modal840=finish]{width:min(640px,calc(100vw - 32px))!important}
html body #dialog.course-modal840>#dialog-body{display:flex!important;flex-direction:column;max-height:90dvh!important;overflow:hidden!important;padding:0!important;margin:0!important}
html body #dialog.course-modal840>#dialog-close{display:none!important}
html body #dialog .course-modal-head840{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-height:64px;box-sizing:border-box;padding:16px 24px;background:#193b5e;color:#fff}
html body #dialog .course-modal-head840>svg{width:22px;height:22px;flex:0 0 22px}
html body #dialog .course-modal-head840 h2{font:700 17px/1.4 'RL67 UI',Arial,sans-serif;color:#fff;margin:0!important;padding:0!important;border:0!important;text-transform:uppercase}
html body #dialog .course-modal-head840 button{margin:0 0 0 auto!important;flex:0 0 40px;width:40px;height:40px;min-height:40px;padding:0!important;background:transparent!important;border:1px solid transparent!important;color:#fff!important;font:28px/1 Arial,sans-serif;box-shadow:none!important}
html body #dialog.course-modal840 form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;margin:0!important;max-height:none!important}
html body #dialog.course-modal840 .course-modal-scroll840{padding:22px 24px;overflow:auto;min-height:0;flex:1 1 auto;line-height:1.6}
html body #dialog.course-modal840 .course-modal-context840{font-weight:600;margin:0 0 18px;color:#173c60}
html body #dialog.course-modal840 .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;margin:0}
html body #dialog.course-modal840 label{display:flex;flex-direction:column;gap:6px;min-width:0;margin:0!important;font-size:14px;font-weight:600;line-height:1.5}
html body #dialog.course-modal840 :is(input:not([type=checkbox]):not([type=hidden]),select,textarea){width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;border:1px solid #bdcee1;border-radius:5px;font:400 14px/1.5 'RL67 UI',Arial,sans-serif;color:#173c60;background:#fff}
html body #dialog.course-modal840 :is(input,select,textarea):focus-visible{outline:2px solid #4e7db0;outline-offset:2px}
html body #dialog.course-modal840 [data-action840=price] .form-grid,html body #dialog.course-modal840 [data-action840=finish] .form-grid,html body #dialog.course-modal840 [data-action840=instructor] .form-grid{grid-template-columns:minmax(0,1fr)}
html body #dialog.course-modal840 [data-action840=clone] label:has(input[name=name]){grid-column:1/-1}
html body #dialog.course-modal840 label small{font-size:12px;font-weight:400;line-height:1.5;margin:0}
html body #dialog.course-modal840 .course-modal-note840{background:#eef3f9;border-left:3px solid #bdcee1;padding:12px 14px;margin:20px 0 0;color:#52677b;font-size:14px;line-height:1.6}
html body #dialog.course-modal840 [role=alert]:empty,html body #dialog.course-modal840 [role=status]:empty{display:none}
html body #dialog.course-modal840 .course-modal-footer840{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex:0 0 auto;padding:16px 24px;background:#f0f3f7;border-top:1px solid #c7d6e8;margin:0}
html body #dialog.course-modal840 .course-modal-footer840 button{width:auto;min-height:44px;height:auto;box-sizing:border-box;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:10px 16px;margin:0;border:1px solid #bdcee1;border-radius:5px;font:600 14px/1.5 'RL67 UI',Arial,sans-serif;background:#edf2f8;color:#173c60;text-decoration:none}
html body #dialog.course-modal840 .course-modal-footer840 button.primary{background:#295d97;color:#fff;border-color:#295d97}
html body #dialog.course-modal840 .course-modal-footer840 button.course-finish840{background:#fbebef;color:#963d52;border-color:#c58c9a}
html body #dialog.course-modal840 .group-teachers792{grid-column:1/-1;padding:16px;margin:0;box-sizing:border-box;min-width:0}
html body #dialog.course-modal840 .group-teacher-list792{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:340px;overflow:auto;padding:2px 8px 2px 2px}
html body #dialog.course-modal840 .group-teacher-list792 label{display:flex!important;flex-direction:row;align-items:center;gap:10px;padding:10px!important;min-height:44px}
html body #dialog.course-modal840 .group-teacher-list792 input[type=checkbox]{width:18px;height:18px;min-width:18px;margin:0;flex:0 0 18px}
/* Course messages: short schedule above a full-width message, without an empty side panel. */
html body #dialog.course-message840 .recurring-content418{display:flex!important;flex-direction:column!important;gap:18px!important;padding:22px 24px!important;overflow:auto;min-height:0}
html body #dialog.course-message840 .recurring-content418>section{width:100%;box-sizing:border-box;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
html body #dialog.course-message840 .course-message-dates840{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
html body #dialog.course-message840 .course-message-note840,html body #dialog.course-message840 .course-modal-context840{margin:0!important;padding:0!important;line-height:1.6}
html body #dialog.course-message840 .course-modal-context840{font-weight:600}
html body #dialog.course-message840 .recurring-content418 textarea{min-height:170px!important;height:170px;resize:vertical}
html body #dialog.course-message840 .recurring-content418 section>label{margin-top:12px!important}
html body #dialog.course-message840 .recurring-content418 section>label[hidden],html body #dialog.course-modal840 [hidden]{display:none!important}
/* Payment-link recipient list and actual recipient preview. */
html body #dialog.course-modal840 .course-payment246{font-size:14px}
html body #dialog.course-modal840 .course-payment-columns840,html body #dialog.course-modal840 .course-payment-person246{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) 110px;gap:12px;padding:10px 12px;border-bottom:1px solid #d8e2ed;align-items:center;font-size:14px;line-height:1.5}
html body #dialog.course-modal840 .course-payment-list840.excluded :is(.course-payment-columns840,.course-payment-person246){grid-template-columns:1fr 1.5fr}
html body #dialog.course-modal840 .course-payment-columns840{font-weight:600;background:#eef3f9}
html body #dialog.course-modal840 .course-payment-person246 strong{text-align:right;white-space:nowrap}
html body #dialog.course-modal840 .course-payment-preview246{padding:16px;margin:12px 0 18px}
html body #dialog.course-modal840 .course-payment-preview246 p{margin:0 0 12px}
html body #dialog.course-modal840 .course-payment-note246 textarea{margin:0;min-height:90px}
@media(max-width:650px){
 html body #dialog.course-modal840 .form-grid,html body #dialog.course-modal840 .group-teacher-list792,html body #dialog.course-message840 .course-message-dates840{grid-template-columns:minmax(0,1fr)}
 html body #dialog.course-modal840 .course-modal-head840,html body #dialog.course-modal840 .course-modal-scroll840,html body #dialog.course-modal840 .course-modal-footer840,html body #dialog.course-message840 .recurring-content418{padding:16px!important}
 html body #dialog.course-modal840 .course-modal-footer840 button{flex:1 1 0;min-width:0;white-space:normal}
 html body #dialog.course-modal840 .course-payment-columns840{display:none!important}
 html body #dialog.course-modal840 .course-payment-person246{grid-template-columns:1fr!important;gap:4px;padding:12px 0}
 html body #dialog.course-modal840 .course-payment-person246 strong{text-align:left}
 html body #dialog.course-modal840 .course-modal-head840 h2{font-size:15px}
}
html body #dialog.course-modal840 [data-action840=clone] label:has(input[name=course_start]){grid-column:1}
html body #dialog.course-modal840 [data-action840=clone] label:has(input[name=course_end]){grid-column:2}
@media(max-width:650px){html body #dialog.course-modal840 [data-action840=clone] label:has(input[name=course_end]){grid-column:1}}

/* Course enrolment follows the common RL67 modal frame. */
html body #dialog.course-enroll861{width:min(720px,calc(100vw - 32px))!important;max-width:720px!important}
html body #dialog.course-enroll861 .course-modal-head840{min-height:84px;padding:20px 24px;background:#1f4d79}
html body #dialog.course-enroll861 .course-modal-head840 h2{text-transform:none;font-size:21px;line-height:1.2}
html body #dialog.course-enroll861 .course-modal-scroll840{padding:22px 24px 24px}
html body #dialog.course-enroll861 .course-enroll-summary861{margin:0 0 20px;padding:14px 16px;border-left:4px solid #2c6195;background:#f4f7fa;color:#263746}
html body #dialog.course-enroll861 .course-enroll-summary861 strong{display:block;margin:0 0 5px;font-size:16px;font-weight:600}
html body #dialog.course-enroll861 .course-enroll-summary861 p{display:flex;align-items:center;gap:7px;margin:0;color:#52687c;font-size:14px;line-height:1.5}
html body #dialog.course-enroll861 .course-enroll-summary861 svg{width:16px;height:16px;flex:0 0 16px;color:#2c6195}
html body #dialog.course-enroll861 .course-enroll-help861{margin:17px 0 20px;color:#607589;font-size:13px;line-height:1.5}
html body #dialog.course-enroll861 .course-enroll-rules861>h3{margin:0 0 10px;color:#263746;font-size:15px;font-weight:600}
html body #dialog.course-enroll861 .course-enroll-rule861{margin-top:9px;border:1px solid #d1dbe5;border-radius:3px;background:#fff;overflow:hidden}
html body #dialog.course-enroll861 .course-enroll-rule861 summary{min-height:44px;padding:11px 13px;color:#263746;font-size:14px;font-weight:600;line-height:1.5}
html body #dialog.course-enroll861 .course-enroll-rule861 details>div{padding:0 13px 12px;color:#52687c;font-size:13px;line-height:1.5}
html body #dialog.course-enroll861 .course-enroll-rule861 .checkbox-label{display:flex;flex-direction:row;align-items:flex-start;gap:9px;margin:0!important;padding:10px 13px;border-top:1px solid #e0e7ee;color:#455b6e;font-size:13px;font-weight:400;line-height:1.4}
html body #dialog.course-enroll861 .course-enroll-rule861 input[type=checkbox]{width:16px;height:16px;min-width:16px;margin:2px 0 0;accent-color:#1f4d79}
html body #dialog.course-enroll861 .course-modal-footer840{min-height:76px;padding:16px 20px;background:#f3f6fa}
html body #dialog.course-enroll861 .course-modal-footer840 button{height:42px;min-height:42px;padding:9px 17px;border-radius:3px}
html body #dialog.course-enroll861 .course-modal-footer840 [data-course-cancel245]{background:#fff;color:#294a68;border-color:#9aabba}
html body #dialog.course-enroll861 .course-modal-footer840 .primary{background:#1f4d79;color:#fff;border-color:#1f4d79}
html body #dialog.course-enroll861 .course-modal-footer840 .primary svg{width:17px;height:17px;flex:0 0 17px;stroke:currentColor}
html body #dialog.course-enroll861 #course-enroll-error245{margin:14px 0 0;color:#963d52;font-size:13px}
@media(max-width:650px){html body #dialog.course-enroll861 .course-modal-head840{min-height:72px;padding:16px!important}html body #dialog.course-enroll861 .course-modal-scroll840{padding:17px!important}html body #dialog.course-enroll861 .course-modal-footer840{padding:14px 17px!important}}
