/* OM PrepSuite front-end styles — scoped under .omps-wrap */
.omps-wrap{--omps-violet:#6d28d9;--omps-violet-deep:#4c1d95;--omps-violet-light:#ede9fe;--omps-ink:#16162a;--omps-ink-soft:#4b4a63;--omps-mint:#059669;--omps-mint-light:#d1fae5;--omps-amber:#d97706;--omps-rose:#dc2626;--omps-rose-light:#fee2e2;--omps-line:#e6e1d8;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--omps-ink);max-width:960px;margin:0 auto;
}
.omps-wrap *{box-sizing:border-box;}
.omps-wrap h3{margin:0 0 14px;font-size:18px;}

.omps-card{background:#fff;border:1px solid var(--omps-line);border-radius:12px;padding:18px 20px;}
.omps-empty{text-align:center;color:var(--omps-ink-soft);padding:40px 20px;}

.omps-grid{display:grid;grid-template-columns:300px 1fr;gap:20px;}
@media (max-width:720px){.omps-grid{grid-template-columns:1fr;}}

.omps-builder-centered{max-width:460px;margin:0 auto;}
.omps-modal-lg{max-width:680px;}
.omps-modal-lg .omps-rx-card{text-align:left;}

/* Modal (shared base — used by the MCQ test popup, results popup, and the course enroll modal) */
.omps-modal-backdrop{position:fixed;inset:0;background:rgba(22,22,42,.55);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;}
.omps-modal{background:#fff;border-radius:16px;padding:26px 24px;max-width:420px;width:100%;position:relative;max-height:86vh;overflow-y:auto;}
.omps-modal h3{margin:0 0 10px;font-size:18px;}
.omps-modal-close{position:absolute;top:14px;right:16px;background:none;border:none;font-size:20px;line-height:1;cursor:pointer;color:var(--omps-ink-soft);}
.omps-modal-close:hover{color:var(--omps-rose);}

/* MCQ results popup */
.omps-result-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0;}
.omps-result-stat{background:#faf8f5;border-radius:10px;padding:12px 8px;text-align:center;}
.omps-result-num{font-size:20px;font-weight:700;color:var(--omps-violet-deep);}
.omps-result-label{font-size:10.5px;color:var(--omps-ink-soft);margin-top:2px;}
.omps-result-stat.omps-result-good .omps-result-num{color:var(--omps-mint);}
.omps-result-stat.omps-result-bad .omps-result-num{color:var(--omps-rose);}
@media (max-width:480px){.omps-result-stats{grid-template-columns:repeat(2,1fr);}}

.omps-wrap label{font-size:12.5px;font-weight:600;color:var(--omps-ink-soft);display:block;margin:12px 0 6px;}
.omps-wrap label:first-of-type{margin-top:0;}
.omps-wrap select,.omps-wrap input[type=text],.omps-wrap input[type=password]{
	width:100%;padding:8px 10px;border:1px solid var(--omps-line);border-radius:8px;font-size:13.5px;
}

.omps-pill-row{display:flex;gap:8px;flex-wrap:wrap;}
.omps-pill{border:1px solid var(--omps-line);background:#fff;padding:6px 13px;border-radius:20px;font-size:12.5px;font-weight:600;cursor:pointer;color:var(--omps-ink-soft);}
.omps-pill.omps-on{background:var(--omps-violet);color:#fff;border-color:var(--omps-violet);}
.omps-locked-chip{background:var(--omps-violet-light);color:var(--omps-violet-deep);border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600;}

.omps-btn{display:inline-flex;align-items:center;gap:6px;background:var(--omps-violet);color:#fff !important;border:none;padding:10px 18px;border-radius:9px;font-weight:600;font-size:13.5px;cursor:pointer;text-decoration:none;}
.omps-btn:hover{background:var(--omps-violet-deep);}
.omps-btn-ghost{background:none;border:1px solid var(--omps-line);color:var(--omps-ink) !important;}
.omps-btn-mint{background:var(--omps-mint);}
.omps-btn-small{padding:7px 13px;font-size:12.5px;}
.omps-btn-block{width:100%;justify-content:center;}
.omps-btn:disabled{opacity:.5;cursor:not-allowed;}

.omps-note{font-size:12px;color:var(--omps-ink-soft);background:var(--omps-violet-light);border-radius:8px;padding:8px 10px;margin:10px 0;}
.omps-error{color:var(--omps-rose);font-size:12.5px;margin-top:8px;}

/* Save/login choice */
.omps-save-choice{background:var(--omps-violet-light);border-radius:12px;padding:14px 18px;margin-bottom:18px;}
.omps-save-choice--saved{background:var(--omps-mint-light);font-size:13.5px;}
.omps-save-text{font-size:13.5px;color:var(--omps-ink-soft);display:block;margin-bottom:10px;}
.omps-save-actions{display:flex;gap:10px;}
.omps-login-form{margin-top:14px;background:#fff;border-radius:10px;padding:14px;}
.omps-login-row{display:flex;align-items:center;gap:14px;margin-top:6px;}
.omps-login-error{color:var(--omps-rose);font-size:12.5px;}

/* MCQ Rx-style cards */
.omps-rx-card{background:#fff;border:1px solid var(--omps-line);border-radius:4px 4px 14px 14px;margin-bottom:16px;overflow:hidden;}
.omps-rx-perf{height:7px;background:repeating-linear-gradient(90deg,transparent,transparent 6px,var(--omps-line) 6px,var(--omps-line) 7px);}
.omps-rx-body{padding:18px 20px 20px;}
.omps-rx-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.omps-rx-code{font-size:11px;color:var(--omps-violet);}
.omps-tag{font-size:10.5px;padding:2px 8px;border-radius:10px;background:var(--omps-violet-light);color:var(--omps-violet-deep);}
.omps-q-text{font-size:15px;font-weight:600;line-height:1.5;margin-bottom:12px;}
.omps-opt{display:flex;align-items:center;gap:10px;border:1px solid var(--omps-line);border-radius:9px;padding:9px 12px;margin-bottom:7px;cursor:pointer;font-size:13.5px;}
.omps-opt:hover{border-color:var(--omps-violet);}
.omps-letter{width:22px;height:22px;border-radius:50%;border:1px solid var(--omps-line);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--omps-ink-soft);flex-shrink:0;}
.omps-correct{border-color:var(--omps-mint);background:var(--omps-mint-light);}
.omps-correct .omps-letter{background:var(--omps-mint);color:#fff;border-color:var(--omps-mint);}
.omps-incorrect{border-color:var(--omps-rose);background:var(--omps-rose-light);}
.omps-incorrect .omps-letter{background:var(--omps-rose);color:#fff;border-color:var(--omps-rose);}
.omps-opt.omps-selected{border-color:var(--omps-violet);background:var(--omps-violet-light);}
.omps-opt.omps-selected .omps-letter{background:var(--omps-violet);color:#fff;border-color:var(--omps-violet);}
.omps-opts-static .omps-opt{cursor:default;}
.omps-opts-static .omps-opt:hover{border-color:var(--omps-line);}
.omps-justification{display:none;margin-top:10px;padding:11px 13px;background:#faf8f5;border-left:3px solid var(--omps-violet);border-radius:6px;font-size:12.5px;color:var(--omps-ink-soft);}
.omps-justification.omps-show{display:block;}
.omps-plan-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}

.omps-score-bar{background:#fff;border:1px solid var(--omps-line);border-radius:12px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.omps-score-num{font-size:22px;font-weight:700;color:var(--omps-violet-deep);}
.omps-finish-row{text-align:center;margin:6px 0 20px;}
.omps-final-summary{text-align:center;margin-top:10px;}

/* Courses */
.omps-course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;}
.omps-course-card{background:#fff;border:1px solid var(--omps-line);border-radius:12px;overflow:hidden;cursor:pointer;}
.omps-course-card:hover{border-color:var(--omps-violet);}
.omps-course-thumb{height:120px;background:linear-gradient(135deg,var(--omps-violet-deep),var(--omps-violet));display:flex;align-items:center;justify-content:center;}
.omps-course-thumb img{width:100%;height:100%;object-fit:cover;}
.omps-play-dot{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.92);display:block;position:relative;}
.omps-play-dot::after{content:'';position:absolute;left:15px;top:11px;border-left:12px solid var(--omps-violet-deep);border-top:7px solid transparent;border-bottom:7px solid transparent;}
.omps-course-info{padding:12px 14px 14px;}
.omps-course-info h4{margin:0 0 4px;font-size:15px;}
.omps-meta{font-size:11.5px;color:var(--omps-ink-soft);}

.omps-detail-back{background:none;border:none;color:var(--omps-violet);font-weight:600;font-size:13px;cursor:pointer;margin-bottom:14px;padding:0;}
.omps-live-banner{background:var(--omps-ink);color:#fff;border-radius:12px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:14px 0;}
.omps-live-dot{width:8px;height:8px;border-radius:50%;background:#ff5c5c;display:inline-block;margin-right:6px;}
.omps-lecture-list{margin-top:16px;}
.omps-lec-item{display:flex;align-items:center;gap:10px;padding:9px 4px;border-bottom:1px solid var(--omps-line);font-size:13.5px;}
.omps-lec-item:last-child{border-bottom:none;}
.omps-lec-num{color:var(--omps-violet);font-size:12px;width:24px;}
.omps-lec-title{flex:1;}
.omps-lec-locked{font-size:12px;color:var(--omps-ink-soft);}
.omps-video-frame{background:var(--omps-ink);border-radius:12px;aspect-ratio:16/9;margin-top:14px;}

/* Certificate */
.omps-cert{background:#fff;border:6px double var(--omps-violet);border-radius:6px;padding:34px 26px;text-align:center;max-width:520px;margin:20px auto 0;}
.omps-cert-kicker{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--omps-violet);}
.omps-cert-name{font-size:22px;color:var(--omps-violet-deep);margin:12px 0;border-bottom:1px solid var(--omps-line);display:inline-block;padding-bottom:5px;font-weight:700;}
.omps-cert-course{font-weight:700;}
.omps-cert-foot{display:flex;justify-content:space-between;margin-top:22px;font-size:11.5px;color:var(--omps-ink-soft);}

@media print{
	body *{visibility:hidden;}
	.omps-cert,.omps-cert *{visibility:visible;}
	.omps-cert{position:absolute;left:0;top:0;}
}

/* Entry test: section preview chips + in-test dividers */
.omps-section-preview{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:6px;}
.omps-section-chip{background:#faf8f5;border:1px solid var(--omps-line);border-radius:10px;padding:10px 14px;font-size:12.5px;min-width:140px;}
.omps-section-chip strong{display:block;margin-bottom:2px;font-size:13.5px;}
.omps-section-chip span{color:var(--omps-ink-soft);}
.omps-section-divider{margin:24px 0 14px;text-align:center;position:relative;}
.omps-section-divider::before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:var(--omps-line);}
.omps-section-divider span{position:relative;background:#faf8f5;padding:4px 16px;border-radius:20px;font-size:12px;font-weight:700;color:var(--omps-violet-deep);border:1px solid var(--omps-line);}

/* Subject performance breakdown (used by entry-test summary and dashboard) */
.omps-subject-breakdown{display:flex;flex-direction:column;gap:10px;}
.omps-subject-row{display:grid;grid-template-columns:140px 1fr 110px;align-items:center;gap:10px;font-size:13px;}
.omps-subject-row > span:first-child{font-weight:600;}
.omps-subject-bar{height:8px;background:var(--omps-line);border-radius:6px;overflow:hidden;}
.omps-subject-fill{height:100%;background:var(--omps-violet);}
.omps-dim{color:var(--omps-ink-soft);font-weight:400;}

/* Attempt type chips (dashboard + admin-style badges reused on the front end) */
.omps-type-chip{font-size:11px;font-weight:700;padding:3px 9px;border-radius:10px;background:var(--omps-violet-light);color:var(--omps-violet-deep);}
.omps-type-chip.omps-type-quiz{background:var(--omps-mint-light);color:#065f46;}
.omps-type-chip.omps-type-entry_test{background:var(--omps-amber);color:#fff;}

/* Auto-generated browse directory */
.omps-browse-class{margin-top:14px;}
.omps-browse-class-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--omps-violet);margin-bottom:8px;}
.omps-browse-subjects{display:flex;flex-direction:column;gap:10px;}
.omps-browse-subject{border:1px solid var(--omps-line);border-radius:10px;padding:10px 14px;}
.omps-browse-subject-name{font-weight:700;color:var(--omps-ink);text-decoration:none;margin-right:8px;}
.omps-browse-subject-name:hover{color:var(--omps-violet);}
.omps-browse-chapters{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.omps-browse-chapter-chip{font-size:11.5px;background:var(--omps-violet-light);color:var(--omps-violet-deep);padding:4px 10px;border-radius:14px;text-decoration:none;}
.omps-browse-chapter-chip:hover{background:var(--omps-violet);color:#fff;}
