/* v21 responsive overrides for the "lesson" page group: scoped to its pages, loaded after every other stylesheet. */
/* Scope: body.uos-lesson-page (lessons/index.php, the lesson player), the proctor gate and the instructor
   "video check questions" page. Page-level text scales with the viewport (clamp(rem + vw)); text, paddings and
   icons inside components scale with the component they sit in (container query units, cqi), so a card, tab bar
   or list item fits its text the same way at every width. Desktop (1200px and up) keeps the current sizes. */

/* ---------- Player top bar (player-only navbar, not the site header) ---------- */
/* In the flow (sticky) instead of fixed, so a long course title can take two lines on a phone and the lesson
   never hides under the bar. On desktop the bar is still 65px tall and the content still starts right under it. */
body.uos-lesson-page nav.navbar.uos-player-bar{position:sticky;top:0;height:auto;min-height:65px;padding-top:.5rem;padding-bottom:.5rem;width:100%}
body.uos-lesson-page .course-playing{padding-top:0}
body.uos-lesson-page nav.navbar.uos-player-bar > .container-fluid{flex-wrap:nowrap;min-width:0}
body.uos-lesson-page nav.navbar.uos-player-bar .navbar-brand{flex:0 0 auto}
body.uos-lesson-page nav.navbar.uos-player-bar .navbar-collapse{min-width:0;flex:1 1 auto}
body.uos-lesson-page nav.navbar.uos-player-bar .navbar-nav{min-width:0;flex:0 1 auto;margin-bottom:0!important}
body.uos-lesson-page nav.navbar.uos-player-bar .navbar-nav .nav-item{min-width:0;display:block}
body.uos-lesson-page nav.navbar.uos-player-bar .navbar-nav .nav-link{min-width:0;display:flex;flex-direction:column;justify-content:center;min-height:24px}
body.uos-lesson-page nav.navbar.uos-player-bar .nav-link h1{font-size:clamp(.875rem,.78rem + .35vw,1rem)!important;line-height:1.3;overflow-wrap:anywhere}
body.uos-lesson-page nav.navbar.uos-player-bar .nav-link p{font-size:clamp(.6875rem,.62rem + .25vw,.75rem)!important;line-height:1.35}
body.uos-lesson-page nav.navbar.uos-player-bar .uos-player-progress{flex:0 0 auto}
body.uos-lesson-page nav.navbar.uos-player-bar .navbar-collapse > .btn{flex:0 0 auto;white-space:nowrap;font-size:clamp(.875rem,.8rem + .3vw,1rem);padding:.375rem clamp(.5rem,.4rem + .5vw,.75rem)}
body.uos-lesson-page nav.navbar.uos-player-bar .navbar-collapse > .btn.mx-1{margin-left:clamp(2px,.5vw,4px)!important;margin-right:clamp(2px,.5vw,4px)!important}
/* "Back to course" (students): always labelled; the full-width toggle only matters where the sidebar sits beside the lesson */
body.uos-lesson-page nav.navbar.uos-player-bar .uos-player-back{display:inline-flex;align-items:center;gap:clamp(6px,.4rem + .3vw,8px);margin-left:clamp(6px,1vw,10px)}
@media (max-width:991.98px){body.uos-lesson-page nav.navbar.uos-player-bar .uos-player-width{display:none!important}}

/* ---------- Lesson column ---------- */
/* player text (the template's fixed 15px): 14px on phones up to the same 15px on desktop */
body.uos-lesson-page{font-size:clamp(.875rem,.82rem + .2vw,.9375rem)}
body.uos-lesson-page .course-playing > .container-fluid > .row > [class*=col-]{container-type:inline-size;min-width:0}
body.uos-lesson-page .course-playing-content{min-width:0}
body.uos-lesson-page .course-playing-content .lesson-title{overflow-wrap:anywhere}
/* full-width layout: the stage bleeds into the column gutters on desktop only; on phones text keeps its gutter */
body.uos-lesson-page .uos-lesson-stage.is-full{margin-left:-12px;margin-right:-12px}
@media (max-width:991.98px){body.uos-lesson-page .uos-lesson-stage.is-full{margin-left:0;margin-right:0}}
body.uos-lesson-page .video-container{max-width:100%}
body.uos-lesson-page .video-container iframe,body.uos-lesson-page .video-container video,body.uos-lesson-page .video-container img{max-width:100%}
/* rich lesson text: media and tables never push the page sideways (a wide table scrolls inside its own box) */
body.uos-lesson-page .uos-lesson-body{overflow-wrap:break-word}
/* reading-lesson typography: headings stay below the lesson title, lists keep their markers, quotes/code/tables look finished */
body.uos-lesson-page .uos-lesson-body :is(h1,h2,h3,h4,h5,h6){margin:1.4em 0 .5em;line-height:1.3;overflow-wrap:break-word}
body.uos-lesson-page .uos-lesson-body > :first-child{margin-top:0}
body.uos-lesson-page .uos-lesson-body :is(h1,h2){font-size:clamp(1.1875rem,1.05rem + .6vw,1.5rem)}
body.uos-lesson-page .uos-lesson-body h3{font-size:clamp(1.0625rem,.98rem + .4vw,1.25rem)}
body.uos-lesson-page .uos-lesson-body :is(h4,h5,h6){font-size:clamp(1rem,.95rem + .2vw,1.0625rem)}
body.uos-lesson-page .uos-lesson-body :is(ul,ol){padding-left:1.4em;margin:0 0 1em}
body.uos-lesson-page .uos-lesson-body ul{list-style:disc}
body.uos-lesson-page .uos-lesson-body ol{list-style:decimal}
body.uos-lesson-page .uos-lesson-body li{margin:.25em 0;list-style:inherit}
body.uos-lesson-page .uos-ai-answer :is(ul,ol){padding-left:1.4em}
body.uos-lesson-page .uos-ai-answer ul li,body.uos-lesson-page .uos-ai-labs li{list-style:disc}
body.uos-lesson-page .uos-ai-answer ol li{list-style:decimal}
body.uos-lesson-page .uos-lesson-body blockquote{margin:1em 0;padding:.5em 0 .5em 1em;border-left:3px solid var(--pl-primary);color:var(--pl-muted)}
body.uos-lesson-page .uos-lesson-body blockquote > :last-child{margin-bottom:0}
body.uos-lesson-page .uos-lesson-body pre{background:var(--pl-card);border:1px solid var(--pl-card-border);border-radius:12px;padding:12px 14px;font-size:clamp(.8125rem,.78rem + .15vw,.875rem);line-height:1.6}
body.uos-lesson-page .uos-lesson-body :not(pre) > code{background:rgba(var(--pl-accent-rgb),.08);border-radius:6px;padding:.1em .35em;overflow-wrap:anywhere}
body.uos-lesson-page .uos-lesson-body table{border-collapse:collapse;margin:0 0 1em;font-size:clamp(.875rem,.85rem + .1vw,.9375rem)}
body.uos-lesson-page .uos-lesson-body :is(th,td){padding:8px 12px;border:1px solid var(--pl-card-border);vertical-align:top;min-width:6em;overflow-wrap:normal}
body.uos-lesson-page .uos-lesson-body th{background:rgba(var(--pl-accent-rgb),.06);font-weight:600;color:var(--pl-ink)}
body.uos-lesson-page .uos-lesson-body img,body.uos-lesson-page .uos-lesson-body video,body.uos-lesson-page .uos-lesson-body iframe{max-width:100%;height:auto}
body.uos-lesson-page .uos-lesson-body iframe{height:auto;aspect-ratio:16/9}
body.uos-lesson-page .uos-lesson-body table{display:block;max-width:100%;overflow-x:auto}
body.uos-lesson-page .uos-lesson-body pre,body.uos-lesson-page .uos-lesson-body pre *{max-width:100%;overflow-x:auto;white-space:pre}
body.uos-lesson-page .locked-card{max-width:100%;padding:clamp(18px,4vw,30px)}
body.uos-lesson-page .locked-card h6{overflow-wrap:anywhere}

/* previous / next lesson cards */
body.uos-lesson-page .uos-lesson-nav{container-type:inline-size}
body.uos-lesson-page .uos-lesson-nav a{min-width:0;padding:clamp(10px,1.6cqi,12px) clamp(12px,2.2cqi,16px)}
body.uos-lesson-page .uos-lesson-nav a span{font-size:clamp(.6875rem,1cqi + .3rem,.75rem)}
body.uos-lesson-page .uos-lesson-nav a strong{font-size:clamp(.875rem,1.2cqi + .55rem,.9375rem)}

/* "Lesson X of Y" above the lesson title */
body.uos-lesson-page .uos-lesson-count{margin:clamp(8px,.4rem + .5vw,14px) 0 2px;font-size:clamp(.75rem,.72rem + .15vw,.8125rem);font-weight:600;color:var(--pl-muted)}
body.uos-lesson-page .uos-lesson-count + .lesson-title{margin-top:0}

/* primary "Complete and continue" / "Next lesson" / "Finish course": the action on top, where it leads below, arrow on the right */
body.uos-lesson-page .uos-lesson-nav a.uos-lesson-next-primary{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:clamp(10px,2cqi,14px);row-gap:2px;text-align:left;background:var(--pl-primary);border-color:var(--pl-primary);color:var(--pl-on-accent)}
body.uos-lesson-page .uos-lesson-nav a.uos-lesson-next-primary strong{grid-column:1;font-size:clamp(.9375rem,1.4cqi + .6rem,1rem);font-weight:700;color:inherit}
body.uos-lesson-page .uos-lesson-nav a.uos-lesson-next-primary span{grid-column:1;font-size:clamp(.75rem,1cqi + .45rem,.8125rem);font-weight:500;color:inherit;overflow-wrap:anywhere}
body.uos-lesson-page .uos-lesson-nav a.uos-lesson-next-primary i{grid-column:2;grid-row:1 / span 2;font-size:clamp(.875rem,1.2cqi + .55rem,1rem)}
body.uos-lesson-page .uos-lesson-nav a.uos-lesson-next-primary:hover{border-color:var(--pl-primary);box-shadow:inset 0 0 0 999px rgba(0,0,0,.12)}
body.uos-lesson-page .uos-lesson-nav a.uos-lesson-next-primary.is-busy{opacity:.75;cursor:progress}

/* bottom tabs: text and spacing follow the width of the tab bar */
body.uos-lesson-page .player-bottom-tabs{container-type:inline-size;margin-bottom:clamp(18px,4cqi,30px)}
body.uos-lesson-page .player-bottom-tabs.ct-tabs-custom-one{gap:4px clamp(16px,6.6cqi,50px)!important}
body.uos-lesson-page .ct-tabs-custom-one button.nav-link{font-size:clamp(.875rem,1.2cqi + .55rem,.9375rem);min-height:24px;white-space:nowrap}
body.uos-lesson-page .ct-tabs-content{min-width:0}
body.uos-lesson-page .ct-tabs-content .tab-pane{overflow-wrap:break-word;min-width:0}
body.uos-lesson-page .uos-player-forum a{overflow-wrap:anywhere}

/* summary tab: attached files */
body.uos-lesson-page #summary-class-content .btn.p-1{white-space:normal;text-align:left;min-height:24px}

/* SCORM ("Interactive practice") list: the button drops under the text when the card is narrow */
body.uos-lesson-page .uos-scorm-tab-list{container-type:inline-size}
body.uos-lesson-page .uos-scorm-tab-list li{padding:clamp(10px,1.6cqi,12px) clamp(12px,1.9cqi,14px);gap:clamp(10px,1.9cqi,14px)}
body.uos-lesson-page .uos-scorm-tab-icon{font-size:clamp(18px,2.9cqi,22px);flex:0 0 auto}
body.uos-lesson-page .uos-scorm-tab-list h6{font-size:clamp(.9375rem,1.3cqi + .6rem,1rem);overflow-wrap:anywhere}
body.uos-lesson-page .uos-scorm-tab-list p{font-size:clamp(.875rem,1.2cqi + .55rem,.9375rem)}
body.uos-lesson-page .uos-scorm-tab-list .btn{flex:0 0 auto}
@container (max-width:460px){body.uos-lesson-page .uos-scorm-tab-list li{flex-wrap:wrap}body.uos-lesson-page .uos-scorm-tab-list .uos-scorm-tab-main{flex:1 1 240px}body.uos-lesson-page .uos-scorm-tab-list .btn{margin-left:auto}}
body.uos-lesson-page .uos-scorm-intro{font-size:.875rem}

/* Assignments tab */
body.uos-lesson-page #uos-assignments-content{container-type:inline-size}
body.uos-lesson-page .uos-asg-row{flex-wrap:wrap;gap:clamp(8px,1.6cqi,12px);border-bottom:1px solid var(--pl-card-border)}
body.uos-lesson-page .uos-asg-row > div:first-child{flex:1 1 220px}
body.uos-lesson-page .uos-asg-row .fw-bold{overflow-wrap:anywhere;font-size:clamp(.875rem,1.2cqi + .55rem,.9375rem)}
body.uos-lesson-page .uos-asg-meta{font-size:clamp(.75rem,1cqi + .4rem,.8125rem)}
body.uos-lesson-page .uos-asg-actions{gap:clamp(8px,1.3cqi,10px);flex:0 0 auto;margin-left:auto}
body.uos-lesson-page .uos-asg-state{font-size:clamp(.6875rem,1cqi + .3rem,.75rem);font-weight:700;border:1px solid currentColor;border-radius:999px;padding:3px clamp(8px,1.3cqi,10px);white-space:nowrap}

/* AI tutor & practice tab */
body.uos-lesson-page .uos-ai-pane{max-width:860px;container-type:inline-size}
body.uos-lesson-page .uos-ai-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
body.uos-lesson-page .uos-ai-actions .btn{min-height:32px;font-size:clamp(.8125rem,1cqi + .5rem,.875rem)}
body.uos-lesson-page .uos-ai-ask{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
body.uos-lesson-page .uos-ai-ask .form-control{flex:1 1 180px;min-width:0}
body.uos-lesson-page .uos-ai-ask .btn{flex:0 0 auto}
body.uos-lesson-page .uos-ai-labs{padding-left:18px}
body.uos-lesson-page .uos-ai-answer{background:var(--pl-card);border:1px solid var(--pl-card-border);border-radius:12px;padding:clamp(12px,1.8cqi,14px) clamp(12px,2cqi,16px);line-height:1.65;overflow-wrap:anywhere}
body.uos-lesson-page .uos-ai-answer img,body.uos-lesson-page .uos-ai-answer table{max-width:100%}

/* locked lesson panel (content drip / prerequisites) */
body.uos-lesson-page .uos-lock-panel{container-type:inline-size;border:1px dashed var(--pl-card-border);border-radius:16px;background:var(--pl-card)}
body.uos-lesson-page .uos-lock-icon{width:clamp(52px,10cqi,64px);height:clamp(52px,10cqi,64px);border-radius:50%;background:rgba(var(--pl-accent-rgb),.1);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;color:var(--pl-primary-dark)}
body.uos-lesson-page .uos-lock-icon i{font-size:clamp(20px,4cqi,26px)}
body.uos-lesson-page .uos-lock-panel h5{font-size:clamp(1rem,2.5cqi + .6rem,1.25rem);overflow-wrap:anywhere}
body.uos-lesson-page .uos-lock-text{max-width:520px;margin:0 auto;font-size:clamp(.875rem,1.4cqi + .5rem,.9375rem)}
body.uos-lesson-page .uos-lock-courses{gap:8px}
body.uos-lesson-page .uos-lock-panel .btn{white-space:normal;overflow-wrap:anywhere}

/* live class tab */
body.uos-lesson-page #live-class-content{width:auto;max-width:700px;container-type:inline-size;padding:0 clamp(12px,3cqi,20px)}
body.uos-lesson-page .live_class_note{max-width:min(300px,100%);font-size:.875rem;overflow-wrap:anywhere}
body.uos-lesson-page .live_class .btn_zoom{white-space:normal;min-height:40px}
body.uos-lesson-page .live_class h5{overflow-wrap:anywhere}

/* quiz */
body.uos-lesson-page .uos-quiz-clock{position:sticky;top:72px;z-index:99;max-width:100%}
body.uos-lesson-page .flip-clock-wrapper{margin:1em 0}
body.uos-lesson-page .uos-quiz-result{background-color:var(--pl-card)}
body.uos-lesson-page .card-header .row > [class*=col-]{min-width:0;overflow-wrap:anywhere}
body.uos-lesson-page .input-group{flex-wrap:wrap}
body.uos-lesson-page .input-group .form-control{min-width:0}
/* fill in the blanks: on a narrow card every blank gets its own row (number + field), so typed words stay readable */
body.uos-lesson-page .uos-lesson-stage .card-body{container-type:inline-size}
@container (max-width:560px){
body.uos-lesson-page .card-body .input-group:has(> .input-group-text){display:grid;grid-template-columns:auto minmax(0,1fr);row-gap:8px}
body.uos-lesson-page .card-body .input-group:has(> .input-group-text) > .input-group-text{border-radius:12px 0 0 12px!important;margin:0;justify-content:center;min-width:40px}
body.uos-lesson-page .card-body .input-group:has(> .input-group-text) > .form-control{border-radius:0 12px 12px 0!important;margin-left:-1px!important;width:auto}
body.uos-lesson-page .card-body .input-group:has(> .input-group-text) > div{grid-column:1/-1}
body.uos-lesson-page .card-body .input-group:has(> .input-group-text) u{display:inline-block;margin:0 .75rem 0 0!important}
}
/* answer options: a 24px control on phones (20px from tablet up), the label is part of the tap target */
body.uos-lesson-page .form-group:has(> input[type=radio],> input[type=checkbox]){display:flex;align-items:flex-start;gap:10px;margin:6px 0}
body.uos-lesson-page .form-group:has(> input[type=radio],> input[type=checkbox]) br{display:none}
body.uos-lesson-page .form-group:has(> select){display:flex;flex-direction:column;gap:6px;margin:6px 0}
body.uos-lesson-page .card-header .fw-bold > span{white-space:nowrap}
body.uos-lesson-page .form-group input[type=radio],body.uos-lesson-page .form-group input[type=checkbox]{width:clamp(20px,40px - 2.5vw,24px);height:clamp(20px,40px - 2.5vw,24px);flex:0 0 auto;margin:0;accent-color:var(--pl-primary);cursor:pointer}
body.uos-lesson-page .form-group label{overflow-wrap:anywhere;min-height:24px;display:block;flex:1 1 auto;min-width:0;line-height:1.5;padding-top:1px;cursor:pointer}
body.uos-lesson-page #quiz_answer_sheet .input-group .input-group-text{min-width:40px;justify-content:center}

/* ---------- Course content sidebar ---------- */
body.uos-lesson-page .course-playing-sidebar{container-type:inline-size;padding:clamp(18px,8.2cqi,30px) 0}
body.uos-lesson-page .course-playing-sidebar > .title{font-size:clamp(1.0625rem,3cqi + .55rem,1.25rem)!important;padding-bottom:clamp(16px,8.2cqi,30px);padding-left:clamp(12px,4cqi,20px);padding-right:clamp(12px,4cqi,20px);overflow-wrap:anywhere}
body.uos-lesson-page .custom-accordion{container-type:inline-size}
body.uos-lesson-page .custom-accordion .accordion-item .accordion-header .accordion-button{font-size:clamp(.875rem,2.2cqi + .5rem,1rem);line-height:1.5;padding:clamp(14px,5.4cqi,20px) clamp(14px,6cqi,22px)!important;gap:8px}
body.uos-lesson-page .custom-accordion .accordion-button > .d-flex{min-width:0;line-height:1.5!important;overflow-wrap:anywhere}
body.uos-lesson-page .custom-accordion .accordion-button > .d-flex > span{line-height:1.5}
body.uos-lesson-page .custom-accordion .accordion-button small.text-12px{font-size:clamp(.6875rem,1.6cqi + .3rem,.75rem)!important;line-height:1.4}
body.uos-lesson-page .custom-accordion .accordion-item .accordion-body{padding:clamp(10px,4cqi,15px) clamp(12px,5.4cqi,20px)}
body.uos-lesson-page .course-content-items{container-type:inline-size}
body.uos-lesson-page .course-content-items .item{padding:clamp(10px,4.9cqi,16px)}
body.uos-lesson-page .course-content-items .item a{font-size:clamp(.875rem,2.4cqi + .45rem,.9375rem);min-width:0}
body.uos-lesson-page .course-content-items .item a .uos-lesson-item-main{min-width:0;flex:1 1 auto;overflow-wrap:anywhere}
body.uos-lesson-page .course-content-items .item a .uos-lesson-item-dur{flex:0 0 auto;white-space:nowrap;padding-left:6px;font-size:clamp(.8125rem,2.4cqi + .4rem,.9375rem)}
body.uos-lesson-page .course-content-items .lesson-icon{font-size:clamp(.6875rem,2cqi + .35rem,.75rem)!important}
body.uos-lesson-page .course-content-items .item .checkbox,body.uos-lesson-page .course-content-items .item .custom-checkbox{flex:0 0 auto}
body.uos-lesson-page .course-content-items .item .fas{flex:0 0 auto}
body.uos-lesson-page .locked-section{padding:12px}
body.uos-lesson-page .locked-section .locked-card{padding:clamp(14px,5cqi,30px);background:var(--pl-card);border:1px solid var(--pl-card-border);border-radius:14px;box-shadow:0 2px 6px rgba(16,24,40,.06),0 12px 24px -12px rgba(16,24,40,.18);width:100%}
body.uos-lesson-page .locked-section .locked-card h6{font-size:clamp(.9375rem,2.6cqi + .5rem,1rem)}
body.uos-lesson-page .locked-card small{display:block;font-size:clamp(.75rem,1.4cqi + .45rem,.8125rem)}

/* ---------- Watch-time panel (video lessons) ---------- */
body.uos-lesson-page .uos-wg{container-type:inline-size;font-size:clamp(.75rem,1.2cqi + .5rem,.8125rem);background:var(--pl-card)}
body.uos-lesson-page .uos-wg .btn{flex:0 0 auto}
body.uos-lesson-page .uos-wg-box{background:var(--pl-card);max-width:min(480px,100%)}
body.uos-lesson-page .uos-wg-box h5{font-size:clamp(1rem,.9rem + .4vw,1.25rem)}

/* ---------- Dark theme: components that carried fixed light colours ---------- */
html[data-theme="dark"] body.uos-lesson-page .uos-scorm-tab-list li{background:var(--pl-card);border-color:var(--pl-card-border)}
html[data-theme="dark"] body.uos-lesson-page .uos-scorm-tab-list h6{color:var(--pl-ink)}
html[data-theme="dark"] body.uos-lesson-page .uos-scorm-tab-list p{color:var(--pl-muted)}
html[data-theme="dark"] body.uos-lesson-page .uos-scorm-tab-list .badge.bg-primary{background:var(--pl-primary)!important;color:#fff}
html[data-theme="dark"] body.uos-lesson-page .uos-lesson-nav a{background:var(--pl-card);border-color:var(--pl-card-border);color:var(--pl-ink)}
html[data-theme="dark"] body.uos-lesson-page .uos-lesson-nav a.uos-lesson-next-primary{background:var(--pl-primary);border-color:var(--pl-primary);color:var(--pl-on-accent)}
html[data-theme="dark"] body.uos-lesson-page .locked-card i{color:var(--pl-ink)}
html[data-theme="dark"] body.uos-lesson-page .live_class{color:var(--pl-text)}
html[data-theme="dark"] body.uos-lesson-page .live_class_note{background:rgba(255,255,255,.06);border-color:var(--pl-card-border);color:var(--pl-text)}
html[data-theme="dark"] body.uos-lesson-page .uos-wg-box label{border-color:var(--pl-card-border)}
html[data-theme="dark"] body.uos-lesson-page .flip-clock-divider .flip-clock-label{color:var(--pl-muted)}
html[data-theme="dark"] body.uos-lesson-page .card :is(.text-success){color:#4ade80!important}
html[data-theme="dark"] body.uos-lesson-page .card :is(.text-danger){color:#ff8a80!important}
html[data-theme="dark"] body.uos-lesson-page .btn-dark{background:#f5f6f8;border-color:#f5f6f8;color:#0b1220}
html[data-theme="dark"] body.uos-lesson-page .btn-dark.text-white{color:#0b1220!important}
html[data-theme="dark"] body.uos-lesson-page .btn-outline-primary{color:#8cb4ff;border-color:#8cb4ff}
html[data-theme="dark"] body.uos-lesson-page .btn-outline-primary:is(:hover,:active,.active){color:#0b1220;background:#8cb4ff;border-color:#8cb4ff}
html[data-theme="dark"] body.uos-lesson-page .uos-asg-state.is-success{color:#4ade80!important}
html[data-theme="dark"] body.uos-lesson-page .uos-asg-state.is-danger{color:#ff8a80!important}
html[data-theme="dark"] body.uos-lesson-page .uos-asg-state.is-warning{color:#fbbf24!important}
html[data-theme="dark"] body.uos-lesson-page .uos-asg-state:is(.is-info,.is-primary){color:#8cb4ff!important}
html[data-theme="dark"] body.uos-lesson-page .uos-asg-state:not(.is-success,.is-danger,.is-warning,.is-info,.is-primary){color:#c9d0db!important}
html[data-theme="dark"] body.uos-lesson-page .card{color:var(--pl-text)}
html[data-theme="dark"] body.uos-lesson-page .card-header{background:rgba(255,255,255,.04);border-color:var(--pl-card-border)}
html[data-theme="dark"] body.uos-lesson-page .input-group-text{background:rgba(255,255,255,.06);color:var(--pl-text);border-color:var(--uos-input-border)}
html[data-theme="dark"] body.uos-lesson-page .form-group label:not(label.radio):before{border-color:#8cb4ff}
html[data-theme="dark"] body.uos-lesson-page .form-group input:checked + label:not(label.radio):after{border-color:#8cb4ff}

/* (The proctoring consent gate, views/frontend/default-new/uos_proctor_gate.php, carries its own fluid sizes.) */

/* ---------- Instructor page: video check questions (site shell, /lesson_watch/checks) ---------- */
.uos-lc-page .uos-card{container-type:inline-size}
.uos-lc-page .uos-lc-title{font-size:clamp(1.125rem,1.8cqi + .75rem,1.375rem)!important;overflow-wrap:anywhere}
.uos-lc-page .uos-lc-lesson{font-size:clamp(.9375rem,1cqi + .6rem,1rem)!important;overflow-wrap:anywhere;min-width:0}
.uos-lc-page .uos-lc-meta{font-size:clamp(.75rem,1cqi + .4rem,.8125rem)!important}
.uos-lc-page .uos-lc-course{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px;background:var(--uos-surface)}
.uos-lc-page .uos-lc-course strong{overflow-wrap:anywhere;min-width:0}
.uos-lc-page .uos-input{min-width:0;max-width:100%}
.uos-lc-page input[type=radio],.uos-lc-page input[type=checkbox]{width:clamp(20px,40px - 2.5vw,24px);height:clamp(20px,40px - 2.5vw,24px);flex:0 0 auto;margin:0;accent-color:var(--uos-accent,#2458ff)}
