@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";.redirect-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.redirect-text{color:var(--text-secondary);font-size:16px}.error-message{background:#ef44441a;color:var(--error);padding:12px 16px;border-radius:8px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;font-size:14px}.error-close-btn{padding:4px 8px;background:transparent;border:none;color:var(--error);cursor:pointer;opacity:.7;transition:opacity .2s}.error-close-btn:hover{opacity:1}.success-message{margin-top:20px;padding:14px 18px;background:#10b9811a;border:1px solid var(--success);color:var(--success);border-radius:8px;font-weight:500}.failed-message{margin-top:24px;padding:14px 18px;background:#ef44441a;border:1px solid var(--error);color:var(--error);border-radius:10px;text-align:center;font-weight:500}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:#37352f}.auth-container.signup{padding:24px}.auth-card{width:100%;max-width:380px;padding:40px;border:1px solid #e9e9e8;border-radius:8px;box-shadow:0 1px 4px #0000000a,0 4px 12px #00000008}.auth-card.signup{max-width:420px}.auth-header{text-align:center;margin-bottom:32px}.auth-title{margin:0 0 6px;font-size:26px;font-weight:600;color:#37352f}.auth-subtitle{margin:0;color:#9b9a97;font-size:14px}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-form.signup{gap:16px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field.row{flex-direction:row;gap:12px}.auth-field.row>div{flex:1;display:flex;flex-direction:column;gap:6px}.auth-label{font-weight:500;font-size:13px;color:#37352f}.auth-input{padding:10px 12px;border:1px solid #e9e9e8;border-radius:6px;font-size:14px;font-family:inherit;background:#fff;color:#37352f;outline:none;transition:border-color .15s,box-shadow .15s}.auth-input::placeholder{color:#9b9a97}.auth-input.full-width{width:100%;box-sizing:border-box}.auth-input:focus{border-color:#2383e2;box-shadow:0 0 0 2px #2383e21a}.auth-input.secondary:focus{border-color:#2383e2;box-shadow:0 0 0 2px #2383e21a}.auth-optional-label{color:#9b9a97;font-weight:400;font-size:12px}.auth-error{color:#eb5757;font-size:12px;font-weight:500}.auth-submit-btn{padding:10px 16px;background:#2383e2;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s;margin-top:4px}.auth-submit-btn:hover{background:#1b6ec2}.auth-submit-btn:disabled{cursor:not-allowed;opacity:.5}.auth-footer{margin-top:24px;text-align:center;font-size:13px;color:#9b9a97}.auth-link{color:#2383e2;text-decoration:none;font-weight:500;transition:color .15s}.auth-link:hover{color:#1b6ec2}.success-popup-overlay{position:fixed;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000;animation:popupOverlayIn .2s ease-out}.success-popup{background:#fff;padding:32px 40px;border-radius:8px;box-shadow:0 4px 24px #0000001f;border:1px solid #e9e9e8;text-align:center;animation:popupIn .3s cubic-bezier(.34,1.56,.64,1)}.success-checkmark{width:48px;height:48px;background:#10b981;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;animation:checkmarkIn .4s cubic-bezier(.34,1.56,.64,1) .15s both}.success-title{margin:0 0 6px;font-size:18px;font-weight:600;color:#37352f}.success-message{margin:0 0 20px;color:#9b9a97;font-size:14px}.success-button{padding:10px 24px;background:#2383e2;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s}.success-button:hover{background:#1b6ec2}.dashboard{--n-bg: #ffffff;--n-sidebar: #f7f7f5;--n-text: #37352f;--n-text-light: #9b9a97;--n-border: #e9e9e8;--n-hover: #efefef;--n-select: #2383e2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--n-text);background:var(--n-bg);height:100vh;width:100%;display:flex;overflow:hidden}.dashboard ::-webkit-scrollbar{width:10px;height:10px}.dashboard ::-webkit-scrollbar-track{background:transparent}.dashboard ::-webkit-scrollbar-thumb{background:#d3d1cb;border-radius:5px}.loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--n-text-light);font-size:13px}.error{position:fixed;top:12px;left:50%;transform:translate(-50%);padding:8px 16px;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:6px;font-size:13px;z-index:1001;display:flex;align-items:center;gap:8px;box-shadow:0 2px 8px #00000014}.error-close{padding:2px;background:transparent;border:none;color:#dc2626;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .1s}.error-close:hover{background:#dc26261a}.user-menu{position:fixed;bottom:12px;left:12px;z-index:50}.user-btn{width:28px;height:28px;border-radius:50%;background:#fff;border:1px solid var(--n-border);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;color:var(--n-text-light)}.user-btn:hover{border-color:#d1d1d0;color:var(--n-text)}.user-popup{position:absolute;bottom:36px;left:0;z-index:50;width:200px;background:#fff;border:1px solid var(--n-border);border-radius:6px;padding:12px;box-shadow:0 4px 12px #00000014}.user-popup-email{font-size:12px;color:var(--n-text-light);margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-popup-logout{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;background:var(--n-sidebar);color:var(--n-text);text-decoration:none;border-radius:4px;font-size:13px;font-weight:500;transition:all .1s;border:1px solid var(--n-border)}.user-popup-logout:hover{background:var(--n-hover)}.tasks-panel{width:40%;min-width:320px;max-width:500px;display:flex;flex-direction:column;border-right:1px solid var(--n-border);background:var(--n-sidebar);height:100%}.tasks-header{padding:16px}.list-tabs{display:flex;align-items:center;gap:2px;width:100%;margin-bottom:8px}.list-tabs-inner{display:flex;align-items:center;gap:1px;padding:2px;border-radius:6px;flex:1}.list-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 8px;border-radius:4px;border:1px solid transparent;background:transparent;color:var(--n-text-light);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap;outline:none}.list-tab:hover{background:var(--n-hover);color:var(--n-text)}.list-tab.active{background:#fff;border:1px solid var(--n-border);color:var(--n-text);box-shadow:0 1px 2px #0000000a}.list-tab-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.list-tab-add{width:28px;display:flex;align-items:center;justify-content:center;padding:6px;border-radius:4px;border:none;background:transparent;color:var(--n-text-light);cursor:pointer;transition:all .15s;flex-shrink:0}.list-tab-add:hover{background:var(--n-hover);color:var(--n-text)}.list-tab-input{width:80px;padding:4px 8px;border:1px solid var(--n-border);border-radius:4px;background:#fff;font-size:12px;font-family:inherit;color:var(--n-text);outline:none;box-shadow:0 1px 2px #0000000a}.list-tab-input:focus{border-color:var(--n-select)}.filter-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;border:none;background:transparent;color:var(--n-text-light);cursor:pointer;transition:all .15s;flex-shrink:0}.filter-btn:hover{background:var(--n-hover);color:var(--n-text)}.new-task{margin-top:8px}.new-task-inner{display:flex;align-items:center;padding:8px 12px;background:#fff;border:1px solid var(--n-border);border-radius:6px;box-shadow:0 1px 2px #0000000a;transition:box-shadow .15s}.new-task-inner:focus-within{box-shadow:0 1px 3px #00000014;border-color:#d1d1d0}.new-task-icon{color:var(--n-text-light);margin-right:8px;display:flex;align-items:center}.new-task-input{width:100%;border:none;background:transparent;padding:0;font-size:13px;color:var(--n-text);outline:none;font-family:inherit}.new-task-input::placeholder{color:var(--n-text-light)}.task-list{flex:1;overflow-y:auto;padding:0 8px 24px}.task-list-items{display:flex;flex-direction:column}.task-item{display:flex;align-items:flex-start;gap:8px;padding:8px;border-radius:4px;cursor:pointer;transition:background .1s}.task-item:hover{background:var(--n-hover)}.task-item.completed{opacity:.6}.task-item.completed .task-title{color:var(--n-text-light);text-decoration:line-through}.task-checkbox-wrapper{display:flex;align-items:center;height:18px}.task-checkbox{width:16px;height:16px;border-radius:4px;border:1.5px solid #d1d1d0;background:transparent;cursor:pointer;appearance:none;-webkit-appearance:none;transition:all .15s;padding:0;display:flex;align-items:center;justify-content:center}.task-checkbox:checked{background-color:var(--n-select);border-color:var(--n-select)}.task-checkbox:checked:after{content:"";display:block;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-1px)}.task-content{flex:1;display:flex;flex-direction:column;gap:2px}.task-title{font-size:13px;line-height:1.4;color:var(--n-text)}.task-meta{display:flex;align-items:center;gap:8px;margin-top:2px}.task-priority{padding:1px 6px;border-radius:3px;font-size:10px;font-weight:500}.task-priority.high{background:#fef2f2;color:#dc2626}.task-priority.normal{background:#fff7ed;color:#ea580c}.task-priority.low{background:#eff6ff;color:#2563eb}.task-date{color:var(--n-text-light);font-size:11px;display:flex;align-items:center;gap:4px}.task-date svg{width:12px;height:12px}.task-duration{color:var(--n-text-light);font-size:11px;display:flex;align-items:center;gap:4px}.task-duration svg{width:12px;height:12px}.task-recurring{color:var(--n-select);font-size:11px;display:flex;align-items:center;gap:4px}.task-recurring svg{width:12px;height:12px}.completed-divider{margin-top:16px;padding-top:16px;border-top:1px solid var(--n-border)}.calendar-panel{flex:1;display:flex;flex-direction:column;background:var(--n-bg);height:100%;min-width:600px}.calendar-panel .fc{--fc-border-color: var(--n-border);--fc-page-bg-color: var(--n-bg);--fc-neutral-bg-color: var(--n-sidebar);--fc-today-bg-color: rgba(35, 131, 226, .04);--fc-event-bg-color: #dbeafe;--fc-event-border-color: #93c5fd;--fc-event-text-color: var(--n-text);--fc-button-bg-color: white;--fc-button-border-color: var(--n-border);--fc-button-text-color: var(--n-text);--fc-button-hover-bg-color: var(--n-hover);--fc-button-hover-border-color: #d1d1d0;--fc-button-active-bg-color: var(--n-hover);--fc-button-active-border-color: #d1d1d0;--fc-list-event-hover-bg-color: var(--n-hover);font-family:inherit}.calendar-panel .fc .fc-toolbar-title{font-size:1rem;font-weight:600;color:var(--n-text)}.calendar-panel .fc .fc-col-header-cell-cushion{color:var(--n-text-light);font-weight:500;font-size:11px;text-transform:uppercase}.calendar-panel .fc .fc-daygrid-day-number{color:var(--n-text-light);font-size:12px}.calendar-panel .fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{color:var(--n-select);font-weight:600}.calendar-panel .fc .fc-event{border-radius:3px;font-size:11px;padding:1px 4px;border:none;background:#dbeafe;color:var(--n-text)}.calendar-panel .fc .fc-timegrid-slot{height:8px}.calendar-panel .fc .fc-timegrid-slot-label-cushion{color:var(--n-text-light);font-size:11px}.calendar-panel .fc th,.calendar-panel .fc td{border-color:var(--n-border)}.calendar-panel .fc .fc-highlight{background:#2383e214}.calendar-panel .fc .fc-scrollgrid{border-radius:6px;overflow:hidden}.calendar-panel .fc .fc-button{font-weight:500;font-size:12px;padding:4px 10px;border-radius:4px}.calendar-panel .fc .fc-button:focus{box-shadow:none}.calendar-panel .fc .fc-button-primary:not(:disabled).fc-button-active{background:var(--n-hover);border-color:#d1d1d0;color:var(--n-text)}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:6px 24px;border-bottom:1px solid var(--n-border);height:48px;flex-shrink:0}.calendar-header-left{display:flex;align-items:center;gap:16px}.calendar-title{font-size:15px;font-weight:600;color:var(--n-text);letter-spacing:-.01em;margin:0}.calendar-view-toggle{display:flex;align-items:center;border:1px solid var(--n-border);border-radius:4px;overflow:hidden}.calendar-view-btn{padding:3px 12px;font-size:12px;font-weight:500;border:none;background:transparent;color:var(--n-text-light);cursor:pointer;transition:all .1s}.calendar-view-btn:not(:last-child){border-right:1px solid var(--n-border)}.calendar-view-btn:hover,.calendar-view-btn.active{background:var(--n-hover);color:var(--n-text)}.calendar-today-btn{font-size:12px;padding:3px 8px;border-radius:4px;border:none;background:transparent;color:var(--n-text);cursor:pointer;transition:all .1s}.calendar-today-btn:hover{background:var(--n-hover)}.calendar-header-right{display:flex;align-items:center;gap:4px}.calendar-nav-btn{padding:4px;border-radius:4px;border:none;background:transparent;color:var(--n-text-light);cursor:pointer;transition:all .1s;display:flex;align-items:center;justify-content:center}.calendar-nav-btn:hover{color:var(--n-text);background:var(--n-hover)}.calendar-body{flex:1;display:flex;flex-direction:column;padding:24px;overflow:hidden}.calendar-days-header{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:8px;border-bottom:1px solid var(--n-border);padding-bottom:8px}.calendar-day-name{text-align:center;font-size:11px;font-weight:500;text-transform:uppercase;color:var(--n-text-light)}.calendar-grid{flex:1;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(5,1fr);border-left:1px solid var(--n-border);border-top:1px solid var(--n-border)}.calendar-cell{border-right:1px solid var(--n-border);border-bottom:1px solid var(--n-border);padding:4px;min-height:80px;transition:background .1s;cursor:pointer}.calendar-cell:hover{background:#efefef80}.calendar-cell:hover .calendar-cell-date{color:var(--n-text)}.calendar-cell.other-month{background:#f7f7f54d}.calendar-cell.other-month .calendar-cell-date{color:#9b9a9780}.calendar-cell.today{background:#fef2f24d}.calendar-cell-date{display:block;font-size:12px;color:var(--n-text-light);padding:4px;transition:color .1s}.calendar-cell-date.today-date{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#ef4444;color:#fff;font-size:10px;font-weight:700;margin:2px;padding:0}.calendar-event{margin-top:2px;padding:2px 6px;border-radius:3px;font-size:10px;color:var(--n-text);cursor:pointer;transition:filter .1s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event:hover{filter:brightness(.92)}.calendar-event.purple{background:#ede9fe}.calendar-event.blue{background:#dbeafe}.calendar-event.green{background:#dcfce7}.calendar-event.gray{background:#f3f4f6}.calendar-event.red{background:#fee2e2}.calendar-event.orange{background:#ffedd5}.calendar-event.indigo{background:#e0e7ff}.ai-schedule-btn{padding:3px 10px;font-size:12px;font-weight:500;border-radius:4px;border:1px solid var(--n-border);background:#fff;color:var(--n-text);cursor:pointer;transition:all .1s;display:flex;align-items:center;gap:4px}.ai-schedule-btn:hover{background:var(--n-hover)}.ai-schedule-btn:disabled{opacity:.5;cursor:not-allowed}.schedule-message{position:fixed;bottom:20px;right:20px;padding:10px 16px;border-radius:6px;font-size:13px;z-index:100;box-shadow:0 2px 8px #0000001a}.schedule-message.success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.schedule-message.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:#fff;border-radius:8px;width:100%;max-width:440px;margin:20px;border:1px solid var(--n-border);box-shadow:0 8px 24px #0000001f;overflow:hidden}.modal-header{padding:16px 20px;border-bottom:1px solid var(--n-border);display:flex;align-items:center;justify-content:space-between}.modal-title{margin:0;font-size:15px;font-weight:600;color:var(--n-text)}.modal-close-btn{padding:4px;background:transparent;border:none;color:var(--n-text-light);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .1s}.modal-close-btn:hover{color:var(--n-text);background:var(--n-hover)}.modal-body{padding:20px}.modal-field{margin-bottom:16px}.modal-label{display:block;font-size:12px;font-weight:500;color:var(--n-text-light);margin-bottom:6px}.modal-input{width:100%;padding:8px 12px;border:1px solid var(--n-border);border-radius:4px;font-size:13px;background:#fff;color:var(--n-text);outline:none;transition:border-color .15s;font-family:inherit}.modal-input:focus{border-color:var(--n-select)}.modal-input[type=number]{-moz-appearance:textfield}.modal-input[type=number]::-webkit-outer-spin-button,.modal-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.modal-input::placeholder{color:var(--n-text-light)}.modal-textarea{width:100%;padding:8px 12px;border:1px solid var(--n-border);border-radius:4px;font-size:13px;background:#fff;color:var(--n-text);outline:none;transition:border-color .15s;resize:none;font-family:inherit;line-height:1.5;min-height:60px}.modal-textarea:focus{border-color:var(--n-select)}.modal-textarea::placeholder{color:var(--n-text-light)}.modal-footer{padding:12px 20px;border-top:1px solid var(--n-border);display:flex;gap:8px;justify-content:flex-end}.modal-cancel-btn{padding:6px 14px;border:1px solid var(--n-border);border-radius:4px;background:#fff;color:var(--n-text);cursor:pointer;font-size:13px;font-weight:500;transition:all .1s}.modal-cancel-btn:hover{background:var(--n-hover)}.modal-save-btn{padding:6px 14px;border:none;border-radius:4px;background:var(--n-select);color:#fff;cursor:pointer;font-size:13px;font-weight:500;transition:all .1s}.modal-save-btn:hover{background:#1b6ec2}.modal-save-btn:disabled{opacity:.5;cursor:not-allowed}.modal-error{padding:8px 12px;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:4px;font-size:13px;margin-top:8px}.event-datetime{display:flex;gap:12px;padding:8px 12px;background:var(--n-sidebar);border-radius:4px;border:1px solid var(--n-border)}.event-datetime-item{display:flex;align-items:center;gap:6px;color:var(--n-text-light);font-size:13px}.event-datetime-item svg{flex-shrink:0;width:14px;height:14px}.modal-priority-group{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.modal-priority-btn{padding:6px 8px;border:1px solid var(--n-border);border-radius:4px;background:#fff;color:var(--n-text-light);cursor:pointer;font-size:12px;font-weight:500;transition:all .15s;text-transform:capitalize}.modal-priority-btn:hover{border-color:#d1d1d0}.modal-priority-btn.priority-high.active{border-color:#dc2626;background:#fef2f2;color:#dc2626}.modal-priority-btn.priority-normal.active{border-color:#ea580c;background:#fff7ed;color:#ea580c}.modal-priority-btn.priority-low.active{border-color:#2563eb;background:#eff6ff;color:#2563eb}.modal-priority-btn.priority-none.active{border-color:#d1d1d0;background:var(--n-sidebar);color:var(--n-text)}.modal-task-type-group{display:flex;gap:8px}.modal-task-type-btn{flex:1;padding:8px 12px;border:1px solid var(--n-border);border-radius:4px;background:#fff;color:var(--n-text-light);cursor:pointer;font-size:13px;font-weight:500;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}.modal-task-type-btn.active{border-color:var(--n-select);background:#2383e20a;color:var(--n-select)}.modal-recurring-days{display:flex;gap:6px;width:100%}.modal-day-btn{flex:1;height:36px;border-radius:4px;border:1px solid var(--n-border);background:#fff;color:var(--n-text-light);cursor:pointer;font-size:11px;font-weight:500;transition:all .15s;display:flex;align-items:center;justify-content:center}.modal-day-btn.selected{border-color:var(--n-select);background:#2383e214;color:var(--n-select)}:root{--bg-primary: #0f0f0f;--bg-secondary: #1a1a1a;--bg-tertiary: #242424;--bg-elevated: #2a2a2a;--bg-hover: #2e2e2e;--accent-primary: #ff4444;--accent-primary-hover: #ff5555;--accent-secondary: #ff8833;--accent-secondary-hover: #ff9944;--accent-gradient: linear-gradient(135deg, #ff4444 0%, #ff8833 100%);--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-tertiary: #808080;--text-muted: #606060;--success: #10b981;--success-hover: #059669;--error: #ef4444;--error-hover: #dc2626;--warning: #f59e0b;--border-color: #323232;--border-color-light: #404040;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .6);--shadow-accent: 0 4px 12px rgba(255, 68, 68, .3)}*{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary)}@keyframes popupOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes popupIn{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes checkmarkIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}
