/* ── Deechea Quiz — Categorized Front-end Styles (exam-style layout) ─────────── */

.dq-fl {
    font-family: 'Inter', 'Segoe UI', -apple-system, sans-serif;
    max-width: 860px;
    margin: 0 auto;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,.10);
    border: 1px solid #e2e8f0;
    background: #fff;
}

/* ── BUTTONS ─────────────────────────────────────────────────────────────── */
.dqfl-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 11px 22px; border-radius: 8px; font-size: 14px; font-weight: 600;
    cursor: pointer; border: none; transition: all .15s ease;
}
.dqfl-btn-start, .dqfl-btn-primary {
    background: linear-gradient(135deg, #6366f1, #4f46e5); color: #fff;
}
.dqfl-btn-start:hover, .dqfl-btn-primary:hover { opacity: .9; }
.dqfl-btn-outline { background: #fff; color: #475569; border: 1.5px solid #e2e8f0; }
.dqfl-btn-outline:hover { border-color: #6366f1; color: #6366f1; }
.dqfl-btn-submit  { background: linear-gradient(135deg, #22c55e, #16a34a); color: #fff; }
.dqfl-btn:disabled { opacity: .4; cursor: not-allowed; }

/* ── START SCREEN ────────────────────────────────────────────────────────── */
.dqfl-screen-start { padding: 40px 28px; text-align: center; }
.dqfl-start-icon   { font-size: 48px; margin-bottom: 10px; }
.dqfl-exam-title   { margin: 0 0 6px; font-size: 22px; color: #1e293b; font-weight: 700; }
.dqfl-start-subject { margin: 0 0 14px; font-size: 14px; color: #6366f1; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.dqfl-start-meta   { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px 28px; margin-bottom: 24px; }
.dqfl-meta-item    { display: flex; align-items: center; gap: 6px; font-size: 14px; color: #475569; font-weight: 600; }
.dqfl-meta-icon    { font-size: 16px; }
.dqfl-start-note   { margin-top: 16px; font-size: 12.5px; color: #94a3b8; }

/* ── QUIZ HEADER ─────────────────────────────────────────────────────────── */
.dqfl-quiz-header {
    background: linear-gradient(135deg, #1a1a2e, #0f3460);
    padding: 18px 28px;
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.dqfl-quiz-info    { flex: 1; min-width: 0; }
.dqfl-quiz-name-row { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.dqfl-exam-name    { color: #fff; font-weight: 700; font-size: 15px; }
.dqfl-progress-wrap { display: flex; align-items: center; gap: 10px; }
.dqfl-progress-bar  { flex: 1; height: 6px; background: rgba(255,255,255,.15); border-radius: 4px; overflow: hidden; }
.dqfl-progress-fill { height: 100%; width: 0; background: linear-gradient(90deg, #6366f1, #818cf8); border-radius: 4px; transition: width .3s ease; }
.dqfl-progress-label { color: #cbd5e1; font-size: 12px; font-weight: 600; white-space: nowrap; }

/* ── QUESTION AREA (full width — palette is a fixed sidebar from quiz.js) ── */
.dqfl-question-area {
    padding: 28px 32px 24px;
    margin-right: 270px; /* leave space for fixed palette */
    min-height: 400px;
    background: #f8fafc;
}

.dqfl-qlabel {
    font-size: 11px; font-weight: 700; text-transform: uppercase;
    letter-spacing: .08em; color: #6366f1;
    background: #eef2ff; display: inline-block;
    padding: 4px 12px; border-radius: 20px; margin: 0 0 16px;
}
.dqfl-qtext  { font-size: 15.5px; font-weight: 500; color: #1e293b; margin: 0 0 22px; line-height: 1.65; }
.dqfl-passage { background: #f5f3ff; border: 1px solid #ddd6fe; border-radius: 10px; padding: 0; margin: 0 0 18px; overflow: hidden; }
.dqfl-passage-label { display: flex; align-items: center; gap: 6px; background: #ede9fe; padding: 6px 14px; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; color: #6d28d9; text-transform: uppercase; }
.dqfl-passage-body { padding: 14px 16px; font-size: 14px; font-weight: 400; color: #374151; line-height: 1.75; font-style: italic; }
.dqfl-qstem { display: block; font-weight: 700; color: #1e293b; margin-top: 4px; }
.dqfl-qstem  { display: block; margin-bottom: 12px; }
.dqfl-match-table { width: 100%; border-collapse: collapse; margin: 10px 0 18px; font-size: 14.5px; }
.dqfl-match-table th { background: #e8edf8; font-weight: 600; text-align: left; padding: 8px 12px; border: 1px solid #c8d3e8; color: #1e293b; }
.dqfl-match-table td { padding: 7px 12px; border: 1px solid #dde4f0; color: #334155; vertical-align: top; }
.dqfl-match-table tbody tr:nth-child(even) { background: #f6f8fc; }
.dqfl-qnum   { background: #0f3460; color: #fff; font-size: 12px; font-weight: 700;
               padding: 2px 8px; border-radius: 4px; margin-right: 8px; vertical-align: middle; }

/* ── OPTIONS ─────────────────────────────────────────────────────────────── */
.dqfl-opts   { display: flex; flex-direction: column; gap: 10px; }
.dqfl-opt {
    display: flex; align-items: center; gap: 14px; width: 100%; text-align: left;
    background: #fff; border: 1.5px solid #e2e8f0; border-radius: 10px;
    padding: 14px 16px; cursor: pointer; font-size: 14.5px; color: #334155;
    transition: all .15s ease; line-height: 1.45;
}
.dqfl-opt:hover { border-color: #6366f1; background: #eef2ff; }
.dqfl-opt-label {
    background: #e2e8f0; color: #475569; font-weight: 700; font-size: 13px;
    min-width: 28px; height: 28px; border-radius: 6px;
    display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: all .15s;
}
.dqfl-opt.dqfl-selected { border-color: #6366f1; background: #eef2ff; }
.dqfl-opt.dqfl-selected .dqfl-opt-label { background: #6366f1; color: #fff; }

/* ── RESULT SCREEN ───────────────────────────────────────────────────────── */
.dqfl-screen-result { padding: 40px 28px; text-align: center; }
.dqfl-result-emoji  { font-size: 50px; margin-bottom: 6px; }
.dqfl-result-title  { font-size: 22px; color: #1e293b; margin: 0 0 20px; }
.dqfl-result-ring   { position: relative; width: 130px; height: 130px; margin: 0 auto 24px; }
.dqfl-result-ring svg { width: 100%; height: 100%; }
.dqfl-ring-text     { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.dqfl-ring-pct      { font-size: 24px; font-weight: 800; color: #1e293b; }
.dqfl-ring-sub      { font-size: 11px; color: #94a3b8; }
.dqfl-result-stats  { display: flex; justify-content: center; gap: 28px; margin-bottom: 28px; flex-wrap: wrap; }
.dqfl-stat          { display: flex; flex-direction: column; align-items: center; }
.dqfl-stat-val      { font-size: 22px; font-weight: 800; color: #1e293b; }
.dqfl-stat-lbl      { font-size: 12px; color: #94a3b8; font-weight: 600; }
.dqfl-result-actions { display: flex; justify-content: center; gap: 12px; flex-wrap: wrap; }

/* ── REVIEW SCREEN ───────────────────────────────────────────────────────── */
.dqfl-screen-review  { padding: 0; }
.dqfl-review-header  { display: flex; justify-content: space-between; align-items: center; padding: 18px 28px; border-bottom: 1px solid #e2e8f0; }
.dqfl-review-header h2 { margin: 0; font-size: 17px; color: #1e293b; }
.dqfl-review-list    { padding: 8px 28px 24px; }
.dqfl-rev-q          { padding: 20px 0; border-bottom: 1px solid #f1f5f9; }
.dqfl-rev-q:last-child { border-bottom: none; }

.dqfl-opt-static {
    display: flex; align-items: center; gap: 12px; padding: 11px 14px;
    border: 1.5px solid #e2e8f0; border-radius: 8px; background: #f8fafc;
    font-size: 14px; color: #334155; line-height: 1.4;
}
.dqfl-opt-static.dqfl-correct        { border-color: #22c55e; background: #f0fdf4; color: #15803d; font-weight: 600; }
.dqfl-opt-static.dqfl-correct .dqfl-opt-label { background: #22c55e; color: #fff; }
.dqfl-opt-static.dqfl-chosen-wrong   { border-color: #ef4444; background: #fef2f2; color: #b91c1c; }
.dqfl-opt-static.dqfl-chosen-wrong .dqfl-opt-label { background: #ef4444; color: #fff; }

.dqfl-exp-wrap {
    margin-top: 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.dqfl-exp-section {
    border-radius: 8px;
    overflow: hidden;
}
.dqfl-exp-title {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    padding: 7px 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}
.dqfl-exp-body {
    font-size: 13px;
    color: #374151;
    line-height: 1.65;
    padding: 11px 14px;
}
.dqfl-exp-body p.dqfl-exp-para  { margin: 0 0 8px; }
.dqfl-exp-body p.dqfl-exp-para:last-child { margin-bottom: 0; }
.dqfl-exp-body p.dqfl-exp-label {
    margin: 10px 0 4px;
    font-weight: 700;
    color: #1e293b;
}
.dqfl-exp-body p.dqfl-exp-label:first-child { margin-top: 0; }
.dqfl-exp-body ul.dqfl-exp-list,
.dqfl-exp-body ul.dqfl-exp-steps {
    margin: 0 0 8px;
    padding-left: 20px;
}
.dqfl-exp-body ul.dqfl-exp-list:last-child,
.dqfl-exp-body ul.dqfl-exp-steps:last-child { margin-bottom: 0; }
.dqfl-exp-body ul.dqfl-exp-steps { list-style: none; padding-left: 4px; }
.dqfl-exp-body ul.dqfl-exp-steps li::before { content: "→ "; color: #92400e; font-weight: 700; }
.dqfl-exp-body li { margin-bottom: 4px; }
.dqfl-exp-body li:last-child { margin-bottom: 0; }

/* Tables inside an explanation body (e.g. "Match the following" correct-answer
   explanations flattened from a docx table) — same look as the question-stem
   match table so both render consistently. */
.dqfl-exp-body table.dqfl-exp-table {
    width: 100%;
    border-collapse: collapse;
    margin: 4px 0 10px;
    font-size: 13px;
}
.dqfl-exp-body table.dqfl-exp-table th {
    background: rgba(0,0,0,0.05);
    font-weight: 600;
    text-align: left;
    padding: 6px 10px;
    border: 1px solid rgba(0,0,0,0.12);
    color: #1e293b;
}
.dqfl-exp-body table.dqfl-exp-table td {
    padding: 6px 10px;
    border: 1px solid rgba(0,0,0,0.08);
    color: #374151;
    vertical-align: top;
}
.dqfl-exp-body table.dqfl-exp-table tbody tr:nth-child(even) { background: rgba(0,0,0,0.025); }
.dqfl-exp-body table.dqfl-exp-table:last-child { margin-bottom: 0; }

/* Short explanation — neutral purple */
.dqfl-exp-short  .dqfl-exp-title { background: #ede9fe; color: #5b21b6; }
.dqfl-exp-short  .dqfl-exp-body  { background: #f5f3ff; border-left: 3px solid #a78bfa; }

/* Correct answer explanation — green */
.dqfl-exp-correct .dqfl-exp-title { background: #d1fae5; color: #065f46; }
.dqfl-exp-correct .dqfl-exp-body  { background: #ecfdf5; border-left: 3px solid #10b981; }

/* Why other options are incorrect — red */
.dqfl-exp-wrong  .dqfl-exp-title { background: #fee2e2; color: #991b1b; }
.dqfl-exp-wrong  .dqfl-exp-body  { background: #fff7f7; border-left: 3px solid #f87171; }

/* Strategy — amber */
.dqfl-exp-strategy .dqfl-exp-title { background: #fef3c7; color: #92400e; }
.dqfl-exp-strategy .dqfl-exp-body  { background: #fffbeb; border-left: 3px solid #fbbf24; }

/* Memory trick — indigo */
.dqfl-exp-memory .dqfl-exp-title { background: #e0e7ff; color: #3730a3; }
.dqfl-exp-memory .dqfl-exp-body  { background: #eef2ff; border-left: 3px solid #818cf8; }

/* Code snippet — dark slate */
.dqfl-exp-code .dqfl-exp-title { background: #e2e8f0; color: #0f172a; }
.dqfl-code-block {
    margin: 0;
    padding: 14px 16px;
    background: #0f172a;
    color: #e2e8f0;
    border-left: 3px solid #475569;
    border-radius: 0 0 8px 8px;
    font-family: Consolas, Monaco, 'Courier New', monospace;
    font-size: 13px;
    line-height: 1.55;
    overflow-x: auto;
    white-space: pre;
    -webkit-overflow-scrolling: touch;
}
.dqfl-code-block code { background: none; padding: 0; color: inherit; font-family: inherit; }

/* NCERT tag */
.dqfl-ncert-tag {
    margin-top: 2px;
    padding: 8px 12px;
    background: #f1f5f9;
    border-radius: 7px;
    font-size: 12px;
    color: #475569;
    font-weight: 600;
}

/* ── BOOSTER PALETTE — inherits exam palette styles from quiz.css ─────────
   We scope to .dqfl-pal so it doesn't clash with #clat-pal.
   Copy all #clat-pal rules here under .dqfl-pal selector.           ──────── */
.dqfl-pal {
    position: fixed;
    top: 58px; right: 0;
    width: 262px;
    max-height: calc(100vh - 66px);
    background: #fff;
    border-left: 1px solid #c2cfe0;
    border-bottom: 1px solid #c2cfe0;
    border-radius: 0 0 0 10px;
    box-shadow: -3px 4px 24px rgba(0,0,0,.14);
    z-index: 9999999;
    font-family: 'Segoe UI','Trebuchet MS',Arial,sans-serif;
    display: flex; flex-direction: column; overflow: hidden;
}
.dqfl-pal .lp-hdr {
    background: linear-gradient(135deg,#1a3a6b,#1e5baa);
    padding: 10px 13px;
    display: flex; align-items: center; gap: 9px; flex-shrink: 0;
}
.dqfl-pal .lp-av {
    width:36px; height:36px; border-radius:50%;
    background:rgba(255,255,255,.15); border:2px solid rgba(255,255,255,.35);
    display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.dqfl-pal .lp-info { display:flex; flex-direction:column; min-width:0; flex:1; }
.dqfl-pal .lp-name { font-size:13px; font-weight:700; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dqfl-pal .lp-subj { font-size:9.5px; color:rgba(255,255,255,.75); text-transform:uppercase; letter-spacing:1px; margin-top:1px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dqfl-pal .lp-timer {
    background:rgba(0,0,0,.28); border-radius:5px;
    padding:3px 8px; font-size:13px; font-weight:700; color:#fff;
    font-family:'Courier New',monospace; letter-spacing:1px;
    flex-shrink:0; min-width:62px; text-align:center;
}
.dqfl-pal .lp-timer.lp-warn { background:rgba(220,38,38,.85); animation: dqfl-blink 1s infinite; }
@keyframes dqfl-blink { 0%,100%{opacity:1} 50%{opacity:.42} }

.dqfl-pal .lp-legend {
    display: grid; grid-template-columns: 1fr 1fr;
    gap: 5px 4px; padding: 9px 12px 8px;
    background: #f5f8fc; border-bottom: 1px solid #dde4ef; flex-shrink: 0;
}
.dqfl-pal .lp-leg-row { display:flex; align-items:center; gap:6px; font-size:9.5px; color:#374151; font-weight:500; line-height:1.3; }
.dqfl-pal .lp-full { grid-column: 1 / -1; }
.dqfl-pal .lp-lb {
    width:22px; height:22px; min-width:22px;
    display:inline-flex; align-items:center; justify-content:center;
    font-size:10px; font-weight:700; color:#fff;
    flex-shrink:0; position:relative; line-height:1;
}
.dqfl-pal .lp-lb-nv  { background:#94a3b8; border-radius:4px; }
.dqfl-pal .lp-lb-na  { background:#dc2626; border-radius:4px; }
.dqfl-pal .lp-lb-ans { background:#16a34a; border-radius:4px; }
.dqfl-pal .lp-lb-mk  { background:#7c3aed; border-radius:50%; }
.dqfl-pal .lp-lb-am  { background:#7c3aed; border-radius:50%; overflow:visible; }
.dqfl-pal .lp-lb-am::after {
    content:''; position:absolute; bottom:-3px; right:-4px;
    width:11px; height:11px; border-radius:2px; border:1.5px solid #fff;
    background:#16a34a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 11'%3E%3Crect x='2.5' y='2.5' width='6' height='1.1' rx='.4' fill='white'/%3E%3Crect x='2.5' y='4.8' width='6' height='1.1' rx='.4' fill='white'/%3E%3Crect x='2.5' y='7.1' width='4' height='1.1' rx='.4' fill='white'/%3E%3C/svg%3E") center/contain no-repeat;
}

.dqfl-pal .lp-sec {
    background:#1e3f7a; color:#fff;
    font-size:10px; font-weight:700;
    padding:5px 12px; letter-spacing:.7px;
    text-transform:uppercase; flex-shrink:0;
}
.dqfl-pal .lp-scroll {
    flex:1 1 auto; overflow-y:auto; overflow-x:hidden;
    padding:8px 10px 6px; background:#fff;
}
.dqfl-pal .lp-scroll::-webkit-scrollbar { width:4px; }
.dqfl-pal .lp-scroll::-webkit-scrollbar-track { background:#eef2f7; }
.dqfl-pal .lp-scroll::-webkit-scrollbar-thumb { background:#94a3b8; border-radius:4px; }
.dqfl-pal .lp-grid {
    display: grid !important;
    grid-template-columns: repeat(6,1fr) !important;
    gap: 5px !important;
    width: 100% !important; box-sizing: border-box !important;
}
.dqfl-pal .lp-q {
    display:flex !important; align-items:center !important; justify-content:center !important;
    aspect-ratio:1/1 !important; width:100% !important;
    font-size:11px !important; font-weight:700 !important;
    cursor:pointer !important; user-select:none !important;
    color:#fff !important; position:relative !important;
    transition:transform .1s, box-shadow .1s !important;
    box-sizing:border-box !important; line-height:1 !important; border-radius:4px;
}
.dqfl-pal .lp-q:hover { transform:scale(1.12) !important; box-shadow:0 2px 8px rgba(0,0,0,.22) !important; z-index:2 !important; }
.dqfl-pal .lp-nv  { background:#94a3b8 !important; border-radius:4px !important; }
.dqfl-pal .lp-na  { background:#dc2626 !important; border-radius:4px !important; }
.dqfl-pal .lp-ans { background:#16a34a !important; border-radius:4px !important; }
.dqfl-pal .lp-mk  { background:#7c3aed !important; border-radius:50% !important; }
.dqfl-pal .lp-am  { background:#7c3aed !important; border-radius:50% !important; overflow:visible !important; }
.dqfl-pal .lp-am::after {
    content:'' !important; position:absolute !important; bottom:-3px !important; right:-4px !important;
    width:11px !important; height:11px !important;
    border-radius:2px !important; border:1.5px solid #fff !important; z-index:3 !important;
    background:#16a34a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 11'%3E%3Crect x='2.5' y='2.5' width='6' height='1.1' rx='.4' fill='white'/%3E%3Crect x='2.5' y='4.8' width='6' height='1.1' rx='.4' fill='white'/%3E%3Crect x='2.5' y='7.1' width='4' height='1.1' rx='.4' fill='white'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.dqfl-pal .lp-cur {
    background:#1d4ed8 !important; border-radius:4px !important;
    transform:scale(1.13) !important; box-shadow:0 3px 10px rgba(29,78,216,.4) !important;
}

.dqfl-pal .lp-btns { display:flex; flex-direction:column; gap:5px; padding:8px 11px 11px; border-top:1px solid #dde4ef; background:#f5f8fc; flex-shrink:0; }
.dqfl-pal .lp-btn {
    width:100% !important; padding:8px !important;
    font-size:11px !important; font-weight:600 !important;
    border:none !important; border-radius:5px !important;
    cursor:pointer !important; font-family:inherit !important;
    text-align:center !important; display:block !important;
    box-sizing:border-box !important; line-height:1.4 !important;
    transition:opacity .15s, transform .1s !important;
}
.dqfl-pal .lp-btn:hover  { opacity:.86 !important; transform:translateY(-1px) !important; }
.dqfl-pal .lp-btn:active { transform:translateY(0) !important; }
.dqfl-pal .lp-btn-sm  { background:#5b21b6 !important; color:#fff !important; }
.dqfl-pal .lp-btn-mk  { background:#7c3aed !important; color:#fff !important; }
.dqfl-pal .lp-btn-cl  { background:#fff !important; color:#475569 !important; border:1px solid #c5d0df !important; }
.dqfl-pal .lp-btn-sn  { background:linear-gradient(90deg,#16a34a,#22c55e) !important; color:#fff !important; }
.dqfl-pal .lp-btn-sub { background:linear-gradient(90deg,#dc2626,#ef4444) !important; color:#fff !important; margin-top:2px !important; }

/* ── TIME'S UP MODAL (generic classes — one modal exists per categorized set on
   the page, each with its own #dqfl-timeup-{setId} wrapper id) ─────────────── */
.dqfl-timeup-modal {
    position: fixed; inset: 0;
    background: rgba(0,0,0,.7);
    z-index: 99999999;
    align-items: center; justify-content: center;
}
.dqfl-timeup-modal[style*="flex"] { display: flex !important; }
.dqfl-cup-box {
    background: #fff; border-radius: 14px;
    padding: 44px 52px; text-align: center; max-width: 400px;
    box-shadow: 0 20px 60px rgba(0,0,0,.3);
    animation: dqfl-popin .3s ease;
}
@keyframes dqfl-popin { from { transform: scale(.85); opacity: 0; } to { transform: scale(1); opacity: 1; } }
.dqfl-cup-box h2 { color: #dc2626; margin: 0 0 10px; font-size: 22px; }
.dqfl-cup-box p  { color: #374151; margin: 0 0 24px; font-size: 14px; line-height: 1.65; }
.dqfl-cup-btn {
    padding: 11px 32px;
    background: linear-gradient(90deg,#dc2626,#ef4444);
    color: #fff; font-size: 14px; font-weight: 700;
    border-radius: 8px; border: none; cursor: pointer;
    box-shadow: 0 4px 14px rgba(220,38,38,.35);
}
.dqfl-cup-countdown { font-size: 12px; color: #94a3b8; margin-top: 14px; }

/* ── RESPONSIVE ──────────────────────────────────────────────────────────── */
@media (max-width: 700px) {
    .dqfl-question-area { margin-right: 0; padding: 18px 16px calc(54vh + 24px); }
    .dqfl-pal {
        width: 100% !important; top: auto !important; bottom: 0 !important; right: 0 !important;
        max-height: 54vh !important; border-radius: 16px 16px 0 0 !important;
        border-left: none !important; border-top: 1px solid #c2cfe0 !important;
    }
    .dqfl-screen-start, .dqfl-screen-result { padding: 28px 16px; }
    .dqfl-review-header, .dqfl-review-list  { padding-left: 16px; padding-right: 16px; }
}

/* ── Syllabus / Category Coverage panel (Full-Length Test start screen) ── */
.dqfl-syllabus {
    margin: 18px 0;
    text-align: left;
    background: #f8f7ff;
    border: 1px solid #e3ddfb;
    border-radius: 10px;
    padding: 12px 16px;
}
.dqfl-syllabus summary {
    cursor: pointer;
    font-weight: 600;
    color: #5b3df0;
    outline: none;
}
.dqfl-syllabus-list {
    margin: 12px 0 4px;
    padding-left: 20px;
}
.dqfl-syllabus-list > li {
    margin-bottom: 10px;
}
.dqfl-syllabus-list ul {
    margin: 4px 0 0 0;
    padding-left: 18px;
    color: #555;
    font-size: 13px;
}
.dqfl-syllabus-list ul li {
    margin-bottom: 2px;
}
