.signal-reading-guide { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; list-style:none; padding:24px 0 0; margin:20px 0 0; border-top:1px solid rgba(185,150,255,.18); }
.signal-reading-guide li { display:flex; gap:12px; min-width:0; }
.signal-reading-guide li > span { color:#78dfef; font:14px/1.7 var(--mono); }
.signal-reading-guide b { color:#e5dff6; font-size:16px; font-weight:600; }
.signal-reading-guide p { margin:6px 0 0; color:#b2abbf; font-size:15px; line-height:1.65; }
.eesp-lesson { --lesson-accent:#74e4ef; padding:clamp(22px,3vw,40px); border:1px solid rgba(190,160,255,.2); border-radius:24px; background:linear-gradient(120deg,rgba(70,40,105,.13),rgba(7,13,20,.95)); }
.eesp-lesson .lesson-heading h4 { margin:8px 0 16px; font-size:clamp(25px,3vw,38px); font-weight:500; line-height:1.22; letter-spacing:-.025em; color:#eee8fa; }
.eesp-lesson .lesson-heading > p:not(.micro) { max-width:780px; margin:0; color:#b4acbf; font-size:16px; line-height:1.7; }
.eesp-lesson button { cursor:pointer; touch-action:manipulation; border:1px solid rgba(199,171,255,.28); border-radius:14px; background:#100f1d; color:#d1c6e4; min-height:52px; padding:15px; transition:background .2s,border-color .2s,box-shadow .2s; }
.eesp-lesson button:hover { background:#191729; border-color:#bda5ed; }
.eesp-lesson button[aria-pressed="true"] { border-color:var(--lesson-accent); color:#f4fcff; background:linear-gradient(140deg,rgba(83,203,226,.14),rgba(128,89,207,.16)); box-shadow:inset 0 -3px 0 var(--lesson-accent); }
.eesp-lesson button:focus-visible,.eesp-lesson a:focus-visible,.research-reading-guide summary:focus-visible { outline:3px solid #f8dc80; outline-offset:5px; }
.eesp-lesson [data-lesson-controls] { display:none; }
.eesp-lesson.is-enhanced [data-lesson-controls] { display:grid; }
.eesp-lesson .lesson-panels article { margin:0 0 20px; }
.eesp-lesson .lesson-panels article[hidden] { display:none; }
.eesp-lesson .lesson-panels h5 { margin:0 0 16px; font-size:clamp(22px,2.5vw,30px); line-height:1.3; font-weight:500; letter-spacing:-.02em; color:#ece8f7; }
.eesp-lesson .lesson-panels p { font-size:16px; line-height:1.75; color:#bdb4ca; }
.eesp-lesson .lesson-panels a,.eesp-lesson .lesson-source a { color:#97e5ed; text-underline-offset:4px; }
.eesp-lesson .lesson-panels a { display:block; width:fit-content; font-size:14px; padding:7px 0; }
.eesp-lesson .lesson-source { margin:22px 0 0; padding-top:20px; border-top:1px solid rgba(196,179,255,.16); font-size:14px; line-height:1.7; color:#a99fb7; }
.energy-learning { margin:22px 0 34px; }
.energy-learning-path { grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr) 26px minmax(0,1fr); gap:12px; align-items:center; margin:28px 0; }
.energy-learning-path button { text-align:left; align-self:stretch; padding:20px; }
.energy-learning-path button span { display:block; font:12px/1.5 var(--mono); color:#c1b3db; }
.energy-learning-path button b { display:block; margin:8px 0; font-size:19px; font-weight:500; }
.energy-learning-path button small { display:block; font-size:14px; color:#b9b0c8; }
.energy-path-arrow { color:#b3a0e8; font-size:26px; text-align:center; }
.energy-learning .lesson-panels { border-left:2px solid #8671ba; padding:8px 0 0 22px; }
.energy-learning .lesson-panels article { margin-bottom:0; }
.energy-learning .lesson-panels p { margin-bottom:0; max-width:850px; }
.body-learning { margin:30px 0; }
.body-learning-layout { display:grid; grid-template-columns:minmax(240px,.82fr) minmax(0,1.18fr); gap:clamp(24px,4vw,52px); margin-top:26px; align-items:center; }
.body-learning-figure { margin:0; min-width:0; }
.body-learning-image { position:relative; max-width:400px; margin-inline:auto; background:#080b12; border-radius:20px; overflow:hidden; }
.body-learning-image img { display:block; width:100%; height:auto; }
.body-learning-figure figcaption { color:#a99fb7; font-size:13px; line-height:1.6; margin:12px 0 0; text-align:center; }
.body-learning-hotspots { position:absolute; inset:0; pointer-events:none; }
.eesp-lesson .body-point { position:absolute; transform:translate(-50%,-50%); width:46px; height:46px; min-height:46px; padding:0; border-radius:50%; pointer-events:auto; background:#100e21; font:600 17px/1 var(--sans); box-shadow:0 0 0 5px rgba(18,15,34,.65); }
.eesp-lesson .body-point[aria-pressed="true"] { background:#dcfbff; color:#152129; box-shadow:0 0 0 5px rgba(91,224,240,.22),0 0 24px rgba(101,230,245,.25); }
.body-learning-leaders { position:absolute; inset:0; width:100%; height:100%; overflow:visible; fill:none; stroke:#c9a5ff; stroke-width:1.5px; }
.body-learning-leaders path { vector-effect:non-scaling-stroke; }
.body-point-lungs { left:30%; top:32%; }
.body-point-heart { left:70%; top:43%; }
.body-point-kidneys { left:32%; top:59%; }
.body-learning-buttons { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:28px; }
.body-learning-buttons button { font-size:16px; font-weight:500; padding:12px 7px; }
.body-learning-buttons button span { color:#a49ab5; font-size:13px; }
.body-learning-buttons button[aria-pressed="true"] span { color:#94edf4; }
.eesp-lesson .lesson-panels .lesson-kicker { color:#91dfe9; font:13px/1.6 var(--mono); letter-spacing:.06em; margin:0 0 14px; }
.eesp-lesson .lesson-takeaway { padding:16px 18px; border-left:2px solid #bc9cf3; background:rgba(123,90,174,.09); border-radius:0 12px 12px 0; }
.eesp-lesson .lesson-takeaway b { display:block; color:#ddd0ee; margin-bottom:5px; }
.eesp-lesson .lesson-next { display:inline-flex; gap:14px; align-items:center; color:#dbd0f3; font-size:15px; padding:14px 0; text-underline-offset:5px; }
.research-reading-guide { grid-column:1/-1; border:1px solid rgba(196,179,255,.2); border-radius:16px; padding:0 22px; }
.research-reading-guide summary { cursor:pointer; color:#c5e9f3; padding:18px 0; font-size:16px; min-height:52px; }
.research-reading-guide p,.research-reading-guide li { color:#b7acc7; font-size:16px; line-height:1.75; }
.research-reading-guide p b,.research-reading-guide li b { color:#dfd5ef; font-weight:500; }
.research-reading-guide ul { padding-left:22px; }
.research-reading-guide li { margin:8px 0; }
@media(max-width:760px) {
  .signal-reading-guide { grid-template-columns:1fr; gap:16px; }
  .body-learning-layout { grid-template-columns:1fr; gap:24px; }
  .body-learning-image { max-width:330px; }
  .energy-learning-path { grid-template-columns:1fr; gap:8px; }
  .energy-learning-path button { padding:16px 20px; }
  .energy-path-arrow { line-height:1; transform:rotate(90deg); }
}
@media(max-width:420px) {
  .eesp-lesson { padding:18px; border-radius:18px; }
  .eesp-lesson .lesson-heading h4 { font-size:25px; }
  .body-learning-buttons { gap:6px; }
  .body-learning-buttons button { font-size:15px; }
  .body-learning-buttons button span { display:block; }
}
@media(prefers-reduced-motion:reduce) {
  .eesp-lesson button { transition:none; }
}
