/* Learner course cards and study reader. Scoped to preserve other portal pages. */
.hsc-course-library.course-library-v519 {
  grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));
  gap:24px; max-width:1240px; margin:24px auto 36px;
}
.hsc-course-library .course-card-v519 {
  min-width:0; border:1px solid #dce6ed; border-radius:20px;
  background:#fff; box-shadow:0 6px 24px rgba(15,54,80,.06); overflow:hidden;
}
.hsc-course-library .course-card-top-v519 {
  padding:20px 24px; min-height:96px; gap:16px;
  background:linear-gradient(120deg,#eef8fc,#f7fafc); border-bottom:1px solid #dfebf1;
}
.hsc-course-library .course-logo-v519 {min-width:0;gap:14px;}
.hsc-course-library .course-logo-v519 img {width:64px;height:54px;}
.hsc-course-library .course-logo-v519 span {font-size:13px;overflow-wrap:anywhere;}
.hsc-course-library .assigned-badge-v519 {font-size:12px;padding:7px 10px;white-space:nowrap;}
.hsc-course-library .course-card-body-v519 {padding:24px;gap:0;}
.hsc-course-library .course-code-v519 {color:#087e9b;font-size:11px;letter-spacing:.1em;margin-bottom:10px;}
.hsc-course-library .course-card-body-v519 h2 {font-size:22px;line-height:1.4;letter-spacing:-.4px;color:#12354c;margin:0 0 12px;overflow-wrap:anywhere;}
.hsc-course-library .course-card-body-v519 p {font-size:14px;line-height:1.7;color:#526b7c;margin:0 0 20px;}
.hsc-course-library .course-meta-v519 {gap:10px 18px;flex-wrap:wrap;font-size:12px;padding:14px 0;border-top:1px solid #edf1f5;border-bottom:1px solid #edf1f5;margin:0 0 22px;}
.hsc-course-library .course-progress-head-v519 {margin-top:auto;font-size:12px;color:#536b7a;}
.hsc-course-library .course-progress-head-v519 strong {font-size:16px;color:#12354c;}
.hsc-course-library .course-progress-v519 {height:8px;background:#eaf0f4;margin:10px 0 22px;border-radius:8px;}
.hsc-course-library .course-progress-v519 span {background:linear-gradient(90deg,#087f9b,#19acbf);border-radius:8px;}
.hsc-course-library .course-open-v519 {height:auto;min-height:46px;padding:12px 18px;border-radius:10px;background:#e94c0c;color:#fff;gap:12px;font-size:14px;}
.hsc-course-library .course-open-v519:hover {background:#c83d08;}
.hsc-course-library a:focus-visible,.hsc-study-shell a:focus-visible,.hsc-study-shell button:focus-visible {outline:3px solid #087f9b;outline-offset:4px;}
.minimal-lms-v516 .hsc-study-shell.course-shell {grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:20px;align-items:start;}
.hsc-study-shell .course-menu {padding:20px;border:1px solid #dce6ed;border-radius:16px;background:#f6fafc;min-width:0;}
.minimal-lms-v516 .hsc-study-shell .course-menu h3 {font-size:15px!important;line-height:1.6;color:#173b52;margin:0 0 16px;overflow-wrap:anywhere;}
.hsc-study-shell .lesson-link {border-radius:9px;min-height:44px;}
.minimal-lms-v516 .hsc-study-shell .side-note {display:block!important;margin-top:18px;padding:14px;background:#eaf3f8;border:0;color:#436174;font-size:12px;line-height:1.6;overflow-wrap:anywhere;}
.hsc-study-shell .side-note strong {font-size:12px;color:#133d56;}
.hsc-study-shell .protected-note {font-size:11px;line-height:1.6;margin-top:20px;color:#597383;}
.hsc-study-shell .lesson-main {min-width:0;border:1px solid #dce6ed;border-radius:18px;box-shadow:0 6px 24px rgba(15,54,80,.05);}
.minimal-lms-v516 .hsc-study-shell .lesson-head {padding:22px 24px;border:0;border-bottom:1px solid #e2eaf0;border-radius:0;gap:16px;flex-wrap:wrap;}
.minimal-lms-v516 .hsc-study-shell .lesson-head h1 {font-size:clamp(19px,2vw,26px)!important;line-height:1.4;overflow-wrap:anywhere;}
.hsc-study-shell .lesson-head .eyebrow {font-size:11px;line-height:1.5;letter-spacing:.07em;color:#087e9b;margin-bottom:8px;}
.hsc-study-shell .lesson-content {padding:16px;border-radius:0;}
.hsc-study-shell .document-viewer {box-shadow:none;border-radius:12px;min-width:0;}
.minimal-lms-v516 .hsc-study-shell .document-toolbar {padding:14px 16px;min-height:64px;gap:12px;flex-wrap:wrap;background:#f0f6fa;color:#23465c;}
.hsc-study-shell .document-title {min-width:0;flex:1 1 200px;}
.hsc-study-shell .document-title strong {font-size:13px;line-height:1.5;overflow-wrap:anywhere;white-space:normal;}
.hsc-study-shell .document-title span {font-size:11px;color:#607989;}
.hsc-study-shell .viewer-hint {max-width:240px;line-height:1.5;}
.hsc-study-shell .powerpoint-stage {height:auto;aspect-ratio:16/10;min-height:320px;max-height:none;background:#132b3d;}
.hsc-study-shell .powerpoint-stage iframe {width:100%;height:100%;min-height:320px;}
.hsc-study-shell .document-stage {padding:16px;background:#e8eef3;}
.hsc-study-shell .document-stage canvas {max-width:100%;height:auto;}
.hsc-study-shell .document-nav {flex-wrap:wrap;gap:8px;}
.hsc-study-shell .doc-btn {min-height:42px;}
.hsc-study-shell .document-security {padding:12px 16px;line-height:1.6;background:#f7fafc;}
.hsc-study-shell .lesson-footer {padding:18px 24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;border-top:1px solid #e2eaf0;}
@media(min-width:1000px) {
  .hsc-course-library .course-card-v519:only-child {display:grid!important;grid-template-columns:220px minmax(0,1fr);}
  .hsc-course-library .course-card-v519:only-child .course-card-top-v519 {flex-direction:column;justify-content:center;align-items:center;border-bottom:0;border-right:1px solid #dfebf1;padding:28px 20px;}
  .hsc-course-library .course-card-v519:only-child .course-logo-v519 {flex-direction:column;text-align:center;}
  .hsc-course-library .course-card-v519:only-child .course-logo-v519 img {width:110px;height:85px;}
  .hsc-course-library .course-card-v519:only-child .course-open-v519 {align-self:flex-start;min-width:200px;}
}
@media(max-width:1000px) {
  .minimal-lms-v516 .hsc-study-shell.course-shell {grid-template-columns:minmax(0,1fr);}
  .hsc-study-shell .course-menu {display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;padding:14px 18px;}
  .minimal-lms-v516 .hsc-study-shell .course-menu h3 {flex:1 1 240px;margin:0;}
  .minimal-lms-v516 .hsc-study-shell .side-note {width:100%;margin-top:0!important;}
  .hsc-study-shell .protected-note {margin-top:0;}
}
@media(max-width:600px) {
  .hsc-course-library.course-library-v519 {gap:18px;margin-top:18px;}
  .hsc-course-library .course-card-top-v519,.hsc-course-library .course-card-body-v519 {padding:18px;}
  .hsc-course-library .course-card-body-v519 h2 {font-size:19px;}
  .hsc-course-library .course-logo-v519 img {width:48px;height:44px;}
  .hsc-course-library .course-card-top-v519 {gap:8px;flex-wrap:wrap;}
  .hsc-study-shell .lesson-content {padding:8px;}
  .minimal-lms-v516 .hsc-study-shell .lesson-head {padding:18px;}
  .hsc-study-shell .powerpoint-stage {aspect-ratio:auto;height:56vh;min-height:300px;}
  .hsc-study-shell .powerpoint-stage iframe {min-height:300px;}
  .hsc-study-shell .document-stage {padding:8px;}
  .hsc-study-shell .lesson-footer {padding:16px;}
}
