:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#203532;background:#f6f7f4;font-synthesis:none;--green:#215c4f;--dark:#153b38;--mint:#e7f0e8;--lime:#c7eeab;--muted:#73817b;--line:#e5e9e3;--white:#fff;--radius:14px;--shadow:0 12px 40px #153b380c}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button{border:0}a{color:var(--green)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a4c56c;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.24;font-weight:650;letter-spacing:-1px;margin-bottom:9px}h2{font-size:19px;font-weight:650;letter-spacing:-.35px}h3{font-size:16px;font-weight:650}p{line-height:1.65}small{font-size:12px}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:1.6px;color:var(--muted)}.icon{height:20px;width:20px;flex:none;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-lg{height:30px;width:30px}.skip-link{position:fixed;left:12px;top:-60px;background:white;padding:12px;z-index:1000}.skip-link:focus{top:12px}.boot{height:100vh;display:flex;gap:12px;align-items:center;justify-content:center}.boot p{margin:0}.spinner{width:20px;height:20px;border:2px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 16px;border-radius:7px;background:var(--green);color:white;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap;text-decoration:none;transition:background .15s,box-shadow .15s}.btn:hover{background:#15463b;box-shadow:0 3px 7px #153b3818}.btn.secondary{background:white;border:1px solid #dbe2db;color:#334a41}.btn.secondary:hover{background:#f5f8f2}.btn.ghost{background:transparent;color:#50655b;border:1px solid transparent}.btn.ghost:hover{background:var(--mint)}.btn.danger{background:#a53935}.btn.small{padding:7px 11px;min-height:32px;font-size:11px}.btn.block{width:100%}.btn-icon{padding:8px;background:none;color:var(--muted);border-radius:6px;display:inline-flex;align-items:center;justify-content:center}.btn-icon:hover{background:var(--mint);color:var(--green)}.button-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;line-height:1.6;font-weight:600;padding:3px 8px;border-radius:5px;background:#eef1ed;color:#617067;white-space:nowrap}.badge.green{background:#e8f3e9;color:#317344}.badge.orange{background:#fff2df;color:#a37023}.badge.blue{background:#eaf1f7;color:#446b8f}.badge.red{background:#fcece9;color:#a04e45}.badge.purple{background:#efebf5;color:#786091}.badge .dot{width:5px;height:5px;border-radius:100%;background:currentColor}.tag{display:inline-block;font-size:10px;padding:4px 7px;background:#f1f3ed;border:1px solid #e4e9de;border-radius:5px;color:#657d61;font-weight:600}
.brand{display:flex;align-items:center;gap:11px;font-size:18px;font-weight:650;letter-spacing:-.6px;line-height:1.1;color:var(--dark);text-decoration:none}.brand-mark{height:35px;width:35px;border-radius:10px;background:var(--dark);color:var(--lime);display:flex;align-items:center;justify-content:center}.brand-mark .icon{height:22px;width:22px}.brand small{display:block;font-size:9px;letter-spacing:1.8px;margin-top:4px;text-transform:uppercase;color:#7c8c7e;font-weight:500}.app-shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:30px 20px;position:fixed;inset:0 auto 0 0;width:232px;z-index:20;display:flex;flex-direction:column}.sidebar .brand{padding:0 6px;margin-bottom:36px}.workspace-switch{margin-bottom:28px;display:grid;gap:9px;padding:0 6px}.workspace-switch select{font-size:11px;padding:10px 8px;background:#f7f8f4;border:1px solid var(--line);border-radius:7px;width:100%;text-overflow:ellipsis;color:#476052}.nav-label{margin:5px 10px 12px}.nav{display:grid;gap:4px}.nav a{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:12px;color:#75817a;padding:12px 13px;border-radius:7px;font-weight:500}.nav a.active{background:var(--mint);color:#24573f;font-weight:650}.nav a:hover{background:#f3f6ef}.nav a .icon{width:18px;height:18px}.nav-separator{margin-top:26px}.sidebar-bottom{margin-top:auto;padding-top:28px}.sidebar-tip{border:1px solid #e5eadf;border-radius:11px;background:#f7f9f1;padding:17px 15px;font-size:11px;line-height:1.6;color:#6c7a65}.sidebar-tip .icon{color:#678552;margin-bottom:9px}.sidebar-tip strong{display:block;color:#455d3c;margin-bottom:5px}.sidebar-footer{display:flex;gap:8px;align-items:center;color:#899387;font-size:10px;margin:17px 5px 0}.sidebar-footer .dot{width:6px;height:6px;border-radius:50%;background:#93ac79}.main-wrap{grid-column:2;min-width:0}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.breadcrumb{font-size:11px;color:#7a857d;display:flex;align-items:center;gap:10px}.breadcrumb strong{font-weight:500;color:#364f40}.topbar-right{display:flex;align-items:center;gap:14px}.user-info{font-size:11px;line-height:1.5;text-align:right}.user-info strong{display:block;color:#415148;font-weight:600}.user-info span{font-size:10px;color:#889286}.avatar{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#eeeede;color:#6c7750;font-size:10px;font-weight:600;flex:none}.avatar.mint{background:#e6efe6;color:#54705d}.avatar.blue{background:#e6edf3;color:#617a91}.content{max-width:1560px;padding:34px 36px 52px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading p{font-size:12px;color:#7b867d;margin:0}.page-heading .eyebrow{margin-bottom:8px}.mobile-menu{display:none}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 3px 10px #213b3502;overflow:hidden}.panel-head{padding:23px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-head h2{margin:0;font-size:15px}.panel-head p{margin:5px 0 0;font-size:11px;color:var(--muted)}.panel-body{padding:24px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:26px}.stat{border:1px solid var(--line);border-radius:12px;background:white;padding:20px 22px;position:relative}.stat .stat-top{display:flex;align-items:center;justify-content:space-between;color:#7c8a7f;font-size:11px;margin-bottom:19px}.stat .icon{width:17px;height:17px;color:#93a58e}.stat-value{font-size:29px;font-weight:600;letter-spacing:-.8px;color:#233d2d;line-height:1;margin-bottom:12px}.stat-note{font-size:10px;color:#8b978b}.stat-note strong{color:#5a8d51;font-weight:600}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;margin-bottom:26px}.progress-feature{border-radius:var(--radius);background:#edf2e5;padding:26px;position:relative;display:flex;flex-direction:column;gap:15px}.progress-feature .eyebrow{color:#759160}.progress-feature h2{font-size:18px;margin:0;line-height:1.4;max-width:220px}.progress-feature p{font-size:11px;line-height:1.65;color:#788969;margin:0}.ring{width:116px;height:116px;border-radius:50%;background:conic-gradient(#53764a var(--progress),#dce5d2 0);display:grid;place-items:center;align-self:center;margin:7px 0}.ring-inner{width:97px;height:97px;background:#edf2e5;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring-inner strong{font-size:26px;letter-spacing:-1px;font-weight:600;color:#425f38}.ring-inner small{font-size:10px;color:#859276;margin-top:2px}.feature-bottom{border-top:1px solid #dce5d1;padding-top:12px;color:#6b8159;font-size:10px}.section-heading{font-size:15px;margin:0 0 16px;display:flex;justify-content:space-between;align-items:center}.courses-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.course-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.course-art{height:120px;position:relative;display:flex;align-items:center;justify-content:space-between;background:#e9efe4;padding:24px;color:#5a7951}.course-art.blue{background:#e4ecee;color:#456776}.course-art.sand{background:#f1eadb;color:#927a48}.course-art .icon{width:45px;height:45px;stroke-width:1.2}.course-art .course-art-label{font-size:10px;line-height:1.7;letter-spacing:1.3px;text-transform:uppercase;max-width:140px;font-weight:600}.course-card-body{padding:20px 22px;display:flex;flex-direction:column;gap:12px;flex:1}.course-card h3{font-size:15px;line-height:1.45;letter-spacing:-.2px;margin:0}.course-card p{font-size:11px;color:#899083;margin:0;line-height:1.65}.course-meta{display:flex;gap:14px;align-items:center;font-size:10px;color:#8a9489}.course-meta span{display:flex;gap:5px;align-items:center}.course-meta .icon{width:13px;height:13px}.course-card-footer{margin-top:auto;padding-top:3px;display:flex;justify-content:space-between;align-items:center;gap:10px}.progress{height:5px;background:#edf0e9;border-radius:4px;overflow:hidden;min-width:65px}.progress i{display:block;height:100%;background:#6c9a61;border-radius:4px}.progress-label{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#8b9587;margin-bottom:7px}.row-progress{display:flex;align-items:center;gap:10px}.row-progress .progress{width:77px}.row-progress span{font-size:10px;color:#718267}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 24px;border-bottom:1px solid var(--line);flex-wrap:wrap}.search{position:relative;min-width:200px;max-width:330px;flex:1}.search .icon{position:absolute;left:12px;top:10px;width:16px;height:16px;color:#94a08f}.search input{width:100%;height:37px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:8px 12px 8px 36px;font-size:11px;color:#486044}.filter-select{border:1px solid var(--line);border-radius:6px;height:37px;font-size:11px;padding:8px 12px;color:#64795e;background:white}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:11px}th{text-align:left;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:#8b9689;padding:13px 24px;background:#fcfdfa;border-bottom:1px solid var(--line)}td{padding:16px 24px;border-bottom:1px solid #f0f2ed;color:#71816a}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfdf9}.person{display:flex;align-items:center;gap:10px}.person strong{font-size:11px;font-weight:600;color:#3c5334;display:block;margin-bottom:4px}.person small{font-size:10px;color:#97a08f;display:block}.table-course{max-width:280px;white-space:normal;font-weight:550;line-height:1.5;color:#405735}.table-course small{display:block;font-size:9px;font-weight:400;color:#91a084;margin-top:3px}.table-footer{padding:15px 24px;border-top:1px solid var(--line);font-size:10px;color:#98a08f;display:flex;justify-content:space-between;align-items:center}.table-check{width:16px;height:16px;accent-color:var(--green)}.check-col{padding-right:0;width:35px}.actions-cell{display:flex;align-items:center;gap:6px}.empty{padding:64px 26px;display:flex;align-items:center;flex-direction:column;text-align:center;gap:11px;color:#7d8b75}.empty .icon{width:37px;height:37px;color:#97ab8b;margin-bottom:5px}.empty h2{font-size:18px;margin:0;color:#45623a}.empty p{font-size:12px;max-width:430px;margin:0}.empty .button-row{margin-top:9px}.inline-message{padding:14px 17px;background:#f0f5ea;border:1px solid #dfe9d5;border-radius:8px;color:#647c4e;font-size:11px;line-height:1.65;margin:15px 0}.inline-message.error{background:#fff0ed;border-color:#f3d8d1;color:#a54d41}.inline-message p:last-child{margin:0}.account-empty{max-width:600px;margin:12vh auto}
.learner-summary{display:flex;align-items:center;gap:30px;background:white;padding:26px 30px;border:1px solid var(--line);border-radius:13px;margin-bottom:30px}.learner-summary .ring{margin:0;width:90px;height:90px;flex:none}.learner-summary .ring-inner{width:74px;height:74px;background:white}.learner-summary .ring-inner strong{font-size:23px}.learner-summary h2{font-size:19px;margin:0 0 8px}.learner-summary p{margin:0;color:#829077;font-size:12px}.learner-summary .summary-side{margin-left:auto;border-left:1px solid var(--line);padding-left:26px;font-size:11px;color:#8b987f}.summary-side strong{display:block;font-size:24px;color:#46643a;margin-bottom:5px}.course-card .assignment-status{margin-left:auto}.course-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px}.lesson-nav{align-self:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 12px}.lesson-nav-header{padding:6px 9px 16px;border-bottom:1px solid var(--line);margin-bottom:12px}.lesson-nav-header h2{font-size:13px;margin:0 0 7px}.lesson-nav-header p{font-size:10px;color:#8b987f;margin:0}.lesson-nav button{display:flex;width:100%;gap:10px;padding:13px 10px;text-align:left;align-items:start;background:transparent;border-radius:7px;font-size:11px;color:#7e8b73;line-height:1.5}.lesson-nav button:hover{background:#f5f7f0}.lesson-nav button.active{background:var(--mint);color:#315736}.lesson-num{width:19px;height:19px;border:1px solid #dce4d6;border-radius:50%;font-size:9px;display:grid;place-items:center;flex:none;color:#89a177}.lesson-num.done{background:#dcecd4;color:#447d37;border-color:#dcecd4}.lesson-num .icon{width:12px;height:12px}.lesson-panel{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;align-self:start}.lesson-top{padding:20px 30px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#829274}.lesson-content{padding:40px 42px;min-height:340px}.lesson-content .eyebrow{color:#6f8a5c;margin-bottom:14px}.lesson-content h2{font-size:29px;line-height:1.3;margin-bottom:24px;letter-spacing:-.6px}.lesson-content .lead{font-size:17px;line-height:1.65;color:#526849;margin-bottom:27px;font-weight:500}.lesson-content ul{padding-left:20px;margin:0}.lesson-content li{padding:8px 0 8px 5px;font-size:14px;line-height:1.75;color:#75806b}.lesson-content li::marker{color:#8ba772}.lesson-bottom{border-top:1px solid var(--line);padding:20px 30px;display:flex;align-items:center;justify-content:space-between;gap:10px}.lesson-sources{padding:0 42px 25px;font-size:10px;color:#9aa28e}.lesson-sources summary{cursor:pointer;margin-bottom:8px}.lesson-sources a{display:block;margin:7px 0;word-break:break-word}.quiz-content{padding:30px 36px}.quiz-content h2{font-size:23px}.quiz-content>p{font-size:12px;color:#839079}.question{border:0;border-bottom:1px solid var(--line);padding:25px 0;margin:0}.question legend{float:left;width:100%;font-size:13px;line-height:1.7;font-weight:550;color:#46603a;padding:0 0 14px}.question label{clear:both;display:flex;gap:12px;align-items:start;font-size:12px;line-height:1.6;padding:12px 14px;border:1px solid var(--line);border-radius:7px;margin:8px 0;cursor:pointer}.question label:has(input:checked){background:#edf4e7;border-color:#aec79a}.question input{accent-color:var(--green);margin-top:3px}.quiz-submit{padding-top:24px;display:flex;align-items:center;justify-content:space-between}.quiz-submit p{font-size:11px;margin:0;color:#8c9a81}.feedback-item{padding:14px 0;border-bottom:1px solid var(--line)}.feedback-item p{font-size:12px;color:#7f8b74;margin:8px 0 0}.complete-panel{text-align:center;padding:50px 35px}.complete-symbol{display:grid;place-items:center;height:70px;width:70px;margin:0 auto 24px;background:#eaf3e2;border-radius:50%;color:#638e4a}.complete-symbol .icon{height:33px;width:33px}.complete-panel h2{font-size:30px}.complete-panel p{font-size:13px;color:#8a987c}.complete-panel .button-row{justify-content:center}.score-block{margin:20px auto 25px;padding:19px 26px;background:#f5f7f0;border-radius:9px;max-width:240px}.score-block strong{font-size:29px;color:#4a7136;display:block}.score-block span{font-size:10px;color:#8ca078}
dialog{border:1px solid var(--line);border-radius:16px;padding:0;max-width:560px;width:calc(100% - 30px);max-height:88vh;box-shadow:0 30px 90px #102f3630;color:var(--dark)}dialog.wide{max-width:900px}dialog::backdrop{background:#17312764;backdrop-filter:blur(2px)}.modal-head{padding:23px 27px 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:white;z-index:2}.modal-head h2{font-size:19px;margin:0}.modal-body{padding:23px 27px;overflow-y:auto}.modal-footer{padding:17px 27px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:10px;background:#fcfdfa;position:sticky;bottom:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px;margin-bottom:17px}.form-grid .field{margin:0}.field.full{grid-column:1/-1}.field label{font-size:11px;font-weight:600;color:#637956}.field input,.field select,.field textarea{border:1px solid #dfe6d9;border-radius:7px;background:#fff;padding:11px 12px;font-size:12px;min-width:0;width:100%;color:#3e5633;line-height:1.5}.field input::placeholder,.field textarea::placeholder{color:#a5ad9c}.field input[readonly],.field textarea[readonly]{background:#f6f8f2}.field small{font-size:10px;color:#93a182;line-height:1.6}.field textarea{resize:vertical;min-height:80px}.form-section{margin:24px 0 13px;font-size:12px;font-weight:600;color:#5c7948}.form-section:first-child{margin-top:0}.check-item{display:flex;gap:11px;padding:12px;border:1px solid var(--line);border-radius:7px;align-items:start;cursor:pointer;margin:8px 0;font-size:12px;color:#526b43}.check-item:has(input:checked){background:#f0f6e9;border-color:#b7cb9f}.check-item input{accent-color:var(--green);margin-top:2px}.check-item small{display:block;font-size:10px;color:#9aa689;margin-top:4px}.selection-scroll{max-height:235px;overflow:auto;padding-right:3px}.selection-columns{display:grid;grid-template-columns:1fr 1fr;gap:26px}.selection-columns h3{font-size:13px}.import-area{padding:32px;border:1px dashed #b9c8ad;border-radius:10px;background:#f9fbf5;text-align:center;display:grid;gap:15px;justify-items:center}.import-area .icon{height:32px;width:32px;color:#8ba676}.import-area h3{margin:0;font-size:15px}.import-area p{font-size:11px;color:#8da078;margin:0}.import-area input{max-width:100%;font-size:11px}.import-summary{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.import-summary span{font-size:11px;color:#70885b;border:1px solid var(--line);border-radius:7px;padding:9px 12px}.import-summary strong{margin-right:4px;font-size:15px}.import-table{max-height:300px;overflow:auto}.import-table td,.import-table th{padding:11px 14px}.import-table td:last-child{white-space:normal;min-width:180px}.invite-note{font-size:12px;color:#879974;margin-bottom:18px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:14px 21px;border-radius:9px;background:#244b39;color:white;box-shadow:0 8px 22px #243e3b28;font-size:12px;z-index:110;max-width:calc(100% - 32px)}.toast.error{background:#963e31}.toast[hidden]{display:none}
.auth-page{min-height:100vh;display:grid;grid-template-columns:45% 55%;background:#fff}.auth-story{background:#173d38;color:white;display:flex;flex-direction:column;padding:50px 62px;position:relative;overflow:hidden}.auth-story .brand{color:white}.auth-story .brand-mark{background:#c6e7a7;color:#1c4c34}.auth-story .brand small{color:#9cb9a1}.auth-story-content{margin:auto 0;max-width:460px;padding:65px 0}.auth-story .eyebrow{color:#9ebc91;margin-bottom:22px}.auth-story h1{font-size:49px;line-height:1.16;letter-spacing:-2px;font-weight:550;color:#f1f6e9;margin-bottom:25px}.auth-story p{font-size:14px;line-height:1.9;color:#a4bca7;max-width:370px}.auth-feature{display:flex;align-items:center;gap:11px;margin-top:22px;font-size:12px;color:#c2d4bd}.auth-feature .icon{height:16px;width:16px;color:#b3d991}.auth-story-footer{font-size:10px;color:#87a28c;letter-spacing:.2px}.auth-main{display:flex;justify-content:center;align-items:center;padding:45px 35px}.auth-box{width:100%;max-width:390px}.auth-box h2{font-size:27px;letter-spacing:-.7px;margin-bottom:11px}.auth-box>p{font-size:12px;color:#8b9a80;margin-bottom:28px}.auth-box .field{margin-bottom:17px}.auth-box .field input{padding:12px 13px;font-size:13px}.auth-box .btn{font-size:12px;min-height:44px}.auth-box .auth-help{font-size:10px;line-height:1.8;color:#91a081;margin-top:18px}.demo-area{margin-top:28px;border-top:1px solid var(--line);padding-top:23px}.demo-area .eyebrow{font-size:9px;margin-bottom:12px}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.demo-button{border:1px solid var(--line);background:#f9fbf5;border-radius:7px;padding:12px 10px;font-size:10px;line-height:1.5;color:#768b62;text-align:left;display:flex;align-items:center;gap:8px}.demo-button:hover{border-color:#b6cc9f;background:#f0f6e9}.demo-button .icon{height:15px;width:15px;flex:none}.form-error{font-size:11px;line-height:1.65;color:#b15140;margin-bottom:14px}.form-error:empty{display:none}.busy-button{pointer-events:none;opacity:.65}
@media(min-width:1500px){.content{padding:40px 46px 60px}.topbar{padding:0 46px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 340px}.course-art{height:138px}}
@media(max-width:1150px){.app-shell{grid-template-columns:204px minmax(0,1fr)}.sidebar{width:204px;padding:26px 15px}.brand{font-size:16px}.content{padding:28px 24px}.topbar{padding:0 24px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 245px;gap:17px}.stats{gap:12px}.stat{padding:18px 16px}.courses-grid{gap:13px}.course-card-body{padding:17px}.course-card h3{font-size:14px}.course-layout{grid-template-columns:210px minmax(0,1fr);gap:16px}.lesson-content{padding:30px}.auth-story{padding:42px}.auth-story h1{font-size:41px}.course-meta{gap:8px;flex-wrap:wrap}}
@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}.progress-feature{display:grid;grid-template-columns:1fr 130px;column-gap:25px}.progress-feature .ring{grid-column:2;grid-row:1/5}.progress-feature h2{max-width:none}.stats{grid-template-columns:repeat(2,1fr)}.courses-grid{grid-template-columns:repeat(2,1fr)}.courses-grid .course-card:last-child:nth-child(odd){grid-column:1/-1}.course-layout{grid-template-columns:1fr}.lesson-nav{display:none}.auth-story{padding:35px}.auth-story h1{font-size:35px}.selection-columns{grid-template-columns:1fr}.user-info{display:none}.learner-summary .summary-side{display:none}.page-heading{align-items:start}.page-heading h1{font-size:26px}}
@media(max-width:680px){.app-shell{display:block}.sidebar{transform:translateX(-100%);width:232px;transition:transform .18s;box-shadow:4px 0 30px #21453220}.sidebar.open{transform:translateX(0)}.main-wrap{width:100%}.mobile-menu{display:inline-flex}.topbar{height:65px;padding:0 17px}.breadcrumb{font-size:10px;gap:6px;max-width:60%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.breadcrumb .icon{display:none}.topbar-right{gap:8px}.content{padding:24px 18px 40px}.page-heading{gap:13px;flex-wrap:wrap;margin-bottom:22px}.page-heading h1{font-size:26px}.page-heading p{font-size:11px}.page-heading .button-row{width:100%}.page-heading .button-row .btn{flex:1}.stats{gap:10px;margin-bottom:20px}.stat{padding:16px}.stat-top{font-size:10px!important}.stat-value{font-size:27px}.stat-note{font-size:9px}.dashboard-grid{margin-bottom:22px}.panel-head{padding:19px}.panel-head h2{font-size:14px}.panel-head .btn{font-size:10px;padding:7px}.progress-feature{padding:23px}.courses-grid{grid-template-columns:1fr}.courses-grid .course-card:last-child:nth-child(odd){grid-column:auto}.course-card-body{padding:21px}.course-art{height:105px}.course-card h3{font-size:16px}.course-card p{font-size:12px}.course-meta{font-size:11px}.toolbar{padding:15px;gap:10px}.search{max-width:none;min-width:180px}.table-footer{padding:15px}.learner-summary{padding:21px;gap:18px}.learner-summary h2{font-size:16px}.learner-summary p{font-size:11px}.learner-summary .ring{width:72px;height:72px}.learner-summary .ring-inner{width:59px;height:59px}.learner-summary .ring-inner strong{font-size:20px}.learner-summary .ring-inner small{font-size:8px}.lesson-content{padding:26px 22px}.lesson-content h2{font-size:24px}.lesson-content .lead{font-size:16px}.lesson-content li{font-size:13px}.lesson-top,.lesson-bottom{padding:17px 21px}.lesson-top{gap:12px}.lesson-bottom .btn{font-size:11px;padding:10px 12px}.lesson-sources{padding:0 22px 20px}.quiz-content{padding:25px 22px}.auth-page{display:block}.auth-story{padding:28px 25px}.auth-story-content,.auth-story-footer{display:none}.auth-main{padding:35px 25px}.auth-box{max-width:420px}.auth-box h2{font-size:25px}.form-grid{grid-template-columns:1fr;gap:16px}.modal-body,.modal-head,.modal-footer{padding:20px}.button-row{gap:8px}.modal-footer .btn{padding:10px 12px}.import-area{padding:25px 18px}.complete-panel{padding:40px 22px}.complete-panel h2{font-size:25px}.hide-mobile{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.overview-table th,.overview-table td{padding:17px 19px}.overview-table .table-course{min-width:180px}.overview-table .person small{max-width:145px;overflow:hidden;text-overflow:ellipsis}.overview-table .person{gap:8px}.overview-table .row-progress .progress{width:65px}.brand small{font-size:8px;letter-spacing:1.4px;white-space:nowrap}
.demo-selector{display:grid;gap:9px}.demo-selector label{font-size:11px;font-weight:600;color:#637956}.demo-selector select{width:100%;min-height:40px;border:1px solid #dfe6d9;border-radius:7px;background:#fff;padding:10px 12px;font-size:12px;color:#3e5633}.demo-selector .btn{margin-top:2px}
.breadcrumb .mobile-menu .icon{display:block}.mobile-menu{flex:none}.import-summary span{display:flex;align-items:baseline;gap:4px}
.sidebar-close{display:none}@media(max-width:680px){.sidebar-close{display:inline-flex;position:absolute;right:4px;top:5px}}
:root{--muted:#667568}.page-heading p,.stat .stat-top,.stat-note,.course-card p,.course-meta,.progress-label,.person small,.table-footer,.lesson-content li,.auth-box>p,.auth-help,.field small,.invite-note,.summary-side,.learner-summary p,.lesson-top,.lesson-sources{color:#687960}.table-course small,.row-progress span,th,.user-info span,.sidebar-footer{color:#6d7b63}.auth-box .auth-help{color:#687960}.course-card p{font-size:12px}.stat-note{font-size:11px}.sidebar-footer{line-height:1.5}.person small{font-size:11px}
.course-tags{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.delivery-tag{background:#eef3e9;color:#5c7948;border-color:#dbe7d2}.course-provider{display:flex;align-items:center;gap:6px;font-size:10px;color:#6e8063;line-height:1.4}.course-provider .icon{width:13px;height:13px;color:#829b72;flex:none}.launch-panel{max-width:660px;margin:5vh auto 0;text-align:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:48px 42px;box-shadow:0 12px 35px #203d2910}.launch-panel h2{font-size:28px;letter-spacing:-.6px;margin:10px 0 14px}.launch-panel>p{font-size:13px;line-height:1.7;color:#687960;max-width:500px;margin:0 auto 24px}.launch-symbol{height:66px;width:66px;display:grid;place-items:center;margin:0 auto 22px;border-radius:50%;background:#eaf3e2;color:#5f8c47}.launch-symbol .icon{height:31px;width:31px}.launch-panel .button-row{justify-content:center}.launch-provider{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;background:#f4f7ef;border-radius:7px;color:#64785a;font-size:11px;margin:0 0 24px}.launch-provider .icon{width:14px;height:14px}.launch-note{font-size:10px!important;color:#809073!important;max-width:470px;margin-top:25px!important}.launch-panel .inline-message{margin:18px auto;max-width:500px;text-align:left}@media(max-width:680px){.launch-panel{padding:36px 22px;margin-top:2vh}.launch-panel h2{font-size:24px}.launch-panel .button-row{flex-direction:column}.launch-panel .button-row .btn{width:100%}}
.evidence-date{display:block;color:#7f8f76;font-size:9px;margin-top:5px}
.scorm-player{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 12px 35px #203d2910}.scorm-player-head{padding:19px 23px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px}.scorm-player-head strong{display:block;margin-top:5px;font-size:14px;color:#45603c}.scorm-player-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap;justify-content:flex-end}.scorm-player-actions [hidden]{display:none}.scorm-save-status{font-size:11px;color:#617a55;display:inline-flex;align-items:center;gap:7px}.scorm-save-status:before{content:'';width:7px;height:7px;border-radius:50%;background:#7cab66}.scorm-save-status.error{color:#a54d41}.scorm-save-status.error:before{background:#c96153}.scorm-player iframe{display:block;width:100%;height:min(72vh,780px);min-height:480px;border:0;background:#fff}.scorm-player-note{margin:0;padding:13px 23px;border-top:1px solid var(--line);font-size:10px;line-height:1.6;color:#75866c;background:#fcfdfa}@media(max-width:680px){.scorm-player-head{padding:17px;align-items:flex-start;flex-direction:column}.scorm-player-actions{width:100%;justify-content:space-between}.scorm-player iframe{min-height:460px;height:68vh}.scorm-player-note{padding:12px 17px}}

/* ArbolMente brand system */
:root{
  --ink:#102d3a;
  --teal:#126b62;
  --teal-deep:#0b4c48;
  --sky:#dcecf0;
  --canvas:#f6f8fa;
  --green:var(--teal);
  --dark:var(--ink);
  --mint:#e7f3f3;
  --lime:var(--sky);
  --muted:#667581;
  --line:#d9e2e7;
  --radius:12px;
  --shadow:0 14px 38px #102d3a12;
  color:#20313c;
  background:var(--canvas);
  font-family:Inter,"Avenir Next","Segoe UI",ui-sans-serif,system-ui,sans-serif;
}
body{background:radial-gradient(circle at 88% -10%,#e2f0f2 0,transparent 32%),var(--canvas)}
h1,h2,h3{color:#182e3b;font-weight:680;letter-spacing:-.55px}.eyebrow{color:#5b7480;letter-spacing:1.45px}.muted{color:var(--muted)}
.btn{background:var(--teal);border-radius:8px;box-shadow:none;font-weight:650}.btn:hover{background:var(--teal-deep);box-shadow:0 5px 12px #0b4c4824}.btn.secondary{border-color:#cbd9df;color:#294551;background:#fff}.btn.secondary:hover{background:#f1f7f8}.btn.ghost{color:#36606c}.btn.ghost:hover{background:#e7f3f3}.btn-icon:hover{background:#e7f3f3;color:var(--teal)}
.brand{color:var(--ink);gap:10px;font-weight:600;letter-spacing:-.55px}.brand strong{font-weight:700}.brand small{color:#71838d;letter-spacing:1.35px;font-weight:650}.brand-mark{width:36px;height:36px;border-radius:10px;background:var(--ink);color:var(--sky);padding:4px}.arbomente-mark{display:block;width:100%;height:100%;overflow:visible}.arbomente-canopy{fill:currentColor;fill-opacity:.12;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.arbomente-branches{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.sidebar{background:var(--ink);border-right:0;box-shadow:10px 0 34px #102d3a0d}.sidebar .brand{color:#fff}.sidebar .brand-mark{background:#1c4654;color:#dcecf0}.sidebar .brand small{color:#a7bdc4}.workspace-switch select{background:#183c49;border-color:#2c5360;color:#e7f1f2}.workspace-switch .eyebrow,.nav-label{color:#91aeb7}.nav a{color:#b7cbd0}.nav a.active{background:#1c5055;color:#fff}.nav a:hover{background:#173f4a;color:#fff}.sidebar-tip{background:#163946;border-color:#2b5360;color:#b9cfd4}.sidebar-tip strong{color:#fff}.sidebar-tip .icon{color:#8cd1c7}.sidebar-footer{color:#8faab2}.sidebar-footer .dot{background:#67b7ad}
.topbar{background:#fff;border-bottom-color:var(--line);box-shadow:0 1px 0 #102d3a04}.breadcrumb strong{color:#284450}.avatar{background:#e2eff1;color:#216268}.content{max-width:1640px}.panel,.course-card,.lesson-panel{border-color:var(--line);border-radius:12px;box-shadow:0 3px 14px #102d3a06}.stat{border-color:var(--line);border-radius:12px;box-shadow:0 3px 14px #102d3a05}.stat-value{color:var(--ink)}.stat-note strong{color:#157057}.stat .icon{color:#5d8b95}
.progress-feature{background:linear-gradient(145deg,#123646,#115d5a);color:#fff;border-radius:12px;box-shadow:0 14px 32px #102d3a1d}.progress-feature .eyebrow,.progress-feature p,.feature-bottom{color:#bad3d8}.progress-feature h2{color:#fff}.feature-bottom{border-color:#ffffff2b}.ring{background:conic-gradient(#73d0c3 var(--progress),#ffffff2b 0)}.ring-inner{background:#143f4b}.ring-inner strong{color:#fff}.ring-inner small{color:#bcd4d8}
.learner-summary .ring-inner strong{color:var(--ink)}.learner-summary .ring-inner small{color:#71838d}
.course-art{background:linear-gradient(135deg,#e1eff0,#d8e8ec);color:#1a6770}.course-art.blue{background:linear-gradient(135deg,#e1edf5,#d9e8f1);color:#235d87}.course-art.sand{background:linear-gradient(135deg,#f3eee3,#eae2d1);color:#896d38}.course-card{border-color:#dce5e8}.course-card h3,.person strong,.table-course{color:#263f4b}.course-provider{color:#58707b}.course-provider .icon{color:#43858a}.tag{background:#f3f7f8;border-color:#dbe6e9;color:#50707a}.delivery-tag{background:#e5f2f1;border-color:#cbe5e2;color:#216963}.progress{background:#e4ecee}.progress i{background:#29a094}.badge.green{background:#e3f4ed;color:#187552}.badge.blue{background:#e5f0f8;color:#2e668b}.badge.orange{background:#fff1dc;color:#9b6621}.badge.red{background:#fbeae8;color:#a5443b}
.field input,.field select,.field textarea,.demo-selector select{border-color:#cfdae0;color:#294550;background:#fff}.field input:focus,.field select:focus,.field textarea:focus,.demo-selector select:focus{border-color:#58a9a3;box-shadow:0 0 0 3px #58a9a322;outline:0}.check-item{border-color:#d8e3e6;color:#405a65}.check-item:has(input:checked){background:#edf8f7;border-color:#a8d5d0}.check-item input,.table-check,.question input{accent-color:var(--teal)}.inline-message{background:#eaf6f5;border-color:#cde7e4;color:#2c6964}
.auth-page{background:#fff}.auth-story{background:radial-gradient(circle at 86% 13%,#1f6570 0,transparent 26%),linear-gradient(145deg,#102d3a,#0c5552)}.auth-story .brand-mark{background:#dcecf0;color:#0d4c50}.auth-story .brand small{color:#a8c7c9}.auth-story .eyebrow{color:#a9d7d0}.auth-story h1{color:#f3f8f8;letter-spacing:-1.7px}.auth-story p{color:#bfd4d7}.auth-feature{color:#d5e5e7}.auth-feature .icon{color:#91dbd0}.auth-story-footer{color:#9fc1c4}.auth-box h2{color:#17313e}.auth-box>p{color:#667985}.demo-area{border-color:#dce5e8}

/* Course overlay: the existing workspace remains visible but deliberately inactive. */
.app-shell.course-overlay-active{filter:blur(5px);opacity:.72;transform:scale(1.008);transform-origin:center;pointer-events:none;user-select:none;transition:filter .18s ease,opacity .18s ease,transform .18s ease}
.course-overlay-backdrop{position:fixed;z-index:90;inset:0;display:flex;align-items:center;justify-content:center;padding:clamp(14px,3vh,34px);background:#071b2b73;backdrop-filter:blur(10px);animation:overlay-in .18s ease both}.course-overlay{width:min(1480px,100%);height:min(920px,100%);min-height:min(620px,100%);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid #d8e5e9;border-radius:18px;background:#f7fafb;box-shadow:0 30px 90px #06192566}.course-overlay-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 22px;background:#fff;border-bottom:1px solid #d9e4e8}.course-overlay-title{min-width:0;display:flex;align-items:center;gap:13px}.course-overlay-mark{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:10px;background:#e4f2f2;color:#166b66}.course-overlay-mark .icon{width:22px;height:22px}.course-overlay-title h2{margin:2px 0 3px;font-size:16px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-overlay-title p{margin:0;color:#667984;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-overlay-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.course-overlay-actions [hidden]{display:none}.scorm-save-status{color:#496b75}.scorm-save-status:before{background:#39a79c}.scorm-save-status.error{color:#a5443b}.scorm-save-status.error:before{background:#c15c51}.course-overlay-frame{min-height:0;background:#fff;padding:0}.course-overlay-frame iframe{display:block;width:100%;height:100%;min-height:0;border:0;background:#fff}.course-overlay-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 22px;background:#f1f7f8;border-top:1px solid #d9e4e8;color:#58717b;font-size:10px;line-height:1.5}.course-overlay-foot span{display:inline-flex;align-items:center;gap:7px}.course-overlay-foot .icon{width:14px;height:14px;color:#287d77}@keyframes overlay-in{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
@media(max-width:680px){.course-overlay-backdrop{padding:0}.course-overlay{width:100%;height:100%;min-height:100%;border:0;border-radius:0}.course-overlay-head{align-items:flex-start;padding:15px;gap:13px}.course-overlay-title{gap:10px;max-width:calc(100% - 92px)}.course-overlay-mark{width:34px;height:34px}.course-overlay-title h2{font-size:14px}.course-overlay-title p{font-size:10px}.course-overlay-actions{gap:6px}.course-overlay-actions .scorm-save-status,.course-overlay-actions #scorm-save-retry{display:none}.course-overlay-actions .btn{min-height:34px;padding:7px 9px;font-size:10px}.course-overlay-foot{padding:10px 15px}.course-overlay-foot span:last-child{display:none}.course-overlay-frame{min-height:0}}

/* A comfortable baseline for all-day learning and administrative work. */
.skip-link{position:fixed;left:12px;top:8px;z-index:1000;transform:translateY(-180%);padding:10px 14px;border-radius:8px;background:#173f4b;color:#fff;font-weight:700;text-decoration:none;box-shadow:0 4px 14px #0b273533}.skip-link:focus{transform:translateY(0);outline:3px solid #f4c95d;outline-offset:2px}
body{font-size:16px;line-height:1.5}h1{font-size:clamp(30px,2.6vw,40px);line-height:1.18;letter-spacing:-1px}h2{font-size:22px;line-height:1.3}h3{font-size:17px;line-height:1.4}.eyebrow{font-size:11px;letter-spacing:1.55px}.btn{min-height:44px;padding:11px 17px;font-size:14px}.btn.small{min-height:36px;padding:8px 12px;font-size:12px}.btn-icon{padding:9px}.workspace-switch select,.nav a{font-size:14px}.workspace-switch select{min-height:42px}.nav-label{font-size:11px}.sidebar-tip{font-size:13px;line-height:1.65}.sidebar-footer{font-size:11px}.breadcrumb,.user-info{font-size:13px}.user-info span{font-size:12px}.page-heading p{font-size:15px;line-height:1.55}.panel-head h2{font-size:18px}.panel-head p{font-size:13px}.stat .stat-top{font-size:13px}.stat-value{font-size:33px}.stat-note{font-size:12px}.course-art .course-art-label{font-size:11px}.tag,.badge{font-size:11px}.course-card h3{font-size:18px}.course-card p{font-size:14px;line-height:1.58}.course-provider,.course-meta,.progress-label{font-size:12px}.progress-label{margin-bottom:8px}.table-wrap table{font-size:13px}th{font-size:10px}td{padding-top:18px;padding-bottom:18px}.person strong{font-size:13px}.person small,.table-course small,.table-footer{font-size:11px}.table-course{font-size:13px}.field label{font-size:13px}.field input,.field select,.field textarea{font-size:15px}.field small,.invite-note{font-size:12px}.learner-summary h2{font-size:23px}.learner-summary p{font-size:14px}.summary-side{font-size:12px}.summary-side strong{font-size:27px}.lesson-nav-header h2{font-size:15px}.lesson-nav-header p,.lesson-nav button{font-size:12px}.lesson-top{font-size:12px}.lesson-content .lead{font-size:18px}.lesson-content li{font-size:15px}.lesson-sources{font-size:12px}.quiz-content>p,.quiz-submit p{font-size:13px}.question legend,.question label{font-size:14px}.auth-box>p{font-size:14px}.auth-box .auth-help{font-size:12px}.demo-selector label,.demo-selector select{font-size:13px}.auth-feature{font-size:14px}.auth-story-footer{font-size:11px}

/* Native and external courses use the same focused overlay as SCORM. */
.course-overlay-title h2{font-size:18px}.course-overlay-title p{font-size:12px}.course-overlay-foot{font-size:12px}.course-overlay-status{display:inline-flex;align-items:center;gap:7px;color:#496b75;font-size:12px;font-weight:600;white-space:nowrap}.course-overlay-status .icon{width:16px;height:16px;color:#258479}.course-overlay-native{height:min(980px,100%)}.native-course-overlay-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;background:var(--canvas)}.native-course-overlay-content{max-width:1500px;margin:0 auto;padding:30px clamp(22px,3vw,44px) 42px}.course-overlay-native .page-heading{margin-bottom:24px}.course-overlay-native .page-heading h1{font-size:clamp(27px,2.2vw,34px)}.course-overlay-native .course-layout{grid-template-columns:250px minmax(0,1fr)}.course-overlay-native .lesson-nav{position:sticky;top:0}.course-overlay-external{width:min(760px,100%);height:auto;min-height:0;grid-template-rows:auto auto auto}.external-course-overlay-body{padding:clamp(30px,6vw,66px);background:radial-gradient(circle at 86% 0,#e0f1f1,transparent 38%),var(--canvas)}.external-course-overlay-card{max-width:540px;margin:auto;text-align:center}.external-course-overlay-icon{width:60px;height:60px;margin:0 auto 22px;display:grid;place-items:center;border-radius:18px;background:#dff1ef;color:#176a65}.external-course-overlay-icon .icon{width:30px;height:30px}.external-course-overlay-card h3{font-size:27px;letter-spacing:-.7px;margin:9px 0 13px}.external-course-overlay-card p{font-size:15px;line-height:1.65;color:#526d77;margin:0 auto 25px;max-width:510px}.external-course-overlay-card .button-row{justify-content:center}
@media(max-width:680px){h1{font-size:29px}.page-heading p{font-size:14px}.course-card h3{font-size:17px}.course-card p{font-size:14px}.sidebar-tip{font-size:13px}.course-overlay-title h2{font-size:16px}.course-overlay-title p{font-size:11px}.course-overlay-actions .btn{min-height:38px;padding:8px 11px;font-size:12px}.course-overlay-native .course-layout{grid-template-columns:1fr}.course-overlay-native .lesson-nav{position:static;display:none}.native-course-overlay-content{padding:22px 18px 30px}.course-overlay-native .lesson-content{padding:28px 24px}.course-overlay-native .quiz-content{padding:28px 24px}.external-course-overlay-card h3{font-size:24px}.external-course-overlay-card p{font-size:14px}.external-course-overlay-card .button-row{flex-direction:column}.external-course-overlay-card .button-row .btn,.external-course-overlay-card .button-row a{width:100%}.course-overlay-status{display:none}}

/* SCORM preflight makes package facts visible before the review record is saved. */
.scorm-package-inspection{grid-column:1/-1;border:1px solid #c9e2de;border-radius:10px;background:#f1f9f8;padding:16px 18px;color:#315d64}.scorm-package-inspection .scorm-inspection-label{display:block;margin-bottom:5px;color:#47777a;font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.scorm-package-inspection strong{display:block;color:#183e48;font-size:16px;line-height:1.35}.scorm-package-inspection p{margin:5px 0 0;color:#536f77;font-size:13px;line-height:1.5}.scorm-package-inspection code{font-size:12px;word-break:break-all}.scorm-package-inspection .scorm-inspection-good{color:#176d60;font-weight:650}.scorm-package-inspection .scorm-inspection-warning{color:#9a4b39;font-weight:650}.scorm-package-inspection:has(.scorm-inspection-warning){border-color:#e6c9be;background:#fdf5f2}
.course-upload-types{display:grid;gap:10px}.course-upload-type{display:flex;align-items:flex-start;gap:11px;padding:14px 15px;border:1px solid #d8e4e7;border-radius:10px;background:#fff;color:#2d4b56;cursor:pointer}.course-upload-type:hover{border-color:#88c7c0;background:#f3f9f8}.course-upload-type input{width:17px;height:17px;margin:2px 0 0;accent-color:#1c8a80}.course-upload-type span{display:grid;gap:3px}.course-upload-type strong{font-size:14px;line-height:1.3}.course-upload-type small{color:#637c85;font-size:12px;line-height:1.45}.course-upload-type.unavailable{border-style:dashed;background:#f7fafb;color:#7b9198;cursor:default}.course-upload-type.unavailable strong,.course-upload-type.unavailable small{color:inherit}.course-upload-details{margin:18px 0;padding:14px 0 0;border-top:1px solid #dce7e9}.course-upload-details summary{cursor:pointer;color:#365f68;font-size:13px;font-weight:700}.course-upload-details>p{margin:8px 0 15px;color:#687f88;font-size:12px;line-height:1.5}.course-upload-details .form-grid{margin-top:14px}
button.course-upload-type{width:100%;font:inherit;text-align:left}
.cmi5-outline-preview{margin-top:10px;border-top:1px solid #d7e9e6;padding-top:8px}.cmi5-outline-preview summary{cursor:pointer;color:#365f68;font-size:12px;font-weight:700}.cmi5-outline-preview ul{margin:8px 0 0 18px;padding:0;color:#536f77;font-size:12px;line-height:1.6}.cmi5-outline-preview li small{margin-left:7px;color:#7b9198;font-size:10px;text-transform:uppercase;letter-spacing:.05em}

/* Keep account controls where people expect them: at the bottom of the workspace rail. */
.sidebar-account{display:flex;align-items:center;gap:10px;margin:18px 5px 0;padding-top:17px;border-top:1px solid #2b5360}.sidebar-account .avatar{width:36px;height:36px;background:#dcecf0;color:#1a6265;font-size:11px}.sidebar-account-name{min-width:0;flex:1;display:grid;gap:2px;line-height:1.25}.sidebar-account-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f2f8f8;font-size:12px;font-weight:650}.sidebar-account-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9db9bf;font-size:10px}.sidebar-account .btn-icon{color:#a9c4c9}.sidebar-account .btn-icon:hover{background:#1c4654;color:#fff}.mobile-topbar{display:none}
@media(max-width:680px){.mobile-topbar{height:65px;padding:0 17px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line);background:#fff;color:#284450;font-size:14px;font-weight:700;letter-spacing:-.25px}.mobile-topbar .mobile-menu{display:inline-flex}.sidebar-account{margin-top:16px}}

/* My Learning is both a destination and a progress-aware course map. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.sidebar .nav{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;align-content:start;padding-right:2px}.sidebar-bottom{flex:none;margin-top:0}
.learning-tree{min-width:0}.learning-tree ul{list-style:none;margin:0;padding:0}.learning-tree-row{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;min-width:0}.learning-tree-toggle,.learning-tree-toggle-placeholder{width:30px;height:32px;display:grid;place-items:center;flex:none}.learning-tree-toggle{padding:0;border-radius:7px;background:transparent;color:#a8c2c8}.learning-tree-toggle:hover{background:#1c4654;color:#fff}.learning-tree-toggle:focus-visible{outline:3px solid #8cd1c7;outline-offset:1px}.learning-tree-toggle .icon{width:16px;height:16px;transform:rotate(-90deg);transition:transform .16s ease}.learning-tree-toggle[aria-expanded="true"] .icon{transform:rotate(0)}.learning-tree-toggle-placeholder{pointer-events:none}.nav .learning-tree-link{display:flex;align-items:center;gap:8px;min-width:0;padding:8px 9px;border-radius:7px;color:#c0d0d4;font-size:12px;line-height:1.25;text-decoration:none}.nav .learning-tree-link:hover{background:#173f4a;color:#fff}.nav .learning-tree-link.active{background:#1c5055;color:#fff}.learning-tree-label{display:grid;gap:2px;min-width:0}.learning-tree-label>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learning-tree-label small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8ca8af;font-size:10px;line-height:1.25}.learning-tree-link.active .learning-tree-label small,.learning-tree-link:hover .learning-tree-label small{color:#c1dce0}.learning-tree-status{display:grid;place-items:center;width:20px;height:20px;flex:none;border:1px solid currentColor;border-radius:50%}.learning-tree-status .icon{width:12px;height:12px;stroke-width:2.4}.learning-tree-status.not_started{color:#a9c0c5;background:#294b56}.learning-tree-status.in_progress{color:#f7c66e;background:#5c4a2f}.learning-tree-status.completed{color:#78d5bd;background:#1d5b59}.learning-tree-status.empty,.learning-tree-status.content{color:#adc2c8;background:#294c58}.learning-tree-children{display:grid;gap:1px;margin:2px 0 3px 15px!important;padding:0 0 0 10px!important;border-left:1px solid #315763}.learning-tree-courses{padding-bottom:4px!important}.learning-tree-pages{margin-left:15px!important}.learning-tree-page .learning-tree-link{padding-top:6px;padding-bottom:6px;font-size:11px}.learning-tree-page .learning-tree-status{width:18px;height:18px}.learning-tree-page .learning-tree-status .icon{width:11px;height:11px}.learning-tree-check{margin-top:0}.learning-tree-message{display:flex;align-items:center;gap:7px;padding:8px 7px 8px 9px;color:#9ab2b8;font-size:10px;line-height:1.45}.learning-tree-message .spinner{width:13px;height:13px;border-color:#47717a;border-top-color:#8cd1c7}.learning-tree-message.learning-tree-empty{min-height:42px;padding:13px 11px;color:#c8d9dc;font-size:13px;font-weight:650;line-height:1.4}.learning-tree-message.error{display:block;color:#f1b4a9}.learning-tree-message.error button{display:block;margin-top:5px;padding:0;border:0;background:transparent;color:#9ed9d0;font-size:10px;font-weight:700;text-decoration:underline}.learning-tree-root{border-radius:8px}.learning-tree-root.active{background:#1c5055}.learning-tree-root:hover{background:#173f4a}.learning-tree-root.active .learning-tree-link,.learning-tree-root.active .learning-tree-link.active,.learning-tree-root.active .learning-tree-toggle{background:transparent}.learning-tree-root .learning-tree-link{padding-top:10px;padding-bottom:10px;font-size:14px;font-weight:650}.learning-tree-root .learning-tree-status{width:22px;height:22px}.learning-tree-root .learning-tree-status .icon{width:13px;height:13px}
.sidebar .learning-tree-status:is(.not_started,.empty){color:#fff}
.learning-tree-course>.learning-tree-row{grid-template-columns:minmax(0,1fr) 30px 36px}.learning-tree-quick-launch,.learning-tree-quick-launch-placeholder{width:36px;height:32px;display:grid;place-items:center;flex:none}.learning-tree-quick-launch{position:relative;padding:0;border:0;background:transparent;color:#effff9}.learning-tree-quick-launch::before{position:absolute;width:26px;height:20px;border:1px solid #78d5bd;border-radius:4px;background:#1d5b59;box-shadow:0 2px 5px #071b2b30;content:"";transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.learning-tree-quick-launch:hover::before{border-color:#b4f2df;background:#27706b;box-shadow:0 4px 9px #071b2b42;transform:translateY(-1px)}.learning-tree-quick-launch:active::before{transform:translateY(0)}.learning-tree-quick-launch:focus-visible{outline:3px solid #9ee5d2;outline-offset:1px}.learning-tree-quick-launch .icon{position:relative;z-index:1;width:9px;height:9px;fill:currentColor;stroke:none;transform:translateX(1px)}.learning-tree-quick-launch-placeholder{pointer-events:none}.btn.course-launch-action{background:#1d5b59;color:#effff9}.btn.course-launch-action:hover{background:#27706b;box-shadow:0 3px 7px #123f3c35}.btn.course-launch-action .icon{width:15px;height:15px;fill:currentColor;stroke:none;transform:translateX(1px)}
.course-detail-hero{display:grid;gap:18px;padding:24px 26px;margin-bottom:24px;border:1px solid #d8e5e8;border-radius:12px;background:linear-gradient(120deg,#fff,#f0f7f8)}.course-detail-status{display:flex;align-items:center;gap:11px}.course-detail-status .learning-tree-status{width:38px;height:38px}.course-detail-status .learning-tree-status .icon{width:20px;height:20px}.course-detail-status strong,.course-detail-status span:last-child{display:block}.course-detail-status strong{color:#203c48;font-size:15px}.course-detail-status span:last-child{margin-top:2px;color:#607984;font-size:12px}.course-detail-progress .progress{height:8px}.course-detail-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.course-detail-facts>div{display:grid;gap:4px;min-width:0;padding:12px 13px;border:1px solid #dce8ea;border-radius:9px;background:#fff}.course-detail-facts span{color:#6b8189;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.course-detail-facts strong{overflow:hidden;color:#294752;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.course-detail-layout{display:grid;grid-template-columns:minmax(245px,310px) minmax(0,1fr);gap:22px;align-items:start}.course-detail-outline,.course-detail-content{border:1px solid #d9e4e7;border-radius:12px;background:#fff;box-shadow:0 3px 14px #102d3a06}.course-detail-outline{overflow:hidden}.course-detail-outline-head{padding:20px 20px 16px;border-bottom:1px solid #e2eaec}.course-detail-outline-head h2{margin:0;color:#263f4a;font-size:17px}.course-detail-outline-head p{margin:5px 0 0;color:#6a8189;font-size:12px;line-height:1.45}.course-detail-outline-list{padding:8px}.course-detail-outline-list a{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:11px;border-radius:8px;color:#35525e;text-decoration:none}.course-detail-outline-list a:hover,.course-detail-outline-list a.active{background:#eaf5f4}.course-detail-outline-list a>.icon{width:14px;height:14px;color:#65929a}.course-detail-outline-list .learning-tree-status{width:20px;height:20px}.course-detail-outline-list span:not(.learning-tree-status){display:grid;gap:2px;min-width:0}.course-detail-outline-list small{color:#728993;font-size:10px}.course-detail-outline-list strong{overflow:hidden;color:#31505b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.course-detail-outline-empty{padding:20px;margin:0;color:#6e858d;font-size:12px;line-height:1.55}.course-detail-content{min-height:390px;padding:clamp(24px,4vw,42px)}.course-detail-content h2{margin:6px 0 16px;font-size:clamp(24px,2.3vw,32px);line-height:1.25}.course-detail-content-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.course-detail-content-top .badge{margin-top:5px}.course-detail-lead{max-width:760px;margin:0;color:#49636e;font-size:16px;line-height:1.7}.course-detail-points{display:grid;gap:10px;margin:25px 0 0;padding-left:22px;color:#4c6670;font-size:15px;line-height:1.65}.course-detail-points li::marker{color:#23968a}.course-detail-sources{margin-top:28px;padding-top:17px;border-top:1px solid #e0e9eb;color:#607984;font-size:12px}.course-detail-sources summary{cursor:pointer;color:#365f68;font-weight:650}.course-detail-sources a{display:block;margin-top:9px;word-break:break-word}.course-detail-page-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:32px;padding-top:17px;border-top:1px solid #e0e9eb;color:#718993;font-size:12px}.course-detail-page-nav .btn:last-child{justify-self:end}
@media(max-width:900px){.course-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.course-detail-layout{grid-template-columns:1fr}.course-detail-outline{order:2}.course-detail-content{min-height:0}}@media(max-width:680px){.sidebar .nav{padding-bottom:6px}.learning-tree-root .learning-tree-link{font-size:13px}.course-detail-hero{padding:20px}.course-detail-facts{grid-template-columns:1fr 1fr}.course-detail-content{padding:26px 22px}.course-detail-content h2{font-size:25px}.course-detail-lead{font-size:15px}.course-detail-page-nav{grid-template-columns:1fr auto 1fr;font-size:11px}.course-detail-page-nav .btn{min-height:34px;padding:7px 8px;font-size:10px}}

/* A repeating branch rhythm makes deep course structures easy to follow:
   trunk → control → short branch → status. A child trunk begins at the
   parent status, so every level remains visibly connected. */
.learning-tree{
  --tree-rail:2px;
  --tree-control-column:20px;
  --tree-link-inset:2px;
  --tree-branch-to-status:24px;
  --tree-branch-run:34px;
  --tree-control-offset:-12px;
  --tree-control-to-status:14px;
  --tree-child-offset:32px;
  --tree-connector:#315763;
}
.learning-tree-children{
  --tree-rail:2px;
  --tree-control-column:20px;
  --tree-link-inset:2px;
  --tree-branch-to-status:24px;
  --tree-branch-run:34px;
  --tree-control-offset:-12px;
  --tree-control-to-status:14px;
  --tree-child-offset:32px;
  --tree-connector:#315763;
  position:relative;
  margin:2px 0 3px var(--tree-child-offset)!important;
  padding:0 0 4px var(--tree-rail)!important;
  border-left:0;
}
/* The root's first child trunk aligns directly below My Learning's status. */
#learning-tree > .learning-tree-children{
  --tree-child-offset:17px;
}
.learning-tree-children > li{position:relative}
.learning-tree-children > li:not(:last-child)::before{
  content:"";
  position:absolute;
  top:0;
  bottom:-1px;
  left:calc(-1 * var(--tree-rail));
  width:1px;
  background:var(--tree-connector);
  pointer-events:none;
}
.learning-tree-children > li > .learning-tree-row,
.learning-tree-children > li > .learning-tree-link,
.learning-tree-children > li.learning-tree-message{position:relative}
.learning-tree-children > li > .learning-tree-row::after,
.learning-tree-children > li > .learning-tree-link::after,
.learning-tree-children > li.learning-tree-message::after{
  content:"";
  position:absolute;
  top:50%;
  left:calc(-1 * var(--tree-rail));
  width:var(--tree-rail);
  height:1px;
  background:var(--tree-connector);
  pointer-events:none;
}
.learning-tree-children > li:last-child > .learning-tree-row::before,
.learning-tree-children > li:last-child > .learning-tree-link::before,
.learning-tree-children > li:last-child.learning-tree-message::before{
  content:"";
  position:absolute;
  top:0;
  left:calc(-1 * var(--tree-rail));
  width:1px;
  /* End the terminal stem at the final sibling's own row. An expanded final
     item can contain a tall descendant tree, so sizing this line from the li
     would incorrectly carry the parent trunk through those descendants. */
  height:calc(50% + 1px);
  background:var(--tree-connector);
  pointer-events:none;
}
/* Leaf rows retain a blank control slot. The connector crosses that slot and
   meets the status icon, so leaves follow the same visual rhythm as parents. */
.learning-tree-children > li > .learning-tree-row--leaf::after{
  width:var(--tree-branch-to-status);
}
/* The expand control provides its own status connector. */
.learning-tree-children > li > .learning-tree-row--expandable::after{display:none}
/* A status-centered child trunk starts just below its parent row. */
.learning-tree-row--has-children.learning-tree-row--expanded > .learning-tree-link{position:relative}
.learning-tree-row--has-children.learning-tree-row--expanded > .learning-tree-link::after{
  content:"";
  position:absolute;
  z-index:0;
  top:50%;
  /* Meet the child list's 2px top margin without overlapping its translucent
     rail; overlapping connector pixels render as a brighter seam. */
  bottom:-2px;
  left:calc(var(--tree-link-inset) + 10px);
  width:1px;
  background:var(--tree-connector);
  pointer-events:none;
}
.learning-tree-link > .learning-tree-status,
.learning-tree-link > .learning-tree-status-group{position:relative;z-index:1}
.learning-tree-root{position:relative;display:flex;align-items:center;gap:4px}
.learning-tree-root>.learning-tree-link{flex:1;min-width:0}
.learning-tree-sort{display:flex;align-items:center;justify-content:flex-end;gap:2px;flex:none;margin-left:auto;padding-right:4px}
.learning-tree-sort-button{display:flex;align-items:center;justify-content:center;gap:1px;width:34px;height:32px;padding:4px;border:1px solid transparent;border-radius:6px;background:transparent;color:#b4cbd0;cursor:pointer}
.learning-tree-sort-button:hover{background:#285862;color:#fff}
.learning-tree-sort-button[aria-pressed="true"]{border-color:#6bb5ab;background:#24625e;color:#e3fff6}
.learning-tree-sort-button:focus-visible{outline:3px solid #8cd1c7;outline-offset:2px}
.learning-tree-sort-button>.icon{width:16px;height:16px;flex:none}
.learning-tree-sort-button[data-sort="title"]>.icon{width:12px;transform:translateX(2px) scale(1.15);transform-origin:left center}
.learning-tree-sort-direction{display:flex;opacity:0}
.learning-tree-sort-direction .icon{width:10px;height:14px;stroke-width:2.4}
.learning-tree-sort-button[aria-pressed="true"] .learning-tree-sort-direction{opacity:1}
.learning-tree-sort-button[data-direction="desc"] .learning-tree-sort-direction{transform:rotate(180deg)}
.learning-tree-root--has-children > .learning-tree-link{position:relative}
.learning-tree-root--has-children > .learning-tree-link::after{
  content:"";
  position:absolute;
  /* The selected My Learning row has its own background. Keep this trunk
     above that fill so it remains visible from the progress marker down. */
  z-index:1;
  /* Run beneath the root indicator and meet the first child rail at its top.
     Avoid overlap because the themed connector is translucent. */
  top:calc(50% - 1px);
  bottom:-2px;
  left:17px;
  width:1px;
  background:var(--tree-connector);
  pointer-events:none;
}
.learning-tree-root .learning-tree-status,
.learning-tree-root .learning-tree-status-group{position:relative;z-index:2}

.sidebar .nav .learning-tree-link{align-items:center}
.learning-tree-children .learning-tree-link{padding-left:var(--tree-link-inset)}
/* Keep every row on one text rhythm. The shared gap also gives an outcome
   pill enough room without shifting only PASS/FAIL rows. */
.learning-tree .learning-tree-link{gap:12px}
.sidebar .nav .learning-tree-status{margin-top:0}

/* The compact +/− control sits on the trunk, not beside the course label. */
.learning-tree-row{grid-template-columns:var(--tree-control-column) minmax(0,1fr)}
.learning-tree-course>.learning-tree-row{grid-template-columns:var(--tree-control-column) minmax(0,1fr) 30px}
.learning-tree-toggle,.learning-tree-toggle-placeholder{width:20px;height:20px;align-self:center;justify-self:center}
.learning-tree-toggle{position:relative;z-index:2;padding:0;border:1px solid #5c8790;border-radius:4px;background:#173f4a;color:#d8f0ec;box-shadow:0 1px 3px #071b2b36}
.learning-tree-toggle:hover{border-color:#a4ded5;background:#24635f;color:#fff}
.learning-tree-toggle:focus-visible{outline:3px solid #8cd1c7;outline-offset:2px}
.learning-tree-toggle .icon,.learning-tree-toggle[aria-expanded="true"] .icon{width:11px;height:11px;transform:none;transition:none;stroke-width:2.4}
.learning-tree-children>li>.learning-tree-row--expandable>.learning-tree-toggle{inset-inline-start:var(--tree-control-offset)}
.learning-tree-row--expandable>.learning-tree-toggle::after{position:absolute;top:50%;inset-inline-start:100%;width:var(--tree-control-to-status);height:1px;background:var(--tree-connector);content:"";pointer-events:none}
.learning-tree-root .learning-tree-link{padding-left:6px}
.learning-tree-root .learning-tree-toggle{border-color:#78c9bc;background:#1b5e5b;color:#ecfffb}
.learning-tree-root.active .learning-tree-toggle{background:#1b5e5b}
.learning-tree-root .learning-tree-toggle:hover{border-color:#b5eee3;background:#27736d}

/* Quick launch is an action, not a completion indicator. */
.learning-tree-quick-launch,.learning-tree-quick-launch-placeholder{width:30px;height:32px}
.learning-tree-quick-launch::before{width:20px;height:20px;border:1px solid #eef4ff;border-radius:50%;background:#4b5fc2;box-shadow:0 2px 5px #071b2b38}
.learning-tree-quick-launch:hover::before{border-color:#fff;background:#6275d3;box-shadow:0 3px 8px #071b2b4d}
.learning-tree-quick-launch .icon{width:8px;height:8px;transform:translateX(1px)}
.learning-tree-status{position:relative}
.learning-tree-due-alert{
  position:absolute;
  z-index:4;
  right:-6px;
  bottom:-6px;
  display:grid;
  box-sizing:border-box;
  width:13px;
  height:12px;
  padding-bottom:1px;
  place-items:end center;
  clip-path:polygon(50% 0,100% 100%,0 100%);
  background:#f4c34d;
  color:#3d2c08;
  filter:drop-shadow(0 1px 1px #071b2b80);
  font-size:8px;
  font-weight:900;
  line-height:1;
}
.learning-tree-due-alert.overdue{background:#d9574f;color:#fff}

.app-shell{grid-template-columns:380px minmax(0,1fr)}.sidebar{width:380px}.nav-label{margin:5px 6px 12px}.sidebar .nav{overflow-x:hidden}.learning-tree-label>span,.learning-tree-label small{overflow:visible;overflow-wrap:anywhere;text-overflow:clip;white-space:normal}

/* Keep the fixed learner map comfortably readable without moving its tree
   geometry: the wider rail gives wrapped titles more room while the controls,
   indicators, and connectors keep their existing positions within each row. */
.app-shell{grid-template-columns:408px minmax(0,1fr)}
.sidebar{width:408px}
.learning-tree .learning-tree-link{font-size:14px;line-height:1.32}
.learning-tree-root .learning-tree-link{font-size:16px}
.learning-tree-label small{font-size:11px;line-height:1.3}
.learning-tree-label .learning-tree-result{font-size:10px;line-height:1.25}
.learning-tree-page .learning-tree-link,
.learning-tree-scorm-item .learning-tree-static{font-size:13px}
.learning-tree-scorm-item .learning-tree-label small{font-size:10px}
.learning-tree-message{font-size:11px}
@media(max-width:680px),(max-width:1000px) and (max-height:520px){
  .app-shell{display:block}
  .sidebar{width:min(96vw,408px)}
  .learning-tree .learning-tree-link{font-size:13px}
  .learning-tree-root .learning-tree-link{font-size:15px}
  .learning-tree-label small{font-size:11px}
}

/* Course topics are progress indicators in navigation; launching happens from the overview. */
.sidebar .nav .learning-tree-link.learning-tree-static,.sidebar .nav .learning-tree-link.learning-tree-static:hover{background:transparent;color:#c0d0d4;cursor:default}
.sidebar .nav .learning-tree-link.learning-tree-static .learning-tree-label small{color:#8ca8af}
.course-detail-outline-list .course-detail-outline-item{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;padding:11px;color:#35525e}
.course-detail-outline-list .course-detail-outline-item .learning-tree-status{width:20px;height:20px}
.course-detail-outline-list .course-detail-outline-item>span:not(.learning-tree-status){display:grid;gap:2px;min-width:0}

/* SCORM manifests can expose a nested SCO outline. These entries report
   progress but remain informational; the course row is the launch control. */
.learning-tree-scorm-children{margin-top:1px!important;margin-bottom:1px!important}
.learning-tree-scorm-item .learning-tree-static{padding-top:6px;padding-bottom:6px;font-size:13px}
.learning-tree-scorm-item .learning-tree-label small{font-size:10px}
.course-detail-scorm-outline-list{list-style:none;margin:0;padding:8px}
.course-detail-scorm-outline-list ul{list-style:none;margin:0 0 0 20px;padding:0;border-left:1px solid #dbe7e9}
.course-detail-scorm-outline-list>li>ul{margin-top:1px;margin-bottom:1px}
.course-detail-scorm-outline-list .course-detail-outline-item{padding-top:9px;padding-bottom:9px}
.course-overlay-frame-with-navigation{display:grid;grid-template-rows:minmax(0,1fr) auto}
.course-overlay-frame-with-navigation iframe{height:100%}
.scorm-sco-navigation{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 18px;border-top:1px solid #d9e4e8;background:#f5f9fa}
.scorm-sco-navigation .btn{min-width:76px;justify-content:center}
.scorm-sco-position{display:grid;gap:2px;min-width:0;text-align:center}
.scorm-sco-position small{color:#718994;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.scorm-sco-position strong{overflow:hidden;color:#35515c;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:680px){.scorm-sco-navigation{gap:7px;padding:8px 10px}.scorm-sco-navigation .btn{min-width:0;padding:7px 8px;font-size:10px}.scorm-sco-position strong{font-size:11px}}

/* Scores and outcomes are shown only when a course supplies reportable data. */
.course-result-summary{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:8px 10px;border:1px solid #e0e9e5;border-radius:8px;background:#f8faf6;color:#6c8072;font-size:10px;line-height:1.3}
.course-result-summary>span:first-child{color:#718477;font-weight:650}
.course-result-summary strong,.assignment-result strong{color:#294c42;font-size:11px;font-weight:700}
.reported-outcome{display:inline-flex;width:max-content;align-items:center;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:750;line-height:1.1;white-space:nowrap}
.reported-outcome.passed{background:#e1f2e7;color:#28704d}
.reported-outcome.failed{background:#fff0ed;color:#a24b42}
.reported-outcome.unreported{background:#edf2f3;color:#526e77}
.course-result-note{margin:0;padding:9px 11px;border-radius:8px;background:#edf3f4;color:#55707a;font-size:11px;line-height:1.45}
.reported-pass-score{color:#718477;font-size:9px;font-weight:600;white-space:nowrap}
.assignment-result{display:grid;gap:4px;min-width:100px;line-height:1.2}
.assignment-result .reported-outcome{justify-self:start}
.learning-tree-label .learning-tree-result{color:#b4dbd2;font-size:10px;font-weight:600;line-height:1.25}
.learning-tree-link.active .learning-tree-label .learning-tree-result,.learning-tree-link:hover .learning-tree-label .learning-tree-result{color:#e0f8ef}
.course-detail-facts strong.reported-outcome{overflow:visible;width:max-content}
.course-detail-facts strong.reported-lock{overflow:visible;width:max-content;color:#9e4137}
.score-block.reported-result-block{display:grid;gap:6px;justify-items:center;max-width:280px}
.score-block.reported-result-block .reported-outcome{font-size:10px}
.score-block.reported-result-block small.reported-pass-score{color:#69816e;font-size:10px}
.score-block.reported-result-block small.reported-result-caption{color:#8ca078;font-size:10px}
.reported-lock{display:inline-flex;width:max-content;align-items:center;border-radius:999px;padding:3px 7px;background:#fff0ed;color:#9e4137;font-size:9px;font-weight:750;line-height:1.1;white-space:nowrap}
.reported-failure-count{color:#8a665e;font-size:9px;font-weight:600;white-space:nowrap}
.assignment-criteria{color:#607984;font-size:9px;font-weight:600;line-height:1.4;max-width:250px;white-space:normal}
.course-detail-facts>div.course-detail-assignment-criteria{grid-column:span 2}
.course-detail-facts>div.course-detail-assignment-criteria strong{overflow:visible;line-height:1.4;text-overflow:clip;white-space:normal}
.learning-tree-status-group{position:relative;display:grid;width:20px;height:20px;place-items:center;flex:none;overflow:visible}
.learning-tree-status-group .learning-tree-status{grid-area:1/1;transform:translateY(-5px)}
/* Lift the progress icon a little so the result marker can sit at its edge. */
.learning-tree .learning-tree-status-group .learning-tree-status{transform:translateY(-7px)}
.learning-tree-result-icon{position:absolute;z-index:1;right:-5px;bottom:-5px;display:grid;width:14px;height:14px;place-items:center;border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0a292c3b}
.learning-tree-result-icon .icon{width:8px;height:8px;stroke-width:3}
.learning-tree-result-icon.passed{background:#238777;color:#fff}
.learning-tree-result-icon.failed{background:#c34f49;color:#fff}
.course-detail-status .learning-tree-status-group{width:38px;height:38px}
.course-detail-status .learning-tree-status-group .learning-tree-status{transform:translateY(-7px)}
.course-detail-status .learning-tree-result-icon{right:-7px;bottom:-7px;width:19px;height:19px}
.course-detail-status .learning-tree-result-icon .icon{width:11px;height:11px}

/* Course overview: make the learner's next step and saved progress easy to
   take in before they launch a course. */
.course-overview .page-heading{margin-bottom:22px}
.course-overview{min-width:720px}
.main-wrap:has(.course-overview){overflow-x:auto}
.course-overview .page-heading h1{max-width:1120px;font-size:clamp(27px,2.5vw,35px);letter-spacing:-1px}
.native-subcourse-heading{align-items:flex-start}
.native-subcourse-heading>div>p{max-width:1050px;margin-top:7px;color:#286e68;font-size:clamp(18px,1.7vw,24px);font-weight:720;line-height:1.3;letter-spacing:-.4px}
.course-detail-hero{position:relative;display:grid;gap:18px;overflow:hidden;padding:27px 29px;margin-bottom:20px;border:1px solid #d4e5e2;border-radius:16px;background:linear-gradient(125deg,#fff 0%,#f5fbfa 59%,#e9f5f2 100%);box-shadow:0 12px 28px #163d4210}
.course-detail-hero::before{position:absolute;top:-146px;right:-80px;width:310px;height:310px;border:1px solid #cde3df;border-radius:50%;content:"";pointer-events:none}
.course-detail-hero>*{position:relative;z-index:1}
.course-detail-hero-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,.8fr);gap:22px;align-items:stretch}
.course-detail-status-section{display:grid;align-content:center;gap:10px;min-width:0}
.course-detail-status-section>.eyebrow{color:#557a76}
.course-detail-status{display:flex;align-items:center;gap:13px;min-width:0}
.course-detail-progress-wheel{--wheel-fill:#6c9298;--wheel-track:#dbe8ea;position:relative;display:grid;width:48px;height:48px;place-items:center;flex:none;border-radius:50%;background:conic-gradient(var(--wheel-fill) var(--completion),var(--wheel-track) 0);box-shadow:0 4px 10px #1b5b5420}
.course-detail-progress-wheel::after{position:absolute;z-index:0;width:34px;height:34px;border:1px solid #eff7f5;border-radius:50%;background:#f7fbfa;content:""}
.course-detail-progress-wheel-value{position:relative;z-index:1;color:#244c53;font-size:10px;font-weight:780;letter-spacing:-.35px;line-height:1}
.course-detail-status .course-detail-progress-wheel .course-detail-progress-wheel-value{display:block;margin-top:0;color:#244c53;font-size:10px}
.course-detail-progress-wheel-result{position:absolute;z-index:2;top:50%;left:50%;display:grid;width:20px;height:20px;place-items:center;border:2px solid #f7fbfa;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 1px 3px #173f4226}
.course-detail-progress-wheel:has(.course-detail-progress-wheel-result.failed) .course-detail-progress-wheel-value{visibility:hidden}
.course-detail-progress-wheel-result .icon{width:10px;height:10px;stroke-width:3}
.course-detail-status .course-detail-progress-wheel .course-detail-progress-wheel-result{margin-top:0;color:#fff}
.course-detail-status .course-detail-progress-wheel .course-detail-progress-wheel-result.passed{background:#238777}
.course-detail-status .course-detail-progress-wheel .course-detail-progress-wheel-result.failed{background:#bd5449}
.course-detail-progress-wheel.completed{--wheel-fill:#238777;--wheel-track:#d9ede7}
.course-detail-progress-wheel.in_progress{--wheel-fill:#d89a3d;--wheel-track:#f5e8cd}
.course-detail-progress-wheel.not_started{--wheel-fill:#779aa3;--wheel-track:#dce9ec}
.course-detail-progress-wheel.failed{--wheel-fill:#bd5449;--wheel-track:#f2dcd8}
.course-detail-status .learning-tree-status{width:46px;height:46px;border-width:1.5px;box-shadow:0 4px 10px #1b5b5424}
.course-detail-status .learning-tree-status .icon{width:23px;height:23px}
.course-detail-status .learning-tree-status-group{width:46px;height:46px}
.course-detail-status .learning-tree-status-group .learning-tree-status{transform:translateY(-8px)}
.course-detail-status .learning-tree-result-icon{right:-7px;bottom:-7px;width:19px;height:19px}
.course-detail-status-copy{display:grid;gap:4px;min-width:0}
.course-detail-status-title{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.course-detail-status .course-detail-status-copy strong{color:#1f4149;font-size:18px;font-weight:750;letter-spacing:-.25px}
.course-detail-status-copy p{margin:0;color:#68818a;font-size:12px;line-height:1.4}
.course-detail-status .learning-tree-result-icon,.course-detail-status-title .reported-outcome{display:grid;margin-top:0}
.course-detail-status .course-detail-status-title .reported-outcome{display:inline-flex;margin-top:0;padding:2px 5px;font-size:8px;font-weight:500;line-height:1.1}
.course-detail-status .course-detail-status-title .reported-outcome.passed{background:#e1f2e7;color:#28704d}
.course-detail-status .course-detail-status-title .reported-outcome.failed{background:#fff0ed;color:#a24b42}
.course-detail-status .course-detail-progress-value{margin-left:auto;padding-left:17px;border-left:1px solid #d5e5e3;color:#176c64;font-size:32px;font-weight:760;letter-spacing:-1.5px;line-height:1}
.course-detail-launch{display:grid;align-content:space-between;gap:13px;padding:16px 17px;border:1px solid #d6e7e4;border-radius:12px;background:#ffffffc7;box-shadow:0 5px 14px #173f4209}
.course-detail-launch>div{display:grid;gap:5px}
.course-detail-launch span{color:#365e59;font-size:12px;font-weight:750;letter-spacing:-.05px}
.course-detail-launch p{margin:0;color:#68817e;font-size:11px;line-height:1.55}
.course-detail-launch .course-launch-action{width:100%;min-height:42px}
.course-detail-launch.launch-only{display:flex;align-items:center;justify-content:flex-end;padding:0;border:0;background:transparent;box-shadow:none}
.course-detail-progress-block{display:grid;gap:9px;padding:13px 15px 15px;border:1px solid #dceae7;border-radius:11px;background:#ffffffb8}
.course-detail-progress-block>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.course-detail-progress-block>.progress{display:block;width:100%}
.course-detail-progress-block span{color:#617e79;font-size:10px;font-weight:750;letter-spacing:.07em;text-transform:uppercase}
.course-detail-progress-block strong{color:#315e5a;font-size:11px;font-weight:700;text-align:right}
.course-detail-progress .progress{height:9px;background:#dcecea}
.course-detail-progress .progress i{background:linear-gradient(90deg,#42a992,#1c766c)}
.course-detail-fact-groups{display:grid;gap:11px}
.course-detail-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.course-detail-facts>div{min-height:68px;padding:13px 14px;border-color:#dce9e7;border-radius:10px;background:#fff;box-shadow:0 2px 7px #183f4405}
.course-detail-facts>div span{color:#6b8480;font-size:9px;letter-spacing:.08em}
.course-detail-facts>div strong{color:#244b51;font-size:13px}
.course-detail-facts>div small{color:#a54d41;font-size:9px;font-weight:700}
.course-detail-fact-overdue{border-color:#efcfc5!important;background:#fff8f5!important}
.course-detail-fact-overdue span,.course-detail-fact-overdue strong{color:#9b4a40!important}
.course-detail-facts-group{padding:12px;border:1px solid #dceae7;border-radius:11px;background:#f8fbfa}
.course-detail-facts-group-label{margin:0 2px 9px;color:#426c68;font-size:11px;font-weight:760;letter-spacing:.02em}
.course-detail-reported-facts .course-detail-facts{margin:0}
.course-detail-reported-facts .course-detail-facts>div{background:#fbfefd;border-color:#d4e7e3}
.course-detail-reported-facts .course-detail-facts>div:has(.reported-outcome){background:#f3faf7;border-color:#bcded2}
.course-result-note{border:1px solid #d9e8e8;background:#f4fafb;color:#50727a}
.course-detail-about{display:grid;min-height:0;padding:29px 31px 31px;gap:20px}
.course-detail-about-head{display:flex;align-items:center;gap:12px}
.course-detail-about-head h2{margin:0;color:#263f4a;font-size:21px;letter-spacing:-.35px}
.course-detail-about-icon{display:grid;width:42px;height:42px;place-items:center;flex:none;border:1px solid #d6e8e5;border-radius:12px;background:#edf7f5;color:#25756d}
.course-detail-about-icon .icon{width:21px;height:21px}
.course-detail-about .course-detail-lead{max-width:820px;margin:0;color:#46636c;font-size:15px;line-height:1.72}
@media(max-width:900px){.course-detail-hero-top{grid-template-columns:1fr}.course-detail-launch{grid-template-columns:minmax(0,1fr) auto;align-items:center}.course-detail-launch .course-launch-action{width:auto;min-width:150px}.course-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.course-overview .page-heading{align-items:flex-start;margin-bottom:18px}.course-overview .page-heading h1{font-size:27px}.native-subcourse-heading>div>p{font-size:19px}.course-detail-hero{padding:21px 18px;gap:15px;border-radius:14px}.course-detail-hero-top{gap:16px}.course-detail-status{gap:11px}.course-detail-progress-wheel{width:42px;height:42px}.course-detail-progress-wheel::after{width:30px;height:30px}.course-detail-progress-wheel-value{font-size:9px}.course-detail-progress-wheel-result{width:18px;height:18px}.course-detail-status .learning-tree-status,.course-detail-status .learning-tree-status-group{width:42px;height:42px}.course-detail-status .course-detail-status-copy strong{font-size:16px}.course-detail-status .course-detail-progress-value{padding-left:11px;font-size:27px}.course-detail-launch{grid-template-columns:1fr;gap:12px;padding:15px}.course-detail-launch .course-launch-action{width:100%;min-width:0}.course-detail-progress-block{padding:12px}.course-detail-progress-block strong{max-width:58%;line-height:1.35}.course-detail-facts{grid-template-columns:1fr 1fr;gap:8px}.course-detail-facts>div{min-height:64px;padding:12px}.course-detail-about{padding:24px 22px 25px;border-radius:12px}.course-detail-about .course-detail-lead{font-size:14px}}

/* Native courses use a focused player layout so navigation stays available while
   the lesson body has its own comfortable reading surface. */
.course-overlay-native{width:min(1520px,100%);height:min(980px,100%)}
.course-overlay-native .native-course-overlay-scroll{display:block;min-height:0;overflow:hidden;background:#f4f8f8}
.course-overlay-native .native-course-overlay-content{height:100%;min-height:0;max-width:none;margin:0;padding:0}
.course-overlay-native .native-course-player{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;background:#f4f8f8}
.course-overlay-native .native-course-player-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 26px;border-bottom:1px solid #d7e5e7;background:linear-gradient(90deg,#fff,#f3faf9)}
.native-course-player-heading-copy{display:grid;gap:3px;min-width:0}
.native-course-player-heading-copy .eyebrow{color:#4d7777}
.native-course-player-heading-copy>strong{color:#214650;font-size:14px;font-weight:760;letter-spacing:-.15px}
.native-course-player-heading-copy>span:not(.eyebrow){color:#667f86;font-size:11px;line-height:1.45}
.native-course-player-heading-copy>small{max-width:790px;color:#9a5c4b;font-size:10px;line-height:1.45}
.native-course-player-progress{display:flex;align-items:center;gap:10px;flex:none;color:#4d6f76}
.native-course-player-progress .learning-tree-status{width:31px;height:31px;border-width:1.5px}
.native-course-player-progress .learning-tree-status .icon{width:16px;height:16px}
.native-course-player-progress>div{display:grid;gap:1px}
.native-course-player-progress strong{color:#1b6661;font-size:18px;font-weight:780;letter-spacing:-.7px;line-height:1}
.native-course-player-progress span{color:#688087;font-size:9px;font-weight:650;line-height:1.25;text-transform:uppercase;letter-spacing:.06em}
.course-overlay-native .course-layout{display:grid;grid-template-columns:minmax(286px,320px) minmax(0,1fr);gap:0;min-height:0;height:100%}
.course-overlay-native .course-layout.is-nav-collapsed{grid-template-columns:68px minmax(0,1fr)}
.course-overlay-native .lesson-nav{position:static;display:flex;align-self:stretch;flex-direction:column;min-width:0;min-height:0;height:100%;padding:0;border:0;border-right:1px solid #d7e4e7;border-radius:0;background:#fff;box-shadow:none}
.course-overlay-native .lesson-nav-header{display:flex;align-items:center;gap:11px;min-height:90px;padding:18px 18px 16px;margin:0;border-bottom:1px solid #e1ebed}
.course-overlay-native .lesson-nav-header-copy{display:grid;gap:5px;min-width:0;flex:1}
.course-overlay-native .lesson-nav-header-copy .eyebrow{color:#69858a;font-size:10px;letter-spacing:.11em}
.course-overlay-native .lesson-nav-header h2{overflow:hidden;margin:0;color:#254852;font-size:14px;font-weight:740;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.course-overlay-native .lesson-nav-progress .progress{height:5px;width:100%;background:#e4eff0}
.course-overlay-native .lesson-nav-progress .progress i{background:linear-gradient(90deg,#54a895,#19776d)}
.course-overlay-native .lesson-nav .lesson-nav-collapse{display:grid;width:31px;height:31px;place-items:center;align-items:center;justify-content:center;flex:none;gap:0;padding:0;text-align:center;border:1px solid #d0e0e3;border-radius:8px;background:#f6fafb;color:#356a70;font-size:inherit;line-height:1;transition:background .15s,color .15s,border-color .15s,transform .15s}
.course-overlay-native .lesson-nav .lesson-nav-collapse:hover{border-color:#8bbcb8;background:#e7f4f2;color:#126b62}
.course-overlay-native .lesson-nav .lesson-nav-collapse .icon{width:17px;height:17px}
.course-overlay-native .lesson-nav-scroll{display:flex;min-height:0;flex:1;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding:10px 9px 12px;scrollbar-color:#bfd2d5 transparent;scrollbar-width:thin}
.course-overlay-native .lesson-nav-list{display:grid;gap:4px}
.course-overlay-native .lesson-nav .lesson-nav-item{display:grid;width:100%;grid-template-columns:28px minmax(0,1fr);gap:11px;align-items:center;padding:11px 10px;border-radius:9px;background:transparent;color:#567079;font-size:12px;line-height:1.32;text-align:left;transition:background .15s,color .15s}
.course-overlay-native .lesson-nav .lesson-nav-item:hover{background:#eff7f7;color:#214c54}
.course-overlay-native .lesson-nav .lesson-nav-item.active{background:#dff1ee;color:#164f50}
.course-overlay-native .lesson-nav .lesson-nav-item.sequential-locked:disabled{opacity:1;background:transparent;color:#a0adb0}
.course-overlay-native .lesson-nav .lesson-nav-item.sequential-locked:disabled:hover{background:transparent;color:#a0adb0}
.course-overlay-native .lesson-nav .lesson-num{position:relative;display:grid;width:28px;height:28px;place-items:center;overflow:visible;border-color:#cddde0;background:#fff;color:#6b858d;font-size:11px;font-weight:720;line-height:1}
.course-overlay-native .lesson-nav .lesson-num-value{display:grid;place-items:center;width:100%;height:100%}
.course-overlay-native .lesson-nav .lesson-num.done,.course-overlay-native .lesson-nav .lesson-num.completed{border-color:#a9d9c8;background:#fff;color:#197364}
.course-overlay-native .lesson-nav .lesson-num.in_progress{border-color:#edbf7a;background:#fff;color:#aa6419}
.course-overlay-native .lesson-nav .lesson-num.failed{border-color:#e3aaa5;background:#fff;color:#b5463e}
.course-overlay-native .lesson-nav .lesson-num.sequential-locked{border-color:#d8dfe0!important;background:#edf0f0!important;color:#a4afb1!important;box-shadow:none!important}
.course-overlay-native .lesson-nav .lesson-num-completion{position:absolute;right:-6px;bottom:-6px;display:grid;width:16px;height:16px;place-items:center;background:transparent;color:#24916f;filter:drop-shadow(0 1px 1px #ffffff)}
.course-overlay-native .lesson-nav .lesson-num-completion .icon{width:14px;height:14px;stroke-width:2.6}
.course-overlay-native .lesson-nav .lesson-num.assessment{border-color:transparent;background:transparent}
.course-overlay-native .lesson-nav .lesson-num.assessment.not_started{border-color:#678189;background:#678189;color:#fff}
.course-overlay-native .lesson-nav .lesson-num.assessment.completed{border-color:#9ed4c4;background:#e4f5ef;color:#197364}
.course-overlay-native .lesson-nav .lesson-num.assessment.in_progress{border-color:transparent;background:transparent;color:#aa6419}
.course-overlay-native .lesson-nav .lesson-num.assessment.failed{border-color:#e5aaa4;background:#fff0ed;color:#b5463e}
.course-overlay-native .lesson-nav .lesson-num.assessment.sequential-locked{border-color:#d8dfe0!important;background:#edf0f0!important;color:#a4afb1!important}
.course-overlay-native .lesson-nav .lesson-num.assessment .icon{width:18px;height:18px;stroke-width:2.25}
.course-overlay-native .lesson-nav .lesson-num .icon{width:15px;height:15px}
.lesson-nav-copy{display:grid;min-width:0;gap:2px}
.lesson-nav-copy small{color:#71898f;font-size:9px;font-weight:700;letter-spacing:.07em;line-height:1;text-transform:uppercase}
.lesson-nav-copy>span{overflow:hidden;color:inherit;font-size:12px;font-weight:640;text-overflow:ellipsis;white-space:nowrap}
.lesson-nav-item.active .lesson-nav-copy small{color:#367b75}
.lesson-nav-knowledge-check{margin-top:4px;border-top:1px solid #e3ecee;border-radius:0!important;padding-top:14px!important}
.lesson-nav-footer{display:flex;align-items:center;gap:7px;margin:15px 2px 2px;padding:12px 8px 0;border-top:1px solid #e1ebed;color:#668087}
.lesson-nav-footer>span{display:grid;place-items:center;width:21px;height:21px;border-radius:7px;background:#eef7f6;color:#277a71}
.lesson-nav-footer .icon{width:13px;height:13px}
.lesson-nav-footer small{font-size:9px;line-height:1.35}
.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-header{justify-content:center;padding:14px 8px}
.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-header-copy,.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-copy,.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-footer small{display:none}
.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-scroll{align-items:center;padding:10px 8px}
.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-list{width:100%}
.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-item{grid-template-columns:1fr;justify-items:center;padding:9px 4px}
.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-knowledge-check{padding-top:13px!important}
.course-overlay-native .lesson-nav.is-collapsed .lesson-nav-footer{justify-content:center;margin-top:auto;padding-top:11px}
.course-overlay-native .lesson-panel{display:flex;align-self:stretch;flex-direction:column;min-width:0;min-height:0;height:100%;border:0;border-radius:0;background:#fff;box-shadow:none;overflow:hidden}
.course-overlay-native .lesson-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;padding:15px clamp(24px,3vw,42px);border-bottom:1px solid #e0eaec;background:#fff;color:#607b83;font-size:11px;line-height:1.4}
.course-overlay-native .lesson-top>span{display:inline-flex;align-items:center;gap:6px;min-width:0}
.course-overlay-native .lesson-top>span:last-child{color:#41766f;font-weight:650;white-space:nowrap}
.course-overlay-native .lesson-top .icon{width:15px;height:15px;color:#298278}
.lesson-top-divider{color:#9aacb1}
.course-overlay-native .lesson-panel-scroll{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#bdd1d5 transparent;scrollbar-width:thin;background:radial-gradient(circle at 94% 1%,#eaf7f5 0,transparent 29%),#fff}
.course-overlay-native .lesson-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.62fr);gap:clamp(28px,4vw,64px);align-items:center;min-height:100%;max-width:1220px;padding:clamp(35px,5vw,64px) clamp(28px,5vw,70px);margin:0 auto}
.lesson-content-copy{min-width:0}
.course-overlay-native .lesson-content .eyebrow{color:#3c7d76;font-size:9px;letter-spacing:.12em}
.course-overlay-native .lesson-content h2{max-width:760px;margin:0 0 20px;color:#1f414b;font-size:clamp(28px,3vw,42px);font-weight:760;letter-spacing:-1.1px;line-height:1.18}
.course-overlay-native .lesson-content .lead{max-width:760px;margin:0 0 24px;color:#49666f;font-size:17px;font-weight:500;line-height:1.68}
.course-overlay-native .lesson-content ul{max-width:760px;margin:0;padding-left:21px}
.course-overlay-native .lesson-content li{padding:7px 0 7px 5px;color:#617981;font-size:14px;line-height:1.7}
.course-overlay-native .lesson-content li::marker{color:#258477}
.lesson-illustration{position:relative;width:min(100%,360px);min-height:220px;padding:18px;margin:0;justify-self:end;border:1px solid #cfe7e4;border-radius:22px;background:radial-gradient(circle at 78% 18%,#ffffffc9 0 15%,transparent 40%),linear-gradient(145deg,#dff4ef,#f9fcfc);color:#227a72;box-shadow:0 16px 30px #135a5312,0 3px 0 #ffffff80 inset;overflow:hidden}
.lesson-illustration::before,.lesson-illustration::after{content:"";position:absolute;border-radius:50%;pointer-events:none;background:currentColor;opacity:.09}
.lesson-illustration::before{width:112px;height:112px;top:-53px;right:-28px}
.lesson-illustration::after{width:74px;height:74px;bottom:-31px;left:-22px;opacity:.07}
.lesson-illustration.lesson-illustration-account{color:#247784;background:radial-gradient(circle at 18% 82%,#ffffffb8 0 13%,transparent 41%),linear-gradient(145deg,#dff1f4,#fbfefe);border-color:#c2e0e4}
.lesson-illustration.lesson-illustration-report{color:#9a6548;background:radial-gradient(circle at 78% 18%,#fff8e6 0 15%,transparent 42%),linear-gradient(145deg,#fbe9d8,#fffdfa);border-color:#ebd1b9}
.lesson-illustration.lesson-illustration-connections{color:#506ca4;background:radial-gradient(circle at 20% 18%,#ffffffc2 0 14%,transparent 40%),linear-gradient(145deg,#e8edfc,#fcfdff);border-color:#d0dbf0}
.lesson-illustration.lesson-illustration-access{color:#6c5c9e;background:radial-gradient(circle at 78% 82%,#fff 0 13%,transparent 42%),linear-gradient(145deg,#eeeafa,#fcfbff);border-color:#dbd3f0}
.lesson-illustration.lesson-illustration-checklist{color:#64834b;background:radial-gradient(circle at 18% 18%,#fff 0 15%,transparent 40%),linear-gradient(145deg,#eaf4df,#fcfdf9);border-color:#d4e5c4}
.lesson-illustration.lesson-illustration-classroom{color:#ad6b4a;background:radial-gradient(circle at 80% 18%,#fff7e9 0 15%,transparent 40%),linear-gradient(145deg,#fae8d9,#fffdf9);border-color:#edd2bd}
.lesson-illustration svg{position:relative;z-index:1;display:block;width:100%;height:auto}
.lesson-illustration-media{display:grid;place-items:center;overflow:hidden;padding:0;border-color:#c9d4d8;border-radius:12px;background:#fafbfa;box-shadow:none}
.lesson-illustration-media::before,.lesson-illustration-media::after{display:none}
.lesson-illustration-media img{display:block;width:100%;height:100%;max-height:330px;object-fit:contain}
.lesson-callout{display:grid;grid-template-columns:32px minmax(0,1fr);gap:11px;max-width:760px;padding:14px 16px;margin-top:26px;border:1px solid #cfe5e2;border-radius:13px;background:#f2faf8;color:#315e60}
.lesson-callout.scenario{border-color:#d8dfef;background:#f4f6fc;color:#4d6285}
.lesson-callout.takeaway{border-color:#eadcc3;background:#fffaf1;color:#795e41}
.lesson-callout-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;background:#dcedea;color:#24786e}
.lesson-callout.scenario .lesson-callout-icon{background:#e3e9f6;color:#58739e}
.lesson-callout.takeaway .lesson-callout-icon{background:#f6ead1;color:#916f44}
.lesson-callout-icon .icon{width:17px;height:17px}
.lesson-callout>div{display:grid;gap:3px;padding-top:1px}
.lesson-callout strong{font-size:12px;font-weight:760;line-height:1.35}
.lesson-callout p{margin:0;font-size:12px;line-height:1.55}
.course-overlay-native .lesson-sources{max-width:1220px;padding:0 clamp(28px,5vw,70px) 36px;margin:0 auto;color:#638088;font-size:11px}
.course-overlay-native .lesson-sources summary{color:#416b72;font-weight:700}
.course-overlay-native .lesson-sources a{color:#1c716c}
.course-overlay-native .lesson-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;flex:none;padding:14px clamp(24px,3vw,42px);border-top:1px solid #dce8ea;background:#f7fbfb}
.course-overlay-native .lesson-bottom .btn:last-child{margin-left:auto}
.course-overlay-native .lesson-bottom .btn{flex:none;min-width:112px;min-height:40px;padding:9px 12px}
.course-overlay-native .lesson-bottom :is([data-action="previous-page"],[data-action="next-course"]){width:112px}
.course-overlay-native .lesson-bottom .btn.completed,.course-overlay-native .complete-panel .btn.completed{background:#e3eaeb;border:1px solid #cbd9dc;color:#657b82;box-shadow:none}
.course-overlay-native .lesson-bottom .btn.completed:disabled,.course-overlay-native .complete-panel .btn.completed:disabled{opacity:1}
.course-overlay-native .quiz-content{max-width:900px;padding:clamp(34px,5vw,64px) clamp(26px,5vw,70px);margin:0 auto}
.course-overlay-native .quiz-content h2{color:#1f414b;font-size:clamp(27px,3vw,36px);letter-spacing:-.75px}
.course-overlay-native .quiz-content>p{color:#5b737a;font-size:14px;line-height:1.65}
.course-overlay-native .question{padding:23px 0}
.course-overlay-native .question legend{color:#315a60;font-size:14px}
.course-overlay-native .question label{border-color:#d7e5e7;color:#506a71;font-size:13px}
.course-overlay-native .question label:has(input:checked){border-color:#94cfc6;background:#e8f6f3}
.course-overlay-native .complete-panel{display:grid;min-height:100%;align-content:center;justify-items:center;padding:clamp(42px,8vw,90px) 28px}
.course-overlay-native .complete-panel h2{color:#1e4650}
.course-overlay-native .complete-panel p{max-width:520px;color:#617a80}
.course-overlay-native .complete-panel .button-row{margin-top:6px}

/* The completion record has its own full-width, printable presentation. */
.course-overlay-native .native-course-player-complete{display:block}
.completion-page{display:flex;height:100%;min-height:0;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse at top,#e7f4ee,transparent 65%),#f4f8f8}
.completion-certificate-scroll{min-height:0;flex:1;overflow:auto;padding:clamp(20px,3vw,36px)}
.completion-certificate{position:relative;width:100%;max-width:1080px;margin:0 auto;padding:clamp(26px,4vw,48px);border:1px solid #c9dcd5;border-top:5px solid #b18a43;border-radius:16px;background:#fff;box-shadow:0 12px 36px #21483f0b;text-align:center;color:#214650;overflow-wrap:anywhere}
.completion-certificate-heading{width:100%;margin:0 auto}
.completion-certificate .completion-certificate-label{margin:0 0 12px;color:#557260;font-size:12px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}
.completion-certificate h2{margin:0;color:#183e49;font-size:clamp(27px,3.4vw,43px);font-weight:760;line-height:1.18;letter-spacing:-.8px;text-wrap:balance}
.completion-celebration{display:flex;align-items:center;justify-content:center;gap:23px;margin:26px 0 18px;color:#af8231}
.completion-celebration::before,.completion-celebration::after{content:'✦';font-size:25px;line-height:1}
.completion-celebration::before{transform:rotate(-12deg)}
.completion-celebration::after{font-size:19px;transform:rotate(12deg)}
.completion-seal{display:grid;width:80px;height:80px;place-items:center;border:1px solid #b5d8c7;border-radius:50%;outline:1px solid #dfc98f;outline-offset:5px;background:#edf7f1;color:#237861}
.completion-seal .icon{width:42px;height:42px;stroke-width:1.6}
.completion-certificate .completion-presented{margin:0 0 5px;color:#5c7278;font-size:14px}
.completion-certificate .completion-learner-name{margin:0;color:#214650;font-size:clamp(27px,3vw,37px);font-weight:720;line-height:1.25;text-wrap:balance}
.completion-certificate .completion-organization{margin:7px 0 0;color:#506c74;font-size:15px}
.completion-certificate .completion-message{max-width:650px;margin:18px auto 0;color:#4e6d73;font-size:16px;line-height:1.6;text-wrap:balance}
.completion-certificate-facts{display:flex;justify-content:center;flex-wrap:wrap;gap:16px 32px;margin:26px auto 0;padding-top:22px;border-top:1px solid #dce7e3}
.completion-certificate-facts>div{min-width:100px;max-width:100%}
.completion-certificate-facts dt{margin-bottom:6px;color:#5d747a;font-size:12px;font-weight:600}
.completion-certificate-facts dd{margin:0;color:#274e57;font-size:17px;font-weight:700;line-height:1.4}
.completion-certificate-facts .completion-assessment.passed{color:#197459}
.completion-certificate-facts .completion-assessment.failed{color:#a63b34}
.completion-certificate-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-top:28px;color:#5c7379;font-size:12px}
.completion-issuer{display:inline-flex;align-items:center;gap:9px;color:#315e60;font-size:16px}
.completion-issuer .arbomente-mark{width:30px;height:30px;color:currentColor}
.completion-actions{flex:none;justify-content:center;flex-wrap:wrap;gap:10px;margin:0;padding:14px 20px;border-top:1px solid #dce7e3;background:#f7fbf9}
.completion-certificate-failed{border-top-color:#91a4a6}
.completion-certificate-failed .completion-celebration::before,.completion-certificate-failed .completion-celebration::after{content:none}
.completion-certificate-failed .completion-seal{outline-color:#cad9d9;border-color:#cad9d9;background:#f3f7f7;color:#53757a}
.completion-preview-note{font-weight:700}
.completion-certificate .completion-basis-note{margin:10px auto 0;color:#5c7379;font-size:13px;line-height:1.5}
.completion-certificate-reference{display:flex;width:100%;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-top:13px;border-top:1px solid #dce7e3;font-size:10px;text-align:left}
dialog.certificate-modal{width:min(1120px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.certificate-modal .modal-body{background:#f4f8f8;padding:clamp(16px,3vw,30px)}
.certificate-modal .completion-certificate{box-shadow:none}
.history-record:has([data-action="view-certificate"]){flex-direction:column;align-items:flex-start;gap:5px}
.history-record .btn{justify-content:flex-start;margin:0;white-space:nowrap}
@media(max-width:680px){
  .completion-certificate-scroll{padding:16px}
  .completion-certificate{padding:25px 20px}
  .completion-certificate h2{font-size:27px}
  .completion-certificate-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
  .completion-certificate-facts>div{min-width:0}
  .completion-certificate-footer{justify-content:center}
  .completion-actions .btn{flex:1 1 auto}
}
@page arbomente-certificate{size:landscape;margin:12mm}
@media print{
  /* Remove non-certificate branches entirely so hidden app content cannot
     consume pages. Reset every ancestor to remove modal clipping and blur. */
  html:has(#native-completion-certificate){height:auto!important;overflow:visible!important;background:#fff!important}
  body:has(#native-completion-certificate) dialog::backdrop{display:none!important;background:transparent!important}
  body:has(#native-completion-certificate){page:arbomente-certificate}
  body:has(#native-completion-certificate) *:not(:has(#native-completion-certificate)):not(#native-completion-certificate):not(#native-completion-certificate *){display:none!important}
  body:has(#native-completion-certificate),body:has(#native-completion-certificate) *:has(#native-completion-certificate){display:block!important;position:static!important;inset:auto!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;overflow:visible!important;transform:none!important;filter:none!important;backdrop-filter:none!important;background:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important;contain:none!important}
  #native-completion-certificate{page:arbomente-certificate;box-sizing:border-box;max-width:none;margin:0;padding:9mm 12mm;border:1.5pt solid #617970;border-top:4pt solid #91703a;border-radius:0;box-shadow:none;background:#fff;break-inside:avoid;color:#183e49}
  #native-completion-certificate h2{font-size:27pt;line-height:1.18}
  #native-completion-certificate .completion-certificate-label{font-size:9pt}
  #native-completion-certificate .completion-celebration{margin:7mm 0 5mm}
  #native-completion-certificate .completion-seal{width:17mm;height:17mm;background:#fff}
  #native-completion-certificate .completion-seal .icon{width:10mm;height:10mm}
  #native-completion-certificate .completion-learner-name{font-size:25pt}
  #native-completion-certificate .completion-message{margin-top:5mm;font-size:11pt}
  #native-completion-certificate .completion-certificate-facts{display:flex;gap:5mm 9mm;margin-top:6mm;padding-top:5mm}
  #native-completion-certificate .completion-certificate-facts dt{font-size:9pt}
  #native-completion-certificate .completion-certificate-facts dd{font-size:12pt}
  #native-completion-certificate .completion-certificate-footer{margin-top:7mm;font-size:9pt}
  #native-completion-certificate button,#native-completion-certificate [role="button"],#native-completion-certificate input,#native-completion-certificate select,#native-completion-certificate textarea{display:none!important}
}

@media(max-width:980px){
  .course-overlay-native .course-layout{grid-template-columns:260px minmax(0,1fr)}
  .course-overlay-native .course-layout.is-nav-collapsed{grid-template-columns:62px minmax(0,1fr)}
  .course-overlay-native .lesson-content{grid-template-columns:minmax(0,1fr) minmax(190px,.55fr);gap:28px;padding:38px 34px}
  .lesson-illustration{min-height:auto;border-radius:18px}
}
@media(max-width:680px){
  .course-overlay-native .native-course-player-heading{align-items:flex-start;padding:14px 16px;gap:13px}
  .native-course-player-heading-copy>strong{font-size:13px}
  .native-course-player-heading-copy>span:not(.eyebrow){font-size:10px}
  .native-course-player-progress{gap:7px}
  .native-course-player-progress .learning-tree-status{width:28px;height:28px}
  .native-course-player-progress strong{font-size:16px}
  .native-course-player-progress span{font-size:8px}
  .course-overlay-native .course-layout,.course-overlay-native .course-layout.is-nav-collapsed{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}
  .course-overlay-native .lesson-nav{display:flex;position:static;height:auto;max-height:40vh;border-right:0;border-bottom:1px solid #d7e4e7}
  .course-overlay-native .lesson-nav-header{min-height:72px;padding:13px 16px}
  .course-overlay-native .lesson-nav-header-copy .eyebrow{font-size:9px}
  .course-overlay-native .lesson-nav-header h2{font-size:13px}
  .course-overlay-native .lesson-nav-scroll{max-height:calc(40vh - 72px);padding:8px 10px 10px}
  .course-overlay-native .lesson-nav.is-collapsed .lesson-nav-scroll{display:none}
  .course-overlay-native .lesson-nav.is-collapsed{max-height:none}
  .course-overlay-native .lesson-nav.is-collapsed .lesson-nav-header{min-height:53px;justify-content:flex-end;padding:10px 14px}
  .course-overlay-native .lesson-panel{min-height:0}
  .course-overlay-native .lesson-top{padding:12px 18px;font-size:10px}
  .course-overlay-native .lesson-top>span:last-child{font-size:9px}
  .course-overlay-native .lesson-content{grid-template-columns:1fr;gap:22px;align-items:start;min-height:0;padding:30px 22px}
  .course-overlay-native .lesson-content h2{font-size:28px}
  .course-overlay-native .lesson-content .lead{font-size:15px}
  .course-overlay-native .lesson-content li{font-size:13px}
  .lesson-illustration{width:min(100%,300px);min-height:0;padding:14px;justify-self:start;order:-1}
  .lesson-illustration-media{padding:0}
  .lesson-callout{grid-template-columns:29px minmax(0,1fr);gap:10px;padding:13px 14px;margin-top:22px}
  .lesson-callout-icon{width:29px;height:29px;border-radius:9px}
  .course-overlay-native .lesson-sources{padding:0 22px 27px;font-size:10px}
  .course-overlay-native .lesson-bottom{gap:8px;padding:11px 15px}
  .course-overlay-native .lesson-bottom .btn{padding:9px 10px;font-size:12px}
  .course-overlay-native .quiz-content{padding:31px 22px}
}

/* A failed result is distinct from work in progress throughout the learner tree. */
.learning-tree-status.failed,.learning-tree-status.needs_review{color:#ffb3aa;background:#6d3d3a}
.lesson-num.failed{background:#ffe1dc;color:#a63b34;border-color:#f4c3bb}
.course-detail-progress-wheel.failed{--wheel-fill:#bd5449;--wheel-track:#f5d9d4}
.course-overlay-native .complete-symbol.failed{background:#fff0ed;color:#b64e45}
.course-overlay-native .complete-symbol.passed{background:#eaf3e2;color:#638e4a}

/* Catalog controls keep a large course library easy to scan and narrow. */
.catalog-toolbar{--catalog-control-height:37px;display:flex;align-items:center;gap:14px;margin-bottom:22px;padding:14px 16px;border:1px solid #dce7e8;border-radius:12px;background:#fff}
.catalog-toolbar .search{max-width:none}
.catalog-toolbar .search input{height:var(--catalog-control-height)}
.catalog-sort{display:flex;align-items:center;gap:8px;flex:none;color:#60777e;font-size:12px;font-weight:650;white-space:nowrap}
.catalog-sort select{height:var(--catalog-control-height);min-height:var(--catalog-control-height);padding:8px 30px 8px 11px;border:1px solid #d8e5e7;border-radius:7px;background:#fff;color:#31535d;font:inherit;font-weight:500}
.catalog-count{margin-left:auto;color:#789098;font-size:11px;white-space:nowrap}
.course-card-footer .button-row{justify-content:flex-end}
.course-card-catalog-footer{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding-top:10px}
.course-card-status{min-height:24px;display:flex;align-items:center}
.course-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.course-card-actions .btn{flex:1 1 auto}
@media(max-width:680px){.catalog-toolbar{align-items:stretch;flex-wrap:wrap;gap:10px}.catalog-toolbar .search{flex:1 1 100%;min-width:0}.catalog-sort{flex:1}.catalog-sort select{flex:1;min-width:0}.catalog-count{align-self:center}}

.learning-tree-quick-launch.archived{color:#8d9896;cursor:not-allowed;opacity:.78}
.learning-tree-quick-launch.archived::before{border-color:#cbd5d3;background:#e5eae8;box-shadow:none}
.learning-tree-quick-launch.archived .icon{width:11px;height:11px;fill:none;stroke:#7d8b89;stroke-width:2}
.learning-tree-quick-launch.sequential-locked{color:#879391;cursor:not-allowed;opacity:1}
.learning-tree-quick-launch.sequential-locked::before{border-color:#cbd5d3;background:#e5eae8;box-shadow:none}
.learning-tree-quick-launch.sequential-locked .icon{fill:currentColor;stroke:none}
.btn.course-launch-action.archived{background:#e7eceb;border-color:#ccd8d6;color:#657977;box-shadow:none;cursor:not-allowed}
.btn.course-launch-action.archived:hover{background:#e7eceb;box-shadow:none}
.btn.course-launch-action.sequential-locked{background:#e7eceb;border-color:#ccd8d6;color:#657977;box-shadow:none;cursor:not-allowed;opacity:1}
.btn.course-launch-action.sequential-locked:hover{background:#e7eceb;box-shadow:none}
.course-detail-archive-note{margin:0;color:#7c8987!important;font-size:10px!important;line-height:1.5!important}
.course-detail-sequential-note{margin:0;color:#667a78!important;font-size:10px!important;line-height:1.5!important}
.course-overlay-native .native-course-player-heading{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:8px}
.native-course-player-heading-instruction{color:#667f86;font-size:11px;line-height:1.45}
.native-course-player-progress{justify-self:start;padding-top:2px}

/* Native course pages start at the top. The topic heading spans the full
   content area, while the lesson text and illustration sit beneath it. */
.course-overlay-native .lesson-content{grid-template-rows:auto auto;align-items:start;align-content:start;row-gap:14px}
.course-overlay-native .lesson-content-heading{grid-column:1 / -1;min-width:0;width:100%}
.course-overlay-native .lesson-content-heading h2{max-width:none;width:100%;margin-bottom:6px;overflow-wrap:normal}
.course-overlay-native .lesson-content-copy{align-self:start}
.course-overlay-native .lesson-illustration{align-self:start}
.lesson-introduction-content .lesson-content-copy{display:grid;gap:20px}
.lesson-introduction-section h3{margin:0 0 8px;color:#31545c;font-size:15px}
.lesson-introduction-section ul{margin-top:0!important}
.lesson-introduction-facts,.course-introduction-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
.lesson-introduction-facts>div,.course-introduction-facts>div{display:grid;gap:4px;padding:12px 13px;border:1px solid #dce9e7;border-radius:10px;background:#f8fbfa}
.lesson-introduction-facts dt,.course-introduction-facts dt{color:#60807a;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.lesson-introduction-facts dd,.course-introduction-facts dd{margin:0;color:#46636c;font-size:12px;line-height:1.5}
.lesson-introduction-action{margin-top:2px}
.course-detail-about-head>div{display:grid;gap:3px}
.course-introduction-section{display:grid;gap:0}
.course-introduction-section h3{margin:0;color:#31545c;font-size:16px}
@media(max-width:680px){.lesson-introduction-facts,.course-introduction-facts{grid-template-columns:1fr}.course-overlay-native .lesson-content-heading h2{font-size:28px}}
.course-overlay-native .lesson-content-heading .lesson-topic-title{margin:0 0 9px;color:#34756f;font-size:15px;font-weight:760;letter-spacing:.08em;line-height:1.35;text-transform:uppercase;white-space:normal}
@media(max-width:680px){.course-overlay-native .lesson-content-heading .lesson-topic-title{font-size:14px}}
.lesson-introduction-facts>div,.course-introduction-facts>div{align-content:start;min-height:100%;}
.lesson-introduction-facts dt,.course-introduction-facts dt{min-height:2.4em;display:flex;align-items:flex-start;}
.lesson-introduction-facts dd,.course-introduction-facts dd{min-height:3.2em;}
@media(max-width:680px){.lesson-introduction-facts dt,.course-introduction-facts dt{min-height:0}.lesson-introduction-facts dd,.course-introduction-facts dd{min-height:0}}
.lesson-introduction-content .lesson-introduction-facts{grid-column:1 / -1;width:100%;}
.lesson-introduction-content .lesson-introduction-action{grid-column:1 / -1;}
.course-key-terms{display:grid;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid #e0e9eb}
.course-key-terms h3{margin:0;color:#31545c;font-size:16px}
.course-key-terms dl{display:grid;gap:8px;margin:0}
.course-key-terms dl>div{display:grid;grid-template-columns:minmax(70px,.18fr) minmax(0,1fr);gap:12px;align-items:start;padding:9px 11px;border:1px solid #dce9e7;border-radius:9px;background:#f8fbfa}
.course-key-terms dt{color:#2d6f69;font-size:12px;font-weight:760;letter-spacing:.04em}
.course-key-terms dd{margin:0;color:#46636c;font-size:12px;line-height:1.5}
.lesson-introduction-content .course-key-terms{margin-top:0}
@media(max-width:680px){.course-key-terms dl>div{grid-template-columns:1fr;gap:3px}}
.lesson-introduction-content .course-key-terms{grid-column:1 / -1;width:100%;margin-top:0}
.course-acronym{position:relative;color:inherit;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-thickness:1.5px;text-underline-offset:3px;cursor:help}
.course-acronym::after{position:absolute;z-index:20;left:0;top:calc(100% + 8px);display:block;width:max-content;max-width:min(320px,70vw);padding:8px 10px;border:1px solid #b9d2d2;border-radius:8px;background:#163f47;color:#fff;box-shadow:0 8px 20px #12323a2b;content:attr(data-definition);font-size:12px;font-weight:500;line-height:1.45;opacity:0;pointer-events:none;transform:translateY(-3px);transition:opacity .12s ease,transform .12s ease}
.course-acronym:hover::after,.course-acronym:focus::after{opacity:1;transform:translateY(0)}
.lesson-progress-wheel{position:relative;border:0!important;background:conic-gradient(#d9e5e7 0 var(--lesson-progress),#eef3f3 var(--lesson-progress) 100%)!important;color:#5f7d85!important}
.lesson-progress-wheel::before{position:absolute;inset:3px;border-radius:50%;background:#fff;content:""}
.lesson-progress-wheel .lesson-num-value,.lesson-progress-wheel .lesson-num-completion{position:relative;z-index:1}
.lesson-progress-wheel.in_progress{background:conic-gradient(#e5a04f 0 var(--lesson-progress),#f3e8d8 var(--lesson-progress) 100%)!important;color:#a5631e!important}
.lesson-progress-wheel.completed{background:conic-gradient(#45a88e 0 100%,#d8eee7 100%)!important;color:#197364!important}
.lesson-progress-wheel.completed::before{background:#f7fcfa}
.lesson-progress-wheel>.icon{position:relative;z-index:1}
.lesson-progress-wheel .lesson-num-completion{right:-6px;bottom:-6px}
.course-acronym::after{padding:9px 11px;border-color:#70b7ad;background:#214f57;color:#f3fbfa;box-shadow:0 10px 24px #12323a33;font-size:13px;line-height:1.5}
.course-overlay-native .lesson-nav .lesson-nav-item.active .lesson-progress-wheel.in_progress{box-shadow:0 0 0 2px #f0b467;background:conic-gradient(#e5a04f 0 var(--lesson-progress),#f3e8d8 var(--lesson-progress) 100%)!important}
.course-overlay-native .lesson-nav .lesson-nav-item.active .lesson-progress-wheel.in_progress{box-shadow:none;border:0!important}
.course-overlay-native .lesson-content-heading h2{font-size:clamp(24px,2.4vw,34px)}
@media(max-width:680px){.course-overlay-native .lesson-content-heading h2{font-size:24px}}

/* The tree lists use an explicit grid layout, so make the collapsed state
   unambiguous when a toggle updates the hidden attribute. */
.learning-tree-children[hidden]{display:none!important}

/* Keep the overview compact on wide displays. Related facts share a single
   visual rhythm, while longer completion rules have room to be read. */
.course-overview{min-width:0;max-width:1280px;margin-inline:auto}
.main-wrap:has(.course-overview){overflow-x:visible}
.course-detail-hero{gap:14px;padding:24px}
.course-detail-hero-top{grid-template-columns:minmax(0,1fr) minmax(340px,1fr);gap:0;overflow:hidden;border:1px solid #d8e7e4;border-radius:12px;background:#ffffffc9;box-shadow:0 3px 12px #173f4208}
.course-detail-status-section{min-height:106px;padding:18px 20px}
.course-detail-launch,.course-detail-launch.launch-only{display:grid;align-content:center;gap:11px;min-height:106px;padding:18px 20px;border:0;border-left:1px solid #deebe8;border-radius:0;background:transparent;box-shadow:none}
.course-detail-launch.launch-only{justify-content:stretch}
.course-detail-launch .course-launch-action{min-width:0}
.course-detail-fact-groups{grid-template-columns:1fr;align-items:start}
.course-detail-fact-groups>.course-detail-metadata-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;min-width:0;overflow:hidden;border:1px solid #dce9e7;border-radius:12px;background:#ffffffc9;box-shadow:0 2px 8px #183f4405}
.course-detail-metadata-facts>div{align-content:center;min-height:74px;padding:14px 16px;border:0;border-right:1px solid #e1ecea;border-radius:0;background:transparent;box-shadow:none}
.course-detail-metadata-facts>div:last-child{border-right:0}
.course-detail-support{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:stretch}
.course-detail-support.has-result{grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr)}
.course-detail-completion-criteria,.course-detail-support .course-detail-reported-facts{display:grid;align-content:center;min-height:82px;padding:14px 16px;border:1px solid #dce9e7;border-radius:12px;background:#f8fbfa;box-shadow:0 2px 8px #183f4404}
.course-detail-completion-criteria{gap:6px}
.course-detail-completion-criteria span,.course-detail-support .course-detail-facts-group-label{color:#5d7b77;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.course-detail-completion-criteria strong{color:#2c5155;font-size:12px;font-weight:680;line-height:1.5}
.course-detail-reported-facts{min-width:0}
.course-detail-support .course-detail-reported-facts{padding:13px 16px}
.course-detail-support .course-detail-facts-group-label{margin:0 0 8px}
.course-detail-support .course-detail-reported-facts .course-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}
.course-detail-support .course-detail-reported-facts .course-detail-facts>div{align-content:center;min-height:38px;padding:0 12px;border:0;border-left:1px solid #dce8e5;border-radius:0;background:transparent;box-shadow:none}
.course-detail-support .course-detail-reported-facts .course-detail-facts>div:first-child{padding-left:0;border-left:0}
.course-detail-support .course-detail-reported-facts .course-detail-facts>div:last-child{padding-right:0}
@media(max-width:900px){
  .course-detail-hero-top{grid-template-columns:1fr}
  .course-detail-launch,.course-detail-launch.launch-only{min-height:0;border-left:0;border-top:1px solid #deebe8}
  .course-detail-support.has-result{grid-template-columns:1fr}
}
@media(max-width:680px){
  .course-overview{width:100%}
  .course-detail-hero{padding:16px}
  .course-detail-status-section{min-height:0;padding:16px}
  .course-detail-launch,.course-detail-launch.launch-only{padding:16px}
  .course-detail-fact-groups>.course-detail-metadata-facts{grid-template-columns:1fr 1fr}
  .course-detail-metadata-facts>div{min-height:68px;border-bottom:1px solid #e1ecea}
  .course-detail-metadata-facts>div:nth-child(2n){border-right:0}
  .course-detail-metadata-facts>div:nth-last-child(-n+2){border-bottom:0}
  .course-detail-support .course-detail-reported-facts .course-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.course-introduction-footer{display:flex;align-items:center;gap:8px;margin-top:2px;padding-top:12px;border-top:1px solid #e4ecea;color:#839796;font-size:10px;line-height:1.4}
.course-introduction-footer strong{color:#5b7475;font-size:10px;font-weight:650}

/* History uses semantic course records that reflow without horizontal scrolling. */
.learning-history-page{min-width:0;color:#203e4a;container:learning-history / inline-size}
.learning-history-page .page-heading{margin-bottom:20px}
.learning-history-person{display:flex;align-items:center;gap:12px;min-width:0;margin-bottom:20px}
.learning-history-person .avatar{width:42px;height:42px;flex:none;border:1px solid #cddedc;background:#e4efec;color:#245c55;font-size:13px}
.learning-history-person>div{display:grid;gap:3px;min-width:0}
.learning-history-person strong{color:#284b52;font-size:15px;font-weight:700;line-height:1.3}
.learning-history-person small{color:#536e75;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.history-certificate-shortcut{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:42px;margin-left:auto;padding:8px 12px;border:1px solid #c6ddd5;border-radius:9px;background:#edf7f1;color:#245e4f;font-family:inherit;font-size:12px;font-weight:600;line-height:1.4;cursor:pointer}
.history-certificate-shortcut .icon{width:18px;height:18px}
.history-certificate-shortcut .icon:last-child{width:14px;height:14px}
#learning-history-stats{margin-bottom:28px}
.history-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.history-stat{display:flex;flex-direction:column;min-width:0;padding:17px 18px 18px;border:1px solid #d8e3e6;border-radius:13px;background:#fff;box-shadow:0 3px 8px #1e3b4b04}
.history-stat-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px;color:#48636b;font-size:13px;font-weight:650;line-height:1.3}
.history-stat-icon{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:8px;background:#edf2f5;color:#37576c}
.history-stat-icon .icon{width:17px;height:17px}
.history-stat-value{margin:8px 0 7px;color:#203e4a;font-size:36px;font-weight:750;line-height:1.08;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.history-stat-note{margin-top:auto;color:#536d75;font-size:12px;line-height:1.45}
.history-stat.completed{border-color:#d8e3e6;background:#fff;box-shadow:0 3px 8px #1e3b4b04}
.history-stat.completed .history-stat-heading,.history-stat.completed .history-stat-value{color:#203e4a}
.history-stat.completed .history-stat-note{color:#536d75}
.history-stat.completed .history-stat-icon{background:#e8f6ee;color:#207254}
.history-stat.in-progress .history-stat-icon{background:#fff0db;color:#97570f}
.history-stat.score .history-stat-icon{background:#eeecf8;color:#635089}
.history-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:14px}
.history-section-heading h2{margin:0;color:#203e4a;font-size:22px;letter-spacing:-.5px}
.learning-history-count{color:#536e75;font-size:12px;line-height:1.5;text-align:right}
.history-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.history-filter{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 12px;border:1px solid #cfdde1;border-radius:9px;background:#fff;color:#45616a;font-family:inherit;font-size:12px;font-weight:650;line-height:1.35;cursor:pointer}
.history-filter>span{display:grid;place-items:center;min-width:23px;height:23px;padding:0 5px;border-radius:6px;background:#edf2f3;color:#47616b;font-size:11px;font-variant-numeric:tabular-nums}
.history-filter .icon{width:16px;height:16px}
.history-filter[aria-pressed="true"]{border-color:#254852;background:#254852;color:#fff;box-shadow:0 2px 5px #123c4814}
.history-filter[aria-pressed="true"]>span{background:#ffffff24;color:#fff}
.history-filter:hover:not([aria-pressed="true"]),.history-certificate-shortcut:hover{border-color:#6b9b91;background:#e7f2ee}
.learning-history-toolbar{margin-bottom:16px}
.learning-history-controls{display:flex;align-items:center;gap:16px;min-width:0}
.learning-history-controls .search{flex:1;min-width:0;max-width:none}
.learning-history-controls .search input{height:44px;border-color:#ccdbe0;border-radius:9px;font-size:13px;color:#284953;padding-left:39px}
.learning-history-controls .search input::placeholder{color:#657b83;opacity:1}
.learning-history-controls .search>.icon{left:13px;top:14px;width:17px;height:17px;color:#587780}
.history-sort{display:flex;align-items:center;gap:9px;flex:none;color:#48656e;font-size:12px;white-space:nowrap}
.history-sort .filter-select{height:44px;min-width:184px;border-color:#ccdbe0;border-radius:9px;padding:9px 30px 9px 12px;color:#34555e;font-size:12px}
.history-list{display:grid;gap:14px;list-style:none;margin:0;padding:0}
.history-list[hidden]{display:none}
.history-item{min-width:0;padding:20px 22px;border:1px solid #d6e2e5;border-left:4px solid #b4c6cc;border-radius:12px;background:#fff;box-shadow:0 3px 10px #163e4805}
.history-item.completed{border-left-color:#278366}
.history-item.in_progress{border-left-color:#b9761f}
.history-item:is(.needs_review,.failed){border-left-color:#b3473e}
.history-item:hover{border-top-color:#aec8c8;border-right-color:#aec8c8;border-bottom-color:#aec8c8}
.history-item:focus-within{box-shadow:0 0 0 2px #278b7724}
.history-item-header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:start;gap:14px}
.history-course-symbol{display:grid;place-items:center;width:42px;height:42px;border:1px solid #d9e4e8;border-radius:11px;background:#f0f4f6;color:#526e7c}
.history-course-symbol .icon{width:22px;height:22px;stroke-width:1.8}
.history-item.completed .history-course-symbol{border-color:#c8e4d6;background:#e8f6ee;color:#207254}
.history-item.in_progress .history-course-symbol{border-color:#f0dbb9;background:#fff4e4;color:#925715}
.history-item:is(.needs_review,.failed) .history-course-symbol{border-color:#eecfc9;background:#fff0eb;color:#a04038}
.history-course{min-width:0;white-space:normal}
.history-course h3{margin:0 0 8px;color:#203e4a;font-size:17px;font-weight:700;line-height:1.4;letter-spacing:-.2px;overflow-wrap:anywhere}
.history-course-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;color:#526d76;font-size:12px;line-height:1.4}
.history-cycle-label{padding:2px 7px;border:1px solid #dfe7e9;border-radius:5px;background:#f5f7f8;color:#596f78;font-size:10px;font-weight:600}
.history-cycle-label.current{border-color:#d2e5dd;background:#f0f7f3;color:#376b58}
.history-archived{color:#835d2b;font-size:11px;font-weight:600}
.history-cycle{margin:6px 0 0;color:#607880;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.learning-history-page .history-record{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:7px;min-width:114px;padding-left:5px}
.learning-history-page .history-record .history-certificate{justify-content:center;gap:7px;min-height:42px;padding:9px 12px;border:1px solid #1c6b60;border-radius:8px;background:#1c6b60;color:#fff;font-size:12px;font-weight:650;box-shadow:0 2px 5px #1e655918}
.learning-history-page .history-record .history-certificate:hover{background:#15584f;border-color:#15584f}
.learning-history-page .history-certificate .icon{width:17px;height:17px}
.history-open-record{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:37px;padding:5px 9px;border:1px solid #d3e2e5;border-radius:8px;background:#fff;color:#315e67;font-size:12px;font-weight:650;line-height:1.4;text-decoration:none;white-space:nowrap}
.history-open-record .icon{width:15px;height:15px}
.history-open-record:hover{border-color:#7ca79f;background:#f0f7f5;color:#214e50}
.history-item-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr) minmax(0,1.1fr);gap:22px;margin:18px 0 0 56px;padding-top:16px;border-top:1px solid #e3ebed}
.history-item-details>div{min-width:0}
.history-detail-label{margin-bottom:9px;color:#536f79;font-size:10px;font-weight:700;line-height:1.3;letter-spacing:.075em;text-transform:uppercase}
.history-item .badge{font-size:11px;padding:4px 7px;line-height:1.25}
.history-item.in_progress .badge.blue{background:#fff0d9;color:#8b540d}
.history-item.in_progress .badge.blue .dot{background:currentColor}
.history-progress{display:flex;align-items:center;gap:10px;margin-top:11px;color:#2c4d58}
.history-progress .progress{flex:1;min-width:0;max-width:145px;height:7px;background:#e9eef0}
.history-progress .progress i{background:#859ea8}
.history-item.completed .history-progress .progress i{background:#2e8a6e}
.history-item.in_progress .history-progress .progress i{background:#b97926}
.history-item:is(.needs_review,.failed) .history-progress .progress i{background:#b3473e}
.history-progress strong{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
.history-progress-unreported{margin:10px 0 0;color:#59727b;font-size:12px;line-height:1.5}
.history-score{display:grid;justify-items:start;gap:6px;color:#35545e;font-size:13px;line-height:1.4}
.history-score-value{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.history-score strong{color:#244954;font-size:22px;font-weight:750;font-variant-numeric:tabular-nums;line-height:1.2}
.history-score .reported-outcome{padding:4px 7px;font-size:10px;line-height:1.2}
.history-score small{color:#56717a;font-size:11px;line-height:1.45}
.history-score .history-locked{color:#a04038}
.history-no-result{color:#536f78;font-size:12px;line-height:1.5}
.history-dates{display:grid;gap:6px;margin:0;font-size:12px;line-height:1.4}
.history-dates>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.history-dates dt{color:#56717a;flex:none}
.history-dates dd{display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:5px;margin:0;color:#2f505c;text-align:right;font-weight:550;font-variant-numeric:tabular-nums}
.history-dates .history-date-completed dt,.history-dates .history-date-completed dd{color:#226f53;font-weight:650}
.history-dates .history-date-overdue dt,.history-dates .history-date-overdue dd{color:#a23e37;font-weight:650}
.history-date-overdue dd>span{padding:1px 5px;border-radius:4px;background:#fcece7;font-size:10px}
.history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:260px;padding:34px 26px;border:1px dashed #b9cfd1;border-radius:12px;background:#f9fcfb;color:#536f76;text-align:center}
.history-empty>.icon{width:36px;height:36px;color:#37786d}
.history-empty h3{margin:0;color:#284d54;font-size:20px}
.history-empty p{max-width:430px;margin:0;color:#536f76;font-size:14px;line-height:1.6}
.history-empty .btn{margin-top:4px}
.history-footer{margin:16px 0 0;color:#5d747b;font-size:12px;line-height:1.5}
.learning-history-page :is(button,a,input,select):focus-visible{outline:3px solid #247e72;outline-offset:3px}
@media(max-width:1100px){
  .history-summary{gap:10px}.history-stat{padding:15px 13px}.history-stat-heading{font-size:12px}.history-stat-icon{width:26px;height:26px}.history-stat-value{font-size:32px}
  .history-item{padding:18px}.history-item-details{margin-left:0;gap:16px}.history-certificate-shortcut{font-size:11px}
}
@container learning-history (max-width:650px){
  .history-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.history-stat{padding:17px}.history-stat-heading{font-size:13px}.history-stat-value{font-size:34px}
  .learning-history-person{flex-wrap:wrap}.history-certificate-shortcut{margin-left:54px;font-size:12px}
  .learning-history-controls{flex-wrap:wrap;gap:10px}.learning-history-controls .search{flex:1 1 100%}.history-sort{justify-content:space-between;width:100%}.history-sort .filter-select{flex:1;max-width:260px}
  .history-item-details{grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-left:0}.history-dates-block{grid-column:1/-1;border-top:1px solid #e3ebed;padding-top:14px}.history-dates{max-width:400px}
}
@container learning-history (max-width:420px){
  .history-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.learning-history-count{text-align:left}.history-filters{gap:7px}.history-filter{flex-grow:1}
  .history-item{padding:17px 15px}.history-item-header{grid-template-columns:36px minmax(0,1fr);gap:12px}.history-course-symbol{width:36px;height:36px}.history-course-symbol .icon{width:19px;height:19px}.history-course h3{font-size:16px}
  .learning-history-page .history-record{grid-column:1/-1;flex-direction:row;justify-content:flex-start;padding:0}.history-record>a,.history-record>button{flex:1;min-height:42px}
  .history-item-details{gap:15px}.history-certificate-shortcut{margin-left:0}.history-stat-note{font-size:11px}.history-stat-value{font-size:32px}
}
.course-overlay-time{display:inline-flex;align-items:center;gap:6px;color:#496b75;font-size:12px;font-weight:600;white-space:nowrap}.course-overlay-time:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#e68a3a}
.organization-logo{display:grid;place-items:center;flex:none;overflow:hidden;width:36px;height:36px;border:1px solid #b8d2d6;border-radius:10px;background:#edf5f5;color:#37717a}.organization-logo .icon{width:19px;height:19px}.organization-logo.has-logo{background:#fff}.organization-logo img{display:block;width:100%;height:100%;object-fit:contain}.organization-table-logo{width:36px;height:36px;border-radius:10px}.organization-name{display:flex;align-items:center;gap:10px;min-width:0;margin:0 6px 28px;color:#e7f1f2;font-size:14px;font-weight:650;line-height:1.3}.organization-name>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-organization-logo{width:34px;height:34px;border-color:#47707b;background:#1b4754;color:#b8d7dc}.sidebar-organization-logo.has-logo{background:#f8fbfb;border-color:#86aeb6}.workspace-organization-identity{display:flex;align-items:center;gap:9px;min-width:0;margin:2px 2px 0;padding:8px 9px;border:1px solid #2d5661;border-radius:9px;background:#143641;color:#e7f1f2;font-size:12px;font-weight:650;line-height:1.3}.workspace-organization-identity>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-organization-identity .sidebar-organization-logo{width:29px;height:29px;border-radius:8px}.organization-logo-preview{display:flex;align-items:center;gap:15px;margin:0 0 20px;padding:15px;border:1px solid #d4e2e5;border-radius:11px;background:#f6faf9;color:#34525d}.organization-logo-preview-mark{width:64px;height:64px;border-radius:12px}.organization-logo-preview-mark .icon{width:30px;height:30px}.organization-logo-preview>div{display:grid;gap:4px;min-width:0}.organization-logo-preview strong{font-size:14px;color:#284953}.organization-logo-preview span{overflow:hidden;color:#617b84;font-size:12px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.organization-logo-remove{margin-top:2px;color:#a1473f}.organization-logo-remove:hover{background:#fff0ed;color:#8a3833}

/* Organization themes use a contrast-safe variation of a chosen logo color.
   Completion colors deliberately remain their established green, orange, and red. */
:root{--theme-primary:var(--teal);--theme-primary-deep:var(--teal-deep);--theme-soft:var(--mint);--theme-pale:var(--sky);--theme-canvas:var(--canvas);--theme-glow:#e2f0f2;--theme-sidebar:var(--ink);--theme-sidebar-active:#1c5055;--theme-sidebar-muted:#b7cbd0;--theme-sidebar-light:#f8fbfb;--theme-sidebar-light-soft:#e9f3f2;--theme-sidebar-light-border:#c9dfdc;--theme-sidebar-light-text:#244a50;--theme-sidebar-light-muted:#637b82;--theme-sidebar-light-tree:#9cbfba;--theme-focus:#247e72}
body{background:radial-gradient(circle at 88% -10%,var(--theme-glow) 0,transparent 32%),var(--canvas)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--theme-focus)}
.organization-theme-preview{display:flex;align-items:center;gap:15px;margin:0 0 20px;padding:15px;border:1px solid #d4e2e5;border-radius:11px;background:#f6faf9;color:#34525d}.organization-theme-preview>div{display:grid;gap:4px;min-width:0}.organization-theme-preview strong{font-size:14px;color:#284953}.organization-theme-preview span:not(.organization-theme-swatch){overflow:hidden;color:#617b84;font-size:12px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.organization-theme-swatch{display:block;position:relative;flex:none;width:64px;height:64px;border:1px solid #ffffffbf;border-radius:14px;background:var(--organization-theme-preview);box-shadow:inset 0 0 0 1px #102d3a20,0 4px 11px #102d3a16}.organization-theme-swatch:after{content:'';position:absolute;inset:13px;border:2px solid #ffffffc9;border-radius:9px}.organization-theme-inputs{display:flex;align-items:center;gap:10px}.field input.organization-theme-picker{width:50px;min-width:50px;height:43px;padding:4px;cursor:pointer}.field input#organization-theme-color{max-width:166px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;letter-spacing:.02em;text-transform:uppercase}.organization-theme-reset{margin-top:2px;color:#486771}.organization-theme-reset:hover{background:#edf6f6;color:#254f59}
html[data-organization-theme="custom"] .sidebar{background:var(--theme-sidebar);box-shadow:10px 0 34px #102d3a16}html[data-organization-theme="custom"] .sidebar .brand-mark{background:var(--theme-sidebar-active);color:var(--theme-pale)}html[data-organization-theme="custom"] .sidebar .brand small{color:var(--theme-sidebar-muted)}html[data-organization-theme="custom"] .workspace-switch select{background:var(--theme-sidebar-active);border-color:var(--theme-sidebar-active);color:#fff}html[data-organization-theme="custom"] .workspace-switch .eyebrow,html[data-organization-theme="custom"] .nav-label{color:var(--theme-sidebar-muted)}html[data-organization-theme="custom"] .nav a{color:var(--theme-sidebar-muted)}html[data-organization-theme="custom"] .nav a.active{background:var(--theme-sidebar-active);color:#fff}html[data-organization-theme="custom"] .nav a:hover{background:var(--theme-sidebar-active);color:#fff}html[data-organization-theme="custom"] .workspace-organization-identity{border-color:var(--theme-sidebar-active);background:var(--theme-sidebar-active)}html[data-organization-theme="custom"] .sidebar-organization-logo{border-color:var(--theme-sidebar-muted);background:var(--theme-sidebar-active);color:var(--theme-sidebar-muted)}html[data-organization-theme="custom"] .sidebar-footer{color:var(--theme-sidebar-muted)}html[data-organization-theme="custom"] .sidebar-footer .dot{background:var(--theme-pale)}html[data-organization-theme="custom"] .sidebar-account{border-top-color:var(--theme-sidebar-active)}html[data-organization-theme="custom"] .sidebar-account .avatar{background:var(--theme-pale);color:var(--theme-primary-deep)}html[data-organization-theme="custom"] .sidebar-account-name span,html[data-organization-theme="custom"] .sidebar-account .btn-icon{color:var(--theme-sidebar-muted)}html[data-organization-theme="custom"] .sidebar-account .btn-icon:hover{background:var(--theme-sidebar-active);color:#fff}html[data-organization-theme="custom"] .btn.ghost:hover,html[data-organization-theme="custom"] .btn-icon:hover{background:var(--theme-soft)}html[data-organization-theme="custom"] .course-overlay-mark{background:var(--theme-soft);color:var(--theme-primary)}
@media(max-width:480px){.organization-theme-inputs{align-items:stretch}.field input#organization-theme-color{max-width:none;flex:1}}

/* Separate personal learning from role-based administration. Organization
   context and account controls remain fixed while the active area scrolls. */
.sidebar .brand{margin-bottom:24px}
.sidebar-organization-context{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;min-width:0;margin:0 6px 16px}
.sidebar-organization-context .organization-name,.sidebar-organization-context .workspace-organization-identity{min-width:0;margin:0}
.workspace-switch{margin-bottom:16px}
.workspace-switch .sidebar-organization-context{margin:8px 0 0}
.sidebar-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;flex:none;margin:0 6px 16px;padding:4px;border:1px solid #315966;border-radius:11px;background:#0d2732}
.sidebar-mode-switch--single{grid-template-columns:minmax(0,1fr)}
.sidebar-mode-switch a{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:40px;padding:8px;border-radius:7px;color:#9fb9c0;font-size:12px;font-weight:650;line-height:1.2;text-decoration:none;white-space:nowrap}
.sidebar-mode-switch a:hover{background:#173f4a;color:#fff}
.sidebar-mode-switch a.active{background:#24625e;color:#fff;box-shadow:0 2px 7px #071b2b42}
.sidebar-mode-switch a:focus-visible{outline:3px solid #8cd1c7;outline-offset:1px}
.sidebar-mode-switch .icon{width:15px;height:15px;flex:none}
.workspace-navigation{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
.sidebar-navigation{min-height:0;flex:1;overflow-x:hidden;overflow-y:auto;margin-right:-6px;padding-right:6px;scrollbar-color:#426872 transparent;scrollbar-width:thin}
.sidebar-navigation>.nav{min-width:0;padding-bottom:10px}
.sidebar-bottom{flex:none;margin-top:0;padding-top:12px;background:var(--theme-sidebar)}
html[data-organization-theme="custom"] .sidebar-mode-switch{border-color:var(--theme-sidebar-active);background:color-mix(in srgb,var(--theme-sidebar) 82%,#000)}
html[data-organization-theme="custom"] .sidebar-mode-switch a{color:var(--theme-sidebar-muted)}
html[data-organization-theme="custom"] .sidebar-mode-switch a.active{background:var(--theme-sidebar-active);color:#fff}
html[data-organization-theme="custom"] .sidebar-bottom{background:var(--theme-sidebar)}

/* A light organization rail keeps the same brand color for selected controls
   while giving teams with lighter logos a high-contrast workspace option.
   Learning-state green, orange, and red remain intentionally untouched. */
.organization-theme-preview-navigation{margin-top:2px;color:#466b73!important;font-size:11px!important;font-weight:700;letter-spacing:.01em}.organization-theme-swatch.is-light-navigation{background:linear-gradient(90deg,var(--organization-theme-preview) 0 27%,#f9fcfc 27%)}.organization-theme-swatch.is-light-navigation:after{left:35px;border-color:#48717a99}.organization-theme-navigation-option{margin:3px 0 18px}
html[data-organization-navigation="light"] .sidebar{background:linear-gradient(180deg,var(--theme-sidebar-light) 0%,#fff 72%);border-right:1px solid var(--theme-sidebar-light-border);box-shadow:8px 0 28px #153c4510}
html[data-organization-navigation="light"] .sidebar .brand{color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar .brand-mark{background:var(--theme-primary);color:#fff}
html[data-organization-navigation="light"] .sidebar .brand small{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .workspace-switch select{background:#fff;border-color:var(--theme-sidebar-light-border);color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .workspace-switch .eyebrow,html[data-organization-navigation="light"] .nav-label{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .organization-name{color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .workspace-organization-identity{border-color:var(--theme-sidebar-light-border);background:var(--theme-sidebar-light-soft);color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar-organization-logo{border-color:var(--theme-sidebar-light-border);background:#fff;color:var(--theme-primary)}
html[data-organization-navigation="light"] .sidebar-organization-logo.has-logo{border-color:var(--theme-sidebar-light-border);background:#fff}
html[data-organization-navigation="light"] .sidebar-mode-switch{border-color:var(--theme-sidebar-light-border);background:#fff}
html[data-organization-navigation="light"] .sidebar-mode-switch a{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .sidebar-mode-switch a:hover{background:var(--theme-sidebar-light-soft);color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar-mode-switch a.active{background:var(--theme-primary);color:#fff;box-shadow:0 2px 7px #102d3a1f}
html[data-organization-navigation="light"] .nav a{color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .nav a:hover{background:var(--theme-sidebar-light-soft);color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .nav a.active{background:var(--theme-primary);color:#fff}
html[data-organization-navigation="light"] .sidebar-tip{border-color:var(--theme-sidebar-light-border);background:var(--theme-sidebar-light-soft);color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar-tip strong{color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar-tip .icon{color:var(--theme-primary)}
html[data-organization-navigation="light"] .sidebar-navigation{scrollbar-color:var(--theme-sidebar-light-border) transparent}
html[data-organization-navigation="light"] .sidebar-bottom{background:transparent}
html[data-organization-navigation="light"] .sidebar-footer{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .sidebar-footer .dot{background:var(--theme-primary)}
html[data-organization-navigation="light"] .sidebar-account{border-top-color:var(--theme-sidebar-light-border)}
html[data-organization-navigation="light"] .sidebar-account .avatar{background:var(--theme-sidebar-light-soft);color:var(--theme-primary-deep)}
html[data-organization-navigation="light"] .sidebar-account-name strong{color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar-account-name span,html[data-organization-navigation="light"] .sidebar-account .btn-icon{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .sidebar-account .btn-icon:hover{background:var(--theme-sidebar-light-soft);color:var(--theme-primary)}

/* The learner tree uses the lighter rail's neutral connector and typography;
   its completion and result indicators keep their established state colors. */
html[data-organization-navigation="light"] .learning-tree,html[data-organization-navigation="light"] .learning-tree-children{--tree-connector:var(--theme-sidebar-light-tree)}
html[data-organization-navigation="light"] .sidebar .nav .learning-tree-link{color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar .nav .learning-tree-link:hover{background:var(--theme-sidebar-light-soft);color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar .nav .learning-tree-link.active{background:var(--theme-primary);color:#fff}
html[data-organization-navigation="light"] .learning-tree-label small{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .learning-tree-link.active .learning-tree-label small,html[data-organization-navigation="light"] .learning-tree-link:hover .learning-tree-label small{color:inherit}
html[data-organization-navigation="light"] .learning-tree-label .learning-tree-result{color:#27775e}
html[data-organization-navigation="light"] .learning-tree-link.active .learning-tree-label .learning-tree-result,html[data-organization-navigation="light"] .learning-tree-link:hover .learning-tree-label .learning-tree-result{color:inherit}
html[data-organization-navigation="light"] .learning-tree-root.active{background:var(--theme-primary)}
html[data-organization-navigation="light"] .learning-tree-root:not(.active):hover{background:var(--theme-sidebar-light-soft)}
html[data-organization-navigation="light"] .learning-tree-root.active .learning-tree-link,html[data-organization-navigation="light"] .learning-tree-root.active .learning-tree-link.active{color:#fff}
html[data-organization-navigation="light"] .learning-tree-root.active .learning-tree-label small,html[data-organization-navigation="light"] .learning-tree-root.active .learning-tree-label .learning-tree-result{color:#fff}
html[data-organization-navigation="light"] .learning-tree-toggle{border-color:var(--theme-sidebar-light-border);background:#fff;color:var(--theme-primary);box-shadow:0 1px 3px #102d3a16}
html[data-organization-navigation="light"] .learning-tree-toggle:hover{border-color:var(--theme-primary);background:var(--theme-sidebar-light-soft);color:var(--theme-primary-deep)}
html[data-organization-navigation="light"] .learning-tree-root .learning-tree-toggle,html[data-organization-navigation="light"] .learning-tree-root.active .learning-tree-toggle{border-color:#ffffffaa;background:#ffffff1a;color:#fff}
html[data-organization-navigation="light"] .learning-tree-root:not(.active) .learning-tree-toggle{border-color:var(--theme-sidebar-light-border);background:#fff;color:var(--theme-primary)}
html[data-organization-navigation="light"] .learning-tree-sort-button{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .learning-tree-sort-button:hover{background:var(--theme-sidebar-light-soft);color:var(--theme-primary-deep)}
html[data-organization-navigation="light"] .learning-tree-sort-button[aria-pressed="true"]{border-color:var(--theme-sidebar-light-border);background:var(--theme-primary);color:#fff}
html[data-organization-navigation="light"] .sidebar .nav .learning-tree-link.learning-tree-static,html[data-organization-navigation="light"] .sidebar .nav .learning-tree-link.learning-tree-static:hover{background:transparent;color:var(--theme-sidebar-light-text)}
html[data-organization-navigation="light"] .sidebar .nav .learning-tree-link.learning-tree-static .learning-tree-label small{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .learning-tree-message{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .learning-tree-message .spinner{border-color:var(--theme-sidebar-light-border);border-top-color:var(--theme-primary)}

/* Carry a custom organization color through the shared workspace chrome and
   administration controls. Learning-state treatments intentionally retain
   their own green, orange, and red meanings. */
html[data-organization-theme="custom"]{
  --organization-theme-ink:color-mix(in srgb,var(--theme-primary-deep) 76%,#182e3b);
  --organization-theme-muted:color-mix(in srgb,var(--theme-primary-deep) 48%,#667581);
  --organization-theme-border:color-mix(in srgb,var(--theme-primary) 26%,#d9e2e7);
  --organization-theme-border-subtle:color-mix(in srgb,var(--theme-primary) 14%,#d9e2e7);
  --organization-theme-surface:color-mix(in srgb,var(--theme-primary) 5%,#fff);
  --organization-theme-surface-strong:color-mix(in srgb,var(--theme-primary) 11%,#fff);
  --organization-theme-shadow:color-mix(in srgb,var(--theme-primary-deep) 16%,transparent);
}

/* Shared actions, controls, and form states. */
html[data-organization-theme="custom"] .btn:not(.secondary):not(.ghost):not(.danger):not(.archived):not(.completed){background:var(--theme-primary)}
html[data-organization-theme="custom"] .btn:not(.secondary):not(.ghost):not(.danger):not(.archived):not(.completed):hover{background:var(--theme-primary-deep);box-shadow:0 5px 12px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .btn.secondary{border-color:var(--organization-theme-border);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .btn.secondary:hover{border-color:var(--theme-primary);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .btn.ghost{color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .btn.ghost:hover{background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.main-wrap,dialog) .btn-icon{color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.main-wrap,dialog) .btn-icon:hover{background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.field input,.field select,.field textarea,.demo-selector select,.filter-select,.search input,.catalog-sort select){border-color:var(--organization-theme-border);color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.field input,.field select,.field textarea,.demo-selector select,.filter-select,.search input,.catalog-sort select):focus{border-color:var(--theme-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary) 18%,transparent);outline:0}
html[data-organization-theme="custom"] .check-item{border-color:var(--organization-theme-border);color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .check-item:has(input:checked){border-color:var(--theme-primary);background:var(--theme-soft)}
html[data-organization-theme="custom"] .check-item small{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .inline-message:not(.error){border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .toast:not(.error){background:var(--theme-primary);box-shadow:0 8px 22px var(--organization-theme-shadow)}

/* Shared app surfaces, tables, catalogs, and upload administration. */
html[data-organization-theme="custom"] .topbar{border-bottom-color:var(--organization-theme-border-subtle);box-shadow:0 1px 0 var(--organization-theme-shadow)}
html[data-organization-theme="custom"] :is(.breadcrumb strong,.learning-history-page .page-heading h1){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.main-wrap,dialog) .avatar{background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.panel,.stat,.course-card,.launch-panel,.scorm-player,.catalog-toolbar){border-color:var(--organization-theme-border);box-shadow:0 3px 14px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] :is(.toolbar,.modal-head,.modal-footer,.scorm-player-head,.scorm-player-note){border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] :is(.modal-footer,.scorm-player-note){background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] tbody tr:hover{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .tag:not(.reported-outcome){border-color:var(--organization-theme-border);background:var(--organization-theme-surface);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.search .icon,.course-provider .icon,.stat .icon){color:var(--theme-primary)}
html[data-organization-theme="custom"] .catalog-sort{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .catalog-count{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .import-area{border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .import-area .icon{color:var(--theme-primary)}
html[data-organization-theme="custom"] .import-summary span{border-color:var(--organization-theme-border);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-upload-type{border-color:var(--organization-theme-border);color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .course-upload-type:hover{border-color:var(--theme-primary);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-upload-type input{accent-color:var(--theme-primary)}
html[data-organization-theme="custom"] :is(.course-upload-details,.cmi5-outline-preview){border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] :is(.course-upload-details summary,.cmi5-outline-preview summary){color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .scorm-package-inspection:not(:has(.scorm-inspection-warning)){border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .scorm-package-inspection:not(:has(.scorm-inspection-warning)) :is(.scorm-inspection-label,strong,.scorm-inspection-good){color:var(--theme-primary-deep)}

/* Shared learning highlights and catalog artwork use the organization
   palette. Artwork variants retain subtle tonal variety within that color. */
html[data-organization-theme="custom"] .progress-feature{background:linear-gradient(145deg,var(--theme-primary-deep),var(--theme-primary));box-shadow:0 14px 32px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .progress-feature :is(.eyebrow,p,.feature-bottom){color:color-mix(in srgb,#fff 76%,var(--theme-pale))}
html[data-organization-theme="custom"] .progress-feature .feature-bottom{border-color:color-mix(in srgb,#fff 24%,transparent)}
html[data-organization-theme="custom"] .progress-feature .ring{background:conic-gradient(var(--theme-pale) var(--progress),color-mix(in srgb,#fff 20%,transparent) 0)}
html[data-organization-theme="custom"] .progress-feature .ring-inner{background:color-mix(in srgb,var(--theme-primary-deep) 84%,#102d3a)}
html[data-organization-theme="custom"] .progress-feature .ring-inner small{color:color-mix(in srgb,#fff 70%,var(--theme-pale))}
html[data-organization-theme="custom"] .catalog-toolbar{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-art:not(.blue):not(.sand){background:radial-gradient(circle at 88% 6%,color-mix(in srgb,#fff 62%,transparent) 0,transparent 34%),linear-gradient(135deg,var(--organization-theme-surface-strong),var(--theme-pale));color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-art.blue{background:radial-gradient(circle at 12% 12%,color-mix(in srgb,#fff 68%,transparent) 0,transparent 35%),linear-gradient(135deg,var(--theme-pale),var(--theme-soft));color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-art.sand{background:radial-gradient(circle at 86% 10%,color-mix(in srgb,#fff 64%,transparent) 0,transparent 34%),linear-gradient(135deg,var(--theme-soft),var(--organization-theme-surface-strong));color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-card h3{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.course-card .course-provider,.course-card .course-meta){color:var(--organization-theme-muted)}

/* Course launch chrome uses the organization color without changing the
   embedded course or native lesson visuals. */
html[data-organization-theme="custom"] .btn.course-launch-action:not(.archived){background:var(--theme-primary);color:#fff}
html[data-organization-theme="custom"] .btn.course-launch-action:not(.archived):hover{background:var(--theme-primary-deep);box-shadow:0 3px 7px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .course-overlay:not(.course-overlay-native){border-color:var(--organization-theme-border);background:var(--organization-theme-surface);box-shadow:0 30px 90px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .course-overlay:not(.course-overlay-native) :is(.course-overlay-head,.course-overlay-foot){border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] .course-overlay:not(.course-overlay-native) .course-overlay-mark{background:var(--theme-soft);color:var(--theme-primary)}
html[data-organization-theme="custom"] .course-overlay:not(.course-overlay-native) .course-overlay-foot{background:var(--organization-theme-surface);color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .course-overlay:not(.course-overlay-native) :is(.course-overlay-status,.course-overlay-time){color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-overlay:not(.course-overlay-native) :is(.course-overlay-status .icon,.course-overlay-foot .icon){color:var(--theme-primary)}
html[data-organization-theme="custom"] .external-course-overlay-body{background:radial-gradient(circle at 86% 0,var(--theme-pale),transparent 38%),var(--theme-canvas)}
html[data-organization-theme="custom"] .external-course-overlay-icon{background:var(--theme-soft);color:var(--theme-primary)}
html[data-organization-theme="custom"] .scorm-sco-navigation{border-color:var(--organization-theme-border-subtle);background:var(--organization-theme-surface)}

/* Course overview cards are workspace surfaces. Completion and result colors
   retain their status-specific rules above. */
html[data-organization-theme="custom"] .course-detail-hero{border-color:var(--organization-theme-border);background:linear-gradient(125deg,#fff 0%,var(--organization-theme-surface) 59%,var(--theme-pale) 100%);box-shadow:0 12px 28px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .course-detail-hero::before{border-color:var(--organization-theme-border)}
html[data-organization-theme="custom"] :is(.course-detail-hero-top,.course-detail-fact-groups>.course-detail-metadata-facts){border-color:var(--organization-theme-border);box-shadow:0 3px 12px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] :is(.course-detail-launch,.course-detail-progress-block,.course-detail-facts-group,.course-detail-completion-criteria,.course-detail-support .course-detail-reported-facts){border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] :is(.course-detail-launch,.course-detail-metadata-facts>div,.course-detail-support .course-detail-reported-facts .course-detail-facts>div){border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] :is(.course-detail-launch span,.course-detail-progress-block span,.course-detail-completion-criteria span,.course-detail-support .course-detail-facts-group-label){color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] :is(.course-detail-launch p,.course-detail-progress-block strong,.course-detail-completion-criteria strong){color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-detail-about-icon{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary)}

/* Learning history has its own dense controls; only neutral and action colors
   follow the organization palette. Its passed, in-progress, and failed cues
   remain stable learning-state colors. */
html[data-organization-theme="custom"] .learning-history-page{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .learning-history-person .avatar{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.learning-history-person strong,.history-section-heading h2,.history-course h3,.history-stat-value){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.history-stat,.history-filter,.history-open-record,.learning-history-controls .search input,.history-sort .filter-select){border-color:var(--organization-theme-border)}
html[data-organization-theme="custom"] :is(.history-stat-heading,.history-stat-note,.learning-history-count,.history-sort,.history-course-meta,.history-cycle,.history-detail-label,.history-score,.history-dates dt,.history-dates dd,.history-progress-unreported,.history-empty,.history-footer){color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] :is(.history-stat-icon,.history-filter>span,.history-course-symbol){background:var(--organization-theme-surface);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .history-filter[aria-pressed="true"]{border-color:var(--theme-primary);background:var(--theme-primary);color:#fff;box-shadow:0 2px 5px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .history-filter:hover:not([aria-pressed="true"]),html[data-organization-theme="custom"] .history-certificate-shortcut:hover{border-color:var(--theme-primary);background:var(--theme-soft)}
html[data-organization-theme="custom"] .history-certificate-shortcut{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .learning-history-page .history-record .history-certificate{border-color:var(--theme-primary);background:var(--theme-primary);color:#fff}
html[data-organization-theme="custom"] .learning-history-page .history-record .history-certificate:hover{border-color:var(--theme-primary-deep);background:var(--theme-primary-deep);color:#fff}
html[data-organization-theme="custom"] .history-open-record{color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .history-open-record:hover{border-color:var(--theme-primary);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .history-item:not(.completed):not(.in_progress):not(.failed){border-color:var(--organization-theme-border);border-left-color:var(--theme-primary);box-shadow:0 3px 10px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .history-item:not(.completed):not(.in_progress):not(.failed):hover{border-color:var(--theme-primary)}
html[data-organization-theme="custom"] .history-item:focus-within{box-shadow:0 0 0 2px color-mix(in srgb,var(--theme-primary) 24%,transparent)}
html[data-organization-theme="custom"] .history-item-details{border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] .learning-history-page :is(button,a,input,select):focus-visible{outline-color:var(--theme-focus)}

/* Branding management previews the color that will be used across the app. */
html[data-organization-theme="custom"] :is(.organization-logo:not(.sidebar-organization-logo),.organization-logo-preview,.organization-theme-preview){border-color:var(--organization-theme-border);background:var(--organization-theme-surface);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.organization-logo-preview strong,.organization-theme-preview strong){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.organization-logo-preview span,.organization-theme-preview span:not(.organization-theme-swatch)){color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .organization-theme-reset{color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .organization-theme-reset:hover{background:var(--theme-soft);color:var(--theme-primary-deep)}

.organization-branding-form>.invite-note{margin:0 0 18px}
.organization-branding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.organization-branding-section{display:flex;min-width:0;flex-direction:column;padding:19px;border:1px solid #d9e5e6;border-radius:13px;background:#fbfdfc}
.organization-branding-section-heading{display:flex;align-items:center;gap:11px;margin-bottom:16px}
.organization-branding-section-heading>div{display:grid;gap:2px;min-width:0}
.organization-branding-section-heading h3{margin:0;color:#284b53;font-size:16px}
.organization-branding-section-heading p{margin:0;color:#70868b;font-size:11px;line-height:1.4}
.organization-branding-section-icon{display:grid;width:36px;height:36px;place-items:center;flex:none;border:1px solid #d2e4e1;border-radius:10px;background:#eaf5f3;color:#24756d}
.organization-branding-section-icon .icon{width:18px;height:18px}
.organization-branding-section .organization-logo-preview,.organization-branding-section .organization-theme-preview{min-height:94px;margin-bottom:16px;padding:14px}
.organization-branding-section .organization-logo-preview-mark,.organization-branding-section .organization-theme-swatch{width:58px;height:58px}
.organization-branding-section>.btn{align-self:flex-start;margin-top:auto}
html[data-organization-theme="custom"] .organization-branding-section{border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .organization-branding-section-heading h3{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .organization-branding-section-heading p{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .organization-branding-section-icon{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary)}
@media(max-width:680px){.organization-branding-grid{grid-template-columns:1fr}.organization-branding-section{padding:16px}}

/* Every interactive part of the workspace rail shares one semantic palette.
   This keeps tree controls, hover states, sort controls, and course launch
   actions in step with the organization color, while learning-status colors
   remain intentionally outside this palette. */
.sidebar{
  --sidebar-interactive:#173f4a;
  --sidebar-interactive-strong:#1c5055;
  --sidebar-interactive-border:#315966;
  --sidebar-quiet-surface:#0d2732;
  --sidebar-control-background:#173f4a;
  --sidebar-control-border:#5c8790;
  --sidebar-control-color:#d8f0ec;
  --sidebar-control-hover-background:#24635f;
  --sidebar-control-hover-border:#a4ded5;
  --sidebar-control-hover-color:#fff;
  --sidebar-root-control-background:#1b5e5b;
  --sidebar-root-control-hover-background:#27736d;
  --sidebar-tree-text:#c0d0d4;
  --sidebar-tree-muted:#8ca8af;
  --sidebar-tree-hover-background:#173f4a;
  --sidebar-tree-hover-color:#fff;
  --sidebar-tree-active-background:#1c5055;
  --sidebar-tree-active-color:#fff;
  --sidebar-tree-connector:#315763;
  --sidebar-action-background:#4b5fc2;
  --sidebar-action-hover-background:#6275d3;
  --sidebar-action-border:#eef4ff;
  --sidebar-action-hover-border:#fff;
  --sidebar-focus-color:#8cd1c7;
  --sidebar-scrollbar:#426872;
}

html[data-organization-theme="custom"] .sidebar{
  --sidebar-interactive:var(--theme-sidebar-active);
  --sidebar-interactive-strong:var(--theme-sidebar-active);
  --sidebar-interactive-border:var(--theme-sidebar-active);
  --sidebar-quiet-surface:color-mix(in srgb,var(--theme-sidebar) 82%,#000);
  --sidebar-control-background:var(--theme-sidebar-active);
  --sidebar-control-border:var(--theme-sidebar-muted);
  --sidebar-control-color:var(--theme-pale);
  --sidebar-control-hover-background:var(--theme-primary);
  --sidebar-control-hover-border:var(--theme-pale);
  --sidebar-control-hover-color:#fff;
  --sidebar-root-control-background:var(--theme-primary);
  --sidebar-root-control-hover-background:var(--theme-primary-deep);
  --sidebar-tree-text:var(--theme-sidebar-muted);
  --sidebar-tree-muted:color-mix(in srgb,var(--theme-sidebar-muted) 72%,var(--theme-sidebar));
  --sidebar-tree-hover-background:var(--theme-sidebar-active);
  --sidebar-tree-hover-color:#fff;
  --sidebar-tree-active-background:var(--theme-sidebar-active);
  --sidebar-tree-active-color:#fff;
  --sidebar-tree-connector:color-mix(in srgb,var(--theme-sidebar-muted) 58%,transparent);
  --sidebar-action-background:var(--theme-primary);
  --sidebar-action-hover-background:var(--theme-primary-deep);
  --sidebar-action-border:color-mix(in srgb,#fff 86%,var(--theme-primary));
  --sidebar-action-hover-border:#fff;
  --sidebar-focus-color:var(--theme-pale);
  --sidebar-scrollbar:color-mix(in srgb,var(--theme-sidebar-muted) 52%,var(--theme-sidebar));
}

html[data-organization-navigation="light"] .sidebar{
  --sidebar-interactive:var(--theme-sidebar-light-soft);
  --sidebar-interactive-strong:var(--theme-primary);
  --sidebar-interactive-border:var(--theme-sidebar-light-border);
  --sidebar-quiet-surface:#fff;
  --sidebar-control-background:#fff;
  --sidebar-control-border:var(--theme-sidebar-light-border);
  --sidebar-control-color:var(--theme-primary);
  --sidebar-control-hover-background:var(--theme-sidebar-light-soft);
  --sidebar-control-hover-border:var(--theme-primary);
  --sidebar-control-hover-color:var(--theme-primary-deep);
  --sidebar-root-control-background:var(--theme-primary);
  --sidebar-root-control-hover-background:var(--theme-primary-deep);
  --sidebar-tree-text:var(--theme-sidebar-light-text);
  --sidebar-tree-muted:var(--theme-sidebar-light-muted);
  --sidebar-tree-hover-background:var(--theme-sidebar-light-soft);
  --sidebar-tree-hover-color:var(--theme-sidebar-light-text);
  --sidebar-tree-active-background:var(--theme-primary);
  --sidebar-tree-active-color:#fff;
  --sidebar-tree-connector:var(--theme-sidebar-light-tree);
  --sidebar-action-background:var(--theme-primary);
  --sidebar-action-hover-background:var(--theme-primary-deep);
  --sidebar-action-border:var(--theme-primary);
  --sidebar-action-hover-border:var(--theme-primary-deep);
  --sidebar-focus-color:var(--theme-primary);
  --sidebar-scrollbar:var(--theme-sidebar-light-border);
}

/* General administration navigation and the learning/admin mode switch. */
.sidebar .nav>a{color:var(--sidebar-tree-text)}
.sidebar .nav>a:hover{background:var(--sidebar-tree-hover-background);color:var(--sidebar-tree-hover-color)}
.sidebar .nav>a.active{background:var(--sidebar-tree-active-background);color:var(--sidebar-tree-active-color)}
.sidebar-mode-switch{border-color:var(--sidebar-interactive-border);background:var(--sidebar-quiet-surface)}
.sidebar-mode-switch a{color:var(--sidebar-tree-text)}
.sidebar-mode-switch a:hover{background:var(--sidebar-interactive);color:var(--sidebar-tree-hover-color)}
.sidebar-mode-switch a.active{background:var(--sidebar-interactive-strong);color:var(--sidebar-tree-active-color)}
.sidebar-mode-switch a:focus-visible{outline-color:var(--sidebar-focus-color)}
.sidebar-navigation{scrollbar-color:var(--sidebar-scrollbar) transparent}

/* The tree's structure and actions inherit the rail palette, not its
   completion state. That leaves checkmarks, clocks, PASS, and FAIL intact. */
.sidebar .learning-tree,.sidebar .learning-tree-children{--tree-connector:var(--sidebar-tree-connector)}
.sidebar .nav .learning-tree-link{color:var(--sidebar-tree-text)}
.sidebar .nav .learning-tree-link:hover{background:var(--sidebar-tree-hover-background);color:var(--sidebar-tree-hover-color)}
.sidebar .nav .learning-tree-link.active{background:var(--sidebar-tree-active-background);color:var(--sidebar-tree-active-color)}
.sidebar .learning-tree-label small{color:var(--sidebar-tree-muted)}
.sidebar .learning-tree-link.active .learning-tree-label small,.sidebar .learning-tree-link:hover .learning-tree-label small{color:inherit}
.sidebar .learning-tree-root.active{background:var(--sidebar-tree-active-background)}
.sidebar .learning-tree-root:not(.active):hover{background:var(--sidebar-tree-hover-background)}
.sidebar .learning-tree-root.active>.learning-tree-link{background:transparent;color:var(--sidebar-tree-active-color)}
.sidebar .learning-tree-root.active .learning-tree-label small{color:inherit}
.sidebar .nav .learning-tree-link.learning-tree-static,.sidebar .nav .learning-tree-link.learning-tree-static:hover{background:transparent;color:var(--sidebar-tree-text)}
.sidebar .nav .learning-tree-link.learning-tree-static .learning-tree-label small{color:var(--sidebar-tree-muted)}
.sidebar .learning-tree-message{color:var(--sidebar-tree-muted)}
.sidebar .learning-tree-message .spinner{border-color:var(--sidebar-interactive-border);border-top-color:var(--sidebar-focus-color)}
.sidebar .learning-tree-message.error button{color:var(--sidebar-focus-color)}

.sidebar .learning-tree-toggle{border-color:var(--sidebar-control-border);background:var(--sidebar-control-background);color:var(--sidebar-control-color)}
.sidebar .learning-tree-toggle:hover{border-color:var(--sidebar-control-hover-border);background:var(--sidebar-control-hover-background);color:var(--sidebar-control-hover-color)}
.sidebar .learning-tree-toggle:focus-visible{outline-color:var(--sidebar-focus-color)}
.sidebar .learning-tree-root .learning-tree-toggle,.sidebar .learning-tree-root.active .learning-tree-toggle{border-color:var(--sidebar-control-border);background:var(--sidebar-root-control-background);color:#fff}
.sidebar .learning-tree-root .learning-tree-toggle:hover{border-color:var(--sidebar-control-hover-border);background:var(--sidebar-root-control-hover-background);color:#fff}
.sidebar .learning-tree-sort-button{color:var(--sidebar-tree-muted)}
.sidebar .learning-tree-sort-button:hover{background:var(--sidebar-interactive);color:var(--sidebar-tree-hover-color)}
.sidebar .learning-tree-sort-button[aria-pressed="true"]{border-color:var(--sidebar-interactive-border);background:var(--sidebar-interactive-strong);color:var(--sidebar-tree-active-color)}
.sidebar .learning-tree-sort-button:focus-visible{outline-color:var(--sidebar-focus-color)}
.sidebar .learning-tree-quick-launch::before{border-color:var(--sidebar-action-border);background:var(--sidebar-action-background)}
.sidebar .learning-tree-quick-launch:hover::before{border-color:var(--sidebar-action-hover-border);background:var(--sidebar-action-hover-background)}
.sidebar .learning-tree-quick-launch:focus-visible{outline-color:var(--sidebar-focus-color)}
.sidebar .learning-tree-quick-launch.sequential-locked{color:#bac5c5}
.sidebar .learning-tree-quick-launch.sequential-locked::before,
.sidebar .learning-tree-quick-launch.sequential-locked:hover::before{border-color:#718287;background:#43575c;box-shadow:none;transform:none}
html[data-organization-navigation="light"] .sidebar .learning-tree-quick-launch.sequential-locked{color:#879391}
html[data-organization-navigation="light"] .sidebar .learning-tree-quick-launch.sequential-locked::before,
html[data-organization-navigation="light"] .sidebar .learning-tree-quick-launch.sequential-locked:hover::before{border-color:#cbd5d3;background:#e5eae8}

/* Keep the primary overview action distinct while presenting organization
   preferences as one compact, related control. */
.organization-overview-heading{
  display:grid;
  grid-template-columns:minmax(250px,1fr) auto;
  align-items:start;
}
.organization-overview-heading>.button-row{
  justify-content:flex-end;
  flex-wrap:nowrap;
}
.organization-overview-settings{
  display:flex;
  align-items:center;
  gap:2px;
  padding:3px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.organization-overview-settings .btn{min-height:36px}
html[data-organization-theme="custom"] .organization-overview-settings{
  border-color:var(--organization-theme-border);
  background:var(--organization-theme-surface);
}
@media(max-width:1050px){
  .organization-overview-heading{grid-template-columns:1fr}
  .organization-overview-heading>.button-row{
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}
@media(max-width:680px){
  .organization-overview-heading>.button-row{width:100%}
  .organization-overview-heading>.button-row>.btn{flex:1}
  .organization-overview-settings{flex:1}
  .organization-overview-settings .btn{flex:1}
}

/* The overview table is the useful part of this section, so it gets the full
   row. The former tall completion card is reduced to one current-status chip. */
.overview-learning-panel{margin-bottom:26px}
.overview-learning-panel .panel-head{align-items:center}
.overview-panel-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.overview-in-progress{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border:1px solid #dce7e5;
  border-radius:999px;
  background:#f3f8f7;
  color:#55716f;
  font-size:12px;
  white-space:nowrap;
}
.overview-in-progress .icon{width:14px;height:14px;color:#327b72}
.overview-in-progress strong{color:#244f4a;font-size:13px}
.overview-table{table-layout:fixed;min-width:700px}
.overview-table .overview-person-column{width:25%}
.overview-table .overview-course-column{width:32%}
.overview-table .overview-progress-column{width:20%}
.overview-table .overview-result-column{width:23%}
.overview-table th,.overview-table td{padding:16px 18px;vertical-align:middle;white-space:normal}
.overview-table .person,.overview-table .person>div{min-width:0}
.overview-table .person strong,.overview-table .person small{
  overflow:hidden;
  max-width:100%;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.overview-table .table-course{min-width:0;max-width:none;overflow-wrap:anywhere}
.overview-table .row-progress{max-width:150px;margin-top:9px}
.overview-table .row-progress .progress{width:auto;min-width:52px;flex:1}
.overview-table .assignment-result{min-width:0}
.overview-result-empty{color:#738580;font-size:12px}
html[data-organization-theme="custom"] .overview-in-progress{
  border-color:var(--organization-theme-border);
  background:var(--organization-theme-surface);
  color:var(--organization-theme-muted);
}
html[data-organization-theme="custom"] .overview-in-progress .icon,
html[data-organization-theme="custom"] .overview-in-progress strong{color:var(--theme-primary-deep)}
@media(max-width:680px){
  .overview-learning-panel .panel-head{align-items:flex-start;flex-direction:column}
  .overview-panel-actions{width:100%;justify-content:space-between}
  .overview-in-progress{min-height:32px;font-size:11px}
}

.page-back-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:0;
  color:#56716c;
  font-size:11px;
  font-weight:650;
  line-height:1.25;
  text-decoration:none;
}
.page-back-link .icon{width:13px;height:13px}
.page-back-link:hover{color:#245f57;text-decoration:underline;text-underline-offset:3px}
html[data-organization-theme="custom"] .page-back-link{color:var(--theme-primary-deep)}
.page-heading-context{
  display:flex;
  min-height:16px;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
}
.page-heading .page-heading-context .eyebrow{margin:0}
.page-heading-context-separator{width:1px;height:12px;background:#cbd7d3}
html[data-organization-theme="custom"] .page-heading-context-separator{background:var(--organization-theme-border)}

/* People administration: a concise roster summary followed by a directory
   that fits the available workspace without hiding its row actions. */
.people-summary{
  display:grid;
  grid-template-columns:minmax(210px,1.15fr) minmax(0,2.4fr);
  min-height:126px;
  margin-bottom:22px;
  overflow:hidden;
  border:1px solid #dce6e6;
  border-radius:14px;
  background:#fff;
  box-shadow:0 7px 24px #102d3a0a;
}
.people-summary-lead{
  display:flex;
  align-items:center;
  gap:15px;
  padding:21px 22px;
  background:linear-gradient(135deg,#143b49,#17655e);
  color:#fff;
}
.people-summary-icon{
  display:grid;
  width:44px;
  height:44px;
  place-items:center;
  flex:none;
  border:1px solid #ffffff38;
  border-radius:13px;
  background:#ffffff16;
  color:#c9f0e7;
}
.people-summary-icon .icon{width:22px;height:22px}
.people-summary-lead .eyebrow{margin-bottom:5px;color:#b8d6d6;font-size:10px}
.people-summary-lead h2{margin:0 0 3px;color:#fff;font-size:25px;letter-spacing:-.6px}
.people-summary-lead p{margin:0;color:#c1d7d8;font-size:11px;line-height:1.4}
.people-license-summary{display:flex;align-items:center;gap:5px;margin-top:7px;color:#d8ece8;font-size:10px;font-weight:650;line-height:1.35}
.people-license-summary .icon{width:12px;height:12px;flex:none}
.people-summary-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  margin:0;
  padding:17px 11px;
}
.people-summary-metrics>div{
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  padding:7px 13px;
  border-left:1px solid #e6eceb;
}
.people-summary-metrics>div:first-child{border-left:0}
.people-summary-metrics dt{color:#71817d;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.people-summary-metrics dd{display:grid;gap:3px;margin:5px 0 0}
.people-summary-metrics strong{color:#264840;font-size:24px;line-height:1;font-weight:700;letter-spacing:-.5px}
.people-summary-metrics span{overflow:hidden;color:#7b8b87;font-size:10px;line-height:1.35;text-overflow:ellipsis}
.people-directory{margin-bottom:24px}
.people-directory-head{padding-bottom:18px}
.people-result-count{
  display:inline-flex;
  min-height:31px;
  align-items:center;
  padding:6px 10px;
  border:1px solid #dce6e4;
  border-radius:999px;
  background:#f4f8f7;
  color:#536f69;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.people-toolbar{border-top:1px solid #edf1f0;background:#fbfcfb}
.people-toolbar .search{max-width:420px}
.people-table-wrap:focus-visible{outline:3px solid var(--theme-focus);outline-offset:-3px}
.people-table{table-layout:fixed;min-width:760px}
.people-table .people-select-column{width:6%}
.people-table .people-person-column{width:30%}
.people-table .people-access-column{width:17%}
.people-table .people-learning-column{width:19%}
.people-table .people-actions-column{width:28%}
.people-table th,.people-table td{padding:15px 14px;vertical-align:middle;white-space:normal}
.people-table .check-col{padding-right:5px;text-align:center}
.people-table tbody tr{transition:background .15s,box-shadow .15s}
.people-table tbody tr.is-selected{background:#f0f8f6;box-shadow:inset 3px 0 #31877d}
.people-person,.people-person>div{min-width:0}
.people-person .avatar{width:38px;height:38px}
.people-person strong,.people-person small,.people-department{
  overflow:hidden;
  max-width:100%;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.people-person small{margin-bottom:4px}
.people-department{display:flex;align-items:center;gap:5px;color:#70827d;font-size:10px;line-height:1.35}
.people-department .icon{width:11px;height:11px;color:#77968f}
.people-access{display:grid;justify-items:start;gap:7px}
.people-role{color:#506760;font-size:11px;font-weight:700;line-height:1.25}
.people-role.role-admin{color:#665281}
.people-role.role-manager{color:#3b6986}
.people-learning-progress{display:grid;gap:8px;min-width:0}
.people-learning-progress>div{display:flex;align-items:baseline;gap:5px;min-width:0}
.people-learning-progress strong{color:#34564e;font-size:12px;white-space:nowrap}
.people-learning-progress span{color:#7c8c87;font-size:9px;line-height:1.3}
.people-learning-progress .progress{width:100%;height:6px}
.people-row-actions{gap:4px;align-items:center;flex-wrap:wrap}
.people-row-actions .btn{min-height:30px;padding:5px 6px;gap:5px;font-size:10px}
.people-row-actions .btn .icon{width:13px;height:13px}
.people-current-account{padding:5px 6px;color:#71817c;font-size:9px;font-weight:650;white-space:nowrap}
.people-directory-footer{color:#71817c}
html[data-organization-theme="custom"] .people-summary{
  border-color:var(--organization-theme-border);
  box-shadow:0 7px 24px var(--organization-theme-shadow);
}
html[data-organization-theme="custom"] .people-summary-lead{background:linear-gradient(135deg,var(--theme-primary-deep),var(--theme-primary))}
html[data-organization-theme="custom"] .people-summary-icon{color:var(--theme-pale)}
html[data-organization-theme="custom"] .people-summary-metrics strong{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .people-summary-metrics>div{border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] .people-result-count{border-color:var(--organization-theme-border);background:var(--organization-theme-surface);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .people-toolbar{border-color:var(--organization-theme-border-subtle);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .people-table tbody tr.is-selected{background:var(--theme-soft);box-shadow:inset 3px 0 var(--theme-primary)}
html[data-organization-theme="custom"] .people-department .icon{color:var(--theme-primary)}
@media(max-width:900px){
  .people-summary{grid-template-columns:1fr}
  .people-summary-lead{padding:18px 20px}
  .people-summary-metrics{padding:10px}
}
@media(max-width:680px){
  .people-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .people-summary-metrics>div{padding:10px 13px}
  .people-summary-metrics>div:nth-child(3){border-left:0;border-top:1px solid #e6eceb}
  .people-summary-metrics>div:nth-child(4){border-top:1px solid #e6eceb}
  .people-directory-head{align-items:flex-start}
  .people-toolbar{align-items:stretch}
  .people-toolbar .search{width:100%}
  .people-toolbar>.button-row{width:100%}
  .people-toolbar>.button-row>*{flex:1}
}

/* Assignment reporting uses the same compact summary language as People,
   then groups related row data so the operational controls stay visible. */
.assignment-directory{margin-bottom:24px}
.assignment-summary .people-summary-lead h2{font-size:22px;white-space:nowrap}
.assignment-directory-head{padding-bottom:18px}
.assignment-toolbar{border-top:1px solid #edf1f0;background:#fbfcfb}
.assignment-toolbar .search{max-width:390px}
.assignment-history-toggle{
  display:inline-flex;
  min-height:37px;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid #dfe7e5;
  border-radius:7px;
  background:#fff;
  color:#637771;
  font-size:11px;
  font-weight:600;
  white-space:nowrap;
}
.assignment-history-toggle:has(input:checked){border-color:#8bbdb5;background:#eef7f5;color:#285e57}
.assignment-groups{display:grid;gap:12px;padding:16px;background:#f7f9f8}
.assignment-groups[hidden],.assignment-person-group-panel[hidden]{display:none!important}
.assignment-person-group{overflow:hidden;border:1px solid #dfe8e5;border-radius:10px;background:#fff;box-shadow:0 3px 12px #173b3120}
.assignment-person-group-toggle{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(190px,.8fr) 28px;
  align-items:center;
  gap:18px;
  padding:15px 16px;
  border:0;
  background:#fff;
  color:#314b45;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.assignment-person-group-toggle:hover{background:#f7fbfa}
.assignment-person-group-toggle:focus-visible{position:relative;z-index:1;outline:3px solid var(--theme-focus);outline-offset:-3px}
.assignment-person-group-toggle[aria-expanded="true"]{background:#f3f9f7}
.assignment-person-group-identity{display:flex;min-width:0;align-items:center;gap:11px}
.assignment-person-group-copy{display:grid;min-width:0;gap:2px}
.assignment-person-group-copy strong,.assignment-person-group-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.assignment-person-group-copy strong{font-size:12.5px;line-height:1.35}
.assignment-person-group-copy small{color:#70827e;font-size:10px;line-height:1.4}
.assignment-person-group-summary{display:grid;min-width:0;gap:3px}
.assignment-person-group-summary strong{font-size:11.5px;line-height:1.35}
.assignment-person-group-summary small{color:#71827e;font-size:9.5px;line-height:1.4;white-space:normal}
.assignment-person-group-chevron{display:grid;width:28px;height:28px;place-items:center;border:1px solid #dce7e4;border-radius:50%;background:#fff;color:#547069}
.assignment-person-group-chevron .icon{width:14px;height:14px;transition:transform .16s ease}
.assignment-person-group-toggle[aria-expanded="true"] .assignment-person-group-chevron .icon{transform:rotate(90deg)}
.assignment-person-group-panel{padding:0 12px 12px;border-top:1px solid #e2ebe8;background:#f8faf9}
.assignment-person-group-panel .assignment-table-wrap{overflow:auto;border:1px solid #e0e8e6;border-top:0;border-radius:0 0 8px 8px;background:#fff}
.assignment-table-wrap:focus-visible{outline:3px solid var(--theme-focus);outline-offset:-3px}
.assignments-table{table-layout:fixed;min-width:680px}
.assignment-group-table .assignment-course-column{width:34%}
.assignment-group-table .assignment-progress-column{width:22%}
.assignment-group-table .assignment-result-column{width:24%}
.assignment-group-table .assignment-actions-column{width:20%}
.assignments-table th,.assignments-table td{padding:16px 13px;vertical-align:top;white-space:normal}
.assignment-person,.assignment-person>div{min-width:0}
.assignment-person{align-items:flex-start}
.assignment-person strong,.assignment-person small{
  overflow:hidden;
  max-width:100%;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.assignment-course-cell{display:grid;gap:8px;min-width:0}
.assignment-course-cell>strong{color:#304e47;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.assignment-course-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.assignment-course-meta span{
  padding:2px 5px;
  border-radius:4px;
  background:#f0f4f2;
  color:#657974;
  font-size:8.5px;
  font-weight:650;
  line-height:1.35;
}
.assignment-row-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding-top:2px}
.assignment-row-dates>div{display:grid;gap:2px;min-width:0}
.assignment-row-dates dt{color:#83918e;font-size:8px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.assignment-row-dates dd{overflow:hidden;margin:0;color:#526964;font-size:9.5px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.assignment-row-dates dd.overdue{color:#9a4a42}
.assignment-progress-cell{display:grid;gap:9px;min-width:0}
.assignment-statuses{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.assignment-progress-cell .row-progress{width:100%;gap:7px}
.assignment-progress-cell .row-progress .progress{width:auto;min-width:42px;flex:1}
.assignment-progress-cell .row-progress span{font-size:10px;white-space:nowrap}
.assignment-progress-cell>small{color:#748681;font-size:9px;line-height:1.35}
.assignment-report-result{gap:5px;min-width:0}
.assignment-result-empty{color:#71827e;font-size:10.5px;line-height:1.35}
.assignment-evidence{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.assignment-evidence small{color:#70817d;font-size:9px}
.assignment-requirements{max-width:100%;color:#5d746e;font-size:9.5px}
.assignment-requirements summary{cursor:pointer;color:#476860;font-weight:700;line-height:1.4}
.assignment-requirements p{margin:5px 0 0;color:#687c77;font-size:9px;line-height:1.45;overflow-wrap:anywhere}
.assignment-row-actions{display:grid;gap:5px;align-items:start}
.assignment-row-actions .btn{width:100%;min-height:30px;padding:5px 6px;gap:5px;font-size:9.5px;white-space:normal}
.assignment-row-actions .btn .icon{width:12px;height:12px}
.assignment-no-action{color:#83918e;font-size:9.5px;line-height:1.4}
.assignment-directory-footer{color:#71817c}
html[data-organization-theme="custom"] .assignment-toolbar{border-color:var(--organization-theme-border-subtle);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .assignment-history-toggle{border-color:var(--organization-theme-border);color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .assignment-history-toggle:has(input:checked){border-color:var(--theme-primary);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .assignment-groups,
html[data-organization-theme="custom"] .assignment-person-group-panel{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .assignment-person-group{border-color:var(--organization-theme-border);background:#fff}
html[data-organization-theme="custom"] .assignment-person-group-toggle[aria-expanded="true"]{background:var(--theme-soft)}
html[data-organization-theme="custom"] .assignment-person-group-chevron{border-color:var(--organization-theme-border);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .assignment-course-meta span{background:var(--organization-theme-surface-strong);color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .assignment-course-cell>strong,
html[data-organization-theme="custom"] .assignment-requirements summary{color:var(--organization-theme-ink)}
@media(max-width:680px){
  .assignment-toolbar{align-items:stretch}
  .assignment-toolbar .search{width:100%;max-width:none}
  .assignment-toolbar>.button-row{width:100%}
  .assignment-toolbar>.button-row>*{flex:1}
  .assignment-history-toggle{justify-content:center}
  .assignment-groups{padding:10px;gap:9px}
  .assignment-person-group-toggle{grid-template-columns:minmax(0,1fr) 28px;gap:10px;padding:13px}
  .assignment-person-group-summary{grid-column:1/-1;grid-row:2;padding-left:49px}
  .assignment-person-group-chevron{grid-column:2;grid-row:1}
  .assignment-person-group-panel{padding:0 8px 8px}
}

/* Organization overview: these are organization-wide learner counts rather
   than a sample of the assignments in the table below. The one clear action
   remains the link to the complete people list. */
.overview-learning-panel .panel-head:has(.overview-status-summary){align-items:center}
.overview-status-summary{
  display:grid;
  grid-auto-columns:minmax(78px,1fr);
  grid-auto-flow:column;
  flex:1;
  gap:6px;
  align-items:stretch;
}
.overview-status-stat{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  column-gap:6px;
  min-height:50px;
  padding:7px 10px;
  border:1px solid #dce6e7;
  border-radius:9px;
  background:#f8faf9;
  color:#4f6b73;
  font-size:11px;
  line-height:1.15;
}
.overview-status-count{
  color:currentColor;
  font-size:18px;
  font-variant-numeric:tabular-nums;
  font-weight:780;
  letter-spacing:-.55px;
  line-height:1;
}
.overview-status-label{
  display:grid;
  min-width:0;
  gap:2px;
  color:currentColor;
  font-size:10px;
  font-weight:680;
  line-height:1.15;
}
.overview-status-label small{font-size:8px;font-weight:550;letter-spacing:.02em;opacity:.82}
.overview-status-stat:is(.not-started,.unassigned){border-color:#d8e1e4;background:#f5f8f9;color:#54707a}
.overview-status-stat.in-progress{border-color:#f1d39c;background:#fff8ed;color:#a86918}
.overview-status-stat.completed{border-color:#b8dfca;background:#eef8f2;color:#247754}
.overview-status-stat.overdue{border-color:#efc4bd;background:#fff3f0;color:#ad4c42}
.overview-status-summary-link{align-self:center;white-space:nowrap}
.overview-recent-assignments-heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  padding:17px 18px 12px;
  border-top:1px solid var(--line);
  background:#fcfdfc;
}
.overview-recent-assignments-heading h3{margin:0;color:#35515a;font-size:13px;font-weight:740}
.overview-recent-assignments-heading p{margin:0;color:#738580;font-size:11px;line-height:1.4}
.overview-learner-groups{display:grid;gap:10px;padding:14px;background:#f7f9f8}
.overview-learner-group{box-shadow:none}
.overview-learner-toggle{grid-template-columns:minmax(0,1.2fr) minmax(210px,.9fr) 28px;padding:13px 15px}
.overview-learner-panel{padding:0 10px 10px}
.overview-learner-table{min-width:590px}
.overview-learner-table .overview-learner-course-column{width:45%}
.overview-learner-table .overview-learner-progress-column{width:28%}
.overview-learner-table .overview-learner-result-column{width:27%}
.overview-learner-course{display:grid;gap:4px;min-width:0}
.overview-learner-course strong{color:#304e47;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.overview-learner-course small{color:#768783;font-size:9.5px;font-weight:650}
.overview-learner-course small.overdue{color:#9a4a42}
.overview-learner-table .row-progress{max-width:190px;margin-top:8px}
.overview-learner-table .row-progress .progress{width:auto;min-width:52px;flex:1}

/* The neutral "not started" state can take on the organization identity.
   Progress, completed, and overdue continue to use their status colors. */
html[data-organization-theme="custom"] .overview-status-stat:is(.not-started,.unassigned){
  border-color:var(--organization-theme-border);
  background:var(--organization-theme-surface);
  color:var(--theme-primary-deep);
}
html[data-organization-theme="custom"] .overview-status-summary-link{color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .overview-status-summary-link:hover{background:var(--theme-soft)}
html[data-organization-theme="custom"] .overview-recent-assignments-heading{border-color:var(--organization-theme-border-subtle);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .overview-recent-assignments-heading h3{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .overview-recent-assignments-heading p{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .overview-learner-groups{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .overview-learner-course strong{color:var(--organization-theme-ink)}

@media(max-width:1180px){
  .overview-learning-panel .panel-head:has(.overview-status-summary){align-items:flex-start;flex-direction:column}
  .overview-learning-panel .panel-head:has(.overview-status-summary) .overview-panel-actions{width:100%;justify-content:space-between}
}
@media(max-width:720px){
  .overview-panel-actions:has(.overview-status-summary){align-items:stretch;flex-direction:column}
  .overview-status-summary{width:100%;grid-auto-columns:auto;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .overview-status-stat{min-height:48px;padding:7px 9px}
  .overview-status-summary-link{align-self:flex-start}
  .overview-recent-assignments-heading{align-items:flex-start;flex-direction:column;gap:3px;padding:16px 17px 11px}
  .overview-learner-groups{padding:10px;gap:8px}
  .overview-learner-toggle{grid-template-columns:minmax(0,1fr) 28px;gap:9px;padding:12px}
  .overview-learner-toggle .assignment-person-group-summary{grid-column:1/-1;grid-row:2;padding-left:49px}
  .overview-learner-toggle .assignment-person-group-chevron{grid-column:2;grid-row:1}
  .overview-learner-panel{padding:0 8px 8px}
}
@media(max-width:360px){
  .overview-status-summary{grid-template-columns:1fr}
}

/* Platform administration keeps the broad organization controls in one
   focused hub. Each action is a complete, readable card so system admins can
   see what it affects before opening the more detailed setting. */
.organization-management-hub{display:grid;gap:20px}
.organization-management-summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  padding:17px 18px;
  border:1px solid #d8e6e4;
  border-radius:13px;
  background:linear-gradient(135deg,#f7fbfa,#edf7f4);
  color:#42625d;
}
.organization-management-summary .person{min-width:0}
.organization-management-summary .person>div{min-width:0}
.organization-management-summary .person strong{overflow:hidden;color:#284d48;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.organization-management-summary .person small{overflow:hidden;color:#637d78;text-overflow:ellipsis;white-space:nowrap}
.organization-management-summary .organization-logo{width:40px;height:40px;border-color:#cae2dc;background:#e0f1ec;color:#25756a}
.organization-management-summary>.badge{justify-self:end}
.organization-management-summary-icon{
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border:1px solid #cae2dc;
  border-radius:12px;
  background:#e0f1ec;
  color:#25756a;
}
.organization-management-summary-icon .icon{width:21px;height:21px}
.organization-management-summary-copy{display:grid;gap:3px;min-width:0}
.organization-management-summary h3{margin:0;color:#284d48;font-size:15px;line-height:1.3}
.organization-management-summary p{margin:0;color:#637d78;font-size:11px;line-height:1.5}
.organization-management-actions,
.organization-management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.organization-management-action,
.organization-management-option{
  --organization-management-accent:#27776d;
  --organization-management-surface:#f6fbfa;
  --organization-management-border:#d4e6e2;
  display:grid;
  grid-template-columns:40px minmax(0,1fr) 18px;
  align-content:center;
  align-items:center;
  column-gap:12px;
  min-width:0;
  min-height:134px;
  padding:17px;
  border:1px solid var(--organization-management-border);
  border-radius:13px;
  background:var(--organization-management-surface);
  color:#355650;
  text-align:left;
  text-decoration:none;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease;
}
button.organization-management-action,
button.organization-management-option{width:100%;font:inherit;cursor:pointer}
.organization-management-action:hover,
.organization-management-option:hover{border-color:var(--organization-management-accent);background:#fff;box-shadow:0 8px 20px #153b3812;transform:translateY(-1px)}
.organization-management-action:focus-visible,
.organization-management-option:focus-visible{outline:3px solid var(--theme-focus);outline-offset:3px}
.organization-management-action-icon,
.organization-management-option-icon{
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  grid-row:1;
  border:1px solid color-mix(in srgb,var(--organization-management-accent) 25%,#fff);
  border-radius:11px;
  background:color-mix(in srgb,var(--organization-management-accent) 12%,#fff);
  color:var(--organization-management-accent);
}
.organization-management-action-icon .icon,
.organization-management-option-icon .icon{width:20px;height:20px}
.organization-management-action-copy,
.organization-management-option-copy{display:grid;grid-column:2;grid-row:1;gap:4px;min-width:0}
.organization-management-action-copy strong,
.organization-management-option-copy strong{overflow:hidden;color:#2c4d47;font-size:14px;font-weight:740;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.organization-management-action-copy small,
.organization-management-option-copy small{display:block;color:#627b76;font-size:11px;line-height:1.52}
.organization-management-action-arrow,
.organization-management-option-arrow{display:grid;width:18px;height:18px;place-items:center;grid-column:3;grid-row:1;color:var(--organization-management-accent);transition:transform .16s ease,color .16s ease}
.organization-management-action-arrow .icon,
.organization-management-option-arrow .icon{width:16px;height:16px}
.organization-management-action:hover .organization-management-action-arrow,
.organization-management-option:hover .organization-management-option-arrow{transform:translateX(2px)}
.organization-management-action h3,
.organization-management-option h3,
.organization-management-action-title,
.organization-management-option-title{margin:0;color:#2c4d47;font-size:14px;font-weight:740;line-height:1.35}
.organization-management-action p,
.organization-management-option p,
.organization-management-action-description,
.organization-management-option-description{margin:0;color:#627b76;font-size:11px;line-height:1.52}
.organization-management-action-meta,
.organization-management-option-meta{
  display:inline-flex;
  min-height:22px;
  align-items:center;
  justify-self:start;
  gap:5px;
  margin-top:7px;
  padding:4px 7px;
  border:1px solid color-mix(in srgb,var(--organization-management-accent) 20%,#fff);
  border-radius:999px;
  background:#fff;
  color:var(--organization-management-accent);
  font-size:10px;
  font-weight:700;
  line-height:1.2;
}
.organization-management-action-meta .icon,
.organization-management-option-meta .icon{width:12px;height:12px}
.organization-management-action-action,
.organization-management-option-action,
.organization-management-action>.btn,
.organization-management-option>.btn,
.organization-management-action>.button-row,
.organization-management-option>.button-row{grid-column:2;margin-top:auto;align-self:end}
.organization-management-action>.btn,
.organization-management-option>.btn{justify-self:start}
.organization-management-action>.button-row,
.organization-management-option>.button-row{gap:7px}

/* The four tasks have recognizable accents until an organization palette is
   selected. The activation card retains status-led colors rather than taking
   on branding, so deactivation remains clearly consequential. */
.organization-management-action.details,
.organization-management-option--details{--organization-management-accent:#26796f;--organization-management-surface:#f5fbf9;--organization-management-border:#d4e7e1}
.organization-management-action.branding,
.organization-management-option--branding{--organization-management-accent:#3e6689;--organization-management-surface:#f5f9fc;--organization-management-border:#d8e6ef}
.organization-management-action.administrator,
.organization-management-option--administrators{--organization-management-accent:#695a8a;--organization-management-surface:#f8f6fb;--organization-management-border:#e4dff0}
.organization-management-action.licensing{--organization-management-accent:#9a6a2f;--organization-management-surface:#fdf9f1;--organization-management-border:#eee0c9}
.organization-management-action.status,
.organization-management-option--activation{--organization-management-accent:#5b7775;--organization-management-surface:#f6faf9;--organization-management-border:#d9e6e4}
.organization-management-action.status.danger,
.organization-management-option--activation.danger{--organization-management-accent:#ad5045;--organization-management-surface:#fff7f5;--organization-management-border:#efd5cf}
.organization-management-action.status.danger:hover,
.organization-management-option--activation.danger:hover{background:#fff4f1;box-shadow:0 8px 20px #8d2e2c17}
.organization-management-action.status.danger .organization-management-action-copy strong,
.organization-management-option--activation.danger .organization-management-option-copy strong{color:#923d36}
.organization-management-action.status.danger .organization-management-action-copy small,
.organization-management-option--activation.danger .organization-management-option-copy small{color:#8b645f}
.organization-management-action.status:last-child:nth-child(odd){grid-column:1/-1;min-height:104px}
.organization-management-action.status.is-inactive,
.organization-management-action.status[data-status="inactive"],
.organization-management-option--activation.is-inactive,
.organization-management-option--activation[data-status="inactive"]{--organization-management-accent:#ad5045;--organization-management-surface:#fff7f5;--organization-management-border:#efd5cf}
.organization-management-action .btn.danger,
.organization-management-option .btn.danger{background:#a53935;color:#fff}
.organization-management-action .btn.danger:hover,
.organization-management-option .btn.danger:hover{background:#8d2e2c;box-shadow:0 4px 10px #8d2e2c2e}

/* A selected organization can carry its identity into the non-destructive
   management cards without recoloring administrator or activation semantics. */
html[data-organization-theme="custom"] .organization-management-summary{border-color:var(--organization-theme-border);background:linear-gradient(135deg,var(--organization-theme-surface),var(--theme-soft));color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .organization-management-summary .organization-logo{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary)}
html[data-organization-theme="custom"] .organization-management-summary .person strong{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .organization-management-summary .person small{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .organization-management-summary-icon{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary)}
html[data-organization-theme="custom"] .organization-management-summary h3{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .organization-management-summary p{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] :is(.organization-management-action.details,.organization-management-action.branding,.organization-management-action.administrator,.organization-management-option--details,.organization-management-option--branding,.organization-management-option--administrators){--organization-management-accent:var(--theme-primary);--organization-management-surface:var(--organization-theme-surface);--organization-management-border:var(--organization-theme-border)}
html[data-organization-theme="custom"] :is(.organization-management-action,.organization-management-option):not(.status):not(.organization-management-option--activation):hover{background:var(--theme-soft);box-shadow:0 8px 20px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] :is(.organization-management-action h3,.organization-management-option h3,.organization-management-action-title,.organization-management-option-title){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.organization-management-action p,.organization-management-option p,.organization-management-action-description,.organization-management-option-description){color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] :is(.organization-management-action-copy strong,.organization-management-option-copy strong){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.organization-management-action-copy small,.organization-management-option-copy small){color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] :is(.organization-management-action-meta,.organization-management-option-meta){border-color:var(--organization-theme-border);background:#fff;color:var(--theme-primary-deep)}

@media(max-width:680px){
  .organization-management-actions,
  .organization-management-grid{grid-template-columns:1fr}
  .organization-management-action,
  .organization-management-option{min-height:0;padding:16px}
  .organization-management-action.status:last-child:nth-child(odd){grid-column:auto;min-height:0}
}
@media(max-width:420px){
  .organization-management-summary{align-items:start;padding:15px}
  .organization-management-action,
  .organization-management-option{grid-template-columns:36px minmax(0,1fr) 18px;column-gap:10px}
  .organization-management-action-icon,
  .organization-management-option-icon{width:36px;height:36px;border-radius:10px}
  .organization-management-action-action,
  .organization-management-option-action,
  .organization-management-action>.btn,
  .organization-management-option>.btn,
  .organization-management-action>.button-row,
  .organization-management-option>.button-row{grid-column:1/-1;margin-top:9px}
}

/* Organization licensing keeps plan choice, live seat usage, and capacity
   messages visible wherever an administrator can add or import people. */
.organizations-directory table{min-width:780px;table-layout:fixed}
.organizations-directory th,.organizations-directory td{padding-left:13px;padding-right:13px}
.organizations-directory th:nth-child(1){width:25%}
.organizations-directory th:nth-child(2){width:23%}
.organizations-directory th:nth-child(3){width:8%}
.organizations-directory th:nth-child(4){width:18%}
.organizations-directory th:nth-child(5){width:10%}
.organizations-directory th:nth-child(6){width:16%}
.organizations-directory .person,.organizations-directory .person>div{min-width:0}
.organizations-directory .person strong,.organizations-directory .person small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.organizations-directory .actions-cell .btn{padding-left:9px;padding-right:9px;white-space:nowrap}
.organization-license-cell{display:grid;gap:3px;min-width:128px;white-space:normal}
.organization-license-cell strong{color:#31544e;font-size:12px;line-height:1.3}
.organization-license-cell>span{color:#24796d;font-size:11px;font-weight:750;line-height:1.35}
.organization-license-cell small{color:#71847f;font-size:10px;line-height:1.4}
.organization-license-settings{display:grid;gap:0;padding:16px 17px;border:1px solid #dbe7e4;border-radius:11px;background:#f8fbfa}
.organization-license-settings>.field:last-of-type{margin-bottom:0}
.organization-license-settings [hidden],.organization-enterprise-note[hidden]{display:none!important}
.organization-enterprise-note{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid #cde4df;border-radius:9px;background:#edf8f5;color:#3c6861}
.organization-enterprise-note>.icon{width:21px;height:21px;flex:none;color:#288174}
.organization-enterprise-note>span{display:grid;gap:2px;font-size:11px;line-height:1.45}
.organization-enterprise-note strong{color:#24564f;font-size:12px}
.organization-license-heading{display:flex;align-items:center;gap:12px;margin-bottom:17px;padding:14px 15px;border:1px solid #d6e5e2;border-radius:11px;background:linear-gradient(135deg,#f6fbfa,#edf7f4)}
.organization-license-heading-icon{display:grid;width:40px;height:40px;place-items:center;flex:none;border-radius:11px;background:#dff0eb;color:#26776c}
.organization-license-heading-icon .icon{width:20px;height:20px}
.organization-license-heading>div{display:grid;gap:2px;min-width:0}
.organization-license-heading strong{overflow:hidden;color:#294f49;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.organization-license-heading span:last-child{color:#687e79;font-size:11px}
.license-capacity-note{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:13px 15px;border:1px solid #cfe5df;border-radius:10px;background:#f0f8f6;color:#276d63}
.license-capacity-note>.icon{width:21px;height:21px;flex:none}
.license-capacity-note>div{display:grid;gap:2px;min-width:0}
.license-capacity-note strong{color:#245c54;font-size:12px;line-height:1.35}
.license-capacity-note span{color:#617b75;font-size:11px;line-height:1.45}
.license-capacity-note.enterprise{border-color:#d7e3ee;background:#f3f7fb;color:#426d8a}
.license-capacity-note.enterprise strong{color:#345e7b}
.license-capacity-note.is-full{border-color:#efd1ca;background:#fff5f2;color:#a34539}
.license-capacity-note.is-full strong,.license-capacity-note.is-full span{color:#91463d}
.license-import-ready{font-weight:600}
html[data-organization-theme="custom"] :is(.organization-license-settings,.organization-license-heading,.license-capacity-note:not(.is-full):not(.enterprise)){border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] :is(.organization-license-heading-icon,.license-capacity-note:not(.is-full):not(.enterprise)>.icon){color:var(--theme-primary)}
@media(max-width:680px){
  .organization-license-settings{padding:14px}
  .license-capacity-note{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
  .organization-management-action,
  .organization-management-option{transition:none}
  .organization-management-action:hover,
  .organization-management-option:hover{transform:none}
}

/* The person editor separates account identity from access and directory
   details. Scoped grid alignment prevents the reporting hint from stretching
   the adjacent Role selector. */
dialog.wide:has(.person-edit-form){
  width:min(760px,calc(100% - 30px));
  max-width:760px;
  height:min(780px,calc(100dvh - 32px));
  max-height:calc(100dvh - 32px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
}
dialog:has(.person-edit-form) .modal-head,
dialog:has(.person-edit-form) .modal-footer{position:static}
dialog:has(.person-edit-form) .modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}
.person-edit-form{display:grid;gap:22px}
.person-edit-identity{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:13px;
  padding:17px 18px;
  border:1px solid #d5e5e4;
  border-radius:13px;
  background:linear-gradient(120deg,#f9fcfb,#f0f8f6);
}
.person-edit-identity .avatar{width:42px;height:42px;background:#dcefed;color:#1f6e68;font-size:12px}
.person-edit-identity>div{display:grid;gap:2px;min-width:0}
.person-edit-identity .eyebrow{color:#5b807c;font-size:10px}
.person-edit-identity h3{margin:0;color:#264b54;font-size:17px;font-weight:740;line-height:1.3}
.person-edit-identity p{overflow:hidden;margin:0;color:#647b82;font-size:13px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.person-edit-section{display:grid;gap:15px;min-width:0}
.person-edit-section+.person-edit-section{padding-top:21px;border-top:1px solid #dfe9e9}
.person-edit-section-heading{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:11px;min-width:0}
.person-edit-section-heading>div{display:grid;gap:3px;min-width:0}
.person-edit-section-icon{display:grid;width:36px;height:36px;place-items:center;border:1px solid #cde2df;border-radius:10px;background:#e7f4f2;color:#207970}
.person-edit-section-icon .icon{width:18px;height:18px}
.person-edit-section-heading :is(h3,strong){margin:0;color:#274b55;font-size:15px;font-weight:730;line-height:1.35}
.person-edit-section-heading :is(p,small){margin:0;color:#687f86;font-size:12px;line-height:1.5}
.person-edit-access-grid,.person-edit-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px 18px;min-width:0}
.person-edit-access-grid .field,.person-edit-profile-grid .field{align-self:start;min-width:0;margin:0}
.person-edit-access-grid .field small{max-width:34ch;color:#6d8389}

html[data-organization-theme="custom"] .person-edit-identity{border-color:var(--organization-theme-border);background:linear-gradient(120deg,var(--organization-theme-surface),var(--theme-soft))}
html[data-organization-theme="custom"] .person-edit-identity .avatar,
html[data-organization-theme="custom"] .person-edit-section-icon{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary)}
html[data-organization-theme="custom"] .person-edit-identity .eyebrow{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .person-edit-identity h3,
html[data-organization-theme="custom"] .person-edit-section-heading :is(h3,strong){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .person-edit-identity p{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .person-edit-section+.person-edit-section{border-top-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] .person-edit-section-heading :is(p,small),
html[data-organization-theme="custom"] .person-edit-access-grid .field small{color:var(--organization-theme-muted)}

@media(max-width:680px){
  dialog.wide:has(.person-edit-form){width:calc(100% - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}
  .person-edit-form{gap:19px}
  .person-edit-identity{padding:15px}
  .person-edit-section+.person-edit-section{padding-top:18px}
  .person-edit-access-grid,.person-edit-profile-grid{grid-template-columns:1fr;gap:15px}
}

/* Bulk assignment builder: filters define an audience while persistent
   selections let administrators combine teams, functions, roles, and people. */
dialog.assignment-builder-modal[open]{
  width:min(1080px,calc(100vw - 32px));
  max-width:1080px;
  height:min(900px,calc(100dvh - 32px));
  max-height:calc(100dvh - 32px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
}
.assignment-builder-modal .modal-head,
.assignment-builder-modal .modal-footer{position:static}
.assignment-builder-modal .modal-head{padding:19px 24px 16px}
.assignment-builder-modal .modal-head h2{color:#213f49;font-size:21px}
.assignment-builder-modal .modal-body{min-height:0;padding:20px 24px 18px;overflow-y:auto;overscroll-behavior:contain;background:#f7faf9}
.assignment-builder-modal .modal-footer{min-height:68px;padding:12px 24px}
.assignment-builder-form{display:grid;gap:18px}
.course-meta{flex-wrap:wrap}
.course-language-meta{white-space:normal}
.assignment-builder-intro{margin:0;color:#5f777e;font-size:14px;line-height:1.55}
.assignment-builder-grid{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(320px,.78fr);gap:16px;align-items:stretch}
.assignment-builder-section,
.assignment-builder-settings{min-width:0;border:1px solid #d9e5e5;border-radius:13px;background:#fff;box-shadow:0 4px 15px #16394506}
.assignment-builder-section{display:flex;min-height:488px;flex-direction:column;padding:18px}
.assignment-builder-section-head{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:start;gap:10px;margin-bottom:15px}
.assignment-builder-section-head>div{min-width:0}
.assignment-builder-section-head h3{margin:1px 0 3px;color:#294a54;font-size:16px;line-height:1.35}
.assignment-builder-section-head p{margin:0;color:#71858a;font-size:12.5px;line-height:1.45}
.assignment-builder-step{display:grid;width:29px;height:29px;place-items:center;border-radius:9px;background:#e4f2f0;color:#1f7169;font-size:13px;font-weight:800}
.assignment-selected-count{align-self:start;padding:4px 8px;border:1px solid #cfe1df;border-radius:999px;background:#f0f7f6;color:#3c6c67;font-size:11px;font-weight:750;white-space:nowrap}
.assignment-picker-search{position:relative;margin-bottom:10px}
.assignment-picker-search .icon{position:absolute;top:11px;left:11px;width:16px;height:16px;color:#77918e}
.assignment-picker-search input,
.assignment-audience-filters select,
.assignment-course-filter select{
  width:100%;height:41px;border:1px solid #d9e5e4;border-radius:8px;background:#fff;color:#35545b;font-size:13px;font-weight:400;
}
.assignment-picker-search input{padding:8px 11px 8px 36px}
.assignment-audience-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:12px}
.assignment-audience-filters label,
.assignment-course-filter label{display:grid;gap:5px;color:#667b80;font-size:11px;font-weight:750;letter-spacing:.02em}
.assignment-audience-filters select,
.assignment-course-filter select{padding:7px 28px 7px 9px}
.assignment-course-filter{display:grid;grid-template-columns:1fr;gap:9px;margin-bottom:12px}
.assignment-course-filter.has-language{grid-template-columns:repeat(2,minmax(0,1fr))}
.assignment-picker-toolbar{display:flex;min-height:34px;align-items:center;justify-content:space-between;gap:8px;padding:0 1px 8px;border-bottom:1px solid #e6eded}
.assignment-picker-toolbar>span{color:#75878a;font-size:11px;font-weight:700;white-space:nowrap}
.assignment-picker-toolbar>div{display:flex;align-items:center;gap:2px;flex-wrap:wrap;justify-content:flex-end}
.assignment-picker-toolbar .btn{min-height:29px;padding:5px 8px;font-size:10.5px}
.assignment-picker-list{height:260px;min-height:210px;margin-top:8px;padding-right:3px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.assignment-picker-list:focus-visible{outline:3px solid var(--theme-focus);outline-offset:2px}
.assignment-picker-item{display:grid;min-width:0;align-items:center;gap:9px;margin:0;padding:10px 9px;border:1px solid transparent;border-radius:9px;color:#38565e;cursor:pointer;transition:border-color .14s,background .14s,box-shadow .14s}
.assignment-picker-item+.assignment-picker-item{margin-top:4px}
.assignment-picker-item:hover{border-color:#d5e5e3;background:#f7fbfa}
.assignment-picker-item:has(input:checked){border-color:#83bdb6;background:#edf7f5;box-shadow:inset 3px 0 #258278}
.assignment-picker-item input{width:16px;height:16px;margin:0;accent-color:#17796f}
.assignment-person-choice{grid-template-columns:16px 34px minmax(0,1fr) auto}
.assignment-person-choice .avatar{width:34px;height:34px;background:#e4efec;color:#396e67;font-size:9px}
.assignment-course-choice{grid-template-columns:16px 34px minmax(0,1fr)}
.assignment-picker-symbol{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:#e9f1f2;color:#4c7780}
.assignment-picker-symbol .icon{width:17px;height:17px}
.assignment-picker-copy{display:grid;min-width:0;gap:2px}
.assignment-picker-copy strong,
.assignment-picker-copy small{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}
.assignment-picker-copy strong{color:#31505a;font-size:13px;line-height:1.35}
.assignment-picker-copy small{color:#75878c;font-size:11px;line-height:1.35}
.assignment-picker-tags{display:grid;justify-items:end;gap:4px}
.assignment-picker-tags span{padding:2px 6px;border-radius:5px;background:#edf2f3;color:#61777d;font-size:9.5px;font-weight:750;white-space:nowrap}
.assignment-picker-tags .invited{background:#fff2df;color:#9b6c22}
.assignment-picker-empty{display:grid;min-height:190px;place-content:center;justify-items:center;gap:6px;padding:20px;text-align:center;color:#74868a}
.assignment-picker-empty .icon{width:27px;height:27px;margin-bottom:4px;color:#8aa4a2}
.assignment-picker-empty strong{color:#536e74;font-size:13px}
.assignment-picker-empty span{font-size:11.5px;line-height:1.45}
.assignment-builder-settings{padding:18px}
.assignment-builder-settings>.assignment-builder-section-head{grid-template-columns:32px minmax(0,1fr);margin-bottom:14px}
.assignment-builder-settings-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:16px;align-items:stretch}
.assignment-schedule{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);gap:10px 14px;align-items:start}
.assignment-schedule>.field{margin:0}
.assignment-cycle-check{height:100%;min-height:63px;margin:0}
.assignment-sequential-check{grid-column:1/-1;margin:0}
#reassign-form>.assignment-sequential-check{margin:16px 0}
.assignment-schedule #cycle-field{grid-column:1/-1}
.assignment-schedule #cycle-field .field{max-width:420px;margin:0}
.assignment-builder-review{display:grid;align-content:center;gap:9px;padding:14px 16px;border:1px solid #c6ddda;border-radius:10px;background:linear-gradient(135deg,#edf7f5,#f8fbfa);color:#315d5a}
.assignment-builder-review.error{border-color:#efc3bc;background:#fff3f0;color:#994d44}
.assignment-review-counts{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;font-size:11.5px;font-weight:650}
.assignment-review-counts span{white-space:nowrap}
.assignment-review-counts strong{color:#214e4a;font-size:17px;font-variant-numeric:tabular-nums}
.assignment-builder-review.error .assignment-review-counts strong{color:#92483f}
.assignment-builder-review p{margin:0;color:inherit;font-size:12px;line-height:1.5}
.assignment-builder-settings>[data-assessment-policy]{margin-top:16px;padding-top:2px;border-top:1px solid #e1e9e9}
.assignment-builder-settings>[data-assessment-policy] .form-section{margin-top:16px;color:#47686c}
.assignment-builder-settings>[data-assessment-policy] .check-item{margin-bottom:10px}
.assignment-policy-note{margin:10px 0 0;padding:12px 14px}
.assignment-policy-note strong{display:block;margin-bottom:3px;color:#315f5b;font-size:12.5px}
.assignment-policy-note p{margin:0;font-size:12px;line-height:1.55}
.assignment-policy-note.error strong{color:#92483f}
.assignment-limit-field{max-width:260px;margin:16px 0 0}
.failure-policy-limit{max-width:260px;margin-bottom:0}
.assignment-builder-modal .field label{font-size:12px}
.assignment-builder-modal .field input,
.assignment-builder-modal .field select,
.assignment-builder-modal .field textarea{font-size:13px}
.assignment-builder-modal .field small,
.assignment-builder-modal .check-item small{font-size:11.5px}
.assignment-builder-modal .check-item{font-size:13px}
.assignment-builder-modal .form-section{font-size:13px}
.assignment-builder-modal .modal-footer .btn{font-size:12px}

html[data-organization-theme="custom"] .assignment-builder-section,
html[data-organization-theme="custom"] .assignment-builder-settings{border-color:var(--organization-theme-border);box-shadow:0 4px 15px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .assignment-builder-modal .modal-body{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .assignment-builder-section-head h3,
html[data-organization-theme="custom"] .assignment-picker-copy strong{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .assignment-builder-step{background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .assignment-selected-count{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .assignment-picker-search input,
html[data-organization-theme="custom"] .assignment-audience-filters select,
html[data-organization-theme="custom"] .assignment-course-filter select{border-color:var(--organization-theme-border);color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .assignment-picker-item:hover{border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .assignment-picker-item:has(input:checked){border-color:var(--theme-primary);background:var(--theme-soft);box-shadow:inset 3px 0 var(--theme-primary)}
html[data-organization-theme="custom"] .assignment-picker-item input{accent-color:var(--theme-primary)}
html[data-organization-theme="custom"] .assignment-picker-symbol{background:var(--organization-theme-surface-strong);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .assignment-builder-review{border-color:var(--organization-theme-border);background:linear-gradient(135deg,var(--theme-soft),var(--organization-theme-surface));color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .assignment-review-counts strong{color:var(--theme-primary-deep)}

@media(max-width:900px){
  dialog.assignment-builder-modal{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}
  .assignment-builder-grid{grid-template-columns:1fr}
  .assignment-builder-section{min-height:0}
  .assignment-picker-list{height:240px}
}
@media(max-width:680px){
  .assignment-builder-modal .modal-head,
  .assignment-builder-modal .modal-body,
  .assignment-builder-modal .modal-footer{padding-left:16px;padding-right:16px}
  .assignment-builder-section,.assignment-builder-settings{padding:15px}
  .assignment-builder-section-head{grid-template-columns:29px minmax(0,1fr)}
  .assignment-builder-section-head .assignment-selected-count{grid-column:2;justify-self:start}
  .assignment-audience-filters,
  .assignment-course-filter.has-language,
  .assignment-builder-settings-grid,
  .assignment-schedule{grid-template-columns:1fr}
  .assignment-schedule #cycle-field{grid-column:auto}
  .assignment-picker-toolbar{align-items:flex-start;flex-direction:column}
  .assignment-picker-toolbar>div{justify-content:flex-start}
  .assignment-person-choice{grid-template-columns:16px 32px minmax(0,1fr)}
  .assignment-person-choice .assignment-picker-tags{grid-column:3;grid-auto-flow:column;justify-self:start}
  .assignment-limit-field,.failure-policy-limit{max-width:none}
  .assignment-builder-modal .modal-footer{align-items:stretch;flex-direction:column-reverse}
  .assignment-builder-modal .modal-footer .btn{width:100%}
}

/* Native course authoring keeps the source-package structure visible without
   exposing authoring metadata to learners. */
.course-authoring-page{max-width:1500px}.course-authoring-heading .page-heading{align-items:flex-start}.course-authoring-heading .page-heading .button-row{justify-content:flex-end}.course-authoring-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);gap:24px;align-items:start}.course-authoring-form{display:grid;gap:18px;min-width:0}.course-authoring-section{padding:24px;border:1px solid #d8e5e7;border-radius:14px;background:#fff;box-shadow:0 4px 17px #153b3809}.course-authoring-section-head,.course-authoring-item-head,.course-authoring-options-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.course-authoring-section-head>div{display:flex;min-width:0;gap:12px}.course-authoring-section-head h2{margin:2px 0 4px;color:#274550;font-size:19px}.course-authoring-section-head p{max-width:690px;margin:0;color:#657e86;font-size:13px;line-height:1.55}.course-authoring-section-icon{display:grid;flex:none;width:38px;height:38px;place-items:center;border-radius:11px;background:var(--theme-soft,#e8f4f2);color:var(--theme-primary,#176e68)}.course-authoring-section-icon .icon{width:20px;height:20px}.course-authoring-fields{margin-top:20px}.course-authoring-fields .field{margin:0}.course-authoring-fields textarea{min-height:100px;resize:vertical}.course-authoring-lessons,.course-authoring-questions{display:grid;gap:14px;margin-top:20px}.course-authoring-lesson,.course-authoring-question{overflow:hidden;border:1px solid #d6e4e6;border-radius:12px;background:#fbfdfd}.course-authoring-item-head{padding:15px 17px;border-bottom:1px solid #e1ebed;background:#f3f9f8}.course-authoring-item-head>div:first-child{display:grid;gap:2px;min-width:0}.course-authoring-item-head strong{overflow:hidden;color:#2d4d57;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.course-authoring-item-head small{color:#718990;font-size:11px}.course-authoring-index{display:block;color:#6c878d;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.course-authoring-lesson-fields{padding:18px 18px 0}.course-authoring-pages{display:grid;gap:12px;padding:18px}.course-authoring-page{border:1px solid #dce8ea;border-radius:10px;background:#fff}.course-authoring-page>.course-authoring-item-head{padding:12px 14px;border-radius:10px 10px 0 0;background:#f8fbfb}.course-authoring-page>.course-authoring-fields{padding:0 14px 14px}.course-authoring-callout{margin:0 14px 14px;padding:14px;border:1px solid #cce3df;border-radius:10px;background:linear-gradient(135deg,#f0f8f7,#fbfdfc)}.course-authoring-callout-head{margin-bottom:3px}.course-authoring-callout-head strong{display:block;color:#315d5a;font-size:13px}.course-authoring-callout .course-authoring-fields{margin-top:13px}.course-authoring-add-row{display:flex;justify-content:flex-start;padding:0 18px 18px}.course-authoring-question>.course-authoring-fields{padding:0 17px 17px}.course-authoring-options{display:grid;gap:8px;padding:16px 17px;border-top:1px solid #e1ebed;border-bottom:1px solid #e1ebed;background:#f8fbfb}.course-authoring-options-head{align-items:baseline}.course-authoring-options-head strong{color:#36555f;font-size:13px}.course-authoring-options-head small{color:#718990;font-size:11px}.course-authoring-option{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:9px}.course-authoring-option>span{display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:#dceceb;color:#326b66;font-size:11px;font-weight:750}.course-authoring-option input{min-width:0;padding:9px 11px;border:1px solid #cfdee1;border-radius:7px;background:#fff;color:#35515a;font-size:13px}.course-authoring-option input:focus{border-color:var(--theme-primary,#1d847a);outline:none;box-shadow:0 0 0 3px var(--theme-soft,#dff2ef)}.course-authoring-options .course-authoring-add-row{padding:4px 0 0}.course-authoring-pass-score{max-width:300px;margin:20px 0 0}.course-authoring-empty-assessment{display:flex;align-items:flex-start;gap:13px;margin-top:18px;padding:18px;border:1px dashed #bfd6d7;border-radius:10px;background:#fafcfc;color:#617a83}.course-authoring-empty-assessment>span{display:grid;flex:none;width:34px;height:34px;place-items:center;border-radius:10px;background:#e9f3f2;color:#4f837d}.course-authoring-empty-assessment .icon{width:18px;height:18px}.course-authoring-empty-assessment strong{display:block;color:#375660;font-size:13px}.course-authoring-empty-assessment p{margin:3px 0 0;font-size:12px;line-height:1.5}.course-authoring-preview{position:sticky;top:24px;overflow:hidden;border:1px solid #cfe1e0;border-radius:14px;background:#fff;box-shadow:0 9px 26px #163b420e}.course-authoring-preview-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid #dce9e8;background:#f7fbfa}.course-authoring-preview-status{color:#647d84;font-size:10px;font-weight:650}.course-authoring-preview-cover{padding:23px 21px 20px;background:radial-gradient(circle at 92% 6%,#c8ece3,transparent 43%),linear-gradient(135deg,#176e68,#245363);color:#fff}.course-authoring-preview-cover>span{display:inline-flex;padding:4px 7px;border:1px solid #ffffff55;border-radius:99px;color:#e0f3ee;font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.course-authoring-preview-cover h2{margin:15px 0 8px;color:#fff;font-size:23px;line-height:1.2}.course-authoring-preview-cover p{margin:0;color:#e4f2f1;font-size:12px;line-height:1.58}.course-authoring-preview-cover>div{display:flex;gap:12px;margin-top:17px;color:#d7eeeb;font-size:11px}.course-authoring-preview-cover>div strong{color:#fff}.course-authoring-preview-page{padding:22px 21px}.course-authoring-preview-page h3{margin:6px 0 9px;color:#284753;font-size:20px;line-height:1.28}.course-authoring-preview-page>p{margin:0;color:#526c75;font-size:13px;line-height:1.65}.course-authoring-preview-page ul{display:grid;gap:7px;margin:16px 0 0;padding-left:19px;color:#48646d;font-size:12px;line-height:1.5}.course-authoring-preview-page li::marker{color:#21867c}.course-authoring-preview-callout{display:grid;gap:5px;margin-top:18px;padding:13px 14px;border-radius:9px;background:#eaf6f3;color:#385d60}.course-authoring-preview-callout.scenario{background:#edf3fb;color:#3d5e7a}.course-authoring-preview-callout.action{background:#fff4df;color:#765a25}.course-authoring-preview-callout span{font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.course-authoring-preview-callout strong{font-size:13px}.course-authoring-preview-callout p{margin:0;font-size:12px;line-height:1.5}.course-authoring-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 17px;border-top:1px solid #e1ebed;background:#f8fbfb;color:#667f86;font-size:11px}.course-authoring-preview-footer strong{color:#237369;font-size:11px}.course-draft-directory{overflow:hidden}.course-draft-count{display:inline-flex;align-items:center;padding:6px 9px;border-radius:99px;background:var(--theme-soft,#eaf5f3);color:var(--theme-primary-deep,#195d58);font-size:11px;font-weight:700;white-space:nowrap}.course-draft-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:15px;padding:20px}.course-draft-card{display:grid;gap:13px;padding:19px;border:1px solid #dae7e8;border-radius:12px;background:linear-gradient(145deg,#fff,#fafdfc);box-shadow:0 4px 14px #163b4207}.course-draft-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.course-draft-card h2{margin:3px 0 0;color:#294751;font-size:17px;line-height:1.3}.course-draft-card>p{display:-webkit-box;overflow:hidden;margin:0;color:#617982;font-size:12px;line-height:1.55;-webkit-line-clamp:3;-webkit-box-orient:vertical}.course-draft-stats{display:flex;gap:11px;flex-wrap:wrap;color:#5e777f;font-size:10px}.course-draft-structure-note{display:flex;align-items:flex-start;gap:6px;color:#647d85;font-size:11px;line-height:1.45}.course-draft-structure-note .icon{width:14px;height:14px;flex:none;color:#43827c}.course-draft-stats span{display:inline-flex;align-items:center;gap:4px}.course-draft-stats .icon{width:13px;height:13px;color:#338078}.course-draft-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:13px;border-top:1px solid #e3ecec}.course-draft-card footer>small{color:#83989d;font-size:10px}.course-draft-card footer .button-row{gap:6px}.course-draft-card footer .btn{min-height:32px;padding:6px 9px;font-size:10px}
html[data-organization-theme="custom"] .course-authoring-section,html[data-organization-theme="custom"] .course-authoring-preview,html[data-organization-theme="custom"] .course-draft-card{border-color:var(--organization-theme-border)}html[data-organization-theme="custom"] .course-authoring-section-icon,html[data-organization-theme="custom"] .course-draft-count{background:var(--theme-soft);color:var(--theme-primary-deep)}html[data-organization-theme="custom"] .course-authoring-lesson,html[data-organization-theme="custom"] .course-authoring-question,html[data-organization-theme="custom"] .course-authoring-page{border-color:var(--organization-theme-border)}html[data-organization-theme="custom"] .course-authoring-item-head{background:var(--theme-soft)}html[data-organization-theme="custom"] .course-authoring-callout{border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}html[data-organization-theme="custom"] .course-authoring-preview-cover{background:radial-gradient(circle at 92% 6%,var(--theme-glow),transparent 43%),linear-gradient(135deg,var(--theme-primary),var(--theme-primary-deep))}
@media(max-width:1120px){.course-authoring-layout{grid-template-columns:1fr}.course-authoring-preview{position:static;max-width:none}.course-authoring-preview-page{max-width:700px}.course-authoring-heading .page-heading .button-row{justify-content:flex-start}}
@media(max-width:680px){.course-authoring-section{padding:18px}.course-authoring-section-head,.course-authoring-item-head{gap:10px;flex-wrap:wrap}.course-authoring-section-head .btn{margin-left:50px}.course-authoring-section-head h2{font-size:18px}.course-authoring-fields,.course-authoring-lesson-fields{grid-template-columns:1fr}.course-authoring-pages{padding:13px}.course-authoring-page>.course-authoring-fields,.course-authoring-question>.course-authoring-fields{padding-left:13px;padding-right:13px}.course-authoring-callout{margin-left:13px;margin-right:13px}.course-authoring-option{grid-template-columns:24px minmax(0,1fr)}.course-authoring-option .btn{grid-column:2;justify-self:start}.course-draft-grid{grid-template-columns:1fr;padding:15px}.course-draft-card footer{align-items:flex-start;flex-direction:column}.course-authoring-preview{display:none}.course-authoring-heading .page-heading .button-row{display:grid;grid-template-columns:1fr 1fr;width:100%}.course-authoring-heading .page-heading .button-row .btn{width:100%}}

.course-authoring-structure-note{display:flex;align-items:flex-start;gap:10px;margin:18px 0 0;padding:13px 15px;border:1px solid #c9dfdd;border-radius:10px;background:#f2f9f8;color:#4d6970}.course-authoring-structure-note>.icon{flex:none;width:19px;height:19px;color:var(--theme-primary,#176e68)}.course-authoring-structure-note strong{display:block;color:#31575b;font-size:12px}.course-authoring-structure-note p{margin:3px 0 0;font-size:11px;line-height:1.5}
html[data-organization-theme="custom"] .course-authoring-structure-note{border-color:var(--organization-theme-border);background:var(--organization-theme-surface);color:var(--organization-theme-ink)}
@media(max-width:680px){.course-authoring-heading .page-heading .authoring-preview-toggle{display:none}}

.auth-back-home{display:inline-flex;align-items:center;gap:7px;margin-bottom:28px;color:#42645d;font-size:12px;font-weight:680;text-decoration:none}.auth-back-home:hover{color:#176e68}.auth-back-home .icon{width:16px;height:16px}

/* Multipart native courses use the same status language at the course, part,
   topic, and assessment levels. */
.learning-tree-part>.learning-tree-row{grid-template-columns:var(--tree-control-column) minmax(0,1fr) 30px}
.learning-tree-part>.learning-tree-row>.learning-tree-link{min-width:0;padding-top:8px;padding-bottom:8px}
.learning-tree-part>.learning-tree-row>.learning-tree-link .learning-tree-label>span{font-weight:650}
.learning-tree-part-children{
  /* Use the shared 32px rhythm so the part branch meets its status icon and
     the topic rail starts directly beneath that status. */
  --tree-child-offset:32px;
}
.learning-tree-native-parts>.learning-tree-part + .learning-tree-part{margin-top:0}
.native-part-overview .course-detail-layout{grid-template-columns:minmax(270px,340px) minmax(0,1fr)}
.native-part-overview .course-detail-outline-list{display:grid;gap:1px}
.native-part-overview .course-detail-outline-item{border-radius:8px}
.native-part-overview .native-part-outline-assessment{margin-top:5px;padding-top:14px;border-top:1px solid #e3ecee;border-radius:0}
.native-part-about{align-content:start}
.native-part-expectation{gap:8px;padding-top:2px}
.native-part-expectation p{margin:0;color:#5c747d;font-size:13px;line-height:1.65}
.native-part-about .course-introduction-footer{margin-top:auto}
.native-part-about .course-introduction-footer a{overflow:hidden;color:#317970;font-size:10px;font-weight:680;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.native-part-overview .course-detail-layout{grid-template-columns:1fr}}
.native-part-nav-group{display:grid;gap:3px;margin:5px 0 10px;padding:0 0 9px;border-bottom:1px solid #e4edef}
.native-part-nav-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 3px 3px;padding:8px 7px;border-radius:8px;background:#f3f8f8;color:#31545d}
.native-part-nav-heading>span:first-child{display:grid;min-width:0;gap:2px}
.native-part-nav-heading small{color:#6e888e;font-size:9px;font-weight:780;letter-spacing:.08em;text-transform:uppercase}
.native-part-nav-heading strong{overflow:hidden;font-size:11px;font-weight:720;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.native-part-nav-status{display:grid;min-width:38px;height:25px;place-items:center;padding:0 7px;border:1px solid #cfdee1;border-radius:99px;background:#fff;color:#668087;font-size:9px;font-weight:800}
.native-part-nav-status.in_progress{border-color:#edbf7a;color:#9b5b18}
.native-part-nav-status.completed{border-color:#a9d9c8;color:#197364}
.native-part-nav-status.failed{border-color:#e3aaa5;color:#b5463e}
.lesson-nav-result{display:grid;width:16px;height:16px;place-items:center;margin-top:2px;border:1px solid currentColor;border-radius:50%;color:#58737a;font-size:9px;font-style:normal;font-weight:800}
.lesson-nav-result .icon{width:10px;height:10px;stroke-width:3}
.lesson-nav-result.passed{color:#197364;background:#e4f5ef}.lesson-nav-result.failed{display:none;color:#b5463e;background:#fff0ed}
.native-part-feedback-actions{margin-top:25px}
.course-overlay-native .lesson-nav.is-collapsed .native-part-nav-heading{display:none}
.course-overlay-native .lesson-nav.is-collapsed .native-part-nav-group{margin:3px 0 7px;padding-bottom:7px}
html[data-organization-navigation="light"] .native-part-nav-heading{background:var(--theme-sidebar-light-soft);color:var(--theme-sidebar-light-text)}
@media(max-width:680px){.native-part-nav-heading strong{font-size:11px}.native-part-feedback-actions{align-items:stretch;flex-direction:column}.native-part-feedback-actions .btn{width:100%}}

/* Native authoring begins with catalog metadata, then moves focused content work
   into the same full-screen surface learners use for course delivery. */
.course-authoring-metadata-page{max-width:980px}
.course-authoring-metadata-form{max-width:920px}
.course-authoring-metadata-section{margin:0}
.course-authoring-next-step{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;padding:22px 24px;border:1px solid #cfe3e1;border-radius:14px;background:linear-gradient(130deg,var(--theme-soft,#edf8f6),#fff);box-shadow:0 5px 18px #153b3808}
.course-authoring-next-step-copy{display:flex;align-items:flex-start;gap:14px;min-width:0}
.course-authoring-next-step-copy>.course-authoring-section-icon{margin-top:2px}
.course-authoring-next-step h2{margin:3px 0 5px;color:#294954;font-size:19px;line-height:1.3}
.course-authoring-next-step p{max-width:650px;margin:0;color:#617982;font-size:13px;line-height:1.55}
.course-authoring-next-step-actions{display:flex;flex:none;align-items:center}
.course-authoring-content-stats{display:flex;gap:13px;flex-wrap:wrap;margin-top:14px;color:#5c777f;font-size:11px}
.course-authoring-content-stats span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.course-authoring-content-stats .icon{width:14px;height:14px;color:var(--theme-primary,#176e68)}
.course-authoring-content-stats strong{color:#31575b;font-size:12px}
.course-authoring-overlay{width:min(1600px,100%);height:min(1000px,100%);background:#eef5f5}
.course-authoring-overlay-head{padding:17px 22px}
.course-authoring-overlay .course-overlay-actions{gap:8px}
.course-authoring-overlay-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(355px,440px);min-height:0;overflow:hidden;background:#eef5f5}
.course-authoring-overlay-editor{display:flex;min-width:0;min-height:0;overflow:hidden;background:#f4f8f8}
.course-authoring-overlay-editor-scroll{display:grid;align-content:start;gap:17px;min-width:0;min-height:0;width:100%;overflow:auto;overscroll-behavior:contain;padding:24px;scrollbar-color:#b8cdd1 transparent;scrollbar-width:thin}
.course-authoring-overlay-editor-scroll .course-authoring-section{margin:0}
.course-authoring-overlay-preview-pane{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px;border-left:1px solid #d6e4e6;background:linear-gradient(160deg,#e9f3f3,#f8fbfb);scrollbar-color:#b8cdd1 transparent;scrollbar-width:thin}
.course-authoring-overlay .course-authoring-preview{position:sticky;top:0;display:block;max-width:none;margin:0}
.course-authoring-overlay .course-authoring-preview-page{max-width:none}
.course-authoring-overlay .course-overlay-foot{background:#f6fafb}
html[data-organization-theme="custom"] .course-authoring-next-step{border-color:var(--organization-theme-border);background:linear-gradient(130deg,var(--theme-soft),var(--organization-theme-surface))}
html[data-organization-theme="custom"] .course-authoring-overlay-workspace{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-authoring-overlay-editor{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-authoring-overlay-preview-pane{border-color:var(--organization-theme-border);background:linear-gradient(160deg,var(--theme-soft),var(--organization-theme-surface))}
.course-authoring-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #d7e5e7;border-radius:10px;background:#f8fbfb}.course-authoring-lesson-pagination{margin-top:18px}.course-authoring-page-pagination{margin-bottom:14px;background:#f3f9f8}.course-authoring-pagination-copy{display:grid;min-width:0;gap:2px}.course-authoring-pagination-copy strong{overflow:hidden;color:#31535d;font-size:13px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.course-authoring-pagination-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.course-authoring-pagination-actions .btn{white-space:nowrap}html[data-organization-theme="custom"] .course-authoring-pagination{border-color:var(--organization-theme-border);background:var(--theme-soft)}
@media(max-width:1020px){
  .course-authoring-overlay-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(290px,.62fr)}
  .course-authoring-overlay-preview-pane{border-top:1px solid #d6e4e6;border-left:0}
}
@media(max-width:680px){
  .course-authoring-next-step{align-items:flex-start;flex-direction:column;padding:19px}
  .course-authoring-next-step-actions,.course-authoring-next-step-actions .btn{width:100%}
  .course-authoring-overlay-head{align-items:flex-start;padding:14px 16px}
  .course-authoring-overlay .course-overlay-title{gap:10px}
  .course-authoring-overlay .course-overlay-mark{width:34px;height:34px}
  .course-authoring-overlay .course-overlay-actions{justify-content:flex-start;width:100%}
  .course-authoring-overlay .course-overlay-actions .badge{display:none}
  .course-authoring-overlay-workspace{grid-template-rows:minmax(0,1fr) minmax(240px,.48fr)}
  .course-authoring-overlay-editor-scroll,.course-authoring-overlay-preview-pane{padding:15px}
  .course-authoring-overlay .course-authoring-preview{display:block}
  .course-authoring-overlay .course-overlay-foot{align-items:flex-start;flex-direction:column;gap:4px;padding:10px 16px}
  .course-authoring-pagination{align-items:flex-start;flex-direction:column}.course-authoring-pagination-actions{justify-content:flex-start;width:100%}
}

/* The native authoring workspace borrows the learner player's visual language:
   a persistent course outline, a calm page surface for editing, and a separate
   inspection area.  The editor remains one continuous workspace rather than a
   sequence of modal wizard screens. */
.course-authoring-overlay-workspace:has(> .course-authoring-wizard){display:block;background:#edf5f5}
.course-authoring-overlay-workspace>.course-authoring-wizard{height:100%;min-height:0}
.course-authoring-wizard{
  display:grid;
  grid-template-areas:
    "rail content inspector"
    "rail footer footer";
  grid-template-columns:minmax(224px,258px) minmax(0,1fr) minmax(312px,398px);
  grid-template-rows:minmax(0,1fr) auto;
  min-width:0;
  min-height:0;
  height:100%;
  overflow:hidden;
  background:#eef6f6;
}
.course-authoring-wizard-rail{
  grid-area:rail;
  display:flex;
  min-width:0;
  min-height:0;
  flex-direction:column;
  gap:12px;
  overflow:auto;
  overscroll-behavior:contain;
  padding:17px 11px 16px;
  border-right:1px solid #d6e4e6;
  background:linear-gradient(180deg,#fff 0%,#f7fbfb 100%);
  scrollbar-color:#b8cdd1 transparent;
  scrollbar-width:thin;
}
.course-authoring-wizard-rail-head{
  display:grid;
  gap:3px;
  padding:3px 8px 12px;
  border-bottom:1px solid #e1ebed;
}
.course-authoring-wizard-rail-head .eyebrow{color:#67858a;font-size:9px;letter-spacing:.1em}
.course-authoring-wizard-rail-head strong{overflow:hidden;color:#284d57;font-size:14px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.course-authoring-wizard-rail-head small{color:#718990;font-size:10px;line-height:1.4}
.course-authoring-wizard-step-list{display:grid;gap:5px;min-width:0}
.course-authoring-wizard-step{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  align-items:center;
  width:100%;
  min-width:0;
  gap:9px;
  padding:9px 9px;
  border:1px solid transparent;
  border-radius:9px;
  background:transparent;
  color:#5d7980;
  cursor:pointer;
  text-align:left;
  transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease;
}
.course-authoring-wizard-step:hover{border-color:#c8dcde;background:#f1f8f7;color:#285b60}
.course-authoring-wizard-step:focus-visible{border-color:var(--theme-primary,#176e68);outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary,#176e68) 20%,transparent)}
.course-authoring-wizard-step.active,.course-authoring-wizard-step[aria-current="page"]{
  border-color:color-mix(in srgb,var(--theme-primary,#176e68) 42%,#b9d7d4);
  background:var(--theme-soft,#e8f4f2);
  color:#1b625e;
  box-shadow:0 3px 10px #163b420d;
}
.course-authoring-wizard-step.is-complete:not(.active),.course-authoring-wizard-step[data-state="complete"]:not(.active){color:#367b70}
.course-authoring-wizard-step-index{
  display:grid;
  width:27px;
  height:27px;
  place-items:center;
  border:1px solid #c7dddf;
  border-radius:50%;
  background:#fff;
  color:#467078;
  font-size:10px;
  font-weight:780;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.course-authoring-wizard-step.active .course-authoring-wizard-step-index,.course-authoring-wizard-step[aria-current="page"] .course-authoring-wizard-step-index{border-color:var(--theme-primary,#176e68);background:var(--theme-primary,#176e68);color:#fff}
.course-authoring-wizard-step.is-complete:not(.active) .course-authoring-wizard-step-index,.course-authoring-wizard-step[data-state="complete"]:not(.active) .course-authoring-wizard-step-index{border-color:#78bcad;background:#e3f4ee;color:#187564}
.course-authoring-wizard-step-copy{display:grid;min-width:0;gap:1px}
.course-authoring-wizard-step-copy small{overflow:hidden;color:inherit;font-size:9px;font-weight:720;letter-spacing:.075em;line-height:1.25;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.course-authoring-wizard-step-copy strong{overflow:hidden;color:#365861;font-size:11px;font-weight:710;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.course-authoring-wizard-step.active .course-authoring-wizard-step-copy strong,.course-authoring-wizard-step[aria-current="page"] .course-authoring-wizard-step-copy strong{color:#215d5b}
.course-authoring-wizard-step .icon{width:16px;height:16px}
.course-authoring-wizard-content{
  grid-area:content;
  min-width:0;
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  padding:clamp(22px,3vw,38px) clamp(22px,4vw,52px) 30px;
  background:#fff;
  scrollbar-color:#b8cdd1 transparent;
  scrollbar-width:thin;
}
.course-authoring-wizard-content>*{max-width:920px;margin-right:auto;margin-left:auto}
.course-authoring-wizard-content>.course-authoring-pagination{max-width:920px;margin-top:0;margin-bottom:18px}
.course-authoring-edit-region{
  position:relative;
  display:grid;
  gap:17px;
  margin:0 0 18px;
  padding:20px;
  border:1px solid #d9e7e9;
  border-radius:13px;
  background:linear-gradient(145deg,#fff,#fbfdfd);
  box-shadow:0 3px 12px #163b4208;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.course-authoring-edit-region:focus-within{border-color:color-mix(in srgb,var(--theme-primary,#176e68) 54%,#c6dedd);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary,#176e68) 11%,transparent),0 5px 16px #163b420b}
.course-authoring-edit-region-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:15px;
  min-width:0;
  padding:0 0 14px;
  border-bottom:1px solid #e5edef;
}
.course-authoring-edit-region-head>div{display:grid;min-width:0;gap:3px}
.course-authoring-edit-region-head .eyebrow{color:#66858b;font-size:9px;letter-spacing:.1em}
.course-authoring-edit-region-head h2,.course-authoring-edit-region-head h3,.course-authoring-edit-region-head strong{margin:0;color:#284954;font-size:16px;line-height:1.35}
.course-authoring-edit-region-head p,.course-authoring-edit-region-head small{margin:0;color:#698188;font-size:11px;line-height:1.5}
.course-authoring-edit-region .field{margin:0}
.course-authoring-edit-region :is(input[type="text"],input[type="number"],select,textarea){background:#fcfefe}
.course-authoring-edit-region textarea{min-height:116px;line-height:1.6}
.course-authoring-edit-region .course-authoring-callout{margin:0;padding:15px;border-radius:10px}
.course-authoring-wizard-inspector{
  grid-area:inspector;
  display:flex;
  min-width:0;
  min-height:0;
  flex-direction:column;
  gap:13px;
  overflow:auto;
  overscroll-behavior:contain;
  padding:20px;
  border-left:1px solid #d6e4e6;
  background:linear-gradient(160deg,#eaf4f4 0%,#f8fbfb 100%);
  scrollbar-color:#b8cdd1 transparent;
  scrollbar-width:thin;
}
.course-authoring-wizard-inspector-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:1px 2px 2px}
.course-authoring-wizard-inspector-head .eyebrow{color:#608087;font-size:9px;letter-spacing:.1em}
.course-authoring-wizard-inspector-head strong{color:#31545e;font-size:13px;line-height:1.35}
.course-authoring-learner-surface{
  display:grid;
  min-width:0;
  overflow:hidden;
  border:1px solid #ccdfdf;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 24px #163b4210;
}
.course-authoring-learner-surface>.course-authoring-preview{position:static;display:block;max-width:none;margin:0;border:0;border-radius:0;box-shadow:none}
.course-authoring-learner-surface .course-authoring-preview-top{background:#f8fbfb}
.course-authoring-learner-surface .course-authoring-preview-cover{padding:22px 20px 19px}
.course-authoring-learner-surface .course-authoring-preview-page{min-height:260px;padding:24px 20px}
.course-authoring-learner-surface .course-authoring-preview-page h3{font-size:21px}
.course-authoring-wizard-footer{
  grid-area:footer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-width:0;
  padding:12px 20px;
  border-top:1px solid #dbe7e9;
  background:#f8fbfb;
  color:#627b82;
  font-size:11px;
  line-height:1.45;
}
.course-authoring-wizard-footer>span{display:inline-flex;align-items:center;min-width:0;gap:7px}
.course-authoring-wizard-footer .icon{width:14px;height:14px;flex:none;color:var(--theme-primary,#176e68)}
.course-authoring-wizard-footer .button-row{margin-left:auto}
.course-authoring-overlay.is-read-only .course-authoring-edit-region{background:#fafcfc}
.course-authoring-overlay.is-read-only .course-authoring-edit-region-head:after{content:'Read only';display:inline-flex;align-items:center;height:22px;padding:0 7px;border:1px solid #d5e1e3;border-radius:99px;background:#f3f7f8;color:#688087;font-size:9px;font-weight:760;letter-spacing:.06em;text-transform:uppercase}
html[data-organization-theme="custom"] .course-authoring-overlay-workspace:has(> .course-authoring-wizard),html[data-organization-theme="custom"] .course-authoring-wizard{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-authoring-wizard-rail{border-color:var(--organization-theme-border);background:linear-gradient(180deg,#fff,var(--organization-theme-surface))}
html[data-organization-theme="custom"] .course-authoring-wizard-step:hover{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-authoring-wizard-step.active,html[data-organization-theme="custom"] .course-authoring-wizard-step[aria-current="page"]{border-color:var(--theme-primary);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-authoring-wizard-step.active .course-authoring-wizard-step-copy strong,html[data-organization-theme="custom"] .course-authoring-wizard-step[aria-current="page"] .course-authoring-wizard-step-copy strong{color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-authoring-wizard-content{background:#fff}
html[data-organization-theme="custom"] .course-authoring-edit-region{border-color:var(--organization-theme-border);background:linear-gradient(145deg,#fff,var(--organization-theme-surface))}
html[data-organization-theme="custom"] .course-authoring-edit-region-head{border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] .course-authoring-wizard-inspector{border-color:var(--organization-theme-border);background:linear-gradient(160deg,var(--theme-soft),var(--organization-theme-surface))}
html[data-organization-theme="custom"] .course-authoring-learner-surface{border-color:var(--organization-theme-border);box-shadow:0 8px 24px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .course-authoring-wizard-footer{border-color:var(--organization-theme-border-subtle);background:var(--organization-theme-surface);color:var(--organization-theme-muted)}
@media(max-width:1280px){
  .course-authoring-wizard{grid-template-columns:minmax(210px,234px) minmax(0,1fr) minmax(285px,340px)}
  .course-authoring-wizard-content{padding-right:28px;padding-left:28px}
  .course-authoring-wizard-inspector{padding:17px}
}
@media(max-width:1080px){
  .course-authoring-wizard{
    grid-template-areas:
      "rail content"
      "rail inspector"
      "rail footer";
    grid-template-columns:minmax(204px,230px) minmax(0,1fr);
    grid-template-rows:minmax(0,1fr) minmax(245px,.55fr) auto;
  }
  .course-authoring-wizard-inspector{border-top:1px solid #d6e4e6;border-left:0}
  .course-authoring-learner-surface .course-authoring-preview-page{min-height:0}
}
@media(max-width:760px){
  .course-authoring-wizard{
    grid-template-areas:
      "rail"
      "content"
      "inspector"
      "footer";
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto minmax(0,1fr) minmax(230px,.48fr) auto;
  }
  .course-authoring-wizard-rail{display:block;overflow-x:auto;overflow-y:hidden;padding:11px;border-right:0;border-bottom:1px solid #d6e4e6;white-space:nowrap}
  .course-authoring-wizard-rail-head{display:inline-grid;min-width:172px;margin-right:8px;padding:2px 10px 3px 2px;border-right:1px solid #e1ebed;border-bottom:0;vertical-align:middle}
  .course-authoring-wizard-step-list{display:inline-flex;gap:6px;vertical-align:middle}
  .course-authoring-wizard-step{width:min(236px,68vw);flex:0 0 min(236px,68vw);padding:8px}
  .course-authoring-wizard-content{padding:21px 17px 25px}
  .course-authoring-edit-region{gap:14px;margin-bottom:14px;padding:16px;border-radius:11px}
  .course-authoring-edit-region-head{gap:10px;padding-bottom:12px}
  .course-authoring-edit-region-head h2,.course-authoring-edit-region-head h3,.course-authoring-edit-region-head strong{font-size:15px}
  .course-authoring-wizard-inspector{padding:15px;border-top:1px solid #d6e4e6}
  .course-authoring-wizard-footer{align-items:flex-start;flex-wrap:wrap;padding:11px 15px}
  .course-authoring-wizard-footer .button-row{width:100%;margin-left:0}
}

/* Player-editor details: topic/page hierarchy stays visible in the rail while
   the author works in the learner-shaped center canvas. */
.course-authoring-overlay{grid-template-rows:auto minmax(0,1fr)}
.course-authoring-wizard-topic{display:grid;min-width:0;gap:3px}
.course-authoring-wizard-topic+.course-authoring-wizard-topic{margin-top:3px;padding-top:5px;border-top:1px solid #edf2f3}
.course-authoring-wizard-topic-head>.course-authoring-wizard-step{min-height:46px}
.course-authoring-wizard-step.is-parent-active{border-color:#d1e3e4;background:#f2f9f8;color:#286963}
.course-authoring-wizard-step.is-parent-active .course-authoring-wizard-step-index{border-color:#8ec4bc;background:#e5f4ef;color:#217066}
.course-authoring-wizard-step.is-parent-active .course-authoring-wizard-step-copy strong{color:#28625e}
.course-authoring-wizard-page-list{
  position:relative;
  display:grid;
  min-width:0;
  gap:3px;
  margin:0 0 2px 22px;
  padding:4px 0 4px 13px;
  border-left:1px solid #d4e4e6;
}
.course-authoring-wizard-page-list>.course-authoring-wizard-step{position:relative;grid-template-columns:28px minmax(0,1fr);min-height:39px;padding:7px 7px}
.course-authoring-wizard-page-list>.course-authoring-wizard-step:before{position:absolute;top:50%;left:-14px;width:13px;border-top:1px solid #d4e4e6;content:''}
.course-authoring-wizard-page-list>.course-authoring-wizard-step-index{width:26px;height:24px;border-radius:7px;background:#f8fbfb;font-size:9px}
.course-authoring-wizard-page-list>.course-authoring-wizard-step.active .course-authoring-wizard-step-index,.course-authoring-wizard-page-list>.course-authoring-wizard-step[aria-current="page"] .course-authoring-wizard-step-index{border-radius:7px}
.course-authoring-wizard-page-list>.course-authoring-wizard-step-copy strong{font-size:10px}
.course-authoring-wizard-add-page{position:relative;margin:1px 0 1px 28px;padding-left:8px}
.course-authoring-wizard-add-page:before{position:absolute;top:50%;left:-6px;width:6px;border-top:1px solid #d4e4e6;content:''}
.course-authoring-wizard-add-page .btn{min-height:28px;padding:5px 7px;font-size:10px}
.course-authoring-wizard-add-topic{margin:8px 4px 0;padding:10px 4px 0;border-top:1px solid #dce8ea}
.course-authoring-wizard-add-topic .btn{width:100%;justify-content:center}
.course-authoring-canvas-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin:0 auto 22px;
  padding:1px 0 20px;
  border-bottom:1px solid #dfeaec;
}
.course-authoring-canvas-heading>div{display:grid;min-width:0;gap:6px}
.course-authoring-canvas-heading .eyebrow{color:var(--theme-primary,#176e68);font-size:10px;font-weight:760;letter-spacing:.1em}
.course-authoring-canvas-heading h1{margin:0;color:#254854;font-size:clamp(25px,2.2vw,33px);font-weight:770;letter-spacing:-.8px;line-height:1.16}
.course-authoring-canvas-heading p{max-width:720px;margin:0;color:#607980;font-size:13px;line-height:1.55}
.course-authoring-canvas-heading>.button-row{flex:none;justify-content:flex-end}
.course-authoring-canvas-heading .btn{white-space:nowrap}
.course-authoring-wizard-content>.course-authoring-pagination{box-shadow:0 2px 8px #163b4206}
.course-authoring-question-pagination{background:#f3f9f8}
.course-authoring-edit-region .course-authoring-question{border:0;border-radius:0;background:transparent}
.course-authoring-edit-region .course-authoring-question>.course-authoring-item-head{margin:-1px -1px 0;padding:0 0 15px;border-bottom:1px solid #e5edef;background:transparent}
.course-authoring-edit-region .course-authoring-question>.course-authoring-fields{padding:17px 0 0}
.course-authoring-edit-region .course-authoring-options{margin:4px -1px 0;padding:15px 0;border-color:#e5edef;background:transparent}
.course-authoring-edit-region .course-authoring-question .course-authoring-option{padding:0 1px}
.course-authoring-edit-region .course-authoring-question .course-authoring-add-row{padding:4px 1px 0}
.course-authoring-media-preview{display:grid;gap:9px;margin:0;padding:10px;border:1px solid #d5e5e6;border-radius:11px;background:#f5faf9}
.course-authoring-media-preview img{display:block;width:100%;max-height:360px;border-radius:7px;background:#e5efef;object-fit:contain}
.course-authoring-media-preview figcaption{padding:1px 3px 3px;color:#627d84;font-size:11px;line-height:1.5}
.course-authoring-media-note{margin:0;padding:16px 17px;border:1px dashed #bfd6d7;border-radius:10px;background:#fafcfc;color:#657e85;font-size:12px;line-height:1.55}
.course-authoring-empty-canvas{display:grid;min-height:390px;place-items:center;border:1px dashed #c4dadd;border-radius:14px;background:linear-gradient(145deg,#fbfdfd,#f1f8f7)}
.course-authoring-empty-canvas .empty{max-width:520px;padding:48px 26px}
.course-authoring-empty-canvas .empty h2{color:#315861}
.course-authoring-wizard-inspector>.course-authoring-learner-surface{flex:1}
.course-authoring-learner-surface .course-authoring-preview{height:100%}
html[data-organization-theme="custom"] .course-authoring-wizard-topic+.course-authoring-wizard-topic{border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] .course-authoring-wizard-step.is-parent-active{border-color:var(--organization-theme-border);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-authoring-wizard-step.is-parent-active .course-authoring-wizard-step-index{border-color:var(--theme-primary);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-authoring-wizard-page-list,html[data-organization-theme="custom"] .course-authoring-wizard-page-list>.course-authoring-wizard-step:before,html[data-organization-theme="custom"] .course-authoring-wizard-add-page:before{border-color:var(--organization-theme-border)}
html[data-organization-theme="custom"] .course-authoring-wizard-page-list>.course-authoring-wizard-step-index{border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-authoring-wizard-add-topic,html[data-organization-theme="custom"] .course-authoring-canvas-heading,html[data-organization-theme="custom"] .course-authoring-edit-region .course-authoring-question>.course-authoring-item-head,html[data-organization-theme="custom"] .course-authoring-edit-region .course-authoring-options{border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] .course-authoring-canvas-heading h1{color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] .course-authoring-canvas-heading p{color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .course-authoring-media-preview{border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-authoring-media-note,html[data-organization-theme="custom"] .course-authoring-empty-canvas{border-color:var(--organization-theme-border);background:var(--organization-theme-surface);color:var(--organization-theme-muted)}
@media(max-width:760px){
  .course-authoring-wizard-rail{display:flex;max-height:224px;overflow:auto;padding:12px 10px;white-space:normal}
  .course-authoring-wizard-rail-head{display:grid;min-width:0;margin:0;padding:2px 7px 10px;border-right:0;border-bottom:1px solid #e1ebed;vertical-align:initial}
  .course-authoring-wizard-step-list{display:grid;width:100%;gap:4px;vertical-align:initial}
  .course-authoring-wizard-step{width:100%;flex:none}
  .course-authoring-wizard-page-list{margin-left:20px}
  .course-authoring-canvas-heading{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:18px;padding-bottom:17px}
  .course-authoring-canvas-heading>.button-row{justify-content:flex-start;width:100%}
  .course-authoring-canvas-heading h1{font-size:25px}
  .course-authoring-media-preview img{max-height:270px}
  .course-authoring-empty-canvas{min-height:280px}
}

/* The author canvas uses the learner player's hierarchy, but keeps every
   editable control inside a deliberately scoped authoring surface.  Inputs
   read as course content until an author points to or enters them. */
.course-authoring-player-canvas{
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  min-width:0;
  min-height:min(650px,100%);
  overflow:hidden;
  border:1px solid #d4e4e6;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px #163b420b;
}
.course-authoring-wizard-content:has(> .course-authoring-player-canvas){
  display:grid;
  grid-template-rows:minmax(0,1fr);
  overflow:hidden;
}
.course-authoring-wizard-content:has(> .course-authoring-player-canvas)>.course-authoring-player-canvas{height:100%}
.course-authoring-player-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-width:0;
  padding:15px clamp(18px,3vw,29px);
  border-bottom:1px solid #dce9eb;
  background:linear-gradient(90deg,#fff,#f4faf9);
  color:#607c83;
  font-size:11px;
  font-weight:690;
  line-height:1.4;
}
.course-authoring-player-top>span,
.course-authoring-player-top>div{min-width:0}
.course-authoring-player-top strong{color:#2d5860;font-size:12px;font-weight:780}
.course-authoring-player-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex:none;
  padding:5px 8px;
  border:1px solid #c7dedc;
  border-radius:99px;
  background:#edf7f5;
  color:#256e67;
  font-size:10px;
  font-weight:780;
  letter-spacing:.045em;
  line-height:1;
  text-transform:uppercase;
  white-space:nowrap;
}
.course-authoring-player-status .icon{width:13px;height:13px}
.course-authoring-player-scroll{
  min-width:0;
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  padding:clamp(24px,4vw,48px) clamp(20px,5vw,66px);
  background:radial-gradient(circle at 95% 0,#e9f7f4 0,transparent 28%),#fff;
  scrollbar-color:#b8cdd1 transparent;
  scrollbar-width:thin;
}
.course-authoring-player-page{
  display:grid;
  align-content:start;
  gap:20px;
  width:min(100%,820px);
  min-height:390px;
  margin:0 auto;
  color:#31545d;
}
.course-authoring-player-page>*{min-width:0}
.course-authoring-player-page :is(h1,h2,h3,p,ul,ol,dl,figure){margin-top:0;margin-bottom:0}
.course-authoring-player-page h1,.course-authoring-player-page h2{color:#214852;font-weight:780;letter-spacing:-.72px;line-height:1.18}
.course-authoring-player-page h1{font-size:clamp(28px,3vw,39px)}
.course-authoring-player-page h2{font-size:clamp(24px,2.6vw,34px)}
.course-authoring-player-page h3{color:#507078;font-size:14px;font-weight:740;line-height:1.4}
.course-authoring-player-page p{color:#536f77;font-size:16px;line-height:1.72}
.course-authoring-player-page .lead{color:#47656e;font-size:18px;font-weight:520;line-height:1.68}

.course-authoring-inline-field{
  position:relative;
  display:block;
  min-width:0;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.course-authoring-inline-field:hover{border-color:#c9dce0;background:#f8fbfb}
.course-authoring-inline-field:focus-within{
  z-index:1;
  border-color:var(--theme-primary,#176e68);
  background:#fff;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary,#176e68) 15%,transparent);
}
.course-authoring-inline-field-label{
  position:absolute;
  z-index:2;
  top:-10px;
  left:8px;
  max-width:calc(100% - 16px);
  overflow:hidden;
  padding:2px 5px;
  border:1px solid #c9dce0;
  border-radius:5px;
  background:#fff;
  color:#52757b;
  font-size:9px;
  font-weight:760;
  letter-spacing:.045em;
  line-height:1.2;
  opacity:0;
  pointer-events:none;
  text-overflow:ellipsis;
  text-transform:uppercase;
  transform:translateY(3px);
  transition:opacity .15s ease,transform .15s ease;
  white-space:nowrap;
}
.course-authoring-inline-field:hover>.course-authoring-inline-field-label,
.course-authoring-inline-field:focus-within>.course-authoring-inline-field-label{opacity:1;transform:translateY(0)}
.course-authoring-inline-field-hint{
  display:block;
  max-height:0;
  overflow:hidden;
  color:#688087;
  font-size:10px;
  line-height:1.4;
  opacity:0;
  transition:max-height .15s ease,margin .15s ease,opacity .15s ease;
}
.course-authoring-inline-field:focus-within>.course-authoring-inline-field-hint{max-height:40px;margin:4px 7px 2px;opacity:1}
.course-authoring-inline-field:is(input,textarea,select),
.course-authoring-inline-field :is(input,textarea,select){
  display:block;
  width:100%;
  min-width:0;
  box-sizing:border-box;
  margin:0;
  border:0;
  border-radius:inherit;
  outline:0;
  background:transparent;
  color:inherit;
  font:inherit;
  letter-spacing:inherit;
  line-height:inherit;
}
.course-authoring-inline-field :is(input,textarea,select):focus,
.course-authoring-inline-field:is(input,textarea,select):focus{box-shadow:none}
.course-authoring-inline-field textarea{resize:vertical}
.course-authoring-inline-field :is(input,textarea)::placeholder,
.course-authoring-inline-field:is(input,textarea)::placeholder{color:#9cafb2;opacity:1}
.course-authoring-inline-field--eyebrow{
  display:inline-flex;
  width:auto;
  max-width:100%;
  color:var(--theme-primary,#176e68);
  font-size:10px;
  font-weight:790;
  letter-spacing:.105em;
  line-height:1.4;
  text-transform:uppercase;
}
.course-authoring-inline-field--eyebrow :is(input,textarea),
.course-authoring-inline-field--eyebrow:is(input,textarea){min-width:min(100%,185px);padding:4px 6px;text-transform:uppercase}
.course-authoring-inline-field--title{color:#214852;font-size:clamp(28px,3vw,39px);font-weight:780;letter-spacing:-.72px;line-height:1.18}
.course-authoring-inline-field--title :is(input,textarea),
.course-authoring-inline-field--title:is(input,textarea){min-height:1.2em;padding:5px 7px;font:inherit;letter-spacing:inherit;line-height:inherit;resize:none}
.course-authoring-inline-field--lead{color:#47656e;font-size:18px;font-weight:520;line-height:1.68}
.course-authoring-inline-field--lead :is(input,textarea),
.course-authoring-inline-field--lead:is(input,textarea){min-height:4.6em;padding:7px 8px;font:inherit;letter-spacing:inherit;line-height:inherit}
.course-authoring-inline-field--meta{color:#506f77;font-size:13px;font-weight:650;line-height:1.5}
.course-authoring-inline-field--meta :is(input,textarea,select),
.course-authoring-inline-field--meta:is(input,textarea,select){min-height:34px;padding:7px 8px;font:inherit;letter-spacing:inherit;line-height:inherit}
.course-authoring-player-topic{
  display:flex;
  align-items:center;
  min-width:0;
  padding:7px 10px;
  border-left:3px solid var(--theme-primary,#176e68);
  background:linear-gradient(90deg,var(--theme-soft,#e8f4f2),transparent);
}
.course-authoring-inline-field--topic{width:min(100%,520px);color:#37686a;font-size:13px;font-weight:740;line-height:1.4}
.course-authoring-inline-field--topic :is(input,textarea),
.course-authoring-inline-field--topic:is(input,textarea){min-height:1.5em;padding:4px 6px;font:inherit;letter-spacing:inherit;line-height:inherit}

.course-authoring-inline-points{
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
.course-authoring-inline-points>li,
.course-authoring-inline-points>[data-point-row]{
  position:relative;
  display:grid;
  grid-template-columns:16px minmax(0,1fr) auto;
  align-items:start;
  gap:9px;
  min-width:0;
  color:#506c74;
  font-size:15px;
  line-height:1.62;
}
.course-authoring-inline-points>li::before,
.course-authoring-inline-points>[data-point-row]::before{
  width:6px;
  height:6px;
  margin-top:.68em;
  border-radius:50%;
  background:var(--theme-primary,#21867c);
  content:'';
}
.course-authoring-inline-field--points{color:#506c74;font-size:15px;line-height:1.62}
.course-authoring-inline-field--points :is(input,textarea),
.course-authoring-inline-field--points:is(input,textarea){min-height:3.2em;padding:7px 8px;font:inherit;letter-spacing:inherit;line-height:inherit}

.course-authoring-inline-callout{
  display:grid;
  gap:10px;
  padding:17px 18px;
  border:1px solid #bee0d7;
  border-radius:12px;
  background:#edf8f5;
  color:#315f60;
}
.course-authoring-inline-callout.scenario,[data-callout-type="scenario"].course-authoring-inline-callout{border-color:#cad9ec;background:#f0f5fc;color:#3b5c79}
.course-authoring-inline-callout.action,[data-callout-type="action"].course-authoring-inline-callout{border-color:#f0d5a8;background:#fff7e9;color:#765a25}
.course-authoring-inline-callout.takeaway,[data-callout-type="takeaway"].course-authoring-inline-callout{border-color:#bee0d7;background:#edf8f5;color:#315f60}
.course-authoring-inline-callout.none,.course-authoring-inline-callout:has(option[value="none"]:checked){border-style:dashed;border-color:#c8d8da;background:#f8fbfb;color:#607980}
.course-authoring-inline-callout:has(option[value="scenario"]:checked){border-color:#cad9ec;background:#f0f5fc;color:#3b5c79}
.course-authoring-inline-callout:has(option[value="action"]:checked){border-color:#f0d5a8;background:#fff7e9;color:#765a25}
.course-authoring-inline-callout:has(option[value="takeaway"]:checked){border-color:#bee0d7;background:#edf8f5;color:#315f60}
.course-authoring-inline-callout>header,.course-authoring-inline-callout-head{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;min-width:0}
.course-authoring-inline-callout-icon{display:grid;width:28px;height:28px;place-items:center;border-radius:9px;background:#d5ebe7;color:#27766e}
.course-authoring-inline-callout.scenario .course-authoring-inline-callout-icon,.course-authoring-inline-callout:has(option[value="scenario"]:checked) .course-authoring-inline-callout-icon{background:#e0e8f6;color:#526f9a}
.course-authoring-inline-callout.action .course-authoring-inline-callout-icon,.course-authoring-inline-callout:has(option[value="action"]:checked) .course-authoring-inline-callout-icon{background:#fae7bf;color:#91651f}
.course-authoring-inline-callout.none .course-authoring-inline-callout-icon,.course-authoring-inline-callout:has(option[value="none"]:checked) .course-authoring-inline-callout-icon{background:#e6eeee;color:#5f7b81}
.course-authoring-inline-callout-icon .icon{width:16px;height:16px}
.course-authoring-inline-callout-copy{display:grid;gap:7px;min-width:0}
.course-authoring-inline-callout-head .course-authoring-inline-field{width:100%}
.course-authoring-inline-field--callout{color:inherit;font-size:14px;line-height:1.62}
.course-authoring-inline-field--callout :is(input,textarea),
.course-authoring-inline-field--callout:is(input,textarea){min-height:2.3em;padding:6px 7px;font:inherit;letter-spacing:inherit;line-height:inherit}
.course-authoring-inline-callout .course-authoring-inline-field--title{font-size:17px;font-weight:760;letter-spacing:-.2px;line-height:1.35}
.course-authoring-inline-callout .course-authoring-inline-field--title :is(input,textarea),
.course-authoring-inline-callout .course-authoring-inline-field--title:is(input,textarea){min-height:1.45em;padding:5px 6px}

.course-authoring-inline-field--answer{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:11px;
  padding:10px 12px;
  border-color:#d4e2e4;
  border-radius:10px;
  background:#fff;
  color:#3f5f67;
  font-size:14px;
  line-height:1.45;
}
.course-authoring-inline-field--answer:hover{border-color:#9fcac5;background:#f8fcfb}
.course-authoring-inline-field--answer:focus-within{border-color:var(--theme-primary,#176e68);background:#fff}
.course-authoring-inline-field--answer :is(input[type="radio"],input[type="checkbox"]){display:block;width:17px;height:17px;margin:0;accent-color:var(--theme-primary,#176e68)}
.course-authoring-inline-field--answer :is(input[type="text"],textarea){min-height:1.5em;padding:1px 0;color:inherit;font:inherit;line-height:inherit}
.course-authoring-inline-field--feedback{
  padding:14px 15px;
  border-color:#d8e6e7;
  background:#f8fbfb;
  color:#506d74;
  font-size:14px;
  line-height:1.62;
}
.course-authoring-inline-field--feedback :is(input,textarea),
.course-authoring-inline-field--feedback:is(input,textarea){min-height:3.2em;padding:4px 5px;font:inherit;letter-spacing:inherit;line-height:inherit}

.course-authoring-player-sources{
  display:grid;
  gap:11px;
  padding:14px 16px;
  border:1px solid #d7e5e6;
  border-radius:11px;
  background:#fafcfc;
  color:#58767d;
}
.course-authoring-player-sources>summary{
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  color:#3e6870;
  font-size:12px;
  font-weight:750;
  line-height:1.4;
  list-style:none;
}
.course-authoring-player-sources>summary::-webkit-details-marker{display:none}
.course-authoring-player-sources>summary::before{
  width:6px;
  height:6px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  content:'';
  transform:rotate(-45deg);
  transition:transform .15s ease;
}
.course-authoring-player-sources[open]>summary::before{transform:rotate(45deg)}
.course-authoring-inline-field--sources{font-size:12px;line-height:1.58}
.course-authoring-inline-field--sources :is(input,textarea),
.course-authoring-inline-field--sources:is(input,textarea){min-height:4.1em;padding:7px 8px;font:inherit;letter-spacing:inherit;line-height:inherit}

.course-authoring-inline-facts{margin-top:4px!important}
.course-authoring-inline-facts>div{min-width:0;background:#f8fbfa}
.course-authoring-inline-facts dd{min-width:0}
.course-authoring-inline-facts .course-authoring-inline-field{width:100%}

.course-authoring-player-assessment-meta{
  display:flex;
  align-items:center;
  gap:9px;
  width:fit-content;
  max-width:100%;
  padding:9px 11px;
  border:1px solid #cfe3df;
  border-radius:10px;
  background:#f1f9f7;
  color:#446a70;
}
.course-authoring-player-assessment-meta .course-authoring-inline-field{width:72px;flex:none;text-align:center}
.course-authoring-player-assessment-meta .course-authoring-inline-field input{text-align:center;font-weight:790}
.course-authoring-player-assessment-meta>span{font-size:11px;font-weight:700;line-height:1.35}
.course-authoring-inline-question{
  display:grid;
  gap:16px;
  padding:clamp(17px,2.5vw,25px);
  border:1px solid #d6e5e6;
  border-radius:14px;
  background:linear-gradient(145deg,#fff,#fbfdfd);
  box-shadow:0 4px 14px #163b4208;
}
.course-authoring-inline-question-number{
  display:inline-flex;
  align-items:center;
  justify-self:start;
  min-height:25px;
  padding:0 9px;
  border:1px solid #b9dbd4;
  border-radius:99px;
  background:#e6f5f1;
  color:#246d66;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  line-height:1;
  text-transform:uppercase;
}
.course-authoring-inline-question>.course-authoring-inline-field--title{font-size:clamp(22px,2.4vw,30px)}
.course-authoring-inline-answer-list{display:grid;gap:9px}
.course-authoring-inline-answer{
  display:grid;
  grid-template-columns:minmax(84px,auto) minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:10px 11px;
  border:1px solid #d5e2e4;
  border-radius:10px;
  background:#fff;
  color:#405f67;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.course-authoring-inline-answer:hover{border-color:#aecdc9;background:#fbfefd}
.course-authoring-inline-answer:focus-within{border-color:var(--theme-primary,#176e68);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary,#176e68) 13%,transparent)}
.course-authoring-inline-answer.is-correct,.course-authoring-inline-answer:has(.course-authoring-inline-answer-correct input:checked){border-color:#82c8b8;background:#edf9f5;color:#215f5b}
.course-authoring-inline-answer>input[type="text"]{
  display:block;
  width:100%;
  min-width:0;
  padding:4px 3px;
  border:0;
  outline:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-size:14px;
  line-height:1.45;
}
.course-authoring-inline-answer>input[type="text"]::placeholder{color:#91a4a8;opacity:1}
.course-authoring-inline-answer-correct{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-width:0;
  color:#627e85;
  font-size:10px;
  font-weight:770;
  letter-spacing:.045em;
  line-height:1.2;
  text-transform:uppercase;
  white-space:nowrap;
}
.course-authoring-inline-answer-correct input{width:16px;height:16px;margin:0;accent-color:var(--theme-primary,#176e68)}
.course-authoring-inline-answer.is-correct .course-authoring-inline-answer-correct,.course-authoring-inline-answer:has(.course-authoring-inline-answer-correct input:checked) .course-authoring-inline-answer-correct{color:#197364}
.course-authoring-inline-answer.is-correct .course-authoring-inline-answer-correct>span,.course-authoring-inline-answer:has(.course-authoring-inline-answer-correct input:checked) .course-authoring-inline-answer-correct>span{padding:3px 5px;border-radius:4px;background:#d9f0e8}
.course-authoring-inline-answer-actions{display:flex;justify-content:flex-start;padding-top:1px}
.course-authoring-inline-feedback{
  display:grid;
  gap:9px;
  padding:16px 17px;
  border:1px solid #d8e7e8;
  border-radius:12px;
  background:#f7fbfb;
}
.course-authoring-inline-feedback h3{color:#40646c;font-size:13px;font-weight:760}

.course-authoring-player-page .lesson-illustration,
.course-authoring-player-page .course-authoring-media-preview{
  width:min(100%,620px);
  margin:4px auto 2px;
}
.course-authoring-player-page .course-authoring-media-preview{padding:11px;border-radius:14px}
.course-authoring-player-page .course-authoring-media-preview img{max-height:390px;border-radius:10px}
.course-authoring-player-media{display:grid;align-content:start;justify-items:stretch;gap:0}
.course-authoring-player-media figcaption{width:100%;box-sizing:border-box;padding:11px;border-top:1px solid #dbe6e7;background:#f8fbfb;color:#617c83}
.course-authoring-player-media figcaption .course-authoring-inline-field{width:100%}
.course-authoring-player-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
  padding:16px clamp(18px,3vw,29px);
  border-top:1px solid #dce9eb;
  background:#fff;
}
.course-authoring-player-bottom>span{min-width:0;color:#688087;font-size:11px;line-height:1.45}
.course-authoring-player-bottom .button-row{margin-left:auto}
.course-authoring-settings-panel{
  display:grid;
  gap:13px;
  margin-top:20px;
  padding:17px 18px;
  border:1px solid #d5e4e6;
  border-radius:12px;
  background:linear-gradient(145deg,#f8fbfb,#fff);
  color:#536e75;
}
.course-authoring-settings-panel>summary{
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  color:#315a61;
  font-size:13px;
  font-weight:760;
  list-style:none;
}
.course-authoring-settings-panel>summary::-webkit-details-marker{display:none}
.course-authoring-settings-panel>summary::before{
  width:7px;
  height:7px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  content:'';
  transform:rotate(-45deg);
  transition:transform .15s ease;
}
.course-authoring-settings-panel[open]>summary::before{transform:rotate(45deg)}
.course-authoring-settings-panel .form-grid{margin-top:3px}
.course-authoring-settings-summary{
  display:grid;
  gap:13px;
  color:#6a848a;
  font-size:11px;
  line-height:1.45;
}
.course-authoring-settings-summary>p{margin:0}
.course-authoring-settings-summary>span{display:inline-flex;align-items:center;min-width:0;gap:5px}
.course-authoring-settings-summary .icon{width:14px;height:14px;color:var(--theme-primary,#176e68)}
.course-authoring-settings-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #e0eaeb}
html[data-organization-theme="custom"] .course-authoring-player-canvas{border-color:var(--organization-theme-border);box-shadow:0 8px 24px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .course-authoring-player-top{border-color:var(--organization-theme-border-subtle);background:linear-gradient(90deg,#fff,var(--organization-theme-surface));color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .course-authoring-player-scroll{background:radial-gradient(circle at 95% 0,var(--theme-glow) 0,transparent 28%),#fff}
html[data-organization-theme="custom"] .course-authoring-inline-field:hover{border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-authoring-inline-callout.takeaway,html[data-organization-theme="custom"] [data-callout-type="takeaway"].course-authoring-inline-callout{border-color:var(--organization-theme-border);background:var(--theme-soft)}
html[data-organization-theme="custom"] .course-authoring-player-bottom,html[data-organization-theme="custom"] .course-authoring-settings-panel{border-color:var(--organization-theme-border);background:var(--organization-theme-surface)}
@media(max-width:1080px){
  .course-authoring-player-canvas{min-height:560px}
  .course-authoring-player-page{min-height:330px}
}
@media(max-width:760px){
  .course-authoring-player-canvas{min-height:0;border-radius:12px}
  .course-authoring-player-top{align-items:flex-start;flex-direction:column;gap:5px;padding:13px 16px}
  .course-authoring-player-status{font-size:9px}
  .course-authoring-player-scroll{padding:25px 17px 28px}
  .course-authoring-player-page{gap:17px;min-height:270px}
  .course-authoring-player-page h1,.course-authoring-inline-field--title{font-size:27px}
  .course-authoring-player-page .lead,.course-authoring-inline-field--lead{font-size:16px}
  .course-authoring-player-topic{padding:6px 8px}
  .course-authoring-inline-points>li,.course-authoring-inline-points>[data-point-row]{grid-template-columns:13px minmax(0,1fr);gap:7px;font-size:14px}
  .course-authoring-inline-points>li>.btn,.course-authoring-inline-points>[data-point-row]>.btn{grid-column:2;justify-self:start}
  .course-authoring-inline-callout{padding:14px}
  .course-authoring-inline-callout-head{grid-template-columns:27px minmax(0,1fr);gap:8px}
  .course-authoring-inline-callout-icon{width:27px;height:27px}
  .course-authoring-player-sources{padding:13px}
  .course-authoring-inline-facts{grid-template-columns:1fr!important}
  .course-authoring-player-assessment-meta{width:100%;box-sizing:border-box}
  .course-authoring-inline-question{gap:14px;padding:16px}
  .course-authoring-inline-question>.course-authoring-inline-field--title{font-size:24px}
  .course-authoring-inline-answer{grid-template-columns:minmax(74px,auto) minmax(0,1fr) auto;gap:8px;padding:9px}
  .course-authoring-inline-answer-correct{font-size:9px}
  .course-authoring-inline-feedback{padding:14px}
  .course-authoring-player-bottom{align-items:stretch;flex-direction:column;padding:13px 16px}
  .course-authoring-player-bottom .button-row{justify-content:space-between;width:100%;margin-left:0}
  .course-authoring-player-bottom .button-row .btn{flex:1}
  .course-authoring-settings-panel{margin-top:15px;padding:15px}
  .course-authoring-settings-actions{align-items:stretch;flex-direction:column}
  .course-authoring-settings-actions .btn{width:100%}
}
@media(max-width:460px){
  .course-authoring-inline-answer{grid-template-columns:auto minmax(0,1fr)}
  .course-authoring-inline-answer>.btn{grid-column:2;justify-self:start}
  .course-authoring-inline-answer-correct>span{font-size:0}
  .course-authoring-inline-answer-correct>span::after{font-size:9px;content:'Correct'}
}

/* The author canvas should feel like a real course page, with enough room to
   write in the page rather than a narrow form beside a miniature preview. */
.course-authoring-wizard-content>.course-authoring-player-canvas{
  width:100%;
  max-width:1160px;
}
.course-authoring-player-scroll{padding-right:clamp(28px,5.4vw,78px);padding-left:clamp(28px,5.4vw,78px)}
.course-authoring-player-page{width:min(100%,1010px)}
.course-authoring-inline-field--title,
.course-authoring-inline-field--lead,
.course-authoring-inline-field--points,
.course-authoring-inline-field--callout,
.course-authoring-inline-field--sources{width:100%;max-width:100%}
.course-authoring-inline-field--title :is(input,textarea),
.course-authoring-inline-field--title:is(input,textarea){min-height:1.45em;padding:8px 10px}
.course-authoring-inline-field--lead :is(input,textarea),
.course-authoring-inline-field--lead:is(input,textarea){min-height:7.4em;padding:10px 12px}
.course-authoring-inline-field--points :is(input,textarea),
.course-authoring-inline-field--points:is(input,textarea){min-height:6.2em;padding:10px 12px}
.course-authoring-inline-field--callout :is(input,textarea),
.course-authoring-inline-field--callout:is(input,textarea){min-height:4.8em;padding:9px 10px}
.course-authoring-inline-field--sources :is(input,textarea),
.course-authoring-inline-field--sources:is(input,textarea){min-height:5.5em;padding:9px 10px}
.course-authoring-inline-callout .course-authoring-inline-field--title :is(input,textarea),
.course-authoring-inline-callout .course-authoring-inline-field--title:is(input,textarea){min-height:1.65em;padding:7px 9px}
.course-authoring-player-page .course-authoring-inline-field--lead,
.course-authoring-player-page .course-authoring-inline-field--points{font-size:16px}

/* Preview-off is the focused writing view: retain the outline and footer, and
   let the learner-shaped editor occupy the former preview column as well. */
.course-authoring-wizard.is-preview-hidden{
  grid-template-areas:
    "rail content"
    "rail footer";
  grid-template-columns:minmax(224px,258px) minmax(0,1fr);
  grid-template-rows:minmax(0,1fr) auto;
}
.course-authoring-wizard.is-preview-hidden .course-authoring-wizard-inspector{display:none}
.course-authoring-wizard.is-preview-hidden .course-authoring-wizard-content{padding-right:clamp(28px,4.4vw,64px);padding-left:clamp(28px,4.4vw,64px)}
.course-authoring-wizard.is-preview-hidden .course-authoring-wizard-content>.course-authoring-player-canvas{max-width:1280px}
.course-authoring-wizard.is-preview-hidden .course-authoring-player-page{width:min(100%,1080px)}

@media(max-width:1280px){
  .course-authoring-wizard.is-preview-hidden{grid-template-columns:minmax(210px,234px) minmax(0,1fr)}
  .course-authoring-wizard.is-preview-hidden .course-authoring-player-page{width:min(100%,1020px)}
}
@media(max-width:1080px){
  .course-authoring-wizard.is-preview-hidden{
    grid-template-areas:
      "rail content"
      "rail footer";
    grid-template-columns:minmax(204px,230px) minmax(0,1fr);
    grid-template-rows:minmax(0,1fr) auto;
  }
  .course-authoring-wizard.is-preview-hidden .course-authoring-player-page{width:min(100%,920px)}
}
@media(max-width:760px){
  .course-authoring-wizard.is-preview-hidden{
    grid-template-areas:
      "rail"
      "content"
      "footer";
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto minmax(0,1fr) auto;
  }
  .course-authoring-wizard.is-preview-hidden .course-authoring-wizard-content{padding:21px 17px 25px}
  .course-authoring-wizard.is-preview-hidden .course-authoring-player-page{width:100%}
  .course-authoring-player-scroll{padding:25px 17px 28px}
  .course-authoring-inline-field--title :is(input,textarea),
  .course-authoring-inline-field--title:is(input,textarea){min-height:1.35em;padding:7px 8px}
  .course-authoring-inline-field--lead :is(input,textarea),
  .course-authoring-inline-field--lead:is(input,textarea){min-height:6.2em;padding:8px 9px}
  .course-authoring-inline-field--points :is(input,textarea),
  .course-authoring-inline-field--points:is(input,textarea){min-height:5.4em;padding:8px 9px}
  .course-authoring-inline-field--callout :is(input,textarea),
  .course-authoring-inline-field--callout:is(input,textarea){min-height:4.2em;padding:8px 9px}
}

/* Keep the editable introduction close to the learner-facing composition.
   Authors still have roomy, resizable fields, but the default view does not
   reserve a large empty writing area for every short piece of course copy. */
.course-authoring-player-scroll{
  padding:clamp(22px,3vw,34px) clamp(22px,4vw,52px);
  container-type:inline-size;
  container-name:course-authoring-canvas;
}
.course-authoring-player-page{
  gap:clamp(13px,1.5vw,18px);
  min-height:0;
}
.course-authoring-inline-field--lead :is(input,textarea),
.course-authoring-inline-field--lead:is(input,textarea){
  height:6.2em;
  min-height:5.2em;
  padding:8px 10px;
}
.course-authoring-inline-field--points :is(input,textarea),
.course-authoring-inline-field--points:is(input,textarea){
  height:4.8em;
  min-height:4.2em;
  padding:8px 10px;
}
.course-authoring-inline-field--callout :is(input,textarea),
.course-authoring-inline-field--callout:is(input,textarea){
  height:3.9em;
  min-height:3.5em;
  padding:7px 9px;
}
.course-authoring-inline-field--sources :is(input,textarea),
.course-authoring-inline-field--sources:is(input,textarea){
  height:4.5em;
  min-height:4em;
  padding:8px 9px;
}
.course-authoring-player-canvas--introduction .course-authoring-runtime-introduction{
  width:100%;
  height:auto;
  min-height:0;
}
.course-authoring-player-canvas--introduction .course-authoring-runtime-introduction>.lesson-content.lesson-introduction-content{
  min-height:0;
  max-width:1060px;
  padding:0;
  margin:0 auto;
}
.course-authoring-player-canvas--introduction .lesson-introduction-content{
  grid-template-columns:minmax(0,1fr) minmax(230px,.55fr);
  column-gap:clamp(28px,4vw,52px);
  row-gap:16px;
  align-items:start;
  align-content:start;
  width:min(100%,1060px);
}
.course-authoring-player-canvas--introduction .lesson-introduction-content>.lesson-content-heading{
  grid-column:1 / -1;
  width:100%;
}
.course-authoring-player-canvas--introduction .lesson-introduction-content>.lesson-content-copy{
  grid-column:1;
  grid-row:2;
  display:grid;
  align-content:start;
  gap:14px;
}
.course-authoring-player-canvas--introduction .lesson-introduction-content>.lesson-illustration{
  grid-column:2;
  grid-row:2;
  width:min(100%,360px);
  min-height:220px;
  padding:18px;
  margin:0;
  justify-self:end;
  align-self:start;
}
.course-authoring-player-canvas--introduction .lesson-introduction-content>.course-authoring-inline-key-terms,
.course-authoring-player-canvas--introduction .lesson-introduction-content>.course-authoring-inline-facts{
  grid-column:1 / -1;
  width:100%;
}
.course-authoring-player-canvas--introduction .course-authoring-inline-points{gap:6px}
.course-authoring-player-canvas--introduction .lesson-introduction-facts{gap:9px}
.course-authoring-player-canvas--introduction .lesson-introduction-facts>div{gap:3px;padding:10px 11px}
.course-authoring-player-canvas--introduction .lesson-introduction-facts dt,
.course-authoring-player-canvas--introduction .lesson-introduction-facts dd{min-height:0}
.course-authoring-player-canvas--introduction .lesson-introduction-facts .course-authoring-inline-field--meta textarea{
  height:4.1em;
  min-height:3.7em;
  padding:7px 8px;
}

@container course-authoring-canvas (max-width:760px){
  .course-authoring-player-canvas--introduction .lesson-introduction-content{grid-template-columns:minmax(0,1fr);gap:15px;width:100%}
  .course-authoring-player-canvas--introduction .lesson-introduction-content>.lesson-content-heading,
  .course-authoring-player-canvas--introduction .lesson-introduction-content>.lesson-content-copy,
  .course-authoring-player-canvas--introduction .lesson-introduction-content>.lesson-illustration,
  .course-authoring-player-canvas--introduction .lesson-introduction-content>.course-authoring-inline-key-terms,
  .course-authoring-player-canvas--introduction .lesson-introduction-content>.course-authoring-inline-facts{grid-column:1;grid-row:auto}
  .course-authoring-player-canvas--introduction .lesson-introduction-content>.lesson-illustration{width:min(100%,300px);min-height:0;padding:14px;justify-self:start}
}
@media(max-width:760px){
  .course-authoring-player-scroll{padding:22px 17px 24px}
  .course-authoring-player-page{gap:15px}
  .course-authoring-inline-field--lead :is(input,textarea),
  .course-authoring-inline-field--lead:is(input,textarea){height:5.7em;min-height:4.8em;padding:7px 8px}
  .course-authoring-inline-field--points :is(input,textarea),
  .course-authoring-inline-field--points:is(input,textarea){height:4.5em;min-height:4em;padding:7px 8px}
}

/* On a phone-sized editor, retain a real editing viewport before allocating
   space to the optional preview.  When the dialog is short, the workspace
   itself scrolls rather than squeezing the learner-shaped canvas to a strip. */
@media(max-width:760px){
  .course-authoring-wizard:not(.is-preview-hidden){
    grid-template-rows:auto minmax(360px,1fr) minmax(176px,230px) auto;
    overflow:auto;
    overscroll-behavior:contain;
  }
  .course-authoring-wizard:not(.is-preview-hidden) .course-authoring-wizard-content{min-height:360px}
  .course-authoring-wizard:not(.is-preview-hidden) .course-authoring-wizard-inspector{
    min-height:176px;
    max-height:230px;
    padding:12px 15px;
  }
  .course-authoring-wizard:not(.is-preview-hidden) .course-authoring-wizard-inspector>.course-authoring-learner-surface{flex:none}
  .course-authoring-wizard.is-preview-hidden{
    grid-template-rows:auto minmax(520px,1fr) auto;
    overflow:auto;
    overscroll-behavior:contain;
  }
  .course-authoring-wizard.is-preview-hidden .course-authoring-wizard-content{
    min-height:520px;
    padding-top:16px;
    padding-bottom:16px;
  }
}

/* Organization-specific course wording keeps the generic source visible while
   giving administrators enough room to write and review longer policy text. */
dialog.course-configuration-modal{max-width:980px}
.course-configuration-modal .modal-head,
.course-configuration-modal .modal-footer{position:static}
.course-configuration-modal .modal-body{min-height:0;padding:0;overflow-y:auto;overscroll-behavior:contain;background:#f7faf9}
.course-configuration-form{display:grid;gap:20px;padding:24px}
.course-configuration-intro{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:18px;border:1px solid #cfe1df;border-radius:13px;background:linear-gradient(135deg,#fff,#edf6f4)}
.course-configuration-intro-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--theme-primary,#176e68);color:#fff}
.course-configuration-intro-icon .icon{width:21px;height:21px}
.course-configuration-intro strong{display:block;margin:1px 0 5px;color:#213f49;font-size:17px;line-height:1.35}
.course-configuration-intro p{max-width:720px;margin:0;color:#5f777c;font-size:13px;line-height:1.6}
.course-configuration-tokens{border:1px solid #d7e4e3;border-radius:11px;background:#fff}
.course-configuration-tokens summary{padding:14px 16px;color:#284c53;font-size:14px;font-weight:700;cursor:pointer}
.course-configuration-tokens>p{margin:0;padding:0 16px 12px;color:#6a8084;font-size:12px;line-height:1.55}
.course-configuration-tokens ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0 16px 16px;list-style:none}
.course-configuration-tokens li{display:grid;grid-template-columns:minmax(150px,auto) minmax(0,1fr);gap:10px;align-items:start;padding:10px;border-radius:8px;background:#f5f9f8}
.course-configuration-tokens code{color:var(--theme-primary-deep,#245759);font-size:11px;font-weight:700;overflow-wrap:anywhere}
.course-configuration-tokens li span{display:grid;gap:2px;color:#718488;font-size:11px;line-height:1.45}
.course-configuration-tokens li strong{color:#38565d;font-size:12px}
.course-configuration-fields{display:grid;gap:15px}
.course-configuration-field{display:grid;gap:12px;padding:18px;border:1px solid #dbe6e5;border-radius:12px;background:#fff;box-shadow:0 5px 16px #173c4310}
.course-configuration-field-heading{display:flex;gap:14px;align-items:start;justify-content:space-between}
.course-configuration-field-heading>div{min-width:0}
.course-configuration-field-heading label{display:block;color:#26464e;font-size:15px;font-weight:700;line-height:1.35}
.course-configuration-field-heading p{margin:4px 0 0;color:#718387;font-size:12px;line-height:1.5}
.course-configuration-field-heading>span{flex:none;padding:4px 8px;border-radius:999px;background:#edf4f2;color:#59706f;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.course-configuration-default{display:grid;gap:4px;padding:11px 13px;border-left:3px solid #a7c0b2;border-radius:0 8px 8px 0;background:#f7f9f5}
.course-configuration-default>span{color:#708170;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.course-configuration-default p{margin:0;color:#4e6354;font-size:13px;line-height:1.55;white-space:pre-wrap}
.course-configuration-guidance{margin:0;color:#61777b;font-size:12px;line-height:1.55}
.course-configuration-editor{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:12px;align-items:start}
.course-configuration-editor>input,
.course-configuration-editor>textarea,
.course-configuration-insert select{box-sizing:border-box;width:100%;border:1px solid #cadbda;border-radius:8px;background:#fff;color:#294950;font:inherit;font-size:14px;line-height:1.5}
.course-configuration-editor>input,
.course-configuration-editor>textarea{padding:11px 12px}
.course-configuration-editor>textarea{min-height:86px;resize:vertical}
.course-configuration-editor>:focus,
.course-configuration-insert select:focus{border-color:var(--theme-focus,#247e72);outline:3px solid color-mix(in srgb,var(--theme-focus,#247e72) 22%,transparent);outline-offset:1px}
.course-configuration-insert{display:grid;gap:6px}
.course-configuration-insert label{color:#657b80;font-size:11px;font-weight:700}
.course-configuration-insert select{min-height:44px;padding:9px 10px;font-weight:500}
.course-configuration-current{color:#788b8e;font-size:11px;line-height:1.45}
html[data-organization-theme="custom"] .course-configuration-modal .modal-body{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .course-configuration-intro{border-color:var(--organization-theme-border);background:linear-gradient(135deg,#fff,var(--organization-theme-surface))}
@media(max-width:720px){
  .course-configuration-form{gap:15px;padding:16px}
  .course-configuration-tokens ul{grid-template-columns:1fr}
  .course-configuration-tokens li{grid-template-columns:1fr}
  .course-configuration-editor{grid-template-columns:1fr}
  .course-configuration-field{padding:15px}
  .course-configuration-field-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .course-configuration-modal .modal-footer{align-items:stretch;flex-direction:column-reverse}
  .course-configuration-modal .modal-footer .btn{width:100%}
}

/* Preview is a temporary learner-facing layer, not a second column beside the
   authoring canvas.  It is nested inside the editor dialog so closing it puts
   an author back in precisely the workspace they were editing. */
.course-authoring-overlay{position:relative;isolation:isolate}
.course-authoring-wizard.course-authoring-wizard--single-pane,
.course-authoring-wizard:not(:has(.course-authoring-wizard-inspector)){
  grid-template-areas:
    "rail content"
    "rail footer";
  grid-template-columns:minmax(224px,258px) minmax(0,1fr);
  grid-template-rows:minmax(0,1fr) auto;
}
.course-authoring-preview-overlay{
  position:absolute;
  z-index:30;
  inset:0;
  display:grid;
  min-width:0;
  min-height:0;
  padding:clamp(14px,2.6vw,30px);
  background:#09212a75;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  animation:course-authoring-preview-in .18s ease both;
}
.course-authoring-preview-overlay[hidden]{display:none}
.course-authoring-preview-shell{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  min-width:0;
  min-height:0;
  overflow:hidden;
  border:1px solid #bcd4d7;
  border-radius:18px;
  background:#f4f8f8;
  box-shadow:0 24px 64px #051c284d;
}
.course-authoring-preview-overlay-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-width:0;
  padding:15px clamp(17px,2.5vw,28px);
  border-bottom:1px solid #d7e5e7;
  background:linear-gradient(90deg,#fff,#f1f8f7);
}
.course-authoring-preview-overlay-title{
  display:flex;
  align-items:center;
  min-width:0;
  gap:11px;
  color:#274a54;
}
.course-authoring-preview-overlay-title>span:first-child{
  display:grid;
  width:33px;
  height:33px;
  flex:none;
  place-items:center;
  border-radius:10px;
  background:var(--theme-soft,#e4f3f0);
  color:var(--theme-primary,#176e68);
}
.course-authoring-preview-overlay-title>span:first-child .icon{width:18px;height:18px}
.course-authoring-preview-overlay-title>div{display:grid;min-width:0;gap:2px}
.course-authoring-preview-overlay-title .eyebrow{color:#5c7d83;font-size:9px;letter-spacing:.1em}
.course-authoring-preview-overlay-title strong{
  overflow:hidden;
  color:#274a54;
  font-size:14px;
  font-weight:760;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.course-authoring-preview-overlay-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:none;
  min-height:36px;
  gap:7px;
  padding:8px 11px;
  border:1px solid #b9d3d5;
  border-radius:9px;
  background:#fff;
  color:#255a61;
  box-shadow:0 1px 0 #fff inset;
}
.course-authoring-preview-overlay-close:hover{border-color:#78aaa6;background:#eef8f6;color:#135f59}
.course-authoring-preview-overlay-close:focus-visible{
  border-color:var(--theme-primary,#176e68);
  outline:3px solid color-mix(in srgb,var(--theme-primary,#176e68) 32%,transparent);
  outline-offset:2px;
  box-shadow:0 0 0 2px #fff;
}
.course-authoring-preview-overlay-close .icon{width:16px;height:16px}
.course-authoring-preview-overlay-body{
  position:relative;
  display:grid;
  min-width:0;
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  background:radial-gradient(circle at 94% 0,#e3f5f2 0,transparent 32%),#f4f8f8;
  scrollbar-color:#b8cdd1 transparent;
  scrollbar-width:thin;
}
.course-authoring-preview-overlay-body>.course-authoring-preview-runtime,
.course-authoring-preview-overlay-body>.course-authoring-preview-player{
  display:grid;
  width:100%;
  min-width:0;
  min-height:0;
  height:100%;
}
/* The compact preview renderer remains a useful fallback while the preview
   overlay can also host the full native player.  In the overlay it becomes a
   comfortably sized learner surface instead of an inspector card. */
.course-authoring-preview-overlay .course-authoring-preview{
  position:relative;
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  width:min(100%,1080px);
  min-width:0;
  min-height:100%;
  margin:0 auto;
  border:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.course-authoring-preview-overlay .course-authoring-preview-top{padding:14px clamp(20px,4vw,46px);background:#f8fbfb}
.course-authoring-preview-overlay .course-authoring-preview-cover{padding:clamp(25px,4vw,42px) clamp(20px,4vw,46px)}
.course-authoring-preview-overlay .course-authoring-preview-cover h2{max-width:760px;font-size:clamp(27px,3.3vw,42px)}
.course-authoring-preview-overlay .course-authoring-preview-cover p{max-width:760px;font-size:14px;line-height:1.65}
.course-authoring-preview-overlay .course-authoring-preview-page{
  min-height:0;
  padding:clamp(28px,5vw,62px) clamp(20px,5vw,70px);
  overflow:auto;
  color:#526c75;
}
.course-authoring-preview-overlay .course-authoring-preview-page>*{max-width:820px}
.course-authoring-preview-overlay .course-authoring-preview-page h3{font-size:clamp(25px,3vw,38px);line-height:1.22}
.course-authoring-preview-overlay .course-authoring-preview-page>p{font-size:16px;line-height:1.68}
.course-authoring-preview-overlay .course-authoring-preview-page ul{max-width:820px;font-size:15px;line-height:1.65}
.course-authoring-preview-overlay .course-authoring-preview-callout{max-width:820px;padding:17px 18px}
.course-authoring-preview-overlay .course-authoring-preview-footer{padding:14px clamp(20px,4vw,46px);font-size:12px}
/* A runtime preview may reuse the native player classes.  These overrides let
   that real course surface fill this local overlay without creating a second
   page-level backdrop. */
.course-authoring-preview-overlay .course-overlay-native,
.course-authoring-preview-overlay .course-authoring-preview-runtime>.course-overlay{
  width:100%;
  height:100%;
  min-height:0;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.course-authoring-preview-overlay .course-overlay-native .native-course-overlay-scroll,
.course-authoring-preview-overlay .course-overlay-native .native-course-player,
.course-authoring-preview-overlay .course-authoring-preview-runtime>.course-overlay{min-height:0}
.course-authoring-preview-overlay .course-overlay-native .native-course-overlay-scroll{height:100%}
.course-authoring-preview-overlay :is(button,a,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid color-mix(in srgb,var(--theme-primary,#176e68) 32%,transparent);
  outline-offset:2px;
}
html[data-organization-theme="custom"] .course-authoring-preview-shell{border-color:var(--organization-theme-border);background:var(--organization-theme-surface);box-shadow:0 24px 64px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .course-authoring-preview-overlay-head{border-color:var(--organization-theme-border-subtle);background:linear-gradient(90deg,#fff,var(--organization-theme-surface))}
html[data-organization-theme="custom"] .course-authoring-preview-overlay-title>span:first-child{background:var(--theme-soft);color:var(--theme-primary)}
html[data-organization-theme="custom"] .course-authoring-preview-overlay-close{border-color:var(--organization-theme-border);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .course-authoring-preview-overlay-body{background:radial-gradient(circle at 94% 0,var(--theme-glow) 0,transparent 32%),var(--organization-theme-surface)}
@keyframes course-authoring-preview-in{from{opacity:0;transform:scale(.987)}to{opacity:1;transform:scale(1)}}
@media(max-width:1080px){
  .course-authoring-wizard.course-authoring-wizard--single-pane,
  .course-authoring-wizard:not(:has(.course-authoring-wizard-inspector)){
    grid-template-areas:
      "rail content"
      "rail footer";
    grid-template-columns:minmax(204px,230px) minmax(0,1fr);
    grid-template-rows:minmax(0,1fr) auto;
  }
}
@media(max-width:760px){
  .course-authoring-wizard.course-authoring-wizard--single-pane,
  .course-authoring-wizard:not(:has(.course-authoring-wizard-inspector)){
    grid-template-areas:
      "rail"
      "content"
      "footer";
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto minmax(520px,1fr) auto;
    overflow:auto;
    overscroll-behavior:contain;
  }
  .course-authoring-wizard:not(:has(.course-authoring-wizard-inspector)) .course-authoring-wizard-content{min-height:520px;padding-top:16px;padding-bottom:16px}
  .course-authoring-preview-overlay{padding:0;background:#09212a8c}
  .course-authoring-preview-shell{border:0;border-radius:0}
  .course-authoring-preview-overlay-head{gap:11px;padding:13px 15px}
  .course-authoring-preview-overlay-title>span:first-child{width:31px;height:31px}
  .course-authoring-preview-overlay-title strong{font-size:13px}
  .course-authoring-preview-overlay-close{min-width:36px;padding:8px}
  .course-authoring-preview-overlay-close .course-authoring-preview-overlay-close-label{display:none}
  .course-authoring-preview-overlay .course-authoring-preview-top{padding:12px 18px}
  .course-authoring-preview-overlay .course-authoring-preview-cover{padding:24px 20px}
  .course-authoring-preview-overlay .course-authoring-preview-page{padding:27px 20px}
  .course-authoring-preview-overlay .course-authoring-preview-footer{padding:12px 18px}
}
@media(prefers-reduced-motion:reduce){.course-authoring-preview-overlay{animation:none}}

/* The course name is part of the authoring surface.  Keep its input as
   prominent as a player title, while its soft boundary and edit hint make the
   direct-edit affordance clear without taking space away from the actions. */
.course-authoring-overlay-head .course-overlay-title:has(.course-authoring-overlay-title-input),
.course-authoring-overlay-head .course-overlay-title:has(.course-authoring-inline-field--course-title){
  flex:1 1 430px;
  max-width:760px;
}
.course-authoring-overlay-head .course-overlay-title>div:has(.course-authoring-overlay-title-input),
.course-authoring-overlay-head .course-overlay-title>div:has(.course-authoring-inline-field--course-title){
  display:grid;
  flex:1;
  min-width:0;
  gap:2px;
}
.course-authoring-overlay-title-input,
.course-authoring-inline-field--course-title{
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.course-authoring-inline-field--course-title{display:grid;gap:3px}
.course-authoring-overlay-head .course-authoring-inline-field--course-title .course-authoring-inline-field-label{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
  white-space:nowrap;
}
.course-authoring-overlay-title-edit-hint{
  display:inline-flex;
  align-items:center;
  gap:4px;
  width:max-content;
  max-width:100%;
  color:#66838a;
  font-size:9px;
  font-weight:760;
  letter-spacing:.085em;
  line-height:1.2;
  text-transform:uppercase;
}
input.course-authoring-overlay-title-input,
textarea.course-authoring-overlay-title-input,
.course-authoring-inline-field--course-title :is(input,textarea){
  display:block;
  width:100%;
  min-width:0;
  min-height:38px;
  box-sizing:border-box;
  padding:6px 10px;
  border:1px solid #cfe0e1;
  border-radius:8px;
  outline:0;
  background:linear-gradient(135deg,#fbfefd,#f1f8f7);
  color:#224650;
  font:inherit;
  font-size:clamp(16px,1.35vw,19px);
  font-weight:760;
  letter-spacing:-.28px;
  line-height:1.28;
  text-overflow:ellipsis;
  white-space:nowrap;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
input.course-authoring-overlay-title-input,
textarea.course-authoring-overlay-title-input{cursor:text}
.course-authoring-inline-field--course-title textarea{resize:vertical;white-space:normal}
input.course-authoring-overlay-title-input::placeholder,
textarea.course-authoring-overlay-title-input::placeholder,
.course-authoring-inline-field--course-title :is(input,textarea)::placeholder{color:#8aa0a4;opacity:1}
input.course-authoring-overlay-title-input:hover,
textarea.course-authoring-overlay-title-input:hover,
.course-authoring-inline-field--course-title:hover :is(input,textarea),
.course-authoring-inline-field--course-title:focus-within :is(input,textarea){border-color:#8dbcb8;background:#fff}
input.course-authoring-overlay-title-input:focus-visible,
textarea.course-authoring-overlay-title-input:focus-visible,
.course-authoring-inline-field--course-title :is(input,textarea):focus-visible{
  border-color:var(--theme-primary,#176e68);
  background:#fff;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary,#176e68) 18%,transparent);
}
input.course-authoring-overlay-title-input:disabled,
textarea.course-authoring-overlay-title-input:disabled,
.course-authoring-inline-field--course-title :is(input,textarea):disabled{
  cursor:default;
  border-color:transparent;
  background:transparent;
  color:#274852;
}
html[data-organization-theme="custom"] :is(input,textarea).course-authoring-overlay-title-input,
html[data-organization-theme="custom"] .course-authoring-inline-field--course-title :is(input,textarea){border-color:var(--organization-theme-border);background:var(--organization-theme-surface);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(input,textarea).course-authoring-overlay-title-input:hover,
html[data-organization-theme="custom"] .course-authoring-inline-field--course-title:hover :is(input,textarea),
html[data-organization-theme="custom"] .course-authoring-inline-field--course-title:focus-within :is(input,textarea){border-color:var(--theme-primary);background:#fff}
@media(max-width:1180px){
  .course-authoring-overlay-head:has(.course-authoring-overlay-title-input),
  .course-authoring-overlay-head:has(.course-authoring-inline-field--course-title){align-items:flex-start;flex-wrap:wrap}
  .course-authoring-overlay-head:has(.course-authoring-overlay-title-input) .course-overlay-title,
  .course-authoring-overlay-head:has(.course-authoring-inline-field--course-title) .course-overlay-title{flex:1 1 min(100%,590px);max-width:none}
  .course-authoring-overlay-head:has(.course-authoring-overlay-title-input) .course-overlay-actions,
  .course-authoring-overlay-head:has(.course-authoring-inline-field--course-title) .course-overlay-actions{margin-left:auto}
}
@media(max-width:680px){
  .course-authoring-overlay-head:has(.course-authoring-overlay-title-input),
  .course-authoring-overlay-head:has(.course-authoring-inline-field--course-title){gap:12px}
  .course-authoring-overlay-head:has(.course-authoring-overlay-title-input) .course-overlay-title,
  .course-authoring-overlay-head:has(.course-authoring-inline-field--course-title) .course-overlay-title{flex-basis:100%;max-width:100%}
  :is(input,textarea).course-authoring-overlay-title-input,
  .course-authoring-inline-field--course-title :is(input,textarea){min-height:37px;padding:6px 9px;font-size:16px}
  .course-authoring-overlay-head:has(.course-authoring-overlay-title-input) .course-overlay-actions,
  .course-authoring-overlay-head:has(.course-authoring-inline-field--course-title) .course-overlay-actions{justify-content:flex-start;width:100%;margin-left:0}
}

/* Customer sign-in is a short transition from the public site into the
   product. Keep the familiar brand present, then let the account task take
   center stage rather than repeating the marketing story. */
.auth-page{
  --auth-ink:#0b2d35;
  --auth-forest:#123f3a;
  --auth-teal:#258477;
  --auth-mint:#eaf5ee;
  --auth-paper:#fbfcf8;
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  grid-template-columns:minmax(0,1fr);
  min-height:100dvh;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% -8%,#d3f59e62,transparent 27rem),
    radial-gradient(circle at -4% 106%,#62cbb830,transparent 31rem),
    var(--auth-paper);
  color:var(--auth-ink);
}
.auth-page::before,
.auth-page::after{
  position:absolute;
  z-index:-1;
  border:1px solid #2a7c7030;
  border-radius:50%;
  content:"";
  pointer-events:none;
}
.auth-page::before{width:33rem;height:33rem;top:-20rem;right:-12rem}
.auth-page::after{width:27rem;height:27rem;bottom:-20rem;left:-13rem}

/* `.auth-story` remains here as a compatible compact header while older
   local previews receive the new `auth-site-header` markup. */
.auth-site-header,
.auth-page>.auth-story{
  grid-column:1;
  grid-row:1;
  display:flex;
  width:100%;
  min-height:82px;
  align-items:center;
  justify-content:space-between;
  padding:17px clamp(22px,5vw,72px);
  background:transparent;
  color:var(--auth-ink);
}
.auth-page>.auth-story{position:relative;overflow:visible}
.auth-page>.auth-story .auth-story-content,
.auth-page>.auth-story .auth-story-footer{display:none}
.auth-site-header .brand,
.auth-page>.auth-story .brand{
  color:var(--auth-ink);
  font-size:20px;
  font-weight:600;
  letter-spacing:-.7px;
}
.auth-site-header .brand-mark,
.auth-page>.auth-story .brand-mark{
  width:39px;
  height:39px;
  border-radius:12px;
  background:var(--auth-ink);
  color:#d3f59e;
  box-shadow:0 7px 20px #0b2d3524;
}
.auth-site-header .brand small,
.auth-page>.auth-story .brand small{margin-top:5px;color:#6d807a;font-size:8px;font-weight:680;letter-spacing:1.8px}

.auth-main{
  grid-column:1;
  grid-row:2;
  display:flex;
  width:100%;
  min-height:0;
  align-items:center;
  justify-content:center;
  padding:clamp(36px,7vh,84px) 24px clamp(54px,8vh,94px);
}
.auth-box{
  width:min(100%,460px);
  padding:clamp(28px,4vw,43px);
  border:1px solid #dbe7e0;
  border-radius:18px;
  background:#fff;
  box-shadow:0 22px 60px #123e3a12,0 3px 10px #123e3a08;
}
.auth-box h2{
  margin:0 0 9px;
  color:var(--auth-ink);
  font-size:clamp(26px,3vw,32px);
  font-weight:650;
  letter-spacing:-1px;
  line-height:1.18;
}
.auth-box>p{margin:0 0 28px;color:#617a75;font-size:14px;line-height:1.65}
.auth-box .field{gap:7px;margin-bottom:17px}
.auth-box .field label{color:#365952;font-size:12px;font-weight:720}
.auth-box .field input{
  min-height:47px;
  padding:11px 13px;
  border-color:#ccdcd5;
  border-radius:9px;
  color:#193d3d;
  font-size:14px;
}
.auth-box .field input::placeholder{color:#91a29d}
.auth-box .field input:focus{border-color:#52a897;box-shadow:0 0 0 3px #52a89721}
.auth-box form>.btn{
  min-height:48px;
  margin-top:3px;
  border-radius:9px;
  background:var(--auth-forest);
  box-shadow:0 9px 18px #103b3a1a;
  font-size:13px;
}
.auth-box form>.btn:hover{background:#185047;box-shadow:0 12px 23px #103b3a24}
.auth-back-home{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0 0 29px;
  color:#41645c;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
}
.auth-back-home:hover{color:#176e68;text-decoration:underline;text-underline-offset:3px}
.auth-back-home .icon{width:16px;height:16px}
.auth-box .auth-help{margin:17px 0 0;color:#738883;font-size:11px;line-height:1.65}

/* The role chooser is useful for the local demo, but it should read as a
   contained developer aid instead of a second primary sign-in path. */
.auth-box .demo-area{
  margin-top:26px;
  padding:18px;
  border:1px solid #d9e7e0;
  border-radius:12px;
  background:linear-gradient(135deg,#f6fbf7,#eef7f2);
}
.auth-box .demo-area .eyebrow{margin-bottom:12px;color:#528176;font-size:9px;font-weight:800;letter-spacing:1.25px}
.auth-box .demo-selector{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end}
.auth-box .demo-selector label{grid-column:1/-1;color:#55736c;font-size:11px;font-weight:700}
.auth-box .demo-selector select{
  min-width:0;
  min-height:42px;
  padding:9px 31px 9px 11px;
  border:1px solid #c9ddd4;
  border-radius:8px;
  background:#fff;
  color:#294f49;
  font-size:12px;
}
.auth-box .demo-selector .btn{
  min-height:42px;
  padding:9px 12px;
  border-color:#bbd7cf;
  border-radius:8px;
  background:#fff;
  color:#28655d;
  font-size:11px;
}
.auth-box .demo-selector .btn:hover:not(:disabled){background:#e2f1eb;border-color:#8dc4b6}
.auth-box .demo-area+.auth-help{margin-top:10px;padding:0 2px;color:#80938e;font-size:10px}
.auth-box .form-error{margin-bottom:15px;padding:10px 12px;border:1px solid #efd0c8;border-radius:8px;background:#fff6f3;color:#99473d;font-size:11px;line-height:1.5}
.auth-box .form-error:empty{display:none}

.auth-footer{
  grid-column:1;
  grid-row:3;
  width:100%;
  padding:0 clamp(22px,5vw,72px) 22px;
  color:#758981;
  font-size:10px;
  line-height:1.5;
}
.auth-footer a{color:#416a61;font-weight:650;text-decoration:none}
.auth-footer a:hover{text-decoration:underline;text-underline-offset:3px}

@media(max-width:680px){
  .auth-site-header,
  .auth-page>.auth-story{min-height:70px;padding:15px 20px}
  .auth-site-header .brand,
  .auth-page>.auth-story .brand{font-size:18px}
  .auth-site-header .brand-mark,
  .auth-page>.auth-story .brand-mark{width:36px;height:36px}
  .auth-main{align-items:flex-start;padding:31px 17px 48px}
  .auth-box{padding:26px 22px;border-radius:15px}
  .auth-box h2{font-size:27px}
  .auth-box>p{font-size:13px}
  .auth-box .demo-area{padding:15px}
  .auth-box .demo-selector{grid-template-columns:1fr}
  .auth-box .demo-selector .btn{width:100%}
  .auth-footer{padding:0 20px 18px}
}
@media(max-width:390px){
  .auth-box{padding:24px 18px}
  .auth-back-home{margin-bottom:24px}
  .auth-box .demo-area{margin-right:-2px;margin-left:-2px}
}
@media(prefers-reduced-motion:reduce){
  .auth-box form>.btn{transition:none}
}

/* The marketing site carries the product story. Sign-in is intentionally a
   quiet, focused transition into the workspace. */
.auth-page.auth-page-streamlined{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto minmax(0,1fr) auto;
  min-height:100dvh;
  background:radial-gradient(circle at 50% -16%,#dceff0 0,transparent 36%),linear-gradient(180deg,#f8fbfb 0,#eef6f6 100%);
}
.auth-page-streamlined .auth-site-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:min(1180px,calc(100% - 48px));
  min-height:88px;
  margin:0 auto;
  gap:20px;
}
.auth-page-streamlined .auth-site-header .brand{color:#183946}
.auth-page-streamlined .auth-site-header .brand-mark{background:#143c4a;color:#d5eeeb}
.auth-page-streamlined .auth-site-header .brand small{color:#708790}
.auth-site-return{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#45646d;
  font-size:13px;
  font-weight:680;
  text-decoration:none;
  white-space:nowrap;
}
.auth-site-return .icon{width:15px;height:15px;transition:transform .16s ease}
.auth-site-return:hover{color:var(--teal-deep,#115d5a)}
.auth-site-return:hover .icon{transform:translateX(2px)}
.auth-page-streamlined .auth-main{
  display:grid;
  min-height:0;
  place-items:center;
  padding:28px 24px 48px;
}
.auth-page-streamlined .auth-box{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:min(100%,458px);
  max-width:none;
  padding:clamp(28px,4vw,42px);
  border:1px solid #d6e4e7;
  border-radius:18px;
  background:linear-gradient(145deg,#fff 0%,#fbfefe 100%);
  box-shadow:0 20px 52px #10354416,0 3px 10px #10354408;
}
.auth-box-watermark{
  position:absolute;
  z-index:0;
  inset:-54px -68px;
  display:grid;
  place-items:center;
  overflow:hidden;
  color:var(--theme-primary,#258477);
  opacity:.065;
  pointer-events:none;
  transform:rotate(-7deg);
  transform-origin:center;
}
.auth-box-watermark .arbomente-mark{width:min(112vw,560px);height:auto}
.auth-page-streamlined .auth-box>:not(.auth-box-watermark){position:relative;z-index:1}
.auth-box-heading{margin:0 0 27px}
.auth-box-heading .eyebrow{display:block;margin-bottom:9px;color:#42777a;font-size:10px}
.auth-page-streamlined .auth-box h1{
  margin:0 0 10px;
  color:#1a3541;
  font-size:clamp(29px,3.1vw,36px);
  font-weight:730;
  letter-spacing:-1.05px;
  line-height:1.14;
}
.auth-page-streamlined .auth-box-heading p{
  margin:0;
  color:#607881;
  font-size:14px;
  line-height:1.6;
}
.auth-page-streamlined .auth-box .field{margin-bottom:18px}
.auth-page-streamlined .auth-box .field label{color:#45616a;font-weight:680}
.auth-page-streamlined .auth-box .field input{min-height:48px;padding:12px 14px}
.auth-page-streamlined .auth-box form .btn.block{min-height:48px;margin-top:4px}
.auth-page-streamlined .auth-help{margin:17px 0 0;color:#6c8188;font-size:12px;line-height:1.55}
.auth-page-streamlined .demo-area{
  display:grid;
  gap:14px;
  margin-top:25px;
  padding:17px;
  border:1px solid #d6e5e7;
  border-radius:12px;
  background:linear-gradient(145deg,#f7fbfb,#f1f8f8);
}
.auth-page-streamlined .demo-area-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.auth-page-streamlined .demo-area-head>div{display:grid;gap:3px}
.auth-page-streamlined .demo-area-head .eyebrow{color:#5e8088;font-size:9px}
.auth-page-streamlined .demo-area-head strong{color:#31545e;font-size:13px;line-height:1.35}
.auth-page-streamlined .demo-selector{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.auth-page-streamlined .demo-selector label{color:#526e76;font-size:12px;font-weight:680}
.auth-page-streamlined .demo-selector select{width:100%;min-height:43px;padding:9px 12px;border-radius:8px}
.auth-page-streamlined .demo-selector .btn{min-height:42px;margin-top:2px}
.auth-page-streamlined .auth-footer{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  padding:0 0 24px;
  color:#72878e;
  font-size:11px;
  line-height:1.5;
  text-align:center;
}
@media(max-width:680px){
  .auth-page-streamlined .auth-site-header{width:calc(100% - 36px);min-height:72px}
  .auth-page-streamlined .auth-site-header .brand{font-size:16px}
  .auth-page-streamlined .auth-site-header .brand-mark{width:32px;height:32px;border-radius:9px}
  .auth-page-streamlined .auth-site-header .brand small{font-size:8px}
  .auth-site-return{font-size:12px}
  .auth-page-streamlined .auth-main{align-items:start;padding:18px 18px 30px}
  .auth-page-streamlined .auth-box{padding:27px 22px;border-radius:15px}
  .auth-page-streamlined .auth-box h1{font-size:29px}
  .auth-page-streamlined .auth-footer{width:calc(100% - 36px);padding-bottom:18px;font-size:10px}
}
@media(prefers-reduced-motion:no-preference){
  .app-shell:not(.course-overlay-active) .content{view-transition-name:lms-workspace}
  .app-shell:not(.course-overlay-active) .workspace-navigation{view-transition-name:lms-navigation}
  ::view-transition-old(lms-workspace),::view-transition-new(lms-workspace),::view-transition-old(lms-navigation),::view-transition-new(lms-navigation){animation-duration:150ms;animation-timing-function:cubic-bezier(.2,.75,.25,1)}
  ::view-transition-old(lms-workspace),::view-transition-old(lms-navigation){animation-name:lms-workspace-leave}
  ::view-transition-new(lms-workspace),::view-transition-new(lms-navigation){animation-name:lms-workspace-enter}
  @keyframes lms-workspace-leave{to{opacity:0}}
  @keyframes lms-workspace-enter{from{opacity:0}}
}

/* On phones, the launched course becomes the interface. Keep only the title,
   exit control, progress, optional contents drawer, and page navigation. */
@media(max-width:680px),(max-width:1000px) and (max-height:520px){
  .course-overlay-backdrop{
    align-items:stretch;
    padding:0;
    background:#fff;
    backdrop-filter:none;
  }
  .course-overlay{
    width:100%;
    max-width:100vw;
    height:100vh;
    height:100dvh;
    min-height:100vh;
    min-height:100dvh;
    max-height:100dvh;
    grid-template-rows:auto minmax(0,1fr);
    border:0;
    border-radius:0;
  }
  .course-overlay-head{
    width:100%;
    min-width:0;
    min-height:54px;
    align-items:center;
    flex-wrap:nowrap;
    gap:8px;
    padding:calc(5px + env(safe-area-inset-top)) 8px 5px 13px;
  }
  .course-overlay-title{
    flex:1 1 auto;
    min-width:0;
    max-width:none;
    gap:0;
  }
  .course-overlay-title>div{min-width:0;width:100%}
  .course-overlay-mark,
  .course-overlay-title .eyebrow,
  .course-overlay-title p,
  .course-overlay-actions .course-overlay-status,
  .course-overlay-actions .course-overlay-time,
  .course-overlay-actions .scorm-save-status,
  .course-overlay-actions #scorm-save-retry{display:none}
  .course-overlay-title h2{
    overflow:hidden;
    margin:0;
    color:#1e414a;
    font-size:15px;
    font-weight:720;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .course-overlay-actions{flex:none;flex-wrap:nowrap;gap:4px}
  .course-overlay-actions #course-overlay-exit{
    display:grid;
    width:44px;
    min-width:44px;
    height:44px;
    min-height:44px;
    place-items:center;
    padding:0;
    border-radius:10px;
    font-size:0;
  }
  .course-overlay-actions #course-overlay-exit .icon{
    width:20px;
    height:20px;
    margin:0;
  }
  .course-overlay-foot{display:none}
  .course-overlay-frame,
  .course-overlay-frame-with-navigation{
    width:100%;
    min-width:0;
    min-height:0;
    height:100%;
  }
  .course-overlay-frame iframe{max-width:100%;min-width:0}
  .scorm-sco-navigation{
    min-width:0;
    gap:6px;
    padding:7px 9px calc(7px + env(safe-area-inset-bottom));
  }
  .scorm-sco-navigation .btn{
    min-width:42px;
    min-height:44px;
    padding:7px 9px;
    font-size:11px;
  }
  .scorm-sco-position{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

  .course-overlay-native .native-course-player{
    width:100%;
    min-width:0;
    grid-template-rows:auto minmax(0,1fr);
  }
  .course-overlay-native .native-course-player-heading{
    display:flex;
    min-height:40px;
    align-items:center;
    justify-content:flex-end;
    padding:5px 12px;
    gap:0;
  }
  .course-overlay-native .native-course-player-heading-copy{display:none}
  .course-overlay-native .native-course-player-progress{gap:7px;padding:0}
  .course-overlay-native .native-course-player-progress .learning-tree-status{width:27px;height:27px}
  .course-overlay-native .native-course-player-progress strong{font-size:15px}
  .course-overlay-native .native-course-player-progress span{font-size:8px}
  .course-overlay-native .course-layout,
  .course-overlay-native .course-layout.is-nav-collapsed{
    width:100%;
    min-width:0;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto minmax(0,1fr);
    overflow:hidden;
  }
  .course-overlay-native .lesson-nav,
  .course-overlay-native .lesson-nav.is-collapsed{
    width:100%;
    min-width:0;
    height:auto;
    max-height:44dvh;
    border-right:0;
    border-bottom:1px solid #d7e4e7;
  }
  .course-overlay-native .lesson-nav-header,
  .course-overlay-native .lesson-nav.is-collapsed .lesson-nav-header{
    min-height:54px;
    justify-content:space-between;
    padding:7px 12px 7px 14px;
  }
  .course-overlay-native .lesson-nav.is-collapsed .lesson-nav-header-copy{display:grid}
  .course-overlay-native .lesson-nav-header-copy{gap:2px}
  .course-overlay-native .lesson-nav .lesson-nav-collapse{width:40px;height:40px}
  .course-overlay-native .lesson-nav-header-copy .eyebrow{font-size:8px}
  .course-overlay-native .lesson-nav-header h2{font-size:12px}
  .course-overlay-native .lesson-nav-progress .progress{width:min(190px,58vw);height:4px}
  .course-overlay-native .lesson-nav-scroll{max-height:calc(44dvh - 54px);padding:7px 9px 9px}
  .course-overlay-native .lesson-nav.is-collapsed .lesson-nav-scroll{display:none}
  .course-overlay-native .lesson-nav .lesson-nav-item{padding:9px 10px}
  .course-overlay-native .lesson-panel{width:100%;min-width:0}
  .course-overlay-native .lesson-top{
    min-height:34px;
    gap:8px;
    padding:7px 14px;
    font-size:10px;
  }
  .course-overlay-native .lesson-top>span:last-child{font-size:9px}
  .course-overlay-native .lesson-panel-scroll{width:100%;min-width:0;overflow-x:hidden}
  .course-overlay-native .lesson-content{
    width:100%;
    max-width:none;
    min-width:0;
    min-height:0;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto;
    align-content:start;
    gap:16px;
    padding:20px 17px 26px;
    margin:0;
  }
  .course-overlay-native .lesson-content-heading,
  .course-overlay-native .lesson-content-copy{width:100%;min-width:0}
  .course-overlay-native .lesson-content-heading .lesson-topic-title{margin-bottom:6px;font-size:12px}
  .course-overlay-native .lesson-content-heading h2{
    max-width:100%;
    margin-bottom:5px;
    font-size:23px;
    line-height:1.2;
    overflow-wrap:anywhere;
  }
  .course-overlay-native .lesson-content .lead{margin-bottom:18px;font-size:15px;line-height:1.58}
  .course-overlay-native .lesson-content li{padding:5px 0 5px 3px;font-size:13px;line-height:1.6}
  .course-overlay-native .lesson-illustration:not(.lesson-illustration-media){display:none}
  .course-overlay-native .lesson-illustration-media{
    width:100%;
    max-height:210px;
    order:initial;
    padding:0;
    margin:0;
  }
  .course-overlay-native .lesson-illustration-media img{max-height:210px}
  .course-overlay-native .lesson-callout{margin-top:18px}
  .course-overlay-native .lesson-sources{width:100%;padding:0 17px 22px}
  .course-overlay-native .quiz-content{width:100%;max-width:none;padding:22px 17px 28px}
  .course-overlay-native .quiz-content h2{font-size:25px}
  .course-overlay-native .question{padding:18px 0}
  .course-overlay-native .complete-panel{min-height:0;align-content:start;padding:28px 18px}
  .course-overlay-native .lesson-bottom{
    width:100%;
    min-width:0;
    gap:8px;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));
  }
  .course-overlay-native .lesson-bottom .btn,
  .course-overlay-native .lesson-bottom :is([data-action="previous-page"],[data-action="next-course"]){
    flex:1 1 0;
    width:auto;
    min-width:0;
    min-height:44px;
    padding:8px 10px;
    font-size:12px;
  }
  .course-overlay-native .completion-actions{
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));
  }
  .course-overlay-native .completion-actions .btn{min-height:44px}
  .external-course-overlay-body{min-height:0;overflow-y:auto;padding:28px 18px calc(28px + env(safe-area-inset-bottom))}
}

/* A phone in landscape is wider than the portrait breakpoint but still has a
   phone-sized canvas. Keep the workspace navigation off-canvas and preserve
   as much vertical room as possible for launched course content. */
@media(min-width:681px) and (max-width:1000px) and (max-height:520px){
  .app-shell{display:block}
  .sidebar{
    width:min(72vw,408px);
    padding:18px 16px;
    transform:translateX(-100%);
    transition:transform .18s;
    box-shadow:4px 0 30px #21453220;
  }
  .sidebar.open{transform:translateX(0)}
  .sidebar .brand{margin-bottom:18px}
  .sidebar-close{display:inline-flex;position:absolute;right:4px;top:5px}
  .sidebar-footer{display:none}
  .sidebar-account{margin-top:10px;padding-top:10px}
  .main-wrap{width:100%}
  .mobile-menu{display:inline-flex}
  .mobile-topbar{
    height:52px;
    padding:0 14px;
    display:flex;
    align-items:center;
    gap:10px;
    border-bottom:1px solid var(--line);
    background:#fff;
    color:#284450;
    font-size:14px;
    font-weight:700;
    letter-spacing:-.25px;
  }
  .mobile-topbar .mobile-menu{display:inline-flex}
  .content{padding:22px 24px 34px}

  .course-overlay-head{min-height:50px}
  .course-overlay-native .native-course-player{grid-template-rows:minmax(0,1fr)}
  .course-overlay-native .native-course-player-heading{display:none}
  .course-overlay-native .lesson-top{display:none}
  .course-overlay-native .lesson-content{padding:16px 20px 22px}
  .course-overlay-native .lesson-content-heading h2{font-size:21px}
  .course-overlay-native .lesson-content .lead{font-size:14px}
  .course-overlay-native .lesson-bottom{
    padding-top:5px;
    padding-bottom:calc(5px + env(safe-area-inset-bottom));
  }
}

/* Evidence Center: a durable, audit-ready view of training assignments and
   their activity. These styles stay deliberately scoped so learner history
   and the regular reporting tables retain their own density and hierarchy. */
.evidence-center{min-width:0;color:#203e4a;container:evidence-center / inline-size}
.evidence-center .page-heading{margin-bottom:20px}
.evidence-center-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin-bottom:22px;padding:24px 26px;border:1px solid #c8dddd;border-radius:15px;background:radial-gradient(circle at 97% 5%,#d8efee 0,transparent 33%),linear-gradient(125deg,#fff 0%,#f3faf9 66%,#e8f4f2 100%);box-shadow:0 8px 20px #183f4409}
.evidence-center-hero-copy{min-width:0}
.evidence-center-hero .eyebrow{margin-bottom:7px;color:#407d75}
.evidence-center-hero h2{max-width:800px;margin:0;color:#214852;font-size:25px;font-weight:750;line-height:1.22;letter-spacing:-.65px}
.evidence-center-hero p{max-width:760px;margin:8px 0 0;color:#58747b;font-size:13px;line-height:1.55}
.evidence-center-hero-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.evidence-center-hero-actions .btn{min-height:40px;white-space:nowrap}

.evidence-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 25px}
.evidence-summary-card{display:flex;flex-direction:column;min-width:0;min-height:138px;padding:18px;border:1px solid #d5e2e4;border-radius:13px;background:#fff;box-shadow:0 3px 9px #173e4805}
.evidence-summary-card-head{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:29px;color:#47636b;font-size:12px;font-weight:700;line-height:1.3}
.evidence-summary-card-icon{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:8px;background:#edf4f5;color:#2e6871}
.evidence-summary-card-icon .icon{width:17px;height:17px}
.evidence-summary-card-value{margin:10px 0 5px;color:#203e4a;font-size:35px;font-weight:750;line-height:1.03;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.evidence-summary-card-note{margin-top:auto;color:#5e7780;font-size:11px;line-height:1.45}
.evidence-summary-card--complete .evidence-summary-card-icon,.evidence-summary-card.completed .evidence-summary-card-icon{background:#e8f6ee;color:#207254}
.evidence-summary-card--attention .evidence-summary-card-icon,.evidence-summary-card.overdue .evidence-summary-card-icon{background:#fff0e2;color:#a35d13}
.evidence-summary-card--locked .evidence-summary-card-icon,.evidence-summary-card.locked .evidence-summary-card-icon{background:#fff0ed;color:#a04038}
.evidence-summary-card--attested .evidence-summary-card-icon,.evidence-summary-card.attested .evidence-summary-card-icon{background:#eeeefa;color:#62518a}

.evidence-register{min-width:0;border:1px solid #d4e1e3;border-radius:14px;background:#fff;box-shadow:0 4px 12px #173e4806;overflow:hidden}
.evidence-register-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px 16px;border-bottom:1px solid #e0eaeb}
.evidence-register-head>div{min-width:0}
.evidence-register-head h2{margin:0;color:#234750;font-size:19px;font-weight:750;line-height:1.3;letter-spacing:-.35px}
.evidence-register-head p{margin:5px 0 0;color:#607981;font-size:12px;line-height:1.5}
.evidence-register-count{flex:none;padding-top:2px;color:#627980;font-size:12px;line-height:1.45;text-align:right;font-variant-numeric:tabular-nums}

.evidence-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 22px;border-bottom:1px solid #e0eaeb;background:#fbfdfd}
.evidence-filter-search{position:relative;flex:1 1 250px;min-width:180px;max-width:430px}
.evidence-filter-search>.icon{position:absolute;top:13px;left:13px;width:17px;height:17px;color:#557880;pointer-events:none}
.evidence-filter-search input{width:100%;height:44px;border:1px solid #cbdde0;border-radius:9px;background:#fff;padding:9px 12px 9px 39px;color:#294d57;font-family:inherit;font-size:13px;line-height:1.3}
.evidence-filter-search input::placeholder{color:#71868b;opacity:1}
.evidence-filter-group{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.evidence-filters select,.evidence-filter-select{height:44px;min-width:136px;border:1px solid #cbdde0;border-radius:9px;background:#fff;padding:9px 30px 9px 12px;color:#365962;font-family:inherit;font-size:12px;line-height:1.3}
.evidence-filter-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 11px;border:1px solid #cddfe0;border-radius:8px;background:#fff;color:#315d66;font-family:inherit;font-size:12px;font-weight:650;line-height:1.3;white-space:nowrap;cursor:pointer}
.evidence-filter-action .icon{width:16px;height:16px}
.evidence-filter-action:hover{border-color:#76a59e;background:#eff8f6;color:#20565a}
.evidence-filter-action[aria-pressed="true"]{border-color:#244d56;background:#244d56;color:#fff;box-shadow:0 2px 5px #123c4814}
.evidence-filter-action[aria-pressed="true"]:hover{background:#1a3d46;color:#fff}
.evidence-filters .btn{min-height:42px;margin-left:auto;white-space:nowrap}

.evidence-register-table{width:100%;min-width:1040px;border-collapse:collapse;table-layout:fixed;color:#47636a;font-size:12px}
.evidence-register-table th{padding:12px 16px;background:#f8fbfb;color:#607b81;font-size:9px;font-weight:750;letter-spacing:.08em;line-height:1.25;text-transform:uppercase;white-space:nowrap}
.evidence-register-table td{padding:16px;border-color:#e7eeee;color:#4f6870;vertical-align:middle;white-space:normal;line-height:1.4}
.evidence-register-table tbody tr{transition:background .15s,box-shadow .15s}
.evidence-register-table tbody tr:hover{background:#fbfefd}
.evidence-register-table tbody tr:focus-within{background:#f5fbfa;box-shadow:inset 3px 0 #2c8378}
.evidence-register-table .evidence-record-row--attention{background:#fffdfa}
.evidence-register-table .evidence-record-row--locked{background:#fffdfc}
.evidence-register-table .evidence-record-row--complete td:first-child{box-shadow:inset 3px 0 #2c896a}
.evidence-register-table .evidence-record-row--attention td:first-child{box-shadow:inset 3px 0 #c47a25}
.evidence-register-table .evidence-record-row--locked td:first-child{box-shadow:inset 3px 0 #b04940}
.evidence-person{display:flex;align-items:center;gap:10px;min-width:0}
.evidence-person .avatar{width:36px;height:36px;flex:none;border:1px solid #d2e1e3;background:#eaf3f3;color:#32636a;font-size:11px}
.evidence-person>div{display:grid;gap:2px;min-width:0}
.evidence-person strong{overflow:hidden;color:#294b54;font-size:12px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.evidence-person small{overflow:hidden;color:#71878c;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.evidence-course{display:grid;gap:4px;min-width:0}
.evidence-course strong{color:#2a4c55;font-size:12px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.evidence-course small{color:#688087;font-size:10px;line-height:1.4;overflow-wrap:anywhere}
.evidence-program{display:grid;gap:3px;min-width:0}
.evidence-program strong{color:#40626a;font-size:11px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}
.evidence-program small{color:#74898e;font-size:10px;line-height:1.35}
.evidence-date{display:grid;gap:3px;color:#3d6069;font-size:11px;line-height:1.35;font-variant-numeric:tabular-nums}
.evidence-date small{color:#768b90;font-size:10px;line-height:1.35}
.evidence-score{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:#47646b;font-size:11px;line-height:1.35}
.evidence-score strong{color:#294c55;font-size:14px;font-weight:750;font-variant-numeric:tabular-nums}
.evidence-score small{width:100%;color:#72878c;font-size:10px;line-height:1.35}
.evidence-record-open{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:6px 9px;border:1px solid #ccdfe0;border-radius:8px;background:#fff;color:#315e66;font-family:inherit;font-size:11px;font-weight:700;line-height:1.3;text-decoration:none;white-space:nowrap;cursor:pointer}
.evidence-record-open .icon{width:15px;height:15px}
.evidence-record-open:hover{border-color:#73a39b;background:#eff8f6;color:#1f5559}

.evidence-status{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:25px;padding:4px 7px;border:1px solid #d4e0e2;border-radius:6px;background:#f3f6f7;color:#506a72;font-size:10px;font-weight:750;line-height:1.15;text-align:center;text-transform:uppercase;white-space:nowrap}
.evidence-status .icon{width:13px;height:13px}
.evidence-status--complete,.evidence-status--completed,.evidence-status--passed{border-color:#c7e4d5;background:#e9f7ef;color:#237454}
.evidence-status--in-progress,.evidence-status--in_progress,.evidence-status--started{border-color:#f0dcb8;background:#fff4e4;color:#955a13}
.evidence-status--attention,.evidence-status--overdue{border-color:#efd2a5;background:#fff1dc;color:#a15d10}
.evidence-status--failed,.evidence-status--locked{border-color:#eacbc7;background:#fff0ed;color:#a24239}
.evidence-status--attested,.evidence-status--external{border-color:#d8d4ee;background:#f0eff9;color:#625186}
.evidence-status--not-started,.evidence-status--not_started,.evidence-status--pending{border-color:#d6e1e3;background:#f2f6f7;color:#59727a}
.evidence-register-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 22px;border-top:1px solid #e0eaeb;color:#617981;font-size:11px;line-height:1.45}
.evidence-register-footer>div{min-width:0}
.evidence-register-footer .btn{min-height:36px;flex:none}
.evidence-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:280px;padding:38px 24px;color:#57727a;text-align:center}
.evidence-empty>.icon{width:39px;height:39px;color:#3a8076}
.evidence-empty h3{margin:0;color:#294e56;font-size:20px;font-weight:750;line-height:1.35}
.evidence-empty p{max-width:460px;margin:0;color:#5c7780;font-size:13px;line-height:1.6}
.evidence-empty .btn{margin-top:4px}
.evidence-center :is(button,a,input,select):focus-visible{outline:3px solid #247e72;outline-offset:3px}

dialog.evidence-detail-modal{width:min(980px,calc(100vw - 32px));max-width:980px}
.evidence-detail{color:#244752}
dialog.evidence-detail-modal .modal-body{display:grid;gap:24px;background:#f9fcfc}
.evidence-detail-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:15px;padding:19px 20px;border:1px solid #cee1df;border-radius:13px;background:radial-gradient(circle at 100% 0,#d9efed 0,transparent 37%),linear-gradient(125deg,#fff,#f1f9f8)}
.evidence-detail-hero-icon{display:grid;place-items:center;width:43px;height:43px;border:1px solid #c6e1db;border-radius:11px;background:#eaf6f3;color:#277b70}
.evidence-detail-hero-icon .icon{width:23px;height:23px}
.evidence-detail-hero-copy{min-width:0}
.evidence-detail-hero .eyebrow{margin:1px 0 5px;color:#4b827b;font-size:9px}
.evidence-detail-hero h3{margin:0;color:#244a52;font-size:20px;font-weight:750;line-height:1.3;letter-spacing:-.35px;overflow-wrap:anywhere}
.evidence-detail-hero p{margin:6px 0 0;color:#607980;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.evidence-detail-hero .evidence-status{align-self:center}
.evidence-detail-section{min-width:0}
.evidence-detail-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 11px}
.evidence-detail-section-heading h3{margin:0;color:#294d56;font-size:14px;font-weight:750;line-height:1.3}
.evidence-detail-section-heading p,.evidence-detail-section-heading small{margin:0;color:#688087;font-size:11px;line-height:1.4;text-align:right}
.evidence-detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid #d5e3e4;border-radius:12px;background:#fff;overflow:hidden}
.evidence-detail-facts>div{display:grid;align-content:start;gap:5px;min-width:0;min-height:78px;padding:14px 15px;border-right:1px solid #e1eaeb;border-bottom:1px solid #e1eaeb}
.evidence-detail-facts>div:nth-child(3n){border-right:0}
.evidence-detail-facts>div:nth-last-child(-n+3){border-bottom:0}
.evidence-detail-facts dt{color:#698087;font-size:9px;font-weight:750;letter-spacing:.075em;line-height:1.25;text-transform:uppercase}
.evidence-detail-facts dd{margin:0;color:#2e5159;font-size:12px;font-weight:650;line-height:1.45;overflow-wrap:anywhere}
.evidence-detail-facts dd small{display:block;margin-top:3px;color:#71878d;font-size:10px;font-weight:500;line-height:1.4}
.evidence-detail-facts .evidence-status{justify-self:start}
.evidence-detail-hash{display:flex;align-items:center;gap:7px;min-width:0;padding:11px 13px;border:1px solid #d2e4e3;border-radius:9px;background:#f1f8f7;color:#41696b;font-size:10px;line-height:1.4}
.evidence-detail-hash .icon{width:16px;height:16px;flex:none;color:#2b7d73}
.evidence-detail-hash code{min-width:0;overflow:hidden;color:#355b61;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.evidence-detail-hash button{flex:none}
.evidence-timeline{position:relative;display:grid;gap:0;margin:0;padding:0;list-style:none}
.evidence-timeline:before{position:absolute;top:18px;bottom:18px;left:17px;width:1px;background:#cbdfe0;content:''}
.evidence-timeline-item{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:12px;min-width:0;padding:0 0 18px}
.evidence-timeline-item:last-child{padding-bottom:0}
.evidence-timeline-marker{z-index:1;display:grid;place-items:center;width:35px;height:35px;border:1px solid #c7dfe0;border-radius:50%;background:#f6fbfb;color:#39746f}
.evidence-timeline-marker .icon{width:16px;height:16px}
.evidence-timeline-item--complete .evidence-timeline-marker,.evidence-timeline-item--passed .evidence-timeline-marker{border-color:#bee0cf;background:#e8f6ee;color:#207254}
.evidence-timeline-item--attention .evidence-timeline-marker,.evidence-timeline-item--failed .evidence-timeline-marker{border-color:#efd2ba;background:#fff2e5;color:#a45d16}
.evidence-timeline-item--locked .evidence-timeline-marker{border-color:#eacac6;background:#fff0ed;color:#a13f37}
.evidence-timeline-copy{min-width:0;padding:3px 0}
.evidence-timeline-copy strong{display:block;color:#31535b;font-size:12px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.evidence-timeline-copy p{margin:3px 0 0;color:#647c83;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.evidence-timeline-date{max-width:175px;padding-top:3px;color:#6b8389;font-size:10px;line-height:1.4;text-align:right;font-variant-numeric:tabular-nums}
.evidence-payload{border:1px solid #d5e3e4;border-radius:10px;background:#fff;overflow:hidden}
.evidence-payload>summary{display:flex;align-items:center;gap:8px;padding:13px 15px;color:#355b62;font-size:11px;font-weight:700;line-height:1.4;cursor:pointer;list-style:none}
.evidence-payload>summary::-webkit-details-marker{display:none}
.evidence-payload>summary:before{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;content:'';transform:rotate(-45deg);transition:transform .15s}
.evidence-payload[open]>summary{border-bottom:1px solid #e0eaeb}
.evidence-payload[open]>summary:before{transform:rotate(45deg)}
.evidence-payload pre{max-height:270px;overflow:auto;margin:0;padding:14px 15px;background:#f6faf9;color:#31575e;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}

html[data-organization-theme="custom"] :is(.evidence-center-hero,.evidence-register,.evidence-summary-card,.evidence-detail-hero,.evidence-detail-facts,.evidence-payload){border-color:var(--organization-theme-border)}
html[data-organization-theme="custom"] :is(.evidence-center-hero,.evidence-detail-hero){background:radial-gradient(circle at 100% 0,var(--theme-pale) 0,transparent 37%),linear-gradient(125deg,#fff,var(--organization-theme-surface))}
html[data-organization-theme="custom"] :is(.evidence-center,.evidence-detail){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.evidence-center-hero h2,.evidence-summary-card-value,.evidence-register-head h2,.evidence-person strong,.evidence-course strong,.evidence-detail-hero h3,.evidence-detail-section-heading h3,.evidence-detail-facts dd){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.evidence-center-hero .eyebrow,.evidence-summary-card-icon,.evidence-detail-hero-icon,.evidence-detail-hash .icon){color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.evidence-summary-card-icon,.evidence-detail-hero-icon,.evidence-detail-hash){background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] :is(.evidence-center-hero p,.evidence-summary-card-head,.evidence-summary-card-note,.evidence-register-head p,.evidence-register-count,.evidence-person small,.evidence-course small,.evidence-program,.evidence-date,.evidence-date small,.evidence-score,.evidence-score small,.evidence-register-footer,.evidence-detail-hero p,.evidence-detail-section-heading p,.evidence-detail-section-heading small,.evidence-detail-facts dt,.evidence-detail-facts dd small,.evidence-detail-hash,.evidence-timeline-copy p,.evidence-timeline-date){color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] :is(.evidence-filters,.evidence-register-table th){border-color:var(--organization-theme-border-subtle);background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] :is(.evidence-register-head,.evidence-register-footer,.evidence-register-table td,.evidence-detail-facts>div,.evidence-payload[open]>summary){border-color:var(--organization-theme-border-subtle)}
html[data-organization-theme="custom"] :is(.evidence-filter-search input,.evidence-filters select,.evidence-filter-select,.evidence-filter-action,.evidence-record-open){border-color:var(--organization-theme-border);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] :is(.evidence-filter-action:hover,.evidence-record-open:hover){border-color:var(--theme-primary);background:var(--theme-soft);color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .evidence-filter-action[aria-pressed="true"]{border-color:var(--theme-primary);background:var(--theme-primary);color:#fff;box-shadow:0 2px 5px var(--organization-theme-shadow)}
html[data-organization-theme="custom"] .evidence-filter-action[aria-pressed="true"]:hover{border-color:var(--theme-primary-deep);background:var(--theme-primary-deep);color:#fff}
html[data-organization-theme="custom"] .evidence-register-table tbody tr:hover{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .evidence-register-table tbody tr:focus-within{background:var(--theme-soft);box-shadow:inset 3px 0 var(--theme-primary)}
html[data-organization-theme="custom"] .evidence-detail-hash{border-color:var(--organization-theme-border);color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .evidence-detail-hash code,.evidence-payload>summary,.evidence-payload pre{color:var(--theme-primary-deep)}
html[data-organization-theme="custom"] .evidence-payload pre{background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] .evidence-center :is(button,a,input,select):focus-visible{outline-color:var(--theme-focus)}

@container evidence-center (max-width:900px){
  .evidence-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evidence-summary-card{min-height:126px}
  .evidence-register-table{min-width:950px}
}
@container evidence-center (max-width:650px){
  .evidence-center-hero{grid-template-columns:1fr;padding:21px 19px}
  .evidence-center-hero h2{font-size:22px}
  .evidence-center-hero-actions{justify-content:flex-start}
  .evidence-center-hero-actions .btn{flex:1}
  .evidence-register-head{padding:18px 17px 14px;gap:10px;align-items:flex-start;flex-direction:column}
  .evidence-register-count{text-align:left}
  .evidence-filters{padding:12px 17px}
  .evidence-filter-search{flex-basis:100%;max-width:none}
  .evidence-filter-group{width:100%}
  .evidence-filters select,.evidence-filter-select{flex:1;min-width:0}
  .evidence-filters .btn{margin-left:0}
  .evidence-register-footer{padding:13px 17px;align-items:flex-start;flex-direction:column}
}
@container evidence-center (max-width:420px){
  .evidence-summary{gap:10px}
  .evidence-summary-card{min-height:118px;padding:15px 13px}
  .evidence-summary-card-head{font-size:11px}
  .evidence-summary-card-icon{width:27px;height:27px}
  .evidence-summary-card-value{font-size:31px}
  .evidence-summary-card-note{font-size:10px}
  .evidence-filter-group{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .evidence-filter-action{width:100%}
  .evidence-filters .btn{width:100%}
}
@media(max-width:680px){
  dialog.evidence-detail-modal{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:92dvh}
  dialog.evidence-detail-modal .modal-head,dialog.evidence-detail-modal .modal-body,dialog.evidence-detail-modal .modal-footer{padding-right:18px;padding-left:18px}
  dialog.evidence-detail-modal .modal-body{gap:20px}
  .evidence-detail-hero{grid-template-columns:38px minmax(0,1fr);gap:11px;padding:16px}
  .evidence-detail-hero-icon{width:38px;height:38px;border-radius:10px}
  .evidence-detail-hero h3{font-size:17px}
  .evidence-detail-hero .evidence-status{grid-column:2;justify-self:start}
  .evidence-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evidence-detail-facts>div{min-height:70px;padding:12px;border-right:1px solid #e1eaeb;border-bottom:1px solid #e1eaeb}
  .evidence-detail-facts>div:nth-child(3n){border-right:1px solid #e1eaeb}
  .evidence-detail-facts>div:nth-child(2n){border-right:0}
  .evidence-detail-facts>div:nth-last-child(-n+3){border-bottom:1px solid #e1eaeb}
  .evidence-detail-facts>div:nth-last-child(-n+2){border-bottom:0}
  .evidence-timeline-item{grid-template-columns:33px minmax(0,1fr);gap:10px;padding-bottom:16px}
  .evidence-timeline:before{left:16px}
  .evidence-timeline-marker{width:33px;height:33px}
  .evidence-timeline-date{grid-column:2;max-width:none;padding-top:0;text-align:left}
}

/* Compliance programs */
.compliance-programs{container-type:inline-size;container-name:compliance-programs;display:grid;gap:22px;min-width:0}
.compliance-programs-hero{display:grid;grid-template-columns:minmax(0,1fr) 104px;align-items:center;gap:24px;min-height:176px;padding:28px 31px;border:1px solid #c9e0dc;border-radius:16px;background:radial-gradient(circle at 100% 4%,#c9eee5 0,transparent 38%),linear-gradient(125deg,#fff,#eef8f6);box-shadow:0 8px 24px #173d4310}
.compliance-programs-hero .eyebrow{margin:0 0 8px;color:#39786f}
.compliance-programs-hero h2{max-width:730px;margin:0;color:#254853;font-size:26px;line-height:1.22;letter-spacing:-.48px}
.compliance-programs-hero p{max-width:710px;margin:9px 0 0;color:#5a737a;font-size:13px;line-height:1.6}
.compliance-programs-hero-mark{display:grid;place-items:center;justify-self:end;width:83px;height:83px;border:1px solid #b8ded6;border-radius:23px;background:#e5f5f1;color:#22796f;box-shadow:inset 0 1px #fff}
.compliance-programs-hero-mark .icon{width:38px;height:38px}
.compliance-program-directory{overflow:hidden}
.compliance-program-directory>.panel-head{align-items:center}
.compliance-program-directory-count{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#e9f5f2;color:#29665f;font-size:11px;font-weight:750;white-space:nowrap}
.compliance-program-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(305px,1fr));gap:16px;padding:21px}
.compliance-program-card{display:grid;gap:15px;min-width:0;padding:19px;border:1px solid #d5e4e5;border-radius:13px;background:linear-gradient(145deg,#fff,#fafdfc);box-shadow:0 4px 15px #173d430a;transition:border-color .16s,box-shadow .16s,transform .16s}
.compliance-program-card:hover{border-color:#a8cfca;box-shadow:0 9px 23px #173d4313;transform:translateY(-1px)}
.compliance-program-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:13px}
.compliance-program-card header>div{min-width:0}
.compliance-program-card .eyebrow{margin:0;color:#5c817d;font-size:9px}
.compliance-program-card h2{margin:5px 0 0;font-size:18px;line-height:1.3}
.compliance-program-card h2 a{color:#294b55;text-decoration:none}
.compliance-program-card h2 a:hover{text-decoration:underline;text-decoration-color:#76aaa3;text-underline-offset:3px}
.compliance-program-card>p{display:-webkit-box;overflow:hidden;min-height:39px;margin:0;color:#627b82;font-size:12px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.compliance-program-card-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:13px 0;border-top:1px solid #e4eded;border-bottom:1px solid #e4eded}
.compliance-program-card-facts div{display:grid;gap:3px;min-width:0}
.compliance-program-card-facts dt{color:#748b90;font-size:9px;font-weight:750;letter-spacing:.065em;line-height:1.2;text-transform:uppercase}
.compliance-program-card-facts dd{overflow:hidden;margin:0;color:#365861;font-size:11px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.compliance-program-card-progress{display:grid;gap:6px;color:#678087;font-size:10px}
.compliance-program-card-progress .row-progress{grid-template-columns:minmax(0,1fr) auto}
.compliance-program-card-note{min-height:26px;color:#70878d;font-size:11px;line-height:1.45}
.compliance-program-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#819399;font-size:10px}
.compliance-program-open{display:inline-flex;align-items:center;gap:4px;color:#24766d;font-size:11px;font-weight:750;text-decoration:none}
.compliance-program-open:hover{text-decoration:underline;text-underline-offset:3px}
.compliance-program-open .icon{width:14px;height:14px}
.compliance-program-detail{gap:20px}
.compliance-program-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:26px;padding:19px 22px;border:1px solid #c9e1dd;border-radius:14px;background:radial-gradient(circle at 98% 0,#d9f0eb,transparent 38%),linear-gradient(135deg,#fff,#f1f9f7)}
.compliance-program-detail-status{display:flex;align-items:flex-start;gap:12px;min-width:0}
.compliance-program-detail-status>.badge{margin-top:2px;flex:none}
.compliance-program-detail-status>div{display:grid;gap:4px;min-width:0}
.compliance-program-detail-status strong{color:#294e57;font-size:15px;line-height:1.35}
.compliance-program-detail-status span{color:#607a81;font-size:12px;line-height:1.5}
.compliance-program-detail-hero dl{display:grid;grid-template-columns:repeat(4,minmax(86px,1fr));margin:0;border:1px solid #d3e3e2;border-radius:10px;background:#fff;overflow:hidden}
.compliance-program-detail-hero dl div{display:grid;gap:4px;min-width:0;padding:12px 14px;border-right:1px solid #e1ebeb}
.compliance-program-detail-hero dl div:last-child{border-right:0}
.compliance-program-detail-hero dt{color:#71868b;font-size:8px;font-weight:750;letter-spacing:.075em;text-transform:uppercase}
.compliance-program-detail-hero dd{margin:0;color:#2e565c;font-size:18px;font-weight:760;line-height:1.2}
.compliance-program-requirements,.compliance-program-enrollments{overflow:hidden}
.compliance-program-table,.compliance-program-enrollment-table{width:100%;min-width:760px;border-collapse:collapse;table-layout:fixed;color:#4d6870;font-size:12px}
.compliance-program-table th,.compliance-program-enrollment-table th{padding:12px 16px;background:#f7fbfa;color:#698188;font-size:9px;font-weight:750;letter-spacing:.075em;line-height:1.25;text-align:left;text-transform:uppercase;white-space:nowrap}
.compliance-program-table td,.compliance-program-enrollment-table td{padding:15px 16px;border-top:1px solid #e4eeee;vertical-align:middle;line-height:1.42}
.compliance-program-table tbody tr:hover,.compliance-program-enrollment-table tbody tr:hover{background:#fbfefd}
.compliance-program-table th:first-child,.compliance-program-table td:first-child{width:74px;text-align:center}
.compliance-program-item-number{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid #c7dedb;border-radius:50%;background:#eff8f6;color:#2b746c;font-size:10px;font-weight:750}
.compliance-program-course{display:grid;gap:3px;min-width:0}
.compliance-program-course strong{color:#2b4d56;font-size:12px;font-weight:720;line-height:1.42}
.compliance-program-course small,.compliance-program-rule-note{display:block;color:#71878d;font-size:10px;line-height:1.45}
.compliance-program-rule{display:block;color:#345861;font-size:11px;font-weight:720;line-height:1.35}
.compliance-program-sequence,.compliance-program-any-order{display:inline-flex;align-items:center;padding:4px 7px;border-radius:6px;font-size:10px;font-weight:700;white-space:nowrap}
.compliance-program-sequence{background:#eaf6f3;color:#247268}
.compliance-program-any-order{background:#f1f5f6;color:#5d747a}
.compliance-program-enrollment-footer{padding:13px 20px;border-top:1px solid #e0ebeb;color:#6b838a;font-size:11px;line-height:1.45}
.compliance-program-enrollment-empty{display:flex;align-items:center;gap:13px;padding:30px 22px;color:#5c7880}
.compliance-program-enrollment-empty>.icon{width:31px;height:31px;flex:none;color:#42877e}
.compliance-program-enrollment-empty>div{display:grid;gap:3px;min-width:0}
.compliance-program-enrollment-empty strong{color:#365861;font-size:13px}
.compliance-program-enrollment-empty p{margin:0;color:#647d84;font-size:12px;line-height:1.5}
.compliance-program-enrollment-empty .btn{margin-left:auto}

dialog.compliance-program-modal{width:min(1000px,calc(100vw - 32px));max-width:1000px}
dialog.compliance-program-modal .modal-body{display:grid;gap:20px;background:#f9fcfc}
.compliance-program-modal-intro{margin:0;color:#58737b;font-size:12px;line-height:1.6}
.compliance-program-form{display:grid;gap:17px}
.compliance-program-form-section{padding:18px;border:1px solid #d6e5e6;border-radius:12px;background:#fff}
.compliance-program-form-section-head{display:flex;align-items:flex-start;gap:11px;margin:0 0 15px}
.compliance-program-form-section-head>div{min-width:0}
.compliance-program-form-section-head h3{margin:1px 0 3px;color:#2c4f58;font-size:14px;line-height:1.35}
.compliance-program-form-section-head p{margin:0;color:#6b838a;font-size:11px;line-height:1.5}
.compliance-program-form-step{display:grid;place-items:center;flex:none;width:27px;height:27px;border-radius:9px;background:#e5f3f0;color:#26776e;font-size:11px;font-weight:750}
.compliance-program-selected-count{margin-left:auto;padding:5px 8px;border-radius:999px;background:#edf7f4;color:#2a7067;font-size:10px;font-weight:750;white-space:nowrap}
.compliance-program-form .field{margin:0}
.compliance-program-form textarea{min-height:86px;resize:vertical}
.compliance-program-course-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:300px;overflow:auto;padding:2px}
.compliance-program-course-choice{display:grid;grid-template-columns:18px 24px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:11px;border:1px solid #d9e7e8;border-radius:9px;background:#fbfdfd;cursor:pointer;transition:border-color .14s,background .14s,box-shadow .14s}
.compliance-program-course-choice:hover{border-color:#9dc8c1;background:#f5fbfa}
.compliance-program-course-choice.selected{border-color:#5b9e94;background:#ecf8f5;box-shadow:inset 0 0 0 1px #cce8e2}
.compliance-program-course-choice input{width:16px;height:16px;margin:0;accent-color:#267c72}
.compliance-program-course-choice-mark{display:grid;place-items:center;width:24px;height:24px;border:1px solid #c9dfdc;border-radius:7px;background:#f0f8f6;color:#388279}
.compliance-program-course-choice-mark .icon{width:14px;height:14px}
.compliance-program-course-choice>span:last-child{display:grid;gap:2px;min-width:0}
.compliance-program-course-choice strong{overflow:hidden;color:#345761;font-size:11px;font-weight:720;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.compliance-program-course-choice small{overflow:hidden;color:#748b91;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.compliance-program-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.compliance-program-policy-grid .check-item{min-height:76px;margin:0;padding:11px;border:1px solid #dce9e9;border-radius:9px;background:#fbfdfd}
.compliance-program-policy-grid .check-item span{font-size:12px;line-height:1.35}
.compliance-program-policy-grid .check-item small{margin-top:3px;font-size:10px;line-height:1.45}
.compliance-program-policy-grid .check-item.is-disabled{cursor:not-allowed;opacity:.62}
.compliance-program-policy-grid .check-item.is-disabled small{color:#71858a}
.compliance-program-failure-limit{min-height:76px;padding:11px;border:1px solid #dce9e9;border-radius:9px;background:#fbfdfd}
.compliance-program-failure-limit input{height:39px}
.compliance-program-failure-limit small{font-size:10px;line-height:1.4}
.compliance-program-provider-guidance{grid-column:1/-1;margin:0;padding:11px 12px}
.compliance-program-provider-guidance strong{font-size:11px}
.compliance-program-provider-guidance p{margin:3px 0 0;font-size:10px;line-height:1.5}
.compliance-program-enrollment-program{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #cfe4df;border-radius:11px;background:linear-gradient(135deg,#f2faf8,#fff)}
.compliance-program-enrollment-program>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e2f2ee;color:#27776d}
.compliance-program-enrollment-program .icon{width:19px;height:19px}
.compliance-program-enrollment-program>div{display:grid;gap:3px;min-width:0}
.compliance-program-enrollment-program strong{color:#2d5059;font-size:13px}
.compliance-program-enrollment-program small{color:#6b8389;font-size:10px}
.compliance-program-enrollment-audience{display:grid;gap:12px}
.compliance-program-enrollment-audience header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.compliance-program-enrollment-audience h3{margin:0 0 3px;color:#31545d;font-size:14px}
.compliance-program-enrollment-audience p{margin:0;color:#6b8389;font-size:11px;line-height:1.45}
.compliance-program-learner-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:310px;overflow:auto;padding:2px}
.compliance-program-learner-choice{display:grid;grid-template-columns:18px 32px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:9px;border:1px solid #dce8e9;border-radius:9px;background:#fff;cursor:pointer}
.compliance-program-learner-choice:hover{border-color:#9bc6c0;background:#f5fbfa}
.compliance-program-learner-choice input{width:16px;height:16px;margin:0;accent-color:#287c72}
.compliance-program-learner-choice>span:last-child{display:grid;gap:2px;min-width:0}
.compliance-program-learner-choice strong,.compliance-program-learner-choice small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compliance-program-learner-choice strong{color:#355862;font-size:11px}
.compliance-program-learner-choice small{color:#71888e;font-size:10px}
.compliance-program-enrollment-settings{padding-top:2px}
html[data-organization-theme="custom"] :is(.compliance-programs-hero,.compliance-program-detail-hero,.compliance-program-enrollment-program){border-color:var(--organization-theme-border)}
html[data-organization-theme="custom"] :is(.compliance-programs-hero,.compliance-program-detail-hero,.compliance-program-enrollment-program){background:radial-gradient(circle at 100% 0,var(--theme-pale) 0,transparent 39%),linear-gradient(135deg,#fff,var(--organization-theme-surface))}
html[data-organization-theme="custom"] :is(.compliance-programs h1,.compliance-programs h2,.compliance-program-card h2 a,.compliance-program-detail-status strong,.compliance-program-course strong){color:var(--organization-theme-ink)}
html[data-organization-theme="custom"] :is(.compliance-program-card,.compliance-program-form-section,.compliance-program-detail-hero dl,.compliance-program-course-choice,.compliance-program-policy-grid .check-item,.compliance-program-failure-limit,.compliance-program-learner-choice){border-color:var(--organization-theme-border)}
html[data-organization-theme="custom"] :is(.compliance-program-card,.compliance-program-form-section,.compliance-program-detail-hero dl,.compliance-program-course-choice,.compliance-program-policy-grid .check-item,.compliance-program-failure-limit,.compliance-program-learner-choice){background:var(--organization-theme-surface)}
html[data-organization-theme="custom"] :is(.compliance-program-card>p,.compliance-program-detail-status span,.compliance-program-course small,.compliance-program-rule-note,.compliance-program-form-section-head p,.compliance-program-course-choice small,.compliance-program-learner-choice small){color:var(--organization-theme-muted)}
html[data-organization-theme="custom"] .compliance-program-card:hover,.compliance-program-course-choice:hover,.compliance-program-learner-choice:hover{border-color:var(--theme-primary);background:var(--theme-soft)}
html[data-organization-theme="custom"] .compliance-program-course-choice.selected{border-color:var(--theme-primary);background:var(--theme-soft);box-shadow:inset 0 0 0 1px var(--theme-primary)}
@container compliance-programs (max-width:900px){
  .compliance-program-detail-hero{grid-template-columns:1fr;gap:17px}
  .compliance-program-detail-hero dl{width:100%}
}
@container compliance-programs (max-width:640px){
  .compliance-programs-hero{grid-template-columns:1fr;padding:22px}
  .compliance-programs-hero-mark{display:none}
  .compliance-programs-hero h2{font-size:22px}
  .compliance-program-grid{grid-template-columns:1fr;padding:15px}
  .compliance-program-card-facts{gap:5px}
  .compliance-program-detail-hero dl{grid-template-columns:repeat(2,minmax(0,1fr))}
  .compliance-program-detail-hero dl div:nth-child(2){border-right:0}
  .compliance-program-detail-hero dl div:nth-child(-n+2){border-bottom:1px solid #e1ebeb}
  .compliance-program-course-picker,.compliance-program-learner-list,.compliance-program-policy-grid{grid-template-columns:1fr}
  .compliance-program-enrollment-empty{align-items:flex-start;flex-wrap:wrap}
  .compliance-program-enrollment-empty .btn{margin-left:44px}
}
@media(max-width:680px){
  dialog.compliance-program-modal{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:92dvh}
  dialog.compliance-program-modal .modal-head,dialog.compliance-program-modal .modal-body,dialog.compliance-program-modal .modal-footer{padding-right:18px;padding-left:18px}
  dialog.compliance-program-modal .modal-body{gap:16px}
  .compliance-program-form-section{padding:15px}
  .compliance-program-enrollment-audience header{align-items:flex-start;flex-direction:column}
}

/* Actionable warnings retain their meaning under every organization theme. */
.inline-message.warning{border-color:#e4ca8b;background:#fff8e8;color:#705319;box-shadow:inset 3px 0 #c48721}
.inline-message.warning strong{color:#60450f}
.inline-message.warning.critical{border-color:#e2b7ad;background:#fff4f0;color:#7d392f;box-shadow:inset 3px 0 #bd5a49}
.inline-message.warning.critical strong{color:#682e27}
html[data-organization-theme="custom"] .inline-message.warning{border-color:#e4ca8b;background:#fff8e8;color:#705319}
html[data-organization-theme="custom"] .inline-message.warning strong{color:#60450f}
html[data-organization-theme="custom"] .inline-message.warning.critical{border-color:#e2b7ad;background:#fff4f0;color:#7d392f}
html[data-organization-theme="custom"] .inline-message.warning.critical strong{color:#682e27}

/* Alerts belong to the register or enrollment flow without creating extra cards. */
.evidence-notices{display:grid;gap:10px;padding:14px 22px;border-bottom:1px solid #e0eaeb;background:#fffdf8}
.evidence-notices:empty,.compliance-program-enrollment-notices:empty{display:none}
.evidence-notices .inline-message,.compliance-program-enrollment-notices .inline-message{margin:0}
.evidence-notices .inline-message{padding:12px 14px}
.compliance-program-enrollment-notices{display:grid;gap:9px;margin:0}
.compliance-program-enrollment-notices .inline-message{padding:11px 12px;font-size:11px;line-height:1.55}
html[data-organization-theme="custom"] .evidence-notices{border-color:var(--organization-theme-border-subtle);background:var(--organization-theme-surface)}

@container evidence-center (max-width:650px){
  .evidence-notices{gap:8px;padding:12px 17px}
}
@media(max-width:680px){
  .compliance-program-enrollment-notices{gap:8px}
}

/* Language access is a first-class workspace setting. Controls use native
   language names and remain ordinary labelled selects for keyboard and screen
   reader access. */
.interface-language-selector{display:grid;gap:4px;min-width:0}
.interface-language-selector label{color:#5d767d;font-size:9px;font-weight:760;letter-spacing:.055em;line-height:1.2;text-transform:uppercase}
.interface-language-selector select{width:100%;min-height:32px;padding:6px 25px 6px 8px;border:1px solid #b8d2d5;border-radius:7px;background:#fff;color:#294f58;font-size:11px;font-weight:650;line-height:1.25}
.sidebar .interface-language-selector{margin:0 5px 10px}
.sidebar .interface-language-selector label{color:#9db9bf}
.sidebar .interface-language-selector select{border-color:#315966;background:#143641;color:#e7f1f2}
html[data-organization-theme="custom"] .sidebar .interface-language-selector select{border-color:var(--theme-sidebar-active);background:var(--theme-sidebar-active);color:#fff}
html[data-organization-navigation="light"] .sidebar .interface-language-selector label{color:var(--theme-sidebar-light-muted)}
html[data-organization-navigation="light"] .sidebar .interface-language-selector select{border-color:var(--theme-sidebar-light-border);background:#fff;color:var(--theme-sidebar-light-text)}
.auth-site-actions{display:flex;align-items:center;gap:15px;min-width:0}
.auth-site-actions .interface-language-selector{display:flex;align-items:center;gap:8px;width:auto}
.auth-site-actions .interface-language-selector label{font-size:8px}
.auth-site-actions .interface-language-selector select{width:138px;min-height:34px;background:#fff}
.organization-branding-grid>.organization-language-access{grid-column:1/-1}
.organization-language-access{margin-top:4px}
.organization-language-access .organization-branding-section-heading{margin-bottom:15px}
.organization-language-options{margin:2px 0 0;padding:0;border:0}
.organization-language-options legend{margin:0 0 8px;padding:0;color:#496570;font-size:11px;font-weight:700}
.organization-language-options>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.organization-language-option{min-height:58px;margin:0;padding:9px 10px;border-color:#d6e4e5;background:#fbfdfd}
.organization-language-option span{display:grid;gap:2px;min-width:0}
.organization-language-option strong{overflow:hidden;color:#31535d;font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.organization-language-option small{overflow:hidden;margin:0!important;color:#758c92;font-size:10px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.organization-language-note{margin:12px 0 0;padding:10px 11px;border-left:3px solid #79a9a3;border-radius:6px;background:#f2f8f7;color:#557078;font-size:10px;line-height:1.55}

/* The Arabic pack is right-to-left. Keep the application's structural rail,
   tree connectors, and text controls coherent without changing status colors
   or relying on direction alone to convey meaning. */
html[dir="rtl"] body{direction:rtl}
html[dir="rtl"] .app-shell{grid-template-columns:minmax(0,1fr) 408px}
html[dir="rtl"] .sidebar{right:0;left:auto;border-right:0;border-left:1px solid var(--line)}
html[dir="rtl"] .main-wrap{grid-column:1}
html[dir="rtl"] .sidebar-navigation{margin-right:0;margin-left:-6px;padding-right:0;padding-left:6px}
html[dir="rtl"] .sidebar-close{right:auto;left:12px}
html[dir="rtl"] :is(.workspace-switch select,.interface-language-selector select){text-align:right}
html[dir="rtl"] .sidebar-account-name{text-align:right}
html[dir="rtl"] .learning-tree-children{margin-right:var(--tree-child-offset)!important;margin-left:0!important;padding-right:var(--tree-rail)!important;padding-left:0!important}
html[dir="rtl"] .learning-tree-children>li:not(:last-child)::before,html[dir="rtl"] .learning-tree-children>li:last-child>.learning-tree-row::before,html[dir="rtl"] .learning-tree-children>li:last-child>.learning-tree-link::before,html[dir="rtl"] .learning-tree-children>li:last-child.learning-tree-message::before{right:calc(-1 * var(--tree-rail));left:auto}
html[dir="rtl"] .learning-tree-children>li>.learning-tree-row::after,html[dir="rtl"] .learning-tree-children>li>.learning-tree-link::after,html[dir="rtl"] .learning-tree-children>li.learning-tree-message::after{right:calc(-1 * var(--tree-rail));left:auto}
html[dir="rtl"] .learning-tree-row--has-children.learning-tree-row--expanded>.learning-tree-link::after{right:calc(var(--tree-link-inset) + 10px);left:auto}
html[dir="rtl"] .learning-tree-root--has-children>.learning-tree-link::after{right:17px;left:auto}
html[dir="rtl"] .course-detail-page-nav .btn:first-child .icon,html[dir="rtl"] .page-back-link .icon,html[dir="rtl"] .auth-site-return .icon{transform:scaleX(-1)}
html[dir="rtl"] .organization-language-note{border-right:3px solid #79a9a3;border-left:0}

/* Personal display preferences live beside the account controls. They apply
   across every workspace without changing authored course or organization data. */
.sidebar-account-actions{display:flex;align-items:center;gap:1px;flex:none}
.sidebar-account-actions .btn-icon{width:34px;height:34px;padding:7px}
.sidebar-account-actions .icon{width:18px;height:18px}
dialog.accessibility-settings-modal{width:min(760px,calc(100% - 30px));max-width:760px}
dialog.accessibility-settings-modal[open]{display:grid;max-height:min(94vh,760px);grid-template-rows:auto minmax(0,1fr) auto}
.accessibility-settings-modal .modal-head,.accessibility-settings-modal .modal-footer{position:static}
.accessibility-settings-modal .modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;background:#f7faf9}
.accessibility-settings-form{display:grid;gap:17px}
.accessibility-settings-intro{margin:0;color:#55717a;font-size:13px;line-height:1.6}
.accessibility-settings-primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.accessibility-settings-section{margin:0;padding:15px;border:1px solid #d5e4e5;border-radius:12px;background:#fff}
.accessibility-settings-section-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:11px}
.accessibility-settings-section-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:10px;background:#e5f3f1;color:#176c67;font-size:16px;font-weight:780;letter-spacing:-.5px}
.accessibility-settings-section-icon.language{font-size:11px;letter-spacing:-.8px}
.accessibility-settings-section-heading h3{margin:1px 0 3px;color:#294b55;font-size:15px}
.accessibility-settings-section-heading p{margin:0;color:#657e85;font-size:12px;line-height:1.5}
.accessibility-text-size-field{max-width:none;margin:0}
.accessibility-language-field{max-width:none;margin:0}
.accessibility-language-field select{min-height:44px;font-weight:500}
.accessibility-text-size-field select{min-height:44px;font-weight:500}
.accessibility-preference-fieldset{min-width:0}
.accessibility-preference-fieldset legend{padding:0 7px;color:#294b55;font-size:15px;font-weight:700}
.accessibility-preference-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.accessibility-preference{min-height:88px;margin:0;padding:13px;background:#fbfdfd;color:#365761}
.accessibility-preference:last-child{min-height:88px}
.accessibility-preference input{width:17px;height:17px;flex:none;margin-top:3px}
.accessibility-preference>span{display:grid;gap:3px}
.accessibility-preference strong{color:#294b55;font-size:13px;line-height:1.35}
.accessibility-preference small{margin:0;color:#647d84;font-size:11px;line-height:1.5}
.accessibility-settings-note{margin:0;padding:11px 13px;border-radius:8px;background:#eaf5f3;color:#3f6868;font-size:11px;line-height:1.5}
.accessibility-settings-modal .modal-footer [data-action="reset-accessibility-settings"]{order:-1;margin-right:auto}

/* Text-size choices scale controls with their labels so touch targets and
   surrounding layout grow together. CSS zoom participates in layout and
   therefore preserves reflow more reliably than a visual transform. */
html[data-text-size="large"] body{zoom:1.1}
html[data-text-size="extra-large"] body{zoom:1.2}

/* High contrast uses a known navigation palette and stronger boundaries while
   keeping the established green, orange, and red learning-status meanings. */
html[data-high-contrast="true"]{
  --canvas:#fff;
  --line:#6f878e;
  --muted:#304d55;
  --teal:#005f5b!important;
  --teal-deep:#003f3d!important;
  --mint:#dff1ee!important;
  --sky:#cfe8e5!important;
  --lime:#dff1ee!important;
  --theme-canvas:#fff!important;
  --theme-glow:transparent!important;
  --theme-primary:#005f5b!important;
  --theme-primary-deep:#003f3d!important;
  --theme-soft:#dff1ee!important;
  --theme-pale:#cfe8e5!important;
  --theme-sidebar:#061f2a!important;
  --theme-sidebar-active:#294d58!important;
  --theme-sidebar-muted:#d1e1e4!important;
  --theme-sidebar-light:#fff!important;
  --theme-sidebar-light-soft:#e5efef!important;
  --theme-sidebar-light-border:#6f878e!important;
  --theme-sidebar-light-text:#102f38!important;
  --theme-sidebar-light-muted:#304d55!important;
  --theme-sidebar-light-tree:#79979e!important;
  --theme-focus:#f0b600!important;
  --organization-theme-border:#6f878e;
  --organization-theme-muted:#304d55;
  --organization-theme-ink:#102f38;
}
html[data-high-contrast="true"] body{background:#fff;color:#102f38}
html[data-high-contrast="true"] :is(button,a,input,select,textarea):focus-visible{outline-width:4px;outline-color:#f0b600;outline-offset:3px}
html[data-high-contrast="true"] :is(.panel,.stat,.course-card,.toolbar,dialog,.field input,.field select,.field textarea,.check-item){border-color:#6f878e}
html[data-high-contrast="true"] :is(.page-heading p,.panel-head p,.course-card p,.course-meta,.person small,.table-footer,.field small,.invite-note,.summary-side,.learner-summary p,.lesson-top,.lesson-sources,.breadcrumb,.user-info span,.catalog-count){color:#304d55}
html[data-high-contrast="true"] .btn:not(.secondary):not(.ghost):not(.danger){background:#005f5b;color:#fff}
html[data-high-contrast="true"] .btn:not(.secondary):not(.ghost):not(.danger):hover{background:#003f3d}
html[data-high-contrast="true"] .main-wrap a:not(.btn){color:#005b70}
html[data-high-contrast="true"] .sidebar{background:#061f2a!important;border-right:2px solid #54727b;box-shadow:none}
html[data-high-contrast="true"] .sidebar-bottom{background:#061f2a!important}
html[data-high-contrast="true"] .sidebar .brand,html[data-high-contrast="true"] .sidebar .organization-name{color:#fff}
html[data-high-contrast="true"] .sidebar .brand small{color:#d1e1e4}
html[data-high-contrast="true"] .sidebar .brand-mark{background:#fff;color:#063f45}

/* Use the public three-leaf mark throughout the learning product. */
.brand .brand-mark,
.auth-site-header .brand-mark,
.auth-page>.auth-story .brand-mark,
.auth-page-streamlined .auth-site-header .brand-mark,
html[data-organization-theme="custom"] .sidebar .brand-mark,
html[data-organization-navigation="light"] .sidebar .brand-mark,
html[data-high-contrast="true"] .sidebar .brand-mark{border-radius:0;background:transparent;box-shadow:none;padding:0}
.brand .brand-mark{color:#17342f}
.sidebar .brand-mark,
html[data-organization-theme="custom"] .sidebar .brand-mark,
html[data-high-contrast="true"] .sidebar .brand-mark{color:#f2f8f4}
html[data-organization-navigation="light"] .sidebar .brand-mark{color:var(--theme-primary-deep)}
.auth-site-header .brand-mark,
.auth-page>.auth-story .brand-mark,
.auth-page-streamlined .auth-site-header .brand-mark{color:#17342f}
.arbomente-mark{display:block;width:100%;height:100%;overflow:visible}
.arbomente-leaf{fill:#78bd82}
.arbomente-leaf-b{fill:#dff2a6}
.arbomente-leaf-c{fill:#ed9858}
.arbomente-branches{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
html[data-high-contrast="true"] .sidebar :is(.workspace-organization-identity,.workspace-switch select,.interface-language-selector select){border-color:#91aab0;background:#102f3a;color:#fff}
html[data-high-contrast="true"] .sidebar :is(.workspace-switch .eyebrow,.nav-label,.sidebar-footer,.sidebar-account-name span,.interface-language-selector label){color:#d1e1e4}
html[data-high-contrast="true"] .sidebar .nav a{color:#eef7f8}
html[data-high-contrast="true"] .sidebar .nav a:hover{background:#294d58;color:#fff}
html[data-high-contrast="true"] .sidebar .nav a.active{background:#fff;color:#082d37}
html[data-high-contrast="true"] .sidebar-mode-switch{border-color:#91aab0;background:#102f3a}
html[data-high-contrast="true"] .sidebar-mode-switch a{color:#e2eff1}
html[data-high-contrast="true"] .sidebar-mode-switch a:hover{background:#294d58;color:#fff}
html[data-high-contrast="true"] .sidebar-mode-switch a.active{background:#fff;color:#082d37}
html[data-high-contrast="true"] .sidebar-account{border-top-color:#91aab0}
html[data-high-contrast="true"] .sidebar-account-name strong{color:#fff}
html[data-high-contrast="true"] .sidebar-account .btn-icon{color:#e2eff1}
html[data-high-contrast="true"] .sidebar-account .btn-icon:hover{background:#fff;color:#082d37}
html[data-high-contrast="true"] .accessibility-settings-note{border:1px solid #6f878e;background:#fff;color:#183e48}

html[data-underline-links="true"] :is(.main-wrap,.course-overlay,dialog) a:not(.btn):not([role="button"]){text-decoration:underline!important;text-decoration-thickness:.11em;text-underline-offset:.18em}

html[data-reduce-motion="true"] *,html[data-reduce-motion="true"] *::before,html[data-reduce-motion="true"] *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}
html[data-reduce-motion="true"]::view-transition-old(lms-workspace),html[data-reduce-motion="true"]::view-transition-new(lms-workspace),html[data-reduce-motion="true"]::view-transition-old(lms-navigation),html[data-reduce-motion="true"]::view-transition-new(lms-navigation){animation:none!important}

@media(max-width:700px){
  .accessibility-preference-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .accessibility-preference:last-child{grid-column:1/-1}
}

@media(max-width:520px){
  dialog.accessibility-settings-modal{width:calc(100% - 18px);max-height:94dvh}
  .accessibility-settings-modal .modal-body{padding:18px}
  .accessibility-settings-section{padding:15px}
  .accessibility-settings-primary{grid-template-columns:1fr}
  .accessibility-preference-list{grid-template-columns:1fr}
  .accessibility-preference:last-child{grid-column:auto;min-height:88px}
  .accessibility-settings-modal .modal-footer{align-items:stretch;flex-direction:column}
  .accessibility-settings-modal .modal-footer .btn{width:100%}
  .accessibility-settings-modal .modal-footer button[type="submit"]{order:1}
  .accessibility-settings-modal .modal-footer [data-action="close-modal"]{order:2}
  .accessibility-settings-modal .modal-footer [data-action="reset-accessibility-settings"]{order:3;margin-right:0}
}

@media(forced-colors:active){
  .sidebar-account-actions .btn-icon,.accessibility-settings-section,.accessibility-preference,.accessibility-settings-note{forced-color-adjust:auto}
}

@media(max-width:680px){
  .auth-site-actions{gap:9px}.auth-site-actions .interface-language-selector{width:128px}.auth-site-actions .interface-language-selector label{display:none}.auth-site-actions .interface-language-selector select{width:100%}
  .auth-site-actions .interface-language-selector select{min-height:32px;font-size:10px}.auth-site-return{font-size:11px}
  .organization-language-options>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  html[dir="rtl"] .app-shell{grid-template-columns:1fr}
  html[dir="rtl"] .sidebar{left:auto;right:0}
}

/* The compact workspace uses an off-canvas rail. In RTL, hide it beyond the
   right edge so it returns from the side where the rail is actually placed. */
@media(max-width:680px),(max-width:1000px) and (max-height:520px){
  html[dir="rtl"] .sidebar{transform:translateX(100%)}
  html[dir="rtl"] .sidebar.open{transform:translateX(0)}
}

.course-overlay-mark .arbomente-mark{width:27px;height:27px}

/* Keep the assessment outcome badge centered in the course-detail wheel. */
.course-detail-progress-wheel>.course-detail-progress-wheel-result{top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;margin:0!important;transform:translate(-50%,-50%)!important}

/* Workspace navigation can be persistently minimized on larger screens. The
   compact top bar reveals it again without reducing the main work surface. */
.app-shell .sidebar{transition:transform .18s ease,visibility 0s linear 0s}
.app-shell.navigation-open{grid-template-columns:408px minmax(0,1fr)}
html[dir="rtl"] .app-shell.navigation-open{grid-template-columns:minmax(0,1fr) 408px}
.app-shell.navigation-collapsed{grid-template-columns:minmax(0,1fr)}
.app-shell.navigation-collapsed .main-wrap{grid-column:1/-1;width:100%;min-width:0}
.app-shell.navigation-collapsed .content,.content:has(.learning-history-page){width:100%;max-width:none}
.app-shell.navigation-collapsed .sidebar{
  width:min(92vw,408px);
  visibility:hidden;
  transform:translateX(-100%);
  pointer-events:none;
  transition:transform .18s ease,visibility 0s linear .18s;
}
.app-shell.navigation-collapsed .sidebar.open{
  visibility:visible;
  transform:translateX(0);
  pointer-events:auto;
  transition-delay:0s;
}
html[dir="rtl"] .app-shell.navigation-collapsed .sidebar{transform:translateX(100%)}
html[dir="rtl"] .app-shell.navigation-collapsed .sidebar.open{transform:translateX(0)}

.app-shell .sidebar-close{
  width:44px;
  height:44px;
  border:1px solid var(--sidebar-control-border);
  background:var(--sidebar-control-background);
  color:var(--sidebar-control-color);
}
.app-shell .sidebar-close:hover{border-color:var(--sidebar-control-hover-border);background:var(--sidebar-control-hover-background);color:var(--sidebar-control-hover-color)}
.app-shell .sidebar-close:focus-visible{outline-color:var(--sidebar-focus-color)}
.mobile-topbar .mobile-menu{width:44px;height:44px;flex:none}

.learning-navigation-scrim{
  position:fixed;
  inset:0;
  z-index:19;
  visibility:hidden;
  margin:0;
  padding:0;
  border:0;
  background:#071b2b99;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease,visibility 0s linear .18s;
}
.app-shell.navigation-collapsed:has(.sidebar.open) .learning-navigation-scrim{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transition-delay:0s;
}
.learning-navigation-scrim:focus-visible{outline:3px solid var(--theme-focus);outline-offset:-6px}

@media(min-width:1001px),(min-width:681px) and (min-height:521px){
  .app-shell .sidebar-close{display:inline-flex;position:absolute;top:8px;right:8px;left:auto;z-index:1}
  html[dir="rtl"] .app-shell .sidebar-close{right:auto;left:8px}
  .app-shell.navigation-collapsed .mobile-topbar{
    position:sticky;
    top:0;
    z-index:18;
    display:flex;
    align-items:center;
    gap:11px;
    height:56px;
    padding:0 24px;
    border-bottom:1px solid var(--line);
    background:#fff;
    color:#284450;
    font-size:14px;
    font-weight:700;
    letter-spacing:-.25px;
  }
  .app-shell.navigation-collapsed .mobile-topbar .mobile-menu{display:inline-flex}
}

/* On compact screens navigation is always a temporary overlay, independent of
   the saved desktop preference. */
@media(max-width:680px),(max-width:1000px) and (max-height:520px){
  body:has(.app-shell.navigation-overlay-open){overflow:hidden}
  .app-shell.navigation-open,.app-shell.navigation-collapsed{display:block}
  .app-shell.navigation-open .main-wrap,.app-shell.navigation-collapsed .main-wrap{width:100%}
  .app-shell.navigation-open .sidebar,.app-shell.navigation-collapsed .sidebar{
    width:min(92vw,408px);
    visibility:hidden;
    transform:translateX(-100%);
    pointer-events:none;
    transition:transform .18s ease,visibility 0s linear .18s;
  }
  .app-shell.navigation-open .sidebar.open,.app-shell.navigation-collapsed .sidebar.open{
    visibility:visible;
    transform:translateX(0);
    pointer-events:auto;
    transition-delay:0s;
  }
  html[dir="rtl"] .app-shell.navigation-open .sidebar,html[dir="rtl"] .app-shell.navigation-collapsed .sidebar{transform:translateX(100%)}
  html[dir="rtl"] .app-shell.navigation-open .sidebar.open,html[dir="rtl"] .app-shell.navigation-collapsed .sidebar.open{transform:translateX(0)}
  .app-shell:has(.sidebar.open) .learning-navigation-scrim{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}
}

@media(any-pointer:coarse){
  .learning-tree-sort-button{width:44px;height:44px}
  .learning-tree-quick-launch,.learning-tree-quick-launch-placeholder{width:44px;height:44px}
  .learning-tree-course>.learning-tree-row,.learning-tree-part>.learning-tree-row{grid-template-columns:var(--tree-control-column) minmax(0,1fr) 44px}
  .learning-tree,.learning-tree .learning-tree-children{--tree-control-column:44px;--tree-child-offset:44px;--tree-control-offset:-18px;--tree-control-to-status:20px}
  .learning-tree-toggle,.learning-tree-toggle-placeholder{width:44px;height:44px}
  .learning-tree-message.error button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
}

@media(prefers-reduced-motion:reduce){
  .app-shell .sidebar,.learning-navigation-scrim{transition:none}
}

@media(forced-colors:active){
  .learning-navigation-scrim{forced-color-adjust:auto;background:CanvasText}
  .app-shell .sidebar-close,.mobile-topbar .mobile-menu{forced-color-adjust:auto;border:1px solid ButtonText;background:ButtonFace;color:ButtonText}
}
