:root{--navy:#011b2e;--blue:#0d385c;--red:#d51f35;--coral:#ff5364;--ink:#102a43;--muted:#607789;--mist:#eef3f6;--line:#d6e0e7;--paper:#fff}*{box-sizing:border-box}html{background:#f5f7f9}body{margin:0;color:var(--ink);background:#f5f7f9;font-family:Inter,Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid rgba(255,83,100,.3);outline-offset:2px}.portal{min-height:100vh}.topbar{position:fixed;inset:0 0 auto 300px;z-index:30;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid var(--line);background:#fffffff5;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:11px;border:0;color:var(--ink);background:transparent;padding:0;text-align:left}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid currentColor;border-radius:8px;font-size:12px;font-weight:850;letter-spacing:.08em}.brand strong,.brand small{display:block}.brand strong{font-size:15px;line-height:1.05}.brand small{margin-top:3px;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.brand-light{color:#fff}.brand-light small{color:#91a8b8}.top-progress{width:210px;text-align:right}.top-progress span{display:block;margin-bottom:6px;color:var(--muted);font-size:11px;font-weight:700}.top-progress div,.course-score div,.module-card-progress{height:5px;overflow:hidden;border-radius:99px;background:#e5ebef}.top-progress i,.course-score i,.module-card-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--red),var(--coral))}.menu-button,.close-menu{display:none}.sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:300px;overflow-y:auto;color:#dfe8ee;background:linear-gradient(180deg,#011b2e,#03233a 62%,#12213b);box-shadow:18px 0 45px #011b2e17}.sidebar-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;min-height:88px;padding:24px;background:#011b2e;border-bottom:1px solid rgba(255,255,255,.1)}.dashboard-link{display:flex;align-items:center;gap:12px;width:calc(100% - 28px);margin:16px 14px 10px;padding:12px 14px;border:0;border-radius:9px;color:#cbd8e1;background:transparent;font-size:13px;font-weight:700;text-align:left}.dashboard-link span{font-size:20px;font-weight:400}.dashboard-link:hover,.dashboard-link.active{color:#fff;background:#ffffff17}.module-nav{margin:0 10px 6px;border-radius:10px}.module-nav.current{background:#ffffff0d}.module-nav>summary{display:grid;grid-template-columns:34px 1fr 18px;gap:10px;align-items:center;min-height:58px;padding:9px 10px;border-radius:9px;list-style:none;cursor:pointer}.module-nav>summary::-webkit-details-marker{display:none}.module-nav>summary:hover{background:#ffffff0f}.module-number{display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:50%;color:#fff;font-size:10px;font-weight:800}.module-name strong,.module-name small{display:block}.module-name strong{color:#fff;font-size:12px;line-height:1.25}.module-name small{margin-top:4px;color:#7894a6;font-size:9px}.module-toggle{color:#7894a6;font-size:16px;transition:.2s}.module-nav[open] .module-toggle{transform:rotate(45deg)}.lesson-links{padding:0 7px 10px 44px}.lesson-links button{display:grid;grid-template-columns:38px 1fr;gap:7px;width:100%;padding:8px;border:0;border-radius:7px;color:#a9bdca;background:transparent;font-size:10px;line-height:1.35;text-align:left}.lesson-links button:hover,.lesson-links button.active{color:#fff;background:#ffffff14}.lesson-links button>span{color:#6f8a9c;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px}.lesson-links button>span.done{color:#65c699;font-family:inherit;font-size:11px}.coming-copy{margin:0 16px 13px 54px;color:#819aab;font-size:10px;line-height:1.5}.workspace{min-height:100vh;margin-left:300px;padding-top:72px}.dashboard{display:grid;min-height:calc(100vh - 72px);place-items:center;padding:48px}.eyebrow,.quiz-kicker{color:var(--coral);font-size:11px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.primary-button,.complete-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:0 18px;border:0;border-radius:9px;color:#fff;background:var(--red);font-size:13px;font-weight:800}.primary-button:hover,.complete-button:hover{background:#b9192d}.primary-button:disabled{opacity:.42;cursor:not-allowed}.course-start{width:min(760px,100%);padding:54px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 24px 70px #011b2e17}.course-start-copy{max-width:640px}.course-start h1{margin:12px 0 18px;color:var(--navy);font-size:clamp(38px,5vw,58px);letter-spacing:-.052em;line-height:1.02}.course-start-copy p{margin:0;color:var(--muted);font-size:16px;line-height:1.7}.home-progress{margin-top:42px;padding-top:28px;border-top:1px solid var(--line)}.home-progress-label{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.home-progress-label span{color:var(--ink);font-size:13px;font-weight:800}.home-progress-label strong{color:var(--navy);font-size:30px;letter-spacing:-.04em;line-height:1}.home-progress-track{height:10px;overflow:hidden;border-radius:99px;background:#e7edf1}.home-progress-track i{display:block;min-width:4px;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--red),var(--coral));transition:width .25s ease}.home-progress small{display:block;margin-top:10px;color:var(--muted);font-size:11px}.next-step{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:32px;padding:22px 0 0;border-top:1px solid var(--line)}.next-step>div span,.next-step>div strong{display:block}.next-step>div span{margin-bottom:7px;color:var(--red);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.next-step>div strong{max-width:420px;color:var(--ink);font-size:16px;line-height:1.35}.progress-note{margin:24px 0 0;color:#7b8f9d;font-size:10px;line-height:1.5}.lesson-view{max-width:1040px;margin:0 auto;padding:28px 40px 70px}.lesson-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;color:var(--muted);font-size:11px}.lesson-toolbar button{padding:0;border:0;color:var(--muted);background:transparent;font-weight:650}.lesson-toolbar div{display:flex;gap:8px}.video-note{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:99px;color:#617789;background:var(--mist);font-size:9px;font-weight:750}.video-note i{color:var(--red);font-style:normal}.lesson-title{margin-bottom:26px}.lesson-title span{color:var(--red);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.lesson-title h1{margin:7px 0 0;font-size:32px;letter-spacing:-.04em}.video-shell{margin-bottom:34px;overflow:hidden;border:1px solid rgba(1,27,46,.12);border-radius:18px;background:#011b2e;box-shadow:0 20px 52px #011b2e29}.lesson-video{display:block;width:100%;aspect-ratio:16/9;background:#011b2e;object-fit:contain}.video-placeholder{position:relative;display:flex;min-height:280px;align-items:center;justify-content:space-between;gap:36px;margin-bottom:34px;overflow:hidden;padding:42px 48px 58px;border:1px solid rgba(255,255,255,.11);border-radius:18px;color:#fff;background:radial-gradient(circle at 82% 20%,rgba(255,83,100,.19),transparent 30%),linear-gradient(135deg,#011b2e,#0d385c 64%,#29223e);box-shadow:0 20px 52px #011b2e21}.video-placeholder-copy{position:relative;z-index:1;max-width:560px}.video-placeholder-copy>span{display:block;margin-bottom:10px;color:#ff8190;font-size:10px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.video-placeholder-copy strong{display:block;font-size:clamp(26px,4vw,40px);letter-spacing:-.045em;line-height:1.05}.video-placeholder-copy p{max-width:520px;margin:14px 0 0;color:#c7d7e2;font-size:13px;line-height:1.65}.video-play{position:relative;z-index:1;display:grid;width:76px;height:76px;flex:0 0 76px;place-items:center;border:1px solid rgba(255,255,255,.56);border-radius:50%;background:#ffffff1a;box-shadow:0 12px 30px #00000029}.video-play i{width:0;height:0;margin-left:5px;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:16px solid #fff}.video-controls{position:absolute;inset:auto 28px 20px;z-index:1;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;color:#9fb3c1;font-size:9px;font-weight:700}.video-controls div{height:3px;overflow:hidden;border-radius:99px;background:#ffffff38}.video-controls div:before{display:block;width:10%;height:100%;border-radius:inherit;background:var(--coral);content:""}.lesson-frame{display:block;width:100%;min-height:600px;overflow:hidden;border:0;background:transparent}.lesson-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.back-button{display:flex;gap:10px;padding:12px 0;border:0;color:var(--muted);background:transparent;font-size:12px;font-weight:750}.back-button:disabled{opacity:.3;cursor:not-allowed}.complete-button.completed{background:#167350}.quiz-view{max-width:820px;margin:0 auto;padding:60px 40px 90px}.quiz-view>h1{margin:10px 0;font-size:44px;letter-spacing:-.05em}.quiz-view>p{margin:0 0 36px;color:var(--muted)}.quiz-questions{display:grid;gap:16px}.quiz-questions fieldset{margin:0;padding:24px;border:1px solid var(--line);border-radius:14px;background:#fff}.quiz-questions legend{display:flex;align-items:center;gap:12px;padding:0 5px;font-size:16px;font-weight:800}.quiz-questions legend>span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--navy);font-size:10px}.quiz-questions label{display:flex;align-items:center;gap:12px;margin-top:9px;padding:13px 14px;border:1px solid #e3e9ed;border-radius:9px;color:#496174;font-size:12px;cursor:pointer}.quiz-questions label:hover,.quiz-questions label.selected{border-color:#8ba3b3;background:#f6f9fa}.quiz-questions label.correct{border-color:#62a987;background:#eaf7f0}.quiz-questions label.incorrect{border-color:#dc8792;background:#fff0f2}.quiz-questions input{accent-color:var(--red)}.quiz-actions{display:flex;align-items:center;gap:18px;margin-top:22px}.quiz-actions strong{font-size:12px}.quiz-actions .pass{color:#167350}.quiz-actions .retry{color:#b02235}.quiz-view>.complete-button{margin-top:22px}.completion-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#011b2ea3;backdrop-filter:blur(7px);animation:completion-fade .18s ease-out}.completion-dialog{width:min(440px,100%);padding:38px;border:1px solid rgba(255,255,255,.62);border-radius:22px;background:#fff;box-shadow:0 30px 90px #011b2e4d;text-align:center;animation:completion-rise .24s ease-out}.completion-icon{display:grid;width:78px;height:78px;margin:0 auto 20px;place-items:center;border-radius:50%;background:#e9f7ef;font-size:38px;box-shadow:inset 0 0 0 1px #c7e8d5}.completion-dialog>span{display:block;color:var(--red);font-size:10px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.completion-dialog h2{margin:8px 0 12px;color:var(--navy);font-size:38px;letter-spacing:-.045em}.completion-dialog p{margin:0 auto 26px;color:var(--muted);font-size:13px;line-height:1.65}.completion-dialog p strong{color:var(--ink)}.completion-dialog .complete-button{width:100%}.completion-stay{margin-top:15px;padding:5px;border:0;color:var(--muted);background:transparent;font-size:11px;font-weight:750}.completion-stay:hover{color:var(--ink)}@keyframes completion-fade{0%{opacity:0}}@keyframes completion-rise{0%{opacity:0;transform:translateY(12px) scale(.98)}}.scrim{display:none}@media(max-width:1000px){.topbar{left:0;padding:0 20px}.menu-button{display:block;margin-right:13px;border:0;color:var(--ink);background:transparent;font-size:21px}.topbar .brand{margin-right:auto}.sidebar{transform:translate(-102%);transition:.25s}.sidebar.open{transform:translate(0)}.close-menu{display:block;border:0;color:#fff;background:transparent;font-size:26px}.scrim{position:fixed;inset:0;z-index:35;display:block;border:0;background:#011b2e7a}.workspace{margin-left:0}}@media(max-width:760px){.top-progress{width:108px}.top-progress span{font-size:9px}.topbar .brand small{display:none}.dashboard{min-height:calc(100vh - 72px);padding:20px 14px 40px}.course-start{padding:32px 24px;border-radius:16px}.course-start h1{font-size:38px}.course-start-copy p{font-size:14px}.home-progress{margin-top:32px}.next-step{align-items:stretch;flex-direction:column;gap:18px}.next-step .primary-button{width:100%}.lesson-view{padding:22px 14px 60px}.lesson-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.lesson-title h1{font-size:27px}.video-placeholder{min-height:300px;align-items:flex-start;flex-direction:column;padding:32px 28px 54px}.video-play{width:62px;height:62px;flex-basis:62px}.lesson-footer{align-items:stretch;flex-direction:column-reverse}.lesson-footer .complete-button{width:100%}.quiz-view{padding:40px 16px 70px}.quiz-view>h1{font-size:36px}.quiz-actions{align-items:flex-start;flex-direction:column}}
