*{box-sizing:border-box}img{-webkit-user-select:none;user-select:none}:root{--player-height:88px;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--brand:#ff7eb3;--brand-strong:#e94e77;--brand-strong-hover:#d84a72;--brand-hover:#f76a9f;--brand-soft:#ff9ec4;--text:#191516;--text-secondary:#5a5257;--text-muted:#6b6268;--surface:#ffffffb8}body{font-family:var(--font-sans);background-image:url(/assets/imgs/homepage/homepage.webp);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;margin:0}body.modal-open{overflow:hidden}#app{min-height:100vh}.vue-player{z-index:1200;height:var(--player-height);color:var(--text);background:#ffd6d6eb;border-top:1px solid #fff9;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0000001f}.user-avatar{width:38px;height:38px;color:var(--brand-strong);background:#ffffff8c;border:2px solid #ffffffd9;border-radius:50%;place-items:center;font-size:18px;font-weight:900;text-decoration:none;display:grid}.user-avatar:hover{border-color:var(--brand-strong)}.user-avatar{overflow:hidden}.user-avatar img{object-fit:cover;width:100%;height:100%}.auth-text-button{color:#666;text-align:center;background:0 0;width:100%;margin-top:18px;padding:0;font-size:14px;display:block}.auth-text-button:hover{color:var(--brand-strong);text-decoration:underline}.vue-player-inner{grid-template-columns:minmax(220px,1fr) minmax(360px,1.3fr) minmax(150px,.7fr);align-items:center;gap:20px;width:min(1500px,100% - 48px);height:100%;margin:0 auto;display:grid}.vue-player-now{align-items:center;gap:12px;min-width:0;display:flex}.vue-player-cover{background:var(--brand-soft);color:#fff;-webkit-user-select:none;user-select:none;border-radius:8px;flex:none;place-items:center;width:58px;height:58px;display:grid;position:relative;overflow:hidden}.vue-player-cover img{object-fit:cover;width:100%;height:100%}.vue-player-cover.clickable{cursor:pointer}.vue-player-cover-hint{color:#fff;opacity:0;background:#19191959;place-items:center;transition:opacity .18s;display:grid;position:absolute;inset:0}.vue-player-cover.clickable:hover .vue-player-cover-hint{opacity:1}.vue-player-meta{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.vue-player-meta strong,.vue-player-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vue-player-meta strong{font-size:15px}.vue-player-meta span{color:var(--text-secondary);font-size:12px}.vue-player-controls{justify-content:center;align-items:center;gap:12px;display:flex}.vue-player-button{width:38px;height:38px;color:var(--text);font-variant-emoji:text;background:0 0;border-radius:50%;place-items:center;font-size:20px;line-height:1;display:grid}.vue-player-button:hover{background:#ffc0cb59}.vue-player-progress{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;margin-top:6px;display:grid}.vue-player-time{color:var(--text-secondary);text-align:center;font-size:11px}.vue-player-range{background:linear-gradient(to right, var(--brand-soft) 0%, var(--brand-strong) var(--progress,0%), #19191929 var(--progress,0%));appearance:none;cursor:pointer;border-radius:999px;height:5px}.vue-player-range::-webkit-slider-thumb{background:var(--brand);opacity:0;appearance:none;border:0;border-radius:50%;width:14px;height:14px;transition:opacity .18s;box-shadow:0 0 0 4px #e94e7729,0 0 10px #e94e778c}.vue-player-range:hover::-webkit-slider-thumb{opacity:1}.vue-player-volume{align-items:center;gap:8px;display:flex}.vue-player-volume .vue-player-range{width:110px}.vue-player-volume-value{width:40px;color:var(--text-secondary);text-align:right;font-size:12px;font-weight:700}.vue-player-favorite{width:40px;height:40px;color:var(--text-muted);background:0 0;border:0;flex:none;place-items:center;font-size:22px;line-height:1;transition:color .18s;display:grid}.vue-player-favorite:hover,.vue-player-favorite.active{color:var(--brand-strong)}.player-loading{border:2px solid #19191940;border-top-color:var(--brand-strong);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite player-spin}@keyframes player-spin{to{transform:rotate(360deg)}}.vue-player-queue{right:max(24px,50% - 750px);bottom:calc(var(--player-height) + 12px);background:#ffd6d6eb;border:1px solid #1919191f;border-radius:12px;width:min(380px,100% - 48px);max-height:420px;position:absolute;overflow:hidden;box-shadow:0 16px 40px #0000002e}.vue-player-queue-head{border-bottom:1px solid #f3f3f3;justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.vue-player-queue-actions{align-items:center;gap:8px;display:flex}.vue-player-queue-close{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:#1919190f;border:0;border-radius:50%;place-items:center;display:grid}.vue-player-queue-close:hover{color:var(--brand-strong);background:#ff699d24}.vue-player-queue-list{max-height:340px;padding:6px;overflow-y:auto}.vue-player-queue-item{border-radius:8px;grid-template-columns:minmax(0,1fr) 80px;align-items:center;gap:4px;padding:7px;display:grid}.vue-player-queue-main{min-width:0;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:30px 42px minmax(0,1fr);align-items:center;gap:10px;padding:0;font-family:inherit;display:grid}.vue-player-queue-meta{flex-direction:column;min-width:0;display:flex}.vue-player-queue-item:hover,.vue-player-queue-item.active{background:#ffe3ed}.vue-player-queue-item img{object-fit:cover;border-radius:6px;width:42px;height:42px}.vue-player-queue-item strong,.vue-player-queue-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.functional-page{width:min(1200px,100% - 48px);min-height:calc(100vh - var(--player-height));padding:36px 0 calc(var(--player-height) + 56px);margin:0 auto}.auth-page{place-items:center;min-height:100vh;padding:32px 0;display:grid}.functional-title{letter-spacing:4px;margin:0 0 24px;font-size:42px;font-weight:900}.functional-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}.functional-card{cursor:pointer;min-width:0}.functional-cover{aspect-ratio:1;background:var(--surface);border-radius:8px;position:relative;overflow:hidden}.functional-cover img{object-fit:cover;width:100%;height:100%}.functional-card-title{text-overflow:ellipsis;white-space:nowrap;margin:10px 0 0;font-size:15px;font-weight:800;overflow:hidden}.functional-tabs{border-bottom:1px solid #f3f3f3;gap:8px;margin:20px 0;display:flex}.functional-tabs button{color:var(--text-secondary);background:0 0;border-bottom:3px solid #0000;padding:10px 16px;font-weight:800}.functional-tabs button.active{border-bottom-color:var(--brand);color:var(--text)}.functional-list{flex-direction:column;gap:10px;display:flex}.functional-row{background:var(--surface);border:1px solid #ffffffb3;border-radius:10px;grid-template-columns:42px 56px minmax(0,1fr) 110px 90px;align-items:center;gap:12px;min-height:70px;padding:10px 14px;display:grid}.functional-row.has-add-action{grid-template-columns:42px 56px minmax(0,1fr) 110px 90px 90px}.song-action-group{justify-content:flex-end;align-items:center;gap:2px;display:flex}.functional-row.playing{background:#ffc0cb47;border-color:#ff699d80}.functional-row img{object-fit:cover;border-radius:8px;width:56px;height:56px}.functional-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row-play{background:var(--brand);color:#fff;font-variant-emoji:text;border-radius:50%;place-items:center;width:34px;height:34px;line-height:1;display:grid}.search-input{width:100%;height:52px;color:var(--text);background:#ffffffb8;border:1px solid #19191929;border-radius:10px;padding:0 18px;font-size:16px}.form-notice{color:#8a651c;text-align:left;background:#fff4d6;border-radius:10px;align-items:center;gap:6px;margin:0;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.no-result{color:var(--text-secondary);text-align:center;padding:40px 20px}.mine-user{color:var(--text-secondary);margin:0 0 12px}.logout-button{color:var(--text-secondary);background:#1919190f;border-radius:999px;padding:8px 16px;font-weight:700}.profile-page{text-align:center;flex-direction:column;align-items:center;display:flex}.profile-avatar{width:96px;height:96px;color:var(--brand-strong);background:#ffffff8c;border:3px solid #ffffffd9;border-radius:50%;place-items:center;font-size:40px;font-weight:900;display:grid}.not-found-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.not-found-code{color:var(--brand);margin:0;font-size:110px;font-weight:900;line-height:1}.functional-empty{text-align:center;color:var(--text-secondary);border:1px dashed #19191933;border-radius:12px;padding:60px 20px}input:focus-visible,button:focus-visible,[role=button]:focus-visible{outline-offset:2px;outline:3px solid #ff5e9452}button{border:none}button:not(:disabled),[role=button]:not([aria-disabled=true]){cursor:pointer}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width<=960px){.functional-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.vue-player-inner{grid-template-columns:minmax(180px,1fr) minmax(260px,1.2fr)}.vue-player-volume{display:none}.functional-row.has-add-action{grid-template-columns:42px 52px minmax(0,1fr) 90px 90px}.functional-row.has-add-action>span:last-of-type{display:none}}@media (width<=700px){.functional-row.has-add-action{grid-template-columns:36px 48px minmax(0,1fr) 80px}:root{--player-height:142px}.functional-page{width:calc(100% - 28px)}.functional-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vue-player{height:var(--player-height)}.vue-player-inner{grid-template-columns:1fr;align-content:center;gap:6px;width:calc(100% - 28px)}.vue-player-now{justify-content:center}.functional-row{grid-template-columns:36px 48px minmax(0,1fr) 42px}.functional-row span{display:none}}@media (width<=1100px){body .main,body .cont1,body .cont2,body .cont3,body .cont4{width:100%}body .main{height:auto;min-height:0;overflow:visible}body .cont2,body .cont3{height:auto;min-height:0}body .cont2-areas,body .cont4-charts{width:100%}body .cont2-areas,body .cont3-songs,body .cont4-charts{flex-wrap:wrap}body .cont2-area,body .cont3-song,body .cont4-chart{width:100%;max-width:100%}body .cont2-area{flex-direction:column;align-items:center;display:flex}body .cont2-shell,body .cont2-word{margin-left:auto;margin-right:auto}body .carousel,body .carousel-img{width:100%}body .cont3-songs{width:100%;margin-left:0}}@media (width<=960px){.functional-row{grid-template-columns:42px 52px minmax(0,1fr) 70px}.functional-row span:last-child{display:none}}@media (width<=700px){body .cont3-word,body .cont3-song_name,body .cont3-song_singer,body .cont4-chart_list,body .cont4-chart_song,body .cont4-chart_song_meg,body .cont4-chart_song_name{width:100%}}@media (width<=380px){body .login-container,body .register-container{width:calc(100% - 28px);max-width:350px}}.panel-enter-active,.panel-leave-active{transition:transform .4s cubic-bezier(.22,1,.36,1)}.panel-enter-from,.panel-leave-to{transform:translateY(100%)}.lyric-panel[data-v-2663bb91]{top:0;right:0;bottom:var(--player-height);z-index:1100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-user-select:none;user-select:none;background:#ffd6d6eb;flex-direction:column;display:flex;position:fixed;left:0}.lyric-panel-head[data-v-2663bb91]{flex:none;align-items:center;padding:14px 24px;display:flex}.lyric-panel-close[data-v-2663bb91]{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;place-items:center;transition:color .2s,transform .2s;display:grid}.lyric-panel-close[data-v-2663bb91]:hover{color:var(--brand-strong);transform:translateY(2px)}.lyric-panel-body[data-v-2663bb91]{flex-direction:column;flex:auto;min-height:0;padding:0 40px 16px;display:flex;overflow:hidden}.lyric-panel-main[data-v-2663bb91]{flex:1 1 0;justify-content:center;gap:250px;min-height:0;margin-top:90px;display:flex}.lyric-panel-visual[data-v-2663bb91]{flex:none;justify-content:center;align-items:center;display:flex}.disc[data-v-2663bb91]{border-radius:50%;width:400px;height:400px;animation:20s linear infinite paused disc-spin-2663bb91;position:relative;box-shadow:0 18px 40px #5d364640}.disc.playing[data-v-2663bb91]{animation-play-state:running}.disc img[data-v-2663bb91]{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.disc-hole[data-v-2663bb91]{background:#ffd6d6;border:4px solid #e94e774d;border-radius:50%;width:48px;height:48px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes disc-spin-2663bb91{to{transform:rotate(360deg)}}.lyric-panel-lyrics[data-v-2663bb91]{flex-direction:column;flex:0 640px;min-width:0;min-height:0;display:flex}.lyric-panel-lyrics-head[data-v-2663bb91]{flex:none;margin-bottom:16px}.lyric-panel-lyrics-head strong[data-v-2663bb91]{text-overflow:ellipsis;white-space:nowrap;font-size:40px;display:block;overflow:hidden}.lyric-panel-lyrics-head span[data-v-2663bb91]{color:var(--text-secondary);font-size:18px}.lyric-scroll[data-v-2663bb91]{scrollbar-width:none;flex:1 1 0;min-height:0;padding-right:12px;overflow-y:auto}.lyric-scroll[data-v-2663bb91]::-webkit-scrollbar{display:none}.lyric-scroll ul[data-v-2663bb91]{margin:0;padding:0;list-style:none}.lyric-scroll li[data-v-2663bb91]{color:var(--text-secondary);border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:15px;line-height:36px;transition:color .2s,background .2s,font-size .3s cubic-bezier(.22,1,.36,1);display:flex}.lyric-scroll li[data-v-2663bb91]:hover:not(.active){background:#ff7eb314}.lyric-scroll li.active[data-v-2663bb91]{color:var(--brand-strong);font-size:25px;font-weight:800}.lyric-char[data-v-2663bb91]{color:var(--text-secondary)}.lyric-line-text[data-v-2663bb91]{overflow-wrap:break-word;word-break:break-word;flex:1 1 0;min-width:0}.lyric-line-play[data-v-2663bb91]{width:28px;height:28px;color:var(--brand-strong);cursor:pointer;opacity:0;background:#ff7eb31f;border:0;border-radius:50%;flex:none;place-items:center;transition:opacity .18s,background .18s;display:grid}.lyric-scroll li:hover:not(.active) .lyric-line-play[data-v-2663bb91]{opacity:1}.lyric-line-play[data-v-2663bb91]:hover{background:#ff7eb33d}.lyric-empty[data-v-2663bb91]{color:var(--text-muted);text-align:center;margin:0;padding:32px 0;font-size:50px}.lyric-panel-spectrum[data-v-2663bb91]{flex:0 0 25%;justify-content:center;align-items:stretch;min-height:0;padding-top:8px;display:flex}.spectrum[data-v-2663bb91]{width:min(100%,900px);height:100%;display:block}.app-header[data-v-ed6bb3dd]{z-index:100;-webkit-backdrop-filter:blur(14px);background:#ffd6d6d1;border-bottom:1px solid #0000000d;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 14px #5d364614}.app-header-top[data-v-ed6bb3dd]{justify-content:space-between;align-items:center;gap:24px;width:min(1320px,100% - 48px);height:72px;margin:0 auto;display:flex}.app-header-logo[data-v-ed6bb3dd]{cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:10px;height:56px;text-decoration:none;display:flex}.app-header-logo-mark[data-v-ed6bb3dd]{background:linear-gradient(135deg, var(--brand-soft), var(--brand-strong));color:#fff;border-radius:11px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 6px 14px #e94e7747}.app-header-logo-text[data-v-ed6bb3dd]{color:var(--text);letter-spacing:2px;font-size:22px;font-weight:900}.app-header-column[data-v-ed6bb3dd]{align-items:center;gap:12px;display:flex}.app-header-col[data-v-ed6bb3dd]{min-width:86px;height:36px;color:var(--text);cursor:pointer;text-align:center;appearance:none;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:0 12px;font-family:inherit;font-size:16px;font-weight:800;line-height:34px;text-decoration:none;transition:color .15s,border-color .15s;display:flex;position:relative}.app-header-col[data-v-ed6bb3dd]:hover{color:var(--brand-strong);border-color:#1919192e}.app-header-col.is-active[data-v-ed6bb3dd]{color:var(--brand-strong)}.app-header-col.is-active[data-v-ed6bb3dd]:after{content:"";background:var(--brand-strong);border-radius:999px;width:16px;height:3px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.app-header-search[data-v-ed6bb3dd]{width:300px;height:36px;position:relative}.app-header-input[data-v-ed6bb3dd]{background-color:#fff9;border:1px solid #1919191f;border-radius:8px;outline:none;width:100%;height:36px;padding-left:14px;padding-right:36px;font-size:14px}.app-header-search-btn[data-v-ed6bb3dd]{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;place-items:center;transition:color .2s;display:grid;position:absolute;top:2px;right:6px}.app-header-search-btn[data-v-ed6bb3dd]:hover{color:var(--brand-strong)}.header-search-panel[data-v-ed6bb3dd]{z-index:130;background:#fffafcfa;border:1px solid #ffffffd9;border-radius:12px;width:100%;max-height:420px;padding:8px;position:absolute;top:44px;left:0;overflow:auto;box-shadow:0 18px 40px #5d364633}.header-search-panel-title[data-v-ed6bb3dd]{color:var(--text-secondary);padding:7px 9px;font-size:12px;font-weight:800}.header-search-suggestion[data-v-ed6bb3dd],.header-search-history[data-v-ed6bb3dd],.header-search-empty[data-v-ed6bb3dd]{width:100%;color:var(--text);text-align:left;background:0 0;border-radius:8px}.header-search-suggestion[data-v-ed6bb3dd]{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px;display:grid}.header-search-suggestion[data-v-ed6bb3dd]:hover,.header-search-history[data-v-ed6bb3dd]:hover{background:#ff7eb31f}.header-search-suggestion img[data-v-ed6bb3dd]{object-fit:cover;border-radius:7px;width:38px;height:38px}.header-search-suggestion span[data-v-ed6bb3dd]{flex-direction:column;min-width:0;display:flex}.header-search-suggestion strong[data-v-ed6bb3dd],.header-search-suggestion small[data-v-ed6bb3dd]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.header-search-suggestion small[data-v-ed6bb3dd],.header-search-suggestion em[data-v-ed6bb3dd]{color:var(--text-secondary);font-size:11px;font-style:normal}.header-search-history[data-v-ed6bb3dd]{align-items:center;gap:8px;padding:9px;display:flex}.header-search-empty[data-v-ed6bb3dd]{color:var(--text-secondary);padding:14px 9px;font-size:13px;display:block}.search-panel-enter-active[data-v-ed6bb3dd],.search-panel-leave-active[data-v-ed6bb3dd]{transition:opacity .15s,transform .15s}.search-panel-enter-from[data-v-ed6bb3dd],.search-panel-leave-to[data-v-ed6bb3dd]{opacity:0;transform:translateY(-5px)}.app-header-login[data-v-ed6bb3dd]{flex:none;align-items:center;gap:8px;display:flex}.app-header-login-link[data-v-ed6bb3dd]{border:1px solid var(--brand);color:var(--brand-strong);cursor:pointer;background:0 0;border-radius:999px;padding:7px 16px;font-size:14px;font-weight:800;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.app-header-login-link[data-v-ed6bb3dd]:hover{background:var(--brand);color:#fff}.app-header-burger[data-v-ed6bb3dd]{display:none}.app-header-line[data-v-ed6bb3dd]{background-color:#f3f3f3;width:min(1320px,100% - 48px);height:2px;margin:0 auto}.app-header-menu[data-v-ed6bb3dd]{text-align:center;justify-content:space-around;width:min(720px,100% - 48px);height:36px;margin:12px auto 0;display:flex}.app-header-menu-item[data-v-ed6bb3dd]{color:var(--text);cursor:pointer;text-align:center;appearance:none;background:0 0;border:0;margin:0;padding:0;font-family:inherit;font-size:16px;font-weight:900;line-height:36px;text-decoration:none;transition:color .15s;position:relative}.app-header-menu-item[data-v-ed6bb3dd]:hover,.app-header-menu-item.is-active[data-v-ed6bb3dd]{color:var(--brand-strong)}.app-header-menu-item.is-active[data-v-ed6bb3dd]:after{content:"";background:var(--brand-strong);border-radius:999px;width:18px;height:3px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}@media (width<=1100px){.app-header-top[data-v-ed6bb3dd]{padding:0 12px}.app-header-search[data-v-ed6bb3dd]{width:min(350px,28vw)}}@media (width<=900px){.app-header-top[data-v-ed6bb3dd]{flex-wrap:wrap;height:auto;padding:8px 0}.app-header-search[data-v-ed6bb3dd]{width:100%;margin-top:8px}.app-header-top[data-v-ed6bb3dd]{flex-wrap:nowrap;gap:10px;height:60px;padding:0 12px}.app-header-logo[data-v-ed6bb3dd]{gap:8px;height:48px}.app-header-logo-mark[data-v-ed6bb3dd]{border-radius:9px;width:34px;height:34px}.app-header-logo-text[data-v-ed6bb3dd]{letter-spacing:1px;font-size:19px}.app-header-login[data-v-ed6bb3dd]{margin-left:auto}.app-header-burger[data-v-ed6bb3dd]{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.app-header-search[data-v-ed6bb3dd],.app-header-column[data-v-ed6bb3dd],.app-header-line[data-v-ed6bb3dd],.app-header-menu[data-v-ed6bb3dd]{display:none}.app-header.menu-open .app-header-search[data-v-ed6bb3dd],.app-header.menu-open .app-header-column[data-v-ed6bb3dd],.app-header.menu-open .app-header-line[data-v-ed6bb3dd],.app-header.menu-open .app-header-menu[data-v-ed6bb3dd]{display:flex}.app-header.menu-open .app-header-top[data-v-ed6bb3dd]{flex-wrap:wrap;height:auto;padding-bottom:12px}.app-header.menu-open .app-header-search[data-v-ed6bb3dd]{order:4;width:100%;height:42px;margin:10px 0 0}.app-header.menu-open .app-header-input[data-v-ed6bb3dd]{height:42px}.app-header.menu-open .app-header-column[data-v-ed6bb3dd]{flex-wrap:wrap;order:5;gap:4px;width:100%;margin-top:10px}.app-header.menu-open .app-header-col[data-v-ed6bb3dd]{flex:auto;height:44px;font-size:15px;line-height:44px}.app-header.menu-open .app-header-menu[data-v-ed6bb3dd]{flex-wrap:wrap;margin-top:8px;padding-bottom:10px}.app-header.menu-open .app-header-menu-item[data-v-ed6bb3dd]{line-height:38px}}.app-footer[data-v-9872f810]{padding-bottom:calc(var(--player-height) + 14px);-webkit-backdrop-filter:blur(14px);background:#ffd6d6d1;border-top:1px solid #fff9;margin-top:24px}.app-footer-inner[data-v-9872f810]{justify-content:space-between;align-items:flex-start;gap:24px;width:min(1320px,100% - 48px);margin:0 auto;padding:16px 0 12px;display:flex}.app-footer-brand[data-v-9872f810]{flex-direction:column;gap:10px;min-width:0;display:flex}.app-footer-logo[data-v-9872f810]{align-items:center;gap:10px;text-decoration:none;display:flex}.app-footer-logo-mark[data-v-9872f810]{background:linear-gradient(135deg, var(--brand-soft), var(--brand-strong));color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 6px 14px #e94e7747}.app-footer-logo-text[data-v-9872f810]{color:var(--text);letter-spacing:2px;font-size:20px;font-weight:900}.app-footer-desc[data-v-9872f810]{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.app-footer-links[data-v-9872f810]{flex-wrap:wrap;align-items:center;gap:6px 20px;padding-top:6px;display:flex}.app-footer-links a[data-v-9872f810]{color:var(--text);font-size:14px;font-weight:700;text-decoration:none;transition:color .15s}.app-footer-links a[data-v-9872f810]:hover{color:var(--brand-strong)}.app-footer-bottom[data-v-9872f810]{border-top:1px solid #19191914;width:min(1320px,100% - 48px);margin:0 auto;padding:10px 0 2px}.app-footer-bottom p[data-v-9872f810]{color:var(--text-muted);text-align:center;margin:0;font-size:13px}@media (width<=720px){.app-footer-inner[data-v-9872f810]{flex-direction:column;gap:16px}.app-footer-links[data-v-9872f810]{padding-top:0}}.app-shell[data-v-8e39cecc]{min-height:100vh;padding-top:var(--header-height,0px);padding-bottom:0}.app-shell.has-player[data-v-8e39cecc]{padding-bottom:0}.catalog-state[data-v-8e39cecc]{width:min(680px,100% - 32px);color:var(--text);text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffad;border:1px solid #ffffffc7;border-radius:24px;justify-items:center;gap:12px;margin:72px auto;padding:52px 28px;display:grid;box-shadow:0 20px 46px #5d36461f}.catalog-state h1[data-v-8e39cecc],.catalog-state p[data-v-8e39cecc]{margin:0}.catalog-state p[data-v-8e39cecc]{color:var(--text-secondary)}.catalog-state button[data-v-8e39cecc]{background:var(--brand-strong);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:999px;margin-top:8px;padding:11px 24px;font-weight:800}.catalog-state-spinner[data-v-8e39cecc]{border:4px solid #e94e772e;border-top-color:var(--brand-strong);border-radius:50%;width:34px;height:34px;animation:.85s linear infinite catalog-spin-8e39cecc}@keyframes catalog-spin-8e39cecc{to{transform:rotate(360deg)}}.back-top-button[data-v-8e39cecc]{right:22px;bottom:calc(var(--player-height) + 18px);z-index:1000;width:46px;height:46px;color:var(--brand-strong-hover);background:#ffd6d6eb;border:1px solid #ffffffb3;border-radius:50%;place-items:center;font-size:24px;font-weight:900;transition:transform .2s,background .2s;display:grid;position:fixed;box-shadow:0 10px 24px #5d36462e}.back-top-button.is-auth[data-v-8e39cecc]{bottom:22px}.back-top-button[data-v-8e39cecc]:hover{background:#ffbbbbf5;transform:translateY(-3px)}.page-notice[data-v-8e39cecc]{top:calc(var(--header-height,0px) + 18px);z-index:4000;color:#fff;background:#191919e0;border-radius:999px;align-items:center;gap:8px;padding:12px 22px;font-size:14px;font-weight:700;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0003}.page-notice.is-success[data-v-8e39cecc]{background:#2ea043eb}.page-notice.is-error[data-v-8e39cecc]{background:#dc3545eb}.notice-enter-active[data-v-8e39cecc],.notice-leave-active[data-v-8e39cecc]{transition:opacity .25s,transform .25s}.notice-enter-from[data-v-8e39cecc],.notice-leave-to[data-v-8e39cecc]{opacity:0;transform:translate(-50%,-8px)}.app-icon[data-v-b228d608]{vertical-align:-.125em;flex-shrink:0;display:inline-block}.add-to-playlist-trigger[data-v-b0c89c40]{width:36px;height:36px;min-height:36px;color:var(--text-muted);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .18s;display:inline-flex}.add-to-playlist-trigger[data-v-b0c89c40]:hover{color:var(--brand-strong)}.add-to-playlist-trigger.is-compact[data-v-b0c89c40]{width:40px;height:40px;min-height:40px;color:var(--text-muted);background:0 0;border:0;padding:0}.add-to-playlist-trigger.is-compact[data-v-b0c89c40]:hover{color:var(--brand-strong)}.playlist-dialog-backdrop[data-v-b0c89c40]{z-index:3000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1915166b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.playlist-dialog[data-v-b0c89c40]{background:#fff8fb;border:1px solid #fffc;border-radius:18px;width:min(460px,100%);max-height:min(680px,100vh - 40px);padding:22px;overflow:auto;box-shadow:0 24px 70px #56233a3d}.playlist-dialog-head[data-v-b0c89c40]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.playlist-dialog-head h2[data-v-b0c89c40],.playlist-dialog-head p[data-v-b0c89c40]{margin:0}.playlist-dialog-head h2[data-v-b0c89c40]{font-size:20px}.playlist-dialog-head p[data-v-b0c89c40]{color:var(--text-secondary);margin-top:5px;font-size:13px}.playlist-dialog-head>button[data-v-b0c89c40]{width:34px;height:34px;color:var(--text-secondary);background:#1919190f;border-radius:50%;flex:none;place-items:center;display:grid}.playlist-dialog-list[data-v-b0c89c40]{gap:8px;max-height:280px;margin:20px 0;display:grid;overflow:auto}.playlist-dialog-item[data-v-b0c89c40]{width:100%;color:var(--text);text-align:left;background:#ffffffb8;border-radius:10px;grid-template-columns:48px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:8px;display:grid}.playlist-dialog-item[data-v-b0c89c40]:hover{background:#ff7eb321}.playlist-dialog-item img[data-v-b0c89c40]{object-fit:cover;border-radius:8px;width:48px;height:48px}.playlist-dialog-item span[data-v-b0c89c40]{flex-direction:column;gap:3px;min-width:0;display:flex}.playlist-dialog-item strong[data-v-b0c89c40],.playlist-dialog-item small[data-v-b0c89c40]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.playlist-dialog-item small[data-v-b0c89c40],.playlist-dialog-empty[data-v-b0c89c40]{color:var(--text-secondary)}.playlist-dialog-empty[data-v-b0c89c40]{text-align:center;background:#ff7eb314;border-radius:10px;margin:20px 0;padding:18px}.playlist-create-form[data-v-b0c89c40]{border-top:1px solid #19191914;padding-top:18px}.playlist-create-form label[data-v-b0c89c40]{margin-bottom:8px;font-weight:800;display:block}.playlist-create-form>div[data-v-b0c89c40]{gap:8px;display:flex}.playlist-create-form input[data-v-b0c89c40]{border:1px solid #19191924;border-radius:9px;outline:none;flex:1;min-width:0;height:42px;padding:0 12px}.playlist-create-form input[data-v-b0c89c40]:focus{border-color:var(--brand-strong);box-shadow:0 0 0 3px #e94e771f}.playlist-create-form button[data-v-b0c89c40]{background:var(--brand-strong);color:#fff;border-radius:9px;padding:0 16px;font-weight:800}.playlist-dialog-error[data-v-b0c89c40]{color:#c5354e;margin:8px 0 0;font-size:13px;font-weight:700}.playlist-dialog-enter-active[data-v-b0c89c40],.playlist-dialog-leave-active[data-v-b0c89c40]{transition:opacity .18s}.playlist-dialog-enter-from[data-v-b0c89c40],.playlist-dialog-leave-to[data-v-b0c89c40]{opacity:0}@media (width<=560px){.playlist-create-form>div[data-v-b0c89c40]{flex-direction:column}.playlist-create-form button[data-v-b0c89c40]{height:42px}}.favorite-song-button[data-v-29e0630e]{width:36px;height:36px;color:var(--text-muted);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;transition:color .18s;display:inline-grid}.favorite-song-button[data-v-29e0630e]:hover,.favorite-song-button.active[data-v-29e0630e]{color:var(--brand-strong)}.favorite-song-button.is-compact[data-v-29e0630e]{width:40px;height:40px}
