.layout[data-v-d50bd5d4]{display:flex;flex-direction:column;min-height:100vh}.topbar[data-v-d50bd5d4]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-background);z-index:2000}.left[data-v-d50bd5d4]{min-width:120px;height:24px;display:flex;align-items:center}.home[data-v-d50bd5d4]{color:var(--color-heading);font-size:24px;background:transparent;border:none;padding:4px 8px;cursor:pointer;font-weight:540}.right[data-v-d50bd5d4]{display:flex;gap:12px;align-items:center}.link[data-v-d50bd5d4]{color:var(--color-heading);font-size:16px;background:transparent;border:none;padding:4px 8px;cursor:pointer}.button[data-v-d50bd5d4]{border:1px solid var(--color-border);border-radius:4px}.content[data-v-d50bd5d4]{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}.fade-enter-active[data-v-d50bd5d4],.fade-leave-active[data-v-d50bd5d4]{transition:opacity .3s ease}.fade-enter-from[data-v-d50bd5d4],.fade-leave-to[data-v-d50bd5d4]{opacity:0}.logout-overlay[data-v-d50bd5d4]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--color-background);z-index:1000}.text-fade-enter-active[data-v-d50bd5d4],.text-fade-leave-active[data-v-d50bd5d4]{transition:opacity .3s ease}.text-fade-enter-from[data-v-d50bd5d4],.text-fade-leave-to[data-v-d50bd5d4]{opacity:0}.toast-message[data-v-a17e5518]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000b3;color:#fff;padding:16px 32px;border-radius:8px;z-index:1000;font-size:1.1rem}.fade-enter-active[data-v-a17e5518],.fade-leave-active[data-v-a17e5518]{transition:opacity .3s ease}.fade-enter-from[data-v-a17e5518],.fade-leave-to[data-v-a17e5518]{opacity:0}.panel[data-v-a17e5518]{position:relative;width:min(440px,72vw);height:min(540px,92vh);border:1px solid var(--color-border);border-radius:12px;background:var(--color-background-soft);margin:0 auto;display:grid;grid-template-rows:3fr 2fr;overflow:hidden}.top[data-v-a17e5518]{display:flex;align-items:center;justify-content:center;padding-top:0}.avatar-container[data-v-a17e5518]{display:flex;flex-direction:column;align-items:center;transform:translateY(20px)}.avatar[data-v-a17e5518]{width:200px;height:200px;border-radius:50%;border:2px solid var(--color-border);background:var(--color-background);object-fit:cover;margin-bottom:30px}.title[data-v-a17e5518]{font-size:1.5rem;font-weight:700;color:var(--color-heading)}.bottom[data-v-a17e5518]{display:flex;align-items:center;padding:0 16px;height:180px;position:relative}.circle[data-v-a17e5518]{border:2px solid var(--color-border);border-radius:40px;width:80px;height:80px;background:var(--color-background);transition:all .6s cubic-bezier(.25,.8,.25,1);cursor:pointer;position:absolute}.circle img[data-v-a17e5518]{width:80px;height:80px;border:2px solid var(--color-border);border-radius:50%;object-fit:cover;position:absolute;top:-2px;z-index:2}.content[data-v-a17e5518]{opacity:0;transition:opacity .2s;font-size:22px;height:100%;display:flex;align-items:center;justify-content:center;white-space:nowrap;color:var(--color-text);font-weight:700;position:absolute;top:0;width:100%}.circle.left .content[data-v-a17e5518]{left:0;padding-left:70px;padding-right:30px}.circle.right .content[data-v-a17e5518]{right:0;padding-right:70px;padding-left:30px}.circle.left:hover .content[data-v-a17e5518],.circle.right:hover .content[data-v-a17e5518]{opacity:1}.circle.left img[data-v-a17e5518]{left:-2px}.circle.right img[data-v-a17e5518]{right:-2px}.circle.left[data-v-a17e5518]{left:22%;transform:translate(-50%);transform-origin:left center}.circle.middle[data-v-a17e5518]{left:50%;transform:translate(-50%);overflow:hidden}.circle.middle img[data-v-a17e5518]{width:100%;height:100%;border:none;border-radius:0;position:static}.circle.right[data-v-a17e5518]{left:auto;right:22%;transform:translate(50%);transform-origin:right center}.circle.left:hover~.circle[data-v-a17e5518],.circle.right:hover~.circle[data-v-a17e5518],.circle[data-v-a17e5518]:has(~.circle.left:hover),.circle[data-v-a17e5518]:has(~.circle.right:hover){opacity:0}.circle[data-v-a17e5518]:hover{opacity:1!important;z-index:10}.circle.left[data-v-a17e5518],.circle.right[data-v-a17e5518]{cursor:default}.circle.middle[data-v-a17e5518]{cursor:pointer}.circle.left[data-v-a17e5518]:hover{width:calc(50% + 80px);left:50%;transform:translate(-50%)}.circle.right[data-v-a17e5518]:hover{width:calc(50% + 80px);right:50%;transform:translate(50%)}.circle.middle[data-v-a17e5518]:hover{transform:translate(-50%) translateY(-10px)}.circle.middle:hover~.circle.right[data-v-a17e5518]{transform:translate(100px);opacity:0}.circle[data-v-a17e5518]:has(~.circle.middle:hover){transform:translate(-100px);opacity:0}.auth[data-v-4740e7f5]{width:min(440px,92vw);margin:40px auto;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;padding:24px;border:1px solid var(--color-border);border-radius:12px}.form[data-v-4740e7f5]{display:flex;flex-direction:column;gap:12px;width:100%}.label[data-v-4740e7f5]{display:flex;flex-direction:column;gap:6px}.input[data-v-4740e7f5]{height:36px;padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-heading);outline:none;transition:border-color .3s,box-shadow .3s}.input[data-v-4740e7f5]:focus{border-color:var(--color-border-hover);box-shadow:0 0 0 2px rgba(var(--color-border-hover-rgb),.2)}.action[data-v-4740e7f5]{padding:8px 16px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-background);cursor:pointer;margin-top:16px}.error[data-v-4740e7f5]{color:#d03a52;font-size:13px}.auth[data-v-e9d9013e]{width:min(440px,92vw);margin:40px auto;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;padding:24px;border:1px solid var(--color-border);border-radius:12px}.form[data-v-e9d9013e]{display:flex;flex-direction:column;gap:12px;width:100%}.label[data-v-e9d9013e]{display:flex;flex-direction:column;gap:6px}.input[data-v-e9d9013e]{height:36px;padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-heading);outline:none;transition:border-color .3s,box-shadow .3s}.input[data-v-e9d9013e]:focus{border-color:var(--color-border-hover);box-shadow:0 0 0 2px rgba(var(--color-border-hover-rgb),.2)}.action[data-v-e9d9013e]{padding:8px 16px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-background);cursor:pointer;margin-top:16px}.error[data-v-e9d9013e]{color:#d03a52;font-size:13px}.songlist-page[data-v-319952f7]{width:min(800px,92vw);margin:40px auto;padding:24px;position:relative}.top-section[data-v-319952f7]{position:sticky;top:0;z-index:90;background-color:var(--color-background);padding-top:20px;margin-top:-64px;padding-bottom:20px}.settings-container[data-v-319952f7]{position:fixed;bottom:20px;right:16px;z-index:100;display:flex;flex-direction:column;align-items:center;gap:0}.scroll-top-btn[data-v-319952f7]{width:40px;height:40px;border-radius:50%;background:var(--color-background);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;z-index:2;margin-bottom:10px}.scroll-top-btn[data-v-319952f7]:hover{background:var(--color-background-soft);transform:translateY(-2px)}.settings-btn[data-v-319952f7]{width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--color-background);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;z-index:2}.settings-btn svg[data-v-319952f7]{transition:transform .6s ease-in-out}.settings-btn.active svg[data-v-319952f7]{transform:rotate(180deg)}.settings-btn[data-v-319952f7]:hover{background:var(--color-background-soft)}.menu-options[data-v-319952f7]{width:40px;display:flex;flex-direction:column;align-items:center;gap:10px;max-height:0;opacity:0;overflow:hidden;transition:all .5s ease,overflow 0s;margin-bottom:0}.menu-options.open[data-v-319952f7]{max-height:200px;opacity:1;margin-bottom:10px;overflow:visible;transition:all .5s ease,overflow 0s .5s}.menu-item[data-v-319952f7]{width:40px;height:40px;border-radius:50%;background:var(--color-background);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.8rem;font-weight:700;color:var(--color-text);box-shadow:none;transition:all .3s}.menu-item[data-v-319952f7]:hover{background:var(--color-background-soft);transform:translateY(-2px)}.header[data-v-319952f7]{display:flex;justify-content:center;margin-bottom:30px}.avatar[data-v-319952f7]{width:240px;height:240px;border-radius:50%;border:1px solid var(--color-border);object-fit:cover;transform:translateY(-40px)}.search-container[data-v-319952f7]{display:flex;justify-content:center;gap:20px;margin-bottom:10px;margin-top:-20px}.search-input[data-v-319952f7]{width:300px;padding:8px 16px;border:1px solid var(--color-border);border-radius:20px;outline:none;font-size:1.1rem;background:var(--color-background);color:var(--color-text);transition:border-color .3s,box-shadow .3s}.search-input[data-v-319952f7]:focus{border-color:var(--color-border-hover);box-shadow:0 0 0 2px rgba(var(--color-border-hover-rgb),.2)}.random-btn[data-v-319952f7]{padding:8px 20px;background-color:var(--color-heading);color:var(--color-background);border:none;border-radius:20px;cursor:pointer;font-size:1.1rem;transition:opacity .3s}.random-btn[data-v-319952f7]:hover{opacity:.8}.song-grid[data-v-319952f7]{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;position:relative;margin-top:40px}.song-card[data-v-319952f7]{width:calc(33.333% - 14px);background:var(--color-background-soft);border:1px solid var(--color-border);border-radius:12px;padding:16px;text-align:center;transition:opacity .5s ease,transform .5s ease;cursor:pointer;position:relative;opacity:1;transform:translateY(0)}.song-card.animating[data-v-319952f7]{opacity:0;transform:translateY(20px);transition:none}.song-card[data-v-319952f7]:hover{transform:translateY(-5px);box-shadow:0 8px 16px #00000026;transition:transform .2s,box-shadow .2s}.song-card[data-v-319952f7]:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.delete-badge[data-v-319952f7]{position:absolute;top:-8px;left:-8px;width:20px;height:20px;background-color:#ff4d4f;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;box-shadow:0 2px 4px #0003;transition:transform .2s}.delete-badge[data-v-319952f7]:hover{transform:scale(1.2)}.song-title[data-v-319952f7]{margin:0 0 8px;font-size:1.1rem;color:var(--color-heading)}.song-artist[data-v-319952f7]{margin:0;font-size:.9rem;color:var(--color-text);opacity:.8}.fade-enter-active[data-v-319952f7],.fade-leave-active[data-v-319952f7]{transition:opacity .3s ease}.fade-enter-from[data-v-319952f7],.fade-leave-to[data-v-319952f7]{opacity:0}.text-fade-enter-active[data-v-319952f7],.text-fade-leave-active[data-v-319952f7]{transition:opacity .2s ease}.text-fade-enter-from[data-v-319952f7],.text-fade-leave-to[data-v-319952f7]{opacity:0}.list-enter-active[data-v-319952f7],.list-leave-active[data-v-319952f7]{transition:all .3s ease}.list-enter-from[data-v-319952f7],.list-leave-to[data-v-319952f7]{opacity:0;transform:translate(30px)}.list-leave-active[data-v-319952f7]{position:absolute}.list-move[data-v-319952f7]{transition:transform .3s ease}@media(max-width:600px){.song-card[data-v-319952f7]{width:calc(50% - 10px)}}.modal-overlay[data-v-319952f7]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#fff9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;justify-content:center;align-items:center}.modal-content[data-v-319952f7]{background:#fff;padding:30px;border-radius:16px;width:300px;box-shadow:0 10px 25px #0000001a;display:flex;flex-direction:column;gap:20px}.input-group[data-v-319952f7]{display:flex;align-items:center;gap:15px;background:var(--color-background-soft);padding:10px 15px;border-radius:12px;border:1px solid var(--color-border)}.input-group label[data-v-319952f7]{font-weight:700;color:var(--color-heading);min-width:40px}.input-group input[data-v-319952f7]{padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-text);outline:none;font-size:1rem;width:100%;transition:border-color .3s,box-shadow .3s}.input-group input[data-v-319952f7]:focus{border-color:var(--color-border-hover);box-shadow:0 0 0 2px rgba(var(--color-border-hover-rgb),.2)}.add-btn[data-v-319952f7]{background-color:var(--color-heading);color:var(--color-background);border:none;padding:12px;border-radius:25px;font-size:1rem;font-weight:700;cursor:pointer;transition:opacity .3s;margin-top:10px}.add-btn[data-v-319952f7]:hover{opacity:.9}.modal-fade-enter-active[data-v-319952f7],.modal-fade-leave-active[data-v-319952f7]{transition:opacity .3s ease}.modal-fade-enter-from[data-v-319952f7],.modal-fade-leave-to[data-v-319952f7]{opacity:0}.modal-fade-enter-active .modal-content[data-v-319952f7],.modal-fade-leave-active .modal-content[data-v-319952f7]{transition:transform .3s ease,opacity .3s ease}.modal-fade-enter-from .modal-content[data-v-319952f7],.modal-fade-leave-to .modal-content[data-v-319952f7]{transform:translateY(20px);opacity:0}.toast-container[data-v-319952f7]{position:fixed;top:80px;left:50%;transform:translate(-50%);z-index:3000;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.toast-message[data-v-319952f7]{background-color:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:10px 24px;border-radius:24px;font-size:.95rem;box-shadow:0 4px 12px #00000026;white-space:nowrap}.toast-fade-enter-active[data-v-319952f7],.toast-fade-leave-active[data-v-319952f7]{transition:all .3s cubic-bezier(.25,.8,.25,1)}.toast-fade-enter-from[data-v-319952f7],.toast-fade-leave-to[data-v-319952f7]{opacity:0;transform:translateY(-20px)}.toast-fade-move[data-v-319952f7]{transition:transform .3s ease}.avatar-upload[data-v-b0deab74]{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:16px}.avatar-preview[data-v-b0deab74]{width:80px;height:80px;border-radius:50%;object-fit:cover;cursor:pointer;border:1px solid var(--color-border);transition:opacity .3s}.avatar-preview[data-v-b0deab74]:hover{opacity:.8}.hint[data-v-b0deab74]{font-size:12px;color:#666}.auth[data-v-b0deab74]{width:min(440px,92vw);margin:40px auto;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;padding:24px;border:1px solid var(--color-border);border-radius:12px}.form[data-v-b0deab74]{display:flex;flex-direction:column;gap:12px;width:100%}.label[data-v-b0deab74]{display:flex;flex-direction:column;gap:6px}.input[data-v-b0deab74]{height:36px;padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-heading);outline:none;transition:border-color .3s,box-shadow .3s}.input[data-v-b0deab74]:focus{border-color:var(--color-border-hover);box-shadow:0 0 0 2px rgba(var(--color-border-hover-rgb),.2)}.action[data-v-b0deab74]{padding:8px 16px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-background);cursor:pointer;margin-top:16px}.error[data-v-b0deab74]{color:#d03a52;font-size:13px}.avatar-upload[data-v-945cc179]{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:16px}.avatar-preview[data-v-945cc179]{width:80px;height:80px;border-radius:50%;object-fit:cover;cursor:pointer;border:1px solid var(--color-border);transition:opacity .3s}.avatar-preview[data-v-945cc179]:hover{opacity:.8}.hint[data-v-945cc179]{font-size:12px;color:#666}.auth[data-v-945cc179]{width:min(440px,92vw);margin:40px auto;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;padding:24px;border:1px solid var(--color-border);border-radius:12px}.form[data-v-945cc179]{display:flex;flex-direction:column;gap:12px;width:100%}.label[data-v-945cc179]{display:flex;flex-direction:column;gap:6px}.input[data-v-945cc179]{height:36px;padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-heading);outline:none;transition:border-color .3s,box-shadow .3s}.input[data-v-945cc179]:focus{border-color:var(--color-border-hover);box-shadow:0 0 0 2px rgba(var(--color-border-hover-rgb),.2)}.actions[data-v-945cc179]{display:flex;gap:12px;margin-top:16px}.action[data-v-945cc179]{flex:1;padding:8px 16px;border-radius:8px;border:1px solid var(--color-border);cursor:pointer;font-size:14px}.action.primary[data-v-945cc179]{background:var(--color-heading);color:var(--color-background);border-color:var(--color-heading)}.action.secondary[data-v-945cc179]{background:var(--color-background);color:var(--color-heading)}.data-actions[data-v-945cc179]{display:flex;justify-content:space-around;width:100%;padding:10px 0;border-top:1px dashed var(--color-border);border-bottom:1px dashed var(--color-border);margin:10px 0}.action-link[data-v-945cc179]{font-size:13px;color:var(--color-heading);text-decoration:underline;cursor:pointer;background:none;border:none;padding:4px}.action-link[data-v-945cc179]:hover{opacity:.7}.error[data-v-945cc179]{color:#d03a52;font-size:13px}:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;margin:0;padding:0;font-weight:400}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media(hover:hover){a:hover{background-color:#00bd7e33}}
