/* iBestLife lesson pages */
.lesson-head{max-width:760px;margin:0 auto;padding:clamp(28px,5vw,52px) clamp(18px,4.5vw,48px) 0}
.lesson-head .back{color:var(--muted);text-decoration:none;font-size:14px;display:inline-block;margin-bottom:20px}
.lesson-head .back:hover{color:var(--orange)}
.lesson-head .level-tag{
  display:inline-block;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--orange);border:1px solid var(--quote-line);background:var(--quote-bg);
  border-radius:999px;padding:6px 16px;margin-bottom:18px;
}
.lesson-head h1{font-size:clamp(28px,5vw,42px);font-weight:800;letter-spacing:-.02em;line-height:1.12;margin:0 0 14px}
.lesson-head .sub{color:var(--muted);font-size:17px;margin:0 0 20px;line-height:1.6}
.lesson-head .meta{display:flex;gap:18px;flex-wrap:wrap;color:#6E6E78;font-size:13px;
  padding-bottom:26px;border-bottom:1px solid var(--card-line)}

.lesson{max-width:760px;margin:0 auto;padding:8px clamp(18px,4.5vw,48px) 0}
.lesson h2{font-size:clamp(21px,3.2vw,27px);font-weight:800;margin:38px 0 14px;letter-spacing:-.01em}
.lesson p{font-size:16.5px;line-height:1.78;color:#DCDCE2;margin:0 0 17px}
.lesson strong{color:var(--text)}
.lesson ol,.lesson ul{margin:0 0 18px;padding-left:22px}
.lesson li{font-size:16.5px;line-height:1.72;color:#DCDCE2;margin-bottom:9px}

.video-slot{
  aspect-ratio:16/9;border:1px dashed var(--card-line);border-radius:12px;background:#101014;
  display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;
  color:#6E6E78;font-size:14px;margin-bottom:34px;
}

.callout{background:var(--card);border:1px solid var(--card-line);border-left:3px solid var(--orange);
  border-radius:10px;padding:20px 24px;margin:26px 0}
.callout h4{margin:0 0 10px;font-size:15px;color:var(--orange);font-weight:700}
.callout p{margin:0;font-size:15.5px;line-height:1.7;color:#C8C8D0}
.callout ul{margin:0;padding-left:20px}
.callout li{font-size:15.5px;color:#C8C8D0;margin-bottom:7px}

.tool-link{background:var(--quote-bg);border:1px solid var(--quote-line);border-radius:10px;
  padding:16px 20px;margin:26px 0}
.tool-link p{margin:0;font-size:15px;color:#EAD9B8;line-height:1.6}
.tool-link a{color:var(--orange);font-weight:600}

.story-slot{border:1px dashed var(--quote-line);border-radius:10px;padding:18px 22px;margin:26px 0;
  background:rgba(245,158,11,.04)}
.story-slot p{margin:0;font-size:14.5px;color:#9A8C6E;line-height:1.6;font-style:italic}

/* quiz */
.quiz-wrap{padding:44px clamp(18px,4.5vw,48px) 80px}
.quiz{max-width:760px;margin:0 auto;background:var(--card);border:1px solid var(--card-line);
  border-radius:14px;padding:clamp(22px,4vw,34px)}
.quiz h2{margin:0 0 6px;font-size:22px;font-weight:800}
.quiz .qsub{color:var(--muted);font-size:14.5px;margin:0 0 24px}
.q{margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid var(--card-line)}
.q:last-of-type{border-bottom:none}
.q .qtext{font-size:16px;font-weight:600;margin:0 0 14px;line-height:1.5}
.opt{display:block;width:100%;text-align:left;background:#1B1B1F;border:1px solid var(--card-line);
  border-radius:9px;color:#DCDCE2;font-family:inherit;font-size:15px;padding:12px 15px;margin-bottom:9px;
  cursor:pointer;transition:border-color .12s,background .12s}
.opt:hover{border-color:var(--muted)}
.opt.picked{border-color:var(--orange)}
.opt.right{border-color:#43D17C;background:rgba(67,209,124,.09);color:#B9F0CE}
.opt.wrong{border-color:#FF5A4E;background:rgba(255,90,78,.08);color:#F6C0BB}
.opt:disabled{cursor:default}
.why{display:none;font-size:14.5px;line-height:1.65;color:#A6A6AE;background:#0F0F12;
  border-radius:8px;padding:13px 16px;margin-top:6px}
.why.show{display:block}
.quiz-foot{margin-top:8px}
.score{display:none;background:var(--quote-bg);border:1px solid var(--quote-line);border-radius:10px;
  padding:20px 24px;margin-bottom:18px}
.score.show{display:block}
.score .big{font-size:26px;font-weight:800;color:var(--orange);margin:0 0 6px}
.score p{margin:0;color:#EAD9B8;font-size:15px;line-height:1.6}
.next-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}

.ltable{width:100%;border-collapse:collapse;margin:24px 0;font-size:14.5px}
.ltable th{text-align:left;padding:11px 14px;background:#1B1B1F;color:var(--orange);
  font-weight:700;font-size:13px;letter-spacing:.03em;border:1px solid var(--card-line)}
.ltable td{padding:11px 14px;border:1px solid var(--card-line);color:#C8C8D0;line-height:1.55;vertical-align:top}
@media(max-width:560px){.ltable{font-size:13.5px}.ltable th,.ltable td{padding:9px 10px}}
