.free-lesson-hero{padding:7rem 0 4rem;background:linear-gradient(135deg,#0f172a,#172554);color:#fff}.free-lesson-hero.chem{background:linear-gradient(135deg,#0f172a,#134e4a)}.free-lesson-hero.math{background:linear-gradient(135deg,#111827,#4c1d95)}.free-lesson-hero.bio{background:linear-gradient(135deg,#052e16,#14532d)}.free-lesson-hero h1{font-size:clamp(2.2rem,5vw,4.6rem);margin:.8rem 0}.free-lesson-hero p{max-width:900px;font-size:1.08rem;color:#dbeafe;line-height:1.75}.free-badge{display:inline-flex;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);padding:.45rem .8rem;border-radius:999px;font-weight:800;font-size:.82rem}.lesson-meta{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.4rem}.lesson-meta span{background:rgba(255,255,255,.1);padding:.5rem .8rem;border-radius:10px}.free-lesson-shell{padding:2.5rem 0 5rem;background:#f8fafc}.lesson-jump{position:sticky;top:74px;z-index:10;display:flex;gap:.5rem;flex-wrap:wrap;background:#fff;border:1px solid #e2e8f0;padding:.75rem;border-radius:14px;box-shadow:0 8px 28px rgba(15,23,42,.08);margin-bottom:2rem}.lesson-jump a{padding:.55rem .85rem;border-radius:9px;font-weight:700;color:#334155;text-decoration:none}.lesson-jump a:hover{background:#eef2ff;color:#4338ca}.lesson-section{background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:clamp(1.2rem,3vw,2.3rem);margin:1.4rem 0;box-shadow:0 10px 30px rgba(15,23,42,.05)}.lesson-section h2{font-size:clamp(1.55rem,3vw,2.3rem);margin:.35rem 0 1rem}.lesson-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.lesson-card{border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:1.1rem}.lesson-card h3{font-size:1rem;margin:0 0 .55rem}.lesson-card p{color:#475569;line-height:1.6}.lesson-card small{display:block;color:#b45309;margin-top:.7rem}.interactive-demo{display:grid;gap:1rem;align-items:stretch}.interactive-demo.three-col{grid-template-columns:minmax(190px,.8fr) minmax(0,2.1fr) minmax(210px,.9fr)}.demo-controls,.demo-observe,.demo-stage{border:1px solid #dbe3ee;border-radius:18px;padding:1rem}.demo-controls,.demo-observe{background:#f8fafc}.demo-stage{background:#0f172a;color:#fff}.demo-controls label{display:block;font-weight:700;margin-bottom:1rem}.demo-controls select,.mini-lab select{width:100%;margin-top:.4rem;padding:.65rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff}.demo-controls input[type=range]{width:100%;margin-top:.7rem}.demo-observe ul{padding-left:1.2rem;color:#475569;line-height:1.65}.practice-box{margin-top:1rem;background:#fff;border:1px solid #dbe3ee;border-radius:12px;padding:.85rem;color:#334155}.reading-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:1rem}.reading-row div,.reading-list p{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);padding:.75rem;border-radius:12px}.reading-row span,.reading-list span{display:block;font-size:.72rem;color:#cbd5e1}.reading-row strong,.reading-list strong{display:block;margin-top:.25rem}.molecule-visual{min-height:310px;display:grid;place-items:center;position:relative}.molecule-center{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#14b8a6;color:#fff;font-weight:900;font-size:1.1rem;box-shadow:0 0 0 10px rgba(20,184,166,.12)}.bond-dot{position:absolute;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#60a5fa;color:#0f172a;font-weight:900}.lone-pair{position:absolute;color:#fbbf24;font-size:1.4rem;letter-spacing:-.2rem}.mini-lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.mini-lab{background:#0f172a;color:#fff;border-radius:18px;padding:1.2rem}.mini-lab p{color:#cbd5e1}.big-reading{font-size:1.7rem;font-weight:900;margin:1rem 0;color:#67e8f9}.guided-stack{display:grid;gap:1rem}.guided-item{border:1px solid #dbe3ee;border-radius:16px;padding:1rem;background:#fbfdff}.guided-item h3{font-size:1rem;line-height:1.55}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:.85rem 0}.lesson-option{border:1px solid #cbd5e1;background:#fff;padding:.75rem;border-radius:10px;text-align:left;cursor:pointer}.lesson-option.correct{border-color:#16a34a;background:#dcfce7;color:#166534}.lesson-option.wrong{border-color:#dc2626;background:#fee2e2;color:#991b1b}.answer-feedback{font-weight:700;min-height:1.2rem}.explanation{margin-top:.65rem;color:#475569;background:#f1f5f9;border-radius:10px;padding:.8rem}.unlock-panel{text-align:center;background:linear-gradient(135deg,#111827,#1e3a8a);color:#fff;border-radius:24px;padding:2.2rem;margin-top:1.5rem}.unlock-panel p{color:#dbeafe}.unlock-price{font-size:2rem;font-weight:900;margin:1rem}.unlock-price small{display:block;font-size:.85rem;font-weight:600;color:#bfdbfe}.formula-strip{margin-top:.8rem;background:rgba(255,255,255,.08);padding:.75rem;border-radius:10px;text-align:center;font-weight:700}.reading-list p{display:flex;justify-content:space-between;gap:1rem}.cell-visual{position:relative;min-height:320px;margin:auto;max-width:500px;border:8px solid #86efac;border-radius:48% 52% 46% 54%;background:radial-gradient(circle at 40% 40%,#dcfce7,#22c55e55);overflow:hidden}.cell-visual.animal{border-color:#f9a8d4;border-radius:50%;background:radial-gradient(circle,#fce7f3,#ec489955)}.cell-visual.bacterium{border-color:#facc15;border-radius:42% 58%;background:linear-gradient(135deg,#fef9c3,#ca8a04aa)}.cell-nucleus{position:absolute;left:39%;top:34%;width:105px;height:105px;border-radius:50%;display:grid;place-items:center;background:#7c3aed;color:#fff;font-size:.75rem}.cell-organelle{position:absolute;width:48px;height:22px;border-radius:50%;background:#fb7185}.o1{left:18%;top:25%}.o2{right:16%;top:23%}.o3{right:23%;bottom:20%}.cell-chloroplast{position:absolute;width:52px;height:24px;border-radius:50%;background:#15803d}.c1{left:18%;bottom:22%}.c2{right:13%;top:50%}.cell-visual.no-nucleus .cell-nucleus{display:none}.cell-visual.no-chloroplast .cell-chloroplast{display:none}#argandCanvas{width:100%;display:block;background:#0b1024;border-radius:12px}
@media(max-width:980px){.interactive-demo.three-col{grid-template-columns:1fr}.mini-lab-grid{grid-template-columns:1fr}.lesson-jump{position:static}}@media(max-width:640px){.option-grid,.reading-row{grid-template-columns:1fr}.free-lesson-hero{padding-top:5.5rem}}


/* v1.5.4: Explicit light-surface typography. Main EduProd uses a dark global theme,
   so free lesson white cards must not inherit pale text colours. */
.free-lesson-shell,
.free-lesson-shell .lesson-section,
.free-lesson-shell .lesson-card,
.free-lesson-shell .guided-item,
.free-lesson-shell .demo-controls,
.free-lesson-shell .demo-observe,
.free-lesson-shell .practice-box { color:#0f172a; }
.free-lesson-shell .lesson-section h1,
.free-lesson-shell .lesson-section h2,
.free-lesson-shell .lesson-section h3,
.free-lesson-shell .lesson-section h4,
.free-lesson-shell .guided-item h3,
.free-lesson-shell .demo-controls label,
.free-lesson-shell .demo-observe h3 { color:#0f172a; }
.free-lesson-shell .lesson-section p,
.free-lesson-shell .lesson-card p,
.free-lesson-shell .guided-item p,
.free-lesson-shell .demo-controls p,
.free-lesson-shell .demo-observe p { color:#475569; }
.free-lesson-shell .lesson-card small { color:#92400e; }
.free-lesson-shell details,
.free-lesson-shell summary { color:#334155; }
.free-lesson-shell .lesson-option { color:#0f172a; background:#ffffff; }
.free-lesson-shell .lesson-option:hover { border-color:#06b6d4; background:#ecfeff; }
.free-lesson-shell .section-kicker { color:#0891b2; }
.free-lesson-shell .mini-lab,
.free-lesson-shell .mini-lab h3,
.free-lesson-shell .demo-stage,
.free-lesson-shell .demo-stage h3 { color:#ffffff; }
.free-lesson-shell .mini-lab p { color:#cbd5e1; }
.free-lesson-shell .unlock-panel,
.free-lesson-shell .unlock-panel h2,
.free-lesson-shell .unlock-panel h3 { color:#ffffff; }
.free-lesson-shell .unlock-panel p { color:#dbeafe; }
