.dx-admin{--dx-primary-dark: #004080;--dx-primary: #0066cc;--dx-primary-light: #3399ff;--dx-teal-dark: #006666;--dx-teal: #009999;--dx-teal-light: #33cccc;--dx-soft-teal: #A7DEE3;--dx-text: #666666;--dx-dark: #111111;--dx-font-display: "Montserrat", "Open Sans", sans-serif;--dx-font-body: "Open Sans", system-ui, sans-serif;--dx-success: #1e8449;--dx-warn: #c79a23;--dx-danger: #c0392b}.hidden{display:none!important}.adm-mb-20{margin-bottom:20px}.adm-mt-8{margin-top:8px}.adm-mt-10{margin-top:10px}.adm-m-0{margin:0}.adm-p-20{padding:20px}.adm-hint{font-size:12px;color:#aaa;font-weight:500}.adm-text-sm{font-size:11px}.adm-optional-label{font-weight:400;text-transform:none;color:#9aa6b0}.adm-flex-between{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.adm-flex-10{display:flex;align-items:center;gap:10px}.adm-flex-8{display:flex;gap:8px}.adm-flex-fill{flex:1;min-width:0}.adm-w-full{width:100%}.adm-search-max{max-width:220px}.adm-mt-6{margin-top:6px}.adm-mt-16{margin-top:16px}.adm-mt-20{margin-top:20px}.adm-mb-0{margin-bottom:0}#groups-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:20px}.group-card{border-radius:14px;border:1px solid #e4e1dd;overflow:hidden;box-shadow:0 1px 4px #0000000d;display:flex;flex-direction:column;transition:box-shadow .18s,transform .18s}.group-card:hover{box-shadow:0 8px 22px #0000001a;transform:translateY(-3px)}.group-card-header{padding:20px 20px 18px;display:flex;align-items:center;gap:13px}.group-card-icon{font-size:25px;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#ffffff38;box-shadow:inset 0 0 0 1px #ffffff2e;flex-shrink:0}.group-card-title{font-family:var(--dx-font-display);font-weight:800;font-size:15.5px;color:#fff;line-height:1.2}.group-card-count{display:inline-block;font-size:11px;color:#fff;margin-top:5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#fff3;padding:2px 9px;border-radius:999px}.group-card-body{padding:16px 20px;background:#fff;flex:1}.group-card-courses{font-size:12.5px;color:#7a7570;line-height:1.65}.group-card-footer{padding:13px 20px;background:#fafaf9;border-top:1px solid #f0ede9}.group-card{position:relative;transition:box-shadow .15s,transform .15s,outline .15s}.group-card.accepting-drops{outline:2px dashed rgba(0,102,204,.35);cursor:copy}.group-card.drop-target{outline:2px solid var(--dx-primary, #0066cc);transform:translateY(-3px);box-shadow:0 6px 20px #06c3}.group-card-drop-hint{display:none;position:absolute;inset:0;z-index:2;align-items:center;justify-content:center;background:#004080e0;border-radius:14px;font-size:14px;font-weight:700;color:#fff;pointer-events:none;letter-spacing:.04em;text-shadow:0 1px 4px rgba(0,0,0,.3)}.group-card.drop-target .group-card-drop-hint{display:flex}.group-edit-btn{width:100%;padding:9px;border-radius:8px;border:1px solid #e4e1dd;font-size:11px;font-weight:700;color:#555;background:#fff;cursor:pointer;font-family:inherit;transition:all .12s;text-transform:uppercase;letter-spacing:.06em}.group-edit-btn:hover{background:#0f3460;color:#fff;border-color:#0f3460}.group-edit-panel{border:1px solid #e0ddd9;border-radius:14px;background:#fff;margin-bottom:20px;box-shadow:0 4px 20px #00000014;overflow:hidden}.group-edit-panel.hidden{display:none}.ge-header{display:flex;align-items:center;justify-content:space-between;padding:24px 36px;border-bottom:2px solid #f0ede9;background:#fafaf8}.ge-header-title{font-family:var(--dx-font-display, "Montserrat", sans-serif);font-size:18px;font-weight:700;color:#111}.ge-close-btn{background:none;border:none;cursor:pointer;color:#aaa;font-size:18px;padding:8px 12px;border-radius:8px;line-height:1;transition:background .12s,color .12s}.ge-close-btn:hover{background:#eeebe7;color:#333}.ge-body{padding:36px 40px;display:flex;flex-direction:column;gap:32px}.ge-field{display:flex;flex-direction:column;gap:10px}.ge-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#aaa}.ge-input{width:100%;padding:14px 18px;border:1.5px solid #e4e1dd;border-radius:10px;font-size:15px;font-family:inherit;color:#111;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}.ge-input:focus{border-color:var(--dx-primary, #0066cc);box-shadow:0 0 0 3px #0066cc1a}.ge-input::placeholder{color:#c8c3bc}.ge-row-2col{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:start}.ge-icon-btn{display:flex;align-items:center;gap:14px;padding:14px 20px;border:1.5px solid #e4e1dd;border-radius:10px;background:#fff;cursor:pointer;font-family:inherit;transition:border-color .15s,box-shadow .15s;white-space:nowrap}.ge-icon-btn:hover{border-color:var(--dx-primary, #0066cc)}.ge-icon-btn[aria-expanded=true]{border-color:var(--dx-primary, #0066cc);box-shadow:0 0 0 3px #0066cc1a}.ge-icon-preview-emoji{font-size:30px;line-height:1}.ge-icon-btn-label{font-size:13px;color:#777;font-weight:500}.ge-icon-btn-caret{font-size:12px;color:#bbb}.ge-color-row{display:flex;align-items:center;gap:14px;padding-top:4px}.ge-color-presets{display:flex;gap:10px;flex-wrap:wrap}.ge-color-swatch{width:36px;height:36px;border-radius:50%;cursor:pointer;border:3px solid transparent;transition:transform .12s,box-shadow .12s;box-shadow:0 2px 4px #0000002e}.ge-color-swatch:hover{transform:scale(1.18)}.ge-color-swatch.active{border-color:#fff;box-shadow:0 0 0 3px #333,0 2px 6px #0003;transform:scale(1.12)}.ge-custom-color{-webkit-appearance:none;appearance:none;width:36px;height:36px;border:1.5px solid #ddd;border-radius:50%;cursor:pointer;padding:0;background:none;flex-shrink:0}.ge-custom-color::-webkit-color-swatch-wrapper{padding:0}.ge-custom-color::-webkit-color-swatch{border:none;border-radius:50%}.ge-assign-panel{display:grid;grid-template-columns:1fr auto 1fr;border:1.5px solid #e4e1dd;border-radius:12px;overflow:hidden;background:#fff}.ge-assign-col{display:flex;flex-direction:column}.ge-assign-col-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:#f8f7f5;border-bottom:1px solid #edeae6;font-size:11px;font-weight:700;color:#999;text-transform:uppercase;letter-spacing:.08em}.ge-assign-search{flex:1;border:none;background:transparent;font-size:13px;font-family:inherit;outline:none;color:#333;min-width:0;font-weight:400}.ge-assign-search::placeholder{color:#c8c3bc}.ge-count-badge{background:var(--dx-primary, #0066cc);color:#fff;font-size:10px;font-weight:800;padding:2px 8px;border-radius:999px;letter-spacing:0;text-transform:none}.ge-assign-list{flex:1;min-height:220px;max-height:280px;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:4px}.ge-assign-divider{display:flex;align-items:center;justify-content:center;width:32px;background:#f8f7f5;border-left:1px solid #edeae6;border-right:1px solid #edeae6;color:#ccc;font-size:16px}.assign-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;font-size:13px;transition:background .1s}.assign-item:hover{background:#f4f2ef}.assign-item-icon{font-size:16px;flex-shrink:0}.assign-item-title{flex:1;font-weight:500;color:#222;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assign-btn{font-size:12px;font-weight:700;padding:5px 12px;border-radius:6px;border:none;cursor:pointer;flex-shrink:0;transition:opacity .1s}.assign-btn.add{background:#0066cc1a;color:var(--dx-primary, #0066cc)}.assign-btn.add:hover{background:#0066cc2e}.assign-btn.remove{background:#f5f5f5;color:#888}.assign-btn.remove:hover{background:#fee2e2;color:#c0392b}.assign-list-empty{padding:32px 16px;text-align:center;color:#ccc;font-size:13px}.ge-footer{display:flex;align-items:center;justify-content:space-between;padding:20px 40px;border-top:2px solid #f0ede9;background:#fafaf8}.ge-footer-right{display:flex;align-items:center;gap:12px}.ge-btn-primary{padding:11px 24px;background:var(--dx-primary, #0066cc);color:#fff;border:none;border-radius:9px;font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;transition:opacity .15s}.ge-btn-primary:hover{opacity:.88}.ge-btn-secondary{padding:11px 20px;background:#fff;color:#555;border:1.5px solid #e0ddd9;border-radius:9px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .12s}.ge-btn-secondary:hover{background:#f4f2ef}.ge-btn-danger{padding:11px 20px;background:#fff;color:#c0392b;border:1.5px solid #f5bdb9;border-radius:9px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .12s}.ge-drop-zone{min-height:90px;border:2px dashed #dedad5;border-radius:12px;padding:16px 20px;background:#fafaf8;transition:border-color .15s,background .15s}.ge-drop-zone.drag-over{border-color:var(--dx-primary, #0066cc);background:#0066cc0a}.ge-drop-hint{display:flex;align-items:center;justify-content:center;gap:10px;color:#bbb;font-size:13px;padding:12px 0;pointer-events:none}.ge-drop-hint-icon{font-size:18px}.ge-chips{display:flex;flex-wrap:wrap;gap:8px}.ge-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 10px 7px 14px;background:#eef2fb;border:1px solid #c8d6f0;border-radius:999px;font-size:13px;font-weight:600;color:#1a3a6e}.ge-chip-icon{font-size:15px}.ge-chip-remove{background:none;border:none;cursor:pointer;color:#7a96c8;font-size:16px;line-height:1;padding:0 2px;border-radius:50%;transition:color .1s,background .1s}.ge-chip-remove:hover{color:#c0392b;background:#c0392b1a}.curriculum-layout{display:flex;gap:20px;align-items:flex-start}.curriculum-sidebar{width:260px;flex-shrink:0;position:sticky;top:80px}.curriculum-main{flex:1;min-width:0}.cl-library-section{margin-top:0}.cl-library-hint{font-size:12px;color:#aaa;font-style:italic}.cl-grid{display:flex;flex-direction:column;gap:6px;padding:10px 14px 14px}.cl-card{display:flex;align-items:center;gap:10px;padding:9px 14px;background:#fff;border:1.5px solid #e4e1dd;border-radius:10px;cursor:grab;user-select:none;width:100%;transition:border-color .15s,box-shadow .15s,opacity .2s}.cl-card:hover{border-color:var(--dx-primary, #0066cc);box-shadow:0 3px 10px #0066cc26}.cl-card:active{cursor:grabbing}.cl-card.is-dragging{opacity:.35;box-shadow:none}.cl-card.already-added{opacity:.35;cursor:default;pointer-events:none}.cl-card-icon{font-size:20px;line-height:1}.cl-card-title{font-size:13px;font-weight:600;color:#222;flex:1;min-width:0;line-height:1.3}.cl-drag-handle{font-size:14px;color:#ccc;flex-shrink:0;letter-spacing:-1px;align-self:flex-start;padding-top:1px}.ge-btn-danger:hover{background:#fef2f2}.group-edit-inner{padding:24px 26px}.group-edit-row{display:flex;gap:20px;align-items:flex-start;margin-bottom:0;flex-wrap:wrap}.group-course-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:9px;margin-top:8px}.group-course-check-item{display:flex;align-items:center;gap:11px;padding:10px 13px;border:1.5px solid #e4e1dd;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .12s,background .12s,box-shadow .12s;font-size:13px;font-weight:600;color:#44403b;user-select:none}.group-course-check-item:hover{border-color:#cdd9ea;box-shadow:0 2px 8px #0000000d}.group-course-check-item.checked{border-color:#0f3460;background:#eef2fb;color:#0f3460}.group-course-check-item input{display:none}.group-check-icon{font-size:15px;flex-shrink:0;width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#f0ede8;transition:background .12s,color .12s}.group-course-check-item.checked .group-check-icon{background:#0f3460;color:#fff}.course-table th{text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#a7a29c;padding:13px 24px;border-bottom:1px solid #efece8;background:#fcfbfa}.course-table td{padding:14px 24px;border-bottom:1px solid #f4f1ed;font-size:13px;vertical-align:middle;color:#444}.course-table tr:last-child td{border-bottom:none}.course-table tbody tr{transition:background .12s}.course-table tbody tr:hover td{background:#fafaf9}.course-table tr.hidden-row td{opacity:.5}.course-icon-cell{width:64px;text-align:center}.course-ico-chip{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:11px;font-size:19px;background:color-mix(in srgb,var(--c, #0f3460) 14%,#fff);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c, #0f3460) 20%,#fff)}.course-title-cell{font-weight:700;color:#1a1a2e}.course-title-cell small{display:block;font-size:11px;color:#aaa;font-weight:500;margin-top:1px}.course-name{font-weight:700;color:#1a1a2e;font-size:13.5px}.course-sub{font-size:11px;color:#aaa;font-weight:500;margin-top:2px}.type-badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:4px 10px;border-radius:999px}.type-static{background:#eef2ff;color:#3a55d9}.type-manager{background:#fff3e0;color:#d9690e}.type-dynamic{background:#e8f5e9;color:#2e7d32}.status-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:4px 11px;border-radius:999px}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-active{background:#e8f5e9;color:#2e7d32}.status-hidden{background:#fce4ec;color:#c62828}.status-draft{background:#fdf3e3;color:#b9791b}.action-cell{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.action-btn{font-size:11px;font-weight:700;padding:6px 14px;border-radius:7px;border:1px solid;cursor:pointer;font-family:inherit;transition:all .12s}.btn-hide{border-color:#f0c8c4;color:#c0392b;background:#fff6f5}.btn-hide:hover{background:#c0392b;color:#fff;border-color:#c0392b}.btn-restore{border-color:#b0e4c4;color:#1e8449;background:#f1fbf5}.btn-restore:hover{background:#1e8449;color:#fff;border-color:#1e8449}.btn-delete{border-color:#f0c8c4;color:#c0392b;background:#fff6f5}.btn-delete:hover{background:#c0392b;color:#fff;border-color:#c0392b}.dash-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:8px}.dash-clickable{cursor:pointer;position:relative}.dash-clickable:hover{box-shadow:0 8px 24px #0000001a!important;transform:translateY(-2px)}.dash-clickable.active{box-shadow:0 0 0 2px var(--accent, #0f3460)!important}.dash-card-cta{display:block;font-size:10.5px;font-weight:700;color:var(--accent, #0f3460);margin-top:10px;opacity:0;transition:opacity .15s;text-transform:uppercase;letter-spacing:.04em}.dash-clickable:hover .dash-card-cta{opacity:1}.dash-drilldown{background:#fff;border:1.5px solid #cdd9ea;border-radius:14px;margin-bottom:20px;overflow:hidden;box-shadow:0 4px 16px #0f346014;animation:tabFade .2s ease}.dash-drilldown-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#eef2fb;border-bottom:1px solid #cdd9ea}.dash-drilldown-title{font-family:Roboto Slab,serif;font-weight:800;font-size:14px;color:#0f3460}.dash-drilldown-close{background:none;border:none;cursor:pointer;font-size:13px;font-weight:700;color:#888;font-family:inherit;padding:4px 8px;border-radius:6px;transition:background .12s}.dash-drilldown-close:hover{background:#e4e1dd;color:#1a1a2e}.dash-drilldown-body{padding:20px}.dash-filter-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;border-radius:999px;background:#eef2fb;color:#0f3460;border:1px solid #cdd9ea}@media (max-width: 860px){.dash-card-grid{grid-template-columns:repeat(2,1fr)}}#emp-table th,#emp-table td{vertical-align:middle}#emp-table th{text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#a7a29c;padding:13px 16px;border-bottom:1px solid #efece8;background:#fcfbfa}#emp-table th:first-child{width:64px}#emp-table td{padding:14px 16px;border-bottom:1px solid #f4f1ed;font-size:13px}#emp-table tr:last-child td{border-bottom:none}#emp-table .emp-row:hover td{background:#fafaf9}#emp-table .emp-row.active td{background:#eef2fb}.emp-search-hidden{display:none!important}.emp-avatar{width:36px;height:36px;border-radius:50%;background:#eef2fb;color:#0f3460;border:1.5px solid #cdd9ea;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}.emp-row{cursor:pointer}.lrn-assign-section{margin-bottom:22px}.lrn-assign-hd{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding-bottom:8px;border-bottom:1.5px solid #f0ede9}.lrn-assign-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#1a1a2e;flex-shrink:0}.lrn-assign-hint{flex:1;font-size:11px;color:#bbb}.lrn-add-btn{appearance:none;cursor:pointer;font-family:inherit;font-size:12px;font-weight:700;padding:5px 14px;border-radius:20px;background:#f0f4ff;border:1.5px solid #c5d3f0;color:#2044a3;transition:all .12s;white-space:nowrap;flex-shrink:0}.lrn-add-btn:hover{background:#2044a3;color:#fff;border-color:#2044a3}.lrn-chips{display:flex;flex-wrap:wrap;gap:8px;min-height:34px;padding:2px 0 6px;align-items:center}.lrn-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 8px 5px 11px;background:#f0faf0;border:1.5px solid #b8ddb8;border-radius:20px;font-size:13px;font-weight:600;color:#1a4d1a;white-space:nowrap}.lrn-chip-icon{font-size:15px;line-height:1}.lrn-chip-name{max-width:220px;overflow:hidden;text-overflow:ellipsis}.lrn-chip-x{appearance:none;background:none;border:none;cursor:pointer;padding:0 2px;color:#5a8a5a;font-size:18px;line-height:1;margin-left:2px;border-radius:50%;transition:background .1s,color .1s;display:inline-flex;align-items:center}.lrn-chip-x:hover{background:#b8ddb8;color:#1a4d1a}.lrn-empty{font-size:13px;color:#bbb;font-style:italic}.lrn-picker{margin-top:8px;border:1.5px solid #e4e1dd;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 2px 10px #00000012}.lrn-picker-search{width:100%;padding:10px 14px;border:none;border-bottom:1px solid #ede9e4;font-family:inherit;font-size:13px;outline:none;background:#fafbfc;box-sizing:border-box}.lrn-picker-search:focus{background:#fff}.lrn-picker-list{max-height:200px;overflow-y:auto}.lrn-picker-item{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;font-size:13px;font-weight:500;color:#1a1a2e;transition:background .1s;border-bottom:1px solid #f6f4f2}.lrn-picker-item:last-child{border-bottom:none}.lrn-picker-item:hover{background:#f0f4ff;color:#2044a3}.lrn-picker-empty{padding:12px 14px;font-size:13px;color:#bbb;font-style:italic}.lrn-advanced{margin-top:24px;border:1px solid #ede9e4;border-radius:10px;overflow:hidden}.lrn-advanced>summary{padding:10px 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#bbb;cursor:pointer;list-style:none;display:flex;align-items:center;gap:7px;user-select:none}.lrn-advanced>summary::-webkit-details-marker{display:none}.lrn-advanced>summary:before{content:"▶";font-size:9px;transition:transform .15s;color:#ccc}.lrn-advanced[open]>summary:before{transform:rotate(90deg)}.lrn-advanced-body{padding:14px 16px 16px;background:#fafaf8;border-top:1px solid #ede9e4}.roster-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 700px){.roster-cols{grid-template-columns:1fr}}.roster-col-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding-bottom:10px;border-bottom:1.5px solid #f0ede9}.roster-col-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:#1a1a2e;flex:1;display:flex;align-items:center;gap:7px}.roster-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 5px;border-radius:10px;background:#eef2fb;color:#0f3460;font-size:11px;font-weight:800}.roster-list{display:flex;flex-direction:column;gap:1px;max-height:400px;overflow-y:auto}.roster-row{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:8px;transition:background .1s}.roster-row:hover{background:#f9f8f6}.roster-row-info{flex:1;min-width:0}.roster-row-name{font-size:13px;font-weight:700;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-row-email{font-size:11.5px;color:#aaa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.lrn-bulk-bar{display:grid;grid-template-rows:0fr;opacity:0;pointer-events:none;margin-top:0;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),opacity .2s ease,margin-top .26s ease}.lrn-bulk-bar.is-visible{grid-template-rows:1fr;opacity:1;pointer-events:auto;margin-top:8px}.lrn-bulk-inner{overflow:hidden;display:flex;align-items:center;gap:12px;padding:12px 20px;background:#fff;border:1.5px solid #cdd9ea;border-radius:12px}.lrn-bulk-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--dx-primary, #0066cc);color:#fff;font-size:10px;font-weight:800;flex-shrink:0}.lrn-bulk-count{font-size:13px;font-weight:600;color:#6b7a85;flex:1}.lrn-bulk-sep{width:1px;height:18px;background:#cdd9ea;flex-shrink:0}.lrn-bulk-btn{appearance:none;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:700;padding:8px 18px;border-radius:8px;background:var(--dx-primary, #0066cc);border:none;color:#fff;transition:filter .14s;white-space:nowrap;line-height:1}.lrn-bulk-btn:hover{filter:brightness(1.1)}.lrn-bulk-x{appearance:none;cursor:pointer;background:none;border:1.5px solid #ddd;color:#999;font-size:12px;font-weight:600;padding:7px 12px;border-radius:8px;font-family:inherit;transition:border-color .12s,color .12s}.lrn-bulk-x:hover{border-color:#bbb;color:#555}.lrn-bulk-menu{position:fixed;z-index:9999;background:#fff;border:1.5px solid #e4e1dd;border-radius:12px;box-shadow:0 8px 32px #00000021;min-width:220px;overflow:hidden}.lrn-bulk-item{display:flex;align-items:center;gap:10px;padding:11px 14px;cursor:pointer;font-size:13px;font-weight:500;color:#1a1a2e;transition:background .1s;border-bottom:1px solid #f4f1ed}.lrn-bulk-item:last-child{border-bottom:none}.lrn-bulk-item:hover{background:#eef2fb;color:var(--dx-primary, #0066cc)}.lrn-cb-cell{width:36px;text-align:center}.lrn-cb{cursor:pointer;accent-color:#0f3460;width:15px;height:15px}.lrn-enr-badge{display:inline-block;font-size:11.5px;font-weight:600;color:#2e7d32;background:#f0faf0;border:1px solid #b8ddb8;border-radius:20px;padding:2px 9px;white-space:nowrap}.lrn-enr-none{font-size:12px;color:#ccc}.emp-status-chip{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;border-radius:999px;white-space:nowrap}.emp-status-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.emp-chip-good{background:#e8f5e9;color:#2e7d32}.emp-chip-warn{background:#fdf3e3;color:#b9791b}.emp-chip-risk{background:#fce4ec;color:#c62828}.emp-chip-new{background:#f0ede8;color:#7a7570}.emp-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.emp-detail-card{border:1px solid #e4e1dd;border-radius:12px;padding:16px 18px;background:#fff;box-shadow:0 1px 4px #0000000a}.emp-detail-card-title{font-family:var(--dx-font-display);font-weight:800;font-size:13px;color:#1a1a2e}.emp-quiz-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f5f3f0}.emp-quiz-row:last-child{border-bottom:none}.emp-quiz-name{flex:1;font-size:12.5px;color:#44403b;font-weight:500}.emp-quiz-name{flex:1;font-size:12.5px;color:#44403b}.emp-quiz-score{font-size:13px;font-weight:800;min-width:38px;text-align:right}.emp-quiz-score.high{color:#2e7d32}.emp-quiz-score.mid{color:#e65100}.emp-quiz-score.low{color:#e53935}.emp-search-hidden,.course-table tr.search-hidden{display:none}.courses-no-results{text-align:center;padding:32px;color:#aaa;font-size:13px}.reorder-overlay{position:fixed;inset:0;z-index:200;background:#0f1c2c8c;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px}.reorder-overlay.hidden{display:none}.reorder-modal{background:#fff;border-radius:18px;width:100%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #00000040;overflow:hidden}.reorder-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 24px 16px;border-bottom:1px solid #f0ede9}.reorder-modal-eyebrow{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#c79a23;margin-bottom:4px}.reorder-modal-title{font-family:Roboto Slab,serif;font-weight:800;font-size:18px;color:#1a1a2e}.reorder-modal-close{background:none;border:none;font-size:18px;color:#888;cursor:pointer;padding:4px 8px;border-radius:6px;line-height:1}.reorder-modal-close:hover{background:#f0ede9;color:#1a1a2e}.reorder-modal-hint{padding:10px 24px;font-size:12.5px;color:#999;background:#faf9f7;border-bottom:1px solid #f0ede9}.reorder-modal-list{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:8px}.reorder-item{display:flex;align-items:center;gap:12px;padding:13px 16px;background:#fff;border:1.5px solid #e4e1dd;border-radius:12px;cursor:grab;user-select:none;transition:box-shadow .12s,border-color .12s,background .12s}.reorder-item:hover{box-shadow:0 3px 12px #00000014;border-color:#cdd9ea}.reorder-item.is-dragging{opacity:.3}.reorder-item.drag-target{border-color:#0f3460;background:#eef2fb;box-shadow:0 0 0 3px #0f34601f}.reorder-item-handle{font-size:18px;color:#c2bcb4;cursor:grab;flex-shrink:0;line-height:1}.reorder-item-num{width:28px;height:28px;border-radius:8px;background:#f0ede9;color:#7a7570;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.reorder-item.drag-target .reorder-item-num{background:#0f3460;color:#fff}.reorder-item-name{flex:1;font-size:14px;font-weight:600;color:#1a1a2e}.reorder-item-meta{font-size:12px;color:#aaa;white-space:nowrap}.reorder-modal-footer{padding:16px 24px;border-top:1px solid #f0ede9;display:flex;align-items:center;justify-content:space-between;background:#faf9f7}.reorder-modal-status{font-size:12.5px;color:#888}.method-choice{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.method-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 18px;background:#fff;border:2px solid #e4e1dd;border-radius:14px;cursor:pointer;font-family:inherit;text-align:center;transition:all .15s}.method-card:hover{border-color:#b50f17;background:#fff8f8;transform:translateY(-2px);box-shadow:0 4px 14px #b50f171a}.method-card strong{font-size:14px;font-weight:800;color:#1a1a2e;display:block}.method-card span{font-size:12px;color:#888;line-height:1.4}.builder-section{margin-bottom:24px}.builder-section-head{font-size:13px;font-weight:800;color:#1a1a2e;margin-bottom:12px;padding-bottom:8px;border-bottom:1.5px solid #f0ede9;display:flex;align-items:center;justify-content:space-between}.builder-add-btn{font-size:12px;font-weight:700;padding:5px 12px;border:1.5px solid #0f3460;border-radius:6px;background:#eef2fb;color:#0f3460;cursor:pointer;font-family:inherit;transition:all .12s}.builder-add-btn:hover{background:#0f3460;color:#fff}.builder-lesson-card{border:1.5px solid #e4e1dd;border-radius:12px;margin-bottom:12px;background:#fff;overflow:hidden;box-shadow:0 1px 4px #0000000d}.builder-lesson-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#f5f3f0;border-bottom:1px solid #ece8e3;cursor:pointer}.builder-lesson-header:hover{background:#ede9e4}.builder-lesson-handle{font-size:16px;color:#ccc;cursor:grab;flex-shrink:0;line-height:1}.builder-lesson-badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:#b50f17;padding:2px 8px;border-radius:999px;flex-shrink:0}.builder-lesson-title-input{flex:1;padding:7px 10px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:13.5px;font-weight:600;font-family:inherit;color:#1a1a2e;background:#fff;outline:none;transition:border-color .12s}.builder-lesson-title-input:focus{border-color:#b50f17;background:#fff}.builder-lesson-toggle{font-size:12px;color:#aaa;flex-shrink:0;transition:transform .18s}.builder-lesson-card.collapsed .builder-lesson-toggle{transform:rotate(-90deg)}.builder-lesson-body{padding:14px 16px 0}.builder-lesson-card.collapsed .builder-lesson-body{display:none}.builder-lesson-summary{width:100%;padding:8px 10px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:13px;font-family:inherit;color:#1a1a2e;background:#fafaf9;outline:none;resize:none;line-height:1.5;margin-bottom:12px;transition:border-color .12s}.builder-lesson-summary:focus{border-color:#b50f17;background:#fff}.builder-remove-btn{background:none;border:none;cursor:pointer;font-size:15px;color:#ccc;padding:2px 6px;border-radius:4px;line-height:1;flex-shrink:0;transition:color .12s;margin-left:auto}.builder-remove-btn:hover{color:#c0392b}.builder-topics-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#aaa;margin-bottom:8px}.builder-topics{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}.builder-topic-card{border:1.5px solid #ece8e3;border-radius:9px;background:#fafaf9;overflow:hidden}.builder-topic-card-header{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid #f0ede9;background:#f8f7f5}.builder-topic-num{font-size:10px;font-weight:800;color:#aaa;flex-shrink:0;background:#ece8e3;padding:2px 7px;border-radius:4px}.builder-topic-body{padding:12px;display:flex;flex-direction:column;gap:8px}.builder-topic-row2{display:grid;grid-template-columns:1fr 140px;gap:8px}.builder-input{padding:8px 10px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:13px;font-family:inherit;color:#1a1a2e;background:#fff;outline:none;width:100%;transition:border-color .12s}.builder-input:focus{border-color:#b50f17}.builder-select{padding:8px 10px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:13px;font-family:inherit;color:#1a1a2e;background:#fff;outline:none;width:100%;cursor:pointer;transition:border-color .12s}.builder-select:focus{border-color:#b50f17}.builder-textarea{padding:9px 10px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:12.5px;font-family:ui-monospace,SF Mono,Consolas,monospace;color:#1a1a2e;background:#fff;outline:none;width:100%;min-height:120px;resize:vertical;line-height:1.6;transition:border-color .12s}.builder-textarea:focus{border-color:#b50f17}.builder-markdown-hint{font-size:10.5px;color:#bbb;margin-top:-4px}.builder-add-topic-btn{font-size:12px;font-weight:700;padding:7px 12px;margin:0 0 14px;border:1.5px dashed #ccc;border-radius:7px;background:transparent;color:#aaa;cursor:pointer;font-family:inherit;transition:all .12s;display:block;width:100%;text-align:center}.builder-add-topic-btn:hover{border-color:#0f3460;color:#0f3460;border-style:solid;background:#eef2fb}.builder-question-block{border:1.5px solid #e4e1dd;border-radius:12px;margin-bottom:12px;background:#fff;overflow:hidden;box-shadow:0 1px 4px #0000000a}.builder-question-header{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#f5f3f0;border-bottom:1px solid #ece8e3}.builder-question-badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:#0f3460;padding:2px 8px;border-radius:999px;flex-shrink:0}.builder-question-body{padding:14px;display:flex;flex-direction:column;gap:12px}.builder-options-list{display:flex;flex-direction:column;gap:8px}.builder-option-row{display:grid;grid-template-columns:22px 22px 1fr;align-items:center;gap:8px;padding:9px 12px;border:1.5px solid #e4e1dd;border-radius:8px;background:#fafaf9;transition:border-color .12s,background .12s}.builder-option-row:has(input[type=radio]:checked){border-color:#2e7d32;background:#e8f5e9}.builder-option-row input[type=radio]{width:16px;height:16px;accent-color:#2e7d32;cursor:pointer;flex-shrink:0}.builder-option-label{font-size:11.5px;font-weight:800;color:#aaa;flex-shrink:0;text-align:center}.builder-option-row:has(input[type=radio]:checked) .builder-option-label{color:#2e7d32}.builder-option-input{padding:6px 9px;border:1.5px solid #e4e1dd;border-radius:6px;font-size:13px;font-family:inherit;color:#1a1a2e;background:#fff;outline:none;width:100%;transition:border-color .12s}.builder-option-input:focus{border-color:#2e7d32}.builder-option-row:has(input[type=radio]:checked) .builder-option-input{border-color:#a5d6a7;background:#f1f8f1}.builder-correct-hint{font-size:11px;color:#aaa;font-style:italic}.builder-hint{font-size:11px;color:#aaa;margin-bottom:6px}.builder-field-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#999;margin-bottom:4px;display:block}.builder-passMark-row{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;background:#f8f7f5;border-radius:8px;border:1px solid #ece8e3}.builder-passMark-label{font-size:13px;font-weight:600;color:#444;flex:1}.builder-passMark-input{width:64px;padding:7px 10px;border:1.5px solid #e4e1dd;border-radius:6px;font-size:13px;font-family:inherit;color:#1a1a2e;text-align:center;outline:none;transition:border-color .12s}.builder-passMark-input:focus{border-color:#b50f17}.checklist-pane{display:none}.checklist-pane.active{display:block;animation:tabFade .22s ease}.cl-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.cl-field{display:flex;flex-direction:column;gap:5px}.cl-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#888}.cl-select{padding:9px 12px;border:1.5px solid #e4e1dd;border-radius:8px;font-size:13.5px;font-family:inherit;color:#1a1a2e;background:#fafaf9;outline:none;cursor:pointer;transition:border-color .15s}.cl-select:focus{border-color:#0f3460}.cl-textarea{padding:9px 12px;border:1.5px solid #e4e1dd;border-radius:8px;font-size:13px;font-family:inherit;color:#1a1a2e;background:#fafaf9;outline:none;resize:vertical;width:100%;transition:border-color .15s}.cl-textarea:focus{border-color:#0f3460}.cl-items-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px;border-bottom:1.5px solid #f0ede9;padding-bottom:10px}.cl-items-title{font-size:14px;font-weight:800;color:#1a1a2e}.cl-items-hint{font-size:11.5px;color:#aaa}.cl-item-row{display:grid;grid-template-columns:1fr auto auto auto 220px;align-items:center;gap:12px;padding:13px 16px;background:#fafaf9;border:1.5px solid #e8e3dd;border-radius:9px;margin-bottom:7px}.cl-item-text{font-size:13.5px;color:#1a1a2e;font-weight:500;line-height:1.4}.cl-radio-group{display:flex;gap:6px}.cl-radio-btn{font-size:12px;font-weight:700;padding:5px 13px;border-radius:6px;border:1.5px solid #e4e1dd;background:#fff;color:#999;cursor:pointer;font-family:inherit;transition:all .12s;white-space:nowrap}.cl-radio-btn.selected-pass{background:#e8f5e9;border-color:#2e7d32;color:#2e7d32}.cl-radio-btn.selected-fail{background:#fce4ec;border-color:#c62828;color:#c62828}.cl-radio-btn.selected-na{background:#f5f3f0;border-color:#aaa;color:#777}.cl-item-notes{padding:6px 10px;border:1.5px solid #e4e1dd;border-radius:6px;font-size:12px;font-family:inherit;color:#555;background:#fff;outline:none;width:100%}.cl-item-notes:focus{border-color:#0f3460}.cl-result-row{display:flex;align-items:center;gap:14px;margin-top:16px;padding:14px;background:#f8f7f5;border-radius:10px}.cl-result-label{font-size:13.5px;font-weight:700;color:#1a1a2e;flex:1}.cl-result-btn{font-size:13px;font-weight:800;padding:9px 24px;border-radius:8px;border:2px solid #e4e1dd;background:#fff;color:#999;cursor:pointer;font-family:inherit;transition:all .15s}.cl-result-btn:hover{border-color:#2e7d32;color:#2e7d32}.cl-result-btn.active{background:#2e7d32;border-color:#2e7d32;color:#fff}.cl-result-fail:hover{border-color:#c62828;color:#c62828}.cl-result-fail.active{background:#c62828;border-color:#c62828;color:#fff}.cl-submit-btn{padding:12px 28px;border:none;border-radius:9px;background:linear-gradient(135deg,#b50f17,#d9281f);color:#fff;font-size:14px;font-weight:800;font-family:Roboto Slab,serif;cursor:pointer;box-shadow:0 3px 10px #b50f174d;transition:opacity .12s}.cl-submit-btn:hover{opacity:.88}.cl-submit-btn:disabled{opacity:.5;cursor:not-allowed}.cl-history-row{padding:13px 20px;border-bottom:1px solid #f4f1ed;display:flex;align-items:center;gap:14px;cursor:pointer;transition:background .1s}.cl-history-row:hover{background:#faf9f7}.cl-history-row:last-child{border-bottom:none}.cl-history-expand{display:none;padding:12px 20px 16px;border-bottom:1px solid #f4f1ed;background:#fafaf9}.cl-history-expand.open{display:block}.cl-badge-pass{display:inline-block;background:#e8f5e9;color:#2e7d32;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 10px;border-radius:999px}.cl-badge-fail{display:inline-block;background:#fce4ec;color:#c62828;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 10px;border-radius:999px}.cl-badge-pending{display:inline-block;background:#f5f3f0;color:#888;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 10px;border-radius:999px}.cl-template-card{background:#fff;border:1.5px solid #e4e1dd;border-radius:12px;padding:18px 20px;box-shadow:0 1px 4px #0000000d}.cl-template-card-title{font-size:14px;font-weight:800;color:#1a1a2e;margin-bottom:4px}.cl-template-card-cat{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#aaa;margin-bottom:8px}.cl-template-card-desc{font-size:12.5px;color:#666;margin-bottom:12px;line-height:1.5}.cl-template-card-items{font-size:12px;color:#888;margin-bottom:14px}.clt-item-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid #f4f1ed}.clt-item-row:last-child{border-bottom:none}.clt-item-input{flex:1;padding:7px 10px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:13px;font-family:inherit;color:#1a1a2e;outline:none}.clt-item-input:focus{border-color:#0f3460}.clt-req-toggle{font-size:11px;font-weight:700;padding:4px 10px;border:1.5px solid #e4e1dd;border-radius:6px;background:#fff;color:#888;cursor:pointer;white-space:nowrap;transition:all .12s;font-family:inherit}.clt-req-toggle.required{background:#fff3e0;border-color:#e65100;color:#e65100}.cert-editor-wrap{display:grid;grid-template-columns:1fr 460px;gap:24px;align-items:start}.cert-editor-controls{display:flex;flex-direction:column;gap:14px}.cert-editor-preview-wrap{position:sticky;top:72px;background:#fff;border:1px solid #e4e1dd;border-radius:14px;overflow:hidden;box-shadow:0 2px 10px #00000014}.cert-editor-preview-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fafaf8;border-bottom:1px solid #f0ede9}.cert-editor-preview-header span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#888}.cert-preview-open-btn{font-size:12px;font-weight:700;padding:5px 12px;border-radius:6px;border:1.5px solid #cdd9ea;background:#eef2fb;color:#0f3460;cursor:pointer;font-family:inherit}.cert-preview-open-btn:hover{background:#0f3460;color:#fff;border-color:#0f3460}.cert-editor-preview-scale{padding:16px;background:#e8e4df;overflow:auto;max-height:68vh}#cert-live-preview{transform:scale(.44);transform-origin:top left;width:227%;pointer-events:none}.cert-section{background:#fff;border:1px solid #e4e1dd;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.cert-section-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#1a1a2e;width:100%;text-align:left;border-bottom:1px solid #f4f1ed;transition:background .12s}.cert-section-head:hover{background:#faf9f7}.cert-section-arrow{font-size:10px;color:#bbb;transition:transform .18s}.cert-section.collapsed .cert-section-arrow{transform:rotate(-90deg)}.cert-section-body{padding:16px}.cert-section.collapsed .cert-section-body{display:none}.cert-field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.cert-field:last-child{margin-bottom:0}.cert-field label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#888}.cert-input{width:100%;padding:8px 11px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:13.5px;font-family:inherit;color:#1a1a2e;background:#fafaf9;outline:none;transition:border-color .15s}.cert-input:focus{border-color:#0f3460;background:#fff}.cert-field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.cert-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f4f1ed}.cert-toggle-row:last-child{border-bottom:none;padding-bottom:0}.cert-toggle-label{font-size:13.5px;font-weight:600;color:#1a1a2e}.cert-toggle-hint{font-size:11px;color:#aaa;margin-top:1px}.cert-color-row{display:flex;align-items:center;gap:10px}.cert-color-input{-webkit-appearance:none;appearance:none;width:44px;height:38px;border:1.5px solid #e4e1dd;border-radius:8px;cursor:pointer;padding:2px;flex-shrink:0}.cert-color-input::-webkit-color-swatch-wrapper{padding:0}.cert-color-input::-webkit-color-swatch{border:none;border-radius:5px}@media (max-width:1100px){.cert-editor-wrap{grid-template-columns:1fr}.cert-editor-preview-wrap{position:static}}.btn-publish{border-color:#b0d4c0;color:#1e8449;background:#f1fbf5}.btn-publish:hover{background:#1e8449;color:#fff;border-color:#1e8449}.btn-unpublish{border-color:#e4d2a8;color:#9a7b1b;background:#fdf8ee}.btn-unpublish:hover{background:#c79a23;color:#fff;border-color:#c79a23}.course-row-clickable{cursor:pointer}.course-row-clickable td:first-child{border-left:3px solid transparent;transition:border-color .15s}.course-row-clickable:hover td{background:#f7f4f1!important}.course-row-clickable:hover td:first-child{border-left-color:#b50f17}.course-row-clickable.panel-open td{background:#fdf5f4!important}.course-row-clickable.panel-open td:first-child{border-left-color:#b50f17}.panel-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;background:#eef2fb;color:#0f3460;border-radius:999px;font-size:10px;font-weight:800;margin-left:6px}.course-panel-backdrop{position:fixed;inset:0;z-index:300;background:#0f1c2c59;backdrop-filter:blur(1px)}.course-panel-backdrop.hidden{display:none}.course-panel{position:fixed;top:0;right:0;bottom:0;z-index:301;width:min(580px,92vw);background:#f0ede9;display:flex;flex-direction:column;box-shadow:-6px 0 32px #00000029;transform:translate(100%);transition:transform .26s cubic-bezier(.32,0,.15,1)}.course-panel.hidden{display:none}.course-panel.open{transform:translate(0)}.course-panel-header{background:linear-gradient(135deg,#1a0a0c,#3d0a0e);border-bottom:3px solid #e8b738;padding:16px 22px 14px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.course-panel-eyebrow{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.18em;color:#e8b738;margin-bottom:3px}.course-panel-title{font-family:Roboto Slab,serif;font-weight:800;font-size:15px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.course-panel-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.course-panel-dirty{font-size:10px;font-weight:700;color:#e8b738;background:#e8b73826;padding:2px 7px;border-radius:4px}.course-panel-dirty.hidden{display:none}.course-panel-close{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);font-size:14px;color:#ffffffb3;cursor:pointer;padding:4px 8px;border-radius:6px;line-height:1;transition:all .12s}.course-panel-close:hover{background:#fff3;color:#fff}.course-panel-body{flex:1;overflow-y:auto;min-height:0;padding:16px;display:flex;flex-direction:column;gap:10px}.panel-section{background:#fff;border-radius:10px;border:1px solid #e8e3dd;box-shadow:0 1px 3px #0000000f;overflow:hidden}.panel-section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 20px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#555;text-align:left;transition:background .12s}.panel-section-toggle:hover{background:#faf9f7}.panel-section-arrow{font-size:10px;color:#ccc;transition:transform .18s;flex-shrink:0}.panel-section.collapsed .panel-section-arrow{transform:rotate(-90deg)}.panel-section-content{padding:16px 20px 20px;border-top:1px solid #f4f1ed}.panel-section.collapsed .panel-section-content{display:none}.panel-preview-chip{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#faf9f7;border:1px solid #ece8e3;border-radius:8px;margin:10px 0}.panel-preview-ico{font-size:24px;line-height:1}.panel-preview-name{font-size:13px;font-weight:700;color:#1a1a2e;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.panel-field{display:flex;flex-direction:column;gap:5px}.panel-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#aaa}.panel-input{padding:7px 10px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:13px;font-family:inherit;color:#1a1a2e;background:#fafaf9;outline:none;transition:border-color .15s,box-shadow .15s;width:100%}.panel-input:focus{border-color:#b50f17;box-shadow:0 0 0 3px #b50f1714;background:#fff}.panel-input:disabled{background:#f5f3f0;color:#ccc;cursor:not-allowed}.panel-field-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px;align-items:flex-start}.panel-icon-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1.5px solid #e4e1dd;border-radius:7px;background:#fafaf9;cursor:pointer;font-family:inherit;font-size:12px;color:#444;transition:border-color .12s,background .12s}.panel-icon-btn:hover{border-color:#b50f17;background:#fff5f5}.panel-icon-btn span:first-child{font-size:18px}.panel-icon-btn:disabled{opacity:.45;cursor:not-allowed}.panel-readonly-note{font-size:11px;color:#bbb;font-style:italic;padding:6px 10px;background:#faf9f7;border-radius:6px;border-left:3px solid #e4e1dd;margin-top:2px}.panel-readonly-note.hidden{display:none}.panel-drag-hint{font-size:12px;color:#666;margin:8px 0 12px;line-height:1.5}.panel-lesson-list{display:flex;flex-direction:column;gap:4px}.panel-lesson-item{border:1.5px solid #ece8e3;border-radius:8px;overflow:hidden;background:#fafaf9;transition:border-color .12s,background .12s}.panel-lesson-item:hover{border-color:#c8bfb8;background:#fff}.panel-lesson-item.is-dragging{opacity:.3}.panel-lesson-item.drag-target{border-color:#b50f17;background:#fff5f5;box-shadow:0 0 0 2px #b50f171a}.panel-lesson-row{display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:pointer;user-select:none}.panel-lesson-handle{cursor:grab}.panel-lesson-handle{font-size:14px;color:#ccc;flex-shrink:0;cursor:grab;line-height:1}.panel-lesson-num{width:22px;height:22px;border-radius:5px;background:#ece8e3;color:#9a9490;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.panel-lesson-item.drag-target .panel-lesson-num{background:#b50f17;color:#fff}.panel-lesson-name{flex:1;font-size:12.5px;font-weight:600;color:#1a1a2e;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-lesson-meta{font-size:10.5px;color:#bbb;white-space:nowrap;flex-shrink:0}.panel-lesson-expand{background:none;border:none;cursor:pointer;font-size:10px;color:#ccc;padding:3px 5px;border-radius:4px;transition:color .12s,transform .18s;flex-shrink:0;line-height:1}.panel-lesson-expand:hover{color:#b50f17}.panel-lesson-item.expanded .panel-lesson-expand{transform:rotate(90deg);color:#b50f17}.panel-lesson-topics{display:none;padding:0 10px 8px 48px;border-top:1px solid #f4f1ed;background:#fff}.panel-lesson-item.expanded .panel-lesson-topics{display:block}.panel-topic-row{display:flex;align-items:center;gap:7px;padding:4px 0;border-bottom:1px solid #f8f7f5;font-size:11.5px;color:#555}.panel-topic-id{font-size:10px;font-weight:700;color:#bbb;background:#f5f3f0;padding:1px 5px;border-radius:4px;white-space:nowrap}.panel-revert-btn{margin-top:10px;padding:6px 12px;width:100%;border:1.5px dashed #ddd;border-radius:7px;background:transparent;color:#bbb;font-size:11.5px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .12s;text-align:center}.panel-revert-btn:hover{border-color:#c79a23;color:#c79a23;border-style:solid;background:#fffbee}.panel-status-row{display:flex;align-items:center;justify-content:space-between;padding:0 0 12px;border-bottom:1px solid #f4f1ed;margin-bottom:12px}.panel-status-label{font-size:13px;font-weight:600;color:#333}.panel-toggle{display:flex;align-items:center;gap:8px;cursor:pointer}.panel-toggle input{display:none}.panel-toggle-track{width:40px;height:22px;border-radius:11px;background:#ddd;position:relative;transition:background .2s;flex-shrink:0}.panel-toggle input:checked+.panel-toggle-track{background:#2e7d32}.panel-toggle-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:transform .2s}.panel-toggle input:checked+.panel-toggle-track .panel-toggle-thumb{transform:translate(18px)}.panel-toggle-text{font-size:12.5px;font-weight:700;color:#555;min-width:58px}.panel-actions-row{display:flex;gap:8px}.panel-preview-btn{flex:1;padding:9px 12px;border:1.5px solid #cdd9ea;border-radius:8px;background:#eef2fb;color:#0f3460;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .12s;text-align:center}.panel-preview-btn:hover{background:#0f3460;color:#fff;border-color:#0f3460}.panel-delete-btn{padding:9px 12px;border:1.5px solid #f0c8c4;border-radius:8px;background:#fff6f5;color:#c0392b;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .12s}.panel-delete-btn:hover{background:#c0392b;color:#fff;border-color:#c0392b}.panel-delete-btn.hidden{display:none}.course-panel-footer{padding:14px 20px;border-top:2px solid #e4e1dd;background:#fff;flex-shrink:0;display:flex;align-items:center;gap:10px}.panel-discard-btn{padding:11px 20px;border:1.5px solid #e4e1dd;border-radius:8px;background:#fff;color:#888;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .12s;flex-shrink:0}.panel-discard-btn:hover{background:#f5f3f0;color:#444;border-color:#ccc}.panel-save-btn{flex:1;padding:12px 20px;border:none;border-radius:8px;background:linear-gradient(135deg,#b50f17,#d9281f);color:#fff;font-size:14px;font-weight:800;font-family:Roboto Slab,serif;cursor:pointer;transition:opacity .12s;box-shadow:0 3px 10px #b50f1759;letter-spacing:.01em}.panel-save-btn:hover{opacity:.88}.panel-save-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.editor-back-btn{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;padding:9px 18px;border-radius:8px;border:1.5px solid #0f3460;color:#0f3460;background:#eef2fb;cursor:pointer;font-family:inherit;transition:all .15s}.editor-back-btn:hover{background:#0f3460;color:#fff;border-color:#0f3460}.editor-back-btn-hero{display:inline-flex;align-items:center;gap:10px;font-family:var(--dx-font-display);font-size:15px;font-weight:800;padding:14px 28px;border-radius:12px;border:2px solid #0f3460;color:#0f3460;background:#eef2fb;cursor:pointer;transition:all .15s;box-shadow:0 2px 8px #0f34601f}.editor-back-btn-hero:hover{background:#0f3460;color:#fff;box-shadow:0 4px 16px #0f346040;transform:translateY(-1px)}.editor-course-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.editor-picker-row{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#fff;border:1px solid #e4e1dd;border-radius:12px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.editor-picker-row:hover{border-color:#cdd9ea;box-shadow:0 5px 16px #00000012;transform:translateY(-2px)}.editor-picker-ico{width:46px;height:46px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:21px;background:color-mix(in srgb,var(--c, #0f3460) 14%,#fff);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c, #0f3460) 20%,#fff)}.editor-picker-main{flex:1;min-width:0}.editor-picker-name{font-family:var(--dx-font-display);font-weight:800;font-size:14px;color:#1a1a2e;line-height:1.25}.editor-picker-sub{font-size:11.5px;color:#aaa;margin-top:3px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.editor-picker-arrow{font-size:18px;color:#cdc7c0;flex-shrink:0;transition:transform .15s,color .15s}.editor-picker-row:hover .editor-picker-arrow{color:#0f3460;transform:translate(3px)}.editor-preview-btn{font-family:Inter,system-ui,sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;color:#0f3460;background:#eef2fb;border:1px solid #cdd9ea;border-radius:7px;padding:5px 11px;flex-shrink:0;transition:all .12s;white-space:nowrap}.editor-preview-btn:hover{background:#0f3460;color:#fff;border-color:#0f3460}.editor-layout{display:grid;grid-template-columns:280px 1fr}.editor-layout:not(.hidden){min-height:580px}.editor-sidebar{overflow-y:auto;background:#faf9f7;border-right:1px solid #eee7e1;max-height:760px;min-height:0;padding:14px 12px}.editor-sidebar-header{padding:6px 10px 14px;margin-bottom:8px;border-bottom:1px solid #efece8}.editor-sidebar-course{font-family:var(--dx-font-display);font-weight:800;font-size:14px;color:#1a1a2e;line-height:1.3}.editor-sidebar-meta{font-size:11px;color:#aaa;margin-top:4px;font-weight:600}.editor-lesson{margin-bottom:2px}.editor-lesson-hdr{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:8px;cursor:pointer;user-select:none;transition:background .12s}.editor-lesson-hdr:hover{background:#f0ede8}.lesson-num{font-family:var(--dx-font-display);font-weight:800;font-size:10.5px;color:#0f3460;background:#eef2fb;width:22px;height:22px;border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.lesson-title{flex:1;font-size:12.5px;font-weight:700;color:#3a3631;line-height:1.3}.lesson-arrow{font-size:12px;color:#c2bcb4;transition:transform .2s;flex-shrink:0}.editor-lesson.open .lesson-arrow{transform:rotate(90deg)}.editor-topics-list{display:none;padding:2px 0 8px 14px}.editor-lesson.open .editor-topics-list{display:flex;flex-direction:column;gap:2px}.editor-topic-btn{display:flex;align-items:flex-start;gap:9px;padding:8px 11px;border-radius:7px;border-left:3px solid transparent;cursor:pointer;user-select:none;transition:background .12s,border-color .12s}.editor-topic-btn:hover{background:#f1efea}.editor-topic-btn.active{background:#eef2fb;border-left-color:#e8b738}.topic-id-tag{font-size:10px;font-weight:700;font-family:Courier New,monospace;color:#b3aca3;flex-shrink:0;padding-top:1px;min-width:30px}.editor-topic-btn.active .topic-id-tag{color:#0f3460}.topic-label{font-size:12.5px;color:#6b665f;line-height:1.4}.editor-topic-btn:hover .topic-label{color:#1a1a2e}.editor-topic-btn.active .topic-label{color:#0f3460;font-weight:600}.sidebar-quiz-item{display:flex;align-items:center;gap:9px;padding:9px 11px;margin-top:6px;cursor:pointer;user-select:none;border-left:3px solid transparent;border-radius:8px;background:#f0ede8;transition:background .12s,border-color .12s}.sidebar-quiz-item:hover{background:#e9e4dc}.sidebar-quiz-item.active{background:#fdf3df;border-left-color:#e8b738}.sidebar-quiz-icon{font-size:13px;flex-shrink:0}.sidebar-quiz-label{font-size:12.5px;font-weight:600;color:#6b665f}.sidebar-quiz-item.active .sidebar-quiz-label{color:#8a5e0a;font-weight:700}.order-bar{display:flex;align-items:center;gap:10px;padding:8px 4px 12px;margin-bottom:4px;border-bottom:1px solid #efece8}.order-hint{font-size:10.5px;color:#b3aca3;font-weight:600;flex:1;line-height:1.3}.order-save-btn{font-family:Inter,system-ui,sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;background:#1e8449;border:none;border-radius:7px;padding:7px 13px;cursor:pointer;transition:background .12s,opacity .12s;white-space:nowrap}.order-save-btn:hover{background:#196b3a}.order-save-btn:disabled{background:#c9d6cd;cursor:default}.order-status{font-size:11px;font-weight:600}.order-status.saved{color:#1e8449}.order-status.saving{color:#c79a23}.order-status.err{color:#c0392b}.drag-handle{flex-shrink:0;color:#c2bcb4;font-size:13px;cursor:grab;line-height:1;padding:0 1px;user-select:none;transition:color .12s}.editor-lesson-hdr:hover .drag-handle,.editor-topic-btn:hover .drag-handle{color:#8a8f99}.drag-handle:active{cursor:grabbing}.editor-lesson-hdr[draggable=true],.editor-topic-btn[draggable=true]{cursor:grab}.editor-lesson.dragging,.editor-topic-btn.dragging{opacity:.4}.editor-topics-list.drop-active{outline:2px dashed #cdd9ea;outline-offset:2px;border-radius:8px}.editor-lessons.drop-active-lessons{background:#fbfaf8}.revert-order-btn{margin-top:9px;font-family:Inter,system-ui,sans-serif;font-size:11px;font-weight:700;color:#c0392b;background:#fff;border:1px solid #f0c8c4;border-radius:7px;padding:6px 11px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:all .12s}.revert-order-btn:hover{background:#c0392b;color:#fff;border-color:#c0392b}.revert-order-btn:disabled{opacity:.6;cursor:default}.editor-live-area{background:#f4f2ef;overflow-y:auto;min-height:0;max-height:760px}.editor-live-toolbar{position:sticky;top:0;z-index:6;padding:11px 24px;border-bottom:1px solid #e9e5e0;background:#fffffff7;backdrop-filter:blur(8px);display:flex;align-items:center;gap:14px;box-shadow:0 1px 4px #0000000f}.editor-live-toolbar .spacer{flex:1}.editor-breadcrumb{display:flex;align-items:center;gap:7px;min-width:0}.editor-breadcrumb-course{font-size:12.5px;font-weight:600;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.editor-breadcrumb-sep{color:#ccc;font-size:14px;line-height:1}.editor-breadcrumb-topic{font-size:13px;font-weight:800;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.editor-status{font-size:12px;color:#aaa}.editor-status.saved{color:#1e8449;font-weight:600}.editor-status.saving{color:#c79a23;font-weight:600}.editor-status.err{color:#c0392b;font-weight:600}.editor-hint{font-size:11.5px;color:#c2bcb4;white-space:nowrap}.editor-save-btn-main{transition:background .15s,box-shadow .15s}.editor-save-btn-main.has-changes{background:#099!important;color:#fff!important;box-shadow:0 2px 8px #00999959}.editor-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:90px 24px;min-height:420px}.editor-empty-ico{font-size:40px;opacity:.4;margin-bottom:16px}.editor-empty-title{font-family:var(--dx-font-display);font-weight:800;font-size:18px;color:#9a938b;margin-bottom:6px}.editor-empty-sub{font-size:13px;color:#b3aca3;max-width:340px;line-height:1.55}.lesson-editor{padding:28px 28px 36px;max-width:940px;margin:0 auto}.lesson-form{background:#fff;border:1px solid #e4e1dd;border-radius:14px;padding:22px 24px;margin-bottom:18px;box-shadow:0 1px 4px #0000000d}.lf-row{display:flex;gap:16px}.lf-row+.lf-row{margin-top:18px}.lf-field{flex:1;min-width:0}.lf-field.lf-narrow{flex:0 0 170px}.lf-label{display:block;font-size:11px;font-weight:700;color:#555;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.lf-hint{display:block;font-size:11px;color:#b3aca3;margin-top:4px;line-height:1.4}.lf-input{width:100%;padding:10px 13px;border:1.5px solid #e4e1dd;border-radius:8px;font-size:14px;font-family:Inter,system-ui,sans-serif;color:#1a1a2e;background:#fcfbfa;outline:none;transition:border-color .15s,background .15s}.lf-input:focus{border-color:#0f3460;background:#fff}.lf-title{font-family:var(--dx-font-display);font-weight:800;font-size:18px}.lf-id{font-family:Courier New,monospace;font-size:13px}.lesson-body-wrap{background:#fff;border:1px solid #e4e1dd;border-radius:14px;box-shadow:0 1px 4px #0000000d;overflow:hidden}.lb-bar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:8px 14px;border-bottom:1px solid #f0ede9;background:#faf9f7}.lb-group{display:flex;align-items:center;gap:4px}.lb-group-label{font-size:9.5px;font-weight:700;color:#c2bcb4;text-transform:uppercase;letter-spacing:.07em;padding:0 4px 0 2px;white-space:nowrap}.lb-label{font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.06em;margin-right:6px}.lb-bar button{font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:700;color:#555;background:#fff;border:1px solid #e4e1dd;border-radius:7px;padding:5px 10px;cursor:pointer;transition:all .12s;line-height:1.4;min-width:30px;white-space:nowrap}.lb-bar button:hover{background:#0f3460;color:#fff;border-color:#0f3460}.lb-sep{width:1px;height:20px;background:#e4e1dd;margin:0 4px}.lb-bar button.lb-c-crit{border-color:#f5c6c6;color:#c0392b;background:#fff8f8}.lb-bar button.lb-c-warn{border-color:#f5dfa8;color:#9a6800;background:#fffdf4}.lb-bar button.lb-c-note{border-color:#b8e0c4;color:#1e7e34;background:#f4fbf6}.lb-bar button.lb-c-crit:hover{background:#e1141d;border-color:#e1141d;color:#fff}.lb-bar button.lb-c-warn:hover{background:#e89a14;border-color:#e89a14;color:#fff}.lb-bar button.lb-c-note:hover{background:#2eaa3e;border-color:#2eaa3e;color:#fff}.lb-wordcount{margin-left:auto;font-size:11px;color:#c2bcb4;font-weight:600;white-space:nowrap}.lesson-body{font-family:Open Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.75;color:#2a2a2a;outline:none;padding:26px 30px 44px;min-height:320px}.pv-body h2{font-family:var(--dx-font-display);font-weight:800;font-size:19px;color:#1a1a1a;margin:30px 0 10px;padding-bottom:8px;border-bottom:2px solid #e4e1dd}.pv-body h3{font-family:var(--dx-font-display);font-weight:700;font-size:15px;color:#2a2a2a;margin:22px 0 8px;text-transform:uppercase;letter-spacing:.04em}.pv-body p{margin:0 0 14px}.pv-body ul,.pv-body ol{margin:10px 0 18px;padding-left:24px}.pv-body li{margin-bottom:8px}.pv-body strong{font-weight:700;color:#1a1a1a}.pv-body em{font-style:italic;color:#555}.pv-body table{width:100%;border-collapse:collapse;margin:16px 0 24px;font-size:14px}.pv-body th{background:#0f3460;color:#fff;text-align:left;padding:10px 14px;font-family:var(--dx-font-display);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.pv-body td{padding:10px 14px;border-bottom:1px solid #e4e1dd;color:#555}.pv-body tr:last-child td{border-bottom:none}.pv-body tr:nth-child(2n) td{background:#faf9f7}.pv-body .callout{border-left:4px solid;border-radius:0 6px 6px 0;padding:14px 18px;margin:20px 0}.pv-body .callout-label{font-family:var(--dx-font-display);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.pv-body .callout p{margin-bottom:0}.pv-body .callout.critical{border-left-color:#e1141d;background:#fdecec}.pv-body .callout.critical .callout-label{color:#8a0a10}.pv-body .callout.warning{border-left-color:#e89a14;background:#fdf3df}.pv-body .callout.warning .callout-label{color:#8a5e0a}.pv-body .callout.note{border-left-color:#2eaa3e;background:#e6f5e8}.pv-body .callout.note .callout-label{color:#1f7d2c}.pv-body .callout.gap{border-left-color:#999;background:#f0f0f0}.pv-body .callout.gap .callout-label{color:#555}.quiz-editor{background:#f4f2ef;overflow-y:auto;max-height:760px;padding:24px}.quiz-editor-inner{max-width:860px;margin:0 auto}.quiz-editor-header{display:flex;align-items:flex-end;gap:16px;margin-bottom:18px;padding:18px 20px;background:#fff;border-radius:14px;border:1px solid #e4e1dd;box-shadow:0 1px 4px #0000000d;flex-wrap:wrap}.quiz-editor-header .form-group{margin-bottom:0}.quiz-editor .form-label{display:block;font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.quiz-field{width:100%;padding:10px 13px;border:1.5px solid #e4e1dd;border-radius:8px;font-size:13.5px;font-family:Inter,system-ui,sans-serif;color:#1a1a2e;background:#fcfbfa;outline:none;transition:border-color .15s,background .15s}.quiz-field:focus{border-color:#0f3460;background:#fff}.quiz-passmark{width:90px}.quiz-question-card{border:1px solid #e4e1dd;border-radius:14px;padding:20px 22px;margin-bottom:14px;background:#fff;box-shadow:0 1px 4px #0000000d}.quiz-question-top{display:flex;align-items:center;gap:10px;margin-bottom:14px}.quiz-q-num{font-family:var(--dx-font-display);font-weight:800;font-size:12px;color:#fff;background:#0f3460;padding:5px 12px;border-radius:999px;flex-shrink:0}.quiz-remove-btn{margin-left:auto;font-size:11px;font-weight:700;padding:6px 13px;border-radius:7px;border:1px solid #f0c8c4;color:#c0392b;background:#fff6f5;cursor:pointer;font-family:inherit;transition:all .12s}.quiz-remove-btn:hover{background:#c0392b;color:#fff;border-color:#c0392b}.quiz-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 6px}.quiz-option-row{display:flex;align-items:center;gap:10px;padding:6px 10px;border:1px solid #f0ede9;border-radius:9px;background:#fcfbfa;transition:border-color .12s,background .12s}.quiz-option-row:focus-within{border-color:#cdd9ea;background:#fff}.quiz-option-letter{font-size:12px;font-weight:800;color:#b3aca3;width:14px;flex-shrink:0}.quiz-option-radio{flex-shrink:0;accent-color:#1e8449;cursor:pointer;width:17px;height:17px}.quiz-option-input{flex:1;padding:8px 10px;border:1px solid transparent;border-radius:6px;font-size:13px;font-family:inherit;outline:none;background:transparent;transition:border-color .15s,background .15s}.quiz-option-input:focus{border-color:#cdd9ea;background:#fff}.quiz-correct-hint{font-size:11.5px;color:#9a938b;margin:4px 0}.quiz-explain-label{font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.06em;margin:16px 0 6px}.quiz-add-btn{display:flex;align-items:center;gap:8px;padding:14px 20px;border:2px dashed #d6d0c9;border-radius:12px;background:#fff;color:#888;font-size:13.5px;font-weight:700;cursor:pointer;font-family:inherit;width:100%;justify-content:center;margin-top:6px;transition:border-color .15s,color .15s,background .15s}.quiz-add-btn:hover{border-color:#0f3460;color:#0f3460;background:#f4f7fc}.pane-intro-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.ghost-btn{display:inline-flex;align-items:center;gap:7px;font-family:var(--dx-font-display);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--dx-teal-dark);background:#fff;border:1.5px solid var(--dx-soft-teal);padding:9px 16px;border-radius:8px;cursor:pointer;box-shadow:0 1px 2px #0e1c260a;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;white-space:nowrap}.ghost-btn:hover{background:var(--dx-soft-teal);color:var(--dx-teal-dark);border-color:var(--dx-soft-teal);box-shadow:0 2px 8px #0e1c260f}.ghost-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.ghost-btn:disabled:hover{background:#fff;color:var(--dx-teal-dark);border-color:var(--dx-soft-teal)}.ghost-btn.danger{color:var(--dx-danger);border-color:#f0c8c4}.ghost-btn.danger:hover{background:var(--dx-danger);color:#fff;border-color:var(--dx-danger)}.page-subtab-bar{display:flex;align-items:center;gap:8px;margin-bottom:28px}.page-subtab{font-size:14px;font-weight:700;padding:11px 28px;border:1.5px solid #e4e1dd;border-radius:9px;background:#fff;color:#888;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap;box-shadow:0 1px 3px #0000000f}.page-subtab:hover{border-color:var(--dx-primary);color:var(--dx-primary);background:#f5f7ff}.page-subtab.active{background:var(--dx-primary);border-color:var(--dx-primary);color:#fff;box-shadow:0 3px 10px #0f346040}.dash-subtab-pane{display:none}.dash-subtab-pane.active{display:block;animation:tabFade .22s ease}.dash-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}#pane-overview .kpi-card{position:relative;background:#fff;border:1px solid #e4e1dd;border-radius:14px;padding:22px 22px 18px;box-shadow:0 1px 4px #0000000d;overflow:hidden;transition:box-shadow .18s,transform .18s;cursor:pointer}#pane-overview .kpi-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent, #0f3460);border-radius:4px 0 0 4px}#pane-overview .kpi-card:hover{box-shadow:0 8px 24px #0000001c;transform:translateY(-2px)}#pane-overview .kpi-head{display:flex;align-items:center;justify-content:flex-end}#pane-overview .kpi-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;background:color-mix(in srgb,var(--accent, #0f3460) 13%,#fff)}#pane-overview .kpi-num{font-family:var(--dx-font-display);font-size:38px;font-weight:900;color:#1a1a2e;line-height:1;margin:16px 0 6px}#pane-overview .kpi-label{font-size:11px;font-weight:700;color:#777;text-transform:uppercase;letter-spacing:.07em}#pane-overview .kpi-sub{font-size:11.5px;color:#b3aeae;margin-top:4px}@media (max-width: 860px){.dash-kpi-grid{grid-template-columns:repeat(2,1fr)}}.perf-table{width:100%;border-collapse:collapse}.perf-table th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9aa6b0;padding:11px 20px;border-bottom:1px solid #f0ede9;background:#fff}.perf-table td{padding:13px 20px;border-bottom:1px solid #f5f3f0;font-size:13px;vertical-align:middle;color:#444}.perf-table th:last-child,.perf-table td:last-child{text-align:right}.perf-table tr:last-child td{border-bottom:none}.perf-table tbody tr:hover td{background:#fafaf9}#pane-overview .perf-course{font-weight:700;color:#1a1a2e}#pane-overview .perf-attempts{text-align:center;font-weight:700;color:var(--dx-text, #666666)}.score-bar-wrap{display:flex;align-items:center;gap:12px}.score-bar{height:8px;border-radius:5px;background:#eef0f3;flex:1;overflow:hidden}.score-bar-fill{height:100%;border-radius:5px;transition:width .4s ease}.score-num{font-weight:800;font-size:13px;color:#333;min-width:38px;text-align:right}#pane-overview .two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}#pane-overview .feed-item{display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid #f5f3f0}#pane-overview .feed-item:last-child{border-bottom:none}#pane-overview .feed-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}#pane-overview .feed-dot.pass{background:#2e7d32;box-shadow:0 0 0 3px #2e7d3221}#pane-overview .feed-dot.fail{background:#e53935;box-shadow:0 0 0 3px #e5393521}#pane-overview .feed-dot.login{background:#0f3460;box-shadow:0 0 0 3px #0f346021}#pane-overview .feed-main{flex:1;min-width:0}#pane-overview .feed-name{font-size:13.5px;font-weight:600;color:#1a1a2e}#pane-overview .feed-sub{font-size:11.5px;color:#aaa;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#pane-overview .feed-right{text-align:right;flex-shrink:0}#pane-overview .feed-score{font-size:14px;font-weight:800}#pane-overview .feed-score.high{color:#2e7d32}#pane-overview .feed-score.mid{color:#e65100}#pane-overview .feed-score.low{color:#e53935}#pane-overview .feed-time{font-size:11px;color:#bbb;margin-top:2px}.feed-loading,.feed-empty{text-align:center;padding:32px;color:#cfcaca;font-size:13px}#pane-overview .badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:99px;display:inline-block}#pane-overview .badge-pass{background:#e8f5e9;color:#2e7d32}#pane-overview .badge-fail{background:#fce4ec;color:#c62828}#pane-overview .badge-admin{background:#fff3e0;color:#e65100}#pane-overview .badge-employee{background:#eef2ff;color:#3949ab}@media (max-width: 860px){#pane-overview .kpi-row{grid-template-columns:repeat(2,1fr)}#pane-overview .two-col{grid-template-columns:1fr}}.dx-modal-overlay{position:fixed;inset:0;background:#0e1c268c;backdrop-filter:blur(3px);z-index:9000;display:flex;align-items:center;justify-content:center;padding:20px;animation:modalFadeIn .15s ease}.dx-modal-overlay[hidden]{display:none}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.dx-modal-box{background:#fff;border:1px solid #e5ebf0;border-radius:20px;padding:28px 30px 24px;max-width:440px;width:100%;box-shadow:0 16px 48px #0e1c262e,0 4px 12px #0e1c2614;animation:modalSlideIn .2s cubic-bezier(.34,1.3,.64,1)}@keyframes modalSlideIn{0%{transform:translateY(14px) scale(.97);opacity:0}to{transform:none;opacity:1}}.dx-modal-title{font-family:Montserrat,sans-serif;font-size:18px;font-weight:700;color:#0e1c26;margin-bottom:10px}.dx-modal-body{font-size:14px;color:#6b7a85;line-height:1.55;margin-bottom:22px}.dx-modal-actions{display:flex;gap:10px;justify-content:flex-end}.dx-modal-btn{padding:9px 20px;border-radius:8px;font-size:13px;font-weight:700;font-family:Montserrat,sans-serif;cursor:pointer;border:none;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;letter-spacing:.01em}.dx-modal-btn.secondary{background:#fff;color:#066;border:1.5px solid #A7DEE3}.dx-modal-btn.secondary:hover{background:#a7dee3;color:#066}.dx-modal-btn.primary{background:linear-gradient(180deg,#06c,#0058b8);color:#fff;box-shadow:inset 0 1px #ffffff26}.dx-modal-btn.primary:hover{background:linear-gradient(180deg,#004080,#036)}.dx-modal-btn.primary:disabled{opacity:.55;cursor:not-allowed}.dx-modal-btn.primary.destructive{background:#d64545}.dx-modal-btn.primary.destructive:hover{background:#b93636}.dx-modal-btn:focus-visible{outline:2px solid #3399ff;outline-offset:2px}.dx-modal-box .lrn-modal-head{position:relative;overflow:hidden;background:linear-gradient(135deg,#002952,#004080,#00626c);color:#fff;padding:20px 26px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dx-modal-box .lrn-modal-head:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,transparent 49.5%,rgba(255,255,255,.04) 50%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,rgba(255,255,255,.025) 50%,transparent 50.5%);background-size:80px 80px,80px 80px}.dx-modal-box .lrn-modal-title{position:relative;font-family:Montserrat,sans-serif;font-size:19px;font-weight:700;margin:0;color:#fff}.dx-modal-box .lrn-modal-sub{position:relative;font-size:12.5px;color:#ffffffd1;margin:5px 0 0;line-height:1.45}.dx-modal-box .lrn-modal-x{position:relative;flex-shrink:0;width:30px;height:30px;border-radius:8px;border:none;background:#ffffff24;color:#fff;font-size:18px;line-height:1;cursor:pointer;transition:background .12s}.dx-modal-box .lrn-modal-x:hover{background:#ffffff47}.dx-modal-box .lrn-modal-scroll{padding:22px 26px;max-height:62vh;overflow-y:auto}.dx-modal-box.course-editor-box{max-width:min(1100px,96vw)!important}.dx-modal-box.course-editor-box .lrn-modal-scroll{max-height:82vh;padding:24px 30px}.panel-topic-row{display:flex;align-items:center;gap:7px;padding:6px 4px;border-bottom:1px solid #f8f7f5;font-size:12px;color:#555;cursor:grab;user-select:none;border-radius:4px;transition:background .1s}.panel-topic-row:last-child{border-bottom:none}.panel-topic-row:hover{background:#f5f2ef}.panel-topic-row.is-dragging{opacity:.3}.panel-topic-row.drag-target{background:#fff5f5;border-color:#b50f17;outline:1px solid rgba(181,15,23,.2)}.panel-topic-handle{font-size:13px;color:#ccc;cursor:grab;flex-shrink:0;line-height:1}.dx-modal-box .lrn-modal-foot{padding:16px 26px;border-top:1px solid #e5ebf0;background:#fafbfc;display:flex;justify-content:flex-end;gap:10px}.dx-modal-box .lrn-modal-note{font-size:13px;color:#6b7a85;line-height:1.5;margin:0 0 16px}.dx-modal-box .lrn-modal-note code{background:#eef2f4;color:#2c3a44;padding:1px 6px;border-radius:4px;font-size:12px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--dx-font-body);background:#f0f2f5;color:#1a1a2e}.admin-header[data-astro-cid-u2h3djql]{background:linear-gradient(135deg,#001830,#036 60%,#004080);border-bottom:3px solid var(--dx-teal);padding:0 32px;height:64px;display:flex;align-items:center;gap:16px}.admin-header-logo[data-astro-cid-u2h3djql]{height:32px;width:auto}.admin-header-title[data-astro-cid-u2h3djql]{font-family:var(--dx-font-display);font-weight:800;font-size:16px;color:#fff;flex:1}.admin-header-title[data-astro-cid-u2h3djql] span[data-astro-cid-u2h3djql]{color:var(--dx-teal-light)}.admin-header-nav[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:12px}.admin-header-user[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:#ffffffd9}.admin-header-user[data-astro-cid-u2h3djql]:before{content:attr(data-initials);display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;flex-shrink:0;background:#0099992e;color:var(--dx-teal-light);font-size:11px;font-weight:800;letter-spacing:.02em}.admin-nav-btn[data-astro-cid-u2h3djql]{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:6px 14px;border-radius:6px;border:1px solid rgba(255,255,255,.2);color:#fffc;background:transparent;cursor:pointer;text-decoration:none;font-family:inherit;transition:background .15s,color .15s}.admin-nav-btn[data-astro-cid-u2h3djql]:hover{background:#ffffff1a;color:#fff}.admin-nav-btn[data-astro-cid-u2h3djql].danger{border-color:#e74c3c66;color:#e74c3c}.admin-nav-btn[data-astro-cid-u2h3djql].danger:hover{background:#e74c3c1a}[data-astro-cid-u2h3djql]:focus-visible{outline:2px solid var(--dx-primary-light, #3399ff);outline-offset:2px}.admin-tabs[data-astro-cid-u2h3djql]{background:#fff;border-bottom:1px solid #e4e1dd;padding:0 32px;display:flex;align-items:stretch;gap:4px;position:sticky;top:0;z-index:20;box-shadow:0 1px 4px #0000000d}.admin-tab[data-astro-cid-u2h3djql]{appearance:none;background:none;border:none;cursor:pointer;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:600;color:#8a8f99;padding:18px 22px 16px;border-bottom:2px solid transparent;display:flex;align-items:center;gap:8px;transition:color .15s,border-color .15s;white-space:nowrap}.admin-tab[data-astro-cid-u2h3djql]:hover{color:var(--dx-primary)}.admin-tab[data-astro-cid-u2h3djql] .tab-ico[data-astro-cid-u2h3djql]{font-size:15px;line-height:1}.admin-tab[data-astro-cid-u2h3djql].active{color:var(--dx-primary);border-bottom-color:var(--dx-teal)}.admin-tab[data-astro-cid-u2h3djql][data-tab=settings]{margin-left:auto}.admin-tab[data-astro-cid-u2h3djql] .tab-badge[data-astro-cid-u2h3djql]{font-size:11px;font-weight:700;color:#999;background:#f0f2f5;border:1px solid #e4e1dd;padding:1px 8px;border-radius:999px;line-height:1.5}.admin-tab[data-astro-cid-u2h3djql].active .tab-badge[data-astro-cid-u2h3djql]{color:var(--dx-primary);border-color:#cdd9ea;background:#eef2fb}.settings-body[data-astro-cid-u2h3djql]{padding:20px 24px;display:flex;flex-direction:column;gap:20px}.settings-row[data-astro-cid-u2h3djql]{display:flex;gap:20px;flex-wrap:wrap}.settings-field[data-astro-cid-u2h3djql]{flex:1;min-width:220px;display:flex;flex-direction:column}.settings-label[data-astro-cid-u2h3djql]{font-size:11px;font-weight:700;color:#555;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.settings-hint[data-astro-cid-u2h3djql]{font-size:11px;color:#b3aca3;margin-top:5px;line-height:1.4}.settings-input[data-astro-cid-u2h3djql]{padding:10px 13px;border:1.5px solid #e4e1dd;border-radius:8px;font-size:14px;font-family:Inter,system-ui,sans-serif;color:#1a1a2e;background:#fcfbfa;outline:none;transition:border-color .15s}.settings-input[data-astro-cid-u2h3djql]:focus{border-color:#0f3460;background:#fff}.settings-style-picker[data-astro-cid-u2h3djql]{display:flex;gap:12px;margin-top:6px}.style-option[data-astro-cid-u2h3djql]{cursor:pointer}.style-option[data-astro-cid-u2h3djql] input[data-astro-cid-u2h3djql]{display:none}.style-preview[data-astro-cid-u2h3djql]{display:flex;align-items:center;justify-content:center;width:110px;height:64px;border-radius:10px;font-size:12px;font-weight:700;border:2px solid #e4e1dd;cursor:pointer;transition:all .15s;color:#555}.style-option[data-astro-cid-u2h3djql] input[data-astro-cid-u2h3djql]:checked+.style-preview[data-astro-cid-u2h3djql]{border-color:#0f3460;color:#0f3460;background:#eef2fb}.style-classic[data-astro-cid-u2h3djql]{background:#fffdf7;font-family:Roboto Slab,serif}.style-modern[data-astro-cid-u2h3djql]{background:#f5f3f0;letter-spacing:.05em}.style-minimal[data-astro-cid-u2h3djql]{background:#fff;font-weight:400}.settings-toggle[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:10px;cursor:pointer}.settings-toggle[data-astro-cid-u2h3djql] input[data-astro-cid-u2h3djql]{display:none}.settings-toggle-track[data-astro-cid-u2h3djql]{width:42px;height:24px;border-radius:999px;background:#e4e1dd;position:relative;transition:background .2s;flex-shrink:0}.settings-toggle-track[data-astro-cid-u2h3djql]:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000026;transition:transform .2s}.settings-toggle[data-astro-cid-u2h3djql] input[data-astro-cid-u2h3djql]:checked~.settings-toggle-track[data-astro-cid-u2h3djql]{background:#1e8449}.settings-toggle[data-astro-cid-u2h3djql] input[data-astro-cid-u2h3djql]:checked~.settings-toggle-track[data-astro-cid-u2h3djql]:after{transform:translate(18px)}.settings-toggle-label[data-astro-cid-u2h3djql]{font-size:13px;font-weight:600;color:#555}.admin-tab-dropdown[data-astro-cid-u2h3djql]{position:relative;display:flex;align-items:stretch}.curation-trigger[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:7px}.curation-arrow[data-astro-cid-u2h3djql]{font-size:11px;transition:transform .15s}.curation-trigger[data-astro-cid-u2h3djql][aria-expanded=true] .curation-arrow[data-astro-cid-u2h3djql]{transform:rotate(180deg)}.curation-trigger[data-astro-cid-u2h3djql].curation-active{color:#0f3460;border-bottom:2px solid #e8b738}.curation-menu[data-astro-cid-u2h3djql]{position:absolute;top:calc(100% + 2px);left:0;z-index:50;background:#fff;border:1px solid #e4e1dd;border-radius:10px;box-shadow:0 8px 24px #0000001a,0 2px 6px #0000000f;min-width:180px;padding:6px;overflow:hidden}.curation-menu[data-astro-cid-u2h3djql].hidden{display:none}.curation-item[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:none;cursor:pointer;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:600;color:#44403b;border-radius:7px;text-align:left;transition:background .1s,color .1s}.curation-item[data-astro-cid-u2h3djql]:hover{background:#f4f2ef;color:#0f3460}.curation-item[data-astro-cid-u2h3djql].active{background:#eef2fb;color:#0f3460;font-weight:700}.curation-item[data-astro-cid-u2h3djql] span[data-astro-cid-u2h3djql]{font-size:16px}.tab-pane[data-astro-cid-u2h3djql]{display:none}.tab-pane[data-astro-cid-u2h3djql].active{display:block;animation:tabFade .28s ease}@keyframes tabFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.lrn-field[data-astro-cid-u2h3djql]{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.lrn-field[data-astro-cid-u2h3djql]:last-child{margin-bottom:0}.lrn-field[data-astro-cid-u2h3djql] label[data-astro-cid-u2h3djql]{font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;color:#6b7a85;text-transform:uppercase;letter-spacing:.06em}.lrn-input[data-astro-cid-u2h3djql],.lrn-select[data-astro-cid-u2h3djql],.lrn-textarea[data-astro-cid-u2h3djql]{padding:10px 13px;border:1.5px solid #e5ebf0;border-radius:8px;font-size:14px;font-family:Open Sans,system-ui,sans-serif;color:#2c3a44;background:#fafbfc;outline:none;transition:border-color .15s,box-shadow .15s,background .15s;width:100%;box-sizing:border-box}.lrn-input[data-astro-cid-u2h3djql]:focus,.lrn-select[data-astro-cid-u2h3djql]:focus,.lrn-textarea[data-astro-cid-u2h3djql]:focus{border-color:#06c;background:#fff;box-shadow:0 0 0 3px #0066cc1a}.lrn-input[data-astro-cid-u2h3djql]::placeholder,.lrn-textarea[data-astro-cid-u2h3djql]::placeholder{color:#9aa6b0}.lrn-textarea[data-astro-cid-u2h3djql]{min-height:130px;resize:vertical;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;line-height:1.6}.lrn-modal-box[data-astro-cid-u2h3djql]{max-width:560px;text-align:left;padding:0;overflow:hidden}.lrn-results[data-astro-cid-u2h3djql]{margin-top:16px;max-height:180px;overflow-y:auto;font-size:12.5px;border:1px solid #e5ebf0;border-radius:10px}.lrn-results[data-astro-cid-u2h3djql] div[data-astro-cid-u2h3djql]{padding:8px 12px;border-bottom:1px solid #eef2f4;display:flex;justify-content:space-between;gap:10px;align-items:center}.lrn-results[data-astro-cid-u2h3djql] div[data-astro-cid-u2h3djql]:last-child{border-bottom:none}.lrn-res-created[data-astro-cid-u2h3djql]{color:#3aa873;font-weight:700}.lrn-res-dup[data-astro-cid-u2h3djql]{color:#e8a23a;font-weight:700}.lrn-res-err[data-astro-cid-u2h3djql]{color:#d64545;font-weight:700}.lrn-access-group[data-astro-cid-u2h3djql]{margin-bottom:22px}.lrn-access-group[data-astro-cid-u2h3djql] h4[data-astro-cid-u2h3djql]{font-size:12px;font-weight:800;color:#1a1a2e;text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px}.lrn-access-row[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid #f2efeb}.lrn-access-row[data-astro-cid-u2h3djql]:last-child{border-bottom:none}.lrn-access-name[data-astro-cid-u2h3djql]{flex:1;font-size:13.5px;font-weight:600;color:#1a1a2e;display:flex;align-items:center;gap:9px}.access-btn-group[data-astro-cid-u2h3djql]{display:flex;gap:5px;flex-shrink:0}.access-btn[data-astro-cid-u2h3djql]{font-size:11.5px;font-weight:700;padding:6px 13px;border-radius:7px;border:1.5px solid #e4e1dd;background:#fafaf9;color:#bbb;cursor:pointer;font-family:inherit;transition:all .12s;white-space:nowrap;line-height:1.3}.access-btn[data-astro-cid-u2h3djql]:hover{border-color:#aaa;color:#555;background:#f5f3f0}.access-btn[data-astro-cid-u2h3djql].allow-btn:hover{border-color:#2e7d32;color:#2e7d32;background:#f0faf3}.access-btn[data-astro-cid-u2h3djql].allow-btn.is-active{background:#2e7d32;border-color:#2e7d32;color:#fff}.access-btn[data-astro-cid-u2h3djql].default-btn.is-active{background:#f0f2f5;border-color:#ccc;color:#555}.access-btn[data-astro-cid-u2h3djql].deny-btn:hover{border-color:#c0392b;color:#c0392b;background:#fff5f5}.access-btn[data-astro-cid-u2h3djql].deny-btn.is-active{background:#c0392b;border-color:#c0392b;color:#fff}.admin-body[data-astro-cid-u2h3djql]{max-width:1180px;margin:0 auto;padding:28px 24px 64px}.pane-intro[data-astro-cid-u2h3djql]{margin-bottom:22px}.pane-eyebrow[data-astro-cid-u2h3djql]{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--dx-teal);margin-bottom:7px}.pane-title[data-astro-cid-u2h3djql]{font-family:var(--dx-font-display);font-weight:800;font-size:32px;color:#1a1a2e}.pane-sub[data-astro-cid-u2h3djql]{font-size:13.5px;color:var(--dx-text, #666666);margin-top:6px;max-width:640px;line-height:1.5}.curriculum-howto[data-astro-cid-u2h3djql]{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.5;color:var(--dx-primary, #0066cc);font-weight:600;margin-top:10px;max-width:720px;background:color-mix(in srgb,var(--dx-primary, #0066cc) 7%,#fff);border:1px solid color-mix(in srgb,var(--dx-primary, #0066cc) 22%,#fff);border-radius:8px;padding:9px 13px}.curriculum-howto[data-astro-cid-u2h3djql] .howto-ico[data-astro-cid-u2h3djql]{flex-shrink:0;font-size:15px;line-height:1.4}.curriculum-howto[data-astro-cid-u2h3djql] strong[data-astro-cid-u2h3djql]{color:var(--dx-primary-dark, #004080)}.stats-row[data-astro-cid-u2h3djql]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-card[data-astro-cid-u2h3djql]{background:#fff;border-radius:12px;padding:20px 22px;border:1px solid #e4e1dd;box-shadow:0 1px 4px #0000000f;border-left:4px solid var(--accent, #0f3460)}.stat-card-row[data-astro-cid-u2h3djql]{display:flex;align-items:flex-start;justify-content:space-between}.stat-icon[data-astro-cid-u2h3djql]{font-size:18px;width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent, #0f3460) 12%,#fff)}.stat-num[data-astro-cid-u2h3djql]{font-family:var(--dx-font-display);font-size:34px;font-weight:900;color:#1a1a2e;line-height:1;margin:14px 0 4px}.stat-label[data-astro-cid-u2h3djql]{font-size:11px;color:var(--dx-text, #666666);font-weight:700;text-transform:uppercase;letter-spacing:.07em}.admin-section[data-astro-cid-u2h3djql]{background:#fff;border-radius:12px;border:1px solid #e4e1dd;box-shadow:0 1px 4px #0000000f;margin-bottom:20px;overflow:hidden}.section-header[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:10px;padding:14px 20px;border-bottom:1px solid #f0ede9;background:#fafaf9}.section-title[data-astro-cid-u2h3djql]{font-family:var(--dx-font-display);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#1a1a2e;flex:1}.add-btn[data-astro-cid-u2h3djql]{background:var(--dx-primary);color:#fff;border:none;border-radius:7px;padding:7px 16px;font-size:11px;font-weight:700;font-family:inherit;cursor:pointer;text-transform:uppercase;letter-spacing:.06em;transition:background .15s}.add-btn[data-astro-cid-u2h3djql]:hover{background:var(--dx-primary-dark)}.course-search-wrap[data-astro-cid-u2h3djql]{flex:1;max-width:280px;position:relative;display:flex;align-items:center}.course-search-icon[data-astro-cid-u2h3djql]{position:absolute;left:11px;font-size:13px;pointer-events:none;line-height:1}.course-search[data-astro-cid-u2h3djql]{width:100%;padding:8px 12px 8px 32px;border:1.5px solid #e4e1dd;border-radius:8px;font-size:13px;font-family:Inter,system-ui,sans-serif;background:#fcfbfa;color:#1a1a2e;outline:none;transition:border-color .15s,background .15s}.course-search[data-astro-cid-u2h3djql]:focus{border-color:var(--dx-primary);background:#fff}.course-search[data-astro-cid-u2h3djql]::placeholder{color:#b3aca3}.course-table[data-astro-cid-u2h3djql]{width:100%;border-collapse:collapse}.add-panel[data-astro-cid-u2h3djql]{padding:24px 26px 26px}.add-panel[data-astro-cid-u2h3djql].hidden{display:none}.steps-nav[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:8px;margin:2px 0 26px}.step-dot[data-astro-cid-u2h3djql]{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;border:2px solid #e4e1dd;color:#b3aca3;background:#fff;flex-shrink:0;transition:all .2s}.step-dot[data-astro-cid-u2h3djql].active{border-color:var(--dx-primary);background:var(--dx-primary);color:#fff;box-shadow:0 0 0 4px #0066cc26}.step-dot[data-astro-cid-u2h3djql].done{border-color:#1e8449;background:#1e8449;color:#fff}.step-line[data-astro-cid-u2h3djql]{flex:1;height:2px;background:#e8e3dd;border-radius:2px}.step-line[data-astro-cid-u2h3djql].done{background:#1e8449}.step-pane[data-astro-cid-u2h3djql]{display:none}.step-pane[data-astro-cid-u2h3djql].active{display:block;animation:tabFade .25s ease}.step-head[data-astro-cid-u2h3djql]{font-family:var(--dx-font-display);font-weight:800;font-size:17px;color:#1a1a2e;margin-bottom:4px}.step-sub[data-astro-cid-u2h3djql]{font-size:12.5px;color:#999;margin-bottom:20px;line-height:1.5}.form-row[data-astro-cid-u2h3djql]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.form-group[data-astro-cid-u2h3djql]{margin-bottom:16px}.form-label[data-astro-cid-u2h3djql]{display:block;font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.form-input[data-astro-cid-u2h3djql],.form-select[data-astro-cid-u2h3djql]{width:100%;padding:10px 13px;border:1.5px solid #e4e1dd;border-radius:8px;font-size:14px;font-family:Inter,system-ui,sans-serif;background:#fcfbfa;color:#1a1a2e;outline:none;transition:border-color .15s,background .15s}.form-input[data-astro-cid-u2h3djql]:focus,.form-select[data-astro-cid-u2h3djql]:focus{border-color:var(--dx-primary);background:#fff}.icon-preview[data-astro-cid-u2h3djql]{font-size:26px;margin-left:10px;vertical-align:middle}.color-swatch[data-astro-cid-u2h3djql]{width:24px;height:24px;border-radius:6px;display:inline-block;margin-left:8px;vertical-align:middle;border:1px solid #ddd}.color-picker-wrap[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:14px;margin-top:4px}.color-wheel-input[data-astro-cid-u2h3djql]{-webkit-appearance:none;appearance:none;width:50px;height:50px;border:none;border-radius:12px;cursor:pointer;padding:0;background:none;flex-shrink:0}.color-wheel-input[data-astro-cid-u2h3djql]::-webkit-color-swatch-wrapper{padding:0}.color-wheel-input[data-astro-cid-u2h3djql]::-webkit-color-swatch{border:none;border-radius:10px}.color-presets[data-astro-cid-u2h3djql]{display:flex;gap:8px;flex-wrap:wrap}.color-preset[data-astro-cid-u2h3djql]{width:30px;height:30px;border-radius:9px;cursor:pointer;border:2px solid transparent;transition:transform .12s,border-color .12s;flex-shrink:0;box-shadow:0 1px 3px #0000001f}.color-preset[data-astro-cid-u2h3djql]:hover{transform:scale(1.15)}.color-preset[data-astro-cid-u2h3djql].active{border-color:#1a1a2e;box-shadow:0 0 0 2px #fff inset,0 1px 4px #0003}.upload-zone[data-astro-cid-u2h3djql]{border:2px dashed #d6d0c9;border-radius:14px;padding:46px 36px;background:#fcfbfa;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.upload-zone[data-astro-cid-u2h3djql]:hover,.upload-zone[data-astro-cid-u2h3djql].drag{border-color:var(--dx-primary);background:#f4f7fc}.upload-zone-icon[data-astro-cid-u2h3djql]{font-size:38px;margin-bottom:12px;opacity:.7}.upload-zone-title[data-astro-cid-u2h3djql]{font-weight:700;font-size:15px;color:#33312e;margin-bottom:4px}.upload-zone-sub[data-astro-cid-u2h3djql]{font-size:12px;color:#999}.upload-selected[data-astro-cid-u2h3djql]{margin-top:14px;font-size:13px;font-weight:700;color:var(--dx-primary)}.source-type-grid[data-astro-cid-u2h3djql]{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-bottom:20px}.source-type-btn[data-astro-cid-u2h3djql]{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;border-radius:12px;border:1.5px solid #e4e1dd;background:#fafbfc;cursor:pointer;font-family:inherit;transition:border-color .15s,background .15s}.source-type-btn[data-astro-cid-u2h3djql]:hover{border-color:var(--dx-primary);background:#f0f4ff}.source-type-btn[data-astro-cid-u2h3djql].active{border-color:var(--dx-primary);background:#eef2fb}.source-type-icon[data-astro-cid-u2h3djql]{font-size:26px;line-height:1}.source-type-label[data-astro-cid-u2h3djql]{font-size:11.5px;font-weight:700;color:#33312e;text-align:center;line-height:1.3}.source-panel[data-astro-cid-u2h3djql]{margin-bottom:8px}.source-textarea[data-astro-cid-u2h3djql]{width:100%;box-sizing:border-box;padding:12px 14px;border:1.5px solid #e4e1dd;border-radius:10px;font-family:inherit;font-size:13.5px;line-height:1.6;resize:vertical;outline:none;transition:border-color .15s}.source-textarea[data-astro-cid-u2h3djql]:focus{border-color:var(--dx-primary)}.source-url-input[data-astro-cid-u2h3djql]{width:100%;box-sizing:border-box;padding:11px 14px;border:1.5px solid #e4e1dd;border-radius:10px;font-family:inherit;font-size:14px;outline:none;transition:border-color .15s;background:#fafbfc}.source-url-input[data-astro-cid-u2h3djql]:focus{border-color:var(--dx-primary);background:#fff}.source-hint[data-astro-cid-u2h3djql]{font-size:12px;color:#999;margin:6px 0 0}.icon-picker-wrap[data-astro-cid-u2h3djql]{position:relative;display:inline-block}.icon-picker-trigger[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:10px;background:#fcfbfa;border:1.5px solid #e4e1dd;border-radius:8px;padding:10px 14px;cursor:pointer;font-family:inherit;transition:border-color .15s}.icon-picker-trigger[data-astro-cid-u2h3djql]:hover{border-color:var(--dx-primary, #0066cc)}.icon-preview-lg[data-astro-cid-u2h3djql]{font-size:28px;line-height:1}.icon-picker-hint[data-astro-cid-u2h3djql]{font-size:12px;color:#888}.icon-popup-overlay[data-astro-cid-u2h3djql]{position:fixed;inset:0;background:#00000073;z-index:9100;display:flex;align-items:center;justify-content:center;animation:modalFadeIn .15s ease}.icon-popup-overlay[data-astro-cid-u2h3djql][hidden]{display:none}.icon-popup[data-astro-cid-u2h3djql]{background:#fff;border-radius:18px;width:380px;max-width:calc(100vw - 32px);box-shadow:0 24px 64px #00000038,0 4px 16px #0000001a;animation:modalSlideIn .2s cubic-bezier(.34,1.3,.64,1);overflow:hidden}.icon-popup-header[data-astro-cid-u2h3djql]{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 14px;border-bottom:1px solid #f0ede9}.icon-popup-title[data-astro-cid-u2h3djql]{font-family:var(--dx-font-display,"Montserrat",sans-serif);font-size:15px;font-weight:700;color:#111}.icon-popup-close[data-astro-cid-u2h3djql]{background:none;border:none;cursor:pointer;color:#aaa;font-size:17px;padding:5px 9px;border-radius:7px;line-height:1;transition:background .12s,color .12s}.icon-popup-close[data-astro-cid-u2h3djql]:hover{background:#f0ede9;color:#333}.icon-popup-body[data-astro-cid-u2h3djql]{padding:14px 18px 20px}.icon-popup-search[data-astro-cid-u2h3djql]{width:100%;padding:9px 14px;border:1.5px solid #e4e1dd;border-radius:9px;font-size:13px;font-family:inherit;outline:none;margin-bottom:14px;transition:border-color .15s}.icon-popup-search[data-astro-cid-u2h3djql]:focus{border-color:var(--dx-primary, #0066cc)}.icon-popup-grid[data-astro-cid-u2h3djql]{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;max-height:260px;overflow-y:auto}.icon-grid-btn[data-astro-cid-u2h3djql]{font-size:24px;padding:8px;border:none;background:transparent;border-radius:8px;cursor:pointer;line-height:1;text-align:center;transition:background .1s;aspect-ratio:1}.icon-grid-btn[data-astro-cid-u2h3djql]:hover{background:#f0f2f5}.icon-grid-btn[data-astro-cid-u2h3djql].selected{background:#0066cc1f;outline:2px solid var(--dx-primary, #0066cc)}.process-btn[data-astro-cid-u2h3djql]{background:linear-gradient(135deg,var(--dx-primary-dark),var(--dx-primary));color:#fff;border:none;border-radius:10px;padding:14px 28px;font-size:14px;font-weight:700;font-family:var(--dx-font-display);cursor:pointer;transition:opacity .15s,transform .12s;margin-top:6px;width:100%;box-shadow:0 4px 14px #0066cc40}.process-btn[data-astro-cid-u2h3djql]:hover{opacity:.94;transform:translateY(-1px)}.process-btn[data-astro-cid-u2h3djql]:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.progress-wrap[data-astro-cid-u2h3djql]{margin-top:18px}.progress-bar-bg[data-astro-cid-u2h3djql]{background:#e8e3dd;border-radius:6px;height:8px;overflow:hidden}.progress-bar-fill[data-astro-cid-u2h3djql]{height:100%;background:linear-gradient(90deg,#0f3460,#e8b738);border-radius:6px;transition:width .3s}.progress-label[data-astro-cid-u2h3djql]{font-size:12px;color:#999;margin-top:8px}.preview-pane[data-astro-cid-u2h3djql]{background:#faf9f7;border:1px solid #efece8;border-radius:12px;padding:18px 20px;margin-top:6px;max-height:360px;overflow-y:auto}.preview-title[data-astro-cid-u2h3djql]{font-family:var(--dx-font-display);font-weight:800;font-size:15px;color:#1a1a2e;margin-bottom:12px}.preview-lesson[data-astro-cid-u2h3djql]{margin-bottom:12px}.preview-lesson-title[data-astro-cid-u2h3djql]{font-weight:700;font-size:13px;color:#0f3460;margin-bottom:4px}.preview-topic[data-astro-cid-u2h3djql]{font-size:12px;color:#666;padding-left:16px;margin-bottom:2px}.preview-quiz[data-astro-cid-u2h3djql]{margin-top:12px;padding-top:12px;border-top:1px solid #e4e1dd;font-size:12px;color:#888}.panel-nav[data-astro-cid-u2h3djql]{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.btn-back[data-astro-cid-u2h3djql]{background:#fff;border:1px solid #e4e1dd;color:#555;padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .12s}.btn-back[data-astro-cid-u2h3djql]:hover{background:#f4f2ef;border-color:#d2ccc4}.btn-next[data-astro-cid-u2h3djql]{background:#0f3460;color:#fff;border:none;padding:10px 22px;border-radius:8px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;transition:background .12s}.btn-next[data-astro-cid-u2h3djql]:hover{background:#16213e}.btn-next[data-astro-cid-u2h3djql]:disabled{opacity:.45;cursor:not-allowed}.btn-save[data-astro-cid-u2h3djql]{background:#1e8449;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;transition:background .12s}.btn-save[data-astro-cid-u2h3djql]:hover{background:#196b3a}.toast[data-astro-cid-u2h3djql]{position:fixed;bottom:24px;right:24px;background:#1e8449;color:#fff;padding:12px 20px;border-radius:8px;font-size:13px;font-weight:700;box-shadow:0 4px 16px #0003;opacity:0;pointer-events:none;transition:opacity .3s}.toast[data-astro-cid-u2h3djql].visible{opacity:1}.toast[data-astro-cid-u2h3djql].error{background:#c0392b}.loading-row[data-astro-cid-u2h3djql] td[data-astro-cid-u2h3djql]{text-align:center;color:#aaa;padding:32px;font-size:13px}.assign-panel[data-astro-cid-u2h3djql]{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:1.5px solid #e4e1dd;border-radius:10px;padding:14px;background:#fafaf9}.assign-col-head[data-astro-cid-u2h3djql]{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#888;margin-bottom:8px;display:flex;align-items:center}.assign-search[data-astro-cid-u2h3djql]{width:100%;padding:7px 10px;border:1.5px solid #e4e1dd;border-radius:7px;font-size:13px;font-family:inherit;outline:none;margin-bottom:8px;background:#fff;transition:border-color .15s}.assign-search[data-astro-cid-u2h3djql]:focus{border-color:var(--dx-primary, #0066cc)}.assign-list[data-astro-cid-u2h3djql]{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.assign-item[data-astro-cid-u2h3djql]{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:7px;background:#fff;border:1px solid #e8e3dd;font-size:13px}.assign-item-icon[data-astro-cid-u2h3djql]{font-size:16px;flex-shrink:0}.assign-item-title[data-astro-cid-u2h3djql]{flex:1;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assign-btn[data-astro-cid-u2h3djql]{font-size:11px;font-weight:700;padding:4px 10px;border-radius:6px;border:none;cursor:pointer;transition:opacity .1s;flex-shrink:0}.assign-btn[data-astro-cid-u2h3djql].add{background:var(--dx-primary, #0066cc);color:#fff}.assign-btn[data-astro-cid-u2h3djql].add:hover{opacity:.85}.assign-btn[data-astro-cid-u2h3djql].remove{background:#f0f2f5;color:#555;border:1px solid #e0e0e0}.assign-btn[data-astro-cid-u2h3djql].remove:hover{background:#e4e6ea}.assign-list-empty[data-astro-cid-u2h3djql]{font-size:12px;color:#aaa;padding:12px 0;text-align:center}
