.lesson-curriculum-map{margin:2rem 0;padding:clamp(1rem,2.4vw,1.6rem);border-radius:28px;background:linear-gradient(145deg,rgba(10,20,36,.94),rgba(18,31,52,.94));border:1px solid rgba(148,163,184,.2);box-shadow:0 22px 55px rgba(2,6,23,.22)}
.curriculum-head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.8fr);gap:1.25rem;align-items:start}
.curriculum-head h2{margin:.35rem 0 .6rem;font-size:clamp(1.45rem,2.6vw,2.25rem)}
.curriculum-head p{margin:0;color:#b9c7dc;max-width:70ch;line-height:1.6}
.curriculum-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.curriculum-stats div{padding:.85rem;border-radius:18px;background:rgba(30,41,59,.66);border:1px solid rgba(148,163,184,.16)}
.curriculum-stats strong{display:block;font-size:1.45rem;color:#f8fbff}.curriculum-stats span{display:block;color:#9fb1cc;font-size:.78rem;margin-top:.15rem}
.curriculum-controls{display:flex;align-items:center;justify-content:space-between;gap:.9rem;margin:1.25rem 0 1rem;padding-top:1rem;border-top:1px solid rgba(148,163,184,.13)}
.curriculum-filter{display:flex;gap:.45rem;flex-wrap:wrap}.curriculum-filter button{border:1px solid rgba(148,163,184,.2);background:rgba(15,23,42,.62);color:#d9e6f8;border-radius:999px;padding:.6rem .85rem;font-weight:800;cursor:pointer}.curriculum-filter button.active{background:linear-gradient(135deg,#2563eb,#7c3aed);border-color:transparent;color:#fff}
.curriculum-search{flex:1;max-width:430px}.curriculum-search input{width:100%;border:1px solid rgba(148,163,184,.22);background:rgba(15,23,42,.68);color:#f8fbff;border-radius:14px;padding:.7rem .9rem;outline:none}.curriculum-search input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.12)}
.curriculum-topic-list{display:grid;gap:.8rem}.curriculum-topic{border:1px solid rgba(148,163,184,.16);border-radius:20px;background:rgba(15,23,42,.46);overflow:hidden}.curriculum-topic>summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto;gap:.85rem;align-items:center;padding:1rem;cursor:pointer}.curriculum-topic>summary::-webkit-details-marker{display:none}.curriculum-topic[open]>summary{background:rgba(37,99,235,.08);border-bottom:1px solid rgba(148,163,184,.13)}
.curriculum-topic-code{font-size:.76rem;font-weight:900;color:#93c5fd;background:rgba(37,99,235,.14);padding:.42rem .58rem;border-radius:10px;white-space:nowrap}.curriculum-topic-title strong{display:block;color:#f7fbff}.curriculum-topic-title small{display:block;color:#9fb1cc;margin-top:.16rem}.curriculum-open-topic{border:1px solid rgba(96,165,250,.28);background:rgba(37,99,235,.14);color:#bfdbfe;border-radius:12px;padding:.55rem .75rem;font-weight:800;cursor:pointer}
.curriculum-lessons{display:grid}.curriculum-lesson{display:grid;grid-template-columns:48px 1fr;gap:.75rem;padding:.85rem 1rem;border-top:1px solid rgba(148,163,184,.09)}.curriculum-lesson:first-child{border-top:0}.curriculum-lesson:hover{background:rgba(30,41,59,.35)}
.lesson-sequence{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(148,163,184,.1);color:#a9b9d1;font-size:.75rem;font-weight:900}.lesson-map-title{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;color:#eef6ff}.lesson-map-copy p{margin:.3rem 0 .45rem;color:#aebdd2;line-height:1.5;font-size:.9rem}.lesson-map-meta{display:flex;gap:.45rem;flex-wrap:wrap}.lesson-map-meta span,.lesson-type{font-size:.7rem;font-weight:800;border-radius:999px;padding:.28rem .5rem;background:rgba(148,163,184,.1);color:#b9c9dd}.lesson-type.practical{background:rgba(16,185,129,.12);color:#6ee7b7}.lesson-type.skills{background:rgba(245,158,11,.12);color:#fcd34d}.lesson-type.review{background:rgba(167,139,250,.14);color:#c4b5fd}.topic-lesson-count{font-size:.72rem;font-weight:850;padding:.25rem .5rem;border-radius:999px;background:rgba(59,130,246,.13);color:#93c5fd;margin-right:auto}.curriculum-empty{padding:2rem;text-align:center;border:1px dashed rgba(148,163,184,.24);border-radius:18px;color:#cbd5e1}.curriculum-empty span{display:block;color:#94a3b8;margin-top:.35rem}
@media(max-width:820px){.curriculum-head{grid-template-columns:1fr}.curriculum-controls{align-items:stretch;flex-direction:column}.curriculum-search{max-width:none}.curriculum-topic>summary{grid-template-columns:auto 1fr}.curriculum-open-topic{grid-column:1/-1}.curriculum-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.curriculum-stats div{padding:.65rem}.curriculum-stats strong{font-size:1.15rem}.curriculum-stats span{font-size:.65rem}}
@media(max-width:560px){.curriculum-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum-lesson{grid-template-columns:38px 1fr;padding:.75rem}.lesson-map-copy p{font-size:.84rem}.lesson-map-meta span{font-size:.64rem}}