:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17283a;background:#f3f4f3;font-synthesis:none;--navy:#091c2d;--gold:#a78851;--line:#dce2e5;--muted:#647380}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:#315c78}button,.button{border:1px solid var(--line);border-radius:7px;background:#fff;padding:10px 15px;color:#20354a;text-decoration:none;font-size:14px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px}button:hover,.button:hover{background:#f0f4f6}button.primary,.button.primary{background:var(--navy);color:white;border-color:var(--navy)}button.danger{color:#9a352d}.skip{position:fixed;top:-100px}.skip:focus{top:8px;left:8px;z-index:100;background:#fff;padding:12px}.shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:#e1e7ed;padding:32px 20px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 36px}.brand img{width:64px;height:40px;object-fit:contain}.brand span{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:#b4c2d0;line-height:1.6;border-left:1px solid #344253;padding-left:12px}nav{display:grid;gap:5px}nav a{padding:12px 14px;border-radius:6px;text-decoration:none;color:#aebdcc;font-size:14px}nav a:hover,nav a.active{color:white;background:#213347}nav a.active{box-shadow:inset 3px 0 var(--gold)}.side-bottom{margin-top:auto;padding:22px 10px 0;font-size:12px;line-height:1.6;color:#9aabbc}.main{padding:28px 42px 70px;max-width:1600px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:23px;margin-bottom:32px}.topbar small{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.topbar strong{font-size:14px}.topbar button{background:transparent}.demo-banner{background:#f5eedf;color:#705729;border:1px solid #e3d4b4;padding:11px 16px;font-size:12px;line-height:1.5;border-radius:6px;margin-bottom:24px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:11px;font-weight:700;color:#867047;margin:0 0 10px}h1{font-size:32px;font-weight:550;letter-spacing:-1px;margin:0 0 10px}h2{font-size:20px;font-weight:600;letter-spacing:-.3px;margin:0 0 12px}h3{font-size:16px;font-weight:600}.sub{color:var(--muted);font-size:14px;line-height:1.65;margin:0;max-width:780px}.pagehead{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}.actions{display:flex;flex-wrap:wrap;gap:8px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.metric{padding:23px;background:white;border:1px solid var(--line);border-radius:10px}.metric p{margin:0;color:var(--muted);font-size:12px}.metric strong{display:block;font-size:34px;font-weight:500;margin:14px 0 8px;letter-spacing:-1px}.metric small{font-size:11px;color:var(--muted)}.panel{border:1px solid var(--line);border-radius:10px;background:#fff;padding:25px;margin:20px 0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:22px 0 18px}.toolbar input{max-width:400px;flex:1}.tabs{display:flex;gap:7px;flex-wrap:wrap}.tabs button{padding:8px 14px}.tabs button.selected{background:#20364b;color:#fff;border-color:#20364b}.table-wrap{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:9px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;background:#f8fafb;font-size:11px;text-transform:uppercase;letter-spacing:.6px;font-weight:600;color:#73808c;padding:15px 16px}td{border-top:1px solid #e8edef;padding:15px 16px;vertical-align:middle}td.title{min-width:230px;max-width:520px}td small{display:block;color:var(--muted);margin-top:5px;line-height:1.4}td .actions{flex-wrap:nowrap}td button{font-size:12px;padding:6px 10px;min-height:32px}.badge{display:inline-block;font-size:11px;padding:5px 8px;border-radius:4px;background:#eef2f5;color:#5c6c7b;white-space:nowrap}.badge.ok{background:#e9f3ed;color:#386149}.badge.amber{background:#f6efdf;color:#88682c}.badge.red{background:#f8eae8;color:#9c4438}.thumb{width:54px;height:65px;object-fit:cover;border-radius:4px;display:block}.empty{padding:50px 22px;text-align:center;color:var(--muted);font-size:14px}.empty strong{display:block;color:#21384d;margin-bottom:10px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.muted{color:var(--muted)}.feature-row{display:flex;gap:16px;padding:17px 0;border-bottom:1px solid #e8edef;align-items:flex-start}.feature-row:last-child{border:0}.feature-row span{font-size:12px;color:var(--gold);padding-top:3px}.feature-row h3{margin:0 0 6px}.feature-row p{font-size:13px;line-height:1.6;margin:0;color:var(--muted)}#notice{position:fixed;bottom:24px;right:24px;max-width:480px;background:#142d42;color:#fff;padding:15px 22px;border-radius:8px;box-shadow:0 10px 35px #0002;display:none;z-index:99;font-size:14px}#notice.show{display:block}#notice.error{background:#8c352e}dialog{width:min(940px,calc(100% - 28px));max-height:90vh;border:1px solid var(--line);border-radius:14px;padding:0;color:#17283a;box-shadow:0 24px 100px #0004}dialog::backdrop{background:#0613229c;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;padding:25px 28px 20px;border-bottom:1px solid var(--line);gap:20px}.dialog-body{padding:24px 28px}.dialog-foot{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:16px 28px;display:flex;justify-content:flex-end;gap:10px;align-items:center}.dialog-foot .muted{margin-right:auto;font-size:12px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fields .full{grid-column:1/-1}label{display:block;font-size:12px;font-weight:600;line-height:1.5;margin-bottom:7px}input,textarea,select{display:block;width:100%;padding:11px 12px;border:1px solid #cfd8df;border-radius:6px;background:#fff;color:#193047;min-width:0;font-size:14px}textarea{min-height:110px;resize:vertical;line-height:1.6}select[multiple]{min-height:160px}input[type=checkbox],input[type=radio]{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:#18384e}input[type=color]{padding:4px;height:43px}input[type=range]{padding:0}.check{display:flex;align-items:center;gap:10px;font-weight:400;font-size:14px}.hint{font-size:12px;font-weight:400;color:#697d8b;line-height:1.6;margin:7px 0 0}.form-error{background:#faeae8;color:#97392e;font-size:13px;padding:12px 16px;border-radius:6px;margin-bottom:18px}.cover-preview{height:180px;max-width:220px;width:100%;object-fit:cover;border-radius:8px;background:#edf1f4;margin-top:14px}.option-edit{display:flex;gap:12px;align-items:center;margin-bottom:10px}.option-edit input[type=text]{flex:1}.login-layout{min-height:100vh;display:grid;place-items:center;background:radial-gradient(at 10% 10%,#173d5b,transparent 50%),#061525;padding:28px}.login-box{width:min(460px,100%);background:#fff;border-radius:14px;padding:40px}.login-box img{width:100px;filter:drop-shadow(0 1px #aaa);margin-bottom:28px}.login-box h1{font-size:26px}.login-box form{display:grid;gap:18px;margin-top:28px}.login-box .demo-banner{margin:20px 0 0}.loading{padding:80px;text-align:center}.lesson-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:25px}.lesson-nav{display:grid;align-content:start;gap:8px}.lesson-nav button{text-align:left;justify-content:flex-start}.lesson-body{white-space:pre-wrap;font-size:16px;line-height:1.85}.player{width:100%;aspect-ratio:16/9;border:0;background:#061525;border-radius:10px}.quiz-head{display:flex;justify-content:space-between;align-items:center}.timer{font-variant-numeric:tabular-nums;border:1px solid var(--line);padding:10px 17px;border-radius:7px;font-size:17px}.question-context{white-space:pre-wrap;background:#f4f6f7;border-left:3px solid var(--gold);padding:18px;line-height:1.75;font-size:14px}.question-stem{font-size:18px;line-height:1.8;white-space:pre-wrap;margin:25px 0}.answer-option{display:flex;align-items:flex-start;gap:13px;border:1px solid var(--line);border-radius:7px;padding:16px;font-weight:400;font-size:15px;line-height:1.65;margin-bottom:12px;cursor:pointer}.answer-option input{margin-top:3px}.answer-option:has(:checked){background:#eff5f8;border-color:#315c78}.question-map{display:flex;gap:7px;flex-wrap:wrap;margin:25px 0}.question-map button{width:36px;min-height:36px;padding:5px}.question-map .filled{background:#e3eeea}.question-map .current{box-shadow:inset 0 0 0 2px #284b65}.course-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px}.course-tile{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.course-tile img{width:100%;height:200px;object-fit:cover}.course-tile>div{padding:22px}.course-tile h2{font-size:18px}.progress-track{height:5px;background:#e4e9ed;border-radius:6px;overflow:hidden;margin:12px 0}.progress-track span{display:block;height:100%;background:var(--gold)}.review{padding:18px 0;border-top:1px solid var(--line)}.review summary{font-size:14px;line-height:1.7;cursor:pointer}.review p{line-height:1.7;font-size:14px;white-space:pre-wrap}.splitline{display:flex;justify-content:space-between;gap:20px;align-items:center}.nowrap{white-space:nowrap}code{font-size:12px;overflow-wrap:anywhere}.token-link{word-break:break-all}.compact{font-size:12px}.checklist{display:grid;gap:14px}.checklist label{font-weight:400}.error-page{padding:30px;background:white;border-radius:10px}
@media(max-width:1000px){.main{padding:24px}.shell{grid-template-columns:200px minmax(0,1fr)}.sidebar{padding:28px 12px}.metrics{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}}
@media(max-width:700px){.shell{display:block}.sidebar{height:auto;position:static;padding:18px}.brand{margin:0 0 16px}.brand img{width:48px;height:30px}nav{display:flex;overflow:auto;gap:6px}nav a{white-space:nowrap;padding:10px;font-size:12px}.side-bottom{display:none}.main{padding:20px 16px 60px}.topbar{margin-bottom:22px;padding-bottom:16px}.pagehead{flex-direction:column;gap:16px}h1{font-size:27px}.metrics{gap:10px}.metric{padding:18px}.metric strong{font-size:28px}.fields{grid-template-columns:1fr}.fields .full{grid-column:auto}.dialog-head,.dialog-body,.dialog-foot{padding:20px}.dialog-foot{flex-wrap:wrap}.dialog-foot .muted{width:100%;margin-bottom:5px}.panel{padding:18px}.lesson-layout{grid-template-columns:1fr}.lesson-nav{max-height:230px;overflow:auto}.login-box{padding:28px}.quiz-head{gap:12px}.question-stem{font-size:16px}#notice{left:16px;right:16px;bottom:16px}.toolbar input{min-width:180px}.grid{gap:0}}
@media(prefers-reduced-motion:no-preference){button,a{transition:background .15s ease}}
.certificate-sheet{background-color:#faf8f1;background-size:cover;background-position:center;border:1px solid #b19866;padding:60px;text-align:center;margin:28px auto;max-width:1000px;min-height:650px;font-family:Georgia,serif}.certificate-sheet>img{width:105px;margin-bottom:20px}.certificate-sheet h1{font-family:Georgia,serif;font-size:38px;font-weight:400;letter-spacing:0;margin:28px 0}.certificate-sheet h2{font-size:31px;margin:22px 0}.certificate-sheet h3{font-family:inherit;font-size:24px;font-weight:400}.certificate-sheet p{line-height:1.7}.certificate-sheet footer{margin-top:50px;padding-top:20px;border-top:1px solid #c6b58a;font:11px/1.6 sans-serif}.certificate-sheet footer a{word-break:break-all}
@media print{body *{visibility:hidden}.certificate-sheet,.certificate-sheet *{visibility:visible}.certificate-sheet{position:absolute;left:0;top:0;width:100%;max-width:none;min-height:170mm;margin:0;padding:30mm 15mm;print-color-adjust:exact;-webkit-print-color-adjust:exact}.certificate-sheet footer{font-size:9px}@page{size:A4 landscape;margin:12mm}}
@media(max-width:700px){.certificate-sheet{padding:30px 20px;min-height:auto}.certificate-sheet h1{font-size:27px}.certificate-sheet h2{font-size:24px}.certificate-sheet h3{font-size:20px}}
.lesson-cover{width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:8px}#lesson-media{position:relative;margin:18px 0}#play-lesson{position:absolute;bottom:22px;left:50%;transform:translateX(-50%)}
.lesson-body{white-space:normal}.lesson-body p{margin:18px 0}.lesson-body li{padding:5px 0}.course-area .lesson-nav button{border-left:3px solid var(--course-color)}.course-area button.primary{background:var(--course-color);color:var(--course-contrast);border-color:var(--course-color)}
.certificate-qr{display:block;width:132px;height:132px;margin:0 auto 18px;background:#fff}
.locked-lesson{border:1px solid var(--line,#d8dce2);border-radius:8px;padding:12px;margin:7px 0;font-size:13px;line-height:1.5}
.locked-lesson summary{cursor:pointer;font-weight:600}
.locked-lesson p{margin:8px 0}
.locked-lesson ul{padding-left:18px}
.lesson-nav button small{display:block;font-size:11px;opacity:.8;margin-top:4px}

/* The title opens the same editor as the explicit action, including keyboard access. */
td.title .document-title{display:block;width:100%;min-height:0;padding:2px 0;border:0;border-radius:2px;background:transparent;color:inherit;font:inherit;font-weight:600;line-height:1.5;text-align:left;white-space:normal;overflow-wrap:anywhere;cursor:pointer}
td.title .document-title:hover{text-decoration:underline;text-underline-offset:3px;color:#745a2e}
td.title .document-title:focus-visible{outline:2px solid #896f40;outline-offset:4px}

.permission-list{border:1px solid var(--line,#d6dfe8);border-radius:10px;margin:20px 0;padding:16px}.permission-list legend{font-weight:600;padding:0 8px}.permission-option{display:flex;align-items:flex-start;gap:12px;padding:13px 5px;cursor:pointer}.permission-option input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin-top:2px;accent-color:#947b50}.permission-option span{display:block}.permission-option strong{display:block;font-size:14px}.permission-option small{display:block;font-size:12px;line-height:1.6;color:var(--muted,#5b6b7d);margin-top:4px}
[hidden]{display:none!important}.permission-toolbar{position:sticky;top:0;z-index:2;background:#fff;padding:12px 0;border-bottom:1px solid var(--line)}.permission-toolbar .actions{margin-top:10px}.permission-list summary{cursor:pointer;font-size:15px;font-weight:600;display:flex;justify-content:space-between;gap:12px;padding:6px 0 13px}.permission-list>.check{font-size:12px;font-weight:400;margin:6px 0 10px}.permission-option:has(input:disabled){opacity:.55}.permission-option input:disabled{cursor:not-allowed}.permission-option[hidden]{display:none}

/* Appearance editor: preserve the approved portal while making its configuration editable. */
.appearance-bar{position:sticky;top:0;z-index:4;background:#101e30;border:1px solid #35404d;border-radius:12px;padding:16px;display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between;margin-bottom:24px}.appearance-bar small{display:block;margin-top:6px;color:#b8c2ce}.appearance-bar [aria-disabled=true]{opacity:.45;cursor:not-allowed}.appearance-editor{display:grid;gap:24px}.appearance-field{display:flex;flex-direction:column;gap:8px;min-width:0}.appearance-field small,.appearance-image small{color:#a6b4c5;font-size:12px;font-weight:400}.appearance-field input[type=color]{height:46px;min-width:80px}.appearance-image{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:24px;align-items:center;margin:20px 0}.appearance-image img{width:180px;height:130px;object-fit:contain;background:#091323;border:1px solid #35404d;border-radius:8px}.appearance-image input[type=file]{margin:12px 0}.appearance-toggle{display:flex;gap:10px;align-items:center;margin:16px 0;font-weight:400}.appearance-toggle input{width:18px;height:18px;flex-shrink:0}.appearance-item{border:1px solid #35404d;border-radius:8px;margin:14px 0}.appearance-item summary{padding:16px;cursor:pointer;font-weight:600}.appearance-item-body{padding:0 16px 16px}.appearance-order{display:flex;gap:8px;justify-content:flex-end;margin:0 0 16px}.appearance-courses{list-style:none;padding:0}.appearance-courses li{display:flex;gap:14px;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #35404d}.appearance-courses small{display:block;color:#a6b4c5}.appearance-add-course{display:flex;gap:12px}.appearance-add-course select{min-width:0;flex:1}.appearance-editor .section-heading{display:flex;justify-content:space-between;gap:20px;align-items:start}.appearance-editor .section-heading button{flex-shrink:0}@media(max-width:760px){.appearance-bar{position:static}.appearance-image{grid-template-columns:1fr}.appearance-courses li{align-items:start;flex-direction:column}.appearance-editor .section-heading{flex-direction:column}.appearance-add-course{flex-direction:column}.appearance-bar .actions{flex-wrap:wrap}}

.appearance-bar{color:#f5f7fa}.appearance-editor .appearance-field small,.appearance-editor .appearance-image small,.appearance-courses small{color:#5c6977}.appearance-item,.appearance-courses li{border-color:#dce1e6}.appearance-editor .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.appearance-editor .form-grid>.appearance-field:first-child{grid-column:1/-1}@media(max-width:760px){.appearance-editor .form-grid{grid-template-columns:1fr}}

.moderation-toggle{display:flex;align-items:center;gap:8px;white-space:nowrap}.moderation-toggle input,.moderation-check{width:18px;height:18px}.moderation-body{white-space:pre-wrap;overflow-wrap:anywhere;max-width:600px}.moderation-hidden{opacity:.7;border-left:3px solid #7e8790;padding-left:14px}.student-reply{margin:18px 0 0 20px;padding:12px 18px;border-left:2px solid #947b50;background:rgba(148,123,80,.08)}.student-reply p{white-space:pre-wrap}.full.panel>label{display:flex;gap:10px;align-items:center;margin:14px 0}.full.panel>label>input[type=checkbox]{width:18px;height:18px}

.event-description{white-space:pre-wrap;overflow-wrap:anywhere}.student-event .actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.portal-view .student-event strong{color:#eef2f7}

/* Keep the expanded administration menu inside its own desktop viewport. */
@media(min-width:701px){.sidebar{overflow:hidden}.sidebar>.brand,.sidebar>.side-bottom{flex-shrink:0}.sidebar>nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#7b715e transparent}}
.report-bars{display:grid;gap:14px}.report-bar{display:grid;grid-template-columns:minmax(90px,140px) 1fr minmax(100px,140px);gap:12px;align-items:center;font-size:13px}.report-bar-track{height:8px;border-radius:4px;background:#edeae3;overflow:hidden}.report-bar-track>span{display:block;height:100%;background:var(--gold);border-radius:4px}.report-bar>strong{text-align:right;font-variant-numeric:tabular-nums}@media(max-width:700px){.report-bar{grid-template-columns:88px 1fr 98px;gap:8px;font-size:11px}.report-filters{display:grid;grid-template-columns:1fr}.report-filters label{min-width:0}}

.recognition-card{display:flex;gap:22px;align-items:center;margin-top:24px}.recognition-symbol{color:var(--recognition-color);border:1px solid var(--recognition-color);border-radius:50%;width:76px;height:76px;flex:0 0 76px;display:grid;place-items:center;font-size:38px}.recognition-card h3{margin:8px 0}.recognition-card p{overflow-wrap:anywhere}@media(max-width:700px){.recognition-card{gap:14px}.recognition-symbol{width:50px;height:50px;flex-basis:50px;font-size:26px}}

/* Private conversations preserve readable text without changing course cards. */
.private-message-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.private-history{max-width:900px}.private-message.from-team{border-left:3px solid #a88a51}.message-search{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:24px 0}.message-search input:not([type=checkbox]){flex:1;min-width:180px}.message-search label{display:flex;align-items:center;gap:8px}.message-search input[type=checkbox]{width:auto}.private-thread h2,.private-message-body{overflow-wrap:anywhere}#private-compose,#private-reply,#private-status{display:grid;gap:16px;max-width:900px}#private-compose label,#private-reply label,#private-status label{display:grid;gap:8px}.private-history+.actions{flex-wrap:wrap}.portal-view .private-message-body{color:#e0e8f2}.portal-view #student-page:has(.private-history) .actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.portal-view .message-search label{color:#c4cfdd}@media(max-width:600px){.message-search{align-items:stretch;flex-direction:column}.message-search input:not([type=checkbox]){width:100%;min-width:0}.private-thread,.private-message{min-width:0}}

/* Private conversation files remain readable on narrow screens. */
.conversation-files,.attachment-picker ul{list-style:none;padding:0;display:grid;gap:12px}.conversation-files li,.attachment-picker li{min-width:0;overflow-wrap:anywhere}.attachment-picker li{display:flex;gap:12px;align-items:center;justify-content:space-between}.attachment-picker li span{min-width:0}.attachment-picker input[type=file]{max-width:100%;box-sizing:border-box}.conversation-file-preview{display:block;max-width:100%;max-height:260px;object-fit:contain;border-radius:8px;margin-bottom:8px}.conversation-files a{color:inherit;text-decoration:underline}.attachment-picker{margin:18px 0}.attachment-picker [role=status]{overflow-wrap:anywhere}
.proposal-terms{white-space:pre-wrap;overflow-wrap:anywhere;max-height:45vh;overflow:auto;padding:1rem;border:1px solid #c4b58c;border-radius:.6rem;background:#fff;color:#172337;line-height:1.6}
.integration-payload{white-space:pre-wrap;overflow-wrap:anywhere;max-height:35vh;overflow:auto;background:#f0f3f7;color:#182738;padding:1rem;border-radius:.6rem;font-size:.85rem}

.assessment-figure{margin:20px 0}.assessment-figure img{max-width:100%;max-height:min(45vh,420px);object-fit:contain;display:block;border-radius:8px}.assessment-figure figcaption{font-size:.9rem;margin-top:8px}.assessment-option-image{display:block;max-width:100%;max-height:240px;object-fit:contain;margin-top:12px}.answer-option>span{min-width:0}

/* The course workspace keeps titles and actions usable without horizontal clipping. */
.curriculum-summary{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin:18px 0}.curriculum-tree{display:grid;gap:20px}.curriculum-module{border:1px solid #d9d4c9;border-radius:12px;background:#fff;overflow:hidden}.curriculum-module>header{display:flex;align-items:center;gap:12px;padding:18px;background:#f1eee7}.curriculum-title{min-width:0;flex:1}.curriculum-title h2{font-size:19px;margin:0}.curriculum-title button{text-align:left;font:inherit;font-weight:600;border:0;padding:0;background:transparent;color:inherit;white-space:normal;overflow-wrap:anywhere}.curriculum-title small{display:block;color:#596270;margin-top:6px}.curriculum-title button:hover{text-decoration:underline}.curriculum-module ol{list-style:none;margin:0;padding:0}.curriculum-module ol[hidden]{display:none}.curriculum-lesson{display:flex;align-items:center;gap:14px;padding:16px 22px;border-top:1px solid #e9e5dc}.curriculum-empty{padding:20px;color:#596270}.curriculum-move{display:flex;gap:4px;flex-shrink:0}.curriculum-move button{padding:7px 11px;min-height:36px}.curriculum-toggle{padding:7px 10px}.curriculum-lesson .badge,.curriculum-module header .badge{white-space:normal;text-align:center;max-width:130px}@media(max-width:700px){.curriculum-module>header,.curriculum-lesson{flex-wrap:wrap;padding:15px;gap:10px}.curriculum-title{flex-basis:calc(100% - 110px)}.curriculum-module>header .curriculum-title{flex-basis:calc(100% - 150px)}.curriculum-summary{gap:10px}.curriculum-tree .badge{max-width:none}.curriculum-module>header .curriculum-title h2{font-size:17px}}

.curriculum-select {width:18px!important;height:18px;flex:0 0 18px;accent-color:#a68a53;cursor:pointer;}

.cover-preview-pair{display:flex;flex-wrap:wrap;gap:24px;margin:20px 0}.cover-preview-pair figure{margin:0;max-width:100%}.cover-preview-pair figcaption{font-size:12px;color:#536375;margin:0 0 10px}.cover-crop-preview{position:relative;overflow:hidden;border-radius:12px;background:#081423;width:270px;max-width:100%;aspect-ratio:339.13/436.76}.cover-crop-preview.mobile{width:220px;aspect-ratio:267.05/372.87}.cover-crop-preview>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cover-preview-title{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#06111bf5 32%);color:#f6eedf;padding:30px 16px 14px;line-height:1.4}.cover-preview-title strong{display:block;font-size:18px}.cover-preview-title span{display:block;font-size:12px;margin-top:12px}.cover-preview-title[hidden]{display:none}
