body{margin:0;overscroll-behavior-y:contain;scroll-behavior:smooth}.app-layout{min-height:100vh;position:relative}.global-nav{position:fixed;top:0;right:0;left:0;background:transparent;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);padding:.5rem 3rem;display:flex;justify-content:flex-end;gap:2rem;z-index:1000;animation:nav-scroll-effect linear both;animation-timeline:scroll(root);animation-range:0 200px;transform-style:preserve-3d}@keyframes nav-scroll-effect{0%{background:transparent;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);padding:.5rem 3rem}to{background:rgba(0,0,0,.3);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:.5rem 3rem}}.nav-link{color:hsla(0,0%,100%,.9);text-decoration:none;font-size:1.1rem;padding:.5rem 1rem;transition:all .3s ease;border-radius:4px;position:relative;display:flex;align-items:center;justify-content:center}.nav-link:hover{background:hsla(0,0%,100%,.1);transform:translateY(-2px)}.router-link-active{color:#fff}.router-link-active:after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:50%;height:2px;background:#fff;border-radius:2px;text-decoration:none!important;background-color:transparent!important}.fade-enter-active,.fade-leave-active{transition:opacity .3s,transform .3s}.fade-enter-from{opacity:0;transform:translateY(10px)}.fade-leave-to{opacity:0;transform:translateY(-10px)}@media (max-width:768px){.global-nav{padding:.8rem 1rem;gap:1rem;justify-content:center}.nav-link{font-size:.9rem;padding:.4rem .8rem}}@media (max-width:480px){.global-nav{display:none}.mobile-nav-link .nav-title-text,.nav-title-text{display:none!important}.mobile-menu-btn{position:fixed;top:.5em;right:1em;z-index:2000;border-radius:50%;padding:.4em;cursor:pointer}.mobile-nav-menu{position:fixed;top:0;right:0;left:0;bottom:0;background:rgba(0,0,0,.95);z-index:1999;display:flex;flex-direction:column;align-items:center;justify-content:center}.mobile-nav-link{color:#fff;font-size:1.3em;margin:1em 0;display:flex;align-items:center}.mobile-nav-link .nav-icon img{width:2em;height:2em;margin-right:.7em}}.nav-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-right:.5em}.nav-icon img{width:1.5em;height:1.5em;display:block}.music-player{position:fixed;bottom:15px;left:25%;transform:translateX(-50%);background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 20px;border-radius:30px;gap:15px;box-shadow:0 4px 6px rgba(0,0,0,.1);z-index:1001}.music-player,.play-button{display:flex;align-items:center}.play-button{background:rgba(74,194,246,.722);border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;justify-content:center;transition:transform .2s}.play-button:hover{transform:scale(1.1)}.play-button i{color:#333;font-size:16px}.track-info{color:#fff;min-width:80px}.title{font-weight:600;font-size:.95rem}.artist{font-size:.8rem;opacity:.8}.progress-bar{width:200px;height:4px;background:hsla(0,0%,100%,.2);border-radius:2px;overflow:hidden}.progress{height:100%;background:#fff;transition:width .5s linear}audio{display:none}.icon{width:24px;height:24px;transition:transform .2s}.play-button{background:#fff}.fullscreen-container[data-v-11c6dc84]{background:url(/img/bg.08246339.jpg) 50%/cover fixed}.size[data-v-11c6dc84]{height:100vh;display:grid;place-items:center}.centertext[data-v-11c6dc84]{height:40px;margin:30px;font-size:clamp(2rem,5vw,3rem)}.center-text[data-v-11c6dc84],.centertext[data-v-11c6dc84]{color:hsla(0,0%,100%,.9);text-align:center;line-height:1.3;text-shadow:0 0 10px hsla(0,0%,100%,.3),2px 2px 6px rgba(0,0,0,.5),4px 4px 16px rgba(0,0,0,.4),-1px -1px 6px rgba(0,0,0,.3);filter:brightness(1.05) contrast(1.2)}.center-text[data-v-11c6dc84]{font-size:clamp(2rem,5vw,3.5rem);animation:float-11c6dc84 3s ease-in-out infinite}@keyframes float-11c6dc84{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.gradient-background[data-v-11c6dc84]{background-color:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-family:Muli,sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;overflow:hidden;margin:0}.container[data-v-11c6dc84]{display:flex;width:70vw;align-items:center;justify-content:center}.panel[data-v-11c6dc84]{width:100%;background-size:cover;background-position:50%;background-repeat:no-repeat;height:70vh;border-radius:50px;color:#fff;cursor:pointer;flex:0.5;margin:10px;position:relative;transition:all .7s ease-in}.panel h3[data-v-11c6dc84]{font-size:24px;position:absolute;bottom:20px;left:20px;margin:0;opacity:0}.panel.active[data-v-11c6dc84]{flex:5}.panel.active h3[data-v-11c6dc84]{opacity:1;transition:opacity .3s ease-in .4s}@media (max-width:480px){.container[data-v-11c6dc84]{width:100vw}.panel[data-v-11c6dc84]:nth-of-type(4),.panel[data-v-11c6dc84]:nth-of-type(5){display:none}}.bg[data-v-2f504ea2]{min-height:100vh;background:linear-gradient(90deg,pink,#add8e6)}.recipe-app[data-v-2f504ea2]{max-width:1200px;margin:0 auto;padding:2rem;font-family:Microsoft YaHei,sans-serif}.header[data-v-2f504ea2]{text-align:center;margin-bottom:2rem}.module-title[data-v-2f504ea2]{color:#666;font-size:2.5rem;margin-bottom:1.5rem;text-shadow:2px 2px 4px hsla(0,100%,71%,.2)}.category-filter[data-v-2f504ea2]{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.filter-btn[data-v-2f504ea2]{padding:.8rem 1.5rem;border:none;border-radius:25px;background:#ffe8e8;color:#ff6b6b;cursor:pointer;transition:all .3s ease}.filter-btn.active[data-v-2f504ea2],.filter-btn[data-v-2f504ea2]:hover{background:#ff6b6b;color:#fff;transform:translateY(-2px)}.add-recipe-btn[data-v-2f504ea2]{background:#ff6b6b;color:#fff;border:none;padding:10px 20px;border-radius:25px;cursor:pointer;font-size:1em;margin-top:15px;transition:all .3s ease}.add-recipe-btn[data-v-2f504ea2]:hover{background:#ff5252;transform:translateY(-2px)}.dish-grid[data-v-2f504ea2]{width:100%}.dish-list[data-v-2f504ea2]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;padding:1rem 0}.dish-card[data-v-2f504ea2]{width:335px;background:#fff;border-radius:15px;padding:1.5rem;cursor:pointer;box-shadow:0 5px 15px rgba(0,0,0,.1);transition:all .3s ease;border:2px solid transparent}.dish-card[data-v-2f504ea2]:hover{transform:translateY(-5px);box-shadow:0 10px 20px hsla(0,100%,71%,.2)}.dish-card.active[data-v-2f504ea2]{border-color:#ff6b6b}.card-content[data-v-2f504ea2]{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1rem}.dish-icon[data-v-2f504ea2]{font-size:2rem;margin-bottom:1rem}.dish-name[data-v-2f504ea2]{color:#333;margin:0;font-size:1.25rem;flex:1}.dish-tags[data-v-2f504ea2]{display:flex;gap:.5rem;flex-wrap:wrap;flex:1}.tag[data-v-2f504ea2]{background:#ffebeb;color:#ff6b6b;padding:.3rem .8rem;border-radius:15px;font-size:.8rem}.cooking-time[data-v-2f504ea2]{color:#666;font-size:.9rem}.recipe-detail[data-v-2f504ea2]{position:fixed;top:0;right:0;width:600px;height:100vh;background:#fff;padding:2rem;overflow-y:auto;box-shadow:-5px 0 15px rgba(0,0,0,.1)}.close-btn[data-v-2f504ea2]{position:absolute;right:1rem;top:3rem;font-size:1.5rem;width:40px;height:40px;border:none;background:#ffebeb;border-radius:50%;cursor:pointer;color:#ff6b6b}.recipe-title[data-v-2f504ea2]{color:#666;font-size:2rem;margin-bottom:1.5rem}.recipe-meta[data-v-2f504ea2]{display:flex;gap:1.5rem;margin-bottom:2rem;color:#666}.meta-item[data-v-2f504ea2]:before{content:"•";margin-right:.5rem;color:#ff6b6b}.ingredients[data-v-2f504ea2],.steps[data-v-2f504ea2],.tips[data-v-2f504ea2]{margin-bottom:2rem}.ingredients h3[data-v-2f504ea2],.steps h3[data-v-2f504ea2],.tips h3[data-v-2f504ea2]{color:#ff6b6b;border-bottom:2px solid #ffebeb;padding-bottom:.5rem;margin-bottom:1rem}.ingredients li[data-v-2f504ea2]{list-style-type:"🥢";padding-left:1rem;line-height:2}.quantity[data-v-2f504ea2]{color:#ff6b6b;margin-left:.5rem}.step-item[data-v-2f504ea2]{display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#fff5f5;border-radius:10px}.step-number[data-v-2f504ea2]{flex-shrink:0;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#ff6b6b;color:#fff;border-radius:50%;font-weight:700}.recipe-slide-enter-active[data-v-2f504ea2],.recipe-slide-leave-active[data-v-2f504ea2]{transition:all .3s cubic-bezier(.4,0,.2,1)}.recipe-slide-enter-from[data-v-2f504ea2],.recipe-slide-leave-to[data-v-2f504ea2]{transform:translateX(100%)}.back-button[data-v-2f504ea2]{position:fixed;left:20px;top:6px;color:#fff;transition:all .3s;display:flex;align-items:center;z-index:10001;transform:translateZ(1px);will-change:transform;pointer-events:auto;line-height:0}.back-button svg[data-v-2f504ea2]{width:24px;height:24px;fill:currentColor}.back-button[data-v-2f504ea2]:hover{color:#2196f3;transform:translateX(-3px)}.loading-state[data-v-2f504ea2]{text-align:center;padding:40px;color:#666}.loader[data-v-2f504ea2]{display:inline-block;width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #ff6b6b;border-radius:50%;animation:spin-2f504ea2 1s linear infinite;margin-bottom:10px}@keyframes spin-2f504ea2{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message[data-v-2f504ea2]{text-align:center;padding:20px;color:#d32f2f;background:#ffebee;border-radius:8px;margin:20px 0}.empty-state[data-v-2f504ea2]{text-align:center;padding:40px;color:#666;display:flex;justify-content:center;align-items:center;min-height:200px}.dialog-overlay[data-v-2f504ea2]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.add-recipe-dialog[data-v-2f504ea2]{background:#fff;padding:30px;border-radius:15px;width:90vw;max-width:600px;max-height:90vh;overflow-y:auto}.add-recipe-dialog h3[data-v-2f504ea2]{margin-top:0;color:#ff6b6b;text-align:center}.form-group[data-v-2f504ea2]{margin-bottom:15px}.form-group label[data-v-2f504ea2]{display:block;margin-bottom:5px;font-weight:600;color:#333}.form-group input[data-v-2f504ea2],.form-group select[data-v-2f504ea2],.form-group textarea[data-v-2f504ea2]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:1em}.form-row[data-v-2f504ea2]{display:flex;gap:15px}.form-row .form-group[data-v-2f504ea2]{flex:1}.ingredient-item[data-v-2f504ea2],.step-item[data-v-2f504ea2]{display:flex;gap:10px;margin-bottom:10px;align-items:flex-start}.ingredient-name[data-v-2f504ea2]{flex:2}.ingredient-quantity[data-v-2f504ea2]{flex:1}.remove-btn[data-v-2f504ea2]{background:#f44;color:#fff;border:none;border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center}.add-ingredient-btn[data-v-2f504ea2],.add-step-btn[data-v-2f504ea2]{background:#4caf50;color:#fff;border:none;padding:8px 15px;border-radius:6px;cursor:pointer;font-size:.9em;margin-top:5px}.dialog-buttons[data-v-2f504ea2]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.cancel-btn[data-v-2f504ea2],.save-btn[data-v-2f504ea2]{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:1em}.save-btn[data-v-2f504ea2]{background:#ff6b6b;color:#fff}.save-btn[data-v-2f504ea2]:disabled{background:#ccc;cursor:not-allowed}.cancel-btn[data-v-2f504ea2]{background:#f1f1f1;color:#333}.recipe-actions[data-v-2f504ea2]{display:flex;gap:8px;flex-shrink:0}.delete-recipe-btn[data-v-2f504ea2],.edit-recipe-btn[data-v-2f504ea2]{background:none;border:none;cursor:pointer;font-size:1.2em;padding:4px 8px;border-radius:4px;transition:background .2s}.edit-recipe-btn[data-v-2f504ea2]{color:#4caf50}.delete-recipe-btn[data-v-2f504ea2]{color:#f44336}.edit-recipe-btn[data-v-2f504ea2]:hover{background:rgba(76,175,80,.1)}.delete-recipe-btn[data-v-2f504ea2]:hover{background:rgba(244,67,54,.1)}.recipe-detail-overlay[data-v-2f504ea2]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.recipe-detail-dialog[data-v-2f504ea2]{background:#fff;padding:30px;border-radius:15px;width:90vw;max-width:600px;max-height:90vh;overflow-y:auto;position:relative}.recipe-detail-dialog .close-btn[data-v-2f504ea2]{position:absolute;right:1rem;top:1rem;font-size:1.5rem;width:40px;height:40px;border:none;background:#ffebeb;border-radius:50%;cursor:pointer;color:#ff6b6b}.recipe-detail-dialog .recipe-title[data-v-2f504ea2]{color:#666;font-size:2rem;margin-bottom:1.5rem;margin-top:1rem}.recipe-detail-dialog .recipe-meta[data-v-2f504ea2]{display:flex;gap:1.5rem;margin-bottom:2rem;color:#666}.recipe-detail-dialog .meta-item[data-v-2f504ea2]:before{content:"•";margin-right:.5rem;color:#ff6b6b}.recipe-detail-dialog .ingredients[data-v-2f504ea2],.recipe-detail-dialog .steps[data-v-2f504ea2],.recipe-detail-dialog .tips[data-v-2f504ea2]{margin-bottom:2rem}.recipe-detail-dialog .ingredients h3[data-v-2f504ea2],.recipe-detail-dialog .steps h3[data-v-2f504ea2],.recipe-detail-dialog .tips h3[data-v-2f504ea2]{color:#ff6b6b;border-bottom:2px solid #ffebeb;padding-bottom:.5rem;margin-bottom:1rem}.recipe-detail-dialog .ingredients li[data-v-2f504ea2]{list-style-type:"🥢";padding-left:1rem;line-height:2}.recipe-detail-dialog .quantity[data-v-2f504ea2]{color:#ff6b6b;margin-left:.5rem}.recipe-detail-dialog .step-item[data-v-2f504ea2]{display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#fff5f5;border-radius:10px}.recipe-detail-dialog .step-number[data-v-2f504ea2]{flex-shrink:0;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#ff6b6b;color:#fff;border-radius:50%;font-weight:700}@media (min-width:769px){.dish-list[data-v-2f504ea2]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.dish-card[data-v-2f504ea2]{padding:2rem}}@media (max-width:768px){.dish-list[data-v-2f504ea2]{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;padding:.5rem 0}.dish-card[data-v-2f504ea2]{padding:1rem}.category-filter[data-v-2f504ea2]{flex-wrap:wrap}.add-recipe-dialog[data-v-2f504ea2],.recipe-detail-dialog[data-v-2f504ea2]{width:95vw;max-width:95vw;padding:20px;margin:10px}.form-row[data-v-2f504ea2]{flex-direction:column;gap:10px}.ingredient-item[data-v-2f504ea2],.step-item[data-v-2f504ea2]{flex-direction:column;gap:5px}.ingredient-name[data-v-2f504ea2],.ingredient-quantity[data-v-2f504ea2]{width:100%}.dialog-buttons[data-v-2f504ea2]{flex-direction:column;gap:10px}.cancel-btn[data-v-2f504ea2],.save-btn[data-v-2f504ea2]{width:100%}.recipe-detail-dialog .recipe-title[data-v-2f504ea2]{font-size:1.5rem}.recipe-detail-dialog .step-item[data-v-2f504ea2]{flex-direction:column;gap:.5rem}.recipe-detail-dialog .step-number[data-v-2f504ea2]{width:40px;height:40px;font-size:.9rem}}@media (max-width:480px){.dish-list[data-v-2f504ea2]{grid-template-columns:1fr;gap:.8rem;padding:.3rem 0}.dish-card[data-v-2f504ea2]{padding:.8rem}.card-content[data-v-2f504ea2]{flex-direction:column;align-items:flex-start;gap:.5rem}.recipe-actions[data-v-2f504ea2]{margin-top:10px}.add-recipe-dialog[data-v-2f504ea2],.recipe-detail-dialog[data-v-2f504ea2]{width:98vw;max-width:98vw;padding:15px;margin:5px}.add-recipe-dialog h3[data-v-2f504ea2],.recipe-detail-dialog .recipe-title[data-v-2f504ea2]{font-size:1.2em}.form-group input[data-v-2f504ea2],.form-group select[data-v-2f504ea2],.form-group textarea[data-v-2f504ea2]{font-size:1em;padding:6px 8px}.add-ingredient-btn[data-v-2f504ea2],.add-step-btn[data-v-2f504ea2]{font-size:.9em;padding:6px 10px}.recipe-detail-dialog .step-item[data-v-2f504ea2]{padding:.8rem}.recipe-detail-dialog .step-number[data-v-2f504ea2]{width:35px;height:35px;font-size:.8rem}}.waterfall-grid[data-v-0bda0178]{-moz-column-count:4;column-count:4;-moz-column-gap:15px;column-gap:15px}.photo-card[data-v-0bda0178]{-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:15px;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:transform .3s;cursor:pointer;background:#fff}.photo-card img[data-v-0bda0178]{width:100%;height:auto;display:block}@media (max-width:1200px){.waterfall-grid[data-v-0bda0178]{-moz-column-count:3;column-count:3}}@media (max-width:768px){.waterfall-grid[data-v-0bda0178]{-moz-column-count:1;column-count:1}}@media (max-width:480px){.album-container[data-v-0bda0178]{padding:5px}.module-title[data-v-0bda0178]{font-size:1.2em;margin-top:15px}.simple-upload[data-v-0bda0178]{padding:20px;margin-top:20px}.photo-card[data-v-0bda0178]{border-radius:5px;margin-bottom:10px}.simple-lightbox img[data-v-0bda0178]{max-width:98vw;max-height:60vh}.delete-btn[data-v-0bda0178]{padding:8px 16px;font-size:1em}.back-button[data-v-0bda0178]{left:8px;top:8px;width:36px;height:36px}.waterfall-grid[data-v-0bda0178]{-moz-column-count:1;column-count:1;-moz-column-gap:8px;column-gap:8px}.simple-upload[data-v-0bda0178]{font-size:1em}.empty-message[data-v-0bda0178]{padding:20px;font-size:1em}}.error-message[data-v-0bda0178]{margin:10px 0;padding:10px;background:#ffebee;color:#c62828;border-radius:4px;text-align:center}.bg[data-v-0bda0178]{background:linear-gradient(90deg,pink,#add8e6);min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.album-container[data-v-0bda0178]{max-width:1200px;margin:0 auto;padding:20px}.simple-upload[data-v-0bda0178]{padding:40px;margin-top:40px;margin-bottom:20px;text-align:center;background:rgba(0,0,0,.05);border:2px dashed #ccc;border-radius:10px;cursor:pointer;transition:all .3s}.simple-upload[data-v-0bda0178]:hover{background:rgba(0,0,0,.1);border-color:#999}.simple-lightbox[data-v-0bda0178]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.9);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.simple-lightbox img[data-v-0bda0178]{max-width:90%;max-height:80vh;-o-object-fit:contain;object-fit:contain}.delete-btn[data-v-0bda0178]{margin-top:20px;padding:10px 20px;background:#f44;color:#fff;border:none;border-radius:5px;cursor:pointer}.simple-loader[data-v-0bda0178]{text-align:center;padding:50px}.spinner[data-v-0bda0178]{display:inline-block;width:50px;height:50px;border:5px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#4caf50;animation:spin-0bda0178 1s ease-in-out infinite}@keyframes spin-0bda0178{to{transform:rotate(1turn)}}.empty-message[data-v-0bda0178]{text-align:center;padding:50px;color:#666}.back-button[data-v-0bda0178]{position:fixed;left:20px;top:6px;color:#fff;transition:all .3s;display:flex;align-items:center;z-index:10001;transform:translateZ(1px);will-change:transform;pointer-events:auto;line-height:0}.back-button svg[data-v-0bda0178]{width:24px;height:24px;fill:currentColor}.back-button[data-v-0bda0178]:hover{color:#2196f3;transform:translateX(-3px)}.module-title[data-v-0bda0178]{text-align:center;color:#666;margin-top:30px}.bg[data-v-251748aa]{min-height:100vh;background:linear-gradient(90deg,pink,#add8e6)}.memo-container[data-v-251748aa]{max-width:800px;margin:auto;padding:1rem;font-family:Microsoft YaHei,sans-serif}.memo-header[data-v-251748aa]{display:flex;margin-top:3rem;justify-content:space-between;align-items:center;margin-bottom:2rem}.control-panel[data-v-251748aa]{display:flex;gap:1rem}.add-btn[data-v-251748aa]{background:#ff6b6b;color:#fff;border:none;padding:.8rem 1.5rem;border-radius:25px;cursor:pointer;transition:transform .3s}.add-btn[data-v-251748aa]:hover{transform:scale(1.05)}.filter-group[data-v-251748aa]{display:flex;gap:.5rem}.category-select[data-v-251748aa],.search-input[data-v-251748aa]{padding:.8rem;border:2px solid #ffe8e8;border-radius:8px;font-size:1rem}.timeline[data-v-251748aa]{position:relative;padding:2rem 0}.timeline-item[data-v-251748aa]{display:flex;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 3px 10px rgba(0,0,0,.1);transition:transform .3s}.timeline-item[data-v-251748aa]:hover{transform:translateX(10px)}.timeline-item.important[data-v-251748aa]{border-left:4px solid #ff6b6b}.timeline-marker[data-v-251748aa]{flex-shrink:0;width:80px;text-align:center}.marker-icon[data-v-251748aa]{font-size:2rem;margin-bottom:.5rem}.timeline-date[data-v-251748aa]{color:#666;font-size:.9rem}.timeline-content[data-v-251748aa]{flex-grow:1;padding-left:1.5rem}.memo-title[data-v-251748aa]{color:#333;margin:0 0 1rem 0;display:flex;align-items:center;gap:.5rem}.category-tag[data-v-251748aa]{background:#ffe8e8;color:#ff6b6b;padding:.3rem .8rem;border-radius:15px;font-size:.8rem}.memo-content[data-v-251748aa]{color:#666;line-height:1.6;white-space:pre-line}.memo-meta[data-v-251748aa]{margin-top:1rem;color:#999;font-size:.9rem;display:flex;align-items:center;gap:1rem}.star-btn[data-v-251748aa]{margin-left:auto;background:none;border:none;font-size:1.2rem;cursor:pointer;opacity:.3}.star-btn.starred[data-v-251748aa]{opacity:1;color:gold}.memo-form[data-v-251748aa]{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.1);margin-bottom:2rem}.form-row[data-v-251748aa]{margin-bottom:1rem}.form-row label[data-v-251748aa]{display:block;margin-bottom:.5rem;color:#333}.form-row input[type=text][data-v-251748aa],.form-row select[data-v-251748aa],.form-row textarea[data-v-251748aa]{width:100%;padding:.8rem;border:2px solid #ffe8e8;border-radius:8px;font-size:1rem}.form-actions[data-v-251748aa]{margin-top:1.5rem;display:flex;gap:1rem;justify-content:flex-end}.cancel-btn[data-v-251748aa],.save-btn[data-v-251748aa]{padding:.8rem 1.5rem;border:none;border-radius:8px;cursor:pointer;transition:.3s}.save-btn[data-v-251748aa]{background:#ff6b6b;color:#fff}.cancel-btn[data-v-251748aa]{background:#eee;color:#666}.empty-state[data-v-251748aa]{text-align:center;padding:4rem 0}.empty-icon[data-v-251748aa]{width:100px;opacity:.3;margin-bottom:1rem}.form-fade-enter-active[data-v-251748aa],.form-fade-leave-active[data-v-251748aa]{transition:all .3s ease}.form-fade-enter-from[data-v-251748aa],.form-fade-leave-to[data-v-251748aa]{opacity:0;transform:translateY(-20px)}@media (max-width:768px){.memo-header[data-v-251748aa]{flex-direction:column;gap:1rem}.control-panel[data-v-251748aa]{width:100%;flex-direction:column}.timeline-item[data-v-251748aa]{flex-direction:column}.timeline-marker[data-v-251748aa]{width:auto;display:flex;align-items:center;gap:1rem;margin-bottom:1rem}}.loading-state[data-v-251748aa]{text-align:center;padding:2rem}.loader[data-v-251748aa]{border:4px solid #f3f3f3;border-top:4px solid #ff6b6b;border-radius:50%;width:40px;height:40px;margin:0 auto;animation:spin-251748aa 1s linear infinite}@keyframes spin-251748aa{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message[data-v-251748aa]{color:#f44;margin-top:1rem;font-size:.9rem}.countdown-badge[data-v-251748aa]{background:#ffb86c;color:#fff;padding:.3rem .8rem;border-radius:15px;font-size:.85rem;margin-left:1rem;animation:pulse-251748aa 1.5s infinite}.back-button[data-v-251748aa]{position:fixed;left:20px;top:6px;color:#fff;transition:all .3s;display:flex;align-items:center;z-index:10001;transform:translateZ(1px);will-change:transform;pointer-events:auto;line-height:0}.back-button svg[data-v-251748aa]{width:24px;height:24px;fill:currentColor}.back-button[data-v-251748aa]:hover{color:#2196f3;transform:translateX(-3px)}@keyframes pulse-251748aa{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.delete-btn[data-v-251748aa],.edit-btn[data-v-251748aa]{background:#6cddff;color:#fff;padding:.3rem .8rem;border-radius:15px;font-size:.85rem;border:none;cursor:pointer;transition:background-color .3s ease,transform .2s ease;margin-left:.5rem}.delete-btn[data-v-251748aa]:hover,.edit-btn[data-v-251748aa]:hover{background:#3db8ff;transform:translateY(-1px)}.delete-btn[data-v-251748aa]{background:#ff6b6b}.delete-btn[data-v-251748aa]:hover{background:#ff5252}.memo-meta[data-v-251748aa]{flex-wrap:wrap;gap:.5rem}.countdown-badge[data-v-251748aa],.delete-btn[data-v-251748aa],.edit-btn[data-v-251748aa]{display:inline-flex;align-items:center;white-space:nowrap}@media (max-width:480px){.memo-container[data-v-251748aa]{padding:5px}.memo-header h1[data-v-251748aa]{font-size:1.2em;margin-top:15px}.control-panel[data-v-251748aa]{flex-direction:column;gap:8px}.add-btn[data-v-251748aa],.category-select[data-v-251748aa],.search-input[data-v-251748aa]{font-size:1em;padding:8px 12px}.memo-form[data-v-251748aa]{padding:10px}.form-row label[data-v-251748aa]{font-size:1em}.form-row input[data-v-251748aa],.form-row select[data-v-251748aa],.form-row textarea[data-v-251748aa]{font-size:1em;padding:6px 8px}.form-actions button[data-v-251748aa]{font-size:1em;padding:8px 12px}.timeline[data-v-251748aa]{padding:0 2px}.timeline-item[data-v-251748aa]{font-size:1em;padding:8px 4px}.memo-content[data-v-251748aa],.memo-title[data-v-251748aa]{font-size:1em}.delete-btn[data-v-251748aa],.edit-btn[data-v-251748aa]{font-size:1em;padding:4px 8px}.back-button[data-v-251748aa]{left:8px;top:8px;width:36px;height:36px}.empty-state[data-v-251748aa]{padding:15px;font-size:1em}}.bg[data-v-5be0ebcb]{min-height:100vh;background:linear-gradient(90deg,pink,#add8e6);display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.album-container[data-v-5be0ebcb]{max-width:1200px;margin:0 auto;padding:20px}.music-list-card[data-v-5be0ebcb],.music-upload-card[data-v-5be0ebcb]{width:1200px;max-width:96vw;margin:40px auto 18px auto;background:#fff;border-radius:16px;box-shadow:0 2px 12px rgba(0,0,0,.06);padding:18px 0}.music-upload-card[data-v-5be0ebcb]{background:#f9f7f3}.music-list-card[data-v-5be0ebcb]{background:#fff}.module-title[data-v-5be0ebcb]{text-align:center;color:#666;font-weight:700;margin:30px 0 18px 0;letter-spacing:2px}.music-upload-area[data-v-5be0ebcb]{padding:40px;margin-top:40px;margin-bottom:20px;text-align:center;background:rgba(0,0,0,.05);border:2px dashed #ccc;border-radius:10px;cursor:pointer;transition:all .3s}.music-upload-area[data-v-5be0ebcb]:hover{background:rgba(0,0,0,.1);border-color:#999}.error-message[data-v-5be0ebcb]{color:#d32f2f;background:#fff0f0;border-radius:6px;padding:8px 12px;margin:0 0 8px 0;text-align:center;font-size:1em}.player-controls[data-v-5be0ebcb]{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f8f9fa;border-radius:10px;padding:12px 10px;margin:0 0 6px 0}.play-button[data-v-5be0ebcb],.stop-button[data-v-5be0ebcb]{font-size:1.7em;background:none;border:none;cursor:pointer;color:#f8b500;padding:0 10px;border-radius:50%;transition:background .2s}.play-button[data-v-5be0ebcb]:hover,.stop-button[data-v-5be0ebcb]:hover{background:#fffbe6}.song-info[data-v-5be0ebcb]{flex:1;padding:0 8px;text-align:left}.song-info h3[data-v-5be0ebcb]{margin:0;font-size:1.1em;color:#333;font-weight:600}.song-info p[data-v-5be0ebcb]{margin:2px 0 0 0;color:#b48a00;font-size:.98em}.progress-container[data-v-5be0ebcb]{display:flex;align-items:center;gap:8px;margin:0 0 8px 0}.progress-bar[data-v-5be0ebcb]{flex:1;height:5px;background:#ffe082;border-radius:3px;outline:none;accent-color:#f8b500}.time[data-v-5be0ebcb]{font-size:.95em;color:#b48a00;min-width:70px;text-align:right}.song-list[data-v-5be0ebcb]{margin-top:8px;display:flex;flex-direction:column;gap:8px}.song-item[data-v-5be0ebcb]{display:flex;align-items:center;padding:10px 8px;background:#fff;border-radius:8px;box-shadow:0 1px 4px rgba(248,181,0,.06);cursor:pointer;transition:background .2s;gap:8px}.song-item.active[data-v-5be0ebcb]{background:#fffbe6}.song-title[data-v-5be0ebcb]{flex:2;font-weight:600;color:#f8b500;font-size:1.08em}.song-artist[data-v-5be0ebcb]{flex:1;color:#b48a00;font-size:1em}.song-duration[data-v-5be0ebcb]{min-width:48px;color:#b48a00;font-size:.98em}.song-actions[data-v-5be0ebcb]{display:flex;gap:6px}.delete-btn[data-v-5be0ebcb],.edit-btn[data-v-5be0ebcb]{background:none;border:none;cursor:pointer;font-size:1.1em;border-radius:4px;padding:4px 2px;transition:background .2s}.edit-btn[data-v-5be0ebcb]{color:#f8b500}.delete-btn[data-v-5be0ebcb]{color:#d32f2f}.edit-btn[data-v-5be0ebcb]:hover{background:#fffbe6}.delete-btn[data-v-5be0ebcb]:hover{background:#ffeaea}.dialog-overlay[data-v-5be0ebcb]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.25);display:flex;justify-content:center;align-items:center;z-index:1000}.edit-dialog[data-v-5be0ebcb]{background:#fff;padding:18px 12px;border-radius:12px;width:95vw;max-width:380px;box-shadow:0 2px 12px rgba(248,181,0,.1)}.edit-dialog h3[data-v-5be0ebcb]{margin-top:0;color:#f8b500;font-size:1.2em}.form-group[data-v-5be0ebcb]{margin-bottom:12px}.form-group label[data-v-5be0ebcb]{display:block;margin-bottom:4px;color:#b48a00;font-size:1em}.form-group input[data-v-5be0ebcb]{width:100%;padding:7px 10px;border:1px solid #ffe082;border-radius:6px;font-size:1em}.dialog-buttons[data-v-5be0ebcb]{display:flex;justify-content:flex-end;gap:10px}.save-btn[data-v-5be0ebcb]{background:#f8b500;color:#fff}.cancel-btn[data-v-5be0ebcb],.save-btn[data-v-5be0ebcb]{border:none;padding:8px 15px;border-radius:6px;cursor:pointer;font-size:1em}.cancel-btn[data-v-5be0ebcb]{background:#f1f1f1}.save-btn[data-v-5be0ebcb]:hover{background:#f6a700}.cancel-btn[data-v-5be0ebcb]:hover{background:#ffe082}.back-button[data-v-5be0ebcb]{position:fixed;left:18px;top:12px;color:#fff;transition:all .3s;display:flex;align-items:center;z-index:10001;border-radius:50%;width:38px;height:38px;justify-content:center;box-shadow:0 2px 8px rgba(248,181,0,.1)}.back-button svg[data-v-5be0ebcb]{width:22px;height:22px;fill:currentColor}.back-button[data-v-5be0ebcb]:hover{color:#fffbe6;background:#f6a700}@media (max-width:480px){.album-container[data-v-5be0ebcb]{padding:5px}.music-list-card[data-v-5be0ebcb],.music-upload-card[data-v-5be0ebcb]{width:95vw;max-width:99vw;padding:10px 4px;border-radius:8px}.music-upload-area[data-v-5be0ebcb]{padding:40px;font-size:1em;border-radius:8px}.edit-dialog[data-v-5be0ebcb]{width:98vw;max-width:98vw;min-width:0;border-radius:10px;padding:10px 2px}.module-title[data-v-5be0ebcb]{font-size:1.2em;margin:45px 0 0 0}.song-list[data-v-5be0ebcb]{padding:0 8px}.song-item[data-v-5be0ebcb]{margin-left:2px;margin-right:2px}}.waterfall-grid[data-v-058ef874]{-moz-column-count:4;column-count:4;-moz-column-gap:15px;column-gap:15px}.photo-card[data-v-058ef874]{-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:15px;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:transform .3s;cursor:pointer;background:#fff}.photo-card img[data-v-058ef874]{width:100%;height:auto;display:block}@media (max-width:1200px){.waterfall-grid[data-v-058ef874]{-moz-column-count:3;column-count:3}}@media (max-width:768px){.waterfall-grid[data-v-058ef874]{-moz-column-count:1;column-count:1}}@media (max-width:480px){.album-container[data-v-058ef874]{padding:5px}.module-title[data-v-058ef874]{font-size:1.2em;margin-top:15px}.simple-upload[data-v-058ef874]{padding:20px;margin-top:20px}.photo-card[data-v-058ef874]{border-radius:5px;margin-bottom:10px}.simple-lightbox img[data-v-058ef874]{max-width:98vw;max-height:60vh}.delete-btn[data-v-058ef874]{padding:8px 16px;font-size:1em}.back-button[data-v-058ef874]{left:8px;top:8px;width:36px;height:36px}.waterfall-grid[data-v-058ef874]{-moz-column-count:1;column-count:1;-moz-column-gap:8px;column-gap:8px}.simple-upload[data-v-058ef874]{font-size:1em}.empty-message[data-v-058ef874]{padding:20px;font-size:1em}}.error-message[data-v-058ef874]{margin:10px 0;padding:10px;background:#ffebee;color:#c62828;border-radius:4px;text-align:center}.bg[data-v-058ef874]{background:linear-gradient(90deg,pink,#add8e6);min-height:100vh}.album-container[data-v-058ef874]{max-width:1200px;margin:0 auto;padding:20px}.simple-upload[data-v-058ef874]{padding:40px;margin-top:40px;margin-bottom:20px;text-align:center;background:rgba(0,0,0,.05);border:2px dashed #ccc;border-radius:10px;cursor:pointer;transition:all .3s}.simple-upload[data-v-058ef874]:hover{background:rgba(0,0,0,.1);border-color:#999}.simple-lightbox[data-v-058ef874]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.9);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.simple-lightbox img[data-v-058ef874]{max-width:90%;max-height:80vh;-o-object-fit:contain;object-fit:contain}.delete-btn[data-v-058ef874]{margin-top:20px;padding:10px 20px;background:#f44;color:#fff;border:none;border-radius:5px;cursor:pointer}.simple-loader[data-v-058ef874]{text-align:center;padding:50px}.spinner[data-v-058ef874]{display:inline-block;width:50px;height:50px;border:5px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#4caf50;animation:spin-058ef874 1s ease-in-out infinite}@keyframes spin-058ef874{to{transform:rotate(1turn)}}.empty-message[data-v-058ef874]{text-align:center;padding:50px;color:#666}.back-button[data-v-058ef874]{position:fixed;left:20px;top:6px;color:#fff;transition:all .3s;display:flex;align-items:center;z-index:10001;transform:translateZ(1px);will-change:transform;pointer-events:auto;line-height:0}.back-button svg[data-v-058ef874]{width:24px;height:24px;fill:currentColor}.back-button[data-v-058ef874]:hover{color:#2196f3;transform:translateX(-3px)}.module-title[data-v-058ef874]{text-align:center;color:#666;margin-top:30px}.bg[data-v-73822664]{background:linear-gradient(90deg,pink,#add8e6);min-height:100vh}.message-container[data-v-73822664]{max-width:800px;margin:0 auto;padding:20px}.module-title[data-v-73822664]{text-align:center;margin:30px 0;color:#666}.message-input[data-v-73822664]{background:#f8f9fa;padding:20px;border-radius:12px;margin-bottom:20px}textarea[data-v-73822664]{width:96.5%;padding:12px;border:2px solid #eee;border-radius:8px;resize:vertical;margin-bottom:15px}.gender-select[data-v-73822664]{display:flex;gap:10px;margin-bottom:15px}.gender-btn[data-v-73822664]{flex:1;padding:10px;border:2px solid #eee;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s}.gender-btn.active[data-v-73822664]{border-color:currentColor}.gender-btn[class*=male].active[data-v-73822664],.gender-btn[class*=male][data-v-73822664]:hover{color:#2196f3;border-color:#2196f3;background:#e3f2fd}.gender-btn[class*=female].active[data-v-73822664],.gender-btn[class*=female][data-v-73822664]:hover{color:#e91e63;border-color:#e91e63;background:#fce4ec}.submit-btn[data-v-73822664]{width:100%;background:#4caf50;color:#fff;padding:12px;border:none;border-radius:8px;cursor:pointer;transition:opacity .2s}.submit-btn[data-v-73822664]:disabled{opacity:.7;cursor:not-allowed}.message-list[data-v-73822664]{margin-top:30px}.message-item[data-v-73822664]{padding:20px;border-radius:8px;margin-bottom:15px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.message-item.male[data-v-73822664]{background:#e3f2fd;border-left:4px solid #2196f3}.message-item.female[data-v-73822664]{background:#fce4ec;border-left:4px solid #e91e63}.content[data-v-73822664]{margin:0 0 10px 0;line-height:1.6}.meta[data-v-73822664]{display:flex;justify-content:space-between;font-size:.9em;color:#666}.gender-tag[data-v-73822664]{font-weight:700}.error-message[data-v-73822664]{color:#d32f2f;background:#ffebee;padding:10px;border-radius:6px;margin:10px 0}.edit-mode[data-v-73822664]{padding:15px;background:#fff3e0;border-radius:8px;margin-bottom:10px}.edit-mode textarea[data-v-73822664]{width:100%;height:80px;padding:10px;margin-bottom:10px;border:2px solid #eee;border-radius:6px}.edit-buttons[data-v-73822664]{display:flex;gap:10px}.cancel-btn[data-v-73822664],.save-btn[data-v-73822664]{flex:1;padding:8px;border:none;border-radius:6px;cursor:pointer}.save-btn[data-v-73822664]{background:#4caf50;color:#fff}.cancel-btn[data-v-73822664]{background:#f44336;color:#fff}.actions[data-v-73822664]{display:flex;gap:10px}.delete-btn[data-v-73822664],.edit-btn[data-v-73822664]{padding:4px 8px;border-radius:4px;border:none;background:#eee;cursor:pointer;transition:all .2s}.edit-btn[data-v-73822664]:hover{background:#2196f3;color:#fff}.delete-btn[data-v-73822664]:hover{background:#f44336;color:#fff}.empty[data-v-73822664],.loading[data-v-73822664]{text-align:center;padding:30px;color:#666}@media (max-width:768px){.message-container[data-v-73822664],.message-input[data-v-73822664]{padding:15px}}@media (max-width:480px){.message-container[data-v-73822664]{padding:5px}.module-title[data-v-73822664]{font-size:1.2em;margin-top:35px;padding-top:15px}.message-input[data-v-73822664]{padding:8px}textarea[data-v-73822664]{font-size:1em;padding:5px}.gender-btn[data-v-73822664],.submit-btn[data-v-73822664]{font-size:1em;padding:8px 12px}.message-list[data-v-73822664]{padding:0 2px}.message-item[data-v-73822664]{font-size:1em;padding:8px 4px}.delete-btn[data-v-73822664],.edit-btn[data-v-73822664]{font-size:1em;padding:4px 8px}.back-button[data-v-73822664]{left:8px;top:8px;width:36px;height:36px}.empty[data-v-73822664],.loading[data-v-73822664]{padding:15px;font-size:1em}}.back-button[data-v-73822664]{position:fixed;left:20px;top:6px;color:#fff;transition:all .3s;display:flex;align-items:center;z-index:10001;transform:translateZ(1px);will-change:transform;pointer-events:auto;line-height:0}.back-button svg[data-v-73822664]{width:24px;height:24px;fill:currentColor}.back-button[data-v-73822664]:hover{color:#2196f3;transform:translateX(-3px)}