*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#fff5f0,#ffe8db 50%,#f5e6d3);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;overflow-x:hidden}.bubble{animation:float 15s ease-in-out infinite;background:linear-gradient(135deg,#ffb6c14d,#ffdab94d);border-radius:50%;pointer-events:none;position:fixed;z-index:0}.bubble:first-child{animation-delay:0s;animation-duration:20s;height:80px;left:10%;width:80px}.bubble:nth-child(2){animation-delay:2s;animation-duration:18s;height:60px;left:70%;width:60px}.bubble:nth-child(3){animation-delay:4s;animation-duration:22s;height:100px;left:40%;width:100px}.bubble:nth-child(4){animation-delay:1s;animation-duration:19s;height:70px;left:85%;width:70px}.bubble:nth-child(5){animation-delay:3s;animation-duration:21s;height:90px;left:20%;width:90px}.bubble:nth-child(6){animation-delay:5s;animation-duration:17s;height:50px;left:60%;width:50px}.bubble:nth-child(7){animation-delay:2.5s;animation-duration:20s;height:85px;left:30%;width:85px}.bubble:nth-child(8){animation-delay:1.5s;animation-duration:18s;height:65px;left:80%;width:65px}@keyframes float{0%,to{opacity:0;transform:translateY(100vh) rotate(0deg)}10%{opacity:.6}90%{opacity:.6}50%{transform:translateY(-20vh) rotate(180deg)}}.loading-screen{align-items:center;animation:fadeOut .5s ease-in-out 2.5s forwards;background:linear-gradient(135deg,#fff5f0,#ffe8db);display:flex;flex-direction:column;inset:0;justify-content:center;position:fixed;z-index:9999}.loading-text{-webkit-text-fill-color:#0000;animation:shimmer 2s linear infinite;background:linear-gradient(135deg,#d4886c,#e6a57e,#d4886c);-webkit-background-clip:text;background-size:200% auto;font-size:2rem;font-weight:600;margin-bottom:.5rem}.loading-subtext{color:#8b7355;font-size:1rem;font-style:italic;margin-bottom:1rem}.loading-dots{display:flex;gap:.5rem}.dot{animation:bounce 1.4s ease-in-out infinite;background:#d4886c;border-radius:50%;height:12px;width:12px}.dot:first-child{animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes shimmer{to{background-position:200%}}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes fadeOut{to{opacity:0;visibility:hidden}}.login-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006;display:flex;inset:0;justify-content:center;position:fixed;z-index:9998}.login-modal{animation:slideUp .4s ease;background:#fff;border-radius:24px;box-shadow:0 20px 60px #00000026;max-width:400px;padding:3rem 2.5rem;width:90%}.login-modal h2{color:#5c4033;font-size:1.75rem;margin-bottom:.5rem;text-align:center}.login-subtitle{color:#d4886c;font-size:.95rem;font-style:italic;margin-bottom:2rem;text-align:center}.input-group{margin-bottom:1.5rem}.input-group label{color:#5c4033;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.input-group input{background:#fff5f0;border:2px solid #f5e6d3;border-radius:12px;font-size:1rem;padding:.875rem 1rem;transition:all .3s ease;width:100%}.input-group input:focus{background:#fff;border-color:#d4886c;outline:none}.login-button{background:linear-gradient(135deg,#d4886c,#e6a57e);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:transform .2s ease,box-shadow .2s ease;width:100%}.login-button:hover{box-shadow:0 8px 20px #d4886c4d;transform:translateY(-2px)}.login-error{color:#d32f2f;font-size:.875rem;margin-top:1rem;text-align:center}.app-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(180deg,#ffffffe6,#fff5f0cc);border-bottom:1px solid #d4886c1a;padding:2.5rem 1.5rem 2rem;position:relative;text-align:center;z-index:100}.app-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#5c4033,#d4886c);-webkit-background-clip:text;font-size:2rem;font-weight:700;letter-spacing:-.5px;margin-bottom:.5rem}.app-subtitle{color:#8b7355;font-size:.95rem;font-weight:500}.user-badge{background:#fff;border-radius:20px;box-shadow:0 2px 8px #0000000f;color:#5c4033;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;position:absolute;right:1.5rem;top:1rem}.user-avatar,.user-badge{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#d4886c,#e6a57e);border-radius:50%;color:#fff;font-size:.75rem;font-weight:600;height:28px;justify-content:center;width:28px}.nav-container{margin:2rem auto 0;max-width:900px;padding:0 1.5rem}.nav-tabs{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;gap:1rem;padding:.5rem}.nav-tab{align-items:center;background:#0000;border:none;border-radius:12px;color:#8b7355;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;font-weight:500;gap:.5rem;justify-content:center;padding:.875rem 1rem;transition:all .3s ease}.nav-tab:hover{background:#fff5f0}.nav-tab.active{background:linear-gradient(135deg,#d4886c,#e6a57e);box-shadow:0 4px 12px #d4886c4d;color:#fff}.content-container{margin:2rem auto;max-width:1200px;padding:0 1.5rem 3rem;position:relative;z-index:1}.memories-grid{grid-gap:1.5rem;animation:fadeInUp .6s ease;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.memory-card{animation:fadeInUp .5s ease backwards;background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000014;cursor:pointer;overflow:hidden;transition:all .3s ease}.memory-card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-8px)}.memory-image{background:#f5e6d3;max-height:240px;object-fit:contain;width:100%}.memory-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px;box-shadow:0 2px 8px #0000001a;color:#5c4033;font-size:.875rem;font-weight:600;left:1rem;padding:.5rem 1rem;position:absolute;top:1rem}.memory-content{padding:1.5rem}.memory-title{color:#5c4033;font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.memory-description{color:#8b7355;font-size:.95rem;line-height:1.6;margin-bottom:1rem}.comment-button{align-items:center;background:none;border:none;color:#d4886c;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;transition:all .2s ease}.comment-button:hover{color:#5c4033;gap:.75rem}.comment-modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.comment-modal{animation:slideUp .4s ease;background:#fff;border-radius:24px;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.comment-modal-image{background:#f5e6d3;border-radius:24px 24px 0 0;max-height:400px;object-fit:contain;width:100%}.comment-modal-content{padding:2rem}.comment-modal-title{color:#5c4033;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.comment-modal-description{color:#8b7355;line-height:1.6;margin-bottom:2rem}.comment-input-container{border-top:2px solid #f5e6d3;padding-top:1.5rem}.comment-input-label{color:#5c4033;display:block;font-weight:600;margin-bottom:1rem}.comment-textarea{background:#fff5f0;border:2px solid #f5e6d3;border-radius:12px;font-family:inherit;font-size:1rem;min-height:100px;padding:1rem;resize:vertical;transition:border-color .3s ease;width:100%}.comment-textarea:focus{background:#fff;border-color:#d4886c;outline:none}.modal-buttons{display:flex;gap:1rem;margin-top:1.5rem}.modal-button{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.875rem;transition:all .2s ease}.modal-button-primary{background:linear-gradient(135deg,#d4886c,#e6a57e);color:#fff}.modal-button-primary:hover{box-shadow:0 6px 20px #d4886c4d;transform:translateY(-2px)}.modal-button-secondary{background:#f5e6d3;color:#5c4033}.modal-button-secondary:hover{background:#e6d7c3}.message-section{animation:fadeInUp .6s ease}.need-you-card{background:linear-gradient(135deg,#ffe8db,#fff5f0);border:2px solid #f5e6d3;border-radius:20px;margin-bottom:2rem;padding:2.5rem;text-align:center}.need-you-card h2{align-items:center;color:#5c4033;display:flex;font-size:1.75rem;gap:.75rem;justify-content:center;margin-bottom:1rem}.need-you-card p{color:#8b7355;font-size:1.05rem;margin-bottom:1.5rem}.need-you-button{background:linear-gradient(135deg,#d4886c,#e6a57e);border:none;border-radius:16px;box-shadow:0 4px 15px #d4886c4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2.5rem;transition:all .3s ease}.need-you-button:hover:not(:disabled){box-shadow:0 8px 25px #d4886c66;transform:translateY(-3px)}.need-you-button:disabled{background:linear-gradient(135deg,#4caf50,#66bb6a);cursor:not-allowed}.mood-messages-title{color:#5c4033;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.mood-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.mood-card{animation:fadeInUp .5s ease backwards;background:#fff;border-radius:16px;box-shadow:0 4px 15px #0000000f;padding:1.75rem;transition:all .3s ease}.mood-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-4px)}.mood-title{color:#5c4033;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.mood-message{color:#8b7355;font-size:.95rem;line-height:1.7}.upload-card{background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000014;margin-bottom:2rem;padding:2rem}.upload-card h2{color:#5c4033;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.upload-textarea{background:#fff5f0;border:2px solid #f5e6d3;border-radius:12px;font-family:inherit;font-size:1rem;margin-bottom:1rem;min-height:120px;padding:1rem;resize:vertical;transition:all .3s ease;width:100%}.upload-textarea:focus{background:#fff;border-color:#d4886c;outline:none}.file-upload-section{border-top:2px solid #f5e6d3;margin-top:1rem;padding-top:1.5rem}.file-upload-label{background:#fff5f0;border:2px dashed #d4886c;border-radius:12px;color:#5c4033;cursor:pointer;display:block;font-weight:500;padding:1.25rem;text-align:center;transition:all .3s ease;width:100%}.file-upload-label:hover{background:#ffe8db;border-color:#5c4033}.file-preview{align-items:center;background:#fff5f0;border-radius:12px;display:flex;justify-content:space-between;margin-top:1rem;padding:1rem}.upload-buttons{display:flex;gap:1rem;margin-top:1.5rem}.upload-button{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.875rem;transition:all .2s ease}.upload-button-primary{background:linear-gradient(135deg,#d4886c,#e6a57e);color:#fff}.upload-button-primary:hover:not(:disabled){box-shadow:0 6px 20px #d4886c4d;transform:translateY(-2px)}.upload-button-primary:disabled{cursor:not-allowed;opacity:.6}.upload-button-secondary{background:#f5e6d3;color:#5c4033}.upload-button-secondary:hover{background:#e6d7c3}.thought-item{animation:fadeInUp .4s ease;background:#fff;border-radius:16px;box-shadow:0 2px 10px #0000000f;margin-bottom:1rem;padding:1.5rem;position:relative}.thought-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.thought-avatar{align-items:center;background:linear-gradient(135deg,#d4886c,#e6a57e);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:600;height:45px;justify-content:center;width:45px}.thought-info{flex:1 1}.thought-author{color:#5c4033;font-size:1rem;font-weight:600}.thought-time{color:#8b7355;font-size:.875rem}.thought-text{color:#5c4033;line-height:1.7;margin-bottom:1rem}.thought-media{background:#f5e6d3;border-radius:12px;margin-top:1rem;max-height:300px;max-width:500px;object-fit:contain;width:100%}.thought-actions{display:flex;gap:1rem;margin-top:1rem}.thought-download{align-items:center;background:#f5e6d3;border:none;border-radius:8px;color:#5c4033;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.thought-download:hover{background:#e6d7c3}.birthday-section{animation:fadeInUp .6s ease}.birthday-card{background:linear-gradient(135deg,#ffe8db,#fff5f0);border:2px solid #f5e6d3;border-radius:20px;margin-bottom:2rem;padding:2.5rem;text-align:center}.birthday-card h2{align-items:center;color:#5c4033;display:flex;font-size:1.75rem;gap:.75rem;justify-content:center;margin-bottom:1rem}.birthday-card p{color:#8b7355;font-size:1.05rem;margin-bottom:1.5rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.app-title{font-size:1.5rem}.app-subtitle{font-size:.85rem}.nav-tabs{flex-direction:column;gap:.5rem}.nav-tab{font-size:.9rem;padding:.75rem}.memories-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.memory-card{margin:0 auto}.memory-image{max-height:200px}.thought-media{max-height:250px;max-width:100%}.comment-modal{max-height:85vh;width:95%}.comment-modal-image{max-height:300px}.birthday-card,.need-you-card,.upload-card{padding:1.5rem}.mood-grid{grid-template-columns:1fr}}@media (max-width:480px){.app-header{padding:2rem 1rem}.user-badge{font-size:.75rem;padding:.4rem .8rem;right:1rem;top:.5rem}.user-avatar{font-size:.65rem;height:24px;width:24px}.login-modal{padding:2rem 1.5rem;width:95%}.loading-text,.login-modal h2{font-size:1.5rem}.loading-subtext{font-size:.9rem}.thought-item{padding:1rem}.thought-avatar{height:35px;width:35px}.thought-author{font-size:.9rem}.thought-time{font-size:.75rem}.thought-media{max-height:200px}}
/*# sourceMappingURL=main.d90c5824.css.map*/