*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f0f23);color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}#root,.app,body{min-height:100vh}.app{padding:40px 20px}.container{margin:0 auto;max-width:800px}.header{margin-bottom:40px;text-align:center}.logo{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:10px}.logo-icon{font-size:40px}.header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f50,#f80);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700}.subtitle{color:#8b8b8b;font-size:1.1rem}.search-section{margin-bottom:30px}.input-group{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;display:flex;gap:12px;padding:8px}.url-input{background:#0000;border:none;color:#fff;flex:1 1;font-size:1rem;outline:none;padding:16px 20px}.url-input::placeholder{color:#666}.search-btn{align-items:center;background:linear-gradient(135deg,#f50,#f70);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:16px 32px;transition:all .3s ease}.search-btn:hover:not(:disabled){box-shadow:0 8px 25px #ff55004d;transform:translateY(-2px)}.search-btn:disabled{cursor:not-allowed;opacity:.7}.error-message{align-items:center;background:#ff4d4d1a;border:1px solid #ff4d4d4d;border-radius:12px;color:#ff6b6b;display:flex;gap:10px;margin-bottom:20px;padding:16px 20px}.playlist-section{background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;padding:24px}.playlist-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.playlist-info h2{font-size:1.5rem;font-weight:600;margin-bottom:4px}.track-count{color:#888;font-size:.9rem}.download-all-btn{align-items:center;background:linear-gradient(135deg,#00c853,#00e676);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:14px 24px;transition:all .3s ease}.download-all-btn:hover:not(:disabled){box-shadow:0 8px 25px #00c8534d;transform:translateY(-2px)}.download-all-btn:disabled{cursor:not-allowed;opacity:.7}.tracks-list{display:flex;flex-direction:column;gap:8px}.track-item{align-items:center;background:#ffffff08;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s ease}.track-item:hover{background:#ffffff0f}.track-number{align-items:center;background:#ff55001a;border-radius:8px;color:#f50;display:flex;font-size:.85rem;font-weight:600;height:32px;justify-content:center;width:32px}.track-info{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.track-title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-title.loading-title{color:#888;font-style:italic}.track-duration{color:#666;font-size:.85rem}.batch-loading{background:#ff55001a;border-radius:10px;color:#f80;font-size:.9rem;gap:10px;margin-bottom:16px;padding:12px 16px}.batch-loading,.download-btn{align-items:center;display:flex}.download-btn{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;cursor:pointer;font-size:1.2rem;height:44px;justify-content:center;transition:all .2s ease;width:44px}.download-btn:hover:not(:disabled){background:#f503;border-color:#ff55004d}.download-btn:disabled{cursor:not-allowed;opacity:.5}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.spinner.small{height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.footer{color:#666;font-size:.9rem;margin-top:40px;text-align:center}.footer code{background:#ffffff1a;border-radius:4px;font-family:Fira Code,monospace;padding:2px 8px}@media (max-width:600px){.header h1{font-size:1.8rem}.input-group{flex-direction:column}.search-btn{justify-content:center}.playlist-header{align-items:flex-start;flex-direction:column}.download-all-btn{justify-content:center;width:100%}.track-item{gap:12px;padding:12px}}
/*# sourceMappingURL=main.a0de97f8.css.map*/