/* Compact lesson controls: title/actions first, tabs/reference second. */
body:has(.workspace){height:100dvh;display:flex;flex-direction:column}
body:has(.workspace)>#header,body:has(.workspace)>#environment{flex:none}
body:has(.workspace)>#main{flex:1;min-height:0}
.workspace{height:100%;min-height:0}
.lesson-area{padding:12px 24px 10px;gap:8px}
.lesson-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px 14px;flex:none;min-width:0}
.lesson-header .lesson-heading{flex:1 1 340px;min-width:0;align-items:center}
.lesson-header .chapter-title-row{gap:3px 12px}
.lesson-header h1{margin:0;line-height:1.25}
.lesson-actions{flex:0 0 auto;align-self:center;margin:0}
.lesson-actions .row{gap:6px}
.lesson-header button,.lesson-header a.small{font-size:12px;line-height:1.25;min-height:34px;padding:7px 10px}
.lesson-actions [data-action="bookmark"],.lesson-actions [data-action="outline"]{min-width:34px;padding-inline:8px}
.lesson-secondary{display:flex;flex:1 0 100%;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 12px;min-width:0}
.lesson-secondary .lesson-tabs{flex:1 1 520px;gap:6px;min-width:0}
.lesson-secondary .crumb{flex:0 1 auto;max-width:190px;min-width:0;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;font-size:10px;line-height:1.3}
.lesson-tabs #screenCounter{font-size:11px;white-space:nowrap;margin-left:2px}
.lesson-area .lesson-footer{flex:none}
/* Leave the saved review and its question close to the top navigation. */
#main.container:has(>.exam-view){padding-top:8px}
.exam-view .exam-heading{margin-bottom:10px}
.answer-course-links{font-size:12px;line-height:1.5;margin:9px 0 0!important}
.answer-course-links a{color:#087f83;text-underline-offset:2px;overflow-wrap:anywhere}
@media(max-width:1100px){.lesson-area{padding:12px 20px 10px}}
@media(max-width:900px){
 .lesson-area{padding:10px 12px 8px;gap:7px}
 .lesson-header{gap:6px 12px}
 .lesson-header .lesson-heading{flex-basis:320px}
 .lesson-actions .row{gap:4px}
 .lesson-header button,.lesson-header a.small{padding:7px 8px}
 .lesson-secondary .crumb{max-width:155px}
}
@media(max-width:700px){
 .lesson-header .lesson-heading{flex-basis:100%}
 .lesson-actions{margin-left:0}
 .lesson-secondary .crumb{display:none}
 .lesson-secondary .lesson-tabs{flex-basis:100%;gap:5px}
 .lesson-header .chapter-study-time{font-size:11px}
 .lesson-header button,.lesson-header a.small{font-size:11px;min-height:34px;padding:7px 8px}
 .lesson-tabs #screenCounter{font-size:10px}
}

/* Ordinary copy/drag deterrence; controls and personal writing stay editable. */
[data-training-protected],[data-training-protected] *,.protected-figure,.protected-figure *,.figure-guide,.figure-guide *{
 -webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none;
}
[data-training-protected] input,[data-training-protected] textarea,[data-training-protected] [contenteditable="true"]{
 -webkit-user-select:text!important;user-select:text!important;-webkit-touch-callout:default;
}
[data-training-protected] img,.protected-figure img{-webkit-user-drag:none}
/* Professional learning sequence: situation, objectives, targeted prerequisites. */
.reader-content .learning-introduction{color:var(--text,#203544)}
.reader-content .learning-prerequisites{font-size:.9em;line-height:1.5;border-left:3px solid #4bafa5;padding-left:.75em}
.reader-content .learning-prerequisites a{white-space:normal;overflow-wrap:anywhere}
.seo-course-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.seo-course-links a{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid #dce6ec;border-radius:12px;text-decoration:none;color:#193449;background:white}.seo-course-links a:hover{border-color:#137d77}.seo-course-links span{font-size:.9rem;color:#526977}@media(max-width:650px){.seo-course-links{grid-template-columns:1fr}}
.public-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}.public-contact-grid .contact-channel{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.contact-channel h2{font-size:22px;margin:6px 0;line-height:1.3}.contact-channel .button{margin-top:auto;overflow-wrap:anywhere;max-width:100%;white-space:normal}.about-introduction{font-size:1.15rem;line-height:1.7}.about-method{padding-left:24px}.about-method li{padding-left:4px;margin:10px 0}@media(max-width:700px){.public-contact-grid{grid-template-columns:1fr}.contact-channel .button{width:100%;font-size:14px}}
