/* Lesson workspace and personal material lists. */
.school-module-grid{margin-bottom:24px;align-items:stretch}
.folder-tile{position:relative;min-width:0;display:flex}
.school-module-grid .folder-card{width:100%;min-height:0;min-width:0;overflow:hidden;padding:0;border:1px solid #2d2d2d;border-radius:16px;color:#fff;text-decoration:none;background:#0d0d0d;transition:border-color .15s}
.folder-card .folder-cover{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:16/9;overflow:hidden;background:#050505;border-bottom:1px solid #242424}
.folder-cover>img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain}
.folder-cover-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#ff9b58;background:radial-gradient(ellipse at 50% 45%,#302115 0,#17110d 55%,#0b0908 100%)}
.folder-cover-placeholder>.icon{width:54px;height:54px;flex:0 0 54px;stroke-width:1.25}
.folder-cover-placeholder>.module-number{position:absolute;left:18px;bottom:14px;color:#c7885c;font:500 16px/1 Oswald,Arial,sans-serif}
.folder-card-body{display:flex;flex-direction:column;flex:1;width:100%;min-width:0;padding:18px}
.folder-card-body>strong{font-size:16px;line-height:1.45;overflow-wrap:anywhere}
.folder-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px;color:#a0a0a0;font-size:11px;line-height:1.6}
.folder-card-meta>.icon{width:18px;height:18px;flex:0 0 18px;color:#ff954d}
.folder-tile>.folder-settings{position:absolute;top:10px;right:10px;z-index:1;width:44px;height:44px;min-width:44px;min-height:44px;flex-basis:44px;border:1px solid #555;border-radius:12px;background:#101010e8;color:#fff;box-shadow:0 3px 12px #0006;cursor:pointer}
.folder-tile>.folder-settings:hover{background:#38210f;border-color:#ff8c40}
.folder-tile>.folder-settings:focus-visible,.school-module-grid .folder-card:focus-visible{outline:3px solid #ff9b58;outline-offset:3px}
.folder-location{margin:0;color:#a3a3a3;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.folder-location>strong{color:#ddd}
.folder-cover-editor{display:grid;gap:12px;min-width:0;margin-top:1px}.folder-cover-label{font-size:12px;font-weight:700;color:#ddd}
.folder-cover-preview{width:min(100%,360px);aspect-ratio:16/9;overflow:hidden;display:grid;place-items:center;justify-self:center;border:1px solid #333;border-radius:13px;background:#050505}
.folder-cover-preview>img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain}.folder-cover-preview .folder-cover-placeholder{font-size:12px;color:#c39370}.folder-cover-preview .folder-cover-placeholder>.icon{width:46px;height:46px;flex-basis:46px}
.folder-cover-editor>.field{min-width:0;margin:0}.folder-cover-input{max-width:100%;min-height:48px;padding:8px;font-size:12px}.folder-cover-input::file-selector-button{min-height:32px;padding:6px 12px;margin-right:9px;border:1px solid #4b4b4b;border-radius:7px;background:#262626;color:#fff;cursor:pointer;font:inherit}
.folder-cover-help,.folder-cover-status{margin:0;font-size:11px;line-height:1.65;color:#999;overflow-wrap:anywhere}.folder-cover-status{min-height:19px;color:#b9b9b9}.folder-cover-remove{justify-self:start;min-height:44px;padding:10px 12px}.folder-cover-error[hidden]{display:none}.folder-cover-error{margin:0}
.breadcrumbs{max-width:100%;min-width:0;flex-wrap:wrap}.breadcrumbs>a{overflow-wrap:anywhere;min-width:0}
.folder-path{min-width:0;margin-bottom:23px}.folder-path>.folder-path-compact{margin-bottom:8px}.path-omission{color:#777}.folder-full-path{min-width:0;border:1px solid #303030;border-radius:10px;background:#101010}.folder-full-path>summary{min-height:44px;padding:12px 14px;font-size:11px;line-height:1.7;color:#bcbcbc;cursor:pointer;overflow-wrap:anywhere}.folder-full-path>summary:hover{color:#fff}.folder-full-path>summary:focus-visible{outline:2px solid #ff9b58;outline-offset:3px;border-radius:9px}.folder-full-path>.breadcrumbs{padding:0 14px 13px;margin:0}.folder-full-path>.breadcrumbs>a{line-height:1.7}
@media(max-width:700px){.folder-card-body{padding:16px}.folder-card-body>strong{font-size:16px}.folder-cover-preview{width:min(100%,300px)}.folder-tile>.folder-settings{top:9px;right:9px}.folder-cover-input{font-size:11px}}
@media(prefers-reduced-motion:reduce){.school-module-grid .folder-card{transition:none}}
.learning-shortcut{display:flex;align-items:center;gap:16px;padding:20px 22px;margin-bottom:22px;border:1px solid #613518;border-radius:16px;background:linear-gradient(115deg,#23160e,#101010);color:#fff;text-decoration:none}
.learning-shortcut>.icon{width:32px;height:32px;color:#ff8d3e;flex-shrink:0}.learning-shortcut>div{flex:1;min-width:0}.learning-shortcut strong{display:block;font-size:16px}.learning-shortcut p{margin:5px 0 0;font-size:12px;color:#aaa;line-height:1.65}
.material-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);border:1px solid #292929;border-radius:18px;overflow:hidden;background:#080808;margin-bottom:22px}
.material-categories{background:#101010;border-right:1px solid #292929;padding:8px;display:flex;flex-direction:column;gap:5px}
.material-category{display:flex;align-items:center;gap:12px;width:100%;padding:15px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:#fff;text-align:left;cursor:pointer}
.material-category:hover{background:#191919}.material-category.is-active{background:#281b12;border-color:#734321}.material-category>.category-glyph{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;background:#202020;border-radius:12px;color:#ff9a50}.material-category.is-active>.category-glyph{background:#4b2c17}.material-category .category-copy{flex:1;min-width:0}.material-category strong{display:block;font-size:14px}.material-category small{display:block;margin-top:5px;color:#999;font-size:11px;line-height:1.5}.material-category>.category-count{font-size:11px;color:#ccc}
.material-feed{padding:24px;min-width:0}.material-feed>.section-header{margin:0 0 17px}.material-feed h2{margin:0}.material-feed-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.material-feed-toolbar>.search-field{flex:1;min-width:160px;margin:0}.material-feed-toolbar select{width:auto;max-width:100%;min-height:44px;font-size:12px}.material-feed-list{border-top:1px solid #272727}.material-feed-row{display:flex;gap:13px;align-items:center;padding:17px 0;border-bottom:1px solid #242424;min-width:0}.material-feed-row>.material-row-icon{display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;background:#181818;border-radius:12px;color:#bbb}.material-feed-row.is-mastered>.material-row-icon{background:#15331d;color:#a3e2a5}.material-feed-row.is-unassigned{opacity:.7}.material-feed-row>a{flex:1;min-width:0;color:#fff;text-decoration:none}.material-feed-row>a>strong{display:block;font-size:14px;line-height:1.55;overflow-wrap:anywhere}.material-feed-row>a>span{display:block;color:#999;font-size:11px;line-height:1.6;margin-top:5px}.material-feed-row>.btn{font-size:11px;min-height:40px;padding:9px 12px;flex-shrink:0}.material-feed-row .material-status{font-size:11px;display:inline-flex;align-items:center;gap:5px}.material-status.is-mastered{color:#a3e2a5}.material-status.is-working{color:#ffad71}.material-status>.icon{width:14px;height:14px}.material-hint{font-size:12px;line-height:1.7;color:#aaa;margin:0 0 18px}.student-summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 22px;margin-bottom:22px}.student-summary>.avatar{width:58px;height:58px}.student-summary>div{flex:1;min-width:180px}.student-summary h2{margin:0 0 5px}.student-summary p{margin:0;color:#aaa;font-size:12px}.student-summary .progress-track{max-width:300px;margin-top:12px}.student-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.student-lower-grid>.card{min-width:0}.student-lower-grid .asset-row{padding-inline:0}.student-lower-grid .assignment-card{flex-wrap:wrap}
.lesson-variant-bar{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid #292929;background:#0d0d0d;border-radius:15px;margin-bottom:18px;min-width:0}.lesson-variant-bar>.variant-label{flex-shrink:0;font-size:11px;font-weight:700;color:#aaa}.lesson-variant-options{display:flex;gap:8px;overflow-x:auto;min-width:0;scrollbar-width:thin}.lesson-variant-options>button{display:inline-flex;align-items:center;gap:7px;flex-shrink:0;min-height:44px;padding:11px 15px;border:1px solid #333;border-radius:10px;background:#171717;color:#ccc;cursor:pointer;font-size:12px}.lesson-variant-options>button[aria-pressed="true"]{border-color:#ff6a00;background:#38200f;color:#fff}.lesson-variant-options .icon{width:16px;height:16px}
.study-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:20px;align-items:start}.study-video{position:sticky;top:90px;min-width:0}.study-video>.video-frame{aspect-ratio:16/9;border:1px solid #292929;border-radius:16px 16px 0 0;background:#050505;overflow:hidden}.study-video video{display:block;width:100%;height:100%;object-fit:contain}.study-video .video-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#101010;border:1px solid #292929;border-top:0;border-radius:0 0 16px 16px;padding:12px}.study-video .speed-control{display:flex;align-items:center;gap:10px}.study-video .speed-control button{width:44px;height:44px;padding:0}.study-video .speed-control output{font-size:13px;min-width:44px;text-align:center}.study-video .quality-note{font-size:10px;color:#999;line-height:1.5}.study-caption{margin:12px 2px 0;color:#999;font-size:12px;line-height:1.7}.study-notes{min-width:0;min-height:350px;padding:24px;background:#0d0d0d;border:1px solid #292929;border-radius:16px}.study-notes h2{font-size:25px;margin:7px 0 20px}.study-notes .song-sheet{font-family:Manrope,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;line-height:2.15;font-size:14px;color:#e4e4e4}.study-notes figure{margin:18px 0 0}.study-notes .lesson-image{display:block;width:100%;height:auto;border-radius:9px;background:#fff}.study-notes figcaption{color:#888;font-size:10px;line-height:1.6;margin-top:6px}.study-notes .inline-pdf-viewer{min-width:0;margin-top:18px;overflow:hidden}.study-notes .inline-pdf-viewer canvas{max-width:100%;height:auto}.study-notes .pdf-toolbar{gap:7px}.study-notes .pdf-toolbar .btn{font-size:10px;padding:8px;min-height:40px}.study-extras{margin-top:20px}.study-extras>.card{margin-bottom:18px}.study-extras .preserve-lines{line-height:1.9;font-size:13px}.study-notes-empty{padding:25px 0;color:#aaa;line-height:1.8;font-size:13px}.variant-editor{border:1px solid #303030;border-radius:13px;padding:16px;margin-bottom:13px;background:#111}.variant-editor>.section-header{margin-bottom:14px}.variant-editor .field{margin-bottom:12px}.variant-editor details>summary{cursor:pointer;color:#bbb;font-size:12px;margin-bottom:12px}.variant-editor .variant-row-title{font-size:13px}.variant-editor .btn-icon{width:40px;height:40px}.editor-section{margin:24px 0 0}.editor-section>h3{margin-bottom:8px}.editor-section>p{font-size:12px;line-height:1.7}.lesson-form-help{font-size:12px;line-height:1.75;color:#aaa;padding:13px 16px;background:#171717;border-radius:10px}.folder-card span{line-height:1.65}.lesson-count-note{font-size:11px;color:#999}
@media(max-width:1050px){.material-workspace{grid-template-columns:215px minmax(0,1fr)}.material-feed{padding:20px}.study-grid{grid-template-columns:minmax(0,1fr) minmax(270px,.9fr);gap:14px}.study-notes{padding:20px}}
@media(max-width:800px){.material-workspace{grid-template-columns:minmax(0,1fr)}.material-categories{flex-direction:row;overflow:auto;border-right:0;border-bottom:1px solid #292929;scrollbar-width:thin;padding:8px}.material-category{width:auto;min-width:150px;flex-shrink:0;padding:12px;gap:8px}.material-category .category-glyph{width:34px;height:34px}.material-category small{font-size:10px}.material-category strong{font-size:12px}.material-category>.category-count{display:none}.student-lower-grid{grid-template-columns:minmax(0,1fr)}.study-grid{grid-template-columns:minmax(0,1fr)}.study-video{position:sticky;top:68px;z-index:4;background:#000;padding-top:0}.study-video .video-frame{max-height:32dvh}.study-caption{display:none}.study-video .quality-note{display:none}.study-video .video-controls{padding:6px 10px;border-radius:0 0 12px 12px}.study-video .speed-control{gap:6px}.study-video .speed-control button{width:40px;height:40px;min-height:40px}.study-notes{padding:20px 16px;min-height:240px}.study-notes .song-sheet{font-size:13px;line-height:2}.lesson-variant-bar{display:block;padding:12px;margin-bottom:12px}.lesson-variant-bar>.variant-label{display:block;margin-bottom:10px}.lesson-variant-options>button{min-height:44px;font-size:11px;padding:10px 12px}.study-extras{margin-top:16px}.learning-shortcut{padding:16px}.learning-shortcut strong{font-size:14px}.learning-shortcut p{font-size:11px}.student-summary{padding:17px}.student-summary .btn{font-size:11px;min-height:44px}}
@media(max-width:480px){.material-feed{padding:18px 13px}.material-feed h2{font-size:23px}.material-feed-row{gap:9px;flex-wrap:wrap}.material-feed-row>a{min-width:calc(100% - 56px)}.material-feed-row>.material-status{margin-left:52px}.material-feed-row>.btn{margin-left:auto;min-height:44px}.material-feed-toolbar .search-field{min-width:100%}.material-feed-toolbar select{flex:1}.material-category{min-width:145px}.student-summary>div{min-width:150px}.student-summary .btn{flex:1}.lesson-form-help{padding:12px}.study-video{top:66px}}
.study-notes .song-sheet{font-family:ui-monospace,"Cascadia Code",Consolas,"Liberation Mono",monospace;tab-size:4}
.study-video>.video-frame{min-height:0}
@media(max-height:500px) and (max-width:1000px){.study-video{position:static}.study-video>.video-frame{max-height:68dvh;min-height:0}}
@media(prefers-reduced-motion:reduce){.lesson-variant-options{scroll-behavior:auto}}
