body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--navy-blue:#1a2a44;--light-blue:#dff6ff;--soft-yellow:#ffd369;--orange:coral;--light-gray:#d6edf6;--dark-gray:#4a4a4a;--teal:#2cb9b0}body{background-color:#d6edf6;background-color:var(--light-gray);color:#4a4a4a;color:var(--dark-gray);font-family:Arial,sans-serif;margin:0;padding:0}.app-container{padding:0;text-align:center}.header{align-items:center;background-color:#dff6ff;background-color:var(--light-blue);border-bottom:2px solid #d6edf6;border-bottom:2px solid var(--light-gray);display:flex;justify-content:space-between;padding:0 20px;position:-webkit-sticky;position:sticky;top:0;z-index:999}.header-center{flex-shrink:0;margin:0 auto}.header-center,.header-left{align-items:center;display:flex;gap:15px}.header-right{align-items:center;display:flex;justify-content:flex-end}.header-right button{background-color:#ffd369;background-color:var(--soft-yellow);border:1px solid #4a4a4a;border:1px solid var(--dark-gray);border-radius:5px;color:#1a2a44;color:var(--navy-blue);cursor:pointer;padding:8px 12px}.header-right button:hover{background-color:coral;background-color:var(--orange);color:#fff}.logo{height:80px}.title{color:#1a2a44;color:var(--navy-blue);font-size:2.5rem;margin:0}.description{font-size:1.2rem;margin:20px 0}.primary-button{background-color:#ffd369;background-color:var(--soft-yellow);border:none;border-radius:5px;color:#1a2a44;color:var(--navy-blue);cursor:pointer;font-size:1rem;font-weight:700;padding:10px 20px;transition:background-color .3s ease,transform .2s ease}.primary-button:hover{background-color:coral;background-color:var(--orange);transform:scale(1.05)}.slogan{color:coral;color:var(--orange);font-size:1.5rem;margin:0}.modal-overlay{align-items:center;background-color:#0000004d;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{background-color:#fff;border-radius:10px;box-shadow:0 4px 10px #0003;max-width:600px;overflow:hidden;padding:0;width:90%}.modal-content form{padding:20px}.modal-header{align-items:center;background-color:#1a2a44;background-color:var(--navy-blue);color:#dff6ff;color:var(--light-blue);display:flex;justify-content:center;margin:0;padding:15px;position:relative}.modal-header h2{flex-grow:1;font-size:1.5rem;margin:0;text-align:center}.close-button{background:none;border:none;color:#dff6ff;color:var(--light-blue);cursor:pointer;font-size:1.5rem;font-weight:700;position:absolute;right:10px;top:30%;transform:translateY(-50%)}.close-button:hover{color:coral;color:var(--orange)}form{padding:20px}.form-group input,.form-group textarea{word-wrap:break-word;border:1px solid #d6edf6;box-sizing:border-box;font-family:Arial,sans-serif;overflow-wrap:break-word}.form-group textarea{min-height:150px;resize:vertical}.submit-button{background-color:#ffd369;color:#1a2a44;width:100%}.submit-button:hover{background-color:coral}.stories-section{margin:30px auto;max-width:800px;text-align:left}.story-card{word-wrap:break-word;background-color:#dff6ff;background-color:var(--light-blue);border-radius:10px;box-shadow:0 4px 8px #0000001a;margin-bottom:20px;overflow-wrap:break-word;padding:15px;white-space:pre-wrap}.story-card h3{color:#1a2a44;color:var(--navy-blue);margin:0 0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.story-card p{margin:5px 0}.story-author{color:#4a4a4a}.voting-section{margin-top:15px}.grumpy-button{background-color:initial;border:2px solid coral;border:2px solid var(--orange);border-radius:10px;color:#4a4a4a;color:var(--dark-gray);cursor:pointer;font-size:1rem;padding:10px 20px;transition:background-color .3s,color .3s}.grumpy-button:hover{background-color:coral}.funny-button{background-color:initial;border:2px solid #1a2a44;border:2px solid var(--navy-blue);border-radius:10px;color:#4a4a4a;color:var(--dark-gray);cursor:pointer;font-size:1rem;padding:10px 20px;transition:background-color .3s,color .3s}.funny-button:hover{background-color:#1a2a44}.voting-text{color:#4a4a4a}.grumpy-button.active-vote{background-color:coral}.funny-button.active-vote{background-color:#1a2a44}.back-to-top{background-color:#ffd369;background-color:var(--soft-yellow);border:none;border-radius:50%;bottom:100px;box-shadow:0 4px 8px #0003;color:#1a2a44;color:var(--navy-blue);cursor:pointer;font-size:1.5rem;height:50px;position:fixed;right:20px;transition:background-color .3s,color .3s;width:50px;z-index:1000}.back-to-top:hover{background-color:coral;background-color:var(--orange);color:#fff}@media screen and (max-width:768px){.header{align-items:center;flex-direction:row;justify-content:space-between;padding:10px}.header-center{align-items:flex-start;flex-direction:column;gap:5px;margin:0}.login-button{display:none}.logo{height:60px}.title{font-size:1.8rem}.slogan{font-size:1.2rem}.modal-content{max-width:95%;width:95%}.story-card{padding:12px}.story-card h3{font-size:1.3rem}.voting-section{flex-direction:column;gap:10px}.funny-button,.grumpy-button{align-items:center;display:flex;font-size:1.1rem;justify-content:space-between;margin:5px 0;padding:15px 10px;width:100%}.funny-button span,.grumpy-button span{font-size:1.2rem;font-weight:700}.voting-text{margin-bottom:5px;order:-1;text-align:center}.story-page-container{padding:10px}.comments-section{padding:15px}button,input,textarea{font-size:16px!important}.submit-button{width:100%}.back-to-top{bottom:20px;height:40px;right:15px;width:40px}.reply-button,.show-replies-button,.toggle-comments-button{min-height:44px;padding:10px 15px}.primary-button,.profile-button,.submit-comment-button{min-height:44px;padding:12px 15px}}@media screen and (max-width:480px){.header{padding:8px}.logo{height:50px}.slogan{font-size:1rem}.story-card{padding:10px}.story-card h3{font-size:1.2rem}.form-group{margin-bottom:12px}.form-group label{font-size:.9rem}input,select,textarea{-webkit-appearance:none;appearance:none}}.story-form-container{border-radius:10px;box-shadow:0 4px 8px #0000001a;padding:20px}.story-form-container h2{color:var(--navy-blue);margin-bottom:20px}.form-group{margin-bottom:15px}.form-group input,.form-group textarea{border:1px solid var(--light-gray);border-radius:5px;font-size:1rem;margin:0;padding:10px;width:100%}.form-group textarea{height:100px}.submit-button{background-color:var(--soft-yellow);border:none;border-radius:5px;color:var(--navy-blue);cursor:pointer;font-size:1rem;font-weight:700;margin-top:15px;padding:10px 20px;transition:background-color .3s ease,transform .2s ease}.submit-button:hover{background-color:var(--orange);transform:scale(1.05)}.submission-message{color:var(--teal);font-size:1rem;font-weight:700;margin-top:15px}.header-container{background-color:var(--navy-blue);border-radius:10px 10px 0 0;color:var(--light-blue);margin:0;text-align:center}.form-header{font-size:1.5rem;font-weight:700;margin:0}.story-form-container{background-color:var(--light-blue);border-radius:0;box-shadow:none;margin:0 auto;max-width:600px;overflow:visible;padding:0}form{padding:0}.form-group label{color:var(--navy-blue);display:block;font-weight:700;margin-bottom:5px;padding-top:15px}.char-counter{color:var(--dark-gray);font-size:.9rem;margin-right:5px;margin-top:5px;text-align:right}.login-modal-overlay{align-items:center;background-color:#0009;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.login-modal-content{background:var(--light-blue);border-radius:15px;box-shadow:0 4px 10px #0000004d;padding:25px;position:relative;width:350px}.login-modal-header{align-items:center;background:none;display:flex;justify-content:center;margin-bottom:20px;position:relative}.login-modal-header h2{color:var(--navy-blue);font-size:1.5rem;font-weight:700;margin:0;text-align:center}.login-close-button{color:var(--light-blue);cursor:pointer;font-size:1.8rem;font-weight:700;height:auto;line-height:1;margin:0;padding:0;position:absolute;right:0;top:0;transition:color .3s ease;width:auto}.login-close-button,.login-close-button:focus,.login-close-button:hover{background:none!important;border:none!important;box-shadow:none!important;outline:none!important;transform:none}.login-close-button:focus,.login-close-button:hover{color:var(--orange)!important}.login-form-group{margin-bottom:20px}.login-form-group label{color:var(--dark-gray);display:block;font-size:1.1rem;font-weight:700;margin-bottom:5px}.login-form-group input{border:1px solid var(--light-gray);border-radius:5px;font-size:1rem;outline:none;padding:10px;transition:border-color .3s;width:100%}.login-form-group input:focus{border-color:var(--orange)}.login-submit-button{background-color:var(--soft-yellow);border:none;border-radius:8px;color:var(--navy-blue);cursor:pointer;font-size:1rem;font-weight:700;padding:12px;transition:background-color .3s,transform .2s;width:100%}.login-submit-button:hover{background-color:var(--orange);color:#fff;transform:scale(1)}.login-submit-button:disabled{background-color:#ccc;cursor:not-allowed}.login-toggle-link{color:var(--dark-gray);cursor:pointer;font-size:.85rem;margin-top:15px;text-align:center;text-decoration:underline;transition:color .3s}.login-toggle-link:hover{color:var(--orange)}.login-message-container{margin:10px 0;padding:10px;text-align:center}.login-auth-message{color:#f44;font-size:14px;margin:10px 0;text-align:center}.login-auth-message.success{color:#4caf50}.login-success-message{color:#4caf50}.login-success-message,.logout-success-message{font-size:1.2rem;font-weight:700;text-align:center}.logout-success-message{color:var(--orange)}.forgot-password-link{color:var(--dark-gray);cursor:pointer;display:block;font-size:.85rem;margin-bottom:10px;text-align:right;text-decoration:underline;transition:color .3s}.forgot-password-link:hover{color:var(--orange)}.forgot-password-modal{background:var(--light-blue);border-radius:15px;box-shadow:0 4px 10px #0000004d;padding:25px;position:relative;width:350px}.forgot-password-instructions{color:var(--dark-gray);font-size:.95rem;margin-bottom:20px;text-align:center}.forgot-success-modal{align-items:center;background:var(--light-blue);border-radius:15px;box-shadow:0 4px 10px #0000004d;display:flex;justify-content:center;padding:25px;position:relative;width:350px}.forgot-success-message{color:var(--dark-gray);font-size:1rem;font-weight:700;text-align:center}.recaptcha-container{display:flex;justify-content:center;margin:15px 0}.character-count{color:var(--dark-gray);font-size:.8rem;margin-top:5px;text-align:right}.field-status{font-style:italic;font-weight:400}.login-form-group input.error{border-color:#f44}.error-message{color:#f44;font-size:.8rem;margin-top:5px}.auth-controls{align-items:center;display:flex;gap:10px}.avatar-container{cursor:pointer;position:relative}.user-avatar{border:2px solid var(--light-blue);border-radius:50%;height:40px;object-fit:cover;transition:border-color .3s;width:40px}.user-avatar:hover{border-color:var(--orange)}.profile-dropdown{background-color:#fff;border-radius:8px;box-shadow:0 4px 10px #0003;overflow:hidden;position:absolute;right:0;top:45px;width:150px;z-index:1000}.dropdown-item{color:var(--dark-gray);font-size:.9rem;overflow:hidden;padding:10px 15px;text-overflow:ellipsis;transition:background-color .3s;white-space:nowrap}.dropdown-item:hover{background-color:#a3d3e7;color:var(--navy-blue);font-weight:520}@media screen and (max-width:768px){.login-modal-content{max-width:95%;padding:20px 15px;width:95%}.login-form-group{margin-bottom:18px}.login-form-group input{font-size:16px;padding:12px}.login-submit-button{font-size:1rem;padding:14px}.profile-dropdown{top:50px;width:180px}.dropdown-item{font-size:1rem;padding:15px}.login-container{padding:10px}.login-close-button{font-size:2rem;right:5px;top:5px}.user-avatar{height:44px;width:44px}.login-button{display:none}input,select,textarea{-webkit-appearance:none;appearance:none}}.story-page-container{align-items:center;display:flex;flex-direction:column;justify-content:flex-start;margin:0 auto;max-width:800px;padding:20px}.story-page-card{background-color:var(--light-blue);border-radius:10px;box-shadow:0 4px 8px #0000001a;margin-bottom:30px;max-width:800px;padding:20px;width:100%}.story-page-card h3{color:var(--navy-blue);font-size:1.5rem;margin-bottom:10px}.story-page-card p{line-height:1.6;margin:10px 0}.story-author{color:var(--dark-gray);font-style:italic;margin-top:10px;text-align:right}.voting-section{align-items:center;display:flex;justify-content:space-between;margin-top:20px}.funny-button,.grumpy-button{background-color:initial;border:2px solid var(--orange);border-radius:10px;color:var(--dark-gray);cursor:pointer;font-size:1rem;padding:10px 20px;transition:background-color .3s,color .3s}.grumpy-button:hover{background-color:var(--orange);color:#fff}.funny-button{border-color:var(--navy-blue)}.funny-button:hover{background-color:var(--navy-blue);color:#fff}.voting-text{color:var(--dark-gray);font-size:1rem;font-style:italic}.comments-section{background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;margin-top:30px;max-width:800px;padding:20px;text-align:left;width:100%}.comments-section h3{color:var(--navy-blue);font-size:1.4rem;margin-bottom:20px}.toggle-comments-button{align-items:center;background-color:var(--navy-blue);border:none;border-radius:5px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:700;height:2.5rem;margin-bottom:15px;padding:8px 15px;transition:background-color .3s ease,color .3s ease}.toggle-comments-button:hover{background-color:var(--orange);color:#fff}.toggle-comments-button .icon{font-size:1.2rem;margin-left:8px;transition:transform .3s ease}.toggle-comments-button.expanded .icon{transform:rotate(90deg)}.comment{background-color:var(--light-gray);border-radius:8px;box-shadow:0 2px 6px #0000001a;margin-bottom:20px;padding:15px}.comment p{line-height:1.4;margin:0 0 10px}.comment-meta{color:var(--dark-gray);font-size:.85rem;font-style:italic}.comment .nested-comments{border-left:2px solid var(--navy-blue);margin-left:20px;padding-left:10px}.nested-comments .comment{margin-top:15px}.show-replies-button{align-items:center;background-color:var(--navy-blue);border:2px solid var(--navy-blue);border-radius:5px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:700;height:1.9rem;margin-top:10px;padding:6px 10px;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.show-replies-button:hover{background-color:var(--orange);border-color:var(--orange);color:#fff}.show-replies-button .icon{font-size:1rem;margin-left:5px;transition:transform .3s ease}.show-replies-button.expanded .icon{transform:rotate(90deg)}.reply-button{align-items:center;background-color:var(--light-blue);border:none;border-radius:5px;color:var(--navy-blue);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:700;margin-top:10px;padding:6px 10px;transition:background-color .3s ease,color .3s ease}.reply-button:hover{background-color:var(--navy-blue);color:#fff}.reply-button.active{background-color:var(--orange);color:#fff}.comment-input{border:1px solid var(--light-gray);border-radius:5px;box-sizing:border-box;font-size:1rem;margin-top:10px;padding:10px;resize:vertical;width:100%}.comment-input:focus{border-color:var(--orange);outline:none}.submit-comment-button{background-color:var(--soft-yellow);border:none;border-radius:5px;color:var(--navy-blue);cursor:pointer;font-size:1rem;padding:10px 20px;transition:background-color .3s ease}.submit-comment-button:hover{background-color:var(--orange);color:#fff}.sticky-comment-form{background-color:#fff;border:1px solid var(--light-gray);border-radius:8px;box-shadow:0 2px 6px #0000001a;margin-bottom:15px;padding:15px;position:-webkit-sticky;position:sticky;top:0;z-index:900}.greyed-out{background-color:gray!important;border-color:gray!important;color:#fff!important;cursor:not-allowed;opacity:.7}.grumpy-button.active-vote{background-color:var(--orange);color:#fff}.funny-button.active-vote{background-color:var(--navy-blue);color:#fff}@media screen and (max-width:768px){.story-page-container{padding:10px}.story-page-card{margin-bottom:20px;padding:15px}.story-page-card h3{font-size:1.3rem}.voting-section{flex-direction:column;gap:10px}.funny-button,.grumpy-button{align-items:center;display:flex;font-size:1.1rem;justify-content:space-between;padding:15px 10px;width:100%}.funny-button span,.grumpy-button span{font-size:1.2rem;font-weight:700}.voting-text{font-size:.95rem;margin:5px 0 10px;order:-1;text-align:center}.comments-section{margin-top:20px;padding:15px}.comments-section h3{font-size:1.2rem}.reply-button,.show-replies-button,.toggle-comments-button{min-height:44px;padding:10px 15px}.sticky-comment-form{padding:12px}.comment-input{font-size:16px;padding:12px}.submit-comment-button{margin-top:10px;padding:12px;width:100%}.comment{margin-bottom:15px;padding:12px}.nested-comments{margin-left:12px;padding-left:8px}}@media screen and (max-width:480px){.story-page-card h3{font-size:1.2rem}.comment{padding:10px}.comment-meta{font-size:.8rem}input,select,textarea{-webkit-appearance:none;appearance:none}}.profile-container{background-color:#fff;border-radius:15px;box-shadow:0 4px 10px #0000001a;margin:30px auto;max-width:800px;overflow:hidden}.profile-header{background-color:var(--navy-blue);color:#fff;padding:20px;text-align:center}.profile-header h1{font-size:1.8rem;margin:0}.profile-content{padding:30px}.profile-error,.profile-loading{color:var(--dark-gray);font-size:1.1rem;padding:30px;text-align:center}.profile-error{color:#f44}.profile-avatar-container{display:flex;justify-content:center;margin-bottom:30px}.profile-avatar{border:4px solid var(--light-blue);border-radius:50%;box-shadow:0 4px 8px #0000001a;height:120px;object-fit:cover;width:120px}.profile-details{margin:0 auto;max-width:600px}.profile-field{border-bottom:1px solid var(--light-gray);margin-bottom:20px;padding-bottom:15px;position:relative}.profile-field label{color:var(--dark-gray);display:block;font-size:.9rem;font-weight:700;margin-bottom:5px;text-align:center}.profile-value-container{align-items:center;display:flex;position:relative}.profile-value-wrapper{flex-grow:1;padding:0 40px;text-align:center}.profile-value{color:var(--navy-blue);font-size:1.1rem}.profile-edit-button{background-color:var(--light-blue);border:1px solid var(--light-gray);border-radius:4px;color:var(--navy-blue);cursor:pointer;font-size:.9rem;padding:5px 10px;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:background-color .3s}.profile-edit-button:hover{background-color:var(--soft-yellow)}.profile-edit-container{margin-top:8px}.profile-edit-input{border:1px solid var(--light-gray);border-radius:4px;font-size:1rem;margin-bottom:10px;padding:8px 12px;width:100%}.profile-edit-input:focus{border-color:var(--soft-yellow);box-shadow:0 0 0 2px #ffd3694d;outline:none}.profile-edit-buttons{display:flex;gap:10px}.profile-cancel-button,.profile-save-button{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:700;padding:8px 15px;transition:all .2s ease}.profile-save-button{background-color:var(--soft-yellow);color:var(--navy-blue)}.profile-save-button:hover:not(:disabled){background-color:var(--orange);color:#fff}.profile-save-button:disabled{cursor:not-allowed;opacity:.5}.profile-cancel-button{background-color:var(--light-gray);color:var(--dark-gray)}.profile-cancel-button:hover{background-color:#c6dde8}.profile-update-message{border-radius:4px;font-size:.95rem;margin:15px 0;padding:10px;text-align:center}.profile-update-message.success{background-color:#4caf501a;border:1px solid #4caf504d;color:#2e7d32}.profile-update-message.error{background-color:#f443361a;border:1px solid #f443364d;color:#d32f2f}.profile-actions{display:flex;justify-content:center;margin-top:40px}.profile-button{background-color:var(--soft-yellow);border:none;border-radius:5px;color:var(--navy-blue);cursor:pointer;font-size:1rem;font-weight:700;padding:10px 20px;transition:background-color .3s ease,transform .2s ease}.profile-button:hover{background-color:var(--orange);color:#fff;transform:scale(1.05)}@media (max-width:600px){.profile-container{margin:20px 10px}.profile-content{padding:20px 15px}.profile-avatar{height:100px;width:100px}.profile-field{margin-bottom:15px}}@media screen and (max-width:768px){.profile-container{margin:15px auto;width:95%}.profile-header{padding:15px}.profile-header h1{font-size:1.5rem}.profile-content{padding:15px}.profile-avatar{height:100px;width:100px}.profile-field{margin-bottom:15px;padding-bottom:12px}.profile-value-container{align-items:flex-start;flex-direction:column;position:relative}.profile-value-wrapper{padding:0 0 40px;text-align:left;width:100%}.profile-edit-button{bottom:5px;position:absolute;right:0;top:auto;transform:none}.profile-edit-input{font-size:16px;padding:12px}.profile-edit-buttons{justify-content:space-between}.profile-cancel-button,.profile-save-button{padding:12px;width:48%}.profile-actions{margin-top:30px}.profile-button{padding:14px;width:100%}}@media screen and (max-width:480px){.profile-header h1{font-size:1.3rem}.profile-avatar{height:80px;width:80px}.profile-field label{font-size:.85rem}.profile-value{font-size:1rem}}
/*# sourceMappingURL=main.771b3c92.css.map*/