.library-page{min-height:100vh;padding-bottom:80px;overflow-x:clip}.library-header{text-align:center;max-width:1200px;margin:0 auto;padding:120px 20px 40px}.library-header .kick{color:var(--accent);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;font-size:13px;display:block}.library-header h1{letter-spacing:-.04em;margin-bottom:24px;font-size:clamp(40px,6vw,64px);line-height:1}.library-header .lead{color:var(--dim);max-width:50ch;margin:0 auto;font-size:clamp(16px,2vw,20px)}.library-filters{flex-direction:column;gap:16px;max-width:1200px;margin:0 auto 40px;padding:0 20px;display:flex}.filter-tabs{border-bottom:1px solid var(--line);white-space:nowrap;scrollbar-width:none;gap:24px;padding-bottom:12px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000,#000 calc(100% - 20px),#0000);mask-image:linear-gradient(90deg,#000,#000 calc(100% - 20px),#0000)}.filter-tabs::-webkit-scrollbar{display:none}.filter-tabs button{color:var(--dim);cursor:pointer;background:0 0;border:none;padding:0;font-size:15px;font-weight:500;transition:color .2s;position:relative}.filter-tabs button:hover,.filter-tabs button.active{color:var(--text)}.filter-tabs button.active:after{content:"";background:var(--text);height:2px;position:absolute;bottom:-13px;left:0;right:0}.filter-chips{white-space:nowrap;scrollbar-width:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:8px;padding:4px 0;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000,#000 calc(100% - 20px),#0000);mask-image:linear-gradient(90deg,#000,#000 calc(100% - 20px),#0000)}.filter-chips::-webkit-scrollbar{display:none}.filter-chip{background:var(--bg-2);border:1px solid var(--line);color:var(--dim);cursor:pointer;scroll-snap-align:start;border-radius:999px;padding:6px 14px;font-size:13px;transition:all .2s}.filter-chip:hover{border-color:var(--line-2);color:var(--text)}.filter-chip.active{background:var(--text);border-color:var(--text);color:var(--bg)}.library-grid{grid-template-columns:repeat(4,1fr);gap:20px;max-width:1200px;margin:0 auto;padding:0 20px;display:grid}@media (max-width:1024px){.library-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.library-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.library-grid{grid-template-columns:1fr}}.library-tile{aspect-ratio:16/9;cursor:pointer;border:1px solid var(--line);transition:border-color .4s var(--ease);background:#000;border-radius:12px;position:relative;overflow:hidden}.library-tile:hover{border-color:var(--line-2)}.library-tile .poster{object-fit:cover;width:100%;height:100%;transition:opacity .4s var(--ease)}.library-tile video{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .4s var(--ease);position:absolute;inset:0}.library-tile.playing .poster{opacity:0}.library-tile.playing video{opacity:1}.library-tile .play-glyph{color:#fff;opacity:.8;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.library-tile:hover .play-glyph{opacity:0}.library-tile .play-glyph svg{filter:drop-shadow(0 2px 8px #00000080);width:32px;height:32px}.library-tile .hud-b{z-index:10;pointer-events:none;position:absolute;bottom:12px;left:12px;right:12px}.library-tile .hud-b .n{color:#fff;text-shadow:0 1px 4px #000c;font-size:14px;font-weight:500}.library-tile .hud-b .m{color:#ffffffb3;text-shadow:0 1px 4px #000c;align-items:center;gap:6px;margin-top:2px;font-size:12px;display:flex}.library-tile .hud-b .m span{display:inline-block}.library-tile .vig{pointer-events:none;background:linear-gradient(#0000 60%,#000c 100%);position:absolute;inset:0}.lightbox-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;background:#000000f2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-content{flex-direction:column;gap:16px;width:100%;max-width:1200px;padding:20px;display:flex;position:relative}.lightbox-close{color:#fff;cursor:pointer;z-index:10;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .2s;display:flex;position:absolute;top:20px;right:20px}.lightbox-close:hover{background:#fff3}.player-wrapper{aspect-ratio:16/9;background:#000;border-radius:16px;width:100%;position:relative;overflow:hidden;box-shadow:0 20px 40px #00000080}.player-wrapper video{object-fit:contain;width:100%;height:100%}.custom-controls{opacity:0;background:linear-gradient(#0000,#000c);flex-direction:column;gap:12px;padding:40px 20px 20px;transition:opacity .3s;display:flex;position:absolute;bottom:0;left:0;right:0}.player-wrapper:hover .custom-controls,.custom-controls.active{opacity:1}.scrub-bar{cursor:pointer;background:#fff3;border-radius:2px;width:100%;height:4px;position:relative}.scrub-progress{background:var(--accent);border-radius:2px;height:100%;position:relative}.scrub-progress:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .1s;position:absolute;top:-4px;right:-6px;transform:scale(0)}.scrub-bar:hover .scrub-progress:after{transform:scale(1)}.control-row{justify-content:space-between;align-items:center;display:flex}.control-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.control-btn:hover{background:#ffffff1a}.time-display{color:#fff;font-size:13px;font-family:var(--font-mono);margin-left:12px}.lightbox-meta{justify-content:space-between;align-items:flex-end;display:flex}.lightbox-meta h2{margin-bottom:8px;font-size:24px}.lightbox-meta .meta-tags{color:var(--dim);gap:12px;font-size:14px;display:flex}.lightbox-cta{border:1px solid var(--accent-line);background:#84d6da1a;border-radius:12px;justify-content:space-between;align-items:center;margin-top:16px;padding:16px 24px;display:flex}.lightbox-cta span{color:var(--text);font-weight:500}.bottom-cta{text-align:center;border-top:1px solid var(--line);margin-top:80px;padding:40px 20px}.bottom-cta h3{margin-bottom:24px;font-size:24px}@media (max-width:768px){.lightbox-meta{flex-direction:column;align-items:flex-start;gap:8px}.lightbox-meta .meta-tags{flex-wrap:wrap}.lightbox-cta{flex-direction:column;align-items:flex-start;gap:12px}.lightbox-cta span{justify-content:space-between;width:100%}.lightbox-close{background:#00000080;top:10px;right:10px}.lightbox-content{padding:10px}}
