.nclms-course-shell{max-width:1100px;margin:28px auto;color:#222}.nclms-course-summary,.nclms-curriculum-section,.nclms-course-card,.nclms-student-widget{background:#fff;border:1px solid #e1e5ee;border-radius:12px;padding:22px;margin:16px 0;box-shadow:0 3px 14px rgba(20,35,70,.04)}.nclms-course-image{max-width:100%;height:auto;border-radius:10px}.nclms-button{display:inline-block;background:#3659e3;color:#fff!important;border:0;border-radius:7px;padding:11px 18px;font-weight:600;text-decoration:none!important;cursor:pointer}.nclms-button:hover{background:#2344c5}.nclms-button:disabled{opacity:.6;cursor:wait}.nclms-success{color:#167448}.nclms-notice{padding:12px;background:#fff8e5;border-left:4px solid #e2a400}.nclms-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin:24px 0}.nclms-course-card{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.nclms-course-card img{width:100%;height:auto;border-radius:8px}.nclms-course-card h3{margin:0}.nclms-curriculum-section h3{margin-top:0}.nclms-lesson{border-top:1px solid #edf0f5;padding:18px 0}.nclms-lesson h4{margin:0 0 12px}.nclms-lesson-message,.nclms-payment-message{margin-left:10px;font-size:14px}.nclms-quiz-form fieldset{border:1px solid #dce2ed;border-radius:8px;padding:16px;margin:16px 0}.nclms-quiz-form legend{font-weight:700;padding:0 5px}.nclms-quiz-option{display:block;margin:10px 0}.nclms-quiz-option input{margin-right:8px}.nclms-quiz-result{padding:12px;border-radius:8px;background:#eef3ff}.nclms-student-dashboard{max-width:1100px;margin:24px auto}.nclms-student-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.nclms-student-widget{margin:0}.nclms-student-widget h3{margin-top:0}@media(max-width:600px){.nclms-course-summary,.nclms-curriculum-section,.nclms-course-card{padding:15px}.nclms-lesson-message{display:block;margin:8px 0}}

/* Student dashboard — refreshed visual design */
.nclms-dash-wrap{--nclms-ink:#17233f;--nclms-muted:#71809a;--nclms-line:#e8edf5;--nclms-blue:#3c5be8;--nclms-violet:#7555d9;max-width:1240px;margin:30px auto 56px;padding:0 18px;color:var(--nclms-ink);font-family:inherit}
.nclms-dash-wrap *{box-sizing:border-box}
.nclms-dash-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:235px;overflow:hidden;padding:34px 40px;border-radius:24px;background:linear-gradient(115deg,#172554 0%,#263d85 48%,#5b50d6 100%);color:#fff;box-shadow:0 18px 45px rgba(43,58,145,.18)}
.nclms-dash-hero-copy{position:relative;z-index:2;max-width:650px}.nclms-dash-eyebrow,.nclms-dash-kicker{display:block;font-size:10px;letter-spacing:1.8px;font-weight:800;color:#9fb5ff}.nclms-dash-hero h1{color:#fff!important;font-size:clamp(27px,3vw,38px);line-height:1.15;margin:12px 0 10px;font-weight:800}.nclms-dash-hero h1 span{color:#ffd77a}.nclms-dash-hero p{color:#dce5ff;font-size:15px;margin:0 0 22px;max-width:550px}.nclms-dash-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:12px 18px;border-radius:10px;background:#3c5be8;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:750;transition:transform .18s,box-shadow .18s}.nclms-dash-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(30,50,130,.2);color:#fff!important}.nclms-dash-btn-light{background:#fff;color:#23356f!important}.nclms-dash-btn-light:hover{background:#f2f5ff;color:#23356f!important}
.nclms-dash-hero-art{position:absolute;right:20px;top:0;width:340px;height:100%;opacity:.95}.nclms-orbit{position:absolute;display:block;border:1px solid rgba(255,255,255,.22);border-radius:50%;transform:rotate(-25deg)}.nclms-orbit-one{width:280px;height:190px;right:0;top:28px}.nclms-orbit-two{width:230px;height:145px;right:28px;top:49px;border-color:rgba(255,215,122,.48)}.nclms-dash-cap{position:absolute;right:98px;top:64px;display:grid;place-items:center;width:100px;height:100px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.24),rgba(255,255,255,.07));border:1px solid rgba(255,255,255,.3);font-size:50px;color:#ffe09a;transform:rotate(9deg);box-shadow:0 20px 40px rgba(10,20,70,.15)}.nclms-dash-spark{position:absolute;color:#ffe09a}.spark-one{right:43px;top:42px;font-size:30px}.spark-two{right:226px;bottom:36px;font-size:22px;color:#fff}
.nclms-dash-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.nclms-dash-stat{display:flex;align-items:center;gap:14px;min-width:0;padding:20px 18px;background:#fff;border:1px solid var(--nclms-line);border-radius:17px;box-shadow:0 5px 18px rgba(27,44,85,.035)}.nclms-dash-stat-icon{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:14px;font-size:22px;font-weight:800}.icon-blue{background:#eaf0ff;color:#3c5be8}.icon-violet{background:#f0eaff;color:#7555d9}.icon-amber{background:#fff3d9;color:#bd8110}.icon-green{background:#e2f8ef;color:#15966b}.nclms-dash-stat-label,.nclms-dash-stat small{display:block;color:var(--nclms-muted);font-size:11px}.nclms-dash-stat strong{display:block;font-size:26px;line-height:1.15;margin:3px 0;font-weight:800;color:var(--nclms-ink)}
.nclms-dash-main-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:20px;align-items:start}.nclms-dash-panel{min-width:0;background:#fff;border:1px solid var(--nclms-line);border-radius:19px;padding:24px;box-shadow:0 5px 22px rgba(27,44,85,.035)}.nclms-dash-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.nclms-dash-panel-heading h2,.nclms-dash-shortcuts h2{font-size:22px;line-height:1.25;margin:5px 0 0;color:var(--nclms-ink);font-weight:800}.nclms-dash-panel-heading .nclms-dash-kicker,.nclms-dash-shortcuts .nclms-dash-kicker{color:#7c8ab0}.nclms-dash-panel-heading>a{font-size:12px;font-weight:750;text-decoration:none;color:var(--nclms-blue);white-space:nowrap}.nclms-dash-course-list{display:grid;gap:14px}.nclms-dash-course-card{display:grid;grid-template-columns:140px minmax(0,1fr);gap:17px;padding:13px;border:1px solid #edf0f7;border-radius:15px;transition:border-color .18s,transform .18s}.nclms-dash-course-card:hover{border-color:#cbd5ff;transform:translateY(-1px)}.nclms-dash-course-image{display:block;min-height:130px;border-radius:11px;overflow:hidden;background:linear-gradient(135deg,#e4ebff,#f1eaff);text-decoration:none}.nclms-dash-course-image img{display:block;width:100%;height:100%;min-height:130px;object-fit:cover}.nclms-dash-course-placeholder{display:grid;place-items:center;height:100%;min-height:130px;font-size:44px;color:#5868d9}.nclms-dash-course-info{min-width:0;padding:3px 2px}.nclms-dash-course-tag{font-size:9px;letter-spacing:1.2px;font-weight:800;color:#687ce5}.nclms-dash-course-info h3{font-size:17px;line-height:1.3;margin:6px 0 5px;font-weight:800}.nclms-dash-course-info h3 a{color:var(--nclms-ink);text-decoration:none}.nclms-dash-course-info p{font-size:12px;line-height:1.5;color:var(--nclms-muted);margin:0 0 12px}.nclms-dash-progress-row{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--nclms-muted);margin-bottom:6px}.nclms-dash-progress-row strong{color:#3e56d5}.nclms-dash-progress-track{height:6px;border-radius:99px;background:#edf0fa;overflow:hidden}.nclms-dash-progress-track span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#4967ee,#8d68ed)}.nclms-dash-continue{display:inline-flex;gap:8px;align-items:center;margin-top:12px;color:var(--nclms-blue);font-size:12px;font-weight:800;text-decoration:none}
.nclms-dash-side-column{display:grid;gap:18px}.nclms-dash-shortcuts h2{margin-bottom:18px}.nclms-dash-shortcut{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #edf0f6;text-decoration:none!important}.nclms-dash-shortcut>span:nth-child(2){display:grid;gap:3px;min-width:0;flex:1}.nclms-dash-shortcut strong{font-size:12px;color:var(--nclms-ink)}.nclms-dash-shortcut small{font-size:10px;color:var(--nclms-muted)}.nclms-dash-shortcut>b{font-size:17px;color:#8591b0}.shortcut-icon{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:12px;font-size:19px;font-weight:800}.shortcut-blue{background:#eaf0ff;color:#3c5be8}.shortcut-gold{background:#fff3d9;color:#bd8110}.shortcut-violet{background:#f0eaff;color:#7555d9}.nclms-dash-trophy{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#fff2d6;color:#bd8110;font-size:24px}.nclms-dash-muted{font-size:12px;line-height:1.65;color:var(--nclms-muted);margin:0}.nclms-dash-cert-list{list-style:none;margin:0;padding:0}.nclms-dash-cert-list li{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #edf0f6}.nclms-dash-cert-medal{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:11px;background:#fff3d9;color:#bd8110}.nclms-dash-cert-list li>span:nth-child(2){display:grid;gap:3px;min-width:0;flex:1}.nclms-dash-cert-list strong{font-size:11px;color:var(--nclms-ink)}.nclms-dash-cert-list small{font-size:10px;color:var(--nclms-muted);overflow-wrap:anywhere}.nclms-dash-cert-list a{font-size:11px;font-weight:800;color:var(--nclms-blue);text-decoration:none}.nclms-dash-empty{text-align:center;padding:36px 16px 28px}.nclms-dash-empty-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border-radius:20px;background:#edf1ff;color:#4c61db;font-size:30px}.nclms-dash-empty h3{margin:0 0 7px;font-size:18px;color:var(--nclms-ink)}.nclms-dash-empty p{max-width:380px;margin:0 auto 18px;color:var(--nclms-muted);font-size:13px;line-height:1.6}.nclms-dash-results{margin-top:20px}.nclms-dash-table-wrap{overflow-x:auto}.nclms-dash-table{width:100%;border-collapse:collapse;font-size:12px}.nclms-dash-table th,.nclms-dash-table td{padding:12px;text-align:left;border-bottom:1px solid #edf0f6}.nclms-dash-table th{font-size:10px;letter-spacing:.5px;color:var(--nclms-muted);text-transform:uppercase}.nclms-dash-status{display:inline-block;padding:4px 8px;border-radius:99px;font-size:10px;font-weight:800}.is-passed{background:#e1f8ee;color:#16845d}.is-pending{background:#fff1d8;color:#9b6b0b}.nclms-dash-footer{display:flex;align-items:center;gap:10px;margin-top:20px;padding:18px 20px;border-radius:15px;background:#f0f3ff;color:#657294;font-size:12px}.nclms-dash-footer-mark{color:#5b61df;font-size:22px}.nclms-dash-footer a{margin-left:auto;color:#3c55d8;font-weight:800;text-decoration:none;white-space:nowrap}.nclms-dash-login{max-width:560px;margin:50px auto;padding:36px;text-align:center;background:#fff;border:1px solid #e8edf5;border-radius:20px;box-shadow:0 10px 35px rgba(27,44,85,.07)}.nclms-dash-login-icon{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 15px;background:#edf1ff;color:#3c5be8;border-radius:17px;font-size:25px}.nclms-dash-login h2{font-size:24px;margin:0 0 8px}.nclms-dash-login p{color:#71809a;font-size:14px;margin:0 0 20px}
@media(max-width:950px){.nclms-dash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.nclms-dash-main-grid{grid-template-columns:1fr}.nclms-dash-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.nclms-dash-hero-art{right:-65px;opacity:.65}}
@media(max-width:600px){.nclms-dash-wrap{padding:0 10px;margin:16px auto 32px}.nclms-dash-hero{padding:26px 22px;min-height:225px;border-radius:18px}.nclms-dash-hero-copy{max-width:100%}.nclms-dash-hero h1{font-size:27px;max-width:290px}.nclms-dash-hero p{font-size:13px;max-width:260px}.nclms-dash-hero-art{right:-150px;opacity:.28}.nclms-dash-stats{gap:9px;margin:12px 0}.nclms-dash-stat{padding:13px 11px;gap:9px;border-radius:13px}.nclms-dash-stat-icon{flex-basis:36px;height:36px;border-radius:11px;font-size:18px}.nclms-dash-stat strong{font-size:22px}.nclms-dash-stat-label,.nclms-dash-stat small{font-size:9px}.nclms-dash-panel{padding:17px;border-radius:15px}.nclms-dash-panel-heading h2,.nclms-dash-shortcuts h2{font-size:19px}.nclms-dash-course-card{grid-template-columns:90px minmax(0,1fr);gap:11px;padding:9px}.nclms-dash-course-image,.nclms-dash-course-image img,.nclms-dash-course-placeholder{min-height:105px}.nclms-dash-course-info h3{font-size:14px}.nclms-dash-course-info p{font-size:11px;margin-bottom:9px}.nclms-dash-side-column{grid-template-columns:1fr}.nclms-dash-footer{flex-wrap:wrap;padding:14px}.nclms-dash-footer a{margin-left:0;width:100%}.nclms-dash-login{margin:25px 12px;padding:26px 20px}}
/* Nerold LMS premium dashboard v0.3.3 */
.nclms-premium-dashboard{--npl-ink:#1e1942;--npl-muted:#817e9b;--npl-line:#eeecf7;--npl-purple:#6b35e8;--npl-purple2:#9b4dff;display:grid;grid-template-columns:220px minmax(0,1fr);gap:0;width:100%;max-width:1500px;margin:24px auto 42px;background:#f8f7fc;border:1px solid #efedf7;border-radius:24px;overflow:hidden;color:var(--npl-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 24px 80px rgba(47,30,105,.10)}
.nclms-premium-dashboard *{box-sizing:border-box}.nclms-premium-dashboard a{text-decoration:none!important}.nclms-premium-sidebar{display:flex;flex-direction:column;min-width:0;padding:27px 16px 20px;background:#fff;border-right:1px solid #efedf7}.nclms-premium-brand{display:flex;align-items:center;gap:10px;padding:0 7px 32px;color:#211849!important;font-size:14px;font-weight:850;line-height:1.15;overflow-wrap:anywhere}.nclms-premium-brand-mark{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#6a2fe5,#a04dff);color:#fff;font-size:22px;box-shadow:0 7px 18px #8b4bdf40}.nclms-premium-brand small{display:block;margin-top:5px;color:#9993b2;font-size:8px;letter-spacing:1.5px;font-weight:800}.nclms-premium-nav-label{padding:0 9px 11px;color:#a09bb8;font-size:9px;letter-spacing:1.6px;font-weight:850}.nclms-premium-nav{display:grid;gap:5px}.nclms-premium-nav a,.nclms-premium-sidebar-bottom a{display:flex;align-items:center;gap:10px;min-height:41px;padding:10px;border-radius:11px;color:#77728f!important;font-size:12px;font-weight:700;transition:background .18s,color .18s}.nclms-premium-nav a>span,.nclms-premium-sidebar-bottom a>span{display:grid;place-items:center;width:19px;font-size:17px}.nclms-premium-nav a b{margin-left:auto;padding:2px 6px;border-radius:20px;background:#f1edff;color:#7742df;font-size:9px}.nclms-premium-nav a:hover,.nclms-premium-sidebar-bottom a:hover{background:#f7f3ff;color:#6b35e8!important}.nclms-premium-nav a.is-active{background:linear-gradient(100deg,#f0e8ff,#f8f3ff);color:#6b35e8!important;box-shadow:inset 3px 0 #7b3eed}.nclms-premium-sidebar-bottom{display:grid;gap:4px;margin-top:auto;padding-top:34px}.nclms-premium-sidebar-bottom a:last-child{color:#d84e72!important}.nclms-premium-sidebar-note{display:grid;gap:6px;margin-top:22px;padding:14px;border:1px solid #eee7ff;border-radius:15px;background:linear-gradient(145deg,#faf7ff,#f4efff)}.nclms-premium-sidebar-note>span{color:#8a4ce9;font-size:18px}.nclms-premium-sidebar-note strong{font-size:11px}.nclms-premium-sidebar-note small{color:#8c86a6;font-size:10px;line-height:1.5}
.nclms-premium-main{min-width:0;padding:24px;background:#faf9fd}.nclms-premium-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.nclms-premium-search{display:flex;align-items:center;gap:10px;width:min(470px,60%);height:43px;padding:0 14px;border:1px solid #eeebf6;border-radius:12px;background:#fff;box-shadow:0 4px 12px #36235d05}.nclms-premium-search>span{color:#8e88a9;font-size:24px;line-height:1}.nclms-premium-search input{width:100%;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:#30264e;font:inherit;font-size:12px}.nclms-premium-search input::placeholder{color:#aaa5bd}.nclms-premium-user{display:flex;align-items:center;gap:10px;min-width:0}.nclms-premium-level{padding:7px 10px;border-radius:9px;background:#f0eaff;color:#7a42df;font-size:10px;font-weight:800;white-space:nowrap}.nclms-premium-avatar{display:grid;place-items:center;flex:0 0 38px;height:38px;border:2px solid #fff;border-radius:50%;background:linear-gradient(135deg,#c8a4ff,#6d3de4);color:#fff;font-size:14px;font-weight:850;box-shadow:0 0 0 1px #e9e1fb}.nclms-premium-user-name{display:grid;gap:3px;min-width:0}.nclms-premium-user-name strong{max-width:150px;overflow:hidden;color:#332950;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.nclms-premium-user-name small{color:#9a95af;font-size:9px}
.nclms-premium-welcome{position:relative;display:flex;align-items:center;min-height:205px;overflow:hidden;padding:30px 32px;border-radius:20px;background:linear-gradient(112deg,#5822ce 0%,#7c36ed 55%,#a34cf5 100%);box-shadow:0 14px 32px #753be52b;color:#fff}.nclms-premium-welcome:after{position:absolute;right:-65px;top:-120px;width:350px;height:350px;border:1px solid #ffffff24;border-radius:50%;content:"";box-shadow:0 0 0 28px #ffffff08,0 0 0 58px #ffffff06}.nclms-premium-welcome-copy{position:relative;z-index:2;max-width:65%}.nclms-premium-overline{display:block;color:#e2caff;font-size:9px;font-weight:850;letter-spacing:1.8px}.nclms-premium-welcome h1{margin:12px 0 9px;color:#fff!important;font-size:clamp(23px,2.3vw,34px);font-weight:850;letter-spacing:-.8px;line-height:1.15}.nclms-premium-welcome h1 span{color:#ffdc88}.nclms-premium-welcome p{max-width:470px;margin:0 0 20px;color:#f0e5ff;font-size:12px;line-height:1.65}.nclms-premium-cta{display:inline-flex;align-items:center;gap:12px;padding:11px 15px;border-radius:10px;background:#fff;color:#612bd0!important;font-size:11px;font-weight:850;box-shadow:0 6px 18px #39109a26;transition:transform .18s,box-shadow .18s}.nclms-premium-cta:hover{transform:translateY(-2px);box-shadow:0 10px 22px #39109a35}.nclms-premium-cta span{font-size:15px}.nclms-premium-welcome-art{position:absolute;right:30px;top:0;width:245px;height:100%;pointer-events:none}.nclms-premium-art-orbit{position:absolute;top:34px;right:8px;width:180px;height:130px;border:1px solid #ffffff45;border-radius:50%;transform:rotate(-28deg)}.nclms-premium-art-cap{position:absolute;top:52px;right:57px;display:grid;place-items:center;width:92px;height:92px;border:1px solid #ffffff50;border-radius:25px;background:linear-gradient(145deg,#ffffff45,#ffffff10);color:#ffe5a0;font-size:48px;transform:rotate(10deg);box-shadow:0 15px 30px #3e0d9430}.nclms-premium-art-star{position:absolute;color:#ffe3a0}.nclms-premium-art-star.star-a{top:26px;right:29px;font-size:27px}.nclms-premium-art-star.star-b{bottom:27px;right:190px;font-size:20px;color:#fff}
.nclms-premium-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:17px 0 20px}.nclms-premium-metrics article{display:flex;align-items:center;gap:11px;min-width:0;padding:15px 13px;border:1px solid #eeecf6;border-radius:15px;background:#fff;box-shadow:0 5px 18px #33215b05}.metric-icon{display:grid;place-items:center;flex:0 0 39px;height:39px;border-radius:12px;font-size:19px;font-weight:800}.metric-purple{background:#f0e7ff;color:#8545e6}.metric-blue{background:#e7f1ff;color:#3979e9}.metric-orange{background:#fff0df;color:#db8b28}.metric-green{background:#e2f9ef;color:#209c72}.nclms-premium-metrics article div{display:grid;gap:3px;min-width:0}.nclms-premium-metrics small{color:#8e89a6;font-size:9px;line-height:1.3}.nclms-premium-metrics strong{color:#282047;font-size:23px;font-weight:850;line-height:1.1}.nclms-premium-metrics em{color:#aaa5bb;font-size:8px;font-style:normal}
.nclms-premium-content-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(245px,.85fr);gap:17px;align-items:start}.nclms-premium-primary,.nclms-premium-rail{display:grid;gap:20px;min-width:0}.nclms-premium-section,.nclms-premium-rail-card{min-width:0;padding:19px;border:1px solid #eeecf6;border-radius:17px;background:#fff;box-shadow:0 5px 18px #33215b04}.nclms-premium-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:15px}.nclms-premium-section-kicker,.nclms-premium-rail-heading>div>span{display:block;color:#a09ab8;font-size:8px;font-weight:850;letter-spacing:1.4px}.nclms-premium-section-head h2{margin:5px 0 0;color:#292047;font-size:20px;font-weight:850;letter-spacing:-.3px;line-height:1.2}.nclms-premium-section-head>a{color:#7940df!important;font-size:10px;font-weight:850;white-space:nowrap}.nclms-premium-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.nclms-premium-course{min-width:0;overflow:hidden;border:1px solid #eeeaf6;border-radius:13px;background:#fff;transition:transform .2s,box-shadow .2s}.nclms-premium-course:hover{transform:translateY(-3px);box-shadow:0 10px 25px #40207812}.nclms-premium-course[hidden]{display:none!important}.nclms-premium-course-thumb{position:relative;display:block;height:120px;overflow:hidden;background:linear-gradient(135deg,#e7dcff,#dceaff)}.nclms-premium-course-thumb img,.nclms-premium-recommend-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.nclms-premium-course:hover .nclms-premium-course-thumb img,.nclms-premium-recommend-card:hover img{transform:scale(1.04)}.nclms-premium-course-art,.nclms-premium-recommend-image>span{display:grid;place-items:center;width:100%;height:100%;color:#8545e6;font-size:42px;background:linear-gradient(135deg,#eee4ff,#dfeaff)}.nclms-premium-course-badge{position:absolute;top:9px;left:9px;padding:5px 7px;border-radius:6px;background:#ffffffed;color:#6935d6;font-size:7px;font-weight:900;letter-spacing:.7px}.nclms-premium-course-body{padding:12px}.nclms-premium-course-meta{display:block;color:#8a63db;font-size:8px;font-weight:850;letter-spacing:.8px;text-transform:uppercase}.nclms-premium-course-body h3,.nclms-premium-recommend-card h3{margin:5px 0;color:#282047;font-size:13px;font-weight:850;line-height:1.35}.nclms-premium-course-body h3 a,.nclms-premium-recommend-card h3 a{color:inherit!important}.nclms-premium-course-body p,.nclms-premium-recommend-card p{min-height:30px;margin:0 0 12px;color:#918ba6;font-size:9px;line-height:1.55}.nclms-premium-progress-label{display:flex;justify-content:space-between;gap:6px;margin-bottom:6px;color:#8d87a3;font-size:8px}.nclms-premium-progress-label strong{color:#7541df;font-size:9px}.nclms-premium-progress{height:5px;overflow:hidden;border-radius:10px;background:#f0edf8}.nclms-premium-progress span{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,#7436e4,#bd69fa)}.nclms-premium-course-link{display:flex;justify-content:space-between;align-items:center;margin-top:11px;color:#743ce0!important;font-size:9px;font-weight:850}.nclms-premium-search-empty{margin:10px 0 0;color:#a09ab3;font-size:11px}.nclms-premium-empty,.nclms-premium-recommend-empty{text-align:center;padding:27px 12px}.nclms-premium-empty>span{display:grid;place-items:center;width:49px;height:49px;margin:0 auto 12px;border-radius:15px;background:#f0e7ff;color:#7d3fe4;font-size:24px}.nclms-premium-empty h3{margin:0 0 7px;font-size:15px}.nclms-premium-empty p,.nclms-premium-recommend-empty p{max-width:320px;margin:0 auto 14px;color:#8f89a5;font-size:11px;line-height:1.6}
.nclms-premium-recommend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.nclms-premium-recommend-card{min-width:0;overflow:hidden;border:1px solid #eeeaf6;border-radius:12px;background:#fff}.nclms-premium-recommend-image{display:block;height:82px;overflow:hidden;background:#f0e8ff}.nclms-premium-recommend-card>div{padding:10px}.nclms-premium-recommend-card h3{font-size:11px}.nclms-premium-recommend-card p{min-height:27px;margin-bottom:8px;font-size:8px}.nclms-premium-recommend-bottom{display:flex;align-items:center;justify-content:space-between;gap:5px;padding-top:8px;border-top:1px solid #f1eef8}.nclms-premium-recommend-bottom strong{color:#332750;font-size:9px}.nclms-premium-recommend-bottom a{color:#783ce1!important;font-size:8px;font-weight:850;white-space:nowrap}
.nclms-premium-rail-card{padding:17px}.nclms-premium-rail-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:13px}.nclms-premium-rail-heading h3{margin:5px 0 0;color:#2a2146;font-size:15px;font-weight:850;line-height:1.25}.nclms-premium-dots{color:#aaa3bd;letter-spacing:2px}.nclms-premium-performance{background:linear-gradient(155deg,#fff,#fcfaff)}.nclms-premium-progress-ring{display:grid;place-items:center;width:148px;height:148px;margin:12px auto;border-radius:50%;background:conic-gradient(#813ce9 calc(var(--progress)*1%),#f0eafb 0);position:relative}.nclms-premium-progress-ring:before{position:absolute;inset:12px;border-radius:50%;background:#fff;content:""}.nclms-premium-progress-ring>div{position:relative;display:grid;gap:3px;text-align:center}.nclms-premium-progress-ring strong{color:#332153;font-size:28px;font-weight:900;letter-spacing:-1px}.nclms-premium-progress-ring small{color:#a09ab5;font-size:8px;font-weight:850;letter-spacing:1.2px}.nclms-premium-performance>p{margin:0 auto;color:#9992ad;font-size:10px;line-height:1.6;text-align:center;max-width:220px}.nclms-premium-quick-link{display:flex;align-items:center;gap:9px;padding:11px 0;border-top:1px solid #f0edf7}.nclms-premium-quick-link>span:nth-child(2){display:grid;gap:3px;min-width:0;flex:1}.nclms-premium-quick-link>span:first-child{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:10px;font-size:17px}.quick-purple{background:#f0e7ff;color:#7d3fe4}.quick-blue{background:#e8f1ff;color:#3979e9}.quick-gold{background:#fff1d9;color:#c78a22}.nclms-premium-quick-link strong{color:#30264c;font-size:10px}.nclms-premium-quick-link small{color:#9b95af;font-size:8px}.nclms-premium-quick-link>b{color:#a59fba;font-size:15px}.nclms-premium-rail-empty{margin:0;color:#9a94ad;font-size:10px;line-height:1.6}.nclms-premium-activity-list{list-style:none;margin:0;padding:0}.nclms-premium-activity-list li{display:flex;align-items:center;gap:8px;padding:10px 0;border-top:1px solid #f1eef7}.nclms-premium-activity-list li>span:nth-child(2){display:grid;gap:3px;min-width:0;flex:1}.nclms-premium-activity-list strong{overflow-wrap:anywhere;color:#32294c;font-size:9px}.nclms-premium-activity-list small{color:#a09ab4;font-size:8px}.activity-quiz,.activity-certificate{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:9px;background:#f0e7ff;color:#7d3fe4}.activity-certificate{background:#fff1d9;color:#c78a22}.nclms-premium-activity-list em{font-size:8px;font-style:normal;font-weight:850;white-space:nowrap}.activity-passed{color:#1a9a70}.activity-review{color:#c38a28}.nclms-premium-pdf{color:#7540de!important;font-size:9px;font-weight:850;white-space:nowrap}.nclms-premium-certificate-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff2d9;color:#c58a23;font-size:22px}.nclms-premium-footer{display:flex;align-items:center;gap:12px;margin-top:18px;padding:16px 18px;border:1px solid #eee7ff;border-radius:14px;background:linear-gradient(100deg,#f7f2ff,#fff)}.nclms-premium-footer>span{color:#8242e6;font-size:24px}.nclms-premium-footer>div{display:grid;gap:4px;min-width:0;flex:1}.nclms-premium-footer strong{color:#30264d;font-size:10px}.nclms-premium-footer small{color:#9a94ad;font-size:9px}.nclms-premium-footer>a{color:#743de0!important;font-size:9px;font-weight:850;white-space:nowrap}
@media(max-width:1100px){.nclms-premium-dashboard{grid-template-columns:180px minmax(0,1fr)}.nclms-premium-main{padding:18px}.nclms-premium-content-grid{grid-template-columns:minmax(0,1fr)}.nclms-premium-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.nclms-premium-performance{grid-row:span 2}.nclms-premium-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.nclms-premium-dashboard{display:block;margin:12px auto 25px;border-radius:16px}.nclms-premium-sidebar{display:block;padding:12px;border-right:0;border-bottom:1px solid #efedf7}.nclms-premium-brand{padding:0 4px 12px}.nclms-premium-nav-label,.nclms-premium-sidebar-bottom,.nclms-premium-sidebar-note{display:none}.nclms-premium-nav{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px}.nclms-premium-nav a{flex:0 0 auto;min-height:35px;padding:8px;font-size:10px;white-space:nowrap}.nclms-premium-nav a b{display:none}.nclms-premium-main{padding:12px}.nclms-premium-topbar{align-items:flex-start;gap:8px;margin-bottom:13px}.nclms-premium-search{width:52%;height:39px;padding:0 9px}.nclms-premium-level{display:none}.nclms-premium-user{gap:7px}.nclms-premium-user-name strong{max-width:95px;font-size:9px}.nclms-premium-user-name small{font-size:8px}.nclms-premium-avatar{flex-basis:32px;height:32px}.nclms-premium-welcome{min-height:190px;padding:23px 18px;border-radius:15px}.nclms-premium-welcome-copy{max-width:100%}.nclms-premium-welcome h1{max-width:290px;font-size:25px}.nclms-premium-welcome p{max-width:250px;font-size:11px}.nclms-premium-welcome-art{right:-130px;opacity:.42}.nclms-premium-metrics{gap:8px;margin:11px 0 14px}.nclms-premium-metrics article{gap:8px;padding:11px 9px;border-radius:12px}.metric-icon{flex-basis:32px;height:32px;border-radius:9px;font-size:16px}.nclms-premium-metrics small{font-size:8px}.nclms-premium-metrics strong{font-size:20px}.nclms-premium-metrics em{font-size:7px}.nclms-premium-content-grid,.nclms-premium-primary,.nclms-premium-rail{gap:12px}.nclms-premium-section{padding:13px}.nclms-premium-section-head h2{font-size:17px}.nclms-premium-section-head>a{font-size:9px}.nclms-premium-course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.nclms-premium-course-thumb{height:92px}.nclms-premium-course-body{padding:9px}.nclms-premium-course-body h3{font-size:11px}.nclms-premium-course-body p{font-size:8px}.nclms-premium-recommend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nclms-premium-recommend-image{height:75px}.nclms-premium-rail{grid-template-columns:1fr}.nclms-premium-performance{grid-row:auto}.nclms-premium-footer{align-items:flex-start;flex-wrap:wrap;padding:13px}.nclms-premium-footer>a{width:100%;margin-left:36px}}
@media(max-width:380px){.nclms-premium-course-grid,.nclms-premium-recommend-grid{grid-template-columns:1fr}.nclms-premium-course-thumb{height:145px}.nclms-premium-recommend-image{height:115px}.nclms-premium-user-name{display:none}}

/* Nerold LMS guided learning journey */
.nclms-learning-flow{max-width:1180px;margin:28px auto;padding:clamp(18px,3vw,36px);border-radius:24px;background:#fff;box-shadow:0 18px 60px rgba(31,26,76,.08);color:#202044}
.nclms-learning-flow .nclms-course-summary{padding:0 0 22px;border-bottom:1px solid #eeeaf8;margin-bottom:26px}
.nclms-flow-overview,.nclms-flow-panel{background:linear-gradient(145deg,#fff 0%,#fbfaff 100%);border:1px solid #eee8ff;border-radius:22px;padding:clamp(20px,3vw,36px);box-shadow:0 12px 35px rgba(75,42,160,.06)}
.nclms-flow-kicker{display:inline-block;font-size:11px;letter-spacing:.16em;font-weight:800;color:#7c3aed;text-transform:uppercase;margin-bottom:9px}
.nclms-flow-overview h2,.nclms-flow-panel h2{font-size:clamp(25px,3vw,36px);line-height:1.15;margin:0 0 14px;color:#21164c}
.nclms-flow-overview-copy{font-size:16px;line-height:1.75;color:#66617b;max-width:850px}
.nclms-flow-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0}
.nclms-flow-card{overflow:hidden;border:1px solid #eee9f8;border-radius:17px;background:#fff;box-shadow:0 8px 22px rgba(40,20,90,.05)}
.nclms-flow-card img{display:block;width:100%;height:160px;object-fit:cover;background:#f0eaff}
.nclms-flow-card-placeholder{height:160px;display:grid;place-items:center;font-size:42px;color:#fff;background:linear-gradient(135deg,#5524d8,#a855f7)}
.nclms-flow-card>div:last-child{padding:16px 17px}
.nclms-flow-card h3{margin:0 0 7px;color:#24164e;font-size:18px}
.nclms-flow-card p{margin:0;color:#77718b;font-size:14px;line-height:1.55}
.nclms-button.nclms-flow-primary,.nclms-flow-primary{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border:0;border-radius:12px;background:linear-gradient(100deg,#5b21d6,#8b5cf6);color:#fff!important;text-decoration:none;font-weight:750;box-shadow:0 8px 20px rgba(107,54,220,.22);transition:transform .18s ease,box-shadow .18s ease}
.nclms-button.nclms-flow-primary:hover,.nclms-flow-primary:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(107,54,220,.28);color:#fff}
.nclms-flow-panel{margin-top:12px}
.nclms-flow-panel>p{color:#6c6681;line-height:1.7}
.nclms-flow-panel .nclms-quiz-form fieldset{border:1px solid #e8e1f8;border-radius:14px;padding:18px;margin:16px 0;background:#fff}
.nclms-flow-panel .nclms-quiz-form legend{font-weight:750;color:#24164e;padding:0 8px}
.nclms-flow-panel .nclms-quiz-option{display:flex;align-items:flex-start;gap:9px;padding:10px 12px;margin:7px 0;border:1px solid #eeeaf7;border-radius:10px;background:#fcfbff;cursor:pointer}
.nclms-flow-panel .nclms-quiz-option:hover{border-color:#b9a1fa;background:#f7f2ff}
.nclms-flow-score{display:flex;align-items:baseline;gap:4px;font-size:clamp(54px,8vw,88px);font-weight:850;letter-spacing:-.06em;color:#6d28d9;margin:12px 0}
.nclms-flow-score small{font-size:24px;letter-spacing:0;color:#8b5cf6}
.nclms-flow-progress{margin-top:18px;padding:14px 16px;border-radius:12px;background:#f5f0ff;color:#5b21b6;font-weight:700}
.nclms-learning-flow .nclms-curriculum-section{padding:18px;margin:18px 0;border:1px solid #eeeaf7;border-radius:16px;background:#fff}
.nclms-learning-flow .nclms-lesson{padding:18px;margin:12px 0;border-radius:14px;background:#fbfaff;border:1px solid #f0ebfb}
.nclms-learning-flow .nclms-lesson h4{color:#25164f}
@media(max-width:760px){.nclms-learning-flow{padding:14px;margin:12px auto;border-radius:16px}.nclms-flow-cards{grid-template-columns:1fr;gap:12px}.nclms-flow-card img,.nclms-flow-card-placeholder{height:190px}.nclms-flow-overview,.nclms-flow-panel{padding:18px;border-radius:16px}.nclms-learning-flow .nclms-curriculum-section{padding:12px}}

/* v0.4.1: clinical blue dashboard skin + configurable hero image */
.nclms-premium-dashboard{--npl-ink:#102b50;--npl-muted:#6d819a;--npl-line:#e4edf7;--npl-purple:#0877e8;--npl-purple2:#38a4ff;background:#f3f7fc;border-color:#e3ebf5;box-shadow:0 24px 70px rgba(13,48,91,.12)}
.nclms-premium-sidebar{background:#082b55;border-right-color:#163e69;color:#fff}
.nclms-premium-brand{color:#fff!important}.nclms-premium-brand small{color:#a9c6e7}.nclms-premium-brand-mark{background:linear-gradient(135deg,#0878e8,#36b7ff);box-shadow:0 7px 18px #0076df45}
.nclms-premium-nav-label{color:#8fb1d7}.nclms-premium-nav a,.nclms-premium-sidebar-bottom a{color:#d3e4f7!important}.nclms-premium-nav a:hover,.nclms-premium-sidebar-bottom a:hover{background:#123f70;color:#fff!important}.nclms-premium-nav a.is-active{background:linear-gradient(100deg,#0879ed,#1462ca);color:#fff!important;box-shadow:inset 3px 0 #8ed7ff}.nclms-premium-nav a b{background:#dceeff;color:#075cb9}.nclms-premium-sidebar-note{background:#103b68;border-color:#285580}.nclms-premium-sidebar-note strong{color:#fff}.nclms-premium-sidebar-note small{color:#c0d7f0}.nclms-premium-welcome{background-image:linear-gradient(100deg,rgba(5,35,72,.96),rgba(7,67,128,.83) 52%,rgba(7,93,167,.45)),var(--nclms-dashboard-banner,linear-gradient(112deg,#07366b,#087ce7 70%,#36a9ff));background-size:cover;background-position:center;box-shadow:0 14px 32px #075aa52b}.nclms-premium-welcome:after{border-color:#ffffff20}.nclms-premium-cta{color:#075db7!important}.nclms-premium-metrics article,.nclms-premium-section,.nclms-premium-rail-card{border-color:#e3ebf5;box-shadow:0 7px 24px rgba(23,67,115,.045)}.nclms-premium-section-head h2,.nclms-premium-rail-heading h3{color:#102e54}.nclms-premium-course-meta{color:#1678d4}.nclms-premium-course-art,.nclms-premium-recommend-image>span{color:#0879df;background:linear-gradient(135deg,#e2f1ff,#d8eaff)}.nclms-premium-course-badge{color:#086ac6}.nclms-premium-progress-label strong,.nclms-premium-course-link,.nclms-premium-recommend-bottom a,.nclms-premium-pdf{color:#0875db!important}.nclms-premium-progress span{background:linear-gradient(90deg,#0877e8,#37b8f5)}.nclms-premium-progress-ring{background:conic-gradient(#0879e8 calc(var(--progress)*1%),#e6eef8 0)}.quick-purple{background:#e3f0ff;color:#0874d7}.quick-blue{background:#e0f6ff;color:#078bbd}.activity-quiz{background:#e5f2ff;color:#0876d9}.nclms-premium-footer{border-color:#e0eaf6;background:linear-gradient(100deg,#eaf4ff,#fff)}.nclms-premium-footer>span,.nclms-premium-footer>a{color:#0875db!important}
@media(max-width:700px){.nclms-premium-sidebar{background:#082b55}.nclms-premium-nav{scrollbar-width:thin}.nclms-premium-welcome{background-position:center;min-height:210px}.nclms-premium-welcome h1{font-size:clamp(21px,6vw,28px)}.nclms-premium-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.nclms-premium-course-grid{grid-template-columns:1fr}.nclms-premium-course-thumb{height:155px}.nclms-premium-course-body h3{font-size:14px}.nclms-premium-course-body p{font-size:11px}.nclms-premium-course-meta{font-size:9px}.nclms-premium-course-link{font-size:11px}.nclms-premium-recommend-grid{grid-template-columns:1fr}.nclms-premium-recommend-image{height:130px}.nclms-premium-recommend-card h3{font-size:13px}.nclms-premium-recommend-card p{font-size:10px}.nclms-premium-rail{grid-template-columns:1fr}.nclms-premium-search{width:48%;min-width:0}.nclms-premium-search input{min-width:0;width:100%}}


/* v0.4.2: full-screen student app layout to match the supplied dashboard reference */
body.nclms-dashboard-app-page{background:#eef4fb!important;overflow-x:hidden}
body.nclms-dashboard-app-page .site-header,
body.nclms-dashboard-app-page #masthead,
body.nclms-dashboard-app-page .elementor-location-header,
body.nclms-dashboard-app-page .site-footer,
body.nclms-dashboard-app-page #colophon,
body.nclms-dashboard-app-page .elementor-location-footer,
body.nclms-dashboard-app-page .footer-area{display:none!important}
body.nclms-dashboard-app-page #page,
body.nclms-dashboard-app-page .site,
body.nclms-dashboard-app-page .site-content,
body.nclms-dashboard-app-page #content,
body.nclms-dashboard-app-page main,
body.nclms-dashboard-app-page .content-area,
body.nclms-dashboard-app-page .site-main,
body.nclms-dashboard-app-page article.page,
body.nclms-dashboard-app-page .entry-content,
body.nclms-dashboard-app-page .elementor{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;float:none!important}
body.nclms-dashboard-app-page .entry-header,
body.nclms-dashboard-app-page .page-header,
body.nclms-dashboard-app-page .entry-title{display:none!important}
body.nclms-dashboard-app-page .nclms-premium-dashboard{width:100%!important;max-width:none!important;min-height:100vh;margin:0!important;border:0!important;border-radius:0!important;grid-template-columns:250px minmax(0,1fr);box-shadow:none!important}
body.nclms-dashboard-app-page .nclms-premium-sidebar{padding:32px 20px 24px}
body.nclms-dashboard-app-page .nclms-premium-main{padding:28px clamp(18px,2.5vw,42px);background:#f4f8fd}
body.nclms-dashboard-app-page .nclms-premium-welcome{min-height:230px;border-radius:20px}
body.nclms-dashboard-app-page .nclms-premium-content-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr)}
body.nclms-dashboard-app-page .nclms-premium-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1100px){body.nclms-dashboard-app-page .nclms-premium-dashboard{grid-template-columns:200px minmax(0,1fr)}body.nclms-dashboard-app-page .nclms-premium-content-grid{grid-template-columns:minmax(0,1fr)}body.nclms-dashboard-app-page .nclms-premium-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body.nclms-dashboard-app-page .nclms-premium-dashboard{display:block;min-height:100vh}body.nclms-dashboard-app-page .nclms-premium-sidebar{padding:13px}body.nclms-dashboard-app-page .nclms-premium-main{padding:12px}body.nclms-dashboard-app-page .nclms-premium-content-grid{grid-template-columns:1fr}body.nclms-dashboard-app-page .nclms-premium-course-grid{grid-template-columns:1fr}body.nclms-dashboard-app-page .nclms-premium-rail{grid-template-columns:1fr}body.nclms-dashboard-app-page .nclms-premium-welcome{min-height:215px}}

/* Question-level video */
.nclms-quiz-form .nclms-question-video{margin:14px 0 18px;max-width:820px}
.nclms-quiz-form .nclms-question-video video{display:block;width:100%;height:auto;max-height:480px;border-radius:12px;background:#071a2e}
.nclms-quiz-form .nclms-question-video iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;max-height:480px;border:0;border-radius:12px}
.nclms-quiz-form fieldset{margin:0 0 22px;padding:18px;border:1px solid #dbe7f4;border-radius:14px;background:#fff}
.nclms-quiz-form fieldset legend{padding:0 6px;font-weight:750;color:#123b70}


/* v0.4.5 — distraction-free, full-width custom course page */
body.nclms-course-page { background:#f3f8ff !important; }
body.nclms-course-page .nclms-learning-flow {
  width:min(1160px, calc(100% - 40px)) !important; max-width:1160px !important;
  margin:34px auto 64px !important; padding:clamp(20px,3.2vw,42px) !important;
  border:1px solid #dceaff !important; border-radius:26px !important;
  background:linear-gradient(145deg,#ffffff 0%,#f7fbff 100%) !important;
  box-shadow:0 22px 65px rgba(13,72,138,.10) !important;
}
body.nclms-course-page .nclms-course-summary { border:0 !important; margin:0 0 24px !important; padding:0 0 22px !important; }
body.nclms-course-page .nclms-course-summary > p:first-of-type { display:inline-flex; gap:8px; align-items:center; padding:12px 18px; border-radius:14px; background:linear-gradient(110deg,#063f83,#1599ed); color:#fff !important; box-shadow:0 8px 22px rgba(7,91,168,.15); }
body.nclms-course-page .nclms-flow-overview, body.nclms-course-page .nclms-flow-panel {
  border:1px solid #d8e9ff !important; border-radius:22px !important;
  background:linear-gradient(145deg,#fff,#f5faff) !important;
  box-shadow:0 14px 36px rgba(20,83,145,.07) !important;
}
body.nclms-course-page .nclms-flow-kicker { color:#0878dc !important; }
body.nclms-course-page .nclms-flow-overview h2, body.nclms-course-page .nclms-flow-panel h2 { color:#082f61 !important; }
body.nclms-course-page .nclms-flow-card { border-color:#d9e9fb !important; border-radius:18px !important; box-shadow:0 10px 26px rgba(21,82,143,.08) !important; transition:transform .2s ease,box-shadow .2s ease; }
body.nclms-course-page .nclms-flow-card:hover { transform:translateY(-4px); box-shadow:0 16px 32px rgba(21,82,143,.13) !important; }
body.nclms-course-page .nclms-flow-card h3 { color:#07366e !important; }
body.nclms-course-page .nclms-button.nclms-flow-primary, body.nclms-course-page .nclms-flow-primary { background:linear-gradient(100deg,#0879e8,#075ac5) !important; border-radius:13px !important; box-shadow:0 10px 24px rgba(4,103,210,.22) !important; }
/* Remove theme post metadata, comments, sidebar widgets and author/profile footer only on Nerold course pages. */
body.nclms-course-page .entry-meta, body.nclms-course-page .post-meta, body.nclms-course-page .post-info,
body.nclms-course-page .entry-footer, body.nclms-course-page .post-footer,
body.nclms-course-page .posted-on, body.nclms-course-page .byline, body.nclms-course-page .cat-links,
body.nclms-course-page .comments-link, body.nclms-course-page .post-date, body.nclms-course-page .author-box,
body.nclms-course-page .author-bio, body.nclms-course-page .post-author, body.nclms-course-page .author-info,
body.nclms-course-page .post-author-box, body.nclms-course-page .about-author, body.nclms-course-page .comments-area,
body.nclms-course-page #comments, body.nclms-course-page .comment-respond,
body.nclms-course-page #secondary, body.nclms-course-page .widget-area, body.nclms-course-page .sidebar,
body.nclms-course-page aside.sidebar, body.nclms-course-page .rt-sidebar { display:none !important; }
body.nclms-course-page #primary, body.nclms-course-page .content-area, body.nclms-course-page main.site-main,
body.nclms-course-page .site-main, body.nclms-course-page .primary-content-area {
  float:none !important; width:100% !important; max-width:100% !important; flex:0 0 100% !important;
}
body.nclms-course-page article.nclms_course, body.nclms-course-page .type-nclms_course { width:100% !important; max-width:100% !important; }
body.nclms-course-page .type-nclms_course > header.entry-header,
body.nclms-course-page .type-nclms_course .entry-header { display:none !important; }
body.nclms-course-page .site-content > .container, body.nclms-course-page .site-content .container {
  max-width:1240px !important; width:100% !important;
}
@media(max-width:700px) {
  body.nclms-course-page .nclms-learning-flow { width:calc(100% - 20px) !important; margin:14px auto 34px !important; padding:14px !important; border-radius:18px !important; }
  body.nclms-course-page .nclms-flow-overview, body.nclms-course-page .nclms-flow-panel { padding:18px !important; }
}


/* v0.4.6 — full-width, polished single-course landing page */
body.nclms-course-page {
  --nclms-page-ink:#102b50;
  --nclms-page-muted:#617894;
  --nclms-page-blue:#0878df;
  --nclms-page-line:#dceafa;
  background:linear-gradient(180deg,#edf6ff 0%,#f8fbff 52%,#ffffff 100%) !important;
  overflow-x:hidden;
}
body.nclms-course-page #page,
body.nclms-course-page .site,
body.nclms-course-page #content,
body.nclms-course-page .site-content,
body.nclms-course-page .content-area,
body.nclms-course-page #primary,
body.nclms-course-page .site-main,
body.nclms-course-page main,
body.nclms-course-page article,
body.nclms-course-page .entry-content,
body.nclms-course-page .type-nclms_course,
body.nclms-course-page article.nclms_course {
  width:100% !important; max-width:none !important; min-width:0 !important;
  float:none !important; flex:0 0 100% !important; margin-left:0 !important;
  margin-right:0 !important; box-sizing:border-box !important;
}
body.nclms-course-page .site-content,
body.nclms-course-page #content { padding:0 !important; }
body.nclms-course-page .site-content > .container,
body.nclms-course-page .site-content .container,
body.nclms-course-page .site-content .ast-container,
body.nclms-course-page .site-content .site-inner,
body.nclms-course-page .site-content .content-wrap,
body.nclms-course-page .site-content .container-fluid,
body.nclms-course-page .content-area > .container {
  display:block !important; width:100% !important; max-width:none !important;
  padding-left:0 !important; padding-right:0 !important; margin:0 auto !important;
}
body.nclms-course-page .row { display:block !important; width:100% !important; margin:0 !important; }
body.nclms-course-page [class*="col-"] { width:100% !important; max-width:100% !important; flex:0 0 100% !important; padding-left:0 !important; padding-right:0 !important; }
body.nclms-course-page .nclms-learning-flow {
  position:relative !important; isolation:isolate;
  width:min(1320px,calc(100% - 64px)) !important; max-width:1320px !important;
  margin:38px auto 72px !important; padding:clamp(24px,3.5vw,54px) !important;
  border:1px solid #dcecff !important; border-radius:30px !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 26px 80px rgba(18,73,132,.12) !important;
  color:var(--nclms-page-ink) !important;
}
body.nclms-course-page .nclms-course-summary {
  display:flex !important; flex-wrap:wrap; align-items:center; gap:16px;
  min-height:76px; margin:0 0 30px !important; padding:0 0 22px !important;
  border:0 !important; border-bottom:1px solid var(--nclms-page-line) !important;
  background:transparent !important; box-shadow:none !important;
}
body.nclms-course-page .nclms-course-statusbar {
  display:flex; flex-wrap:wrap; align-items:center; gap:12px; width:100%;
}
body.nclms-course-page .nclms-course-type-badge {
  display:inline-flex !important; align-items:center; justify-content:center;
  min-height:40px; padding:9px 18px !important; border-radius:999px !important;
  background:linear-gradient(110deg,#087a48,#16a66a) !important;
  color:#fff !important; font-size:13px !important; font-weight:850 !important;
  letter-spacing:.7px; line-height:1.2; box-shadow:0 7px 18px rgba(14,153,91,.18);
}
body.nclms-course-page .nclms-course-type-badge.is-paid {
  background:linear-gradient(110deg,#8b5cf6,#5b6de8) !important;
}
body.nclms-course-page .nclms-course-enrolled,
body.nclms-course-page .nclms-course-price {
  display:inline-flex; align-items:center; gap:7px; padding:10px 15px;
  border-radius:999px; background:#eef7ff; color:#14538e !important;
  font-size:13px; font-weight:750;
}
body.nclms-course-page .nclms-course-enrolled span { color:#0b9b62; font-size:17px; }
body.nclms-course-page .nclms-course-cover { width:100%; }
body.nclms-course-page .nclms-course-cover img,
body.nclms-course-page .nclms-course-image {
  display:block; width:100% !important; max-width:100% !important;
  max-height:360px; object-fit:cover; border-radius:22px !important;
}
body.nclms-course-page .nclms-course-action { margin-left:auto; }
body.nclms-course-page .nclms-course-action form { margin:0; }
body.nclms-course-page .nclms-flow-overview,
body.nclms-course-page .nclms-flow-panel {
  padding:clamp(26px,4vw,58px) !important; border:1px solid #dcecff !important;
  border-radius:26px !important; background:linear-gradient(145deg,#fff 0%,#f4f9ff 100%) !important;
  box-shadow:0 15px 42px rgba(20,83,145,.07) !important;
}
body.nclms-course-page .nclms-flow-kicker {
  display:inline-block; margin-bottom:14px; color:#0878df !important;
  font-size:11px !important; font-weight:850; letter-spacing:2px;
}
body.nclms-course-page .nclms-flow-overview h2,
body.nclms-course-page .nclms-flow-panel h2 {
  color:#092f5c !important; font-size:clamp(30px,4vw,48px) !important;
  line-height:1.12 !important; letter-spacing:-1.1px; margin:0 0 18px !important;
}
body.nclms-course-page .nclms-flow-overview-copy {
  max-width:900px; color:#5d7592 !important; font-size:17px !important; line-height:1.8 !important;
}
body.nclms-course-page .nclms-flow-cards {
  display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important; margin:30px 0 !important;
}
body.nclms-course-page .nclms-flow-card {
  overflow:hidden; padding:0 !important; border:1px solid #dceafa !important;
  border-radius:20px !important; background:#fff !important;
  box-shadow:0 12px 28px rgba(21,82,143,.08) !important;
}
body.nclms-course-page .nclms-flow-card img,
body.nclms-course-page .nclms-flow-card-placeholder {
  display:block; width:100% !important; height:clamp(170px,20vw,260px) !important;
  object-fit:cover; border-radius:0 !important;
}
body.nclms-course-page .nclms-flow-card > div:last-child { padding:20px 22px 22px !important; }
body.nclms-course-page .nclms-flow-card h3 { margin:0 0 8px !important; color:#0a376b !important; font-size:20px !important; font-weight:800 !important; }
body.nclms-course-page .nclms-flow-card p { margin:0 !important; color:#71849c !important; font-size:14px !important; line-height:1.6 !important; }
body.nclms-course-page .nclms-button.nclms-flow-primary,
body.nclms-course-page .nclms-flow-primary,
body.nclms-course-page .nclms-course-action .nclms-button {
  display:inline-flex !important; align-items:center; justify-content:center; gap:12px;
  min-height:52px; padding:14px 25px !important; border:0 !important;
  border-radius:13px !important; background:linear-gradient(100deg,#0879e8,#075ac5) !important;
  color:#fff !important; font-size:15px !important; font-weight:800 !important;
  box-shadow:0 12px 26px rgba(4,103,210,.22) !important;
}
body.nclms-course-page .nclms-flow-primary:hover,
body.nclms-course-page .nclms-course-action .nclms-button:hover { transform:translateY(-2px); }
body.nclms-course-page .nclms-flow-panel { color:#163a61; }
body.nclms-course-page .nclms-flow-panel p { color:#617894; line-height:1.75; }
body.nclms-course-page .nclms-flow-score { color:#0878df !important; }
body.nclms-course-page .nclms-curriculum-section { border:1px solid #dceafa !important; border-radius:18px !important; padding:22px !important; }
body.nclms-course-page .nclms-lesson { background:#f8fbff !important; border:1px solid #e4eef9 !important; }
body.nclms-course-page .entry-meta,
body.nclms-course-page .post-meta,
body.nclms-course-page .post-info,
body.nclms-course-page .entry-footer,
body.nclms-course-page .post-footer,
body.nclms-course-page .posted-on,
body.nclms-course-page .byline,
body.nclms-course-page .cat-links,
body.nclms-course-page .comments-link,
body.nclms-course-page .post-date,
body.nclms-course-page .author-box,
body.nclms-course-page .author-bio,
body.nclms-course-page .post-author,
body.nclms-course-page .author-info,
body.nclms-course-page .post-author-box,
body.nclms-course-page .about-author,
body.nclms-course-page .author-profile,
body.nclms-course-page .author-card,
body.nclms-course-page .entry-author,
body.nclms-course-page .entry-author-info,
body.nclms-course-page .post-author-wrap,
body.nclms-course-page .post-author-card,
body.nclms-course-page .post-author-info,
body.nclms-course-page .author-bio-wrapper,
body.nclms-course-page .author-section,
body.nclms-course-page .author-profile-box,
body.nclms-course-page .about-author-box,
body.nclms-course-page .author-details,
body.nclms-course-page .author-image,
body.nclms-course-page .author-thumb,
body.nclms-course-page .author-avatar,
body.nclms-course-page .comments-area,
body.nclms-course-page #comments,
body.nclms-course-page .comment-respond,
body.nclms-course-page #secondary,
body.nclms-course-page .widget-area,
body.nclms-course-page .sidebar,
body.nclms-course-page aside.sidebar,
body.nclms-course-page .rt-sidebar {
  display:none !important;
}
@media(max-width:760px) {
  body.nclms-course-page .nclms-learning-flow { width:calc(100% - 24px) !important; margin:16px auto 36px !important; padding:16px !important; border-radius:20px !important; }
  body.nclms-course-page .nclms-course-summary { gap:10px; margin-bottom:18px !important; }
  body.nclms-course-page .nclms-course-action { margin-left:0; width:100%; }
  body.nclms-course-page .nclms-course-action .nclms-button { width:100%; }
  body.nclms-course-page .nclms-flow-overview, body.nclms-course-page .nclms-flow-panel { padding:22px !important; border-radius:18px !important; }
  body.nclms-course-page .nclms-flow-cards { grid-template-columns:1fr !important; gap:14px !important; }
  body.nclms-course-page .nclms-flow-card { display:grid; grid-template-columns:112px minmax(0,1fr); }
  body.nclms-course-page .nclms-flow-card img, body.nclms-course-page .nclms-flow-card-placeholder { height:100% !important; min-height:130px; }
  body.nclms-course-page .nclms-flow-card > div:last-child { padding:14px !important; }
}


/* v0.4.7 — refined course landing page: remove oversized theme chrome and author footer */
body.nclms-course-page {
  background:#f4f7fb !important;
  color:#142b48 !important;
}
body.nclms-course-page #masthead,
body.nclms-course-page header.site-header,
body.nclms-course-page .site-header,
body.nclms-course-page .elementor-location-header,
body.nclms-course-page .header-area,
body.nclms-course-page .site-branding,
body.nclms-course-page .header-branding,
body.nclms-course-page .header-logo-wrap,
body.nclms-course-page .site-footer,
body.nclms-course-page #colophon,
body.nclms-course-page .elementor-location-footer,
body.nclms-course-page .footer-area,
body.nclms-course-page .footer-wrapper,
body.nclms-course-page .footer-bottom,
body.nclms-course-page .footer-widgets,
body.nclms-course-page .author-box,
body.nclms-course-page .author-bio,
body.nclms-course-page .post-author,
body.nclms-course-page .author-info,
body.nclms-course-page .post-author-box,
body.nclms-course-page .about-author,
body.nclms-course-page .author-profile,
body.nclms-course-page .author-card,
body.nclms-course-page .author-section,
body.nclms-course-page .author-wrap,
body.nclms-course-page .author-details,
body.nclms-course-page .author-meta,
body.nclms-course-page .author-widget,
body.nclms-course-page [class*="author-box"],
body.nclms-course-page [class*="author-bio"],
body.nclms-course-page [class*="author-profile"],
body.nclms-course-page [class*="author-card"],
body.nclms-course-page [class*="author-info"] {
  display:none !important;
}
body.nclms-course-page #page,
body.nclms-course-page .site,
body.nclms-course-page #content,
body.nclms-course-page .site-content,
body.nclms-course-page .site-content > .container,
body.nclms-course-page .site-content .container,
body.nclms-course-page .site-content .ast-container,
body.nclms-course-page .site-content .site-inner,
body.nclms-course-page .site-content .content-wrap,
body.nclms-course-page .site-content .container-fluid,
body.nclms-course-page .content-area,
body.nclms-course-page #primary,
body.nclms-course-page .site-main,
body.nclms-course-page main,
body.nclms-course-page article,
body.nclms-course-page .entry-content,
body.nclms-course-page .type-nclms_course,
body.nclms-course-page article.nclms_course {
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  float:none !important;
  flex:0 0 100% !important;
  box-sizing:border-box !important;
}
body.nclms-course-page .nclms-learning-flow {
  width:min(1180px,calc(100% - 48px)) !important;
  max-width:1180px !important;
  margin:42px auto 64px !important;
  padding:clamp(24px,3.4vw,46px) !important;
  border:1px solid #e4eaf2 !important;
  border-radius:28px !important;
  background:#fff !important;
  box-shadow:0 18px 55px rgba(23,49,82,.08) !important;
}
body.nclms-course-page .nclms-course-summary {
  min-height:0 !important;
  margin:0 0 28px !important;
  padding:0 0 22px !important;
  border-bottom:1px solid #e9eef5 !important;
}
body.nclms-course-page .nclms-course-statusbar {
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
body.nclms-course-page .nclms-course-type-badge {
  min-height:36px !important;
  padding:8px 16px !important;
  background:#e8f8ef !important;
  color:#137447 !important;
  border:1px solid #ccefdc !important;
  border-radius:999px !important;
  box-shadow:none !important;
  font-size:12px !important;
  letter-spacing:.4px !important;
}
body.nclms-course-page .nclms-course-enrolled {
  padding:9px 14px !important;
  background:#eff6ff !important;
  color:#24558c !important;
  border:1px solid #dbeafe !important;
  border-radius:999px !important;
}
body.nclms-course-page .nclms-course-cover { margin:0 0 26px !important; }
body.nclms-course-page .nclms-course-cover img {
  max-height:300px !important;
  object-fit:cover !important;
  border-radius:20px !important;
}
body.nclms-course-page .nclms-flow-overview,
body.nclms-course-page .nclms-flow-panel {
  padding:clamp(24px,3.5vw,44px) !important;
  border:1px solid #e4ebf3 !important;
  border-radius:22px !important;
  background:#fbfdff !important;
  box-shadow:none !important;
}
body.nclms-course-page .nclms-flow-kicker {
  color:#2876c8 !important;
  font-size:10px !important;
  letter-spacing:1.7px !important;
}
body.nclms-course-page .nclms-flow-overview h2,
body.nclms-course-page .nclms-flow-panel h2 {
  color:#163657 !important;
  font-size:clamp(28px,3.2vw,40px) !important;
  letter-spacing:-.7px !important;
  margin:0 0 14px !important;
}
body.nclms-course-page .nclms-flow-overview-copy {
  max-width:850px !important;
  color:#64758a !important;
  font-size:16px !important;
  line-height:1.75 !important;
}
body.nclms-course-page .nclms-flow-cards {
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
  margin:28px 0 !important;
}
body.nclms-course-page .nclms-flow-card {
  border:1px solid #e4ebf3 !important;
  border-radius:16px !important;
  box-shadow:0 7px 22px rgba(20,48,80,.055) !important;
  transition:transform .2s ease,box-shadow .2s ease !important;
}
body.nclms-course-page .nclms-flow-card:hover {
  transform:translateY(-3px) !important;
  box-shadow:0 12px 28px rgba(20,48,80,.10) !important;
}
body.nclms-course-page .nclms-flow-card img,
body.nclms-course-page .nclms-flow-card-placeholder {
  height:clamp(150px,17vw,215px) !important;
}
body.nclms-course-page .nclms-flow-card > div:last-child { padding:18px 19px 20px !important; }
body.nclms-course-page .nclms-flow-card h3 {
  color:#193b5e !important;
  font-size:18px !important;
  margin:0 0 7px !important;
}
body.nclms-course-page .nclms-flow-card p {
  color:#748398 !important;
  font-size:13px !important;
  line-height:1.55 !important;
}
body.nclms-course-page .nclms-flow-primary,
body.nclms-course-page .nclms-course-action .nclms-button {
  min-height:48px !important;
  padding:12px 22px !important;
  border-radius:10px !important;
  background:#1268c5 !important;
  box-shadow:0 7px 16px rgba(18,104,197,.18) !important;
  font-size:14px !important;
}
@media(max-width:760px) {
  body.nclms-course-page .nclms-learning-flow {
    width:calc(100% - 24px) !important;
    margin:18px auto 30px !important;
    padding:16px !important;
    border-radius:18px !important;
  }
  body.nclms-course-page .nclms-flow-overview,
  body.nclms-course-page .nclms-flow-panel { padding:20px !important; }
  body.nclms-course-page .nclms-flow-cards {
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  body.nclms-course-page .nclms-flow-card {
    display:grid !important;
    grid-template-columns:112px minmax(0,1fr) !important;
  }
  body.nclms-course-page .nclms-flow-card img,
  body.nclms-course-page .nclms-flow-card-placeholder {
    height:100% !important;
    min-height:125px !important;
  }
  body.nclms-course-page .nclms-flow-card > div:last-child { padding:14px !important; }
}


/* Premium course player portal — scoped to Nerold LMS course pages */
body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal) {
  width:min(1480px,calc(100% - 36px)) !important;
  max-width:1480px !important;
  margin:26px auto 54px !important;
  padding:0 !important;
  overflow:hidden;
  border:1px solid #e5edf7 !important;
  border-radius:22px !important;
  background:#f5f9ff !important;
  box-shadow:0 18px 55px rgba(12,43,82,.10) !important;
}
body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal) > .nclms-course-summary {display:none !important}
.nclms-learning-portal,.nclms-learning-portal *{box-sizing:border-box}
.nclms-learning-portal{display:grid;grid-template-columns:278px minmax(0,1fr);min-height:780px;color:#17365b;background:#f4f8fe}
.nclms-portal-sidebar{display:flex;flex-direction:column;min-width:0;padding:22px 16px;background:linear-gradient(180deg,#0c315d 0%,#09264a 100%);color:#fff}
.nclms-portal-brand{display:flex;align-items:center;gap:12px;padding:3px 8px 26px;color:#fff!important;text-decoration:none!important;border-bottom:1px solid rgba(255,255,255,.13)}
.nclms-portal-brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#0878ed;color:#fff;font-size:24px;font-weight:800}
.nclms-portal-brand strong{display:block;color:#fff;font-size:16px;line-height:1.3}
.nclms-portal-brand small{display:block;margin-top:4px;color:#a9c9ef;font-size:9px;letter-spacing:1.8px;font-weight:800}
.nclms-portal-overview{display:flex;gap:12px;align-items:center;margin:18px 0 12px;padding:13px 14px;border-radius:10px;background:rgba(255,255,255,.09);color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:700}
.nclms-portal-nav{display:flex;flex-direction:column;gap:5px}
.nclms-portal-module{margin:16px 8px 5px;color:#8db9e8;font-size:10px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase}
.nclms-portal-nav-item{display:flex;align-items:center;gap:11px;min-width:0;padding:11px 9px;border-radius:9px;color:#dceaff!important;text-decoration:none!important;transition:background .18s ease,color .18s ease}
.nclms-portal-nav-item:hover,.nclms-portal-nav-item.is-active{background:linear-gradient(100deg,#0878ed,#1262ce);color:#fff!important}
.nclms-portal-nav-num{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:8px;background:rgba(255,255,255,.10);color:#fff;font-size:10px;font-weight:800}
.nclms-portal-nav-item>span:nth-child(2){display:block;min-width:0}
.nclms-portal-nav-item strong{display:block;overflow:hidden;color:inherit;font-size:12px;line-height:1.35;text-overflow:ellipsis}
.nclms-portal-nav-item small{display:block;margin-top:3px;color:#a9c6e5;font-size:10px;line-height:1.35}
.nclms-portal-nav-item.is-active small{color:#d9eaff}
.nclms-portal-check{margin-left:auto;color:#8cf0c0}
.nclms-portal-help{margin-top:auto;padding:18px 10px 4px;border-top:1px solid rgba(255,255,255,.13)}
.nclms-portal-help span{display:block;color:#fff;font-size:12px;font-weight:800}
.nclms-portal-help small{display:block;margin-top:5px;color:#a9c6e5;font-size:11px}
.nclms-portal-main{min-width:0;padding:26px 30px 30px;background:#f4f8fe}
.nclms-portal-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.nclms-portal-eyebrow,.nclms-portal-step{color:#1475d5;font-size:9px;font-weight:850;letter-spacing:1.6px}
.nclms-portal-topbar h1{margin:5px 0 0;color:#102f53;font-size:clamp(20px,2vw,27px);font-weight:850;line-height:1.2}
.nclms-portal-progress{flex:0 0 190px;color:#28496c;font-size:11px}
.nclms-portal-progress strong{display:block;margin-bottom:8px;text-align:right}
.nclms-portal-progress>span,.nclms-portal-course-progress>div{display:block;height:7px;overflow:hidden;border-radius:20px;background:#dce7f5}
.nclms-portal-progress i,.nclms-portal-course-progress i{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,#0782f4,#0756c9)}
.nclms-portal-content-card{min-width:0;padding:25px;border:1px solid #e1eaf5;border-radius:17px;background:#fff;box-shadow:0 8px 26px rgba(25,60,102,.055)}
.nclms-portal-player-card{padding:0;overflow:hidden}
.nclms-portal-chapterbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid #eaf0f7;color:#647d99;font-size:11px}
.nclms-portal-chapterbar>div{display:flex;gap:8px}
.nclms-portal-chapterbar a{padding:7px 11px;border:1px solid #dce7f5;border-radius:7px;color:#174b84!important;text-decoration:none!important;font-weight:700}
.nclms-portal-player-heading{padding:22px 25px 12px}
.nclms-portal-player-heading h2,.nclms-portal-content-card h2{margin:6px 0 0;color:#14375e;font-size:clamp(21px,2.2vw,29px);font-weight:850;line-height:1.25}
.nclms-portal-video{width:100%;padding:0 25px 22px}
.nclms-portal-video iframe,.nclms-portal-video video{display:block;width:100%;max-height:590px;aspect-ratio:16/9;border:0;border-radius:12px;background:#071c34;object-fit:contain}
.nclms-portal-video>div{width:100%}
.nclms-portal-video>div iframe{width:100%;aspect-ratio:16/9;height:auto}
.nclms-portal-lesson-copy{padding:8px 25px 22px;color:#536d89;font-size:14px;line-height:1.8}
.nclms-portal-resource,.nclms-portal-empty-lesson{padding:25px;color:#647d99}
.nclms-portal-lesson-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:17px 25px;border-top:1px solid #eaf0f7}
.nclms-portal-next{margin-left:auto}
.nclms-portal-completed{color:#13845a;font-size:12px;font-weight:800}
.nclms-portal-course-progress{display:flex;align-items:center;gap:16px;margin:16px 2px 22px;color:#68809b;font-size:11px}
.nclms-portal-course-progress>div{flex:1}
.nclms-portal-bottom-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.8fr);gap:16px;margin-top:22px}
.nclms-portal-assessments,.nclms-portal-certificates{min-width:0;padding:18px;border:1px solid #e2eaf4;border-radius:15px;background:#fff;box-shadow:0 7px 22px rgba(25,60,102,.04)}
.nclms-portal-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}
.nclms-portal-section-head h2{margin:0;color:#15385f;font-size:16px;font-weight:850}
.nclms-portal-section-head>a{color:#0868ce!important;font-size:10px;font-weight:800;text-decoration:none!important}
.nclms-portal-assessment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.nclms-portal-assessment{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:12px;border:1px solid #e5edf6;border-radius:10px;background:#fbfdff}
.nclms-portal-assessment-icon{display:grid;place-items:center;width:27px;height:27px;margin-bottom:9px;border-radius:8px;background:#e8f2ff;color:#0868ce;font-weight:900}
.nclms-portal-assessment strong{color:#1a3b60;font-size:11px}
.nclms-portal-assessment small,.nclms-portal-assessment em{margin-top:5px;color:#7a8da4;font-size:9px;font-style:normal;line-height:1.4}
.nclms-portal-assessment a{margin-top:10px;padding:7px 9px;border-radius:6px;background:#0868ce;color:#fff!important;font-size:9px;font-weight:800;text-decoration:none!important}
.nclms-portal-certificate-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;padding:15px;text-align:center}
.nclms-portal-certificate-empty>span{display:grid;place-items:center;width:46px;height:46px;margin-bottom:10px;border-radius:12px;background:#eaf3ff;color:#2877c8;font-size:26px}
.nclms-portal-certificate-empty strong{color:#23476e;font-size:12px}
.nclms-portal-certificate-empty small{max-width:230px;margin-top:6px;color:#7a8da3;font-size:10px;line-height:1.5}
.nclms-portal-certificate-empty a{margin-top:12px;color:#0868ce!important;font-size:11px;font-weight:800;text-decoration:none!important}
.nclms-portal-main .nclms-flow-panel{margin:0;padding:26px;border:1px solid #e2eaf4;border-radius:15px;background:#fff;box-shadow:0 7px 22px rgba(25,60,102,.04)}
.nclms-portal-main .nclms-quiz-form{margin-top:16px}
.nclms-portal-main .nclms-quiz-form fieldset{padding:18px;border-color:#dfe9f5;border-radius:12px}
.nclms-portal-main .nclms-quiz-form legend{color:#15385f;font-size:16px;line-height:1.5}
.nclms-portal-main .nclms-quiz-option{padding:11px 13px;border:1px solid #e4ebf4;border-radius:8px;color:#385675;font-size:13px}
.nclms-portal-main .nclms-quiz-option:has(input:checked){border-color:#3b91e8;background:#f0f7ff}
@media(max-width:900px){
 .nclms-learning-portal{grid-template-columns:220px minmax(0,1fr)}
 .nclms-portal-sidebar{padding:18px 12px}
 .nclms-portal-main{padding:22px 18px}
 .nclms-portal-bottom-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
 body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal){width:calc(100% - 16px)!important;margin:12px auto 24px!important;border-radius:14px!important}
 .nclms-learning-portal{display:flex;flex-direction:column;min-height:0}
 .nclms-portal-sidebar{padding:12px;background:#0b2e56}
 .nclms-portal-brand{padding:0 4px 10px;border:0}
 .nclms-portal-brand-mark{width:36px;height:36px;font-size:19px}
 .nclms-portal-brand strong{font-size:14px}
 .nclms-portal-brand small{font-size:8px}
 .nclms-portal-overview{margin:7px 0 9px;padding:9px 10px;font-size:11px}
 .nclms-portal-nav{display:flex;flex-direction:row;gap:7px;overflow-x:auto;padding:2px 0 7px;scrollbar-width:thin}
 .nclms-portal-module{display:none}
 .nclms-portal-nav-item{flex:0 0 auto;max-width:190px;padding:8px;background:rgba(255,255,255,.07)}
 .nclms-portal-nav-num{flex-basis:25px;height:25px;font-size:9px}
 .nclms-portal-nav-item strong{font-size:10px}
 .nclms-portal-nav-item small{font-size:9px}
 .nclms-portal-help{display:none}
 .nclms-portal-main{padding:15px 11px 18px}
 .nclms-portal-topbar{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:13px}
 .nclms-portal-topbar h1{font-size:20px}
 .nclms-portal-progress{width:100%;flex-basis:auto}
 .nclms-portal-progress strong{text-align:left}
 .nclms-portal-content-card{padding:16px;border-radius:12px}
 .nclms-portal-player-card{padding:0}
 .nclms-portal-chapterbar{padding:10px 12px;font-size:9px}
 .nclms-portal-chapterbar a{padding:6px 8px;font-size:9px}
 .nclms-portal-player-heading{padding:16px 14px 10px}
 .nclms-portal-player-heading h2{font-size:19px}
 .nclms-portal-video{padding:0 10px 13px}
 .nclms-portal-video iframe,.nclms-portal-video video{border-radius:8px}
 .nclms-portal-lesson-copy{padding:8px 14px 16px;font-size:13px}
 .nclms-portal-lesson-footer{padding:12px 14px}
 .nclms-portal-bottom-grid{gap:12px;margin-top:13px}
 .nclms-portal-assessments,.nclms-portal-certificates{padding:13px}
 .nclms-portal-assessment-grid{grid-template-columns:1fr}
 .nclms-portal-assessment{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:9px;align-items:center}
 .nclms-portal-assessment-icon{grid-row:1/4;margin:0}
 .nclms-portal-assessment small,.nclms-portal-assessment em{margin-top:2px}
 .nclms-portal-assessment a{grid-column:2;justify-self:start;margin-top:6px}
 .nclms-portal-main .nclms-flow-panel{padding:16px}
}

/* v0.5.1 — responsive spacing and overflow refinement; original portal UI preserved */
body.nclms-course-page {
  overflow-x: clip;
}
body.nclms-course-page #content,
body.nclms-course-page .site-content,
body.nclms-course-page .content-area,
body.nclms-course-page #primary,
body.nclms-course-page .site-main {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin-top: 0;
  padding-top: 0;
}
body.nclms-course-page .site-content,
body.nclms-course-page #content {
  padding-left: 0;
  padding-right: 0;
}
body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal) {
  position: relative;
  left: auto;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: clip;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.nclms-learning-portal,
.nclms-learning-portal * {
  box-sizing: border-box;
}
.nclms-learning-portal {
  display: grid;
  grid-template-columns: 248px minmax(0, 1fr);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: calc(100vh - 32px);
  gap: 0;
  background: #fff;
}
.nclms-portal-sidebar {
  min-width: 0;
  min-height: calc(100vh - 32px);
}
.nclms-portal-main {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 20px clamp(18px, 2.2vw, 34px) 24px;
  overflow-wrap: anywhere;
}
.nclms-portal-topbar,
.nclms-portal-player-card,
.nclms-portal-course-progress,
.nclms-portal-bottom-grid,
.nclms-portal-assessments,
.nclms-portal-certificates {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.nclms-portal-nav-item,
.nclms-portal-nav-item strong,
.nclms-portal-nav-item small {
  min-width: 0;
}
.nclms-portal-nav-item:hover,
.nclms-portal-nav-item:focus-visible,
.nclms-portal-nav-item.is-active {
  color: #fff !important;
  background: linear-gradient(100deg, #0878ed, #0756c9);
}
.nclms-portal-nav-item:hover strong,
.nclms-portal-nav-item:focus-visible strong,
.nclms-portal-nav-item.is-active strong {
  color: #fff !important;
}
.nclms-portal-nav-item:hover small,
.nclms-portal-nav-item:focus-visible small,
.nclms-portal-nav-item.is-active small {
  color: #e4f1ff !important;
}
.nclms-portal-nav-item:hover .nclms-portal-nav-num,
.nclms-portal-nav-item:focus-visible .nclms-portal-nav-num,
.nclms-portal-nav-item.is-active .nclms-portal-nav-num {
  color: #0756c9 !important;
  background: #fff !important;
}
.nclms-portal-bottom-grid {
  grid-template-columns: minmax(0, 1.3fr) minmax(250px, .8fr);
  gap: 16px;
  margin-top: 18px;
}
.nclms-portal-assessment-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.nclms-portal-assessment {
  min-width: 0;
  overflow-wrap: anywhere;
}
.nclms-portal-video,
.nclms-portal-video > div {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.nclms-portal-video iframe,
.nclms-portal-video video,
.nclms-portal-video > div iframe,
.nclms-portal-video > div video {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  border-radius: 10px;
}
@media (max-width: 1100px) {
  .nclms-learning-portal {
    grid-template-columns: 225px minmax(0, 1fr);
  }
  .nclms-portal-main {
    padding: 18px 16px 22px;
  }
  .nclms-portal-bottom-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .nclms-portal-assessment-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 900px) {
  .nclms-learning-portal {
    grid-template-columns: 210px minmax(0, 1fr);
  }
  .nclms-portal-sidebar {
    padding: 16px 11px;
  }
  .nclms-portal-main {
    padding: 16px 13px 20px;
  }
  .nclms-portal-assessment-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal) {
    width: 100%;
    max-width: 100%;
    margin: 0;
    overflow: clip;
  }
  .nclms-learning-portal {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 0;
  }
  .nclms-portal-sidebar {
    width: 100%;
    min-height: 0;
    padding: 10px 11px 7px;
    border-right: 0;
    border-bottom: 1px solid #e3edf8;
    background: #f7fbff;
  }
  .nclms-portal-brand {
    padding: 0 3px 9px;
  }
  .nclms-portal-overview {
    margin: 7px 0;
  }
  .nclms-portal-nav {
    display: flex;
    flex-direction: row;
    gap: 6px;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding: 2px 0 7px;
    scrollbar-width: thin;
  }
  .nclms-portal-nav-item {
    flex: 0 0 auto;
    max-width: 190px;
    background: #edf5ff;
    color: #174b84 !important;
  }
  .nclms-portal-nav-item:hover,
  .nclms-portal-nav-item:focus-visible,
  .nclms-portal-nav-item.is-active {
    color: #fff !important;
    background: #0756c9;
  }
  .nclms-portal-main {
    width: 100%;
    min-width: 0;
    padding: 13px 10px 18px;
  }
  .nclms-portal-topbar {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 12px;
  }
  .nclms-portal-topbar h1 {
    font-size: clamp(19px, 5vw, 23px);
    overflow-wrap: anywhere;
  }
  .nclms-portal-progress {
    width: 100%;
    flex: 0 1 auto;
  }
  .nclms-portal-content-card {
    padding: 15px;
  }
  .nclms-portal-player-card {
    padding: 0;
  }
  .nclms-portal-chapterbar {
    flex-wrap: wrap;
    padding: 10px 12px;
  }
  .nclms-portal-player-heading {
    padding: 14px 12px 9px;
  }
  .nclms-portal-player-heading h2 {
    font-size: 18px;
    overflow-wrap: anywhere;
  }
  .nclms-portal-video {
    padding: 0 9px 12px;
  }
  .nclms-portal-video iframe,
  .nclms-portal-video video,
  .nclms-portal-video > div iframe,
  .nclms-portal-video > div video {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
  }
  .nclms-portal-lesson-footer {
    flex-wrap: wrap;
    padding: 12px 14px;
  }
  .nclms-portal-bottom-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    margin-top: 13px;
  }
  .nclms-portal-assessment-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .nclms-portal-assessment {
    padding: 10px;
  }
  .nclms-portal-certificates,
  .nclms-portal-assessments {
    padding: 13px;
  }
}
@media (max-width: 390px) {
  .nclms-portal-main {
    padding-left: 8px;
    padding-right: 8px;
  }
  .nclms-portal-assessment-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .nclms-portal-chapterbar a {
    max-width: 100%;
    overflow-wrap: anywhere;
  }
}
@media (prefers-reduced-motion: reduce) {
  .nclms-learning-portal *,
  .nclms-learning-portal *::before,
  .nclms-learning-portal *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}


/* v0.5.2 course portal refinements: scoped to the learning portal only */
body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal){
  width:calc(100% - 64px);
  max-width:1500px;
  margin:24px auto;
}
body.nclms-course-page .nclms-learning-portal{
  width:100%;
  min-width:0;
}
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item:visited,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item strong,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item:hover strong,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item:focus strong,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item.is-active strong{
  color:#fff!important;
}
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item small,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item:hover small,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item:focus small,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item.is-active small{
  color:#d8eaff!important;
}
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item:hover,
body.nclms-course-page .nclms-portal-sidebar .nclms-portal-nav-item:focus-visible{
  background:linear-gradient(100deg,#0878ed,#1262ce)!important;
  color:#fff!important;
}
body.nclms-course-page .nclms-portal-assessment{
  align-items:center;
  text-align:center;
  justify-content:flex-start;
}
body.nclms-course-page .nclms-portal-assessment-icon{
  margin:0 auto 9px;
}
body.nclms-course-page .nclms-portal-assessment strong,
body.nclms-course-page .nclms-portal-assessment small,
body.nclms-course-page .nclms-portal-assessment em{
  display:block;
  width:100%;
  text-align:center;
}
body.nclms-course-page .nclms-portal-assessment a{
  align-self:center;
  margin-top:10px;
  text-align:center;
}
@media(max-width:900px){
  body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal){
    width:calc(100% - 36px);
  }
}
@media(max-width:640px){
  body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal){
    width:calc(100% - 20px)!important;
    margin:10px auto 20px!important;
  }
  body.nclms-course-page .nclms-portal-assessment{
    display:flex;
    align-items:center;
    text-align:center;
  }
  body.nclms-course-page .nclms-portal-assessment-icon{
    margin:0 auto 8px;
  }
}

/* v0.5.2: balanced portal gutter; sidebar track remains 278px */
.nclms-learning-portal{column-gap:28px !important}
@media(max-width:900px){.nclms-learning-portal{column-gap:18px !important}}
@media(max-width:700px){.nclms-learning-portal{column-gap:0 !important}}
.nclms-portal-video video{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.nclms-video-watch-note{margin:8px 24px 16px;color:#637b98;font-size:12px}
.nclms-complete-lesson:disabled{opacity:.55;cursor:not-allowed}


/* v0.5.4 spacing, brand contrast and guided assessment refinements */
.nclms-learning-portal{gap:32px!important;padding:24px!important}
.nclms-portal-main{padding:30px 32px!important;gap:28px!important}
.nclms-portal-topbar{margin-bottom:12px!important;gap:24px!important}
.nclms-portal-content-card,.nclms-flow-panel{padding:30px!important;margin-bottom:24px!important}
.nclms-portal-player-heading{margin:26px 0 22px!important}
.nclms-portal-video{margin:22px 0!important}
.nclms-portal-brand strong,.nclms-portal-brand:hover strong,.nclms-portal-brand:focus strong{color:#fff!important}
.nclms-portal-brand small,.nclms-portal-brand:hover small,.nclms-portal-brand:focus small{color:#cfe3ff!important}
.nclms-portal-nav-item strong,.nclms-portal-nav-item:hover strong,.nclms-portal-nav-item:focus strong{color:#fff!important}
.nclms-portal-nav-item small{color:#cfe3ff!important}
.nclms-flow-panel h2{margin:0 0 18px!important}
.nclms-flow-panel p{margin:0 0 22px!important}
.nclms-quiz-shell{width:100%;margin:24px 0}
.nclms-quiz-timer{position:sticky;top:8px;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#eaf4ff;border:1px solid #cfe2ff;border-radius:12px;padding:13px 18px;margin:0 0 22px;color:#092b59;font-weight:700}
.nclms-timer-value{font-variant-numeric:tabular-nums;color:#0756c9;font-size:1.15em}
.nclms-quiz-step{border:1px solid #d9e7f8;border-radius:16px;padding:24px;margin:0 0 20px;background:#fff}
.nclms-quiz-step[hidden]{display:none!important}
.nclms-quiz-step legend{font-weight:700;font-size:1.12rem;color:#092b59;padding:0 8px;max-width:100%}
.nclms-quiz-option{display:flex;align-items:flex-start;gap:12px;padding:13px 15px;margin:10px 0;border:1px solid #e0eaf7;border-radius:10px;background:#fafdff;cursor:pointer}
.nclms-quiz-option:has(input:checked){border-color:#0756c9;background:#eaf4ff}
.nclms-quiz-option input{margin-top:4px;flex:0 0 auto}
.nclms-quiz-option input:disabled{cursor:not-allowed}
.nclms-quiz-navigation{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px}
.nclms-quiz-step-count{color:#54708f;font-weight:600}
.nclms-question-video{margin:18px 0}
.nclms-question-video video{display:block;width:100%;max-height:460px;object-fit:contain;border-radius:12px;background:#071d36}
.nclms-video-gate-note{display:block;margin-top:10px;color:#0756c9;font-weight:600}
.nclms-portal-video video{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
@media(max-width:767px){
 .nclms-learning-portal{gap:16px!important;padding:12px!important}
 .nclms-portal-main{padding:18px 14px!important;gap:18px!important}
 .nclms-portal-content-card,.nclms-flow-panel{padding:18px!important}
 .nclms-quiz-step{padding:18px 14px}
 .nclms-quiz-navigation{align-items:stretch;flex-wrap:wrap}
 .nclms-quiz-navigation .nclms-button{width:100%}
}


/* v0.5.5: balanced portal spacing and visually locked curriculum steps */
.nclms-learning-portal .nclms-portal-main{
  padding:34px 40px 40px;
}
.nclms-learning-portal .nclms-portal-topbar{
  margin-bottom:28px;
  gap:24px;
}
.nclms-learning-portal .nclms-portal-content-card{
  margin-bottom:22px;
}
.nclms-learning-portal .nclms-flow-panel{
  padding:34px;
}
.nclms-learning-portal .nclms-portal-bottom-grid{
  gap:20px;
  margin-top:26px;
}
.nclms-learning-portal .nclms-portal-assessments,
.nclms-learning-portal .nclms-portal-certificates{
  padding:22px;
}
.nclms-learning-portal .nclms-portal-section-head{
  margin-bottom:20px;
}
.nclms-learning-portal .nclms-portal-assessment-grid{
  gap:12px;
}
.nclms-learning-portal .nclms-portal-assessment{
  align-items:center;
  text-align:center;
  padding:16px 12px;
}
.nclms-learning-portal .nclms-portal-nav-item.is-locked{
  color:#fff!important;
  opacity:.48;
  cursor:not-allowed;
  pointer-events:none;
  background:transparent!important;
}
.nclms-learning-portal .nclms-portal-nav-item.is-locked strong,
.nclms-learning-portal .nclms-portal-nav-item.is-locked small{
  color:#fff!important;
}
@media(max-width:900px){
  .nclms-learning-portal .nclms-portal-main{padding:24px 22px 28px}
}
@media(max-width:600px){
  .nclms-learning-portal .nclms-portal-main{padding:18px 14px 22px}
  .nclms-learning-portal .nclms-flow-panel{padding:22px 18px}
  .nclms-learning-portal .nclms-portal-bottom-grid{gap:14px}
  .nclms-learning-portal .nclms-portal-assessments,
  .nclms-learning-portal .nclms-portal-certificates{padding:16px}
}


/* v0.5.6: user-started assessment timer and readable mobile portal branding */
.nclms-quiz-start-panel,
.nclms-quiz-expired-panel{
  margin:16px 0 22px;
  padding:22px;
  border:1px solid #cfe2ff;
  border-radius:14px;
  background:#f4f9ff;
  color:#173b63;
}
.nclms-quiz-start-panel p,
.nclms-quiz-expired-panel p{
  margin:0 0 14px;
  color:#456582;
}
.nclms-quiz-start-panel[hidden],
.nclms-quiz-expired-panel[hidden]{display:none!important}
.nclms-quiz-form[hidden]{display:none!important}
.nclms-quiz-start:disabled,
.nclms-quiz-retry:disabled{opacity:.65;cursor:wait}
@media(max-width:640px){
  .nclms-portal-brand strong,
  .nclms-portal-brand:hover strong,
  .nclms-portal-brand:focus strong{
    color:#092b59!important;
  }
  .nclms-portal-brand small,
  .nclms-portal-brand:hover small,
  .nclms-portal-brand:focus small{
    color:#0756c9!important;
  }
  .nclms-portal-nav-item,
  .nclms-portal-nav-item strong{
    color:#174b84!important;
  }
  .nclms-portal-nav-item small{color:#56708f!important}
  .nclms-portal-nav-item:hover,
  .nclms-portal-nav-item:focus-visible,
  .nclms-portal-nav-item.is-active,
  .nclms-portal-nav-item:hover strong,
  .nclms-portal-nav-item:focus-visible strong,
  .nclms-portal-nav-item.is-active strong{
    color:#fff!important;
  }
  .nclms-portal-nav-item:hover small,
  .nclms-portal-nav-item:focus-visible small,
  .nclms-portal-nav-item.is-active small{
    color:#e4f1ff!important;
  }
}


/* v0.5.7: white page canvas, compact course sidebar, readable mobile navigation */
body.nclms-course-page,
body.nclms-course-page #page,
body.nclms-course-page .site,
body.nclms-course-page .site-content,
body.nclms-course-page .content-area {background:#ffffff !important}
body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal){
  background:#fff !important;width:calc(100% - 48px);max-width:1600px;margin:24px auto;
}
.nclms-learning-portal{
  grid-template-columns:260px minmax(0,1fr) !important;align-items:start;
  background:#f4f8fe;min-height:0 !important;
}
.nclms-portal-sidebar{align-self:start;min-height:0 !important;height:auto !important}
.nclms-portal-help{margin-top:22px !important;padding:14px 10px 2px !important}
.nclms-portal-help small a{color:#cfe3ff !important;text-decoration:none;overflow-wrap:anywhere}
.nclms-portal-help small a:hover,.nclms-portal-help small a:focus{color:#fff !important;text-decoration:underline}
.nclms-portal-main{min-width:0;padding:36px 38px 42px !important}
.nclms-portal-content-card,.nclms-flow-panel{margin-bottom:24px !important}
@media(max-width:900px){
 body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal){width:calc(100% - 32px)}
 .nclms-learning-portal{grid-template-columns:230px minmax(0,1fr) !important}
 .nclms-portal-main{padding:26px 22px 30px !important}
}
@media(max-width:700px){
 body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal){width:calc(100% - 20px) !important;margin:10px auto 18px !important}
 .nclms-learning-portal{grid-template-columns:minmax(0,1fr) !important;align-items:stretch}
 .nclms-portal-sidebar{width:100%;min-height:0 !important;height:auto !important;padding:16px 14px !important;border-radius:16px 16px 0 0}
 .nclms-portal-brand strong{color:#fff !important}
 .nclms-portal-brand small{color:#cfe3ff !important}
 .nclms-portal-nav-item,.nclms-portal-nav-item strong{color:#173b63 !important}
 .nclms-portal-nav-item small{color:#526f91 !important}
 .nclms-portal-nav-item.is-active,.nclms-portal-nav-item:hover,.nclms-portal-nav-item:focus-visible{background:linear-gradient(100deg,#0878ed,#1262ce) !important;color:#fff !important}
 .nclms-portal-nav-item.is-active strong,.nclms-portal-nav-item:hover strong,.nclms-portal-nav-item:focus-visible strong,
 .nclms-portal-nav-item.is-active small,.nclms-portal-nav-item:hover small,.nclms-portal-nav-item:focus-visible small{color:#fff !important}
 .nclms-portal-nav-item.is-locked,.nclms-portal-nav-item.is-locked strong,.nclms-portal-nav-item.is-locked small{color:#526f91 !important;opacity:1 !important}
 .nclms-portal-nav-item.is-locked .nclms-portal-nav-num{color:#fff !important}
 .nclms-portal-help{margin-top:16px !important;padding:12px 8px 0 !important}
 .nclms-portal-help span{color:#fff !important}
 .nclms-portal-help small a{color:#d8eaff !important}
 .nclms-portal-main{padding:22px 16px 26px !important}
}
@media(max-width:390px){
 body.nclms-course-page .nclms-learning-flow:has(.nclms-learning-portal){width:calc(100% - 12px) !important}
 .nclms-portal-main{padding:18px 12px 22px !important}
}


/* v0.6.1: full-width white canvas and centered LMS on shortcode course pages.
   Scope is activated by course_body_class() for both LMS post types and shortcode pages. */
body.nclms-course-page,
body.nclms-course-page #page,
body.nclms-course-page .site,
body.nclms-course-page #content,
body.nclms-course-page .site-content,
body.nclms-course-page .content-area,
body.nclms-course-page .blog-details-area,
body.nclms-course-page .blog-details-area .blog-details,
body.nclms-course-page .blog-details-area .blog-details-content {
  background: #ffffff !important;
}
body.nclms-course-page .blog-details-area {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 24px 0 48px !important;
}
body.nclms-course-page .blog-details-area > .container {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.nclms-course-page .blog-details-area > .container > .row {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}
body.nclms-course-page .blog-details-area > .container > .row > .col-lg-8,
body.nclms-course-page .blog-details-area > .container > .row > .col-md-12 {
  float: none !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.nclms-course-page .blog-details-area > .container > .row > .col-lg-4,
body.nclms-course-page .blog-details-area #secondary {
  display: none !important;
}
body.nclms-course-page .blog-details,
body.nclms-course-page .blog-details-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.nclms-course-page .blog-details-content > .entry-meta,
body.nclms-course-page .blog-details-content > .article-author {
  display: none !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
  display: block !important;
  box-sizing: border-box !important;
  width: min(100% - 48px, 1500px) !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #ffffff !important;
}
body.nclms-course-page .nclms-learning-portal {
  width: 100% !important;
  max-width: 100% !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}
body.nclms-course-page .nclms-learning-portal *,
body.nclms-course-page .nclms-course-shell * {
  box-sizing: border-box;
}
@media (max-width: 767px) {
  body.nclms-course-page .blog-details-area {
    padding: 12px 0 28px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
    width: calc(100% - 20px) !important;
    margin: 0 auto !important;
  }
}
@media (max-width: 390px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
    width: calc(100% - 12px) !important;
  }
}


/* v0.6.3: spacious, balanced course overview cards */
body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-flow-overview {
  width: 100% !important;
  max-width: 100% !important;
  padding: clamp(28px, 4.2vw, 58px) !important;
  margin: 0 auto 32px !important;
}
body.nclms-course-page .nclms-flow-overview .nclms-flow-kicker {
  display: inline-block;
  margin: 0 0 18px !important;
}
body.nclms-course-page .nclms-flow-overview h2 {
  margin: 0 0 20px !important;
}
body.nclms-course-page .nclms-flow-overview-copy {
  max-width: 980px !important;
  margin: 0 0 30px !important;
  line-height: 1.85 !important;
}
body.nclms-course-page .nclms-flow-overview-copy p {
  margin: 0 !important;
}
body.nclms-course-page .nclms-flow-cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: clamp(20px, 2.2vw, 32px) !important;
  margin: 32px 0 34px !important;
  padding: 0 !important;
}
body.nclms-course-page .nclms-flow-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 18px !important;
}
body.nclms-course-page .nclms-flow-card > img,
body.nclms-course-page .nclms-flow-card > .nclms-flow-card-placeholder {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: clamp(170px, 17vw, 225px) !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  object-position: center !important;
}
body.nclms-course-page .nclms-flow-card > div:last-child {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 112px !important;
  padding: 23px 24px 25px !important;
}
body.nclms-course-page .nclms-flow-card h3 {
  margin: 0 !important;
  line-height: 1.3 !important;
}
body.nclms-course-page .nclms-flow-card p {
  margin: 0 !important;
  line-height: 1.7 !important;
}
body.nclms-course-page .nclms-flow-primary {
  margin-top: 4px !important;
}
@media (max-width: 900px) {
  body.nclms-course-page .nclms-flow-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px !important;
  }
  body.nclms-course-page .nclms-flow-card:last-child {
    grid-column: 1 / -1;
    width: calc(50% - 11px);
    justify-self: center;
  }
  body.nclms-course-page .nclms-flow-card > img,
  body.nclms-course-page .nclms-flow-card > .nclms-flow-card-placeholder {
    height: clamp(165px, 24vw, 210px) !important;
  }
}
@media (max-width: 600px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-flow-overview {
    padding: 24px 20px !important;
    margin-bottom: 22px !important;
  }
  body.nclms-course-page .nclms-flow-overview .nclms-flow-kicker {
    margin-bottom: 13px !important;
  }
  body.nclms-course-page .nclms-flow-overview h2 {
    margin-bottom: 14px !important;
  }
  body.nclms-course-page .nclms-flow-overview-copy {
    margin-bottom: 22px !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
  }
  body.nclms-course-page .nclms-flow-cards {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    margin: 22px 0 26px !important;
  }
  body.nclms-course-page .nclms-flow-card:last-child {
    grid-column: auto;
    width: 100%;
  }
  body.nclms-course-page .nclms-flow-card {
    display: grid !important;
    grid-template-columns: minmax(108px, 34%) minmax(0, 1fr) !important;
    min-height: 132px !important;
  }
  body.nclms-course-page .nclms-flow-card > img,
  body.nclms-course-page .nclms-flow-card > .nclms-flow-card-placeholder {
    width: 100% !important;
    height: 100% !important;
    min-height: 132px !important;
    aspect-ratio: auto !important;
  }
  body.nclms-course-page .nclms-flow-card > div:last-child {
    min-height: 132px !important;
    padding: 17px 15px !important;
    gap: 7px !important;
  }
  body.nclms-course-page .nclms-flow-card h3 {
    font-size: 16px !important;
  }
  body.nclms-course-page .nclms-flow-card p {
    font-size: 12px !important;
  }
  body.nclms-course-page .nclms-flow-primary {
    width: 100% !important;
    justify-content: center !important;
    margin-top: 2px !important;
  }
}
@media (max-width: 380px) {
  body.nclms-course-page .nclms-flow-card {
    grid-template-columns: 100px minmax(0, 1fr) !important;
  }
  body.nclms-course-page .nclms-flow-card > div:last-child {
    padding: 13px 12px !important;
  }
}


/* v0.6.4 — correct parent/child spacing on the course overview landing page.
   Keep the existing visual design; apply spacing at the actual container levels. */
body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
  padding: clamp(30px, 3vw, 42px) !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-course-summary {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  margin: 0 0 32px !important;
  padding: 20px 22px 24px !important;
  border-bottom: 1px solid #e9eef5 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-course-summary .nclms-course-statusbar {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 14px 16px !important;
  min-height: 48px !important;
  padding: 0 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-flow-overview {
  box-sizing: border-box !important;
  width: 100% !important;
  margin: 0 auto 30px !important;
  padding: clamp(35px, 3vw, 40px) !important;
}
@media (max-width: 767px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
    padding: 18px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-course-summary {
    margin-bottom: 26px !important;
    padding: 15px 14px 19px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-course-summary .nclms-course-statusbar {
    gap: 10px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-flow-overview {
    padding: 26px 22px !important;
    margin-bottom: 22px !important;
  }
}
@media (max-width: 390px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
    padding: 12px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-course-summary {
    padding: 13px 10px 16px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-flow-overview {
    padding: 22px 16px !important;
  }
}


/* v0.6.5 — pre-test learning dashboard: remove enrollment banner and balance parent/child spacing.
   Scoped to the learning-stage view so the course overview and other pages remain unchanged. */
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest {
  box-sizing: border-box !important;
  width: min(calc(100% - 48px), 1500px) !important;
  max-width: 1500px !important;
  margin: 28px auto 44px !important;
  padding: 36px !important;
  background: #ffffff !important;
  border-radius: 20px !important;
}
body.nclms-course-page .nclms-stage-pretest > .nclms-learning-portal {
  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) !important;
  column-gap: 32px !important;
  row-gap: 0 !important;
  align-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  background: #f4f8fe !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}
body.nclms-course-page .nclms-stage-pretest .nclms-portal-sidebar {
  width: 100% !important;
  min-width: 0 !important;
  padding: 24px 18px !important;
  border-radius: 16px !important;
}
body.nclms-course-page .nclms-stage-pretest .nclms-portal-main {
  min-width: 0 !important;
  width: 100% !important;
  padding: 40px 38px !important;
  background: #f4f8fe !important;
}
body.nclms-course-page .nclms-stage-pretest .nclms-portal-topbar {
  margin: 0 0 28px !important;
  padding: 0 !important;
  gap: 22px !important;
}
body.nclms-course-page .nclms-stage-pretest .nclms-flow-panel {
  box-sizing: border-box !important;
  width: 100% !important;
  margin: 0 0 28px !important;
  padding: 32px !important;
}
body.nclms-course-page .nclms-stage-pretest .nclms-portal-bottom-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.3fr) minmax(260px, .8fr) !important;
  gap: 26px !important;
  margin: 28px 0 0 !important;
  padding: 0 !important;
}
body.nclms-course-page .nclms-stage-pretest .nclms-portal-assessments,
body.nclms-course-page .nclms-stage-pretest .nclms-portal-certificates {
  box-sizing: border-box !important;
  min-width: 0 !important;
  padding: 28px !important;
  margin: 0 !important;
}
body.nclms-course-page .nclms-stage-pretest .nclms-portal-section-head {
  margin: 0 0 22px !important;
}
body.nclms-course-page .nclms-stage-pretest .nclms-portal-assessment-grid {
  gap: 14px !important;
}
@media (max-width: 1100px) {
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest {
    width: calc(100% - 32px) !important;
    padding: 26px !important;
  }
  body.nclms-course-page .nclms-stage-pretest > .nclms-learning-portal {
    grid-template-columns: 220px minmax(0, 1fr) !important;
    column-gap: 24px !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-main {
    padding: 32px 28px !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-bottom-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px !important;
  }
}
@media (max-width: 767px) {
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest {
    width: calc(100% - 20px) !important;
    margin: 12px auto 24px !important;
    padding: 12px !important;
    border-radius: 15px !important;
  }
  body.nclms-course-page .nclms-stage-pretest > .nclms-learning-portal {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    border-radius: 13px !important;
    overflow: visible !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-sidebar {
    width: 100% !important;
    padding: 16px 14px !important;
    border-radius: 12px !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-main {
    width: 100% !important;
    padding: 24px 18px !important;
    border-radius: 12px !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-topbar {
    margin-bottom: 22px !important;
    flex-wrap: wrap !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-flow-panel {
    margin-bottom: 20px !important;
    padding: 22px 18px !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-bottom-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
    margin-top: 20px !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-assessments,
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-certificates {
    padding: 22px 18px !important;
  }
}
@media (max-width: 390px) {
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest {
    width: calc(100% - 12px) !important;
    padding: 8px !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-portal-main {
    padding: 20px 12px !important;
  }
  body.nclms-course-page .nclms-stage-pretest .nclms-flow-panel {
    padding: 18px 14px !important;
  }
}


/* v0.6.6: pre-test learning portal mobile sidebar contrast + support link.
   Scoped to the pre-test learning stage only. */
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-learning-portal .nclms-portal-sidebar {
  background: #0B2B50 !important; color: #FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-sidebar,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-sidebar * { text-shadow:none; }
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand strong,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-overview,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item strong,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-help > span { color:#FFFFFF !important; }
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand small,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item small,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-module { color:#BFD3EA !important; }
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item.is-active,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item:hover { background:#0875E8 !important; color:#FFFFFF !important; }
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item.is-active strong,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item.is-active small { color:#FFFFFF !important; }
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item.is-locked,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item.is-locked strong,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item.is-locked small { color:#BFD3EA !important; }
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-num { color:#FFFFFF !important; background:rgba(255,255,255,.14) !important; }
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-support-link {
 display:inline-flex; align-items:center; width:fit-content; max-width:100%; margin-top:7px; padding:7px 10px;
 border-radius:7px; color:#BFD3EA !important; font-size:12px; font-weight:750; line-height:1.4;
 text-decoration:underline; text-decoration-color:rgba(191,211,234,.55); text-underline-offset:3px;
 overflow-wrap:anywhere; transition:color .18s ease,background .18s ease;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-support-link:hover,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-support-link:focus-visible {
 color:#FFFFFF !important; background:rgba(255,255,255,.12); outline:2px solid rgba(191,211,234,.65); outline-offset:2px;
}
@media(max-width:767px) {
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-learning-portal {
  width:100% !important; max-width:100% !important; min-width:0 !important; overflow:hidden !important;
 }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-sidebar {
  display:flex !important; width:100% !important; max-width:100% !important; min-width:0 !important;
  padding:20px 16px !important; border-radius:12px !important; background:#0B2B50 !important;
  color:#FFFFFF !important; overflow:visible !important;
 }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand strong,
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand:hover strong,
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand:focus strong { color:#FFFFFF !important; }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand small,
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand:hover small,
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand:focus small { color:#BFD3EA !important; }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav { width:100%; min-width:0; gap:7px !important; }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item {
  width:100%; min-width:0; padding:12px 10px !important; white-space:normal !important;
 }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item strong,
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item small {
  overflow:visible !important; text-overflow:clip !important; white-space:normal !important; overflow-wrap:anywhere;
 }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-module { color:#BFD3EA !important; }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-help {
  width:100%; margin-top:18px !important; padding:16px 8px 2px !important;
 }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-help > span { color:#FFFFFF !important; }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-support-link {
  min-height:40px; padding:9px 11px; color:#FFFFFF !important; background:rgba(255,255,255,.09); text-decoration:none;
 }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-main {
  min-width:0 !important; width:100% !important; max-width:100% !important;
 }
}
@media(max-width:380px) {
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-sidebar { padding:17px 12px !important; }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand { gap:9px; padding-left:2px; padding-right:2px; }
 body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item { gap:8px; }
}


/* v0.6.7: readable typography for the pre-test learning portal only.
   Font sizing is adjusted without changing card dimensions, colors, or layout. */
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand strong {
  font-size: 19px !important; line-height: 1.25 !important; font-weight: 800 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand small {
  font-size: 12.5px !important; line-height: 1.35 !important; letter-spacing: .13em !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-overview,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item strong {
  font-size: 15.5px !important; line-height: 1.4 !important; font-weight: 650 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item.is-active strong {
  font-weight: 800 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item small {
  font-size: 12.5px !important; line-height: 1.4 !important; font-weight: 550 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-module {
  font-size: 13.5px !important; line-height: 1.4 !important; font-weight: 800 !important;
  letter-spacing: .08em !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-help > span {
  font-size: 15.5px !important; line-height: 1.4 !important; font-weight: 800 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-support-link {
  font-size: 14.5px !important; line-height: 1.4 !important; font-weight: 650 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-section-head h2 {
  font-size: 31px !important; line-height: 1.18 !important; font-weight: 800 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-section-head > a {
  font-size: 13.5px !important; line-height: 1.4 !important; font-weight: 650 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-assessment > strong {
  font-size: 14.5px !important; line-height: 1.35 !important; font-weight: 700 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-assessment > small,
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-assessment > em {
  font-size: 12.5px !important; line-height: 1.45 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-assessment > a {
  font-size: 13.5px !important; line-height: 1.4 !important; font-weight: 700 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-certificate-empty > strong {
  font-size: 15.5px !important; line-height: 1.4 !important; font-weight: 700 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-certificate-empty > small {
  font-size: 13.5px !important; line-height: 1.5 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-certificate-empty > span {
  font-size: 30px !important; line-height: 1 !important;
}
@media (max-width: 1100px) {
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-section-head h2 {
    font-size: 28px !important;
  }
}
@media (max-width: 767px) {
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-brand strong { font-size: 18px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-overview,
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-nav-item strong { font-size: 15px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-section-head h2 { font-size: 26px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-assessment > strong { font-size: 14px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-stage-pretest .nclms-portal-certificate-empty > strong { font-size: 15px !important; }
}


/* v0.6.8: shared NCLMS portal design system across overview, pre-test,
   lessons/chapters, quizzes, post-test, submitted and certificate stages. */
body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
  box-sizing:border-box; max-width:1560px; width:min(calc(100% - 40px),1560px);
  margin:28px auto 44px; padding:36px; background:#fff; border-radius:20px;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-learning-portal {
  display:grid; grid-template-columns:minmax(235px,270px) minmax(0,1fr);
  gap:30px; align-items:stretch; width:100%; min-width:0; overflow:visible;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-sidebar {
  box-sizing:border-box; min-width:0; width:100%; padding:26px 20px;
  border-radius:16px; background:#0B2B50 !important; color:#fff !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-sidebar,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-sidebar * {
  text-shadow:none;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand {
  display:flex; align-items:center; gap:12px; min-width:0; width:100%;
  color:#fff !important; text-decoration:none; flex-wrap:nowrap;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand > span:last-child {
  display:flex; flex-direction:column; min-width:0; flex:1 1 auto;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand strong {
  display:block; color:#fff !important; font-size:20px !important; line-height:1.2;
  font-weight:800; white-space:nowrap; letter-spacing:-.025em;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand small {
  display:block; margin-top:4px; color:#BFD3EA !important; font-size:13px !important;
  line-height:1.35; font-weight:650; letter-spacing:.13em;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand-mark {
  display:grid; place-items:center; flex:0 0 38px; width:38px; height:38px;
  border-radius:11px; color:#fff; background:#0875E8; font-size:22px; line-height:1;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item {
  color:#fff !important; font-size:16px !important; line-height:1.4; font-weight:650;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview {
  display:flex; align-items:center; gap:9px; margin-top:24px; padding:11px 12px;
  border-radius:9px; text-decoration:none;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav {
  display:flex; flex-direction:column; gap:7px; min-width:0; margin-top:12px;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item {
  display:flex; align-items:center; gap:11px; min-width:0; padding:11px 10px;
  border-radius:10px; background:transparent; text-decoration:none; transition:background .18s ease;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item > span:nth-child(2) {
  display:flex; flex:1 1 auto; flex-direction:column; min-width:0;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item strong {
  color:#fff !important; font-size:16px !important; line-height:1.35; font-weight:650;
  overflow-wrap:anywhere;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item small {
  color:#BFD3EA !important; font-size:13px !important; line-height:1.4; font-weight:500;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-module {
  margin:17px 10px 6px; color:#BFD3EA !important; font-size:14px !important;
  line-height:1.4; font-weight:800; letter-spacing:.08em; text-transform:uppercase;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-num {
  display:grid; place-items:center; flex:0 0 32px; width:32px; height:32px;
  border-radius:9px; color:#fff !important; background:rgba(255,255,255,.14);
  font-size:13px; font-weight:800;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview:hover {
  background:#0875E8 !important; color:#fff !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active strong,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active small { color:#fff !important; }
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-locked strong { color:#fff !important; }
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-locked small { color:#AFC4DE !important; }
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item .nclms-portal-check { color:#7DE0AE !important; }
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help {
  display:flex; flex-direction:column; align-items:flex-start; margin-top:24px;
  padding:18px 10px 0; border-top:1px solid rgba(255,255,255,.16);
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help > span {
  color:#fff !important; font-size:16px !important; font-weight:800; line-height:1.4;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link {
  display:inline-flex; align-items:center; width:fit-content; max-width:100%; margin-top:7px;
  padding:7px 10px; border-radius:7px; color:#BFD3EA !important; font-size:15px !important;
  font-weight:650; line-height:1.4; text-decoration:none; overflow-wrap:anywhere;
  transition:color .18s ease,background .18s ease;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link:focus-visible {
  color:#fff !important; background:rgba(255,255,255,.13); outline:2px solid rgba(191,211,234,.65); outline-offset:2px;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-main {
  box-sizing:border-box; min-width:0; width:100%; padding:40px;
  border-radius:18px; overflow:hidden;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-section-head h2 {
  font-size:32px !important; line-height:1.18; font-weight:800;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-section-head > a {
  font-size:14px !important; line-height:1.4; font-weight:650;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-assessment > strong {
  font-size:15px !important; line-height:1.35; font-weight:700;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-assessment > small,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-assessment > em {
  font-size:13.5px !important; line-height:1.45;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-assessment > a {
  font-size:14px !important; line-height:1.4; font-weight:700;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-certificate-empty > strong {
  font-size:16px !important; line-height:1.4; font-weight:700;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-certificate-empty > small {
  font-size:14px !important; line-height:1.5;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-bottom-grid {
  gap:30px !important;
}
@media (max-width:1100px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow { width:calc(100% - 28px); padding:24px; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-learning-portal {
    grid-template-columns:minmax(205px,230px) minmax(0,1fr); gap:22px;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-main { padding:30px; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand strong { font-size:18px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-section-head h2 { font-size:28px !important; }
}
@media (max-width:767px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
    width:calc(100% - 16px); margin:12px auto 24px; padding:10px; border-radius:14px;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-learning-portal {
    display:flex; flex-direction:column; gap:14px; width:100%; min-width:0; overflow:visible;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-sidebar {
    display:flex; flex-direction:column; width:100%; max-width:100%; min-width:0;
    padding:19px 15px; border-radius:12px; overflow:visible;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand strong { font-size:18px !important; white-space:nowrap; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand small { font-size:12px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview,
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item strong { font-size:15px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item { min-height:44px; padding:10px; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-main {
    width:100%; max-width:100%; min-width:0; padding:24px 18px; border-radius:12px;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-topbar { flex-wrap:wrap; gap:14px; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-section-head h2 { font-size:26px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-bottom-grid {
    grid-template-columns:minmax(0,1fr); gap:16px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-assessments,
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-certificates { min-width:0; padding:22px 18px; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-flow-panel { min-width:0; padding:24px 18px; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow video { max-width:100%; height:auto; }
}
@media (max-width:390px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand { gap:9px; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand strong { font-size:16px !important; }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-main { padding:20px 13px; }
}

/* Minimal playback UI for local MP4 learning videos. This discourages casual
   seeking/download controls; it is not DRM or protection against capture. */
body.nclms-course-page .nclms-secure-video-ui { position:relative; width:100%; }
body.nclms-course-page .nclms-secure-video-ui video { display:block; width:100%; }
body.nclms-course-page .nclms-secure-video-play {
  position:absolute; z-index:2; left:50%; top:50%; transform:translate(-50%,-50%);
  min-width:58px; min-height:58px; border:0; border-radius:50%; background:#0875E8;
  color:#fff; font-size:24px; font-weight:800; cursor:pointer; box-shadow:0 6px 22px rgba(0,0,0,.25);
}
body.nclms-course-page .nclms-secure-video-play[hidden] { display:none !important; }
body.nclms-course-page .nclms-secure-video-progress {
  position:absolute; z-index:2; left:0; right:0; bottom:0; height:5px; background:rgba(255,255,255,.25);
}
body.nclms-course-page .nclms-secure-video-progress > span {
  display:block; height:100%; width:0; background:#0875E8; transition:width .12s linear;
}


/* v0.6.9: all-stage responsive layout, horizontal mobile curriculum and
   accessible custom video controls. Scoped to the NCLMS learning portal. */
body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
  box-sizing:border-box !important;
  width:min(calc(100% - 40px),1560px) !important;
  max-width:1560px !important;
  padding:40px !important;
  overflow:visible !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-learning-portal {
  display:grid !important;
  grid-template-columns:minmax(235px,270px) minmax(0,1fr) !important;
  gap:30px !important;
  width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-main {
  box-sizing:border-box !important;
  width:100% !important;
  min-width:0 !important;
  padding:40px !important;
  overflow:hidden;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-sidebar {
  min-width:0 !important;
  background:#0B2B50 !important;
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand {
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:12px !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand > span:last-child {
  min-width:0 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand strong {
  white-space:nowrap !important;
  color:#FFFFFF !important;
  font-size:20px !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand small {
  color:#BFD3EA !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item strong {
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item small {
  color:#BFD3EA !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-locked small {
  color:#AFC4DE !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus-visible,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview:focus-visible {
  background:#24466B !important;
  color:#FFFFFF !important;
  outline:2px solid rgba(191,211,234,.65);
  outline-offset:1px;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:hover strong,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:hover small,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus-visible strong,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus-visible small,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview:hover span,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview:focus-visible span {
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview.is-active {
  background:#0875E8 !important;
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active strong,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active small {
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-locked:hover {
  background:#24466B !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-locked:hover strong {
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-locked:hover small {
  color:#DCEBFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview {
  margin:0 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-num {
  flex-shrink:0;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-module {
  color:#BFD3EA !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-check {
  color:#7DE0AE !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link {
  color:#FFFFFF !important;
  font-size:15px !important;
  font-weight:600 !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link:focus-visible {
  color:#FFFFFF !important;
  background:#24466B !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-flow-panel,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-assessments,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-certificates {
  box-sizing:border-box;
  max-width:100%;
}
@media (max-width:1100px) and (min-width:768px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
    width:calc(100% - 28px) !important;
    padding:28px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-learning-portal {
    grid-template-columns:minmax(205px,230px) minmax(0,1fr) !important;
    gap:22px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-main {
    padding:32px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand strong {
    font-size:18px !important;
  }
}
@media (max-width:767px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
    width:calc(100% - 16px) !important;
    margin:12px auto 24px !important;
    padding:12px !important;
    overflow:hidden !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow > .nclms-learning-portal {
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    width:100% !important;
    min-width:0 !important;
    overflow:visible !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-sidebar {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:16px 14px 13px !important;
    border-radius:13px !important;
    overflow:hidden !important;
    background:#0B2B50 !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand {
    display:flex !important;
    width:100% !important;
    gap:10px !important;
    margin:0 0 13px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand-mark {
    flex:0 0 34px !important;
    width:34px !important;
    height:34px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand strong {
    font-size:18px !important;
    white-space:nowrap !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-brand small {
    font-size:11px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav {
    display:flex !important;
    flex-direction:row !important;
    align-items:stretch !important;
    gap:8px !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:3px 2px 10px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scroll-behavior:smooth;
    scrollbar-width:thin;
    scrollbar-color:#6F94BC rgba(255,255,255,.12);
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav::-webkit-scrollbar {
    height:5px;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav::-webkit-scrollbar-track {
    background:rgba(255,255,255,.12);
    border-radius:8px;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav::-webkit-scrollbar-thumb {
    background:#6F94BC;
    border-radius:8px;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav > a,
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav > .nclms-portal-module {
    flex:0 0 auto !important;
    width:auto !important;
    min-width:max-content !important;
    max-width:78vw;
    min-height:44px !important;
    margin:0 !important;
    padding:10px 12px !important;
    border-radius:10px !important;
    white-space:nowrap !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav > .nclms-portal-module {
    display:flex !important;
    align-items:center !important;
    color:#BFD3EA !important;
    font-size:12px !important;
    letter-spacing:.06em;
    background:rgba(255,255,255,.08);
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item {
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:8px !important;
    background:rgba(255,255,255,.07) !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item > span:nth-child(2) {
    display:flex !important;
    flex-direction:column !important;
    min-width:0 !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item strong {
    color:#FFFFFF !important;
    font-size:14px !important;
    line-height:1.25 !important;
    white-space:nowrap !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item small {
    color:#BFD3EA !important;
    font-size:11px !important;
    line-height:1.25 !important;
    white-space:nowrap !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active,
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active:hover {
    background:#0875E8 !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview {
    display:flex !important;
    align-items:center !important;
    flex:0 0 auto !important;
    min-width:max-content !important;
    min-height:44px !important;
    margin:0 !important;
    padding:10px 12px !important;
    border-radius:10px !important;
    background:rgba(255,255,255,.07) !important;
    color:#FFFFFF !important;
    white-space:nowrap !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-overview:hover {
    background:#24466B !important;
    color:#FFFFFF !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help {
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:8px 12px !important;
    width:100% !important;
    margin-top:9px !important;
    padding:10px 3px 0 !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help > span {
    font-size:13px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link {
    min-height:36px !important;
    margin:0 !important;
    padding:7px 10px !important;
    font-size:14px !important;
    background:rgba(255,255,255,.10) !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-main {
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:25px 18px !important;
    border-radius:13px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-bottom-grid {
    grid-template-columns:minmax(0,1fr) !important;
    gap:20px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-flow-panel,
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-assessments,
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-certificates {
    min-width:0 !important;
    max-width:100% !important;
    padding:24px 18px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow video {
    display:block;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
  }
}
@media (max-width:390px) {
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow {
    width:calc(100% - 12px) !important;
    padding:9px !important;
  }
  body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-main {
    padding:22px 14px !important;
  }
}

/* Custom controls: visible play, time, volume/mute and fullscreen; no
   seekable timeline or pause/speed/download controls. */
body.nclms-course-page .nclms-secure-video-ui {
  position:relative;
  width:100%;
  max-width:100%;
  overflow:hidden;
  border-radius:12px;
  background:#071A2E;
}
body.nclms-course-page .nclms-secure-video-ui video {
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  background:#071A2E;
}
body.nclms-course-page .nclms-video-controls {
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:48px;
  box-sizing:border-box;
  padding:8px 12px;
  color:#FFFFFF;
  background:#071A2E;
  font-size:13px;
  line-height:1;
}
body.nclms-course-page .nclms-video-controls button {
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  min-width:32px;
  min-height:32px;
  padding:4px;
  border:0;
  border-radius:6px;
  color:#FFFFFF !important;
  background:transparent !important;
  font-size:18px;
  cursor:pointer;
}
body.nclms-course-page .nclms-video-controls button:hover,
body.nclms-course-page .nclms-video-controls button:focus-visible {
  color:#FFFFFF !important;
  background:#24466B !important;
  outline:2px solid #6F94BC;
}
body.nclms-course-page .nclms-video-elapsed,
body.nclms-course-page .nclms-video-duration {
  flex:0 0 auto;
  color:#FFFFFF;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
body.nclms-course-page .nclms-video-readonly-progress {
  position:relative;
  flex:1 1 auto;
  min-width:24px;
  height:6px;
  overflow:hidden;
  border-radius:8px;
  background:rgba(255,255,255,.25);
  pointer-events:none;
}
body.nclms-course-page .nclms-video-readonly-progress > span {
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:#1686FF;
}
body.nclms-course-page .nclms-video-volume {
  flex:0 1 76px;
  width:76px;
  min-width:48px;
  accent-color:#1686FF;
}
body.nclms-course-page .nclms-secure-video-ui:fullscreen {
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#000;
}
body.nclms-course-page .nclms-secure-video-ui:fullscreen video {
  max-height:calc(100vh - 64px);
  object-fit:contain;
}
@media(max-width:420px) {
  body.nclms-course-page .nclms-video-controls { gap:6px; padding:7px 8px; }
  body.nclms-course-page .nclms-video-volume { width:54px; min-width:42px; }
  body.nclms-course-page .nclms-video-controls { font-size:11px; }
}


/* v0.6.10: stable chapter-number badges, nav states and support link
   shared by every NCLMS learning-flow stage. */
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:visited {
  color:#FFFFFF !important;
  background:transparent !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item strong {
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item small {
  color:#BFD3EA !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item .nclms-portal-nav-num {
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 32px !important;
  width:32px !important;
  min-width:32px !important;
  height:32px !important;
  min-height:32px !important;
  padding:0 !important;
  border:1px solid #DCEBFF !important;
  border-radius:9px !important;
  background:#FFFFFF !important;
  color:#0875E8 !important;
  font-size:13px !important;
  font-weight:850 !important;
  line-height:1 !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus-visible {
  background:#24466B !important;
  color:#FFFFFF !important;
  outline:2px solid rgba(191,211,234,.55);
  outline-offset:1px;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:hover strong,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:hover small,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus strong,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus small,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus-visible strong,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus-visible small {
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active:focus-visible {
  background:#0875E8 !important;
  color:#FFFFFF !important;
  outline:none;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active strong,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active small {
  color:#FFFFFF !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-locked small {
  color:#BFD3EA !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item .nclms-portal-check {
  color:#7DE0AE !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item .nclms-portal-nav-num,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:hover .nclms-portal-nav-num,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus .nclms-portal-nav-num,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item:focus-visible .nclms-portal-nav-num,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-active .nclms-portal-nav-num,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-nav-item.is-locked .nclms-portal-nav-num {
  background:#FFFFFF !important;
  color:#0875E8 !important;
  border-color:#DCEBFF !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link:visited {
  color:#FFFFFF !important;
  font-size:15px !important;
  font-weight:600 !important;
  text-decoration:none !important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-support-link:focus-visible {
  color:#BFD3EA !important;
  background:rgba(255,255,255,.10) !important;
  text-decoration:underline !important;
}
body.nclms-course-page .nclms-video-play-toggle.is-playing {
  color:#7DE0AE !important;
  cursor:default !important;
  opacity:1 !important;
  animation:nclmsVideoPlayingPulse 1.4s ease-in-out infinite;
}
body.nclms-course-page .nclms-video-play-toggle:disabled {
  pointer-events:none;
}
@keyframes nclmsVideoPlayingPulse {
  0%,100% { opacity:1; transform:scale(1); }
  50% { opacity:.58; transform:scale(.92); }
}


/* v0.6.13 — unify the learning-portal support footer with the dashboard reference.
   Shared by every enrolled learning stage; navigation and support destination remain unchanged. */
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-sidebar .nclms-portal-help{
  display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;
  gap:14px!important;width:100%!important;min-width:0!important;box-sizing:border-box!important;
  margin-top:auto!important;padding:18px 10px 4px!important;
  border-top:1px solid rgba(255,255,255,.16)!important;
  text-align:left!important;background:transparent!important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-help-icon{
  display:flex!important;flex:0 0 54px!important;align-items:center!important;justify-content:center!important;
  width:54px!important;height:54px!important;min-width:54px!important;box-sizing:border-box!important;
  border-radius:50%!important;background:#0875E8!important;color:#fff!important;
  font-family:Arial,sans-serif!important;font-size:27px!important;font-weight:400!important;line-height:1!important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-help-copy{
  display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:flex-start!important;
  justify-content:center!important;gap:7px!important;min-width:0!important;margin:0!important;padding:0!important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-help-copy strong{
  display:block!important;margin:0!important;padding:0!important;color:#fff!important;
  font-size:16px!important;font-weight:800!important;line-height:1.25!important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-support-link{
  display:inline-block!important;margin:0!important;padding:0!important;border:0!important;
  background:transparent!important;color:#fff!important;text-decoration:none!important;
  font-size:14px!important;font-weight:500!important;line-height:1.4!important;
  overflow-wrap:anywhere!important;transition:color .18s ease,opacity .18s ease!important;
}
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-support-link:hover,
body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-support-link:focus-visible{
  color:#cfe3ff!important;text-decoration:underline!important;opacity:1!important;
}
@media(max-width:700px){
 body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-sidebar .nclms-portal-help{
  margin-top:16px!important;padding:15px 8px 2px!important;gap:12px!important;
 }
 body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-help-icon{
  flex-basis:50px!important;width:50px!important;height:50px!important;min-width:50px!important;font-size:25px!important;
 }
 body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-help-copy strong{font-size:15px!important}
 body.nclms-course-page .nclms-course-shell.nclms-learning-flow .nclms-portal-help .nclms-portal-support-link{font-size:14px!important}
}


/* v0.6.14 — allow controlled seeking and display completed lessons as locked. */
body.nclms-course-page .nclms-video-seek-progress{
  position:relative;flex:1 1 auto;min-width:24px;height:7px;overflow:hidden;
  border-radius:8px;background:rgba(255,255,255,.25);cursor:pointer;pointer-events:auto;
  touch-action:pan-y;outline-offset:4px;
}
body.nclms-course-page .nclms-video-seek-progress:focus-visible{outline:2px solid #8fc5ff;}
body.nclms-course-page .nclms-video-seek-progress>span{
  display:block;width:0;height:100%;border-radius:inherit;background:#1686FF;pointer-events:none;
}
body.nclms-course-page .nclms-video-play-toggle.is-playing{cursor:pointer!important;}
body.nclms-course-page .nclms-video-play-toggle:disabled{pointer-events:auto;}
body.nclms-course-page .nclms-portal-completed-lock{
  margin:20px 0;padding:22px 24px;border:1px solid #cfe0f4;border-radius:14px;
  background:#f2f7fd;color:#173b61;
}
body.nclms-course-page .nclms-portal-completed-lock strong{display:block;color:#0875e8;}
body.nclms-course-page .nclms-portal-completed-lock p{margin:8px 0 0;color:#58718c;}
body.nclms-course-page .nclms-result-score{
  display:flex;align-items:center;gap:18px;margin:20px 0;padding:20px 22px;
  border:1px solid #d8e7f8;border-radius:14px;background:#f4f8fe;
}
body.nclms-course-page .nclms-result-score strong{font-size:30px;line-height:1.1;color:#0875e8;}
body.nclms-course-page .nclms-result-score span{color:#24466b;}
body.nclms-course-page .nclms-result-status{font-weight:700;color:#173b61;}
@media(max-width:600px){
 body.nclms-course-page .nclms-result-score{align-items:flex-start;flex-direction:column;gap:6px;}
}


/* v0.6.15 — clear player controls, live timer, and no replay after completion */
body.nclms-course-page .nclms-video-play-toggle{
  width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;
  border-radius:50%!important;background:#0875E8!important;color:#fff!important;
  font-family:Arial,sans-serif!important;font-size:17px!important;font-weight:800!important;
  line-height:1!important;box-shadow:0 2px 7px rgba(0,0,0,.22)!important;
}
body.nclms-course-page .nclms-video-play-toggle:hover,
body.nclms-course-page .nclms-video-play-toggle:focus-visible{
  background:#1686FF!important;color:#fff!important;transform:scale(1.06);
}
body.nclms-course-page .nclms-video-play-toggle.is-playing{
  background:#24466B!important;color:#fff!important;animation:none!important;
}
body.nclms-course-page .nclms-video-play-toggle.is-completed,
body.nclms-course-page .nclms-video-play-toggle:disabled{
  background:#16865A!important;color:#fff!important;opacity:1!important;cursor:not-allowed!important;
}
body.nclms-course-page .nclms-video-controls .nclms-video-elapsed,
body.nclms-course-page .nclms-video-controls .nclms-video-duration{
  font-variant-numeric:tabular-nums!important;font-family:Arial,sans-serif!important;
}
body.nclms-course-page .nclms-video-is-completed video{
  pointer-events:none!important;
}
body.nclms-course-page .nclms-video-is-completed .nclms-video-controls{
  opacity:.92;
}


/* Course featured image belongs only in the Premium Dashboard > My Courses card.
   Hide theme/Elementor featured-image output on the course page and every stage. */
body.nclms-course-page .post-thumbnail,
body.nclms-course-page .post-featured-image,
body.nclms-course-page .entry-thumbnail,
body.nclms-course-page .entry-featured-image,
body.nclms-course-page .featured-image,
body.nclms-course-page .featured-media,
body.nclms-course-page .single-featured-image,
body.nclms-course-page .wp-block-post-featured-image,
body.nclms-course-page .elementor-widget-theme-post-featured-image,
body.nclms-course-page .elementor-post__thumbnail,
body.nclms-course-page .post-image,
body.single-nclms_course .post-thumbnail,
body.single-nclms_course .post-featured-image,
body.single-nclms_course .entry-thumbnail,
body.single-nclms_course .entry-featured-image,
body.single-nclms_course .featured-image,
body.single-nclms_course .featured-media,
body.single-nclms_course .single-featured-image,
body.single-nclms_course .wp-block-post-featured-image,
body.single-nclms_course .elementor-widget-theme-post-featured-image,
body.single-nclms_course .elementor-post__thumbnail,
body.single-nclms_course .post-image {
  display:none !important;
}


/* v0.6.22: suppress course featured thumbnail at its source on LMS pages.
   The dashboard is deliberately not in this body scope. */
body.nclms-course-page .wp-post-image,
body.single-nclms_course .wp-post-image,
body.nclms-course-page .attachment-post-thumbnail,
body.single-nclms_course .attachment-post-thumbnail,
body.nclms-course-page .elementor-widget-theme-post-featured-image,
body.single-nclms_course .elementor-widget-theme-post-featured-image,
body.nclms-course-page .entry-header > .post-thumbnail,
body.single-nclms_course .entry-header > .post-thumbnail,
body.nclms-course-page .course-thumbnail,
body.single-nclms_course .course-thumbnail,
body.nclms-course-page .course-featured-image,
body.single-nclms_course .course-featured-image {
  display: none !important;
}


/* v0.6.34 — prominent WooCommerce purchase prompt for visitors who have not bought the mapped course */
body.nclms-course-page .nclms-purchase-prompt{
  position:relative;overflow:hidden;margin:42px 0 12px;padding:clamp(26px,4vw,44px);
  border:1px solid #d9e7fb;border-radius:22px;
  background:linear-gradient(130deg,#f5f9ff 0%,#eef5ff 48%,#f8faff 100%);
  box-shadow:0 14px 38px rgba(29,78,140,.09);text-align:center;
}
body.nclms-course-page .nclms-purchase-prompt:before{
  content:"";position:absolute;width:260px;height:260px;right:-105px;top:-145px;border-radius:50%;
  background:radial-gradient(circle,rgba(69,120,239,.16),rgba(69,120,239,0) 70%);pointer-events:none;
}
body.nclms-course-page .nclms-purchase-prompt-icon{
  display:grid;place-items:center;width:54px;height:54px;margin:0 auto 15px;border-radius:17px;
  background:linear-gradient(135deg,#536cf0,#258eea);color:#fff;font-size:25px;
  box-shadow:0 8px 20px rgba(55,105,220,.22);
}
body.nclms-course-page .nclms-purchase-eyebrow{display:block;margin-bottom:9px;color:#3566c7;font-size:11px;font-weight:800;letter-spacing:1.7px;}
body.nclms-course-page .nclms-purchase-prompt h2{margin:0 0 12px;color:#172b4d;font-size:clamp(23px,3vw,32px);line-height:1.2;font-weight:800;}
body.nclms-course-page .nclms-purchase-prompt p{max-width:690px;margin:0 auto 16px;color:#536985;font-size:15px;line-height:1.75;}
body.nclms-course-page .nclms-purchase-price{margin:8px 0 18px;color:#172b4d;font-size:25px;font-weight:800;}
body.nclms-course-page .nclms-purchase-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 27px;border-radius:13px;
  background:linear-gradient(100deg,#4d63e9,#168ce8);color:#fff!important;text-decoration:none!important;font-size:15px;font-weight:800;
  box-shadow:0 9px 22px rgba(45,99,220,.24);transition:transform .2s ease,box-shadow .2s ease;}
body.nclms-course-page .nclms-purchase-button:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(45,99,220,.3);color:#fff!important;}
body.nclms-course-page .nclms-purchase-prompt small{display:block;margin-top:15px;color:#71839a;font-size:12px;}
@media(max-width:600px){body.nclms-course-page .nclms-purchase-prompt{margin:28px 0 8px;padding:25px 18px;border-radius:17px;}body.nclms-course-page .nclms-purchase-button{width:100%;}}

/* Premium course catalogue archive */
body.post-type-archive-nclms_course .nclms-catalog-page{--nclms-navy:#102c55;--nclms-blue:#1266c5;--nclms-ink:#172b49;--nclms-muted:#65758b;background:#f5f8fc;min-height:70vh;padding-bottom:64px}
body.post-type-archive-nclms_course .nclms-catalog-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#092b59 0%,#0d4d91 58%,#1686c8 100%);color:#fff;padding:62px 24px 68px}
body.post-type-archive-nclms_course .nclms-catalog-hero:after{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(255,255,255,.14);border-radius:50%;right:8%;top:-210px;box-shadow:0 0 0 36px rgba(255,255,255,.035),0 0 0 72px rgba(255,255,255,.025)}
body.post-type-archive-nclms_course .nclms-catalog-hero-inner{max-width:1160px;margin:0 auto;position:relative;z-index:1}
body.post-type-archive-nclms_course .nclms-catalog-eyebrow,body.post-type-archive-nclms_course .nclms-catalog-kicker{font-size:11px;letter-spacing:2px;font-weight:800;color:#8ed6ff}
body.post-type-archive-nclms_course .nclms-catalog-hero h1{color:#fff;font-size:clamp(32px,4vw,48px);line-height:1.12;margin:12px 0}
body.post-type-archive-nclms_course .nclms-catalog-hero p{color:rgba(255,255,255,.82);font-size:17px;max-width:650px;margin:0}
body.post-type-archive-nclms_course .nclms-catalog-wrap{max-width:1160px;margin:0 auto;padding:38px 24px 0}
body.post-type-archive-nclms_course .nclms-catalog-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:0 0 22px}
body.post-type-archive-nclms_course .nclms-catalog-kicker{color:#1672c7}
body.post-type-archive-nclms_course .nclms-catalog-heading h2{color:#142d50;font-size:27px;margin:5px 0 0}
body.post-type-archive-nclms_course .nclms-catalog-count{background:#e7f1fc;color:#15599d;border-radius:30px;padding:8px 14px;font-weight:700;font-size:13px}
body.post-type-archive-nclms_course .nclms-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body.post-type-archive-nclms_course .nclms-catalog-card{background:#fff;border:1px solid #e7edf5;border-radius:17px;overflow:hidden;box-shadow:0 8px 28px rgba(17,48,83,.07);transition:transform .2s ease,box-shadow .2s ease;min-width:0}
body.post-type-archive-nclms_course .nclms-catalog-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(17,48,83,.13)}
body.post-type-archive-nclms_course .nclms-catalog-image{height:215px;display:block;position:relative;overflow:hidden;background:linear-gradient(135deg,#dceeff,#a9d5f3)}
body.post-type-archive-nclms_course .nclms-catalog-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
body.post-type-archive-nclms_course .nclms-catalog-card:hover .nclms-catalog-image img{transform:scale(1.035)}
body.post-type-archive-nclms_course .nclms-catalog-pill{position:absolute;left:15px;top:15px;background:rgba(12,54,105,.92);color:#fff;border-radius:30px;padding:7px 11px;font-size:10px;letter-spacing:.7px;font-weight:800}
body.post-type-archive-nclms_course .nclms-catalog-placeholder{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#15599d;gap:8px}
body.post-type-archive-nclms_course .nclms-catalog-placeholder span{font-size:42px}
body.post-type-archive-nclms_course .nclms-catalog-placeholder small{letter-spacing:2px;font-weight:800}
body.post-type-archive-nclms_course .nclms-catalog-card-body{padding:20px 20px 18px}
body.post-type-archive-nclms_course .nclms-catalog-card-body h3{font-size:20px;line-height:1.3;margin:0 0 10px;color:#142d50}
body.post-type-archive-nclms_course .nclms-catalog-card-body h3 a{color:inherit;text-decoration:none}
body.post-type-archive-nclms_course .nclms-catalog-card-body h3 a:hover{color:#1266c5}
body.post-type-archive-nclms_course .nclms-catalog-card-body p{font-size:14px;line-height:1.65;color:#65758b;margin:0 0 18px;min-height:46px}
body.post-type-archive-nclms_course .nclms-catalog-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #edf1f6;padding-top:14px;font-size:12px;color:#718096}
body.post-type-archive-nclms_course .nclms-catalog-link{font-size:13px;font-weight:800;color:#1266c5;text-decoration:none;white-space:nowrap}
body.post-type-archive-nclms_course .nclms-catalog-link span{font-size:17px;margin-left:4px}
body.post-type-archive-nclms_course .nclms-catalog-empty{background:#fff;border:1px solid #e7edf5;border-radius:16px;padding:48px;text-align:center;color:#65758b}
body.post-type-archive-nclms_course .nclms-catalog-empty h2{color:#142d50}
body.post-type-archive-nclms_course .nclms-catalog-page .nav-links{display:flex;justify-content:center;gap:8px;margin-top:32px}
body.post-type-archive-nclms_course .nclms-catalog-page .page-numbers{padding:9px 13px;border-radius:9px;background:#fff;color:#15599d;text-decoration:none}
body.post-type-archive-nclms_course .nclms-catalog-page .page-numbers.current{background:#15599d;color:#fff}
@media(max-width:900px){body.post-type-archive-nclms_course .nclms-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body.post-type-archive-nclms_course .nclms-catalog-hero{padding:42px 20px 48px}body.post-type-archive-nclms_course .nclms-catalog-wrap{padding:28px 16px 0}body.post-type-archive-nclms_course .nclms-catalog-grid{grid-template-columns:1fr;gap:17px}body.post-type-archive-nclms_course .nclms-catalog-image{height:205px}body.post-type-archive-nclms_course .nclms-catalog-heading h2{font-size:23px}}


/* Premium styling is intentionally scoped to the course-completion screen only. */
.nclms-course-shell .nclms-completion-premium{
    position:relative;isolation:isolate;overflow:hidden;
    max-width:1120px;margin:34px auto;padding:58px 56px 52px;
    border:1px solid #dce8f7;border-radius:28px;
    background:linear-gradient(135deg,#ffffff 0%,#f5f9ff 58%,#edf5ff 100%);
    box-shadow:0 22px 60px rgba(20,54,94,.09);
}
.nclms-course-shell .nclms-completion-glow{
    position:absolute;z-index:-1;width:390px;height:390px;right:-110px;top:-190px;
    border-radius:50%;background:radial-gradient(circle,rgba(38,132,235,.16),rgba(38,132,235,0) 68%);
}
.nclms-course-shell .nclms-completion-icon{
    display:flex;align-items:center;justify-content:center;width:62px;height:62px;
    margin:0 0 24px;border-radius:20px;color:#fff;font-size:31px;font-weight:800;
    background:linear-gradient(145deg,#0879e8,#174ed1);
    box-shadow:0 12px 26px rgba(13,100,211,.25);
}
.nclms-course-shell .nclms-completion-premium .nclms-flow-kicker{
    display:inline-block;margin:0 0 12px;color:#176bd0;font-size:11px;
    font-weight:900;letter-spacing:2px;
}
.nclms-course-shell .nclms-completion-premium h2{
    max-width:760px;margin:0 0 14px;color:#15385e;font-size:clamp(29px,4vw,43px);
    line-height:1.14;font-weight:850;letter-spacing:-1.1px;
}
.nclms-course-shell .nclms-completion-premium .nclms-completion-lead{
    max-width:760px;margin:0 0 30px;color:#647b98;font-size:16px;line-height:1.75;
}
.nclms-course-shell .nclms-completion-certificate{
    display:flex;align-items:center;justify-content:space-between;gap:24px;
    max-width:900px;margin:0 0 22px;padding:22px 24px;
    border:1px solid #dce8f6;border-radius:18px;background:rgba(255,255,255,.88);
    box-shadow:0 8px 24px rgba(28,66,111,.045);
}
.nclms-course-shell .nclms-completion-cert-copy{display:flex;flex-direction:column;gap:5px}
.nclms-course-shell .nclms-completion-eyebrow{color:#3479c5;font-size:10px;font-weight:900;letter-spacing:1.7px}
.nclms-course-shell .nclms-completion-cert-copy strong{color:#183a60;font-size:19px;font-weight:800}
.nclms-course-shell .nclms-completion-cert-copy small{color:#7b8da5;font-size:13px}
.nclms-course-shell .nclms-completion-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.nclms-course-shell .nclms-completion-actions .nclms-button,
.nclms-course-shell .nclms-completion-dashboard{
    display:inline-flex;align-items:center;justify-content:center;gap:9px;
    min-height:48px;padding:13px 19px;border-radius:11px;text-decoration:none;
    font-size:14px;font-weight:800;line-height:1.2;transition:transform .18s ease,box-shadow .18s ease;
}
.nclms-course-shell .nclms-completion-actions .nclms-button:hover,
.nclms-course-shell .nclms-completion-dashboard:hover{transform:translateY(-2px)}
.nclms-course-shell .nclms-completion-download{
    color:#fff!important;background:linear-gradient(110deg,#0879e8,#1457d7)!important;
    box-shadow:0 9px 20px rgba(14,96,204,.2);
}
.nclms-course-shell .nclms-completion-view{
    color:#175fc1!important;background:#edf5ff!important;border:1px solid #cfe1f8!important;
}
.nclms-course-shell .nclms-completion-dashboard{
    margin:0 0 4px;color:#fff!important;background:#173d68!important;
    box-shadow:0 8px 18px rgba(22,58,98,.14);
}
.nclms-course-shell .nclms-completion-restart{
    display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:24px;padding-top:19px;
    border-top:1px solid #e1eaf5;color:#8493a7;font-size:13px;
}
.nclms-course-shell .nclms-completion-restart a{color:#246ac1;font-weight:800;text-decoration:none}
.nclms-course-shell .nclms-completion-restart a:hover{text-decoration:underline}
@media(max-width:700px){
    .nclms-course-shell .nclms-completion-premium{margin:18px 10px;padding:34px 22px 30px;border-radius:21px}
    .nclms-course-shell .nclms-completion-icon{width:54px;height:54px;border-radius:17px;margin-bottom:20px}
    .nclms-course-shell .nclms-completion-premium h2{font-size:30px;letter-spacing:-.6px}
    .nclms-course-shell .nclms-completion-premium .nclms-completion-lead{font-size:14px}
    .nclms-course-shell .nclms-completion-certificate{align-items:stretch;flex-direction:column;padding:19px}
    .nclms-course-shell .nclms-completion-actions{display:grid;grid-template-columns:1fr}
    .nclms-course-shell .nclms-completion-actions .nclms-button{width:100%;box-sizing:border-box}
    .nclms-course-shell .nclms-completion-dashboard{width:100%;box-sizing:border-box}
}
