:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scrollbar-gutter:stable}body{overflow-y:scroll}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}.sl-text-muted{color:#8092a7}.sl-text{color:#475569}body{margin:0;min-height:100vh;display:flex;justify-content:center;align-items:flex-start;background-color:#dbeafe;padding:24px}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.centered-shell{width:80%;margin-left:auto;margin-right:auto;background-color:#fff;padding:20px;box-shadow:0 0 10px #0000001a}.app-shell{width:min(80vw,1200px);min-height:calc(100vh - 48px);padding:10px;background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000001a;overflow:hidden}@media(max-width:768px){.app-shell{width:100%;border-radius:10px}}.app-body{display:flex;min-height:calc(100vh - 64px)}.cursor-pointer{cursor:pointer}.app-body{display:flex;min-height:calc(100vh - 56px)}.app-content{flex:1;padding:24px;min-width:0}.sl-home{width:100%}.main-spacer{height:85px}.sl-home .row{margin-left:0;margin-right:0}.sl-empty-state{border-radius:18px;background:linear-gradient(180deg,#fff,#fafbff);transition:transform .16s ease,box-shadow .16s ease}.sl-empty-state:hover{transform:translateY(-2px);box-shadow:0 18px 55px #0000001a}@keyframes sl-float{0%{transform:translateY(0)}50%{transform:translateY(-3px)}to{transform:translateY(0)}}.sl-empty-illu{width:72px;height:72px;border-radius:16px;background:#0d6efd14;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#0d6efd;animation:sl-float 3s ease-in-out infinite;transition:transform .18s ease}.sl-empty-state:hover .sl-empty-illu{transform:scale(1.05)}.sl-empty-illu-svg{width:56px;height:56px;display:block}.sl-empty-compact{padding:10px 0!important;border-top:1px #9ec5fe solid;border-bottom:1px #9ec5fe solid;border-radius:7px;background-color:#eaf3ff;color:#0b3d77}.no-course-CTA{margin:0 10px}.sl-empty-title{font-size:1.05rem}.sl-empty-illu--sm{width:52px;height:52px;border-radius:14px}.sl-empty-illu--sm .sl-empty-illu-svg{width:40px;height:40px}@keyframes sl-float-sm{0%{transform:translateY(0)}50%{transform:translateY(-2px)}to{transform:translateY(0)}}.sl-empty-illu--sm{animation:sl-float-sm 3.2s ease-in-out infinite}.sl-progress{height:4px;border-radius:999px;background:#0000000d}.sl-progress-bar{border-radius:999px;background:linear-gradient(90deg,#6366f1,#818cf8)}.sl-access-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-radius:7px;padding:16px 18px;margin:0 0 16px;border:1px solid transparent}.sl-access-banner__title{font-weight:700;margin-bottom:6px}.sl-access-banner__message{line-height:1.45}.sl-access-banner__btn{margin-top:12px;padding:8px 12px;border-radius:7px;font-weight:600;cursor:not-allowed;opacity:.75}.sl-access-banner.past-due{border-color:#f3d08a;background:#fff3cd;color:#3b2f10}.sl-access-banner.past-due .sl-access-banner__btn{border:1px solid #f0b429;background:#fffbeb;color:#7a4b00}.sl-access-banner.read-only{border-color:#f3b0b0;background:#ffe8e8;color:#5a1b1b}.sl-access-banner.read-only .sl-access-banner__btn{border:1px solid #e07a7a;background:#fff5f5;color:#8a2a2a}.sl-access-banner.trial{border-color:#9ec5fe;background:#eaf3ff;color:#0b3d77}.sl-access-banner.trial .sl-access-banner__btn{border:1px solid #5aa0ff;background:#f7fbff;color:#0b4ea2}.modal-header{background-color:#e2e8ef}.brand-img{border-radius:10px}.navbar-brand strong{font-size:1.25rem;line-height:1}.bell-icon{font-size:1.3rem}.sidebar-search{padding:10px 10px 6px;position:relative}.sidebar-search-inputwrap{display:flex;align-items:center;gap:8px}.sidebar-search-icon{opacity:.7}.sidebar-search-input{flex:1}.sidebar-search-dropdown{position:absolute;left:10px;right:10px;top:52px;z-index:50;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:var(--bs-body-bg);box-shadow:0 10px 30px #00000040;overflow:hidden}.sidebar-search-item{width:100%;text-align:left;padding:10px 12px;background:transparent;border:0}.sidebar-search-item:hover{background:#ffffff0f}.sidebar-search-title{font-weight:600}.sidebar-search-sub{font-size:12px;margin-top:2px}.sidebar-search-empty{padding:10px 12px;opacity:.75}.user-menu{background-color:#f1f5f9}.user-menu .dropdown-item:hover,.user-menu .dropdown-item:focus{background-color:#0000000f!important;color:inherit!important;border-radius:6px}.footer-text{font-size:x-small}.sidebar{flex:0 0 240px;width:240px;padding:16px;background-color:#e2e8f0;border-radius:0 0 0 6px;overflow:visible;display:flex;flex-direction:column;min-height:100vh}.sidebar .nav-link{color:#334155;border-radius:6px;padding:8px 12px}.sidebar .nav-link.active,.sidebar .nav-link:hover{background-color:#cbd5e1;color:#0f172a}.sidebar-course-item{all:unset;display:block;width:100%;padding:6px 8px;font-size:.9rem;border-radius:6px;cursor:pointer;color:#333}.sidebar-course-item:hover{background-color:#f1f3f5}.sidebar-course-item.active{background-color:#e7f1ff;color:#0d6efd;font-weight:500}.sidebar-upload{margin-bottom:1rem;width:100%}.upload-dropzone{width:100%;box-sizing:border-box;display:block;border:1px dashed #CBD5E1;border-radius:10px;padding:.75rem;text-align:center;cursor:pointer;background:#f8fafc;transition:background .2s ease,border-color .2s ease}.upload-dropzone:hover{background:#f1f5f9;border-color:#94a3b8}.upload-content i{font-size:1.25rem;display:block;margin-bottom:.25rem}.upload-content span{font-weight:600;font-size:.9rem}.upload-content small{display:block;font-size:.7rem;color:#64748b}.sidebar-search{position:relative;z-index:1;margin:0 -16px 8px;padding:0 16px}.sidebar-search-inputwrap{width:100%}.sidebar-search-input{width:100%;height:40px;padding-left:36px;padding-right:12px;border-radius:6px;border:1px solid #CBD5E1;font-size:.9rem;color:#0f172a;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%2364748B' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px center;background-size:16px}.sidebar-search-input:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px #93c5fd99}.sidebar-search-dropdown{position:absolute;top:calc(100% + 8px);left:16px;right:16px;background:#fff;border-radius:6px;box-shadow:0 18px 40px #0003;padding:6px;max-height:300px;overflow-y:auto;z-index:99999}.sidebar-search-item{width:100%;text-align:left;padding:6px 10px;border-radius:8px;background:transparent;border:none;cursor:pointer;transition:background-color .12s ease,transform .12s ease}.sidebar-search-item:hover{background:#eef2f7;transform:translateY(-1px)}.sidebar-search-item:active{transform:translateY(0)}.sidebar-search-title{font-size:.9rem;font-weight:400;color:#111827;line-height:1.2}.sidebar-search-sub{font-size:.78rem;color:#6b7280;line-height:1.2;margin-top:2px}.sidebar-search-empty{padding:8px 10px;font-size:.85rem;color:#6b7280}.sidebar-search-divider{margin:16px 0 14px;border:none;height:3px;background:linear-gradient(to right,transparent,#94A3B8,transparent)}.sidebar-search-loading{margin-top:6px;font-size:.75rem;color:#64748b}.sidebar-recent{border-top:1px solid rgba(0,0,0,.08)}.sidebar-recent-list{display:flex;flex-direction:column;gap:4px}.sidebar-recent-item{width:100%;text-align:left;border:0;background:transparent;padding:8px 10px;border-radius:10px;color:inherit;display:flex;align-items:center;gap:6px}.sidebar-recent-item i{color:#94a3b8}.sidebar-recent-item:hover{background:#0000000d}.sidebar-recent-text{color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.sidebar-recent-item:hover .sidebar-recent-text,.sidebar-recent-item:hover i{color:#64748b}
