@import url(https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700;900&display=swap);:root{--bg-color-light:#fdf0f5;--text-color-light:#5c3c48;--accent-color-light:#e6a4b4;--button-text-color-light:#fff;--card-bg-color-light:#fff;--shadow-color-light:#5c3c481a;--danger-color-light:#d9534f;--input-bg-color-light:#fff;--input-border-color-light:#ccc;--scrollbar-color:#422f36 #f5e6e8;--scrollbar-width:thin}[data-theme=dark]{--bg-color-dark:#2c1e22;--text-color-dark:#f5e6e8;--accent-color-dark:#c97b8f;--button-text-color-dark:#fff;--card-bg-color-dark:#422f36;--shadow-color-dark:#0003;--danger-color-dark:#e57373;--input-bg-color-dark:#422f36;--input-border-color-dark:#5c3c48;--scrollbar-color:#f5e6e8 #422f36;--scrollbar-width:none}body{--bg-color:var(--bg-color-light);--text-color:var(--text-color-light);--accent-color:var(--accent-color-light);--button-text-color:var(--button-text-color-light);--card-bg-color:var(--card-bg-color-light);--shadow-color:var(--shadow-color-light);--danger-color:var(--danger-color-light);--input-bg-color:var(--input-bg-color-light);--input-border-color:var(--input-border-color-light);--scrollbar-color:var(--input-scrollbar-color);--scrollbar-width:var(--input-scrollbar-width)}body[data-theme=dark]{--bg-color:var(--bg-color-dark);--text-color:var(--text-color-dark);--accent-color:var(--accent-color-dark);--button-text-color:var(--button-text-color-dark);--card-bg-color:var(--card-bg-color-dark);--shadow-color:var(--shadow-color-dark);--danger-color:var(--danger-color-dark);--input-bg-color:var(--input-bg-color-dark);--input-border-color:var(--input-border-color-dark)}#root,body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-color);font-family:DM Sans,sans-serif;height:100%;margin:0;overflow-x:hidden;overflow-y:scroll;overflow-y:hidden;padding:0;scrollbar-color:var(--scrollbar-color);scrollbar-width:none;transition:background-color .3s,color .3s;width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.content-area{-ms-overflow-style:none;box-sizing:border-box;height:calc(100vh - 60px);overflow-y:auto;scrollbar-width:none;width:100%}.content-area::-webkit-scrollbar{display:none}#navbarContainer{background-color:var(--card-bg-color);box-shadow:0 -2px 5px var(--shadow-color);height:60px}#menuWrapper{height:100%}.menuElement{color:var(--text-color);text-decoration:none}.theme-toggle{padding:0}@media (max-width:768px){.content-area{padding:10px}#navbarContainer{height:50px}.menuElement{font-size:20px}}.login-page-container{background:var(--bg-color);background-position:50%;background-size:cover;font-family:DM Sans,sans-serif;min-height:100vh}.login-page-container,.wrapper{align-items:center;display:flex;justify-content:center}.wrapper{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0000;border:2px solid var(--accent-color);border-radius:20px;box-shadow:0 0 30px #00000080;height:440px;overflow:hidden;position:relative;transform:scale(1);transition:height .2s ease;width:400px}.wrapper.active{height:520px}.wrapper .form-box{padding:40px;width:100%}.wrapper .form-box.login{transform:translateX(0);transition:transform .18s ease}.wrapper.active .form-box.login{transform:translateX(-400px);transition:none}.wrapper .form-box.register{position:absolute;transform:translateX(400px);transition:none}.wrapper.active .form-box.register{transform:translateX(0);transition:transform .18s ease}.wrapper .icon-close{align-items:center;background:var(--accent-color);border-bottom-left-radius:20px;color:var(--button-text-color);cursor:pointer;display:flex;font-size:2em;height:45px;justify-content:center;position:absolute;right:0;top:0;width:45px;z-index:1}.form-box h2{color:var(--text-color);font-size:2em;text-align:center}.input-box{border-bottom:2px solid var(--text-color);height:50px;margin:30px 0;position:relative;width:100%}.input-box label{color:var(--text-color);font-size:1em;font-weight:500;left:5px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:.5s}.input-box input:focus~label,.input-box input:valid~label{top:-5px}.input-box input{background:#0000;border:none;color:var(--text-color);font-size:1em;font-weight:600;height:100%;outline:none;padding:0 35px 0 5px;width:100%}.input-box .icon{color:var(--text-color);font-size:1.2em;line-height:50px;position:absolute;right:8px}.remember-forgot{color:var(--text-color);display:flex;font-size:.9em;font-weight:500;justify-content:space-between;margin:-15px 0 15px}.remember-forgot label input{accent-color:var(--text-color);margin-right:3px}.remember-forgot a{color:var(--text-color);text-decoration:none}.remember-forgot a:hover{text-decoration:underline}.btn{background:var(--accent-color);border:none;border-radius:6px;color:var(--button-text-color);cursor:pointer;font-size:1em;font-weight:500;height:45px;outline:none;width:100%}.login-register{color:var(--text-color);font-size:.9em;font-weight:500;margin:25px 0 10px;text-align:center}.login-register p a{color:var(--text-color);font-weight:600;text-decoration:none}.login-register p a:hover{text-decoration:underline}.link-button{background:none;border:none;color:var(--text-color);cursor:pointer;font-family:inherit;font-size:inherit;font-weight:600;padding:0;text-decoration:none}.link-button:hover{text-decoration:underline}@media (max-width:768px){.wrapper{max-width:400px;width:90%}.form-box{padding:30px}.form-box h2{font-size:1.8em}}#navbarContainer{background-color:var(--navbar-bg-color);bottom:0;box-shadow:0 -2px 10px var(--shadow-color);left:0;position:fixed;width:100%;z-index:1000}#menuWrapper{align-items:center;display:flex;justify-content:space-around;padding:10px 0}.menuElement{background:none;border:none;color:var(--navbar-icon-color);cursor:pointer;font-size:24px;padding:10px 15px;transition:color .3s,transform .3s}.menuElement:hover{transform:translateY(-3px)}.menuElement.active,.menuElement:hover{color:var(--accent-color)}#moreMenuPanel{background-color:var(--card-bg-color);border-top-left-radius:20px;border-top-right-radius:20px;bottom:-100%;box-shadow:0 -5px 20px var(--shadow-color);box-sizing:border-box;left:0;padding:20px;position:fixed;transition:bottom .4s ease-in-out;width:100%;z-index:999}#moreMenuPanel.visible{bottom:60px}#moreMenuGrid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));text-align:center}.moreMenuElement{align-items:center;color:var(--text-color);display:flex;flex-direction:column;text-decoration:none}.moreMenuElement i{color:var(--navbar-icon-color);font-size:24px;margin-bottom:5px}.moreMenuElement span{font-size:12px}.moreMenuElement.theme-toggle{background:none;border:none;cursor:pointer;font-family:inherit}.moreMenuElement.active i{color:var(--accent-color)}#backdrop{background-color:#00000080;height:100%;left:0;opacity:0;position:fixed;top:0;transition:opacity .4s,visibility .4s;visibility:hidden;width:100%;z-index:998}#backdrop.visible{opacity:1;visibility:visible}body,html{background-color:#333;height:100%;margin:0;overflow:hidden;padding:0;width:100%}canvas{display:block}.action-buttons{flex-direction:column;gap:10px;right:20px;z-index:10}.action-buttons button{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff3;border:2px solid #ffffff80;border-radius:10px;font-size:18px;font-weight:700;padding:12px 20px;transition:background .3s,transform .2s}.action-buttons button:hover{background:#ffffff4d;transform:scale(1.05)}.action-buttons button:active{transform:scale(.95)}.action-buttons button.selected{background:#fff6;border-color:#fff;box-shadow:0 0 10px #fffc}.plant-selection-container{background-color:var(--bg-color);color:var(--text-color);padding:20px;text-align:center}.plant-options{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-top:20px}.plant-option{background-color:var(--card-bg-color);border:1px solid var(--accent-color);border-radius:10px;box-shadow:0 4px 8px var(--shadow-color);padding:20px;width:200px}.plant-option img{border-radius:5px;height:auto;width:100%}.plant-option h3{color:var(--text-color);margin:10px 0}.plant-option button{background-color:var(--accent-color);border:none;border-radius:5px;color:var(--button-text-color);cursor:pointer;padding:10px 20px;transition:background-color .3s}.plant-option button:hover{filter:brightness(1.1)}@media (max-width:768px){.plant-option{width:calc(50% - 30px)}}@media (max-width:480px){.plant-option{width:100%}}.greenhouse-container{box-sizing:border-box;flex-direction:column;height:100%;padding:20px}.greenhouse-container,.greenhouse-header{align-items:center;display:flex;width:100%}.greenhouse-header{justify-content:space-between;margin-bottom:20px}.back-button{background-color:#f0f0f0;border:1px solid #ccc;border-radius:8px;font-size:1em;padding:10px 15px;transition:background-color .3s}.back-button:hover{background-color:#e0e0e0}.greenhouse-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));max-width:800px;width:100%}.greenhouse-slot{border:2px dashed #ccc;border-radius:10px;padding:10px;text-align:center}.greenhouse-slot.completed{border-color:#4caf50;border-style:solid}.greenhouse-slot img{height:100px;image-rendering:pixelated;object-fit:contain;width:100%}.greenhouse-slot img:not(.completed){filter:brightness(0) invert(.5)}.greenhouse-slot p{font-weight:700;margin-top:10px}.plant-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:center;padding:20px;text-align:center;width:100%}.plant-display{margin-bottom:20px}.plant-image{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;max-height:40vh;max-width:80%;object-fit:contain}.water-status{background-color:#0000000d;border-radius:8px;margin-top:15px;padding:10px}.water-status p{color:#555;font-size:.9em;margin:5px 0}.water-button{background-color:#3498db;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.2em;font-weight:700;padding:15px 30px;transition:background-color .3s,transform .2s}.water-button:hover:not(:disabled){background-color:#2980b9;transform:translateY(-2px)}.water-button:disabled{background-color:#95a5a6;cursor:not-allowed}.greenhouse-button{background-color:initial;border:1px solid var(--accent-color);border-radius:5px;color:var(--text-color);cursor:pointer;font-family:sans-serif;font-size:16px;font-weight:700;padding:8px 15px;transition:all .2s ease}.greenhouse-button:hover{background-color:var(--accent-color);color:var(--button-text-color);transform:translateY(-2px)}.plant-container{position:relative;transition:background-color .8s ease}.plant-container:before{content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .8s ease;width:100%;z-index:-1}.plant-container.mood-happy:before{background:radial-gradient(circle,#ffdfba66 0,#ffdfba00 70%);opacity:1}.plant-container.mood-sad:before{background:radial-gradient(circle,#add8e64d 0,#add8e600 70%);opacity:1}.plant-container.mood-love:before{background:radial-gradient(circle,#ffb6c14d 0,#ffb6c100 70%);opacity:1}.plant-container.mood-angry:before{background:radial-gradient(circle,#ff6b6b33 0,#ff6b6b00 70%);opacity:1}.plant-container.mood-calm:before{background:radial-gradient(circle,#98fb9833 0,#98fb9800 70%);opacity:1}.compose-letter-container{align-items:center;background-color:var(--bg-color);display:flex;flex-direction:column;font-family:DM Sans,sans-serif;min-height:calc(100vh - 120px);padding:40px}.compose-letter-container h2{color:var(--text-color);font-family:Dancing Script,cursive;font-size:3em;margin-bottom:30px}.letter-form{background-color:var(--card-bg-color);border-radius:10px;box-shadow:0 10px 30px var(--shadow-color);gap:20px;max-width:600px;padding:40px;width:100%}.form-group,.letter-form{display:flex;flex-direction:column}.form-group label{color:var(--text-color);font-size:1.1em;font-weight:500;margin-bottom:8px}.compose-letter-container input[type=text],.compose-letter-container select,.compose-letter-container textarea{background-color:var(--bg-color);border:1px solid var(--accent-color);border-radius:6px;color:var(--text-color);font-family:DM Sans,sans-serif;font-size:1em;padding:12px;transition:border-color .3s,box-shadow .3s;width:100%}.compose-letter-container input[type=text]:focus,.compose-letter-container select:focus,.compose-letter-container textarea:focus{border-color:var(--accent-color-dark);box-shadow:0 0 8px var(--accent-color-light);outline:none}.compose-letter-container textarea{font-family:Dancing Script,cursive;font-size:1.5em;line-height:1.6;min-height:200px;resize:vertical}.compose-actions{align-items:center;display:flex;justify-content:space-between;margin-top:20px}.back-button-compose,.send-button{-webkit-appearance:none;appearance:none;background-color:var(--accent-color);border:none;border-radius:5px;color:var(--button-text-color);cursor:pointer;font-family:sans-serif;font-size:16px;font-weight:700;padding:12px 25px;text-align:center;transition:all .2s ease}.back-button-compose:hover,.send-button:hover{filter:brightness(1.1);transform:translateY(-2px)}.back-button-compose{background-color:initial;border:1px solid var(--accent-color);color:var(--text-color)}.mailbox-container{background-color:var(--bg-color);color:var(--text-color);display:flex;font-family:DM Sans,sans-serif;height:100%;overflow-x:hidden;width:95%}.letter-list{background-color:var(--card-bg-color);border-right:1px solid var(--accent-color-light);display:flex;flex-direction:column;max-width:400px;overflow-y:scroll;padding:20px;scrollbar-color:#888 #f5f5f5;scrollbar-width:none;width:35%}.mailbox-header{align-items:center;border-bottom:1px solid var(--accent-color-light);display:flex;gap:20px;margin-bottom:10px;padding-bottom:20px}.back-button{background-color:initial;border:1px solid var(--accent-color);border-radius:5px;color:var(--text-color);cursor:pointer;font-family:sans-serif;font-size:16px;font-weight:700;padding:8px 15px;transition:all .2s ease}.back-button:hover{background-color:var(--accent-color);color:var(--button-text-color);transform:translateY(-2px)}.letter-list h2{font-family:Dancing Script,cursive;font-size:2.5em;margin:0}.letter-item{border-bottom:1px solid var(--accent-color-light);cursor:pointer;padding:15px;position:relative;transition:background-color .2s}.letter-item:hover{background-color:var(--bg-color)}.letter-item.selected{background-color:var(--accent-color-light)}.letter-item.unread .from-name{font-weight:700}.letter-item.unread:before{background-color:var(--accent-color);border-radius:50%;content:"";height:8px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:8px}.from-name{font-size:1.1em;margin:0 0 5px}.received-date{color:var(--text-color-secondary);font-size:.9em}.letter-view{padding:40px;width:65%}.letter-content{background-color:var(--card-bg-color);border-radius:10px;box-shadow:0 5px 20px var(--shadow-color);padding:40px}.letter-content h3{border-bottom:1px solid var(--accent-color-light);font-size:1.5em;margin-bottom:20px;padding-bottom:10px}.letter-message{font-size:1.8em;line-height:1.6;overflow-wrap:break-word;white-space:pre-wrap}.letter-message,.placeholder-text{font-family:Dancing Script,cursive}.placeholder-text{color:var(--text-color-secondary);font-size:2em;margin-top:100px;text-align:center}@media (max-width:768px){.mailbox-container{flex-direction:column}.letter-list{border-right:none;flex-shrink:0;height:auto;max-width:none;padding:10px;width:100%}.letter-view{border-top:1px solid var(--accent-color-light);padding:20px;width:100%}.letter-content{padding:20px}.letter-message{font-size:1.5em}.mailbox-header{margin-bottom:0;padding-bottom:10px}}.love-letter-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;font-family:Dancing Script,cursive;justify-content:center;min-height:100%;padding:20px}#envelope{background-color:var(--accent-color);border-bottom-left-radius:6px;border-bottom-right-radius:6px;box-shadow:0 4px 20px var(--shadow-color);height:180px;margin:0 auto 40px;position:relative;width:280px}.front{height:0;position:absolute;width:0;z-index:3}.flap{border-bottom:82px solid #0000;border-left:140px solid #0000;border-right:140px solid #0000;border-top:98px solid var(--accent-color);pointer-events:none;transform-origin:top}.pocket{border-bottom:90px solid var(--accent-color);border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-left:140px solid var(--accent-color);border-right:140px solid var(--accent-color);border-top:90px solid #0000;filter:brightness(1.2)}.letter{background-color:var(--card-bg-color);border-radius:6px;box-shadow:0 2px 26px var(--shadow-color);height:100%;margin:0 auto;position:relative;top:0;width:90%}.letter:after{bottom:0;content:"";left:0;position:absolute;right:0;top:0}.words{color:var(--text-color);font-family:Dancing Script,cursive;font-size:1rem;height:auto;left:10%;opacity:1;overflow-wrap:break-word;padding:5px;position:absolute;text-align:center;visibility:visible;white-space:pre-wrap;width:80%}.words.line1{font-weight:700;top:15%}.words.line2{height:50%;overflow-y:scroll;scrollbar-color:var(--accent-color) var(--card-bg-color);scrollbar-width:thin;text-align:left;top:30%}.words.line2::-webkit-scrollbar{width:8px}.words.line2::-webkit-scrollbar-track{background:var(--card-bg-color)}.words.line2::-webkit-scrollbar-thumb{background-color:var(--accent-color);border:2px solid var(--card-bg-color);border-radius:4px}.words.line3{text-align:right;top:75%;width:85%}.open .flap{transform:rotateX(180deg);transition:transform .4s ease,z-index .6s;z-index:1}.close .flap{transform:rotateX(0deg);transition:transform .4s ease .6s,z-index 1s;z-index:5}.close .letter{transform:translateY(0);transition:transform .4s ease,z-index 1s;z-index:1}.open .letter{transform:translateY(-100px);transition:transform .4s ease .6s,z-index .6s;z-index:2}.hearts{left:0;position:absolute;right:0;top:90px;z-index:2}.heart{bottom:0;right:10%}.heart,.heart:after,.heart:before{pointer-events:none;position:absolute}.heart:after,.heart:before{background:var(--accent-color);border-radius:50px 50px 0 0;content:"";height:80px;left:50px;top:0;transform:rotate(-45deg);transform-origin:0 100%;width:50px}.heart:after{left:0;transform:rotate(45deg);transform-origin:100% 100%}.close .heart{animation:none;opacity:0}.a1{animation:slideUp 4s linear 1,sideSway 2s ease-in-out 4 alternate;animation-delay:.7s;animation-fill-mode:forwards;left:20%;transform:scale(.6)}.a1,.a2{opacity:1}.a2{animation:slideUp 5s linear 1,sideSway 4s ease-in-out 2 alternate;animation-delay:.7s;animation-fill-mode:forwards;left:55%;transform:scale(1)}.a3{animation:slideUp 7s linear 1,sideSway 2s ease-in-out 6 alternate;animation-delay:.7s;animation-fill-mode:forwards;left:10%;opacity:1;transform:scale(.8)}@keyframes slideUp{0%{top:0}to{top:-600px}}@keyframes sideSway{0%{margin-left:0}to{margin-left:50px}}.envlope-wrapper{height:200px;margin-bottom:0}.letter-actions{padding:20px 0}.letter-actions .action-button{min-width:100px}.action-button{border-radius:25px;box-shadow:0 4px 15px var(--shadow-color);display:inline-block;font-family:DM Sans,sans-serif;font-style:normal;font-weight:500;margin:8px 5px;min-width:180px;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease}.action-button:hover{box-shadow:0 6px 20px var(--shadow-color);transform:translateY(-3px)}.reset{gap:10px;margin-top:20px}.profile-container,.reset{align-items:center;display:flex;flex-direction:column}.profile-container{background-color:var(--card-bg-color);border-radius:10px;box-shadow:0 2px 10px var(--shadow-color);font-family:sans-serif;height:95%;justify-content:flex-start;margin:auto;max-width:500px;overflow-x:hidden;overflow-y:scroll;padding:20px;scrollbar-color:#888 #f5f5f5;scrollbar-width:none}.profile-container,.profile-container h1,.profile-container h2{color:var(--text-color)}.profile-section{border-top:1px solid var(--input-border-color);margin-top:20px;padding-top:20px;width:100%}.profile-section h2{margin-bottom:15px;text-align:center}.profile-container input[type=email],.profile-container input[type=text]{background-color:var(--input-bg-color);border:1px solid var(--input-border-color);border-radius:5px;color:var(--text-color);margin-bottom:10px;padding:10px;width:calc(100% - 22px)}.action-button{background-color:var(--accent-color);border:none;border-radius:5px;color:var(--button-text-color);cursor:pointer;font-size:16px;margin-top:10px;padding:12px;transition:background-color .3s,transform .2s;width:100%}.action-button:hover{filter:brightness(1.1);transform:translateY(-2px)}.action-button.danger{background-color:var(--danger-color)}.feedback-message{color:var(--accent-color);font-weight:700;margin-top:15px}.sign-out-button{background-color:var(--danger-color)!important;margin-top:30px}.user-id-display{background-color:var(--bg-color);border-radius:5px;margin-top:10px;padding:10px}@media (max-width:768px){.profile-container{margin:10px;padding:15px}.profile-container h1{font-size:1.8em}.profile-container h2{font-size:1.3em}.action-button{font-size:14px;padding:10px}}.mood-container{align-items:center;background-color:var(--bg-color);box-sizing:border-box;color:var(--text-color);display:flex;flex-direction:column;font-family:DM Sans,sans-serif;height:100%;justify-content:flex-start;overflow-y:scroll;padding:20px;scrollbar-color:#888 #f5f5f5;scrollbar-width:none}.mood-display{display:flex;gap:30px;justify-content:center;margin-bottom:40px;max-width:700px;width:100%}.mood-container h1,.mood-container h2{font-family:Dancing Script,cursive;text-align:center}.mood-container h1{font-size:3em;margin-bottom:10px;margin-top:0}.mood-container h2{color:var(--text-color-secondary);font-size:2em}.mood-selection{flex-wrap:wrap;gap:15px;margin-bottom:40px;max-width:800px}.mood-option,.mood-selection{display:flex;justify-content:center}.mood-option{align-items:center;background-color:var(--card-bg-color);border:2px solid #0000;border-radius:20px;box-shadow:0 4px 15px var(--shadow-color);cursor:pointer;flex-direction:column;height:100px;transition:all .3s ease;width:100px}.mood-option:hover{border-color:var(--accent-color-light);box-shadow:0 8px 25px var(--shadow-color);transform:translateY(-5px)}.mood-option.selected{background-color:var(--accent-color);border-color:var(--accent-color-dark);color:var(--button-text-color);transform:scale(1.05)}.mood-emoji{font-size:3rem;transition:transform .3s ease}.mood-option:hover .mood-emoji{transform:scale(1.1)}.mood-name{font-size:.9rem;font-weight:500;margin-top:8px}.mood-card{background-color:var(--card-bg-color);border-radius:20px;box-shadow:0 4px 15px var(--shadow-color);flex:1 1;padding:25px;text-align:center}.mood-card h2{color:var(--text-color);font-size:1.5em;margin-top:0}.mood-result .emoji{display:block;font-size:4rem;margin-bottom:10px}.mood-result p{color:var(--text-color);font-size:1.2rem;font-weight:700;margin:0}.no-mood-text{color:var(--text-color-secondary);font-style:italic}@media (max-width:768px){.mood-container{justify-content:flex-start;overflow-y:scroll;padding:20px 10px;scrollbar-color:#888 #f5f5f5;scrollbar-width:none}.mood-display{flex-direction:column;gap:20px;margin-bottom:20px}.mood-container h1{font-size:2em}.mood-card h2{font-size:1.2em}.mood-selection{gap:10px;margin-bottom:20px}.mood-option{border-radius:15px;height:80px;width:80px}.mood-emoji{font-size:2rem}.mood-name{font-size:.75rem}.mood-result .emoji{font-size:3rem}.mood-result p{font-size:1rem}}.journal-container h1{color:var(--text-color);margin-bottom:20px;text-align:center}.journal-form{display:flex;flex-direction:column;margin-bottom:30px}.journal-form textarea{background-color:var(--input-bg-color);border:1px solid #ccc;border-radius:8px;box-sizing:border-box;color:var(--text-color);font-family:inherit;font-size:16px;margin-bottom:10px;padding:15px;resize:vertical;width:100%}.journal-form button{align-self:flex-end;background-color:var(--accent-color);border:none;border-radius:25px;box-shadow:0 4px 15px var(--shadow-color);color:var(--button-text-color);cursor:pointer;font-family:DM Sans,sans-serif;font-size:16px;font-weight:500;padding:12px 24px;text-align:center;transition:all .3s ease}.journal-form button:hover{box-shadow:0 6px 20px var(--shadow-color);filter:brightness(1.1);transform:translateY(-3px)}.journal-entries-list{flex-grow:1;overflow-y:auto}.journal-entry{background:var(--card-bg-color);border:1px solid var(--accent-color-light);border-radius:12px;margin-bottom:15px;max-width:80%;padding:15px 20px}.journal-entry.yours{align-self:flex-end;background-color:var(--user-message-bg);margin-left:auto}.journal-entry.theirs{align-self:flex-start;background-color:var(--partner-message-bg);margin-right:auto}.entry-text{word-wrap:break-word;margin:0 0 10px;white-space:pre-wrap}.entry-meta{color:var(--text-color-light);display:flex;font-size:.8em;justify-content:space-between}.entry-author{font-weight:700}.journal-container{background-color:var(--bg-color);box-sizing:border-box;color:var(--text-color);display:flex;flex-direction:column;font-family:DM Sans,sans-serif;height:100%;margin:0 auto;max-width:800px;padding:20px}.journal-title{font-family:Dancing Script,cursive;font-size:3em;margin-bottom:20px;text-align:center}.sort-container{align-items:center;display:flex;gap:10px;justify-content:flex-end;margin-bottom:20px}.sort-container label{font-weight:700}.sort-container select{background-color:var(--bg-color);border:1px solid var(--text-color-secondary);border-radius:8px;color:var(--text-color);font-family:DM Sans,sans-serif;padding:8px}.journal-entries{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.journal-entry{background-color:var(--card-bg-color);border-radius:15px;box-shadow:0 4px 15px var(--shadow-color);padding:20px}.journal-entry-title{color:var(--accent-color);font-family:Dancing Script,cursive;font-size:1.8em;margin-bottom:0;margin-top:0}.journal-entry-location{color:var(--text-color-secondary);font-family:DM Sans,sans-serif;font-size:1em;font-style:italic;margin-bottom:10px;margin-top:0}.journal-entry-text{font-size:1em;line-height:1.6}.add-date-form{background-color:var(--card-bg-color);border-radius:15px;box-shadow:0 4px 15px var(--shadow-color);display:flex;flex-direction:column;gap:10px;margin-bottom:30px;padding:20px}.add-date-form input[type=date],.add-date-form input[type=text],.add-date-form textarea{background-color:var(--bg-color);border:1px solid var(--text-color-secondary);border-radius:8px;box-sizing:border-box;color:var(--text-color);font-family:DM Sans,sans-serif;padding:10px;width:100%}.date-inputs{align-items:center;display:flex;gap:10px}.date-inputs .date-from,.date-inputs .date-to{flex-grow:1}.location-inputs{align-items:center;display:flex;gap:10px}.location-inputs .location-from,.location-inputs .location-to{flex-grow:1}.toggle-date-to,.toggle-location-to{align-items:center;background-color:var(--bg-color);border:1px solid var(--text-color-secondary);border-radius:50%;color:var(--text-color);cursor:pointer;display:flex;flex-shrink:0;font-size:1.2em;height:30px;justify-content:center;line-height:1;width:30px}.add-date-form textarea{min-height:80px;resize:vertical}.add-date-form button{background-color:var(--accent-color);border:none;border-radius:8px;color:var(--button-text-color);cursor:pointer;font-weight:700;padding:10px 15px;transition:background-color .3s ease}.add-date-form button:hover{background-color:var(--accent-color-dark)}.entry-actions{display:flex;gap:10px;margin-top:15px}.entry-actions button{background-color:var(--accent-color-light);border:none;border-radius:5px;color:var(--text-color);cursor:pointer;padding:5px 10px}.entry-actions .delete-btn{background-color:#e74c3c;color:#fff}.edit-mode input[type=text],.edit-mode textarea{background-color:var(--bg-color);border:1px solid var(--text-color-secondary);border-radius:8px;box-sizing:border-box;color:var(--text-color);font-family:DM Sans,sans-serif;margin-bottom:10px;padding:10px;resize:vertical;width:100%}.edit-mode .location-inputs{margin-bottom:10px}.edit-mode button{background-color:var(--accent-color);border:none;border-radius:5px;color:var(--button-text-color);cursor:pointer;margin-right:10px;padding:5px 10px}.photo-section{display:flex;gap:10px;margin-top:15px}.partner-photo,.photo-upload{align-items:center;aspect-ratio:1/1;background-color:var(--bg-color);border-radius:10px;cursor:pointer;display:flex;flex:1 1;justify-content:center;overflow:hidden;position:relative}.upload-placeholder{color:var(--text-color-secondary);text-align:center}.upload-placeholder span{font-size:2em;font-weight:700}.date-photo{height:100%;object-fit:cover;width:100%}.countdowns-container{align-items:center;box-sizing:border-box;justify-content:flex-start;margin:0 auto;max-width:600px;min-height:calc(100vh - 60px);overflow-y:scroll;padding:20px;scrollbar-color:#888 #f5f5f5;scrollbar-width:none}.countdown-form,.countdowns-container{display:flex;flex-direction:column;width:100%}.countdown-form{gap:10px;margin-bottom:20px}.countdown-form input{border:1px solid #ccc;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px;width:100%}.countdown-form button,.countdown-item button{background-color:var(--accent-color);border:none;border-radius:25px;box-shadow:0 4px 15px var(--shadow-color);box-sizing:border-box;color:var(--button-text-color);cursor:pointer;font-family:DM Sans,sans-serif;font-size:16px;font-weight:500;padding:12px 24px;text-align:center;transition:all .3s ease;width:100%}.countdown-form button:hover,.countdown-item button:hover{box-shadow:0 6px 20px var(--shadow-color);filter:brightness(1.1);transform:translateY(-3px)}.countdown-item button{background-color:#f44336;font-size:14px;margin-left:15px;min-width:auto;padding:8px 15px;width:auto}.countdowns-list{overflow-y:scroll;scrollbar-color:#888 #f5f5f5;scrollbar-width:none;width:100%}.countdown-item{align-items:center;background:var(--card-bg-color);border:1px solid var(--accent-color);border-radius:8px;box-shadow:0 4px 15px var(--shadow-color);display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:15px;padding:15px}.countdown-item h3{font-size:1.1em;margin:0 0 10px;width:100%}.countdown-timer{flex-grow:1;font-size:1.2em;font-weight:700}.countdown-timer span{margin-right:5px}@media (min-width:600px){.countdown-form{align-items:center;flex-direction:row}.countdown-form input{flex-grow:1}.countdown-form button{width:auto}}@font-face{font-family:swiper-icons;font-style:normal;font-weight:400;src:url("data:application/font-woff;charset=utf-8;base64, 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")}:root{--swiper-theme-color:#007aff}:host{display:block;margin-left:auto;margin-right:auto;position:relative;z-index:1}.swiper{display:block;list-style:none;margin-left:auto;margin-right:auto;overflow:hidden;padding:0;position:relative;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{box-sizing:initial;display:flex;height:100%;position:relative;transition-property:transform;transition-timing-function:ease;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);width:100%;z-index:1}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{display:block;flex-shrink:0;height:100%;position:relative;transition-property:transform;width:100%}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{-ms-overflow-style:none;overflow:auto;scrollbar-width:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-start:var(--swiper-centered-offset-before);margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-before:var(--swiper-centered-offset-before);margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{height:var(--swiper-centered-offset-after);min-width:1px;width:100%}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(0deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,#00000080,#0000)}.swiper-lazy-preloader{border:4px solid #007aff;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top:4px solid #0000;box-sizing:border-box;height:42px;left:50%;margin-left:-21px;margin-top:-21px;position:absolute;top:50%;transform-origin:50%;width:42px;z-index:10}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.swiper.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transform-origin:center bottom}.tinder-container{box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - 80px);width:100%}.tinder-tabs{background-color:var(--bg-color);display:flex;flex-shrink:0;justify-content:center;padding:10px}.tinder-tabs button{background:none;border:none;border-bottom:2px solid #0000;color:var(--text-color);cursor:pointer;font-family:DM Sans,sans-serif;font-size:1rem;padding:10px 20px;transition:all .3s}.tinder-tabs button.active{border-bottom:2px solid var(--accent-color);color:var(--accent-color)}.swipe-view{flex-grow:1;overflow:hidden}.swipe-view,.swiper,.swiper-slide{height:100%;width:100%}.swiper-slide{align-items:center;border-radius:0;color:#fff;display:flex;font-size:22px;font-weight:700;justify-content:center}.card{background-position:50%;background-size:cover;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:flex-end;padding:20px;position:relative;width:100%}.card h3{color:#fff;margin-bottom:70px;text-align:center;text-shadow:2px 2px 4px #000000b3}.action-buttons{bottom:20px;display:flex;gap:15px;justify-content:center;left:50%;position:absolute;transform:translateX(-50%);width:100%}.action-buttons button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:55px;justify-content:center;transition:all .2s ease-in-out;width:55px}.action-buttons button:hover{background:#fff3;transform:scale(1.15)}.my-photos-view{flex-grow:1;overflow-y:auto;padding:20px}.upload-section{align-items:center;border-bottom:1px solid var(--input-border-color);display:flex;gap:10px;justify-content:center;margin-bottom:20px;padding-bottom:20px}input[type=file]{display:none}.custom-file-upload{background-color:var(--card-bg-color);border:1px solid var(--accent-color);border-radius:5px;color:var(--text-color);cursor:pointer;display:inline-block;padding:6px 12px;transition:background-color .3s}.custom-file-upload:hover{background-color:var(--accent-color);color:var(--button-text-color)}.file-name{color:var(--text-color);font-style:italic}.upload-section button{background-color:var(--accent-color);border:none;border-radius:5px;color:var(--button-text-color);cursor:pointer;font-family:DM Sans,sans-serif;padding:10px 15px;transition:background-color .3s}.upload-section button:disabled{background-color:#ccc;cursor:not-allowed}.upload-section button:hover:not(:disabled){background-color:#c97b8f}.my-photos-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin:0 auto;max-width:1200px;width:100%}.my-photo-card{background-position:50%;background-size:cover;border-radius:10px;box-shadow:0 4px 8px var(--shadow-color);padding-bottom:100%;position:relative;width:100%}.reaction-icon{background:#00000080;border-radius:50%;font-size:24px;line-height:1;padding:5px;position:absolute;right:5px;top:5px}@media (min-width:768px){.card{background-repeat:no-repeat;background-size:contain}}.qotd-container{background:var(--card-bg-color);border:1px solid var(--accent-color-light);border-radius:12px;box-shadow:0 4px 20px var(--shadow-color);margin:20px;padding:20px}.qotd-container h2{margin-top:0}.qotd-container h2,.qotd-question{color:var(--text-color);text-align:center}.qotd-question{font-size:1.1em;font-style:italic;margin-bottom:20px}.qotd-form{display:flex;gap:10px}.qotd-form input{background-color:var(--input-bg-color);border:1px solid #ccc;border-radius:8px;color:var(--text-color);flex-grow:1;padding:10px}.qotd-form button{background-color:var(--accent-color);border:none;border-radius:8px;color:var(--button-text-color);cursor:pointer;font-family:DM Sans,sans-serif;font-weight:500;padding:10px 15px;transition:background-color .3s}.qotd-form button:hover{filter:brightness(1.1)}.qotd-answers{margin-top:20px}.qotd-answer{border-radius:8px;margin-bottom:10px;padding:15px}.qotd-answer strong{color:var(--text-color);display:block;font-size:.9em;margin-bottom:5px}.qotd-answer p{margin:0}.your-answer{background-color:var(--user-message-bg)}.partner-answer{background-color:var(--partner-message-bg)}.partner-answer.waiting{color:var(--text-color);font-style:italic;text-align:center}.home-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start;min-height:calc(100vh - 120px);padding:20px;text-align:center}.home-container h1{font-family:Playfair Display,serif;font-size:2.2rem;margin-bottom:20px}.home-container p{font-family:DM Sans,sans-serif;font-size:1.2rem}.link-account-section{background-color:var(--card-bg-color);border:1px solid var(--accent-color);border-radius:10px;box-shadow:0 4px 8px var(--shadow-color);margin-top:40px;max-width:400px;padding:20px;width:100%}.link-account-section h2{font-family:Playfair Display,serif;margin-bottom:10px}.link-account-section input{background-color:var(--input-bg-color);border:1px solid var(--input-border-color);border-radius:5px;color:var(--text-color);margin-bottom:10px;padding:10px;width:calc(100% - 20px)}.link-account-section button{background-color:var(--accent-color);border:none;border-radius:5px;color:var(--button-text-color);cursor:pointer;padding:10px;transition:background-color .3s;width:100%}.link-account-section button:hover{background-color:#c97b8f}.error-message{color:var(--danger-color);margin-top:10px}.success-message{color:#42d48c;margin-top:10px}
/*# sourceMappingURL=main.b504d9f4.css.map*/