.music-page{display:flex;flex-direction:column;gap:24px;margin-top:10px;margin-bottom:40px;position:relative}@keyframes music-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes music-fade-in{0%{opacity:0}to{opacity:1}}@keyframes music-pop{0%{transform:scale(.85)}55%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes music-glow-pulse{0%,to{box-shadow:0 0 #5773ff59}50%{box-shadow:0 0 0 8px #5773ff00}}@keyframes music-gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes music-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes music-blob-float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(20px,-18px) scale(1.08)}66%{transform:translate(-16px,14px) scale(.95)}}@keyframes music-eq-bounce{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}@media (prefers-reduced-motion: reduce){.music-page *,.music-page *:before,.music-page *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.music-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width: 900px){.music-stats-grid{grid-template-columns:repeat(2,1fr)}}.music-stats-card{position:relative;background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;padding:18px 16px;text-align:center;overflow:hidden;transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease;animation:music-fade-up .4s ease both}.music-stats-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#5773ff1a,#ec478c14);opacity:0;transition:opacity .25s ease}.music-stats-card:nth-child(1){animation-delay:.02s}.music-stats-card:nth-child(2){animation-delay:.08s}.music-stats-card:nth-child(3){animation-delay:.14s}.music-stats-card:nth-child(4){animation-delay:.2s}.music-stats-card:hover{box-shadow:0 10px 28px var(--shadow-color);border-color:#5773ff66;transform:translateY(-3px)}.music-stats-card:hover:before{opacity:1}.music-stats-card__value{position:relative;font-size:24px;font-weight:800;background:linear-gradient(120deg,#5773ff,#92278f,#ec478c,#5773ff);background-size:300% 300%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:music-gradient-shift 6s ease infinite}@media (max-width: 600px){.music-stats-card__value{font-size:20px}}.music-stats-card__label{position:relative;margin-top:4px;font-size:13px;font-weight:500;color:var(--text-secondary)}.music-trending{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;padding:16px 18px}.music-trending__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.music-trending__title{margin:0;font-size:17px;font-weight:700;color:var(--text-primary)}.music-trending__more{font-size:13px;font-weight:600;color:#5773ff;text-decoration:none;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;transition:opacity .15s ease,transform .15s ease}.music-trending__more:hover{opacity:.75;transform:translate(2px)}.music-trending__item{display:flex;align-items:center;gap:12px;padding:9px 6px;border-radius:10px;text-decoration:none;text-align:left;background:none;border:none;width:100%;font-family:inherit;cursor:pointer;transition:background .15s ease,transform .15s ease}.music-trending__item:hover{background:var(--bg-secondary);transform:translate(3px)}.music-trending__rank{flex-shrink:0;width:28px;font-size:14px;font-weight:700;color:var(--text-secondary)}.music-trending__info{flex:1;min-width:0;display:flex;flex-direction:column}.music-trending__song-title{font-size:14px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.music-trending__artist{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.music-trending__plays{flex-shrink:0;font-size:12px;font-weight:600;color:var(--text-secondary)}.music-toolbar{display:flex;align-items:center;gap:12px;animation:music-fade-up .4s ease both;animation-delay:.1s}@media (max-width: 700px){.music-toolbar{flex-direction:column;align-items:stretch}}.music-search{flex:1;display:flex;align-items:center;gap:10px;background:var(--input-bg);border:2px solid var(--border-color);border-radius:12px;padding:0 14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;color:var(--text-secondary)}.music-search:focus-within{border-color:#5773ff;background:var(--bg-primary);box-shadow:0 0 0 4px #5773ff1f}.music-search__input{flex:1;border:none;background:transparent;outline:none;padding:13px 0;font-size:15px;color:var(--text-primary);font-family:inherit}.music-search__input::-moz-placeholder{color:var(--text-secondary);opacity:.7}.music-search__input::placeholder{color:var(--text-secondary);opacity:.7}.music-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;animation:music-fade-up .4s ease both;animation-delay:.16s}.music-tabs::-webkit-scrollbar{height:0}.music-tabs__item{position:relative;flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:10px;border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);font-family:inherit;white-space:nowrap}.music-tabs__item:hover{border-color:#5773ff;color:#5773ff;transform:translateY(-2px)}.music-tabs__item--active{background:linear-gradient(120deg,#5773ff,#7c4dff,#ec478c);background-size:220% 220%;animation:music-gradient-shift 5s ease infinite;border-color:transparent;color:#fff;transform:translateY(-1px);box-shadow:0 6px 16px #5773ff59}.music-tabs__item--active:hover{color:#fff;transform:translateY(-2px)}.music-tabs__item--active .music-tabs__count{background:#ffffff40;color:#fff}.music-tabs__count{background:var(--bg-secondary);color:var(--text-secondary);font-size:11px;font-weight:700;padding:2px 7px;border-radius:20px;transition:background .2s ease,color .2s ease}.music-player{position:fixed;left:50%;bottom:0;transform:translate(-50%);width:min(100%,980px);z-index:500;display:flex;align-items:center;gap:16px;background:var(--card-bg);border:1px solid var(--border-color);border-bottom:none;border-radius:16px 16px 0 0;padding:14px 18px;box-shadow:0 -8px 28px var(--shadow-color);animation:music-player-slide-up .35s cubic-bezier(.34,1.2,.64,1) both}@media (max-width: 1020px){.music-player{width:100%;border-radius:0;left:0;transform:none;padding:12px 14px}}@media (max-width: 800px){.music-player{flex-wrap:wrap}}@keyframes music-player-slide-up{0%{opacity:0;transform:translate(-50%,100%)}to{opacity:1;transform:translate(-50%)}}@media (max-width: 1020px){@keyframes music-player-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}.music-player-spacer{height:92px}@media (max-width: 800px){.music-player-spacer{height:132px}}.music-player__cover{position:relative;flex-shrink:0;width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,#5773ff,#92278f,#ec478c);background-size:220% 220%;animation:music-gradient-shift 6s ease infinite;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 14px #5773ff66;overflow:hidden}.music-player__cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.music-player__info{flex:1;min-width:160px;display:flex;flex-direction:column;gap:4px}.music-player__title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--text-primary)}.music-player__badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;text-transform:uppercase}.music-player__badge--hit{background:linear-gradient(135deg,#ffe29a,#ffc107,#ff9800);background-size:200% 200%;animation:music-gradient-shift 3s ease infinite;color:#7a5200}.music-player__artist{font-size:13px;color:var(--text-secondary)}.music-player__progress-wrap{position:relative;margin-top:2px;height:4px;background:var(--border-color);border-radius:4px;cursor:pointer}.music-player__progress-bar{height:100%;background:linear-gradient(90deg,#5773ff,#92278f,#ec478c,#5773ff);background-size:300% 100%;animation:music-gradient-shift 4s linear infinite;border-radius:4px}.music-player__progress-thumb{position:absolute;top:50%;width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid #5773FF;transform:translate(-50%,-50%);box-shadow:0 2px 6px #5773ff80;opacity:0;transition:opacity .15s ease,transform .15s ease;pointer-events:none}.music-player__progress-wrap:hover .music-player__progress-thumb{opacity:1;transform:translate(-50%,-50%) scale(1.15)}.music-player__time{display:flex;justify-content:space-between;font-size:11px;font-weight:600;color:var(--text-secondary)}.music-player__controls{display:flex;align-items:center;gap:10px;flex-shrink:0}@media (max-width: 800px){.music-player__controls{width:100%;justify-content:center}}.music-player__icon-btn--active{color:#92278f;background:#92278f1f;animation:music-pop .35s ease}.music-player__play-btn{flex-shrink:0;width:42px;height:42px;border-radius:50%;border:none;background:linear-gradient(135deg,#5773ff,#3d5bf3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 14px #5773ff66}.music-player__play-btn:hover{background:linear-gradient(135deg,#3d5bf3,#5773ff);transform:scale(1.08);box-shadow:0 6px 20px #5773ff8c}.music-player__play-btn:active{transform:scale(.96)}.music-player__eq{display:flex;align-items:flex-end;gap:2px;height:14px;margin-left:2px}.music-player__eq span{display:block;width:3px;height:100%;border-radius:2px;background:linear-gradient(180deg,#5773ff,#ec478c);transform-origin:bottom;animation:music-eq-bounce .9s ease-in-out infinite}.music-player__eq span:nth-child(1){animation-duration:.7s}.music-player__eq span:nth-child(2){animation-duration:.9s;animation-delay:.15s}.music-player__eq span:nth-child(3){animation-duration:.8s;animation-delay:.3s}.music-player__volume{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}@media (max-width: 500px){.music-player__volume{display:none}}.music-player__volume-input{width:70px;accent-color:#5773FF}.music-chart{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;padding:16px 18px;animation:music-fade-up .4s ease both;animation-delay:.22s}.music-chart__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.music-chart__title{font-size:17px;font-weight:700;color:var(--text-primary)}.music-chart__see-all{font-size:13px;font-weight:600;color:#5773ff;text-decoration:none;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;transition:opacity .15s ease,transform .15s ease}.music-chart__see-all:hover{opacity:.75;transform:translate(2px)}.music-chart__list{display:flex;flex-direction:column}.music-track{display:flex;align-items:center;gap:12px;padding:10px 8px;border-radius:10px;cursor:pointer;transition:background .15s ease,transform .15s ease;animation:music-fade-up .35s ease both;animation-delay:calc(var(--row-index, 0) * 35ms)}.music-track:hover{background:var(--bg-secondary);transform:translate(2px)}.music-track--active{background:linear-gradient(90deg,#5773ff1f,#ec478c0f)}.music-track--active .music-track__title{color:#5773ff}.music-track__rank{flex-shrink:0;width:28px;font-size:14px;font-weight:700;color:var(--text-secondary);display:flex;align-items:center;gap:3px}.music-track__fire{display:inline-flex;align-items:center;justify-content:center;animation:music-track-fire-flicker 1.1s ease-in-out infinite;transform-origin:50% 90%;filter:drop-shadow(0 0 4px rgba(255,122,24,.7))}.music-track__fire-inner{animation:music-track-fire-flicker-inner .9s ease-in-out infinite;transform-origin:50% 90%}@keyframes music-track-fire-flicker{0%{transform:scale(1) rotate(-2deg)}25%{transform:scale(1.1,.92) rotate(2deg)}50%{transform:scale(.93,1.09) rotate(-2deg)}75%{transform:scale(1.07,.95) rotate(3deg)}to{transform:scale(1) rotate(-2deg)}}@keyframes music-track-fire-flicker-inner{0%{transform:scale(1) translateY(0);opacity:.95}50%{transform:scale(.88,1.1) translateY(-.6px);opacity:1}to{transform:scale(1) translateY(0);opacity:.95}}@media (prefers-reduced-motion: reduce){.music-track__fire,.music-track__fire-inner{animation:none}}.music-track__cover{flex-shrink:0;width:38px;height:38px;border-radius:8px;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);overflow:hidden;transition:transform .2s ease}.music-track:hover .music-track__cover{transform:scale(1.06)}.music-track__cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.music-track__info{flex:1;min-width:0;display:flex;flex-direction:column}.music-track__title{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s ease}.music-track__badge{font-size:10px;flex-shrink:0}.music-track__artist{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.music-track__plays{flex-shrink:0;font-size:12px;font-weight:600;color:var(--text-secondary)}@media (max-width: 600px){.music-track__plays{display:none}}.music-track__playing{flex-shrink:0;color:#5773ff;display:flex;align-items:center}.music-track__like{flex-shrink:0;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;border-radius:50%;transition:color .15s ease,transform .15s ease,background .15s ease}.music-track__like:hover{color:#92278f;transform:scale(1.15)}.music-track__like--active{color:#92278f;background:#92278f1f;animation:music-pop .35s ease}.music-track__delete{flex-shrink:0;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;border-radius:6px;transition:color .15s ease,background .15s ease,transform .15s ease}.music-track__delete:hover{color:#ef4444;background:var(--bg-secondary);transform:scale(1.1)}.music-track__playlist-btn{flex-shrink:0;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;border-radius:6px;transition:color .15s ease,background .15s ease,transform .15s ease}.music-track__playlist-btn:hover{color:#5773ff;background:var(--bg-secondary);transform:scale(1.1)}.music-track__playlist-btn--active{color:#5773ff;background:#5773ff1f;animation:music-pop .35s ease}.music-track__playlist-btn--active svg{transform:rotate(45deg)}.music-track__share{flex-shrink:0;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;border-radius:6px;transition:color .15s ease,background .15s ease,transform .15s ease}.music-track__share:hover{color:#5773ff;background:var(--bg-secondary);transform:scale(1.1) rotate(-8deg)}.music-chart__empty{padding:24px 8px;text-align:center;font-size:14px;color:var(--text-secondary);animation:music-fade-in .3s ease both}.music-playlist-view{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;padding:16px 18px;animation:music-fade-up .35s ease both}.music-playlist-view__back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;padding:6px 4px;margin-bottom:14px;font-family:inherit;transition:color .15s ease,transform .15s ease}.music-playlist-view__back:hover{color:#5773ff;transform:translate(-3px)}.music-playlist-view__header{display:flex;align-items:center;gap:16px;margin-bottom:18px}.music-playlist-view__cover{flex-shrink:0;width:80px;height:80px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:32px;box-shadow:0 4px 16px var(--shadow-color);animation:music-pop .4s cubic-bezier(.34,1.56,.64,1) both}.music-playlist-view__info{display:flex;flex-direction:column;gap:4px}.music-playlist-view__title{margin:0;font-size:22px;font-weight:700;color:var(--text-primary)}.music-playlist-view__desc{margin:0;font-size:13px;color:var(--text-secondary)}.music-playlist-group{display:flex;flex-direction:column;gap:12px;animation:music-fade-up .4s ease both;animation-delay:.28s}.music-playlist-group__title{margin:0;font-size:15px;font-weight:700;color:var(--text-primary);position:relative;display:inline-flex;align-items:center}.music-playlist-group__title:after{content:"";display:inline-block;width:26px;height:3px;margin-left:10px;border-radius:3px;background:linear-gradient(90deg,#5773ff,#ec478c)}.music-playlists{display:flex;flex-wrap:nowrap;gap:14px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}.music-playlists::-webkit-scrollbar{height:6px}.music-playlists::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:6px}.music-playlist-card{flex-shrink:0;scroll-snap-align:start;width:150px;display:flex;flex-direction:column;gap:8px;text-decoration:none;text-align:left;background:none;border:none;padding:0;font-family:inherit;cursor:pointer;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.music-playlist-card:hover{transform:translateY(-5px) scale(1.02)}.music-playlist-card:hover .music-playlist-card__cover{box-shadow:0 10px 26px var(--shadow-color),0 0 0 3px #5773ff40}.music-playlist-card__cover{position:relative;width:150px;height:150px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:36px;box-shadow:0 4px 16px var(--shadow-color);transition:box-shadow .25s ease;overflow:hidden}.music-playlist-card__cover:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.22) 50%,transparent 70%);background-size:250% 250%;opacity:0;transition:opacity .2s ease}.music-playlist-card__cover--1{background:linear-gradient(135deg,#5773ff,#3d5bf3)}.music-playlist-card__cover--2{background:linear-gradient(135deg,#7c4dff,#512da8)}.music-playlist-card__cover--3{background:linear-gradient(135deg,#ff9800,#e65100)}.music-playlist-card__cover--4{background:linear-gradient(135deg,#43a047,#1b5e20)}.music-playlist-card__cover--5{background:linear-gradient(135deg,#ec478c,#92278f)}.music-playlist-card__cover--6{background:linear-gradient(135deg,#00acc1,#00695c)}.music-playlist-card__cover--7{background:linear-gradient(135deg,#7c4dff,#4527a0)}.music-playlist-card__cover--8{background:linear-gradient(135deg,#ffb300,#ff6f00)}.music-playlist-card__cover--9{background:linear-gradient(135deg,#ff7043,#bf360c)}.music-playlist-card__cover--10{background:linear-gradient(135deg,#5773ff,#1c2f8a)}.music-playlist-card__cover--11{background:linear-gradient(135deg,#ec478c,#ad1457)}.music-playlist-card__cover--12{background:linear-gradient(135deg,#66bb6a,#2e7d32)}.music-playlist-card__cover--13{background:linear-gradient(135deg,#ab47bc,#6a1b9a)}.music-playlist-card__cover--14{background:linear-gradient(135deg,#29b6f6,#0277bd)}.music-playlist-card__cover--15{background:linear-gradient(135deg,#ffca28,#f57f17)}.music-playlist-card__cover--16{background:linear-gradient(135deg,#5773ff,#3d5bf3)}.music-playlist-card:hover .music-playlist-card__cover:after{opacity:1;animation:music-shimmer 1.1s ease}.music-playlist-card__emoji{filter:drop-shadow(0 2px 4px rgba(0,0,0,.25));transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.music-playlist-card:hover .music-playlist-card__emoji{transform:scale(1.15) rotate(-6deg)}.music-playlist-card__icon{position:relative;width:35%;height:35%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 3px 6px rgba(0,0,0,.3));transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.music-playlist-card:hover .music-playlist-card__icon{transform:scale(1.12) rotate(-4deg)}.music-playlist-view__cover .music-playlist-card__icon{width:52%;height:52%}.music-playlist-card__badge{position:absolute;top:8px;left:8px;background:#00000073;color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:6px}.music-playlist-card__name{font-size:14px;font-weight:600;color:var(--text-primary)}.music-playlist-card__desc{font-size:12px;color:var(--text-secondary)}.music-owner-note{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);margin:0}.user-section__action-btn{display:inline-flex;align-items:center;justify-content:center;height:38px;box-sizing:border-box;line-height:1;padding:0 16px;border-radius:8px;font-size:14px;font-weight:600;border:2px solid #5773FF;color:#5773ff;transition:all .2s cubic-bezier(.34,1.56,.64,1);white-space:nowrap;background:transparent;cursor:pointer;font-family:inherit;flex-shrink:0}.user-section__action-btn:hover{background:linear-gradient(120deg,#5773ff,#7c4dff);border-color:transparent;color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #5773ff59}.user-section__action-btn:active{transform:translateY(0)}.music-stats-toggle-wrap{display:flex;justify-content:flex-start;animation:music-fade-up .4s ease both;animation-delay:.06s}.music-stats-toggle{display:inline-flex;align-items:center;gap:8px;height:38px;box-sizing:border-box;padding:0 16px;border-radius:8px;font-size:14px;font-weight:600;border:2px solid var(--border-color);color:var(--text-primary);background:var(--card-bg);cursor:pointer;transition:all .2s ease;font-family:inherit}.music-stats-toggle:hover{border-color:#5773ff;color:#5773ff;transform:translateY(-1px)}.music-stats-toggle--active{border-color:transparent;color:#fff;background:linear-gradient(120deg,#5773ff,#7c4dff,#ec478c);background-size:220% 220%;animation:music-gradient-shift 5s ease infinite;box-shadow:0 4px 14px #5773ff59}.music-stats-toggle__chevron{transition:transform .2s ease;display:inline-flex}.music-stats-toggle--active .music-stats-toggle__chevron{transform:rotate(180deg)}.music-stats-panel-enter-active,.music-stats-panel-leave-active{transition:max-height .3s cubic-bezier(.34,1.2,.64,1),opacity .25s ease,margin .3s ease;overflow:hidden}.music-stats-panel-enter-from,.music-stats-panel-leave-to{max-height:0;opacity:0;margin-top:0!important}.music-stats-panel-enter-to,.music-stats-panel-leave-from{max-height:300px;opacity:1}body.modal-open{overflow:hidden}.modal-container{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:flex-start;justify-content:center;z-index:9999;padding:40px 20px;box-sizing:border-box;overflow-y:auto;animation:music-fade-in .2s ease both}.modal-content{background:var(--card-bg);border-radius:20px;width:100%;max-width:520px;padding:30px;position:relative;box-shadow:0 15px 40px var(--shadow-color);display:flex;flex-direction:column;margin-top:auto;margin-bottom:auto;animation:music-modal-in .28s cubic-bezier(.34,1.4,.64,1) both}@keyframes music-modal-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content--wide{max-width:640px}.modal__close{position:absolute;top:24px;right:24px;width:24px;height:24px;color:var(--text-secondary);cursor:pointer;transition:transform .2s ease,opacity .2s ease}.modal__close:hover{opacity:.7;transform:scale(1.15) rotate(90deg)}.modal__header{font-size:24px;font-weight:700;color:var(--text-primary);margin-bottom:10px;padding-right:30px}.post-modal__body{display:flex;flex-direction:column;gap:18px;margin-top:8px}.vacancy_filters__label{display:block;font-weight:600;font-size:14px;margin-bottom:8px;color:var(--text-primary)}.vacancy-filters__select{width:100%;border:2px solid var(--border-color);background-color:var(--input-bg);color:var(--text-primary);padding:13px 16px;font-size:15px;border-radius:12px;outline:none;transition:all .2s ease;box-sizing:border-box;font-family:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none}.vacancy-filters__select::-moz-placeholder{color:var(--text-secondary);opacity:.7}.vacancy-filters__select::placeholder{color:var(--text-secondary);opacity:.7}.vacancy-filters__select:focus{border-color:#5773ff;background-color:var(--bg-primary);box-shadow:0 0 0 4px #5773ff1a}.vacancy-filters__select[type=file]{padding:10px;cursor:pointer}.vacancy-filters__select[type=file]::file-selector-button{padding:8px 16px;border-radius:8px;border:none;background:var(--bg-secondary);color:var(--text-primary);font-weight:600;cursor:pointer;transition:background .2s;margin-right:12px;font-family:inherit}.vacancy-filters__select[type=file]::file-selector-button:hover{background:var(--border-color)}select.vacancy-filters__select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%234a4a4a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:42px;cursor:pointer}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;font-size:16px;font-weight:600;border-radius:12px;border:none;cursor:pointer;transition:all .2s ease;font-family:inherit}.vacancy-filters__button{width:100%;background:linear-gradient(120deg,#5773ff,#3d5bf3);background-size:180% 180%;color:#fff;transition:background-position .4s ease,transform .2s ease,box-shadow .2s ease}.vacancy-filters__button:hover{background-position:100% 50%;transform:translateY(-1px);box-shadow:0 4px 12px #5773ff4d}.vacancy-filters__button:active{transform:translateY(1px)}.vacancy-filters__button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.alert{padding:10px 14px;border-radius:8px;font-size:14px;animation:music-fade-up .25s ease both}.alert.alert-danger{background:#fdecea;color:#b3261e;border:1px solid #f5c2c0}.song-upload__progress{border:2px solid var(--border-color);border-radius:12px;padding:16px;background:var(--input-bg)}.song-upload__progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.song-upload__filename{font-size:14px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}.song-upload__percent{font-size:13px;font-weight:700;color:#5773ff}.song-upload__bar-track{width:100%;height:8px;border-radius:8px;background:var(--bg-secondary);overflow:hidden}.song-upload__bar-fill{height:100%;width:0%;background:linear-gradient(90deg,#5773ff,#92278f,#ec478c,#5773ff);background-size:300% 100%;animation:music-gradient-shift 2.5s linear infinite;border-radius:8px;transition:width .15s ease}.song-upload__cover-field{display:flex;flex-direction:column;gap:10px}.song-upload__cover-row{display:flex;align-items:center;gap:14px}.song-upload__cover-preview{flex-shrink:0;width:72px;height:72px;border-radius:12px;overflow:hidden;background:var(--bg-secondary);border:2px dashed var(--border-color);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:border-color .2s ease,transform .2s ease}.song-upload__cover-preview:hover{border-color:#5773ff}.song-upload__cover-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;animation:music-fade-in .25s ease both}.song-upload__cover-actions{display:flex;flex-direction:column;gap:6px}.song-upload__cover-btn{display:inline-flex;align-items:center;gap:6px;background:var(--bg-secondary);border:none;color:var(--text-primary);font-weight:600;font-size:13px;padding:8px 14px;border-radius:8px;cursor:pointer;font-family:inherit;transition:background .2s ease,transform .2s ease;width:-moz-fit-content;width:fit-content}.song-upload__cover-btn:hover{background:var(--border-color);transform:translateY(-1px)}.song-upload__cover-remove{background:none;border:none;color:var(--text-secondary);font-size:12px;text-align:left;cursor:pointer;padding:0;width:-moz-fit-content;width:fit-content;font-family:inherit;transition:color .15s ease}.song-upload__cover-remove:hover{color:#ef4444}.cover-cropper{display:flex;flex-direction:column;gap:14px;animation:music-fade-in .25s ease both}.cover-cropper__stage{position:relative;width:100%;aspect-ratio:1/1;max-width:320px;margin:0 auto;border-radius:14px;overflow:hidden;background:#000;touch-action:none;cursor:grab;box-shadow:0 8px 24px var(--shadow-color)}.cover-cropper__stage:active{cursor:grabbing}.cover-cropper__image{position:absolute;top:0;left:0;transform-origin:0 0;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;max-width:none}.cover-cropper__grid{position:absolute;inset:0;pointer-events:none;border:1px solid rgba(255,255,255,.5)}.cover-cropper__grid:before,.cover-cropper__grid:after{content:"";position:absolute;background:#ffffff59}.cover-cropper__grid:before{left:33.333%;top:0;bottom:0;width:1px;box-shadow:33.333% 0 0 #ffffff59}.cover-cropper__grid:after{top:33.333%;left:0;right:0;height:1px;box-shadow:0 33.333% 0 #ffffff59}.cover-cropper__controls{display:flex;align-items:center;gap:10px;color:var(--text-secondary)}.cover-cropper__zoom{flex:1;accent-color:#5773FF}.cover-cropper__actions{display:flex;gap:10px}.cover-cropper__actions .button{flex:1;padding:11px 20px;font-size:14px}.cover-cropper__cancel{background:var(--bg-secondary);color:var(--text-primary)}.cover-cropper__cancel:hover{background:var(--border-color)}.music-monetization{position:relative;background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;gap:18px;box-shadow:0 4px 20px var(--shadow-color);transition:background .2s ease,border-color .2s ease,box-shadow .25s ease,transform .25s ease;overflow:hidden;animation:music-fade-up .4s ease both;animation-delay:.32s}.music-monetization:before{content:"";position:absolute;top:-60px;right:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(87,115,255,.25),transparent 70%);animation:music-blob-float 9s ease-in-out infinite;pointer-events:none}.music-monetization:hover{box-shadow:0 10px 30px var(--shadow-color);transform:translateY(-2px)}.music-monetization__main{display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative}@media (max-width: 768px){.music-monetization__main{flex-direction:column;align-items:stretch}}.music-monetization__info{display:flex;flex-direction:column;gap:6px}.music-monetization__badge{display:inline-flex;align-items:center;align-self:flex-start;padding:4px 10px;border-radius:20px;background:linear-gradient(120deg,#5773ff2e,#ec478c24);color:#5773ff;font-size:12px;font-weight:700}.music-monetization__title{margin:0;font-size:20px;font-weight:700;color:var(--text-primary)}@media (max-width: 600px){.music-monetization__title{font-size:17px}}.music-monetization__balance{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--text-secondary)}.music-monetization__balance-value{font-weight:800;background:linear-gradient(120deg,#5773ff,#ec478c);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:18px}.music-monetization__withdraw-btn{width:200px!important;white-space:nowrap;padding:12px 24px;flex-shrink:0}@media (max-width: 768px){.music-monetization__withdraw-btn{width:100%}}.music-monetization__rules{position:relative;background:var(--bg-secondary);border-radius:12px;padding:14px 16px;border:1px dashed var(--border-color)}.music-monetization__rules-title{font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:6px}.music-monetization__rules-list{margin:0;padding-left:18px;font-size:13px;color:var(--text-secondary);display:flex;flex-direction:column;gap:4px;line-height:1.4}.modal-content--success{align-items:center;text-align:center;gap:6px}.modal__success-icon{color:#22c55e;margin-bottom:6px;animation:music-pop .4s cubic-bezier(.34,1.56,.64,1) both}.modal__header--center{text-align:center;padding-right:0}.modal__success-text{font-size:15px;color:var(--text-secondary);line-height:1.5;margin:0 0 20px}.music-player__icon-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s cubic-bezier(.34,1.56,.64,1)}.music-player__icon-btn:hover{background:var(--bg-secondary);color:var(--text-primary);transform:scale(1.12)}.music-player__icon-btn--like{color:var(--text-secondary)}.music-player__icon-btn--like svg{transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.music-player__icon-btn--active{color:#ec478c;background:#ec478c1f;animation:music-pop .35s ease}.music-player__icon-btn--active svg{animation:music-like-beat .45s cubic-bezier(.34,1.56,.64,1)}@keyframes music-like-beat{0%{transform:scale(1)}35%{transform:scale(1.35)}60%{transform:scale(.9)}to{transform:scale(1)}}.music-page__loader{display:flex;align-items:center;justify-content:center;min-height:60vh}.music-page__spinner{width:40px;height:40px;border:3px solid rgba(0,0,0,.1);border-top-color:currentColor;border-radius:50%;animation:music-spin .8s linear infinite}@keyframes music-spin{to{transform:rotate(360deg)}}
