.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 .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 .theme-summary{width:100%;cursor:pointer;padding:18px;text-align:left;border:0;background:transparent;position:relative;color:inherit}
.theme-title{display:block;font:700 17px/1.35 "DM Sans",sans-serif;color:var(--red-dark);margin:0 28px 9px 0}
.theme-advice{display:block;font-size:13px;line-height:1.6;margin:0 0 12px;color:var(--muted);white-space:pre-line}
.theme-indicator{position:absolute;right:18px;top:17px;font-size:22px;color:var(--red)}
.theme-count{font-size:10px;font-weight:600;color:var(--red);background:#e7f0f5;padding:5px 8px;border-radius:5px}
.theme-occurrences{display:none;padding:0 18px 5px;margin:0;list-style:none}
.practice-theme[data-theme-state=expanded] .theme-occurrences{display:block}
.practice-theme[data-theme-state=compact] .theme-summary{padding-top:13px;padding-bottom:13px}
.practice-theme[data-theme-state=compact] .theme-title{margin-bottom:0}
.practice-theme[data-theme-state=compact] .theme-advice,.practice-theme[data-theme-state=compact] .theme-count{display: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}
.theme-heading{display:flex;align-items:center;gap:10px;padding-right:18px}
.theme-heading .theme-summary{flex:1;min-width:0}
.theme-heading .theme-title{margin-bottom:0}
.theme-details{padding:0 18px 18px}
.practice-theme[data-theme-state=compact] .theme-details{display:none}
.theme-repeated{flex-shrink:0;border:0;border-radius:6px;padding:8px 10px;background:#e7f0f5;color:var(--red-dark);font-size:12px;font-weight:700;cursor:pointer}
.repeat-dialog{border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);width:min(520px,92vw);max-height:90vh;padding:20px}
.repeat-dialog::backdrop{background:rgba(9,27,48,.5)}
.repeat-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.repeat-dialog h2{margin:0;font-size:22px}
.repeat-lesson-page{width:min(1100px,94vw);height:90vh}
.repeat-dialog .repeat-back{width:42px;height:42px;border-radius:50%;padding:0;font-size:32px;line-height:1}
.repeat-lesson-link{display:flex;flex-direction:column;gap:6px;width:100%;padding:16px;margin-top:10px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:10px;color:inherit}
.repeat-dialog .theme-target{outline-offset:-3px}
.history-notes li.theme-target{outline-offset:4px}
