:root{--navy-950:#061d38;--navy-900:#0b2f59;--navy-800:#123f72;--blue-600:#1e68a7;--blue-100:#e7f1fa;--teal-600:#168798;--teal-100:#e2f6f6;--gold-600:#a87421;--gold-100:#fbf1d9;--cream:#f8f5ed;--paper:#fffefa;--slate-900:#172537;--slate-700:#405166;--slate-500:#708095;--slate-300:#cbd5df;--slate-200:#e2e8ee;--slate-100:#f2f5f7;--danger:#a43b3b;--danger-soft:#fdeaea;--success:#187252;--success-soft:#e4f5ed;--shadow:0 18px 50px #09294914;--radius-lg:22px;--radius-md:15px;--focus:0 0 0 3px #44b9c966}.diagnosticForm{gap:18px;max-width:860px;display:grid}.diagnosticHero{max-width:860px}.questionCard{border:1px solid var(--slate-200);background:var(--paper);box-shadow:var(--shadow);border-radius:18px;padding:22px}.questionCard legend{color:var(--navy-900);padding:0 8px;font-family:Georgia,Times New Roman,serif;font-size:1.08rem;font-weight:700;line-height:1.45}.questionCard legend span{background:var(--teal-100);color:var(--navy-900);border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;margin-right:10px;display:inline-flex}.questionCard>small{color:var(--slate-500);margin-bottom:14px;display:block}.choiceList{gap:10px;display:grid}.choiceList label{border:1px solid var(--slate-200);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:48px;padding:10px 14px;display:flex}.choiceList label:has(input:checked){background:var(--teal-100);border-color:var(--teal-600)}.choiceList input{width:20px;height:20px}.answerField{gap:8px;display:grid}.diagnosticActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.diagnosticState{background:var(--paper);border:1px solid var(--slate-200);border-radius:18px;max-width:760px;padding:28px}.successState{border-left:5px solid var(--teal-600)}.errorState{border-left:5px solid var(--danger)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--slate-900);background:var(--cream);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.55}a{color:inherit}button,input,select,textarea{font:inherit}button,a,summary,input,select,textarea{outline:none}:focus-visible{box-shadow:var(--focus);border-radius:7px}.skipLink{z-index:1000;color:var(--navy-900);background:#fff;border-radius:8px;padding:10px 14px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skipLink:focus{transform:none}.brand{align-items:center;gap:11px;text-decoration:none;display:inline-flex}.brand img{border-radius:12px}.brandText{line-height:1.1;display:grid}.brandText strong{letter-spacing:.01em;font-family:Georgia,Times New Roman,serif;font-size:1.08rem}.brandText small{color:var(--slate-500);margin-top:5px;font-size:.72rem}.portalRoot{min-height:100vh}.sidebar{z-index:20;background:#fffefaf5;border-right:1px solid #cbd5df8c;flex-direction:column;width:274px;padding:28px 22px;display:flex;position:fixed;inset:0 auto 0 0}.roleLabel{color:var(--slate-500);letter-spacing:.11em;text-transform:uppercase;margin:28px 4px 12px;font-size:.72rem;font-weight:800}.sidebar nav{gap:4px;display:grid}.sidebar nav a{min-height:44px;color:var(--slate-700);border-radius:10px;align-items:center;gap:11px;padding:9px 11px;font-size:.91rem;font-weight:650;text-decoration:none;display:flex}.sidebar nav a:hover{color:var(--navy-900);background:var(--blue-100)}.navDot{border:1.5px solid var(--teal-600);border-radius:50%;width:7px;height:7px}.sidebarFoot{border:1px solid var(--slate-200);border-radius:var(--radius-md);background:var(--slate-100);margin-top:auto;padding:18px;display:grid}.sidebarFoot span,.sidebarFoot small{color:var(--slate-500);font-size:.74rem}.sidebarFoot strong{margin:3px 0;font-size:.89rem}.sidebarFoot a{color:var(--blue-600);margin-top:10px;font-size:.82rem;font-weight:700}.signoutButton{color:var(--blue-600);cursor:pointer;background:0 0;border:0;margin:10px 0 0;padding:0;font-size:.82rem;font-weight:700;text-decoration:underline}.mobileSignout{text-align:left;width:100%;min-height:44px;margin:0;padding:11px}.portalMain{min-height:100vh;margin-left:274px}.mobileHeader{display:none}.contentArea{width:min(1180px,100% - 56px);margin:0 auto;padding:42px 0 72px}.demoBanner{color:#684c19;background:var(--gold-100);text-align:center;letter-spacing:.02em;border-bottom:1px solid #ead8a4;padding:9px 28px;font-size:.78rem;font-weight:750}.supportBanner{z-index:50;color:#fff;background:var(--danger);justify-content:center;align-items:center;gap:14px;min-height:50px;padding:9px 22px;font-size:.84rem;display:flex;position:sticky;top:0}.supportBanner a{border:1px solid #fff9;border-radius:7px;padding:5px 9px;font-weight:750;text-decoration:none}.pageHero{grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);align-items:end;gap:32px;margin-bottom:28px;display:grid}.pageHero h1,.loginCard h1{max-width:790px;color:var(--navy-950);letter-spacing:-.035em;margin:8px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.15rem,4vw,3.8rem);font-weight:600;line-height:1.03}.pageHero>div>p:last-child{max-width:730px;color:var(--slate-700);margin:0;font-size:1.02rem}.eyebrow{color:var(--teal-600);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:850}.heroAction{justify-items:end;gap:10px;display:grid}.heroAction small{max-width:260px;color:var(--slate-500);text-align:right}.button,button.button{border:1px solid var(--navy-900);color:#fff;background:var(--navy-900);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;min-height:44px;padding:10px 17px;font-weight:750;text-decoration:none;display:inline-flex}.button:hover{background:var(--navy-800)}.button.secondary{color:var(--navy-900);background:0 0}.button.subtle{border-color:var(--slate-300);color:var(--slate-700);background:#fff}.button[aria-disabled=true],.button:disabled{border-color:var(--slate-300);color:var(--slate-500);background:var(--slate-200);cursor:not-allowed}.metricGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:26px;display:grid}.metricCard{border:1px solid var(--slate-200);border-top:4px solid var(--blue-600);border-radius:var(--radius-md);background:var(--paper);min-height:146px;padding:19px;box-shadow:0 9px 25px #0929490b}.metric-teal{border-top-color:var(--teal-600)}.metric-gold{border-top-color:var(--gold-600)}.metric-slate{border-top-color:var(--slate-500)}.metricCard p{color:var(--slate-500);text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:.76rem;font-weight:750}.metricCard strong{color:var(--navy-950);margin:8px 0 3px;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;font-weight:600;display:block}.metricCard span{color:var(--slate-500);font-size:.82rem}.dashboardGrid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);align-items:start;gap:20px;display:grid}.dashboardStack{gap:20px;display:grid}.panel{border-radius:var(--radius-lg);background:var(--paper);min-width:0;box-shadow:var(--shadow);border:1px solid #cbd5dfcc;padding:24px;scroll-margin-top:18px}.sectionHeading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.sectionHeading h2{color:var(--navy-950);margin:3px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:600}.statusPill{min-height:25px;color:var(--slate-700);background:var(--slate-100);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;align-items:center;padding:3px 9px;font-size:.68rem;font-weight:850;display:inline-flex}.status-good{color:var(--success);background:var(--success-soft)}.status-warning{color:#76551d;background:var(--gold-100)}.status-urgent{color:var(--danger);background:var(--danger-soft)}.status-blue{color:var(--navy-800);background:var(--blue-100)}.listRows{display:grid}.listRow{border-top:1px solid var(--slate-200);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:15px 0;display:grid}.listRow:first-child{border-top:0;padding-top:0}.listRow:last-child{padding-bottom:0}.listRow h3,.assetRow h3,.learnerCard h3,.moduleCard h3{color:var(--navy-950);margin:0 0 4px;font-size:.97rem}.listRow p,.assetRow p,.learnerCard p,.moduleCard p{color:var(--slate-500);margin:0;font-size:.84rem}.moduleGrid,.learnerGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.moduleCard,.learnerCard{border:1px solid var(--slate-200);border-radius:var(--radius-md);background:var(--slate-100);padding:18px}.moduleCard a,.textLink{color:var(--blue-600);margin-top:12px;font-size:.82rem;font-weight:800;display:inline-flex}.learnerHead{align-items:center;gap:12px;margin-bottom:13px;display:flex}.avatar{color:#fff;background:var(--navy-800);border-radius:50%;flex:none;place-items:center;width:43px;height:43px;font-size:.78rem;font-weight:850;display:grid}.progressWrap{margin-top:16px}.progressLabels{color:var(--slate-500);justify-content:space-between;margin-bottom:6px;font-size:.75rem;display:flex}.progressTrack{background:var(--slate-200);border-radius:999px;height:8px;overflow:hidden}.progressTrack span{border-radius:inherit;background:linear-gradient(90deg, var(--teal-600), #4eb8c5);height:100%;display:block}.definitionList{margin:0;display:grid}.definitionList>div{border-top:1px solid var(--slate-200);grid-template-columns:145px minmax(0,1fr);gap:18px;padding:13px 0;display:grid}.definitionList>div:first-child{border-top:0}.definitionList dt{color:var(--slate-500);text-transform:uppercase;font-size:.77rem;font-weight:800}.definitionList dd{color:var(--slate-700);margin:0;font-size:.86rem}.filterBar{grid-template-columns:minmax(0,1fr) 190px;gap:12px;margin-bottom:16px;display:grid}.vaultFilters{grid-template-columns:minmax(0,1fr) minmax(0,230px) minmax(0,180px)}.vaultCount{color:var(--slate-500);font-size:.8rem}.vaultPagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.vaultFileLink{align-items:center;min-height:44px;padding:8px;display:inline-flex}label{color:var(--slate-700);gap:6px;font-size:.78rem;font-weight:750;display:grid}input,select,textarea{border:1px solid var(--slate-300);width:100%;min-height:46px;color:var(--slate-900);background:#fff;border-radius:10px;padding:10px 12px}textarea{resize:vertical;min-height:110px}input:focus,select:focus,textarea:focus{border-color:var(--teal-600);box-shadow:var(--focus)}.assetList{display:grid}.assetRow{border-top:1px solid var(--slate-200);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:17px 0;display:grid}.assetRow:first-child{border-top:0}.assetMeta,.assetState{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.assetMeta{margin-bottom:6px}.assetMeta code{color:var(--blue-600);font-size:.75rem;font-weight:800}.assetState{justify-content:flex-end}.assetState small{color:var(--slate-500);font-size:.69rem}.callout{border-left:4px solid var(--teal-600);color:var(--slate-700);background:var(--teal-100);border-radius:0 12px 12px 0;padding:16px 18px;font-size:.87rem}.callout strong{color:var(--navy-900)}.emptyState{border:1px dashed var(--slate-300);border-radius:var(--radius-md);color:var(--slate-500);background:var(--slate-100);text-align:center;padding:24px;font-size:.86rem}.loginPage{background:var(--paper);grid-template-columns:minmax(320px,.88fr) minmax(420px,1.12fr);min-height:100vh;display:grid}.loginAside{color:#fff;background:linear-gradient(145deg, var(--navy-950), #104f84 72%, var(--teal-600));flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,70px);display:flex;position:relative;overflow:hidden}.loginAside:after{content:"";border:1px solid #ffffff26;border-radius:50%;width:360px;height:360px;position:absolute;bottom:-120px;right:-100px;box-shadow:0 0 0 45px #ffffff0a,0 0 0 90px #ffffff06}.loginAside .brandText small{color:#ffffffb3}.loginAsideCopy{z-index:1;max-width:540px;position:relative}.loginAside h2{letter-spacing:-.04em;margin:0 0 16px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,4.4rem);font-weight:500;line-height:1.02}.loginAside p{color:#ffffffc7;font-size:1rem}.loginMain{background:var(--cream);place-items:center;padding:36px;display:grid}.loginCard{border:1px solid var(--slate-200);background:var(--paper);width:min(510px,100%);box-shadow:var(--shadow);border-radius:26px;padding:clamp(25px,5vw,44px)}.loginCard h1{font-size:clamp(2rem,4vw,2.75rem)}.loginCard>p{color:var(--slate-500);margin:0 0 24px}.formStack{gap:15px;display:grid}.formNote{color:var(--slate-500);font-size:.76rem}.formError{color:var(--danger);background:var(--danger-soft);border-radius:10px;padding:11px 13px;font-size:.82rem}.formSuccess{color:var(--success);background:var(--success-soft);border-radius:10px;padding:11px 13px;font-size:.82rem}.demoLinks{border-top:1px solid var(--slate-200);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:24px;padding-top:20px;display:grid}.demoLinks p{color:var(--slate-500);text-transform:uppercase;grid-column:1/-1;margin:0 0 3px;font-size:.74rem;font-weight:750}.demoLinks a{border:1px solid var(--slate-300);color:var(--navy-800);text-align:center;border-radius:9px;padding:9px 10px;font-size:.78rem;font-weight:750;text-decoration:none}.subtleLinks{color:var(--blue-600);justify-content:space-between;gap:15px;margin-top:17px;font-size:.78rem;font-weight:700;display:flex}.authStandalone{background:var(--cream);place-items:center;min-height:100vh;padding:28px;display:grid}.authStandalone .loginCard{max-width:570px}.mfaQr{border:12px solid #fff;width:min(230px,100%);height:auto;margin:12px auto}.adminControls{gap:26px;display:grid}.controlColumns{grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:24px;display:grid}.controlColumns h3,.controlForm h3{margin:0 0 12px}.controlForm{background:var(--slate-100);border:1px solid var(--slate-200);border-radius:15px;align-content:start;padding:18px}.compactControl{max-width:760px}.inlineFields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.tableWrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:600px}th,td{border-bottom:1px solid var(--slate-200);text-align:left;vertical-align:top;padding:11px 9px}th{color:var(--slate-500);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}td{color:var(--slate-700);font-size:.82rem}td small,.compactRows small{color:var(--slate-500);display:block}.textButton{color:var(--blue-600);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;min-height:44px;padding:4px;font-weight:750;text-decoration:underline}.textButton:disabled{color:var(--slate-500);cursor:not-allowed}.compactRows{display:grid}.compactRows>div{border-bottom:1px solid var(--slate-200);justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:8px 0;display:flex}@media (max-width:1050px){.metricGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboardGrid,.controlColumns{grid-template-columns:1fr}}@media (max-width:800px){.sidebar{display:none}.portalMain{margin-left:0}.mobileHeader{z-index:30;border-bottom:1px solid var(--slate-200);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf5;justify-content:space-between;align-items:center;min-height:64px;padding:10px 18px;display:flex;position:sticky;top:0}.mobileMenu{position:relative}.mobileMenu summary{border:1px solid var(--slate-300);cursor:pointer;text-align:center;border-radius:10px;min-width:48px;min-height:44px;padding:10px;font-size:.8rem;font-weight:800;list-style:none}.mobileMenu summary::-webkit-details-marker{display:none}.mobileMenu nav{border:1px solid var(--slate-200);width:min(280px,100vw - 36px);box-shadow:var(--shadow);background:#fff;border-radius:13px;padding:10px;display:grid;position:absolute;top:52px;right:0}.mobileMenu nav a{min-height:44px;color:var(--slate-700);border-radius:8px;padding:11px;font-size:.86rem;font-weight:700;text-decoration:none}.mobileMenu nav a:hover{background:var(--blue-100)}.contentArea{width:min(100% - 32px,680px);padding-top:27px}.pageHero{grid-template-columns:1fr;gap:18px}.heroAction{justify-items:start}.heroAction small{text-align:left}.loginPage{grid-template-columns:1fr}.loginAside{min-height:310px;padding:30px}.loginAside h2{font-size:2.5rem}}@media (max-width:560px){.contentArea{width:min(100% - 24px,680px)}.supportBanner{justify-items:start;gap:5px;display:grid;position:relative}.pageHero h1{font-size:2.25rem}.metricGrid,.moduleGrid,.learnerGrid,.filterBar,.inlineFields,.demoLinks{grid-template-columns:1fr}.panel{border-radius:17px;padding:19px}.assetRow,.listRow{grid-template-columns:1fr}.assetState{justify-content:flex-start}.definitionList>div{grid-template-columns:1fr;gap:3px}.loginMain{padding:18px}.loginCard{border-radius:19px;padding:24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
