[hidden]{display:none!important}
.material-editor{margin:32px 0;scroll-margin-top:25px}
.material-editor h2{font-size:28px}
.material-form-actions,.material-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.lesson-materials{margin-top:40px}
.lesson-materials>h2{font-size:28px}
.material-card{padding:24px;border:1px solid var(--line);border-radius:8px;background:white;margin:20px 0;overflow:hidden}
.material-heading{display:flex;gap:15px;justify-content:space-between;align-items:flex-start;margin-bottom:15px}
.material-heading h3{font-size:19px;line-height:1.4;margin:0;overflow-wrap:anywhere}
.material-heading .tag{font-size:10px;flex-shrink:0}
.material-card video{display:block;width:100%;max-height:520px;border-radius:5px;background:#203e57}
.material-card audio{display:block;width:100%;margin:16px 0}
.lesson-image{display:block;max-width:100%;max-height:600px;margin:15px auto;object-fit:contain;border-radius:5px}
.video-embed{aspect-ratio:16/9;background:#eef4f8;border-radius:5px;overflow:hidden}
.video-embed iframe{display:block;width:100%;height:100%;border:0}
.material-links{margin-top:18px;overflow-wrap:anywhere}
.material-links a{max-width:100%;word-break:break-word}
.material-notes{font-size:14px;color:var(--muted);line-height:1.85;overflow-wrap:anywhere}
.formatted-lesson{white-space:normal!important;overflow-wrap:anywhere}
.formatted-lesson p{margin:0 0 16px}
.formatted-lesson h2,.material-notes h2{font-size:24px;letter-spacing:-.5px;margin:28px 0 14px;line-height:1.4}
.formatted-lesson ul,.material-notes ul{padding-left:25px;margin:15px 0 25px}
.formatted-lesson a,.material-notes a{color:var(--brand-blue);text-decoration:underline;text-underline-offset:3px}
.format-toolbar{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}
.format-toolbar button{padding:7px 12px;border:1px solid var(--line);border-radius:4px;background:#eef4f8;color:var(--ink);font-size:12px}
.format-toolbar button:hover{background:#e4f0f8}
.materials-admin td{max-width:420px;overflow-wrap:anywhere}
.lesson-material-link{margin:20px 0;padding-top:20px;border-top:1px solid var(--line)}
.material-form-actions .button:disabled{opacity:.65;cursor:wait}
@media(max-width:600px){.material-card{padding:18px}.material-heading h3{font-size:17px}.material-links{gap:12px}.material-form-actions{align-items:stretch;flex-direction:column}.materials-admin .panel{padding:20px}}
