:root{--brand-navy:#0b2a40;--brand-blue:#1766b0;--brand-green:#00a551;--navy:var(--brand-navy);--navy-deep:#082236;--blue:var(--brand-blue);--green:#007b4d;--green-dark:#005f3d;--award:#8a5a00;--award-soft:#fff6e5;--ink:#142f43;--muted:#526978;--line:#d6e3e9;--bg:#f3f7fa;--card:#fff;--soft-blue:#e9f3ff;--soft-green:#e8f7ef;--danger:#a12345;--shadow:0 16px 40px rgba(15,48,66,.055);--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;min-height:100%}body{background:var(--bg);color:var(--ink);font:400 16px/1.6 Be Vietnam Pro,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}.btn,button{cursor:pointer}a{color:var(--blue)}a,a:hover{text-decoration:none}img{max-width:100%}svg{flex:none}:focus-visible{outline:3px solid var(--blue);outline-offset:3px;box-shadow:0 0 0 2px white}::selection{background:#c6ead7;color:var(--navy)}.skip-link{position:fixed;top:-60px;left:16px;z-index:100;padding:10px 16px;background:var(--navy);color:white;border-radius:10px}.skip-link:focus{top:12px}.app-frame{min-height:100dvh}.sidebar{display:none}.workspace{min-width:0;min-height:100dvh}.workspace-header{display:none}.mobile-header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:white;border-bottom:1px solid var(--line)}.mobile-brand{display:inline-flex;align-items:center;gap:10px;color:var(--navy);font-size:1rem;font-weight:800;letter-spacing:-.025em}.mobile-brand strong{color:var(--green)}.mobile-brand-mark{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:var(--navy);color:white;font:800 1.1rem/1 Be Vietnam Pro,sans-serif}.mobile-account{display:flex;align-items:center;gap:9px}.mobile-account button{place-items:center;border:1px solid var(--line);border-radius:11px;background:white;color:var(--navy)}.avatar,.mobile-account button{display:grid;width:42px;height:42px}.avatar{place-items:center;flex:none;border-radius:13px;background:var(--soft-green);color:var(--green-dark);font-weight:800;font-size:.8rem}.avatar.small{width:36px;height:36px;border-radius:11px}.avatar.large{width:64px;height:64px;border-radius:18px;font-size:1.05rem}.profile-edit-column,.profile-grid{display:grid;grid-gap:16px;gap:16px}.profile-edit-column{align-content:start}.profile-card h2{margin:12px 0 4px}.profile-facts{display:grid;grid-gap:10px;gap:10px;margin:18px 0}.profile-facts div{display:grid;grid-gap:2px;gap:2px}.profile-facts dt{color:var(--muted);font-size:.78rem}.profile-facts dd{margin:0;font-weight:700}.password-inline{display:grid;grid-gap:12px;gap:12px;align-items:end}.sidebar-profile,.workspace-user{color:inherit}.content-wrap{width:min(1320px,100%);margin:0 auto;padding:26px 18px calc(104px + env(safe-area-inset-bottom));min-width:0}.mobile-nav{position:fixed;z-index:30;bottom:0;left:0;right:0;display:flex;align-items:stretch;justify-content:space-around;gap:2px;min-height:calc(68px + env(safe-area-inset-bottom));padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line);box-shadow:0 -8px 28px rgba(18,47,67,.055)}.mobile-nav a{min-width:65px;min-height:55px;display:grid;justify-items:center;align-content:center;grid-gap:2px;gap:2px;padding:5px 8px;border-radius:12px;color:var(--muted);font-size:.67rem;font-weight:700;line-height:1.25;white-space:nowrap}.mobile-nav a[aria-current=page]{color:var(--blue);background:var(--soft-blue)}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(1.75rem,3vw,2.55rem);line-height:1.24;letter-spacing:-.045em;font-weight:800}h1,h2{margin-bottom:10px}h2{font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.3;letter-spacing:-.025em;font-weight:750}h3{font-size:1.08rem;line-height:1.38;letter-spacing:-.02em;margin-bottom:8px}p{margin-bottom:12px}.muted,.note{color:var(--muted)}.note{font-size:.9rem;line-height:1.55}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--green-dark);font-size:.76rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:28px}.page-heading p{max-width:62ch;color:var(--muted);margin:0}.section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:34px 0 18px}.section-heading h2{margin:0}.section-heading a{display:inline-flex;align-items:center;gap:6px;font-weight:750;font-size:.9rem}.grid{display:grid;grid-gap:18px;gap:18px}.card{min-width:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(20px,2.5vw,28px);box-shadow:var(--shadow)}.card-flat{box-shadow:none}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.stack{display:grid;grid-gap:16px;gap:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 19px;border:1px solid transparent;border-radius:12px;background:var(--green);color:white;font-weight:750;font-size:.92rem;line-height:1.2;white-space:nowrap;transition:background .18s ease,box-shadow .18s ease,transform .18s ease,border-color .18s ease}.btn:hover{background:var(--green-dark);color:white;box-shadow:0 8px 18px rgba(0,141,88,.18);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.blue{background:var(--blue)}.btn.blue:hover{background:var(--navy)}.btn.ghost{background:white;color:var(--navy);border-color:var(--line);box-shadow:none}.btn.ghost:hover{background:var(--soft-blue);border-color:#bdd5df;color:var(--navy)}.btn.wide{width:100%}.tag{display:inline-flex;min-height:27px;align-items:center;gap:5px;padding:3px 10px;border-radius:7px;background:#edf2f5;color:#425e70;font-size:.72rem;font-weight:800;white-space:nowrap}.tag.blue{background:var(--soft-blue);color:var(--blue)}.tag.success{background:var(--soft-green);color:var(--green-dark)}.tag.award{background:var(--award-soft);color:var(--award)}.tag.neutral{background:#eef2f3;color:#5c6c78}.field{display:grid;grid-gap:7px;gap:7px;margin-bottom:16px;min-width:0}label,legend{font-size:.87rem;font-weight:750;color:var(--ink)}input,select,textarea{width:100%;min-width:0;min-height:48px;border:1px solid #cedde4;border-radius:11px;padding:10px 14px;background:#fff;color:var(--ink);font-size:1rem;transition:border-color .18s ease,box-shadow .18s ease}input:hover,select:hover,textarea:hover{border-color:#95b6c4}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(23,96,138,.15)}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:18px;padding:0;accent-color:var(--green);vertical-align:middle}input[type=range]{padding:0;accent-color:var(--green);box-shadow:none;border:0}input[type=file]{padding:10px;font-size:.83rem}input[type=file]::-webkit-file-upload-button{margin-right:12px;padding:7px 12px;border:0;border-radius:7px;background:var(--soft-blue);color:var(--navy);font:inherit;font-weight:700;cursor:pointer}input[type=file]::file-selector-button{margin-right:12px;padding:7px 12px;border:0;border-radius:7px;background:var(--soft-blue);color:var(--navy);font:inherit;font-weight:700;cursor:pointer}textarea{min-height:130px;resize:vertical}.err,.form-error{color:var(--danger);font-weight:700}.form-error{padding:12px 14px;border:1px solid #e9c4ce;border-radius:11px;background:#fff2f5;font-size:.88rem}fieldset{border:0;padding:0;margin:0 0 18px}fieldset label{display:flex;gap:9px;align-items:center;min-height:42px;font-weight:500}.form-grid{display:grid;grid-gap:0 16px;gap:0 16px}.form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:5px}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;background:white;min-width:620px}td,th{text-align:left;padding:13px 16px;border-bottom:1px solid #e9eff1;vertical-align:top;font-size:.85rem}th{background:#f5f9fa;color:#5a7080;font-size:.73rem;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfdfd}.guest-shell{min-height:100dvh}.guest-header{height:84px;max-width:1320px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.guest-logo{display:inline-flex;align-items:center;gap:12px}.guest-logo img{width:152px;height:auto}.guest-logo span{color:var(--navy);letter-spacing:.12em;font-size:.78rem;font-weight:800}.header-login{display:inline-flex;align-items:center;gap:8px;font-weight:750}.guest-main{width:min(980px,100%);margin:0 auto;padding:42px 20px}.login-layout,.login-main{min-height:100dvh}.login-layout{display:grid;background:#fff}.login-story{position:relative;isolation:isolate;min-height:310px;display:flex;flex-direction:column;justify-content:space-between;overflow:clip;padding:26px 26px 32px;background:radial-gradient(circle at 73% 29%,rgba(34,145,151,.52) 0,transparent 26%),radial-gradient(circle at 12% 82%,rgba(27,112,139,.55) 0,transparent 32%),linear-gradient(138deg,#06283f 5%,#0b4059 58%,#0c4b52);color:white}.login-story:after,.login-story:before{content:"";position:absolute;z-index:-1;width:480px;height:480px;border:1px solid rgba(255,255,255,.1);border-radius:50%}.login-story:before{right:-250px;top:-270px;box-shadow:0 0 0 74px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.022)}.login-story:after{left:-280px;bottom:-340px;box-shadow:0 0 0 100px rgba(255,255,255,.025)}.login-logo{display:inline-grid;justify-items:start;gap:13px;align-self:start;color:white}.login-logo img{width:186px;height:auto}.login-logo span{font-size:.72rem;letter-spacing:.25em;font-weight:800}.login-story-content{max-width:610px}.login-story-content .eyebrow{color:#91e5bb}.login-story h1{font-size:clamp(2.15rem,4.2vw,4.2rem);color:white;line-height:1.12;letter-spacing:-.06em;margin:10px 0 18px}.login-story p{color:#cae2e6;font-size:clamp(.95rem,1.25vw,1.12rem);max-width:47ch}.login-benefits{display:none;gap:14px;margin-top:48px}.login-benefit{display:flex;align-items:center;gap:10px;color:#e4f0ee;font-size:.88rem;font-weight:650}.login-benefit svg{color:#8de0b6}.login-foot{display:none;color:#a9c8ce;font-size:.76rem}.login-panel{display:flex;align-items:center;justify-content:center;padding:34px 22px 52px}.login-form-wrap{width:min(440px,100%)}.login-kicker{color:var(--green-dark);font-size:.75rem;font-weight:800;letter-spacing:.15em}.login-form-wrap h2{font-size:clamp(1.85rem,3vw,2.45rem);margin:15px 0 6px;letter-spacing:-.045em}.login-form-wrap>p{color:var(--muted);font-size:.92rem;margin-bottom:29px}.login-form-wrap .field{margin-bottom:18px}.login-form-wrap label{font-size:.86rem}.login-form-wrap input{min-height:54px;background:#fbfcfd}.password-field{position:relative}.password-field input{padding-right:72px}.password-field button{position:absolute;right:7px;top:7px;min-width:52px;min-height:40px;padding:4px 9px;border:0;border-radius:8px;background:transparent;color:var(--blue);font-size:.8rem;font-weight:800}.password-field button:hover{background:var(--soft-blue)}.login-submit{margin-top:6px;width:100%;min-height:54px;font-size:1rem}.login-submit:disabled{opacity:.65;cursor:wait;transform:none}.login-divider{height:1px;background:var(--line);margin:26px 0}.login-help{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:.82rem;line-height:1.5}.login-help svg{color:var(--green)}.login-microsoft{width:100%;margin-top:14px}.login-account-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 18px;margin-top:18px;font-size:.86rem;font-weight:750}.auth-box{max-width:580px;margin:10px auto}.auth-box>.note{margin-bottom:24px}.auth-box .field small{color:var(--muted);font-size:.78rem}.auth-check{display:flex;align-items:flex-start;gap:10px;margin:14px 0 20px;font-weight:500;line-height:1.5}.auth-check input{flex:none;margin-top:4px}.auth-switch{margin:22px 0 0;color:var(--muted);text-align:center;font-size:.88rem}.auth-switch a{font-weight:750}.auth-notice{padding:13px 15px;border-radius:11px;color:var(--green-dark)}.auth-notice,.auth-result{background:var(--soft-green)}.auth-result{padding:20px;border-radius:14px}.auth-result p{margin-bottom:0}.recovery-box{display:grid;grid-gap:10px;gap:10px;margin-top:18px;padding:16px;border:1px solid #bdd8c7;border-radius:12px;background:white}.recovery-box code{display:block;overflow-wrap:anywhere;font-size:.96rem;font-weight:800}.recovery-box small{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.account-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.account-toolbar form{display:flex;flex-wrap:wrap;gap:8px}.account-toolbar input{width:min(340px,100%)}.account-list{display:grid;grid-gap:12px;gap:12px}.account-row{display:grid;grid-gap:14px;gap:14px}.account-row small{color:var(--muted)}.account-actions{gap:10px}.account-actions,.account-role-form{display:flex;flex-wrap:wrap;align-items:flex-end}.account-role-form{gap:9px}.account-role-form label{display:grid;grid-gap:3px;gap:3px;font-size:.75rem}.account-role-form select{min-width:125px;min-height:43px;font-size:.82rem}.resend-form{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.welcome-hero{position:relative;overflow:clip;border-radius:24px;padding:clamp(25px,4vw,42px);min-height:218px;background:linear-gradient(118deg,#0b3048,#15526a 65%,#16826d 130%);color:white}.welcome-hero:after,.welcome-hero:before{content:"";position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%;pointer-events:none}.welcome-hero:before{width:370px;height:370px;right:-110px;top:-245px;box-shadow:0 0 0 70px rgba(255,255,255,.035),0 0 0 145px rgba(255,255,255,.025)}.welcome-hero:after{width:170px;height:170px;right:150px;bottom:-135px}.welcome-hero .eyebrow{color:#9ee4ba}.welcome-hero h1{max-width:650px;color:white;margin-bottom:10px}.welcome-hero p{max-width:53ch;color:#cce4e5;margin-bottom:0}.welcome-hero .btn{margin-top:24px;background:white;color:var(--navy)}.welcome-hero .btn:hover{background:#e9f6ef;color:var(--navy)}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;margin-top:16px}.stat-card{padding:18px;min-height:122px;border:1px solid var(--line);border-radius:17px;background:white}.stat-icon{width:34px;height:34px;display:grid;place-items:center;margin-bottom:11px;border-radius:10px;background:var(--soft-green);color:var(--green-dark)}.stat-card:nth-child(2) .stat-icon{background:var(--soft-blue);color:var(--blue)}.stat-card strong{display:block;font-size:1.55rem;line-height:1.1;letter-spacing:-.04em}.stat-card span:last-child{color:var(--muted);font-size:.78rem;font-weight:650}.course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));grid-gap:18px;gap:18px}.course-card{min-width:0;display:flex;flex-direction:column;overflow:clip;background:white;border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease}.course-card:hover{transform:translateY(-3px);box-shadow:0 22px 44px rgba(15,48,66,.11)}.course-art{height:145px;display:flex;align-items:flex-end;justify-content:space-between;position:relative;overflow:clip;padding:18px 22px;background:linear-gradient(128deg,#0b314b,#1b6984);color:white}.course-art:before{content:"";width:178px;height:178px;position:absolute;right:-58px;top:-80px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.055),0 0 0 75px rgba(255,255,255,.03)}.course-art.green{background:linear-gradient(126deg,#0e5d5d,#14916c)}.course-art.sky{background:linear-gradient(126deg,#195e92,#50a5bb)}.course-art span{z-index:1;font-size:.7rem;font-weight:800;letter-spacing:.13em}.course-art svg{position:relative;z-index:1;opacity:.85}.course-card-body{display:flex;flex:1 1;flex-direction:column;padding:21px}.course-card-body h3{min-height:2.8em;margin:11px 0 7px}.course-card-body p{color:var(--muted);font-size:.84rem;margin-bottom:21px}.course-card-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:15px;border-top:1px solid var(--line);margin-top:auto}.course-card-footer a{display:inline-flex;align-items:center;gap:7px;font-size:.88rem;font-weight:800;white-space:nowrap}.course-card-footer a:hover{color:var(--green-dark)}.course-card-footer small{color:var(--muted);font-size:.72rem}.learning-list{display:grid;grid-gap:13px;gap:13px}.empty-state{display:grid;justify-items:start;padding:30px}.empty-state h3{margin-top:11px}.empty-state p{color:var(--muted);max-width:45ch}.empty-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:var(--soft-green);color:var(--green-dark)}.learning-card{display:grid;grid-gap:16px;gap:16px;align-items:center;background:white;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.learning-card.is-active{border-left:4px solid var(--blue);background:linear-gradient(90deg,#f4f8ff,white 22%)}.learning-card.is-complete{border-left:4px solid var(--green);background:linear-gradient(90deg,#f0f9f3,white 22%)}.learning-art{width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:var(--soft-blue);color:var(--blue)}.learning-art.green{background:var(--soft-green);color:var(--green-dark)}.learning-info h3{margin:3px 0 5px}.learning-info p{color:var(--muted);margin:0;font-size:.81rem}.learning-progress{display:grid;grid-gap:6px;gap:6px;margin-top:12px;color:var(--blue);font-size:.75rem;font-weight:750}.learning-progress progress{width:min(360px,100%);height:7px;min-height:7px;padding:0;overflow:hidden;border:0;border-radius:9px;background:#e4eef1;accent-color:var(--green)}.learning-progress progress::-webkit-progress-bar{border-radius:9px;background:#e4eef1}.learning-progress progress::-webkit-progress-value{border-radius:9px;background:var(--green)}.learning-progress progress::-moz-progress-bar{border-radius:9px;background:var(--green)}.learning-actions{display:flex;flex-wrap:wrap;gap:8px}.path-card{display:grid;grid-gap:15px;gap:15px}.path-steps{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.82rem}.path-steps,.path-steps svg{color:var(--muted)}.certificate-list{display:grid;grid-gap:10px;gap:10px;padding:0;list-style:none}.certificate-list a{display:flex;align-items:center;gap:12px;min-height:54px;padding:10px 14px;border:1px solid var(--line);border-radius:11px;background:white;font-weight:700}.certificate-list svg{color:var(--award)}.certificates-section{scroll-margin-top:26px}.certificate-row{display:flex;align-items:stretch;gap:8px}.certificate-list .certificate-main{flex:1 1;min-width:0;border-left:4px solid var(--award);background:linear-gradient(90deg,var(--award-soft),white 38%)}.certificate-main span{min-width:0;overflow:hidden;text-overflow:ellipsis}.certificate-main small{display:block;margin-top:2px;color:var(--muted);font-size:.73rem;font-weight:600}.certificate-list .certificate-download{flex:none;min-width:78px;justify-content:center;color:var(--navy);font-size:.78rem}.journey-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px;padding:clamp(20px,3vw,30px);border:1px solid #c9dfed;border-radius:20px;background:linear-gradient(112deg,#e8f3ff,#eef8f4)}.journey-heading .eyebrow{color:var(--blue)}.journey-heading h1{margin-bottom:5px}.journey-heading p{margin:0;color:var(--muted)}.journey-section-heading{margin-top:0}.journey-section-heading .eyebrow{margin-bottom:3px}.journey-paths{display:grid;grid-gap:15px;gap:15px}.journey-empty{display:grid;justify-items:start}.roadmap-card{overflow:hidden;border:1px solid #c8dce4;border-radius:22px;background:white;box-shadow:0 20px 48px rgba(11,42,64,.07)}.roadmap-card-header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:clamp(22px,3vw,32px) clamp(20px,3vw,34px) 16px;background:linear-gradient(108deg,#0b2a40,#104d5b);color:white}.roadmap-overline{color:#92ddbd;font-size:.7rem;font-weight:850;letter-spacing:.13em}.roadmap-card-header h3{margin:7px 0 4px;color:white;font-size:clamp(1.3rem,2vw,1.8rem)}.roadmap-card-header p{margin:0;color:#d3e8e8;font-size:.85rem}.roadmap-count{display:grid;justify-items:center;flex:none;min-width:120px}.roadmap-count strong{font-size:2.4rem;line-height:1;letter-spacing:-.07em}.roadmap-count strong span{color:#99c6cb;font-size:1.25rem}.roadmap-count small{color:#cee0e1;font-size:.68rem;font-weight:750}.roadmap-progress{height:7px;overflow:hidden;background:#dceae9}.roadmap-progress span{display:block;height:100%;background:linear-gradient(90deg,#0aad68,#55d69a);transform-origin:left;animation:path-grow .9s ease-out both}@keyframes path-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.roadmap-steps{position:relative;display:grid;grid-gap:18px;gap:18px;margin:0;padding:27px clamp(20px,3vw,34px);list-style:none}.roadmap-steps:before{content:"";position:absolute;left:calc(clamp(20px,3vw,34px) + 22px);top:49px;bottom:49px;width:2px;background:#dce8eb}.roadmap-step{position:relative;display:flex;align-items:flex-start;gap:14px;min-width:0}.roadmap-node{z-index:1;display:grid;place-items:center;flex:none;width:46px;height:46px;border:2px solid #708b9a;border-radius:50%;background:white;color:var(--muted);font-size:.76rem;font-weight:850}.roadmap-step.is-done .roadmap-node{border-color:var(--green);background:var(--green);color:white}.roadmap-step.is-current .roadmap-node{border-color:var(--blue);background:var(--blue);color:white;box-shadow:0 0 0 6px var(--soft-blue)}.roadmap-step-content{display:grid;grid-gap:3px;gap:3px;min-width:0;padding-top:2px}.roadmap-step.is-current .roadmap-step-content{margin-top:-6px;padding:8px 10px;border-radius:10px;background:var(--soft-blue)}.roadmap-step-state{color:var(--green-dark);font-size:.66rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.roadmap-step.is-current .roadmap-step-state{color:var(--blue)}.roadmap-step.is-upcoming .roadmap-step-state{color:var(--muted)}.roadmap-step-content a{color:var(--navy);font-size:.94rem;font-weight:850;line-height:1.4}.roadmap-step-content a:hover{color:var(--green-dark);text-decoration:underline}.roadmap-step-content small{color:var(--muted);font-size:.72rem}.roadmap-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:17px clamp(20px,3vw,34px);border-top:1px solid var(--line);background:#f1f7fd}.roadmap-footer>span:first-child{color:var(--muted);font-size:.82rem;font-weight:650}.level-card{display:grid;grid-gap:22px;gap:22px;margin-top:18px;padding:clamp(22px,3vw,30px);border:1px solid #d2e4df;border-radius:20px;background:linear-gradient(120deg,#eff8f3,#f5f9fb)}.level-card .eyebrow{margin-bottom:3px}.level-card h2{margin-bottom:5px;font-size:1.65rem}.level-card p{margin-bottom:4px;color:var(--navy);font-weight:750}.level-card-intro>small{color:var(--muted);font-size:.72rem}.level-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;padding:0;margin:0;list-style:none}.level-track li{display:grid;align-content:start;grid-gap:2px;gap:2px;min-height:108px;padding:12px;border:1px solid #dbe8e7;border-radius:13px;background:rgba(255,255,255,.7)}.level-marker{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#e7eef1;color:var(--blue);font-size:.7rem;font-weight:850}.level-track li.is-current{border-color:var(--blue);background:#f5f9ff;box-shadow:0 5px 18px rgba(23,102,176,.09)}.level-track li.is-done{border-color:#b9dfc9;background:#f2faf5}.level-track li.is-current .level-marker{background:var(--blue);color:white}.level-track li.is-done .level-marker{background:var(--green);color:white}.level-track strong{color:var(--navy);font-size:.78rem}.level-track small{color:var(--muted);font-size:.68rem}.catalog-group-prompt{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin:18px 0;padding:18px 20px;border:1px solid #b7d3e9;border-radius:15px;background:#eff7ff}.catalog-group-prompt strong{color:var(--navy)}.catalog-group-prompt p{margin:2px 0 0;color:var(--muted);font-size:.82rem}.catalog-filters{display:flex;gap:8px;overflow-x:auto;padding:2px 0 11px;margin-bottom:5px;scrollbar-width:thin}.catalog-filters a{flex:none;display:grid;place-items:center;min-height:44px;padding:9px 14px;border:1px solid var(--line);border-radius:11px;background:white;color:var(--muted);font-size:.78rem;font-weight:750}.catalog-filters a:hover,.catalog-filters a[aria-current=page]{border-color:var(--blue);background:var(--soft-blue);color:var(--blue)}.catalog-result-caption{margin-bottom:16px;color:var(--muted);font-size:.8rem;font-weight:750}.group-onboarding{max-width:820px;margin:24px auto}.group-onboarding-heading{max-width:580px;margin-bottom:24px}.group-onboarding-heading p{color:var(--muted)}.group-choice-grid{display:grid;grid-gap:9px;gap:9px}.group-choice{display:flex;align-items:center;gap:11px;min-height:59px;padding:10px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer}.group-choice:has(input:checked){border-color:var(--blue);background:var(--soft-blue)}.group-choice input{flex:none}.group-choice-number{color:var(--muted);font-size:.7rem;font-weight:850}.group-choice svg{margin-left:auto;color:var(--blue)}.group-onboarding fieldset{margin-bottom:18px}.group-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));grid-gap:7px 13px;gap:7px 13px;margin:8px 0 18px}.group-checks label{display:flex;align-items:center;gap:8px;min-height:40px;font-size:.78rem;font-weight:650}.course-group-fieldset{margin-top:14px}.course-group-fieldset legend{font-size:.87rem}.course-group-fieldset p{margin:0}.course-group-list{display:grid;grid-gap:9px;gap:9px}.course-group-item{border:1px solid var(--line);border-radius:12px;background:#fbfdfd}.course-group-item summary{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:5px 14px;min-height:52px;padding:10px 14px;cursor:pointer}.course-group-item summary span{color:var(--muted);font-size:.72rem}.course-group-item form{padding:12px 14px 16px;border-top:1px solid var(--line)}@media (min-width:720px){.roadmap-steps{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(190px,1fr);grid-gap:22px;gap:22px;overflow-x:auto}.roadmap-steps:before{left:calc(clamp(20px,3vw,34px) + 23px);right:calc(clamp(20px,3vw,34px) + 23px);top:49px;bottom:auto;width:auto;height:2px}.roadmap-step{display:grid;grid-gap:12px;gap:12px}.level-card{grid-template-columns:minmax(225px,.8fr) minmax(0,1.8fr);align-items:center}.level-track{grid-template-columns:repeat(4,minmax(0,1fr))}.group-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.roadmap-progress span{animation:none}}.course-hero{position:relative;overflow:clip;padding:clamp(26px,5vw,48px);border-radius:24px;background:linear-gradient(120deg,#0b314b,#175d75);color:white}.course-hero:after{content:"";position:absolute;right:-50px;bottom:-250px;width:440px;height:440px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.04),0 0 0 130px rgba(255,255,255,.025)}.course-hero h1{max-width:770px;color:white}.course-hero p{max-width:67ch;color:#d8e9e9}.course-hero .row{position:relative;z-index:1;margin-top:22px}.course-hero .tag{background:rgba(255,255,255,.14);color:white}.course-hero .btn.ghost{background:rgba(255,255,255,.1);color:white;border-color:rgba(255,255,255,.25)}.course-progress{position:relative;z-index:1;display:grid;grid-gap:8px;gap:8px;max-width:490px;margin-top:20px;color:#d8e9e9;font-size:.82rem}.course-progress span{display:flex;justify-content:space-between;gap:10px}.course-progress strong{color:white}.course-progress progress{width:100%;height:8px;min-height:8px;padding:0;border:0;border-radius:9px;background:rgba(255,255,255,.22);accent-color:#34d384}.course-progress progress::-webkit-progress-bar{border-radius:9px;background:rgba(255,255,255,.22)}.course-progress progress::-webkit-progress-value{border-radius:9px;background:#34d384}.course-progress progress::-moz-progress-bar{border-radius:9px;background:#34d384}.course-hero .course-criteria{position:relative;z-index:1;margin:20px 0 0;color:#d8e9e9;font-size:.78rem}.course-layout{display:grid;grid-gap:22px;gap:22px;margin-top:24px}.module-list{padding:0;margin:0;list-style:none}.module-item{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--line)}.module-item:last-child{border-bottom:0}.module-number{width:37px;height:37px;display:grid;place-items:center;border-radius:11px;background:var(--soft-blue);color:var(--blue);font-size:.76rem;font-weight:800}.module-item.is-done .module-number{background:var(--soft-green);color:var(--green-dark)}.module-copy{flex:1 1;min-width:0}.module-copy a,.module-copy strong{color:var(--ink);font-size:.9rem;font-weight:750}.module-copy small{display:block;color:var(--muted);font-size:.75rem;margin-top:2px}.module-item>svg{color:var(--muted)}.course-sidebar-card{align-self:start}.course-sidebar-card .detail-stat{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.82rem}.detail-stat span{color:var(--muted)}.detail-stat strong{text-align:right}.discussion-grid{display:grid;grid-gap:20px;gap:20px;margin-top:22px}.discussion-list{display:grid;grid-gap:10px;gap:10px;margin-top:20px}.discussion-item{padding:14px 0;border-top:1px solid var(--line);font-size:.85rem}.discussion-item p{margin:3px 0}.lesson-back{display:inline-flex;align-items:center;gap:7px;margin-bottom:17px;font-weight:750;font-size:.85rem}.lesson-back svg{transform:rotate(180deg)}.lesson-heading{margin-bottom:23px}.lesson-heading p{color:var(--muted);margin:0}.lesson-workspace{min-height:100dvh;padding:clamp(16px,2.5vw,36px);background:var(--bg)}.lesson-hero,.lesson-workspace-grid{width:min(1220px,100%);margin-left:auto;margin-right:auto}.lesson-hero{padding:clamp(24px,3vw,38px);border-radius:24px;background:radial-gradient(circle at 90% 10%,rgba(40,133,120,.24),transparent 34%),linear-gradient(115deg,var(--navy-deep),#104665);color:white}.lesson-return{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:-5px 0 18px;color:#e6f4f8;font-size:.86rem;font-weight:750}.lesson-return:hover{color:white;text-decoration:underline}.lesson-return svg{transform:rotate(180deg)}.lesson-return:focus-visible{outline-color:white}.lesson-hero-meta{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap;margin-bottom:16px}.lesson-course-name{color:#b8ead2;font-size:.83rem;font-weight:750}.lesson-step{display:inline-flex;align-items:center;min-height:28px;padding:3px 10px;border:1px solid rgba(255,255,255,.24);border-radius:99px;color:#edf6fa;font-size:.75rem;font-weight:750;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lesson-kind{display:inline-flex;margin-bottom:8px;color:#b8ead2;font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.lesson-hero h1{max-width:18ch;margin:0 0 7px;color:white;font-size:clamp(1.8rem,3.2vw,2.7rem)}.lesson-hero>p{max-width:62ch;margin:0;color:#d8eaf1;font-size:.92rem}.lesson-course-progress{max-width:500px;margin-top:24px}.lesson-course-progress>span{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px;color:#d8eaf1;font-size:.76rem}.lesson-course-progress strong{color:white;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lesson-course-progress progress{display:block;width:100%;height:7px;border:0;border-radius:99px;background:rgba(255,255,255,.18);accent-color:#50d59a}.lesson-course-progress progress::-webkit-progress-bar{border-radius:99px;background:rgba(255,255,255,.18)}.lesson-course-progress progress::-webkit-progress-value{border-radius:99px;background:#50d59a}.lesson-course-progress progress::-moz-progress-bar{border-radius:99px;background:#50d59a}.lesson-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 292px;align-items:start;grid-gap:22px;gap:22px;margin-top:22px}.lesson-primary{min-width:0}.lesson-outline,.lesson-panel{min-width:0;border:1px solid var(--line);border-radius:21px;background:white;box-shadow:var(--shadow)}.lesson-panel{padding:clamp(20px,2.7vw,34px)}.lesson-panel-title{display:flex;align-items:center;gap:13px;margin-bottom:24px}.lesson-outline-icon,.lesson-panel-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:14px;background:var(--soft-blue);color:var(--blue)}.lesson-outline-kicker,.lesson-panel-kicker{display:block;color:var(--green-dark);font-size:.7rem;font-weight:800;letter-spacing:.1em}.lesson-panel-title h2{margin:2px 0 0;font-size:1.3rem}.lesson-outline{position:-webkit-sticky;position:sticky;top:22px;padding:20px 12px 12px}.lesson-outline-head{display:flex;align-items:center;gap:10px;padding:0 9px 15px;border-bottom:1px solid var(--line)}.lesson-outline-icon{width:42px;height:42px;border-radius:12px}.lesson-outline h2{margin:2px 0 0;font-size:.98rem}.lesson-outline ol{display:grid;grid-gap:3px;gap:3px;margin:11px 0 0;padding:0;list-style:none}.lesson-outline-link{display:flex;align-items:center;gap:11px;min-height:62px;padding:10px 9px;border-radius:11px;color:var(--ink)}.lesson-outline-link:hover{background:#f3f7fa;color:var(--ink)}.lesson-outline-link.is-current{background:var(--soft-blue);color:var(--navy)}.lesson-outline-number{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:#eef3f6;color:var(--muted);font-size:.72rem;font-weight:800}.lesson-outline-link.is-current .lesson-outline-number{background:white;color:var(--blue)}.lesson-outline-link:has(svg) .lesson-outline-number{background:var(--soft-green);color:var(--green-dark)}.lesson-outline-link strong{display:block;font-size:.79rem;line-height:1.4}.lesson-outline-link small{display:block;margin-top:2px;color:var(--muted);font-size:.7rem;line-height:1.4}.quiz-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1px;gap:1px;overflow:hidden;margin-bottom:27px;border:1px solid #dce8ed;border-radius:13px;background:#dce8ed}.quiz-facts>div{display:grid;grid-gap:2px;gap:2px;padding:14px 16px;background:#f5f9fb}.quiz-facts span{color:var(--muted);font-size:.73rem}.quiz-facts strong{color:var(--navy);font-size:1.12rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.3}.quiz-result{display:flex;align-items:flex-start;gap:14px;margin:0 0 27px;padding:18px;border:1px solid #c8e5d5;border-radius:15px;background:#ecf9f1}.quiz-result.is-failed{border-color:#e9d5a2;background:#fff9ea}.quiz-result-symbol{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:13px;background:#d6f0e1;color:var(--green-dark)}.quiz-result.is-failed .quiz-result-symbol{background:#f8ebc6;color:#76510b}.quiz-result-label{color:var(--green-dark);font-size:.68rem;font-weight:800;letter-spacing:.08em}.quiz-result.is-failed .quiz-result-label{color:#76510b}.quiz-result h3{margin:2px 0;color:var(--navy);font-size:1.05rem}.quiz-result p{margin:0;color:var(--muted);font-size:.83rem}.quiz-result p strong{color:var(--navy);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.quiz-alert{margin-bottom:20px;color:var(--danger);font-weight:700}.quiz-form-heading{margin:0 0 19px}.quiz-form-heading h3{margin:0 0 3px;font-size:1.1rem}.quiz-form-heading p{margin:0;color:var(--muted);font-size:.82rem}.quiz-question{min-width:0;margin:0 0 22px;padding:21px;border:1px solid var(--line);border-radius:15px}.quiz-question legend{display:block;width:100%;padding:0 0 4px;color:var(--navy);font-size:.98rem;line-height:1.5}.quiz-question legend span{display:block;margin-bottom:5px;color:var(--blue);font-size:.69rem;font-weight:800;letter-spacing:.1em}.quiz-options{display:grid;grid-gap:10px;gap:10px;padding-top:12px}.quiz-option{display:flex;align-items:center;gap:11px;min-height:55px;padding:10px 14px;border:1px solid var(--line);border-radius:11px;color:var(--ink);font-size:.87rem;font-weight:500;cursor:pointer;transition:background .2s ease,border-color .2s ease}.quiz-option:hover{border-color:#9dbfcc;background:#f7fbfd}.quiz-option:has(input:checked){border-color:var(--blue);background:var(--soft-blue)}.quiz-option:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:2px}.quiz-option input{flex:none;margin:0}.quiz-submit{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;padding-top:4px}.quiz-submit span{color:var(--muted);font-size:.78rem}.quiz-finish-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.quiz-finish-actions p{flex-basis:100%;margin:0;color:var(--muted);font-size:.84rem}.lesson-reading-body{max-width:72ch;white-space:pre-wrap;line-height:1.8}.lesson-reading .yt{min-height:620px}.lesson-end-action{margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}.lesson-end-action .btn:disabled{background:var(--soft-green);color:var(--green-dark);cursor:default;box-shadow:none;transform:none}.lesson-link-panel>p{max-width:60ch;color:var(--muted)}.lesson-video .lesson-panel-title{display:block;margin-bottom:18px}.lesson-video .lesson-panel-title h2{margin-top:2px}.player{background:white;border:1px solid var(--line);border-radius:19px;overflow:clip;box-shadow:var(--shadow)}.player iframe{display:block;width:100%;height:min(78vh,840px);border:0;background:white}.bar{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center;padding:13px 17px;border-bottom:1px solid var(--line)}.bar .note{margin:0}.yt{width:100%;aspect-ratio:16/9;border:0;border-radius:14px;background:#061a28}.lesson-frame{min-height:100dvh;background:#fff}.lesson-content{min-width:0}.player-focus{min-height:100dvh;border:0;border-radius:0;box-shadow:none}.player-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:14px 24px;min-height:78px;padding:12px clamp(18px,3vw,44px);border-bottom:1px solid var(--line);background:rgba(255,255,255,.98)}.player-course{display:grid;min-width:0;line-height:1.3}.player-course strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--navy);font-size:1rem}.player-kicker{color:var(--green-dark);font-size:.65rem;font-weight:800;letter-spacing:.12em}.player-meta{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.lesson-grade,.lesson-location{color:var(--muted);font-size:.77rem;font-weight:700;white-space:nowrap}.lesson-grade{color:var(--blue)}.save-indicator{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:6px 10px;border:1px solid #cde7d8;border-radius:10px;background:var(--soft-green);color:var(--green-dark);font-size:.76rem;font-weight:800;white-space:nowrap}.save-indicator:disabled{opacity:1;cursor:default}.save-indicator.is-dirty,.save-indicator.is-idle,.save-indicator.is-opening,.save-indicator.is-saving{border-color:#dce7eb;background:#f3f7f8;color:#566e7d}.save-indicator.is-error{border-color:#eab7c6;background:#fff1f4;color:var(--danger)}.player-exit{min-height:42px}.player-save-error{margin:0;padding:10px 24px;border-bottom:1px solid #eab7c6;background:#fff1f4;color:var(--danger);font-size:.84rem;font-weight:700}.player-focus iframe{height:calc(100dvh - 78px);min-height:480px}.player-loading{display:grid;place-items:center;min-height:50dvh;color:var(--muted)}.completion-stage{position:relative;display:grid;place-items:center;min-height:calc(100dvh - 78px);padding:36px 20px;overflow:hidden;background:radial-gradient(circle at 50% 5%,#dff5e9 0,transparent 45%),linear-gradient(180deg,#f7fbf9,#edf5f7)}.completion-card{position:relative;z-index:1;width:min(650px,100%);padding:clamp(26px,5vw,54px);border:1px solid #cde4d8;border-radius:24px;background:#fff;box-shadow:0 24px 70px rgba(11,42,64,.1);text-align:center}.completion-icon{width:80px;height:80px;display:grid;place-items:center;margin:0 auto 22px;border-radius:23px;background:var(--soft-green);color:var(--green-dark)}.completion-card h1{margin:4px 0 12px}.completion-card>p{color:var(--muted)}.completion-card>p strong{color:var(--ink)}.completion-code{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:23px 0;padding:11px;border-radius:11px;background:#f4f8f8;color:var(--muted);font-size:.82rem}.completion-code strong{color:var(--navy)}.completion-actions,.completion-secondary{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.completion-help{margin:18px 0 12px;font-size:.82rem}.completion-secondary{gap:8px 24px;font-size:.84rem;font-weight:750}.completion-secondary button{min-height:44px;border:0;background:transparent;color:var(--blue);font-size:inherit;font-weight:inherit}.completion-confetti{position:absolute;inset:0;pointer-events:none}.completion-confetti i{position:absolute;top:4%;left:50%;width:9px;height:16px;border-radius:2px;background:var(--green);opacity:0}.completion-confetti i:nth-child(3n){background:#d6a443}.completion-confetti i:nth-child(4n){background:var(--blue)}.completion-confetti i:nth-child(5n){border-radius:50%}.is-celebrating .completion-confetti i{animation:completion-confetti 1.35s ease-out both}.is-celebrating .completion-icon{animation:completion-pop .7s ease-out both}@keyframes completion-confetti{0%{transform:translateY(-90px) rotate(0);opacity:0}12%{opacity:1}to{transform:translateY(320px) rotate(540deg);opacity:0}}@keyframes completion-pop{0%{transform:scale(.65)}60%{transform:scale(1.1)}to{transform:scale(1)}}@media (max-width:820px){.lesson-workspace-grid{grid-template-columns:1fr}.lesson-outline{position:static}.player-topbar{align-items:stretch;flex-direction:column;gap:7px;padding:9px 16px}.player-course strong{font-size:.9rem}.player-meta{justify-content:space-between;gap:6px 8px}.lesson-location{display:none}.lesson-grade{font-size:.7rem}.save-indicator{font-size:.69rem}.player-exit{min-height:40px;padding:8px 10px;font-size:.74rem}.player-focus iframe{height:calc(100dvh - 111px);min-height:0}.completion-stage{min-height:calc(100dvh - 111px)}}@media (max-width:560px){.lesson-workspace{padding:0 0 30px}.lesson-hero{padding:21px 18px 27px;border-radius:0 0 22px 22px}.lesson-hero-meta{gap:7px 12px}.lesson-hero h1{font-size:1.82rem}.lesson-workspace-grid{gap:16px;margin-top:16px;padding:0 14px}.lesson-panel{padding:19px 17px}.quiz-facts>div{padding:11px 8px}.quiz-facts span{font-size:.66rem}.quiz-facts strong{font-size:.91rem}.quiz-question{padding:16px 13px}.quiz-result{gap:10px;padding:14px}.quiz-result-symbol{width:38px;height:38px}.quiz-submit .btn{width:100%}.lesson-reading .yt{min-height:65dvh}}@media (prefers-reduced-motion:reduce){.is-celebrating .completion-confetti i,.is-celebrating .completion-icon{animation:none}}.admin-summary{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;margin-bottom:28px}.admin-summary .stat-card{min-height:110px}.admin-layout{display:grid;grid-gap:20px;gap:20px}.admin-section-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:21px}.admin-section-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:var(--soft-green);color:var(--green-dark)}.admin-section-head h2{margin:0 0 3px}.admin-section-head p{margin:0;color:var(--muted);font-size:.82rem}.admin-card{scroll-margin-top:30px}.admin-card .btn{margin-top:5px}.admin-note{padding:17px;border:1px solid #c9e5d5;border-radius:14px;background:#f0faf4;color:#286b4a;font-size:.84rem}.admin-note svg{vertical-align:-4px;margin-right:6px}.checkbox-row{display:flex;align-items:center;gap:10px;min-height:44px;margin:3px 0 14px}.audit-list{display:grid;grid-gap:0;gap:0;list-style:none;margin:0;padding:0}.audit-list li{padding:12px 0;border-bottom:1px solid var(--line);font-size:.79rem;overflow-wrap:anywhere}.audit-list li:last-child{border-bottom:0}.team-table-card{padding:0;overflow:clip}.team-table-card .table-wrap{border:0;border-radius:0}.verify-card{max-width:680px;margin:28px auto;text-align:center;padding:clamp(26px,5vw,52px)}.verify-seal{width:70px;height:70px;display:grid;place-items:center;margin:0 auto 21px;border-radius:20px;background:var(--soft-green);color:var(--green-dark)}.verify-actions{display:flex;justify-content:center;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-top:24px}.copy-link-wrap{display:grid;justify-items:center;grid-gap:5px;gap:5px}.copy-link-wrap span{color:var(--green-dark);font-size:.75rem;font-weight:700}.verify-card .tag{margin-bottom:16px}.verify-card h1{margin-bottom:9px}.verify-code{display:inline-block;padding:9px 15px;margin:10px 0;border-radius:9px;background:var(--soft-blue);font-size:.84rem;font-weight:750;overflow-wrap:anywhere}.verify-page{max-width:940px;margin:0 auto}.verify-page-heading{margin:7px 0 22px}.verify-page-heading p{color:var(--muted)}.verify-status-banner{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin-bottom:18px;padding:8px 14px;border:1px solid #a7d9bc;border-radius:10px;background:var(--soft-green);color:var(--green-dark);font-size:.86rem;font-weight:800}.verify-status-banner.is-expired{border-color:#ddc6ac;background:#fff7eb;color:#8b5f25}.verify-document{position:relative;overflow:hidden;padding:clamp(23px,4vw,44px);border:2px solid var(--navy);outline:1px solid #bea36f;outline-offset:-9px;background:#fbfcf9;box-shadow:0 24px 55px rgba(11,42,64,.1)}.verify-document:before{content:"";position:absolute;inset:0 auto 0 0;width:8px;background:var(--navy);border-right:2px solid var(--green)}.verify-document-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:16px;border-bottom:1px solid #d8e3dd}.verify-document-header img{width:min(190px,45%);height:auto}.verify-document-header span{color:var(--navy);font-size:.74rem;font-weight:900;letter-spacing:.15em}.verify-document-body{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:clamp(28px,5vw,55px) 10px;text-align:center}.verify-document-body>span{color:var(--green-dark);font-size:.75rem;font-weight:900;letter-spacing:.13em}.verify-document-body h2{max-width:100%;margin:8px 0;color:var(--navy);font-size:clamp(1.85rem,4vw,2.75rem);overflow-wrap:anywhere}.verify-document-body p{margin:0;color:var(--muted);font-size:.9rem}.verify-document-body>strong{color:var(--navy);font-size:clamp(1.05rem,2vw,1.45rem)}.verify-document-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:17px;gap:17px;margin:0;padding:19px 22px;border-top:3px solid var(--green);background:#eff7f1}.verify-document-meta div{min-width:0}.verify-document-meta dt{color:var(--green-dark);font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.verify-document-meta dd{margin:3px 0 0;color:var(--navy);font-size:.84rem;font-weight:750;overflow-wrap:anywhere}.verify-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-top:16px}.verify-bottom>p{max-width:53ch;margin:0;color:var(--muted);font-size:.82rem}.verify-bottom .verify-actions{margin:0}@media (max-width:559px){.verify-document-meta{padding:16px;gap:14px}.verify-document-header span{font-size:.62rem}}@media (min-width:560px){.admin-summary,.stat-grid{grid-template-columns:repeat(3,1fr)}.learning-card{grid-template-columns:58px minmax(0,1fr) auto}.form-grid,.password-inline{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:800px){.profile-grid{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr)}.login-layout{grid-template-columns:minmax(0,1.07fr) minmax(420px,.93fr)}.login-story{min-height:100dvh;padding:clamp(36px,5vw,78px)}.login-benefits,.login-foot{display:grid}.login-panel{padding:50px}.course-layout{grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr)}.discussion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:900px){.app-frame{display:grid;grid-template-columns:252px minmax(0,1fr)}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;padding:26px 16px 18px;background:white;border-right:1px solid var(--line)}.sidebar-brand{display:grid;grid-gap:12px;gap:12px;align-content:start;padding:3px 12px 36px}.sidebar-logo img{display:block;width:165px;height:auto}.sidebar-brand-name{display:flex;align-items:center;gap:7px;color:var(--navy);font-size:.78rem;font-weight:900;letter-spacing:.25em}.brand-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.sidebar-section-label{padding:0 15px 10px;color:var(--muted);font-size:.66rem;font-weight:850;letter-spacing:.14em}.sidebar-nav{display:grid;grid-gap:4px;gap:4px}.sidebar-link{min-height:48px;display:flex;align-items:center;gap:14px;padding:0 14px;border-radius:11px;color:#587181;font-size:.86rem;font-weight:700;transition:background .18s ease,color .18s ease}.sidebar-nav .sidebar-link[href="/ho-so"]{display:none}.sidebar-link:hover{color:var(--navy);background:#f4f8f9}.sidebar-link[aria-current=page]{color:var(--blue);background:var(--soft-blue)}.nav-active-dot{width:6px;height:6px;margin-left:auto;border-radius:50%;background:var(--blue)}.sidebar-bottom{margin-top:auto}.sidebar-help{display:grid;grid-gap:5px;gap:5px;padding:16px;margin-bottom:19px;border-radius:14px;background:linear-gradient(135deg,#eff8f1,#ebf5f7)}.sidebar-help-icon{width:30px;height:30px;display:grid;place-items:center;margin-bottom:3px;color:var(--green-dark)}.sidebar-help strong{color:var(--navy);font-size:.81rem}.sidebar-help small{color:var(--muted);line-height:1.45}.sidebar-profile{display:flex;align-items:center;gap:10px;min-height:44px;padding:13px 8px;border-top:1px solid var(--line);border-radius:12px;color:inherit}.sidebar-profile:hover,.sidebar-profile[aria-current=page]{background:#f4f8f9}.profile-copy{display:grid;min-width:0;line-height:1.35}.profile-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.profile-copy small{color:var(--muted);font-size:.72rem}.logout-button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:9px 10px;border:0;background:transparent;color:var(--muted);text-align:left;font-weight:650;font-size:.81rem;border-radius:10px}.logout-button:hover{background:#f4f8f9;color:var(--navy)}.workspace-header{height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 clamp(24px,4vw,52px);background:rgba(255,255,255,.86);border-bottom:1px solid var(--line)}.workspace-header>div:first-child{display:grid;grid-gap:1px;gap:1px}.workspace-eyebrow{color:#90a4ac;font-size:.62rem;font-weight:900;letter-spacing:.17em}.workspace-title{color:var(--navy);font-size:.94rem;font-weight:800}.workspace-user{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:.78rem;font-weight:700}.mobile-header,.mobile-nav{display:none}.content-wrap{padding:38px clamp(24px,4vw,52px) 64px}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.admin-layout .admin-card.wide{grid-column:1/-1}}@media (max-width:559px){.admin-summary>:last-child,.stat-grid>:last-child{grid-column:1/-1}.team-table-card{padding:0;background:transparent;border:0;box-shadow:none;overflow:visible}.team-table-card .table-wrap{overflow:visible}.team-table-card table,.team-table-card tbody,.team-table-card td,.team-table-card tr{display:block;width:100%;min-width:0}.team-table-card thead{display:none}.team-table-card tbody{display:grid;grid-gap:12px;gap:12px;background:transparent}.team-table-card tr{padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:white;box-shadow:var(--shadow)}.team-table-card td{display:grid;grid-template-columns:80px minmax(0,1fr);grid-gap:10px;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.team-table-card td:last-child{border-bottom:0}.team-table-card td:before{content:attr(data-label);color:var(--muted);font-size:.78rem;font-weight:750}.learning-actions .btn{flex:1 1}.bar .btn{min-height:40px;font-size:.78rem;padding:7px 10px}.player iframe{height:min(72dvh,620px)}.guest-logo span{display:none}.login-story{min-height:270px}.login-story h1{font-size:2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important}}