.course-topbar{position:static;margin:0;padding:18px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:#edf0e6;border-bottom:1px solid var(--line)}
.course-topbar .brand{font-size:32px}
.course-topbar .brand span{font-size:9px}
.back-link,.course-breadcrumb a{color:var(--green);font-size:14px;font-weight:700;text-decoration:none}
.course-page{margin:0 auto;padding:26px clamp(18px,5vw,72px) 60px;max-width:1040px}
.course-breadcrumb{display:flex;align-items:center;gap:10px;margin-bottom:28px;color:var(--muted);font-size:13px}
.course-heading{padding:28px 32px;margin-bottom:24px;background:#e8edde;border-radius:14px}
.course-heading .eyebrow{margin:0 0 8px}
.course-heading h1{font-size:clamp(30px,5vw,46px);line-height:1.15;margin:0}
.course-heading>p:last-child{max-width:700px;margin:14px 0 0;color:var(--muted);line-height:1.7}
.course-status:empty{display:none}
#course-content{padding:0 8px}
#course-content .lesson-steps{background:#e8edde;border:1px solid #d4decc;border-radius:10px}
.course-back{display:inline-flex;align-items:center;margin-top:28px;min-height:44px;text-decoration:none}
@media(max-width:760px){.course-topbar{padding:15px 18px}.course-topbar .brand{font-size:27px}.back-link{font-size:12px}.course-page{padding:18px 16px 42px}.course-breadcrumb{font-size:12px;gap:7px;margin-bottom:18px}.course-heading{padding:22px 19px;border-radius:10px}.course-heading h1{font-size:32px}#course-content{padding:0}.course-topbar+ .demo-access{margin:0;padding:12px 18px}}

.course-editor-notes:empty{display:none}
.course-editor-notes .notice{margin:0 0 20px}
.player-progress{padding:20px 24px;background:#fff;border:1px solid var(--line);border-radius:12px;margin:24px 0}
.player-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}
.player-progress-heading strong{font-weight:700}
.player-progress-heading span{font-size:13px;font-weight:700;color:var(--green)}
.player-progress progress{display:block;width:100%;height:9px;margin-top:13px;accent-color:var(--green)}
.player-layout{display:grid;grid-template-columns:minmax(230px,285px) minmax(0,1fr);gap:22px;align-items:start}
.course-outline{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto;padding:18px;background:#edf0e6;border:1px solid #dce3d6;border-radius:12px}
.course-outline h2{font-size:18px;margin:0 0 12px;letter-spacing:-.035em}
.outline-chapter{border-top:1px solid #d9e0d4;padding:2px 0}
.outline-chapter summary{padding:12px 4px;cursor:pointer;line-height:1.5;font-weight:700;font-size:13px;list-style:none}
.outline-chapter summary::-webkit-details-marker{display:none}
.outline-chapter summary:after{content:'＋';float:right;color:var(--muted)}
.outline-chapter[open] summary:after{content:'−'}
.outline-lessons{display:grid;gap:4px;padding:0 0 10px}
.outline-lesson{display:flex;align-items:flex-start;gap:9px;width:100%;padding:9px 8px;text-align:left;border:0;border-radius:7px;background:transparent;color:var(--ink);font-size:12px;line-height:1.5}
.outline-lesson:hover,.outline-lesson:focus-visible{background:#e0e7d9}
.outline-lesson[aria-current=page]{background:#fff;font-weight:700;color:var(--green);box-shadow:inset 3px 0 var(--green)}
.outline-check{display:grid;place-items:center;flex:0 0 17px;width:17px;height:17px;margin-top:1px;border:1px solid #adb9a8;border-radius:50%;font-size:11px;color:#fff}
.outline-lesson.is-complete .outline-check{background:var(--green);border-color:var(--green)}
.course-lesson{min-width:0;min-height:400px;padding:clamp(22px,4vw,42px);background:#fff;border:1px solid var(--line);border-radius:12px;scroll-margin-top:18px}
.lesson-chapter{margin:0 0 7px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.lesson-body h3{margin:0 0 24px;font-size:clamp(25px,3vw,34px);line-height:1.2;letter-spacing:-.015em}
.lesson-body p,.lesson-body li{font-size:15px;line-height:1.85}
.lesson-body p{margin:0 0 17px}
.lesson-body ul,.lesson-body ol{padding-left:23px;margin:12px 0 20px}
.lesson-body .reading-table{margin:20px 0}
.lesson-visual{margin:24px 0 28px}
.lesson-visual-frame{position:relative;overflow:hidden;border-radius:12px;background:#f5f0e6}
.lesson-visual-frame img{display:block;width:100%;height:auto}
.lesson-visual figcaption{margin-top:10px;color:var(--muted);font-size:13px;line-height:1.6}
.lesson-navigation{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:40px;padding-top:22px;border-top:1px solid var(--line)}
.lesson-navigation .button{min-height:46px;justify-content:center;font-weight:700}
.lesson-navigation .secondary{min-height:46px;background:#fff}
.lesson-navigation button:disabled{opacity:.45;cursor:default}
.course-status:not(:empty){margin:0 0 20px}
.course-footer{padding:20px clamp(20px,5vw,72px);border-top:1px solid var(--line);color:var(--muted);font-size:12px}
@media(max-width:850px){.player-layout{grid-template-columns:1fr}.course-outline{position:static;max-height:360px}.course-lesson{min-height:320px}}
@media(max-width:600px){.course-page{padding:16px 14px 36px}.course-heading{margin-bottom:16px}.player-progress{padding:16px;margin:18px 0}.player-progress-heading{font-size:13px}.course-outline{max-height:280px;padding:14px}.course-lesson{padding:22px 18px;min-height:280px}.lesson-body h3{font-size:25px;margin-bottom:18px}.lesson-body p,.lesson-body li{font-size:14px;line-height:1.8}.lesson-navigation{margin-top:28px;gap:9px;align-items:stretch}.lesson-navigation button{flex:1 1 0;padding:10px;font-size:12px}.course-footer{padding:18px}}
