.interactive-learner-course-player,
.interactive-learner-catalog,
.interactive-learner-dashboard,
.interactive-learner-instructor-dashboard {
    box-sizing: border-box;
    max-width: 1200px;
    margin: 0 auto 2rem;
}
.interactive-learner-course-player__header,
.interactive-learner-course-card,
.interactive-learner-dashboard-card,
.interactive-learner-module,
.interactive-learner-activity,
.interactive-learner-notice,
.interactive-learner-empty-state {
    border: 1px solid rgba(0,0,0,.12);
    border-radius: 12px;
    padding: 1rem;
    margin: 0 0 1rem;
    background: rgba(255,255,255,.92);
}
.interactive-learner-course-player__meta,
.interactive-learner-course-card__meta,
.interactive-learner-course-card__progress,
.interactive-learner-module-status {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    font-size: .95rem;
    opacity: .82;
}
.interactive-learner-course-player__layout {
    display: grid;
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}
.interactive-learner-course-outline {
    position: sticky;
    top: 1rem;
}
.interactive-learner-outline-section h3,
.interactive-learner-module__header h3,
.interactive-learner-activity__header h4 {
    margin-top: 0;
}
.interactive-learner-outline-section ol,
.interactive-learner-dashboard-list {
    margin-left: 1.25rem;
}
.interactive-learner-outline-item.is-selected > a {
    font-weight: 700;
}
.interactive-learner-outline-item--completed small {
    font-weight: 700;
}
.interactive-learner-course-list,
.interactive-learner-dashboard__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1rem;
}
.interactive-learner-course-card__actions {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    align-items: center;
}
.interactive-learner-course-card__actions form,
.interactive-learner-enroll-form,
.interactive-learner-complete-module-form,
.interactive-learner-activity-complete {
    margin: .5rem 0 0;
}
.interactive-learner-activity__header {
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    align-items: baseline;
}
.interactive-learner-required {
    font-size: .8rem;
    border: 1px solid rgba(0,0,0,.18);
    border-radius: 999px;
    padding: .15rem .5rem;
}
.interactive-learner-notice--success {
    border-color: rgba(0,128,0,.35);
}
.interactive-learner-instructor-table {
    width: 100%;
    border-collapse: collapse;
}
.interactive-learner-instructor-table th,
.interactive-learner-instructor-table td {
    border-bottom: 1px solid rgba(0,0,0,.12);
    padding: .65rem;
    text-align: left;
}
@media (max-width: 780px) {
    .interactive-learner-course-player__layout {
        grid-template-columns: 1fr;
    }
    .interactive-learner-course-outline {
        position: static;
    }
}


/* Milestone 3: legacy 5.x anatomy_model wrapped in the native 6.1 player. */
.il-legacy-a3dv-activity {
    border: 1px solid rgba(0,0,0,.12);
    border-radius: 12px;
    padding: .75rem;
    background: rgba(255,255,255,.72);
}
.il-legacy-a3dv-activity__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
    margin: 0 0 .75rem;
    font-size: .85rem;
    opacity: .82;
}
.il-legacy-a3dv-activity__meta span {
    border: 1px solid rgba(0,0,0,.18);
    border-radius: 999px;
    padding: .15rem .5rem;
}
.il-legacy-a3dv-activity__viewer .anatomy-viewer {
    max-width: 100%;
}
.interactive-learner-course-layout {
    display: grid;
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}
@media (max-width: 780px) {
    .interactive-learner-course-layout {
        grid-template-columns: 1fr;
    }
}

/* Milestone 3 legacy 3D wrapper */
.il-three-d-scene--legacy {
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
}
.il-three-d-scene__notice {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    align-items: center;
    padding: .65rem .85rem;
    border-bottom: 1px solid rgba(0,0,0,.1);
    font-size: .9rem;
    background: rgba(0,0,0,.035);
}
.il-three-d-scene__badge {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(0,0,0,.18);
    border-radius: 999px;
    padding: .15rem .5rem;
    font-weight: 700;
    font-size: .78rem;
    line-height: 1.3;
    background: #fff;
}
.il-three-d-scene__viewer .anatomy-viewer,
.il-three-d-scene__viewer .a3dv-learning-shell {
    margin: 0;
}
.il-three-d-scene-placeholder,
.il-legacy-a3dv-warning {
    margin: .75rem 0;
}

/* Milestone 3 legacy 3D wrapper. */
.interactive-learner-legacy-a3dv-wrapper,
.il-legacy-a3dv-activity,
.interactive-learner-legacy-scene {
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 14px;
    padding: .75rem;
    margin: .75rem 0 1rem;
    background: rgba(255,255,255,.96);
}
.interactive-learner-legacy-a3dv-banner,
.il-legacy-a3dv-activity__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem .75rem;
    margin: 0 0 .75rem;
    font-size: .9rem;
    opacity: .9;
}
.interactive-learner-legacy-a3dv-banner code,
.il-legacy-a3dv-activity__meta code {
    font-size: .82rem;
}
.il-legacy-a3dv-activity__viewer .anatomy-viewer,
.interactive-learner-legacy-a3dv-wrapper .anatomy-viewer {
    max-width: 100%;
}
.interactive-learner-3d-native-placeholder,
.interactive-learner-legacy-a3dv-warning {
    border-style: dashed;
}
.il-three-d-scene--legacy-a3dv {
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
}


/* Milestone 4 H5P native activity wrapper. */
.il-h5p-activity {
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 14px;
    padding: .75rem;
    margin: .75rem 0 1rem;
    background: rgba(255,255,255,.96);
}
.il-h5p-activity__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
    margin: 0 0 .75rem;
    font-size: .9rem;
    opacity: .9;
}
.il-h5p-activity__meta span {
    border: 1px solid rgba(0,0,0,.18);
    border-radius: 999px;
    padding: .15rem .5rem;
    background: #fff;
}
.il-h5p-activity__badge {
    font-weight: 700;
}
.il-h5p-activity__runtime iframe,
.il-h5p-activity__runtime .h5p-iframe-wrapper {
    max-width: 100%;
}
.il-h5p-activity__status {
    margin-top: .75rem;
    padding: .5rem .65rem;
    border-radius: 10px;
    background: rgba(0,0,0,.055);
    font-size: .9rem;
}
.il-h5p-warning {
    border-style: dashed;
}


/* Milestone 4: H5P content wrapped in the native 6.1 player. */
.interactive-learner-activity--h5p .interactive-learner-h5p-activity {
    border: 1px solid #dcdcde;
    border-radius: 8px;
    padding: 12px;
    background: #fff;
}
.interactive-learner-h5p-activity__runtime iframe,
.interactive-learner-h5p-activity__runtime .h5p-iframe-wrapper {
    max-width: 100%;
}
.interactive-learner-h5p-tracking-note {
    margin: 10px 0 0;
    font-size: 12px;
    opacity: .75;
}
.interactive-learner-h5p-warning {
    border-left: 4px solid #dba617;
}


/* Milestone 4 H5P wrapper and tracking states. */
.il-h5p-activity {
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 14px;
    padding: .75rem;
    margin: .75rem 0 1rem;
    background: rgba(255,255,255,.98);
}
.il-h5p-activity__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
    margin: 0 0 .75rem;
    font-size: .9rem;
}
.il-h5p-activity__meta span {
    border: 1px solid rgba(0,0,0,.16);
    border-radius: 999px;
    padding: .15rem .5rem;
}
.il-h5p-activity__badge {
    font-weight: 700;
}
.il-h5p-activity__frame .h5p-iframe-wrapper,
.il-h5p-activity__frame iframe {
    max-width: 100%;
}
.il-h5p-warning {
    border-style: dashed;
}


.il-h5p-activity__content iframe,
.il-h5p-activity__content .h5p-iframe-wrapper {
    max-width: 100%;
}
.il-h5p-activity__status[hidden] {
    display: none !important;
}
.il-h5p-activity__status {
    margin: 8px 0;
    padding: 8px 10px;
    border: 1px solid #c3d4ee;
    border-radius: 6px;
    background: #f6f9ff;
}


/* Milestone 5 Tutor LMS compatibility wrapper */
.interactive-learner-tutor-wrapper {
    border: 1px solid #dcdcde;
    border-radius: 10px;
    padding: 16px;
    background: #fff;
    margin: 12px 0;
}
.interactive-learner-tutor-badge {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 999px;
    background: #f0f6fc;
    border: 1px solid #c5d9ed;
    font-size: 12px;
    font-weight: 600;
    margin: 0 0 8px;
}
.interactive-learner-tutor-source-content {
    margin-top: 12px;
}


/* Milestone 5 Tutor LMS compatibility activity */
.il-tutor-compat {
    border: 1px solid #dcdcde;
    border-radius: 8px;
    background: #fff;
    padding: 16px;
    margin: 12px 0;
}
.il-tutor-compat__badge {
    display: inline-block;
    margin: 0 0 8px;
    padding: 3px 8px;
    border-radius: 999px;
    background: #f0f6fc;
    color: #1d2327;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.il-tutor-compat__meta {
    margin: 10px 0 0 18px;
}
.il-tutor-compat__actions {
    margin: 12px 0 0;
}

/* Milestone 5 Tutor compatibility display */
.il-tutor-source-activity,
.il-tutor-compat {
    border: 1px solid #dcdcde;
    background: #fff;
    padding: 16px;
    margin: 16px 0;
    border-radius: 8px;
}
.il-tutor-source-activity__badge,
.il-tutor-compat__badge {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding: 3px 8px;
    border-radius: 999px;
    background: #f0f6fc;
    border: 1px solid #c5d9ed;
    margin: 0 0 8px;
}
.il-tutor-source-activity__notice,
.il-tutor-compat__meta {
    background: #f6f7f7;
    border-left: 4px solid #72aee6;
    padding: 10px 12px;
    margin: 12px 0;
}
.il-tutor-source-activity__content {
    margin-top: 12px;
}

/* Milestone 5 Tutor LMS compatibility wrappers */
.interactive-learner-tutor-source,.il-tutor-compat{border:1px solid #d6d9dd;background:#fff;padding:16px;border-radius:8px;margin:12px 0;}
.interactive-learner-badge--tutor,.il-tutor-compat__badge{display:inline-block;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;}
.interactive-learner-tutor-source__actions,.il-tutor-compat__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.interactive-learner-tutor-source__content{margin-top:12px;}


/* Interactive Learner 6.1 instructor/assignment UI */
.il-activity-assignment .il-assignment-card{border:1px solid #dcdcde;border-radius:10px;padding:1rem;background:#fff;margin:1rem 0}
.il-assignment-meta{color:#50575e;font-size:.95em;margin-top:0}
.il-assignment-submissions{margin-left:1.25rem}
.il-assignment-feedback{background:#f6f7f7;border-left:4px solid #2271b1;margin:.4rem 0;padding:.5rem}
.il-assignment-submit-form textarea,.il-assignment-submit-form input[type=url]{max-width:760px}
.il-gradebook-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:16px 0}
.il-gradebook-card{background:#fff;border:1px solid #dcdcde;border-radius:8px;padding:12px;box-shadow:0 1px 1px rgba(0,0,0,.04)}
.il-gradebook-card strong{display:block;font-size:1.6rem;line-height:1.2}.il-gradebook-card span{color:#50575e}
.il-grade-submission-form textarea{width:100%;max-width:320px}


/* Interactive Learner 6.1 instructor/assessment surfaces */
.interactive-learner-assignment,
.interactive-learner-quiz,
.interactive-learner-submission-status,
.interactive-learner-feedback {
    border: 1px solid rgba(0,0,0,.12);
    border-radius: 8px;
    padding: 16px;
    margin: 12px 0;
    background: #fff;
}
.interactive-learner-assignment-form textarea,
.interactive-learner-quiz-form textarea {
    width: 100%;
    max-width: 100%;
}
.interactive-learner-quiz-questions fieldset {
    border: 0;
    padding: 0;
    margin: 0 0 16px;
}
.il-m6-instructor-dashboard .button,
.il-m6-gradebook .button {
    margin-bottom: 4px;
}


/* Production 6.1 instructor/submission polish */
.interactive-learner-assignment { border: 1px solid #dcdcde; border-radius: 8px; padding: 16px; margin: 16px 0; background: #fff; }
.interactive-learner-assignment-instructions { margin-bottom: 12px; }
.interactive-learner-assignment-latest { border-left: 4px solid #72aee6; background: #f0f6fc; padding: 10px 12px; margin: 12px 0; }
.interactive-learner-assignment-form textarea,
.interactive-learner-assignment-form input[type="url"] { box-sizing: border-box; }
.il-m6-wrap .nav-tab-wrapper { margin-top: 16px; }
.il-m6-wrap table.widefat td form { margin: 0; }

/* 6.1.24 /learn native LMS bridge flow polish */
.interactive-learner-learn-shell .interactive-learner-native-lms-player-section,
.interactive-learner-native-lms-shell__main .interactive-learner-native-lms-player-section {
    max-width: 1180px;
    margin: 0 auto;
    padding: clamp(18px, 3vw, 32px) clamp(16px, 3vw, 28px) 72px;
}
.interactive-learner-learn-shell .interactive-learner-course-player,
.il-learn-lms-bridge-body .interactive-learner-course-player {
    max-width: none;
    margin: 0;
    color: #102033;
    font-family: inherit;
}
.interactive-learner-learn-back {
    margin: 0 0 14px;
}
.interactive-learner-learn-back a {
    color: #0f766e;
    font-weight: 800;
    text-decoration: none;
}
.interactive-learner-learn-back a::before {
    content: "← ";
}
.interactive-learner-course-header,
.interactive-learner-course-player__header {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(15, 118, 110, .16);
    border-radius: 30px;
    padding: clamp(24px, 4vw, 44px);
    background:
        radial-gradient(circle at 90% 0%, rgba(45, 212, 191, .22), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,.98), rgba(240,253,250,.94));
    box-shadow: 0 22px 58px rgba(15, 23, 42, .10);
}
.interactive-learner-course-header h1,
.interactive-learner-course-player__header h1 {
    margin: .25rem 0 .75rem;
    max-width: 900px;
    color: #0f172a;
    font-size: clamp(2rem, 4vw, 4rem);
    line-height: .96;
    letter-spacing: -.055em;
}
.interactive-learner-course-eyebrow,
.interactive-learner-milestone-badge,
.interactive-learner-module-eyebrow,
.interactive-learner-outline__head > span,
.interactive-learner-course-player__header > span {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    border: 1px solid rgba(15, 118, 110, .2);
    border-radius: 999px;
    padding: .36rem .72rem;
    background: rgba(240, 253, 250, .9);
    color: #0f766e;
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.interactive-learner-course-description {
    max-width: 900px;
    color: #475569;
    font-size: clamp(1.02rem, 1.8vw, 1.22rem);
    line-height: 1.65;
}
.interactive-learner-course-meta,
.interactive-learner-course-player__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin: 1.35rem 0 0;
}
.interactive-learner-course-meta span,
.interactive-learner-course-player__meta span,
.interactive-learner-learn-card__meta span {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(15, 118, 110, .14);
    border-radius: 999px;
    padding: .38rem .72rem;
    background: rgba(224, 242, 241, .72);
    color: #334155;
    font-size: .84rem;
    font-weight: 800;
}
.interactive-learner-course-actions,
.interactive-learner-course-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 1.4rem;
}
.interactive-learner-course-actions form,
.interactive-learner-course-card__actions form {
    margin: 0;
}
.interactive-learner-learn-shell .button,
.il-learn-lms-bridge-body .button {
    border-radius: 999px;
    border: 0;
    padding: .72rem 1.15rem;
    min-height: 0;
    background: #0f766e;
    color: #fff;
    font-weight: 900;
    line-height: 1.1;
    text-decoration: none;
    box-shadow: 0 14px 28px rgba(15, 118, 110, .16);
    cursor: pointer;
}
.interactive-learner-learn-shell .button:hover,
.il-learn-lms-bridge-body .button:hover {
    background: #115e59;
    color: #fff;
}
.interactive-learner-course-layout,
.interactive-learner-course-player__layout {
    display: grid;
    grid-template-columns: minmax(245px, 330px) minmax(0, 1fr);
    gap: clamp(18px, 3vw, 30px);
    align-items: start;
    margin-top: clamp(20px, 4vw, 34px);
}
.interactive-learner-course-sidebar,
.interactive-learner-course-player__sidebar {
    min-width: 0;
}
.interactive-learner-outline,
.interactive-learner-course-outline {
    position: sticky;
    top: 22px;
    border: 1px solid rgba(15, 118, 110, .14);
    border-radius: 24px;
    background: rgba(255,255,255,.94);
    box-shadow: 0 18px 38px rgba(15, 23, 42, .08);
    padding: 18px;
}
.interactive-learner-outline__head h2,
.interactive-learner-course-outline h2 {
    margin: .5rem 0 1rem;
    color: #0f172a;
    font-size: 1.18rem;
    letter-spacing: -.03em;
}
.interactive-learner-outline-section h3 {
    margin: .25rem 0 .75rem;
    color: #64748b;
    font-size: .82rem;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.interactive-learner-outline-section ol,
.interactive-learner-course-outline ol {
    display: grid;
    gap: .55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.interactive-learner-outline-item a,
.interactive-learner-outline-item > span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 16px;
    padding: .78rem .9rem;
    background: #fff;
    color: #0f172a;
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.interactive-learner-outline-item a:hover {
    transform: translateY(-1px);
    border-color: rgba(15, 118, 110, .32);
    box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
}
.interactive-learner-outline-item.is-selected a,
.interactive-learner-outline-item.is-selected > span {
    border-color: rgba(15, 118, 110, .42);
    background: #f0fdfa;
}
.interactive-learner-outline-item small {
    flex: 0 0 auto;
    color: #64748b;
    font-size: .72rem;
    font-weight: 800;
}
.interactive-learner-course-main,
.interactive-learner-course-player__main {
    min-width: 0;
}
.interactive-learner-module-player,
.interactive-learner-module,
.interactive-learner-activity {
    border: 1px solid rgba(15, 118, 110, .13);
    border-radius: 24px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 16px 42px rgba(15, 23, 42, .075);
}
.interactive-learner-module-player {
    padding: clamp(18px, 3vw, 28px);
}
.interactive-learner-module-header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    border-bottom: 1px solid rgba(15, 23, 42, .07);
    margin-bottom: 1.2rem;
    padding-bottom: 1.1rem;
}
.interactive-learner-module-header h2,
.interactive-learner-module-header h3 {
    margin: .35rem 0 0;
    color: #0f172a;
    font-size: clamp(1.5rem, 3vw, 2.25rem);
    line-height: 1.05;
    letter-spacing: -.045em;
}
.interactive-learner-progress-state {
    flex: 0 0 auto;
    border-radius: 999px;
    padding: .45rem .75rem;
    background: #e2e8f0;
    color: #334155;
    font-size: .82rem;
    font-weight: 900;
}
.interactive-learner-progress-state--completed { background: #ccfbf1; color: #115e59; }
.interactive-learner-progress-state--in_progress { background: #fef3c7; color: #92400e; }
.interactive-learner-module-content,
.interactive-learner-activity__body,
.il-activity-html {
    color: #334155;
    font-size: 1rem;
    line-height: 1.75;
}
.interactive-learner-module-content > :first-child,
.interactive-learner-activity__body > :first-child,
.il-activity-html > :first-child { margin-top: 0; }
.interactive-learner-module-content > :last-child,
.interactive-learner-activity__body > :last-child,
.il-activity-html > :last-child { margin-bottom: 0; }
.interactive-learner-activities {
    display: grid;
    gap: 1rem;
    margin-top: 1.2rem;
}
.interactive-learner-activity {
    padding: clamp(16px, 2.5vw, 24px);
    margin: 0;
}
.interactive-learner-activity__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .95rem;
}
.interactive-learner-activity__header h4 {
    margin: 0;
    color: #0f172a;
    font-size: 1.18rem;
    letter-spacing: -.025em;
}
.interactive-learner-required,
.il-h5p-activity__badge,
.il-tutor-source-activity__badge,
.il-tutor-compat__badge {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(15,118,110,.2);
    border-radius: 999px;
    padding: .28rem .6rem;
    background: #f0fdfa;
    color: #0f766e;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.interactive-learner-activity-complete,
.interactive-learner-module-actions,
.interactive-learner-complete-module-form {
    margin: 1rem 0 0;
}
.il-h5p-activity {
    overflow: hidden;
    border: 1px solid rgba(15,118,110,.14);
    border-radius: 20px;
    background: #fff;
    padding: 0;
    margin: 0;
}
.il-h5p-activity__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    align-items: center;
    border-bottom: 1px solid rgba(15,23,42,.07);
    padding: .75rem .9rem;
    color: #475569;
    font-size: .88rem;
    font-weight: 800;
}
.il-h5p-activity__meta code {
    border-radius: 999px;
    background: #eef2ff;
    padding: .2rem .42rem;
    color: #334155;
}
.il-h5p-activity__content {
    padding: .75rem;
}
.il-tutor-source-activity,
.il-tutor-compat {
    border: 1px dashed rgba(180, 83, 9, .38);
    border-radius: 20px;
    background: #fffbeb;
    padding: 1rem;
    color: #3f2b08;
}
.il-tutor-source-activity h5,
.il-tutor-compat h5 {
    margin: .55rem 0 .3rem;
    color: #1f2937;
    font-size: 1.05rem;
}
.il-tutor-source-activity__notice,
.il-tutor-compat__meta {
    border: 1px solid rgba(180, 83, 9, .22);
    border-left: 4px solid #d97706;
    border-radius: 14px;
    background: #fff7ed;
    margin: .9rem 0;
    padding: .8rem .95rem;
}
.il-tutor-source-activity__actions,
.il-tutor-compat__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: .9rem;
}
.interactive-learner-wrapper-warning,
.interactive-learner-notice,
.interactive-learner-empty-state,
.interactive-learner-activity__placeholder {
    border: 1px solid rgba(15,118,110,.14);
    border-radius: 18px;
    background: #f8fafc;
    padding: 1rem;
    color: #475569;
}
.interactive-learner-wrapper-warning {
    border-color: rgba(180, 83, 9, .25);
    background: #fffbeb;
    margin: 0 0 1rem;
}
.interactive-learner-wrapper-warning strong {
    color: #92400e;
}
.interactive-learner-course-progress-summary,
.interactive-learner-progress-ring {
    display: flex;
    align-items: center;
    gap: .8rem;
}
.interactive-learner-progress-ring {
    justify-content: center;
    flex-direction: column;
    width: 86px;
    height: 86px;
    border-radius: 999px;
    background: conic-gradient(#0f766e var(--il-progress, 0%), #e2e8f0 0);
    color: #0f172a;
    box-shadow: inset 0 0 0 10px rgba(255,255,255,.85);
}
.interactive-learner-progress-ring strong {
    font-size: 1.25rem;
    line-height: 1;
}
.interactive-learner-progress-ring span {
    font-size: .68rem;
    font-weight: 800;
    color: #64748b;
    text-transform: uppercase;
}
.interactive-learner-native-course-card--wrapper {
    border-color: rgba(180,83,9,.24) !important;
}
.interactive-learner-native-course-card__hint {
    border-radius: 16px;
    background: #fffbeb;
    color: #92400e;
    font-size: .9rem;
    line-height: 1.45;
    margin: .65rem 0 0;
    padding: .75rem;
}
@media (max-width: 860px) {
    .interactive-learner-course-layout,
    .interactive-learner-course-player__layout {
        grid-template-columns: 1fr;
    }
    .interactive-learner-outline,
    .interactive-learner-course-outline {
        position: static;
    }
    .interactive-learner-module-header {
        flex-direction: column;
    }
}

/* 6.1.25 Tutor-informed native course/player bridge */
.interactive-learner-learn-shell .interactive-learner-native-lms-player-section,
.interactive-learner-native-lms-shell__main .interactive-learner-native-lms-player-section {
    max-width: 1240px;
}
.interactive-learner-course-player--overview,
.interactive-learner-course-player--module {
    --il-surface: rgba(255,255,255,.96);
    --il-ink: #0f172a;
    --il-muted: #64748b;
    --il-line: rgba(15,23,42,.09);
    --il-accent: #0f766e;
    --il-accent-strong: #115e59;
    --il-accent-soft: #f0fdfa;
    --il-warning: #92400e;
    color: var(--il-ink);
}
.interactive-learner-course-overview {
    display: grid;
    gap: clamp(18px, 3vw, 30px);
}
.interactive-learner-course-overview-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 370px);
    gap: clamp(18px, 3vw, 28px);
    align-items: stretch;
}
.interactive-learner-course-overview-hero__content,
.interactive-learner-course-cta-card,
.interactive-learner-course-curriculum-panel,
.interactive-learner-course-sidecard,
.interactive-learner-content-player,
.interactive-learner-player-content > .interactive-learner-module-player,
.interactive-learner-player-sidebar .interactive-learner-curriculum,
.interactive-learner-player-footer a,
.interactive-learner-player-footer__disabled {
    border: 1px solid rgba(15,118,110,.14);
    background: var(--il-surface);
    box-shadow: 0 20px 48px rgba(15,23,42,.08);
}
.interactive-learner-course-overview-hero__content {
    position: relative;
    overflow: hidden;
    border-radius: 32px;
    padding: clamp(26px, 4vw, 48px);
    background:
        radial-gradient(circle at 92% 8%, rgba(45,212,191,.28), transparent 32%),
        linear-gradient(135deg, rgba(255,255,255,.98), rgba(240,253,250,.94));
}
.interactive-learner-course-overview-hero__content h1,
.interactive-learner-content-player h1,
.interactive-learner-player-content .interactive-learner-module-header h2 {
    color: var(--il-ink);
    letter-spacing: -.055em;
}
.interactive-learner-course-overview-hero__content h1 {
    max-width: 980px;
    margin: .35rem 0 .85rem;
    font-size: clamp(2.2rem, 5vw, 4.7rem);
    line-height: .92;
}
.interactive-learner-course-overview .interactive-learner-course-description {
    max-width: 920px;
    color: #475569;
    font-size: clamp(1rem, 1.6vw, 1.2rem);
    line-height: 1.68;
}
.interactive-learner-course-overview .interactive-learner-course-description p:first-child { margin-top: 0; }
.interactive-learner-course-overview .interactive-learner-course-description p:last-child { margin-bottom: 0; }
.interactive-learner-course-cta-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1.15rem;
    border-radius: 28px;
    padding: clamp(18px, 3vw, 26px);
}
.interactive-learner-course-cta-card .interactive-learner-course-progress-summary {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
}
.interactive-learner-course-cta-card .interactive-learner-course-progress-summary p {
    margin: 0;
    color: var(--il-muted);
    font-weight: 800;
}
.interactive-learner-course-cta-card__actions {
    display: grid;
    gap: .75rem;
}
.interactive-learner-course-cta-card__actions .button,
.interactive-learner-course-sidecard .button,
.interactive-learner-player-footer a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    text-align: center;
}
.interactive-learner-course-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
    gap: clamp(18px, 3vw, 28px);
    align-items: start;
}
.interactive-learner-course-curriculum-panel,
.interactive-learner-course-sidecard {
    border-radius: 28px;
    padding: clamp(18px, 3vw, 26px);
}
.interactive-learner-course-sidecard {
    position: sticky;
    top: 24px;
    color: #475569;
}
.interactive-learner-course-sidecard h2 {
    margin: 0 0 .75rem;
    color: var(--il-ink);
    font-size: 1.25rem;
    letter-spacing: -.035em;
}
.interactive-learner-course-sidecard p {
    margin: 0 0 1rem;
    line-height: 1.65;
}
.interactive-learner-course-sidecard__admin {
    display: block;
    margin-top: .8rem;
    color: var(--il-accent);
    font-weight: 900;
    text-decoration: none;
}
.interactive-learner-curriculum {
    position: static;
    border: 0;
    box-shadow: none;
    background: transparent;
    padding: 0;
}
.interactive-learner-curriculum__head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: end;
    margin-bottom: 1rem;
}
.interactive-learner-curriculum__head h2 {
    margin: .35rem 0 0;
    color: var(--il-ink);
    font-size: clamp(1.35rem, 2.6vw, 2rem);
    letter-spacing: -.045em;
}
.interactive-learner-curriculum__head span,
.interactive-learner-player-module-meta,
.interactive-learner-course-eyebrow {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    border: 1px solid rgba(15,118,110,.18);
    border-radius: 999px;
    padding: .36rem .68rem;
    background: var(--il-accent-soft);
    color: var(--il-accent);
    font-size: .75rem;
    font-weight: 950;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.interactive-learner-curriculum-section {
    border: 1px solid var(--il-line);
    border-radius: 22px;
    overflow: hidden;
    background: rgba(248,250,252,.72);
    margin: 0 0 1rem;
}
.interactive-learner-curriculum-section:last-child { margin-bottom: 0; }
.interactive-learner-curriculum-section__toggle {
    appearance: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    width: 100%;
    border: 0;
    border-bottom: 1px solid var(--il-line);
    padding: 1rem 1.1rem;
    background: #fff;
    color: var(--il-ink);
    text-align: left;
    cursor: default;
}
.interactive-learner-curriculum-section__toggle small {
    display: block;
    margin-bottom: .2rem;
    color: var(--il-muted);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.interactive-learner-curriculum-section__toggle strong {
    display: block;
    font-size: 1rem;
    letter-spacing: -.02em;
}
.interactive-learner-curriculum-section__toggle em {
    flex: 0 0 auto;
    border-radius: 999px;
    padding: .28rem .55rem;
    background: #e2e8f0;
    color: #334155;
    font-style: normal;
    font-size: .75rem;
    font-weight: 900;
}
.interactive-learner-curriculum-list {
    display: grid;
    gap: .7rem;
    list-style: none;
    margin: 0;
    padding: .85rem;
}
.interactive-learner-curriculum-item > a,
.interactive-learner-curriculum-item > span {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    border: 1px solid var(--il-line);
    border-radius: 18px;
    padding: .9rem 1rem;
    background: #fff;
    color: var(--il-ink);
    text-decoration: none;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.interactive-learner-curriculum-item > a:hover {
    border-color: rgba(15,118,110,.32);
    box-shadow: 0 14px 30px rgba(15,23,42,.08);
    transform: translateY(-1px);
}
.interactive-learner-curriculum-item.is-selected > a,
.interactive-learner-curriculum-item.is-selected > span {
    border-color: rgba(15,118,110,.42);
    background: linear-gradient(135deg, #f0fdfa, #fff);
}
.interactive-learner-curriculum-item__main {
    display: flex;
    align-items: center;
    gap: .85rem;
    min-width: 0;
}
.interactive-learner-curriculum-icon,
.interactive-learner-player-module-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 14px;
    background: #ccfbf1;
    color: #115e59;
    font-size: .82rem;
    font-weight: 950;
}
.interactive-learner-curriculum-title {
    min-width: 0;
}
.interactive-learner-curriculum-title strong,
.interactive-learner-curriculum-title small {
    display: block;
}
.interactive-learner-curriculum-title strong {
    color: var(--il-ink);
    font-size: .98rem;
    line-height: 1.28;
}
.interactive-learner-curriculum-title small {
    margin-top: .2rem;
    color: var(--il-muted);
    font-weight: 800;
}
.interactive-learner-curriculum-item__meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .4rem;
    align-items: center;
}
.interactive-learner-curriculum-item__meta em,
.interactive-learner-curriculum-status {
    border-radius: 999px;
    padding: .28rem .5rem;
    background: #f1f5f9;
    color: #475569;
    font-style: normal;
    font-size: .72rem;
    font-weight: 900;
    white-space: nowrap;
}
.interactive-learner-curriculum-status--completed { background: #ccfbf1; color: #115e59; }
.interactive-learner-curriculum-status--in_progress { background: #fef3c7; color: #92400e; }
.interactive-learner-content-player {
    overflow: hidden;
    border-radius: 30px;
    background: rgba(248,250,252,.88);
}
.interactive-learner-player-topbar {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    gap: .9rem;
    align-items: center;
    border-bottom: 1px solid var(--il-line);
    padding: .85rem 1rem;
    background: rgba(255,255,255,.96);
}
.interactive-learner-player-topbar__back,
.interactive-learner-player-topbar__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border-radius: 999px;
    background: var(--il-accent-soft);
    color: var(--il-accent);
    font-weight: 950;
    text-decoration: none;
}
.interactive-learner-player-topbar__back {
    padding: .45rem .8rem;
}
.interactive-learner-player-topbar__back::before {
    content: "←";
    margin-right: .35rem;
}
.interactive-learner-player-topbar__close {
    width: 40px;
    font-size: 1.35rem;
    line-height: 1;
}
.interactive-learner-player-topbar__title {
    min-width: 0;
}
.interactive-learner-player-topbar__title span,
.interactive-learner-player-topbar__progress span {
    display: block;
    color: var(--il-muted);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.interactive-learner-player-topbar__title strong,
.interactive-learner-player-topbar__progress strong {
    display: block;
    overflow: hidden;
    color: var(--il-ink);
    font-size: 1rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.interactive-learner-player-topbar__progress {
    min-width: 88px;
    text-align: right;
}
.interactive-learner-player-layout {
    display: grid;
    grid-template-columns: minmax(250px, 330px) minmax(0, 1fr);
    min-height: min(760px, calc(100vh - 210px));
}
.interactive-learner-player-sidebar {
    border-right: 1px solid var(--il-line);
    background: rgba(255,255,255,.72);
    padding: 1rem;
    overflow: auto;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum {
    border-radius: 22px;
    padding: 1rem;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum__head h2 {
    font-size: 1.15rem;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-list {
    padding: .65rem;
    gap: .55rem;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-item > a,
.interactive-learner-player-sidebar .interactive-learner-curriculum-item > span {
    align-items: flex-start;
    padding: .72rem;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-item__meta em {
    display: none;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-icon {
    flex-basis: 32px;
    width: 32px;
    height: 32px;
    border-radius: 12px;
}
.interactive-learner-player-content {
    min-width: 0;
    padding: clamp(16px, 3vw, 28px);
    overflow: visible;
}
.interactive-learner-player-module-meta {
    margin-bottom: .85rem;
    gap: .5rem;
    text-transform: none;
    letter-spacing: 0;
}
.interactive-learner-player-module-meta .interactive-learner-player-module-icon {
    flex-basis: 28px;
    width: 28px;
    height: 28px;
    border-radius: 10px;
    font-size: .7rem;
}
.interactive-learner-player-content > .interactive-learner-module-player,
.interactive-learner-player-content .interactive-learner-module-player {
    border-radius: 26px;
    padding: clamp(18px, 3vw, 30px);
    margin: 0;
}
.interactive-learner-player-content .interactive-learner-module-header {
    align-items: center;
}
.interactive-learner-player-content .interactive-learner-module-eyebrow {
    display: none;
}
.interactive-learner-player-content .interactive-learner-module-header h2 {
    margin: 0;
    font-size: clamp(1.6rem, 3.2vw, 2.65rem);
}
.interactive-learner-player-content .interactive-learner-activities {
    gap: 1.15rem;
}
.interactive-learner-player-content .interactive-learner-activity {
    border-radius: 22px;
}
.interactive-learner-player-content .il-h5p-activity__content {
    padding: clamp(.75rem, 2vw, 1.15rem);
}
.interactive-learner-player-footer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}
.interactive-learner-player-footer a,
.interactive-learner-player-footer__disabled {
    flex-direction: column;
    align-items: flex-start;
    border-radius: 20px;
    padding: .9rem 1rem;
    color: var(--il-ink);
    text-decoration: none;
}
.interactive-learner-player-footer a:hover {
    border-color: rgba(15,118,110,.32);
}
.interactive-learner-player-footer span {
    color: var(--il-muted);
    font-size: .75rem;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.interactive-learner-player-footer strong {
    margin-top: .2rem;
    color: var(--il-ink);
    font-size: 1rem;
}
.interactive-learner-player-footer__next {
    align-items: flex-end !important;
    text-align: right;
}
.interactive-learner-player-footer__disabled {
    background: rgba(241,245,249,.82);
    color: var(--il-muted);
    box-shadow: none;
}
.interactive-learner-wrapper-warning--inline {
    margin: 0 0 1rem;
}
.il-tutor-source-activity__top {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
    margin-bottom: .6rem;
}
.il-tutor-source-activity__kind,
.il-tutor-source-activity__mini,
.il-tutor-source-activity__source {
    color: #92400e;
    font-size: .88rem;
    font-weight: 800;
}
.il-tutor-source-activity__notice strong {
    display: block;
    margin-bottom: .25rem;
    color: #78350f;
}
.il-tutor-source-activity__notice p,
.il-tutor-source-activity__source {
    margin: 0;
}
.il-tutor-source-activity__review {
    border-radius: 14px;
    background: #fff7ed;
    padding: .65rem .8rem;
}
.interactive-learner-course-player .interactive-learner-notice-info {
    margin-bottom: 1rem;
    border-color: rgba(15,118,110,.22);
    background: #f0fdfa;
    color: #115e59;
}
@media (max-width: 980px) {
    .interactive-learner-course-overview-hero,
    .interactive-learner-course-overview-grid,
    .interactive-learner-player-layout {
        grid-template-columns: 1fr;
    }
    .interactive-learner-course-sidecard,
    .interactive-learner-player-sidebar {
        position: static;
    }
    .interactive-learner-player-sidebar {
        border-right: 0;
        border-bottom: 1px solid var(--il-line);
        max-height: none;
    }
    .interactive-learner-player-layout {
        min-height: 0;
    }
}
@media (max-width: 720px) {
    .interactive-learner-player-topbar {
        grid-template-columns: 1fr auto;
    }
    .interactive-learner-player-topbar__back,
    .interactive-learner-player-topbar__progress {
        display: none;
    }
    .interactive-learner-curriculum-item > a,
    .interactive-learner-curriculum-item > span,
    .interactive-learner-player-footer {
        grid-template-columns: 1fr;
    }
    .interactive-learner-curriculum-item > a,
    .interactive-learner-curriculum-item > span {
        align-items: flex-start;
        flex-direction: column;
    }
    .interactive-learner-curriculum-item__meta {
        justify-content: flex-start;
    }
    .interactive-learner-player-footer__next {
        align-items: flex-start !important;
        text-align: left;
    }
}

/* 6.1.26 Tutor/H5P media repair and /learn player polish */
body.il-learn-lms-bridge-body {
    margin: 0;
    overflow-x: hidden;
    background: #eef8f7;
}
body.il-learn-lms-bridge-body .interactive-learner-learn-shell--native-lms {
    min-height: 100dvh;
}
body.il-learn-lms-bridge-body .interactive-learner-native-lms-shell__main {
    width: min(100% - clamp(18px, 4vw, 56px), 1320px);
    max-width: 1320px;
    padding: clamp(14px, 2vw, 24px) 0 clamp(52px, 6vw, 84px);
}
.interactive-learner-native-lms-player-section,
.interactive-learner-course-player,
.interactive-learner-course-player > * {
    min-width: 0;
}
.interactive-learner-course-player--module .interactive-learner-content-player {
    display: flex;
    flex-direction: column;
    min-height: calc(100dvh - 118px);
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(240,253,250,.88));
}
.interactive-learner-course-player--module .interactive-learner-player-topbar {
    position: sticky;
    top: 0;
    z-index: 20;
}
.interactive-learner-course-player--module .interactive-learner-player-layout {
    flex: 1 1 auto;
    grid-template-columns: minmax(292px, 360px) minmax(0, 1fr);
    min-height: calc(100dvh - 188px);
}
.interactive-learner-course-player--module .interactive-learner-player-sidebar {
    min-width: 0;
    max-height: calc(100dvh - 188px);
    overflow: auto;
    overscroll-behavior: contain;
    background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(248,250,252,.88));
}
.interactive-learner-course-player--module .interactive-learner-player-content {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 100%;
    background: radial-gradient(circle at 100% 0%, rgba(45,212,191,.12), transparent 34%);
}
.interactive-learner-course-player--module .interactive-learner-player-content > .interactive-learner-module-player,
.interactive-learner-course-player--module .interactive-learner-player-content .interactive-learner-module-player {
    width: 100%;
    max-width: 100%;
}
.interactive-learner-course-player--module .interactive-learner-module-content,
.interactive-learner-course-player--module .interactive-learner-activities,
.interactive-learner-course-player--module .interactive-learner-activity,
.interactive-learner-course-player--module .il-activity,
.interactive-learner-course-player--module .il-h5p-activity {
    min-width: 0;
    max-width: 100%;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum__head {
    align-items: center;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum__head h2 {
    margin: 0;
    line-height: 1.12;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-section__toggle {
    padding: .85rem 1rem;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-section__toggle strong,
.interactive-learner-player-sidebar .interactive-learner-curriculum-title strong {
    overflow-wrap: anywhere;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-item > a,
.interactive-learner-player-sidebar .interactive-learner-curriculum-item > span {
    gap: .7rem;
}
.il-activity-video,
.il-activity-embed {
    border-radius: 22px;
    overflow: hidden;
    background: #0f172a;
}
.il-activity-video iframe,
.il-activity-video video,
.il-activity-video .wp-video,
.il-activity-video .wp-video-shortcode,
.il-activity-embed iframe,
.il-activity-embed video {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    border: 0;
}
.il-activity-video iframe,
.il-activity-embed iframe {
    aspect-ratio: 16 / 9;
    min-height: min(62dvh, 420px);
}
.il-activity-video video,
.il-activity-video .wp-video-shortcode,
.il-activity-embed video {
    height: auto !important;
    max-height: 70dvh;
    object-fit: contain;
    background: #0f172a;
}
.il-activity-video__caption,
.il-activity-embed__caption {
    margin: 0;
    padding: .8rem 1rem;
    background: #fff;
    color: #475569;
    font-weight: 750;
}
.il-activity-embed__frame {
    position: relative;
    width: 100%;
    background: #0f172a;
}
.il-h5p-activity__content iframe,
.il-h5p-activity__content .h5p-iframe-wrapper,
.il-h5p-activity__content .h5p-content {
    max-width: 100%;
}
@media (max-width: 1120px) {
    body.il-learn-lms-bridge-body .interactive-learner-native-lms-shell__main {
        width: min(100% - 22px, 100%);
    }
    .interactive-learner-course-player--module .interactive-learner-player-layout {
        grid-template-columns: minmax(250px, 310px) minmax(0, 1fr);
    }
}
@media (max-width: 900px) {
    .interactive-learner-course-player--module .interactive-learner-content-player {
        min-height: 0;
    }
    .interactive-learner-course-player--module .interactive-learner-player-layout {
        grid-template-columns: 1fr;
        min-height: 0;
    }
    .interactive-learner-course-player--module .interactive-learner-player-sidebar {
        max-height: 360px;
        border-right: 0;
        border-bottom: 1px solid var(--il-line, rgba(15,23,42,.09));
    }
    .interactive-learner-course-player--module .interactive-learner-player-topbar {
        position: static;
    }
}

/* 6.1.27 H5P runtime viewer and Tutor module repair polish */
body.il-learn-lms-bridge-body .interactive-learner-learn-shell__topbar {
    --il-shell-offset: 72px;
}
body.il-learn-lms-bridge-body .interactive-learner-native-lms-shell__main {
    width: min(100% - clamp(16px, 3vw, 48px), 1480px);
    max-width: 1480px;
    padding-top: clamp(18px, 2.4vw, 34px);
}
.interactive-learner-course-player--module .interactive-learner-player-topbar {
    top: 72px;
}
.interactive-learner-course-player--module .interactive-learner-player-layout {
    grid-template-columns: minmax(300px, 368px) minmax(0, 1fr);
    align-items: stretch;
}
.interactive-learner-course-player--module .interactive-learner-player-sidebar {
    scrollbar-gutter: stable;
}
.interactive-learner-course-player--module .interactive-learner-player-content {
    padding: clamp(18px, 2.8vw, 34px);
}
.interactive-learner-course-player--module .interactive-learner-player-content .interactive-learner-module-player {
    box-shadow: 0 22px 60px rgba(15,23,42,.08);
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-section {
    overflow: hidden;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-section__items {
    max-width: 100%;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-title {
    min-width: 0;
}
.interactive-learner-player-sidebar .interactive-learner-curriculum-title strong,
.interactive-learner-player-sidebar .interactive-learner-curriculum-title span {
    min-width: 0;
    word-break: normal;
    overflow-wrap: anywhere;
}
.interactive-learner-activity-empty__hint {
    margin-top: .65rem;
    color: #64748b;
    font-size: .92rem;
}
.il-h5p-activity,
.interactive-learner-shortcode-h5p {
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(15,23,42,.06);
}
.il-h5p-activity__content {
    min-width: 0;
    overflow: visible;
}
.il-h5p-activity__content .h5p-content,
.il-h5p-activity__content .h5p-iframe-wrapper,
.il-h5p-activity__content .h5p-iframe,
.interactive-learner-shortcode-h5p .h5p-content,
.interactive-learner-shortcode-h5p .h5p-iframe-wrapper,
.interactive-learner-shortcode-h5p .h5p-iframe {
    width: 100% !important;
    max-width: 100% !important;
}
.interactive-learner-h5p-library,
.interactive-learner-h5p-viewer {
    display: grid;
    gap: clamp(16px, 2.4vw, 26px);
}
.interactive-learner-h5p-library__hero {
    border: 1px solid rgba(15,23,42,.10);
    border-radius: 30px;
    padding: clamp(24px, 4vw, 46px);
    background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(240,253,250,.9));
    box-shadow: 0 24px 70px rgba(15,23,42,.08);
}
.interactive-learner-h5p-library__hero span,
.interactive-learner-h5p-card__badge {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    border-radius: 999px;
    padding: .38rem .65rem;
    border: 1px solid rgba(15,118,110,.22);
    background: #ecfdf5;
    color: #0f766e;
    font-size: .75rem;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.interactive-learner-h5p-library__hero h1 {
    margin: .85rem 0 .5rem;
    color: #0f172a;
    font-size: clamp(2rem, 5vw, 4rem);
    line-height: .95;
    letter-spacing: -.06em;
}
.interactive-learner-h5p-library__hero p {
    max-width: 760px;
    margin: 0;
    color: #475569;
    font-size: clamp(1rem, 1.5vw, 1.18rem);
}
.interactive-learner-h5p-library__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: clamp(14px, 2vw, 22px);
}
.interactive-learner-h5p-card {
    display: flex;
    flex-direction: column;
    gap: .75rem;
    min-height: 230px;
    border: 1px solid rgba(15,23,42,.10);
    border-radius: 26px;
    padding: 1.1rem;
    background: rgba(255,255,255,.94);
    box-shadow: 0 18px 45px rgba(15,23,42,.07);
}
.interactive-learner-h5p-card h2 {
    margin: .2rem 0 0;
    color: #0f172a;
    font-size: 1.18rem;
    line-height: 1.15;
}
.interactive-learner-h5p-card p {
    margin: 0;
    color: #64748b;
    font-weight: 700;
}
.interactive-learner-h5p-card .interactive-learner-learn-card__link {
    margin-top: auto;
}
.interactive-learner-h5p-viewer__panel {
    width: 100%;
}
.interactive-learner-h5p-viewer .interactive-learner-player-topbar__back {
    width: fit-content;
}
@media (max-width: 980px) {
    .interactive-learner-course-player--module .interactive-learner-player-topbar {
        top: 0;
    }
    .interactive-learner-course-player--module .interactive-learner-player-layout {
        grid-template-columns: 1fr;
    }
}

/* 6.1.28 isolated H5P viewer and compact mobile module player */
.il-h5p-activity--iframe {
    padding: clamp(10px, 1.4vw, 16px);
}
.il-h5p-activity__frame-wrap {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 20px;
    background: #fff;
}
.il-h5p-activity__frame {
    display: block;
    width: 100%;
    min-height: min(78dvh, 820px);
    border: 0;
    background: #fff;
}
.interactive-learner-h5p-viewer--iframe .il-h5p-activity__frame {
    min-height: min(82dvh, 900px);
}
@media (min-width: 901px) {
    .interactive-learner-course-player--module .interactive-learner-player-content {
        padding: clamp(16px, 2vw, 30px);
    }
    .interactive-learner-course-player--module .interactive-learner-player-content .interactive-learner-module-player {
        padding: clamp(18px, 2.5vw, 34px);
    }
}
@media (max-width: 900px) {
    body.il-learn-lms-bridge-body .interactive-learner-native-lms-shell__main {
        width: 100%;
        max-width: 100%;
        padding: 0 0 calc(88px + env(safe-area-inset-bottom));
    }
    body.il-learn-lms-bridge-body .interactive-learner-learn-shell--native-lms {
        background: linear-gradient(180deg, #f8fafc, #ecfeff 52%, #f8fafc);
    }
    .interactive-learner-course-player--module,
    .interactive-learner-course-player--module .interactive-learner-content-player {
        border-radius: 0;
        box-shadow: none;
        background: transparent;
    }
    .interactive-learner-course-player--module .interactive-learner-player-topbar {
        position: sticky;
        top: 0;
        z-index: 35;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .65rem;
        align-items: center;
        border-radius: 0;
        border-left: 0;
        border-right: 0;
        padding: .7rem max(.85rem, env(safe-area-inset-left)) .7rem max(.85rem, env(safe-area-inset-right));
        background: rgba(255,255,255,.94);
        -webkit-backdrop-filter: blur(18px);
        backdrop-filter: blur(18px);
    }
    .interactive-learner-course-player--module .interactive-learner-player-topbar__back {
        display: none;
    }
    .interactive-learner-course-player--module .interactive-learner-player-topbar__progress {
        display: none;
    }
    .interactive-learner-course-player--module .interactive-learner-player-topbar__title span {
        font-size: .72rem;
        letter-spacing: .12em;
    }
    .interactive-learner-course-player--module .interactive-learner-player-topbar__title strong {
        font-size: 1rem;
        line-height: 1.05;
    }
    .interactive-learner-course-player--module .interactive-learner-player-topbar__close {
        width: 2.55rem;
        height: 2.55rem;
        font-size: 1.2rem;
    }
    .interactive-learner-course-player--module .interactive-learner-player-layout {
        display: block;
        min-height: 0;
    }
    .interactive-learner-course-player--module .interactive-learner-player-sidebar {
        display: none;
    }
    .interactive-learner-course-player--module .interactive-learner-player-content {
        display: block;
        padding: .75rem .75rem 1.1rem;
        min-height: auto;
        background: transparent;
    }
    .interactive-learner-course-player--module .interactive-learner-player-content > .interactive-learner-module-player,
    .interactive-learner-course-player--module .interactive-learner-player-content .interactive-learner-module-player {
        border-radius: 24px;
        border: 1px solid rgba(15,23,42,.08);
        padding: 1.05rem;
        box-shadow: 0 16px 42px rgba(15,23,42,.07);
    }
    .interactive-learner-course-player--module .interactive-learner-player-content .interactive-learner-module-header {
        gap: .8rem;
        align-items: flex-start;
        padding-bottom: .85rem;
        margin-bottom: .95rem;
    }
    .interactive-learner-course-player--module .interactive-learner-player-content .interactive-learner-module-header h2 {
        font-size: clamp(1.65rem, 8vw, 2.55rem);
        line-height: .98;
        letter-spacing: -.055em;
    }
    .interactive-learner-course-player--module .interactive-learner-activities {
        gap: .85rem;
    }
    .interactive-learner-course-player--module .interactive-learner-activity,
    .interactive-learner-course-player--module .il-activity,
    .interactive-learner-course-player--module .il-h5p-activity,
    .interactive-learner-course-player--module .interactive-learner-module-content {
        border-radius: 18px;
        padding: .8rem;
    }
    .interactive-learner-course-player--module .interactive-learner-module-actions {
        gap: .65rem;
    }
    .interactive-learner-course-player--module .interactive-learner-module-actions .interactive-learner-button,
    .interactive-learner-course-player--module .interactive-learner-module-actions button,
    .interactive-learner-course-player--module .interactive-learner-module-actions a {
        width: 100%;
        justify-content: center;
    }
    .interactive-learner-module-footer {
        grid-template-columns: 1fr;
        gap: .7rem;
        margin-top: .85rem;
    }
    .il-h5p-activity__meta {
        display: none;
    }
    .il-h5p-activity--iframe {
        padding: .4rem;
        box-shadow: none;
    }
    .il-h5p-activity__frame-wrap {
        border-radius: 16px;
    }
    .il-h5p-activity__frame {
        min-height: calc(100dvh - 220px);
    }
    .interactive-learner-h5p-viewer,
    .interactive-learner-h5p-library {
        padding: .75rem;
    }
    .interactive-learner-h5p-viewer__panel {
        border-radius: 22px;
        padding: 1rem;
    }
}
@media (max-width: 480px) {
    .interactive-learner-course-player--module .interactive-learner-player-content {
        padding-left: .55rem;
        padding-right: .55rem;
    }
    .interactive-learner-course-player--module .interactive-learner-player-content > .interactive-learner-module-player,
    .interactive-learner-course-player--module .interactive-learner-player-content .interactive-learner-module-player {
        padding: .85rem;
    }
    .il-h5p-activity__frame {
        min-height: calc(100dvh - 190px);
    }
}

/* 6.1.29 tutor/H5P repair: maximise phone screen space for the active activity. */
@media (max-width: 900px) {
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-player-layout,
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-content-player {
        display: block !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-player-sidebar {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        border: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-player-content {
        width: 100% !important;
        padding: .55rem .55rem calc(92px + env(safe-area-inset-bottom)) !important;
        background: transparent !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-player-content .interactive-learner-module-player,
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-activity,
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .il-h5p-activity {
        border-radius: 18px !important;
        padding: .75rem !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-module-header h2 {
        font-size: clamp(1.45rem, 7.2vw, 2.15rem) !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .il-h5p-activity__frame {
        min-height: calc(100dvh - 170px) !important;
    }
}

/* v6.1.29 — front-end Tutor/H5P repair debug details for administrators. */
.interactive-learner-module-debug{margin-top:1rem;border:1px solid rgba(148,163,184,.32);border-radius:16px;background:#f8fafc;padding:.75rem;color:#0f172a;}
.interactive-learner-module-debug summary{cursor:pointer;font-weight:800;color:#334155;}
.interactive-learner-module-debug pre{max-height:320px;overflow:auto;margin:.7rem 0 0;padding:.75rem;border-radius:12px;background:#0f172a;color:#e2e8f0;font-size:12px;line-height:1.45;white-space:pre-wrap;}

/* v6.1.30 — flatten imported Tutor/H5P module pages and maximise the active activity. */
@media (max-width: 900px) {
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module {
        padding-bottom: calc(78px + env(safe-area-inset-bottom)) !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-player-content {
        padding: .35rem .35rem calc(96px + env(safe-area-inset-bottom)) !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-player-content > .interactive-learner-module-player {
        border-radius: 20px !important;
        padding: .75rem !important;
        margin: 0 auto !important;
        box-shadow: 0 10px 28px rgba(15,23,42,.07) !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-activity {
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 0 .85rem !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-activity__header {
        padding: 0 0 .45rem !important;
        border: 0 !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-activity__header h4 {
        font-size: 1rem !important;
        margin: 0 !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .il-h5p-activity,
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-activity__body {
        padding: 0 !important;
        border-radius: 16px !important;
        box-shadow: none !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .il-h5p-activity__frame-wrap,
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .interactive-learner-embed iframe,
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module iframe {
        width: 100% !important;
        max-width: 100% !important;
    }
    body.il-learn-lms-bridge-body .interactive-learner-course-player--module .il-h5p-activity__frame {
        min-height: calc(100dvh - 145px) !important;
    }
}


/* v6.1.33: keep account/profile control inside the native LMS /learn header. */
body.il-learn-lms-bridge-body .interactive-learner-learn-shell__topbar {
    grid-template-columns: minmax(170px,.72fr) minmax(300px,auto) minmax(0,min(260px,22vw)) !important;
    box-sizing: border-box !important;
}
body.il-learn-lms-bridge-body .interactive-learner-learn-shell__user {
    min-width: 0 !important;
    max-width: min(260px,22vw) !important;
    overflow: hidden !important;
}
body.il-learn-lms-bridge-body .interactive-learner-learn-shell__account {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}
body.il-learn-lms-bridge-body .interactive-learner-learn-shell__account span,
body.il-learn-lms-bridge-body .interactive-learner-learn-shell__account em {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
@media (max-width: 1180px) {
    body.il-learn-lms-bridge-body .interactive-learner-learn-shell__topbar { grid-template-columns: minmax(160px,1fr) minmax(0,auto) !important; }
    body.il-learn-lms-bridge-body .interactive-learner-learn-shell__user { max-width: min(320px,46vw) !important; }
}
@media (max-width: 720px) {
    body.il-learn-lms-bridge-body .interactive-learner-learn-shell__topbar { grid-template-columns: 1fr !important; }
    body.il-learn-lms-bridge-body .interactive-learner-learn-shell__user { max-width: 100% !important; overflow: visible !important; }
}

/* v6.1.34: modern pre/post-course survey UX for the /learn player. */
.interactive-learner-survey-shell {
    margin: clamp(1rem, 2vw, 1.5rem) 0;
    padding: clamp(1rem, 2.4vw, 1.6rem);
    border: 1px solid rgba(20, 184, 166, .22);
    border-radius: 26px;
    background:
        radial-gradient(circle at top right, rgba(20, 184, 166, .13), transparent 32%),
        linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    box-shadow: 0 20px 55px rgba(15, 23, 42, .09);
}
.interactive-learner-survey-shell--post {
    border-color: rgba(99, 102, 241, .24);
    background:
        radial-gradient(circle at top right, rgba(99, 102, 241, .12), transparent 32%),
        linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
}
.interactive-learner-survey-shell__header {
    display: grid;
    gap: .55rem;
    margin-bottom: 1rem;
}
.interactive-learner-survey-kicker,
.interactive-learner-survey-required {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    min-height: 1.65rem;
    padding: .2rem .65rem;
    border: 1px solid rgba(13, 148, 136, .22);
    border-radius: 999px;
    background: rgba(240, 253, 250, .9);
    color: #0f766e;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.interactive-learner-survey-required {
    border-color: rgba(245, 158, 11, .28);
    background: #fffbeb;
    color: #92400e;
    letter-spacing: 0;
    text-transform: none;
}
.interactive-learner-survey-shell__header h2 {
    margin: 0;
    color: #0f172a;
    font-size: clamp(1.45rem, 3vw, 2.1rem);
    line-height: 1.12;
}
.interactive-learner-survey-shell__header p {
    max-width: 76ch;
    margin: 0;
    color: #475569;
    font-size: 1rem;
    line-height: 1.65;
}
.interactive-learner-survey-form,
.interactive-learner-survey-form__questions {
    display: grid;
    gap: 1rem;
}
.interactive-learner-survey-question {
    min-width: 0;
    margin: 0;
    padding: clamp(.9rem, 2vw, 1.2rem);
    border: 1px solid #e2e8f0;
    border-radius: 22px;
    background: rgba(255, 255, 255, .88);
}
.interactive-learner-survey-question legend {
    display: flex;
    gap: .7rem;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 0 .7rem;
    padding: 0;
    color: #0f172a;
    font-weight: 800;
}
.interactive-learner-survey-question__number {
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: #ecfeff;
    color: #0e7490;
    font-size: .9rem;
}
.interactive-learner-survey-question__prompt {
    min-width: min(100%, 18rem);
    flex: 1 1 18rem;
    font-size: 1.04rem;
}
.interactive-learner-survey-question__required {
    padding: .18rem .55rem;
    border-radius: 999px;
    background: #fef3c7;
    color: #92400e;
    font-size: .72rem;
    font-weight: 800;
}
.interactive-learner-survey-question__help {
    margin: -.25rem 0 .9rem;
    color: #64748b;
    font-size: .95rem;
}
.interactive-learner-survey-choice-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: .75rem;
}
.interactive-learner-survey-choice-card {
    position: relative;
    display: block;
    min-width: 0;
    cursor: pointer;
}
.interactive-learner-survey-choice-card input {
    position: absolute;
    inset: .85rem auto auto .85rem;
    z-index: 1;
    width: 1px;
    height: 1px;
    opacity: 0;
}
.interactive-learner-survey-choice-card__body {
    position: relative;
    display: grid;
    gap: .4rem;
    min-height: 118px;
    padding: 1rem 1rem 1rem 1.05rem;
    border: 1px solid #cbd5e1;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}
.interactive-learner-survey-choice-card__body::before {
    content: '';
    position: absolute;
    right: .85rem;
    top: .85rem;
    width: 1rem;
    height: 1rem;
    border: 2px solid #94a3b8;
    border-radius: 999px;
    background: #fff;
}
.interactive-learner-survey-choice-grid--checkbox .interactive-learner-survey-choice-card__body::before {
    border-radius: .35rem;
}
.interactive-learner-survey-choice-card__icon {
    display: inline-grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: .9rem;
    background: #f0fdfa;
    font-size: 1.3rem;
}
.interactive-learner-survey-choice-card__body strong {
    padding-right: 1.5rem;
    color: #0f172a;
    font-size: 1rem;
    line-height: 1.22;
}
.interactive-learner-survey-choice-card__body small {
    color: #64748b;
    font-size: .9rem;
    line-height: 1.45;
}
.interactive-learner-survey-choice-card:hover .interactive-learner-survey-choice-card__body,
.interactive-learner-survey-choice-card input:focus-visible + .interactive-learner-survey-choice-card__body {
    border-color: #14b8a6;
    box-shadow: 0 12px 30px rgba(20, 184, 166, .16);
    transform: translateY(-1px);
}
.interactive-learner-survey-choice-card input:checked + .interactive-learner-survey-choice-card__body {
    border-color: #0f766e;
    background: linear-gradient(135deg, #ecfdf5, #ffffff);
    box-shadow: 0 0 0 3px rgba(20, 184, 166, .16), 0 12px 30px rgba(20, 184, 166, .14);
}
.interactive-learner-survey-choice-card input:checked + .interactive-learner-survey-choice-card__body::before {
    border-color: #0f766e;
    background: radial-gradient(circle, #0f766e 0 42%, #fff 45% 100%);
}
.interactive-learner-survey-choice-grid--checkbox .interactive-learner-survey-choice-card input:checked + .interactive-learner-survey-choice-card__body::before {
    background: #0f766e;
    box-shadow: inset 0 0 0 3px #fff;
}
.interactive-learner-survey-question textarea,
.interactive-learner-survey-followup textarea,
.interactive-learner-survey-rank-list select {
    width: 100%;
    max-width: 100%;
    border: 1px solid #cbd5e1;
    border-radius: 14px;
    background: #fff;
    color: #0f172a;
    font: inherit;
}
.interactive-learner-survey-question textarea,
.interactive-learner-survey-followup textarea {
    min-height: 9rem;
    padding: .85rem 1rem;
    resize: vertical;
}
.interactive-learner-survey-rank-list {
    display: grid;
    gap: .65rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.interactive-learner-survey-rank-list li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(150px, .34fr);
    gap: .75rem;
    align-items: center;
    padding: .85rem;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #fff;
}
.interactive-learner-survey-rank-list strong,
.interactive-learner-survey-rank-list small {
    display: block;
}
.interactive-learner-survey-rank-list small {
    margin-top: .18rem;
    color: #64748b;
}
.interactive-learner-survey-rank-list select {
    min-height: 2.65rem;
    padding: .45rem .65rem;
}
.interactive-learner-survey-followup {
    display: grid;
    gap: .35rem;
    margin-top: .8rem;
    color: #334155;
    font-weight: 800;
}
.interactive-learner-survey-followup textarea {
    min-height: 6rem;
}
.interactive-learner-survey-form__actions {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .8rem 1rem;
    align-items: center;
    padding: 1rem;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #f8fafc;
}
.interactive-learner-survey-form__actions p {
    margin: 0;
    color: #64748b;
    font-size: .92rem;
    line-height: 1.45;
}
.interactive-learner-survey-form__actions .interactive-learner-primary-action {
    min-height: 2.75rem;
    padding-inline: 1.25rem;
    border-radius: 999px;
}
.interactive-learner-survey-thanks,
.interactive-learner-survey-complete {
    display: flex;
    gap: .6rem;
    align-items: center;
    margin: 1rem 0;
    padding: 1rem;
    border: 1px solid #bbf7d0;
    border-radius: 18px;
    background: #f0fdf4;
    color: #166534;
    font-weight: 800;
}
.interactive-learner-survey-thanks::before,
.interactive-learner-survey-complete::before {
    content: '✓';
    display: inline-grid;
    place-items: center;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: 999px;
    background: #22c55e;
    color: #fff;
}
@media (max-width: 760px) {
    .interactive-learner-survey-choice-grid,
    .interactive-learner-survey-rank-list li,
    .interactive-learner-survey-form__actions {
        grid-template-columns: 1fr;
    }
    .interactive-learner-survey-question legend {
        align-items: flex-start;
    }
    .interactive-learner-survey-form__actions .interactive-learner-primary-action {
        width: 100%;
        justify-content: center;
    }
}

/* 6.1.36 Course Store surface */
.interactive-learner-course-store {
    --il-surface: var(--originai-surface, rgba(255,255,255,.94));
    --il-card: var(--originai-card, #fff);
    --il-text: var(--originai-text, #111827);
    --il-muted: var(--originai-muted, #6b7280);
    --il-primary: var(--originai-primary, #2563eb);
    --il-radius: var(--originai-radius, 18px);
    --il-shadow: var(--originai-shadow, 0 18px 45px rgba(15,23,42,.10));
    color: var(--il-text);
}
.interactive-learner-course-store__header {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    margin: 0 0 1.1rem;
}
.interactive-learner-course-store__eyebrow {
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--il-primary);
}
.interactive-learner-course-grid,
.interactive-learner-course-list {
    display: grid;
    grid-template-columns: repeat(var(--il-course-grid-columns, 3), minmax(0, 1fr));
    gap: 1rem;
}
.interactive-learner-course-store .interactive-learner-course-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 0;
    border-radius: var(--il-radius);
    background: var(--il-card);
    box-shadow: var(--il-shadow);
}
.interactive-learner-course-card__media {
    display: grid;
    min-height: 180px;
    place-items: center;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(37,99,235,.12), rgba(14,165,233,.08));
    text-decoration: none;
}
.interactive-learner-course-card__image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 180px;
    object-fit: cover;
}
.interactive-learner-course-card__placeholder {
    display: grid;
    width: 74px;
    height: 74px;
    place-items: center;
    border-radius: 22px;
    background: rgba(255,255,255,.72);
    color: var(--il-primary);
    font-weight: 900;
    letter-spacing: .1em;
}
.interactive-learner-course-card__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: .75rem;
    padding: 1rem;
}
.interactive-learner-course-card__badges {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}
.interactive-learner-course-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: .22rem .55rem;
    background: rgba(15,23,42,.07);
    color: var(--il-muted);
    font-size: .74rem;
    font-weight: 800;
    line-height: 1.2;
}
.interactive-learner-course-badge--access {
    background: rgba(37,99,235,.11);
    color: var(--il-primary);
}
.interactive-learner-course-card__title {
    margin: 0;
    font-size: 1.15rem;
    line-height: 1.25;
}
.interactive-learner-course-card__title a {
    color: inherit;
    text-decoration: none;
}
.interactive-learner-course-card__excerpt {
    color: var(--il-muted);
    font-size: .95rem;
}
.interactive-learner-course-card__excerpt p {
    margin: 0;
}
.interactive-learner-course-card__price {
    font-size: 1.08rem;
    font-weight: 900;
}
.interactive-learner-course-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: auto;
}
.interactive-learner-primary-action,
.interactive-learner-course-card__actions .interactive-learner-primary-action {
    border-color: var(--il-primary);
    background: var(--il-primary);
    color: #fff;
}
.interactive-learner-secondary-action {
    background: transparent;
}
@media (max-width: 980px) {
    .interactive-learner-course-grid,
    .interactive-learner-course-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .interactive-learner-course-grid,
    .interactive-learner-course-list {
        grid-template-columns: 1fr;
    }
}


/* OriginAI-friendly compact Course Studio shortcode. */
.originai-interactive-courses {
    --originai-interactive-primary: var(--originai-primary, var(--il-primary, #0f766e));
    --originai-interactive-secondary: var(--originai-secondary, #0f172a);
    --originai-interactive-accent: var(--originai-accent, #14b8a6);
    --originai-interactive-text: var(--originai-text, var(--il-ink, #0f172a));
    --originai-interactive-muted: var(--originai-muted, var(--il-muted, #475569));
    --originai-interactive-surface: var(--originai-surface, var(--il-card, #ffffff));
    --originai-interactive-card-radius: var(--originai-card-radius, var(--il-radius, 22px));
    --originai-interactive-button-radius: var(--originai-button-radius, 999px);
    --originai-interactive-shadow: 0 18px 45px rgba(15, 23, 42, .10);
    box-sizing: border-box;
    width: min(100%, var(--originai-max-width, 1180px));
    margin: clamp(1.5rem, 4vw, 3rem) auto;
    color: var(--originai-interactive-text);
    font-family: var(--originai-font, inherit);
}
.originai-interactive-courses *,
.originai-interactive-courses *::before,
.originai-interactive-courses *::after {
    box-sizing: border-box;
}
.originai-interactive-courses__header {
    display: grid;
    gap: .35rem;
    margin: 0 0 1rem;
}
.originai-interactive-courses__eyebrow,
.originai-interactive-course-card__meta {
    margin: 0;
    color: var(--originai-interactive-primary);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .12em;
    line-height: 1.3;
    text-transform: uppercase;
}
.originai-interactive-courses__header h2 {
    margin: 0;
    color: var(--originai-interactive-text);
    font-size: clamp(1.45rem, 3vw, 2.25rem);
    line-height: 1.1;
}
.originai-interactive-courses__grid {
    display: grid;
    grid-template-columns: repeat(var(--originai-interactive-courses-columns, 2), minmax(0, 1fr));
    gap: clamp(.9rem, 2vw, 1.25rem);
    align-items: stretch;
}
.originai-interactive-course-card {
    display: flex;
    min-width: 0;
    min-height: 100%;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--originai-interactive-accent) 18%, transparent);
    border-radius: var(--originai-interactive-card-radius);
    background: var(--originai-interactive-surface);
    box-shadow: var(--originai-interactive-shadow);
}
.originai-interactive-course-card__image {
    display: grid;
    height: var(--originai-interactive-card-image-height, 170px);
    min-height: 150px;
    max-height: 180px;
    place-items: center;
    overflow: hidden;
    background: linear-gradient(135deg, color-mix(in srgb, var(--originai-interactive-primary) 12%, #fff), color-mix(in srgb, var(--originai-interactive-accent) 15%, #fff));
    text-decoration: none;
}
.originai-interactive-course-card__image-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.originai-interactive-course-card__placeholder {
    display: grid;
    width: 64px;
    height: 64px;
    place-items: center;
    border-radius: 20px;
    background: rgba(255, 255, 255, .82);
    color: var(--originai-interactive-primary);
    font-weight: 900;
    letter-spacing: .08em;
}
.originai-interactive-course-card__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: .65rem;
    padding: clamp(1rem, 2vw, 1.25rem);
}
.originai-interactive-course-card__title {
    margin: 0;
    color: var(--originai-interactive-text);
    font-size: clamp(1.05rem, 2vw, 1.25rem);
    line-height: 1.2;
}
.originai-interactive-course-card__title a {
    color: inherit;
    text-decoration: none;
}
.originai-interactive-course-card__title a:hover,
.originai-interactive-course-card__title a:focus-visible {
    color: var(--originai-interactive-primary);
}
.originai-interactive-course-card__excerpt {
    margin: 0;
    color: var(--originai-interactive-muted);
    font-size: .95rem;
    line-height: 1.55;
}
.originai-interactive-course-card__footer {
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: .25rem;
}
.originai-interactive-course-card__price {
    color: var(--originai-interactive-secondary);
    font-weight: 900;
}
.originai-interactive-course-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: .68rem 1rem;
    border: 1px solid var(--originai-interactive-primary);
    border-radius: var(--originai-interactive-button-radius);
    background: var(--originai-interactive-primary);
    color: #fff;
    font-size: .93rem;
    font-weight: 800;
    line-height: 1.15;
    text-decoration: none;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.originai-interactive-course-card__button:hover,
.originai-interactive-course-card__button:focus-visible {
    background: var(--originai-interactive-secondary);
    border-color: var(--originai-interactive-secondary);
    color: #fff;
    box-shadow: 0 12px 26px rgba(15, 23, 42, .14);
    transform: translateY(-1px);
}
.originai-interactive-courses--minimal .originai-interactive-course-card__image {
    height: 140px;
}
.originai-interactive-courses--minimal .originai-interactive-course-card__excerpt,
.originai-interactive-courses--minimal .originai-interactive-course-card__price {
    display: none;
}
.originai-interactive-courses__empty {
    margin: 0;
    padding: 1rem;
    border: 1px dashed color-mix(in srgb, var(--originai-interactive-accent) 26%, transparent);
    border-radius: var(--originai-interactive-card-radius);
    color: var(--originai-interactive-muted);
    background: color-mix(in srgb, var(--originai-interactive-accent) 7%, #fff);
}
@media (max-width: 780px) {
    .originai-interactive-courses__grid {
        grid-template-columns: 1fr;
    }
    .originai-interactive-course-card__image {
        height: 160px;
    }
}
