@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');

/* Dashboard Container */
.bl-lms-dashboard {
    max-width: 900px;
    margin: 40px auto;
    padding: 30px;
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #1e293b;
}

.bl-lms-db-title {
    font-size: 26px;
    font-weight: 700;
    margin: 0 0 6px 0;
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.bl-lms-db-subtitle {
    font-size: 14px;
    color: #64748b;
    margin: 0 0 32px 0;
}

/* Alert Boxes */
.bl-lms-alert {
    padding: 16px 20px;
    background: #eff6ff;
    border: 1.5px solid #bfdbfe;
    color: #1e40af;
    border-radius: 12px;
    font-size: 14px;
    margin: 20px 0;
}

.bl-lms-alert a {
    color: #1d4ed8;
    text-decoration: underline;
    font-weight: 600;
}

/* Course Card List */
.bl-lms-courses-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.bl-lms-course-card {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 24px;
    transition: all 0.25s ease;
}

.bl-lms-course-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.03);
    transform: translateY(-2px);
    border-color: #cbd5e1;
}

.bl-lms-course-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
    flex-wrap: wrap;
    gap: 12px;
}

.bl-lms-course-info h3 {
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 6px 0;
    color: #0f172a;
}

.bl-lms-lessons-count {
    font-size: 12px;
    color: #64748b;
}

.bl-lms-progress-badge {
    background: #3b82f6;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 20px;
}

/* Progress Bar */
.bl-lms-progress-bar-wrap {
    height: 8px;
    background: #e2e8f0;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 24px;
}

.bl-lms-progress-bar-fill {
    height: 100%;
    background: linear-gradient(90deg, #3b82f6 0%, #60a5fa 100%);
    border-radius: 4px;
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Accordion Lessons */
.bl-lms-lessons-accordion h4 {
    font-size: 14px;
    font-weight: 600;
    color: #475569;
    margin: 0 0 12px 0;
    border-bottom: 1.5px solid #e2e8f0;
    padding-bottom: 8px;
}

.bl-lms-lessons-accordion ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.bl-lms-lesson-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.bl-lms-lesson-link:hover {
    border-color: #3b82f6;
    background: #f0f7ff;
}

.bl-lms-lesson-title {
    font-size: 14px;
    font-weight: 500;
    color: #334155;
}

.bl-lms-lesson-status {
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 6px;
}

.bl-lms-lesson-status.not-started {
    background: #f1f5f9;
    color: #64748b;
}

.bl-lms-lesson-status.in-progress {
    background: #fef3c7;
    color: #d97706;
}

.bl-lms-lesson-status.completed {
    background: #d1fae5;
    color: #065f46;
}

/* ────────────────────────────────────────────────────────
   [NEW] Premium Study room Full Screen Console UI
   ──────────────────────────────────────────────────────── */
.bl-lms-console-body-class {
    margin: 0 !important;
    padding: 0 !important;
    height: 100vh;
    overflow: hidden;
    background-color: #0f172a; /* dark background for theater focus */
    color: #f1f5f9;
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.bl-lms-console {
    display: flex;
    flex-direction: column;
    height: 100vh;
    width: 100vw;
}

/* Console Header Bar */
.bl-lms-console-header {
    height: 70px;
    background: #1e293b;
    border-bottom: 1px solid #334155;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 24px;
    box-sizing: border-box;
    flex-shrink: 0;
    position: relative;
    z-index: 10;
}

/* Handles top gap when WP admin bar is visible */
body.admin-bar .bl-lms-console-header {
    margin-top: 32px;
}

.bl-lms-header-left {
    display: flex;
    align-items: center;
    gap: 20px;
}

.bl-lms-back-db-btn {
    background: #334155;
    color: #f1f5f9 !important;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 8px;
    transition: background 0.2s;
}

.bl-lms-back-db-btn:hover {
    background: #475569;
}

.bl-lms-breadcrumbs {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
}

.bl-course-tag {
    color: #94a3b8;
    font-weight: 500;
}

.bl-separator {
    color: #475569;
}

.bl-lesson-tag {
    color: #ffffff;
    font-weight: 700;
}

/* Header Progress Bar */
.bl-lms-header-right {
    display: flex;
    align-items: center;
}

.bl-lms-header-progress {
    display: flex;
    align-items: center;
    gap: 12px;
}

.bl-prog-text {
    font-size: 13px;
    color: #94a3b8;
}

.bl-prog-text strong {
    color: #3b82f6;
}

.bl-prog-bar-wrap {
    width: 120px;
    height: 6px;
    background: #334155;
    border-radius: 3px;
    overflow: hidden;
}

.bl-prog-bar-fill {
    height: 100%;
    background: #3b82f6;
    border-radius: 3px;
}

/* 2. Layout Splits: Content & Sidebar */
.bl-lms-console-main-container {
    display: flex;
    flex: 1;
    height: calc(100vh - 70px);
    overflow: hidden;
    box-sizing: border-box;
}

body.admin-bar .bl-lms-console-main-container {
    height: calc(100vh - 102px); /* 70px + 32px */
}

/* Left Content Column */
.bl-lms-console-content {
    flex: 1;
    overflow-y: auto;
    background-color: #0f172a;
    padding: 24px;
    box-sizing: border-box;
}

/* Center Video Area */
.bl-lms-video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    background: #000;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
    margin-bottom: 24px;
}

.bl-lms-video-container iframe,
.bl-lms-video-container video,
.bl-lms-video-container #bl-lms-yt-player {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}

.bl-lms-no-video {
    background: #1e293b;
    border-radius: 12px;
    padding: 100px 0;
    text-align: center;
    color: #94a3b8;
    font-size: 15px;
    margin-bottom: 24px;
}

/* Tabs Panel */
.bl-lms-console-tabs-wrap {
    background: #1e293b;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #334155;
    margin-bottom: 30px;
}

.bl-lms-console-tabs {
    display: flex;
    background: #0f172a;
    border-bottom: 1px solid #334155;
}

.bl-console-tab-btn {
    padding: 14px 20px;
    border: none;
    background: none;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    color: #94a3b8;
    transition: all 0.2s;
}

.bl-console-tab-btn.active {
    color: #ffffff;
    background: #1e293b;
    border-bottom: 2px solid #3b82f6;
}

.bl-lms-console-tab-content {
    padding: 24px;
}

.bl-console-panel {
    display: none;
}

.bl-console-panel.active {
    display: block;
}

.bl-console-panel h4 {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 16px 0;
    color: #ffffff;
}

/* Notes Textarea styling */
.bl-notes-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.bl-notes-header h4 {
    margin: 0;
}

.bl-save-status {
    font-size: 12px;
    color: #64748b;
    transition: color 0.3s;
}

.bl-save-status.bl-saving-active {
    color: #f59e0b;
}

.bl-save-status.bl-save-success {
    color: #10b981;
}

#bl-lms-note-textarea {
    width: 100%;
    background: #0f172a;
    border: 1.5px solid #334155;
    border-radius: 8px;
    color: #f1f5f9;
    padding: 16px;
    font-size: 14px;
    line-height: 1.6;
    outline: none;
    resize: vertical;
    font-family: inherit;
    transition: border-color 0.2s;
}

#bl-lms-note-textarea:focus {
    border-color: #3b82f6;
}

.bl-lecture-text-content {
    font-size: 14px;
    line-height: 1.7;
    color: #cbd5e1;
}

/* Right Sidebar Playlist Column */
.bl-lms-console-sidebar {
    width: 320px;
    flex-shrink: 0;
    background: #1e293b;
    border-left: 1px solid #334155;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-sizing: border-box;
}

.bl-sidebar-title {
    padding: 20px 24px;
    border-bottom: 1px solid #334155;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.bl-sidebar-title h3 {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    color: #ffffff;
}

.bl-lessons-qty {
    font-size: 12px;
    color: #94a3b8;
    background: #334155;
    padding: 3px 8px;
    border-radius: 12px;
}

/* Playlist Scroll */
.bl-sidebar-playlist {
    flex: 1;
    overflow-y: auto;
}

.bl-sidebar-playlist ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bl-sidebar-playlist li {
    margin: 0;
    border-bottom: 1px solid #334155;
    transition: background 0.2s;
}

.bl-sidebar-playlist li:hover {
    background: #273549;
}

.bl-sidebar-playlist li.bl-current-playing {
    background: #0f172a;
}

.bl-playlist-item-link {
    display: flex;
    align-items: center;
    padding: 16px 20px;
    text-decoration: none !important;
    gap: 12px;
    position: relative;
}

.bl-playlist-status {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: bold;
    flex-shrink: 0;
}

.bl-playlist-status.not-started {
    background: #334155;
    color: #94a3b8;
}

.bl-playlist-status.in-progress {
    background: #4d3e1d;
    color: #f59e0b;
}

.bl-playlist-status.completed {
    background: #14532d;
    color: #10b981;
}

.bl-playlist-info {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.bl-playlist-num {
    font-size: 11px;
    color: #64748b;
    margin-bottom: 2px;
}

.bl-playlist-title {
    font-size: 13.5px;
    font-weight: 500;
    color: #cbd5e1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bl-sidebar-playlist li.bl-current-playing .bl-playlist-title {
    color: #ffffff;
    font-weight: 700;
}

.bl-playing-badge {
    background: #3b82f6;
    color: #ffffff;
    font-size: 9px;
    font-weight: bold;
    padding: 2px 6px;
    border-radius: 4px;
    text-transform: uppercase;
    flex-shrink: 0;
}

/* Custom Scrollbar for dark theme list */
.bl-sidebar-playlist::-webkit-scrollbar {
    width: 6px;
}
.bl-sidebar-playlist::-webkit-scrollbar-track {
    background: #1e293b;
}
.bl-sidebar-playlist::-webkit-scrollbar-thumb {
    background: #475569;
    border-radius: 3px;
}

/* Responsive adjustments */
@media (max-width: 800px) {
    .bl-lms-console-main-container {
        flex-direction: column;
        height: auto;
        overflow: visible;
    }
    .bl-lms-console-sidebar {
        width: 100%;
        border-left: none;
        border-top: 1px solid #334155;
        height: 400px;
    }
    .bl-lms-console-content {
        overflow-y: visible;
        flex: none;
    }
}

/* ────────────────────────────────────────────────────────
   [NEW] Premium Course Catalog & Filters UI
   ──────────────────────────────────────────────────────── */
.bl-course-catalog-wrap {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #1e293b;
}

.bl-catalog-header {
    text-align: center;
    margin-bottom: 40px;
}

.bl-catalog-header h2 {
    font-size: 32px;
    font-weight: 800;
    background: linear-gradient(135deg, #4f46e5 0%, #3b82f6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0 0 10px 0;
}

.bl-catalog-header p {
    font-size: 15px;
    color: #64748b;
    margin: 0;
}

/* Filter Form - Glassmorphism style */
.bl-catalog-filter-form {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(226, 232, 240, 0.8);
    border-radius: 20px;
    padding: 24px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
    margin-bottom: 40px;
}

.bl-filter-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    align-items: flex-end;
}

.bl-filter-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.bl-filter-group label {
    font-size: 13px;
    font-weight: 700;
    color: #475569;
}

.bl-filter-group select,
.bl-search-input-wrap input {
    width: 100%;
    padding: 12px 16px;
    border: 1.5px solid #cbd5e1;
    border-radius: 10px;
    background: #ffffff;
    font-size: 14px;
    outline: none;
    transition: all 0.2s;
    box-sizing: border-box;
    color: #334155;
}

.bl-filter-group select:focus,
.bl-search-input-wrap input:focus {
    border-color: #4f46e5;
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
}

.bl-search-input-wrap {
    display: flex;
    gap: 8px;
}

.bl-filter-submit-btn {
    background: #4f46e5;
    color: #ffffff;
    border: none;
    padding: 12px 20px;
    font-weight: 700;
    border-radius: 10px;
    cursor: pointer;
    font-size: 14px;
    transition: background 0.2s;
    white-space: nowrap;
}

.bl-filter-submit-btn:hover {
    background: #4338ca;
}

/* Empty Catalog */
.bl-catalog-empty {
    text-align: center;
    padding: 80px 20px;
    background: #f8fafc;
    border-radius: 20px;
    border: 2px dashed #e2e8f0;
}

.bl-catalog-empty p {
    font-size: 16px;
    color: #64748b;
    margin-bottom: 20px;
}

/* Course Grid and Cards - Premium Card styling */
.bl-catalog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 30px;
}

.bl-catalog-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.02);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
}

.bl-catalog-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 35px rgba(79, 70, 229, 0.08);
    border-color: rgba(79, 70, 229, 0.3);
}

.bl-catalog-card-image {
    height: 180px;
    background-size: cover;
    background-position: center;
    position: relative;
}

.bl-catalog-card-badge {
    position: absolute;
    bottom: 15px;
    right: 15px;
    background: rgba(15, 23, 42, 0.75);
    backdrop-filter: blur(4px);
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 6px;
}

.bl-catalog-card-content {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.bl-catalog-card-title {
    font-size: 18px;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 10px 0;
    line-height: 1.4;
}

.bl-catalog-card-excerpt {
    font-size: 13.5px;
    color: #64748b;
    line-height: 1.6;
    margin: 0 0 20px 0;
}

/* Badges Tags */
.bl-catalog-card-tags {
    margin-bottom: 24px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.bl-catalog-card-tags span {
    font-size: 11px;
    font-weight: 700;
    padding: 4px 8px;
    border-radius: 6px;
}

.bl-catalog-card-tags .tag-type {
    background: #e0e7ff;
    color: #4f46e5;
}

.bl-catalog-card-tags .tag-year {
    background: #ecfdf5;
    color: #059669;
}

.bl-catalog-card-tags .tag-subject {
    background: #fffbeb;
    color: #d97706;
}

/* Button stylings */
.bl-catalog-card-footer {
    margin-top: auto;
}

.bl-catalog-action-btn {
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px;
    font-size: 14px;
    font-weight: 700;
    border-radius: 12px;
    text-decoration: none !important;
    box-sizing: border-box;
    transition: all 0.2s;
}

.bl-btn-primary {
    background: #4f46e5;
    color: #ffffff !important;
}

.bl-btn-primary:hover {
    background: #4338ca;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.25);
}

.bl-btn-secondary {
    background: #f1f5f9;
    color: #475569 !important;
    border: 1px solid #e2e8f0;
}

.bl-btn-secondary:hover {
    background: #e2e8f0;
    color: #1e293b !important;
}

.bl-catalog-action-btn.purchase {
    background: linear-gradient(135deg, #4f46e5 0%, #3b82f6 100%);
    color: #ffffff !important;
    border: none;
}

.bl-catalog-action-btn.purchase:hover {
    box-shadow: 0 4px 15px rgba(79, 70, 229, 0.3);
    opacity: 0.95;
}

.bl-btn-disabled {
    background: #f1f5f9;
    color: #94a3b8 !important;
    cursor: not-allowed;
    border: 1px solid #e2e8f0;
}

/* Protected course material dock beside the lesson player. */
.bl-lms-material-dock { margin:18px 0 0; color:#e8edf3; background:#101a29; border:1px solid #2a394d; border-top:3px solid #d7b66d; font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.bl-lms-material-dock__bar { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:15px 17px; }
.bl-lms-material-dock__bar>div:first-child span,.bl-lms-material-dock__bar>div:first-child strong{display:block}.bl-lms-material-dock__bar>div:first-child span{color:#d7b66d;font-size:8px;font-weight:700;letter-spacing:.14em}.bl-lms-material-dock__bar>div:first-child strong{margin-top:4px;font-size:13px}.bl-lms-material-dock__bar>div:last-child{display:flex;gap:8px}.bl-lms-material-dock select,.bl-lms-material-dock button{min-height:39px;padding:0 12px;border:1px solid #405069;color:#fff;background:#19263a;font:inherit;font-size:11px}.bl-lms-material-dock button{color:#101820;background:#d7b66d;border-color:#d7b66d;font-weight:700;cursor:pointer}.bl-lms-material-dock__viewer{height:min(72vh,760px);border-top:1px solid #2a394d}.bl-lms-material-dock__viewer iframe{width:100%;height:100%;border:0;background:#fff}
.bl-lms-material-dock__viewer[hidden]{display:none}.bl-lms-material-dock.is-open{box-shadow:0 18px 48px rgb(0 0 0 / 25%)}
@media(max-width:700px){.bl-lms-material-dock__bar{align-items:flex-start;flex-direction:column}.bl-lms-material-dock__bar>div:last-child{width:100%;flex-wrap:wrap}.bl-lms-material-dock select{max-width:100%;flex:1}.bl-lms-material-dock__viewer{height:68vh}}

/* Public demo lesson mode */
.bl-demo-mode-badge {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    color: #0b1f3a;
    background: #e8bb5a;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
}

.bl-demo-header-cta {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    min-height: 40px;
    padding: 0 15px;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.25);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none !important;
}

.bl-demo-header-cta span { color: #e8bb5a; font-size: 17px; }
.bl-demo-header-cta:hover { background: rgba(255,255,255,.08); }

.bl-demo-notice {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 30px;
    margin: 22px 0 0;
    padding: 23px 25px;
    color: #fff;
    background: #0b1f3a;
    border-left: 4px solid #e8bb5a;
}

.bl-demo-notice p,
.bl-demo-description > p { margin: 0 0 7px; color: #76aef0; font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.bl-demo-notice h2 { margin: 0; color: #fff; font-size: 19px; font-weight: 700; letter-spacing: -.025em; line-height: 1.35; }
.bl-demo-notice div > span { display: block; margin-top: 6px; color: #aebdcd; font-size: 12px; line-height: 1.6; }
.bl-demo-notice > a { display: inline-flex; align-items: center; gap: 18px; min-height: 46px; padding: 0 16px; color: #0b1f3a !important; background: #fff; font-size: 12px; font-weight: 800; text-decoration: none !important; white-space: nowrap; }
.bl-demo-notice > a span { color: #075fc6; font-size: 17px; }

.bl-demo-description { margin-top: 20px; padding: 24px 25px; color: #cbd5e1; background: #111c2e; border-top: 1px solid #26354a; }
.bl-demo-description h3 { margin: 0 0 16px; color: #fff; font-size: 21px; font-weight: 700; letter-spacing: -.025em; }
.bl-demo-description div { color: #aeb8c5; font-size: 13px; line-height: 1.75; }
.bl-demo-description div > *:first-child { margin-top: 0; }
.bl-demo-description div > *:last-child { margin-bottom: 0; }
.bl-sidebar-playlist li.bl-demo-locked { opacity: .55; }
.bl-sidebar-playlist li.bl-demo-locked:hover { background: transparent; }
.bl-lms-demo-body .bl-lms-video-container { border-bottom: 3px solid #e8bb5a; }

@media (max-width: 760px) {
    .bl-demo-header-cta { min-height: 36px; padding: 0 11px; font-size: 10px; }
    .bl-demo-notice { grid-template-columns: 1fr; gap: 17px; padding: 20px; }
    .bl-demo-notice > a { justify-content: space-between; white-space: normal; }
    .bl-demo-description { padding: 21px 20px; }
}

/* ────────────────────────────────────────────────────────
   [NEW] Study Room Console Navigation & Buttons (LearnDash style)
   ──────────────────────────────────────────────────────── */
.bl-lms-console-navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 24px;
    margin-bottom: 24px;
    padding: 16px 24px;
    background: #1e293b;
    border-radius: 12px;
    border: 1px solid #334155;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
    box-sizing: border-box;
}

.bl-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 20px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none !important;
    transition: all 0.2s ease;
    border: none;
    box-sizing: border-box;
}

.bl-btn-primary {
    background: #4f46e5;
    color: #ffffff !important;
}

.bl-btn-primary:hover:not(:disabled) {
    background: #4338ca;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.2);
}

.bl-btn-secondary {
    background: #334155;
    color: #f1f5f9 !important;
    border: 1px solid #475569;
}

.bl-btn-secondary:hover {
    background: #475569;
    color: #ffffff !important;
}

.bl-btn-disabled {
    background: #1e293b !important;
    color: #64748b !important;
    border: 1px solid #334155 !important;
    cursor: not-allowed;
}

/* 2.4.2 playback quota, speed and seek controls */
.bl-lms-player-tools{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:22px;align-items:center;padding:16px 18px;color:#d9dee7;background:#111722;border:1px solid #2b3442;border-top:0}.bl-lms-player-actions,.bl-lms-seek-controls,.bl-lms-rate-controls{display:flex;align-items:center;gap:7px}.bl-lms-player-actions{justify-content:flex-end;flex-wrap:wrap}.bl-lms-player-tools button{min-height:34px;padding:0 11px;color:#c8d0dc;background:#1a2230;border:1px solid #354052;border-radius:4px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.bl-lms-player-tools button:hover,.bl-lms-player-tools button:focus-visible{color:#fff;border-color:#d9b85f;outline:0}.bl-lms-player-tools button.is-active{color:#111722;background:#d9b85f;border-color:#d9b85f}.bl-lms-player-tools button:disabled{color:#606b79;background:#141a24;border-color:#242d3a;cursor:not-allowed}.bl-lms-rate-controls>span{margin-right:3px;color:#8390a1;font-size:11px;letter-spacing:.06em}.bl-lms-playback-meter{display:grid;grid-template-columns:1fr auto;gap:7px 12px;align-items:center}.bl-lms-playback-meter>div{display:flex;align-items:center;justify-content:space-between;gap:14px}.bl-lms-playback-meter span,.bl-lms-playback-meter small{color:#8591a1;font-size:11px}.bl-lms-playback-meter strong{color:#f3f5f8;font-size:12px}.bl-lms-playback-meter i{grid-column:1/-1;display:block;height:4px;overflow:hidden;background:#2a3340}.bl-lms-playback-meter i b{display:block;height:100%;background:#d9b85f;transition:width .3s ease}.bl-lms-playback-meter small{grid-column:2;grid-row:2;white-space:nowrap}.bl-lms-video-container{position:relative}.bl-lms-video-container.is-playback-locked video,.bl-lms-video-container.is-playback-locked iframe,.bl-lms-video-container.is-playback-locked>div:first-child{filter:brightness(.22);pointer-events:none}.bl-lms-video-lock{position:absolute;z-index:8;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px;text-align:center;color:#fff;background:rgb(5 8 13 / 78%)}.bl-lms-video-lock span,.bl-lms-playback-exhausted>span{color:#d9b85f;font-size:11px;font-weight:700;letter-spacing:.16em}.bl-lms-video-lock strong{margin-top:10px;font-size:22px}.bl-lms-video-lock p{max-width:520px;margin:9px 0 0;color:#b3bdc9;font-size:13px;line-height:1.65}.bl-lms-playback-exhausted{display:flex;min-height:430px;align-items:center;justify-content:center;flex-direction:column;padding:55px;text-align:center;color:#eef1f5;background:radial-gradient(circle at 50% 20%,#202a38 0,#0d121a 58%);border:1px solid #2a3442}.bl-lms-playback-exhausted h2{margin:14px 0 0;color:#fff;font-size:30px}.bl-lms-playback-exhausted p{max-width:620px;margin:16px auto 0;color:#aeb8c6;line-height:1.75}.bl-lms-playback-exhausted a{margin-top:27px;padding:13px 20px;color:#111722;background:#d9b85f;font-weight:800;text-decoration:none}
@media(max-width:900px){.bl-lms-player-tools{grid-template-columns:1fr}.bl-lms-player-actions{justify-content:flex-start}.bl-lms-playback-meter small{grid-column:1/-1;grid-row:auto}.bl-lms-playback-exhausted{min-height:360px;padding:38px 22px}.bl-lms-playback-exhausted h2{font-size:24px}}
@media(max-width:560px){.bl-lms-player-tools{padding:14px}.bl-lms-player-actions{align-items:flex-start;flex-direction:column}.bl-lms-rate-controls{width:100%;overflow-x:auto;padding-bottom:3px}.bl-lms-player-tools button{flex:0 0 auto}.bl-lms-seek-controls{width:100%}.bl-lms-seek-controls button{flex:1}}
