.navbar[data-v-af65e17e]{position:fixed;top:0;left:0;right:0;height:60px;background:#faf8f5d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:1000;transition:all .3s ease}.navbar--scrolled[data-v-af65e17e]{background:#faf8f5f2}.navbar__container[data-v-af65e17e]{max-width:1200px;height:100%;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.navbar__logo[data-v-af65e17e]{cursor:pointer;display:flex;align-items:center;transition:transform .3s ease}.navbar__logo[data-v-af65e17e]:hover{transform:scale(1.05)}.logo-icon[data-v-af65e17e]{width:28px;height:28px;color:#c4a4a4;transition:color .3s ease}.navbar__logo:hover .logo-icon[data-v-af65e17e]{color:#d4a4a4}.navbar__menu[data-v-af65e17e]{display:flex;align-items:center;gap:32px}.navbar__menu-item[data-v-af65e17e]{font-size:14px;font-weight:300;color:#9a9a9a;letter-spacing:.5px;position:relative;transition:color .3s ease}.navbar__menu-item[data-v-af65e17e]:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:#e8d4d0;transition:width .3s ease}.navbar__menu-item[data-v-af65e17e]:hover{color:#d4a4a4}.navbar__menu-item[data-v-af65e17e]:hover:after{width:100%}.navbar__menu-item.router-link-active[data-v-af65e17e]{color:#c4a4a4}.navbar__menu-item.router-link-active[data-v-af65e17e]:after{width:100%}.navbar__hamburger[data-v-af65e17e]{display:none;flex-direction:column;justify-content:center;align-items:center;width:32px;height:32px;background:transparent;gap:5px;padding:4px}.navbar__hamburger span[data-v-af65e17e]{display:block;width:20px;height:1.5px;background:#9a9a9a;transition:all .3s ease;border-radius:1px}.navbar__hamburger--active span[data-v-af65e17e]:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.navbar__hamburger--active span[data-v-af65e17e]:nth-child(2){opacity:0}.navbar__hamburger--active span[data-v-af65e17e]:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.navbar__mobile-overlay[data-v-af65e17e]{display:none}@media (max-width: 768px){.navbar__hamburger[data-v-af65e17e]{display:flex}.navbar__menu[data-v-af65e17e]{position:fixed;top:60px;left:0;right:0;background:#faf8f5fa;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);flex-direction:column;padding:24px 0;gap:0;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease}.navbar__menu--open[data-v-af65e17e]{transform:translateY(0);opacity:1;visibility:visible}.navbar__menu-item[data-v-af65e17e]{padding:16px 24px;width:100%;text-align:center;font-size:15px;border-bottom:1px solid rgba(232,212,208,.2)}.navbar__menu-item[data-v-af65e17e]:after{display:none}.navbar__menu-item[data-v-af65e17e]:hover{background:#e8d4d01a}.navbar__mobile-overlay[data-v-af65e17e]{display:block;position:fixed;top:60px;left:0;right:0;bottom:0;background:#0000001a}}.fade-enter-active[data-v-af65e17e],.fade-leave-active[data-v-af65e17e]{transition:opacity .3s ease}.fade-enter-from[data-v-af65e17e],.fade-leave-to[data-v-af65e17e]{opacity:0}.preloader[data-v-25b8cf9b]{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#faf8f5;display:flex;align-items:center;justify-content:center;z-index:9999}.preloader-content[data-v-25b8cf9b]{display:flex;flex-direction:column;align-items:center;gap:24px}.heart-icon[data-v-25b8cf9b]{width:48px;height:48px;color:#e8d5d5;animation:heartbeat-25b8cf9b 1.5s ease-in-out infinite,breathe-25b8cf9b 3s ease-in-out infinite}.loading-text[data-v-25b8cf9b]{font-size:14px;color:#9a9a9a;letter-spacing:2px;animation:textPulse-25b8cf9b 2s ease-in-out infinite}@keyframes heartbeat-25b8cf9b{0%,to{transform:scale(1)}15%{transform:scale(1.12)}30%{transform:scale(1)}45%{transform:scale(1.08)}60%{transform:scale(1)}}@keyframes breathe-25b8cf9b{0%,to{opacity:.7}50%{opacity:1}}@keyframes textPulse-25b8cf9b{0%,to{opacity:.6}50%{opacity:1}}.preloader-fade-enter-active[data-v-25b8cf9b]{animation:fadeIn-25b8cf9b .3s ease}.preloader-fade-leave-active[data-v-25b8cf9b]{animation:fadeOut-25b8cf9b .5s ease}@keyframes fadeIn-25b8cf9b{0%{opacity:0}to{opacity:1}}@keyframes fadeOut-25b8cf9b{0%{opacity:1}to{opacity:0}}.music-player[data-v-e00e4be0]{position:fixed;bottom:20px;right:20px;background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000026;z-index:1000;min-width:200px;overflow:hidden}.player-main[data-v-e00e4be0]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;transition:background .2s ease}.player-main[data-v-e00e4be0]:hover{background:#f5f5f5}.track-info[data-v-e00e4be0]{display:flex;align-items:center;gap:8px}.track-icon[data-v-e00e4be0]{font-size:18px}.track-name[data-v-e00e4be0]{font-size:14px;color:#333;font-weight:500}.track-index[data-v-e00e4be0]{font-size:12px;color:#999}.player-status[data-v-e00e4be0]{font-size:16px}.playing[data-v-e00e4be0]{color:#667eea}.paused[data-v-e00e4be0],.loading[data-v-e00e4be0]{color:#999}.player-controls[data-v-e00e4be0]{padding:12px 16px;border-top:1px solid #eee;background:#fafafa}.controls-top[data-v-e00e4be0]{display:flex;justify-content:center;gap:15px;margin-bottom:12px}.ctrl-btn[data-v-e00e4be0]{width:36px;height:36px;border:none;background:#f0f0f0;border-radius:50%;cursor:pointer;font-size:14px;transition:all .2s ease}.ctrl-btn[data-v-e00e4be0]:hover{background:#e0e0e0;transform:scale(1.1)}.play-btn[data-v-e00e4be0]{width:44px;height:44px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:16px}.play-btn[data-v-e00e4be0]:hover{background:linear-gradient(135deg,#5a6fd6,#6a4192)}.volume-control[data-v-e00e4be0]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.volume-icon[data-v-e00e4be0]{font-size:14px}.volume-slider[data-v-e00e4be0]{flex:1;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#e0e0e0;border-radius:2px;cursor:pointer}.volume-slider[data-v-e00e4be0]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:#667eea;border-radius:50%;cursor:pointer}.volume-value[data-v-e00e4be0]{font-size:12px;color:#666;min-width:35px}.playlist-container[data-v-e00e4be0]{margin-top:10px}.playlist-header[data-v-e00e4be0]{font-size:12px;color:#999;margin-bottom:8px}.playlist-scroll[data-v-e00e4be0]{max-height:200px;overflow-y:auto}.playlist-item[data-v-e00e4be0]{display:flex;align-items:center;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .2s ease}.playlist-item[data-v-e00e4be0]:hover{background:#f5f5f5}.playlist-item.active[data-v-e00e4be0]{background:linear-gradient(135deg,#667eea1a,#764ba21a)}.item-index[data-v-e00e4be0]{width:25px;font-size:12px;color:#999}.item-name[data-v-e00e4be0]{flex:1;font-size:13px;color:#333}.playing-icon[data-v-e00e4be0]{font-size:12px;color:#667eea}@media (max-width: 480px){.music-player[data-v-e00e4be0]{bottom:10px;right:10px;left:10px;min-width:auto}}#app{width:100%;min-height:100vh;background:var(--color-bg)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#faf8f5;color:#6b6b6b;line-height:1.8;letter-spacing:.02em}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:#faf8f5;border-radius:10px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#d4c4c4,#e8d5d5);border-radius:10px;transition:background .3s ease}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#c4b4b4,#d4c4c4)}::selection{background:#e8d5d566;color:#3d3d3d}a{text-decoration:none;color:inherit;transition:color .3s ease}a:hover{color:#b4a4a4}button{font-family:inherit;font-weight:400;border:none;cursor:pointer;transition:all .3s ease}input,textarea{font-family:inherit;font-weight:300;border:none;outline:none;background:transparent;transition:all .3s ease}h1,h2,h3,h4,h5,h6{color:#3d3d3d;font-weight:400;letter-spacing:.03em}h1{font-weight:500}h2{font-weight:450}p{font-weight:300;line-height:1.9}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-fade-enter-active{transition:all .3s ease-out}.slide-fade-leave-active{transition:all .3s ease-in}.slide-fade-enter-from{opacity:0;transform:translateY(20px)}.slide-fade-leave-to{opacity:0;transform:translateY(-20px)}.page-flip-enter-active{animation:pageFlipIn .5s cubic-bezier(.4,0,.2,1)}.page-flip-leave-active{animation:pageFlipOut .5s cubic-bezier(.4,0,.2,1)}@keyframes pageFlipIn{0%{opacity:0;transform:perspective(1200px) rotateY(15deg) translate(30px)}50%{opacity:.5}to{opacity:1;transform:perspective(1200px) rotateY(0) translate(0)}}@keyframes pageFlipOut{0%{opacity:1;transform:perspective(1200px) rotateY(0) translate(0)}50%{opacity:.5}to{opacity:0;transform:perspective(1200px) rotateY(-15deg) translate(-30px)}}.scale-fade-enter-active,.scale-fade-leave-active{transition:all .3s ease}.scale-fade-enter-from,.scale-fade-leave-to{opacity:0;transform:scale(.95)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes heartbeat{0%,to{transform:scale(1)}25%{transform:scale(1.08)}50%{transform:scale(1)}75%{transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-4px) rotate(.5deg)}50%{transform:translateY(-8px) rotate(0)}75%{transform:translateY(-4px) rotate(-.5deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes breathe{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.02);opacity:1}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes rotateIn{0%{opacity:0;transform:rotate(-10deg) scale(.9)}to{opacity:1;transform:rotate(0) scale(1)}}.animate-fade-in{animation:fadeIn .4s ease forwards}.animate-fade-in-up{animation:fadeInUp .4s ease forwards}.animate-fade-in-down{animation:fadeInDown .4s ease forwards}.animate-fade-in-left{animation:fadeInLeft .4s ease forwards}.animate-fade-in-right{animation:fadeInRight .4s ease forwards}.animate-heartbeat{animation:heartbeat 2.5s ease-in-out infinite}.animate-float{animation:float 4s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-breathe{animation:breathe 3s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent 0%,rgba(232,213,213,.3) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 2s ease-in-out infinite}.animate-slide-in-right{animation:slideInFromRight .4s ease forwards}.animate-slide-in-left{animation:slideInFromLeft .4s ease forwards}.animate-rotate-in{animation:rotateIn .4s ease forwards}:root{--color-bg: #FAF8F5;--color-bg-secondary: #FEFEFE;--color-bg-tertiary: #F5F3F0;--color-accent: #E8D5D5;--color-accent-light: #F0E5E5;--color-accent-lighter: #F8F2F2;--color-accent-dark: #D4C4C4;--color-pink: #C8A0A0;--color-pink-light: #E8D5D5;--color-pink-dark: #B08080;--color-text: #6B6B6B;--color-text-light: #9A9A9A;--color-text-lighter: #C4C4C4;--color-title: #3D3D3D;--color-title-light: #5A5A5A;--color-border: #E8E8E8;--color-border-light: #F0F0F0;--color-white: #FEFEFE;--color-shadow: rgba(61, 61, 61, .04);--color-shadow-hover: rgba(61, 61, 61, .08);--shadow-xs: 0 1px 3px var(--color-shadow);--shadow-sm: 0 2px 8px var(--color-shadow);--shadow-soft: 0 4px 16px var(--color-shadow);--shadow-medium: 0 8px 24px var(--color-shadow);--shadow-large: 0 12px 40px var(--color-shadow-hover);--shadow-hover: 0 8px 24px var(--color-shadow-hover);--shadow-card: 0 2px 12px rgba(232, 213, 213, .15);--shadow-card-hover: 0 8px 24px rgba(232, 213, 213, .25);--radius-xs: 6px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 9999px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--transition-bounce: .4s cubic-bezier(.68, -.55, .265, 1.55);--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--line-height-tight: 1.4;--line-height-normal: 1.8;--line-height-relaxed: 2}.card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.glass{background:#fefefed9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--color-border-light)}.gradient-soft{background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-bg-secondary) 100%)}.gradient-accent{background:linear-gradient(135deg,var(--color-accent-lighter) 0%,var(--color-accent-light) 100%)}.text-gradient{background:linear-gradient(135deg,var(--color-title) 0%,var(--color-title-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.divider{height:1px;background:linear-gradient(90deg,transparent 0%,var(--color-border) 50%,transparent 100%)}.divider-vertical{width:1px;background:linear-gradient(180deg,transparent 0%,var(--color-border) 50%,transparent 100%)}.focus-ring{outline:none;box-shadow:0 0 0 2px var(--color-accent-light)}.focus-ring:focus-visible{box-shadow:0 0 0 3px var(--color-accent)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@supports not (backdrop-filter: blur(10px)){.glass{background:var(--color-white)}}
