@font-face{font-family:Marjorie;src:url(/assets/marjorie-font/Marjorie-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Marjorie;src:url(/assets/marjorie-font/Marjorie-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}a{color:inherit;text-decoration:none;transition:all .3s ease-in}body{font-family:Marjorie,sans-serif;background-color:#fafaf5;min-height:100vh;display:flex;flex-direction:column;position:relative}.login-screen{position:fixed;top:0;left:0;right:0;bottom:70px;display:flex;align-items:center;justify-content:center;z-index:40;opacity:1;transition:opacity .5s ease}.login-screen.hidden{opacity:0;pointer-events:none}.login-screen.visible{opacity:1;pointer-events:auto}.login-wrapper{width:100%;max-width:600px;padding:0 2rem}.login-input-wrapper{position:relative;display:flex;align-items:center}.login-input{width:100%;font-family:Marjorie,sans-serif;font-size:1.5rem;color:#050505;background-color:transparent;border:none;outline:none;padding:.5rem 2rem .5rem 0;text-align:center;transition:all .2s ease}.login-input:focus{background-color:transparent}.login-input::placeholder{color:#ccc}.generate-btn{position:absolute;right:0;top:50%;transform:translateY(-50%);background:none;border:none;padding:.25rem;cursor:pointer;color:#ccc;transition:color .2s ease;display:flex;align-items:center;justify-content:center}.generate-btn:hover{color:#050505}.app-screen{opacity:1;transition:opacity .5s ease}.app-screen.hidden{opacity:0;pointer-events:none}.app-screen.visible{opacity:1;pointer-events:auto}.logout-btn{position:fixed;top:2rem;right:2rem;font-family:Marjorie,sans-serif;font-size:1rem;color:#050505;background:transparent;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.5rem 1rem;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000000a;z-index:50}.logout-btn:hover{background:#ffffff1a;box-shadow:0 4px 12px #00000014}.todo-wrapper{position:absolute;top:150px;left:50%;transform:translate(-50%);width:100%;max-width:600px;padding:0 2rem 8rem}.todo-list{display:flex;flex-direction:column;gap:1.5rem}.todo-item{display:flex;align-items:center;gap:.75rem;position:relative}.todo-item.inactive .todo-number,.todo-item.inactive .todo-input,.todo-item.inactive .todo-checkbox{color:#ccc;border-color:#ccc}.todo-item.inactive{cursor:pointer}.todo-item.inactive:hover .todo-number,.todo-item.inactive:hover .todo-input,.todo-item.inactive:hover .todo-checkbox{border-color:#999}.todo-item.completed .todo-input{color:#999;border-color:#999;transition:color .8s ease,border-color .8s ease}.todo-item.completed .todo-checkbox{transition:all .2s ease}.squiggly-line{position:absolute;left:0;top:25%;height:8px;pointer-events:none;transform:translateY(-50%);z-index:2}.squiggly-line svg{width:100%;height:100%}@keyframes drawLine{to{stroke-dashoffset:0}}.todo-number{font-family:Marjorie,sans-serif;font-size:1rem;color:#050505;min-width:2rem;text-align:right}.todo-input{width:100%;font-family:Marjorie,sans-serif;font-size:1rem;color:#050505;background-color:transparent;border:0px solid #050505;border-bottom:1px solid;outline:none;transition:all .2s ease;position:relative;z-index:1;padding:.5rem 0}.todo-input:focus{border-color:#050505;background-color:#05050505}.todo-input:disabled{cursor:pointer}.todo-checkbox{width:24px;height:24px;min-width:24px;border:1px solid #050505;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;color:#050505;transition:all .2s ease;-webkit-user-select:none;user-select:none}.todo-checkbox:hover{background-color:#0505050d}.todo-checkbox.checked{background-color:#050505;color:#fafaf5}.todo-check{display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#ccc;min-width:24px}.todo-check:hover{color:#999}.todo-check svg{stroke:currentColor}.todo-item.completed .todo-check{color:#050505}.container{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;padding:1.5rem;gap:1rem;background:#fafaf533;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid #ccc;z-index:50}.home-footer{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;padding:1rem 0;background:#fafaf5;border-top:1px solid #ccc;z-index:10}.blog-link{color:#050505;text-decoration:none;font-size:1.5rem}.blog-link:hover{opacity:.6}.goals-container{position:absolute;top:100px;left:50%;transform:translate(-50%);width:100%;max-width:700px;padding:0 2rem 4rem}.goals-header{margin-bottom:3rem;text-align:center}.goals-header h1{font-size:2rem;color:#050505;margin-bottom:1.5rem}.view-switcher{display:flex;gap:1rem;justify-content:center}.view-btn{background:transparent;border:none;border-bottom:2px solid transparent;color:#050505;font-family:Marjorie,sans-serif;font-size:1rem;padding:.5rem 1rem;cursor:pointer;transition:all .2s ease;text-transform:lowercase}.view-btn:hover{border-bottom-color:#ccc}.view-btn.active{border-bottom-color:#050505}.goals-content{display:flex;flex-direction:column;gap:2rem;padding-bottom:4rem}.goal-item{display:flex;align-items:center;gap:.75rem}.goal-input{width:100%;font-family:Marjorie,sans-serif;font-size:1rem;color:#050505;background-color:transparent;border:0px solid #050505;border-bottom:1px solid;outline:none;transition:all .2s ease;padding:.5rem 0}.goal-input:focus{border-color:#050505;background-color:#05050505}.goal-input::placeholder{color:#ccc}.goal-circle{width:20px;height:20px;min-width:20px;border:1px solid #050505;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.goal-circle-inner{width:10px;height:10px;background-color:#050505;border-radius:50%}.reason-wrapper{display:flex;flex-direction:column;gap:.5rem;margin-top:-1rem;margin-left:0}.reason-label{font-family:Marjorie,sans-serif;font-size:.875rem;color:#999}.reason-textarea{width:100%;font-family:Marjorie,sans-serif;font-size:.875rem;color:#050505;background-color:transparent;border:1px solid #ccc;border-radius:4px;outline:none;padding:.5rem;resize:vertical;transition:all .2s ease}.reason-textarea:focus{border-color:#050505}.reason-textarea::placeholder{color:#ccc}.goal-item.completed .goal-input{color:#999}.testing-console{position:fixed;top:100px;right:30px;background:#fafaf5;border:1px solid #050505;padding:20px;width:200px;font-family:Marjorie,serif}.testing-console h3{margin:0 0 15px;font-size:14px;font-weight:700;text-transform:lowercase}.testing-console .test-controls{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.testing-console .test-btn{font-family:Marjorie,serif;font-size:12px;padding:8px 12px;background:none;border:1px solid #050505;color:#050505;cursor:pointer;text-transform:lowercase;transition:all .2s}.testing-console .test-btn:hover{background:#050505;color:#fafaf5}.testing-console .test-btn.reset{border-color:#999;color:#999}.testing-console .test-btn.reset:hover{background:#999;color:#fafaf5}.testing-console .test-info{border-top:1px solid #ccc;padding-top:10px}.testing-console .test-date{font-size:11px;color:#999;line-height:1.4}.review-title{font-family:Marjorie,serif;font-size:1.2rem;font-weight:700;margin-bottom:2rem;text-transform:lowercase;color:#050505}.goal-item.readonly{pointer-events:none}.goal-item.readonly .goal-text{flex:1;font-family:Marjorie,sans-serif;font-size:1rem;color:#050505;padding:.5rem 0}.goal-item.readonly.completed .goal-text{color:#999;text-decoration:line-through}.approve-btn{font-family:Marjorie,serif;font-size:11px;padding:4px 10px;background:none;border:1px solid #050505;color:#050505;cursor:pointer;text-transform:lowercase;transition:all .2s;white-space:nowrap}.approve-btn:hover{background:#050505;color:#fafaf5}.goal-input:disabled{opacity:.7;cursor:not-allowed}.submit-btn{font-family:Marjorie,serif;font-size:14px;padding:12px 24px;background:none;border:1px solid #050505;color:#050505;cursor:pointer;text-transform:lowercase;transition:all .2s;margin-top:2rem;display:block}.submit-btn:hover{background:#050505;color:#fafaf5}.checkup-empty{font-family:Marjorie,serif;font-size:1rem;color:#999;text-align:center;padding:3rem 0}.checkup-period{margin-bottom:3rem}.checkup-period:last-child{margin-bottom:0}.checkup-period-title{font-family:Marjorie,serif;font-size:1.1rem;font-weight:700;margin:0 0 1.5rem;text-transform:lowercase;color:#050505;border-bottom:1px solid #ccc;padding-bottom:.5rem}.checkup-goal{margin-bottom:1.5rem;padding:1rem;border:1px solid #ccc}.checkup-goal.completed{border-color:#050505}.checkup-goal.incomplete{border-color:#ccc}.checkup-goal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem}.checkup-goal-text{font-family:Marjorie,sans-serif;font-size:1rem;color:#050505;flex:1}.checkup-goal-status{font-family:Marjorie,serif;font-size:1.2rem;white-space:nowrap}.checkup-reason{font-family:Marjorie,sans-serif;font-size:.875rem;color:#999;line-height:1.5;padding-top:.5rem;border-top:1px solid #ccc}.review-reminder{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#05050508;border:1px solid #ccc;border-radius:4px;margin-bottom:2rem}.review-reminder-text{font-family:Marjorie,serif;font-size:.95rem;color:#050505}.review-reminder-btn{font-family:Marjorie,serif;font-size:.875rem;padding:.5rem 1rem;background:#050505;border:none;color:#fafaf5;cursor:pointer;text-transform:lowercase;transition:all .2s}.review-reminder-btn:hover{opacity:.8}.checkup-filters{display:flex;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.checkup-filter-btn{font-family:Marjorie,serif;font-size:.875rem;padding:.5rem 1rem;background:none;border:1px solid #ccc;color:#050505;cursor:pointer;text-transform:lowercase;transition:all .2s}.checkup-filter-btn:hover{border-color:#050505}.checkup-filter-btn.active{background:#050505;color:#fafaf5;border-color:#050505}.weekly-quote{margin-top:3rem;padding:2rem 1.5rem;border-top:1px solid #ccc;text-align:center}.weekly-quote-text{font-family:Marjorie,serif;font-size:1.1rem;line-height:1.6;color:#050505;margin-bottom:1rem;font-style:italic}.weekly-quote-author{font-family:Marjorie,sans-serif;font-size:.9rem;color:#999}
