.lesson-notes-view{min-width:0}
.lesson-tabs{display:flex;gap:4px;padding:4px;background:#dceaf2;border-radius:10px;margin-bottom:22px}
.lesson-tabs [role=tab]{flex:1;border:0;border-radius:7px;padding:11px 8px;color:var(--muted);background:transparent;font-size:13px;font-weight:600}
.lesson-tabs [aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 2px 7px #42372513}
.lesson-tabs button:focus-visible,.practice-theme summary:focus-visible,.theme-occurrence button:focus-visible{outline:2px solid var(--red);outline-offset:3px}
[data-lesson-panel][hidden]{display:none!important}
.themes-intro{font-size:12px;color:var(--muted);line-height:1.6;margin:0 0 18px}
.practice-theme{border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:14px;overflow:hidden}
.practice-theme summary{cursor:pointer;padding:18px;list-style:none;position:relative}
.practice-theme summary::-webkit-details-marker{display:none}
.practice-theme summary:after{content:'+';position:absolute;right:18px;top:17px;font-size:22px;color:var(--red)}
.practice-theme[open] summary:after{content:'−'}
.practice-theme h4{font:700 17px/1.35 "DM Sans",sans-serif;color:var(--red-dark);margin:0 28px 9px 0}
.practice-theme summary p{font-size:13px;line-height:1.6;margin:0 0 12px;color:var(--muted);white-space:pre-line}
.theme-count{font-size:10px;font-weight:600;color:var(--red);background:#e7f0f5;padding:5px 8px;border-radius:5px}
.theme-occurrences{padding:0 18px 5px;margin:0;list-style:none}
.theme-occurrence{border-top:1px solid var(--line);padding:15px 0 17px 15px;border-left:2px solid #bdcfdc}
.theme-occurrence h5{font-size:13px;margin:0 0 7px}
.theme-occurrence p{font-size:12px;line-height:1.6;margin:0 0 9px}
.theme-occurrence .practice{margin:9px 0}
.theme-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:10px}
.theme-actions button{background:transparent;border:0;color:var(--red);padding:3px 0;font-size:11px;font-weight:600}
.themes-empty{border:1px dashed #bdcfdc;border-radius:12px;padding:22px;background:var(--surface)}
.themes-empty h4{font:500 24px Newsreader,serif;margin:0 0 8px}
.themes-empty p{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 16px}
.theme-target{outline:2px solid #739bb4;outline-offset:5px;border-radius:6px}
.history-notes li.theme-target{outline-offset:4px}
