.lesson{--ribbon:56px;display:flex;flex-direction:column;height:100dvh;background:var(--surface-page);color:var(--text-strong)}.lesson-ribbon{flex:none;height:var(--ribbon);justify-content:space-between;gap:var(--space-4);padding:0 28px;border-bottom:1px solid var(--border-soft)}.lesson-ribbon,.lesson-where{display:flex;align-items:center}.lesson-where{gap:14px;min-width:0}.lesson-brand{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none;flex:none}.lesson-brand-name{font-family:var(--font-serif);font-size:17px;font-weight:600}.lesson-divider{width:1px;height:20px;background:var(--border-strong);flex:none}.lesson-titles{display:flex;align-items:baseline;gap:14px;min-width:0}.lesson-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--text-faint);white-space:nowrap}.lesson-title{font-family:var(--font-sans);font-size:15px;font-weight:500;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-actions{display:flex;flex:none}.lesson-actions,.lesson-notes-toggle{align-items:center;gap:var(--space-2)}.lesson-notes-toggle{display:inline-flex;padding:7px 14px;border:1px solid var(--border-strong);border-radius:999px;background:transparent;color:var(--text-strong);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.lesson-notes-toggle:hover{background:var(--surface-sunken)}.lesson-notes-toggle[aria-pressed=true]{background:var(--surface-sunken);border-color:var(--border-ink)}.lesson-icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;flex:none;border:0;border-radius:999px;background:transparent;color:var(--text-body);cursor:pointer;transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.lesson-icon-btn:hover:not(:disabled){background:var(--surface-sunken);color:var(--text-strong)}.lesson-icon-btn:disabled{opacity:.4;cursor:default}.lesson-lesson-nav{width:32px;height:32px;border:1px solid var(--border-soft);color:var(--text-muted)}.lesson :is(button,[role=slider]):focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.lesson-body{flex:1;min-height:0;display:flex}.lesson-main{flex:1;min-width:0;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-5) var(--space-7);background:var(--surface-page)}.lesson-column{width:min(100%,1040px,calc((100dvh - var(--ribbon) - 230px) * 16 / 9))}.lesson-main[data-fullscreen] .lesson-column{width:min(100%,calc((100dvh - 190px) * 16 / 9))}.lesson-caption{min-height:calc(2 * 1.4em + 14px);margin:0;padding-top:14px;font-size:var(--text-lg);line-height:1.4;text-align:center;text-wrap:balance;color:var(--text-faint)}.lesson-caption [data-said]{color:var(--text-strong);transition:color .12s linear}.lesson-caption-gap{height:var(--space-3)}.lesson-stage{position:relative}.lesson-loading{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:var(--space-3);background:rgb(0 0 0/.28);color:#fff;font-size:var(--text-sm);pointer-events:none;animation:lesson-loading-in .2s ease-out .15s both}.lesson-spinner{width:32px;height:32px;border:3px solid rgb(255 255 255/.35);border-top-color:#fff;border-radius:999px;animation:lesson-spin .8s linear infinite}@keyframes lesson-loading-in{0%{opacity:0}to{opacity:1}}@keyframes lesson-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.lesson-spinner{animation-duration:2.4s}}.lesson-stage-waiting{display:grid;place-items:center;border:1px dashed var(--border-soft);color:var(--text-muted);font-size:var(--text-sm)}.lesson-stage-waiting p{margin:0}.lesson-stage-waiting a{color:var(--text-strong)}.lesson-controls{padding-top:var(--space-3)}.lesson-track{display:flex;gap:3px;height:18px;align-items:center;cursor:pointer;touch-action:none}.lesson-segment{position:relative;flex-basis:0;height:4px;border-radius:2px;background:var(--border-soft);overflow:hidden;transition:height var(--dur-base) var(--ease-out)}.lesson-track:hover .lesson-segment{height:8px}.lesson-segment-fill{position:absolute;inset:0;background:var(--brand);transform-origin:left}.lesson-buttons{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-2)}.lesson-playback,.lesson-view{display:flex;align-items:center;gap:2px}.lesson-play{display:inline-grid;place-items:center;width:44px;height:44px;margin:0 4px;border:0;border-radius:999px;background:var(--brand);color:var(--text-on-brand);cursor:pointer;transition:background var(--dur-base) var(--ease-out)}.lesson-play:hover{background:var(--brand-hover)}.lesson-now{display:inline-flex;align-items:baseline;gap:var(--space-3);margin-left:var(--space-3);font-size:var(--text-sm);white-space:nowrap}.lesson-now-scene{font-weight:600}.lesson-time{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.lesson-pill{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:0;border-radius:999px;background:transparent;color:var(--text-muted);font-size:var(--text-xs);font-weight:500;cursor:pointer}.lesson-pill:hover{color:var(--text-strong)}.lesson-pill[aria-pressed=true]{background:var(--surface-sunken);color:var(--text-strong)}.lesson-pill:disabled{opacity:.45;cursor:default}.lesson-rate{font-family:var(--font-mono);min-width:44px;justify-content:center}.lesson-settings-anchor{position:relative}.lesson-settings-anchor .lesson-icon-btn[aria-expanded=true]{background:var(--surface-sunken);color:var(--text-strong)}.lesson-settings{position:absolute;right:0;bottom:calc(100% + var(--space-2));z-index:20;display:grid;gap:2px;width:min(320px,calc(100vw - 32px));padding:var(--space-2);border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-raised);box-shadow:0 12px 32px rgb(0 0 0/.14)}.lesson-settings-title{margin:0;padding:var(--space-2) var(--space-3) var(--space-1);font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.lesson-settings-item{display:grid;gap:2px;padding:var(--space-2) var(--space-3);border:0;border-radius:10px;background:transparent;text-align:left;color:var(--text-body);cursor:pointer}.lesson-settings-item:hover{background:var(--surface-sunken)}.lesson-settings-item[aria-checked=true]{background:var(--surface-sunken);color:var(--text-strong)}.lesson-settings-item[aria-checked=true] .lesson-settings-name:after{content:" ✓"}.lesson-settings-name{font-weight:600;font-size:15px}.lesson-settings-note{font-size:13px;color:var(--text-muted)}.lesson-notes{width:400px;flex:none;display:flex;flex-direction:column;min-height:0;background:var(--surface-raised);border-left:1px solid var(--border-soft)}.notes-grabber{display:none}.notes-tabs{flex:none;display:flex;align-items:center;gap:22px;padding:0 var(--space-5);border-bottom:1px solid var(--border-soft)}.notes-tab{padding:16px 0 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-size:var(--text-sm);font-weight:500;cursor:pointer}.notes-tab[aria-selected=true]{color:var(--text-strong);font-weight:600;border-bottom-color:var(--brand)}.notes-close{margin-left:auto;width:30px;height:30px;color:var(--text-muted)}.notes-body{flex:1;min-height:0;overflow-y:auto;position:relative;padding:var(--space-5)}.notes-transcript{display:flex;flex-direction:column;gap:26px;position:relative}.notes-scene{padding-left:16px;border-left:2px solid transparent}.notes-scene[data-state=now]{border-left-color:var(--brand)}.notes-scene-head{display:flex;justify-content:space-between;width:100%;margin-bottom:var(--space-2);padding:0;border:0;background:transparent;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--text-faint);cursor:pointer}.notes-scene[data-state=now] .notes-scene-head{color:var(--brand)}.notes-paragraph{margin:0 0 var(--space-3);font-size:15px;line-height:1.6;color:var(--text-body)}.notes-paragraph:last-child{margin-bottom:0}.notes-scene[data-state=past] .notes-paragraph{color:var(--text-muted)}.notes-scene[data-state=next] .notes-paragraph{color:var(--text-faint)}.notes-line{cursor:pointer;border-radius:4px;transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.notes-line:hover{background:var(--surface-sunken)}.notes-scene[data-state=now] .notes-line:not([data-said]):not([data-now]){color:var(--text-faint)}.notes-line[data-now]{background:var(--accent-tint);color:var(--text-strong);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:2px 4px;margin:0 -4px}.notes-hint{margin:var(--space-6) 0 0;font-family:var(--font-mono);font-size:11px;color:var(--text-faint)}.notes-scenes{list-style:none;margin:0;padding:0}.notes-scene-row{display:grid;grid-template-columns:28px 1fr auto;align-items:baseline;width:100%;padding:10px 12px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-body);font-size:15px;text-align:left;cursor:pointer}.notes-scene-row:hover{background:var(--surface-sunken)}.notes-scene-row[aria-current=step]{background:var(--brand-tint);color:var(--text-strong);font-weight:600}.notes-scene-n,.notes-scene-time{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);font-weight:400}.notes-about h2{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:600;margin:var(--space-2) 0 var(--space-3)}.notes-about h3{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-weight:400;margin:var(--space-6) 0 var(--space-3)}.notes-about>p{color:var(--text-body);line-height:1.6;margin:0 0 var(--space-3)}.notes-facts{display:flex;gap:var(--space-3);margin:var(--space-4) 0 0;font-size:var(--text-sm)}.notes-facts dt{color:var(--text-muted)}.notes-facts dd{margin:0;font-family:var(--font-mono)}.notes-keys{display:grid;gap:var(--space-2);margin:0;font-size:var(--text-sm)}.notes-keys>div{display:grid;grid-template-columns:96px 1fr;align-items:baseline}.notes-keys dd{margin:0;color:var(--text-body)}.notes-keys kbd{font-family:var(--font-mono);font-size:11px;padding:2px 6px;border:solid var(--border-strong);border-width:1px 1px 2px;border-radius:5px;background:var(--surface-page)}@media (max-width:860px){.lesson{--ribbon:56px}.lesson-ribbon{padding:0 var(--space-4)}.lesson-brand-name,.lesson-divider,.lesson-lesson-nav{display:none}.lesson-titles{flex-direction:column;align-items:flex-start;gap:2px}.lesson-eyebrow{font-size:10px}.lesson-notes-toggle{padding:8px}.lesson-notes-toggle span{display:none}.lesson-body{flex-direction:column}.lesson-main{padding:0 0 var(--space-3);justify-content:flex-start}.lesson[data-notes=open] .lesson-main{flex:none;overflow:visible}.lesson[data-notes=closed] .lesson-main{justify-content:center}.lesson-column{width:100%}.lesson-caption{font-size:17px;padding:12px var(--space-5) 0}.lesson-controls{padding:var(--space-3) var(--space-5) 0}.lesson-now-scene,.lesson-pill span,.lesson-rate{display:none}.lesson-now{margin-left:var(--space-2)}.lesson-notes{width:auto;flex:1;border-left:0;border-top:1px solid var(--border-soft);border-radius:20px 20px 0 0}.notes-grabber{display:block;width:36px;height:4px;margin:10px auto 0;border-radius:2px;background:var(--border-strong)}.notes-tabs{border-bottom:0}.notes-body{padding-top:var(--space-3)}}.lesson-course-link{font-size:var(--text-sm);color:var(--text-muted);text-decoration:none;margin-right:var(--space-2);white-space:nowrap}.lesson-course-link:hover{color:var(--text-strong)}a.lesson-lesson-nav{text-decoration:none}.lesson-lesson-nav[aria-disabled=true]{opacity:.35}@media (max-width:860px){.lesson-course-link{display:none}}.course{max-width:880px;margin:0 auto;padding:var(--space-8) var(--space-5) var(--space-10);background:var(--surface-page)}.course-head{margin-bottom:var(--space-8)}.course-title{font-family:var(--font-serif);font-size:clamp(2.25rem,6vw,3.5rem);margin:var(--space-6) 0 var(--space-3)}.course-summary{color:var(--text-muted);font-size:var(--text-md);max-width:52ch}.course-module{margin-top:var(--space-7)}.course-module-name{font-family:var(--font-mono);font-size:12px;font-weight:400;letter-spacing:.1em;color:var(--text-faint);margin:0 0 var(--space-3)}.course-module-summary{margin:0 0 var(--space-4);max-width:60ch;font-size:var(--text-md);line-height:1.6;color:var(--text-body)}.course-lessons{list-style:none;margin:0;padding:0;border-top:1px solid var(--border-soft)}.course-lesson{display:grid;grid-template-columns:56px 1fr auto;align-items:baseline;gap:var(--space-3);padding:14px 8px;border-bottom:1px solid var(--border-soft);color:var(--text-strong);text-decoration:none;transition:background var(--dur-base) var(--ease-out)}.course-lesson:hover{background:var(--surface-sunken)}.course-lesson-code{font-family:var(--font-mono);font-size:12px;color:var(--text-faint)}.course-lesson-title{font-family:var(--font-serif);font-size:20px}.course-lesson-time{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.account{margin-top:var(--space-5);display:grid;gap:var(--space-3)}.account-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5)}.account-email{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.account-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-5);border-radius:999px;background:var(--tomato-500);color:#fff;font-weight:600;text-decoration:none;transition:background var(--dur-base) var(--ease-out)}.account-cta:hover{background:var(--tomato-600)}.account-link{color:var(--text-strong);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--border-soft);font-size:var(--text-sm)}.account-link:hover{text-decoration-color:currentColor}.account-link--button{background:none;border:1px solid var(--border-soft);border-radius:999px;min-height:44px;padding:0 var(--space-5);text-decoration:none;cursor:pointer;font:inherit}.account-note{margin:0;padding:10px 14px;border-radius:10px;background:var(--surface-sunken);color:var(--text-strong);font-size:15px}.account-note--ok{background:var(--success-tint)}.account-note--bad{background:var(--tomato-100)}.lesson-badge{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--text-faint);border:1px solid var(--border-soft);border-radius:999px;padding:2px 8px;margin-left:var(--space-3);vertical-align:middle}.lesson-badge--free{color:var(--olive-600);border-color:var(--olive-400)}.enroll{max-width:640px;margin:0 auto;padding:var(--space-8) var(--space-5) var(--space-10);background:var(--surface-page);display:grid;gap:var(--space-6)}.enroll-card{display:grid;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-raised)}.enroll-card--quiet{background:transparent}.enroll-title{font-size:clamp(2rem,6vw,2.75rem)}.enroll-subtitle,.enroll-title{font-family:var(--font-serif);margin:0}.enroll-subtitle{font-size:24px}.enroll-lead{margin:0;color:var(--text-muted);font-size:var(--text-md)}.enroll-price{margin:0}.enroll-amount{font-family:var(--font-serif);font-size:48px;color:var(--text-strong)}.enroll-per{color:var(--text-muted)}.enroll-perks{margin:0;padding-left:1.2em;display:grid;gap:6px}.enroll-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.enroll-note{margin:0;font-size:13px;color:var(--text-faint)}.enroll-form{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-3)}.enroll-label{display:grid;gap:6px;flex:1 1 240px;font-size:14px;color:var(--text-muted)}.enroll-input{min-height:44px;padding:0 14px;border:1px solid var(--border-soft);border-radius:10px;font:inherit;color:var(--text-strong)}.enroll-input,.lesson-reading{background:var(--surface-page)}.lesson-reading{border-top:1px solid var(--border-soft);padding:var(--space-7) var(--space-5)}.lesson-reading-inner{max-width:680px;margin:0 auto}.lesson-reading-title{font-family:var(--font-serif);font-size:28px;font-weight:600;line-height:1.2;margin:var(--space-2) 0 var(--space-2);color:var(--text-strong)}.lesson-reading-sub{margin:0 0 var(--space-5);font-size:var(--text-sm);color:var(--text-muted)}.lesson-reading .notes-paragraph{margin-bottom:var(--space-4);font-size:17px;line-height:1.7}