
:root{--bg:#f5f8fb;--surface:#fff;--line:#e0e8ef;--line2:#d2dee8;--text:#17374a;--muted:#6c8291;--blue:#1eb6ff;--blue2:#0d67d9;--blue3:#eaf6fc;--blue4:#0951b8;--gold:#eeba42;--green:#1d9473;--red:#b95b4c;--shadow:0 16px 34px rgba(25,63,89,.08);--radius:22px}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin:0}.hidden{display:none!important}
.shell{display:grid;grid-template-columns:278px 1fr;min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:18px 14px;position:sticky;top:0;height:100vh;overflow:auto}.logo-card{border:1px solid var(--line2);border-radius:23px;background:#f2f9fd;padding:20px 16px;display:grid;place-items:center}.logo-card img{width:100%;max-width:180px}.nav{display:flex;flex-direction:column;gap:7px;margin-top:18px}.nav-btn{display:flex;align-items:center;gap:12px;border:1px solid transparent;background:transparent;border-radius:17px;padding:13px 14px;color:#496577;font-weight:750;text-align:left}.nav-btn:hover{background:#f7fbfe;border-color:#e1edf4}.nav-btn.active{background:linear-gradient(180deg,#f3fbff 0%,#e8f5ff 100%);border-color:#bfe0f7;color:var(--text);box-shadow:inset 0 1px 0 rgba(255,255,255,.95)}.nav-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#ffffff 0%,#dff3ff 100%);color:var(--blue2);font-weight:900;box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 4px 10px rgba(13,103,217,.10)}.nav-rule{height:1px;background:#eef2f5;margin:7px 0}.standard-card{margin-top:18px;border:1px solid var(--line);border-radius:22px;padding:18px;background:#fbfaf5}.standard-card span,.eyebrow,.micro,.dialog-badge{display:block;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:850}.standard-card span{color:#7f9182;margin-bottom:9px}.standard-card strong{display:block;font-size:17px;line-height:1.35;margin-bottom:8px}.standard-card p{font-size:12.5px;line-height:1.7;color:var(--muted)}
.main{min-width:0}.topbar{height:92px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.top-left,.top-right{display:flex;align-items:center;gap:15px}.micro{color:#718897;margin-bottom:4px}.topbar h1{font-size:28px;letter-spacing:-.04em}.search-shell,.search-box{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px 13px}.search-shell input,.search-box input{border:0;outline:0;background:transparent;min-width:220px;color:var(--text)}.icon-button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--blue);position:relative}.icon-button span{position:absolute;right:-3px;top:-3px;background:var(--blue2);color:#fff;border-radius:99px;font-size:10px;padding:1px 6px}.profile{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:15px;padding:8px 10px}.avatar{width:40px;height:40px;border-radius:13px;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:900}.profile strong{display:block;font-size:14px}.profile small{display:block;font-size:12px;color:#81939e;margin-top:2px}.menu-btn{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff}
.view{display:none;padding:28px 32px 42px}.view.active{display:block}.panel,.catalogue-card,.course-card,.metric-card,.summary-card,.path-card,.library-card,.cpd-summary>div,.admin-metrics>div{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.catalogue-hero,.dashboard-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;padding:28px}.catalogue-hero h2,.dashboard-hero h2{font-size:42px;letter-spacing:-.055em;line-height:1.05;margin-top:8px}.catalogue-hero p,.dashboard-hero p,.page-intro p,.catalogue-card p,.course-card p,.panel p,.path-card p{font-size:14px;line-height:1.75;color:var(--muted);margin-top:9px}.eyebrow{color:#7190a1}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.btn{border:0;border-radius:14px;padding:12px 15px;font-weight:850}.btn.blue{background:linear-gradient(180deg,#6fd5ff 0%, #1eb6ff 28%, #0d7cf2 62%, #095ecf 100%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.55), inset 0 -1px 0 rgba(0,0,0,.08), 0 10px 18px rgba(13,103,217,.22)}.btn.light{background:#fff;color:var(--text);border:1px solid var(--line)}.catalogue-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}.summary-card{padding:18px}.summary-card strong{display:block;font-size:31px;color:var(--blue2);text-shadow:0 1px 0 rgba(255,255,255,.65)}.summary-card span{font-size:12px;color:#748a99}.catalogue-layout{display:grid;grid-template-columns:280px 1fr;gap:18px;margin-top:18px}.catalogue-sidebar{padding:20px}.catalogue-sidebar h3{font-size:24px;margin-top:5px}.catalogue-filters{display:flex;flex-direction:column;gap:9px;margin-top:15px}.filter-chip,.filter{border:1px solid var(--line2);background:#fff;border-radius:15px;padding:11px 13px;color:#557182;font-weight:750;text-align:left}.filter-chip.active,.filter.active{background:var(--blue2);border-color:var(--blue2);color:#fff}.mini-panel{border-top:1px solid #edf1f4;margin-top:18px;padding-top:18px}.feature-list{list-style:none;padding:0;margin:8px 0 0}.feature-list li{font-size:13px;padding:9px 0;border-top:1px solid #eef2f5;color:#5f7787}.feature-list li:first-child{border-top:0}.feature-list span{color:var(--blue);margin-right:7px}.page-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.page-intro h2,.panel-heading h3{font-size:30px;letter-spacing:-.04em;margin-top:5px}.catalogue-grid,.course-grid,.pathway-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.catalogue-card,.course-card{overflow:hidden}.card-art{min-height:145px;padding:18px;background:linear-gradient(180deg,#93e2ff 0%, #42c7ff 14%, #18a8ff 34%, #0d7bf1 68%, #0958c9 100%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}.card-art.specialist{background:linear-gradient(180deg,#9be1ff 0%, #51c8ff 14%, #269cff 34%, #166fe6 68%, #114fc0 100%)}.card-art.operations{background:linear-gradient(180deg,#ace9ff 0%, #72d3ff 14%, #3caeff 34%, #2385ee 68%, #1762cf 100%)}.card-art .format{align-self:flex-end;padding:5px 9px;border:1px solid rgba(255,255,255,.35);border-radius:99px;background:rgba(255,255,255,.14);font-size:10px;font-weight:850}.card-art .category{font-size:10px;letter-spacing:.12em;font-weight:850;opacity:.9}.card-art h3{font-size:23px;line-height:1.15;letter-spacing:-.035em;margin-top:6px}.card-body{padding:18px}.card-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.card-meta span{font-size:11px;background:#f4f9fc;border:1px solid #e1edf5;border-radius:99px;padding:5px 9px;color:#668092}.progress{height:7px;border-radius:99px;background:#eaf1f6;overflow:hidden;margin-top:13px}.progress i{display:block;height:100%;background:linear-gradient(90deg,#63d2ff 0%, #20b6ff 36%, #0d83f4 70%, #095dcd 100%)}.card-actions{display:flex;gap:9px;align-items:center;margin-top:14px}.text-btn{border:0;background:transparent;color:var(--blue);font-weight:850;padding:5px}
.filter-row{display:flex;gap:8px;flex-wrap:wrap}.filter{border-radius:99px;text-align:center;padding:9px 14px}.metric-grid,.admin-metrics,.cpd-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:17px}.metric-card,.admin-metrics>div,.cpd-summary>div{padding:18px}.metric-card span,.admin-metrics span,.cpd-summary span{font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;font-weight:850;color:#748b99}.metric-card strong,.admin-metrics strong,.cpd-summary strong{display:block;font-size:28px;color:var(--blue2);margin:3px 0}.metric-card small,.admin-metrics small,.cpd-summary small{font-size:12px;color:#83959f}.dashboard-grid,.practical-grid,.cpd-grid,.admin-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:18px;margin-top:18px}.panel{padding:22px}.panel-heading{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.journey-line{display:flex;flex-direction:column;gap:10px;margin-top:15px}.journey-step{display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;border:1px solid #e9eff4;border-radius:16px;padding:12px;background:#fbfdff}.journey-num{width:38px;height:38px;border-radius:12px;background:linear-gradient(180deg,#ffffff 0%, #dff3ff 100%);color:var(--blue2);display:grid;place-items:center;font-weight:900;box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 4px 10px rgba(13,103,217,.10)}.journey-step h4{font-size:14px}.journey-step p{font-size:12px;color:#8194a0;margin-top:3px}.journey-step button{border:1px solid var(--line);background:#fff;border-radius:11px;padding:9px 12px;font-weight:800}.next-status{margin-top:13px}.next-status h4{font-size:21px}.next-status p{margin-bottom:12px}.status-row{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid #edf2f5;font-size:13px}.green{color:var(--green)}.gold-text{color:#a67812}.path-card{padding:22px}.path-card h3{font-size:23px;margin-top:7px}.path-tag{display:inline-block;padding:6px 9px;border-radius:99px;background:linear-gradient(180deg,#f7fcff 0%, #e6f4ff 100%);color:var(--blue2);font-size:10px;letter-spacing:.12em;font-weight:850;border:1px solid #d3e8f9}.practical-grid{margin-top:0}.readiness-item{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #edf2f5}.readiness-item:first-child{margin-top:12px}.readiness-item span{font-size:13px}.readiness-item strong{font-size:12px}.status{display:inline-block;border-radius:99px;padding:7px 10px;font-size:10px;font-weight:850}.status.complete{background:#e6f6f0;color:var(--green)}.status.pending{background:#fff4d9;color:#9a7318}.status.locked{background:#eef2f5;color:#70838e}.skill-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 0;border-top:1px solid #edf2f5}.skill-row strong{display:block;font-size:14px}.skill-row small{display:block;color:#8294a0;font-size:12px;margin-top:3px}.skill-row+.btn{margin-top:15px}
.library-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.library-card{padding:17px;display:grid;grid-template-columns:45px 1fr auto;gap:12px;align-items:center}.lib-icon{width:45px;height:45px;border-radius:13px;background:#edf7fd;color:var(--blue);display:grid;place-items:center;font-weight:900}.library-card strong{display:block;font-size:14px}.library-card small{display:block;color:#8295a1;font-size:12px;margin-top:3px}.library-card a{font-size:12px;color:var(--blue2);font-weight:850;text-decoration:none}.transcript-item,.certificate-item{padding:13px 0;border-top:1px solid #edf2f5}.transcript-item:first-child,.certificate-item:first-child{margin-top:10px}.transcript-item{display:grid;grid-template-columns:1fr auto;gap:12px}.transcript-item strong,.certificate-item strong{display:block;font-size:14px}.transcript-item small,.certificate-item small{display:block;font-size:12px;color:#8396a1;margin-top:3px}.score-pill{font-size:11px;font-weight:850;color:var(--green)}.certificate-item button{margin-top:8px}.integration-note{margin-top:16px;padding:14px;border-radius:14px;background:linear-gradient(180deg,#f6fcff 0%, #e8f5ff 100%);color:var(--blue2);font-weight:850;border:1px solid #d3e8f9;box-shadow:inset 0 1px 0 rgba(255,255,255,.95)}
.course-dialog{width:min(1180px,95vw);height:min(820px,93vh);border:0;padding:0;border-radius:27px;overflow:hidden;box-shadow:0 30px 90px rgba(13,45,65,.25)}.course-dialog::backdrop{background:rgba(14,34,47,.4);backdrop-filter:blur(4px)}.course-shell{display:grid;grid-template-columns:340px 1fr;height:100%;position:relative}.course-nav{background:#f3f9fd;border-right:1px solid var(--line);padding:30px 20px;overflow:auto}.dialog-badge{color:var(--blue2)}.course-nav h2{font-size:27px;line-height:1.08;letter-spacing:-.04em;margin-top:10px}.course-nav p{font-size:13px;line-height:1.6;color:var(--muted);margin-top:9px}.course-progress{margin:18px 0}.course-progress span{font-size:12px;color:#708693}.course-progress>div{height:7px;background:#e1ebf1;border-radius:99px;overflow:hidden;margin-top:6px}.course-progress i{display:block;height:100%;background:linear-gradient(90deg,#63d2ff 0%, #20b6ff 36%, #0d83f4 70%, #095dcd 100%)}.lesson-nav{display:flex;flex-direction:column;gap:7px}.lesson-nav button,.assessment-link{border:1px solid transparent;background:transparent;border-radius:12px;padding:10px 11px;text-align:left;color:#526e7f;font-size:12px;font-weight:750}.lesson-nav button:hover,.lesson-nav button.active,.assessment-link:hover,.assessment-link.active{background:#fff;border-color:#dbe8f0;color:var(--text)}.lesson-nav button.done:after{content:"✓";float:right;color:var(--green);font-weight:900}.assessment-link{width:100%;margin-top:8px;border-top:1px solid #dbe5ec}.dialog-close{position:absolute;right:16px;top:16px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:23px;z-index:3}.lesson-reader{padding:38px 42px;overflow:auto;background:#fff}.lesson-reader h3{font-size:34px;letter-spacing:-.045em;line-height:1.1;margin-top:8px;max-width:760px}.lesson-summary{font-size:15px;line-height:1.7;color:#647d8c;margin-top:10px;max-width:780px}.lesson-body{margin-top:22px;max-width:820px}.lesson-body p{font-size:14px;line-height:1.85;color:#425f70;margin:0 0 15px}.key-points,.reference-box{margin-top:20px;border-radius:17px;padding:18px}.key-points{background:#f3f9fd}.key-points strong,.reference-box strong{display:block;font-size:14px}.key-points ul{margin:9px 0 0;padding-left:20px}.key-points li{font-size:13px;line-height:1.6;color:#516c7c;margin:6px 0}.reference-box{border:1px solid var(--line);background:#fff}.reference-box a{display:block;color:var(--blue);font-size:12.5px;font-weight:750;text-decoration:none;padding:7px 0;border-top:1px solid #eef2f5}.reference-box a:first-of-type{margin-top:8px}.lesson-actions{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap;margin-top:22px}.assessment-link{font-weight:850}.question{border-top:1px solid #edf2f5;padding:18px 0}.question:first-child{margin-top:16px}.question legend{font-size:14px;font-weight:850;margin-bottom:10px}.question label{display:block;font-size:13px;color:#5d7685;margin:8px 0}.question input{margin-right:8px}.assessment-submit{margin-top:12px}.assessment-result{margin-top:16px;padding:15px;border-radius:14px;font-size:13px}.assessment-result.pass{background:#e6f6f0;color:#176e58}.assessment-result.fail{background:#fff0e9;color:#8b4d3b}
.toast-dialog{border:0;border-radius:18px;padding:22px 50px 22px 22px;max-width:430px;position:fixed;right:22px;bottom:22px;margin:0 0 0 auto;box-shadow:0 25px 70px rgba(20,55,75,.18)}.toast-dialog::backdrop{background:transparent}.toast-dialog button{position:absolute;right:12px;top:9px;border:0;background:none;font-size:21px}.toast-dialog strong{font-size:14px}.toast-dialog p{font-size:13px;line-height:1.55;color:#667d8a;margin-top:5px}
@media print{.sidebar,.topbar,.btn,.filter-row,.search-box{display:none!important}.shell{display:block}.view{display:none!important}.view.active{display:block!important;padding:0}.panel,.catalogue-card,.course-card{box-shadow:none}}
@media(max-width:1250px){.catalogue-grid,.course-grid,.pathway-cards{grid-template-columns:repeat(2,1fr)}.catalogue-hero,.dashboard-hero,.dashboard-grid,.practical-grid,.cpd-grid,.admin-grid{grid-template-columns:1fr}.catalogue-layout{grid-template-columns:1fr}.shell{grid-template-columns:245px 1fr}.library-grid{grid-template-columns:1fr}}
@media(max-width:900px){.search-shell{display:none}.metric-grid,.admin-metrics,.cpd-summary{grid-template-columns:repeat(2,1fr)}.course-shell{grid-template-columns:1fr}.course-nav{max-height:300px;border-right:0;border-bottom:1px solid var(--line)}.course-dialog{height:95vh}.lesson-reader{padding:28px 22px}}
@media(max-width:720px){.shell{display:block}.sidebar{position:fixed;left:-270px;top:0;bottom:0;width:245px;height:100vh;z-index:40;transition:left .2s}.sidebar.open{left:0}.menu-btn{display:grid;place-items:center}.topbar{height:76px;padding:0 14px}.profile div:last-child{display:none}.topbar h1{font-size:21px}.view{padding:18px 13px 35px}.catalogue-grid,.course-grid,.pathway-cards,.metric-grid,.admin-metrics,.cpd-summary,.catalogue-summary{grid-template-columns:1fr}.catalogue-hero h2,.dashboard-hero h2{font-size:34px}.journey-step,.library-card,.transcript-item{grid-template-columns:1fr}.lesson-reader h3{font-size:29px}.page-intro{display:block}.filter-row{margin-top:14px}}

.card-art,.btn.blue{position:relative;overflow:hidden}
.card-art::before,.btn.blue::before{content:"";position:absolute;left:0;right:0;top:0;height:46%;background:linear-gradient(180deg, rgba(255,255,255,.38) 0%, rgba(255,255,255,.18) 42%, rgba(255,255,255,0) 100%);pointer-events:none}
.summary-card,.metric-card,.panel,.catalogue-card,.course-card,.path-card,.library-card,.cpd-summary>div,.admin-metrics>div{box-shadow:0 16px 34px rgba(25,63,89,.08), inset 0 1px 0 rgba(255,255,255,.92)}
