:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1e293b;background-color:#f8fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;font-family:inherit;background-color:#f8fafc;overflow-x:hidden;overflow-y:hidden}html{overflow-x:hidden;overflow-y:hidden}*{box-sizing:border-box}img{max-width:100%;height:auto}@media (max-width: 768px){button,[role=button],input[type=button],input[type=submit]{min-height:44px;min-width:44px}input,select,textarea{font-size:16px}}.container{width:100%;max-width:1200px;margin:0 auto;padding:1rem}@media (min-width: 768px){.container{padding:2rem}}@media (min-width: 1024px){.container{padding:3rem}}.responsive-text{font-size:clamp(1rem,2.5vw,1.25rem);line-height:1.6}.responsive-heading{font-size:clamp(1.5rem,4vw,3rem);line-height:1.2;font-weight:700}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.animate-fade-in{animation:fadeIn .2s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}:root{--teal-500: #2FA89A;--teal-700: #1E6A62;--teal-100: #E0F2F0;--grey-900: #1A202C;--grey-700: #4A5568;--grey-600: #718096;--grey-500: #A0AEC0;--grey-400: #CBD5E0;--grey-300: #E2E8F0;--grey-200: #EDF2F7;--grey-100: #F7FAFC;--grey-50: #F9FAFB;--white: #FFFFFF;--teal-50: #E6FFFA;--teal-600: #2C7A7B;--success: #38A169;--success-light: #C6F6D5;--success-dark: #22543D;--warning: #D69E2E;--warning-light: #FEF5E7;--warning-dark: #975A16;--error: #E53E3E;--error-light: #FED7D7;--error-dark: #742A2A;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px}#root{width:100%;height:100vh;margin:0;padding:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;color:var(--grey-900);overflow:hidden}.app-container{display:flex;flex-direction:column;height:90dvh;border:1px solid var(--grey-400);border-radius:8px;background-color:var(--grey-100);overflow:hidden;position:relative;padding-bottom:64px;box-sizing:border-box}.main-content{flex-grow:1;overflow-y:auto}.bottom-nav{display:flex;justify-content:space-around;position:absolute;bottom:0;left:0;right:0;height:64px;background-color:var(--white);border-top:1px solid var(--grey-400);z-index:100}.nav-button{flex:1;background-color:transparent;border:none;font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:var(--grey-700);cursor:pointer;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;transition:color .2s ease-in-out}.nav-button:hover{color:var(--teal-500)}.nav-button.active{color:var(--teal-500);font-weight:700}.chat-view-container{display:flex;flex-direction:column;height:100%;width:100%;max-width:100%;flex:1;background-color:var(--white)}.chat-view-container .view-header{padding:var(--space-2);border-bottom:1px solid var(--grey-400);background-color:var(--white);flex-shrink:0}.message-list{display:flex;flex-direction:column;padding:0 var(--space-2);flex-grow:1;overflow-y:auto;overflow-x:hidden;padding-bottom:160px;scrollbar-width:thin;scrollbar-color:var(--grey-400) transparent}.message-list::-webkit-scrollbar{width:6px}.message-list::-webkit-scrollbar-track{background:transparent}.message-list::-webkit-scrollbar-thumb{background-color:var(--grey-400);border-radius:3px;transition:background-color .2s}.message-list::-webkit-scrollbar-thumb:hover{background-color:var(--grey-700)}.message{display:flex;gap:var(--space-1);margin-bottom:var(--space-2);animation:messageSlideIn .2s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message:first-child{margin-top:var(--space-2)}.message:last-of-type{margin-bottom:var(--space-3)}.message.user{align-self:flex-end;max-width:70%}.message.ai{align-self:stretch;max-width:none!important}.message-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;align-self:flex-end}.message-bubble{padding:12px;line-height:1.6;font-family:Inter,sans-serif;font-size:16px}.message-text{margin:0}.message.user .message-bubble{background-color:var(--teal-500);color:var(--white);border-radius:16px 16px 4px;box-shadow:0 2px 4px #2fa89a33}.message.ai .message-bubble.text-only{background-color:var(--white);color:var(--grey-900);border-radius:16px 16px 16px 4px;border:1px solid transparent}.message.ai .message-bubble.success{background-color:#f0f9ff;color:var(--success);border-radius:16px 16px 16px 4px;border:1px solid var(--success)}.input-area{position:absolute;bottom:64px;left:0;right:0;display:flex;align-items:center;padding:var(--space-1) var(--space-2);border-top:1px solid var(--grey-400);background-color:var(--white);z-index:50;box-sizing:border-box}.chat-input-container{box-shadow:0 -2px 12px #00000014;border:1px solid var(--grey-400);transition:box-shadow .2s ease}.chat-input-container:focus-within{box-shadow:0 -2px 20px #2fa89a26;border-color:var(--teal-500)}@media (min-width: 768px){.chat-view-container{max-width:100%;width:100%}.message-list{padding-left:var(--space-4);padding-right:var(--space-4);max-width:100%}.message.ai{width:100%}.message.user{max-width:60%}}@media (min-width: 1200px){.message-list{padding-left:48px;padding-right:48px}}@media (min-width: 1600px){.message-list{padding-left:64px;padding-right:64px}}.input-area input{flex-grow:1;border:none;background-color:transparent;color:var(--grey-900);padding:.75rem;font-size:16px;font-family:Inter,sans-serif}.input-area input:focus{outline:none}.input-area .send-button{border:none;background-color:var(--teal-500);color:#fff;border-radius:8px;cursor:pointer;width:40px;height:40px;display:flex;justify-content:center;align-items:center}.thinking-indicator .ellipsis{display:inline-block;width:24px;text-align:center}.ellipsis span{opacity:0;animation:ellipsis-fade 1.4s infinite}.ellipsis span:nth-child(1){animation-delay:0s}.ellipsis span:nth-child(2){animation-delay:.2s}.ellipsis span:nth-child(3){animation-delay:.4s}@keyframes ellipsis-fade{0%{opacity:0}50%{opacity:1}to{opacity:0}}.reminder-message-container{display:flex;align-items:center;width:100%;background-color:var(--white);border:none;border-radius:8px;padding:var(--space-2);position:relative;overflow:hidden;cursor:pointer;text-align:left;gap:var(--space-2)}.reminder-accent-bar{position:absolute;left:0;top:0;bottom:0;width:4px;background-color:#d69e2e}.reminder-icon{color:#d69e2e;flex-shrink:0}.reminder-text-content{font-size:16px;line-height:1.6}.reminder-label{font-family:Poppins,sans-serif;font-weight:600;color:var(--grey-900)}.reminder-title{font-family:Inter,sans-serif;font-weight:500;color:var(--teal-500)}.reminder-suffix{font-family:Inter,sans-serif;font-weight:400;color:var(--grey-700)}.tasks-view-container,.goals-view-container,.profile-view-container,.goal-detail-view{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2)}.view-header{display:flex;justify-content:space-between;align-items:center}.view-title{font-family:Poppins,sans-serif;font-size:24px;font-weight:600;color:var(--grey-900);margin:0}.add-button{background-color:var(--teal-500);color:var(--white);border:none;padding:var(--space-1) var(--space-2);border-radius:8px;font-family:Inter,sans-serif;font-weight:500;cursor:pointer}.view-switcher{display:flex;background-color:var(--grey-100);border:1px solid var(--grey-400);border-radius:8px;padding:4px}.view-switcher button{flex:1;padding:var(--space-1);border:none;background-color:transparent;border-radius:6px;font-family:Inter,sans-serif;font-weight:500;color:var(--grey-700);cursor:pointer}.view-switcher button.active{background-color:var(--teal-500);color:var(--white)}.task-section{border-bottom:1px solid var(--grey-100);padding-bottom:var(--space-2);margin-bottom:var(--space-2)}.task-section:last-child{border-bottom:none;margin-bottom:0}.task-section-header{display:flex;align-items:center;gap:var(--space-1);cursor:pointer;background:none;border:none;width:100%;text-align:left;padding:var(--space-1) 0}.task-section-header h3{font-family:Poppins,sans-serif;font-size:16px;font-weight:600;margin:0;color:var(--grey-900)}.chevron{color:var(--grey-900);transition:transform .2s ease-in-out}.chevron.expanded{transform:rotate(90deg)}.task-count{background-color:var(--grey-400);color:var(--white);border-radius:4px;padding:2px 6px;font-size:12px;font-weight:700}.task-list{display:flex;flex-direction:column;gap:var(--space-1)}.task-card-list-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);background-color:var(--white);padding:var(--space-2);border-radius:8px;box-shadow:0 1px 3px #0000000d;cursor:pointer}.task-content-container{display:flex;align-items:center;gap:var(--space-2);flex-grow:1}.custom-checkbox-container{position:relative;display:flex;align-items:center;cursor:pointer;user-select:none}.custom-checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark{height:20px;width:20px;background-color:var(--white);border:2px solid var(--grey-400);border-radius:4px;transition:all .2s ease}.custom-checkbox-container input:checked~.checkmark{background-color:var(--teal-500);border-color:var(--teal-500)}.checkmark:after{content:"";position:absolute;display:none}.custom-checkbox-container input:checked~.checkmark:after{display:block}.custom-checkbox-container .checkmark:after{left:6px;top:2px;width:5px;height:10px;border:solid white;border-width:0 3px 3px 0;transform:rotate(45deg)}.task-details-container{display:flex;flex-direction:column;gap:4px;flex-grow:1}.task-title{font-family:Inter,sans-serif;font-size:16px;color:var(--grey-900);transition:color .2s ease}.task-title.completed{color:var(--grey-700);text-decoration:line-through}.task-meta-container{display:flex;align-items:center;gap:var(--space-1)}.goal-tag{background-color:var(--teal-100);color:var(--teal-700);padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.due-date{color:var(--grey-700);font-size:12px}.delete-button{background:none;border:none;color:var(--grey-700);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .2s ease,background-color .2s ease}.delete-button:hover{color:var(--error);background-color:#fef2f2}.swimlane-container{display:flex;flex-direction:column;gap:var(--space-4)}.swimlane{display:flex;flex-direction:column;gap:var(--space-2)}.swimlane-title{font-family:Poppins,sans-serif;font-size:20px;font-weight:600;margin:0}.swimlane-board{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-2)}.board-column{flex:0 0 280px;background-color:var(--grey-100);border-radius:8px;padding:var(--space-2);min-height:150px}.column-title{font-family:Poppins,sans-serif;font-weight:600;margin:0 0 var(--space-2) 0}.column-cards{display:flex;flex-direction:column;gap:var(--space-2)}.task-card-board-item{display:flex;flex-direction:column;gap:4px;background-color:var(--white);padding:var(--space-2);border-radius:8px;box-shadow:0 1px 3px #0000000d}.goals-list{display:flex;flex-direction:column;gap:var(--space-2)}.goal-card-wrapper{background-color:var(--white);border-radius:8px;box-shadow:0 1px 3px #0000000d}.goal-card{padding:var(--space-2);cursor:pointer;display:flex;flex-direction:row;align-items:center;gap:var(--space-1)}.goal-card-main{flex-grow:1;display:flex;flex-direction:column;gap:var(--space-2)}.goal-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-1)}.goal-title{font-family:Poppins,sans-serif;font-size:20px;font-weight:600;margin:0;flex-grow:1}.goal-type-indicator{background-color:var(--grey-100);border:1px solid var(--grey-400);color:var(--grey-700);padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap}.goal-card-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.progress-bar-container{flex-grow:1;display:flex;align-items:center;gap:var(--space-1);height:20px;background-color:var(--grey-100);border-radius:10px;overflow:hidden}.progress-bar{height:100%;background-color:var(--teal-500);transition:width .3s ease-in-out}.progress-bar-container~span{font-size:14px;font-weight:600;color:var(--grey-700)}.unplanned-text{font-size:14px;color:var(--grey-700);flex-grow:1}.target-date{color:var(--grey-700);font-size:14px;white-space:nowrap}.goal-card-chevron{color:var(--grey-700)}.goal-card-summary{padding:var(--space-2);border-top:1px solid var(--grey-100);display:flex;flex-direction:column;gap:var(--space-3)}.summary-section h4{font-family:Poppins,sans-serif;font-size:14px;margin:0 0 var(--space-2) 0;color:var(--grey-700)}.summary-tasks-list{display:flex;flex-direction:column;gap:var(--space-2)}.goal-task-item{display:flex;align-items:center;gap:var(--space-2)}.goal-task-checkbox{width:16px;height:16px;border:2px solid var(--grey-400);border-radius:4px;display:flex;justify-content:center;align-items:center;font-size:12px;color:var(--white);flex-shrink:0}.goal-task-checkbox.checked{background-color:var(--teal-500);border-color:var(--teal-500)}.goal-task-title.completed{text-decoration:line-through;color:var(--grey-700)}.view-all-tasks-button{width:100%;margin-top:var(--space-2);padding:var(--space-2);background-color:var(--grey-100);border:1px solid var(--grey-400);color:var(--grey-900);font-weight:500;border-radius:8px;cursor:pointer}.back-button{background:none;border:none;cursor:pointer;color:var(--grey-700)}.goal-hub-header{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2);margin-bottom:var(--space-4)}.progress-donut{width:100px;height:100px;flex-shrink:0}.goal-hub-details .view-title{margin-bottom:var(--space-1)}.goal-description{color:var(--grey-700);margin:0 0 var(--space-2) 0}.goal-hub-stats{font-size:14px;font-weight:500;color:var(--grey-700);display:flex;flex-direction:column;gap:var(--space-1)}.task-section-header-static{font-family:Poppins,sans-serif;font-size:16px;font-weight:600;margin:0;color:var(--grey-900);padding:var(--space-1) 0}.fab{position:absolute;bottom:80px;right:24px;width:56px;height:56px;border-radius:50%;background-color:var(--teal-500);color:var(--white);border:none;box-shadow:0 4px 12px #0003;display:flex;justify-content:center;align-items:center;cursor:pointer}.profile-user-info{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.profile-avatar{width:80px;height:80px;background-color:var(--grey-400);border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:40px;color:var(--white);margin-bottom:var(--space-1)}.profile-display-name{font-family:Poppins,sans-serif;font-size:24px;font-weight:600;color:var(--grey-900)}.profile-email{font-size:16px;color:var(--grey-700)}.profile-card{background-color:var(--white);border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:var(--space-3)}.profile-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.profile-card-title{font-family:Poppins,sans-serif;font-size:16px;font-weight:600;margin:0}.edit-button{background:none;border:none;color:var(--teal-500);font-family:Inter,sans-serif;font-weight:600;cursor:pointer}.profile-card-text{font-size:16px;line-height:1.6;color:var(--grey-700);margin:0}.profile-card-body{display:flex;flex-direction:column;gap:var(--space-2)}.profile-textarea{width:100%;border:1px solid var(--grey-400);border-radius:6px;padding:var(--space-2);font-family:Inter,sans-serif;font-size:16px;resize:vertical;box-sizing:border-box}.profile-edit-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.settings-list{display:flex;flex-direction:column;background-color:var(--white);border-radius:8px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.settings-list-item{background:none;border:none;border-bottom:1px solid var(--grey-100);padding:var(--space-2) var(--space-3);text-align:left;font-size:16px;cursor:pointer;width:100%;color:var(--grey-900)}.settings-list-item:last-child{border-bottom:none}.settings-list-item:hover{background-color:var(--grey-100)}.danger-zone{border:1px solid var(--error);border-radius:8px;padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-1)}.danger-zone-title{font-family:Poppins,sans-serif;font-size:16px;font-weight:600;color:var(--error);margin:0}.button-danger{width:100%;padding:var(--space-2);border:1px solid var(--error);border-radius:8px;background-color:var(--white);color:var(--error);font-size:16px;font-weight:600;cursor:pointer}.button-danger:hover{background-color:var(--error);color:var(--white)}.logout-section{display:flex}.logout-button{width:100%;padding:var(--space-2);border:none;border-radius:8px;background-color:var(--error);color:var(--white);font-size:16px;font-weight:600;cursor:pointer}.danger-zone-buttons .button-secondary{width:100%;padding:var(--space-2);border:1px solid var(--grey-400)}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#1a202c99;display:flex;justify-content:center;align-items:center;z-index:999998!important}.modal-content{background-color:var(--white);padding:var(--space-4);border-radius:16px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-2);box-shadow:0 4px 20px #0003;position:relative;z-index:999999!important}.MuiDrawer-root,.MuiDrawer-paper{z-index:1200!important}.modal-backdrop{z-index:999998!important}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1)}.modal-content h2{font-family:Poppins,sans-serif;font-size:20px;margin:0}.close-button{background:none;border:none;font-size:24px;color:var(--grey-700);cursor:pointer}.modal-content label{font-size:14px;font-weight:500;color:var(--grey-700)}.modal-content input,.modal-content textarea,.modal-content select{width:100%;background-color:var(--white);border:1px solid var(--grey-400);color:var(--grey-900);padding:var(--space-2);border-radius:6px;font-size:16px;box-sizing:border-box;font-family:Inter,sans-serif}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2)}.modal-actions-split{display:flex;justify-content:space-between;align-items:center}.button-primary{background-color:var(--teal-500);color:var(--white);padding:var(--space-1) var(--space-2);border-radius:8px;font-weight:500;cursor:pointer;border:1px solid transparent}.button-secondary{background-color:var(--white);color:var(--grey-900);border-color:var(--grey-400);padding:var(--space-1) var(--space-2);border-radius:8px;font-weight:500;cursor:pointer;border:1px solid var(--grey-400)}.button-link{background:none;border:none;color:var(--grey-700);font-weight:500;cursor:pointer}.button-danger-link{background:none;border:none;color:var(--error);font-weight:500;cursor:pointer}.form-row{display:flex;gap:var(--space-2)}.form-group{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.planning-style-selector{display:flex;flex-direction:column;gap:var(--space-2)}.style-card{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border:2px solid var(--grey-400);border-radius:8px;background-color:var(--white);width:100%;cursor:pointer;text-align:left}.style-card.active{border-color:var(--teal-500);background-color:var(--teal-100)}.style-card-icon{font-size:24px}.style-card-text{display:flex;flex-direction:column}.style-card-text strong{font-weight:600;color:var(--grey-900)}.style-card-text span{font-size:14px;color:var(--grey-700)}.interactive-card{background-color:var(--white);padding:var(--space-3);border-radius:8px;border:1px solid var(--grey-400);width:100%;box-sizing:border-box}.interactive-card-title{font-family:Poppins,sans-serif;font-weight:600;margin-top:0;margin-bottom:var(--space-3)}.choices-list{display:flex;flex-direction:column;gap:var(--space-2)}.choice-button{width:100%;background-color:var(--white);color:var(--grey-900);border:1px solid var(--grey-400);padding:var(--space-2);border-radius:8px;cursor:pointer;text-align:left;font-size:16px;font-family:Inter,sans-serif;transition:background-color .2s,border-color .2s}.choice-button:hover{background-color:var(--teal-100);border-color:var(--teal-500)}.checklist-items{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.checklist-item{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.suggestion-card{display:flex;flex-direction:column;gap:var(--space-3)}.suggestion-response{margin:0;font-style:italic;color:var(--grey-700)}.suggestion-action{background-color:var(--grey-100);border-radius:8px;padding:var(--space-2)}.suggestion-message{margin:0 0 var(--space-2) 0}.suggestion-buttons{display:flex;justify-content:flex-end;gap:var(--space-2)}.login-view-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%;background-color:var(--grey-100)}.login-box{width:100%;max-width:400px;padding:var(--space-4);background-color:var(--white);border-radius:16px;box-shadow:0 4px 20px #0000001a;display:flex;flex-direction:column;align-items:center;text-align:center}.login-logo{width:80px;height:auto;margin-bottom:var(--space-2)}.login-tagline{font-family:Poppins,sans-serif;font-size:24px;font-weight:600;color:var(--grey-900);margin:0 0 var(--space-4) 0}.login-form{width:100%;display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-2)}.login-input{width:100%;padding:var(--space-2);border:1px solid var(--grey-400);border-radius:8px;font-size:16px;box-sizing:border-box}.login-button{width:100%;padding:var(--space-2)!important}.login-divider{display:flex;align-items:center;text-align:center;color:var(--grey-700);width:100%;margin:var(--space-3) 0}.login-divider:before,.login-divider:after{content:"";flex:1;border-bottom:1px solid var(--grey-400)}.login-divider:not(:empty):before{margin-right:.5em}.login-divider:not(:empty):after{margin-left:.5em}.google-signin-button{width:100%;padding:var(--space-2);border-radius:8px;background-color:var(--white);color:var(--grey-900);border:1px solid var(--grey-400);font-weight:500;cursor:pointer}.signup-toggle{margin-top:var(--space-3);color:var(--grey-700)}.quick-actions-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1000;background-color:transparent}.quick-actions-menu{position:fixed;z-index:1001;background-color:var(--white);border:1px solid var(--grey-400);border-radius:8px;box-shadow:0 4px 12px #00000026;padding:var(--space-1);display:flex;flex-direction:column;min-width:200px}.quick-actions-menu button{background:none;border:none;padding:var(--space-2);text-align:left;font-size:14px;font-family:Inter,sans-serif;cursor:pointer;border-radius:6px;color:var(--grey-900)}.quick-actions-menu button:hover{background-color:var(--grey-100)}.quick-actions-menu button.danger{color:var(--error)}.quick-actions-menu button.danger:hover{background-color:var(--error);color:var(--white)}.custom-toast-container{width:100%;max-width:450px;margin:0 auto;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:8px;box-shadow:0 4px 12px #00000026;position:relative;overflow:hidden;cursor:pointer;font-family:Inter,sans-serif}.custom-toast-accent-bar{position:absolute;left:0;top:0;bottom:0;width:4px}.custom-toast-icon{flex-shrink:0;margin-left:var(--space-1)}.custom-toast-content{flex-grow:1}.custom-toast-title{font-weight:500;color:var(--grey-900);margin:0}.custom-toast-body{font-weight:400;color:var(--grey-700);margin:0}.custom-toast-close{background:none;border:none;cursor:pointer;color:var(--grey-700);padding:4px}.app-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--grey-400);background-color:var(--white)}.app-title{font-family:Poppins,sans-serif;font-size:24px;font-weight:600;margin:0}.notification-bell-button{position:relative;background:none;border:none;cursor:pointer;color:var(--grey-700)}.notification-badge{position:absolute;top:-4px;right:-4px;background-color:var(--error);color:var(--white);border-radius:50%;width:18px;height:18px;font-size:10px;font-weight:700;display:flex;justify-content:center;align-items:center}.notification-panel-container{position:absolute;top:73px;right:var(--space-3);width:350px;max-height:400px;background-color:var(--white);border:1px solid var(--grey-400);border-radius:8px;box-shadow:0 8px 24px #00000026;z-index:1000;display:flex;flex-direction:column}.notification-panel-header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--grey-400);display:flex;justify-content:space-between;align-items:center}.notification-panel-header h3{margin:0;font-size:16px}.notification-panel-actions{display:flex;gap:8px}.test-notification-button,.refresh-token-button{background:none;border:1px solid var(--grey-400);border-radius:6px;padding:6px;cursor:pointer;color:var(--grey-700);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.test-notification-button:hover{background-color:var(--teal-100);border-color:var(--teal-500);color:var(--teal-700)}.refresh-token-button:hover{background-color:var(--warning-100, #fef3c7);border-color:var(--warning-500, #f59e0b);color:var(--warning-700, #b45309)}.notification-list{overflow-y:auto}.notification-item{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--grey-100)}.notification-item-content p{margin:0;line-height:1.4}.notification-item-title{font-weight:500;color:var(--grey-900)}.notification-item-body{font-size:14px;color:var(--grey-700)}.no-notifications-message{padding:var(--space-3);text-align:center;color:var(--grey-700)}.pointer-toast{background-color:var(--grey-900);color:var(--white);padding:8px 16px;border-radius:9999px;font-size:14px;box-shadow:0 4px 12px #00000026}.notification-dismiss-button{position:absolute;top:4px;right:4px;background:none;border:none;cursor:pointer;color:var(--grey-700);border-radius:50%;padding:4px;opacity:0;transition:opacity .2s ease-in-out}.notification-item:hover .notification-dismiss-button{opacity:1}.notification-panel-footer{padding:var(--space-1) var(--space-3);text-align:right;border-top:1px solid var(--grey-400)}.clear-all-button{background:none;border:none;color:var(--grey-700);font-size:12px;font-weight:500;cursor:pointer}.fcm-status-section{padding:var(--space-2) var(--space-3);background-color:var(--grey-100);border-bottom:1px solid var(--grey-400);font-size:12px}.fcm-status-item{display:flex;align-items:center;gap:6px;margin-bottom:4px}.fcm-status-label{color:var(--grey-700);font-weight:500;min-width:60px}.fcm-status-value{color:var(--grey-900)}.fcm-status-value.status-good{color:var(--success);font-weight:500}.fcm-status-value.status-warning{color:var(--warning);font-weight:500}.fcm-status-warning{display:flex;align-items:center;gap:6px;color:var(--warning);font-weight:500;margin-top:4px}.refresh-token-button.refreshing{opacity:.6;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.notification-item{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--grey-100);position:relative;cursor:pointer;transition:background-color .2s ease-in-out}.notification-item.unread:before{content:"";position:absolute;left:8px;top:50%;transform:translateY(-50%);width:8px;height:8px;background-color:var(--teal-500);border-radius:50%}.notification-item.read{opacity:.7}.notification-item:hover{background-color:var(--teal-100)}.notification-item.read:hover{opacity:1}.notification-item-title{color:var(--grey-900);margin:0}.notification-item.unread .notification-item-title{font-weight:600}.notification-item.read .notification-item-title{font-weight:400}.onboarding-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#1a202ccc;display:flex;justify-content:center;align-items:center;z-index:2000}.onboarding-modal{background-color:var(--white);padding:var(--space-4);border-radius:16px;width:90%;max-width:500px;box-shadow:0 4px 20px #0003}.onboarding-step{display:flex;flex-direction:column;gap:var(--space-2);text-align:center}.onboarding-step h2{font-family:Poppins,sans-serif;margin:0 0 var(--space-1) 0}.onboarding-step p{color:var(--grey-700);line-height:1.6;margin:0 0 var(--space-2) 0}.onboarding-textarea{width:100%;border:1px solid var(--grey-400);border-radius:6px;padding:var(--space-2);font-family:Inter,sans-serif;font-size:16px;resize:vertical;box-sizing:border-box;margin-bottom:var(--space-2)}.onboarding-choices{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.progressive-modal{max-width:500px;padding:24px}.progressive-modal .title-input{width:100%;border:none;border-bottom:2px solid var(--grey-400);padding:12px 0;font-size:18px;font-weight:500;background:transparent;outline:none;margin-bottom:20px}.progressive-modal .title-input:focus{border-bottom-color:var(--teal-500)}.progressive-modal .description-input{width:100%;border:1px solid var(--grey-400);border-radius:8px;padding:12px;font-family:inherit;font-size:14px;resize:vertical;margin-bottom:20px;outline:none}.progressive-modal .description-input:focus{border-color:var(--teal-500)}.attribute-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.attribute-button{display:inline-flex;align-items:center;padding:10px 16px;border:1px solid var(--grey-400);border-radius:20px;background:var(--grey-100);color:var(--grey-700);font-size:14px;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-height:40px}.attribute-button:hover{border-color:var(--teal-500);background:var(--teal-100)}.attribute-button.filled{background:var(--teal-500);color:#fff;border-color:var(--teal-500)}.attribute-button.description-button{width:100%;justify-content:center;margin-bottom:16px;border-radius:8px}.picker-section{background:var(--grey-100);border:1px solid var(--grey-400);border-radius:8px;padding:16px;margin-bottom:16px}.picker-done-button{background:var(--teal-500);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;margin-top:12px;width:100%;font-size:14px;font-weight:500}.priority-options{display:flex;flex-direction:column;gap:8px}.priority-option{display:flex;align-items:center;padding:10px 12px;border:1px solid var(--grey-400);background:#fff;cursor:pointer;border-radius:6px;font-size:14px;text-align:left;transition:all .2s ease}.goal-options{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.goal-option{display:flex;align-items:center;padding:10px 12px;border:1px solid var(--grey-400);background:#fff;cursor:pointer;border-radius:6px;font-size:14px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all .2s ease}.goal-option:hover{background:var(--grey-100);border-color:var(--teal-500)}.progressive-modal .react-datepicker__input-container input{border:none;background:transparent;font-size:14px;padding:0}.progressive-modal .react-datepicker{border:none;box-shadow:none;font-family:inherit}.progressive-modal .react-datepicker__header{background:var(--teal-100);border-bottom:1px solid var(--teal-500)}.progressive-modal .react-datepicker__current-month{color:var(--teal-700);font-weight:500}.progressive-modal .react-datepicker__day--selected{background:var(--teal-500)}.progressive-modal .react-datepicker__day--keyboard-selected{background:var(--teal-100);color:var(--teal-700)}.progressive-modal .react-datepicker__time-container{border-left:1px solid var(--grey-400)}.progressive-modal .react-datepicker__time-list-item--selected{background:var(--teal-500);color:#fff}.progressive-modal .react-datepicker__time-list-item:hover{background:var(--teal-100)}.progressive-modal-content{background-color:var(--white);border-radius:16px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column}.progressive-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid var(--grey-200)}.progressive-modal-header h2{font-family:Poppins,sans-serif;font-size:20px;font-weight:600;margin:0;color:var(--grey-900)}.progressive-modal-body{padding:24px;flex-grow:1}.main-input-section{margin-bottom:24px}.task-title-input{width:100%;border:none;border-bottom:2px solid var(--grey-400);padding:16px 0;font-size:18px;font-weight:500;background:transparent;outline:none;font-family:Inter,sans-serif;color:var(--grey-900);box-sizing:border-box}.task-title-input:focus{border-bottom-color:var(--teal-500)}.task-title-input::placeholder{color:var(--grey-600);font-weight:400}.task-description-input{width:100%;border:1px solid var(--grey-400);border-radius:8px;padding:12px;font-family:Inter,sans-serif;font-size:14px;resize:vertical;margin-top:12px;outline:none;box-sizing:border-box;min-height:80px}.task-description-input:focus{border-color:var(--teal-500)}.task-description-input::placeholder{color:var(--grey-600)}.progressive-attributes{display:flex;flex-direction:column;gap:12px}.progressive-attribute{border-radius:8px;overflow:hidden}.attribute-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px;border:1px solid var(--grey-400);border-radius:8px;background:var(--white);color:var(--grey-700);font-size:14px;cursor:pointer;transition:all .2s ease;font-family:Inter,sans-serif}.attribute-button:hover{border-color:var(--teal-500);background:var(--teal-50)}.attribute-button .attribute-icon{color:var(--grey-600)}.attribute-button .attribute-text{flex-grow:1;margin-left:12px;text-align:left;color:var(--grey-600)}.attribute-button .attribute-text.has-value{color:var(--grey-900);font-weight:500}.attribute-button .chevron{transition:transform .2s ease;color:var(--grey-500)}.attribute-button .chevron.expanded{transform:rotate(180deg)}.progressive-picker-section{border:1px solid var(--grey-400);border-top:none;border-radius:0 0 8px 8px;background:var(--grey-50);padding:16px;max-height:400px;overflow-y:auto}.progressive-calendar{width:100%;border:none;box-shadow:none;font-family:Inter,sans-serif;background:transparent}.progressive-calendar .react-datepicker__header{background:transparent;border-bottom:1px solid var(--grey-300);padding-bottom:8px}.progressive-calendar .react-datepicker__current-month{color:var(--grey-900);font-weight:600;font-size:16px}.progressive-calendar .react-datepicker__day-name{color:var(--grey-600);font-weight:500}.progressive-calendar .react-datepicker__day{color:var(--grey-900)}.progressive-calendar .react-datepicker__day--selected{background:var(--teal-500);color:#fff}.progressive-calendar .react-datepicker__day--keyboard-selected,.progressive-calendar .react-datepicker__day:hover{background:var(--teal-100);color:var(--teal-700)}.time-picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}.time-option{padding:10px;border:1px solid var(--grey-400);background:#fff;border-radius:6px;cursor:pointer;font-size:14px;font-family:Inter,sans-serif;transition:all .2s ease;text-align:center}.time-option:hover{background:var(--teal-100);border-color:var(--teal-500)}.time-option.selected{background:var(--teal-500);color:#fff;border-color:var(--teal-500)}.custom-time-section{border-top:1px solid var(--grey-300);padding-top:16px}.custom-time-input{width:100%;padding:12px;border:1px solid var(--grey-400);border-radius:6px;font-size:14px;font-family:Inter,sans-serif;box-sizing:border-box}.custom-time-input:focus{outline:none;border-color:var(--teal-500)}.dynamic-time-picker{display:flex;flex-direction:column;gap:12px;width:100%}.time-display{text-align:center;padding:12px;background:var(--teal-100);border-radius:8px;border:2px solid var(--teal-500);margin-bottom:16px}.time-display-text{font-size:24px;font-weight:600;color:var(--teal-700);font-family:Inter,sans-serif}.time-controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:8px}.time-control-section{display:flex;flex-direction:column;gap:8px}.time-control-label{font-size:12px;font-weight:600;color:var(--grey-700);text-align:center;text-transform:uppercase;letter-spacing:.5px}.time-scroll-container{display:flex;flex-direction:column;gap:4px;max-height:120px;overflow-y:auto;padding:4px;border:1px solid var(--grey-300);border-radius:6px;background:#fff}.time-scroll-item{padding:8px 6px;border:none;background:var(--grey-50);border-radius:4px;cursor:pointer;font-size:14px;font-family:Inter,sans-serif;font-weight:500;transition:all .2s ease;text-align:center;min-height:36px;display:flex;align-items:center;justify-content:center;color:var(--grey-900);border:1px solid transparent}.time-scroll-item:hover{background:var(--teal-100);color:var(--teal-700);border-color:var(--teal-300)}.time-scroll-item.selected{background:var(--teal-500);color:#fff;font-weight:600;box-shadow:0 2px 4px #2fa89a4d;border-color:var(--teal-600)}.time-scroll-item.period-item{font-size:15px;font-weight:600;min-height:42px}.time-picker-actions{display:flex;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--grey-300)}.time-picker-cancel{flex:1;padding:12px;border:1px solid var(--grey-400);background:#fff;color:var(--grey-700);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;font-family:Inter,sans-serif;transition:all .2s ease}.time-picker-cancel:hover{background:var(--grey-100);border-color:var(--grey-500)}.time-picker-confirm{flex:1;padding:12px;border:none;background:var(--teal-500);color:#fff;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;font-family:Inter,sans-serif;transition:all .2s ease}.time-picker-confirm:hover{background:var(--teal-600)}.goal-picker-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.goal-option{display:flex;align-items:center;padding:12px;border:1px solid var(--grey-400);background:#fff;cursor:pointer;border-radius:6px;font-size:14px;text-align:left;transition:all .2s ease;font-family:Inter,sans-serif}.goal-option:hover{background:var(--teal-100);border-color:var(--teal-500)}.goal-option.selected{background:var(--teal-500);color:#fff;border-color:var(--teal-500)}.priority-picker-list{display:flex;flex-direction:column;gap:8px}.priority-option{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid var(--grey-400);background:#fff;cursor:pointer;border-radius:6px;font-size:14px;text-align:left;transition:all .2s ease;font-family:Inter,sans-serif}.priority-option:hover{background:var(--grey-100);border-color:var(--teal-500)}.priority-option.selected{background:var(--teal-500);color:#fff;border-color:var(--teal-500)}.progressive-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--grey-200);background:var(--grey-50)}.cancel-button{background:none;border:none;color:var(--grey-700);font-weight:500;cursor:pointer;padding:8px 16px;border-radius:6px;font-family:Inter,sans-serif;transition:all .2s ease}.cancel-button:hover{background:var(--grey-200)}.save-button{background:var(--teal-500);color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;font-family:Inter,sans-serif;transition:all .2s ease}.save-button:hover{background:var(--teal-600)}.save-button:disabled{background:var(--grey-400);cursor:not-allowed}@media (max-width: 768px){.progressive-modal-content{margin:10px;max-width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.task-title-input{font-size:16px}.time-picker-grid{grid-template-columns:repeat(3,1fr)}.progressive-modal-header{padding:20px 20px 12px}.progressive-modal-body{padding:20px}.progressive-modal-footer{padding:12px 20px}.time-controls{gap:8px}.time-scroll-container{max-height:100px}.time-scroll-item{min-height:32px;font-size:13px;padding:6px 4px}.time-display-text{font-size:20px}.time-control-label{font-size:11px}}
