.lesson-workspace{max-width:1440px;margin:auto;color:var(--ink,#293f46)}.lesson-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:20px}.lesson-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.lesson-heading{gap:20px;align-items:flex-start}.lesson-panel{margin:18px 0;padding:22px;background:var(--surface,#fff);border:1px solid var(--line,#dce3df);border-radius:14px;min-width:0}.lesson-panel>h2{font-size:19px;margin:0 0 14px;color:#304953}.lesson-panel h3{font-size:16px;margin:18px 0 8px}.lesson-panel p{line-height:1.7}.lesson-tabs{display:flex;gap:8px;overflow-x:auto;padding:16px 0 8px;border-bottom:1px solid #dce3df;position:sticky;top:0;z-index:2;background:var(--canvas,#f6f7f3)}.lesson-tabs .button{flex:0 0 auto;white-space:nowrap;min-height:44px}.lesson-tabs .active{background:#355865;color:#fff;border-color:#355865}.lesson-progress{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.lesson-progress li{padding:10px 12px;border:1px solid #e1e6e2;border-radius:9px;color:#6b7778;background:#f5f6f3;font-size:14px}.lesson-progress li.complete{background:#eaf2ed;color:#285e51;border-color:#cadaD0}.lesson-prose{white-space:pre-wrap;overflow-wrap:anywhere}.lesson-person{font-weight:600}.lesson-version{margin:14px 0;padding:14px;border:1px solid #dde4e1;border-radius:10px;background:#fafbf8}.lesson-version summary{font-weight:600;color:#34545b;cursor:pointer;min-height:32px}.lesson-watch-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:20px;align-items:start}.lesson-player{width:100%;max-height:540px;border-radius:10px;background:#18252a}.lesson-note{padding:16px 0;border-bottom:1px solid #e3e6e3}.lesson-note:last-child{border-bottom:0}.lesson-callout{padding:14px 18px;border-radius:10px;border-left:4px solid #b88d45;background:#faf4e8;line-height:1.7}.lesson-empty{padding:24px;background:#f4f6f3;border:1px dashed #ccd8d2;border-radius:12px;color:#627572}.lesson-summary{background:#edf2f4;padding:14px 18px;margin:14px 0;border-radius:10px}.lesson-timeline-item{border-left:2px solid #ccdad4;padding:6px 0 6px 16px;margin-left:4px}.lesson-criterion-editor{margin:14px 0;padding:16px;border:1px solid #dce3df;border-radius:12px}.lesson-criterion-editor label{display:block;margin:10px 0}.lesson-criterion-editor input,.lesson-criterion-editor textarea{display:block;width:100%;margin-top:6px}.lesson-workspace select{min-height:44px;max-width:100%;padding:10px;border:1px solid #cddbd4;border-radius:8px;background:white;color:#2f4950}.lesson-workspace .button{min-height:42px}.lesson-body{min-width:0}@media(max-width:1050px){.lesson-watch-grid{grid-template-columns:1fr}.lesson-progress{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.lesson-panel{padding:16px}.lesson-progress{grid-template-columns:1fr}.lesson-heading{display:block}.lesson-heading .lesson-actions{margin-top:12px}.lesson-actions .button{flex-grow:1}.lesson-tabs{padding-top:10px}.lesson-tabs .button{padding:10px 12px}.lesson-tabs{position:static}.lesson-watch-grid{gap:0}.lesson-note{padding:16px 0}}
.lesson-presence{display:inline-flex;gap:8px;padding:8px 12px;margin:6px;border-radius:20px;background:#f0f2f4;color:#586571;max-width:100%;overflow-wrap:anywhere}.lesson-presence.present{background:#e7f4ec;color:#22614a}.lesson-call-result{border-radius:14px;background:linear-gradient(115deg,#e6efff,#f3eefb);border:1px solid #d5ddf0;padding:18px;margin-top:18px}.lesson-call-result h3{font-size:24px;color:#344f8f}.lesson-poll{border-top:1px solid #dde4e8;padding:20px 0}.lesson-poll-option{display:flex;align-items:center;gap:12px;margin:12px 0;flex-wrap:wrap}.lesson-poll-option>span{flex:1 1 180px;overflow-wrap:anywhere}.lesson-poll-option meter{width:180px;max-width:100%;accent-color:#536ab1}.lesson-vote-options{padding:12px;border:1px solid #d7dfe9;border-radius:12px}.lesson-vote-options label{display:flex;gap:10px;align-items:center;padding:10px;cursor:pointer}.lesson-vote-options input{width:auto;flex:none}.lesson-vote-options input:focus-visible{outline:3px solid #9bb6ff;outline-offset:3px}.lesson-presence,.lesson-call-result{animation:lesson-appear .2s ease-out}@keyframes lesson-appear{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.lesson-presence,.lesson-call-result{animation:none}}
