.auth-page{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:24px;position:relative}.auth-bg{inset:0;overflow:hidden;position:fixed;z-index:0}.auth-bg-orb{animation:float 8s ease-in-out infinite;border-radius:50%;filter:blur(120px);opacity:.4;position:absolute}.auth-bg-orb--blue{background:var(--home-primary);height:500px;left:-10%;top:-10%;width:500px}.auth-bg-orb--pink{animation-delay:-4s;background:var(--work-primary);bottom:-10%;height:400px;right:-10%;width:400px}.auth-bg-grid{background-image:linear-gradient(var(--border-subtle) 1px,#0000 1px),linear-gradient(90deg,var(--border-subtle) 1px,#0000 1px);background-size:60px 60px;inset:0;-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 20%,#0000 70%);mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 20%,#0000 70%);position:absolute}.auth-container{animation:slideUp var(--duration-slow) var(--ease-out);gap:32px;max-width:420px;position:relative;width:100%;z-index:1}.auth-brand,.auth-container{align-items:center;display:flex;flex-direction:column}.auth-brand{gap:12px;text-align:center}.auth-logo{animation:float 6s ease-in-out infinite}.auth-logo svg{filter:drop-shadow(0 4px 20px rgba(59,158,255,.3))}.auth-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--home-primary),var(--work-primary));-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;letter-spacing:-.03em}.auth-subtitle{color:var(--text-secondary);font-size:.95rem;font-weight:400;letter-spacing:.02em}.auth-card{animation:scaleIn var(--duration-normal) var(--ease-out);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:36px 32px;width:100%}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-form-title{color:var(--text-primary);font-size:1.35rem;font-weight:600;letter-spacing:-.02em}.auth-form-desc{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin-top:-8px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field label{color:var(--text-secondary);font-size:.8rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.auth-field input{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;padding:12px 16px;transition:all var(--duration-fast) ease;width:100%}.auth-field input::placeholder{color:var(--text-tertiary)}.auth-field input:focus{border-color:var(--home-primary);box-shadow:0 0 0 3px var(--home-glow)}.auth-field input:hover:not(:focus){border-color:var(--border-strong)}.auth-btn{align-items:center;border-radius:var(--radius-md);display:flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;margin-top:4px;padding:13px 24px;transition:all var(--duration-fast) var(--ease-out);width:100%}.auth-btn--primary{background:linear-gradient(135deg,var(--home-primary),var(--work-primary));box-shadow:0 2px 12px #3b9eff4d;color:#fff}.auth-btn--primary:hover:not(:disabled){box-shadow:0 4px 20px #3b9eff66;transform:translateY(-1px)}.auth-btn--primary:active:not(:disabled){transform:translateY(0)}.auth-btn:disabled{cursor:not-allowed;opacity:.6}.auth-spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.auth-links{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.auth-link{color:var(--text-secondary);font-size:.85rem;padding:2px 0;transition:color var(--duration-fast) ease}.auth-link:hover{color:var(--home-primary)}.auth-links-divider{color:var(--text-tertiary);font-size:.85rem}.auth-error{background:#f871711a;border:1px solid #f8717133;border-radius:var(--radius-sm);color:var(--status-danger)}.auth-error,.auth-success{animation:slideDown var(--duration-fast) var(--ease-out);font-size:.85rem;padding:10px 14px}.auth-success{background:#34d3991a;border:1px solid #34d39933;border-radius:var(--radius-sm);color:var(--status-success)}.auth-token-display{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:8px;padding:12px 14px}.auth-token-display label{color:var(--text-secondary);font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.auth-token-display code{color:var(--home-primary);font-family:var(--font-mono);font-size:.75rem;line-height:1.6;word-break:break-all}.auth-copy-btn{align-self:flex-start;background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.75rem;font-weight:600;padding:4px 12px;transition:all var(--duration-fast) ease}.auth-copy-btn:hover{background:var(--border-strong)}.auth-footer{color:var(--text-tertiary);font-size:.75rem;text-align:center}.auth-footer-mono{font-family:var(--font-mono);font-size:.7rem}@media (max-width:480px){.auth-page{padding:16px}.auth-card{border-radius:var(--radius-lg);padding:28px 20px}.auth-title{font-size:2rem}.auth-bg-orb--blue{height:300px;width:300px}.auth-bg-orb--pink{height:250px;width:250px}}.landing-page{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:24px;position:relative}.landing-bg{inset:0;position:fixed;z-index:0}.landing-bg-noise{background-image:radial-gradient(ellipse 60% 50% at 20% 40%,var(--home-glow) 0,#0000 70%),radial-gradient(ellipse 60% 50% at 80% 60%,var(--work-glow) 0,#0000 70%);inset:0;position:absolute}.landing-header{align-items:center;animation:slideDown var(--duration-slow) var(--ease-out);display:flex;justify-content:space-between;left:0;padding:16px 32px;position:fixed;right:0;top:0;z-index:10}.landing-greeting{align-items:center;color:var(--text-secondary);display:flex;font-size:.95rem;gap:8px}.landing-greeting strong{color:var(--text-primary);font-weight:600}.landing-greeting-wave{font-size:1.2rem}.landing-logout{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-tertiary);font-size:.85rem;padding:8px 16px;transition:all var(--duration-fast) ease}.landing-logout:hover{background:var(--surface-1);border-color:var(--border-default);color:var(--text-secondary)}.landing-content{align-items:center;animation:slideUp var(--duration-slow) var(--ease-out);display:flex;flex-direction:column;gap:48px;position:relative;z-index:1}.landing-title{color:var(--text-primary);font-size:2.2rem;font-weight:700;letter-spacing:-.03em;text-align:center}.landing-sections{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;max-width:680px;width:100%}.landing-card{align-items:flex-start;background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-xl);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:48px 36px;position:relative;text-align:left;transition:all var(--duration-normal) var(--ease-out)}.landing-card-glow{inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity var(--duration-normal) ease}.landing-card--home .landing-card-glow{background:radial-gradient(circle at 30% 30%,var(--home-glow-strong),#0000 70%)}.landing-card--work .landing-card-glow{background:radial-gradient(circle at 30% 30%,var(--work-glow-strong),#0000 70%)}.landing-card:hover .landing-card-glow{opacity:1}.landing-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.landing-card--home:hover{border-color:#3b9eff4d;box-shadow:var(--shadow-glow-home)}.landing-card--work:hover{border-color:#f472b64d;box-shadow:var(--shadow-glow-work)}.landing-card:active{transform:translateY(-2px)}.landing-card-content{display:flex;flex-direction:column;gap:16px;position:relative;z-index:1}.landing-card-icon{align-items:center;border-radius:var(--radius-lg);display:flex;height:56px;justify-content:center;width:56px}.landing-card--home .landing-card-icon{background:var(--home-glow);color:var(--home-primary)}.landing-card--work .landing-card-icon{background:var(--work-glow);color:var(--work-primary)}.landing-card-title{color:var(--text-primary);font-size:1.75rem;font-weight:700;letter-spacing:-.02em}.landing-card-desc{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.landing-card-arrow{bottom:20px;color:var(--text-tertiary);font-size:1.5rem;position:absolute;right:24px;transition:all var(--duration-normal) var(--ease-out);z-index:1}.landing-card:hover .landing-card-arrow{transform:translateX(4px)}.landing-card--home:hover .landing-card-arrow{color:var(--home-primary)}.landing-card--work:hover .landing-card-arrow{color:var(--work-primary)}.landing-footer{bottom:16px;color:var(--text-tertiary);font-size:.75rem;position:fixed;z-index:1}.landing-footer-mono{font-family:var(--font-mono);font-size:.7rem}@media (max-width:600px){.landing-sections{grid-template-columns:1fr;max-width:340px}.landing-card{padding:36px 28px}.landing-title{font-size:1.6rem}.landing-header{padding:12px 16px}}.dashboard{background:var(--bg-primary);display:flex;flex-direction:column;height:100vh;overflow:hidden}.dash-header{animation:slideDown var(--duration-normal) var(--ease-out);background:var(--surface-1);border-bottom:1px solid var(--border-subtle);flex-shrink:0;gap:16px;justify-content:space-between;padding:12px 20px}.dash-header,.dash-header-left{align-items:center;display:flex}.dash-header-left{gap:12px}.dash-back-btn{align-items:center;border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;font-size:1rem;height:32px;justify-content:center;transition:all var(--duration-fast) ease;width:32px}.dash-back-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.dash-title{align-items:center;display:flex;font-size:1.1rem;font-weight:600;gap:8px;letter-spacing:-.02em;white-space:nowrap}.dash-title-icon{font-size:1.2rem}.dash-header-stats{display:flex;gap:20px}.dash-stat{align-items:center;display:flex;flex-direction:column;gap:2px}.dash-stat-value{font-family:var(--font-mono);font-size:1.2rem;font-weight:700;line-height:1}.dash-stat-label{color:var(--text-tertiary);font-size:.65rem;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.dash-stat--danger .dash-stat-value{color:var(--status-danger)}.dash-header-right{align-items:center;display:flex;gap:8px}.dash-review-btn,.dash-theme-btn{align-items:center;border:1px solid var(--border-default);border-radius:var(--radius-sm);display:flex;font-size:.9rem;height:32px;justify-content:center;transition:all var(--duration-fast) ease;width:32px}.dash-review-btn:hover,.dash-theme-btn:hover{background:var(--bg-hover)}.dash-datetime{align-items:flex-end;display:flex;flex-direction:column;gap:1px}.dash-date{color:var(--text-secondary);font-size:.8rem}.dash-time{color:var(--text-tertiary);font-family:var(--font-mono);font-size:.8rem}.dash-body{display:flex;flex:1 1;overflow:hidden}.dash-sidebar{animation:slideInLeft var(--duration-normal) var(--ease-out);background:var(--surface-1);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;min-width:280px;width:280px}.dash-sidebar-header{align-items:center;display:flex;justify-content:space-between;padding:14px 16px 8px}.dash-sidebar-title{color:var(--text-secondary);font-size:.85rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.dash-add-btn{border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;padding:5px 12px;transition:all var(--duration-fast) ease}.dash-add-btn--home{background:var(--home-glow);color:var(--home-primary)}.dash-add-btn--home:hover{background:var(--home-glow-strong)}.dash-add-btn--work{background:var(--work-glow);color:var(--work-primary)}.dash-add-btn--work:hover{background:var(--work-glow-strong)}.dash-sidebar-filters{display:flex;flex-direction:column;gap:6px;padding:0 12px 8px}.dash-search{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.8rem;padding:7px 10px;transition:border-color var(--duration-fast) ease;width:100%}.dash-search:focus{border-color:var(--home-primary)}.dashboard--work .dash-search:focus{border-color:var(--work-primary)}.dash-search::placeholder{color:var(--text-tertiary)}.dash-filter-row{display:flex;gap:4px}.dash-filter-select{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);flex:1 1;font-size:.7rem;padding:5px 6px}.dash-task-list{display:flex;flex:1 1;flex-direction:column;gap:4px;overflow-y:auto;padding:4px 8px 8px}.dash-task-item{border:1px solid #0000;border-radius:var(--radius-md);cursor:pointer;padding:10px 12px;transition:all var(--duration-fast) ease}.dash-task-item--selected,.dash-task-item:hover{background:var(--bg-hover)}.dash-task-item--selected{border-color:var(--border-default)}.dashboard--home .dash-task-item--selected{border-color:#3b9eff4d}.dashboard--work .dash-task-item--selected{border-color:#f472b64d}.dash-task-item--pinned{border-left:2px solid var(--status-warning)}.dash-task-item-top{align-items:center;display:flex;gap:6px}.dash-pin-icon{font-size:.7rem}.dash-task-item-title{color:var(--text-primary);flex:1 1;font-size:.85rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-priority-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.dash-priority-1{background:var(--priority-1)}.dash-priority-2{background:var(--priority-2)}.dash-priority-3{background:var(--priority-3)}.dash-priority-4{background:var(--priority-4)}.dash-priority-5{background:var(--priority-5)}.dash-task-item-meta{align-items:center;display:flex;gap:6px;margin-top:4px}.dash-status-badge{border-radius:99px;font-size:.65rem;font-weight:600;padding:2px 7px}.dash-due-date{color:var(--text-tertiary);font-size:.7rem}.dash-due-date--overdue{color:var(--status-danger);font-weight:600}.dash-empty{font-size:.8rem;padding:20px}.dash-empty,.dash-empty-small{color:var(--text-tertiary);text-align:center}.dash-empty-small{font-size:.75rem;padding:12px}.dash-main{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.dash-timeline-wrapper{background:var(--surface-1);border-bottom:1px solid var(--border-subtle);gap:4px;padding:8px 12px}.dash-timeline-nav,.dash-timeline-wrapper{align-items:center;display:flex;flex-shrink:0}.dash-timeline-nav{border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-tertiary);font-size:1rem;height:28px;justify-content:center;transition:all var(--duration-fast) ease;width:28px}.dash-timeline-nav:hover{background:var(--bg-hover);color:var(--text-primary)}.dash-timeline-today{border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);flex-shrink:0;font-size:.7rem;font-weight:600;padding:4px 10px;transition:all var(--duration-fast) ease}.dash-timeline-today:hover{background:var(--bg-hover);color:var(--text-primary)}.dash-timeline{cursor:grab;display:flex;flex:1 1;gap:2px;overflow:hidden;-webkit-user-select:none;user-select:none}.dash-timeline:active{cursor:grabbing}.dash-tl-day{align-items:center;border-radius:var(--radius-sm);display:flex;flex:0 0 auto;flex-direction:column;gap:2px;padding:6px 4px;transition:background var(--duration-fast) ease;width:52px}.dash-tl-day:hover{background:var(--bg-hover)}.dash-tl-day--current{background:var(--bg-tertiary)}.dash-tl-weekday{color:var(--text-tertiary);font-size:.55rem;letter-spacing:.05em;text-transform:uppercase}.dash-tl-date{color:var(--text-primary);font-size:.95rem;font-weight:600;line-height:1}.dash-tl-month{color:var(--text-tertiary);font-size:.5rem;text-transform:uppercase}.dash-tl-day--current .dash-tl-date{color:var(--home-primary)}.dashboard--work .dash-tl-day--current .dash-tl-date{color:var(--work-primary)}.dash-tl-day--today-due .dash-tl-date{color:var(--status-warning);font-weight:700}.dash-tl-day--overdue .dash-tl-date{color:var(--status-danger);font-weight:700}.dash-tl-day--overdue{background:#f8717114}.dash-tl-day--near .dash-tl-date{color:var(--status-warning)}.dash-tl-dots{display:flex;gap:3px;margin-top:2px}.dash-tl-dot{border-radius:50%;height:5px;width:5px}.dash-tl-dot--home{background:var(--home-primary)}.dash-tl-dot--work{background:var(--work-primary)}.dash-tl-dot--event{background:var(--status-info)}.dash-panels{grid-gap:12px;display:grid;flex:1 1;gap:12px;grid-template-columns:1fr 1fr 1fr;overflow:hidden;padding:12px}.dash-panel{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden}.dash-panel-header{align-items:center;display:flex;justify-content:space-between;padding:12px 14px 8px}.dash-panel-title{color:var(--text-secondary);font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.dash-panel-add{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:1rem;height:24px;justify-content:center;transition:all var(--duration-fast) ease;width:24px}.dash-panel-add--home{color:var(--home-primary)}.dash-panel-add--home:hover{background:var(--home-glow)}.dash-panel-add--work{color:var(--work-primary)}.dash-panel-add--work:hover{background:var(--work-glow)}.dash-panel-body{flex:1 1;overflow-y:auto;padding:0 14px 14px}.dash-panel-body--notes{padding:0}.dash-todo-item{align-items:center;border-bottom:1px solid var(--border-subtle);display:flex;gap:8px;padding:7px 0}.dash-todo-item:last-child{border-bottom:none}.dash-todo-item--done{opacity:.5}.dash-todo-item--done .dash-todo-text{text-decoration:line-through}.dash-todo-check{align-items:center;border:1.5px solid var(--border-strong);border-radius:4px;color:var(--status-success);display:flex;flex-shrink:0;font-size:.65rem;height:18px;justify-content:center;transition:all var(--duration-fast) ease;width:18px}.dash-todo-check:hover{border-color:var(--status-success)}.dash-todo-text{color:var(--text-primary);flex:1 1;font-size:.8rem}.dash-todo-recurring{flex-shrink:0;font-size:.65rem}.dash-todo-dismiss{align-items:center;border-radius:50%;color:var(--text-tertiary);display:flex;flex-shrink:0;font-size:.85rem;height:18px;justify-content:center;transition:all var(--duration-fast) ease;width:18px}.dash-todo-dismiss:hover{background:#f8717126;color:var(--status-danger)}.dash-event-item{align-items:center;border-bottom:1px solid var(--border-subtle);display:flex;gap:10px;padding:8px 0}.dash-event-item:last-child{border-bottom:none}.dash-event-date{align-items:center;display:flex;flex-direction:column;flex-shrink:0;width:40px}.dash-event-day{font-size:1.1rem;font-weight:700;line-height:1}.dash-event-month{color:var(--text-tertiary);font-size:.55rem;text-transform:uppercase}.dash-event-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.dash-event-title{color:var(--text-primary);font-size:.8rem;font-weight:500}.dash-event-time{color:var(--text-tertiary);font-family:var(--font-mono);font-size:.7rem}.dash-event-delete{align-items:center;border-radius:50%;color:var(--text-tertiary);display:flex;flex-shrink:0;font-size:.85rem;height:20px;justify-content:center;opacity:0;transition:all var(--duration-fast) ease;width:20px}.dash-event-item:hover .dash-event-delete{opacity:1}.dash-event-delete:hover{background:#f8717126;color:var(--status-danger)}.dash-notes-textarea{background:#0000;border:none;color:var(--text-primary);font-family:var(--font-body);font-size:.82rem;height:100%;line-height:1.7;padding:12px 14px;resize:none;width:100%}.dash-notes-textarea::placeholder{color:var(--text-tertiary)}.dash-context-menu{animation:scaleIn var(--duration-fast) var(--ease-out);background:var(--surface-2);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:160px;padding:4px;position:fixed;z-index:100}.dash-context-menu button{align-items:center;border-radius:var(--radius-sm);color:var(--text-primary);display:flex;font-size:.8rem;gap:8px;padding:8px 12px;transition:background var(--duration-fast) ease;width:100%}.dash-context-menu button:hover{background:var(--bg-hover)}.dash-context-danger:hover{background:#f8717126!important;color:var(--status-danger)}.dash-modal-overlay{align-items:center;animation:fadeIn var(--duration-fast) ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:200}.dash-modal{animation:scaleIn var(--duration-normal) var(--ease-out);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-xl);display:flex;flex-direction:column;gap:16px;max-height:80vh;max-width:520px;overflow-y:auto;padding:28px;width:100%}.dash-modal--small{max-width:400px}.dash-modal--wide{max-width:700px}.dash-modal h2{font-size:1.2rem;font-weight:600;letter-spacing:-.02em}.dash-modal-field{display:flex;flex-direction:column;gap:4px}.dash-modal-field label{color:var(--text-secondary);font-size:.7rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.dash-modal-field input,.dash-modal-field select,.dash-modal-field textarea{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.85rem;padding:9px 12px;transition:border-color var(--duration-fast) ease}.dash-modal-field input:focus,.dash-modal-field select:focus,.dash-modal-field textarea:focus{border-color:var(--home-primary);outline:none}.dashboard--work .dash-modal-field input:focus,.dashboard--work .dash-modal-field select:focus,.dashboard--work .dash-modal-field textarea:focus{border-color:var(--work-primary)}.dash-modal-field textarea{font-family:var(--font-body);resize:vertical}.dash-modal-field--checkbox label{align-items:center;cursor:pointer;display:flex;font-size:.8rem;gap:8px;letter-spacing:0;text-transform:none}.dash-modal-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.dash-modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.dash-modal-cancel{border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem;padding:8px 18px;transition:all var(--duration-fast) ease}.dash-modal-cancel:hover{background:var(--bg-hover);color:var(--text-primary)}.dash-modal-save{border-radius:var(--radius-sm);color:#fff;font-size:.85rem;font-weight:600;padding:8px 18px;transition:all var(--duration-fast) ease}.dash-modal-save--home{background:var(--home-primary)}.dash-modal-save--home:hover:not(:disabled){background:var(--home-secondary)}.dash-modal-save--work{background:var(--work-primary)}.dash-modal-save--work:hover:not(:disabled){background:var(--work-secondary)}.dash-modal-save:disabled{cursor:not-allowed;opacity:.4}.dash-detail-overlay{animation:fadeIn var(--duration-fast) ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:200}.dash-detail{animation:slideInRight var(--duration-normal) var(--ease-out);background:var(--surface-1);border-left:1px solid var(--border-default);display:flex;flex-direction:column;height:100%;max-width:100%;overflow-y:auto;width:600px}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.dash-detail-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;padding:20px 24px 12px}.dash-detail-header h2{flex:1 1;font-size:1.2rem;font-weight:600}.dash-detail-title-input{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-size:1.2rem;font-weight:600;padding:4px 8px;width:100%}.dash-detail-actions{display:flex;flex-shrink:0;gap:6px}.dash-detail-edit,.dash-detail-save{border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.8rem;font-weight:500;padding:6px 14px;transition:all var(--duration-fast) ease}.dash-detail-edit:hover{background:var(--bg-hover);color:var(--text-primary)}.dash-detail-save--home{background:var(--home-primary);border-color:var(--home-primary);color:#fff}.dash-detail-save--work{background:var(--work-primary);border-color:var(--work-primary);color:#fff}.dash-detail-close{align-items:center;border-radius:var(--radius-sm);color:var(--text-tertiary);display:flex;font-size:1.1rem;height:32px;justify-content:center;transition:all var(--duration-fast) ease;width:32px}.dash-detail-close:hover{background:var(--bg-hover);color:var(--text-primary)}.dash-detail-tabs{border-bottom:1px solid var(--border-subtle);display:flex;gap:0;overflow-x:auto;padding:0 24px}.dash-detail-tab{border-bottom:2px solid #0000;color:var(--text-tertiary);font-size:.75rem;font-weight:500;padding:10px 14px;transition:all var(--duration-fast) ease;white-space:nowrap}.dash-detail-tab:hover{color:var(--text-secondary)}.dash-detail-tab--active{color:var(--text-primary)}.dashboard--home .dash-detail-tab--active{border-bottom-color:var(--home-primary);color:var(--home-primary)}.dashboard--work .dash-detail-tab--active{border-bottom-color:var(--work-primary);color:var(--work-primary)}.dash-detail-body{display:flex;flex:1 1;flex-direction:column;gap:20px;overflow-y:auto;padding:20px 24px}.dash-detail-meta{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.dash-detail-meta-item{display:flex;flex-direction:column;gap:4px}.dash-detail-meta-item label{color:var(--text-tertiary);font-size:.65rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.dash-detail-meta-item span{color:var(--text-primary);font-size:.85rem}.dash-detail-meta-item input,.dash-detail-meta-item select{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.82rem;padding:6px 10px}.dash-detail-section h3{color:var(--text-tertiary);font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.dash-detail-section textarea{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-body);font-size:.85rem;line-height:1.6;padding:8px 10px;resize:vertical;width:100%}.dash-detail-text{color:var(--text-secondary);font-size:.85rem;line-height:1.7;white-space:pre-wrap}.dash-detail-timestamp{color:var(--text-tertiary);font-family:var(--font-mono);font-size:.75rem}.dash-progress{align-items:center;background:var(--bg-primary);border-radius:99px;display:flex;gap:10px;height:24px;margin-bottom:12px;overflow:hidden;padding:0 12px;position:relative}.dash-progress-bar{border-radius:99px;bottom:0;left:0;position:absolute;top:0;transition:width .4s var(--ease-out)}.dashboard--home .dash-progress-bar{background:var(--home-glow-strong)}.dashboard--work .dash-progress-bar{background:var(--work-glow-strong)}.dash-progress-text{color:var(--text-secondary);font-family:var(--font-mono);font-size:.7rem;font-weight:600;position:relative;z-index:1}.dash-subtask-list{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}.dash-subtask-item{align-items:center;display:flex;gap:8px;padding:6px 0}.dash-subtask-item--done .dash-subtask-text{opacity:.5;text-decoration:line-through}.dash-subtask-text{color:var(--text-primary);flex:1 1;font-size:.82rem}.dash-subtask-delete{align-items:center;border-radius:50%;color:var(--text-tertiary);display:flex;font-size:.8rem;height:18px;justify-content:center;opacity:0;transition:all var(--duration-fast) ease;width:18px}.dash-subtask-item:hover .dash-subtask-delete{opacity:1}.dash-subtask-delete:hover{background:#f871711a;color:var(--status-danger)}.dash-subtask-add{display:flex;gap:8px}.dash-subtask-add input{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);flex:1 1;font-size:.82rem;padding:8px 10px}.dash-subtask-add-btn{border-radius:var(--radius-sm);color:#fff;font-size:.8rem;font-weight:600;padding:8px 14px;transition:all var(--duration-fast) ease}.dash-subtask-add-btn--home{background:var(--home-primary)}.dash-subtask-add-btn--work{background:var(--work-primary)}.dash-subtask-add-btn:disabled{opacity:.4}.dash-note-add{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.dash-note-add textarea{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-body);font-size:.82rem;padding:8px 10px;resize:vertical;width:100%}.dash-note-list{display:flex;flex-direction:column;gap:8px}.dash-note-item{background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:10px 12px}.dash-note-item p{color:var(--text-primary);font-size:.82rem;line-height:1.6;margin-bottom:4px;white-space:pre-wrap}.dash-note-time{color:var(--text-tertiary);font-family:var(--font-mono);font-size:.65rem}.dash-file-upload-btn{align-items:center;border:1px dashed var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-flex;font-size:.8rem;font-weight:500;gap:6px;margin-bottom:12px;padding:8px 16px;transition:all var(--duration-fast) ease}.dash-file-upload-btn:hover{background:var(--bg-hover);border-color:var(--border-strong)}.dash-file-upload-btn--home:hover{border-color:var(--home-primary);color:var(--home-primary)}.dash-file-upload-btn--work:hover{border-color:var(--work-primary);color:var(--work-primary)}.dash-file-list{display:flex;flex-direction:column;gap:6px}.dash-file-item{align-items:center;background:var(--bg-tertiary);border-radius:var(--radius-sm);display:flex;gap:10px;padding:8px 10px}.dash-file-icon{flex-shrink:0;font-size:1.2rem}.dash-file-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.dash-file-name{color:var(--text-primary);font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-file-name:hover{text-decoration:underline}.dash-file-meta{color:var(--text-tertiary);font-size:.65rem}.dash-file-delete{align-items:center;border-radius:50%;color:var(--text-tertiary);display:flex;flex-shrink:0;font-size:.8rem;height:20px;justify-content:center;opacity:0;transition:all var(--duration-fast) ease;width:20px}.dash-file-item:hover .dash-file-delete{opacity:1}.dash-file-delete:hover{background:#f871711a;color:var(--status-danger)}.dash-activity-list{display:flex;flex-direction:column;gap:0}.dash-activity-item{display:flex;gap:12px;padding:8px 0;position:relative}.dash-activity-item:not(:last-child):before{background:var(--border-default);bottom:-8px;content:"";left:5px;position:absolute;top:20px;width:1px}.dash-activity-dot{background:var(--border-strong);border-radius:50%;flex-shrink:0;height:11px;margin-top:3px;width:11px}.dash-activity-content{display:flex;flex:1 1;flex-direction:column;gap:2px}.dash-activity-text{color:var(--text-primary);font-size:.8rem}.dash-activity-time{color:var(--text-tertiary);font-family:var(--font-mono);font-size:.65rem}.dash-review-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:8px}.dash-review-stat{align-items:center;background:var(--bg-tertiary);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:4px;padding:16px;text-align:center}.dash-review-stat-value{font-family:var(--font-mono);font-size:1.8rem;font-weight:700}.dash-review-stat--danger .dash-review-stat-value{color:var(--status-danger)}.dash-review-stat-label{color:var(--text-tertiary);font-size:.7rem}.dash-review-section{margin-top:8px}.dash-review-section h3{font-size:.85rem;font-weight:600;margin-bottom:8px}.dash-review-item{align-items:center;background:var(--bg-tertiary);border-radius:var(--radius-sm);display:flex;font-size:.82rem;justify-content:space-between;margin-bottom:4px;padding:8px 12px}.dash-review-item--done{opacity:.6}.dash-review-item-date{color:var(--text-tertiary);font-family:var(--font-mono);font-size:.7rem}.dash-review-item-section{color:var(--text-tertiary);font-size:.65rem;text-transform:uppercase}@media (max-width:900px){.dash-sidebar{min-width:220px;width:220px}.dash-panels{grid-template-columns:1fr}.dash-header-stats{display:none}.dash-review-stats{grid-template-columns:1fr 1fr}}@media (max-width:600px){.dash-body{flex-direction:column}.dash-sidebar{border-bottom:1px solid var(--border-subtle);border-right:none;max-height:40vh;min-width:100%;width:100%}.dash-detail{width:100%}}:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#1a1a26;--bg-elevated:#223;--bg-hover:#2a2a3d;--surface-1:#16161f;--surface-2:#1e1e2a;--surface-3:#262635;--text-primary:#f0f0f5;--text-secondary:#9898b0;--text-tertiary:#6a6a82;--text-inverse:#0a0a0f;--home-primary:#3b9eff;--home-secondary:#2563eb;--home-glow:#3b9eff26;--home-glow-strong:#3b9eff4d;--work-primary:#f472b6;--work-secondary:#ec4899;--work-glow:#f472b626;--work-glow-strong:#f472b64d;--status-success:#34d399;--status-warning:#fbbf24;--status-danger:#f87171;--status-info:#60a5fa;--priority-1:#6b7280;--priority-2:#60a5fa;--priority-3:#fbbf24;--priority-4:#f97316;--priority-5:#ef4444;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#ffffff26;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow-home:0 0 20px #3b9eff33;--shadow-glow-work:0 0 20px #f472b633;--font-body:"DM Sans",-apple-system,sans-serif;--font-mono:"Space Mono",monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--duration-fast:150ms;--duration-normal:250ms;--duration-slow:400ms}[data-theme=light]{--bg-primary:#f8f9fc;--bg-secondary:#fff;--bg-tertiary:#f0f1f5;--bg-elevated:#fff;--bg-hover:#ecedf2;--surface-1:#fff;--surface-2:#f5f6fa;--surface-3:#ecedf2;--text-primary:#0f0f1a;--text-secondary:#5a5a72;--text-tertiary:#8a8aa0;--text-inverse:#f0f0f5;--border-subtle:#0000000a;--border-default:#00000014;--border-strong:#0000001f;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 32px #0000001f}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background-color:#0a0a0f;background-color:var(--bg-primary);color:#f0f0f5;color:var(--text-primary);font-family:DM Sans,-apple-system,sans-serif;font-family:var(--font-body);line-height:1.6;min-height:100vh;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{background:none;border:none;color:inherit;font-family:inherit}input,select,textarea{font-size:inherit;outline:none}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#ffffff26;background:var(--border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#6a6a82;background:var(--text-tertiary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}
/*# sourceMappingURL=main.3b30f9a4.css.map*/