.library-page{padding-bottom:50px}.library-page .playlist-card{transition:all .3s cubic-bezier(.4,0,.2,1)}.library-page .playlist-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.3)}.library-page .action-button{transition:all .2s ease}.library-page .action-button:hover{transform:scale(1.1)}.library-page .action-button:active{transform:scale(.95)}.library-page .gradient-bg{background:linear-gradient(135deg,#374151,#1f2937)}.library-page .tab-container{display:flex;flex-wrap:nowrap;min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;justify-content:center}.library-page .tab-container::-webkit-scrollbar{display:none}.library-page .tab-button{position:relative;overflow:hidden;flex-shrink:0;white-space:nowrap}.library-page .tab-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s}.library-page .tab-button:hover:before{left:100%}.library-page .loading-skeleton{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.library-page .empty-state .icon{animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.library-page .counter{background:hsla(0,0%,100%,.1);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2)}.library-page .play-button{background:linear-gradient(135deg,#ff6b6b,#ee5a24);box-shadow:0 4px 15px rgba(255,107,107,.3)}.library-page .play-button:hover{background:linear-gradient(135deg,#ff5252,#d63031);transform:scale(1.05)}.library-page .playlist-cover{position:relative;overflow:hidden;width:100%;height:auto}.library-page .playlist-cover:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);transform:translateX(-100%);transition:transform .6s}.library-page .playlist-cover:hover:after{transform:translateX(100%)}.library-page .stats-item{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;border-radius:.5rem;background:hsla(0,0%,100%,.05);transition:background .2s ease}.library-page .stats-item:hover{background:hsla(0,0%,100%,.1)}@media(max-width:768px){.library-page .playlist-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.library-page .tab-container{gap:.25rem}}@media(max-width:480px){.library-page .playlist-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.library-page .header{text-align:center}.library-page .tab-container{justify-content:center;gap:.125rem}.library-page .tab-button{padding:.375rem .5rem;font-size:.75rem}.library-page .tab-button .flex{justify-content:center}}:root{--primary-color:#667eea;--secondary-color:#764ba2;--accent-color:#ff6b6b;--success-color:#00b894;--warning-color:#fdcb6e;--error-color:#e17055;--bg-primary:#000000;--bg-secondary:#1a1a1a;--bg-tertiary:#2d2d2d;--text-primary:#ffffff;--text-secondary:#b3b3b3;--text-tertiary:#808080;--border-color:#404040;--shadow-color:rgba(0,0,0,0.3)}body{background-color:var(--bg-primary);color:var(--text-primary)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.create-playlist-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;animation:modalFadeIn .3s cubic-bezier(.4,0,.2,1)}.create-playlist-modal{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border-radius:20px;padding:0;width:100%;max-width:480px;box-shadow:0 25px 50px rgba(0,0,0,.5);border:1px solid hsla(0,0%,100%,.1);overflow:hidden;animation:modalSlideIn .4s cubic-bezier(.4,0,.2,1)}.create-playlist-modal.closing{animation:modalSlideOut .3s cubic-bezier(.4,0,.2,1)}.create-playlist-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.5rem 0;margin-bottom:1.5rem}.create-playlist-modal .header-content{display:flex;align-items:center;gap:.75rem}.create-playlist-modal .icon-container{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 15px rgba(102,126,234,.3)}.create-playlist-modal .modal-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0}.create-playlist-modal .close-button{width:45px;height:40px;border-radius:50%;margin-left:10px;background:hsla(0,0%,100%,.1);border:none;color:#b3b3b3;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.create-playlist-modal .close-button:hover{background:hsla(0,0%,100%,.2);color:#fff;transform:scale(1.1)}.create-playlist-modal .close-button:disabled{opacity:.5;cursor:not-allowed}.create-playlist-modal .modal-form{padding:0 1.5rem 1.5rem}.create-playlist-modal .form-group{margin-bottom:1.5rem}.create-playlist-modal .form-label{display:block;font-size:.875rem;font-weight:600;color:#b3b3b3;margin-bottom:.5rem}.create-playlist-modal .input-container{position:relative;display:flex;align-items:center}.create-playlist-modal .form-input{width:100%;padding:1rem 1rem 1rem 3rem;background:hsla(0,0%,100%,.05);border:2px solid hsla(0,0%,100%,.1);border-radius:12px;color:#fff;font-size:1rem;transition:all .3s ease}.create-playlist-modal .form-input::placeholder{color:gray}.create-playlist-modal .form-input:focus{outline:none;background:hsla(0,0%,100%,.08);box-shadow:0 0 0 3px rgba(102,126,234,.1)}.create-playlist-modal .form-input:disabled{opacity:.5;cursor:not-allowed}.create-playlist-modal .input-icon{position:absolute;left:1rem;color:gray;pointer-events:none}.create-playlist-modal .error-message{color:#ff6b6b;font-size:.875rem;margin-top:.5rem;display:flex;align-items:center;gap:.25rem}.create-playlist-modal .error-message:before{content:"⚠";font-size:.75rem}.create-playlist-modal .character-count{text-align:right;font-size:.75rem;color:gray;margin-top:.25rem}.create-playlist-modal .modal-actions{display:flex;gap:1rem;margin-top:2rem}.create-playlist-modal .cancel-button{flex:1;padding:.875rem 1.5rem;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:12px;color:#b3b3b3;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.create-playlist-modal .cancel-button:hover:not(:disabled){background:hsla(0,0%,100%,.15);color:#fff;transform:translateY(-1px)}.create-playlist-modal .cancel-button:disabled{opacity:.5;cursor:not-allowed}.create-playlist-modal .create-button{flex:2;padding:.875rem 1.5rem;border:none;border-radius:12px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.create-playlist-modal .create-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 25px rgba(102,126,234,.3)}.create-playlist-modal .create-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.create-playlist-modal .loading-spinner{display:flex;align-items:center;justify-content:center}.create-playlist-modal .spinner{width:16px;height:16px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modalSlideOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.9) translateY(20px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media(max-width:640px){.create-playlist-modal .create-playlist-modal{margin:1rem;max-width:none}.create-playlist-modal .modal-actions{flex-direction:column}.create-playlist-modal .cancel-button,.create-playlist-modal .create-button{flex:none}}@media(prefers-color-scheme:dark){.create-playlist-modal .create-playlist-modal{background:linear-gradient(135deg,#0a0a0a,#1a1a1a)}}