*{box-sizing:border-box;margin:0;padding:0}body{color:#fff;background:#0a0a0f;font-family:Inter,sans-serif}.catalog{background:linear-gradient(#0a0a0f 0%,#14141e 100%);min-height:100vh;padding:40px}.catalog-header{text-align:center;margin-bottom:50px}.catalog-header h1{background:linear-gradient(135deg,#e50914,#ff6b35);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:3rem;font-weight:800}.subtitle{color:#888;letter-spacing:2px;text-transform:uppercase;font-size:.95rem}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px;max-width:1600px;margin:0 auto;display:grid}.movie-card{cursor:pointer;background:#1a1a24;border-radius:12px;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.movie-card:hover{transform:translateY(-8px)scale(1.03);box-shadow:0 20px 40px #e509144d}.movie-poster{aspect-ratio:2/3;background:#222;position:relative;overflow:hidden}.movie-poster img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.movie-card:hover .movie-poster img{transform:scale(1.1)}.poster-fallback{color:#e50914;background:linear-gradient(135deg,#1a1a24,#2a2a3a);justify-content:center;align-items:center;font-size:3rem;font-weight:800;display:none;position:absolute;inset:0}.movie-poster.no-poster .poster-fallback{display:flex}.movie-info{padding:12px 16px}.movie-info h3{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:.95rem;font-weight:600;overflow:hidden}.movie-info p{color:#888;font-size:.8rem}.movie-overlay{opacity:0;background:#0009;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:0}.movie-card:hover .movie-overlay{opacity:1}.play-icon{color:#fff;background:#e50914;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:1.5rem;display:flex}.player-container{background:#000;flex-direction:column;min-height:100vh;display:flex;position:relative}.back-button{z-index:100;color:#fff;cursor:pointer;background:#000000b3;border:1px solid #fff3;border-radius:8px;padding:10px 20px;font-size:.9rem;position:absolute;top:20px;left:20px}.back-button:hover{background:#e50914}.loading{color:#fff;background:#0a0a0f;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.spinner{border:3px solid #e5091433;border-top-color:#e50914;border-radius:50%;width:50px;height:50px;margin-bottom:20px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;color:#888;margin-top:50px;font-size:1.1rem}@media (width<=768px){.catalog{padding:20px}.catalog-header h1{font-size:2rem}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}}
