.downloads-page{min-height:100vh;background:var(--netflix-black);padding-top:60px;font-family:Helvetica Neue,Arial,sans-serif}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:var(--netflix-white)}.loading-spinner{width:50px;height:50px;border-top:4px solid var(--netflix-gray);border:4px solid var(--netflix-gray);border-top-color:var(--netflix-red);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.page-header{background:var(--netflix-dark-gray);border-bottom:1px solid var(--netflix-gray);padding:2rem}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;max-width:1200px;margin:0 auto}.page-header h1{display:flex;align-items:center;gap:15px;margin:0;font-size:2rem;font-weight:700;color:var(--netflix-white)}.page-header .icon{font-size:2rem}.header-actions{display:flex;gap:15px;flex-wrap:wrap}.search-container{position:relative}.search-input{padding:12px 20px;border:2px solid var(--netflix-gray);border-radius:8px;font-size:1rem;width:300px;transition:all .3s ease;background:var(--netflix-dark-gray);color:var(--netflix-white)}.search-input:focus{outline:none;border-color:var(--netflix-red);background:var(--netflix-gray)}.search-input::placeholder{color:var(--netflix-text-gray)}.sort-select{padding:12px 16px;border:2px solid var(--netflix-gray);border-radius:8px;background:var(--netflix-dark-gray);color:var(--netflix-white);font-size:.95rem;cursor:pointer;transition:all .3s ease}.sort-select:focus{outline:none;border-color:var(--netflix-red)}.btn-danger,.btn-secondary{padding:12px 24px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95rem;display:flex;align-items:center;gap:8px}.btn-secondary{background:hsla(0,0%,100%,.1);color:var(--netflix-white)}.btn-secondary:hover{background:hsla(0,0%,100%,.2);transform:translateY(-2px)}.btn-danger{background:#dc3545;color:var(--netflix-white)}.btn-danger:hover{background:#c82333;transform:translateY(-2px)}.filter-section{background:var(--netflix-black);padding:2rem}.section-content{width:100%;max-width:1200px;margin:0 auto}.filter-bar{display:flex;gap:10px;flex-wrap:wrap}.filter-btn{padding:12px 20px;border:none;background:var(--netflix-dark-gray);border-radius:20px;cursor:pointer;transition:all .3s ease;font-weight:500;color:var(--netflix-white);font-size:.9rem}.filter-btn:hover{background:var(--netflix-gray);transform:translateY(-2px)}.filter-btn.active{background:var(--netflix-red);color:var(--netflix-white)}.active-downloads-section,.completed-downloads-section,.failed-downloads-section,.queue-section{background:var(--netflix-black);padding:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid var(--netflix-gray)}.section-header h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--netflix-white)}.section-actions{display:flex;gap:10px}.downloads-list{display:flex;flex-direction:column;gap:20px}.download-item{display:flex;align-items:center;gap:20px;padding:25px;background:var(--netflix-dark-gray);border-radius:12px;transition:all .3s ease;position:relative;overflow:hidden}.download-item:hover{background:var(--netflix-gray);transform:translateY(-2px)}.download-item.active{border-left:4px solid var(--netflix-red)}.download-item.queued{border-left:4px solid #ffc107}.download-item.failed{border-left:4px solid #dc3545}.download-item.completed{border-left:4px solid #28a745}.download-thumbnail{width:80px;height:120px;border-radius:8px;overflow:hidden;background:var(--netflix-gray);flex-shrink:0}.download-thumbnail,.thumbnail-placeholder{display:flex;align-items:center;justify-content:center}.thumbnail-placeholder{width:100%;height:100%;background:var(--netflix-light-gray);color:var(--netflix-text-gray);font-size:1.5rem}.placeholder-icon{font-size:2rem}.download-info{flex:1 1;min-width:0}.download-info h4{margin:0 0 8px;font-size:1.1rem;font-weight:600;color:var(--netflix-white);line-height:1.3}.download-info p{margin:0 0 15px;color:var(--netflix-text-gray);font-size:.9rem}.download-progress{margin:15px 0}.progress-bar{width:100%;height:6px;background:var(--netflix-gray);border-radius:3px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:var(--netflix-red);border-radius:3px;transition:width .3s ease}.progress-details{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--netflix-text-gray)}.progress-text{font-weight:600;color:var(--netflix-red)}.download-meta,.error-info,.queue-meta{display:flex;flex-wrap:wrap;gap:15px;margin:10px 0;font-size:.85rem}.download-meta span,.error-info span,.queue-meta span{padding:4px 8px;background:hsla(0,0%,100%,.1);border-radius:6px;color:var(--netflix-text-gray)}.speed{background:rgba(40,167,69,.2)!important;color:#28a745!important;font-weight:600}.time-remaining{background:rgba(255,193,7,.2)!important;color:#ffc107!important}.priority-high{background:rgba(220,53,69,.2)!important;color:#dc3545!important;font-weight:600}.priority-normal{background:rgba(0,123,255,.2)!important;color:#007bff!important}.priority-low{background:rgba(40,167,69,.2)!important;color:#28a745!important}.error-message{background:rgba(220,53,69,.2)!important;color:#dc3545!important;font-weight:600}.download-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.action-btn{padding:8px 12px;border:none;background:hsla(0,0%,100%,.1);border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:80px;color:var(--netflix-white)}.action-btn:hover{background:hsla(0,0%,100%,.2);transform:translateY(-1px)}.pause-btn,.play-btn{background:var(--netflix-red);color:var(--netflix-white)}.pause-btn:hover,.play-btn:hover{background:#b8070f}.cancel-btn,.delete-btn{background:#dc3545;color:var(--netflix-white)}.cancel-btn:hover,.delete-btn:hover{background:#c82333}.retry-btn{background:#28a745;color:var(--netflix-white)}.retry-btn:hover{background:#218838}.priority-btn{background:#ffc107;color:var(--netflix-black)}.priority-btn:hover{background:#e0a800}.priority-select{padding:6px 8px;border:none;border-radius:4px;font-size:.8rem;background:var(--netflix-gray);color:var(--netflix-white)}.empty-downloads{text-align:center;padding:60px 20px;color:var(--netflix-text-gray)}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-downloads h3{margin:0 0 10px;font-size:1.5rem;color:var(--netflix-white)}.empty-downloads p{margin:0 0 20px;font-size:1rem}.btn-primary{background:var(--netflix-red);color:var(--netflix-white);padding:12px 24px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-primary:hover{background:#b8070f;transform:translateY(-2px)}.watched-indicator{position:absolute;top:10px;right:10px;background:#28a745;color:var(--netflix-white);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.rating-section{margin:10px 0;display:flex;align-items:center;gap:10px;font-size:.9rem;color:var(--netflix-text-gray)}.star-rating{display:flex;gap:2px}.star{background:none;border:none;font-size:1rem;cursor:pointer;opacity:.3;transition:opacity .2s ease}.star.active{opacity:1}.star:hover{opacity:.7}@media (max-width:768px){.downloads-page{padding-top:56px}.page-header{padding:1rem}.header-content{flex-direction:column;align-items:stretch}.header-actions{justify-content:center}.search-input{width:100%}.download-item,.filter-bar{flex-direction:column}.download-item{text-align:center;gap:15px}.download-actions{flex-direction:row;flex-wrap:wrap}.download-actions,.download-meta,.queue-meta{justify-content:center}.section-header{flex-direction:column;gap:15px;align-items:stretch}.active-downloads-section,.completed-downloads-section,.failed-downloads-section,.queue-section{padding:1rem}}@media (max-width:480px){.page-header h1{font-size:1.5rem}.download-thumbnail{width:60px;height:90px}.download-info h4{font-size:1rem}.filter-btn{padding:10px 15px;font-size:.9rem}}