:root{--page-bg:#f7f8fc;--surface:#fff;--surface-alt:#f1f4fb;--surface-dark:#0f172a;--text-primary:#0f172a;--text-muted:#667085;--text-soft:rgba(4,22,39,.8);--text-faint:rgba(4,22,39,.7);--text-placeholder:rgba(15,23,42,.4);--accent:#2563eb;--accent-strong:#1d4ed8;--selection-bg:rgba(37,99,235,.18);--selection-color:#0f172a;--video:#f97316;--pdf:#ef4444;--doc:#0ea5e9;--code:#10b981;--sheet:#22c55e;--slide:#fbbf24;--html:#ec4899;--database:#a855f7;--other:#94a3b8;--tint-02:rgba(15,23,42,.02);--tint-03:rgba(15,23,42,.03);--tint-05:rgba(15,23,42,.05);--tint-06:rgba(15,23,42,.06);--tint-08:rgba(15,23,42,.08);--tint-12:rgba(15,23,42,.12);--tint-15:rgba(15,23,42,.15);--tint-20:rgba(15,23,42,.2);--tint-25:rgba(15,23,42,.25);--tint-30:rgba(15,23,42,.3);--tint-45:rgba(15,23,42,.45);--border:var(--tint-08);--shadow-soft:0 12px 30px rgba(15,23,42,.08);--overlay-backdrop:rgba(2,10,30,.9);--playlist-surface:rgba(15,23,42,.95);--playlist-text:#f8fafc;--text-panel-bg:#f8fafc;--text-panel-border:rgba(15,23,42,.12);--text-panel-toolbar:rgba(15,23,42,.05);--text-panel-copy-border:rgba(15,23,42,.25);--code-overlay-backdrop:rgba(5,5,35,.35);--code-panel-bg:var(--surface);--code-panel-text:var(--text-primary);--code-panel-muted:var(--text-muted);--code-panel-border:var(--border);--code-panel-shadow:0 25px 60px rgba(15,23,42,.12);--code-action-bg:rgba(37,99,235,.12);--code-action-color:var(--accent-strong);--code-close-bg:var(--tint-06);--code-close-color:var(--text-primary);--code-content-bg:var(--surface-alt);--code-content-border:var(--border);font-size:16px}*{box-sizing:border-box}body{margin:0;font-family:Space Grotesk,Segoe UI,sans-serif;background:var(--page-bg);color:var(--text-primary);min-height:100vh;transition:background .3s ease,color .3s ease}body,body.theme-light{color-scheme:light}body.theme-dark{color-scheme:dark;--page-bg:#030718;--surface:#0f172a;--surface-alt:#15223b;--surface-dark:#020617;--text-primary:#edf2ff;--text-muted:#94a3b8;--text-soft:rgba(226,232,240,.85);--text-faint:rgba(226,232,240,.65);--text-placeholder:rgba(148,163,184,.75);--accent:#2563eb;--accent-strong:#93c5fd;--selection-bg:rgba(96,165,250,.35);--selection-color:#e2e8f0;--border:rgba(148,163,184,.25);--shadow-soft:0 12px 30px rgba(2,6,23,.45);--tint-02:rgba(148,163,184,.08);--tint-03:rgba(148,163,184,.12);--tint-05:rgba(148,163,184,.16);--tint-06:rgba(148,163,184,.2);--tint-08:rgba(148,163,184,.25);--tint-12:rgba(148,163,184,.35);--tint-15:rgba(148,163,184,.45);--tint-20:rgba(148,163,184,.55);--tint-25:rgba(148,163,184,.6);--tint-30:rgba(148,163,184,.65);--tint-45:rgba(148,163,184,.75);--overlay-backdrop:rgba(1,3,12,.92);--playlist-surface:rgba(10,15,30,.95);--playlist-text:#f1f5f9;--text-panel-bg:#0b1222;--text-panel-border:rgba(148,163,184,.35);--text-panel-toolbar:hsla(0,0%,100%,.04);--text-panel-copy-border:rgba(148,163,184,.5);--code-overlay-backdrop:rgba(1,3,12,.85);--code-panel-bg:#0f172a;--code-panel-text:#f1f5f9;--code-panel-muted:rgba(241,245,249,.7);--code-panel-border:rgba(15,23,42,.55);--code-panel-shadow:0 30px 80px rgba(5,5,35,.65);--code-action-bg:hsla(0,0%,100%,.15);--code-action-color:#fff;--code-close-bg:rgba(248,250,252,.15);--code-close-color:#fff;--code-content-bg:#020617;--code-content-border:rgba(248,250,252,.1)}body.theme-dark .chip.active{color:#e0f2fe;border-color:rgba(147,197,253,.8);background:rgba(59,130,246,.15);box-shadow:0 5px 15px rgba(59,130,246,.25)}::selection{background:var(--selection-bg);color:var(--selection-color)}.page-shell{width:min(94vw,1400px);margin:0 auto;padding:2.5rem clamp(1rem,4vw,3rem) 3rem}.library-header{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;padding:1.75rem;box-shadow:var(--shadow-soft);position:relative}.header-toolbar{position:absolute;top:1.25rem;right:1.25rem}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text-primary);font-weight:600;font-size:.95rem;transition:background .2s ease,border-color .2s ease,color .2s ease;box-shadow:0 5px 14px var(--tint-08)}.theme-toggle:focus-visible,.theme-toggle:hover{background:var(--surface);border-color:var(--accent);color:var(--accent-strong)}.theme-toggle-icon{font-size:1.2rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (max-width:720px){.header-toolbar{top:1rem;right:1rem}.theme-toggle{width:2.35rem;height:2.35rem}}.header-copy h1{margin:.15rem 0 .75rem;font-size:clamp(2rem,4vw,2.8rem)}.header-copy .lede{max-width:60ch}.header-controls{gap:1rem;background:var(--surface-alt);border-radius:1rem;border:1px solid var(--border);align-items:stretch}.header-controls,.local-picker{display:flex;flex-direction:column;padding:1rem}.local-picker{gap:.75rem;border:1px dashed rgba(37,99,235,.35);border-radius:1rem;background:rgba(37,99,235,.06)}@media (min-width:720px){.local-picker{flex-direction:row;align-items:center;justify-content:space-between}}.local-picker__copy{flex:1 1;min-width:0}.local-picker__title{margin:0;font-size:1.05rem;font-weight:600;color:var(--text-primary)}.local-picker__hint{margin:.35rem 0 0}.local-picker__actions{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.local-picker__button{white-space:nowrap}.local-picker__status{margin:0;font-size:.85rem;color:var(--text-muted);max-width:32ch}.form-actions{display:flex;flex-wrap:wrap;gap:.75rem}.stats-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:.75rem;gap:.75rem}.header-stats{margin-top:1.5rem}.header-hint{margin-top:1rem;max-width:60ch}.stat-tile{background:var(--surface-alt);border-radius:.9rem;border:1px solid var(--border);padding:.75rem .9rem}.stat-tile .label{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.stat-tile .value{margin:.25rem 0 0;font-size:1.55rem;font-weight:600}.eyebrow{text-transform:uppercase;letter-spacing:.3em;font-size:.75rem;color:var(--text-faint);margin:0 0 .75rem}.lede{font-size:1.05rem;color:var(--text-soft);margin-bottom:1.5rem}.course-direct-controls{margin-top:.8rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .85rem;border:1px dashed rgba(37,99,235,.4);border-radius:.85rem;background:rgba(37,99,235,.05)}.course-direct-count{font-size:.9rem;color:var(--text-muted)}.course-direct-play{border-radius:999px;background:rgba(37,99,235,.15);color:var(--accent-strong);padding:.4rem 1.2rem;font-weight:600;border:none;box-shadow:0 8px 18px rgba(37,99,235,.18)}.course-direct-play:focus-visible,.course-direct-play:hover{background:rgba(37,99,235,.25)}.path-form{display:flex;flex-direction:column;gap:.75rem}.saved-paths{background:var(--surface-alt);border-radius:.9rem;padding:.75rem .9rem;border:1px solid var(--border)}.saved-paths p{margin:0 0 .35rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.saved-paths__list{display:flex;flex-wrap:wrap;gap:.45rem}.saved-path-button{border:none;border-radius:999px;padding:.3rem .85rem;background:rgba(37,99,235,.12);color:var(--accent-strong);font-size:.85rem;cursor:pointer;transition:background .2s ease}.saved-path-button:focus-visible,.saved-path-button:hover{background:rgba(37,99,235,.22);outline:none}.status-stack{flex-direction:column;gap:.5rem}.resume-card,.status-stack{display:flex;flex:1 1;min-height:0}.resume-card{gap:.6rem;align-items:center;background:var(--surface-alt);border:1px solid var(--border);padding:.75rem 1rem;border-radius:.85rem}.resume-label{margin:0;color:var(--text-soft);font-size:.95rem}.last-opened-summary{margin-top:.2rem;background:var(--surface);border:1px solid var(--border);border-radius:.85rem;padding:.75rem 1rem;box-shadow:0 10px 22px var(--tint-08)}.last-opened-summary .label{margin:0;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.last-opened-summary .value{margin:.2rem 0 .05rem;font-weight:700;color:var(--text-primary)}.last-opened-summary .meta{margin:0;font-size:.9rem;color:var(--text-soft)}.path-input{flex:1 1 100%;min-width:240px;border-radius:1.1rem;border:1px solid var(--tint-12);padding:1rem 1.1rem;font-size:1rem;font-family:inherit;background:var(--surface);color:var(--text-primary);width:100%;resize:vertical;min-height:120px;line-height:1.5;box-shadow:inset 0 2px 10px var(--tint-05)}.path-input::placeholder{color:var(--text-placeholder)}.primary{background:var(--accent);color:#fff;border-radius:.9rem;padding:.85rem 1.6rem;font-weight:600;border:none;box-shadow:0 10px 20px rgba(37,99,235,.2)}.secondary{background:rgba(37,99,235,.08);color:var(--accent-strong);border-radius:.9rem;padding:.8rem 1.5rem;font-weight:600;border:1px solid var(--accent);box-shadow:0 8px 18px rgba(37,99,235,.16)}.secondary:focus-visible,.secondary:hover{background:var(--accent);color:#fff}body.theme-dark .secondary{background:hsla(0,0%,100%,.08);color:#e2e8f0;border:1px solid hsla(0,0%,100%,.25);box-shadow:0 10px 22px rgba(0,0,0,.35)}body.theme-dark .secondary:focus-visible,body.theme-dark .secondary:hover{background:var(--accent);border-color:var(--accent);color:#fff}button{font-family:inherit;border:none;cursor:pointer}.path-input:focus-visible,.site-nav a:focus-visible,button:focus-visible{outline:3px solid rgba(14,165,233,.4);outline-offset:2px}.ghost{background:transparent;color:var(--text-primary);padding:.8rem 1.4rem;border-radius:.9rem;border:1px solid var(--tint-20)}button:disabled{opacity:.6;cursor:not-allowed}.hint{font-size:.95rem;color:var(--text-soft)}.status-banner{margin-top:.4rem;font-size:.95rem;color:var(--text-primary);background:var(--surface);border:1px solid var(--tint-08);border-radius:1rem;padding:.75rem 1rem;box-shadow:0 10px 25px var(--tint-08)}body.theme-dark .status-banner{color:#e2e8f0;background:hsla(0,0%,100%,.06);border-color:hsla(0,0%,100%,.16);box-shadow:0 12px 30px rgba(0,0,0,.5)}.status-banner[data-variant=error]{color:#b91c1c;border-color:rgba(239,68,68,.35)}.status-banner[data-variant=success]{color:#166534;border-color:rgba(34,197,94,.35)}.status-banner[data-variant=warning]{color:#92400e;border-color:rgba(251,191,36,.5)}main{margin-top:2rem}.filters{flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:2.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.filters,.search{display:flex;align-items:center}.search{flex:1 1;min-width:240px;gap:.5rem;background:var(--surface);border:1px solid var(--border);border-radius:.85rem;padding:.35rem .9rem}.search input{border:none;outline:none;flex:1 1;font-family:inherit;font-size:.95rem;background:transparent}.filter-chips{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.chip{border-radius:999px;padding:.45rem .95rem;border:1px solid transparent;background:var(--tint-06);font-weight:500;color:var(--text-primary);transition:all .2s ease}.chip.active{background:var(--surface);border-color:var(--accent);color:var(--accent-strong);box-shadow:0 5px 15px var(--tint-12)}.course-grid{margin-top:2rem;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem}.course-card{background:var(--surface);border-radius:1.25rem;border:1px solid var(--border);padding:1rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 8px 18px var(--tint-08);width:100%;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.course-card.collapsed{gap:.75rem}.course-card.selected{border-color:rgba(37,99,235,.45);background:rgba(37,99,235,.05);box-shadow:0 15px 35px rgba(37,99,235,.18)}.course-body{display:flex;flex-direction:column;gap:.85rem}.course-card.collapsed .course-body{display:none}.course-toggle{display:inline-flex;align-items:center;gap:.5rem;border:none;background:none;font:inherit;color:inherit;cursor:pointer;padding:0}.course-toggle:before{content:"▸";font-size:.9rem;transition:transform .2s ease}.course-card:not(.collapsed) .course-toggle:before{transform:rotate(90deg)}.module-block{position:relative;padding-top:1.1rem;margin-left:calc(var(--module-depth, 0) * .85rem);max-width:100%;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.module-block[data-depth="0"]{border-top:1px solid var(--border)}.module-block[data-depth="0"]:first-of-type{border-top:none;padding-top:0}.module-block:not([data-depth="0"]){border-top:none;border-left:2px solid var(--tint-12);padding:.75rem 0 0 .85rem;margin-top:.75rem;border-radius:.75rem;background:var(--tint-02);overflow:hidden}.module-block.selected{background:rgba(37,99,235,.08);border-color:rgba(37,99,235,.45);box-shadow:inset 0 0 0 1px rgba(37,99,235,.2)}.module-block.selected .module-toggle,.module-block.selected h3{color:var(--accent-strong)}.module-block.collapsed .module-children,.module-block.collapsed .resource-list{display:none}.module-children{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.module-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.module-header-left{display:flex;align-items:center;gap:.4rem}.module-header h3{margin:0;font-size:1rem}.module-header span{font-size:.85rem;color:var(--text-muted)}.module-toggle{display:inline-flex;align-items:center;gap:.4rem;border:none;background:none;color:inherit;font:inherit;cursor:pointer;padding:.25rem 0}.module-toggle:before{content:"▸";font-size:.85rem;transition:transform .2s ease}.module-block:not(.collapsed) .module-toggle:before{transform:rotate(90deg)}.module-controls{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.module-count{color:var(--text-muted);background:var(--tint-05);padding:.15rem .55rem}.module-count,.module-play{font-size:.85rem;border-radius:999px}.module-play{border:1px solid transparent;padding:.35rem .85rem;background:var(--accent);color:#fff;box-shadow:0 5px 15px rgba(124,93,255,.25)}.module-play:hover{background:var(--accent-strong)}.course-card header{display:flex;flex-direction:column;gap:.15rem}.course-card h2{margin:0;font-size:1.2rem}.course-card .meta{font-size:.85rem;color:var(--text-muted)}.tag-row{display:flex;flex-wrap:wrap;gap:.4rem;color:var(--text-faint)}.tag{font-size:.75rem;padding:.2rem .65rem;border-radius:999px;color:var(--text-soft);text-transform:uppercase;letter-spacing:.08em}.resource-list{display:flex;flex-direction:column;gap:.65rem}.resource-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.55rem .8rem;border-radius:.9rem;background:var(--tint-03);border:1px solid transparent;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.resource-row.selected{border-color:rgba(37,99,235,.5);background:rgba(37,99,235,.08);box-shadow:0 10px 25px rgba(37,99,235,.15)}.resource-label{display:flex;align-items:center;gap:.6rem}.badge{width:34px;height:34px;border-radius:.8rem;display:grid;place-items:center;color:#fff;font-size:.9rem;font-weight:600}.badge.video{background:var(--video)}.badge.pdf{background:var(--pdf)}.badge.document{background:var(--doc)}.badge.code{background:var(--code)}.badge.spreadsheet{background:var(--sheet)}.badge.presentation{background:var(--slide);color:#222}.badge.html{background:var(--html)}.badge.database{background:var(--database)}.badge.other{background:var(--other)}.resource-meta{display:flex;flex-direction:column}.resource-meta strong{font-size:.95rem}.resource-meta span{font-size:.8rem;color:var(--text-muted)}.resource-actions{display:flex;gap:.4rem}.resource-actions a{text-decoration:none;color:#fff;background:var(--accent);transition:background .2s ease}.resource-actions a,.resource-actions button{border-radius:999px;padding:.35rem .9rem;font-size:.85rem}.resource-actions button{border:none;cursor:pointer;background:var(--tint-12);color:var(--text-primary)}.resource-actions button.primary{background:var(--accent);color:#fff}.resource-actions a.secondary{background:var(--tint-12);color:var(--text-primary)}.empty-state{grid-column:1/-1;text-align:center;padding:3rem 1rem;border:2px dashed var(--tint-15);border-radius:1.5rem;background:var(--surface)}.page-footer{margin-top:2.5rem;padding-bottom:2rem;color:var(--text-muted);text-align:center;font-size:.9rem}body.code-open,body.file-open,body.player-open{overflow:hidden}.player-overlay{position:fixed;inset:0;background:rgba(5,5,35,.75);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:50}.player-overlay[hidden]{display:none}.player-panel{width:min(96vw,1400px);background:#101828;color:#f8fafc;border-radius:1.5rem;padding:1.5rem;box-shadow:0 30px 80px rgba(5,5,35,.65);display:flex;flex-direction:column;gap:1rem;overflow:hidden;--playlist-width:320px}.player-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.player-header-actions{display:flex;gap:.5rem;align-items:center}.player-toggle{border:1px solid rgba(248,250,252,.4);background:transparent;color:#f8fafc;border-radius:999px;padding:.4rem .9rem;font-weight:600}.player-breadcrumb{margin:0;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(248,250,252,.7)}.player-title{margin:.35rem 0 0;font-size:1.4rem}.player-close{background:hsla(0,0%,100%,.15);color:#fff;border:none;border-radius:999px;width:38px;height:38px;font-size:1.4rem;line-height:1;cursor:pointer}.player-body{display:flex;gap:1rem;align-items:stretch;min-height:0}.player-video-column{flex:1 1 auto;display:flex}.player-video-column video{width:100%;height:72vh;border-radius:1rem;background:#000}.player-resizer{width:6px;border-radius:999px;background:rgba(248,250,252,.2);cursor:col-resize;align-self:stretch}.player-playlist{width:var(--playlist-width);min-width:220px;max-width:480px;max-height:72vh;overflow:auto;display:flex;flex-direction:column;gap:.4rem;background:var(--tint-45);border-radius:1rem;padding:.75rem;border:1px solid rgba(248,250,252,.12)}.player-playlist-empty{margin:0;font-size:.9rem;color:rgba(248,250,252,.7)}.player-track{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.45rem .75rem;border-radius:.75rem;background:rgba(248,250,252,.08);border:1px solid transparent;cursor:pointer;font-size:.9rem;color:#f8fafc}.player-track.active{border-color:rgba(248,250,252,.4);background:rgba(248,250,252,.15)}.player-track small{color:rgba(248,250,252,.65)}.player-panel--playlist-hidden .player-playlist,.player-panel--playlist-hidden .player-resizer{display:none}.player-panel--playlist-hidden .player-video-column{flex:1 1 100%}.code-overlay{position:fixed;inset:0;background:var(--code-overlay-backdrop);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:40}.code-overlay[hidden]{display:none}.code-panel{width:min(900px,100%);max-height:90vh;background:var(--code-panel-bg);color:var(--code-panel-text);border-radius:1.5rem;padding:1.5rem;box-shadow:var(--code-panel-shadow);border:1px solid var(--code-panel-border);display:flex;flex-direction:column;gap:1rem}.code-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.code-path{margin:0;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--code-panel-muted)}.code-title{margin:.35rem 0 0;font-size:1.35rem}.code-header-actions{display:flex;align-items:center;gap:.5rem}.code-close,.code-copy{border:none;border-radius:999px;padding:.45rem .9rem;cursor:pointer;font-weight:600}.code-copy{background:var(--code-action-bg);color:var(--code-action-color)}.code-close{width:38px;height:38px;font-size:1.4rem;line-height:1;background:var(--code-close-bg);color:var(--code-close-color)}.code-status{margin:0;font-size:.9rem;color:var(--code-panel-muted)}.code-status[data-variant=error]{color:#fecaca}.code-status[data-variant=success]{color:#bbf7d0}.code-content{flex:1 1;margin:0;border-radius:1rem;background:var(--code-content-bg);padding:1.25rem;overflow:auto;font-family:Fira Code,Space Grotesk,monospace;font-size:.92rem;line-height:1.5;border:1px solid var(--code-content-border)}.file-overlay{position:fixed;inset:0;background:var(--overlay-backdrop);display:flex;align-items:stretch;justify-content:stretch;z-index:45}.file-overlay[hidden]{display:none}.file-overlay-actions{position:absolute;top:clamp(.75rem,2vw,1.5rem);right:clamp(.75rem,2vw,1.5rem);display:flex;flex-direction:column;gap:.45rem;align-items:flex-end;z-index:2}.file-playlist-toggle{border:1px solid hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.12);color:#fff;border-radius:12px;width:40px;height:40px;display:grid;place-items:center;font-size:1.1rem;font-weight:700;padding:0;transition:border-color .2s ease,color .2s ease,background .2s ease}.file-playlist-toggle:focus-visible,.file-playlist-toggle:hover{border-color:var(--accent);background:var(--accent);color:#fff}body.theme-dark .file-playlist-toggle{border-color:hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.12)}.file-overlay-actions .file-close{position:static;opacity:1}.file-overlay-body{display:flex;flex:1 1;width:100%;height:100%;--file-playlist-width:320px}.file-overlay-media{flex:1 1 auto;position:relative;background:#000;min-width:0}.file-overlay--playlist-hidden .file-overlay-playlist,.file-overlay--playlist-hidden .file-overlay-resizer{display:none}.file-overlay--playlist-hidden .file-overlay-media{flex:1 1 100%}.file-overlay.is-html .file-overlay-media,.file-overlay.is-text .file-overlay-media{background:var(--text-panel-bg)}.file-overlay-playlist{width:var(--file-playlist-width);min-width:180px;background:var(--playlist-surface);color:var(--playlist-text);border-left:1px solid rgba(248,250,252,.1);padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.4rem}.file-overlay-resizer{width:6px;cursor:col-resize;background:rgba(248,250,252,.15);border-left:1px solid var(--tint-30);border-right:1px solid var(--tint-30);-webkit-user-select:none;-moz-user-select:none;user-select:none}.file-playlist-empty{margin:0;font-size:.9rem;color:rgba(248,250,252,.7)}.file-track{width:100%;border:1px solid transparent;border-radius:.75rem;padding:.5rem .75rem;background:rgba(248,250,252,.08);color:#f8fafc;display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;font-size:.9rem;cursor:pointer;text-align:left}.file-track small{color:rgba(248,250,252,.65);font-size:.8rem}.file-track.active{border-color:rgba(248,250,252,.4);background:rgba(248,250,252,.15)}.file-frame,.file-video{position:absolute;inset:0;width:100%;height:100%;border:none;display:none;object-fit:contain}.file-frame,.file-overlay.is-html .file-frame,.file-text-panel,.file-video{background:var(--text-panel-bg)}.file-text-panel{position:absolute;inset:0;display:none;flex-direction:column;color:var(--text-primary);border:1px solid var(--text-panel-border)}.file-text-toolbar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--text-panel-border);background:var(--text-panel-toolbar)}.file-text-status{font-size:.85rem;color:var(--text-soft)}.file-text-copy{border:1px solid var(--text-panel-copy-border);background:var(--surface);color:var(--text-primary);border-radius:999px;padding:.35rem .9rem;font-size:.85rem;cursor:pointer}.file-text-content{flex:1 1;margin:0;padding:1rem;overflow:auto;font-family:Fira Code,Space Grotesk,monospace;font-size:.95rem;line-height:1.5;white-space:pre-wrap;background:var(--text-panel-bg);color:var(--text-primary)}.file-text-content code{font-family:inherit}.file-overlay.is-video .file-video{display:block}.file-overlay.is-video .file-frame{display:none}.file-overlay:not(.is-video) .file-frame{display:block}.file-overlay:not(.is-video) .file-video{display:none}.file-overlay.is-text .file-text-panel{display:flex}.file-overlay.is-text .file-frame,.file-overlay.is-text .file-video{display:none}.file-close{border:none;border-radius:999px;width:40px;height:40px;font-size:1.5rem;line-height:1;cursor:pointer;background:hsla(0,0%,100%,.12);color:#fff;opacity:.85;transition:background .2s ease,color .2s ease,opacity .2s ease}.file-close:focus-visible,.file-overlay:hover .file-close{opacity:1}.file-close:hover{background:var(--accent);color:#fff}@media (min-width:768px){.filters{gap:1.25rem}.search{max-width:420px}}@media (min-width:1024px){.library-header{grid-template-columns:1.05fr .95fr;align-items:start}.header-controls{min-height:100%}.stats-bar{grid-column:1/-1}.filters{margin-top:2.25rem}}@media (max-width:640px){.filters{flex-direction:column;align-items:stretch}.library-header{padding:1.25rem}.form-actions{flex-direction:column}.ghost,.primary{width:100%;text-align:center}.resource-row{flex-direction:column;align-items:flex-start}.resource-actions{width:100%;justify-content:space-between}}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Grotesk_Fallback_49a339;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_49a339{font-family:__Space_Grotesk_49a339,__Space_Grotesk_Fallback_49a339;font-style:normal}