.abslms-my-courses,
.abslms-quiz { font-family: inherit; max-width: 100%; margin: 0; }
.abslms-course-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.abslms-course-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 24px; box-shadow: 0 4px 12px rgba(15,23,42,.06); }
.abslms-course-card.is-expired { opacity: .7; }
.abslms-btn { display: inline-block; background: #2563eb; color: #fff !important; padding: 10px 18px; border-radius: 8px; text-decoration: none; border: none; cursor: pointer; font-weight: 600; }
.abslms-btn:hover { background: #1d4ed8; }
.abslms-badge.expired { background: #fee2e2; color: #b91c1c; padding: 4px 10px; border-radius: 999px; font-size: 12px; }
.abslms-course-player { font-family: inherit; width: 100%; max-width: 100%; margin: 0; box-sizing: border-box; }
.abslms-course-header { background: linear-gradient(135deg, #1e40af 0%, #2563eb 55%, #3b82f6 100%); color: #fff; border-radius: 12px; padding: 24px 28px; margin-bottom: 20px; box-shadow: 0 6px 20px rgba(37,99,235,.2); }
.abslms-course-header h2 { margin: 0 0 8px; font-size: 1.65rem; line-height: 1.25; color: #fff; }
.abslms-enrollment-info { margin: 0; font-size: 14px; opacity: .92; }
.abslms-enrollment-info--preview { opacity: .95; }
.abslms-course-header .abslms-course-cta { margin-top: 14px; }
.abslms-course-header .abslms-course-cta .abslms-btn { margin-right: 8px; }
.abslms-course-header .abslms-btn-outline { background: transparent; border: 2px solid rgba(255,255,255,.85); color: #fff !important; }
.abslms-course-header .abslms-btn-outline:hover { background: rgba(255,255,255,.12); }
.abslms-course-overview { line-height: 1.7; color: #334155; }
.abslms-course-overview > :first-child { margin-top: 0; }
.abslms-item-title { flex: 1; min-width: 0; text-align: left; }
.abslms-item-badge { flex-shrink: 0; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; padding: 2px 8px; border-radius: 999px; }
.abslms-item-badge--free { background: #dcfce7; color: #15803d; }
.abslms-curriculum-locked { display: flex; align-items: center; gap: 8px; width: 100%; background: #f1f5f9; border: 1px solid #e2e8f0; border-radius: 8px; padding: 10px 12px; color: #94a3b8; cursor: pointer; text-align: left; font-size: 14px; }
.abslms-curriculum-locked:hover { border-color: #cbd5e1; background: #e2e8f0; }
.abslms-curriculum-locked--login { color: #64748b; }
.abslms-item-icon--lock { flex-shrink: 0; }
.abslms-daily-plans-note { margin: 0 0 12px; font-size: 13px; color: #64748b; }
.abslms-lesson-content .abslms-course-cta { margin-top: 12px; }
.abslms-course-layout { position: relative; display: grid; grid-template-columns: minmax(280px, 320px) minmax(0, 1fr); gap: 0; margin-top: 0; min-height: 480px; align-items: stretch; }
.abslms-curriculum { display: flex; flex-direction: column; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 12px 0 0 12px; overflow: hidden; }
.abslms-curriculum-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; background: #fff; border-bottom: 1px solid #e2e8f0; flex-shrink: 0; }
.abslms-curriculum-head h3 { margin: 0; font-size: 15px; font-weight: 700; color: #0f172a; }
.abslms-curriculum-body { flex: 1; overflow-y: auto; padding: 16px; max-height: calc(100vh - 220px); min-height: 200px; }
.abslms-curriculum-body .abslms-section > h3 { margin: 0 0 10px; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #64748b; }
.abslms-curriculum-body .abslms-section { margin-bottom: 18px; }
.abslms-curriculum-body .abslms-section:last-child { margin-bottom: 0; }
.abslms-subject-block { margin-bottom: 20px; padding-bottom: 16px; border-bottom: 1px solid #e2e8f0; }
.abslms-subject-block:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
.abslms-subject-title { margin: 0 0 12px; font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: #2563eb; }
.abslms-subject-block .abslms-section > h3 { font-size: 12px; color: #64748b; }
.abslms-course-landing-subject { margin-bottom: 28px; }
.abslms-course-landing-subject:last-child { margin-bottom: 0; }
.abslms-course-landing-subject__head h3 { margin: 0 0 14px; font-size: 1.2rem; font-weight: 800; color: #1e40af; }
.abslms-course-subjects-page { max-width: 100%; margin: 0; padding: 0 0 24px; }
.abslms-course-player--subjects .abslms-course-header { margin-bottom: 8px; }
.abslms-subject-back { margin: 0 0 12px; }
.abslms-subject-back__link { display: inline-flex; align-items: center; gap: 6px; color: #2563eb; font-weight: 600; text-decoration: none; font-size: 14px; }
.abslms-subject-back__link:hover { text-decoration: underline; }
.abslms-subject-landing-title { margin: 0; font-size: clamp(1.5rem, 3vw, 2rem); color: #0f172a; font-weight: 800; }
.abslms-subject-landing-body { padding-top: 8px; }
.abslms-subject-landing-hero .abslms-course-landing-section__head { margin-bottom: 0; }
.abslms-course-player--subject { max-width: 100%; margin: 0; padding: 0 0 32px; box-sizing: border-box; }
.abslms-subject-header .abslms-subject-back { margin: 0 0 10px; }
.abslms-subject-header .abslms-subject-back__link--light { color: rgba(255,255,255,.92); }
.abslms-subject-header .abslms-subject-back__link--light:hover { color: #fff; }
.abslms-subject-layout { border-radius: 12px; overflow: hidden; }
.abslms-course-subject-view { margin-top: 4px; }
.abslms-subject-back__link { background: none; border: none; padding: 0; cursor: pointer; font: inherit; text-decoration: none; }
button.abslms-subject-back__link:hover { text-decoration: underline; }
.abslms-subject-layout--responsive .abslms-subject-curriculum { position: relative; }
.abslms-curriculum-toggle { display: none; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid #e2e8f0; border-radius: 8px; background: #f8fafc; color: #475569; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; cursor: pointer; }
.abslms-curriculum-toggle__label { line-height: 1; }
/* Browse mode: centered curriculum only */
.abslms-subject-layout.abslms-subject-layout--browse { display: block; max-width: 820px; margin: 0 auto; box-shadow: 0 8px 32px rgba(15,23,42,.08); border: 1px solid #e2e8f0; }
.abslms-subject-layout--browse .abslms-subject-content-panel { display: none !important; }
.abslms-subject-layout--browse .abslms-subject-curriculum { border-radius: 12px; border: none; width: 100%; }
.abslms-subject-layout--browse .abslms-curriculum-head:not(.abslms-curriculum-head--subject) { padding: 20px 24px; background: linear-gradient(135deg, #f8fafc 0%, #fff 100%); border-bottom: 1px solid #e2e8f0; }
.abslms-subject-layout--browse .abslms-curriculum-body { max-height: none; padding: 20px 24px 28px; }
.abslms-subject-layout--browse .abslms-curriculum-toggle { display: none; }
.abslms-subject-layout--browse .abslms-lesson-link,
.abslms-subject-layout--browse .abslms-quiz-link,
.abslms-subject-layout--browse .abslms-curriculum-locked { padding: 12px 14px; font-size: 14px; }
/* Content mode: sidebar + panel */
.abslms-subject-layout.is-content-active { display: grid; grid-template-columns: minmax(280px, 320px) minmax(0, 1fr); gap: 0; max-width: none; margin: 0; box-shadow: 0 8px 32px rgba(15,23,42,.08); border: 1px solid #e2e8f0; }
.abslms-subject-layout.is-content-active .abslms-subject-content-panel { display: flex; flex-direction: column; min-height: 420px; }
.abslms-subject-content-toolbar { flex-shrink: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; padding-bottom: 16px; margin-bottom: 8px; border-bottom: 1px solid #e2e8f0; }
.abslms-subject-content-back,
.abslms-subject-content-subjects { background: none; border: none; padding: 0; color: #2563eb; font-weight: 600; font-size: 14px; cursor: pointer; font-family: inherit; }
.abslms-subject-content-back:hover,
.abslms-subject-content-subjects:hover { text-decoration: underline; }
.abslms-subject-content-subjects { display: none; }
.abslms-subject-content-body { flex: 1; min-width: 0; }
.abslms-subject-content-panel .abslms-exam { max-width: none; }
.abslms-subject-content-panel .abslms-lesson-view { max-width: 900px; margin: 0 auto; }
.abslms-subject-content { display: flex; flex-direction: column; }
.abslms-lesson-content .abslms-lesson-view { max-width: 820px; }
.abslms-lesson-content .abslms-lesson-view h3 { margin: 0 0 20px; padding-bottom: 16px; border-bottom: 1px solid #e2e8f0; font-size: 1.5rem; line-height: 1.3; }
.abslms-lesson-content .abslms-lesson-view > :last-child { margin-bottom: 0; }
.abslms-lesson-content .abslms-exam { padding: 0; }
.abslms-curriculum-locked.is-disabled { cursor: default; pointer-events: none; opacity: .88; }
.abslms-plan-block { margin-bottom: 12px; border: 1px solid #e2e8f0; border-radius: 10px; background: #fff; overflow: hidden; }
.abslms-plan-block summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 14px; cursor: pointer; list-style: none; font-size: 14px; }
.abslms-plan-block summary::-webkit-details-marker { display: none; }
.abslms-plan-block summary strong { color: #0f172a; font-weight: 700; }
.abslms-plan-progress { font-size: 12px; color: #64748b; font-weight: 600; white-space: nowrap; }
.abslms-plan-quiz-list { list-style: none; margin: 0; padding: 8px 10px 12px; border-top: 1px solid #e2e8f0; }
.abslms-plan-quiz-item { margin: 4px 0; }
.abslms-plan-quiz-item .abslms-quiz-link,
.abslms-plan-quiz-item .abslms-curriculum-locked,
.abslms-plan-quiz-locked { display: flex; align-items: center; gap: 8px; width: 100%; padding: 9px 10px; border-radius: 8px; font-size: 13px; text-align: left; box-sizing: border-box; }
.abslms-plan-quiz-locked { background: #f8fafc; border: 1px solid #e2e8f0; color: #94a3b8; }
.abslms-plan-day { font-weight: 700; min-width: 48px; color: #475569; flex-shrink: 0; }
.abslms-plan-title { flex: 1; min-width: 0; }
.abslms-plan-status { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; flex-shrink: 0; }
.abslms-plan-status.unlocked { color: #15803d; }
.abslms-plan-status.locked { color: #94a3b8; }
@media (max-width: 991px) {
	.abslms-course-player--subject,
	.abslms-course-player--course-page .abslms-course-cards-only { padding: 0 0 24px; }
	.abslms-subject-layout--browse { max-width: 100%; }
	.abslms-subject-layout--browse .abslms-curriculum-head { padding: 16px 18px; }
	.abslms-subject-layout--browse .abslms-curriculum-body { padding: 16px 18px 22px; }
	.abslms-subject-layout.is-content-active { grid-template-columns: 1fr; gap: 0; overflow: visible; }
	.abslms-subject-layout.is-content-active .abslms-subject-curriculum { display: none; }
	.abslms-subject-layout.is-content-active .abslms-subject-content-panel { border-radius: 12px; border: 1px solid #e2e8f0; min-height: 360px; padding-top: 0; }
	.abslms-subject-layout.is-content-active .abslms-subject-content-subjects { display: inline-flex; align-items: center; }
	.abslms-subject-layout.is-content-active .abslms-subject-content-toolbar { position: sticky; top: 0; z-index: 30; background: #fff; padding: 12px 14px; margin: 0 0 8px; border-bottom: 1px solid #e2e8f0; }
	.abslms-subject-curriculum.is-collapsed .abslms-curriculum-body-wrap { display: none; }
	.abslms-lesson-content .abslms-lesson-view h3 { font-size: 1.25rem; }
}
@media (max-width: 640px) {
	.abslms-curriculum-head--subject .abslms-curriculum-head__main { padding: 14px 16px 12px; }
	.abslms-subject-content-panel { padding: 18px 14px; min-height: 300px; }
	.abslms-free-source-pdf-frame { min-height: 360px; height: 55vh; }
}
.abslms-curriculum ul { list-style: none; margin: 0; padding: 0; }
.abslms-curriculum li { margin: 4px 0; }
.abslms-daily-plans { margin-top: 20px; padding-top: 16px; border-top: 1px solid #e2e8f0; }
.abslms-daily-plans > h3 { margin: 0 0 12px; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #64748b; }
.abslms-lesson-content { background: #fff; border: 1px solid #e2e8f0; border-radius: 0 12px 12px 0; padding: 28px 32px; min-height: 480px; min-width: 0; box-sizing: border-box; }
.abslms-lesson-content .abslms-placeholder { color: #94a3b8; margin: 0; font-size: 15px; text-align: center; padding: 60px 20px; }
.abslms-muted { color: #94a3b8; font-size: 14px; }
.abslms-lesson-view h3 { margin: 0 0 16px; font-size: 1.35rem; color: #0f172a; }
@media (max-width: 991px) {
	.abslms-course-layout { grid-template-columns: 1fr; gap: 16px; }
	.abslms-curriculum { border-radius: 12px; }
	.abslms-curriculum-body { max-height: 320px; }
	.abslms-lesson-content { border-radius: 12px; min-height: 360px; padding: 20px 18px; }
}
@media (max-width: 768px) {
	.abslms-lesson-content { padding: 18px 16px; }
}
.abslms-embed { margin-bottom: 20px; position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.abslms-embed iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.abslms-pricing-tiers { margin: 20px 0 24px; }
.abslms-pricing-heading { margin: 0 0 12px; font-size: 1.1em; }
.abslms-lms-product .summary > .price,
.abslms-lms-product p.price,
.abslms-lms-product .woocommerce-Price-amount:not(.abslms-tier-price .woocommerce-Price-amount) { display: none !important; }
.abslms-lms-product .abslms-tier-price .woocommerce-Price-amount { display: inline !important; }
.abslms-tier-option { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 2px solid #e2e8f0; border-radius: 8px; margin-bottom: 8px; cursor: pointer; }
.abslms-tier-option:has(input:checked) { border-color: #2563eb; background: #eff6ff; }
.abslms-tier-info { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.abslms-tier-label { font-weight: 600; color: #1e293b; line-height: 1.3; }
.abslms-tier-validity { font-size: 13px; color: #64748b; line-height: 1.3; }
.abslms-tier-price { flex-shrink: 0; margin-left: auto; text-align: right; white-space: nowrap; }
.abslms-tier-price del { color: #94a3b8; margin-right: 8px; }
.abslms-question { margin-bottom: 24px; padding-bottom: 24px; border-bottom: 1px solid #e2e8f0; }
.abslms-option { display: block; padding: 10px 12px; margin: 6px 0; border: 1px solid #e2e8f0; border-radius: 8px; cursor: pointer; }
.abslms-option.correct { background: #dcfce7; border-color: #22c55e; }
.abslms-option.wrong { background: #fee2e2; border-color: #ef4444; }
.abslms-explanation { margin-top: 10px; padding: 12px; background: #f1f5f9; border-radius: 8px; font-size: 14px; }
.abslms-notice { padding: 12px 16px; background: #fef3c7; border-radius: 8px; color: #92400e; }
.abslms-loading { padding: 40px; text-align: center; color: #64748b; font-size: 15px; }
.abslms-lesson-link,
.abslms-quiz-link { display: flex; align-items: center; gap: 8px; width: 100%; background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; padding: 10px 12px; color: #1e293b; cursor: pointer; text-align: left; font-size: 14px; transition: border-color .15s, background .15s; }
.abslms-lesson-link:hover,
.abslms-quiz-link:hover { border-color: #2563eb; background: #eff6ff; }
.abslms-quiz-link.is-active,
.abslms-lesson-link.is-active { border-color: #2563eb; background: #dbeafe; font-weight: 600; }
.abslms-item-icon { flex-shrink: 0; }
.abslms-lesson-content .abslms-exam { max-width: none; width: 100%; }
.single-abslms_course .entry-content > .abslms-course-player,
.single-abslms_course .abslms-course-player { width: 100%; max-width: 100%; }
.abslms-exam-header { margin-bottom: 24px; padding-bottom: 20px; border-bottom: 2px solid #e2e8f0; }
.abslms-exam-header-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; flex-wrap: wrap; gap: 8px; }
.abslms-exam-badge { background: #2563eb; color: #fff; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; padding: 4px 10px; border-radius: 4px; }
.abslms-back-to-course { background: none; border: none; color: #2563eb; cursor: pointer; font-size: 14px; padding: 0; }
.abslms-exam-title { margin: 0 0 12px; font-size: 1.5rem; }
.abslms-exam-meta { list-style: none; margin: 0; padding: 0; display: flex; gap: 20px; flex-wrap: wrap; color: #64748b; font-size: 14px; }
.abslms-exam-meta strong { color: #1e293b; }
.abslms-exam-warning { color: #b45309; }
.abslms-exam-form fieldset.abslms-question { border: 1px solid #e2e8f0; border-radius: 10px; padding: 20px; margin: 0 0 16px; background: #fafbfc; }
.abslms-exam-form fieldset.abslms-question legend { padding: 0 4px; margin-bottom: 12px; width: 100%; }
.abslms-q-num { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; height: 28px; background: #2563eb; color: #fff; border-radius: 50%; font-size: 13px; font-weight: 700; margin-right: 10px; flex-shrink: 0; }
.abslms-q-body { display: inline; font-weight: 600; color: #1e293b; line-height: 1.5; }
.abslms-exam-form .abslms-option { display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; background: #fff; transition: border-color .15s, background .15s; }
.abslms-exam-form .abslms-option:hover { border-color: #93c5fd; background: #f8fafc; }
.abslms-exam-form .abslms-option input { margin-top: 3px; flex-shrink: 0; }
.abslms-option-letter { font-weight: 700; color: #2563eb; min-width: 18px; }
.abslms-exam-footer { margin-top: 24px; padding-top: 20px; border-top: 2px solid #e2e8f0; text-align: center; }
.abslms-btn-lg { padding: 14px 32px; font-size: 16px; }
.abslms-quiz-score { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px; padding: 20px 24px; border-radius: 12px; margin-bottom: 20px; }
.abslms-quiz-score.passed { background: linear-gradient(135deg, #ecfdf3 0%, #dcfce7 100%); border: 1px solid #86efac; }
.abslms-quiz-score.failed { background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%); border: 1px solid #fca5a5; }
.abslms-quiz-score__main { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.abslms-quiz-score__meta { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; font-size: 13px; color: #475569; }
.abslms-quiz-score__stat { font-weight: 700; color: #0f172a; }
.abslms-score-value { font-size: 32px; font-weight: 800; line-height: 1; }
.abslms-score-label { font-size: 18px; font-weight: 600; }
.abslms-quiz-score.passed .abslms-score-value { color: #15803d; }
.abslms-quiz-score.failed .abslms-score-value { color: #b91c1c; }
.abslms-review-legend { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 20px; padding: 12px 14px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; }
.abslms-review-legend__item { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: #334155; }
.abslms-review-legend__dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
.abslms-review-legend__item.is-correct .abslms-review-legend__dot { background: #22c55e; }
.abslms-review-legend__item.is-wrong .abslms-review-legend__dot { background: #ef4444; }
.abslms-review-legend__item.is-unanswered .abslms-review-legend__dot { background: #f59e0b; }
.abslms-question-result { margin-bottom: 16px; padding: 0; border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; overflow: hidden; box-shadow: 0 2px 8px rgba(15,23,42,.04); }
.abslms-question-result.is-correct { border-left: 4px solid #22c55e; }
.abslms-question-result.is-wrong { border-left: 4px solid #ef4444; }
.abslms-question-result.is-unanswered { border-left: 4px solid #f59e0b; }
.abslms-question-result__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; }
.abslms-question-result__num { display: inline-flex; align-items: center; justify-content: center; min-width: 30px; height: 30px; border-radius: 999px; background: #2563eb; color: #fff; font-size: 13px; font-weight: 700; }
.abslms-question-result__status { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; padding: 4px 10px; border-radius: 999px; }
.abslms-question-result.is-correct .abslms-question-result__status { background: #dcfce7; color: #15803d; }
.abslms-question-result.is-wrong .abslms-question-result__status { background: #fee2e2; color: #b91c1c; }
.abslms-question-result.is-unanswered .abslms-question-result__status { background: #fef3c7; color: #b45309; }
.abslms-question-result__q { margin: 0; padding: 16px 16px 12px; font-weight: 600; color: #0f172a; line-height: 1.55; }
.abslms-question-result__options { display: flex; flex-direction: column; gap: 8px; padding: 0 16px 16px; }
.abslms-review-option { display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 10px; background: #fff; transition: border-color .15s, background .15s; }
.abslms-review-option__marker { width: 18px; height: 18px; margin-top: 2px; border-radius: 50%; border: 2px solid #cbd5e1; flex-shrink: 0; position: relative; }
.abslms-review-option__letter { font-weight: 700; color: #2563eb; min-width: 18px; flex-shrink: 0; }
.abslms-review-option__text { flex: 1; min-width: 0; color: #1e293b; line-height: 1.45; }
.abslms-review-option__tags { display: flex; flex-wrap: wrap; gap: 6px; margin-left: auto; align-items: center; }
.abslms-review-option__tag { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; padding: 3px 8px; border-radius: 999px; white-space: nowrap; }
.abslms-review-option.is-correct-answer { background: #ecfdf3; border-color: #4ade80; }
.abslms-review-option.is-correct-answer .abslms-review-option__marker { border-color: #22c55e; background: #22c55e; }
.abslms-review-option.is-correct-answer .abslms-review-option__marker::after { content: ''; position: absolute; left: 5px; top: 2px; width: 5px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.abslms-review-option.is-correct-answer .abslms-review-option__tag { background: #dcfce7; color: #15803d; }
.abslms-review-option.is-wrong-answer { background: #fef2f2; border-color: #f87171; }
.abslms-review-option.is-wrong-answer .abslms-review-option__marker { border-color: #ef4444; background: #ef4444; }
.abslms-review-option.is-wrong-answer .abslms-review-option__marker::before,
.abslms-review-option.is-wrong-answer .abslms-review-option__marker::after { content: ''; position: absolute; left: 7px; top: 3px; width: 2px; height: 10px; background: #fff; }
.abslms-review-option.is-wrong-answer .abslms-review-option__marker::before { transform: rotate(45deg); }
.abslms-review-option.is-wrong-answer .abslms-review-option__marker::after { transform: rotate(-45deg); }
.abslms-review-option.is-your-answer:not(.is-wrong-answer) .abslms-review-option__tag:last-child { background: #dbeafe; color: #1d4ed8; }
.abslms-review-option.is-wrong-answer .abslms-review-option__tag:last-child { background: #fee2e2; color: #b91c1c; }
.abslms-question-result__note { margin: 0 16px 16px; padding: 10px 12px; border-radius: 8px; font-size: 13px; font-weight: 600; }
.abslms-question-result__note.is-unanswered { background: #fffbeb; color: #b45309; border: 1px solid #fde68a; }
.abslms-exam-results .abslms-explanation { margin: 0 16px 16px; padding: 14px 16px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; font-size: 14px; line-height: 1.55; color: #334155; }
.abslms-exam-results .abslms-explanation strong { color: #0f172a; }
.abslms-result-q { margin: 0 0 12px; font-weight: 600; }
.abslms-attempts-table { width: 100%; border-collapse: collapse; margin-top: 12px; font-size: 14px; }
.abslms-attempts-table th,
.abslms-attempts-table td { padding: 10px 12px; border-bottom: 1px solid #e2e8f0; text-align: left; }
.abslms-attempts-table tbody tr.abslms-attempt-row { cursor: pointer; transition: background .15s; }
.abslms-attempts-table tbody tr.abslms-attempt-row:hover,
.abslms-attempts-table tbody tr.abslms-attempt-row.is-active { background: #eff6ff; }
.abslms-view-attempt { background: none; border: none; color: #2563eb; font-weight: 600; font-size: 13px; cursor: pointer; padding: 0; text-decoration: underline; }
.abslms-view-attempt:hover { color: #1d4ed8; }
.abslms-review-actions { margin-bottom: 20px; }
.abslms-exam-results .abslms-review-actions + .abslms-quiz-score { margin-top: 0; }
.abslms-result-badge { padding: 3px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; }
.abslms-result-badge.passed { background: #dcfce7; color: #15803d; }
.abslms-result-badge.failed { background: #fee2e2; color: #b91c1c; }
.abslms-plan-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; padding: 12px; margin-bottom: 10px; }
.abslms-plan-block { margin-bottom: 12px; border: 1px solid #e2e8f0; border-radius: 8px; background: #fff; }
.abslms-plan-block summary { padding: 12px 14px; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.abslms-plan-progress { font-size: 12px; color: #64748b; font-weight: normal; }
.abslms-plan-quiz-list { list-style: none; margin: 0; padding: 0 8px 8px; }
.abslms-plan-quiz-item { margin: 4px 0; }
.abslms-plan-quiz-link,
.abslms-plan-quiz-locked { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; width: 100%; padding: 10px 12px; border-radius: 8px; font-size: 13px; }
.abslms-plan-quiz-item.is-unlocked .abslms-quiz-link { background: #fff; border: 1px solid #e2e8f0; }
.abslms-plan-quiz-item.is-unlocked .abslms-quiz-link:hover { border-color: #2563eb; background: #eff6ff; }
.abslms-plan-quiz-locked { background: #f1f5f9; border: 1px solid #e2e8f0; color: #64748b; }
.abslms-plan-day { font-weight: 700; color: #475569; min-width: 48px; }
.abslms-plan-title { flex: 1; }
.abslms-plan-status.unlocked { color: #15803d; font-size: 11px; font-weight: 600; text-transform: uppercase; }
.abslms-plan-status.locked { color: #b45309; font-size: 12px; }
.abslms-exam-intro { padding: 8px 0 24px; }
.abslms-attempts-history { overflow-x: auto; -webkit-overflow-scrolling: touch; margin-bottom: 8px; }
.abslms-start-wrap { text-align: center; margin-top: 24px; }
.abslms-exam-ready { color: #64748b; }
.abslms-exam-toolbar { position: sticky; top: 0; z-index: 20; background: #1e293b; color: #fff; border-radius: 10px; padding: 10px 16px; margin-bottom: 12px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.abslms-exam-fullscreen__body .abslms-exam-toolbar { top: 0; border-radius: 12px; margin-left: 0; margin-right: 0; }
.abslms-exam-timer { display: flex; align-items: center; gap: 12px; }
.abslms-timer-label { font-size: 13px; opacity: .85; }
.abslms-timer-value { font-size: 24px; font-weight: 800; font-variant-numeric: tabular-nums; }
.abslms-exam-timer.warning .abslms-timer-value { color: #fbbf24; }
.abslms-exam-timer.danger .abslms-timer-value { color: #f87171; }
.abslms-q-nav-jump { background: rgba(255,255,255,.15); color: #fff; border: 1px solid rgba(255,255,255,.35); border-radius: 8px; padding: 8px 14px; font-size: 13px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.abslms-q-nav-jump:hover { background: rgba(255,255,255,.25); }
.abslms-q-nav-panel { position: sticky; top: 56px; z-index: 18; background: #fff; border: 1px solid #e2e8f0; border-radius: 10px; margin-bottom: 16px; box-shadow: 0 4px 12px rgba(15,23,42,.06); }
.abslms-q-nav-panel.is-collapsed .abslms-q-nav { display: none; }
.abslms-q-nav-panel.is-collapsed .abslms-q-nav-toggle { transform: rotate(-90deg); }
.abslms-q-nav-panel.is-highlight { box-shadow: 0 0 0 3px rgba(37,99,235,.35); }
.abslms-q-nav-panel-head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding: 10px 14px; border-bottom: 1px solid #e2e8f0; background: #f8fafc; border-radius: 10px 10px 0 0; font-size: 13px; font-weight: 600; color: #334155; }
.abslms-q-nav-panel.is-collapsed .abslms-q-nav-panel-head { border-bottom: none; border-radius: 10px; }
.abslms-q-nav-legend { display: flex; align-items: center; gap: 10px; margin-left: auto; font-size: 11px; font-weight: 500; color: #64748b; }
.abslms-legend-dot { display: inline-block; width: 10px; height: 10px; border-radius: 3px; vertical-align: middle; margin-right: 2px; }
.abslms-legend-dot.answered { background: #22c55e; }
.abslms-legend-dot.unanswered { background: #fca5a5; }
.abslms-q-nav-toggle { margin-left: 8px; background: none; border: none; font-size: 16px; cursor: pointer; color: #64748b; padding: 4px 8px; line-height: 1; transition: transform .2s; }
.abslms-q-nav { display: grid; grid-template-columns: repeat(auto-fill, 40px); gap: 6px; padding: 12px 14px; max-height: 160px; overflow-y: auto; overflow-x: hidden; align-content: start; justify-content: start; }
.abslms-q-nav-btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; border: 1px solid #e2e8f0; border-radius: 8px; background: #fff; font-weight: 700; font-size: 13px; line-height: 1; white-space: nowrap; cursor: pointer; color: #64748b; transition: border-color .15s, background .15s; box-sizing: border-box; }
.abslms-q-nav-btn.answered { background: #dcfce7; border-color: #22c55e; color: #15803d; }
.abslms-q-nav-btn.unanswered { background: #fef2f2; border-color: #fecaca; color: #b91c1c; }
.abslms-q-nav-btn:hover { border-color: #2563eb; color: #2563eb; }
.abslms-q-nav-fab { position: fixed; right: 20px; bottom: calc(24px + env(safe-area-inset-bottom, 0px)); z-index: 1000000; display: flex; align-items: center; gap: 8px; background: #2563eb; color: #fff; border: none; border-radius: 999px; padding: 12px 18px; font-size: 14px; font-weight: 700; cursor: pointer; box-shadow: 0 4px 20px rgba(37,99,235,.45); transition: transform .15s, box-shadow .15s; touch-action: manipulation; }
.abslms-q-nav-fab:hover { transform: translateY(-2px); box-shadow: 0 6px 24px rgba(37,99,235,.5); }
.abslms-q-nav-fab-icon { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; background: rgba(255,255,255,.2); border-radius: 50%; font-size: 12px; }
@media (max-width: 600px) {
	.abslms-q-nav { grid-template-columns: repeat(auto-fill, 36px); gap: 5px; max-height: 140px; }
	.abslms-q-nav-btn { width: 36px; height: 36px; font-size: 12px; }
	.abslms-q-nav-fab-text { display: none; }
	.abslms-q-nav-fab { padding: 14px; border-radius: 50%; }
	.abslms-q-nav-legend { display: none; }
}
.abslms-time-taken { display: block; font-size: 14px; font-weight: 500; margin-top: 4px; opacity: .9; }
.abslms-daily-ca { font-family: inherit; width: 100%; max-width: 100%; margin: 0; box-sizing: border-box; }
.abslms-daily-ca .abslms-course-layout { min-height: 0; }
.abslms-daily-ca .abslms-lesson-content.abslms-ca-panel { min-height: 0; }
.abslms-daily-ca .abslms-curriculum-head { gap: 12px; }
.abslms-daily-ca .abslms-ca-list ul { list-style: none; margin: 0; padding: 0; }
.abslms-daily-ca .abslms-ca-list li { margin: 0 0 8px; }
.abslms-daily-ca .abslms-ca-list li:last-child { margin-bottom: 0; }
.abslms-daily-ca .abslms-ca-quiz-link { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; width: 100%; text-align: left; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 8px; background: #fff; cursor: pointer; transition: border-color .15s, background .15s, box-shadow .15s; }
.abslms-daily-ca .abslms-ca-quiz-link:hover,
.abslms-daily-ca .abslms-ca-quiz-link.is-active { border-color: #2563eb; background: #eff6ff; box-shadow: 0 2px 8px rgba(37,99,235,.1); }
.abslms-daily-ca .abslms-ca-quiz-link.is-today { border-left: 3px solid #2563eb; padding-left: 12px; }
.abslms-daily-ca .abslms-ca-quiz-locked { display: flex; align-items: flex-start; gap: 10px; width: 100%; text-align: left; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 8px; background: #f8fafc; color: #64748b; cursor: pointer; font-family: inherit; transition: border-color .15s, background .15s; box-sizing: border-box; }
.abslms-daily-ca .abslms-ca-quiz-locked:hover,
.abslms-daily-ca .abslms-ca-quiz-locked.is-active { border-color: #cbd5e1; background: #f1f5f9; }
.abslms-daily-ca .abslms-ca-quiz-locked.is-today { border-left: 3px solid #94a3b8; padding-left: 12px; }
.abslms-daily-ca .abslms-ca-quiz-locked__icon { flex-shrink: 0; font-size: 14px; line-height: 1.4; opacity: .9; }
.abslms-daily-ca .abslms-ca-quiz-locked__main { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 0; flex: 1; }
.abslms-daily-ca .abslms-ca-quiz-locked .abslms-ca-title { color: #64748b; }
.abslms-daily-ca .abslms-ca-access-panel { max-width: 520px; margin: 0 auto; text-align: center; }
.abslms-daily-ca .abslms-ca-access-panel .abslms-notice { margin-bottom: 16px; text-align: left; }
.abslms-daily-ca .abslms-ca-access-panel__actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.abslms-daily-ca .abslms-ca-date { display: block; font-size: 11px; font-weight: 700; color: #64748b; text-transform: uppercase; letter-spacing: .04em; }
.abslms-daily-ca .abslms-ca-title { display: block; font-size: 14px; font-weight: 600; color: #0f172a; line-height: 1.35; }
.abslms-daily-ca .abslms-ca-badge { display: inline-block; margin-top: 2px; padding: 2px 8px; font-size: 10px; font-weight: 700; text-transform: uppercase; background: #2563eb; color: #fff; border-radius: 4px; }
.abslms-daily-ca .abslms-ca-panel .abslms-exam { max-width: none; width: 100%; }
.abslms-daily-ca .abslms-ca-empty-panel { border-radius: 12px; min-height: 200px; display: flex; align-items: center; justify-content: center; }
.abslms-daily-ca .abslms-ca-empty-panel .abslms-notice { max-width: 560px; margin: 0; }
.abslms-daily-ca--browse .abslms-ca-browse { padding-top: 8px; }
.abslms-daily-ca--browse .abslms-ca-player-layout { display: none !important; }
.abslms-daily-ca--player .abslms-ca-browse-intro,
.abslms-daily-ca--player #abslms-ca-browse-months { display: none; }
.abslms-daily-ca--player .abslms-ca-browse { padding-top: 0; }
.abslms-ca-month-groups { display: flex; flex-direction: column; gap: 14px; }
.abslms-ca-month-group { border: 1px solid #e2e8f0; border-radius: 14px; background: #fff; overflow: hidden; box-shadow: 0 2px 10px rgba(15,23,42,.04); }
.abslms-ca-month-group__toggle { display: flex; align-items: center; gap: 10px; width: 100%; padding: 14px 16px; border: none; background: #f8fafc; cursor: pointer; text-align: left; font-family: inherit; }
.abslms-ca-month-group__toggle:hover { background: #f1f5f9; }
.abslms-ca-month-group__label { flex: 1; font-size: 15px; font-weight: 700; color: #0f172a; }
.abslms-ca-month-group__meta { font-size: 12px; font-weight: 600; color: #64748b; }
.abslms-ca-month-group__icon::before { content: '▾'; display: inline-block; color: #64748b; transition: transform .15s ease; }
.abslms-ca-month-group.is-collapsed .abslms-ca-month-group__icon::before { transform: rotate(-90deg); }
.abslms-ca-month-group.is-collapsed .abslms-ca-month-group__body { display: none; }
.abslms-ca-month-group__body { padding: 14px 16px 16px; }
.abslms-ca-month-groups--sidebar { gap: 10px; }
.abslms-ca-month-groups--sidebar .abslms-ca-month-group { border-radius: 10px; box-shadow: none; }
.abslms-ca-month-groups--sidebar .abslms-ca-month-group__toggle { padding: 10px 12px; }
.abslms-ca-month-groups--sidebar .abslms-ca-month-group__label { font-size: 13px; }
.abslms-ca-month-groups--sidebar .abslms-ca-month-group__body { padding: 8px 10px 10px; }
.abslms-ca-month-groups--sidebar .abslms-ca-month-group__body ul { list-style: none; margin: 0; padding: 0; }
.abslms-ca-month-groups--sidebar .abslms-ca-month-group__body li { margin: 0 0 8px; }
.abslms-ca-month-groups--sidebar .abslms-ca-month-group__body li:last-child { margin-bottom: 0; }
.abslms-daily-ca .abslms-curriculum-head--ca { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.abslms-daily-ca .abslms-curriculum-head--ca .abslms-curriculum-head__main { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; min-width: 0; }
.abslms-daily-ca .abslms-curriculum-head--ca h3 { margin: 0; font-size: 1rem; }
.abslms-daily-ca .abslms-curriculum-head__back { border: none; background: transparent; padding: 0; font-size: 13px; font-weight: 600; color: #2563eb; cursor: pointer; font-family: inherit; }
.abslms-daily-ca .abslms-curriculum-head__back:hover { color: #1d4ed8; text-decoration: underline; }
.abslms-ca-browse { max-width: 100%; margin: 0; padding: 0 0 24px; }
.abslms-ca-browse-intro { text-align: center; margin-bottom: 22px; }
.abslms-ca-browse-intro p { margin: 0; font-size: 15px; line-height: 1.6; color: #475569; }
.abslms-ca-browse-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.abslms-ca-browse-card { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; width: 100%; min-height: 168px; padding: 18px 18px 16px; border: 1px solid #e2e8f0; border-radius: 16px; background: #fff; box-shadow: 0 4px 16px rgba(15,23,42,.06); cursor: pointer; text-align: left; font-family: inherit; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease; box-sizing: border-box; }
.abslms-ca-browse-card:hover,
.abslms-ca-browse-card:focus-visible { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(15,23,42,.1); border-color: #93c5fd; outline: none; }
.abslms-ca-browse-card--today { border-color: #bfdbfe; background: linear-gradient(180deg, #eff6ff 0%, #fff 72%); }
.abslms-ca-browse-card--locked { background: #f8fafc; }
.abslms-ca-browse-card--locked:hover,
.abslms-ca-browse-card--locked:focus-visible { border-color: #cbd5e1; box-shadow: 0 8px 20px rgba(15,23,42,.08); }
.abslms-ca-browse-card__lock { font-size: 16px; line-height: 1; opacity: .85; }
.abslms-ca-browse-card__date { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: #64748b; }
.abslms-ca-browse-card__title { font-size: 15px; font-weight: 700; line-height: 1.4; color: #0f172a; flex: 1; }
.abslms-ca-browse-card__badge { display: inline-block; padding: 3px 9px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; background: #2563eb; color: #fff; border-radius: 999px; }
.abslms-ca-browse-card__hint { font-size: 12px; font-weight: 600; color: #2563eb; margin-top: auto; }
.abslms-ca-browse-card--locked .abslms-ca-browse-card__hint { color: #64748b; }
.abslms-ca-browse-dialog { position: fixed; inset: 0; z-index: 100002; display: flex; align-items: center; justify-content: center; padding: 20px; background: rgba(15,23,42,.5); backdrop-filter: blur(3px); box-sizing: border-box; }
.abslms-ca-browse-dialog[hidden] { display: none !important; }
.abslms-ca-browse-dialog__card { position: relative; width: 100%; max-width: 460px; max-height: calc(100vh - 40px); overflow-y: auto; padding: 28px 24px 24px; border-radius: 16px; background: #fff; box-shadow: 0 20px 50px rgba(15,23,42,.2); text-align: center; box-sizing: border-box; }
.abslms-ca-browse-dialog__card.is-wide { max-width: 520px; }
.abslms-ca-browse-dialog__step[hidden] { display: none !important; }
.abslms-ca-browse-dialog__intro { margin: 0 0 16px; font-size: 14px; line-height: 1.5; color: #64748b; text-align: left; }
.abslms-ca-browse-dialog .abslms-enroll-modal__auth-form { margin-bottom: 8px; text-align: left; }
.abslms-ca-browse-dialog .abslms-enroll-modal__auth-form .abslms-field { margin-bottom: 14px; }
.abslms-ca-browse-dialog__actions--form { margin-top: 8px; }
.abslms-ca-browse-dialog__close { position: absolute; top: 12px; right: 14px; border: none; background: transparent; font-size: 26px; line-height: 1; color: #94a3b8; cursor: pointer; padding: 4px; }
.abslms-ca-browse-dialog__close:hover { color: #475569; }
.abslms-ca-browse-dialog__title { margin: 0 0 12px; font-size: 1.2rem; color: #0f172a; padding-right: 24px; }
.abslms-ca-browse-dialog__message { margin: 0 0 18px; text-align: left; }
.abslms-ca-browse-dialog__message--solo { margin-bottom: 0; }
.abslms-ca-browse-dialog__actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.abslms-daily-ca--player .abslms-ca-player-layout { margin-top: 4px; }
@media (max-width: 991px) {
	.abslms-daily-ca--player .abslms-ca-player-layout { grid-template-columns: 1fr; gap: 12px; min-height: 0; }
	.abslms-daily-ca--player .abslms-ca-player-layout .abslms-curriculum { border-radius: 12px; }
	.abslms-daily-ca--player .abslms-ca-player-layout .abslms-curriculum-body { max-height: 240px; }
	.abslms-daily-ca--player .abslms-ca-panel { border-radius: 12px; min-height: 0; padding: 16px; }
	.abslms-daily-ca .abslms-ca-panel .abslms-placeholder { padding: 24px 12px; }
}
.single .entry-content > .abslms-daily-ca,
.single .abslms-daily-ca { width: 100%; max-width: 100%; }
.abslms-student-dashboard { max-width: 100%; margin: 0; padding: 0 0 32px; }
.abslms-dash-hero { background: linear-gradient(135deg, #1e40af 0%, #2563eb 50%, #3b82f6 100%); color: #fff; border-radius: 16px; padding: 32px 36px; margin-bottom: 28px; box-shadow: 0 8px 24px rgba(37,99,235,.25); }
.abslms-dash-enrolled { scroll-margin-top: 88px; }
.abslms-dash-enrolled.is-highlighted .abslms-dash-panel {
	outline: 3px solid rgba(37, 99, 235, .28);
	box-shadow: 0 10px 28px rgba(37, 99, 235, .14);
}
.abslms-dash-whatsapp-panel { padding: 0; overflow: hidden; }
.abslms-dash-whatsapp-table-wrap { border: none; border-radius: 0; }
.abslms-dash-whatsapp-table { min-width: 520px; }
.abslms-dash-whatsapp-table thead th { background: #ecfdf5; color: #14532d; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.abslms-dash-whatsapp-table tbody tr:hover { background: #f8fffb; }
.abslms-dash-whatsapp-table th:last-child,
.abslms-dash-whatsapp-table td:last-child { text-align: right; }
.abslms-dash-whatsapp-course { display: flex; align-items: center; gap: 12px; min-width: 0; }
.abslms-dash-whatsapp-thumb { width: 44px; height: 44px; border-radius: 10px; background-size: cover; background-position: center; background-color: #dcfce7; flex-shrink: 0; }
.abslms-dash-whatsapp-thumb--placeholder { background: linear-gradient(135deg, #dcfce7, #bbf7d0); }
.abslms-dash-whatsapp-course-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.abslms-dash-whatsapp-course-text strong { color: #0f172a; font-size: 14px; line-height: 1.35; }
.abslms-dash-whatsapp-course-link { font-size: 12px; color: #2563eb; font-weight: 600; text-decoration: none; }
.abslms-dash-whatsapp-course-link:hover { text-decoration: underline; }
.abslms-dash-whatsapp-plan { display: inline-block; font-size: 12px; font-weight: 700; color: #166534; background: #dcfce7; padding: 4px 10px; border-radius: 999px; }
.abslms-dash-whatsapp-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; background: #16a34a !important; border-color: #16a34a !important; color: #fff !important; box-shadow: 0 6px 16px rgba(22,163,74,.25); white-space: nowrap; }
.abslms-dash-whatsapp-btn:hover { background: #15803d !important; border-color: #15803d !important; color: #fff !important; }
.abslms-dash-whatsapp-btn--card { width: 100%; box-sizing: border-box; margin-top: 8px; }
.abslms-dash-course-actions { margin-top: auto; display: flex; flex-direction: column; gap: 0; }
.abslms-whatsapp-join { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 20px; margin: 16px 0 20px; padding: 18px 20px; border-radius: 16px; background: linear-gradient(135deg, #ecfdf5 0%, #f0fdf4 55%, #fff 100%); border: 1px solid #bbf7d0; box-shadow: 0 8px 24px rgba(22,163,74,.08); scroll-margin-top: 88px; }
.abslms-whatsapp-join.is-highlighted,
.abslms-whatsapp-join:target { outline: 3px solid rgba(22,163,74,.35); box-shadow: 0 10px 28px rgba(22,163,74,.2); }
.abslms-course-card-actions { display: flex; flex-direction: column; gap: 8px; }
.abslms-course-card-actions .abslms-btn { text-align: center; }
.abslms-whatsapp-join__icon { width: 52px; height: 52px; border-radius: 14px; display: flex; align-items: center; justify-content: center; background: #16a34a; color: #fff; flex-shrink: 0; box-shadow: 0 8px 18px rgba(22,163,74,.28); }
.abslms-whatsapp-join__body { flex: 1; min-width: 200px; }
.abslms-whatsapp-join__eyebrow { margin: 0 0 4px; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #15803d; }
.abslms-whatsapp-join__title { margin: 0 0 6px; font-size: 1.1rem; line-height: 1.3; color: #14532d; }
.abslms-whatsapp-join__text { margin: 0; font-size: 14px; color: #3f6212; line-height: 1.45; }
.abslms-whatsapp-join__btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 18px; border-radius: 999px; background: #16a34a; color: #fff !important; font-weight: 700; text-decoration: none !important; box-shadow: 0 8px 20px rgba(22,163,74,.28); white-space: nowrap; }
.abslms-whatsapp-join__btn:hover { background: #15803d; color: #fff !important; }
.abslms-dash-greeting { margin: 0 0 6px; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; opacity: .85; }
.abslms-dash-welcome { margin: 0 0 8px; font-size: 1.75rem; font-weight: 700; line-height: 1.2; color: #fff; }
.abslms-dash-meta { margin: 0; font-size: 14px; opacity: .9; }
.abslms-dash-section { margin-bottom: 36px; }
.abslms-dash-section-head { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 16px; }
.abslms-dash-section-head--split { align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
.abslms-dash-section-head-main { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.abslms-dash-section-head-text h3 { margin: 0 0 4px; font-size: 1.25rem; color: #0f172a; }
.abslms-dash-section-head-text p { margin: 0; font-size: 14px; color: #64748b; line-height: 1.45; }
.abslms-dash-section-head h3 { margin: 0; font-size: 1.25rem; color: #0f172a; }
.abslms-dash-section-action { flex-shrink: 0; white-space: nowrap; }
.abslms-dash-count { background: #eff6ff; color: #2563eb; font-size: 13px; font-weight: 700; padding: 4px 10px; border-radius: 999px; }
.abslms-dash-panel { background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 20px; box-shadow: 0 4px 16px rgba(15,23,42,.05); }
.abslms-dash-metrics-panel { margin-bottom: 36px; }
.abslms-dash-metrics-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 20px; box-shadow: 0 4px 16px rgba(15,23,42,.05); }
.abslms-dash-stat-card { background: linear-gradient(180deg, #f8fafc 0%, #fff 100%); border: 1px solid #eef2f7; border-radius: 12px; padding: 18px 14px; text-align: center; transition: box-shadow .15s, transform .15s, border-color .15s; }
.abslms-dash-stat-card:hover { box-shadow: 0 6px 16px rgba(15,23,42,.08); transform: translateY(-2px); border-color: #cbd5e1; }
.abslms-dash-stat-value { display: block; font-size: 1.65rem; font-weight: 800; color: #1e293b; line-height: 1.1; }
.abslms-dash-stat-label { display: block; font-size: 11px; color: #64748b; margin-top: 8px; text-transform: uppercase; letter-spacing: .04em; font-weight: 600; line-height: 1.3; }
.abslms-dash-empty { background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; padding: 28px; text-align: center; color: #64748b; }
.abslms-dash-empty p { margin: 0; }
.abslms-dash-empty-action { margin: 16px 0 0; }
.abslms-dash-courses { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 20px; }
.abslms-dash-course-card { display: flex; flex-direction: column; background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; overflow: hidden; box-shadow: 0 4px 12px rgba(15,23,42,.05); }
.abslms-dash-course-card.is-expired { opacity: .85; }
.abslms-dash-course-thumb { height: 140px; background-size: cover; background-position: center; background-color: #e2e8f0; }
.abslms-dash-course-thumb--placeholder { display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #dbeafe, #eff6ff); color: #64748b; font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: .06em; }
.abslms-dash-course-body { padding: 20px; flex: 1; display: flex; flex-direction: column; }
.abslms-dash-course-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; margin-bottom: 12px; }
.abslms-dash-course-top h4 { margin: 0; font-size: 1.05rem; line-height: 1.35; color: #0f172a; flex: 1; }
.abslms-dash-status { flex-shrink: 0; font-size: 11px; font-weight: 700; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; letter-spacing: .03em; }
.abslms-dash-status.active { background: #dcfce7; color: #15803d; }
.abslms-dash-status.expired { background: #fee2e2; color: #b91c1c; }
.abslms-dash-course-meta { list-style: none; margin: 0 0 16px; padding: 0; font-size: 13px; color: #64748b; }
.abslms-dash-course-meta li { margin: 4px 0; }
.abslms-dash-course-meta strong { color: #475569; font-weight: 600; }
.abslms-dash-course-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-bottom: 16px; padding: 12px; background: #f8fafc; border-radius: 10px; }
.abslms-dash-metric { text-align: center; }
.abslms-dash-metric-val { display: block; font-size: 1.1rem; font-weight: 800; color: #1e293b; }
.abslms-dash-metric-lbl { display: block; font-size: 10px; color: #94a3b8; text-transform: uppercase; letter-spacing: .04em; margin-top: 2px; font-weight: 600; }
.abslms-dash-course-btn { margin-top: auto; text-align: center; width: 100%; box-sizing: border-box; }
.abslms-dash-table-wrap { overflow-x: auto; border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; }
.abslms-dash-table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 640px; }
.abslms-dash-table th { background: #f8fafc; padding: 12px 16px; text-align: left; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: #64748b; font-weight: 700; border-bottom: 1px solid #e2e8f0; }
.abslms-dash-table td { padding: 14px 16px; border-bottom: 1px solid #f1f5f9; color: #334155; vertical-align: middle; }
.abslms-dash-table tbody tr:last-child td { border-bottom: none; }
.abslms-dash-table tbody tr:hover { background: #fafbfc; }
.abslms-dash-table tbody tr.abslms-dash-attempt-row { cursor: pointer; }
.abslms-dash-table tbody tr.abslms-dash-attempt-row.is-active,
.abslms-dash-table tbody tr.abslms-dash-attempt-row:hover { background: #eff6ff; }
.abslms-dash-view-attempt { background: none; border: none; color: #2563eb; font-weight: 600; font-size: 13px; cursor: pointer; padding: 0; text-decoration: underline; }
.abslms-dash-view-attempt:hover { color: #1d4ed8; }
.abslms-dash-ca-item-review { margin-top: 8px; background: none; border: none; color: #2563eb; font-weight: 600; font-size: 12px; cursor: pointer; padding: 0; text-decoration: underline; }
.abslms-dash-ca-item-review:hover { color: #1d4ed8; }
.abslms-dash-ca-today-review { margin-top: 12px; font-size: 13px; padding: 8px 14px; }
.abslms-dash-ca-item.abslms-dash-attempt-row { cursor: pointer; }
.abslms-dash-ca-item.abslms-dash-attempt-row.is-active,
.abslms-dash-ca-item.abslms-dash-attempt-row:hover { border-color: #2563eb; background: #f8fbff; }
.abslms-dash-review-modal { position: fixed; inset: 0; z-index: 100000; display: none; align-items: flex-start; justify-content: center; padding: 24px 16px; box-sizing: border-box; }
.abslms-dash-review-modal.is-open { display: flex; }
.abslms-dash-review-backdrop { position: absolute; inset: 0; background: rgba(15,23,42,.55); }
.abslms-dash-review-dialog { position: relative; z-index: 1; width: min(920px, 100%); max-height: calc(100vh - 48px); background: #fff; border-radius: 16px; box-shadow: 0 24px 48px rgba(15,23,42,.2); display: flex; flex-direction: column; overflow: hidden; }
.abslms-dash-review-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 22px; border-bottom: 1px solid #e2e8f0; background: #f8fafc; flex-shrink: 0; }
.abslms-dash-review-head h3 { margin: 0; font-size: 1.15rem; color: #0f172a; }
.abslms-dash-review-close { background: none; border: none; font-size: 28px; line-height: 1; color: #64748b; cursor: pointer; padding: 0 4px; }
.abslms-dash-review-close:hover { color: #0f172a; }
.abslms-dash-review-body { padding: 22px 24px 28px; overflow-y: auto; flex: 1; }
body.abslms-review-open { overflow: hidden; }
.abslms-dash-table-wrap { border: none; border-radius: 0; }
.abslms-dash-course-activity .abslms-dash-panel { padding: 0; overflow: hidden; }
.abslms-dash-enrolled .abslms-dash-panel { padding: 20px; }
.abslms-btn-sm { padding: 8px 14px; font-size: 13px; }
.abslms-dash-ca-section .abslms-dash-ca-kicker { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #2563eb; margin-bottom: 4px; }
.abslms-dash-ca-block { background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; overflow: hidden; box-shadow: 0 4px 16px rgba(15,23,42,.05); }
.abslms-dash-ca-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; padding: 20px 24px; border-bottom: 1px solid #f1f5f9; }
.abslms-dash-ca-stat { text-align: center; padding: 14px 10px; background: #f8fafc; border-radius: 10px; border: 1px solid #eef2f7; }
.abslms-dash-ca-stat-val { display: block; font-size: 1.35rem; font-weight: 800; color: #1e293b; line-height: 1.1; }
.abslms-dash-ca-stat-lbl { display: block; margin-top: 6px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #64748b; }
.abslms-dash-ca-today { display: grid; grid-template-columns: 1fr minmax(220px, 280px); gap: 24px; padding: 24px; background: linear-gradient(135deg, #eff6ff 0%, #f8fafc 100%); border-bottom: 1px solid #e2e8f0; align-items: center; }
.abslms-dash-ca-today.is-completed { background: linear-gradient(135deg, #ecfdf5 0%, #f8fafc 100%); }
.abslms-dash-ca-today.is-pending { background: linear-gradient(135deg, #fff7ed 0%, #f8fafc 100%); }
.abslms-dash-ca-today-label { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: #64748b; margin-bottom: 6px; }
.abslms-dash-ca-today-date { margin: 0 0 8px; font-size: 14px; color: #475569; font-weight: 600; }
.abslms-dash-ca-today-title { margin: 0; font-size: 1.15rem; color: #0f172a; line-height: 1.35; }
.abslms-dash-ca-today-title--muted { color: #64748b; font-weight: 600; }
.abslms-dash-ca-today-side { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.abslms-dash-ca-today-meta { margin: 0; font-size: 13px; color: #64748b; line-height: 1.45; }
.abslms-dash-ca-today-btn { margin-top: 4px; }
.abslms-dash-ca-status-badge { display: inline-block; padding: 5px 12px; border-radius: 999px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.abslms-dash-ca-status-badge.pending { background: #ffedd5; color: #c2410c; }
.abslms-dash-ca-status-badge.locked { background: #f1f5f9; color: #475569; }
.abslms-dash-ca-status-badge.unavailable { background: #f1f5f9; color: #64748b; }
.abslms-dash-ca-score-ring { display: flex; align-items: center; justify-content: center; width: 72px; height: 72px; border-radius: 50%; background: #fff; border: 4px solid #22c55e; box-shadow: 0 4px 12px rgba(34,197,94,.15); }
.abslms-dash-ca-today.is-completed.is-failed .abslms-dash-ca-score-ring { border-color: #ef4444; box-shadow: 0 4px 12px rgba(239,68,68,.12); }
.abslms-dash-ca-score-val { font-size: 1rem; font-weight: 800; color: #0f172a; }
.abslms-dash-ca-recent { padding: 20px 24px 24px; }
.abslms-dash-ca-recent-title { margin: 0 0 14px; font-size: 0.95rem; font-weight: 700; color: #334155; text-transform: uppercase; letter-spacing: .04em; }
.abslms-dash-ca-recent-empty { background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 10px; padding: 20px; text-align: center; color: #64748b; }
.abslms-dash-ca-recent-empty p { margin: 0; font-size: 14px; }
.abslms-dash-ca-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.abslms-dash-ca-item { display: grid; grid-template-columns: 56px 1fr auto; gap: 14px; align-items: center; padding: 14px 16px; background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; transition: border-color .15s, box-shadow .15s; }
.abslms-dash-ca-item:hover { border-color: #93c5fd; box-shadow: 0 4px 12px rgba(37,99,235,.08); }
.abslms-dash-ca-item-date { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 10px; background: linear-gradient(135deg, #dbeafe, #eff6ff); color: #1e40af; flex-shrink: 0; }
.abslms-dash-ca-item-day { font-size: 1.15rem; font-weight: 800; line-height: 1; }
.abslms-dash-ca-item-month { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; margin-top: 2px; }
.abslms-dash-ca-item-body { min-width: 0; }
.abslms-dash-ca-item-top { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 4px; }
.abslms-dash-ca-item-top strong { font-size: 14px; color: #0f172a; line-height: 1.35; }
.abslms-dash-ca-item-meta { margin: 0; font-size: 12px; color: #64748b; }
.abslms-dash-ca-item-result { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; flex-shrink: 0; }
.abslms-dash-ca-item-score { font-size: 1.1rem; font-weight: 800; color: #1e293b; }
@media (max-width: 992px) {
	.abslms-dash-metrics-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
	.abslms-dash-ca-stats { grid-template-columns: repeat(2, 1fr); }
	.abslms-dash-ca-today { grid-template-columns: 1fr; }
	.abslms-dash-ca-item { grid-template-columns: 48px 1fr; }
	.abslms-dash-ca-item-result { grid-column: 2; flex-direction: row; align-items: center; justify-content: flex-start; margin-top: 4px; }
	.abslms-dash-ca-stats { padding: 16px 18px; }
	.abslms-dash-ca-today { padding: 18px; }
	.abslms-dash-ca-recent { padding: 16px 18px 20px; }
	.abslms-dash-hero { padding: 24px 20px; }
	.abslms-dash-welcome { font-size: 1.4rem; }
	.abslms-dash-metrics-grid { grid-template-columns: repeat(2, 1fr); padding: 16px; gap: 10px; }
	.abslms-dash-courses { grid-template-columns: 1fr; }
	.abslms-dash-section-head--split { align-items: flex-start; }
	.abslms-dash-section-action { width: 100%; text-align: center; box-sizing: border-box; }
}
.abslms-btn-outline { background: #fff; color: #2563eb !important; border: 2px solid #2563eb; }
.abslms-btn-outline:hover { background: #eff6ff; }
.abslms-btn-block { display: block; width: 100%; box-sizing: border-box; text-align: center; }
.abslms-auth { max-width: 480px; margin: 0 auto; padding: 20px 0; }
.abslms-auth-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 32px; box-shadow: 0 8px 24px rgba(15,23,42,.08); }
.abslms-auth-card h2 { margin: 0 0 8px; font-size: 1.5rem; color: #0f172a; }
.abslms-auth-subtitle { margin: 0 0 24px; color: #64748b; font-size: 14px; }
.abslms-auth-error { background: #fee2e2; border: 1px solid #fecaca; color: #b91c1c; padding: 12px 14px; border-radius: 8px; margin-bottom: 20px; font-size: 14px; }
.abslms-auth-form .abslms-field { margin: 0 0 18px; }
.abslms-auth-form label { display: block; font-weight: 600; font-size: 14px; color: #334155; margin-bottom: 6px; }
.abslms-auth-form label .required { color: #dc2626; }
.abslms-auth-form label .abslms-optional { color: #94a3b8; font-weight: 500; font-size: 12px; }
.abslms-auth-form input[type="text"],
.abslms-auth-form input[type="email"],
.abslms-auth-form input[type="tel"],
.abslms-auth-form input[type="password"],
.abslms-auth-form select { width: 100%; padding: 11px 14px; border: 1px solid #cbd5e1; border-radius: 8px; font-size: 15px; box-sizing: border-box; transition: border-color .15s; background: #fff; }
.abslms-auth-form select { cursor: pointer; }
.abslms-auth-form input:focus { outline: none; border-color: #2563eb; box-shadow: 0 0 0 3px rgba(37,99,235,.15); }
.abslms-auth-form select:focus { outline: none; border-color: #2563eb; box-shadow: 0 0 0 3px rgba(37,99,235,.15); }
.abslms-field-hint { display: block; margin-top: 6px; font-size: 12px; color: #94a3b8; }
.abslms-field-checkbox label { display: flex; align-items: center; gap: 8px; font-weight: 500; cursor: pointer; }
.abslms-field-checkbox input { width: auto; }
.abslms-auth-submit { margin: 24px 0 0; }
.abslms-auth-footer { margin: 20px 0 0; padding-top: 20px; border-top: 1px solid #e2e8f0; text-align: center; font-size: 14px; color: #64748b; }
.abslms-auth-footer a { color: #2563eb; font-weight: 600; text-decoration: none; }
.abslms-auth-footer a:hover { text-decoration: underline; }
.abslms-field-remember-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.abslms-field-remember-row > label { margin-bottom: 0; }
.abslms-link-btn { appearance: none; background: none; border: 0; padding: 0; color: #2563eb; font-weight: 600; font-size: 13px; cursor: pointer; text-decoration: none; }
.abslms-link-btn:hover { text-decoration: underline; }
.abslms-password-reset__intro,
.abslms-password-reset__heading { margin: 0 0 16px; color: #64748b; font-size: 14px; line-height: 1.5; }
.abslms-password-reset__heading { color: #0f172a; font-weight: 700; font-size: 15px; }
.abslms-password-reset__status { margin: 0 0 16px; padding: 12px 14px; border-radius: 8px; font-size: 14px; }
.abslms-password-reset__status.is-error { background: #fee2e2; border: 1px solid #fecaca; color: #b91c1c; }
.abslms-password-reset__status.is-success { background: #dcfce7; border: 1px solid #bbf7d0; color: #166534; }
.abslms-password-reset__meta { margin: 12px 0 0; text-align: center; }
.abslms-password-reset__back { margin: 18px 0 0; text-align: center; }
.abslms-password-reset__success { margin: 0; padding: 14px 16px; border-radius: 8px; background: #dcfce7; border: 1px solid #bbf7d0; color: #166534; font-size: 14px; line-height: 1.5; }
.abslms-auth-reset-panel .abslms-password-reset { margin-top: 4px; }
.abslms-logout-notice { position: relative; z-index: 99999; width: 100%; box-sizing: border-box; padding: 14px 20px; background: #dcfce7; border-bottom: 1px solid #86efac; color: #166534; text-align: center; font-size: 15px; font-weight: 600; }
.abslms-logout-notice--fixed { position: fixed; top: 0; left: 0; right: 0; }
.abslms-logout-notice p { margin: 0; }
.abslms-browse-courses { max-width: 100%; margin: 0; padding: 0 0 32px; font-family: inherit; }
.abslms-browse-hero { background: linear-gradient(135deg, #1e40af 0%, #2563eb 50%, #3b82f6 100%); color: #fff; border-radius: 16px; padding: 36px 40px; margin-bottom: 32px; box-shadow: 0 8px 24px rgba(37,99,235,.25); text-align: center; }
.abslms-browse-eyebrow { margin: 0 0 8px; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; opacity: .85; }
.abslms-browse-title { margin: 0 0 10px; font-size: 2rem; font-weight: 800; line-height: 1.2; color: #fff; }
.abslms-browse-lead { margin: 0 auto; max-width: 640px; font-size: 15px; line-height: 1.55; opacity: .92; }
.abslms-browse-empty { background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 16px; padding: 48px 24px; text-align: center; color: #64748b; }
.abslms-browse-empty p { margin: 0; }
.abslms-browse-category-sections { display: flex; flex-direction: column; gap: 40px; }
.abslms-browse-category-section { background: #fff; border: 1px solid #e2e8f0; border-radius: 20px; padding: 28px 28px 32px; box-shadow: 0 6px 20px rgba(15,23,42,.04); }
.abslms-browse-category-section__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 22px; padding-bottom: 18px; border-bottom: 1px solid #e2e8f0; }
.abslms-browse-category-section__title { margin: 0 0 6px; font-size: 1.45rem; line-height: 1.25; color: #0f172a; }
.abslms-browse-category-section__title a { color: inherit; text-decoration: none; }
.abslms-browse-category-section__title a:hover { color: #2563eb; }
.abslms-browse-category-section__count { margin: 0; font-size: 14px; color: #64748b; font-weight: 600; }
.abslms-browse-category-section__link { flex-shrink: 0; font-size: 14px; font-weight: 600; color: #2563eb; text-decoration: none; padding: 8px 14px; border: 1px solid #bfdbfe; border-radius: 999px; background: #eff6ff; }
.abslms-browse-category-section__link:hover { background: #dbeafe; color: #1d4ed8; }
.abslms-browse-category-section__empty { background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 14px; padding: 28px 20px; text-align: center; color: #64748b; }
.abslms-browse-category-section__empty p { margin: 0; font-size: 14px; }
.abslms-browse-grid { display: grid; gap: 28px; }
.abslms-browse-courses--cols-1 .abslms-browse-grid { grid-template-columns: 1fr; max-width: 720px; margin: 0 auto; }
.abslms-browse-courses--cols-2 .abslms-browse-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.abslms-browse-courses--cols-3 .abslms-browse-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.abslms-browse-card { display: flex; flex-direction: column; background: #fff; border: 1px solid #e2e8f0; border-radius: 18px; overflow: hidden; box-shadow: 0 6px 20px rgba(15,23,42,.06); transition: box-shadow .2s, transform .2s; }
.abslms-browse-card:hover { box-shadow: 0 12px 28px rgba(15,23,42,.1); transform: translateY(-2px); }
.abslms-browse-card.is-enrolled { border-color: #86efac; box-shadow: 0 6px 20px rgba(34,197,94,.12); }
.abslms-browse-thumb { height: 168px; background-size: cover; background-position: center; background-color: #e2e8f0; }
.abslms-browse-thumb--placeholder { display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #dbeafe, #eff6ff); color: #64748b; font-weight: 700; font-size: 14px; text-transform: uppercase; letter-spacing: .06em; }
.abslms-browse-body { padding: 24px; flex: 1; display: flex; flex-direction: column; }
.abslms-browse-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.abslms-browse-card-title { margin: 0; font-size: 1.2rem; line-height: 1.35; color: #0f172a; flex: 1; }
.abslms-browse-badge { flex-shrink: 0; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; padding: 5px 10px; border-radius: 999px; white-space: nowrap; }
.abslms-browse-badge--from { background: #eff6ff; color: #2563eb; }
.abslms-browse-badge--enrolled { background: #dcfce7; color: #15803d; }
.abslms-browse-excerpt { margin: 0 0 18px; font-size: 14px; line-height: 1.55; color: #64748b; }
.abslms-browse-plans { margin-top: auto; }
.abslms-browse-plans-heading { margin: 0 0 12px; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: #64748b; }
.abslms-browse-plans-list { display: flex; flex-direction: column; gap: 10px; }
.abslms-browse-plan { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; gap: 4px 12px; align-items: center; padding: 14px 16px; border: 1px solid #e2e8f0; border-radius: 12px; background: #f8fafc; }
.abslms-browse-plan.is-featured { border-color: #2563eb; background: linear-gradient(180deg, #eff6ff 0%, #f8fafc 100%); box-shadow: 0 4px 12px rgba(37,99,235,.12); }
.abslms-browse-plan-tag { position: absolute; top: -9px; right: 14px; background: #2563eb; color: #fff; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; padding: 3px 8px; border-radius: 999px; }
.abslms-browse-plan-main { grid-column: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.abslms-browse-plan-name { font-size: 13px; font-weight: 700; color: #0f172a; line-height: 1.35; }
.abslms-browse-plan-validity { font-size: 12px; color: #64748b; }
.abslms-browse-plan-price { grid-column: 2; grid-row: 1; text-align: right; white-space: nowrap; }
.abslms-browse-plan-price del { display: block; font-size: 12px; color: #94a3b8; margin-bottom: 2px; }
.abslms-browse-plan-price strong { font-size: 1.05rem; color: #1e293b; }
.abslms-browse-plan.is-featured .abslms-browse-plan-price strong { color: #1d4ed8; }
.abslms-browse-enroll-form,
.abslms-browse-plan .abslms-browse-plan-btn { grid-column: 1 / -1; margin-top: 8px; }
.abslms-browse-enroll-form { margin: 8px 0 0; }
.abslms-browse-plan-btn { width: 100%; box-sizing: border-box; text-align: center; padding: 9px 14px; font-size: 13px; }
.abslms-browse-no-plans { margin-top: auto; padding: 16px; background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 12px; text-align: center; }
.abslms-browse-no-plans p { margin: 0 0 12px; font-size: 14px; color: #64748b; }
.abslms-browse-card-foot { margin-top: 16px; padding-top: 16px; border-top: 1px solid #eef2f7; }
.abslms-browse-card-btn { width: 100%; box-sizing: border-box; text-align: center; }
@media (max-width: 992px) {
	.abslms-browse-courses--cols-3 .abslms-browse-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
	.abslms-browse-hero { padding: 28px 22px; }
	.abslms-browse-title { font-size: 1.55rem; }
	.abslms-browse-category-section { padding: 20px 18px 24px; }
	.abslms-browse-category-section__head { flex-direction: column; align-items: stretch; }
	.abslms-browse-category-section__link { text-align: center; }
	.abslms-browse-courses--cols-2 .abslms-browse-grid,
	.abslms-browse-courses--cols-3 .abslms-browse-grid { grid-template-columns: 1fr; }
	.abslms-browse-plan { grid-template-columns: 1fr; }
	.abslms-browse-plan-price { grid-column: 1; grid-row: auto; text-align: left; margin-top: 4px; }
}

/* Course categories grid */
.abslms-course-categories { width: 100%; max-width: 100%; margin: 0 0 24px; box-sizing: border-box; font-family: inherit; }
.abslms-course-categories-empty { background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 16px; padding: 40px 24px; text-align: center; color: #64748b; }
.abslms-course-categories-empty p { margin: 0; }
.abslms-cat-grid { display: grid; gap: 16px; width: 100%; }
.abslms-course-categories--cols-1 .abslms-cat-grid { grid-template-columns: 1fr; }
.abslms-course-categories--cols-2 .abslms-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.abslms-course-categories--cols-3 .abslms-cat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.abslms-cat-card { display: flex; align-items: center; gap: 14px; width: 100%; min-height: 72px; padding: 16px 22px; border-radius: 18px; background: var(--abslms-cat-bg, #2563eb); color: var(--abslms-cat-text, #fff); text-decoration: none; box-shadow: 0 6px 18px rgba(15,23,42,.1); transition: transform .18s ease, box-shadow .18s ease; box-sizing: border-box; }
.abslms-cat-card:hover,
.abslms-cat-card:focus-visible { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(15,23,42,.16); color: var(--abslms-cat-text, #fff); outline: none; }
.abslms-cat-card__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background-color: #fff; background-repeat: no-repeat; background-position: center; background-size: 22px 22px; flex-shrink: 0; box-shadow: 0 2px 8px rgba(15,23,42,.08); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 5h8v14H8z'/%3E%3Cpath d='M10 9h6M10 12h6M10 15h4'/%3E%3C/svg%3E"); }
.abslms-cat-card__icon--graduation { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5 12 6l8 4.5-8 4.5-8-4.5Z'/%3E%3Cpath d='M8 12.5V17c0 1 2.5 2.5 4 2.5s4-1.5 4-2.5v-4.5'/%3E%3C/svg%3E"); }
.abslms-cat-card__icon--document { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 5h8v14H8z'/%3E%3Cpath d='M10 9h6M10 12h6M10 15h4'/%3E%3C/svg%3E"); }
.abslms-cat-card__icon--clipboard { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6.5h6a1 1 0 0 1 1 1V18a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V7.5a1 1 0 0 1 1-1Z'/%3E%3Cpath d='M10.5 6.5V5.5a1.5 1.5 0 0 1 3 0v1'/%3E%3C/svg%3E"); }
.abslms-cat-card__icon--search { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='4.5'/%3E%3Cpath d='M14.5 14.5 18 18'/%3E%3C/svg%3E"); }
.abslms-cat-card__icon--science { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3Cellipse cx='12' cy='12' rx='7' ry='3'/%3E%3Cellipse cx='12' cy='12' rx='7' ry='3' transform='rotate(60 12 12)'/%3E%3Cellipse cx='12' cy='12' rx='7' ry='3' transform='rotate(-60 12 12)'/%3E%3C/svg%3E"); }
.abslms-cat-card__icon--book { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6.5c2-1 4-1 6 0 2-1 4-1 6 0v11c-2-1-4-1-6 0-2-1-4-1-6 0V6.5Z'/%3E%3Cpath d='M12 7.5v11'/%3E%3C/svg%3E"); }
.abslms-cat-card__label { flex: 1; font-size: 1.05rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; line-height: 1.25; text-align: center; }
.abslms-taxonomy-course-category { padding: 0 0 32px; font-family: inherit; }
.abslms-taxonomy-course-category__inner { max-width: 100%; margin: 0; }
.abslms-course-cards-only { max-width: 100%; margin: 0; padding: 0 0 32px; }
.abslms-course-player--course-page { width: 100%; }
.abslms-course-home-view { animation: abslms-fade-in .25s ease; }
.abslms-course-subjects-player { animation: abslms-fade-in .25s ease; }
@keyframes abslms-fade-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
.abslms-course-player--cards-only .abslms-category-courses { margin-top: 0; }
.abslms-course-page-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 24px; }
.abslms-course-page-summary__col { background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 18px 16px; min-height: 100%; box-shadow: 0 6px 20px rgba(15,23,42,.06); box-sizing: border-box; }
.abslms-course-page-summary__col--title { background: linear-gradient(135deg, #eff6ff 0%, #fff 100%); border-color: #bfdbfe; display: flex; align-items: center; }
.abslms-course-page-summary__name { margin: 0; font-size: clamp(1rem, 2.8vw, 1.35rem); line-height: 1.35; font-weight: 800; color: #0f172a; }
.abslms-course-page-summary__plans { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.abslms-course-page-summary__plans li { margin: 0; }
.abslms-course-page-summary__plan-btn { display: block; width: 100%; text-align: left; font-size: 14px; font-weight: 600; color: #334155; line-height: 1.35; padding: 8px 10px; background: #f8fafc; border-radius: 8px; border: 1px solid #e2e8f0; cursor: pointer; font-family: inherit; transition: background .15s, border-color .15s; }
.abslms-course-page-summary__plan-btn:hover,
.abslms-course-page-summary__plan-btn:focus-visible { background: #eff6ff; border-color: #93c5fd; outline: none; }
.abslms-course-page-summary__muted { margin: 0; font-size: 13px; color: #94a3b8; }
.abslms-course-page-summary__free-btn { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; height: 100%; min-height: 72px; padding: 14px 16px; border: none; border-radius: 12px; background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%); color: #fff; cursor: pointer; text-align: left; font: inherit; box-shadow: 0 6px 18px rgba(37,99,235,.28); transition: transform .15s ease, box-shadow .15s ease; box-sizing: border-box; }
.abslms-course-page-summary__free-btn:hover,
.abslms-course-page-summary__free-btn:focus-visible { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(37,99,235,.34); outline: none; }
.abslms-course-page-summary__free-label { font-size: 15px; font-weight: 800; line-height: 1.3; }
.abslms-course-page-summary__free-arrow { font-size: 1.25rem; font-weight: 700; flex-shrink: 0; }
@media (max-width: 991px) {
	.abslms-course-page-summary { grid-template-columns: 1fr; gap: 12px; margin-bottom: 20px; }
	.abslms-course-page-summary__col { width: 100%; min-height: 0; }
	.abslms-course-page-summary__col--title { padding: 16px; }
	.abslms-course-page-summary__col--plans { padding: 16px; }
	.abslms-course-page-summary__col--free { padding: 12px; }
	.abslms-course-page-summary__free-btn { min-height: 64px; height: auto; }
}
@media (max-width: 640px) {
	.abslms-course-page-summary { gap: 10px; }
	.abslms-course-page-summary__name { font-size: 1.1rem; }
	.abslms-course-page-summary__free-btn { min-height: 56px; padding: 12px 14px; }
}
.abslms-curriculum-head--subject { flex-direction: column; align-items: stretch; gap: 0; padding: 0; background: #fff; border-bottom: 1px solid #e2e8f0; }
.abslms-curriculum-head--subject .abslms-curriculum-head__main { padding: 16px 20px 14px; }
.abslms-curriculum-head--subject .abslms-curriculum-toggle { align-self: flex-end; margin: 0 16px 12px; }
.abslms-curriculum-head__back { display: inline-flex; align-items: center; gap: 4px; margin: 0 0 10px; padding: 0; border: none; background: none; color: #2563eb; font-size: 13px; font-weight: 600; cursor: pointer; font-family: inherit; }
.abslms-curriculum-head__back:hover { text-decoration: underline; }
.abslms-curriculum-head__titles { margin: 0; }
.abslms-curriculum-head__course { display: block; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: #64748b; margin-bottom: 4px; }
.abslms-curriculum-head__subject { margin: 0; font-size: clamp(1.15rem, 2.5vw, 1.45rem); font-weight: 800; color: #0f172a; line-height: 1.3; }
.abslms-curriculum-head__meta { margin: 8px 0 0; font-size: 13px; color: #64748b; }
.abslms-subject-layout--browse .abslms-curriculum-head--subject { background: linear-gradient(135deg, #f8fafc 0%, #fff 100%); }
.abslms-subject-layout.is-content-active .abslms-curriculum-head--subject { flex-direction: row; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; }
.abslms-subject-layout.is-content-active .abslms-curriculum-head--subject .abslms-curriculum-head__main { flex: 1; min-width: 0; padding: 14px 16px 12px; }
.abslms-subject-layout.is-content-active .abslms-curriculum-head--subject .abslms-curriculum-toggle { margin: 14px 16px 0 0; align-self: flex-start; }
.abslms-subject-layout.is-content-active .abslms-curriculum-head__subject { font-size: 1rem; }
.abslms-subject-layout.is-content-active .abslms-curriculum-head__course { display: none; }
.abslms-subject-layout.is-content-active .abslms-curriculum-head__back { margin-bottom: 6px; font-size: 12px; }
.abslms-free-sources-list { display: flex; flex-direction: column; gap: 16px; }
.abslms-free-source-item { border: 1px solid #e2e8f0; border-radius: 12px; padding: 16px; background: #f8fafc; }
.abslms-free-source-item__title { margin: 0 0 10px; font-size: 1.05rem; color: #0f172a; }
.abslms-free-source-item__content { font-size: 14px; line-height: 1.6; color: #334155; }
.abslms-free-source-item__content > :first-child { margin-top: 0; }
.abslms-free-source-item__content > :last-child { margin-bottom: 0; }
.abslms-free-source-item__video iframe { width: 100%; aspect-ratio: 16/9; border: none; border-radius: 8px; }
.abslms-course-inline-panel { background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 20px 18px; margin-bottom: 20px; box-shadow: 0 4px 14px rgba(15,23,42,.06); }
.abslms-course-inline-panel__toolbar { margin-bottom: 16px; }
.abslms-course-inline-panel__back { background: none; border: none; padding: 0; color: #2563eb; font-weight: 600; font-size: 14px; cursor: pointer; }
.abslms-course-inline-panel__back:hover { text-decoration: underline; }
.abslms-course-panel-view__title { margin: 0 0 8px; font-size: 1.25rem; font-weight: 800; color: #0f172a; }
.abslms-course-panel-view__meta { margin: 0 0 14px; font-size: 13px; color: #64748b; }
.abslms-course-panel-plan-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.abslms-course-panel-plan-item .abslms-course-panel-quiz-btn { display: flex; align-items: center; gap: 10px; width: 100%; text-align: left; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 10px; background: #f8fafc; cursor: pointer; font: inherit; }
.abslms-course-panel-plan-item.is-unlocked .abslms-course-panel-quiz-btn { background: #fff; }
.abslms-course-panel-plan-item.is-locked .abslms-course-panel-quiz-btn,
.abslms-course-panel-plan-item .is-disabled,
.abslms-course-panel-plan-item .is-scheduled { opacity: .85; cursor: default; }
.abslms-course-panel-plan-item .abslms-plan-status.locked { font-size: 11px; text-transform: none; letter-spacing: 0; font-weight: 600; line-height: 1.35; text-align: right; max-width: 46%; }
.abslms-course-content-panel { margin-top: 20px; padding-top: 20px; border-top: 1px solid #e2e8f0; }
.abslms-free-source-pdf-frame { display: block; width: 100%; min-height: 480px; height: 70vh; border: 1px solid #e2e8f0; border-radius: 10px; background: #f8fafc; }
.abslms-free-source-item__actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0 0; }
.abslms-course-player--cards-only .abslms-category-courses { margin-top: 0; }
.abslms-category-courses { margin-top: 0; }
.abslms-category-courses-empty { background: #f8fafc; border: 1px dashed #cbd5e1; border-radius: 16px; padding: 48px 24px; text-align: center; color: #64748b; }
.abslms-category-courses-empty p { margin: 0; }
.abslms-category-course-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.abslms-category-course-item { margin: 0; }
.abslms-category-course-row { display: flex; align-items: center; gap: 18px 22px; width: 100%; box-sizing: border-box; padding: 20px 24px; border-radius: 16px; text-decoration: none; color: var(--abslms-course-text, #fff); background: var(--abslms-course-bg, #2563eb); box-shadow: 0 6px 20px rgba(15,23,42,.12); transition: transform .2s ease, box-shadow .2s ease, filter .2s ease; position: relative; overflow: hidden; border: none; font: inherit; text-align: left; cursor: pointer; }
button.abslms-category-course-row { appearance: none; -webkit-appearance: none; }
.abslms-category-course-row::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(255,255,255,.14) 0%, transparent 55%); pointer-events: none; }
.abslms-category-course-row:hover,
.abslms-category-course-row:focus-visible { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(15,23,42,.18); filter: brightness(1.03); outline: none; }
.abslms-category-course-row.is-enrolled { box-shadow: 0 6px 20px rgba(22,163,74,.2), inset 0 0 0 2px rgba(255,255,255,.35); }
.abslms-category-course-row__icon { position: relative; z-index: 1; flex-shrink: 0; width: 52px; height: 52px; background-color: rgba(255,255,255,.95); box-shadow: 0 4px 12px rgba(15,23,42,.12); }
.abslms-category-course-row__content { position: relative; z-index: 1; flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; text-align: left; }
.abslms-category-course-row__name { display: block; font-size: clamp(1.05rem, 2.5vw, 1.25rem); font-weight: 800; line-height: 1.3; letter-spacing: .01em; }
.abslms-category-course-row__excerpt { display: block; font-size: 13px; line-height: 1.45; opacity: .9; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.abslms-category-course-row__meta { position: relative; z-index: 1; display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.abslms-category-course-row__badge { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; padding: 6px 12px; border-radius: 999px; white-space: nowrap; background: rgba(255,255,255,.22); color: inherit; backdrop-filter: blur(4px); }
.abslms-category-course-row__badge.is-enrolled { background: rgba(255,255,255,.95); color: #15803d; }
.abslms-category-course-row__arrow { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,.2); font-size: 1.25rem; font-weight: 700; line-height: 1; transition: transform .15s, background .15s; }
.abslms-category-course-row:hover .abslms-category-course-row__arrow { transform: translateX(4px); background: rgba(255,255,255,.32); }
@media (max-width: 640px) {
	.abslms-category-course-row { flex-wrap: wrap; padding: 18px 18px; gap: 14px; }
	.abslms-category-course-row__meta { width: 100%; justify-content: space-between; padding-left: 70px; }
	.abslms-category-course-row__excerpt { -webkit-line-clamp: 3; }
}
@media (max-width: 768px) {
	.abslms-course-categories--cols-2 .abslms-cat-grid,
	.abslms-course-categories--cols-3 .abslms-cat-grid { grid-template-columns: 1fr; }
	.abslms-cat-card { min-height: 68px; padding: 14px 18px; }
	.abslms-cat-card__label { font-size: .98rem; }
}

.abslms-btn-lg { padding: 14px 28px; font-size: 16px; }
.abslms-btn-outline { background: transparent; border: 2px solid #2563eb; color: #2563eb !important; }
.abslms-btn-outline:hover { background: #eff6ff; }

/* Course landing page (non-enrolled / guests) */
.abslms-course-player--landing { max-width: 100%; margin: 0; padding: 0 0 32px; box-sizing: border-box; }
.abslms-course-landing-hero { position: relative; border-radius: 20px; overflow: hidden; margin-bottom: 40px; background: linear-gradient(135deg, #1e3a8a 0%, #2563eb 45%, #3b82f6 100%); color: #fff; min-height: 340px; display: flex; align-items: center; }
.abslms-course-landing-hero.has-image { background-size: cover; background-position: center; }
.abslms-course-landing-hero__overlay { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(15,23,42,.82) 0%, rgba(30,64,175,.72) 55%, rgba(37,99,235,.55) 100%); }
.abslms-course-landing-hero__inner { position: relative; z-index: 1; padding: 48px 44px; width: 100%; max-width: 820px; }
.abslms-course-landing-eyebrow { margin: 0 0 10px; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; opacity: .88; }
.abslms-course-landing-title { margin: 0 0 14px; font-size: clamp(1.85rem, 4vw, 2.75rem); line-height: 1.15; color: #fff; }
.abslms-course-landing-lead { margin: 0 0 24px; font-size: 1.05rem; line-height: 1.65; color: rgba(255,255,255,.92); max-width: 640px; }
.abslms-course-landing-stats { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 28px; }
.abslms-course-landing-stat { background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.18); border-radius: 12px; padding: 12px 18px; min-width: 96px; backdrop-filter: blur(6px); }
.abslms-course-landing-stat--highlight { background: rgba(34,197,94,.18); border-color: rgba(134,239,172,.35); }
.abslms-course-landing-stat__value { display: block; font-size: 1.35rem; font-weight: 800; line-height: 1.1; }
.abslms-course-landing-stat__label { display: block; margin-top: 4px; font-size: 12px; opacity: .9; }
.abslms-course-landing-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.abslms-course-landing-hero .abslms-btn-outline { border-color: rgba(255,255,255,.85); color: #fff !important; }
.abslms-course-landing-hero .abslms-btn-outline:hover { background: rgba(255,255,255,.12); }
.abslms-course-landing-cta-primary { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 2px; }
.abslms-course-landing-cta-sub { font-size: 12px; font-weight: 500; opacity: .9; }
.abslms-course-landing-body { display: flex; flex-direction: column; gap: 48px; }
.abslms-course-landing-section__head { margin-bottom: 20px; }
.abslms-course-landing-section__head h2 { margin: 0 0 8px; font-size: 1.55rem; color: #0f172a; }
.abslms-course-landing-section__head p { margin: 0; color: #64748b; font-size: 15px; }
.abslms-course-landing-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 28px 32px; box-shadow: 0 4px 18px rgba(15,23,42,.05); }
.abslms-course-landing-about__content { line-height: 1.75; color: #334155; }
.abslms-course-landing-about__content > :first-child { margin-top: 0; }
.abslms-course-landing-curriculum-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; }
.abslms-course-landing-module { background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; overflow: hidden; box-shadow: 0 4px 16px rgba(15,23,42,.04); }
.abslms-course-landing-module__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; }
.abslms-course-landing-module__head h3 { margin: 0; font-size: 1rem; color: #0f172a; }
.abslms-course-landing-module__count { font-size: 12px; font-weight: 600; color: #64748b; background: #e2e8f0; padding: 4px 10px; border-radius: 999px; }
.abslms-course-landing-module__list { list-style: none; margin: 0; padding: 12px; }
.abslms-course-landing-module__list li { margin: 6px 0; }
.abslms-course-landing-item { display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 10px; width: 100%; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 10px; background: #fff; color: #334155; font-size: 14px; text-align: left; cursor: pointer; transition: border-color .15s, background .15s; box-sizing: border-box; font-family: inherit; appearance: none; -webkit-appearance: none; }
.abslms-course-landing-item.is-free { border-color: #86efac; background: #f0fdf4; color: #14532d; }
.abslms-course-landing-item.is-free:hover { border-color: #22c55e; background: #dcfce7; }
.abslms-course-landing-item.is-locked { background: #f8fafc; color: #94a3b8; }
.abslms-course-landing-item.is-locked.is-clickable { cursor: pointer; }
.abslms-course-landing-item.is-locked.is-clickable:hover { border-color: #cbd5e1; background: #f1f5f9; }
.abslms-course-landing-item.is-disabled,
.abslms-course-landing-daily-item.is-disabled { cursor: default; pointer-events: none; opacity: .92; }
.abslms-course-landing-banner { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 14px 18px; border-radius: 12px; margin-bottom: 20px; font-size: 15px; line-height: 1.5; }
.abslms-course-landing-banner p { margin: 0; flex: 1; }
.abslms-course-landing-banner--success { background: #dcfce7; border: 1px solid #86efac; color: #14532d; }
.abslms-course-landing-banner--error { background: #fee2e2; border: 1px solid #fecaca; color: #b91c1c; }
.abslms-course-landing-banner__close { border: none; background: transparent; font-size: 22px; line-height: 1; cursor: pointer; color: inherit; opacity: .7; padding: 0 4px; flex-shrink: 0; }
.abslms-course-landing-banner__close:hover { opacity: 1; }
.abslms-course-landing-item__icon { font-size: 16px; }
.abslms-course-landing-item__title { font-weight: 600; color: inherit; min-width: 0; }
.abslms-course-landing-item__meta { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: #94a3b8; }
.abslms-course-landing-item__badge { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; padding: 3px 8px; border-radius: 999px; background: #dcfce7; color: #15803d; }
.abslms-course-landing-item__lock { opacity: .75; }
.abslms-course-landing-pricing-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 20px; }
.abslms-course-landing-plan { position: relative; background: #fff; border: 2px solid #e2e8f0; border-radius: 16px; padding: 24px; text-align: center; box-shadow: 0 4px 16px rgba(15,23,42,.04); }
.abslms-course-landing-plan.is-featured { border-color: #2563eb; box-shadow: 0 8px 24px rgba(37,99,235,.15); }
.abslms-course-landing-plan__tag { position: absolute; top: 14px; right: 14px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; background: #2563eb; color: #fff; padding: 4px 10px; border-radius: 999px; }
.abslms-course-landing-plan__name { margin: 0 0 8px; font-size: 1.15rem; color: #0f172a; }
.abslms-course-landing-plan__validity { margin: 0 0 16px; font-size: 14px; color: #64748b; }
.abslms-course-landing-plan__price { margin-bottom: 18px; }
.abslms-course-landing-plan__price del { display: block; color: #94a3b8; font-size: 14px; margin-bottom: 4px; }
.abslms-course-landing-plan__price strong { font-size: 1.5rem; color: #0f172a; }
.abslms-course-landing-plan__btn { width: 100%; box-sizing: border-box; text-align: center; }
.abslms-course-landing-daily-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.abslms-course-landing-daily-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 20px; box-shadow: 0 4px 16px rgba(15,23,42,.04); }
.abslms-course-landing-daily-card__head h3 { margin: 0 0 4px; font-size: 1rem; color: #0f172a; }
.abslms-course-landing-daily-card__meta { font-size: 13px; color: #64748b; }
.abslms-course-landing-daily-card__list { list-style: none; margin: 16px 0 0; padding: 0; }
.abslms-course-landing-daily-card__list li { margin: 8px 0; }
.abslms-course-landing-daily-item { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px 12px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; font-size: 13px; color: #64748b; cursor: pointer; text-align: left; box-sizing: border-box; transition: border-color .15s, background .15s; }
.abslms-course-landing-daily-item:hover { border-color: #cbd5e1; background: #f1f5f9; }
.abslms-course-landing-item.is-active { border-color: #2563eb; box-shadow: 0 0 0 2px rgba(37,99,235,.15); }
.abslms-course-landing-daily-item__day { font-weight: 700; min-width: 52px; color: #475569; }
.abslms-course-landing-daily-item__title { flex: 1; min-width: 0; }
.abslms-course-landing-daily-more { font-size: 13px; color: #64748b; font-style: italic; padding: 4px 2px; }
.abslms-course-landing-exam__panel { min-height: 200px; }
.abslms-course-landing-exam__panel .abslms-placeholder { text-align: center; padding: 48px 20px; color: #94a3b8; margin: 0; }
body.abslms-exam-fullscreen-open,
body.abslms-enroll-open,
body.abslms-ca-dialog-open { overflow: hidden; }
body.abslms-exam-fullscreen-open .abslms-site-header { display: none; }
.abslms-exam-fullscreen { position: fixed; inset: 0; z-index: 999999; background: #f1f5f9; display: flex; flex-direction: column; height: 100dvh; max-height: 100dvh; -webkit-transform: translateZ(0); transform: translateZ(0); }
.abslms-exam-fullscreen__inner { display: flex; flex-direction: column; height: 100%; max-width: 100%; margin: 0 auto; width: 100%; min-height: 0; position: relative; }
.abslms-exam-fullscreen__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: calc(14px + env(safe-area-inset-top, 0px)) 16px 14px; background: #fff; border-bottom: 1px solid #e2e8f0; box-shadow: 0 2px 8px rgba(15,23,42,.06); flex-shrink: 0; position: sticky; top: 0; z-index: 20; -webkit-transform: translateZ(0); transform: translateZ(0); }
.abslms-exam-fullscreen__title { margin: 0; font-size: 1.1rem; color: #0f172a; font-weight: 700; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding-right: 8px; }
.abslms-exam-fullscreen__close { position: relative; z-index: 21; display: inline-flex; align-items: center; justify-content: center; border: none; background: #f1f5f9; color: #475569; width: 48px; height: 48px; min-width: 48px; min-height: 48px; border-radius: 12px; font-size: 28px; line-height: 1; cursor: pointer; flex-shrink: 0; touch-action: manipulation; -webkit-tap-highlight-color: rgba(37,99,235,.15); user-select: none; -webkit-user-select: none; }
.abslms-exam-fullscreen__close:hover { background: #e2e8f0; color: #0f172a; }
.abslms-exam-fullscreen__close:active { background: #dbeafe; color: #1d4ed8; }
.abslms-exam-fullscreen__body { flex: 1; overflow: auto; padding: 24px; padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px)); -webkit-overflow-scrolling: touch; overscroll-behavior: contain; min-height: 0; touch-action: pan-y; }
.abslms-exam-fullscreen__body .abslms-exam { max-width: none; width: 100%; margin: 0; }
body.abslms-exam-fullscreen-open.abslms-exam-active-open .abslms-exam-fullscreen__head { padding-top: calc(10px + env(safe-area-inset-top, 0px)); padding-bottom: 10px; }
body.abslms-exam-fullscreen-open.abslms-exam-active-open .abslms-exam-fullscreen__title { font-size: 1rem; }
body.abslms-exam-fullscreen-open.abslms-exam-active-open .abslms-exam-fullscreen__body { padding-top: 16px; }
.abslms-exam-fullscreen-hint { text-align: center; padding: 32px 20px; color: #64748b; }
.abslms-enroll-modal { position: fixed; inset: 0; z-index: 100001; display: flex; align-items: center; justify-content: center; padding: 20px; box-sizing: border-box; }
.abslms-enroll-modal[hidden] { display: none !important; }
.abslms-enroll-modal__backdrop { position: absolute; inset: 0; background: rgba(15,23,42,.55); backdrop-filter: blur(3px); }
.abslms-enroll-modal__dialog { position: relative; z-index: 1; width: 100%; max-width: 480px; max-height: calc(100vh - 40px); overflow-y: auto; background: #fff; border-radius: 16px; padding: 28px 28px 24px; box-shadow: 0 20px 50px rgba(15,23,42,.2); }
.abslms-enroll-modal.is-wide .abslms-enroll-modal__dialog { max-width: 520px; }
.abslms-enroll-modal__auth-form { margin-bottom: 8px; }
.abslms-enroll-modal__auth-form .abslms-field { margin-bottom: 14px; }
.abslms-enroll-modal__actions--form { margin-top: 8px; }
.abslms-enroll-modal__close { position: absolute; top: 12px; right: 14px; border: none; background: transparent; font-size: 26px; line-height: 1; color: #94a3b8; cursor: pointer; padding: 4px; }
.abslms-enroll-modal__close:hover { color: #475569; }
.abslms-enroll-modal__title { margin: 0 0 12px; font-size: 1.35rem; color: #0f172a; padding-right: 28px; }
.abslms-enroll-modal__text { margin: 0 0 22px; color: #64748b; line-height: 1.6; font-size: 15px; }
.abslms-enroll-modal__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.abslms-enroll-modal__plans { display: flex; flex-direction: column; gap: 10px; margin-bottom: 20px; max-height: 320px; overflow-y: auto; }
.abslms-enroll-plan { display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px; border: 2px solid #e2e8f0; border-radius: 12px; cursor: pointer; transition: border-color .15s, background .15s; }
.abslms-enroll-plan:hover { border-color: #cbd5e1; background: #f8fafc; }
.abslms-enroll-plan.is-selected,
.abslms-enroll-plan.is-featured.is-selected { border-color: #2563eb; background: #eff6ff; }
.abslms-enroll-plan.is-featured { border-color: #93c5fd; }
.abslms-enroll-plan input { margin-top: 4px; flex-shrink: 0; accent-color: #2563eb; }
.abslms-enroll-plan__content { flex: 1; min-width: 0; }
.abslms-enroll-plan__name { display: block; font-weight: 700; color: #0f172a; margin-bottom: 2px; }
.abslms-enroll-plan__validity { display: block; font-size: 13px; color: #64748b; margin-bottom: 6px; }
.abslms-enroll-plan__price del { display: inline; margin-right: 8px; color: #94a3b8; font-size: 13px; }
.abslms-enroll-plan__price strong { font-size: 1.15rem; color: #0f172a; }
.single-abslms_course .entry-header,
.single-abslms_course .page-header,
.single-abslms_course article .entry-title { display: none; }
.single-abslms_course .entry-content { margin-top: 0; }

/* Use theme/page content padding only — avoid double gutters on LMS blocks */
.entry-content > .abslms-course-player,
.entry-content > .abslms-student-dashboard,
.entry-content > .abslms-browse-courses,
.entry-content > .abslms-daily-ca,
.entry-content > .abslms-home-promo,
.entry-content > .abslms-course-categories,
.entry-content > .abslms-quiz,
.entry-content > .abslms-my-courses,
.entry-content > .abslms-taxonomy-course-category,
.entry-content > .abslms-auth,
.entry-content > .abslms-manchi-quotation,
.entry-content > .abslms-daily-ca-box {
	width: 100%;
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
}

/* Homepage promo row (quotation + daily CA) */
.abslms-home-promo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: stretch; width: 100%; max-width: 100%; margin: 0 0 24px; box-sizing: border-box; }
.abslms-home-promo--ca-only { grid-template-columns: minmax(0, 1fr); max-width: 520px; }
.abslms-home-promo__col { min-width: 0; display: flex; }
.abslms-home-promo__col > .abslms-manchi-quotation,
.abslms-home-promo__col > .abslms-daily-ca-box { flex: 1; width: 100%; min-height: 0; }

.abslms-subject-topics-toolbar { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin: 0 0 16px; }
.abslms-subject-topics-title { margin: 0; font-size: 1.2rem; font-weight: 700; color: #0f172a; }
.abslms-curriculum-head__topic { margin: 4px 0 0; font-size: 1.05rem; font-weight: 700; color: #111; line-height: 1.3; }

/* Manchi Quotation box — matches acharyasBook homepage card */
.abslms-manchi-quotation { box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 220px; padding: 28px 24px 22px; background: #fff; border: 1px solid #c8c8c8; border-radius: 20px; text-align: center; font-family: inherit; box-shadow: 0 4px 14px rgba(15,23,42,.07); }
.abslms-home-promo .abslms-manchi-quotation,
.abslms-home-promo .abslms-daily-ca-box { min-height: 0; }
.abslms-home-promo .abslms-manchi-quotation--image-only { padding: 0; }
.abslms-manchi-quotation--promo { height: auto; }
.abslms-manchi-quotation__head { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 0 0 16px; flex-wrap: wrap; }
.abslms-manchi-quotation__title { margin: 0; font-size: 1.35rem; font-weight: 700; line-height: 1.25; color: #111; letter-spacing: 0.01em; }
.abslms-manchi-quotation__icon { display: inline-block; width: 28px; height: 28px; flex-shrink: 0; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3c-2 4-4 6-8 7 4 1 6 3 8 7 2-4 4-6 8-7-4-1-6-3-8-7z'/%3E%3Cpath d='M12 17v4'/%3E%3C/svg%3E"); }
.abslms-manchi-quotation--image-only {
	position: relative;
	padding: 0;
	background-color: #1a1a1a;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	aspect-ratio: 4 / 2;
	min-height: 180px;
	overflow: hidden;
}
.abslms-manchi-quotation--image-only .abslms-manchi-quotation__content {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100%;
	min-height: inherit;
	padding: 14px 16px 12px;
}
.abslms-manchi-quotation--image-only .abslms-manchi-quotation__head {
	margin: 0;
	padding: 6px 12px;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
	gap: 8px;
}
.abslms-manchi-quotation--image-only .abslms-manchi-quotation__title {
	margin: 0;
}
.abslms-manchi-quotation--image-only .abslms-manchi-quotation__date {
	margin: 8px 0 0;
}
.abslms-manchi-quotation--image-only .abslms-manchi-quotation__badge {
	margin: 0;
	padding: 8px 16px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0 2px 10px rgba(15, 23, 42, 0.15);
}
.abslms-manchi-quotation__media { width: 100%; max-width: 100%; margin: 0 0 14px; aspect-ratio: 4 / 2; border-radius: 12px; overflow: hidden; }
.abslms-manchi-quotation__image { display: block; width: 100%; height: 100%; object-fit: cover; }
.abslms-manchi-quotation__date { margin: 0 0 14px; padding: 4px 14px; font-size: 12px; font-weight: 600; letter-spacing: 0.03em; color: #475569; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 999px; line-height: 1.4; }
.abslms-manchi-quotation__quote { margin: 0; padding: 0; border: none; max-width: 100%; flex: 1; display: flex; align-items: center; }
.abslms-manchi-quotation__quote p { margin: 0; font-size: 1.05rem; line-height: 1.65; color: #1a1a1a; font-weight: 500; }
.abslms-manchi-quotation__badge { margin: 18px 0 0; font-size: 1.05rem; font-weight: 700; color: #dc2626; line-height: 1.2; }

.abslms-promo-quote { margin: 0; padding: 0; border: none; max-width: 100%; }
.abslms-promo-quote p { margin: 0; font-size: 1.05rem; line-height: 1.65; color: #1a1a1a; font-weight: 500; }
.abslms-promo-quote p::before { content: '\201C'; }
.abslms-promo-quote p::after { content: '\201D'; }

/* Daily CA test box — gold card (homepage) */
.abslms-daily-ca-box { box-sizing: border-box; display: flex; flex-direction: column; min-height: 220px; background: #fff; border: 1px solid #c9a227; border-radius: 20px; overflow: hidden; text-align: center; color: inherit; font-family: inherit; box-shadow: 0 4px 14px rgba(15,23,42,.08); }
.abslms-daily-ca-box--static { cursor: default; }
.abslms-daily-ca-box--link { text-decoration: none; cursor: pointer; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.abslms-daily-ca-box--link:hover,
.abslms-daily-ca-box--link:focus-visible { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(15,23,42,.12); border-color: #b8923f; outline: none; }
.abslms-daily-ca-box__head { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 14px 18px; background: linear-gradient(90deg, #a67c2e 0%, #d4af37 22%, #f5dc6a 50%, #d4af37 78%, #a67c2e 100%); color: #111; border-bottom: 1px solid rgba(166,124,46,.35); }
.abslms-daily-ca-box__icon { display: inline-block; width: 24px; height: 24px; flex-shrink: 0; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E"); }
.abslms-daily-ca-box__title { font-size: 1.15rem; font-weight: 700; line-height: 1.3; color: #111; text-shadow: 0 1px 0 rgba(255,255,255,.25); }
.abslms-daily-ca-box__body { display: flex; flex-direction: column; align-items: center; justify-content: space-between; flex: 1; padding: 18px 20px 16px; background: #fff; gap: 12px; }
.abslms-daily-ca-box__details { width: 100%; max-width: 100%; text-align: left; }
.abslms-daily-ca-box__date { margin: 0 0 10px; padding: 4px 12px; font-size: 12px; font-weight: 600; letter-spacing: 0.02em; color: #5c4a1f; background: #faf6ee; border: 1px solid #e8d9b8; border-radius: 999px; line-height: 1.4; display: inline-block; }
.abslms-daily-ca-box__quiz-title { margin: 0 0 10px; font-size: 1rem; font-weight: 700; line-height: 1.35; color: #111; }
.abslms-daily-ca-box__meta { margin: 0 0 12px; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.abslms-daily-ca-box__meta li { margin: 0; padding: 5px 10px; font-size: 12px; font-weight: 600; color: #334155; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 999px; line-height: 1.3; }
.abslms-daily-ca-box__instructions-wrap { margin: 0; padding: 12px 14px; background: #fffdf7; border: 1px solid #ead9b0; border-radius: 12px; }
.abslms-daily-ca-box__instructions-title { margin: 0 0 8px; font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: #7a5b1f; }
.abslms-daily-ca-box__instructions { margin: 0; padding-left: 18px; color: #1f2937; font-size: 0.92rem; line-height: 1.5; }
.abslms-daily-ca-box__instructions li + li { margin-top: 6px; }
.abslms-daily-ca-box__cta { margin: 12px 0 0; font-size: 0.95rem; font-weight: 700; color: #9a7618; line-height: 1.3; }
.abslms-daily-ca-box__empty { margin: 0; font-size: 0.95rem; line-height: 1.55; color: #475569; }
.abslms-daily-ca-box__quote { flex: 1; display: flex; align-items: center; justify-content: center; }
.abslms-daily-ca-box__text { margin: 0; font-size: 1.05rem; line-height: 1.65; color: #1a1a1a; font-weight: 500; max-width: 100%; }
.abslms-daily-ca-box__badge { margin: 0; font-size: 1.05rem; font-weight: 700; color: #b8923f; line-height: 1.2; align-self: center; }

/* Homepage promo — prominent free badge CTA */
.abslms-home-promo .abslms-daily-ca-box__badge {
	display: block;
	width: 100%;
	margin: auto 0 0;
	padding: 14px 18px;
	font-size: 1.75rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	line-height: 1.2;
	color: #fff;
	text-align: center;
	background: linear-gradient(135deg, #dc2626 0%, #ef4444 42%, #f97316 100%);
	border-radius: 14px;
	box-shadow: 0 4px 16px rgba(220, 38, 38, 0.4);
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
	transition: transform 0.15s ease, box-shadow 0.15s ease;
	animation: abslms-ca-badge-glow 2.2s ease-in-out infinite;
}

.abslms-home-promo .abslms-daily-ca-box--link:hover .abslms-daily-ca-box__badge,
.abslms-home-promo .abslms-daily-ca-box--link:focus-visible .abslms-daily-ca-box__badge {
	transform: scale(1.03);
	box-shadow: 0 8px 24px rgba(220, 38, 38, 0.55);
}

@keyframes abslms-ca-badge-glow {
	0%, 100% { box-shadow: 0 4px 16px rgba(220, 38, 38, 0.4); }
	50% { box-shadow: 0 6px 22px rgba(239, 68, 68, 0.65); }
}

@media (max-width: 768px) {
	.abslms-course-landing-hero__inner { padding: 32px 22px; }
	.abslms-course-landing-hero__actions { flex-direction: column; align-items: stretch; }
	.abslms-course-landing-hero__actions .abslms-btn { width: 100%; text-align: center; box-sizing: border-box; }
	.abslms-course-landing-card { padding: 20px 18px; }
	.abslms-course-landing-curriculum-grid,
	.abslms-course-landing-pricing-grid,
	.abslms-course-landing-daily-grid { grid-template-columns: 1fr; }
}

/* Homepage promo — mobile: stacked, full content visible */
@media (max-width: 767px) {
	.abslms-home-promo {
		grid-template-columns: 1fr;
		gap: 12px;
		margin: 0 0 16px;
		align-items: stretch;
	}
	.abslms-home-promo__col { display: flex; }
	.abslms-home-promo__col > .abslms-manchi-quotation,
	.abslms-home-promo__col > .abslms-daily-ca-box {
		flex: 1 1 auto;
		width: 100%;
		height: auto;
	}
	.abslms-home-promo .abslms-manchi-quotation,
	.abslms-home-promo .abslms-daily-ca-box {
		border-radius: 14px;
		box-shadow: 0 3px 12px rgba(15,23,42,.08);
		justify-content: flex-start;
		display: flex;
		flex-direction: column;
	}
	.abslms-home-promo .abslms-manchi-quotation { padding: 0; }
	.abslms-home-promo .abslms-manchi-quotation--image-only .abslms-manchi-quotation__content { padding: 10px 12px 10px; }
	.abslms-home-promo .abslms-manchi-quotation__head { margin: 0; gap: 8px; flex-shrink: 0; }
	.abslms-home-promo .abslms-manchi-quotation__title { font-size: 1rem; line-height: 1.25; font-weight: 700; }
	.abslms-home-promo .abslms-manchi-quotation__icon { width: 22px; height: 22px; }
	.abslms-home-promo .abslms-daily-ca-box__head { padding: 10px 12px; gap: 8px; flex-shrink: 0; }
	.abslms-home-promo .abslms-daily-ca-box__title { font-size: 0.92rem; line-height: 1.25; font-weight: 700; }
	.abslms-home-promo .abslms-daily-ca-box__icon { width: 20px; height: 20px; }
	.abslms-home-promo .abslms-daily-ca-box__body {
		padding: 10px 12px 12px;
		justify-content: flex-start;
		flex: 0 0 auto;
		overflow: visible;
		display: flex;
		flex-direction: column;
		gap: 8px;
	}
	.abslms-home-promo .abslms-daily-ca-box__quiz-title { font-size: 0.88rem; margin-bottom: 8px; }
	.abslms-home-promo .abslms-daily-ca-box__meta { gap: 6px; margin-bottom: 8px; }
	.abslms-home-promo .abslms-daily-ca-box__meta li { font-size: 11px; padding: 4px 8px; }
	.abslms-home-promo .abslms-daily-ca-box__cta { margin-top: 8px; font-size: 0.84rem; }
	.abslms-home-promo .abslms-manchi-quotation__quote,
	.abslms-home-promo .abslms-daily-ca-box__quote {
		flex: 1 1 auto;
		min-height: 0;
		overflow: hidden;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0;
		width: 100%;
	}
	.abslms-home-promo .abslms-promo-quote p {
		font-size: 0.875rem;
		line-height: 1.45;
		font-weight: 500;
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}
	.abslms-home-promo .abslms-manchi-quotation__badge {
		margin: 8px 0 0;
		font-size: 0.875rem;
		font-weight: 700;
		line-height: 1.2;
		flex-shrink: 0;
	}
	.abslms-home-promo .abslms-daily-ca-box__badge {
		margin: 10px 0 0;
		padding: 12px 14px;
		font-size: 1.4rem;
		font-weight: 800;
		border-radius: 12px;
		flex-shrink: 0;
	}
}

/* Daily CA quiz page — mobile player layout */
@media (max-width: 767px) {
	.abslms-daily-ca .abslms-course-landing-banner {
		margin-bottom: 10px;
		padding: 12px 14px;
		border-radius: 10px;
		font-size: 14px;
	}

	.abslms-daily-ca--browse .abslms-ca-browse {
		padding: 0 0 12px;
	}

	.abslms-daily-ca--browse .abslms-ca-browse-intro {
		margin-bottom: 14px;
		text-align: left;
	}

	.abslms-daily-ca--browse .abslms-ca-browse-intro p {
		font-size: 14px;
		line-height: 1.5;
	}

	.abslms-ca-browse-grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.abslms-ca-browse-card {
		min-height: 0;
		padding: 14px;
		border-radius: 12px;
		box-shadow: 0 2px 10px rgba(15,23,42,.06);
	}

	.abslms-ca-browse-card__title {
		font-size: 14px;
	}

	.abslms-daily-ca--player .abslms-ca-browse {
		padding: 0;
	}

	.abslms-daily-ca--player .abslms-ca-player-layout {
		min-height: 0;
		margin-top: 0;
		gap: 0;
	}

	.abslms-daily-ca--player .abslms-ca-player-layout .abslms-curriculum {
		border-radius: 10px;
		border-left: none;
		border-right: none;
	}

	.abslms-daily-ca--player .abslms-ca-player-layout .abslms-curriculum-head {
		padding: 12px 14px;
	}

	.abslms-daily-ca--player .abslms-ca-player-layout .abslms-curriculum-body {
		max-height: none;
		padding: 12px 14px 16px;
	}

	/* Exams open fullscreen — hide empty content panel on mobile */
	.abslms-daily-ca--player .abslms-ca-panel {
		display: none !important;
	}

	.abslms-daily-ca .abslms-ca-empty-panel {
		min-height: 0;
		padding: 24px 0;
		border: none;
		border-radius: 0;
	}
}

/* Site header — acharyasBook branding */
.abslms-site-header {
	--abslms-header-blue: #1976D2;
	--abslms-header-nav-bg: #eceff1;
	width: 100%;
	margin: 0 0 1rem;
	font-family: inherit;
	box-sizing: border-box;
}
.abslms-site-header *,
.abslms-site-header *::before,
.abslms-site-header *::after { box-sizing: border-box; }

.abslms-site-header__top {
	background: #fff;
	border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.abslms-site-header__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 12px 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.abslms-site-header__brand {
	display: flex;
	align-items: center;
	gap: 14px;
	text-decoration: none;
	color: inherit;
	min-width: 0;
	flex: 1 1 auto;
}
.abslms-site-header__brand:hover { opacity: 0.92; }

.abslms-site-header__logo {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
	display: block;
}
.abslms-site-header__logo--placeholder {
	background: linear-gradient(145deg, #fef3c7, #fde68a);
	border: 2px solid #d97706;
}

.abslms-site-header__titles {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.abslms-site-header__title {
	font-size: clamp(1.35rem, 3.5vw, 2rem);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: 0.01em;
}
.abslms-site-header__subtitle {
	font-size: clamp(0.85rem, 2vw, 1rem);
	font-weight: 600;
	color: #111827;
	line-height: 1.2;
}

.abslms-site-header__auth {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
}

.abslms-site-header__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 22px;
	border-radius: 999px;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	border: 2px solid var(--abslms-header-blue);
	transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
	white-space: nowrap;
}
.abslms-site-header__btn--outline {
	background: #fff;
	color: var(--abslms-header-blue);
}
.abslms-site-header__btn--outline:hover {
	background: rgba(25, 118, 210, 0.08);
	color: var(--abslms-header-blue);
}
.abslms-site-header__btn--primary {
	background: var(--abslms-header-blue);
	color: #fff;
}
.abslms-site-header__btn--primary:hover {
	background: #1565c0;
	border-color: #1565c0;
	color: #fff;
	box-shadow: 0 2px 8px rgba(25, 118, 210, 0.35);
}

.abslms-site-header__nav-bar {
	background: var(--abslms-header-nav-bg);
	box-shadow: 0 3px 6px rgba(15, 23, 42, 0.08);
	border-radius: 0 0 12px 12px;
}
.abslms-site-header__nav-bar .abslms-site-header__inner {
	padding-top: 10px;
	padding-bottom: 10px;
	justify-content: flex-start;
}

.abslms-site-header__tabs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	width: 100%;
}

.abslms-site-header__tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 9px 20px;
	border-radius: 999px;
	background-color: var(--abslms-tab-color, #2196F3) !important;
	color: #fff !important;
	font-size: 0.95rem;
	font-weight: 700;
	text-decoration: none !important;
	line-height: 1.2;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.35),
		0 2px 4px rgba(15, 23, 42, 0.18);
	transition: transform 0.12s ease, filter 0.12s ease;
}
.abslms-site-header__tab:hover {
	filter: brightness(1.06);
	transform: translateY(-1px);
	color: #fff !important;
	text-decoration: none !important;
}

@media (max-width: 767px) {
	.abslms-site-header__inner {
		flex-wrap: wrap;
		padding: 10px 12px;
	}
	.abslms-site-header__logo {
		width: 56px;
		height: 56px;
	}
	.abslms-site-header__auth {
		width: 100%;
		justify-content: flex-end;
	}
	.abslms-site-header__tabs {
		gap: 6px;
	}
	.abslms-site-header__tab {
		padding: 8px 14px;
		font-size: 0.85rem;
	}
}

/* Responsive polish + exam full-view */
.abslms-student-dashboard,
.abslms-browse-courses,
.abslms-course-categories,
.abslms-course-subjects-page,
.abslms-daily-ca,
.abslms-course-player { width: 100%; max-width: 100%; box-sizing: border-box; }
.abslms-quiz.abslms-exam { max-width: none; width: 100%; }
.abslms-exam-footer { padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)); }
body.abslms-exam-fullscreen-open.abslms-exam-active-open .abslms-exam-footer { padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px)); }
.abslms-exam-form .abslms-option { min-height: 44px; box-sizing: border-box; }
.abslms-btn-lg { min-height: 48px; padding: 14px 28px; font-size: 1rem; }

@media (max-width: 768px) {
	.abslms-exam-fullscreen__head { padding-left: 16px; padding-right: 16px; }
	.abslms-exam-fullscreen__body { padding: 16px; padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px)); }
	.abslms-exam-header { margin-bottom: 18px; padding-bottom: 16px; }
	.abslms-exam-title { font-size: 1.25rem; line-height: 1.35; }
	.abslms-exam-meta { flex-direction: column; align-items: flex-start; gap: 6px; font-size: 13px; }
	.abslms-exam-toolbar { border-radius: 10px; padding: 10px 12px; }
	.abslms-timer-value { font-size: 20px; }
	.abslms-q-nav-jump { padding: 8px 10px; font-size: 12px; }
	.abslms-exam-form fieldset.abslms-question { padding: 14px; margin-bottom: 12px; border-radius: 12px; }
	.abslms-exam-form .abslms-option { padding: 14px 12px; }
	.abslms-quiz-score { flex-direction: column; align-items: stretch; gap: 10px; padding: 16px 18px; }
	.abslms-quiz-score__meta { align-items: flex-start; }
	.abslms-review-option { flex-wrap: wrap; }
	.abslms-review-option__tags { margin-left: 0; width: 100%; padding-left: 28px; }
	.abslms-review-legend { gap: 8px; }
	.abslms-course-header { padding: 20px 18px; border-radius: 10px; }
	.abslms-course-header h2 { font-size: 1.35rem; }
	.abslms-dash-hero { padding: 22px 18px; }
	.abslms-dash-metrics-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.abslms-dash-metric { padding: 14px 12px; }
	.abslms-browse-grid { grid-template-columns: 1fr; }
	.abslms-course-landing-section__grid { grid-template-columns: 1fr; }
	.abslms-course-landing-daily-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
	.abslms-dash-metrics-grid { grid-template-columns: 1fr; }
	.abslms-exam-header-top { flex-direction: column; align-items: flex-start; }
	.abslms-q-nav-fab { right: 14px; bottom: calc(14px + env(safe-area-inset-bottom, 0px)); }
}

body.admin-bar .abslms-exam-fullscreen { top: 32px; height: calc(100dvh - 32px); max-height: calc(100dvh - 32px); }
@media screen and (max-width: 782px) {
	body.admin-bar .abslms-exam-fullscreen { top: 46px; height: calc(100dvh - 46px); max-height: calc(100dvh - 46px); }
}

/* LMS mobile — remove theme double gutters, use full width with minimal safe-area padding */
@media (max-width: 767px) {
	body.abslms-lms-page {
		--abslms-mobile-gutter: max(10px, env(safe-area-inset-left, 0px));
		--abslms-mobile-gutter-r: max(10px, env(safe-area-inset-right, 0px));
	}

	body.abslms-lms-page .entry-content,
	body.abslms-lms-page .site-content,
	body.abslms-lms-page .content-area,
	body.abslms-lms-page #primary,
	body.abslms-lms-page #content,
	body.abslms-lms-page .post-inner,
	body.abslms-lms-page .page-content,
	body.abslms-lms-page .wp-block-post-content,
	body.abslms-lms-page .hentry,
	body.single-abslms_course .entry-content,
	body.tax-abslms_course_category #primary {
		padding-left: 0 !important;
		padding-right: 0 !important;
		max-width: none !important;
		box-sizing: border-box;
	}

	body.abslms-lms-page .entry-content > [class*="abslms-"],
	body.abslms-lms-page main.abslms-taxonomy-course-category {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: var(--abslms-mobile-gutter, 10px) !important;
		padding-right: var(--abslms-mobile-gutter-r, 10px) !important;
		box-sizing: border-box;
	}

	body.abslms-lms-page .abslms-site-header {
		margin-bottom: 0.5rem;
	}

	body.abslms-lms-page .abslms-site-header__inner {
		padding-left: max(10px, env(safe-area-inset-left, 0px));
		padding-right: max(10px, env(safe-area-inset-right, 0px));
	}

	/* Dashboard */
	body.abslms-lms-page .abslms-student-dashboard { padding-bottom: 16px; }
	body.abslms-lms-page .abslms-dash-hero { padding: 18px 14px; margin-bottom: 16px; border-radius: 12px; }
	body.abslms-lms-page .abslms-dash-section { margin-bottom: 22px; }
	body.abslms-lms-page .abslms-dash-panel,
	body.abslms-lms-page .abslms-dash-metrics-grid { padding: 12px; border-radius: 12px; }
	body.abslms-lms-page .abslms-dash-stat-card { padding: 14px 10px; }
	body.abslms-lms-page .abslms-dash-course-body { padding: 16px; }
	body.abslms-lms-page .abslms-dash-review-dialog { border-radius: 12px; }
	body.abslms-lms-page .abslms-dash-review-body { padding: 16px 14px 20px; }

	body.abslms-lms-page .abslms-dash-whatsapp-table-wrap { overflow: visible; }
	body.abslms-lms-page .abslms-dash-whatsapp-table { min-width: 0; width: 100%; border-collapse: separate; border-spacing: 0 10px; }
	body.abslms-lms-page .abslms-dash-whatsapp-table thead { display: none; }
	body.abslms-lms-page .abslms-dash-whatsapp-table tbody,
	body.abslms-lms-page .abslms-dash-whatsapp-table tr,
	body.abslms-lms-page .abslms-dash-whatsapp-table td { display: block; width: 100%; }
	body.abslms-lms-page .abslms-dash-whatsapp-table tr {
		background: #fff;
		border: 1px solid #bbf7d0;
		border-radius: 14px;
		padding: 14px;
		box-shadow: 0 6px 16px rgba(22,163,74,.08);
	}
	body.abslms-lms-page .abslms-dash-whatsapp-table td {
		padding: 6px 0;
		text-align: left !important;
		border: 0;
	}
	body.abslms-lms-page .abslms-dash-whatsapp-table td:last-child { padding-top: 12px; }
	body.abslms-lms-page .abslms-dash-whatsapp-btn { width: 100%; box-sizing: border-box; }
	body.abslms-lms-page .abslms-whatsapp-join { padding: 16px; gap: 14px; }
	body.abslms-lms-page .abslms-whatsapp-join__btn { width: 100%; box-sizing: border-box; }

	/* Browse & categories */
	body.abslms-lms-page .abslms-browse-courses,
	body.abslms-lms-page .abslms-course-categories { padding-bottom: 16px; }
	body.abslms-lms-page .abslms-browse-hero { padding: 22px 14px; margin-bottom: 18px; border-radius: 12px; }
	body.abslms-lms-page .abslms-browse-card { border-radius: 12px; }
	body.abslms-lms-page .abslms-category-card { border-radius: 12px; }

	/* Auth */
	body.abslms-lms-page .abslms-auth { padding: 8px 0; max-width: none; }
	body.abslms-lms-page .abslms-auth-card { padding: 20px 16px; border-radius: 12px; }

	/* Course player & subjects */
	body.abslms-lms-page .abslms-course-header { padding: 16px 14px; margin-bottom: 12px; border-radius: 10px; }
	body.abslms-lms-page .abslms-course-page-summary { gap: 10px; margin-bottom: 14px; }
	body.abslms-lms-page .abslms-course-page-summary__col { padding: 14px 12px; border-radius: 12px; }
	body.abslms-lms-page .abslms-course-player--cards-only,
	body.abslms-lms-page .abslms-course-subjects-page,
	body.abslms-lms-page .abslms-course-player--subject { padding-bottom: 16px; }
	body.abslms-lms-page .abslms-subject-layout.abslms-subject-layout--browse { max-width: 100%; margin: 0; box-shadow: none; border-left: none; border-right: none; border-radius: 10px; }
	body.abslms-lms-page .abslms-subject-layout--browse .abslms-curriculum-body { padding: 12px 14px 16px; }
	body.abslms-lms-page .abslms-subject-layout.is-content-active { box-shadow: none; border-radius: 10px; }
	body.abslms-lms-page .abslms-subject-layout.is-content-active .abslms-subject-content-panel { min-height: 0; border-radius: 10px; }
	body.abslms-lms-page .abslms-subject-content-panel { padding: 14px 12px; min-height: 0; }
	body.abslms-lms-page .abslms-lesson-content { padding: 14px 12px; min-height: 0; border-radius: 10px; }
	body.abslms-lms-page .abslms-lesson-content .abslms-placeholder { padding: 20px 12px; }
	body.abslms-lms-page .abslms-curriculum { border-radius: 10px; }
	body.abslms-lms-page .abslms-curriculum-body { padding: 12px 14px; }
	body.abslms-lms-page .abslms-curriculum-head { padding: 12px 14px; }
	body.abslms-lms-page .abslms-course-layout { min-height: 0; gap: 10px; }

	/* Course landing (guest) */
	body.abslms-lms-page .abslms-course-landing-hero { margin-bottom: 18px; border-radius: 12px; min-height: 0; }
	body.abslms-lms-page .abslms-course-landing-hero__inner { padding: 22px 14px; }
	body.abslms-lms-page .abslms-course-landing-body { gap: 24px; }
	body.abslms-lms-page .abslms-course-landing-card,
	body.abslms-lms-page .abslms-course-landing-module,
	body.abslms-lms-page .abslms-course-landing-plan,
	body.abslms-lms-page .abslms-course-landing-daily-card { border-radius: 12px; }
	body.abslms-lms-page .abslms-course-landing-card { padding: 18px 14px; }
	body.abslms-lms-page .abslms-course-landing-banner { margin-bottom: 12px; padding: 12px 14px; }

	/* Cards & grids */
	body.abslms-lms-page .abslms-course-card,
	body.abslms-lms-page .abslms-course-grid { gap: 12px; }
	body.abslms-lms-page .abslms-course-card { padding: 16px; border-radius: 12px; }
	body.abslms-lms-page .abslms-my-courses { padding-bottom: 16px; }

	/* Homepage promo */
	body.abslms-lms-page .abslms-home-promo { margin-bottom: 12px; gap: 10px; }

	/* Exams (inline, not fullscreen overlay) */
	body.abslms-lms-page .abslms-exam-header { margin-bottom: 14px; padding-bottom: 12px; }
	body.abslms-lms-page .abslms-exam-form fieldset.abslms-question { padding: 12px; margin-bottom: 10px; }
	body.abslms-lms-page .abslms-question-result { border-radius: 10px; margin-bottom: 12px; }
	body.abslms-lms-page .abslms-question-result__q { padding: 14px 14px 10px; }
	body.abslms-lms-page .abslms-question-result__options { padding: 0 12px 12px; }
}
