.lesson-player{display:block;width:100%;aspect-ratio:16/9;max-height:none!important;background:#0d1823;border-radius:8px}.lesson-heading{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:15px}.lesson-heading p{margin-bottom:5px}.lesson-number{color:var(--accent);font-size:.75rem;font-weight:750;letter-spacing:.08em}.lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0}.lesson-choice{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:start;justify-content:start;text-align:left;min-height:82px;background:var(--surface2);padding:12px}.lesson-choice[aria-current="true"]{outline:2px solid var(--accent);outline-offset:0;background:#203b46}.lesson-choice>span:first-child{color:var(--accent);font-size:.88rem}.lesson-choice strong{display:block;font-size:.87rem;line-height:1.3}.lesson-choice small{display:block;color:var(--muted);font-size:.72rem;margin-top:6px;font-weight:450}.lesson-links{display:flex;flex-wrap:wrap;gap:9px;margin:15px 0}.lesson-text{border-top:1px solid var(--line);padding-top:13px}.lesson-text summary{cursor:pointer;font-weight:700}.lesson-text ol{padding-left:24px;font-size:.9rem}.lesson-text li{margin:12px 0}.lesson-text li strong{display:block}.start-route{padding:17px;border-left:3px solid var(--accent);background:var(--surface);margin:20px 0 25px}.start-route p:last-child{margin:0}.start-route b{color:var(--text)}.route-links{display:flex;flex-wrap:wrap;gap:10px;margin:17px 0}.route-links a{font-size:.84rem}.practice-file{margin-top:17px;padding:15px;border:1px solid var(--line);border-radius:8px}.practice-file p{font-size:.84rem;margin:0 0 9px}.practice-file a{font-size:.86rem}.lesson-status{font-size:.8rem;color:var(--muted);min-height:1.6em}.caption-note{font-size:.79rem;color:var(--muted)}.tool-guide-list li{margin:12px 0}.link-table{overflow:auto}.video-error{color:#ffd99c}@media(max-width:520px){.lesson-grid{grid-template-columns:1fr}.lesson-choice{min-height:65px}.lesson-heading{display:block}.lesson-heading h2{font-size:1.3rem}.lesson-links .button{flex:1 1 140px}.lesson-player{border-radius:5px}.video-card{padding:12px!important}.route-links{gap:14px}header{flex-wrap:wrap;gap:10px}}@media print{.video-card{display:block!important}.lesson-player,.lesson-grid,.lesson-links,.caption-note{display:none}.lesson-text:not([open])>*{display:block}.start-route,.practice-file{break-inside:avoid}}
