:root{--bg-primary:#0f172a;--bg-card:#1e293b;--bg-card-hover:#334155;--text-main:#f8fafc;--text-muted:#94a3b8;--accent:#6366f1;--accent-hover:#4f46e5;--border:#334155;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}html,body{background-color:var(--bg-primary);width:100%;height:100%;color:var(--text-main);touch-action:manipulation;-webkit-text-size-adjust:100%;-webkit-user-select:none;user-select:none;margin:0;padding:0;overflow-x:hidden}*{box-sizing:border-box}.app-container{flex-direction:column;min-height:100vh;display:flex}.app-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);z-index:10;background-color:#0f172ad9;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.75rem;display:flex}.brand-icon{width:2rem;height:2rem;color:var(--accent)}.brand-title{background:linear-gradient(135deg,#a5b4fc 0%,#6366f1 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:1.35rem;font-weight:700}.main-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.section-title{color:var(--text-muted);align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:1.1rem;font-weight:500;display:flex}.video-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}@media (width>=768px){.video-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}.video-card{background-color:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:.75rem;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.video-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 12px 24px -8px #6366f140}.thumbnail-wrapper{aspect-ratio:16/9;background-color:#000;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.thumbnail-video{object-fit:cover;opacity:.85;width:100%;height:100%;transition:opacity .2s,transform .3s}.video-card:hover .thumbnail-video{opacity:1;transform:scale(1.03)}.play-overlay{background:#0f172a66;justify-content:center;align-items:center;transition:background .2s;display:flex;position:absolute;inset:0}.video-card:hover .play-overlay{background:#0f172a33}.play-button-icon{background:var(--accent);color:#fff;border-radius:50%;width:3.5rem;height:3.5rem;padding:.85rem;transition:transform .2s;box-shadow:0 4px 14px #6366f180}.video-card:hover .play-button-icon{transform:scale(1.1)}.video-info{flex-direction:column;gap:.5rem;padding:1rem;display:flex}.video-title{color:var(--text-main);margin:0;font-size:1rem;font-weight:600;line-height:1.4}.video-description{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.4}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;background-color:#000000d9;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-card);border:1px solid var(--border);border-radius:1rem;flex-direction:column;width:100%;max-width:960px;animation:.2s ease-out scaleUp;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #000000b3}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.modal-title{margin:0;font-size:1.1rem;font-weight:600}.close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:.5rem;justify-content:center;align-items:center;padding:.5rem;transition:color .2s,background .2s;display:flex}.close-btn:hover{color:var(--text-main);background:var(--bg-card-hover)}.player-wrapper{aspect-ratio:16/9;background-color:#000;width:100%;position:relative}.video-player{border:none;width:100%;height:100%}.modal-footer{padding:1rem 1.25rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
